:root{
  --clr-bg:#F7F4EC;
  --clr-surface:#FFFFFF;
  --clr-dark:#182620;
  --clr-primary:#233F30;
  --clr-primary-light:#3C6349;
  --clr-accent:#B8863C;
  --clr-accent-soft:#E7DCC2;
  --clr-text:#2B2B26;
  --clr-muted:#6E6A5F;
  --radius-lg:20px;
  --radius-sm:8px;
}
*{box-sizing:border-box;}
html,body{overflow-x:hidden;}
body{
  font-family:'Inter',sans-serif;
  color:var(--clr-text);
  background:var(--clr-bg);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,.font-display{
  font-family:'Fraunces',serif;
  letter-spacing:-0.01em;
}
.eyebrow{
  font-family:'Jost',sans-serif;
  font-size:16px;
  color:#bcad8a;
  font-weight:500;
}
.btn-accent{
  background:#ec1e20;
  border:1px solid var(--clr-accent);
  color:#fff;
  font-family:'Jost',sans-serif;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:.85rem;
  padding:.75rem 1.6rem;
  border-radius:5px;
  transition:.25s ease;
}
.btn-accent:hover{background:#000;color:#fff;}
.btn-outline-cream{
  border:1px solid rgba(255,255,255,.55);
  color:#fff;
  font-family:'Jost',sans-serif;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:.85rem;
  padding:.75rem 1.6rem;
  border-radius:2px;
  transition:.25s ease;
}
.btn-outline-cream:hover{background:#fff;color:var(--clr-dark);}
section{padding:5.5rem 0;}
@media(max-width:767px){section{padding:3.25rem 0;}}

/* ===== NAVBAR ===== */
.navbar-hh{
  background:#fff;
  backdrop-filter:blur(6px);
  padding:.7rem 0;
  transition:.3s;
}
.navbar-hh .navbar-brand{
  font-family:'Fraunces',serif;
  font-weight:600;
  color:#fff;
  font-size:1.35rem;
}
.navbar-hh .navbar-brand img{max-width: 100px;}
.navbar-hh .navbar-brand span{color:var(--clr-accent);}
.navbar-hh .nav-link{
  color:#000!important;
  font-family:'Jost',sans-serif;
  font-size:.82rem;
  text-transform:uppercase;
  margin:0 .6rem;
}
.navbar-hh .nav-link:hover{color:var(--clr-accent)!important;}
.navbar-hh .btn-accent{padding:.5rem 1.3rem;font-size:.78rem;}

/* ===== HERO ===== */
.hero_img{
    position: absolute;
    top: -5%;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
}

.hero_img::after{
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        to bottom,
        rgba(0,0,0,.6),
        rgba(0,0,0,.5),
        rgba(0,0,0,.6)
    );
    z-index: 2;
    height: 105%;
}
.hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  /*background:linear-gradient(180deg,rgba(15,24,19,.55),rgba(15,24,19,.78)),
    url('../img/banner-2.webp') center/cover no-repeat;*/
  overflow: hidden;  
}
.hero::before{
  content:"";
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(247,244,236,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(247,244,236,.06) 1px, transparent 1px);
  background-size:64px 64px;
  pointer-events:none;
}
.hero-badges .chip{
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.3);
  color:#fff;
  font-family:'Jost',sans-serif;
  font-size:.78rem;
  letter-spacing:.05em;
  padding:.4rem .9rem;
  border-radius:30px;
  display:inline-flex;align-items:center;gap:.4rem;
}
.hero h1{
  color:#fff;
  font-size:36px;
  font-weight:600;
  line-height:1.2;
}
.hero .lead{color:rgba(255,255,255,.85);font-size:14px;}

.enquiry-card{
  background:var(--clr-surface);
  border-radius:10px;
  box-shadow:0 25px 60px rgba(0,0,0,.25);
  padding:2rem;
}
.enquiry-card .form-control{
  border-radius:var(--radius-sm);
  border:1px solid #E3DFD3;
  padding:.65rem .9rem;
  font-size:.9rem;
}
.enquiry-card .form-control:focus{
  border-color:var(--clr-accent);
  box-shadow:0 0 0 .2rem rgba(184,134,60,.15);
}

/* ===== SECTION HEAD ===== */
.section-head h2{
  font-size:clamp(1.7rem,3vw,2.5rem);
  font-weight:600;
  color:var(--clr-dark);
}
.divider-mark{
  width:52px;height:1px;background:var(--clr-accent);display:inline-block;margin-bottom:3px;
}

/* ===== OVERVIEW ===== */
.overview-img{
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:0 30px 60px rgba(24,38,32,.15);
}
.overview-img img{width:100%;height:100%;object-fit:cover;}
.stat-strip{
  background:var(--clr-primary);
  border-radius:var(--radius-lg);
  color:#fff;
}
.stat-strip .stat-num{
  font-family:'Fraunces',serif;
  font-size:2.2rem;
  font-weight:600;
  color:var(--clr-accent-soft);
}
.stat-strip .stat-label{
  font-family:'Jost',sans-serif;
  font-size:.78rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(255,255,255,.75);
}

/* ===== HIGHLIGHTS ===== */
.highlight-item{
  display:flex;gap:.9rem;align-items:flex-start;
  padding:.9rem 0;
  border-bottom:1px solid #E7E2D3;
}
.highlight-item:last-child{border-bottom:none;}
.highlight-item i{
  color:var(--clr-accent);
  font-size:1.1rem;margin-top:.15rem;
}
.highlight-photo{
  position:relative;border-radius:var(--radius-lg);overflow:hidden;
  box-shadow:0 30px 60px rgba(24,38,32,.18);
}
.highlight-photo img{width:100%;display:block;}

