/* ═══════════════════════════════════════════════
   COLINA MEADOWS — Main Stylesheet
   v5 · June 2026
   ═══════════════════════════════════════════════ */

/* ─── RESET & ROOT ─── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --orange:#f78d3f;
  --orange-btn:#F07B34;
  --green:#5A8A3C;
  --green-dark:#3d6b28;
  --green-card:#6B8F47;
  --text-dark:#2B2B2B;
  --text-mid:#555;
  --text-light:#888;
  --nav-bg:#3a4f3a;
  --footer-bg:#F5EDE0;
  --off-white:#F7F7F5;
  --stats-bg:#2986C7;
  --light-gray:#e0e0e0;
  --form-bg:#5A8A3C;
  --white:#fff;
}
body{font-family:'Inter',sans-serif;color:var(--text-dark);background:#fff;font-size:16px;}
a{text-decoration:none;} /*Roboto Slab*/

/* ─── NAVBAR ─── */
/*========================
      FIXED NAVBAR
=========================*/

.navbar{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:82px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:0 70px;

    background:rgba(32,40,28,.45);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);

    z-index:9999;
    transition:.35s ease;
}

/* Scroll Effect */
.navbar.scrolled{
    background:rgba(32,40,28,.90);
    box-shadow:0 8px 25px rgba(0,0,0,.15);
}

.nav-logo img{
    height:46px;
    width:auto;
    display:block;
}

/*========================
        MENU
=========================*/

.nav-links{
    display:flex;
    align-items:center;
    gap:32px;
}

.nav-links a{
    color:#fff;
    text-decoration:none;
    font-size:17px;
    font-weight:500;
    transition:.3s;
}

.nav-links a:hover{
    color:#ff9138;
}

/* Button */

.nav-contact{
    background:#ff9138;
    padding:13px 28px;
    border-radius:50px;
    font-weight:600;
}

.nav-contact:hover{
    background:#f47c19;
    color:#fff!important;
}

/*========================
      MOBILE BUTTON
=========================*/

.menu-toggle{
    display:none;
    background:none;
    border:none;
    color:#fff;
    font-size:32px;
    cursor:pointer;
}

/*========================
        TABLET
=========================*/

@media(max-width:991px){

.navbar{
    padding:0 25px;
    height:75px;
}

.nav-logo img{
    height:40px;
}

.nav-links{
    gap:18px;
}

.nav-links a{
    font-size:15px;
}

}

/*========================
        MOBILE
=========================*/

@media(max-width:768px){

.menu-toggle{
    display:block;
}

.nav-links{
    position:absolute;
    top:100%;
    left:0;
    width:100%;

    display:flex;
    flex-direction:column;
    align-items:flex-start;

    background:rgba(34,42,31,.97);
    backdrop-filter:blur(12px);

    padding:20px;

    gap:18px;

    transform:translateY(-20px);
    opacity:0;
    visibility:hidden;

    transition:.35s;
}

.nav-links.active{
    transform:translateY(0);
    opacity:1;
    visibility:visible;
}

.nav-links a{
    width:100%;
    font-size:16px;
}

.nav-contact{
    width:100%;
    text-align:center;
    margin-top:10px;
}

}

/*========================
      SMALL MOBILE
=========================*/

@media(max-width:480px){

.navbar{
    height:68px;
    padding:0 15px;
}

.nav-logo img{
    height:34px;
}

}
/* ─── HERO ─── */
.hero{
    position:relative;
    min-height:720px;

    background:
    linear-gradient(rgba(0,0,0,.35),rgba(0,0,0,.45)),
    url('../img/hero.webp') center/cover no-repeat;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:120px 100px 70px;
    gap:80px;
}

.hero-welcome{
  
  color:var(--orange);
  margin-bottom:6px;
 
}

.hero-content{
    max-width:700px;
    color:#fff;
}

.hero h1{
    font-size:68px;
    font-weight:700;
    margin:15px 0;
/*    font-family: " Sfpro Bold", sans-serif;*/
}

.hero-loc{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:22px;
    margin:25px 0;
}

.hero-loc i{
    font-size:24px;
    color:#f78d3f;
    flex-shrink:0;
}

.hero-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    background:#f78d3f;
    color:#fff;

    padding:15px 38px;
    border-radius:50px;
    font-size:17px;
    font-weight:600;
}

.hero-form{
    width:420px;

    background:rgba(255,255,255,.95);

    border-radius:18px;

    padding:35px;

    box-shadow:0 15px 45px rgba(0,0,0,.25);
}

.hero-form h3{
    text-align:center;
    font-size:28px;
    margin-bottom:25px;
    color:#333;
}

