/**
 * Theme Name: Vista Luxe Service 2
 * Template:   twentytwentyfour
 * Description: Custom Theme for Vista Luxe Service 2
 * Version: 1.0.5
 * Author: Cristopher Becerra
 * Author URI: https://www.cristopherbecerra.com
 * Text Domain: vistaluxeservice
 * Tested up to: 6.8.1
 * Requires at least: 6.8
 * Requires PHP:      8.3
 * License:           MIT
 * License URI:       https://opensource.org/license/mit
 */

:root {
   --main-blue-color: #1982c1;
   --main-red-color: #d84827;
   --main-white-color: #f4f6f5;
   --main-light-grey-color: #cccccf;
   --main-grey-color: #5e6c69;
   --main-dark-grey-color: #6d6e71;
   --main-light-gold-color: #deb645;
   --main-gold-color: #e5c876;
   --main-dark-gold-color: #c4902c;
   --main-light-bronze-color: #b48559;
   --main-dark-bronze-color: #a5652e;
   --main-black-color: #040707;
}

@font-face {
   font-family: ITCAvantGardePro-Md;
   src: url(assets/fonts/fonnts.com-ITCAvantGardePro-Md.ttf) format('truetype');
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Bold.otf) format('opentype');
   font-weight: 700; /* Bold weight */
   font-style: normal;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Bold_Italic.otf) format('opentype');
   font-weight: 700; /* Bold weight */
   font-style: italic;
}
@font-face {
   font-family: Magistral-book;
   src: url(assets/fonts/fonnts.com-Magistral_Book.otf) format('opentype');
   font-weight: 400; /* Regular weight */
   font-style: normal;
}
@font-face {
   font-family: Magistral-book;
   src: url(assets/fonts/fonnts.com-Magistral_Book_Italic.otf) format('opentype');
   font-weight: 400; /* Regular weight */
   font-style: italic;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Cond_Bold.otf) format('opentype');
   font-weight: 700; /* Bold weight */
   font-style: normal;
   font-width: condensed;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Cond_Extra_Bold.otf) format('opentype');
   font-weight: 800; /* Bold weight */
   font-style: normal;
   font-width: condensed;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Cond_Light.otf) format('opentype');
   font-weight: 300; /* Light weight */
   font-style: normal;
   font-width: condensed;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Cond_Medium.otf) format('opentype');
   font-weight: 400; /* Medium weight */
   font-style: normal;
   font-width: condensed;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Extra_Bold.otf) format('opentype');
   font-weight: 800; /* Extra Bold weight */
   font-style: normal;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Extra_Bold_Italic.otf) format('opentype');
   font-weight: 800; /* Extra Bold weight */
   font-style: italic;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Extra_Cond_Light.otf) format('opentype');
   font-weight: 300; /* Light weight */
   font-style: normal;
   font-width: extra-condensed;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Extra_Cond_Medium.otf) format('opentype');
   font-weight: 400; /* Medium weight */
   font-style: normal;
   font-width: extra-condensed;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Light.otf) format('opentype');
   font-weight: 300; /* Light weight */
   font-style: normal;
   font-width: normal;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Light_Italic.otf) format('opentype');
   font-weight: 300; /* Light weight */
   font-style: italic;
   font-width: normal;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Medium.otf) format('opentype');
   font-weight: 400; /* Medium weight */
   font-style: normal;
   font-width: normal;
}
@font-face {
   font-family: Magistral;
   src: url(assets/fonts/fonnts.com-Magistral_Medium_Italic.otf) format('opentype');
   font-weight: 400; /* Medium weight */
   font-style: italic;
   font-width: normal;
}


* {
   box-sizing: border-box;
}

.font-family-ITCAvantGardePro-Md {
   font-family: "ITCAvantGardePro-Md", Sans-serif;
}
.font-family-Magistral {
   font-family: "Magistral", Sans-serif;
}
.font-family-Magistral-book {
   font-family: "Magistral-book", Sans-serif;
}


.padding-left-4 {
   padding-left: 40px;
}

.padding-top-4 {
   padding-top: 80px;
}

.padding-top-2 {
   padding-top: 40px;
}

.padding-bottom-4 {
   padding-bottom: 40px;
}

.padding-x-4 {
   padding-left: 40px;
   padding-right: 40px;
}

.d-flex {
   display: flex;
}

.flex-direction-column {
   flex-direction: column;
}

.flex-direction-row {
   flex-direction: row;
}

.justify-content-start {
   justify-content: start;
}

