@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;700&display=swap");




html{

 
   background-color: #ffffff;
  
}


body{

    background:#c6a36f;
    height: 75px;
}


    :root {
      --gold: #c9a675;
      --gold-dark: #b58e5c;
      --white: #fff;
      --ink: #222;
      --gap: 2%;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
   
      color: var(--ink);
      font-family: "Roboto", sans-serif;
    }










/* LANGUAGE BUTTON */

.language-switch{
    margin-right:20px;
    z-index: 999999;
}

#lang-toggle{
    background:transparent;
    border:1px solid #fff;
    color:#fff;
    padding:8px 16px;
    border-radius:30px;
    font-size:12px;
    cursor:pointer;
    transition:.4s;
    letter-spacing:1px;
}

#lang-toggle:hover{
    background:#c6a36f;
    color:#001B40;
}














































































/* RESPONSIVE */

@media(max-width:768px){

  
 
    .drawer-menu a{
        font-size:22px;
    }

    #nav-bar{
        padding-right:20px;
    }

}


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}







.nav{
  z-index: 101;
  color: var(--white);
  display: flex;
  position: fixed;
  top: 0;
  width: 100%;
  height: 80px;
  justify-content: space-between;
  align-items: center;
  padding: 0 80px;
}


.logo{
  width:30%;
  cursor: pointer;
  animation: top-down 1.5s forwards;
  position: absolute;
  z-index: 10;
  top: 20px;
  left: 50px;
  z-index: 10000;
}


.cart
{font-size: 30px;
  cursor: pointer;
}
.menu{
  width: 30px;
  height: 30px;
  cursor: pointer;
  z-index: 101;
  animation: left-to-right 1.5s forwards;
}
.hamburger{
  position: relative;
  cursor: pointer;
}
.hamburger,
.hamburger::before,
.hamburger::after{
  width: 30px;
  height: 3px;
  border-radius: .5rem;
  background-color: var(--white);
  transition: 0.4s;
}
.hamburger::before,
.hamburger::after{
  content: '';
  position: absolute;
  left: 0;
}
.hamburger::before{
  top: -10px;
}
.hamburger::after{
  top: 10px;
}
.hamburger.active{
  background-color: transparent;
}
.hamburger.active::before{
  transform-origin: top left;
  transform: rotate(45deg);
  left: 6px;
}
.hamburger.active::after{
  transform-origin: bottom left;
  transform: rotate(-45deg);
  left: 6px;
}


.z-index-99{
  z-index: 99 !important;
}



