/* Pinakini Lifespaces — converted from Lovable design */
*,*::before,*::after { box-sizing: border-box; }
:root {
  --font-display: "Fraunces", Georgia, serif;
  --font-sans: "Manrope", sans-serif;
}
img { max-width: 100%; height: auto; }
button, input, select { font-family: inherit; }
.campaign-btn, .campaign-btn-ghost, .nav-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  white-space: nowrap;
  cursor: pointer;
  font-family: var(--font-sans);
  text-decoration: none;
  appearance: none;
  border-radius: var(--radius-md);
  letter-spacing: 0;
}
.campaign-btn, .campaign-btn-ghost {
  height: 3rem;
  padding: 0 1.5rem;
  font-size: .72rem;
  font-weight: 800;
  text-transform: uppercase;
}
.campaign-btn svg, .campaign-btn-ghost svg { width: 1rem; height: 1rem; flex: none; pointer-events: none; }
.campaign-btn,
.campaign-btn-ghost {
  background: #F4B223;
  color: #0F2620;
  border: 1px solid #F4B223;
}
.campaign-btn:hover,
.campaign-btn-ghost:hover {
  background: #E0991E;
  border-color: #E0991E;
}
.campaign-btn:active,
.campaign-btn-ghost:active { transform: translateY(1px); }
.nav-icon-btn {
  height: 2.25rem;
  width: 2.25rem;
  padding: 0;
  background: transparent;
  color: var(--cream);
  border: 0;
}
.nav-icon-btn:hover { background: color-mix(in oklab, var(--cream) 10%, transparent); }
.nav-icon-btn svg { width: 1.25rem; height: 1.25rem; }
.amenity-panel, .location-panel-wrap { display: none !important; }
.amenity-panel.is-active, .location-panel-wrap.is-active { display: block !important; }
.amenity-panel::before { content: none !important; display: none !important; }
.mobile-menu { display: none; }
.mobile-menu.is-open { display: flex; }
.reveal { opacity: 0; transform: translateY(44px); }
.reveal.is-in { opacity: 1; transform: none; transition: opacity 1s cubic-bezier(.22,1,.36,1), transform 1s cubic-bezier(.22,1,.36,1); }
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; }
}

/* Pinakini Lifespaces campaign */
:root {
  --amber: #F4B223;
  --amber-deep: #E0991E;
  --forest: #0F2620;
  --forest-2: #173A2C;
  --forest-3: #20493A;
  --sage: #9DAE8C;
  --sage-dim: #657358;
  --cream: #F7F1E3;
  --cream-2: #EEE5D0;
  --ink: #15120D;
  --ink-soft: #4A453B;
  --primary: var(--amber);
  --primary-foreground: var(--forest);
  --background: var(--cream);
  --foreground: var(--ink);
  --border: color-mix(in oklab, var(--sage-dim) 28%, transparent);
  --ring: var(--amber);
  --radius: .25rem;
  --radius-md: calc(var(--radius) - 2px);
}

html { scroll-behavior: smooth; }
body { margin: 0; font-family: var(--font-sans); overflow-x: hidden; }
button, a { letter-spacing: 0; }
.pinakini { background: var(--cream); color: var(--ink); overflow: clip; }
.pinakini h1,.pinakini h2,.pinakini h3 { font-family: var(--font-display); font-weight: 300; letter-spacing: -.02em; line-height: .96; }
.section-dark { position: relative; background: var(--forest); color: var(--cream); }
.section-light { position: relative; background: var(--cream); color: var(--ink); }
.section-heading h2 { margin-top: 1.5rem; font-size: clamp(3rem,6vw,6.5rem); }
.section-heading>p { max-width: 35rem; margin-top: 2rem; color: color-mix(in oklab,var(--cream) 65%,transparent); line-height: 1.8; }
.section-heading > p.eyebrow {
  margin-top: 0;
  max-width: none;
  color: var(--sage-dim);
  line-height: 1;
}
.section-dark .section-heading > p.eyebrow {
  color: color-mix(in oklab, var(--cream) 70%, transparent);
}
.eyebrow { display:flex; align-items:center; gap:.65rem; font: 700 .65rem/1 var(--font-sans); text-transform:uppercase; letter-spacing:.18em; color: var(--sage-dim); }
.section-dark .eyebrow { color: color-mix(in oklab, var(--cream) 70%, transparent); }
.eyebrow span { width:1.25rem; height:2px; background:var(--amber); flex:none; }
.contours { position:absolute; inset:0; width:100%; height:100%; opacity:.22; pointer-events:none; }
.contours path { stroke:color-mix(in oklab,var(--sage) 75%,var(--amber)); stroke-width:1; vector-effect:non-scaling-stroke; }
.image-placeholder { position:relative; display:grid; place-items:end start; min-height:20rem; overflow:hidden; border:1px solid color-mix(in oklab,var(--sage) 30%,transparent); background:repeating-linear-gradient(135deg,color-mix(in oklab,var(--sage) 9%,transparent) 0,color-mix(in oklab,var(--sage) 9%,transparent) 1px,transparent 1px,transparent 10px),linear-gradient(145deg,var(--forest-2),var(--forest-3)); }
.section-light .image-placeholder { background:repeating-linear-gradient(135deg,color-mix(in oklab,var(--sage-dim) 10%,transparent) 0,color-mix(in oklab,var(--sage-dim) 10%,transparent) 1px,transparent 1px,transparent 10px),linear-gradient(145deg,var(--cream-2),color-mix(in oklab,var(--sage) 30%,var(--cream))); }
.image-placeholder::after { content:""; position:absolute; inset:12px; border:1px solid color-mix(in oklab,var(--cream) 12%,transparent); }
.image-placeholder span { z-index:1; margin:1.5rem; font-size:.6rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:color-mix(in oklab,var(--cream) 65%,transparent); }
.section-light .image-placeholder span { color:var(--sage-dim); }

.site-nav { position:fixed; z-index:60; top:0; left:0; right:0; height:5.5rem; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(1.25rem,4vw,5rem); transition:background .35s,height .35s; color:var(--cream); }
.site-nav.is-scrolled { height:4.5rem; background:color-mix(in oklab,var(--forest) 90%,transparent); backdrop-filter:blur(16px); border-bottom:1px solid color-mix(in oklab,var(--cream) 10%,transparent); }
.wordmark { display:inline-flex; flex-direction:column; color:var(--amber); text-decoration:none; }
.wordmark strong { font-size:1rem; font-weight:800; letter-spacing:.28em; }
.wordmark small { margin-top:.18rem; font-size:.48rem; font-weight:600; letter-spacing:.36em; color:var(--cream); }
.nav-brand { position:relative; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:.2rem; min-width:9rem; min-height:44px; color:inherit; text-decoration:none; }
.nav-brand img { display:block; width:auto; height:44px; object-fit:contain; }
.nav-brand-mark { display:flex; align-items:center; height:36px; line-height:0; }
.nav-brand-mark img { height:36px; }
.nav-developer { color:color-mix(in oklab,var(--cream) 75%,transparent); font:600 .48rem/1 var(--font-sans); letter-spacing:.12em; }
.site-nav nav { display:flex; align-items:center; gap:clamp(1.2rem,2.5vw,3rem); }
.site-nav nav>a { font-size:.7rem; font-weight:600; color:var(--cream); text-decoration:none; }
.nav-toggle,.mobile-menu { display:none; }

