/* Bay Estate — off-plan template V3 (Salescentre-style structure on Bay Estate tokens). LOCAL PREVIEW. */
:root{--dark:#26302b;--dark-2:#303b35;--sand:#e9e1d3;--paper:#fffdf8;--r:2px}
body.v3{background:var(--paper)}
.chip{display:inline-block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;padding:6px 10px;background:var(--sand);color:var(--brown);margin:0 0 18px}
.chip.dark{background:rgba(241,236,227,.1);color:#e2d6bd}
.text-link{font-size:13px;color:var(--brown);border-bottom:1px solid currentColor;padding-bottom:2px;align-self:center}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:center}
.button.ghost{background:transparent;color:var(--brown)}
.button.ghost:hover{background:var(--sand)}
.button.wa-btn{background:#25d366;border-color:#25d366;color:#063a1d;justify-content:center;gap:10px}
.button.wa-btn svg{width:20px;height:20px}
.button.wa-btn:hover{background:#1fbe5b}
.ticks{list-style:none;padding:0;margin:22px 0 28px;display:grid;gap:12px}
.ticks li{position:relative;padding-left:28px;font-size:14px;color:var(--ink);line-height:1.55}
.ticks li:before{content:'';position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:var(--brown);-webkit-mask:none}
.ticks li:after{content:'';position:absolute;left:5px;top:7px;width:6px;height:3px;border-left:1.6px solid #fff;border-bottom:1.6px solid #fff;transform:rotate(-45deg)}
.band-head{max-width:1600px;margin:0 auto 38px}
.band-head h2{margin:0}
.band-head.row{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:10px 60px}
.band-head.row .chip{grid-column:1/-1;justify-self:start}
.band-head.row>p{font-size:15px;max-width:520px;justify-self:end}
.band-head.center{text-align:center;max-width:760px}
.band-head.center p:not(.chip){margin-top:16px;font-size:15px}
.band-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:30px}
.band-foot.center{flex-direction:column;justify-content:center}
.band-foot .footnote{margin:0}

/* header */
#site-header.v3{background:rgba(255,253,248,.96);backdrop-filter:blur(8px)}
.header-actions{display:flex;gap:10px}
.header-btn{min-height:42px!important;padding:10px 16px!important;font-size:12px!important;gap:8px!important}
.header-btn.light{background:var(--paper);border-color:var(--line);color:var(--ink)}
.header-btn.light:hover{border-color:var(--brown)}
@media(max-width:1180px){.header-actions .light{display:none}}
@media(max-width:900px){.header-actions{display:none}}

/* hero */
.hero.v3 .hero-media{height:min(86vh,820px);min-height:560px}
.hero.v3 .hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,24,21,.15) 0%,rgba(20,24,21,.05) 35%,rgba(20,24,21,.62) 100%);pointer-events:none}
.hero-overlay{position:absolute;left:0;right:0;bottom:64px;z-index:2;text-align:center;padding:0 24px;color:#fff;display:flex;flex-direction:column;align-items:center}
.hero-overlay h1{color:#fff;font-size:clamp(52px,7vw,104px);line-height:.95;letter-spacing:-1.5px;text-shadow:0 2px 30px rgba(0,0,0,.25)}
.hero-overlay h1 span{display:block;font:13px/1.4 var(--sans);letter-spacing:2.4px;text-transform:uppercase;margin-top:18px;color:#f1ece3}
.hero-chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:22px}
.hero-chips span{font-size:12px;padding:7px 12px;border:1px solid rgba(255,255,255,.45);background:rgba(20,24,21,.25);color:#fff;backdrop-filter:blur(6px)}
.hero-sub{color:#f1ece3;font-size:16px;max-width:520px;margin-top:18px}
.hero-ctas{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;justify-content:center}
.hero-ctas .button{min-width:220px;justify-content:center}
.hero-ctas .button.light{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.hero.v3 .hero-gallery-bar{display:none}

/* overview + fact panel */
.ov3{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);border-bottom:1px solid var(--line)}
.ov3-text{padding:96px clamp(24px,5vw,88px);max-width:760px;justify-self:end;width:100%}
.ov3-text h2{margin-bottom:22px}
.ov3-text p:not(.chip){font-size:16px;margin-bottom:14px;max-width:600px}
.fact-panel{margin:0;background:var(--sand);display:grid}
.fact-panel>div{padding:34px clamp(24px,4vw,64px);border-bottom:1px solid #d6cab4}
.fact-panel>div:last-child{border-bottom:0}
.fact-panel dt{font-size:12px;letter-spacing:.6px;color:var(--ink);margin-bottom:6px}
.fact-panel dd{margin:0}
.fact-panel strong{display:block;font:400 clamp(36px,3.6vw,54px)/1.05 var(--serif);color:var(--brown);letter-spacing:-.5px}
.fact-panel small{display:block;font-size:12px;color:#5d5e55;margin-top:8px}

/* dark bands + carousels */
.dark-band{background:var(--dark);color:#f1ece3;padding:96px clamp(24px,5vw,88px)}
.dark-band h2,.dark-band h3{color:#f6f1e7}
.dark-band p{color:#cfd0c6}
.dark-band .footnote{color:#aeb0a5}
.carousel{position:relative;max-width:1600px;margin:0 auto}
.track{list-style:none;margin:0;padding:0 0 6px;display:grid;grid-auto-flow:column;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.track::-webkit-scrollbar{display:none}
.track li{scroll-snap-align:start}
.track img{display:block;width:100%;height:100%;object-fit:cover}
.gal3 .track{grid-auto-columns:min(64%,980px)}
.gal3 .track li{position:relative;aspect-ratio:16/9;overflow:hidden}
.gal3 .track li p{position:absolute;left:16px;bottom:14px;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:#fff;background:rgba(20,24,21,.45);padding:6px 10px;margin:0}
.car-nav{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}
.car-nav button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(241,236,227,.5);background:transparent;color:#f1ece3;font-size:17px}
.car-nav button:hover{background:#f1ece3;color:var(--dark)}
.feat3 .track{grid-auto-columns:calc((100% - 36px)/3.25)}
.feat3 .track li{display:flex;flex-direction:column;gap:14px}
.feat3 .track li img{aspect-ratio:16/10;height:auto}
.feat3 .track h3{font-size:26px;margin-top:6px}
.feat3 .track p{font-size:14px;max-width:420px}
.feat3 .band-head.row{grid-template-columns:1fr}

/* split blocks */
.split{display:grid;grid-template-columns:1fr 1fr}
.split-text{padding:96px clamp(24px,5vw,88px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.split-text h2{margin-bottom:18px}
.split-text>p:not(.chip){font-size:16px;max-width:520px}
.split-media{position:relative;overflow:hidden;min-height:440px}
.split-media.sand{background:var(--sand)}
.split-media>picture img,.split-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.covers{position:absolute;inset:0;display:grid;place-items:center}
.cover{position:absolute;width:62%;height:auto;box-shadow:0 30px 60px rgba(40,30,15,.28),0 4px 12px rgba(40,30,15,.18)}
.cover.c1{transform:translate(-6%,8%) rotate(-5deg)}
.cover.c2{transform:translate(10%,-14%) rotate(4deg);filter:saturate(.9)}

/* payment */
.pay3{border-top:1px solid var(--line)}
.big-rows{display:grid;align-content:center}
.big-rows>div{display:flex;align-items:center;gap:28px;padding:34px clamp(24px,4vw,64px);border-bottom:1px solid #d6cab4}
.big-rows>div:last-child{border-bottom:0}
.big-rows strong{font:400 clamp(48px,4.6vw,68px)/1 var(--serif);color:var(--brown);min-width:130px}
.big-rows span{font-size:13px;color:#5d5e55;display:grid;gap:4px}
.big-rows b{font:400 24px/1.2 var(--serif);color:var(--ink)}
.schedule{max-width:1600px;margin:0 auto;padding:56px clamp(24px,5vw,88px) 90px}
.schedule h3{font-size:28px;margin-bottom:6px}
.schedule .plan-tabs{margin-top:16px}

/* lifestyle */
.life3{text-align:center}
.life3 h2{max-width:760px;margin:0 auto}
.life3 .chip{margin-bottom:18px}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1100px;margin:44px auto 52px;text-align:left}
.trio>div{border-top:1px solid rgba(241,236,227,.3);padding-top:16px}
.trio h3{font-size:28px;margin-bottom:8px}
.trio p{font-size:14px}
.life3>img{width:100%;max-width:1600px;margin:0 auto;aspect-ratio:2.6;object-fit:cover}

/* units */
.units3{max-width:1600px}
.unit-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px}
.unit{grid-column:span 2;background:var(--sand);display:flex;flex-direction:column}
.unit:nth-child(4),.unit:nth-child(5){grid-column:span 3}
.unit-img{display:block;overflow:hidden;aspect-ratio:16/10}
.unit-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.unit-img:hover img{transform:scale(1.03)}
.unit-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.unit-body .eyebrow{margin-bottom:8px;font-size:9px}
.unit-title{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.unit-title h3{font-size:25px}
.unit-title span{font-size:12px;color:var(--ink);white-space:nowrap}
.unit-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:10px 0 20px;font-size:12px;color:#5d5e55}
.unit-meta span+span:before{content:'·';margin-right:14px;color:#b9ab92}
.unit-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px}
.unit-foot .button{min-height:46px;padding:12px 18px}
.unit-foot p{text-align:right;font:400 22px/1.1 var(--serif);color:var(--brown)}
.unit-foot small{display:block;font:11px/1.4 var(--sans);color:#5d5e55;letter-spacing:.4px}
body.v3 .plots{margin-top:0}
body.v3 .prices{border-top:0}

/* floor plans */
.fp3{padding:0}
.fp3 .split-media{min-height:520px}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 26px}
.pill{font-size:13px;padding:10px 16px;border:1px solid rgba(241,236,227,.4);color:#f1ece3}
.pill:hover{background:#f1ece3;color:var(--dark)}
.fp3 .button.light,.sales-band .button.light,.gal3 .button.light{background:#f1ece3;border-color:#f1ece3;color:var(--dark)}

/* location */
.loc3{max-width:1600px}
.loc-figure{margin:0;position:relative}
.loc-figure picture img,.loc-figure>img{width:100%;aspect-ratio:2.35;object-fit:cover;display:block}
.drive-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);background:var(--sand)}
.drive-strip li{padding:18px 14px;text-align:center;border-left:1px solid #d6cab4;display:grid;gap:4px}
.drive-strip li:first-child{border-left:0}
.drive-strip strong{font:400 26px/1.1 var(--serif);color:var(--brown)}
.drive-strip span{font-size:12px;color:var(--ink)}
.loc3 .band-foot{margin-top:22px}

/* amenities */
.am3{max-width:none;background:var(--sand)}
.am3>*{max-width:1600px;margin-left:auto;margin-right:auto}
.am-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.am{display:flex;gap:16px;background:var(--paper);padding:24px}
.am svg{flex:0 0 20px;width:20px;height:20px;color:var(--brown);margin-top:6px}
.am h3{font-size:22px;margin-bottom:6px}
.am p{font-size:13px;color:#55564d}

/* sales band */
.sales-band{background:var(--dark-2);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:64px clamp(24px,5vw,88px);flex-wrap:wrap}
.sales-band h2{color:#f6f1e7;margin-bottom:10px}
.sales-band p:not(.chip){color:#cfd0c6;font-size:15px;max-width:560px}
.sales-band .cta-row{margin:0}

/* EOI band in v3 */
.eoi.v3{background:var(--green)}
.eoi.v3 h2,.eoi.v3 h3{color:#f6f1e7}
.eoi.v3 p{color:#d9dccf}
.eoi.v3 .eoi-steps li{border-top-color:rgba(241,236,227,.25)}
.eoi.v3 .eoi-steps .n{color:#e2d6bd}
.eoi.v3 .chip{background:rgba(241,236,227,.1);color:#e2d6bd}
.eoi.v3 .eoi-head .button.light{background:#f1ece3;border-color:#f1ece3;color:var(--dark)}

/* developer */
.dev3{max-width:1600px}
.dev-intro{display:grid;gap:14px;justify-items:start}
.dev-intro img{max-width:240px;height:auto}
.dev-intro p{font-size:15px;max-width:520px}
.dev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}
.dev-card{background:var(--sand);padding:26px}
.dev-card h3{font-size:26px;margin-bottom:8px}
.dev-card p{font-size:14px;color:#55564d}
.dev-img{width:100%;aspect-ratio:2.6;object-fit:cover}

/* FAQ in v3 */
body.v3 .faq details{background:var(--sand);border:0;margin-bottom:10px;padding:0 24px}
body.v3 .faq summary{padding:22px 40px 22px 0}
body.v3 .faq{max-width:1100px}

/* contact */
.contact3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(30px,5vw,80px);background:var(--sand);padding:96px clamp(24px,5vw,88px);align-items:start}
.contact-text{max-width:560px;justify-self:end}
.contact-text h2{margin-bottom:14px}
.contact-text>p:not(.chip):not(.small-print){font-size:16px}
.small-print{font-size:12px;color:#5d5e55;margin:0 0 20px}
.contact3 .campaign-enquiry{max-width:560px}

/* sticky bar (desktop) */
@media(min-width:901px){
 .mobile-dock.v3{position:fixed;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;padding:12px clamp(24px,5vw,88px);background:rgba(255,253,248,.97);border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(40,30,15,.06);z-index:30}
 .mobile-dock.v3 .dock-price{margin-right:auto;font-size:13px;color:var(--ink)}
 .mobile-dock.v3 .dock-price b{font:400 18px var(--serif);color:var(--brown);margin-right:4px}
 .mobile-dock.v3 .button{width:auto;min-height:44px;padding:10px 20px;flex:0 0 auto}
 body.v3 footer{padding-bottom:110px}
}
@media(max-width:900px){.dock-price{display:none}}

/* responsive */
@media(max-width:1100px){
 .feat3 .track{grid-auto-columns:calc((100% - 18px)/2.15)}
 .am-grid{grid-template-columns:1fr 1fr}
 .drive-strip{grid-template-columns:repeat(4,1fr)}
 .drive-strip li:nth-child(5){border-left:0}
 .unit-grid{grid-template-columns:1fr 1fr}
 .unit,.unit:nth-child(4),.unit:nth-child(5){grid-column:auto}
}
@media(max-width:760px){
 .hero.v3 .hero-media{height:78vh;min-height:520px}
 .hero-overlay{bottom:34px}
 .hero-overlay h1 span{font-size:11px;letter-spacing:1.6px}
 .hero-sub{font-size:14px}
 .hero-ctas{flex-direction:column;width:100%;max-width:340px}
 .hero-ctas .button{width:100%}
 .ov3,.split,.contact3{grid-template-columns:1fr}
 .ov3-text,.split-text{padding:58px 22px}
 .fact-panel>div{padding:22px}
 .dark-band{padding:58px 22px}
 .band-head.row{grid-template-columns:1fr}
 .band-head.row>p{justify-self:start}
 .gal3 .track{grid-auto-columns:86%}
 .feat3 .track{grid-auto-columns:82%}
 .split-media{min-height:300px}
 .cover{width:72%}
 .big-rows>div{padding:22px;gap:18px}
 .big-rows strong{min-width:86px}
 .schedule{padding:40px 22px 60px}
 .trio{grid-template-columns:1fr;gap:22px}
 .life3>img{aspect-ratio:1.5}
 .unit-grid{grid-template-columns:1fr}
 .unit-foot{flex-direction:row}
 .fp3 .split-media{min-height:280px}
 .loc-figure picture img{aspect-ratio:1.5}
 .drive-strip{grid-template-columns:1fr 1fr}
 .drive-strip li{border-left:0;border-top:1px solid #d6cab4;text-align:left;padding:14px 16px}
 .drive-strip li:nth-child(even){border-left:1px solid #d6cab4}
 .am-grid{grid-template-columns:1fr}
 .sales-band{padding:50px 22px}
 .sales-band .cta-row{width:100%;flex-direction:column}
 .sales-band .button{width:100%;justify-content:center}
 .dev-grid{grid-template-columns:1fr}
 .contact3{padding:58px 22px}
 .contact-text{justify-self:start}
 body.v3 .faq details{padding:0 16px}
}
/* fold fixes */
.hero.v3 .hero-media{height:clamp(520px,calc(100vh - 170px),780px)}
.hero.v3 .hero-media:after{background:linear-gradient(180deg,rgba(20,24,21,.10) 0%,rgba(20,24,21,.12) 30%,rgba(20,24,21,.72) 78%,rgba(20,24,21,.82) 100%)}
.hero-overlay{bottom:48px}
.header-btn span{font-size:12px!important}
.header-btn svg{width:18px!important;height:18px!important}
@media(min-width:901px){.mobile-dock.v3{transition:transform .3s}.mobile-dock.v3.at-top{transform:translateY(110%)}}
.loc-figure img{height:auto!important;aspect-ratio:16/8!important}@media(max-width:760px){.loc-figure img{aspect-ratio:1.4!important}}
.am3 .chip,.contact3 .chip{background:var(--paper)}
.dev-img,.life3>img,.feat3 .track img{height:auto!important}
.dev-img{aspect-ratio:2.8!important}
.life3>img{aspect-ratio:2.6!important}
@media(max-width:760px){.dev-img,.life3>img{aspect-ratio:1.5!important}}
@media(max-width:900px){.mobile-dock.v3{transition:transform .3s}.mobile-dock.v3.at-top{transform:translateY(120%)}.hero.v3 .hero-media{height:calc(100svh - 200px);min-height:500px}}
.schedule #plan-0 .plan-summary{display:none}