.justify-content-center {
   justify-content: center;
}

.justify-content-end {
   justify-content: end;
}

.justify-content-evenly {
   justify-content: space-evenly;
}

.align-items-start {
   align-items: start;
}

.align-items-center {
   align-items: center;
}

.align-items-end {
   align-items: end;
}

.flex-grow {
   flex-grow: 1;
}

.width-100 {
   width: 100%;
}

.d-on-desktop {
   display: none;
}

.img-stretch img {
   height: 100%;
}

.child-width-auto>* {
   width: auto !important;
}

.bg-black-main {
   background-color: var(--main-black-color);
}

.bg-dark-grey-main {
   background-color: var(--main-dark-grey-color);
}

.bg-light-grey-main {
   background-color: var(--main-light-grey-color);
}

.bg-white-main {
   background-color: var(--main-white-color);
}

.bg-red-main {
   background-color: var(--main-red-color);
}

.bg-blue-main {
   background-color: var(--main-blue-color);
}

.bg-gold{
   background-color: var(--main-gold-color);
}

.color-black-main {
   color: var(--main-black-color);
}

.color-dark-grey-main {
   color: var(--main-dark-grey-color);
}

.color-light-grey-main {
   color: var(--main-light-grey-color);
}

.color-white-main {
   color: var(--main-white-color);
}

.color-blue-main {
   color: var(--main-blue-color);
}

.color-red-main {
   color: var(--main-red-color);
}

.bold {
   font-weight: bold;
}

.object-position-center{
   object-position: center;
}

.object-fit-contain{
   object-fit: contain;
}

.object-fit-cover{
   object-fit: cover;
}

.border-top-white-main{
   border-top: solid 2px var(--main-white-color);
}
.border-bottom-white-main{
   border-bottom: solid 2px var(--main-white-color);
}
.border-left-white-main{
   border-left: solid 2px var(--main-white-color);
}
.border-right-white-main{
   border-right: solid 2px var(--main-white-color);
}

.pill-shape{
   border-radius: calc(1.2rem + 10px);
}


/*Header*/
header {
   /*position: sticky;*/
   position:absolute;
   top: 0;
   z-index: 999;
}

.header-vistaluxeservice {
   display: block;
   position: relative;
   top: 0;
   background-color: transparent;
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
   flex-direction: row;
   flex-wrap: wrap;
   padding: 12px;
   font-weight: lighter;
}

.header-vistaluxeservice.scrolled{
   background-color: var(--main-black-color);
}

.header-vistaluxeservice .menu-option {
   width: 100%;
   justify-content: center;
}

.header-vistaluxeservice .menu-option a {
   text-transform: none;
   font-weight: bold;
   text-decoration: none;
   /*margin-bottom: 20px;*/
   font-size: 1.25em;
}

.header-vistaluxeservice .menu-option a.active {
   color: var(--main-orange-color);
}

.header-vistaluxeservice .logo{
   width: 30%;
   height: auto;
   max-height: 10vh;
}

.header-vistaluxeservice .logo img{
   width: 80%;
   height: 100%;
   object-fit: contain;
}

.header-vistaluxeservice .desktop-menu .menu{
   width: 50%;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   font-size: 1.3rem;
}

.header-vistaluxeservice .desktop-menu .menu nav{
   display: flex;
   flex-direction: row;
   justify-content: space-between;;
   align-items: center;
   width: 100%;
   color: var(--main-white-color);
}

.header-vistaluxeservice .desktop-menu .menu nav a{
   text-decoration: none;
}

.desktop-menu {
   display: none;
}

.header-vistaluxeservice .mobile-menu-container .logo{
   width: 50%;
}

.mobile-menu-container{
   display: flex;
   justify-content: space-between;
   align-items: center;
   flex-direction: column;
}

.mobile-menu-container .visible{
   width: 100%;
   display:flex;
   flex-direction: row;
}

.mobile-menu{
   color:var(--main-white-color);

}

.mobile-menu ul{
   width: 50%;
   margin: auto;
}

.mobile-menu a{
   text-decoration: none;
   font-size: 1.4rem;
   display:block;
   width: 100%;
   padding: 2% 0;
}

.header-logo {
   max-height: 10vh;
   /*width: auto;*/
}

.menu-button {
   width: 40px;
   margin-right: 20px;
   object-fit: contain;
   cursor: pointer;
}

.mobile-menu {
   width: 100vw;
   height: 0px;
   overflow: hidden;
}