@keyframes top-down{
  0%{
    opacity: 0;
    transform: translateY(-100%);
  }
  100%{
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes bottom-up{
  0%{
    opacity: 0;
    transform: translateY(100%);
  }
  100%{
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes left-to-right{
  0%{
    opacity: 0;
    transform: translateX(-100%);
  }
  100%{
    opacity: 1;
    transform: translateX(0);
  }
}
.nav-overlay{
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 101;
  top: 80px;
  left: 0;
  background-color: rgba(0,0,0,0.9);
  overflow: hidden;
  transition: 0.5s;
}
.nav-overlay.active{
  width: 100%;
}
.nav-overlay-content{
  position: relative;
  top: 25%;
  width: 100%;
  text-align: center;
  margin-top: 30px;
}
.nav-overlay a{
  padding: 8px;
  text-decoration: none;
  font-size: 36px;
  color: #818181;
  display: block;
  transition: 0.3s;
}
.nav-overlay a:hover{
  color: #f1f1f1;
}
@keyframes right-to-left{
  0%{
    opacity: 0;
    transform: translateX(100%);
  }
  100%{
    opacity: 1;
    transform: translateX(0);
  }
}









.nav{
  z-index: 101;
  color: var(--white);
  display: flex;

  top: 0;
  width: 100%;
  height: 80px;
  justify-content: space-between;
  align-items: center;
  padding: 0 80px;
}

.menu{
  width: 30px;
  height: 30px;
  cursor: pointer;
  z-index: 101;
  animation: left-to-right 1.5s forwards;
}
.hamburger{
  position: relative;
  cursor: pointer;
}
.hamburger,
.hamburger::before,
.hamburger::after{
  width: 30px;
  height: 3px;
  border-radius: .5rem;
  background-color: var(--white);
  transition: 0.4s;
}
.hamburger::before,
.hamburger::after{
  content: '';
  position: absolute;
  left: 0;
}
.hamburger::before{
  top: -10px;
}
.hamburger::after{
  top: 10px;
}
.hamburger.active{
  background-color: transparent;
}
.hamburger.active::before{
  transform-origin: top left;
  transform: rotate(45deg);
  left: 6px;
}
.hamburger.active::after{
  transform-origin: bottom left;
  transform: rotate(-45deg);
  left: 6px;
}



.nav-overlay{
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 101;
  top: 80px;
  left: 0;
  background-color: rgba(0,0,0,0.9);
  overflow: hidden;
  transition: 0.5s;
}
.nav-overlay.active{
  width: 100%;
}
.nav-overlay-content{
  position: relative;
  top: 25%;
  width: 100%;
  text-align: center;
  margin-top: 30px;
}
.nav-overlay a{
  padding: 8px;
  text-decoration: none;
  font-size: 36px;
  color: #818181;
  display: block;
  transition: 0.3s;
}
.nav-overlay a:hover{
  color: #f1f1f1;
}




/* Navigation bar - not visible */

#nav-bar {
  width: 100%;
  height: 80px;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  position: absolute;
  left: -70px;
 
z-index: 1;
}

#nav-bar p {
  position: relative;
  top: -2px;
  color: #ffffff;
  font-weight: lighter;
  z-index: 9999;
  text-transform: uppercase;
  font-size: .65em;
  letter-spacing: 2px;
  font-family: "Roboto", sans-serif;
}


/* Menu */


.drawer-menu {
  font-family: 'Roboto', sans-serif;
  background: #c6a36f;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 999;
  box-sizing: border-box;
  position: fixed;
  top: 0;
   right: 0;
 width:min(320px,90vw);
  height: 100%;
  padding: 100px 0 100px 0;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: .8s;
  transition-duration: .8s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-transform-origin: center;
  transform-origin: center;
  transform: translateY(-250vh);
  opacity: 1;
  overflow: scroll;
  
}

.drawer-menu ul {
  z-index: 999;
  padding-left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.drawer-menu li {
  text-align: center;
  list-style-type: none;
  z-index: 999;
}

.drawer-menu li a {
  display: block;
  height: 60px;
  line-height: 62px;
  padding: 8px;
  font-size: 19px;
  color: #ffffff;
  text-decoration: none;
  -webkit-transition: all .5s;
  transition: all .5s;
  text-transform: uppercase;
  letter-spacing: 4px;
  font-size: 1.3em;
  z-index: 999;
}


/* Don't display checkbox */

.check {
  display: none;
}


/* Menu button - label tag */

.menu-btn {
 
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 9999;
  padding: 0 30px 0 15px;
 
}


/* Navigation icon */

.bar {
  display: block;
  height: 1px;
  margin-top: 8px;
  background: #ffffff;
  -webkit-transition: all .5s;
  transition: all .5s;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;

  z-index: 9999;
}


/* Navigation icon bars */

.bar.top {
  width: 40px;
  z-index: 9999;
}

.bar.middle {
  top: 10px;
  width: 20px;
  opacity: 1;
  z-index: 9999;
}

.bar.bottom {
  top: 20px;
  width: 35px;
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom;
  z-index: 9999;
}


/* Checked effects */

.check:checked ~ .drawer-menu {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  opacity: 1;

  overflow: scroll;
}

.check:checked ~ .menu-btn .menu-btn__text {
  visibility: hidden;
  opacity: 0;
}

.check:checked ~ .menu-btn .bar.top {
  width: 30px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.check:checked ~ .menu-btn .bar.middle {
  opacity: 0;
  transform: translateX(100px);
}

.check:checked ~ .menu-btn .bar.bottom {
  width: 30px;
  margin-top: 11px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}


/* Hover strikethrough */

.drawer-menu span {
  position: relative;
  display: block;
  cursor: pointer;
  overflow: hidden;
}

.drawer-menu span:before,
span:after {
  content: '';
  position: absolute;
  width: 0%;
  height: 1px;
  top: 50%;
  margin-top: -0.5px;
  background: #D7F2BA;
}

.drawer-menu span:before {
  left: -2.5px;
}




@media (max-width: 991px) {
   
	.burger_box {
		display: block;
		float: right;
		margin-right: -85px;
		margin-top: 30px;
	}

	
}



@media (max-width: 810px) {


.drawer-menu ul {
margin-left: -35px;
margin-top: -300px;
}

}




@media (max-width: 810px) {


	
.drawer-menu ul {
margin-left: -47px;
margin-top: -315px;
}

}




@media (max-width: 440px) {
    
    .drawer-menu ul {
      margin-left: -45px;
      margin-top: -300px;
   }
 
   .menu-btn {
 
    position: relative;
    left: 55px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 9999;
    padding: 0 30px 0 15px;
  
}

#nav-bar p {
  position: relative;
  left: 55px;
  top: -2px;
;
}


.title p{
    position: relative;

  
    top: -5px;
    font-size: 40px;
    text-align:center;
    line-height:1.2;
    z-index: 100;
  
}

      
}





@media (max-width: 375px) {

	
  .drawer-menu ul {
      margin-left: -49px;
      margin-top: -300px;
   }
 
  
}






 /**********************   Início - logo ********************************/

 .logo img{
    
  width: 55%;
  margin-top: -10px;

 }

 /**********************  Fim - logo  ***********************************/

 @media only screen and (max-width: 1210px){

  .logo img{
    position: relative;
    top: -14px;
    left: -20px;
    width: 65%;
  
    z-index: 9999;
  }

  .logo{

    margin-top: 20px;
  }

    
   }



 @media only screen and (max-width: 1080px){

  .logo img{
    position: relative;
    top: -5px;
    left: -20px;
    width: 65%;
  
    z-index: 9999;
  }

  .logo{

    margin-top: 20px;
  }

    
   }



   @media only screen and (max-width: 440px){

    .logo img{
      position: relative;
      left: -30px;
      top: -11px;
    
      width: 100%;
    
      z-index: 9999;
    }
  
    .logo{

    margin-top: 25px;
  }

  

 }



 @media only screen and (max-width: 375px){
 .logo img{
    
  width: 40%;

  z-index: 9999;
}


 }




















    


.title{
    position: relative;

  
    top: 5px;
    font-size: 40px;
    text-align:center;
    line-height:1.2;
    z-index: 100;
  
}




.title{
    text-align:center;
    font-family: "Roboto", sans-serif;
    color: #c6a36f;
    
    font-weight: 300;
    margin-bottom:20px;
    letter-spacing:1px;
}


@media(max-width:992px){

    .title{
        font-size:3rem;
    }

    .properties-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .title{
        font-size:2.4rem;
    }

    .property-card img{
        height:450px;
    }
}



 
/* ==========================
   GRID
========================== */







































    .developments {
      width: 100%;
      padding: 26px 0 0;
    }

    .gallery {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: var(--gap);
      width: 100%;
      padding: 0 24px; /* Equal left and right outer margins */
    }

    .property-card {
      min-width: 0;
      position: relative;
      overflow: hidden;
      background: var(--gold);
      text-decoration: none;
      color: var(--white);
      display: flex;
      flex-direction: column;
      isolation: isolate;
      outline-offset: 4px;
    }

    .property-card:focus-visible {
      outline: 3px solid #262626;
    }

    .image-wrap {
      position: relative;
      width: 100%;
      aspect-ratio: 0.79 / 1;
      overflow: hidden;
      background: #ded8ce;
    }

    .image-wrap img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .5s ease;
    }

    .property-card:hover .image-wrap img {
      transform: scale(1.045);
      filter: saturate(1.06);
    }

    .image-wrap::after {
      content: "";
      position: absolute;
      inset: 55% 0 0;
      background: linear-gradient(transparent, rgba(0,0,0,.18));
      pointer-events: none;
    }

    .caption {
      min-height: 67px;
      padding: 16px 12px;
      background: var(--gold);
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      font-size: clamp(12px, 1.13vw, 21px);
      line-height: 1.25;
      font-weight: 300;
      letter-spacing: .105em;
      text-transform: uppercase;
      color: rgba(255,255,255,.94);
      transition: background .25s ease;
    }

    .property-card:hover .caption { background: var(--gold-dark); }

  

    .whatsapp:hover { transform: translateY(-3px) scale(1.04); }
    .whatsapp svg { width: 37px; height: 37px; }

    @media (max-width: 1050px) {
      .gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 0 18px; }
      .image-wrap { aspect-ratio: 0.92 / 1; }
      .caption { min-height: 62px; font-size: clamp(13px, 2vw, 19px); }
    }

    @media (max-width: 600px) {
      .developments { padding-top: 12px; }
      .gallery { grid-template-columns: 1fr; gap: 18px; padding: 0 12px; }
      .image-wrap { aspect-ratio: 0.95 / 1; }
      .caption { min-height: 58px; padding: 14px 10px; font-size: 15px; letter-spacing: .09em; }
      .whatsapp { width: 54px; height: 54px; right: 12px; bottom: 12px; }
      .whatsapp svg { width: 33px; height: 33px; }
    }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
    }







































 /**********************   Início - footer ********************************/


    .footer {
        width: 100%;
        background-color: #c6a36f;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 80px;
        box-sizing: border-box;
        min-height: 70px;
        position: relative;
        display: flex;
         align-items: center; 
    }

    /* LEFT */
    .footer-left {
        display: flex;
        align-items: center;
        gap: 15px;
    }

  
    .footer-address {
        color: white;
        font-size: 13px;
        letter-spacing: 0.6px;
        opacity: 0.9;
    }

    /* NAV */
    .footer-nav {
        display: flex;
        gap: 35px;
       
    }

    .footer-nav a {
        position: relative;
        text-decoration: none;
        color: white;
        font-size: 13px;
        letter-spacing: 1.5px;
     
        padding-bottom: 6px;
        transition: opacity 0.3s ease;
    }

    /* WHITE ELEGANT UNDERLINE */
    .footer-nav a::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 0;
        width: 0;
        height: 1px;
        background: white;
        transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
        transform: translateX(-50%);
    }

    .footer-nav a:hover::after {
        width: 100%;
    }

    /* subtle hover refinement */
    .footer-nav a:hover {
        opacity: 1;
    }

    /* RESPONSIVE */
    @media (max-width: 768px) {
        .footer {
            flex-direction: column;
            align-items: center;
            padding: 15px 20px;
            gap: 10px;
        }

        .footer-left {
            flex-direction: column;
            gap: 5px;
        }

        .footer-address {
            font-size: 12px;
            text-align: center;
        }

        .footer-nav {
            gap: 20px;
            flex-wrap: wrap;
            justify-content: center;
        }
    }

    @media (max-width: 480px) {
        .footer-nav a {
            font-size: 12px;
        }


    }


 /**********************  Fim- footer ********************************/