.hero { position:relative; min-height:100svh; display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:1fr auto; gap:3rem; padding:9rem clamp(1.25rem,6vw,7.5rem) 2rem; overflow:hidden; text-align:left; }
.hero::before { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,color-mix(in oklab,var(--forest) 96%,transparent) 0%,color-mix(in oklab,var(--forest) 88%,transparent) 34%,color-mix(in oklab,var(--forest) 54%,transparent) 68%,color-mix(in oklab,var(--forest) 36%,transparent) 100%),linear-gradient(color-mix(in oklab,var(--forest) 30%,transparent),color-mix(in oklab,var(--forest) 48%,transparent)); pointer-events:none; }
.hero-background { position:absolute; z-index:0; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero>.contours { z-index:2; }
.hero>.leaf-field { z-index:3; }
.hero-copy { position:relative; z-index:4; align-self:center; width:100%; max-width:58rem; text-align:left; }
.hero-title { margin:2rem 0; font-size:clamp(4.25rem,8.2vw,9rem); }
.hero-title span { display:block; overflow:hidden; }
.hero-title span:nth-child(2),.hero-title span:nth-child(3) { padding-left:0; }
.hero-title .hero-slogan { margin-top:.3rem; font-style:italic; font-weight:200; line-height:.92; }
.hero-intro { max-width:41rem; font-size:clamp(.95rem,1.2vw,1.15rem); color:color-mix(in oklab,var(--cream) 70%,transparent); line-height:1.8; }
.price-line { display:flex; align-items:baseline; gap:1rem; margin:2rem 0; }
.price-line span { color:var(--amber); font-size:.68rem; font-weight:800; letter-spacing:.14em; }
.price-line strong { font-family:var(--font-display); font-size:2rem; font-weight:400; }
.hero-actions { display:flex; gap:.8rem; }
.hero-visual { position:relative; z-index:1; align-self:center; height:min(67vh,48rem); }
.hero-visual>.image-placeholder { height:100%; }
.hero-badge { position:absolute; left:-3rem; bottom:2.5rem; width:17rem; padding:1.35rem; background:var(--cream); color:var(--ink); }
.hero-badge span { display:block; font-family:var(--font-display); font-size:1.25rem; }
.hero-badge strong { display:block; margin-top:.65rem; font-size:.56rem; letter-spacing:.12em; }
.fact-strip { position:relative; z-index:4; grid-column:1/-1; width:100%; display:grid; grid-template-columns:1.5fr repeat(3,1fr); padding-top:1.5rem; border-top:1px solid color-mix(in oklab,var(--cream) 28%,transparent); text-align:left; }
.fact-strip div { padding-right:1rem; }
.fact-strip small { display:block; margin-bottom:.45rem; color:var(--sage); font-size:.56rem; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.fact-strip strong { font-family:var(--font-display); font-size:clamp(1rem,1.7vw,1.5rem); font-weight:300; }
.scroll-cue { position:absolute; right:2rem; bottom:1.6rem; display:flex; align-items:center; gap:.5rem; font-size:.55rem; letter-spacing:.16em; color:var(--cream); text-decoration:none; }
.scroll-cue svg { width:1rem; }
.leaf-field { position:absolute; inset:0; pointer-events:none; overflow:hidden; }
.leaf-field i { --left:calc((var(--i) * 13% + 5%)); position:absolute; left:var(--left); top:calc((var(--i) * 17%) - 45%); width:14px; height:7px; border-radius:90% 0 90% 0; background:var(--sage); opacity:.16; animation:leaf-drift calc(16s + var(--i)*1.2s) linear infinite; animation-delay:calc(var(--i)*-2.2s); }
@keyframes leaf-drift { 0%{transform:translate3d(0,-10vh,0) rotate(0)} 50%{transform:translate3d(45px,60vh,0) rotate(160deg)} 100%{transform:translate3d(-20px,125vh,0) rotate(330deg)} }

.intro { min-height:55rem; padding:10rem clamp(1.25rem,8vw,10rem); display:grid; grid-template-columns:1.05fr .8fr; gap:10%; align-items:center; }
.ghost-word { position:absolute; top:2rem; left:7%; font-family:var(--font-display); font-size:clamp(9rem,24vw,25rem); color:transparent; -webkit-text-stroke:1px color-mix(in oklab,var(--sage-dim) 13%,transparent); line-height:1; pointer-events:none; }
.intro-images { position:relative; height:38rem; }
.intro-images>.image-placeholder:first-child { height:88%; width:82%; }
.intro-images>.image-placeholder:last-child { position:absolute; right:0; bottom:0; width:45%; min-height:16rem; border:8px solid var(--cream); }
.intro-copy { position:relative; }
.intro-copy h2 { margin:1.5rem 0 2rem; font-size:clamp(3.5rem,6vw,6rem); }
.intro-copy>p { max-width:35rem; color:var(--ink-soft); line-height:1.9; }

.journey { height:100svh; min-height:48rem; padding:7rem clamp(1.25rem,6vw,7rem) 4rem; display:grid; grid-template-columns:minmax(14rem,.55fr) 1.45fr; gap:5vw; overflow:hidden; }
.journey-head { position:relative; z-index:2; }
.journey-head h2 { margin-top:1.5rem; font-size:clamp(3rem,5vw,5.5rem); }
.journey-track { position:relative; height:100%; }
.journey-stage { position:absolute; inset:0; display:grid; grid-template-columns:1.15fr .75fr; gap:5vw; align-items:center; }
.journey-image .image-placeholder { height:min(65vh,41rem); }
.journey-copy { position:relative; }
.stage-number { position:absolute; right:0; top:-7rem; font:300 clamp(7rem,13vw,14rem)/1 var(--font-display); color:transparent; -webkit-text-stroke:1px color-mix(in oklab,var(--sage) 28%,transparent); }
.journey-copy>p:first-of-type { font-size:.58rem; font-weight:700; letter-spacing:.16em; color:var(--sage); }
.journey-copy h3 { position:relative; margin:3rem 0 1.4rem; font-size:clamp(3rem,5.5vw,6rem); }
.journey-copy>p:last-child { max-width:29rem; margin-top:1.5rem; color:color-mix(in oklab,var(--cream) 68%,transparent); line-height:1.8; }
.short-rule { width:2.5rem; height:1px; background:var(--sage-dim); }
.progress-rail { position:absolute; z-index:5; left:-2rem; top:0; width:2px; height:100%; background:color-mix(in oklab,var(--cream) 12%,transparent); }
.progress-rail span { display:block; width:100%; height:0; background:var(--amber); }

.mid-cta { min-height:32rem; padding:8rem clamp(1.25rem,9vw,11rem); background:var(--forest-2); display:grid; grid-template-columns:1fr 1fr; gap:12%; align-items:center; }
.mid-cta h2 { margin-top:1.3rem; font-size:clamp(3.6rem,6vw,6.5rem); }
.mid-cta>div { position:relative; }
.mid-cta>div:last-child p { max-width:30rem; margin-bottom:2rem; line-height:1.8; color:color-mix(in oklab,var(--cream) 70%,transparent); }
.difference { padding:9rem clamp(1.25rem,8vw,10rem); }
.difference-list { margin-top:7rem; }
.difference-row { display:grid; grid-template-columns:minmax(13rem,.85fr) 1.15fr auto; align-items:center; gap:4rem; min-height:11rem; border-top:1px solid color-mix(in oklab,var(--sage-dim) 25%,transparent); }
.difference-row:nth-child(even) { margin-left:9%; }
.difference-figure { display:flex; align-items:baseline; gap:.65rem; }
.difference-figure strong { font:300 clamp(2.7rem,5vw,5rem)/1 var(--font-display); }
.difference-figure small { max-width:8rem; font-size:.58rem; font-weight:800; letter-spacing:.12em; color:var(--sage-dim); }
.difference-row h3 { font-size:clamp(1.5rem,2.3vw,2.4rem); }
.difference-row p { margin-top:.65rem; color:var(--ink-soft); font-size:.86rem; }
.difference-row>span { font:300 1.2rem var(--font-display); color:var(--sage); }

.amenities { padding:9rem clamp(1.25rem,8vw,10rem); }
.amenities>* { position:relative; }
.amenity-tabs { display:flex; gap:2.5rem; margin:5rem 0 3rem; border-bottom:1px solid color-mix(in oklab,var(--cream) 15%,transparent); }
.amenity-tabs button { position:relative; padding:0 0 1rem; border:0; background:none; color:var(--sage); cursor:pointer; font:600 .75rem var(--font-sans); }
.amenity-tabs button[aria-selected="true"] { color:var(--cream); }
.amenity-tabs button[aria-selected="true"]::after { content:""; position:absolute; height:2px; left:0; right:0; bottom:-1px; background:var(--amber); }
.amenity-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid color-mix(in oklab,var(--cream) 12%,transparent); }
.amenity-grid>div { display:grid; grid-template-columns:3rem 1fr; min-height:4.6rem; align-items:center; gap:.75rem; border-bottom:1px solid color-mix(in oklab,var(--cream) 12%,transparent); }
.amenity-grid span { font:300 .8rem var(--font-display); color:var(--sage); }
.amenity-grid strong { font:300 1.25rem var(--font-display); }

.location { padding:9rem clamp(1.25rem,7vw,9rem); }
.location-layout { display:grid; grid-template-columns:1.2fr .8fr; gap:7vw; align-items:center; margin-top:5rem; }
.constellation { position:relative; aspect-ratio:1; max-width:42rem; margin:auto; }
.constellation>svg { width:100%; height:100%; }
.constellation svg circle,.constellation svg line { stroke:color-mix(in oklab,var(--sage-dim) 25%,transparent); fill:none; stroke-width:1; }
.constellation-core { position:absolute; inset:37%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; border-radius:50%; background:var(--forest); color:var(--cream); }
.constellation-core svg { width:1.1rem; color:var(--sage); margin-bottom:.45rem; }
.constellation-core strong { font-size:.64rem; letter-spacing:.1em; }
.constellation-core span { margin-top:.35rem; font-size:.47rem; letter-spacing:.13em; color:var(--sage); }
.node { position:absolute; min-width:7.5rem; padding:.75rem 1rem; border:1px solid var(--sage); background:var(--cream); color:var(--ink); font:700 .7rem var(--font-sans); cursor:pointer; transition:.25s; }
.node span { margin-right:.5rem; color:var(--sage-dim); }
.node.active { border-color:var(--amber); background:var(--amber); color:var(--forest); }
.node-0{top:2%;left:50%;transform:translateX(-50%)}.node-1{right:-1%;top:50%;transform:translateY(-50%)}.node-2{bottom:2%;left:50%;transform:translateX(-50%)}.node-3{left:-1%;top:50%;transform:translateY(-50%)}
.location-panel { padding-left:3rem; border-left:1px solid color-mix(in oklab,var(--sage-dim) 30%,transparent); }
.location-index { font:.65rem var(--font-sans); color:var(--sage-dim); }
.location-panel h3 { margin:1rem 0 2rem; font-size:clamp(2rem,3vw,3.2rem); }
.location-panel ul { display:grid; gap:.85rem; padding:0; list-style:none; }
.location-panel li { display:flex; align-items:center; gap:.8rem; font-size:.82rem; color:var(--ink-soft); }
.location-panel li svg { width:.85rem; color:var(--amber); stroke-width:3; }

.ownership { padding:10rem clamp(1.25rem,8vw,10rem); min-height:58rem; }
.ownership .ghost-word { top:auto; bottom:0; left:2%; color:transparent; -webkit-text-stroke-color:color-mix(in oklab,var(--sage) 10%,transparent); }
.ownership>*:not(.ghost-word,.contours) { position:relative; }
.ownership-grid { margin:7rem 0 0 28%; display:grid; grid-template-columns:1fr 1fr; gap:1px; background:color-mix(in oklab,var(--cream) 13%,transparent); }
.ownership-grid article { min-height:17rem; padding:3rem; background:var(--forest); }
.ownership-grid article:nth-child(even) { transform:translateY(3rem); }
.ownership-grid span { font:300 1rem var(--font-display); color:var(--sage); }
.ownership-grid h3 { margin:3rem 0 1rem; font-size:2rem; }
.ownership-grid p { max-width:22rem; color:color-mix(in oklab,var(--cream) 65%,transparent); line-height:1.7; font-size:.85rem; }

.master-plan { padding:9rem clamp(1.25rem,7vw,9rem) 13rem; }
.master-plan>.image-placeholder { height:min(68vw,48rem); }
.master-card { position:absolute; left:12%; bottom:5rem; width:min(38rem,75vw); padding:3.5rem; background:var(--forest); color:var(--cream); }
.master-card h2 { margin:1.5rem 0; font-size:clamp(2.4rem,4vw,4rem); }
.master-card>p { margin-bottom:2rem; color:color-mix(in oklab,var(--cream) 68%,transparent); line-height:1.7; }
.trust { padding:4rem clamp(1.25rem,7vw,9rem); display:grid; grid-template-columns:.65fr 1.5fr .7fr; gap:5%; align-items:start; border-top:1px solid color-mix(in oklab,var(--sage-dim) 25%,transparent); }
.trust>strong,.trust>span { font-size:.62rem; line-height:1.7; letter-spacing:.12em; }
.trust p { font-family:var(--font-display); font-size:1.25rem; line-height:1.5; }
.trust span { color:var(--sage-dim); }
.visit { padding:10rem clamp(1.25rem,9vw,11rem); display:grid; grid-template-columns:1fr 1fr; gap:12%; align-items:center; min-height:48rem; }
.visit>*:not(.contours,.leaf-field) { position:relative; }
.visit h2 { margin:1.5rem 0 2rem; font-size:clamp(4rem,7vw,7rem); }
.visit-copy>p { max-width:28rem; color:color-mix(in oklab,var(--cream) 65%,transparent); line-height:1.8; }
.visit-form { display:grid; gap:2rem; }
.visit-form label span { display:block; margin-bottom:.7rem; font-size:.58rem; font-weight:700; text-transform:uppercase; letter-spacing:.13em; color:var(--sage); }
.visit-form input { width:100%; padding:.35rem 0 1rem; border:0; border-bottom:1px solid color-mix(in oklab,var(--cream) 28%,transparent); background:transparent; color:var(--cream); outline:none; font:300 1.35rem var(--font-display); }
.visit-form input:focus { border-bottom-color:var(--amber); }
.visit-form input::placeholder { color:color-mix(in oklab,var(--sage) 50%,transparent); }
.visit-form button { justify-self:start; }
.form-success { color:var(--sage); font-size:.8rem; }
.footer { display:grid; grid-template-columns:1.2fr .6fr .9fr; gap:8%; padding:5rem clamp(1.25rem,7vw,9rem) 7rem; border-top:1px solid color-mix(in oklab,var(--cream) 12%,transparent); }
.footer>div { display:flex; flex-direction:column; gap:.9rem; }
.footer p,.footer a:not(.wordmark) { color:color-mix(in oklab,var(--cream) 58%,transparent); font-size:.72rem; line-height:1.7; text-decoration:none; }
.footer>div>strong { color:var(--sage); font-size:.58rem; letter-spacing:.14em; }
.footer-bottom { grid-column:1/-1; flex-direction:row!important; justify-content:space-between; margin-top:3rem; padding-top:1.5rem; border-top:1px solid color-mix(in oklab,var(--cream) 12%,transparent); }
.footer-bottom span { font-size:.6rem; color:var(--sage); }
.footer-bottom p { max-width:35rem; margin:0; text-align:right; }
.bottom-bar { position:fixed; z-index:55; left:1rem; right:1rem; bottom:1rem; min-height:4.5rem; display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:.7rem .7rem .7rem 1.5rem; background:color-mix(in oklab,var(--forest) 94%,transparent); backdrop-filter:blur(14px); color:var(--cream); box-shadow:0 18px 50px color-mix(in oklab,var(--ink) 35%,transparent); }
.bottom-bar p { display:flex; gap:1rem; align-items:center; font-size:.75rem; }
.bottom-bar p span { color:var(--sage); }

@media (max-width: 899px) {
  .site-nav { height:4.5rem; }.nav-brand{min-width:7rem;min-height:34px}.nav-brand img{height:34px}.site-nav nav{display:none}.nav-toggle{display:inline-flex}.mobile-menu{position:absolute;display:flex;flex-direction:column;gap:1.4rem;top:4.5rem;left:0;right:0;padding:2rem;background:var(--forest);border-top:1px solid color-mix(in oklab,var(--cream) 10%,transparent)}.mobile-menu>a{color:var(--cream);text-decoration:none;font-size:.85rem}.mobile-menu button{align-self:start}
  .hero { min-height:100svh; grid-template-columns:1fr; padding-top:7rem; text-align:left; }.hero::before{background:linear-gradient(90deg,color-mix(in oklab,var(--forest) 94%,transparent) 0%,color-mix(in oklab,var(--forest) 80%,transparent) 72%,color-mix(in oklab,var(--forest) 60%,transparent) 100%),linear-gradient(color-mix(in oklab,var(--forest) 34%,transparent),color-mix(in oklab,var(--forest) 58%,transparent))}.hero-background{object-position:58% center}.hero-title{font-size:clamp(3.7rem,17vw,6.2rem)}.hero-title span:nth-child(2),.hero-title span:nth-child(3){padding-left:0}.fact-strip{grid-template-columns:1fr 1fr;gap:1.5rem}.scroll-cue{display:none}
  .intro{padding-block:7rem;grid-template-columns:1fr;gap:5rem}.intro-images{height:30rem}.intro-copy{grid-row:1}
  .journey{height:auto;min-height:0;display:block;padding-block:7rem;overflow:visible}.journey-head{margin-bottom:5rem}.journey-track{height:auto}.journey-stage{position:relative;display:grid;grid-template-columns:1fr;margin-bottom:7rem;gap:2rem}.journey-image .image-placeholder{height:65vh;max-height:34rem}.journey-copy{padding-left:1rem}.stage-number{top:-2rem;font-size:8rem}.progress-rail{display:none}
  .mid-cta,.visit{grid-template-columns:1fr;gap:4rem;padding-block:7rem}.difference,.amenities,.location,.ownership{padding-block:7rem}.difference-list{margin-top:4rem}.difference-row,.difference-row:nth-child(even){margin-left:0;grid-template-columns:1fr auto;gap:1.5rem;padding:2rem 0}.difference-row>div:nth-child(2){grid-column:1/-1;grid-row:2}.difference-row>span{grid-column:2;grid-row:1}.amenity-tabs{gap:1.2rem;overflow-x:auto}.amenity-tabs button{flex:0 0 auto}.amenity-grid{grid-template-columns:1fr 1fr}.location-layout{grid-template-columns:1fr;gap:5rem}.location-panel{padding-left:0;border-left:0}.ownership-grid{margin:5rem 0 0;grid-template-columns:1fr 1fr}.master-card{left:1.25rem;padding:2rem}.trust{grid-template-columns:1fr;gap:2rem}.footer{grid-template-columns:1fr 1fr}.footer>div:first-child{grid-column:1/-1}
}
@media (max-width: 560px) {
  .hero-actions{flex-direction:column;align-items:stretch}.hero-actions button{width:100%}.hero-visual{height:56vh}.fact-strip{padding-bottom:1rem}.fact-strip strong{font-size:1rem}.intro-images{height:23rem}.intro-images>.image-placeholder:last-child{min-height:11rem}  .amenity-grid{grid-template-columns:1fr 1fr}.ownership-grid{grid-template-columns:1fr}.ownership-grid article:nth-child(even){transform:none}.constellation{margin:1rem 0}.node{min-width:6rem;padding:.6rem;font-size:.6rem}.node-1{right:-4%}.node-3{left:-4%}.master-plan{padding-bottom:16rem}.master-plan>.image-placeholder{height:26rem}.master-card{bottom:3rem;width:calc(100% - 2.5rem)}.footer{grid-template-columns:1fr}.footer>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column!important}.footer-bottom p{text-align:left}.bottom-bar{left:0;right:0;bottom:0}.bottom-bar p{display:block}.bottom-bar p span{display:block;margin-top:.2rem;font-size:.62rem}.bottom-bar button{padding-inline:1rem;font-size:.62rem}
}
@media (prefers-reduced-motion: reduce) {
  html{scroll-behavior:auto}.leaf-field{display:none}.reveal{opacity:1!important;transform:none!important}.journey{height:auto;min-height:0;display:block;padding-block:7rem;overflow:visible}.journey-head{margin-bottom:5rem}.journey-track{height:auto}.journey-stage{position:relative;display:grid;grid-template-columns:1fr 1fr;margin-bottom:7rem;gap:3rem}.progress-rail{display:none}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Thank You page */
.thank-you { position:relative; min-height:100svh; display:flex; align-items:center; justify-content:center; padding:6rem clamp(1.25rem,7vw,9rem); overflow:hidden; text-align:center; }
.thank-you-inner { position:relative; z-index:1; max-width:44rem; display:flex; flex-direction:column; align-items:center; gap:1.6rem; }
.thank-you-mark { width:4.5rem; height:4.5rem; border-radius:50%; display:grid; place-items:center; border:1px solid color-mix(in oklab,var(--amber) 55%,transparent); color:var(--amber); }
.thank-you-mark svg { width:1.8rem; height:1.8rem; }
.thank-you h1 { font:300 clamp(2.2rem,5vw,3.6rem)/1.12 var(--font-display); letter-spacing:-0.02em; color:var(--cream); }
.thank-you p { max-width:32rem; color:color-mix(in oklab,var(--cream) 70%,transparent); font-size:.95rem; line-height:1.75; }

/* Final approved campaign structure */
.hero-title-final { font-size:clamp(3.7rem,6.6vw,7.5rem); }
.hero-detail { margin-top:1rem; font-family:var(--font-display); font-size:clamp(1.15rem,1.8vw,1.6rem); }
.hero-footnote { margin-top:1rem; color:var(--sage); font-size:.62rem; }
.intro-copy .campaign-btn,.intro-copy button { margin-top:2rem; }
.editorial-section { padding:10rem clamp(1.25rem,8vw,10rem); }
.editorial-section>*:not(.contours) { position:relative; }
.editorial-section .section-heading { max-width:72rem; }
.editorial-section .section-heading>p { max-width:52rem; }
.stat-row { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin:5rem 0 3rem; background:color-mix(in oklab,var(--cream) 14%,transparent); }
.stat-row>div { min-height:12rem; display:flex; flex-direction:column; justify-content:flex-end; padding:2rem; background:var(--forest); }
.stat-row strong { font:300 clamp(3rem,6vw,6rem)/1 var(--font-display); }
.stat-row span { margin-top:1rem; color:var(--sage); font-size:.65rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.compact-list .difference-figure strong { color:var(--sage-dim); font-size:clamp(2rem,3vw,3rem); }
.split-feature { padding:9rem clamp(1.25rem,8vw,10rem); display:grid; grid-template-columns:.9fr 1.1fr; gap:8%; align-items:center; }
.split-feature>* { position:relative; }
.split-feature h2 { max-width:42rem; margin:1.5rem 0 2rem; font-size:clamp(3.2rem,5.5vw,6rem); }
.split-feature p { max-width:40rem; margin-bottom:2rem; color:var(--ink-soft); line-height:1.9; }
.split-feature.section-dark p { color:color-mix(in oklab,var(--cream) 68%,transparent); }
.split-feature>.image-placeholder { min-height:40rem; }
.highlight-list { margin-top:5rem; display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid color-mix(in oklab,var(--sage-dim) 25%,transparent); border-bottom:1px solid color-mix(in oklab,var(--sage-dim) 25%,transparent); }
.highlight-list article { min-height:10.5rem; padding:2.1rem 3rem 2.1rem 0; border-bottom:1px solid color-mix(in oklab,var(--sage-dim) 25%,transparent); }
.highlight-list article:nth-child(even) { padding-left:3rem; border-left:1px solid color-mix(in oklab,var(--sage-dim) 25%,transparent); }
.highlight-list article:nth-last-child(-n+2) { border-bottom: 0; }
.highlight-list article.is-spacer {
  min-height: 10.5rem;
  pointer-events: none;
}
.highlight-list span { color:var(--sage-dim); font-size:.62rem; }
.highlight-list h3 { margin:1.4rem 0 .8rem; font-size:clamp(1.5rem,2.4vw,2.4rem); line-height:1.1; }
.highlight-list p { color:var(--ink-soft); font-size:.85rem; line-height:1.7; }
.highlight-list .place-distance {
  margin: 0;
  color: var(--sage-dim);
  font-size: .92rem;
  font-weight: 650;
  letter-spacing: .04em;
}
.amenity-note { max-width:58rem; margin:2.5rem 0 2rem; color:color-mix(in oklab,var(--cream) 68%,transparent); font-size:.85rem; line-height:1.8; }
.green-living { min-height:58rem; padding:8rem clamp(1.25rem,7vw,9rem); display:grid; align-items:end; overflow:hidden; }
.green-living>.leaf-field { z-index:2; }
.green-image { position:absolute; inset:0; overflow:hidden; }
.green-image .image-placeholder { width:100%; height:110%; }
.green-image::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,color-mix(in oklab,var(--forest) 88%,transparent),color-mix(in oklab,var(--forest) 10%,transparent)); }
.green-copy { position:relative; z-index:3; max-width:55rem; color:var(--cream); }
.green-copy h2 { margin:1.5rem 0 2rem; font-size:clamp(3.6rem,7vw,7rem); }
.green-copy p { max-width:46rem; color:color-mix(in oklab,var(--cream) 76%,transparent); line-height:1.9; }
.green-context { display:flex; flex-wrap:wrap; gap:.7rem; max-width:48rem; margin:1.5rem 0 0; padding:0; list-style:none; }
.green-context li { padding:.55rem .75rem; border:1px solid color-mix(in oklab,var(--sage) 48%,transparent); background:color-mix(in oklab,var(--forest) 58%,transparent); color:var(--cream); font-size:.68rem; font-weight:650; }
.journey-intro { max-width:23rem; margin-top:2rem; color:color-mix(in oklab,var(--cream) 68%,transparent); line-height:1.8; }
.journey-closing { margin-top:1rem!important; color:var(--cream)!important; font-family:var(--font-display); font-size:1.15rem; }
.journey-copy button { margin-top:1.5rem; }
.investment-grid { grid-template-columns:repeat(3,1fr); margin-left:15%; }
.investment-grid article:nth-child(even) { transform:translateY(3rem); }
.constellation-three .social-node-0 { top:2%; left:50%; transform:translateX(-50%); }
.constellation-three .social-node-1 { right:0; bottom:12%; }
.constellation-three .social-node-2 { left:0; bottom:12%; }
.constellation-four .social-node-0 { top:2%; left:50%; transform:translateX(-50%); }
.constellation-four .social-node-1 { right:-1%; top:50%; transform:translateY(-50%); }
.constellation-four .social-node-2 { bottom:2%; left:50%; transform:translateX(-50%); }
.constellation-four .social-node-3 { left:-1%; top:50%; transform:translateY(-50%); }
.approval { padding:9rem clamp(1.25rem,8vw,10rem); display:grid; grid-template-columns:1.15fr .85fr; gap:10%; align-items:end; }
.approval .section-heading>p { color:var(--ink-soft); }
.approval-details { padding-left:3rem; border-left:1px solid color-mix(in oklab,var(--sage-dim) 30%,transparent); }
.trust-strip { display:flex; width:100%; flex-wrap:wrap; align-items:center; justify-content:center; gap:.85rem; padding:1.35rem 0; text-align:center; }
.trust-badge { display:inline-flex; min-height:2.5rem; align-items:center; justify-content:center; padding:.72rem 1.25rem; border:1px solid color-mix(in oklab,var(--forest) 65%,transparent); border-radius:999px; background:color-mix(in oklab,var(--cream) 70%,transparent); color:var(--forest); font-size:.62rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; }
.trust-strip .trust-rera { flex-basis:100%; margin-top:.35rem; color:var(--forest); font-size:.72rem; font-weight:650; letter-spacing:.08em; text-align:center; }
.trust-strip-dark { position:relative; z-index:4; grid-column:1/-1; gap:.75rem; margin-top:1.1rem; padding:1.45rem clamp(1rem,4vw,4rem); border-top:1px solid color-mix(in oklab,var(--cream) 24%,transparent); }
.trust-strip-dark .trust-badge { padding:.65rem 1.15rem; border-color:color-mix(in oklab,var(--cream) 58%,transparent); background:color-mix(in oklab,var(--forest) 35%,transparent); color:var(--cream); font-size:.58rem; }
.trust-strip-dark .trust-rera { margin-top:.3rem; color:var(--sage); font-size:.64rem; letter-spacing:.1em; }
.approval-details>p { margin-top:1.5rem; color:var(--sage-dim); font-size:.72rem; line-height:1.7; }
.campaign-band { min-height:42rem; }
.campaign-band .campaign-price { margin-top:2rem; color:var(--cream); font-family:var(--font-display); font-size:1.5rem; }
.cta-stack { display:flex; flex-wrap:wrap; gap:.8rem; }
.developer { padding:9rem clamp(1.25rem,9vw,11rem); display:grid; grid-template-columns:.8fr 1.2fr; gap:10%; }
.developer h2 { margin-top:1.5rem; font-size:clamp(4rem,7vw,7rem); }
.developer p { max-width:48rem; margin-bottom:2rem; color:var(--ink-soft); line-height:1.9; }
.developer.section-dark p { color:color-mix(in oklab,var(--cream) 72%,transparent); }
.developer.section-dark p strong { color:var(--cream); }
.developer a.campaign-btn { color: #0F2620; }
.final-cta { min-height:55rem; display:grid; place-items:center; padding:9rem clamp(1.25rem,8vw,10rem); text-align:center; }
.final-cta>div:not(.leaf-field) { position:relative; z-index:2; max-width:62rem; display:flex; flex-direction:column; align-items:center; }
.final-cta h2 { margin:1.5rem 0 2rem; font-size:clamp(4rem,7.5vw,8rem); }
.final-cta p { max-width:44rem; margin-bottom:2.5rem; color:color-mix(in oklab,var(--cream) 70%,transparent); line-height:1.8; }
.speak-label { margin:2rem 0 1rem; color:var(--sage); font-size:.62rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.contact-actions { display:flex; gap:.8rem; }
.visit h2 { font-size:clamp(3.5rem,6vw,6.2rem); }
.visit-form select { width:100%; padding:.35rem 0 1rem; border:0; border-bottom:1px solid color-mix(in oklab,var(--cream) 28%,transparent); border-radius:0; background:var(--forest); color:var(--cream); outline:none; font:300 1.35rem var(--font-display); }
.visit-form select:focus { border-bottom-color:var(--amber); }
.consent { margin-top:-.75rem; color:var(--sage); font-size:.65rem; line-height:1.6; }

@media (max-width: 899px) {
  .editorial-section,.split-feature,.approval,.developer,.green-living { padding-block:7rem; }
  .split-feature,.approval,.developer { grid-template-columns:1fr; gap:4rem; }
  .split-feature>.image-placeholder { min-height:30rem; }
  .highlight-list { grid-template-columns:1fr; }
  .highlight-list article:nth-child(even) { padding-left:0; border-left:0; }
  .highlight-list article.is-spacer { display: none; }
  .highlight-list article:nth-last-child(-n+2) { border-bottom: 1px solid color-mix(in oklab,var(--sage-dim) 25%,transparent); }
  .highlight-list article:last-child { border-bottom: 0; }
  .investment-grid { grid-template-columns:1fr; margin-left:0; }
  .approval-details { padding-left:0; border-left:0; }
  .campaign-band { min-height:auto; }
  .cta-stack { align-items:flex-start; }
}
@media (max-width: 560px) {
  .hero-title-final { font-size:clamp(3.2rem,14vw,5rem); }
  .stat-row,.investment-grid { grid-template-columns:1fr; }
  .stat-row>div { min-height:8rem; }
  .investment-grid article:nth-child(even) { transform:none; }
  .contact-actions,.cta-stack { width:100%; flex-direction:column; }
  .contact-actions>* ,.cta-stack>* { width:100%; }
  .green-living { min-height:48rem; }
  .constellation-three .social-node-1 { right:-4%; }
  .constellation-three .social-node-2 { left:-4%; }
  .constellation-four .social-node-1 { right:-4%; }
  .constellation-four .social-node-3 { left:-4%; }
  .green-context { display:grid; gap:.45rem; }
}

/* ===== Upper-section imagery pass ===== */
.hero .fact-strip { padding-block: 2.4rem; }
.hero .fact-strip > div { padding-block: .6rem; }
.nowrap { white-space: nowrap; }
.site-image { display: block; width: 100%; height: 100%; object-fit: cover; }
.intro-images .site-image { aspect-ratio: 4 / 5; }
.intro-images .site-image:first-child { aspect-ratio: 4 / 3; }
.plot-plan { margin: 3.5rem 0; }
.plot-plan .site-image, .plot-plan .image-placeholder { aspect-ratio: 16 / 10; height: auto; object-fit: contain; background: var(--cream); border-radius: 4px; }
.icon-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 3rem 2.5rem; margin-top: 4rem; text-align: left; }
.icon-feature { border-top: 1px solid color-mix(in oklab, var(--ink) 16%, transparent); padding-top: 2rem; }
.icon-feature h3 { margin: 1.4rem 0 .7rem; }
.icon-feature p { color: var(--ink-soft); }
.feature-icon { display: inline-flex; width: 3.4rem; height: 3.4rem; align-items: center; justify-content: center; border: 1px solid color-mix(in oklab, var(--amber) 55%, transparent); border-radius: 999px; color: var(--amber-deep); }
.section-dark .feature-icon { color: var(--amber); }
.feature-icon-idle { display: inline-flex; animation: icon-idle 4.5s ease-in-out infinite; }
.feature-icon svg { width: 1.5rem; height: 1.5rem; }
.highlight-list article.has-icon .feature-icon { margin-bottom: 1rem; }
@media (max-width: 899px) {
  .highlight-list article.has-icon {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: .75rem;
    align-items: start;
  }
  .highlight-list article.has-icon .feature-icon {
    grid-row: 1 / span 4;
    margin-bottom: 0;
  }
  .highlight-list article.has-icon h3 { margin-top: 0; }
}
@keyframes icon-idle { 0%,100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-3px) rotate(-3deg); } }
.location-bg { position: relative; overflow: hidden; min-height: 80vh; display: flex; align-items: center; padding: 8rem clamp(1.5rem, 6vw, 6rem); }
.location-bg-image { position: absolute; inset: 0; z-index: 0; }
.location-bg-image.image-placeholder { display: none; }
.location-bg::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, color-mix(in oklab, var(--forest) 94%, transparent) 0%, color-mix(in oklab, var(--forest) 82%, transparent) 50%, color-mix(in oklab, var(--forest) 55%, transparent) 100%); }
.location-bg .contours { z-index: 2; }
.location-bg-copy { position: relative; z-index: 3; max-width: 40rem; }
.amenities-visual { position: relative; z-index: 0; margin: -9rem calc(-1 * clamp(1.25rem, 8vw, 10rem)) 3rem; height: clamp(18rem, 42vw, 32rem); }
.amenities-visual::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 35%, color-mix(in oklab, var(--forest) 70%, transparent) 72%, var(--forest) 100%); }
.amenities-visual .image-placeholder { height: 100%; }
@media (max-width: 899px) {
  .icon-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1rem; }
  .icon-feature {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: .85rem;
    align-items: start;
    padding-top: 1rem;
  }
  .icon-feature .feature-icon { grid-row: 1 / span 2; width: 2.8rem; height: 2.8rem; }
  .icon-feature h3 { margin: 0 0 .3rem; }
  .icon-feature p { margin: 0; }
  .location-bg::before { background: color-mix(in oklab, var(--forest) 86%, transparent); }
  .hero .fact-strip { padding-block: 1.8rem; }
}
@media (max-width: 560px) {
  .icon-feature-grid { grid-template-columns: 1fr 1fr; gap: 1rem .75rem; }
}
@media (prefers-reduced-motion: reduce) { .feature-icon-idle { animation: none; } }
.location-bg { padding-inline: clamp(1.25rem,8vw,10rem); }
.location-bg h2 { max-width:42rem; margin:1.5rem 0 2rem; font-size:clamp(3.2rem,5.5vw,6rem); color: var(--cream); }
.location-bg p { max-width:40rem; margin-bottom:2rem; line-height:1.9; color: color-mix(in oklab,var(--cream) 86%,transparent); }
.intro-copy, .intro-images { min-width: 0; }
@media (max-width: 560px) { .intro-copy .nowrap { white-space: normal; } }

