@import url('./fonts.css');
:root{color-scheme:dark;--bg:#080b0c;--surface:#0d1112;--gold:#cdae72;--gold-light:#eddbb0;--text:#e8e9e6;--muted:#aaaead;--line:#cdae7230;--page:clamp(1.5rem,6.4vw,8rem);--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;font-family:'DM Sans',Arial,sans-serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--gold-light);outline-offset:6px}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}em{font-style:normal;color:var(--gold-light)}::selection{background:var(--gold);color:#080b0c}[hidden]{display:none!important}.skip-link{position:fixed;z-index:99;left:1rem;top:-100px;background:var(--gold-light);color:#111;padding:1rem}.skip-link:focus{top:1rem}
.site-header{position:fixed;inset:0 0 auto;z-index:30;height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--page);gap:2rem;background:linear-gradient(#080b0c55,transparent);transition:background .4s}.site-header.scrolled{background:#080b0cde;backdrop-filter:blur(15px)}.brand{display:flex;flex-direction:column;gap:6px;color:var(--gold-light);flex:none}.brand>span{font-family:'Manrope',Arial,sans-serif;font-weight:300;font-size:1.7rem;letter-spacing:-.035em;border-bottom:1px solid #cdae7266;padding-bottom:3px;line-height:1.2}.brand small{color:var(--gold);font-family:var(--serif);font-size:.875rem;text-align:center}.desktop-nav{display:flex;gap:clamp(1.25rem,2.5vw,3rem);font-size:.75rem;text-transform:uppercase;letter-spacing:.07em}.desktop-nav a{padding:12px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.desktop-nav a:hover,.desktop-nav a.active{color:var(--gold-light);border-color:var(--gold)}.menu-button{width:38px;height:44px;padding:8px;display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:none}.menu-button span{background:var(--gold);width:22px;height:1px;transition:transform .25s,opacity .25s}.menu-button[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav{position:fixed;right:var(--page);top:90px;width:min(370px,calc(100% - 3rem));background:#0b1010f2;backdrop-filter:blur(20px);z-index:29;border:1px solid var(--line);padding:22px 30px;display:flex;flex-direction:column}.mobile-nav a{padding:17px 0;border-bottom:1px solid var(--line);font-size:1rem}.mobile-nav a:last-child{border-bottom:0}
.experience{position:relative;background:#080b0c}.stage{height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 65% 45%,#222725 0%,#0b1011 50%,#030607 85%)}.stage-fallback{position:absolute;inset:0;opacity:0;visibility:hidden}.no-webgl .stage-fallback{opacity:.58;visibility:visible}.stage-fallback img{position:absolute;right:7%;width:60%;height:100%;object-fit:cover;object-position:center 38%}.has-webgl .stage-fallback{opacity:0;visibility:hidden}#architecture-canvas{position:absolute;inset:0}#architecture-canvas canvas{display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab}#architecture-canvas canvas:active{cursor:grabbing}.stage-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#030607f5 0%,#030607b0 24%,#03060712 49%,transparent 75%),linear-gradient(0deg,#030607bb,transparent 17%,transparent 85%,#03060744)}.story{position:relative;margin-top:-100svh;pointer-events:none}.scene-panel{height:100svh;min-height:660px;padding:140px var(--page) 130px;position:relative;display:flex;align-items:center;pointer-events:none}.scene-panel a,.scene-panel button{pointer-events:auto}.hero-copy{width:48%;max-width:670px;position:relative;z-index:5}.hero .hero-copy{margin-top:-2vh}.chapter-label{font-size:.75rem;line-height:1.8;letter-spacing:.32em;color:#d7dad4;margin:0 0 32px}.hero h1{font-family:var(--serif);font-size:clamp(2.8rem,4.5vw,5.9rem);font-weight:400;line-height:1.02;letter-spacing:-.042em;margin:0 0 35px;color:#efefeb}.hero h1>span{color:var(--gold-light)}.gold-rule{width:35px;height:1px;background:var(--gold-light);margin:0 0 24px}.hero-description{font-size:1rem;letter-spacing:.08em;color:#d8dad5;margin-bottom:36px}.scroll-cue{font-size:.75rem;display:inline-flex;align-items:center;gap:16px;color:#c9c9bc;letter-spacing:.07em;min-height:44px}.scroll-cue>span{display:grid;place-items:center;width:28px;height:42px;border:1px solid #cdae7255;border-radius:18px;color:var(--gold-light);font-size:1rem;transition:transform .3s}.scroll-cue:hover>span{transform:translateY(5px)}.construction-chapter{align-items:center}.chapter-copy{position:relative;max-width:280px;z-index:3}.chapter-copy h2{font-family:'DM Sans',Arial,sans-serif;font-size:1rem;line-height:1.7;letter-spacing:.22em;font-weight:400;max-width:240px;margin:0 0 24px}.chapter-copy>p{font-size:1rem;line-height:1.8;color:#a9aeaa;margin-bottom:25px}.chapter-numeral{font-family:var(--serif);font-size:clamp(7rem,12vw,14rem);color:#eff0df10;line-height:1;display:block;margin-left:-14px;letter-spacing:-.05em}.final-chapter .hero-copy{width:44%}.final-chapter h2{font-size:clamp(2.7rem,4.5vw,5rem);line-height:1.07;letter-spacing:-.04em;margin-bottom:32px}.final-chapter .hero-copy>p:not(.chapter-label){font-size:1rem;line-height:1.8;color:#b9c0b8}.text-link{display:inline-flex;align-items:center;gap:28px;min-height:44px;font-size:.875rem;padding:10px 0;border-bottom:1px solid #cdae7255;transition:color .2s,gap .25s}.text-link:hover{color:var(--gold-light);gap:38px}.text-link span{font-size:1.2rem}
.construction-rail{position:absolute;right:3.8vw;top:19%;bottom:18%;display:flex;flex-direction:column;align-items:center;gap:15px;z-index:10;width:30px}.rail-number{color:var(--gold-light);font-size:.875rem;letter-spacing:.05em}.rail-end{color:#b7bfba;font-size:.75rem}.rail-track{position:relative;flex:1;width:1px;background:#adb7ae66;display:flex;flex-direction:column;justify-content:space-between;align-items:center}.rail-fill{position:absolute;top:0;width:1px;height:0;background:var(--gold-light);box-shadow:0 0 9px #e8d3a34d;pointer-events:none}.rail-track a{position:relative;width:30px;height:30px;display:grid;place-items:center;margin-top:-15px}.rail-track a:last-child{margin-bottom:-15px;margin-top:0}.rail-track i{width:5px;height:5px;background:#0e1513;border:1px solid #c4c7bd;border-radius:50%;transition:background .4s,box-shadow .4s}.rail-track a[aria-current=step] i{width:7px;height:7px;background:var(--gold-light);border-color:var(--gold-light);box-shadow:0 0 13px var(--gold)}.stage-bottom{position:absolute;bottom:24px;left:var(--page);right:var(--page);z-index:6;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.75rem;color:#c3c9c0;letter-spacing:.11em}.stage-bottom #scene-name{min-width:170px}.concept-note{font-size:.75rem;color:#8f9893;letter-spacing:.05em}.scene-controls{display:flex;align-items:center;gap:8px;background:#080c0c66;border:1px solid #cdae7222;padding:3px 8px}.scene-controls button{background:none;border:0;width:36px;height:36px;color:#c5bc9f;font-size:1.3rem}.scene-controls button:hover{color:var(--gold-light)}.scene-controls>span{font-size:.625rem;letter-spacing:.14em;color:#9ba79d}.stage-status{position:absolute;bottom:95px;left:50%;transform:translateX(-50%);color:#c8ba99;font-size:.875rem;text-align:center;max-width:270px}.no-webgl .stage-shade{background:linear-gradient(90deg,#030607f0,#030607a0 50%,transparent)}
.content-section{position:relative;z-index:12;padding:70px var(--page);background:var(--bg)}.section-top{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:70px}.eyebrow,.tiny-label{font-size:.75rem;line-height:1.6;letter-spacing:.15em;font-weight:400;color:var(--gold);margin:0}.tiny-label{color:#8f9a92}.statement{font-family:var(--serif);font-size:clamp(3.3rem,6.3vw,7.3rem);font-weight:400;line-height:1.11;letter-spacing:-.045em;margin-bottom:75px}.about-bottom{display:grid;grid-template-columns:1fr 1.3fr auto;gap:50px;align-items:center;border-top:1px solid var(--line);padding-top:40px}.about-mark{color:#cdae724d;font-family:var(--serif);font-size:3.5rem}.about-bottom>p{font-size:1rem;line-height:1.9;color:#b0bab1;max-width:600px;margin:0}.circle-link{width:58px;height:58px;border:1px solid #cdae7266;border-radius:50%;display:grid;place-items:center;color:var(--gold-light);font-size:1.5rem}.circle-link:hover{background:#cdae7211}.services-section{background:#0e1213;border-top:1px solid var(--line)}.services-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:55px}.services-heading h2{font-size:clamp(2.5rem,4.2vw,5rem);line-height:1.15;letter-spacing:-.04em;margin:0}.services-heading>p{color:#9fac9f;font-size:1rem;line-height:1.7;margin:0 0 8px}.service-list article{display:grid;grid-template-columns:70px 1.1fr 1.1fr;gap:35px;align-items:start;padding:39px 0;border-top:1px solid var(--line);transition:border-color .3s}.service-list article:hover{border-color:#e6d4ac80}.service-number{font-family:var(--serif);color:var(--gold);font-size:1.5rem}.service-list h3{font-family:var(--serif);font-size:clamp(1.6rem,2.3vw,2.7rem);font-weight:400;line-height:1.2;margin:0}.service-list article>p{color:#aab6ac;font-size:1rem;line-height:1.8;max-width:480px;margin:0}.vision-section{position:relative;z-index:12;display:grid;grid-template-columns:1fr 1fr;background:#090d0e;min-height:830px}.vision-image{position:relative;overflow:hidden}.vision-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:73% center;filter:brightness(.66) saturate(.65)}.vision-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050a0de0,transparent 80%)}.vision-image>span{position:absolute;left:var(--page);bottom:25px;font-size:.75rem;color:#adbaad;z-index:2}.image-title{position:absolute;left:var(--page);bottom:80px;z-index:2;font-family:var(--serif);font-size:clamp(3rem,6vw,7rem);line-height:1;letter-spacing:-.05em;color:var(--gold-light)}.vision-content{padding:75px clamp(30px,4vw,80px)}.vision-content h2{font-size:clamp(2.3rem,3vw,3.8rem);line-height:1.15;letter-spacing:-.035em;margin:28px 0 45px}.vision-rows article{display:flex;gap:25px;padding:25px 0;border-top:1px solid var(--line)}.vision-rows article>span{font-size:.75rem;color:var(--gold);padding-top:4px}.vision-rows h3{font-size:1.1rem;font-weight:400;margin:0 0 13px}.vision-rows p{font-size:1rem;color:#aab5ac;line-height:1.8;margin:0;max-width:390px}.contact-section{background:#070b0c;border-top:1px solid var(--line)}.contact-title{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:70px}.contact-title h2{font-size:clamp(4rem,8vw,10rem);line-height:1.03;letter-spacing:-.05em;margin:0}.contact-title>span{font-size:clamp(4rem,9vw,11rem);font-weight:300;color:var(--gold);transition:transform .3s}.contact-title:hover>span{transform:translate(7px,-7px)}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr 1.2fr .8fr;gap:25px;padding-top:35px;border-top:1px solid var(--line)}.contact-grid p,.contact-detail{font-size:1rem;line-height:1.8;margin:14px 0 0;display:block;color:#d2d7ce}.contact-grid .tiny-label{color:#9ea395;font-size:.75rem}.under-link{font-size:.875rem;border-bottom:1px solid var(--line);display:inline-block;padding-bottom:3px;margin-top:6px;color:var(--gold)}.contact-detail:hover{text-decoration:underline;text-underline-offset:6px}footer{position:relative;z-index:12;padding:30px var(--page);display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:20px;background:#070b0c;border-top:1px solid var(--line)}.footer-logo{width:165px}footer>p{font-size:.875rem;color:#939f96;margin:0;text-align:center}.back-top{font-size:.875rem;display:flex;align-items:center;gap:20px;color:#c4c9bb}.back-top>span{font-size:1.4rem;color:var(--gold)}footer>small{grid-column:1/-1;font-size:.75rem;color:#7f8b83;text-align:center;padding-top:20px;border-top:1px solid var(--line)}.reveal{opacity:1}.motion-ready .reveal{opacity:.5;transform:translateY(20px);transition:opacity .8s,transform .8s}.motion-ready .reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.desktop-nav{gap:1.25rem;font-size:.75rem}.brand>span{font-size:1.4rem}.site-header{gap:1.5rem}.hero-copy{width:52%}.hero h1{font-size:4.9vw}.construction-rail{right:3vw}.service-list article{grid-template-columns:45px 1fr 1.2fr;gap:20px}.contact-grid{grid-template-columns:1fr 1fr}.about-bottom{grid-template-columns:.5fr 1.5fr auto;gap:30px}}
@media(max-width:760px){html{scroll-padding-top:85px}.site-header{height:86px}.brand>span{font-size:1.4rem}.brand small{font-size:.75rem}.desktop-nav{display:none}.menu-button{margin-right:-8px}.mobile-nav{top:82px;right:1.5rem}.stage-fallback img{width:90%;right:-20%}.stage-shade{background:linear-gradient(90deg,#030607ef,#03060775 42%,transparent 77%),linear-gradient(0deg,#030607cc,transparent 30%)}.scene-panel{height:100svh;min-height:700px;padding:110px var(--page) 130px;align-items:center}.hero-copy,.final-chapter .hero-copy{width:90%;max-width:430px}.hero .hero-copy{margin-top:-45px}.chapter-label{font-size:.75rem;letter-spacing:.24em;margin-bottom:25px}.hero h1{font-size:clamp(2.55rem,9.4vw,4rem);line-height:1.08;letter-spacing:-.04em;margin-bottom:28px}.gold-rule{width:27px;margin-bottom:19px}.hero-description{font-size:.875rem;letter-spacing:.06em;max-width:220px;line-height:1.8}.scroll-cue{font-size:.75rem}.construction-rail{right:18px;top:20%;bottom:19%;width:20px;gap:13px}.rail-track a{width:35px}.rail-number{font-size:.75rem}.rail-end{font-size:.75rem}.construction-chapter .chapter-copy{max-width:190px}.chapter-copy h2{font-size:.875rem;letter-spacing:.15em;line-height:1.8}.chapter-copy>p{font-size:.875rem;line-height:1.8;max-width:190px}.chapter-numeral{font-size:8rem;margin-left:-7px}.stage-bottom{bottom:19px;font-size:.625rem;left:var(--page);right:var(--page);gap:12px;flex-wrap:wrap}.stage-bottom #scene-name{font-size:.75rem;min-width:0;max-width:180px}.concept-note{font-size:.75rem;margin-left:auto}.scene-controls{position:absolute;right:0;bottom:39px;gap:3px}.scene-controls>span{display:none}.scene-controls button{width:36px;height:36px}.final-chapter h2{font-size:clamp(2.25rem,8vw,3.5rem)}.final-chapter .hero-copy>p:not(.chapter-label){font-size:.9375rem;max-width:200px}.content-section{padding:45px var(--page)}.section-top{margin-bottom:45px;gap:20px}.eyebrow,.tiny-label{font-size:.75rem;letter-spacing:.08em}.section-top .tiny-label{max-width:135px;text-align:right}.statement{font-size:clamp(2.5rem,8.2vw,4rem);line-height:1.12;margin-bottom:40px;letter-spacing:-.045em}.about-bottom{grid-template-columns:1fr auto;gap:25px;padding-top:27px}.about-mark{display:none}.about-bottom>p{font-size:1rem;line-height:1.8}.circle-link{width:42px;height:42px}.services-heading{display:block;margin-bottom:35px}.services-heading h2{font-size:2.6rem;line-height:1.1}.services-heading>p{font-size:1rem;margin-top:20px}.service-list article{grid-template-columns:35px 1fr;gap:18px;padding:27px 0}.service-number{font-size:1.2rem}.service-list h3{font-size:1.8rem}.service-list article>p{grid-column:2;font-size:1rem}.vision-section{grid-template-columns:1fr;min-height:0}.vision-image{height:580px}.vision-image img{object-position:73% center}.image-title{font-size:16vw;bottom:70px}.vision-content{padding:45px var(--page)}.vision-content h2{font-size:2.5rem;margin:23px 0 33px}.vision-rows article{gap:20px;padding:23px 0}.vision-rows h3{font-size:1rem}.vision-rows p{font-size:1rem}.contact-title{margin-bottom:45px;gap:15px}.contact-title h2{font-size:14vw;line-height:1.05}.contact-title>span{font-size:16vw}.contact-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.contact-grid>div{min-width:0}.contact-detail{overflow-wrap:anywhere}.contact-grid p,.contact-detail{font-size:1rem}.under-link{font-size:.875rem}footer{grid-template-columns:1fr auto;padding:25px var(--page);gap:22px}.footer-logo{width:140px}footer>p{grid-column:1/-1;grid-row:2;text-align:left;font-size:.875rem}.back-top{grid-column:2;grid-row:1;font-size:.75rem;gap:10px}footer>small{text-align:left}}
@media(max-width:370px){.hero h1{font-size:9.25vw}.hero-description{font-size:.875rem}.construction-rail{right:10px}.contact-grid{grid-template-columns:1fr}.chapter-copy>p{max-width:160px}.chapter-copy h2{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}

.footer-brand{justify-self:start;width:max-content}

/* Subtle detailing; original palette, typography and section order retained. */
:root{--detail-wash:#cdae7208;--detail-shadow:0 18px 48px #00000040}
.site-header.scrolled{box-shadow:0 1px 0 var(--line),0 12px 32px #00000024}
.desktop-nav a{position:relative;border-bottom-color:transparent!important}
.desktop-nav a::after{content:'';position:absolute;inset:auto 0 -1px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.desktop-nav a.active::after,.desktop-nav a:focus-visible::after{transform:scaleX(1)}
.mobile-nav{max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;box-shadow:var(--detail-shadow);background:#0b1010f5}
.mobile-nav a.active{color:var(--gold-light)}
.mobile-nav a{transition:color .25s,background .25s}
.menu-button{width:44px;align-items:center}
.gold-rule{background:linear-gradient(90deg,var(--gold-light),var(--gold));box-shadow:0 0 12px #cdae7222}
.circle-link,.scene-controls button,.back-top,.under-link{transition:background .25s,color .25s,border-color .25s,transform .25s}
.scene-controls{background:#080c0cdd;backdrop-filter:blur(12px);box-shadow:0 5px 20px #00000030;border-color:var(--line)}
.scene-controls button{min-width:44px;min-height:44px;color:var(--gold-light)}
.scene-controls button:active{background:#cdae721f;transform:scale(.96)}
.scene-controls>span{color:#b8c0b6}
.service-list article{transition:border-color .3s,background .3s}
.service-list h3,.vision-rows h3{text-wrap:balance}
.service-list article>p,.about-bottom>p,.vision-rows p{text-wrap:pretty}
.contact-detail{width:fit-content;max-width:100%;overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center}
.under-link{min-height:44px;display:inline-flex;align-items:center}
.contact-grid>div{min-width:0}
@media(hover:hover){
  .desktop-nav a:hover::after{transform:scaleX(1)}
  .service-list article:hover{background:linear-gradient(90deg,var(--detail-wash),transparent 85%)}
  .circle-link:hover{background:#cdae7214;border-color:var(--gold);transform:translateY(2px)}
  .scene-controls button:hover{background:#cdae7214}
  .mobile-nav a:hover,.back-top:hover,.under-link:hover{color:var(--gold-light)}
}
@media(min-width:761px){
  .about-section{padding-top:88px;padding-bottom:88px}
  .contact-section{padding-top:88px;padding-bottom:80px}
}
@media(max-width:760px){
  .stage{height:var(--scene-viewport-height,100dvh)}
  .story{margin-top:calc(-1 * var(--scene-viewport-height,100dvh))}
  .scene-panel{height:var(--scene-viewport-height,100dvh)}
  .hero-copy,.final-chapter .hero-copy{width:calc(100% - 34px)}
  .hero-copy{text-shadow:0 2px 20px #03060780}
  .stage-shade{background:linear-gradient(90deg,#030607f5,#030607a0 42%,#03060720 78%),linear-gradient(0deg,#030607dd,transparent 30%)}
  .scene-controls{bottom:45px;gap:2px;padding:2px 4px}
  .scene-controls button{width:44px;height:44px}
  .stage-bottom{bottom:max(19px,env(safe-area-inset-bottom))}
  .rail-track a{width:44px;height:44px;margin-top:-22px}
  .rail-track a:last-child{margin-bottom:-22px}
  .circle-link{width:44px;height:44px}
  .contact-grid{gap:32px 24px}
  .content-section{padding-top:52px;padding-bottom:52px}
}
@media(max-height:650px) and (max-width:760px){
  .hero .hero-copy{margin-top:0}
  .scene-panel{min-height:580px;padding-top:104px;padding-bottom:115px}
  .chapter-label{margin-bottom:18px}
  .hero h1{font-size:clamp(2rem,7.8vw,3rem);margin-bottom:20px}
  .hero-description{margin-bottom:20px}
}
@media(prefers-reduced-motion:reduce){
  .circle-link:hover,.contact-title:hover>span,.scroll-cue:hover>span,.scene-controls button:active{transform:none}
}
