:root{
      --green:#234536;
      --green-dark:#183126;
      --green-soft:#edf3ee;
      --ivory:#f8f8f4;
      --white:#fff;
      --ink:#292d2a;
      --muted:#6c736e;
      --border:#dfe5df;
      --shadow:0 18px 55px rgba(32,55,43,.10);
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"Inter",sans-serif;
      color:var(--ink);
      background:#fff;
      font-size:17px;
      line-height:1.65;
      overflow-x:hidden;
    }
    h1,h2,.serif{
      font-family:"Lora",serif;
      letter-spacing:-.025em;
    }
    p{color:var(--muted)}
    a{text-decoration:none}
    img{max-width:100%;display:block}

    .announcement{
      background:var(--green-dark);
      color:#fff;
      padding:.65rem 0;
      font-size:.88rem;
    }
    .announcement a{color:#fff;font-weight:700}

    .navbar{
      background:rgba(255,255,255,.96);
      border-bottom:1px solid rgba(35,69,54,.08);
      backdrop-filter:blur(10px);
    }
    .navbar-brand{
      color:var(--green-dark);
      font-family:"Lora",serif;
      font-weight:700;
      font-size:1.45rem;
    }
    .nav-link{color:var(--ink)!important;font-weight:600;font-size:.94rem}

    .btn-main,
    .btn-light{
      border-radius:10px;
      min-height:50px;
      padding:.82rem 1.2rem;
      font-weight:700;
      display:inline-flex;
      align-items:center;
      justify-content:center;
    }
    .btn-main{
      background:var(--green);
      border:1px solid var(--green);
      color:#fff;
    }
    .btn-main:hover{background:var(--green-dark);color:#fff}
    .btn-light{
      background:#fff;
      border:1px solid var(--border);
      color:var(--green-dark);
    }

    .hero{
      min-height:740px;
      display:flex;
      align-items:center;
      background:
        linear-gradient(90deg,rgba(10,28,19,.84) 0%,rgba(10,28,19,.68) 45%,rgba(10,28,19,.30) 100%),
        url('https://images.unsplash.com/photo-1512343879784-a960bf40e7f2?auto=format&fit=crop&w=1900&q=88') center/cover no-repeat;
    }
    .hero-content{
      max-width:760px;
      padding:85px 0 110px;
    }
    .eyebrow{
      text-transform:uppercase;
      letter-spacing:.1em;
      font-size:.79rem;
      font-weight:800;
      color:#718779;
      margin-bottom:.75rem;
    }
    .hero .eyebrow{color:#dce9df}
    .hero h1{
      color:#fff;
      font-size:clamp(3.2rem,6vw,6rem);
      line-height:.98;
      margin-bottom:1.2rem;
    }
    .hero p{
      color:rgba(255,255,255,.88);
      font-size:1.15rem;
      max-width:680px;
    }
    .hero-facts{
      display:flex;
      flex-wrap:wrap;
      gap:1rem 1.5rem;
      margin:1.5rem 0 1.7rem;
      color:#fff;
      font-weight:700;
    }
    .hero-facts span{display:flex;align-items:center;gap:.45rem}
    .hero-note{
      color:rgba(255,255,255,.66);
      font-size:.9rem;
      margin-top:1rem;
    }

    .trust-strip{
      margin-top:-40px;
      position:relative;
      z-index:5;
    }
    .trust-wrap{
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      border-radius:18px;
      overflow:hidden;
    }
    .trust-item{
      padding:1.5rem;
      text-align:center;
      border-right:1px solid var(--border);
    }
    .trust-item:last-child{border-right:0}
    .trust-num{
      font-family:"Lora",serif;
      color:var(--green-dark);
      font-size:1.95rem;
      font-weight:700;
      line-height:1.1;
    }
    .trust-label{color:var(--muted);font-size:.9rem;margin-top:.3rem}

    .section{padding:85px 0}
    .section-soft{background:var(--ivory)}
    .section-green{background:var(--green-soft)}
    .section-title{
      color:var(--green-dark);
      font-size:clamp(2.25rem,4vw,3.8rem);
      line-height:1.1;
      margin-bottom:1rem;
    }
    .section-copy{max-width:720px;font-size:1.04rem}

    .story-image{
      min-height:500px;
      border-radius:20px;
      overflow:hidden;
      position:relative;
    }
    .story-image img{
      width:100%;height:100%;
      position:absolute;inset:0;object-fit:cover;
    }
    .story-note{
      position:absolute;
      left:20px;right:20px;bottom:20px;
      background:rgba(255,255,255,.94);
      padding:1rem 1.1rem;
      border-radius:13px;
      color:var(--green-dark);
      font-weight:700;
    }

    .residence-card{
      background:#fff;
      border:1px solid var(--border);
      border-radius:17px;
      overflow:hidden;
      height:100%;
    }
    .residence-card img{width:100%;height:240px;object-fit:cover}
    .residence-body{padding:1.45rem}
    .residence-body h3{color:var(--green-dark);font-size:1.65rem;font-weight:800}
    .residence-detail{
      display:flex;
      justify-content:space-between;
      gap:1rem;
      border-top:1px solid #e8ece8;
      padding:.7rem 0;
      font-size:.94rem;
    }
    .residence-detail strong{color:var(--green-dark)}

    .amenity-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:1rem;
    }
    .amenity{
      background:#fff;
      border:1px solid var(--border);
      border-radius:15px;
      padding:1.25rem;
    }
    .amenity iconify-icon{font-size:1.4rem;color:var(--green);margin-bottom:.7rem}
    .amenity h5{font-weight:800;color:var(--green-dark);margin-bottom:.25rem}
    .amenity p{font-size:.92rem;margin:0}

    .location-box{
      background:var(--green-dark);
      color:#fff;
      border-radius:22px;
      overflow:hidden;
    }
    .location-box h2{color:#fff}
    .location-box p{color:rgba(255,255,255,.72)}
    .location-list{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:.9rem;
      margin-top:1.5rem;
    }
    .location-item{
      background:rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.10);
      border-radius:12px;
      padding:1.15rem;
      min-height:112px;
    }
    .location-item strong{
      display:block;
      color:#fff;
      font-family:"Lora",serif;
      font-size:1.5rem;
      margin-bottom:.2rem;
    }
    .location-item span{font-size:.88rem;color:rgba(255,255,255,.70)}

    .lead-box{
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      border-radius:22px;
      overflow:hidden;
    }
    .lead-box img{
      width:100%;
      height:100%;
      min-height:420px;
      object-fit:cover;
    }
    .form-control,.form-select{
      min-height:52px;
      border-radius:10px;
      border:1px solid #d4ddd6;
    }

    footer{
      background:#10271e;
      color:rgba(255,255,255,.7);
      padding:45px 0 90px;
    }
    footer h4{color:#fff}
    footer a{color:rgba(255,255,255,.8)}


    .site-footer{
      background:#10271e;
      color:rgba(255,255,255,.74);
      padding:0 0 25px;
    }
    .footer-main{
      padding:52px 0 38px;
    }
    .footer-brand{
      display:inline-block;
      font-family:"Lora",serif;
      font-weight:700;
      font-size:1.55rem;
      color:#fff;
      margin-bottom:1rem;
    }
    .footer-address{
      color:rgba(255,255,255,.72);
      line-height:1.6;
    }
    .footer-note{
      color:rgba(255,255,255,.56);
      max-width:460px;
      font-size:.92rem;
    }
    .footer-title{
      color:#fff;
      font-weight:800;
      font-size:.9rem;
      margin-bottom:.9rem;
    }
    .footer-links{
      display:grid;
      gap:.55rem;
    }
    .footer-links a{
      color:rgba(255,255,255,.68);
      font-size:.94rem;
    }
    .footer-links a:hover{color:#fff}
    .footer-actions{
      display:grid;
      gap:.7rem;
    }
    .footer-contact{
      min-height:44px;
      padding:.65rem .85rem;
      display:flex;
      align-items:center;
      gap:.55rem;
      border:1px solid rgba(255,255,255,.14);
      border-radius:10px;
      color:#fff;
      background:rgba(255,255,255,.04);
      font-weight:700;
    }
    .footer-contact:hover{
      background:rgba(255,255,255,.08);
      color:#fff;
    }
    .footer-bottom{
      border-top:1px solid rgba(255,255,255,.10);
      padding:20px 0 0;
      display:flex;
      justify-content:space-between;
      gap:1rem;
      color:rgba(255,255,255,.44);
      font-size:.8rem;
    }

    .mobile-sticky{display:none}

    @media(max-width:991.98px){
      .hero{min-height:690px}
      .section{padding:70px 0}
      .trust-item{border-right:0;border-bottom:1px solid var(--border)}
      .amenity-grid{grid-template-columns:1fr 1fr}
      .location-list{grid-template-columns:1fr 1fr;gap:.7rem}
      .story-image{min-height:420px}
    }
    @media(max-width:767.98px){
      body{font-size:16px;line-height:1.6;}
      .container{padding-left:18px;padding-right:18px}
      .announcement{font-size:.78rem;padding:.6rem 0}
      .announcement .container{gap:.75rem!important}
      .navbar{padding-top:.7rem!important;padding-bottom:.7rem!important}
      .navbar-brand{font-size:1.3rem}
      .navbar-collapse{padding-top:.75rem}
      .navbar .btn-main{width:100%;margin-top:.45rem}
      .hero{min-height:auto;background-position:58% center}
      .hero-content{padding:64px 0 88px}
      .hero h1{font-size:2.75rem;line-height:1.02;margin-bottom:1rem}
      .hero p{font-size:1.02rem;line-height:1.62}
      .hero-facts{display:grid;gap:.65rem;margin:1.25rem 0 1.5rem}
      .hero-content .d-flex{display:grid!important;grid-template-columns:1fr;gap:.7rem!important}
      .hero-content .btn{width:100%}
      .hero-note{font-size:.84rem;line-height:1.45}
      .trust-strip{margin-top:-24px}
      .trust-item{padding:1.15rem .6rem}
      .trust-num{font-size:1.55rem}
      .trust-label{font-size:.8rem;line-height:1.35}
      .section{padding:56px 0}
      .section-title{font-size:2.15rem;line-height:1.12}
      .section-copy{font-size:.98rem}
      .story-image{min-height:340px;margin-top:.5rem}
      .story-note{left:14px;right:14px;bottom:14px;padding:.85rem;font-size:.9rem}
      .residence-card img{height:210px}
      .residence-body{padding:1.2rem}
      .amenity-grid{grid-template-columns:1fr}
      .amenity{padding:1.05rem}
      .location-box{border-radius:18px}
      .location-box.p-4{padding:1.25rem!important}
      .location-list{grid-template-columns:1fr 1fr;gap:.7rem}
      .location-item{padding:1rem}
      .location-item strong{font-size:1.25rem}
      .location-item span{font-size:.8rem;line-height:1.35}
      .lead-box{border-radius:18px}
      .lead-box img{min-height:280px;max-height:320px}
      .lead-box .p-4{padding:1.35rem!important}
      #enquire{padding-top:0!important}
      #enquire .section-title{font-size:2.05rem}
      #enquire .d-flex.flex-wrap{display:grid!important;grid-template-columns:1fr 1fr;width:100%}
      #enquire .d-flex.flex-wrap .btn{width:100%}
      .site-footer{padding-bottom:82px}
      .footer-main{padding:40px 0 28px}
      .footer-brand{font-size:1.4rem}
      .footer-bottom{flex-direction:column;gap:.35rem;padding-top:18px}
      .footer-contact{min-height:46px}
      .mobile-sticky{
        display:grid;
        grid-template-columns:1fr 1fr 1.2fr;
        position:fixed;
        left:0;right:0;bottom:0;
        z-index:1050;
        background:#fff;
        border-top:1px solid var(--border);
        box-shadow:0 -8px 24px rgba(0,0,0,.08);
      }
      .mobile-sticky a{
        min-height:64px;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:.35rem;
        color:var(--green-dark);
        font-weight:800;
        font-size:.85rem;
        border-right:1px solid var(--border);
      }
      .mobile-sticky a:last-child{background:var(--green);color:#fff;border-right:0}
    }
    @media(max-width:420px){
      .location-list{grid-template-columns:1fr}
      .trust-num{font-size:1.4rem}
      .hero h1{font-size:2.5rem}
      #enquire .d-flex.flex-wrap{grid-template-columns:1fr!important}
    }