.hero-form form{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.hero-form input{
    height:55px;

    border:1px solid #ddd;

    border-radius:8px;

    padding:0 18px;

    font-size:15px;

    outline:none;
}

.hero-form input:focus{
    border-color:#F78D3F;
}

.hero-form button{

    height:55px;

    border:none;

    border-radius:50px;

    background:#F78D3F;

    color:#fff;

    font-size:16px;

    font-weight:700;

    cursor:pointer;
}

.hero-form button:hover{
    background:#dd7427;
}

@media(max-width:991px){

.hero{

    flex-direction:column;
    justify-content:center;

    text-align:center;

    padding:120px 30px 60px;

    gap:40px;
}

.hero-content{
    max-width:100%;
}

.hero h1{
    font-size:48px;
}

.hero-loc{
    justify-content:center;
    font-size:18px;
}

.hero-form{
    width:100%;
    max-width:500px;
}

}

@media(max-width:576px){

.hero{
    padding:100px 20px 40px;
}

.hero h1{
    font-size:36px;
}

.hero-welcome{
    font-size:18px;
}

.hero-loc{
    font-size:17px;
}

.hero-form{
    padding:25px;
}

.hero-form h3{
    font-size:22px;
}

.hero-form input,
.hero-form button{
    height:50px;
}

}

/*@media (max-width:1400px){
  .hero{
    min-height:600px;
    padding:0 80px 100px;
  }
}

@media (max-width:1200px){
  .hero{
    min-height:550px;
    padding:0 60px 90px;
  }

  .hero h1{
    font-size:46px;
  }
}

@media (max-width:991px){
  .hero{
    min-height:500px;
    padding:0 40px 70px;
  }

  .hero h1{
    font-size:40px;
  }
}

@media (max-width:768px){
  .hero{
    min-height:420px;
    padding:0 20px 50px;
  }

  .hero-welcome{
    font-size:18px;
  }

  .hero h1{
    font-size:32px;
    line-height:1.15;
  }

  .hero-loc{
    font-size:14px;
  }
}

@media (max-width:480px){
  .hero{
    min-height:350px;
    padding:0 15px 40px;
  }

  .hero h1{
    font-size:26px;
  }

  .hero-btn{
    width:100%;
    justify-content:center;
  }
}*/

/* ─── INTRO STRIP ─── */
.intro-strip{
  display:grid;grid-template-columns:1fr 1fr;
  padding:40px 64px;gap:40px;background:#fff;
  border-bottom:1px solid #eee;
}
.intro-left h3{font-size:42px;letter-spacing: -0.05em;font-weight:700;color: #5E873B;line-height:1.3;margin-bottom:6px; padding:50px 20px 0px 0px;}
.intro-left p{font-size:16px;font-weight:400;font-style:italic;color:var(--text-dark);}
.intro-right p{font-size:18px;color: #3B3B3B;line-height:1.5; font-family:"Inter", Sans-serif;font-weight:400;}
.intro-right p+p{margin-top:12px;}

@media (max-width:991px){

    .intro-strip{
        grid-template-columns:1fr;
        gap:25px;
        padding:40px 30px;
    }

    .intro-left h3{
        font-size:34px;
    }

    .intro-right p{
        font-size:15px;
    }
}

@media (max-width:768px){

    .intro-strip{
        grid-template-columns:1fr;
        gap:10px;
        padding:30px 20px;
    }

    .intro-left h3{
        font-size:32px;
        line-height:1.2;
    }

    .intro-right p{
        font-size:17px;
        line-height:1.7;
    }
}

@media (max-width:480px){

    .intro-strip{
        padding:25px 15px;
    }

    .intro-left h3{
        font-size:24px;
    }

    .intro-right p{
        font-size:13px;
    }
}

 


/* ─── SITUATED ─── */

/* SECTION */
.situated{
    position:relative;
    min-height:520px;
    background:url('../img/b1.webp') center center/cover no-repeat;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    padding:80px 100px;
}

/* LEFT CONTENT */
.situated-text{
    max-width:550px;
    color:#fff;
}

.situated-text h3{
/*    font-family:"Inter",sans-serif;*/
    font-size:34px;
    font-weight:600;
    line-height:1.1em;
    color:#fff;
    letter-spacing:-0.05em;
    margin-bottom:15px;
}

.situated-text p{
    font-size:16px;
    line-height:1.7;
    color:rgba(255,255,255,.9);
}

/* RIGHT CARD */
.situated-card{
    width:400px;
    background:rgba(0,0,0,.65);
    border-radius:16px;
    padding:35px 30px;
    text-align:center;
    flex-shrink:0;
}

.sc-label,
.sc-label2{
    color:#ff8c32;
    font-size:16px;
    font-style:italic;
    font-weight:600;
    margin-bottom:12px;
}

.sc-value{
    color:#fff;
    font-size:18px;
    font-weight:600;
    line-height:1.5;
    margin-bottom:28px;
}

.plot-btn{
    display:inline-block;
    background:#6aab5e;
    color:#fff;
    padding:12px 26px;
    border-radius:50px;
    font-size:18px;
    font-weight:600;
    margin-bottom:25px;
}

.sc-price{
    color:#fff;
    font-size:18px;/*34*/
    font-weight:700;
    margin-bottom:25px;
}

.book-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    background:#ff8c32;
    color:#fff;
    text-decoration:none;
    padding:14px;
    border-radius:50px;
    font-weight:600;
}

.book-btn svg{
    width:18px;
    height:18px;
}

/* =========================
   LARGE TABLET
========================= */

@media (max-width:1199px){

    .situated{
        padding:60px 40px;
        gap:30px;
    }

    .situated-text h3{
        font-size:30px;
    }

    .situated-card{
        width:320px;
    }
}

/* =========================
   TABLET
========================= */

@media (max-width:991px){

    .situated{
        padding:50px 30px;
        flex-direction:column;
        align-items:flex-start;
        min-height:auto;
    }

    .situated-text{
        max-width:100%;
    }

    .situated-card{
        width:100%;
        max-width:450px;
    }

    .situated-text h3{
        font-size:28px;
    }
}

/* =========================
   MOBILE
========================= */

@media (max-width:768px){

    .situated{
        padding:40px 20px;
        gap:25px;
    }

    .situated-text h3{
        font-size:32px;
        line-height:1.3;
    }

    .situated-text p{
        font-size:14px;
    }

    .situated-card{
        width:100%;
        max-width:100%;
        padding:25px 20px;
    }

    .sc-value{
        font-size:16px;
    }

    .sc-price{
        font-size:20px;
    }

    .plot-btn,
    .book-btn{
        width:100%;
    }
}

/* =========================
   SMALL MOBILE
========================= */

@media (max-width:480px){

    .situated{
        padding:30px 15px;
    }

    .situated-text h3{
        font-size:22px;
    }

    .situated-card{
        padding:20px 15px;
    }

    .sc-price{
        font-size:22px;
    }
}

/* ─── AMENITIES ─── */
.amenities{
    padding:70px 40px;
    background:#fff;
}

.amenities h3{
    text-align:center;
    font-size:40px;
    margin-bottom:40px;
    
    font-weight: 700;
    color: #333333;
   
    line-height:1.3em;
}

.am-card{
    background:#f0f0f0;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}

.am-img{
    height:260px;
    background-size:cover;
    background-position:center;
}

.am-footer{
    padding:18px;
    font-size:16px;
    font-weight:500;
}


/* Swiper Container */
/* Swiper container */
.amenitiesSwiper{
    position: relative;
    padding-bottom: 0;
}

/* Pagination below slider */
.amenitiesSwiper .swiper-pagination{
    position: static !important;
    margin-top: 25px;
    text-align: center;
}

/* Bullets */
.amenitiesSwiper .swiper-pagination-bullet{
    width:10px;
    height:10px;
    background:#f78d3f !important;
    opacity:.35;
}

.amenitiesSwiper .swiper-pagination-bullet-active{
    opacity:1;
    transform:scale(1.2);
}


@media(max-width:768px){

    .amenitiesSwiper{
        padding-left:0;
        padding-right:0;
        padding-bottom:60px;
    }

    
}
@media(max-width:768px){

    .amenities{
        padding:40px 15px;
    }

    .am-img{
        height:220px;
    }

    .amenities h3{
        font-size:32px;
    }
}

/* ─── ADVANTAGE ─── */
.advantage{
    position:relative;
    background:url('../img/adv.webp') center center/cover no-repeat;
    padding:80px 0;
    overflow:hidden;
}

.adv-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.45);
}

.adv-container{
    position:relative;
    z-index:2;
    width:90%;
    max-width:1200px;
    margin:auto;
}

/* TOP AREA */

.adv-top{
    display:grid;
    grid-template-columns:280px 1fr;
    gap:50px;
    margin-bottom:40px;
}

.adv-title h3{
    color:#fff;
    font-size:40px;
    font-weight:700;
    line-height:1.3em;
    margin:0;
}

.adv-desc{
    color:#fff;
}

.adv-desc p{
    font-size:18px;
    line-height:1.5;
    margin-bottom:18px;
}

/* BLACK BOX */

.adv-box{
    background:rgba(0,0,0,.55);
    border-radius:20px;
    padding:40px;

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:35px 50px;

    backdrop-filter:blur(4px);
}

.adv-item{
    display:flex;
    gap:15px;
}

.icon{
    font-size:28px;
    color:#f78d3f;
    flex-shrink:0;
}

.adv-item h4{
    color:#fff;
    font-size:24px;
    margin-bottom:8px;
}

.adv-item p{
    color:#fff;
    opacity:.95;
    font-size:18px;
    line-height:1.6;
}

/* LAPTOP */

@media(max-width:1200px){

    .adv-title h3{
        font-size:40px;
    }

    .adv-item h4{
        font-size:20px;
    }

    .adv-item p{
        font-size:16px;
    }
}

/* TABLET */

@media(max-width:991px){

    .adv-top{
        grid-template-columns:1fr;
        gap:25px;
    }

    .adv-title h3{
        font-size:44px;
    }

    .adv-box{
        grid-template-columns:1fr;
        padding:30px;
    }

    .adv-desc p{
        font-size:16px;
    }
}

/* MOBILE */

@media(max-width:768px){

    .advantage{
        padding:60px 0;
    }

    .adv-container{
        width:92%;
    }

    .adv-title h3{
        font-size:32px;
        text-align:center;
    }

    .adv-desc{
        text-align:center;
    }

    .adv-desc p{
        font-size:17px;
        line-height:1.7;
    }

    .adv-box{
        padding:25px 20px;
        gap:25px;
    }

    .adv-item{
        align-items:flex-start;
    }

    .icon{
        font-size:24px;
    }

    .adv-item h4{
        font-size:18px;
    }

    .adv-item p{
        font-size:17px;
        line-height:1.6;
    }
}

/* SMALL MOBILE */

@media(max-width:480px){

    .adv-title h3{
        font-size:30px;
    }

    .adv-box{
        border-radius:14px;
        padding:20px 15px;
    }

    .adv-item h4{
        font-size:16px;
    }

    .adv-item p{
        font-size:13px;
    }
}

/* ─── PERMACULTURE / PLOT CARDS ─── */
/*==========================
 PERMACULTURE SECTION
==========================*/

.permaculture{
    padding:90px 100px;
    background:#fff;
}

.permaculture h3{
    max-width:950px;
    margin:0 auto 60px;
    text-align:center;

   
    font-size: 40px;
    font-weight: 700;
    color: #333333;
   
    line-height:1.3em;
   
}

/* GRID */

.perm-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

@media(max-width:991px){
    .perm-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:767px){
    .perm-grid{
        grid-template-columns:1fr;
    }
}
/* CARD */

.perm-card{
    background:#5d8737;
    border-radius:10px;
    padding:38px 34px;
    color:#fff;
    text-align:left;
    min-height:320px;

    display:flex;
    flex-direction:column;
}

/* ICON */

.perm-icon-wrap{
    width:46px;
    height:46px;
    background:rgba(255,255,255,.95);
    border-radius:6px;

    display:flex;
    align-items:center;
    justify-content:center;
}

.perm-icon-wrap svg{
    width:24px;
    height:24px;
    fill:#5d8737;
}

/* Divider */

.perm-divider{
    width:62px;
    height:2px;
    background:rgba(255,255,255,.65);
    margin:18px 0 22px;
}

/* Heading */

.perm-card h4{
    font-size:32px;
    font-weight:700;
    margin-bottom:20px;
    line-height:1.2;
}

/* Paragraph */

.perm-card p{
    font-size:18px;
    line-height:1.5;
    font-weight:400;
    color:rgba(255,255,255,.96);
}


/*==========================
 Large Laptop
==========================*/

@media(max-width:1400px){

.permaculture{
    padding:80px 70px;
}

.permaculture h2{
    font-size:46px;
}

.perm-card{
    min-height:290px;
    padding:30px;
}

.perm-card h4{
    font-size:28px;
}

.perm-card p{
    font-size:18px;
}

}


/*==========================
 Laptop
==========================*/

@media(max-width:1200px){

.perm-grid{
    grid-template-columns:repeat(2,1fr);
}

.permaculture{
    padding:70px 50px;
}

.permaculture h2{
    font-size:40px;
}

}


/*==========================
 Tablet
==========================*/

@media(max-width:768px){

.permaculture{
    padding:60px 22px;
}

.permaculture h3{
    font-size:32px;
    line-height:1.3;
    margin-bottom:40px;
}

.perm-grid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:30px;
    margin-top:40px;
}

.perm-card{
    background:#5E873B;
    border-radius:10px;
    padding:35px 30px;
    color:#fff;
    min-height:300px;

    display:flex;
    flex-direction:column;
}

/* Laptop */
@media (max-width:1200px){
    .perm-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

/* Mobile */
@media (max-width:768px){
    .perm-grid{
        grid-template-columns:1fr;
    }

    .permaculture{
        padding:50px 20px;
    }

    .permaculture h3{
        font-size:32px;
    }
}

.perm-card h4{
    font-size:26px;
}

.perm-card p{
    font-size:17px;
}

}


/*==========================
 Mobile
==========================*/

@media(max-width:480px){

.permaculture{
    padding:45px 16px;
}

.permaculture h2{
    font-size:28px;
}

.perm-card{
    padding:25px 22px;
}

.perm-icon-wrap{
    width:42px;
    height:42px;
}

.perm-icon-wrap svg{
    width:20px;
    height:20px;
}

.perm-divider{
    margin:15px 0 18px;
}

.perm-card h4{
    font-size:22px;
    margin-bottom:12px;
}

.perm-card p{
    font-size:15px;
    line-height:1.6;
}

}

/* ─── IMAGINATION BANNER ─── */
.imagination{
  background:linear-gradient(rgba(15,30,15,0.55),rgba(15,30,15,0.55)),
    url('../img/hill.webp') center/cover no-repeat;
  padding:72px 64px;text-align:center;color:#fff;
}
.imagination h2{font-size:34px;font-weight:800;line-height:1.25;margin-bottom:10px;}
.imagination p{font-size:15px;opacity:0.88;margin-bottom:28px;}
.orange-btn{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--orange);color:#fff;
  font-size:14px;font-weight:600;
  padding:13px 30px;border-radius:50px;
}
.orange-btn svg{width:17px;height:17px;}
.orange-btn:hover{background:#d96a20;}

/* ─── CO-FARMING / SHARED SECTION BASE ─── */
.cofarming{
    padding:80px 20px;
    background:#fff;
}

.cofarming h3{
    text-align:center;
    font-size:42px;
    font-weight:700;
    color:#333;
    margin-bottom:60px;
}

/* Desktop */
.ownership-process{
    display:grid;
    grid-template-columns:1fr 60px 1fr 60px 1fr 60px 1fr;
    align-items:center;
    max-width:1400px;
    margin:auto;
    gap:0;
}

.process-card{
    background:#fff;
    border-radius:18px;
    padding:35px 25px;
    text-align:center;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    transition:.3s;
    min-height:420px;
}

.process-card:hover{
    transform:translateY(-8px);
}

.process-icon{
    width:100px;
    height:100px;
    margin:0 auto 25px;
    border-radius:50%;
    background:#eef5e9;
    display:flex;
    align-items:center;
    justify-content:center;
}

.process-icon i{
    font-size:44px;
    color:#5E873B;
}

.process-card h4{
    font-size:26px;
    margin-bottom:15px;
    color:#222;
}

.cf-line{
    width:70px;
    height:3px;
    background:#5E873B;
    margin:0 auto 18px;
}

.process-card p{
    font-size:16px;
    line-height:1.7;
    color:#666;
}

.process-arrow{
    display:flex;
    justify-content:center;
    align-items:center;
}

.process-arrow i{
    width:54px;
    height:54px;
    border-radius:50%;
    background:#F78D3F;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
}


/* =============================
   Large Tablet
============================= */

@media (max-width:1199px){

    .ownership-process{
        grid-template-columns:1fr 60px 1fr;
        gap:25px;
    }

    .process-card{
        min-height:380px;
    }

    .process-card h4{
        font-size:22px;
    }

    .process-card p{
        font-size:15px;
    }

}


/* =============================
   Tablet
============================= */

@media (max-width:991px){

    .cofarming{
        padding:60px 20px;
    }

    .cofarming h3{
        font-size:34px;
        margin-bottom:40px;
    }

    .ownership-process{
        grid-template-columns:1fr;
        gap:20px;
    }

    .process-arrow{
        transform:rotate(90deg);
    }

    .process-card{
        min-height:auto;
        padding:30px 20px;
    }

    .process-icon{
        width:90px;
        height:90px;
    }

    .process-icon i{
        font-size:38px;
    }

    .process-card h4{
        font-size:24px;
    }

}


/* =============================
   Mobile
============================= */

@media (max-width:767px){

    .cofarming{
        padding:50px 15px;
    }

    .cofarming h3{
        font-size:32px;
    }

    .process-card{
        padding:25px 18px;
    }

    .process-icon{
        width:80px;
        height:80px;
        margin-bottom:20px;
    }

    .process-icon i{
        font-size:32px;
    }

    .process-card h4{
        font-size:26px;
    }

    .process-card p{
        font-size:17px;
    }

    .process-arrow i{
        width:46px;
        height:46px;
        font-size:16px;
    }

}


/* =============================
   Small Mobile
============================= */

@media (max-width:480px){

    .cofarming h3{
        font-size:24px;
    }

    .process-card{
        padding:22px 16px;
    }

    .process-card h4{
        font-size:20px;
    }

    .process-card p{
        font-size:14px;
        line-height:1.6;
    }

    .process-icon{
        width:70px;
        height:70px;
    }

    .process-icon i{
        font-size:28px;
    }

    .process-arrow i{
        width:40px;
        height:40px;
        font-size:14px;
    }

}

/* ─── DOWNLOAD BANNER ─── */
.download-banner{
    padding:40px 20px;
    background:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
}

.download-btn{
    display:inline-flex;
    align-items:center;
    gap:12px;
    padding:16px 28px;
    background:#f68b33;
    color:#fff;
    text-decoration:none;
    border-radius:50px;
    font-size:18px;
    font-weight:600;
    transition:.3s ease;
    box-shadow:0 10px 25px rgba(246,139,51,.25);
}

.download-btn:hover{
    background:#ea7d22;
    transform:translateY(-2px);
}

.download-icon{
    width:28px;
    height:28px;
    border:2px solid rgba(255,255,255,.5);
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
}

.download-icon svg{
    width:15px;
    height:15px;
    color:#fff;
}

/* Large Desktop */

@media (max-width:1400px){

    .download-btn{
        font-size:17px;
        padding:15px 26px;
    }

}

/* Laptop */

@media (max-width:992px){

    .download-banner{
        padding:35px 20px;
    }

    .download-btn{
        font-size:16px;
        padding:14px 24px;
    }

    .download-icon{
        width:26px;
        height:26px;
    }

}

/* Mobile */

@media (max-width:576px){

    .download-banner{
        padding:30px 15px;
    }

    .download-btn{
        width:100%;
        max-width:300px;
        justify-content:center;
        font-size:15px;
        padding:14px 20px;
    }

    .download-icon{
        width:24px;
        height:24px;
    }

    .download-icon svg{
        width:13px;
        height:13px;
    }

}

/* ─── VIRTUAL TOUR / PLOT SELECTOR ─── */
.virtual-tour{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;

    padding:80px 7%;
    min-height:500px;

    background:url('../img/explore.webp') center center/cover no-repeat;
    overflow:hidden;
}

.vt-overlay{
    position:absolute;
    inset:0;
    background:rgba(16,28,16,.60);
}

.vt-text{
    position:relative;
    z-index:2;
    width:48%;
    color:#fff;
}

.vt-heading{
    font-size:40px;
    line-height:1.3em;
    font-weight:700;
    margin-bottom:25px;
    font-family: 'Caslon 540', serif;
}

.vt-text p{
    font-size:18px;
    line-height:1.8;
    color:rgba(255,255,255,.9);
    margin-bottom:35px;
    max-width:520px;
}

.vt-btn{
    display:inline-flex;
    align-items:center;
    gap:12px;

    background:#F68B2C;
    color:#fff;
    text-decoration:none;

    padding:16px 34px;
    border-radius:50px;
    font-size:16px;
    font-weight:600;

    transition:.3s;
}

.vt-btn:hover{
    background:#df7617;
}

.vt-btn svg{
    width:18px;
    height:18px;
}

.vt-map{
    position:relative;
    z-index:2;

    width:42%;
    max-width:520px;

    border-radius:16px;
    overflow:hidden;

    box-shadow:0 15px 40px rgba(0,0,0,.35);
}

.vt-map img{
    width:100%;
    display:block;
}

/* ------------------- Large Laptop ------------------- */

@media (max-width:1400px){

    .vt-heading{
        font-size:46px;
    }

    .vt-map{
        width:45%;
    }

}

/* ------------------- Laptop ------------------- */

@media (max-width:1200px){

    .virtual-tour{
        gap:40px;
        padding:70px 5%;
    }

    .vt-heading{
        font-size:40px;
    }

    .vt-text{
        width:50%;
    }

    .vt-map{
        width:45%;
    }

}

/* ------------------- Tablet ------------------- */

@media (max-width:992px){

    .virtual-tour{
        flex-direction:column;
        text-align:center;
        padding:60px 30px;
        gap:35px;
    }

    .vt-text{
        width:100%;
        max-width:700px;
    }

    .vt-text p{
        max-width:100%;
    }

    .vt-map{
        width:100%;
        max-width:650px;
    }

}

/* ------------------- Mobile ------------------- */

@media (max-width:768px){

    .virtual-tour{
        padding:50px 20px;
    }

    .vt-heading{
        font-size:32px;
    }

    .vt-text p{
        font-size:16px;
        line-height:1.7;
    }

    .vt-btn{
        padding:14px 24px;
        font-size:15px;
    }

    .vt-map{
        width:100%;
    }

}

/* ------------------- Small Mobile ------------------- */

@media (max-width:480px){

    .virtual-tour{
        padding:40px 15px;
    }

    .vt-heading{
        font-size:28px;
    }

    .vt-text p{
        font-size:15px;
    }

    .vt-btn{
        width:100%;
        justify-content:center;
    }

}

/* ─── GALLERY ─── */
.gallery{padding:56px 64px;background:#fff;}
.gallery h3{font-size:40px;font-weight:700;text-align:center;margin-bottom:32px;}
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-template-rows:repeat(2,160px);
  gap:8px;
}
.gi{border-radius:8px;overflow:hidden;background:#ccc center/cover no-repeat;}
.gi:nth-child(1){grid-column:span 1;grid-row:span 2;background-image:url('../img/gallery/g1.webp');}
.gi:nth-child(2){grid-column:span 1;background-image:url('../img/gallery/g2.webp');}
.gi:nth-child(3){grid-column:span 1;background-image:url('../img/gallery/g3.webp');}
.gi:nth-child(4){grid-column:span 1;background-image:url('../img/gallery/g4.webp');}
.gi:nth-child(5){grid-column:span 1;background-image:url('../img/gallery/g5.webp');}
.gi:nth-child(6){grid-column:span 1;background-image:url('../img/gallery/g6.webp');}
.gi:nth-child(7){grid-column:span 1;background-image:url('../img/gallery/g7.webp');}
.gi:nth-child(8){grid-column:span 1;background-image:url('../img/gallery/g8.webp');}
.gi:nth-child(9){grid-column:span 1;background-image:url('../img/gallery/g9.webp');}
.gi:nth-child(10){grid-column:span 1;background-image:url('../img/gallery/g10.webp');}
.gi:nth-child(11){grid-column:span 1;background-image:url('../img/gallery/g11.webp');}

/* =========================
   Mobile
========================= */
@media (max-width:767px){

    .gallery{
        padding:35px 15px;
    }

    .gallery h3{
        font-size:32px;
        margin-bottom:20px;
    }

    .gallery-grid{
        grid-template-columns:repeat(2,1fr);
        grid-auto-rows:140px;
        gap:6px;
    }

    /* Remove tall images on mobile */
    .gi:nth-child(1){
        grid-row:span 1;
    }

}

/* =========================
   Small Mobile
========================= */
@media (max-width:480px){

    .gallery-grid{
        grid-template-columns:1fr;
        grid-auto-rows:220px;
    }

    .gi{
        grid-column:span 1 !important;
        grid-row:span 1 !important;
    }

}


/* ─── CONNECTIVITY ─── */
.connectivity{

    max-width:1240px;
    margin:70px auto;

    min-height:441px;

    border-radius:28px;
    overflow:hidden;

    background:url("../img/cta.webp") center center no-repeat;
    background-size:cover;

    display:flex;
    align-items:center;
}

.conn-left{

    width:60%;
    padding:60px;
}

.conn-left h3{

 /*   font-size:58px;
    line-height:1.08;
    font-weight:700;
    color:#222;
*/
    margin-bottom:35px;
}

.main-stat{

    display:flex;
    align-items:center;
    gap:20px;

    margin-bottom:20px;
}

.main-stat span{

    font-size:70px;
    color:#ff8d35;
    font-weight:700;
}

.main-stat strong{

    display:block;
    font-size:18px;
    color:#222;

}

.main-stat p{

    margin:0;
    font-size:24px;
}

.orange-line{

    width:300px;
    height:3px;
    background:#ff8d35;

    margin:25px 0 30px;
}

.conn-grid{

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.item{

    display:flex;
    gap:15px;
}

.item span{

    font-size:34px;
    color:#ff8d35;
    font-weight:600;
}

.item strong{

    display:block;
    font-size:16px;
}

.item p{

    margin:3px 0 0;
    font-size:12px;
    line-height:1.4;
    font-weight: 400;
}

.visit-btn{

    display:inline-block;
    margin-top:35px;

    background:#ff8d35;
    color:#fff;

    padding:16px 34px;
    border-radius:50px;

    text-decoration:none;
    font-size:18px;
    font-weight:600;
}

.visit-btn:hover{

    background:#ef7b22;
}

@media(max-width:992px){

.connectivity{

    background-position:right center;

    min-height:auto;
}

.conn-left{

    width:100%;
    padding:45px 30px;

    background:rgba(238,249,235,.85);
}

.conn-left h2{

    font-size:38px;
}

.main-stat span{

    font-size:52px;
}

.main-stat strong{

    font-size:22px;
}

.main-stat p{

    font-size:17px;
}

.conn-grid{

    grid-template-columns:1fr;
}

.orange-line{

    width:180px;
}

}

/* ─── FORM + MAP ─── */
/*=============================
      ENQUIRY SECTION
==============================*/
.form-section{
    width:100%;
/*    margin:70px 0;*/
    padding:0;
}

.gmap{
    width:100%;
    height:500px;
    overflow:hidden;
}

.gmap iframe{
    width:100%;
    height:100%;
    border:0;
    display:block;
}

@media (max-width:992px){
    .gmap{
        height:450px;
    }
}

@media (max-width:768px){
    .form-section{
/*        margin:50px 0;*/
    }

    .gmap{
        height:350px;
    }
}

@media (max-width:480px){
    .gmap{
        height:280px;
    }
}

/* ─── STATS BANNER ─── */
/*=========================
    STATS BANNER
=========================*/
.stats-banner{
    position:relative;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    align-items:center;
    text-align:center;
    padding:70px 40px;
    overflow:hidden;

    background:url("../img/start.webp") center bottom/cover no-repeat;
}

.stats-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.45);
}

/* Bottom trees */
.stats-banner::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:95px;
    background:url("img/tree-line.png") center bottom/cover no-repeat;
    pointer-events:none;
}

