/* The architecture is the page, not a card inside it. */
.home-page{background:#f1f0e9}.home-page>.notice{position:absolute;inset:0 0 auto;z-index:60;background:transparent;color:#fff9;font-size:8px}.home-page>.notice span{font-size:9px}.home-page>header{position:absolute;inset:24px 0 auto;z-index:60;max-width:none;width:100%;color:white;border-bottom:1px solid #ffffff35;min-height:105px;padding:0 4.2vw}.home-page .brand-icon{color:#dbe2ce}.home-page header a:hover{color:#dddcc7}.home-page nav .dropdown{color:#252820;background:#f3f1e9}.home-page nav>a,.home-page nav summary{font-size:12px}.journey{position:relative;height:430svh;background:#1c211d;isolation:isolate}.journey-stage{position:sticky;top:0;height:100svh;min-height:560px;overflow:hidden;color:#fff}.journey-poster,.journey-film,.journey-shade{position:absolute;inset:0;width:100%;height:100%;margin:0}.journey-poster img{width:100%;height:100%;object-fit:cover;object-position:55% 50%;display:block}.journey-film{object-fit:cover;object-position:55% 50%;opacity:0;pointer-events:none}.journey-film.has-frame{opacity:1}.journey-poster.film-ready{visibility:hidden}.journey-shade{background:linear-gradient(180deg,#08120d66 0%,transparent 30%,#0b171424 50%,#071610ad 100%),linear-gradient(90deg,#0e1c174d,transparent 80%);pointer-events:none}.journey-chapters{position:absolute;inset:0}.journey-chapter{position:absolute;bottom:18%;left:4.2vw;max-width:850px;opacity:0;visibility:hidden;transform:translateY(20px);transition:visibility .2s,transform .7s}.journey-chapter.is-active{opacity:1;visibility:visible;transform:none}.film-kicker{font-size:9px;letter-spacing:2.2px;color:#f1f0dc;margin:0 0 25px}.journey h1,.journey h2{color:#fff;font-size:clamp(75px,8.5vw,154px);line-height:.91;letter-spacing:-.067em;font-weight:400;margin:0 0 27px;text-shadow:0 2px 30px #0002}.journey h2{font-size:clamp(64px,7.2vw,125px)}.film-deck{font-size:15px;color:#f0f1e7;line-height:1.7;max-width:380px;margin:0}.film-link{display:inline-flex;gap:45px;margin-top:26px;padding:8px 0;border-bottom:1px solid #fffa;text-decoration:none;color:white;font-size:12px}.film-link:hover{color:#fff}.film-link span{font-size:18px}.journey-bottom{position:absolute;bottom:55px;left:4.2vw;right:4.2vw;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:9px;letter-spacing:1.3px}.scroll-invitation{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none}.scroll-line{display:block;width:1px;height:40px;background:#fff7;position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;inset:0;background:#fff;transform:translateY(-100%);animation:scroll-cue 2.4s infinite}.journey-progress{display:flex;align-items:center;gap:13px;font-size:10px;font-variant-numeric:tabular-nums}.progress-track{display:block;width:110px;height:1px;background:#ffffff50}.progress-track i{display:block;width:100%;height:1px;background:#fff;transform:scaleX(0);transform-origin:left}.skip-film{text-decoration:none;color:#fff;letter-spacing:.3px;font-size:12px}.journey-tools{position:absolute;bottom:16px;right:4.2vw;left:4.2vw;display:flex;justify-content:space-between;font-size:7px;letter-spacing:1.3px;color:#fff9}.motion-toggle{background:none;border:0;border-bottom:1px solid #ffffff70;color:#fff;padding:3px 0;font-size:9px;letter-spacing:.3px}.journey-anchor{position:absolute;top:130svh;left:0;width:1px;height:1px;pointer-events:none}.material-intro{padding-top:110px;padding-bottom:110px;text-align:center;max-width:1260px}.material-intro .eyebrow{font-size:9px;letter-spacing:2px}.material-intro h2{font-size:clamp(36px,4.8vw,72px);line-height:1.14;letter-spacing:-.05em;margin:28px 0 32px}.material-intro>p:last-child{font-size:14px;color:#6e7165;max-width:370px;margin:auto}.home-page .service-section{padding-top:70px;padding-bottom:100px}.home-page .service-section h2{font-size:48px}.home-page .reading{background:#e7e8df;max-width:none;padding-left:max(4.2vw,calc((100vw - 1440px)/2));padding-right:max(4.2vw,calc((100vw - 1440px)/2));grid-template-columns:260px minmax(0,790px)}.service-architecture{position:relative;margin:0 0 45px;width:100%;height:65vh;min-height:430px;max-height:800px;overflow:hidden;background:#263028}.service-architecture img{width:100%;height:100%;object-fit:cover}.service-architecture:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,#112219a6)}.service-architecture figcaption{position:absolute;z-index:1;bottom:40px;left:4.2vw;right:4.2vw;color:#fff;display:grid;gap:12px}.service-architecture figcaption>span{font-size:9px;text-transform:uppercase;letter-spacing:2px}.service-architecture strong{font-size:clamp(36px,5vw,75px);font-weight:400;line-height:1;letter-spacing:-.05em}.service-architecture small{font-size:9px;color:#fff9}.inner-page .page-hero{padding-top:35px;padding-bottom:40px}.inner-page .page-hero h1{font-size:clamp(44px,5vw,75px);margin:0 0 22px}.inner-page .breadcrumb{margin-bottom:28px}.inner-page .page-hero .lead{font-size:15px}.inner-page .page-hero .eyebrow{margin-bottom:20px}@keyframes scroll-cue{to{transform:translateY(100%)}}
/* Without script the full story remains readable, with a single still. */
.journey:not(.cinema-enhanced){height:auto;min-height:100svh}.journey:not(.cinema-enhanced) .journey-stage{height:auto;min-height:100svh;padding-top:190px;padding-bottom:150px}.journey:not(.cinema-enhanced) .journey-chapters{position:relative}.journey:not(.cinema-enhanced) .journey-chapter{position:relative;left:auto;bottom:auto;visibility:visible;opacity:1;transform:none;padding:40px 5vw}.journey:not(.cinema-enhanced) .journey-progress{display:none}.motion-disabled .scroll-line:after{animation:none}
@media(min-width:1800px){.journey-chapter{bottom:20%}}
@media(max-width:800px){.home-page>header{min-height:110px;align-items:flex-start;justify-content:center;gap:10px;padding:16px 24px}.home-page nav{width:auto;gap:23px;justify-content:flex-start}.home-page .brand{font-size:18px}.home-page>.notice .wrap{padding-left:24px;padding-right:24px}.journey-chapter{left:24px;right:24px;bottom:22%;max-width:600px}.journey h1{font-size:99px}.journey h2{font-size:79px}.journey-bottom,.journey-tools{left:24px;right:24px}.journey-poster img,.journey-film{object-position:54% 50%}.journey-shade{background:linear-gradient(180deg,#07170b8c 0%,transparent 33%,#0a180d40 50%,#071610d4 100%)}.material-intro{padding-top:75px;padding-bottom:75px}.home-page .reading{display:block;padding:45px 24px}.service-architecture{height:65svh;min-height:400px}}
@media(max-width:500px){.home-page>header{top:20px;min-height:111px;gap:14px;padding:15px 22px}.home-page>.notice .wrap{padding:0 22px}.home-page nav{gap:16px;flex-wrap:nowrap}.home-page nav>a,.home-page nav summary{font-size:10px;white-space:nowrap}.home-page .brand{font-size:18px}.home-page .brand small{font-size:7px}.journey{height:400svh}.journey-stage{min-height:600px}.journey-chapter{left:22px;right:18px;bottom:20%}.journey h1{font-size:clamp(60px,17vw,84px);letter-spacing:-.06em;margin-bottom:25px}.journey h2{font-size:clamp(58px,16vw,78px);margin-bottom:22px}.film-kicker{font-size:7px;letter-spacing:1.4px;max-width:280px;margin-bottom:23px}.film-deck{font-size:12px;max-width:270px}.film-link{margin-top:18px;font-size:11px}.journey-bottom{left:22px;right:22px;bottom:57px;gap:15px}.scroll-invitation{font-size:7px;letter-spacing:1px;gap:9px}.journey-progress{gap:8px;font-size:8px}.progress-track{width:48px}.skip-film{font-size:10px}.journey-tools{left:22px;right:22px;font-size:6px;letter-spacing:.9px}.motion-toggle{min-height:28px;font-size:9px}.journey-poster img,.journey-film{object-position:57% 50%}.material-intro h2{font-size:37px}.material-intro .eyebrow{font-size:7px}.material-intro>p:last-child{font-size:13px}.material-intro{padding:65px 22px}.home-page .service-section{padding-top:45px;padding-bottom:65px}.home-page .service-section h2{font-size:42px}.service-architecture{height:62svh;min-height:380px}.service-architecture img{object-position:57% center}.service-architecture figcaption{left:22px;bottom:28px}.service-architecture small{font-size:8px}.service-architecture strong{font-size:45px}}
@media(prefers-reduced-motion:reduce){.scroll-line:after{animation:none}.journey-chapter{transition:none}}

.journey h1 span{display:block;white-space:nowrap}

.journey-detail-anchor{position:absolute;top:290svh;width:1px;height:1px;pointer-events:none}.journey-progress a{color:inherit;text-decoration:none;padding:8px 0}
/* Real-time architectural scene. All visible house surfaces are WebGL geometry. */
.architecture{position:absolute;inset:0;background:#a3ae9e}.architecture canvas{display:block;width:100%;height:100%}.scene-status{position:absolute;top:45%;left:8%;right:8%;text-align:center;color:#fff;z-index:5}.journey-shade{background:linear-gradient(180deg,#101d255c,transparent 24%,transparent 60%,#12201fb3),linear-gradient(90deg,#1625208c,transparent 57%)}.journey-chapter{bottom:19%;max-width:660px;pointer-events:none}.journey-chapter a{pointer-events:auto}.journey h1{font-size:clamp(65px,7.7vw,126px)}.journey h2{font-size:clamp(54px,6.5vw,100px)}.film-deck{max-width:320px}.camera-controls{position:absolute;right:4.2vw;top:160px;display:flex;align-items:center;gap:16px;color:white}.camera-controls span{font-size:8px;letter-spacing:1.5px}.camera-controls button{width:38px;height:38px;border:1px solid #ffffff70;border-radius:50%;color:white;background:#1b292827;cursor:pointer;font-size:19px}.camera-controls button:hover{background:#ffffff30}.layer-key{position:absolute;right:4.2vw;bottom:20%;list-style:none;margin:0;padding:18px 22px;background:#17231ec9;backdrop-filter:blur(14px);border:1px solid #ffffff28;opacity:0;visibility:hidden;transform:translateY(15px);transition:.4s;font-size:11px;line-height:2.5;min-width:210px}.layer-key.is-visible{opacity:1;visibility:visible;transform:none}.layer-key b{font-size:9px;display:inline-block;width:28px;font-weight:400;color:#e0c5a0}.show-layers .journey-chapter{max-width:420px}.show-layers h2{font-size:clamp(50px,5.2vw,80px)}.contact-email{overflow-wrap:anywhere}.footer-grid .contact-email{margin-top:20px;font-size:12px}.scene-unavailable{height:auto}.scene-unavailable .architecture{display:none}
@media(max-width:700px){.journey-chapter{bottom:16%;left:22px}.journey h1{font-size:64px}.journey h2{font-size:54px}.film-kicker{margin-bottom:16px}.film-deck{font-size:11px}.camera-controls{top:148px;right:22px;gap:10px}.camera-controls span{font-size:6px}.camera-controls button{width:32px;height:32px}.layer-key{right:18px;top:198px;bottom:auto;font-size:9px;padding:8px 13px;min-width:155px;line-height:2}.show-layers h2{font-size:48px}.journey-shade{background:linear-gradient(180deg,#16262366,transparent 28%,transparent 48%,#132721d4 90%)}.show-layers .film-deck{max-width:235px}}

/* Rounded text buttons replace diagonal arrow links. */
.film-link{border:1px solid #ffffff85;border-radius:999px;padding:12px 23px;background:#192c2426;backdrop-filter:blur(8px);transition:background .2s,border-color .2s}.film-link:hover{background:#ffffff25;border-color:#fff}.skip-film{border:1px solid #ffffff70;border-radius:999px;padding:10px 17px;background:#192c2426;transition:background .2s}.skip-film:hover{background:#ffffff25}.film-link:focus-visible,.skip-film:focus-visible{outline:2px solid #fff;outline-offset:4px}@media(max-width:500px){.film-link{padding:10px 19px}.skip-film{padding:9px 12px}}

.service-architecture picture{display:block;width:100%;height:100%}.service-architecture img{object-position:var(--image-focus,50% 50%)}@media(max-width:700px){.service-architecture{height:auto;min-height:0;padding-bottom:150px;background:#263028}.service-architecture picture{aspect-ratio:16/9;height:auto}.service-architecture img{height:100%;object-fit:cover;object-position:center}.service-architecture:after{background:linear-gradient(transparent 25%,#14261a33 56%,#14261a66)}.service-architecture figcaption{bottom:26px}.service-architecture strong{font-size:36px}.service-architecture small{font-size:8px}}

.home-page>header{top:0}@media(max-width:500px){.home-page>header{top:0}}