/* Fix pass: intro framing, amenities gap, plot-story band */
.intro-images { height:auto; }
.intro-images .site-image:first-child { width:82%; height:auto; aspect-ratio:4/3; object-fit:cover; object-position:center; }
.intro-images .site-image:last-child { position:absolute; right:0; bottom:-3rem; width:48%; height:auto; min-height:0; aspect-ratio:3/2; object-fit:cover; object-position:center; border:8px solid var(--cream); }
.intro-images { padding-bottom:3rem; }
.amenities>.contours { position:absolute; inset:0; }
.amenities .amenities-visual { margin-bottom:2.5rem; }
.plot-plan { margin:3.5rem calc(-1 * clamp(1.25rem,8vw,10rem)); }
.plot-plan .site-image, .plot-plan .image-placeholder { display:block; width:100%; height:clamp(14rem,26vw,26rem); aspect-ratio:auto; object-fit:cover; object-position:50% 45%; background:none; border-radius:0; }
@media (max-width:560px){.intro-copy h2{font-size:clamp(2.3rem,10.5vw,3rem)}}

/* Section pass 3 */
.site-nav nav { align-self:center; height:100%; }
.nav-brand { align-self:center; height:auto; line-height:1; }
.nav-brand img { height:100%; }
.hero::before { background:linear-gradient(90deg,color-mix(in oklab,var(--forest) 82%,transparent) 0%,color-mix(in oklab,var(--forest) 58%,transparent) 32%,color-mix(in oklab,var(--forest) 14%,transparent) 62%,transparent 85%),linear-gradient(180deg,color-mix(in oklab,var(--forest) 22%,transparent),transparent 30%,transparent 70%,color-mix(in oklab,var(--forest) 55%,transparent)); }
.hero-copy h1,.hero-copy p { text-shadow:0 1px 18px color-mix(in oklab,var(--forest) 55%,transparent); }
.hero>.contours { opacity:.28; }
.hero>.contours path { stroke-dasharray:1400; animation:contour-drift 22s ease-in-out infinite alternate; }
.hero>.contours path:nth-child(even) { animation-duration:28s; animation-direction:alternate-reverse; }
@keyframes contour-drift { 0% { transform:translateX(-2.5%); stroke-dashoffset:0; } 100% { transform:translateX(2.5%); stroke-dashoffset:-300; } }
.intro-images .site-image:first-child { width:100%; }
.intro-images { padding-bottom:0; }
.plot-plan { margin:3.5rem 0; }
.plot-plan .site-image, .plot-plan .image-placeholder { height:auto; max-height:none; aspect-ratio:auto; object-fit:contain; }
.plot-plan .image-placeholder { aspect-ratio:16/9; }
.location-bg-image.site-image { width:100%; height:100%; object-fit:cover; object-position:center; }
.location-bg::before { background:linear-gradient(90deg,color-mix(in oklab,var(--forest) 84%,transparent) 0%,color-mix(in oklab,var(--forest) 60%,transparent) 45%,color-mix(in oklab,var(--forest) 18%,transparent) 100%); }
.amenities-visual { height:clamp(20rem,46vw,36rem); }
.amenities .amenities-visual { margin-bottom:1.5rem; }
.amenities-visual::after { background:linear-gradient(180deg,transparent 70%,color-mix(in oklab,var(--forest) 60%,transparent) 88%,var(--forest) 100%); }
.amenity-grid>div { grid-template-columns:3.2rem 1fr; min-height:4.8rem; gap:.5rem; }
.amenity-icon { display:inline-flex; width:3.4rem; height:3.4rem; align-items:center; justify-content:center; color:var(--sage); }
.amenity-icon svg { width:2.6rem; height:2.6rem; }
.green-image .site-image { width:100%; height:110%; object-fit:cover; }
.investment-section { display:block; }
.investment-visual { position:relative; margin:0 0 4rem; }
.investment-visual .site-image, .investment-visual .image-placeholder { width:100%; height:clamp(16rem,34vw,28rem); object-fit:cover; }
.devanahalli-image { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.constellation { max-width:none; width:100%; }
.location-layout { grid-template-columns:1.35fr .65fr; }
.constellation svg circle { stroke:color-mix(in oklab,var(--sage) 55%,transparent); fill:color-mix(in oklab,var(--sage) 6%,transparent); stroke-width:1.2; }
.constellation svg circle.ring-amber { stroke:color-mix(in oklab,var(--amber) 55%,transparent); stroke-dasharray:4 6; fill:none; }
.constellation svg line { stroke:color-mix(in oklab,var(--sage-dim) 35%,transparent); }
.constellation-core { inset:38%; box-shadow:0 0 0 10px color-mix(in oklab,var(--sage) 20%,transparent),0 0 0 22px color-mix(in oklab,var(--amber) 12%,transparent); }
.constellation-core strong { font-size:clamp(.64rem,1.1vw,.85rem); }
.constellation .node { background:color-mix(in oklab,var(--sage) 28%,var(--cream)); border-color:var(--sage-dim); border-radius:999px; font-size:.78rem; padding:.9rem 1.3rem; }
.constellation .node.active { background:var(--amber); border-color:var(--amber-deep); color:var(--ink); box-shadow:0 0 0 8px color-mix(in oklab,var(--amber) 22%,transparent); }
.constellation .node.active span { color:var(--ink); }
.master-plan { padding-bottom:9rem; display:grid; gap:3rem; }
.master-plan .master-plan-image { width:100%; height:auto; max-height:52rem; object-fit:contain; background:none; }
.master-plan>.image-placeholder.master-plan-image { height:min(60vw,42rem); }
.master-plan .master-card { position:relative; left:auto; bottom:auto; }
.mid-cta { position:relative; overflow:hidden; }
.midcta-bg.site-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.midcta-bg.image-placeholder { display:none; }
.mid-cta::before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,color-mix(in oklab,var(--forest) 88%,transparent),color-mix(in oklab,var(--forest) 62%,transparent)); }
.mid-cta>div { z-index:2; }
.footer-brand { display:inline-flex; flex-direction:column; gap:.7rem; text-decoration:none; }
.footer-brand img { height:52px; width:auto; object-fit:contain; align-self:flex-start; }
.footer-brand small { font-size:.55rem; letter-spacing:.3em; color:var(--sage); }
.floating-actions { position:fixed; z-index:58; right:1.25rem; bottom:7rem; display:flex; flex-direction:column; align-items:flex-end; gap:.7rem; pointer-events:none; }
.floating-actions>* { pointer-events:auto; }
.float-btn { display:inline-flex; width:3.2rem; height:3.2rem; align-items:center; justify-content:center; border-radius:999px; border:0; cursor:pointer; box-shadow:0 10px 28px color-mix(in oklab,var(--ink) 30%,transparent); transition:transform .25s,opacity .25s; }
.float-btn:hover { transform:translateY(-2px); }
.float-btn svg { width:1.35rem; height:1.35rem; }
.float-whatsapp { background:#25D366; color:#fff; }
.float-call { background:var(--forest-2); color:var(--cream); border:1px solid color-mix(in oklab,var(--cream) 22%,transparent); }
.float-top { background:var(--forest); color:var(--cream); border:1px solid color-mix(in oklab,var(--cream) 22%,transparent); opacity:0; transform:translateY(8px); pointer-events:none; }
.float-top.is-visible { opacity:1; transform:none; pointer-events:auto; }
.float-enquiry { display:inline-flex; align-items:center; gap:.5rem; padding:.8rem 1.1rem; border:0; border-radius:999px; background:var(--amber); color:var(--ink); font:700 .7rem var(--font-sans); letter-spacing:.08em; text-transform:uppercase; cursor:pointer; box-shadow:0 10px 28px color-mix(in oklab,var(--ink) 30%,transparent); }
.float-enquiry svg { width:1rem; height:1rem; }
@media (max-width:899px) {
  .nav-brand { height:auto; }
  .nav-brand-mark { height:29px; }
  .nav-brand-mark img { height:29px; }
  .nav-developer { font-size:.42rem; }
  .hero::before { background:linear-gradient(90deg,color-mix(in oklab,var(--forest) 82%,transparent) 0%,color-mix(in oklab,var(--forest) 55%,transparent) 70%,color-mix(in oklab,var(--forest) 35%,transparent) 100%),linear-gradient(180deg,color-mix(in oklab,var(--forest) 25%,transparent),color-mix(in oklab,var(--forest) 55%,transparent)); }
  .location-bg::before { background:color-mix(in oklab,var(--forest) 70%,transparent); }
  .location-layout { grid-template-columns:1fr; }
  .floating-actions { right:.9rem; bottom:6.2rem; }
}
@media (max-width:560px) {
  .amenity-grid>div { grid-template-columns:3.4rem 1fr; }
  .amenity-icon svg { width:2.1rem; height:2.1rem; }
  .float-btn { width:2.8rem; height:2.8rem; }
  .float-enquiry { padding:.7rem .9rem; font-size:.62rem; }
}
@media (prefers-reduced-motion: reduce) { .hero>.contours path { animation:none; } .float-btn,.float-top { transition:none; } }

/* ===== Six-fix pass ===== */
.contours { display:none !important; }
.intro { align-items:start; }
.intro-images, .intro-copy { align-self:start; margin-top:0; }
.intro-images .site-image:first-child { display:block; }
.plot-plan { position:relative; }
.plot-plan::after { content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 3.5rem 2.5rem var(--forest); background:linear-gradient(to right,var(--forest),transparent 8%,transparent 92%,var(--forest)),linear-gradient(to bottom,var(--forest),transparent 10%,transparent 90%,var(--forest)); }
.plot-plan .site-image { display:block; }
.green-image .site-image, .green-image .image-placeholder { width:100%; height:100%; object-fit:cover; transform:none !important; }
.green-living { position:relative; }
.investment-bg { position:relative; overflow:hidden; isolation:isolate; }
.investment-bg-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.investment-bg>.image-placeholder.investment-bg-image { display:none; }
.investment-bg::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(100deg,color-mix(in oklab,var(--forest) 92%,transparent) 0%,color-mix(in oklab,var(--forest) 78%,transparent) 50%,color-mix(in oklab,var(--forest) 55%,transparent) 100%),linear-gradient(to top,color-mix(in oklab,var(--forest) 80%,transparent),transparent 60%); }
.investment-content { position:relative; }
.investment-bg .investment-grid article { background:color-mix(in oklab,var(--forest) 55%,transparent); backdrop-filter:blur(4px); padding:1.5rem; }
.master-plan { justify-items:center; gap:2rem; }
.master-plan-head { text-align:center; }
.master-plan-head h2 { margin-top:1rem; font-size:clamp(2.4rem,4.5vw,4.2rem); }
.master-plan .master-card { margin:-8rem auto 0; text-align:center; z-index:2; width:min(40rem,100%); }
.master-card .future-development { margin-top:-.75rem; color:var(--sage); font-size:.72rem; font-weight:700; letter-spacing:.04em; }
@media (max-width:899px){ .investment-bg::before{ background:color-mix(in oklab,var(--forest) 84%,transparent);} .master-plan .master-card{ margin-top:-3rem; } }
.ownership.investment-bg > .investment-bg-image { position:absolute !important; inset:0; width:100% !important; height:100% !important; max-width:none; margin:0; z-index:-2; transform:none; }
.ownership.investment-bg .ghost-word { display:none; }
/* Fix pass 7 */
.intro { position:relative; margin-top:0; }
.intro-images, .intro-images .site-image { transform:none !important; top:auto; margin-top:0 !important; position:relative; }
.plot-plan { width:100vw; max-width:100vw; margin:3.5rem 0 3.5rem calc(50% - 50vw) !important; border-radius:0; }
.plot-plan::after { display:none !important; content:none; }
.plot-plan .site-image, .plot-plan .image-placeholder { width:100%; height:auto; object-fit:cover; border-radius:0; }
.journey { height:auto !important; min-height:0 !important; display:block !important; overflow:visible !important; padding-block:7rem; }
.journey-head { margin-bottom:4rem; }
.journey-track { height:auto !important; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4rem 3rem; }
.journey-stage { position:relative !important; inset:auto !important; display:flex !important; flex-direction:column; gap:1.5rem; opacity:1 !important; visibility:visible !important; margin:0 !important; }
.journey-image .site-image { width:100%; aspect-ratio:4/3; height:auto; object-fit:cover; }
.journey-copy h3 { margin:1.5rem 0 1rem; font-size:clamp(1.8rem,3vw,2.8rem); }
.journey .stage-number { top:-1rem; font-size:5rem; }
.progress-rail { display:none !important; }
@media (max-width:699px){ .journey-track{ grid-template-columns:1fr; } }
.investment-bg, .investment-bg .investment-content, .investment-bg .investment-grid, .investment-bg .investment-grid article { text-align:left; }
.investment-bg .investment-grid { margin-left:0 !important; align-items:start; }
.investment-bg .investment-grid article { transform:none !important; margin-top:0 !important; background:color-mix(in oklab,var(--forest) 72%,transparent); }
.investment-bg::before { background:linear-gradient(100deg,color-mix(in oklab,var(--forest) 70%,transparent) 0%,color-mix(in oklab,var(--forest) 40%,transparent) 55%,color-mix(in oklab,var(--forest) 20%,transparent) 100%),linear-gradient(to top,color-mix(in oklab,var(--forest) 55%,transparent),transparent 55%) !important; }
@media (max-width:899px){ .investment-bg::before{ background:color-mix(in oklab,var(--forest) 55%,transparent) !important; } }
.master-plan .master-plan-image { filter:drop-shadow(0 28px 30px color-mix(in oklab,var(--ink) 28%,transparent)); }
.footer-bg { position:relative; overflow:hidden; isolation:isolate; }
.footer-bg-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.footer-bg::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(to bottom,color-mix(in oklab,var(--forest) 88%,transparent),color-mix(in oklab,var(--forest) 95%,transparent)); }
.intro .intro-images > .site-image, .intro .intro-images > .image-placeholder { position:relative !important; inset:auto !important; top:auto !important; bottom:auto !important; right:auto !important; left:auto !important; border:0; }

