@import url('https://fonts.googleapis.com/css2?family=Questrial&display=swap');

:root{
  --bg:#080a0c;--bg-2:#0d1013;--panel:#11151a;--ivory:#f1eee7;--muted:#a8a49b;--gold:#d6a75a;--gold-2:#f0c778;--line:rgba(255,255,255,.14);--light:#ece8df;--ink:#101214;--max:1440px;--ease:cubic-bezier(.2,.8,.2,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);color:var(--ivory)}body{margin:0;background:var(--bg);color:var(--ivory);font-family:Inter,system-ui,sans-serif;font-weight:300;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.narrow{max-width:900px}.section{padding:140px 0;position:relative}.section--light{background:var(--light);color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:11px;color:#d0ccc3}.eyebrow.dark{color:#59564f}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;line-height:.92}h1{font-size:clamp(64px,8vw,142px);letter-spacing:-.05em}h2{font-size:clamp(50px,6vw,96px);letter-spacing:-.04em}h3{font-size:40px;letter-spacing:-.03em}.lead{font-size:clamp(20px,2vw,32px);line-height:1.45;letter-spacing:-.02em}.btn{display:inline-flex;align-items:center;gap:20px;border:1px solid rgba(255,255,255,.45);padding:16px 22px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;transition:.35s var(--ease);background:transparent}.btn:hover{background:var(--ivory);color:var(--ink)}.btn--light{border-color:rgba(255,255,255,.55)}.text-link{display:inline-flex;gap:18px;align-items:center;text-transform:uppercase;letter-spacing:.14em;font-size:11px;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:7px}.dark-link{border-color:rgba(0,0,0,.25)}

/* header */
.site-header{position:fixed;top:0;left:0;right:0;height:92px;padding:0 max(32px,4vw);display:grid;grid-template-columns:220px 1fr 220px;align-items:center;z-index:80;transition:.4s var(--ease);mix-blend-mode:normal}.site-header.is-scrolled{height:72px;background:rgba(7,9,11,.85);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;font-family:"Cormorant Garamond",serif;font-size:20px;letter-spacing:.22em;line-height:.9}.brand span:last-child{margin-left:14px}.desktop-nav{justify-self:center;display:flex;gap:34px;font-size:12px}.desktop-nav a{position:relative;color:#ece9e1}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold);transition:right .3s}.desktop-nav a:hover:after{right:0}.btn--header{justify-self:end;padding:12px 15px}.menu-toggle{display:none;border:0;background:none;width:44px;height:44px;position:relative}.menu-toggle i{position:absolute;left:8px;right:8px;height:1px;background:white;top:18px;transition:.3s}.menu-toggle i:last-child{top:26px}.mobile-menu{position:fixed;inset:0;background:#090b0e;z-index:70;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transform:translateY(-12px);transition:.4s var(--ease)}.mobile-menu.is-open{opacity:1;pointer-events:auto;transform:none}.mobile-menu nav{display:flex;flex-direction:column;gap:12px;text-align:center}.mobile-menu nav a{font-family:"Cormorant Garamond",serif;font-size:48px}.mobile-menu__meta{position:absolute;bottom:32px;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}

/* preloader */
.preloader{position:fixed;inset:0;z-index:200;background:#07090b;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .65s,var(--ease);pointer-events:none}.preloader.is-hidden{opacity:0}.preloader__brand{font-family:"Cormorant Garamond",serif;font-size:34px;letter-spacing:.22em}.preloader__brand span{display:block;margin-left:34px}.preloader__line{width:220px;height:1px;background:rgba(255,255,255,.15);margin-top:26px;overflow:hidden}.preloader__line i{display:block;height:100%;background:var(--gold);width:0;animation:loadLine 1.2s var(--ease) forwards}@keyframes loadLine{to{width:100%}}.transition-layer{position:fixed;inset:0;background:#0b0d10;z-index:160;transform:translateY(100%);pointer-events:none}.transition-layer.is-active{animation:pageWipe .8s var(--ease) forwards}@keyframes pageWipe{0%{transform:translateY(100%)}45%,100%{transform:translateY(0)}}.scroll-progress{position:fixed;top:0;left:0;height:2px;background:var(--gold);width:0;z-index:120}.cursor{position:fixed;z-index:180;width:38px;height:38px;border:1px solid rgba(255,255,255,.65);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s,border-color .2s;mix-blend-mode:difference}.cursor span{position:absolute;inset:50% auto auto 50%;width:4px;height:4px;background:white;border-radius:50%;transform:translate(-50%,-50%)}.cursor.is-hover{width:64px;height:64px;background:rgba(255,255,255,.12)}

/* hero */
.hero{min-height:100svh;position:relative;overflow:hidden;background:#071019;display:flex;align-items:center;padding-top:82px}.hero__sky{position:absolute;inset:0;background:radial-gradient(circle at 62% 62%,rgba(166,93,33,.38),transparent 28%),radial-gradient(circle at 18% 56%,rgba(69,55,66,.28),transparent 25%),linear-gradient(180deg,#06111c 0%,#0b1520 35%,#5a3029 70%,#0d1013 100%)}.hero__sky:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,4,6,.62) 0%,rgba(4,6,8,.05) 45%,rgba(2,3,5,.32) 100%)}.hero__city{position:absolute;left:0;right:0;bottom:0;height:33%;opacity:.7;background:linear-gradient(to top,#050708 0 28%,transparent 28%),repeating-linear-gradient(90deg,transparent 0 48px,rgba(229,183,100,.25) 49px 51px,transparent 52px 87px),linear-gradient(165deg,transparent 0 60%,rgba(3,5,6,.9) 60%)}.hero__city:before,.hero__city:after{content:"";position:absolute;bottom:23%;width:180px;height:210px;background:#07090b;clip-path:polygon(0 100%,0 42%,18% 42%,18% 30%,36% 30%,36% 18%,52% 18%,52% 28%,66% 28%,66% 10%,74% 0,82% 10%,82% 35%,100% 35%,100% 100%)}.hero__city:before{left:4%}.hero__city:after{right:2%;transform:scale(.72)}.hero__content{position:relative;z-index:3;display:grid;grid-template-columns:minmax(360px,.8fr) minmax(650px,1.4fr);align-items:center;gap:20px;min-height:calc(100svh - 90px)}.hero__copy{padding-left:2vw;z-index:3}.hero__copy h1{margin:26px 0 22px;font-size:clamp(76px,7.4vw,132px)}.hero__copy p{max-width:560px;color:#ddd8cf;font-size:18px;line-height:1.55}.film-link{border:0;background:transparent;display:flex;align-items:center;gap:20px;margin-top:34px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;cursor:pointer}.film-link__play{width:54px;height:54px;border:1px solid rgba(255,255,255,.6);border-radius:50%;display:grid;place-items:center;padding-left:3px}.building-stage{height:76vh;min-height:620px;position:relative;perspective:1200px}.building-glow{position:absolute;left:28%;bottom:8%;width:46%;height:60%;background:radial-gradient(circle,rgba(214,167,90,.22),transparent 65%);filter:blur(28px)}.building{position:absolute;left:12%;bottom:4%;width:54%;height:90%;display:flex;flex-direction:column;justify-content:flex-end;transform:rotateY(-4deg) rotateX(1deg);transform-style:preserve-3d;filter:drop-shadow(0 30px 40px rgba(0,0,0,.48))}.floor{position:relative;height:15.5%;min-height:78px;border:1px solid rgba(255,255,255,.15);border-bottom:5px solid #101419;background:linear-gradient(90deg,rgba(19,25,31,.98),rgba(14,17,21,.86));overflow:hidden;transition:.42s var(--ease);box-shadow:inset 0 0 28px rgba(231,178,91,.08)}.floor:nth-child(odd){transform:translateX(2.5%);width:97.5%}.floor:hover,.floor.is-active{background:linear-gradient(90deg,rgba(121,79,31,.58),rgba(35,28,21,.82));box-shadow:inset 0 0 35px rgba(242,192,105,.4),0 0 38px rgba(218,167,82,.16);border-color:rgba(246,205,133,.55);z-index:6;transform:translateX(1.5%) scale(1.015)}.floor__interior{position:absolute;inset:9px 12px 9px 12px;background:linear-gradient(90deg,rgba(255,211,133,.08),rgba(247,188,93,.22),rgba(255,221,153,.08));display:block;border-top:1px solid rgba(255,223,171,.2)}.floor__interior:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 22%,rgba(8,10,11,.68) 22% 23%,transparent 23% 46%)}.floor__interior i,.floor__interior b,.floor__interior em{position:absolute;bottom:6px;background:#111416;opacity:.9}.floor__interior i{left:15%;width:18%;height:16px}.floor__interior b{left:52%;width:14%;height:22px}.floor__interior em{right:12%;width:5px;height:33px}.building__base{height:17%;min-height:92px;background:linear-gradient(90deg,#0b0d0f,#15110c,#0a0c0e);border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;position:relative}.building__base span{font-family:"Cormorant Garamond",serif;letter-spacing:.25em;text-align:center;font-size:16px}.building__base i{position:absolute;bottom:0;width:20%;height:60%;border:1px solid rgba(233,192,115,.5);background:linear-gradient(90deg,rgba(223,169,78,.08),rgba(251,213,142,.18))}.building-labels{position:absolute;left:68%;top:5%;bottom:18%;width:30%;display:flex;flex-direction:column;justify-content:space-around}.building-labels a{position:relative;padding-left:28px;opacity:.68;transition:.35s}.building-labels a:before{content:"";position:absolute;left:0;top:8px;width:14px;height:1px;background:rgba(255,255,255,.55)}.building-labels a:after{content:"";position:absolute;left:-18px;top:8px;width:5px;height:5px;background:currentColor;border-radius:50%;box-shadow:0 0 0 0 rgba(214,167,90,0);transition:.35s}.building-labels span{font-family:"Cormorant Garamond",serif;font-size:28px;display:inline-block;width:44px}.building-labels strong{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:400}.building-labels small{display:block;margin-left:47px;margin-top:4px;color:#aaa59c;font-size:10px}.building-labels a:hover,.building-labels a.is-active{color:var(--gold-2);opacity:1;transform:translateX(8px)}.building-labels a.is-active:after{box-shadow:0 0 0 8px rgba(214,167,90,.12)}.hero__scroll{position:absolute;left:3.5vw;bottom:42px;z-index:4;display:flex;gap:14px;align-items:flex-end}.hero__scroll span{width:1px;height:90px;background:linear-gradient(white,transparent)}.hero__scroll small,.hero__location{text-transform:uppercase;font-size:9px;letter-spacing:.17em;line-height:1.6}.hero__location{position:absolute;right:4vw;bottom:44px;z-index:4;text-align:right}.hero__location span{color:#aaa59e}.film-modal{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.94);display:grid;place-items:center;opacity:0;pointer-events:none;transition:.4s}.film-modal.is-open{opacity:1;pointer-events:auto}.film-modal__close{position:absolute;right:30px;top:30px;border:1px solid var(--line);background:none;width:48px;height:48px;border-radius:50%;font-size:30px}.film-modal__content{width:min(1000px,85vw);aspect-ratio:16/9;background:#111}.film-placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(circle at 50% 50%,rgba(214,167,90,.15),transparent 50%),#090b0e}.film-placeholder span{letter-spacing:.28em;font-size:12px}.film-placeholder strong{font-family:"Cormorant Garamond",serif;font-size:70px;font-weight:400;margin-top:12px}.film-placeholder small{color:#aaa}

/* manifesto */
.manifesto__grid{display:grid;grid-template-columns:1fr 3fr;gap:54px}.manifesto__grid h2{grid-column:2}.manifesto__grid h2 em{font-weight:400;color:#6f6657}.manifesto__grid>.lead{grid-column:2;max-width:800px}.manifesto__numbers{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(0,0,0,.2);margin-top:30px}.manifesto__numbers div{padding:26px 22px 10px 0;border-right:1px solid rgba(0,0,0,.15)}.manifesto__numbers strong{display:block;font-size:12px;margin-bottom:35px}.manifesto__numbers span{font-size:14px}

/* sections */
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:64px}.section-heading h2{margin:16px 0 0}.section-heading>p{max-width:420px;color:#aaa59c;line-height:1.7}.service-overview{padding-bottom:0}.service-panels{display:grid;grid-template-columns:repeat(5,1fr);min-height:640px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-panel{padding:28px 24px;position:relative;overflow:hidden;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;transition:.5s var(--ease);background:linear-gradient(180deg,#0d1115,#07090b)}.service-panel:before{content:"";position:absolute;inset:0;opacity:.3;transition:.5s;background:radial-gradient(circle at 50% 82%,rgba(214,167,90,.36),transparent 25%),linear-gradient(150deg,transparent 0 45%,rgba(255,255,255,.05) 45% 46%,transparent 46%)}.service-panel:hover{flex-grow:1.35;background:#17130e}.service-panel:hover:before{opacity:1}.service-panel__number{font-family:"Cormorant Garamond",serif;font-size:28px;position:relative}.service-panel h3{font-size:44px;margin:0 0 10px;position:relative}.service-panel p{color:#aaa59c;font-size:13px;position:relative}.service-panel i{position:absolute;right:20px;bottom:20px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-style:normal}.selected-projects{background:#080a0c}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project-grid--compact{grid-template-columns:repeat(3,1fr)}.project-grid--all{grid-template-columns:repeat(2,1fr)}.project-card{min-height:480px;position:relative;overflow:hidden;border:1px solid var(--line);background:#111}.project-card__visual{height:calc(100% - 82px);min-height:390px;position:relative;display:flex;align-items:flex-end;padding:30px;overflow:hidden}.project-card__visual:before{content:"";position:absolute;inset:-10%;transition:transform .7s var(--ease);background:linear-gradient(145deg,#21160f,#8d6942 48%,#131517 48%,#090b0c);}.project-card:hover .project-card__visual:before{transform:scale(1.06) rotate(.7deg)}.project-card__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.58));}.project-card__visual span{position:relative;z-index:2;font-family:"Cormorant Garamond",serif;font-size:48px}.project-card__meta{height:82px;padding:20px 26px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);font-size:12px}.project-card__meta strong{font-weight:400;color:var(--gold-2)}.project-card--stone .project-card__visual:before{background:linear-gradient(145deg,#8a877e,#d1c8b7 45%,#6c726e 45%,#171a1b)}.project-card--ink .project-card__visual:before{background:radial-gradient(circle at 72% 40%,#5c4433,transparent 21%),linear-gradient(145deg,#050505,#17110d)}.project-card--steel .project-card__visual:before{background:linear-gradient(135deg,#1b2730,#71818c 48%,#15191c 48%)}.project-card--sand .project-card__visual:before{background:linear-gradient(145deg,#7a5e45,#cab898 48%,#29231f 48%)}.project-card--blue .project-card__visual:before{background:radial-gradient(circle at 30% 30%,#304a58,transparent 20%),linear-gradient(145deg,#071019,#11171b)}.method-teaser__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}.method-teaser h2{margin-top:22px}.spiral-scene{height:620px;background:#101214;position:relative;overflow:hidden;display:grid;place-items:center}.spiral-ring{position:absolute;border:1px solid rgba(224,178,97,.7);border-radius:50%;transform:rotateX(66deg);box-shadow:0 0 18px rgba(214,167,90,.12)}.spiral-ring.r1{width:75%;height:75%}.spiral-ring.r2{width:58%;height:58%;transform:rotateX(66deg) translateY(-40px)}.spiral-ring.r3{width:42%;height:42%;transform:rotateX(66deg) translateY(-80px)}.spiral-core{height:70%;width:2px;background:linear-gradient(transparent,var(--gold),transparent)}.spiral-scene span{position:absolute;bottom:46px;right:46px;font-family:"Cormorant Garamond",serif;font-size:25px;text-align:right}.cta-panel{padding:150px 0;background:radial-gradient(circle at 75% 50%,rgba(214,167,90,.14),transparent 28%),#0c0e11;border-top:1px solid var(--line)}.cta-panel h2{margin:18px 0 42px}

/* generic page hero */
.page-hero{min-height:74vh;padding-top:150px;display:flex;align-items:flex-end;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 50%,rgba(159,101,46,.22),transparent 30%),linear-gradient(160deg,#08101a,#090b0d 58%)}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.2),transparent),repeating-linear-gradient(90deg,transparent 0 110px,rgba(255,255,255,.025) 111px)}.page-hero__inner{position:relative;z-index:2;padding-bottom:90px}.page-hero__inner h1{margin:22px 0 20px}.page-hero__inner p{font-size:20px;color:#c0bbb2}.filter-bar{display:flex;gap:26px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:42px;overflow:auto}.filter-bar button{background:none;border:0;color:#aaa;white-space:nowrap;cursor:pointer;padding:0}.filter-bar button.is-active{color:white;border-bottom:1px solid var(--gold);padding-bottom:20px;margin-bottom:-21px}.project-card.is-hidden{display:none}

/* service pages */
.service-hero{min-height:100svh;padding:160px 0 0;background:#090b0e;position:relative;overflow:hidden}.architectural-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,rgba(255,255,255,.04) 50%,transparent 50.1%),linear-gradient(0deg,transparent 49.9%,rgba(255,255,255,.035) 50%,transparent 50.1%);background-size:120px 120px;mask-image:linear-gradient(to bottom,#000,transparent)}.service-hero__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;position:relative}.service-hero h1{font-size:clamp(70px,7vw,120px);margin:24px 0}.service-hero .lead{max-width:620px;font-size:20px;color:#bab5ad}.service-room{height:520px;position:relative;background:linear-gradient(145deg,#11161b,#21160e 70%,#07090b);border:1px solid var(--line);overflow:hidden;box-shadow:inset 0 0 90px rgba(220,167,81,.08)}.service-room:before{content:"";position:absolute;left:12%;right:10%;top:12%;height:4px;background:var(--gold-2);box-shadow:0 0 22px rgba(240,199,120,.6)}.room__window{position:absolute;right:8%;top:18%;width:38%;height:58%;border:8px solid #090b0c;background:linear-gradient(#122435,#2e1f1c 68%,#08090a)}.room__window:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 31%,rgba(255,255,255,.11) 32%,transparent 33%)}.room__desk{position:absolute;left:18%;bottom:18%;width:48%;height:10%;background:#17191a;box-shadow:0 20px 0 -17px #0b0d0f}.service-room>span{position:absolute;left:18%;top:43%;font-size:48px;color:#f2d398;text-shadow:0 0 18px rgba(239,189,103,.6);letter-spacing:.06em}.pillar-strip{position:relative;margin-top:70px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.pillar{padding:26px;border-right:1px solid var(--line);min-height:185px}.pillar>span{font-size:11px;color:#aaa}.pillar strong{display:block;margin:30px 0 12px;font-weight:400}.pillar p{font-size:12px;color:#aaa;line-height:1.5}.two-col{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.sticky-copy{position:sticky;top:120px;align-self:start}.process-list{border-top:1px solid rgba(0,0,0,.18)}.process-item{display:grid;grid-template-columns:80px 1fr 1.2fr;gap:20px;align-items:start;padding:36px 0;border-bottom:1px solid rgba(0,0,0,.18)}.process-item h3{font-family:Inter,sans-serif;font-size:20px;font-weight:400;letter-spacing:-.02em;margin:0}.process-item p{color:#65625c;line-height:1.6;margin:0}.process-item>span{font-size:12px}.process-list--method{max-width:1050px}.process-list--method .process-item{grid-template-columns:100px 1fr 1.4fr;padding:52px 0}.process-list--method .process-item h3{font-family:"Cormorant Garamond",serif;font-size:50px}

/* method atelier */
.page-hero__split{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center;padding-bottom:65px}.page-hero__split h1{margin:22px 0}.spiral-scene--large{height:560px}.quote-block{max-width:1000px;text-align:center}.quote-block>span{font-family:"Cormorant Garamond",serif;font-size:110px;color:var(--gold)}.quote-block blockquote{font-family:"Cormorant Garamond",serif;font-size:clamp(42px,5vw,78px);line-height:1.05;margin:0}.editorial-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.editorial-grid .lead{align-self:end}.atelier-values{background:#0d0f12}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.value-grid article{padding:40px;border-right:1px solid var(--line);min-height:330px}.value-grid article span{font-size:12px}.value-grid article h3{margin:90px 0 16px}.value-grid article p{color:#aaa;line-height:1.6}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.team-card__portrait{height:480px;background:#16191b;margin-bottom:24px;position:relative;overflow:hidden}.team-card__portrait:before{content:"";position:absolute;width:44%;height:62%;border-radius:48% 48% 28% 28%;left:28%;top:18%;background:linear-gradient(145deg,#a18a71,#2b2b2b);filter:grayscale(1)}.team-card__portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.3))}.team-card__portrait.p2:before{background:linear-gradient(145deg,#c6b7a1,#3b3936)}.team-card__portrait.p3:before{background:linear-gradient(145deg,#8b8f91,#272b2e)}.team-card h3{font-family:Inter,sans-serif;font-size:18px;font-weight:400;margin-bottom:8px}.team-card p{color:#666;line-height:1.5}

/* news */
.news-grid{display:grid;gap:0}.news-card{display:grid;grid-template-columns:40% 60%;padding:34px 0;border-bottom:1px solid rgba(0,0,0,.18);gap:44px}.news-card__visual{height:300px;background:linear-gradient(145deg,#171a1c,#6b5640);position:relative;overflow:hidden}.news-card__visual:before{content:"";position:absolute;inset:12%;border:1px solid rgba(255,255,255,.2);background:radial-gradient(circle at 70% 30%,rgba(214,167,90,.28),transparent 25%)}.news-card__visual span{position:absolute;left:22px;bottom:18px;color:white;text-transform:uppercase;letter-spacing:.15em;font-size:10px}.news-card small{color:#6d6962;text-transform:uppercase;letter-spacing:.12em}.news-card h2{font-size:54px;margin:22px 0 16px}.news-card p{color:#666;line-height:1.6;max-width:620px}.article-hero{padding:190px 0 100px;min-height:70vh;display:flex;align-items:flex-end;background:radial-gradient(circle at 80% 50%,rgba(214,167,90,.16),transparent 30%),#090b0e}.article-hero h1{font-size:clamp(70px,8vw,128px);margin:22px 0}.article-hero p{max-width:820px;font-size:20px;color:#bbb}.article-body{max-width:860px;padding-top:110px;padding-bottom:140px;color:#d7d2c8}.article-body h2{font-size:52px;margin-top:80px}.article-body p{font-size:18px;line-height:1.8}.article-body blockquote{font-family:"Cormorant Garamond",serif;font-size:48px;line-height:1.1;border-left:1px solid var(--gold);padding-left:32px;margin:80px 0}

/* case study */
.case-hero{min-height:86vh;padding-top:150px;display:flex;align-items:flex-end;position:relative;overflow:hidden;background:#111}.case-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,#26180f,#7a5733 48%,#101315 48%)}.case-hero.project-card--stone:before{background:linear-gradient(145deg,#a39a8b,#d9d0bf 48%,#303535 48%)}.case-hero.project-card--ink:before{background:linear-gradient(145deg,#050505,#38271b 48%,#0d0d0d 48%)}.case-hero.project-card--steel:before{background:linear-gradient(145deg,#15202a,#687783 48%,#14181b 48%)}.case-hero.project-card--sand:before{background:linear-gradient(145deg,#755a40,#b9a17d 48%,#26211e 48%)}.case-hero.project-card--blue:before{background:linear-gradient(145deg,#0b1b27,#304b59 48%,#0b1014 48%)}.case-hero__inner{position:relative;z-index:2;padding-bottom:80px}.case-hero__inner h1{margin:20px 0}.case-hero__inner p{font-size:18px;color:var(--gold-2)}.case-intro{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:end}.case-intro h2{font-size:70px}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.case-block{background:#090b0e;padding:56px;min-height:330px}.case-block span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#aaa}.case-block h3{margin:72px 0 16px;font-size:44px}.case-block p{color:#aaa;line-height:1.65}.case-gallery{display:grid;grid-template-columns:1.3fr .7fr;grid-template-rows:420px 420px;gap:1px;background:#222}.case-shot{background:linear-gradient(145deg,#171a1d,#896b48);position:relative;overflow:hidden}.case-shot:before{content:"";position:absolute;inset:8%;border:1px solid rgba(255,255,255,.2);background:linear-gradient(160deg,transparent 50%,rgba(0,0,0,.45))}.shot-a{grid-row:1/3}.shot-b{background:linear-gradient(145deg,#0c1014,#394752)}.shot-c{background:linear-gradient(145deg,#2b2119,#8a735b)}

/* contact */
.contact-page{min-height:100svh;padding-top:140px;position:relative;overflow:hidden;background:#080a0c}.contact-page__visual{position:absolute;inset:0 0 0 52%;background:linear-gradient(160deg,#11171d,#271b14 70%,#07090a)}.contact-window{position:absolute;inset:9% 8% 15% 18%;border:12px solid #101214;background:linear-gradient(#132332,#5a3029 66%,#0b0e11)}.contact-window:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 32%,rgba(0,0,0,.6) 33%,transparent 34%)}.contact-city{position:absolute;left:10%;right:0;bottom:0;height:38%;background:repeating-linear-gradient(90deg,#080a0c 0 18px,transparent 19px 45px),linear-gradient(transparent,#050708)}.contact-page__grid{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;padding-bottom:100px}.contact-copy{padding-top:40px}.contact-copy h1{font-size:clamp(72px,7vw,126px);margin:20px 0}.contact-copy>p{font-size:18px;color:#bbb}.contact-meta{display:flex;flex-direction:column;gap:12px;margin-top:60px;color:#d7d0c6}.contact-form{background:rgba(8,10,12,.86);backdrop-filter:blur(16px);border:1px solid var(--line);padding:42px;display:flex;flex-direction:column;gap:26px}.contact-form label{display:flex;flex-direction:column;gap:10px}.contact-form label>span{text-transform:uppercase;letter-spacing:.13em;font-size:10px;color:#a8a39a}.contact-form input,.contact-form textarea,.contact-form select{background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.22);color:white;padding:10px 0;outline:none;border-radius:0}.contact-form select{color:#ddd}.contact-form option{background:#111;color:#fff}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--gold)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.check{flex-direction:row!important;align-items:flex-start!important;gap:12px!important}.check input{width:16px;height:16px;margin-top:1px}.check span{text-transform:none!important;letter-spacing:0!important;font-size:12px!important;line-height:1.4}.hp-field{position:absolute!important;left:-9999px!important}.form-status{padding:14px;border:1px solid var(--line);font-size:13px}.form-status.success{border-color:#57765f;color:#a7d4b2}.form-status.error{border-color:#7c5050;color:#e1aaaa}

/* legal 404 footer */
.legal-page{padding-top:180px;min-height:75vh}.legal-page h1{color:var(--ink);font-size:92px}.not-found{min-height:100svh;display:grid;place-items:center;background:radial-gradient(circle at 60% 50%,rgba(214,167,90,.15),transparent 30%),#080a0c}.not-found span{font-size:12px;letter-spacing:.2em}.not-found h1{margin:20px 0 40px}.site-footer{background:#050607;border-top:1px solid var(--line)}.footer__top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:70px;padding:90px 0}.brand--footer{margin-bottom:28px}.footer__top p{max-width:340px;color:#8f8b84;line-height:1.6}.footer__nav{display:grid;grid-template-columns:1fr 1fr;gap:35px}.footer__nav div{display:flex;flex-direction:column;gap:13px}.footer__nav small{text-transform:uppercase;letter-spacing:.14em;color:#777;margin-bottom:8px}.footer__nav a{font-size:13px;color:#c7c2ba}.footer__cta{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border-left:1px solid var(--line);padding-left:40px;position:relative}.footer__cta span,.footer__cta strong{font-family:"Cormorant Garamond",serif;font-size:52px;line-height:.9;font-weight:400}.footer__cta i{position:absolute;right:0;top:50%;font-style:normal}.footer__bottom{padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#777;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.footer__bottom div{display:flex;gap:20px}

/* reveal */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.delay-2{transition-delay:.12s}.delay-3{transition-delay:.22s}

@media (max-width:1100px){
  .container{width:min(calc(100% - 40px),var(--max))}.site-header{grid-template-columns:1fr auto}.desktop-nav,.btn--header{display:none}.menu-toggle{display:block;justify-self:end}.hero{min-height:auto;padding-top:100px}.hero__content{grid-template-columns:1fr;min-height:auto;padding:70px 0 100px}.hero__copy{padding:0;max-width:740px}.building-stage{height:720px}.building{left:6%;width:58%}.building-labels{left:67%;width:31%}.hero__location{display:none}.service-panels{grid-template-columns:1fr 1fr;min-height:auto}.service-panel{min-height:320px}.service-panel:last-child{grid-column:1/3}.project-grid--compact{grid-template-columns:1fr 1fr}.service-hero__grid,.page-hero__split,.contact-page__grid{grid-template-columns:1fr}.service-room{height:420px}.contact-page__visual{inset:45% 0 0 30%}.contact-form{margin-top:20px}.footer__top{grid-template-columns:1fr 1fr}.footer__cta{grid-column:1/3;border-left:0;border-top:1px solid var(--line);padding:40px 0 0}
}

@media (max-width:760px){
  .cursor{display:none}.container{width:calc(100% - 32px)}.section{padding:92px 0}.site-header{height:72px;padding:0 18px}.brand{font-size:16px}.hero__content{padding:50px 0 80px}.hero__copy h1{font-size:64px}.hero__copy p{font-size:16px}.building-stage{height:610px;margin-top:10px}.building{left:0;width:72%;height:78%;bottom:8%}.building-labels{left:72%;top:9%;bottom:22%;width:28%}.building-labels a{padding-left:12px}.building-labels a:before,.building-labels small{display:none}.building-labels span{font-size:18px;width:28px}.building-labels strong{font-size:9px;letter-spacing:.04em}.hero__scroll{display:none}.manifesto__grid{grid-template-columns:1fr;gap:30px}.manifesto__grid h2,.manifesto__grid>.lead,.manifesto__numbers{grid-column:1}.manifesto__numbers{grid-template-columns:1fr}.manifesto__numbers div{border-right:0;border-bottom:1px solid rgba(0,0,0,.14)}.section-heading{align-items:flex-start;flex-direction:column}.service-panels{grid-template-columns:1fr}.service-panel,.service-panel:last-child{grid-column:auto;min-height:240px}.project-grid,.project-grid--compact,.project-grid--all{grid-template-columns:1fr}.project-card{min-height:390px}.project-card__visual{min-height:310px}.method-teaser__grid,.two-col,.editorial-grid,.case-intro{grid-template-columns:1fr;gap:50px}.spiral-scene{height:460px}.service-hero{padding-top:120px}.service-hero__grid{gap:44px}.service-room{height:360px}.service-room>span{font-size:34px}.pillar-strip{grid-template-columns:1fr 1fr}.process-item,.process-list--method .process-item{grid-template-columns:50px 1fr}.process-item p,.process-list--method .process-item p{grid-column:2}.value-grid,.team-grid{grid-template-columns:1fr}.news-card{grid-template-columns:1fr;gap:24px}.news-card h2{font-size:44px}.case-grid{grid-template-columns:1fr}.case-gallery{grid-template-columns:1fr;grid-template-rows:360px 260px 260px}.shot-a{grid-row:auto}.contact-page__grid{gap:30px}.contact-page__visual{inset:42% 0 0 10%}.contact-form{padding:24px}.form-row{grid-template-columns:1fr}.footer__top{grid-template-columns:1fr}.footer__nav{grid-template-columns:1fr 1fr}.footer__cta{grid-column:auto}.footer__bottom{flex-direction:column;gap:12px}.footer__cta span,.footer__cta strong{font-size:44px}.page-hero{min-height:66vh}.page-hero__inner{padding-bottom:55px}.page-hero__split{padding-bottom:40px}.spiral-scene--large{height:420px}.article-body{padding-inline:16px}.legal-page h1{font-size:64px}
}

@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.cursor{display:none}}

/* =========================================================
   V2 — HOMEPAGE PHOTOREAL / CINEMATIC BUILDING
   ========================================================= */
.page-home .hero{
  background:#071019;
}
.page-home .hero__sky{
  background:
    radial-gradient(circle at 60% 50%,rgba(185,111,45,.30),transparent 25%),
    radial-gradient(circle at 20% 62%,rgba(116,65,58,.26),transparent 28%),
    linear-gradient(180deg,#06111c 0%,#0b1520 34%,#4a2926 72%,#080a0c 100%);
}
.page-home .hero__sky:after{
  background:
    linear-gradient(90deg,rgba(2,4,6,.72) 0%,rgba(4,6,8,.05) 46%,rgba(2,3,5,.28) 100%),
    linear-gradient(180deg,rgba(0,0,0,.08),transparent 55%,rgba(0,0,0,.28));
}
.page-home .hero__content{
  grid-template-columns:minmax(510px,.9fr) minmax(760px,1.35fr);
  gap:0;
}
.page-home .hero__copy{padding-left:1.5vw;max-width:650px}
.page-home .hero__copy h1{font-size:clamp(76px,7.05vw,126px);line-height:.82;letter-spacing:-.055em;margin:28px 0 30px}
.page-home .hero__copy h1 span{display:block;white-space:nowrap}
.page-home .hero__copy p{max-width:520px;font-size:17px;line-height:1.58}
.page-home .building-stage{height:80vh;min-height:650px;perspective:1800px}
.page-home .building-glow{left:15%;bottom:2%;width:55%;height:80%;background:radial-gradient(ellipse at 50% 55%,rgba(222,164,83,.30),rgba(161,83,38,.12) 38%,transparent 72%);filter:blur(44px)}
.page-home .building--photoreal{
  left:4%;bottom:1.5%;width:min(55%,580px);height:auto;aspect-ratio:515/592;
  display:block;overflow:hidden;background:#0a1016;border:0;
  transform:rotateY(-2.2deg) rotateX(.35deg);transform-origin:50% 75%;
  box-shadow:0 45px 85px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.05);
  filter:none;
}
.page-home .building--photoreal:before{
  content:"";position:absolute;inset:0;z-index:3;pointer-events:none;
  box-shadow:inset 0 0 55px rgba(1,3,5,.32),inset 0 -30px 45px rgba(1,2,3,.20);
}
.page-home .building__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0;filter:saturate(.92) contrast(1.03) brightness(.92);transition:filter .5s var(--ease),transform .65s var(--ease)}
.page-home .building--photoreal:hover .building__image{filter:saturate(1) contrast(1.03) brightness(.98)}
.page-home .building--photoreal .floor{
  position:absolute;left:2.5%;right:2.5%;width:auto;height:auto;min-height:0;margin:0;padding:0;
  border:0;border-radius:2px;background:rgba(3,6,8,.16);overflow:visible;z-index:4;
  transform:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,0);transition:background .38s var(--ease),box-shadow .38s var(--ease),opacity .38s var(--ease);
}
.page-home .building--photoreal .floor:before{
  content:"";position:absolute;inset:-2px;background:linear-gradient(90deg,rgba(255,205,126,.04),rgba(244,178,83,.15),rgba(255,214,143,.07));
  opacity:0;transition:opacity .38s var(--ease);box-shadow:0 0 34px rgba(238,179,91,.0),inset 0 0 30px rgba(255,208,131,.0);pointer-events:none
}
.page-home .building--photoreal .floor.is-active{background:rgba(247,181,84,.035);box-shadow:inset 0 0 0 1px rgba(250,210,145,.38);opacity:1}
.page-home .building--photoreal .floor.is-active:before{opacity:1;box-shadow:0 0 38px rgba(238,179,91,.23),inset 0 0 36px rgba(255,208,131,.10)}
.page-home .building--photoreal .floor.is-dimmed{background:rgba(2,5,7,.28);opacity:.95}
.page-home .building--photoreal .floor--5{top:0.5%;height:16%}
.page-home .building--photoreal .floor--4{top:16.2%;height:19.1%}
.page-home .building--photoreal .floor--3{top:35.4%;height:18.2%}
.page-home .building--photoreal .floor--2{top:53.7%;height:18.8%}
.page-home .building--photoreal .floor--1{top:72.6%;height:23.4%}
.page-home .floor__hint{position:absolute;left:18px;bottom:14px;opacity:0;transform:translateY(6px);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#fff4df;background:rgba(5,7,9,.66);backdrop-filter:blur(8px);padding:8px 10px;border:1px solid rgba(255,221,164,.22);transition:.3s var(--ease);pointer-events:none}
.page-home .floor:hover .floor__hint,.page-home .floor:focus .floor__hint{opacity:1;transform:none}
.page-home .building__edge-light{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.035),transparent 12%,transparent 86%,rgba(246,190,101,.04))}
.page-home .building-labels{left:61%;top:4%;bottom:13%;width:38%;z-index:8}
.page-home .building-labels a{padding-left:35px}
.page-home .building-labels a:before{width:20px;left:0}
.page-home .building-labels a:after{left:-15px}
.page-home .building-labels span{font-size:27px;width:48px}
.page-home .building-labels strong{font-size:11px;letter-spacing:.13em}
.page-home .building-labels small{margin-left:51px;font-size:9px;max-width:170px}
.page-home .building.is-entering .building__image{transform:scale(1.08);filter:saturate(1.03) contrast(1.05) brightness(1.04)}

@media (max-width:1280px){
  .page-home .hero__content{grid-template-columns:minmax(440px,.86fr) minmax(650px,1.25fr)}
  .page-home .hero__copy h1{font-size:clamp(70px,7vw,104px)}
  .page-home .building--photoreal{left:2%;width:min(56%,520px)}
  .page-home .building-labels{left:60%;width:40%}
}
@media (max-width:1100px){
  .page-home .hero__content{grid-template-columns:1fr;gap:20px}
  .page-home .hero__copy{max-width:760px;padding-left:0}
  .page-home .hero__copy h1{font-size:clamp(68px,10vw,102px)}
  .page-home .building-stage{height:760px;margin-top:0}
  .page-home .building--photoreal{left:7%;width:min(58%,500px);bottom:4%}
  .page-home .building-labels{left:64%;width:34%;top:8%;bottom:16%}
}
@media (max-width:760px){
  .page-home .hero__copy h1{font-size:58px;line-height:.86}
  .page-home .hero__copy h1 span{white-space:normal}
  .page-home .building-stage{height:620px;margin-top:12px}
  .page-home .building--photoreal{left:0;width:74%;bottom:5%;transform:none!important}
  .page-home .building-labels{left:72%;width:28%;top:8%;bottom:14%}
  .page-home .building-labels a{padding-left:10px}
  .page-home .building-labels a:before,.page-home .building-labels small{display:none}
  .page-home .building-labels span{font-size:18px;width:27px}
  .page-home .building-labels strong{font-size:8px;letter-spacing:.02em}
  .page-home .floor__hint{display:none}
}

/* =========================================================
   V3 — HERO REBUILD / CINEMATIC ARCHITECTURAL COMPOSITION
   ========================================================= */
.page-home .hero{
  min-height:100svh;
  background:#071019;
  isolation:isolate;
  padding-top:86px;
}
.page-home .hero__sky{
  background:
    radial-gradient(ellipse at 59% 63%,rgba(221,145,62,.28) 0%,rgba(119,57,29,.12) 28%,transparent 58%),
    radial-gradient(ellipse at 17% 63%,rgba(120,65,53,.23),transparent 38%),
    linear-gradient(180deg,#07111a 0%,#0a1420 34%,#3a2525 63%,#080b0e 100%);
}
.page-home .hero__sky:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.20;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.20'/%3E%3C/svg%3E");
  mix-blend-mode:soft-light;
}
.page-home .hero__sky:after{
  background:linear-gradient(90deg,rgba(2,4,6,.62) 0%,rgba(2,4,6,.10) 33%,rgba(2,4,6,.01) 58%,rgba(2,3,5,.28) 100%);
}
.page-home .hero__city{height:31%;opacity:.58;filter:blur(.1px)}
.page-home .hero__content{
  grid-template-columns:minmax(510px,.95fr) minmax(690px,1.05fr);
  gap:0;
  align-items:center;
  min-height:calc(100svh - 86px);
}
.page-home .hero__copy{
  padding-left:1.8vw;
  max-width:650px;
  z-index:10;
  align-self:center;
  transform:translateY(-1.5vh);
}
.page-home .hero__copy .eyebrow{font-size:10px;letter-spacing:.32em}
.page-home .hero__copy h1{
  font-size:clamp(68px,5.65vw,94px);
  line-height:.88;
  letter-spacing:-.055em;
  margin:30px 0 30px;
}
.page-home .hero__copy h1 span{display:block;white-space:nowrap}
.page-home .hero__copy p{max-width:520px;font-size:16px;line-height:1.62;color:#d4d0c8}
.page-home .film-link{margin-top:32px}

.page-home .building-stage{
  height:calc(100svh - 116px);
  min-height:680px;
  max-height:900px;
  position:relative;
  perspective:1800px;
  overflow:visible;
}
.page-home .building-glow{
  left:5%;bottom:3%;width:66%;height:88%;
  background:radial-gradient(ellipse at 52% 52%,rgba(227,165,83,.23),rgba(162,82,37,.08) 45%,transparent 72%);
  filter:blur(42px);
}
.page-home .building--photoreal{
  left:2%;
  bottom:-1.5%;
  width:min(58%,560px);
  height:auto;
  aspect-ratio:575 / 875;
  display:block;
  transform:translateZ(0);
  filter:drop-shadow(0 36px 44px rgba(0,0,0,.55));
  overflow:visible;
}
.page-home .building--photoreal:before{display:none}
.page-home .building__image{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
  filter:saturate(.93) contrast(1.04) brightness(.94);
  transition:filter .55s var(--ease),transform .8s cubic-bezier(.2,.75,.2,1);
}
.page-home .building--photoreal:hover .building__image{filter:saturate(1) contrast(1.06) brightness(.99)}
.page-home .building__edge-light{display:none}

/* Real invisible interaction bands — no visible rectangular frame */
.page-home .building--photoreal .floor{
  position:absolute;left:2%;right:2%;width:auto;height:auto;min-height:0;margin:0;padding:0;
  border:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible;z-index:4;
  transform:none!important;opacity:1;transition:none;
}
.page-home .building--photoreal .floor:before{
  content:"";position:absolute;inset:2% 0;
  opacity:0;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(255,196,103,.03) 10%,rgba(255,202,112,.12) 50%,rgba(255,189,85,.035) 90%,transparent 100%);
  border-top:1px solid rgba(255,215,149,.0);
  border-bottom:1px solid rgba(255,215,149,.0);
  box-shadow:0 0 0 rgba(240,179,84,0);
  transition:opacity .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.page-home .building--photoreal .floor.is-active:before{
  opacity:1;
  border-color:rgba(255,215,149,.24);
  box-shadow:0 0 30px rgba(240,179,84,.15), inset 0 0 34px rgba(255,204,116,.08);
}
.page-home .building--photoreal .floor.is-dimmed{opacity:1;background:transparent}
.page-home .building--photoreal .floor--5{top:5.3%;height:14.5%}
.page-home .building--photoreal .floor--4{top:19.4%;height:16.0%}
.page-home .building--photoreal .floor--3{top:35.0%;height:16.0%}
.page-home .building--photoreal .floor--2{top:50.2%;height:15.0%}
.page-home .building--photoreal .floor--1{top:64.5%;height:23.0%}
.page-home .floor__hint{display:none!important}

.page-home .building-labels{
  left:61.5%;top:7%;bottom:13%;width:37.5%;
  display:flex;flex-direction:column;justify-content:space-between;z-index:8;
}
.page-home .building-labels a{
  padding-left:42px;min-height:58px;display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;
  align-content:center;opacity:.68;transform:none;
}
.page-home .building-labels a:before{left:0;top:50%;width:26px;background:rgba(255,255,255,.42)}
.page-home .building-labels a:after{left:-5px;top:calc(50% - 2px);width:5px;height:5px}
.page-home .building-labels span{grid-row:1/3;align-self:start;font-size:27px;width:auto;line-height:1;font-family:"Cormorant Garamond",serif}
.page-home .building-labels strong{font-size:10px;letter-spacing:.16em;line-height:1.2;align-self:end}
.page-home .building-labels small{margin:5px 0 0 0;font-size:8px;line-height:1.4;max-width:180px;color:#98948c}
.page-home .building-labels a:hover,.page-home .building-labels a.is-active{transform:translateX(5px);opacity:1;color:var(--gold-2)}
.page-home .building-labels a.is-active:before{background:var(--gold-2);box-shadow:0 0 15px rgba(240,199,120,.35)}
.page-home .building-labels a.is-active:after{box-shadow:0 0 0 8px rgba(214,167,90,.11)}
.page-home .building.is-entering .building__image{transform:scale(1.06);filter:saturate(1.02) contrast(1.07) brightness(1.02)}

.page-home .hero__scroll{bottom:34px}
.page-home .hero__location{bottom:34px}

@media (min-width:1500px){
  .page-home .hero__content{grid-template-columns:minmax(560px,.96fr) minmax(760px,1.04fr)}
  .page-home .hero__copy{max-width:690px}
  .page-home .building--photoreal{width:min(59%,590px);left:1%}
  .page-home .building-labels{left:62%;width:36%}
}
@media (max-width:1280px){
  .page-home .hero__content{grid-template-columns:minmax(445px,.9fr) minmax(650px,1.1fr)}
  .page-home .hero__copy h1{font-size:clamp(66px,6.3vw,86px)}
  .page-home .building--photoreal{width:min(59%,525px);left:0}
  .page-home .building-labels{left:60%;width:39%}
}
@media (max-width:1100px){
  .page-home .hero{padding-top:78px}
  .page-home .hero__content{grid-template-columns:1fr;gap:0;padding-top:36px;align-items:start}
  .page-home .hero__copy{max-width:760px;padding-left:0;transform:none}
  .page-home .hero__copy h1{font-size:clamp(66px,9vw,98px)}
  .page-home .building-stage{height:720px;min-height:720px;margin-top:-10px}
  .page-home .building--photoreal{left:8%;bottom:0;width:min(58%,500px)}
  .page-home .building-labels{left:64%;width:35%;top:8%;bottom:15%}
}
@media (max-width:760px){
  .page-home .hero__content{padding-top:35px;padding-bottom:72px}
  .page-home .hero__copy h1{font-size:54px;line-height:.9}
  .page-home .hero__copy h1 span{white-space:normal}
  .page-home .hero__copy p{font-size:15px}
  .page-home .building-stage{height:610px;min-height:610px;margin-top:18px}
  .page-home .building--photoreal{left:-5%;bottom:1%;width:76%;transform:none!important}
  .page-home .building-labels{left:70%;width:30%;top:8%;bottom:15%}
  .page-home .building-labels a{padding-left:10px;grid-template-columns:26px 1fr;min-height:44px}
  .page-home .building-labels a:before,.page-home .building-labels small{display:none}
  .page-home .building-labels a:after{left:0}
  .page-home .building-labels span{font-size:18px}
  .page-home .building-labels strong{font-size:7px;letter-spacing:.04em}
}


/* =========================================================
   ADW V3.1 — APPROVED BASELINE
   Only: Questrial + label hover + responsive corrections.
   ========================================================= */
:root{--adw-font:"Questrial",Arial,sans-serif}
body,button,input,textarea,select,
.site-header,.desktop-nav,.mobile-menu,
.hero__copy,.hero__copy h1,.hero__copy p,.eyebrow,.film-link,
.building-labels,.building-labels span,.building-labels strong,.building-labels small,
.hero__scroll,.hero__location,
h1,h2,h3,.brand,.service-panel__number,.service-panel h3,
.project-card,.footer,.btn,.text-link{
  font-family:var(--adw-font)!important;
}

/* Questrial needs tighter editorial proportions than the old serif. */
.page-home .hero__copy h1{
  font-family:var(--adw-font)!important;
  font-weight:400!important;
  letter-spacing:-.055em!important;
  line-height:.92!important;
  font-size:clamp(68px,6.15vw,106px)!important;
  margin:26px 0 24px!important;
}
.page-home .hero__copy h1 span{white-space:nowrap}
.page-home .hero__copy p{font-family:var(--adw-font)!important;font-size:16px!important}
.page-home .hero__copy .eyebrow{font-family:var(--adw-font)!important}
.brand{font-family:var(--adw-font)!important;font-weight:400;line-height:.94}

/* The building itself remains photographic. Hover changes ONLY the HTML labels. */
.page-home .building--photoreal .floor,
.page-home .building--photoreal .floor:hover,
.page-home .building--photoreal .floor.is-active,
.page-home .building--photoreal .floor.is-dimmed{
  background:transparent!important;
  box-shadow:none!important;
  border-color:transparent!important;
  opacity:1!important;
  transform:none!important;
}
.page-home .building--photoreal .floor:before{display:none!important}
.page-home .building-labels a{
  color:#d9d6cf!important;
  opacity:.54!important;
  transform:none!important;
  transition:color .22s ease,opacity .22s ease,transform .22s ease,text-shadow .22s ease!important;
}
.page-home .building-labels a.is-active,
.page-home .building-labels a:hover,
.page-home .building-labels a:focus-visible{
  color:#f0c778!important;
  opacity:1!important;
  transform:translateX(5px)!important;
  text-shadow:0 0 18px rgba(240,199,120,.20);
}
.page-home .building-labels a.is-active span,
.page-home .building-labels a.is-active strong,
.page-home .building-labels a:hover span,
.page-home .building-labels a:hover strong{color:#f0c778!important}
.page-home .building-labels span{font-family:var(--adw-font)!important;font-weight:400!important}
.page-home .building-labels strong{font-family:var(--adw-font)!important;font-weight:400!important}
.page-home .building-labels small{font-family:var(--adw-font)!important}

/* Keep desktop composition unchanged. */
@media (min-width:1101px){
  .page-home .hero{min-height:100svh}
  .page-home .hero__content{min-height:calc(100svh - 90px)}
}

/* Tablet: copy above, building below, no horizontal crop. */
@media (max-width:1100px){
  .page-home .hero{min-height:auto!important;padding-top:86px!important;overflow:hidden}
  .page-home .hero__content{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding-top:34px!important;
    padding-bottom:58px!important;
    gap:18px!important;
  }
  .page-home .hero__copy{max-width:760px!important;padding-left:0!important;transform:none!important}
  .page-home .hero__copy h1{
    font-size:clamp(62px,9.2vw,92px)!important;
    line-height:.92!important;
  }
  .page-home .building-stage{
    width:100%!important;
    height:700px!important;
    min-height:700px!important;
    margin-top:0!important;
    overflow:visible!important;
  }
  .page-home .building--photoreal{
    left:6%!important;
    bottom:0!important;
    width:min(58%,500px)!important;
    height:auto!important;
    aspect-ratio:575/875!important;
    transform:none!important;
  }
  .page-home .building-labels{
    left:63%!important;
    right:0!important;
    width:36%!important;
    top:7%!important;
    bottom:13%!important;
  }
}

/* Phone: retain building + side rail, but scale both as one composition. */
@media (max-width:760px){
  .page-home .hero{padding-top:72px!important}
  .page-home .hero__content{padding-top:30px!important;padding-bottom:36px!important}
  .page-home .hero__copy{max-width:none!important}
  .page-home .hero__copy .eyebrow{font-size:9px!important;letter-spacing:.22em!important;white-space:normal}
  .page-home .hero__copy h1{
    font-size:clamp(48px,14vw,68px)!important;
    line-height:.92!important;
    letter-spacing:-.055em!important;
    margin:18px 0 20px!important;
  }
  .page-home .hero__copy h1 span{white-space:normal!important}
  .page-home .hero__copy p{font-size:14px!important;line-height:1.5!important;max-width:92%!important}
  .film-link{margin-top:24px!important;gap:14px!important}
  .film-link__play{width:46px!important;height:46px!important}
  .page-home .building-stage{
    height:590px!important;
    min-height:590px!important;
    margin-top:12px!important;
    overflow:visible!important;
  }
  .page-home .building--photoreal{
    left:-3%!important;
    bottom:0!important;
    width:72%!important;
    max-width:390px!important;
    height:auto!important;
    aspect-ratio:575/875!important;
    transform:none!important;
  }
  .page-home .building-labels{
    left:67%!important;
    right:0!important;
    width:33%!important;
    top:8%!important;
    bottom:14%!important;
  }
  .page-home .building-labels a{
    padding-left:12px!important;
    min-height:42px!important;
    grid-template-columns:28px 1fr!important;
    gap:4px!important;
  }
  .page-home .building-labels a:before{display:none!important}
  .page-home .building-labels a:after{left:0!important;top:50%!important}
  .page-home .building-labels span{font-size:17px!important;line-height:1!important}
  .page-home .building-labels strong{font-size:7px!important;letter-spacing:.035em!important;line-height:1.15!important}
  .page-home .building-labels small{display:none!important}
  .hero__scroll,.hero__location{display:none!important}
}

/* Small phones: stack the service selector under the building instead of clipping. */
@media (max-width:520px){
  .page-home .building-stage{
    height:auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    padding-top:8px!important;
    overflow:visible!important;
  }
  .page-home .building--photoreal{
    position:relative!important;
    left:auto!important;
    bottom:auto!important;
    width:min(88vw,390px)!important;
    margin:0 auto!important;
    aspect-ratio:575/875!important;
  }
  .page-home .building-labels{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;
    margin:10px 0 0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  .page-home .building-labels a{
    min-height:0!important;
    display:grid!important;
    grid-template-columns:40px 1fr!important;
    grid-template-rows:auto!important;
    align-items:center!important;
    padding:11px 4px!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
  }
  .page-home .building-labels a:last-child{border-bottom:1px solid rgba(255,255,255,.10)!important}
  .page-home .building-labels a:after{display:none!important}
  .page-home .building-labels span{font-size:16px!important;grid-row:auto!important}
  .page-home .building-labels strong{font-size:10px!important;letter-spacing:.10em!important}
}
