#mediaDialog{position:fixed;inset:0;margin:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;border:0;padding:0;background:#171b19;color:#fff;overflow:hidden;z-index:200}
#mediaDialog[open]{display:flex;flex-direction:column}
#mediaDialog::backdrop{background:rgba(0,0,0,.95)}
#mediaDialog button{background:#262c28;color:#fff;border:1px solid #687067;min-width:44px;min-height:44px;padding:10px 14px;font-size:12px;cursor:pointer}
#mediaDialog button:disabled{opacity:.35;cursor:default}
#mediaDialog button[aria-pressed="true"]{background:#d5b676;color:#202020;border-color:#d5b676}
#mediaDialog button:focus-visible{outline-color:#e5c88f}
.mediaToolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid #414a42;flex-shrink:0}
#mediaTitle{margin:0 0 5px;font-size:16px;line-height:1.4}
#mediaCounter{font-size:12px;color:#d3d5ce}
.mediaChoices{display:flex;gap:10px;padding:12px 24px;flex-wrap:wrap;flex-shrink:0}
.mediaChoices:empty{display:none}
.mediaStage{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:none;cursor:grab;user-select:none}
.mediaStage:active{cursor:grabbing}
#mediaImage{position:absolute;left:50%;top:50%;max-width:none;max-height:none;transform-origin:center;user-select:none;pointer-events:none}
#mediaLoading{position:absolute;inset:45% 0 auto;text-align:center;font-size:14px;pointer-events:none}
.mediaBottom{padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid #414a42;flex-shrink:0}
.mediaTools{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap}
#mediaZoom{font-size:12px;min-width:42px;text-align:center}
#mediaHelp{font-size:12px;text-align:center;color:#d3d5ce;margin:10px 0 0}

/* Navigation and responsive usability only; live content and original media retained. */
html{scroll-padding-top:105px}
body{line-height:1.55}
button,a{-webkit-tap-highlight-color:transparent}
button{font-family:inherit}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #8a7352;outline-offset:4px}
.siteHeader{position:sticky;top:0;left:auto;right:auto;z-index:40;background:#242827;padding:16px 5vw;min-height:82px;align-items:center;gap:20px}
.siteHeader .brand{font-size:24px;flex-shrink:0}
.nav{gap:22px}.nav a{font-size:13px;padding:12px 0}.nav .enquire{padding:14px 20px}
.menuToggle,.mobileEnquiry{display:none}
.hero{height:auto;min-height:620px;display:flex;align-items:center;padding:72px 5vw}
.heroCopy{position:relative;top:auto;left:auto;right:auto;width:100%;max-width:760px}
.vat{height:auto;min-height:54px;padding-top:10px;padding-bottom:10px}
.vat>*{min-width:0}.vat b{white-space:normal}
.section>*{min-width:0}
.row b,.stat b,.interior-spec b,.compareRow b,.compareRow.header,.priceLabel,.special b,.customise b,.lift b{font-size:14px}
.fine,.planFootnote,.interior-note,.metricNote{font-size:12px;line-height:1.6}
.card{min-height:0}.purchase{position:static;margin-top:26px}
.viewer.finalPlanViewer,.planStage.finalPlanStage{min-height:0}
.finalPlanStage img{height:auto;max-height:760px;transition:none}
.mediaExpand{display:block;margin-top:16px;padding:12px 18px;min-height:44px;border:1px solid #8a7352;background:transparent;color:#303735;font-size:14px;font-weight:700;cursor:pointer}
.tab,.closer-btn{min-height:44px;font-size:14px}
.interiors-main{min-height:0}.interiors-main img{height:auto;width:100%}
.film-section video{height:auto;aspect-ratio:16/9;object-fit:contain}
.contact-email,.map-primary-link{overflow-wrap:anywhere}
.mediaToolbar>div{min-width:0}#mediaTitle{overflow-wrap:anywhere}#mediaClose{flex-shrink:0}
.mediaChoices{max-height:25dvh;overflow:auto}.mediaStage{overscroll-behavior:contain}
@media(max-width:1280px){
 .menuToggle{display:block;background:transparent;color:white;border:1px solid #d5b676;padding:12px 16px;min-height:44px;font-size:14px}
 .nav{display:none}.nav.open{display:flex;position:absolute;top:100%;right:5vw;width:min(320px,90vw);max-height:calc(100dvh - 100px);overflow:auto;flex-direction:column;align-items:stretch;gap:0;padding:12px;background:#242827;box-shadow:0 14px 40px #0006}
 .nav.open a{padding:14px 18px}
 .project{grid-template-columns:1fr}
}
@media(max-width:980px){
 .hero{min-height:540px}.heroCopy{top:auto}
 .mobileEnquiry{display:block;position:fixed;bottom:max(16px,env(safe-area-inset-bottom));right:16px;z-index:15;background:#d5b676;color:#202020;padding:14px 20px;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 4px 20px #0003}
 .mobileEnquiry.is-hidden{visibility:hidden;pointer-events:none}
 .arch{height:auto;min-height:480px;display:flex;align-items:flex-end;padding:30px 5vw}
 .archPanel{position:relative;top:auto;right:auto;width:100%;max-width:515px;padding:26px}
 .archPanel h2{font-size:38px;margin:16px 0 24px}
 .google-map-embed iframe{min-height:0;height:380px}
 footer{padding-bottom:100px}
}
@media(max-width:600px){
 html{scroll-padding-top:90px}.siteHeader{min-height:74px;padding:12px 5vw;gap:12px}.siteHeader .brand{font-size:18px;letter-spacing:.16em;max-width:calc(100% - 86px)}.siteHeader .brand small{font-size:9px}
 .hero{min-height:0;padding:52px 5vw 44px;background-position:60% center}.heroCopy{top:auto}.hero h1{font-size:36px}.heroLead{font-size:20px}.heroSub{font-size:16px}.hero .eyebrow{margin-bottom:24px}
 .ctas{display:grid;grid-template-columns:1fr;gap:12px}.cta{min-height:48px;text-align:center;padding:15px 12px}
 .section{padding:44px 5vw}
 .project h2,.residences h2,.plans h2,.interiors-head h2,.closer-head h2,.location .intro-grid h2,.film-section .section-heading h2,.vat-section h2,.details h2,.contact-section h2{font-size:32px;line-height:1.15}
 .resHead,.plansHead,.interiors-head{gap:18px;margin-bottom:26px}
 .metrics{grid-template-columns:1fr 1fr}.metric{padding:18px 12px;min-height:125px}.metric span{font-size:13px}
 .card{width:100%;padding:24px 20px}.cards{gap:24px}.row{gap:12px}.row>span{text-align:right}
 .viewer{padding:10px}.finalPlanGrid{gap:28px}.finalPlanStage img{max-height:none}
 .controls{margin-bottom:20px}.group{display:flex;width:100%;flex-wrap:wrap;gap:6px}.tab{flex:1 1 85px;padding:12px 8px;font-size:13px}
 .compareRow{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:8px;font-size:14px}.compareRow b,.compareRow.header{font-size:12px}.compareRow>*{min-width:0;overflow-wrap:anywhere}
 .finalPlanExplanation h3,.interiors-copy h3{font-size:30px}
 .closer-controls{flex-wrap:wrap;gap:8px}.closer-btn{min-width:0;padding:12px 14px}
 .kitchen-thumbs{gap:7px}.kitchen-thumb{padding:3px;min-height:44px}
 .contact-card{padding:22px}.contact-email{font-size:22px}
 .google-map-embed iframe{height:320px}.vat{gap:6px 10px}.vatNote{font-size:12px}
 .mediaToolbar{padding:12px;gap:8px}.mediaChoices{padding:8px 12px;gap:6px}.mediaChoices button{flex:1 1 80px}.mediaTools{gap:6px}.mediaBottom{padding-left:8px;padding-right:8px}#mediaDialog button{padding:10px;font-size:12px}
}
@media(max-height:500px) and (orientation:landscape){.mediaToolbar{padding:6px 12px}.mediaChoices{padding:4px 12px}.mediaBottom{padding-top:4px;padding-bottom:4px}#mediaHelp{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