/***************** Início - Section headertour virtual ***************/

.section-header-virtualtour {
    text-align: center;
    position: relative;
    height: 70px;
}



.section-header-virtualtour h2 {
  font-family: "Roboto", sans-serif;
  position: relative;
  top: -50px;
  text-align: center;
  color: #d4a574;
}


.section-header-virtualtour p {
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  color: #666;
  font-weight: 300;
  position: relative;
  top: -70px;;

}







/***************** Fim - Section headertour virtual ***************/



.section-title {
  font-family: "Roboto", sans-serif;
  font-size: 2.5rem;
  font-weight: 300;
  color: #1a1a1a;
  margin-bottom: 1rem;
  letter-spacing: 2px;
  position: relative;
  top: -30px;
}





/************************ Início - Cursor ***********************/




/* CURSOR CUSTOM */
.cursor {
  width: 12px;
  height: 12px;
  border: 1px solid #c6a36f;
  border-radius: 50%;
  position: fixed;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: transform 0.15s ease;
  z-index: 9999;
}

/************************ Fim - Cursor ***********************/





/*******************  Início -  WhatsApp ***********************/



.whatsapp{

  position: fixed;
  bottom: 5px;
  right: 18px;
  z-index: 100;
 }


.whatsapp img{


 width: 50px;
}




@media (max-width: 440px) {

  .whatsapp img{
    width: 35px;
}

  .whatsapp{

    position: fixed;
    bottom: -12px;
    right: 18px;
     z-index: 100;
   }
  
}




/******************* Fim -  WhatsApp ***********************/