.mobile-menu.display {
   height: inherit;
   /*border-bottom: solid 5px var(--main-blue-color);*/
}

#mobile-menu-close {
   display: none;
}

.mobile-menu>a {
   width: 60%;
   display: block;
   margin: auto;
   text-decoration: none;
   font-size: 1.5rem;
}

.footer-vistaluxeservice {
   display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: stretch;
   flex-wrap: wrap;
}

.footer-vistaluxeservice>div {
   width: 100%;
   padding: 2%;
}

.footer-vistaluxeservice>div:nth-child(1) {
   order: 2;
   text-align: center;
}

.footer-vistaluxeservice>div:nth-child(2) {
   order: 1;
}

div.credits {
   order: 3;
   font-size: .9rem;
   text-align: center;
   padding-bottom: 1.5rem;
   margin: 0;
}

div.credits p {
   margin: 0;
}

footer div.copy {
   text-align: center;
}

.footer-vistaluxeservice img {
   width: 100%;
}

.footer-menu-container {
   /*border-left: solid 2px var(--main-black-color)*/
}

.footer-vistaluxeservice .secctions{
   background-color:var(--main-grey-color);
   font-size: 1rem;
   font-weight: light;
   padding: 10px 0px;
   text-transform: uppercase;
}

.footer-vistaluxeservice .contact-data{
   flex-direction: column;
}

.footer-vistaluxeservice .contact-data a{
   text-decoration: none;
}

.footer-menu-container a {
   display: block;
   text-decoration: none;
   text-transform: none;
   font-size: 1.2rem;
   width: auto;
}

a.social-icon {
   display: inline-block;
   width: 50px;
   height: 50px;
}

a.social-icon img {
   width: 100%;
   height: 100%;
}

.data-container {
   padding: 40px;
}

.data-container p {
   margin-bottom: 0px;
}

.data-container ul {
   margin-top: 0px;
   margin-bottom: 0px;
}

/*Post Page Style*/
.wp-block-post-title {
   width: 90%;
   margin: auto;
   text-align: center;
   border-bottom: solid 4px var(--main-orange-color);
}


@media screen and (min-width: 1024px) and (orientation: landscape) {
   .header-vistaluxeservice {
      justify-content: space-evenly;
      flex-wrap: wrap;
   }

   .header-logo {
      max-height: 10vh;
   }

   .header-vistaluxeservice .mobile-menu {
      display: flex;
      justify-content: space-evenly;
   }

   .header-vistaluxeservice .mobile-menu .menu-option {
      display: inline-block;
      width: auto;
   }

   .footer-vistaluxeservice>div {
      /*width: 20%;*/
      padding: 1% 5%;
   }

   .footer-vistaluxeservice {
      padding-top: 20px;
      padding-bottom: 20px;
      padding-left: 25%;
      padding-right: 25%;
   }

   .footer-vistaluxeservice>div:nth-child(1) {
      /*order: 1;
      width: 50%;*/
   }

   .footer-vistaluxeservice>div:nth-child(2) {
      /*order: 2;
      border-left: solid 7px var(--main-orange-color);
      flex-grow: 1;*/
   }

   .footer-menu-container {
      /*border-left: solid 2px var(--main-orange-color)*/
   }

   .footer-menu-container a {
      display: inline-block;
      margin-right: 12px;
   }

   .footer-vistaluxeservice img {
      width: 100%;
   }

   .footer-vistaluxeservice .info {
      font-size: 1.5rem;
   }

   .data-container {
      padding: 20px 80px;
      display: grid;
      grid-template-columns: 1fr 2fr;
      grid-template-rows: auto;
   }

   .footer-vistaluxeservice .contact-data{
      flex-direction: row;
   } 

   .footer-vistaluxeservice .secctions{
      width: 60%;
      margin: auto;
      font-size: .9rem;
   }
   
   .desktop-menu {
      display: flex;
      flex-direction: row;
   }

   .mobile-menu-container{
      display: none;
   }

   /*Helpers*/
   .d-on-mobile {
      display: none;
   }

   .d-on-desktop {
      display: inherit;
      ;
   }

   .padding-left-4 {
      padding-left: 80px;
   }

   .padding-x-4 {
      padding-left: 80px;
      padding-right: 80px;
   }

   .wp-block-post-content>.elementor>.elementor-element {
      /*--padding-left: 0px;
      --padding-right: 0px;*/
   }

   /*Post Page Style*/
   .wp-block-post-title {
      width: 75%;
   }

}