/* Vertical Divider */
.stat-item{
    position:relative;
    z-index:2;
    padding:0 30px;
   
}

.stat-item:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    width:2px;
    height:80px;
    background:#ff8b2c;
}

.snum{
    font-family: "Inter", Sans-serif;
    font-size:54px;
    font-weight:600;
    color:#fff;
    line-height:1;
    margin-bottom:12px;
}

.sdesc{
    font-size:20px;
    font-weight:500;
    color:#fff;
    line-height:1.5;
}


/* =========================
   Large Desktop (1600px+)
========================= */
@media (min-width:1600px){

    .stats-banner{
        padding:80px 120px;
    }

    .snum{
        font-size:60px;
    }

    .sdesc{
        font-size:18px;
    }

}

/* =========================
   Desktop (1400px - 1599px)
========================= */
@media (min-width:1400px) and (max-width:1599px){

    .stats-banner{
        padding:70px 80px;
    }

    .snum{
        font-size:60px;
    }

    .sdesc{
        font-size:18px;
    }

}

/* =========================
   Laptop
========================= */
@media (max-width:1200px){

    .stats-banner{
        padding:60px 30px;
    }

    .snum{
        font-size:60px;
    }

    .sdesc{
        font-size:18px;
    }

}

/*=========================
        Laptop
=========================*/
@media(max-width:1200px){

.stats-banner{
    padding:60px 30px;
}

.snum{
    font-size:60px;
}

.sdesc{
    font-size:18px;
}

}