/* ===== WHY LUCKNOW / accordion ===== */
.accordion-hh .accordion-button{
  font-family:'Fraunces',serif;
  font-weight:600;
  color:var(--clr-dark);
  background:var(--clr-surface);
  font-size:1.05rem;
}
.accordion-hh .accordion-button:not(.collapsed){
  color:var(--clr-accent);
  background:var(--clr-accent-soft);
  box-shadow:none;
}
.accordion-hh .accordion-button:focus{box-shadow:none;}
.accordion-hh .accordion-item{
  border:1px solid #E7E2D3;
  border-radius:var(--radius-sm)!important;
  overflow:hidden;
  margin-bottom:.8rem;
}

/* ===== AMENITIES ===== */
.section-dark{
  background:var(--clr-dark);
  color:#fff;
}
.section-dark .section-head h2{color:#fff;}
.amenity-card{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--radius-lg);
  padding:2rem 1.2rem;
  text-align:center;
  transition:.3s;
  height:100%;
}
.amenity-card:hover{
  background:rgba(184,134,60,.12);
  border-color:var(--clr-accent);
  transform:translateY(-6px);
}
.amenity-card i{
  font-size:2rem;color:var(--clr-accent);margin-bottom:1rem;display:inline-block;
}
.amenity-card h5{
  font-family:'Jost',sans-serif;
  font-size:.9rem;letter-spacing:.03em;
  color:#fff;margin:0;
}

/* ===== PRICE ===== */
.price-card{
  background:var(--clr-surface);
  border-radius:var(--radius-lg);
  border:1px solid #E7E2D3;
  padding:2.5rem;
  position:relative;
  overflow:hidden;
}
/*.price-card::after{
  content:"";position:absolute;top:-40px;right:-40px;width:140px;height:140px;
  background:var(--clr-accent-soft);border-radius:50%;
}*/
.price-card .price-num{
  font-family:'Fraunces',serif;font-size:2.4rem;font-weight:600;color:var(--clr-primary);
}
.price-card .typology {
    display: flex;
    justify-content: space-around;
    padding-top: 10px;
}
.price-card .typology h4, .price-card .sizing h4{margin: 0px;font-size: 18px;}
.price-card .typology p, .price-card .sizing p{margin: 0px;font-size: 18px;font-weight: 600;}
.price-card .sizing {
    display: flex;
    justify-content: space-around;
    padding-top: 10px;
    padding-bottom: 30px;
}

/* ===== FLOOR PLAN TABS ===== */
.nav-hh-tabs .nav-link{
  font-family:'Jost',sans-serif;
  letter-spacing:.05em;text-transform:uppercase;font-size:.82rem;
  color:var(--clr-muted);
  border:none;border-bottom:2px solid transparent;
  padding:.7rem 1.4rem;
  border-radius:0;
}
.nav-hh-tabs .nav-link.active{
  color:var(--clr-primary);
  border-bottom:2px solid var(--clr-accent);
  background:transparent;
}
.floorplan-frame{
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:0 25px 55px rgba(24,38,32,.15);
}
.floorplan-frame img{width:100%;display:block;filter: blur(8px);}

/* ===== GALLERY ===== */
.gallery-item{
  border-radius:var(--radius-sm);
  overflow:hidden;
  position:relative;
  cursor:pointer;
}
.gallery-item img{
  width:100%;height:100%;object-fit:cover;
  transition:.5s ease;
  display:block;
}
.gallery-item:hover img{transform:scale(1.08);}
.gallery-item::after{
  content:"\F52C";
  font-family:"bootstrap-icons";
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(24,38,32,0);
  color:#fff;font-size:1.4rem;opacity:0;
  transition:.3s;
}
.gallery-item:hover::after{background:rgba(24,38,32,.35);opacity:1;}

/* ===== LOCATION ===== */
.loc-item{
  display:flex;gap:1rem;align-items:flex-start;
  padding:1.1rem 0;border-bottom:1px solid #E7E2D3;
}
.loc-item:last-child{border-bottom:none;}
.loc-badge{
  min-width:38px;height:38px;border-radius:50%;
  background:var(--clr-accent-soft);color:var(--clr-accent);
  display:flex;align-items:center;justify-content:center;
  font-family:'Fraunces',serif;font-weight:600;font-size:.9rem;flex-shrink:0;
}
.map-frame{
  border-radius:var(--radius-lg);overflow:hidden;
  box-shadow:0 25px 55px rgba(24,38,32,.15);
  min-height:420px;
}
.map-frame iframe{width:100%;height:100%;min-height:420px;border:0;display:block;}

/* ===== DEVELOPER ===== */
.developer-panel{
  background:var(--clr-primary);
  border-radius:var(--radius-lg);
  color:#fff;
  padding:3rem;
}

/* ===== FAQ ===== */
.faq-q{font-family:'Fraunces',serif;font-weight:600;color:var(--clr-dark);}

/* ===== CONTACT / FOOTER ===== */
.footer-hh{
  background:var(--clr-dark);color:rgba(255,255,255,.75);
}
.footer-hh .small{font-size: 11px}
.footer-hh h5{color:#fff;font-family:'Fraunces',serif;}
.footer-hh a{color:rgba(255,255,255,.65);text-decoration:none;}
.footer-hh a:hover{color:var(--clr-accent);}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  font-size:.8rem;color:rgba(255,255,255,.5);
}

/* Sticky mobile CTA */
.sticky-cta{
  position:fixed;bottom:0;left:0;right:0;
  background:var(--clr-dark);
  padding:.7rem 1rem;
  z-index:1040;
  display:flex;gap:.6rem;
  box-shadow:0 -6px 20px rgba(0,0,0,.25);
}
.sticky-cta a{flex:1;text-align:center;font-size:.8rem;}

@media(min-width:992px){.sticky-cta{display:none;}}