/* Five-fix pass */
.green-image::after { background:
  linear-gradient(to top,var(--forest) 0%,color-mix(in oklab,var(--forest) 85%,transparent) 22%,color-mix(in oklab,var(--forest) 25%,transparent) 55%,color-mix(in oklab,var(--forest) 55%,transparent) 100%),
  linear-gradient(to right,var(--forest) 0%,transparent 22%,transparent 78%,var(--forest) 100%); }
.green-image::before { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; box-shadow:inset 0 0 12rem 4rem var(--forest); }
.journey-copy, .journey-copy * { text-align:left; }
.journey .journey-copy .stage-number { position:static; display:block; margin:0 0 .75rem; text-align:left; line-height:1; }
.journey-copy button { justify-self:start; margin-left:0; }
.ownership.investment-bg > .investment-bg-image { object-position:85% 30%; }
.investment-bg::before { background:linear-gradient(90deg,color-mix(in oklab,var(--forest) 96%,transparent) 0%,color-mix(in oklab,var(--forest) 90%,transparent) 45%,color-mix(in oklab,var(--forest) 40%,transparent) 75%,color-mix(in oklab,var(--forest) 20%,transparent) 100%) !important; }
.investment-content { max-width:min(46rem,55%); text-align:left; }
.approval { align-items:center; }
.approval-side { display:grid; gap:2rem; }
.trust-image .site-image, .trust-image .image-placeholder { width:100%; max-height:28rem; object-fit:contain; display:block;
  -webkit-mask-image:radial-gradient(ellipse 62% 66% at 50% 50%,#000 40%,transparent 72%); mask-image:radial-gradient(ellipse 62% 66% at 50% 50%,#000 40%,transparent 72%); }
.trust-image .image-placeholder { mask-image:none; -webkit-mask-image:none; min-height:16rem; }
.form-footer-bg { position:relative; isolation:isolate; overflow:hidden; background:var(--forest); }
.form-footer-bg-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.form-footer-bg::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(to bottom,color-mix(in oklab,var(--forest) 94%,transparent),color-mix(in oklab,var(--forest) 84%,transparent) 50%,color-mix(in oklab,var(--forest) 93%,transparent)); }
.form-footer-bg .visit, .form-footer-bg .footer { background:transparent !important; }
.form-footer-bg .visit-form select { background-color: transparent; }
@media (max-width:899px){ .investment-content{max-width:none} .ownership.investment-bg > .investment-bg-image{object-position:80% 20%} .investment-bg::before{background:color-mix(in oklab,var(--forest) 88%,transparent) !important} }
.journey .journey-stage .journey-copy { padding-left:0 !important; margin-left:0 !important; justify-self:stretch; width:100%; }
@media (min-width:900px){ .ownership.investment-bg > .investment-bg-image { left:38% !important; width:62% !important; object-position:50% 25%; }
  .investment-bg::before { background:linear-gradient(90deg,var(--forest) 0%,var(--forest) 38%,color-mix(in oklab,var(--forest) 55%,transparent) 50%,color-mix(in oklab,var(--forest) 15%,transparent) 75%,transparent 100%) !important; } }

.site-nav { padding:0 clamp(1.25rem,6vw,7.5rem); }
.float-secondary { background:var(--forest); color:var(--cream); border:1px solid color-mix(in oklab,var(--cream) 28%,transparent); }
.floating-actions { bottom:1.5rem; }
@media (max-width:560px){ .floating-actions { bottom:1rem; } }

/* Approval & Trust rework — large centre-right image behind the heading */
.approval { position:relative; display:block; align-items:initial; }
.approval .trust-image { position:absolute; top:50%; right:7%; transform:translateY(-50%); width:min(52rem,58%); height:min(44rem,40vw); z-index:0; pointer-events:none; }
.approval .trust-image .site-image { width:100%; height:100%; object-fit:contain; display:block;
  -webkit-mask-image:radial-gradient(ellipse 72% 76% at 58% 50%,#000 42%,transparent 76%); mask-image:radial-gradient(ellipse 72% 76% at 58% 50%,#000 42%,transparent 76%); }
.approval .trust-image::before { content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(90deg,var(--cream) 0%,var(--cream) 18%,color-mix(in oklab,var(--cream) 85%,transparent) 36%,transparent 56%); }
.approval .trust-image .image-placeholder { min-height:100%; height:100%; mask-image:none; -webkit-mask-image:none; }
.approval .section-heading { position:relative; z-index:2; max-width:min(52rem,72%); }
.approval .approval-details { position:relative; z-index:2; margin-top:3rem; width:100%; max-width:none; padding-left:0; }
@media (max-width:899px){
  .approval { display:block; padding-bottom:6rem; }
  .approval .trust-image { position:relative; top:auto; right:auto; transform:none; width:100%; height:min(30rem,72vw); margin:0 0 2.5rem; order:initial; }
  .approval .trust-image .site-image { height:100%; }
  .approval .trust-image::before { background:linear-gradient(90deg,var(--cream) 0%,color-mix(in oklab,var(--cream) 40%,transparent) 22%,transparent 45%); }
  .approval .section-heading { max-width:none; }
  .approval .approval-details { margin-top:2rem; max-width:none; }
}

/* Trust image 1.7x, centre-right */
@media (min-width:900px){
  .approval { min-height:calc(min(74rem,68vw) + 8rem); display:flex; flex-direction:column; justify-content:center; }
  .approval .trust-image { right:-3%; width:min(60rem,56%); height:min(74rem,68vw); }
  .approval .trust-image::before { background:linear-gradient(90deg,var(--cream) 0%,color-mix(in oklab,var(--cream) 85%,transparent) 30%,color-mix(in oklab,var(--cream) 40%,transparent) 48%,transparent 62%); }
  .approval .section-heading > p { max-width:30rem; }
}
@media (max-width:899px){
  .approval .trust-image { height:min(50rem,122vw); }
}
.approval .trust-image .site-image { max-height:none; }
.approval .trust-image .site-image { -webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 60%,transparent 100%); mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 60%,transparent 100%); }

@media (max-width: 899px) {
  .mobile-menu { display: none; }
  .mobile-menu.is-open { display: flex; }
}
img.hero-background, img.site-image, img.form-footer-bg-image, img.midcta-bg, img.location-bg-image, img.investment-bg-image {
  max-width: none;
}

.footer a[href^="tel:"] { display:block; }

/* Palette shift: former dark sections -> light sage (hero + footer stay forest) */
.section-dark:not(.hero):not(.footer):not(.mid-cta):not(.dark-restored) {
  --forest: #EAEEE4;
  --forest-2: #E1E7D9;
  --forest-3: #D6DECB;
  --cream: #15120D;
  --sage: #4B5A3F;
  --sage-dim: #3E4A34;
  --amber: #8A5A00;
  background-color: #EAEEE4;
  color: #15120D;
}
.form-footer-bg .visit.section-dark { background:linear-gradient(to bottom,color-mix(in oklab,#EAEEE4 95%,transparent) 0%,color-mix(in oklab,#EAEEE4 92%,transparent) 88%,color-mix(in oklab,#EAEEE4 0%,transparent) 100%) !important; }
@media (max-width:560px){
  .trust-strip { gap:.6rem; padding:1.1rem 0; }
  .trust-badge,.trust-strip-dark .trust-badge { flex:1 1 calc(50% - .6rem); min-width:0; padding:.65rem .55rem; white-space:normal; line-height:1.35; }
  .trust-strip .trust-rera { overflow-wrap:anywhere; line-height:1.55; }
  .approval .trust-strip { width:calc(100% - 9rem); align-items:stretch; padding-right:0; }
  .approval .trust-badge { flex-basis:100%; }
  .approval .trust-rera { font-size:.58rem; }
}

/* LP refine 1.1.0 — tighter type, aligned gutters, form modal, CTA blink, master-plan lock */
:root {
  --page-gutter: clamp(1.25rem, 6vw, 7.5rem);
}
.pinakini h1, .pinakini h2, .pinakini h3 { line-height: 1.12; }
.hero-title, .hero-title-final { font-size: clamp(2.6rem, 5.2vw, 5.4rem); }
.hero-title .hero-slogan { line-height: 1.08; }
.section-heading h2 { font-size: clamp(2.1rem, 4vw, 3.6rem); }
.intro-copy h2 { font-size: clamp(2.2rem, 4.2vw, 3.8rem); }
.location-bg h2, .split-feature h2, .green-copy h2, .journey-head h2, .mid-cta h2, .developer h2, .visit h2, .master-card h2, .master-plan-head h2 { font-size: clamp(2.1rem, 4vw, 3.5rem); }
.location-panel h3 { font-size: clamp(1.5rem, 2.4vw, 2.2rem); }
.icon-feature h3, .highlight-list h3 { font-size: 1.15rem; line-height: 1.25; }
.site-nav,
.hero,
.intro,
.editorial-section,
.difference,
.location-bg,
.amenities,
.green-living,
.journey,
.journey-compact,
.ownership,
.split-feature,
.location,
.master-plan,
.approval,
.mid-cta,
.developer,
.visit,
.footer,
.thank-you {
  padding-left: var(--page-gutter);
  padding-right: var(--page-gutter);
}
.trust-strip-dark { padding-left: 0; padding-right: 0; }
.campaign-btn,
.campaign-btn-ghost,
.float-enquiry {
  border-radius: 999px;
}

@keyframes pk-cta-pulse {
  0%, 100% { box-shadow: 0 0 0 0 color-mix(in oklab, var(--amber) 55%, transparent); }
  55% { box-shadow: 0 0 0 10px color-mix(in oklab, var(--amber) 0%, transparent); }
}
.cta-blink {
  animation: pk-cta-pulse 1.7s ease-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .cta-blink { animation: none; }
}

.master-lock { position: relative; display: grid; gap: 1.5rem; }
.master-lock__media { position: relative; overflow: hidden; }
.master-lock:not(.is-unlocked) .master-plan-image {
  filter: blur(16px) saturate(.7);
  transform: scale(1.06);
  pointer-events: none;
  user-select: none;
}
.master-lock__panel {
  position: relative;
  inset: auto;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  text-align: left;
  gap: .85rem;
  padding: 0;
  background: none;
}
.master-lock__panel h3 { margin: 0; color: var(--ink); font-size: clamp(1.6rem, 3vw, 2.4rem); }
.master-lock__panel p { margin: 0; max-width: 36rem; color: var(--ink-soft); line-height: 1.6; }
.master-lock.is-unlocked .master-lock__panel { display: none; }
.master-lock.is-unlocked .master-plan-image { filter: none; transform: none; }
.future-development { margin-top: 1.25rem; font-size: .78rem; color: var(--ink-soft); }

.journey-compact {
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 0;
  overflow: visible;
  padding-top: var(--section-y, 5.5rem);
  padding-bottom: var(--section-y, 5.5rem);
}
.journey-compact .journey-head { max-width: 36rem; margin: 0 0 2.5rem; position: relative; z-index: 1; }
.journey-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.1rem; margin: 0; position: relative; z-index: 1; }
.journey-card { position: relative; overflow: hidden; }
.journey-card .site-image { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.journey-card .journey-step { display: block; margin: .85rem 0 .3rem; font: 300 1.05rem/1 var(--font-display); color: var(--sage); }
.journey-card h3 { margin: 0; font-size: 1.15rem; line-height: 1.25; position: static; }
.journey-actions { position: relative; z-index: 2; margin-top: 2rem; }
@media (max-width: 899px) {
  .journey-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .journey-grid { grid-template-columns: 1fr; }
}

body.pk-modal-open { overflow: hidden; }
.pk-modal { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 1.25rem; }
.pk-modal[hidden] { display: none !important; }
.pk-modal__backdrop { position: absolute; inset: 0; background: color-mix(in oklab, var(--forest) 72%, transparent); backdrop-filter: blur(8px); }
.pk-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(32rem, 100%);
  max-height: min(92vh, 44rem);
  overflow: auto;
  padding: 2rem 1.6rem 1.6rem;
  background: var(--forest);
  color: var(--cream);
  border: 1px solid color-mix(in oklab, var(--cream) 16%, transparent);
  border-radius: 1.25rem;
}
.pk-modal__dialog h2 { margin: .6rem 0 .5rem; font-size: 2rem; }
.pk-modal__lede { margin: 0 0 1.4rem; color: color-mix(in oklab, var(--cream) 72%, transparent); line-height: 1.6; }
.pk-modal__close {
  position: absolute; top: .85rem; right: .85rem;
  width: 2.25rem; height: 2.25rem; border: 0; border-radius: 999px;
  background: color-mix(in oklab, var(--cream) 10%, transparent); color: var(--cream); cursor: pointer;
}
.pk-modal-form { display: grid; gap: 1.75rem; }
.pk-form-status { margin: .6rem 0 0; font-size: .8rem; color: var(--amber); }
.footer-form-link {
  display: block; padding: 0; border: 0; background: none; color: inherit;
  font: inherit; text-align: left; cursor: pointer; text-decoration: none;
}
.ownership-grid.investment-grid { margin-left: 0; grid-template-columns: 1fr; }
.amenity-note { display: none; }
@media (max-width: 899px) {
  .hero-title-final { font-size: clamp(2.3rem, 11vw, 3.4rem); }
  .intro-copy h2, .section-heading h2 { font-size: clamp(2rem, 8.5vw, 2.8rem); }
}

/* LP refine 1.1.1 — even section rhythm, amenity CTA gap, overlay/form overlap, 3 investment cards, Lovable select */
:root { --section-y: clamp(4.75rem, 8vw, 6.5rem); }
.intro,
.difference,
.location-bg,
.amenities,
.journey,
.journey-compact,
.split-feature,
.location,
.master-plan,
.mid-cta,
.developer,
.visit {
  padding-top: var(--section-y) !important;
  padding-bottom: var(--section-y) !important;
  min-height: 0 !important;
}
.intro { min-height: 0; }
.location-bg { min-height: 0; }
.visit { min-height: 0; }

.amenity-tabs { margin: 2.5rem 0 1.5rem; }
.amenity-grid { margin: 0; }
.amenity-panel { padding-bottom: 0; }
.amenities > .campaign-btn {
  margin-top: 2.5rem;
  position: relative;
  z-index: 1;
}

.master-lock__panel {
  gap: .85rem;
  padding: 0;
  justify-content: flex-start;
}

.investment-content { max-width: min(46rem, 55%); text-align: left; }
.ownership.investment-bg .ownership-grid.investment-grid {
  margin: 2.5rem 0 0;
  margin-left: 0;
  grid-template-columns: 1fr;
  gap: 0;
  background: none;
  align-items: stretch;
}
.investment-bg .investment-grid article {
  min-height: 0;
  padding: 1.5rem;
  transform: none !important;
  margin-top: 0 !important;
  background: color-mix(in oklab, var(--forest) 72%, transparent);
  backdrop-filter: blur(4px);
}
.investment-bg .investment-grid h3 { margin: 1.4rem 0 .8rem; font-size: 1.35rem; }
.investment-bg .investment-grid p {
  max-width: none;
  color: color-mix(in oklab, var(--cream) 65%, transparent);
}
.ownership.investment-bg::before {
  background: linear-gradient(90deg, var(--forest) 0%, var(--forest) 38%, color-mix(in oklab, var(--forest) 55%, transparent) 50%, color-mix(in oklab, var(--forest) 15%, transparent) 75%, transparent 100%) !important;
}
@media (max-width: 899px) {
  .investment-content { max-width: none; }
  .ownership.investment-bg .ownership-grid.investment-grid { grid-template-columns: 1fr; }
}

.visit-form { gap: 2rem; }
.visit-form .campaign-btn { margin: 0; }
.consent {
  margin: 0;
  color: var(--sage);
  font-size: .65rem;
  line-height: 1.6;
}
.pk-modal-form .consent { margin-top: 0; }

.visit-form label:has(select) { position: relative; display: block; }
.visit-form label:has(select)::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 1.05rem;
  width: 12px;
  height: 12px;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238A9680' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat center / 12px 12px;
}
.form-footer-bg .visit-form label:has(select)::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%234B5A3F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}
.pk-modal-form label:has(select)::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238A9680' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

.visit-form select,
.form-footer-bg .visit-form select,
.pk-modal-form select {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  padding: .35rem 1.75rem 1rem 0;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid color-mix(in oklab, var(--cream) 28%, transparent);
  background: none !important;
  background-image: none !important;
  background-color: transparent !important;
  color: color-mix(in oklab, var(--sage) 70%, var(--cream));
  outline: none;
  font: 300 1.35rem var(--font-display);
  cursor: pointer;
}
.visit-form select:valid {
  color: var(--cream);
}
.visit-form select:focus { border-bottom-color: var(--amber); }
.visit-form select option {
  color: #15120D;
  background: #EAEEE4;
  font: 400 1rem var(--font-sans);
}
.form-footer-bg .visit-form select {
  color: color-mix(in oklab, #4B5A3F 75%, #15120D);
  border-bottom-color: color-mix(in oklab, #15120D 22%, transparent);
}
.form-footer-bg .visit-form select:valid { color: #15120D; }
.form-footer-bg .visit-form input {
  background-color: transparent;
  color: #15120D;
  border-bottom-color: color-mix(in oklab, #15120D 22%, transparent);
}
.pk-modal-form select {
  color: color-mix(in oklab, var(--sage) 72%, var(--cream));
  border-bottom-color: color-mix(in oklab, var(--cream) 28%, transparent);
}
.pk-modal-form select:valid { color: var(--cream); }
.pk-modal-form select option { background: #1c2e24; color: #F4F1EA; }

.footer .campaign-btn { align-self: flex-start; margin-top: .35rem; }

#project-intro.intro { padding-bottom: clamp(2.5rem, 4.5vw, 3.5rem) !important; }
.difference { padding-top: clamp(2.5rem, 4.5vw, 3.5rem) !important; }
.location-bg + .difference { padding-bottom: clamp(2.5rem, 4.5vw, 3.5rem) !important; }
#social-infrastructure.location { padding-top: clamp(2.5rem, 4.5vw, 3.5rem) !important; }

/* Investment + Approval — match shared Lovable zip */
.ownership.investment-section.investment-bg {
  min-height: 0;
  padding: var(--section-y, 5.5rem) var(--page-gutter);
  display: block;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.ownership.investment-bg > .investment-bg-image {
  position: absolute !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: none;
  margin: 0;
  object-fit: cover;
  object-position: 85% 30%;
  z-index: -2;
  transform: none;
}
.ownership.investment-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, var(--forest) 0%, var(--forest) 38%, color-mix(in oklab, var(--forest) 55%, transparent) 50%, color-mix(in oklab, var(--forest) 15%, transparent) 75%, transparent 100%) !important;
}
.ownership.investment-bg .investment-content {
  position: relative;
  max-width: min(46rem, 55%);
  text-align: left;
}
.ownership.investment-bg .section-heading h2 {
  margin-top: 1.5rem;
  font-size: clamp(2.1rem, 4vw, 3.6rem);
  color: var(--cream);
}
.ownership.investment-bg .section-heading > p {
  max-width: 35rem;
  margin-top: 2rem;
  color: color-mix(in oklab, var(--cream) 65%, transparent);
  line-height: 1.8;
}
.ownership.investment-bg .ownership-grid.investment-grid {
  margin: 2.5rem 0 0 !important;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  background: color-mix(in oklab, #ffffff 72%, #EAEEE4);
  align-items: stretch;
}
.ownership.investment-bg .investment-grid article {
  min-height: 17rem;
  height: auto;
  padding: 2.25rem 1.85rem 2rem;
  transform: none !important;
  margin-top: 0 !important;
  background: color-mix(in oklab, #d5dcc9 88%, #ffffff);
  backdrop-filter: blur(6px);
  display: flex;
  flex-direction: column;
  border-right: 0;
}
.ownership.investment-bg .investment-grid article:last-child {
  background: color-mix(in oklab, #d5dcc9 88%, #ffffff);
}
.ownership.investment-bg .investment-grid span {
  color: var(--sage);
  font: 300 1rem var(--font-display);
}
.ownership.investment-bg .investment-grid h3 {
  margin: 2.4rem 0 1rem;
  font-size: clamp(1.65rem, 2.1vw, 2rem);
  line-height: 1.12;
  color: var(--cream);
}
.ownership.investment-bg .investment-grid p {
  max-width: none;
  color: color-mix(in oklab, var(--cream) 65%, transparent);
  line-height: 1.7;
  font-size: .85rem;
}
@media (min-width: 900px) {
  .ownership.investment-bg > .investment-bg-image {
    left: 38% !important;
    width: 62% !important;
    object-position: 50% 25%;
  }
}
@media (max-width: 899px) {
  .ownership.investment-section.investment-bg { min-height: 0; padding-block: var(--section-y, 5.5rem); }
  .ownership.investment-bg > .investment-bg-image { left: 0 !important; width: 100% !important; object-position: 80% 20%; }
  .ownership.investment-bg::before { background: color-mix(in oklab, var(--forest) 88%, transparent) !important; }
  .ownership.investment-bg .investment-content { max-width: none; }
  .ownership.investment-bg .ownership-grid.investment-grid { grid-template-columns: 1fr; }
  .ownership.investment-bg .section-heading h2 { font-size: clamp(2rem, 8.5vw, 2.8rem); }
}

.approval {
  position: relative;
  display: block;
  min-height: 0 !important;
  padding: var(--section-y, 5.5rem) var(--page-gutter) !important;
  background: var(--cream);
  color: var(--ink);
}
.approval .section-heading {
  position: relative;
  z-index: 2;
  max-width: min(52rem, 72%);
}
.approval .section-heading h2 {
  margin-top: 1.5rem;
  font-size: clamp(2.1rem, 4vw, 3.6rem);
  color: var(--ink);
}
.approval .section-heading > p {
  max-width: 30rem;
  margin-top: 2rem;
  color: var(--ink-soft);
  line-height: 1.8;
}
.approval .trust-image {
  position: absolute;
  top: 50%;
  right: -3%;
  transform: translateY(-50%);
  width: min(60rem, 56%);
  height: min(74rem, 68vw);
  z-index: 0;
  pointer-events: none;
}
.approval .trust-image .site-image {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: contain;
  display: block;
  -webkit-mask-image: radial-gradient(ellipse 50% 50% at 50% 50%, #000 60%, transparent 100%);
  mask-image: radial-gradient(ellipse 50% 50% at 50% 50%, #000 60%, transparent 100%);
}
.approval .trust-image::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, var(--cream) 0%, color-mix(in oklab, var(--cream) 85%, transparent) 30%, color-mix(in oklab, var(--cream) 40%, transparent) 48%, transparent 62%);
}
@media (min-width: 900px) {
  .approval {
    min-height: 0 !important;
    display: block;
  }
  .approval .trust-image {
    height: min(34rem, 40vw);
    width: min(40rem, 46%);
    right: 4%;
  }
}
@media (max-width: 899px) {
  .approval { min-height: 0; padding-block: var(--section-y, 5.5rem); display: block; }
  .approval .trust-image {
    position: relative;
    top: auto;
    right: auto;
    transform: none;
    width: 100%;
    height: min(28rem, 70vw);
    margin: 0 0 2.5rem;
  }
  .approval .trust-image::before {
    background: linear-gradient(90deg, var(--cream) 0%, color-mix(in oklab, var(--cream) 40%, transparent) 22%, transparent 45%);
  }
  .approval .section-heading { max-width: none; }
  .approval .section-heading h2 { font-size: clamp(2rem, 8.5vw, 2.8rem); }
}

/* Boss feedback 1.2.4 — master-plan crop, mid-CTA align, form align, combined approval, no footer fade */
.master-lock__media {
  overflow: visible;
  padding: 1.25rem;
}
.master-plan .master-plan-image {
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: center;
}
.master-lock:not(.is-unlocked) .master-plan-image {
  filter: blur(14px) saturate(.75);
  transform: none;
}

.mid-cta.campaign-band {
  display: grid;
  grid-template-columns: 1fr;
  align-items: end;
  min-height: 0;
  gap: 0;
}
.mid-cta .mid-cta-inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem 2.25rem;
  width: 100%;
}
.mid-cta .mid-cta-copy {
  flex: 1 1 24rem;
  max-width: 42rem;
}
.mid-cta .mid-cta-copy h2 {
  margin-top: .9rem;
}
.mid-cta .mid-cta-lede {
  max-width: 36rem;
  margin: 1rem 0 0;
  line-height: 1.7;
  color: color-mix(in oklab, var(--cream) 74%, transparent);
}
.mid-cta .mid-cta-kicker {
  margin-top: 1.75rem;
}
.mid-cta .campaign-price {
  margin-top: 1.15rem;
}
.mid-cta .cta-stack {
  flex: 0 1 auto;
  align-self: flex-end;
  justify-content: flex-end;
  flex-wrap: wrap;
}
@media (max-width: 899px) {
  .mid-cta .mid-cta-inner { align-items: flex-start; }
  .mid-cta .cta-stack { align-self: flex-start; justify-content: flex-start; }
}

.developer,
.form-footer-bg .visit {
  grid-template-columns: minmax(0, 0.55fr) minmax(0, 1.45fr);
  gap: 6%;
  align-items: start;
}
.form-footer-bg .visit .visit-form {
  width: 100%;
  max-width: none;
  justify-items: stretch;
  text-align: left;
  margin: 0;
}
.form-footer-bg .visit .visit-form .campaign-btn {
  justify-self: start;
}
@media (min-width: 900px) {
  .form-footer-bg .visit .visit-form {
    grid-template-columns: 1fr 1fr;
    column-gap: 2rem;
    row-gap: 1.75rem;
  }
  .form-footer-bg .visit .visit-form > input[type="hidden"] {
    display: none;
  }
  .form-footer-bg .visit .visit-form .campaign-btn,
  .form-footer-bg .visit .visit-form .consent,
  .form-footer-bg .visit .visit-form .pk-form-status {
    grid-column: 1 / -1;
  }
}
@media (max-width: 899px) {
  .developer,
  .form-footer-bg .visit {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}

.form-footer-bg::before {
  background: color-mix(in oklab, var(--forest) 62%, transparent);
}
.form-footer-bg .visit.section-dark {
  background: #EAEEE4 !important;
}
.form-footer-bg .footer {
  background: color-mix(in oklab, var(--forest) 55%, transparent) !important;
}
#build-your-way[hidden] { display: none !important; }

/* Boss edits 1.2.8 */
.hero .fact-strip { display: none !important; }

.mid-cta .mid-cta-copy { max-width: min(48rem, 100%); }
.mid-cta .mid-cta-copy h2 { font-size: clamp(1.85rem, 3.4vw, 3.1rem); }
.mid-cta-line { white-space: nowrap; }
@media (max-width: 899px) {
  .mid-cta-line { white-space: normal; }
}

.master-plan { justify-items: start; text-align: left; }
.master-plan-head { text-align: left; width: 100%; }
.master-lock { width: 100%; justify-items: start; }
.master-lock__panel {
  align-items: flex-start;
  text-align: left;
  width: 100%;
  max-width: 40rem;
}
.master-lock__panel .future-development {
  margin: 1.1rem 0 0;
  text-align: left;
}

.amenities-visual {
  height: clamp(18rem, 40vw, 32rem);
  margin-bottom: 0;
  overflow: hidden;
}
.amenities-visual .amenities-image,
.amenities-visual .site-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.amenities > .section-heading {
  position: relative;
  z-index: 2;
  margin-top: -5.5rem;
  padding-bottom: .25rem;
}
@media (max-width: 899px) {
  .amenities > .section-heading { margin-top: -3.5rem; }
}

.journey-compact .journey-head { max-width: none; }
.journey-compact .journey-head h2 {
  white-space: nowrap;
  font-size: clamp(1.65rem, 3.6vw, 3.2rem);
}
@media (max-width: 560px) {
  .journey-compact .journey-head h2 {
    white-space: normal;
    font-size: clamp(1.7rem, 7.5vw, 2.4rem);
  }
}

/* 1.3.6 — force the boss line breaks; copy unchanged */
.developer.section-dark {
  display: block !important;
  grid-template-columns: none !important;
}
.developer-copy h2 { margin: 1.5rem 0 2rem; }
.developer-copy p { margin: 0 0 2rem; max-width: 48rem; }

.location-bg + .difference {
  padding-top: var(--section-y) !important;
  padding-bottom: var(--section-y) !important;
}
.location-bg + .difference .highlight-list { margin-top: 1.5rem; }

.title-wrap--connected .conn-b { display: block; }
.consent-rest { display: block; }
.place-copy,
.place-copy .mob-break {
  font-size: .85rem;
  line-height: 1.7;
  font-weight: 400;
}

.mid-cta-title .cta-c { display: block; }

@media (min-width: 900px) {
  .mid-cta-title .cta-a,
  .mid-cta-title .cta-b { display: inline; }
  .mob-break { display: inline; }
  .title-wrap--plot .plot-c { display: block; }
  .master-plan { justify-items: center; text-align: center; }
  .master-plan-head { text-align: center; }
  .master-plan-head .eyebrow { justify-content: center; }
  .master-lock { justify-items: center; }
  .master-lock__panel {
    align-items: center;
    text-align: center;
    max-width: 36rem;
    margin-inline: auto;
  }
  .master-unlock-copy {
    max-width: 21em;
    margin-inline: auto;
    text-align: center;
  }
  .master-lock__panel .future-development { text-align: center; }
}

@media (max-width: 899px) {
  .hero-size { display: block; }
  .title-wrap--plot .plot-a,
  .title-wrap--plot .plot-b,
  .title-wrap--plot .plot-c { display: block; }
  .mid-cta .mid-cta-title .cta-a,
  .mid-cta .mid-cta-title .cta-b,
  .mid-cta .mid-cta-title .cta-c { display: block !important; }
  .mob-break { display: block; }
  .master-plan,
  .master-plan-head,
  .master-lock__panel,
  .master-lock__panel .future-development { text-align: left; }
  .master-lock__panel { align-items: flex-start; }
  .master-unlock-copy { max-width: none; text-align: left; }
}

/* 1.3.9 — intro points under copy, compact location list */
.intro {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 3.25rem;
  align-items: start;
}
.intro-main {
  display: grid;
  grid-template-columns: 1.05fr .8fr;
  gap: 10%;
  align-items: start;
  min-width: 0;
}
#project-intro.intro { padding-bottom: var(--section-y) !important; }
.intro-points {
  margin-top: 0;
  gap: 1.75rem 2rem;
}
@media (max-width: 899px) {
  .intro-main { grid-template-columns: 1fr; gap: 2rem; }
  .intro-main .intro-copy { grid-row: 1; }
}

.location-bg + .location-points {
  padding-top: 1.75rem !important;
  padding-bottom: 1.75rem !important;
}
.location-points .highlight-list {
  margin-top: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.location-points .highlight-list article {
  min-height: 0;
  padding: .9rem 1.1rem .9rem 0;
}
.location-points .highlight-list article:nth-child(even) {
  padding-left: 0;
  border-left: 0;
}
.location-points .highlight-list article:nth-child(3n+2),
.location-points .highlight-list article:nth-child(3n) {
  padding-left: 1.1rem;
  border-left: 1px solid color-mix(in oklab, var(--sage-dim) 25%, transparent);
}
.location-points .highlight-list article:nth-last-child(-n+3) {
  border-bottom: 0;
}
.location-points .highlight-list h3 {
  margin: .55rem 0 .35rem;
  font-size: 1rem;
}
.location-points .highlight-list .feature-icon { margin-bottom: .35rem; }
.location-points .place-copy,
.location-points .place-copy .mob-break,
.location-points .place-distance {
  font-family: var(--font-sans);
  font-size: .78rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.45;
  margin: 0;
}
@media (max-width: 899px) {
  .location-points .highlight-list { grid-template-columns: 1fr 1fr; }
  .location-points .highlight-list article:nth-child(3n+2),
  .location-points .highlight-list article:nth-child(3n) {
    padding-left: 0;
    border-left: 0;
  }
  .location-points .highlight-list article:nth-child(even) {
    padding-left: 1.1rem;
    border-left: 1px solid color-mix(in oklab, var(--sage-dim) 25%, transparent);
  }
  .location-points .highlight-list article:nth-last-child(-n+3) {
    border-bottom: 1px solid color-mix(in oklab, var(--sage-dim) 25%, transparent);
  }
  .location-points .highlight-list article:nth-last-child(-n+2) { border-bottom: 0; }
}
@media (max-width: 560px) {
  .location-points .highlight-list { grid-template-columns: 1fr 1fr; }
  .location-points .highlight-list article:nth-child(even) {
    padding-left: 1.1rem;
    border-left: 1px solid color-mix(in oklab, var(--sage-dim) 25%, transparent);
  }
  .location-points .highlight-list article:nth-last-child(-n+2) { border-bottom: 0; }
}

/* Mobile: Explore + Book a Visit line up with the form column (left, same gutter) */
@media (max-width: 899px) {
  .footer {
    grid-template-columns: 1fr !important;
    text-align: left;
    justify-items: stretch;
  }
  .footer > div:first-child {
    grid-column: auto !important;
  }
  .footer > div {
    align-items: flex-start !important;
    text-align: left;
    width: 100%;
  }
  .footer-explore {
    align-items: flex-start !important;
    text-align: left;
  }
  .footer-explore a,
  .footer-explore strong {
    text-align: left;
  }
  .footer .campaign-btn,
  .footer-explore .campaign-btn {
    align-self: flex-start !important;
    margin-left: 0 !important;
    margin-right: auto;
  }
}

/* 1.3.13 — hero: no green tint; copy stays left of the people */
.hero::before {
  display: none !important;
}
.hero-copy {
  max-width: 28rem;
}
.hero .hero-title-final {
  font-size: clamp(2.4rem, 4.1vw, 4.25rem);
}
.hero-copy h1,
.hero-copy p,
.hero-copy strong {
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.4);
}
@media (max-width: 899px) {
  .hero-copy { max-width: 16.5rem; }
  .hero-background { object-position: 82% 38% !important; }
}

.hero .trust-strip-dark {
  justify-content: flex-start;
  text-align: left;
}
.hero .trust-strip-dark .trust-rera {
  text-align: left;
}

@media (max-width: 899px) {
  #social-infrastructure .constellation {
    max-width: 24rem;
    width: 100%;
    margin-inline: auto;
    overflow: visible;
  }
  #social-infrastructure .constellation-core {
    inset: 37%;
    padding: 0;
    z-index: 1;
  }
  #social-infrastructure .constellation-core svg {
    width: 1.1rem;
    margin-bottom: .45rem;
  }
  #social-infrastructure .constellation-core strong {
    font-size: .64rem;
    letter-spacing: .1em;
  }
  #social-infrastructure .constellation-core span {
    font-size: .47rem;
    margin-top: .35rem;
  }
  #social-infrastructure .constellation .node {
    z-index: 2;
    min-width: 6rem;
    max-width: none;
    padding: .6rem .85rem;
    font-size: .6rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    text-align: left;
    border-radius: 999px;
  }
  #social-infrastructure .constellation .node span {
    display: inline;
    margin: 0 .5rem 0 0;
  }
  #social-infrastructure .constellation-four .social-node-0 {
    top: 2%;
    left: 50%;
    right: auto;
    bottom: auto;
    transform: translateX(-50%);
  }
  #social-infrastructure .constellation-four .social-node-1 {
    top: 50%;
    right: 0;
    left: auto;
    bottom: auto;
    transform: translateY(-50%);
  }
  #social-infrastructure .constellation-four .social-node-2 {
    top: auto;
    bottom: 2%;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
  #social-infrastructure .constellation-four .social-node-3 {
    top: 50%;
    left: 0;
    right: auto;
    bottom: auto;
    transform: translateY(-50%);
  }
}

