/* Coming-soon presentation layer; analytics remains a separate consent-gated controller. */
@font-face{font-family:Manrope;src:url("assets/fonts/Manrope-Variable.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}
:root{--navy:#0c315a;--blue:#2566ee;--gold:#b16c13;--paper:#faf7f1}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper)}body{font-family:Manrope,Arial,sans-serif;color:var(--navy);-webkit-font-smoothing:antialiased}
.page{position:relative;width:100%;min-height:100svh;aspect-ratio:1486/1059;container-type:inline-size;background:url("assets/architecture-background.webp") center center/cover no-repeat}
.masthead{position:absolute;left:4.65%;top:7.1%;width:29.3%}.wordmark{display:block;width:100%;height:auto}
.announcement{position:absolute;inset:0;pointer-events:none}.announcement>*{pointer-events:auto}
.eyebrow{position:absolute;left:4.65%;top:26.05%;margin:0;color:var(--gold);font-size:1.88cqw;line-height:1.4;font-weight:800;letter-spacing:.34cqw;text-transform:uppercase}
.eyebrow:after{content:"";display:block;width:4.4cqw;border-bottom:1px solid var(--gold);margin-top:1.05cqw}
h1{position:absolute;left:4.2%;top:35.25%;margin:0;font-weight:750;font-size:6.04cqw;letter-spacing:-.32cqw;line-height:1.14}h1 span{display:block;white-space:nowrap}.accent{color:var(--blue)}
.description{position:absolute;left:4.65%;top:57.65%;margin:0;font-size:2.68cqw;font-weight:400;line-height:1.34;letter-spacing:0}
.notice{position:absolute;left:4.65%;top:75.8%;margin:0;font-size:1.8cqw;line-height:1.5;font-weight:400;letter-spacing:-.025cqw}
footer{position:absolute;left:4.65%;bottom:5.05%;font-size:1.08cqw;line-height:1.5;letter-spacing:.065cqw}
.mobile-scene{display:none}
.privacy-controls{position:fixed;z-index:5;right:18px;bottom:18px;width:min(350px,calc(100vw - 36px));padding:14px 16px;background:rgba(250,247,241,.97);border:1px solid rgba(12,49,90,.22);border-radius:10px;box-shadow:0 8px 28px rgba(12,49,90,.12);font:13px/1.45 Manrope,Arial,sans-serif;color:var(--navy)}
.privacy-controls p{margin:0 0 10px}
.privacy-actions,.privacy-saved{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.privacy-controls button{font:600 12px/1.2 Manrope,Arial,sans-serif;padding:8px 10px;border:1px solid var(--navy);border-radius:6px;color:var(--navy);background:transparent;cursor:pointer}
.privacy-controls button[data-analytics-choice="granted"]{background:var(--navy);color:white}
.privacy-controls button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.privacy-saved{justify-content:space-between}
.privacy-saved[hidden]{display:none}
@media(min-aspect-ratio:2/1){.page{min-height:0}}
@media(max-width:700px){
 .page{aspect-ratio:auto;min-height:100svh;background-image:none;background-color:var(--paper);padding:32px 24px 24px}
 .masthead{position:static;width:210px;max-width:75%}
 .announcement{position:relative;inset:auto;margin-top:64px}
 .eyebrow,h1,.description,.notice{position:static}
 .eyebrow{font-size:18px;letter-spacing:3.3px;line-height:1.4;margin-bottom:38px}.eyebrow:after{width:50px;margin-top:14px}
 h1{font-size:clamp(32px,8.6vw,55px);letter-spacing:-1.5px;line-height:1.16;margin-bottom:28px}h1 span{white-space:normal}
 .description{font-size:20px;letter-spacing:-.4px;line-height:1.5;max-width:420px}.desktop-break{display:none}
 .notice{font-size:16px;letter-spacing:0;line-height:1.6;margin-top:32px;max-width:300px}
 .mobile-scene{display:block;width:calc(100% + 48px);max-width:none;height:300px;object-fit:cover;object-position:right bottom;margin:38px -24px 0}
 footer{position:static;font-size:12px;letter-spacing:.5px;margin-top:22px}
 .privacy-controls{right:12px;bottom:12px;width:calc(100vw - 24px)}
}
@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.page{min-height:0}}
.privacy-controls [hidden] { display: none !important; }
