/* The house stays visible while ordinary page scrolling reveals its lights. */
.hero-track{height:290vh;height:290svh;position:relative}
.hero{position:sticky;top:0;height:100vh;height:100svh;min-height:650px;overflow:hidden;background:#0a1117;isolation:isolate}
.scene-atmosphere{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 22%,#173a5a70,transparent 68%),linear-gradient(180deg,#0b1928 0%,#08121b 64%,#0a1117 100%)}
.scene{position:absolute;width:min(184vw,174svh);aspect-ratio:1.5;left:50%;top:54%;transform:translate(-65%,-50%) scale(var(--scene-scale,1.24));transform-origin:65% 50%;will-change:transform;mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 89%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 14%,#000 94%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 89%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 14%,#000 94%,transparent 100%);-webkit-mask-composite:source-in}
.house-base,.house-lights{position:absolute;inset:0;width:100%;height:100%}.house-base{object-fit:fill}.house-dimmer{position:absolute;inset:0;background:#02070b;opacity:.46;pointer-events:none;transition:opacity .35s ease}.house-lights{overflow:visible}.window-dark{fill:#071019;opacity:.95;transition:opacity .38s ease}.window-dark.is-on{opacity:0}.window-crop,.window-glow{opacity:0;transition:opacity .38s ease}.window-crop.is-on{opacity:1}.window-glow{fill:#ffbb56}.window-glow.is-on{opacity:.5}.window-glow.is-latest{opacity:.78}
.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,#0a1117 0%,#0a1117b0 11%,transparent 34%,transparent 77%,#0a1117a8 100%)}.hero-intro-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#070d12c7,transparent 70%)}
.hero-copy{position:absolute;z-index:3;top:26%;left:var(--page-pad);right:var(--page-pad);opacity:var(--intro-opacity,1);transform:translateY(var(--intro-lift,0px))}.hero-copy[aria-hidden=true]{visibility:hidden;pointer-events:none}.hero .eyebrow{color:var(--gold-light);font-size:14px;letter-spacing:.045em;margin-bottom:24px}.hero h1{font-size:clamp(63px,6.1vw,112px);line-height:1.04;letter-spacing:-.06em;white-space:nowrap;font-weight:450}.hero h1 em{letter-spacing:-.065em}.hero-description{font-size:20px;color:#bdc6cb;line-height:1.75;margin-top:30px}
.journey-caption{position:absolute;z-index:3;left:var(--page-pad);right:var(--page-pad);top:10.5%;text-align:center;pointer-events:none;opacity:var(--caption-opacity,0);transform:translateY(var(--caption-lift,18px))}.journey-caption[aria-hidden=true]{visibility:hidden}.journey-kicker{font-size:clamp(17px,1.4vw,24px);font-weight:500;color:var(--gold-light);letter-spacing:.015em;margin-bottom:16px;line-height:1.6}.journey-caption h2{font-size:clamp(42px,4.2vw,68px);line-height:1.1;letter-spacing:-.055em;text-shadow:0 2px 30px #000b}.journey-caption h2>span{display:block}.journey-caption em{display:block;font-size:.79em;line-height:1.16;max-width:27ch;margin:10px auto 0;text-wrap:balance}.journey-caption[data-phase="3"] .journey-kicker{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(21px,1.7vw,29px);letter-spacing:-.02em}
@media(min-width:2000px){.hero-copy{left:max(var(--page-pad),calc((100vw - 2100px)/2));top:29%}.hero h1{font-size:clamp(112px,5.2vw,158px)}.hero-description{font-size:24px}.hero .eyebrow{font-size:17px}.scene{width:174svh;top:54%;mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 84%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 14%,#000 94%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 84%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 14%,#000 94%,transparent 100%)}.journey-caption h2{font-size:82px}.journey-kicker{font-size:26px}}
@media(max-width:1100px) and (min-width:761px){.hero-copy{top:26%}.hero h1{font-size:clamp(58px,7.2vw,80px)}.hero-description{font-size:19px}.journey-caption{top:13%}.journey-caption h2{font-size:53px}}
@media(max-width:760px){.hero{height:100vh;height:100svh;min-height:620px}.scene{width:184vw;top:61%;left:50%;transform:translate(-65%,-50%) scale(var(--scene-scale,1.24));mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 93%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 13%,#000 88%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 93%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 13%,#000 88%,transparent 100%)}.hero-shade{background:linear-gradient(0deg,#0a1117 0%,#0a1117d0 12%,transparent 35%,transparent 54%,#0a111770 69%,#0a1117ed 100%),linear-gradient(90deg,#0a111735,transparent 60%)}.hero-copy{top:155px;left:var(--page-pad);right:var(--page-pad)}.hero .eyebrow{font-size:11px;margin-bottom:21px;letter-spacing:.02em}.hero h1{font-size:clamp(42px,11.7vw,74px);line-height:1.06;letter-spacing:-.06em}.hero-description{font-size:17px;line-height:1.75;margin-top:24px}.journey-caption{top:112px;left:var(--page-pad);right:var(--page-pad);text-align:left}.journey-kicker{font-size:18px;margin-bottom:17px;line-height:1.5}.journey-caption h2{font-size:clamp(36px,9.9vw,53px);line-height:1.1;letter-spacing:-.055em}.journey-caption em{font-size:.84em;max-width:23ch;margin:13px 0 0;line-height:1.2;text-wrap:balance}.journey-caption[data-phase="3"] .journey-kicker{font-size:22px}}
@media(max-width:360px){.hero h1{font-size:38px}.hero-copy{top:149px}.hero .eyebrow{font-size:10px}.hero-description{font-size:16px}.journey-caption h2{font-size:35px}.journey-caption em{font-size:.84em}.journey-kicker{font-size:17px}}
@media(max-height:700px) and (min-width:761px){.hero{min-height:560px}.hero-copy{top:26%}.hero h1{font-size:clamp(52px,5.7vw,78px)}.hero-description{font-size:17px;margin-top:22px}.journey-caption{top:12%}.journey-caption h2{font-size:46px}.journey-kicker{font-size:18px;margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.hero-track{height:auto;min-height:0}.hero{position:relative}.scene{transform:translate(-65%,-50%) scale(.98);will-change:auto}.hero-copy{opacity:1;transform:none}.journey-caption{display:none}}

/* Mobile Safari: one static house layer, no composited masks or SVG blur. */
@media(max-width:760px),(hover:none) and (pointer:coarse){.scene{transform:translate(-65%,-50%) scale(1.1);will-change:auto;mask-image:none;-webkit-mask-image:none}.scene:after{content:"";position:absolute;inset:-1px;pointer-events:none;background:linear-gradient(90deg,#0a1117,transparent 12%,transparent 91%,#0a1117),linear-gradient(0deg,#0a1117,transparent 15%,transparent 91%,#0a1117)}#glow-shapes{display:none}.hero-intro-shade{display:none}.window-dark,.window-crop{transition:none}.mobile-nav{background:#111a20;backdrop-filter:none}}