/*=========================
        Tablet
=========================*/
@media(max-width:991px){

.stats-banner{
    grid-template-columns:1fr;
    gap:45px;
    padding:60px 20px;
}

.stat-item:not(:last-child)::after{
    width:70%;
    height:2px;
    left:50%;
    right:auto;
    top:auto;
    bottom:-22px;
    transform:translateX(-50%);
}

.snum{
    font-size:54px;
}

.sdesc{
    font-size:18px;
}

.stats-banner::after{
    height:70px;
}

}


/*=========================
        Mobile
=========================*/
@media(max-width:576px){

.stats-banner{
    padding:50px 15px;
    gap:35px;
}

.snum{
    font-size:42px;
}

.sdesc{
    font-size:16px;
}

.stat-item{
    padding:0;
}

.stat-item:not(:last-child)::after{
    width:120px;
    bottom:-18px;
}

.stats-banner::after{
    height:55px;
}

}

/* ─── OWNERSHIP EXPERIENCE CAROUSEL ─── */
.owx-carousel-wrap{
  position:relative;display:flex;align-items:center;gap:0;
  max-width:1000px;margin:0 auto;
}
.owx-track-outer{overflow:hidden;width:100%;border-radius:16px;}
.owx-track{
  display:flex;transition:transform 0.45s cubic-bezier(0.4,0,0.2,1);
  will-change:transform;
}
.owx-card{
  min-width:100%;background:#fff;border-radius:16px;
  box-shadow:0 4px 28px rgba(0,0,0,0.10);
  overflow:hidden;display:grid;grid-template-columns:1fr 1fr;
  text-align:left;
}
.owx-card-img{height:340px;background:#ccc center/cover no-repeat;}
.owx-card-body{
  padding:36px 32px;display:flex;flex-direction:column;justify-content:center;
}
.owx-step{
  font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  color:var(--orange);margin-bottom:8px;
}
.owx-card-body h4{font-size:20px;font-weight:800;color:var(--text-dark);margin-bottom:8px;}
.owx-card-body .cf-green-line{margin-bottom:14px;}
.owx-card-body p{font-size:13.5px;color:var(--text-mid);line-height:1.75;margin-bottom:16px;}
.owx-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px;}
.owx-list li{
  font-size:12.5px;color:var(--text-dark);
  padding-left:18px;position:relative;line-height:1.5;
}
.owx-list li::before{
  content:'✓';position:absolute;left:0;
  color:var(--green);font-weight:700;font-size:12px;
}
.owx-arrow{
  flex-shrink:0;width:42px;height:42px;
  border-radius:50%;border:1.5px solid var(--light-gray);
  background:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:var(--text-dark);box-shadow:0 2px 8px rgba(0,0,0,0.08);
  transition:all 0.2s;z-index:2;
  margin:0 12px;
}
.owx-arrow:hover{background:var(--green);border-color:var(--green);color:#fff;}
.owx-arrow svg{width:20px;height:20px;}
.owx-dots{display:flex;gap:8px;justify-content:center;margin-top:24px;}
.owx-dot{
  width:10px;height:10px;border-radius:50%;
  background:var(--light-gray);cursor:pointer;
  transition:background 0.25s,transform 0.25s;
}
.owx-dot.active{background:var(--orange);transform:scale(1.25);}

/* ─── DEVELOPER SECTION ─── */
.dev-section{padding:72px 64px;}
.dev-intro-wrap{
  display:grid;grid-template-columns:1fr 1fr;gap:56px;
  max-width:1000px;margin:0 auto 60px;align-items:start;
  text-align:left;
}
.dev-eyebrow{
  font-size:11px;font-weight:700;letter-spacing:1.8px;
  text-transform:uppercase;color:var(--green);margin-bottom:10px;
}
.dev-headline{
  font-size:32px;font-weight:800;line-height:1.2;
  color:var(--text-dark);margin-bottom:14px;
}
.dev-accent-line{width:44px;height:3px;background:var(--orange);border-radius:2px;}
.dev-intro-right p{font-size:14.5px;color:var(--text-mid);line-height:1.8;}
.dev-intro-right p+p{margin-top:14px;}
.dev-pillars{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:28px;max-width:1000px;margin:0 auto;
}
.dev-pillar{
  background:#fff;border:1px solid #eaeaea;
  border-radius:16px;padding:32px 28px;
  text-align:left;
  box-shadow:0 2px 16px rgba(0,0,0,0.055);
  transition:box-shadow 0.22s,transform 0.22s;
}
.dev-pillar:hover{
  box-shadow:0 8px 32px rgba(90,138,60,0.13);
  transform:translateY(-4px);
}
.dev-pillar-icon{margin-bottom:20px;}
.dev-pillar-icon svg{width:48px;height:48px;}
.dev-pillar-num{
  font-size:40px;font-weight:900;color:var(--orange);
  line-height:1;margin-bottom:6px;
}
.dev-pillar-label{
  font-size:13.5px;font-weight:700;color:var(--text-dark);
  line-height:1.35;margin-bottom:14px;
}
.dev-pillar-para{font-size:13px;color:var(--text-mid);line-height:1.72;}

/* ─── FOOTER ─── */
footer{
    background: var(--footer-bg);
    padding:50px 40px 25px;
}

.footer-grid{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:40px;
    flex-wrap:wrap;
    margin-bottom:30px;
}

.footer-left{
    max-width:420px;
}

/* Logo */
.footer-logo{
    margin-bottom:20px;
}

.footer-logo img{
    width:220px;
    max-width:100%;
    height:auto;
    display:block;
}

/* Address */
.footer-addr{
    margin-top:15px;
    font-size:15px;
    color:var(--text-mid);
    line-height:1.8;
}

/* Social Icons */
.footer-social{
    display:flex;
    gap:15px;
    align-items:center;
}

.footer-social a{
    width:46px;
    height:46px;
    border-radius:50%;
    background:#5A8A3C;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    transition:.3s;
    font-size:18px;
}

.footer-social a:hover{
    background:#F78D3F;
    transform:translateY(-4px);
}

/* Bottom */
.footer-bottom{
    border-top:1px solid rgba(0,0,0,.12);
    padding-top:20px;
    font-size:14px;
    color:#666;
    line-height:1.7;
    text-align:left;
}

/* =========================
   Tablet
========================= */

@media(max-width:992px){

    footer{
        padding:40px 25px 20px;
    }

    .footer-grid{
        flex-direction:column;
        align-items:flex-start;      /* LEFT */
        text-align:left;             /* LEFT */
        gap:25px;
    }

    .footer-left{
        width:100%;
        max-width:100%;
    }

    .footer-logo{
        justify-content:flex-start;
    }

    .footer-social{
        justify-content:flex-start;
    }

    .footer-logo img{
        width:190px;
    }

}

/* =========================
   Mobile
========================= */

@media(max-width:768px){

    footer{
        padding:35px 20px;
    }

    .footer-grid{
        align-items:flex-start;
        text-align:left;
    }

    .footer-logo{
        justify-content:flex-start;
    }

    .footer-logo img{
        width:170px;
        margin:0;
    }

    .footer-addr{
        font-size:14px;
    }

    .footer-social{
        justify-content:flex-start;
        gap:12px;
    }

    .footer-social a{
        width:42px;
        height:42px;
        font-size:16px;
    }

    .footer-bottom{
        text-align:left;
        font-size:13px;
    }

}

/* =========================
   Small Mobile
========================= */

@media(max-width:480px){

    .footer-logo img{
        width:150px;
    }

    .footer-social{
        flex-wrap:wrap;
        justify-content:flex-start;
    }

    .footer-social a{
        width:40px;
        height:40px;
        font-size:15px;
    }

    .footer-bottom{
        font-size:12px;
        text-align:left;
    }

}

/* ─── UTILITY / EXTRAS ─── */

/* Amenities 4-col override */
.am-grid-4{grid-template-columns:repeat(4,1fr);}

/* Permaculture 4-col override */
.perm-grid-4{grid-template-columns:repeat(4,1fr);}

/* Imagination buttons row */
.imagination-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.orange-btn-outline{background:transparent;border:1px solid rgba(255,255,255,0.5);}
.orange-btn-outline:hover{background:rgba(255,255,255,0.1);}
.disclaimer{font-size:18px;opacity:0.4;margin-top:28px;max-width:700px;margin-left:auto;margin-right:auto;line-height:1.7;}

/* Section sub-header */
.section-sub{font-size:14px;color:var(--text-mid);max-width:580px;margin:0 auto 40px;line-height:1.75;}
.section-sub-dark{max-width:600px;margin:0 auto 40px;}

/* Virtual tour heading */
.vt-heading{font-size:40px;font-weight:800;line-height:1.25;margin-bottom:14px;}
.vt-btn{margin-top:22px;font-size:13px;padding:11px 24px;}

/* Connectivity right panel */
.conn-right{display:flex;align-items:center;justify-content:center;padding:24px;}
.landmarks-card{background:#fff;border-radius:14px;padding:28px 24px;box-shadow:0 4px 20px rgba(0,0,0,0.10);width:100%;max-width:380px;}
.landmarks-title{font-size:13px;font-weight:700;color:var(--green);letter-spacing:0.5px;text-transform:uppercase;margin-bottom:18px;}
.landmarks-list{display:flex;flex-direction:column;gap:13px;}
.landmark-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f0f0;padding-bottom:10px;font-size:13px;}
.landmark-row span{color:var(--text-dark);font-weight:500;}
.landmark-row-last{border-bottom:none;padding-bottom:0;}
.landmark-time{font-weight:700;color:var(--orange);}
.landmarks-note{margin-top:18px;padding-top:14px;border-top:1px solid #f0f0f0;font-size:11.5px;color:var(--text-light);line-height:1.6;}
.conn-btn{font-size:14px;padding:12px 28px;}

/* Footer address lines */
.footer-addr{font-size:13px;color:var(--text-mid);line-height:1.75;margin-bottom:6px;}
.footer-logo{margin-bottom:16px;}

/* Footer grid - two column version */
.footer-grid{grid-template-columns:1fr auto !important;align-items:start;gap:32px;}