@media (max-width: 400px) {
  #social-infrastructure.location {
    padding-left: .7rem !important;
    padding-right: .7rem !important;
  }
  #social-infrastructure .constellation {
    max-width: none;
    width: 100%;
  }
  #social-infrastructure .constellation-core {
    inset: 37%;
    overflow: visible;
  }
  #social-infrastructure .constellation-core svg {
    width: 1rem;
    margin-bottom: .3rem;
  }
  #social-infrastructure .constellation-core strong {
    font-size: .58rem;
    letter-spacing: .08em;
  }
  #social-infrastructure .constellation-core span {
    font-size: .42rem;
    margin-top: .2rem;
  }
  #social-infrastructure .constellation .node {
    min-width: 0;
    padding: .45rem .55rem;
    font-size: .5rem;
  }
  #social-infrastructure .constellation .node span {
    margin-right: .35rem;
  }
}

@media (max-width: 899px) {
  #project-intro.intro {
    padding-bottom: var(--section-y) !important;
  }
  .amenities {
    padding-top: 0 !important;
  }
  .amenities-visual {
    margin-top: 0 !important;
  }
  .amenities .section-heading,
  .amenities .amenity-tabs,
  .amenities .amenity-panel,
  .amenities > .campaign-btn {
    position: relative;
    z-index: 2;
  }
  .amenity-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: 1rem 1.35rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 1.75rem 0 1.25rem;
  }
  .amenity-tabs button {
    flex: 0 0 auto;
    padding-bottom: .75rem;
    font-size: .72rem;
    white-space: nowrap;
  }
  .amenity-panel {
    display: none !important;
  }
  .amenity-panel.is-active {
    display: block !important;
  }
  .amenity-panel::before {
    content: none !important;
    display: none !important;
  }
  .amenity-grid {
    grid-template-columns: 1fr 1fr;
  }
  .amenity-grid > div {
    min-height: 4.4rem;
    align-items: center;
  }
  .amenity-grid strong {
    font-size: 1.05rem;
    line-height: 1.25;
  }

  .location-points .highlight-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: 1fr;
    align-items: stretch;
    margin: 0;
    border: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
    border-right: 0;
    border-bottom: 0;
  }
  .location-points .highlight-list article,
  .location-points .highlight-list article:nth-child(even),
  .location-points .highlight-list article:nth-child(3n),
  .location-points .highlight-list article:nth-child(3n+2),
  .location-points .highlight-list article:nth-last-child(-n+3),
  .location-points .highlight-list article:nth-last-child(-n+2) {
    min-height: 11.5rem;
    height: 100%;
    margin: 0;
    padding: 1.15rem 1rem 1.1rem;
    border: 0;
    border-right: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
    border-bottom: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
  }
  .location-points .highlight-list article.has-icon {
    display: flex;
    flex-direction: column;
  }
  .location-points .highlight-list article.has-icon .feature-icon {
    grid-row: auto;
    margin: 0 0 .7rem;
  }
  .location-points .highlight-list h3 {
    margin: 0 0 .45rem;
    font-size: 1.12rem;
    line-height: 1.2;
  }
  .location-points .place-copy,
  .location-points .place-distance {
    font-size: .88rem;
    line-height: 1.45;
  }
  .location-points .place-copy { flex: 1; }

  .ownership.investment-bg .ownership-grid.investment-grid,
  .ownership-grid.investment-grid,
  .investment-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-auto-flow: row !important;
  }
  .ownership.investment-bg .investment-grid article,
  .investment-grid article {
    width: 100% !important;
    max-width: 100% !important;
    grid-column: 1 / -1 !important;
  }
}

@media (min-width: 900px) {
  .ownership.investment-bg .ownership-grid.investment-grid,
  .ownership-grid.investment-grid,
  .investment-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .ownership.investment-bg .investment-grid article,
  .investment-grid article {
    grid-column: auto !important;
    width: auto !important;
    max-width: none !important;
  }
}

@media (max-width: 899px) {
  .intro-points.icon-feature-grid,
  .icon-feature-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    margin-top: 1.5rem;
    margin-left: calc(-1 * var(--page-gutter));
    margin-right: calc(-1 * var(--page-gutter));
    padding: 0 5.5rem 0 var(--page-gutter);
    border-top: 1px solid color-mix(in oklab, var(--ink) 16%, transparent);
    border-bottom: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
  }
  .icon-feature {
    flex: 0 0 min(78vw, 18.5rem);
    width: min(78vw, 18.5rem);
    min-height: 13.5rem;
    margin: 0;
    padding: 1.15rem 1.1rem 1.2rem 0;
    border: 0;
    border-right: 1px solid color-mix(in oklab, var(--ink) 16%, transparent);
    scroll-snap-align: start;
    display: grid !important;
    grid-template-columns: auto 1fr;
    column-gap: .75rem;
    align-items: start;
    box-sizing: border-box;
  }
  .icon-feature .feature-icon {
    grid-row: 1 / span 2;
    width: 2.6rem;
    height: 2.6rem;
  }
  .icon-feature h3 {
    margin: 0 0 .35rem;
    font-size: 1.12rem;
    line-height: 1.2;
  }
  .icon-feature p {
    margin: 0;
    font-size: .86rem;
    line-height: 1.45;
  }

  .location-points {
    padding-bottom: 1.25rem !important;
  }
  .location-points .highlight-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    align-items: stretch;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    margin: 0 calc(-1 * var(--page-gutter));
    padding: 0 5.5rem 0 var(--page-gutter);
    border: 0;
    border-top: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
    border-bottom: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
  }
  .location-points .highlight-list article,
  .location-points .highlight-list article:nth-child(even),
  .location-points .highlight-list article:nth-child(3n),
  .location-points .highlight-list article:nth-child(3n+2),
  .location-points .highlight-list article:nth-last-child(-n+3),
  .location-points .highlight-list article:nth-last-child(-n+2) {
    flex: 0 0 min(78vw, 18.5rem);
    width: min(78vw, 18.5rem);
    min-height: 16rem;
    height: auto;
    margin: 0;
    padding: 1.2rem 1.15rem 1.2rem 0;
    border: 0;
    border-right: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
    scroll-snap-align: start;
    display: flex !important;
    flex-direction: column;
    box-sizing: border-box;
  }
  .location-points .highlight-list article.has-icon .feature-icon {
    grid-row: auto;
    margin: 0 0 .75rem;
  }

  .ownership.investment-bg .ownership-grid.investment-grid,
  .ownership-grid.investment-grid,
  .investment-grid {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 1.75rem 0 0 !important;
    gap: 0 !important;
    background: color-mix(in oklab, #ffffff 55%, #EAEEE4) !important;
  }
  .ownership.investment-bg .investment-grid article,
  .investment-grid article {
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
    max-width: none !important;
    grid-column: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 1.6rem 1.25rem 1.7rem !important;
    transform: none !important;
    background: color-mix(in oklab, #d5dcc9 88%, #ffffff) !important;
    border: 0 !important;
    border-bottom: 1px solid color-mix(in oklab, var(--ink) 12%, transparent) !important;
  }
  .ownership.investment-bg .investment-grid article:last-child {
    border-bottom: 0 !important;
  }
  .ownership.investment-bg .investment-grid span {
    color: color-mix(in oklab, var(--ink) 45%, transparent) !important;
    font-size: 1rem !important;
  }
  .ownership.investment-bg .investment-grid h3 {
    margin: 1.35rem 0 .7rem !important;
    font-size: clamp(1.85rem, 8vw, 2.35rem) !important;
    line-height: 1.12 !important;
    color: var(--ink) !important;
  }
  .ownership.investment-bg .investment-grid p {
    color: color-mix(in oklab, var(--ink) 62%, transparent) !important;
    font-size: .95rem !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 899px) {
  .ownership.investment-section.investment-bg {
    padding: 4.5rem 0 5.5rem !important;
  }
  .ownership.investment-bg .investment-content {
    max-width: none !important;
    width: 100% !important;
    padding-left: var(--page-gutter);
    padding-right: var(--page-gutter);
  }
  .ownership.investment-bg .section-heading {
    padding-right: 0;
  }
  .ownership.investment-bg .ownership-grid.investment-grid,
  .ownership-grid.investment-grid,
  .investment-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    width: auto !important;
    max-width: none !important;
    margin: 1.75rem calc(-1 * var(--page-gutter)) 0 !important;
    padding: 0 5.5rem 0.2rem var(--page-gutter) !important;
    gap: 0 !important;
    background: transparent !important;
  }
  .ownership.investment-bg .investment-grid article,
  .investment-grid article {
    flex: 0 0 82vw !important;
    width: 82vw !important;
    max-width: 20rem !important;
    min-height: 16.5rem !important;
    margin: 0 !important;
    padding: 1.35rem 1.25rem !important;
    box-sizing: border-box !important;
    scroll-snap-align: start;
    border: 0 !important;
    border-right: 1px solid color-mix(in oklab, var(--ink) 12%, transparent) !important;
  }
  .ownership.investment-bg .investment-grid h3 {
    font-size: clamp(1.55rem, 6.5vw, 1.95rem) !important;
    margin: 1.1rem 0 .65rem !important;
  }

  .intro-points.icon-feature-grid,
  .icon-feature-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    align-items: stretch !important;
    padding-bottom: 0 !important;
    border-bottom: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent);
  }
  .icon-feature {
    flex: 0 0 82vw !important;
    width: 82vw !important;
    max-width: 20rem;
    min-height: 14.5rem;
    height: auto !important;
    align-self: stretch !important;
    padding: 1.25rem 1.2rem !important;
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: .7rem;
    box-sizing: border-box !important;
    border-right: 1px solid color-mix(in oklab, var(--sage-dim) 28%, transparent) !important;
  }
  .icon-feature .feature-icon {
    grid-row: auto !important;
    margin: 0 !important;
    flex: 0 0 auto;
  }
  .icon-feature h3,
  .icon-feature p {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .location-points .highlight-list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    grid-auto-rows: auto !important;
  }
  .location-points .highlight-list article,
  .location-points .highlight-list article.has-icon,
  .location-points .highlight-list article:nth-child(n) {
    flex: 0 0 82vw !important;
    width: 82vw !important;
    max-width: 20rem;
    min-height: 16.5rem !important;
    padding: 1.3rem 1.25rem !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
  }
  .location-points .highlight-list article.has-icon .feature-icon {
    margin: 0 0 .85rem !important;
  }
  .location-points .highlight-list h3,
  .location-points .place-copy,
  .location-points .place-distance {
    overflow-wrap: anywhere;
  }
}


