@font-face{font-family:Manrope;src:url('/assets/manrope-semibold.woff') format('woff');font-weight:600 800;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/manrope.woff') format('woff');font-weight:400 500;font-display:swap}@font-face{font-family:Editorial;src:url('/assets/editorial.woff') format('woff');font-style:italic;font-weight:500;font-display:swap}
:root{--bg:#0c0d0c;--surface:#121411;--text:#f3f0e9;--muted:#aaa79f;--gold:#d6ae68;--line:rgba(255,255,255,.12);--font:Manrope,Arial,sans-serif;--serif:Editorial,Georgia,serif;--space:clamp(5rem,9vw,9rem);--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}button{border:0}a,button{touch-action:manipulation}p{margin:0 0 1.4rem}h1,h2,h3{font-weight:400;margin:0;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.6rem,7vw,7.5rem)}h2{font-size:clamp(2.9rem,5.2vw,5.6rem)}h3{font-size:1.6rem;line-height:1.2;letter-spacing:-.025em}em{font-family:var(--serif);font-weight:500;color:var(--gold);font-style:italic;letter-spacing:-.045em}::selection{background:var(--gold);color:var(--bg)}:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.section{padding-block:var(--space)}.alt{background:var(--surface)}.eyebrow{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;line-height:1.7;color:var(--gold);font-weight:600;margin-bottom:1.75rem}.number{font-size:.8rem;letter-spacing:.1em;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:4rem;margin-bottom:4.5rem}.section-copy{max-width:380px;color:var(--muted);margin-bottom:0;font-size:1rem;line-height:1.85}.section-copy p:last-child{margin-bottom:0}.section-heading h2{max-width:720px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2.8rem;min-height:56px;padding:16px 24px;font-size:.875rem;font-weight:500;line-height:1.4;border:1px solid transparent;position:relative;transition:background .25s,color .25s,border-color .25s,translate .25s;white-space:normal}.button .arrow{font-family:Arial,sans-serif;font-size:1.3rem;flex-shrink:0;transition:transform .25s}.button:hover .arrow{transform:translate(3px,-3px)}.primary{background:var(--gold);color:var(--bg)}.primary:hover{background:#e4c18a}.outline{background:transparent;border-color:rgba(255,255,255,.4);color:var(--text)}.outline:hover{background:rgba(255,255,255,.08);border-color:var(--text)}.text{padding:12px 0;border-bottom:1px solid var(--line);min-height:50px;gap:2.5rem;background:none;color:var(--text)}.text:hover{border-color:var(--gold);color:var(--gold)}.dark{background:var(--bg);color:var(--text)}.dark:hover{background:#232820}.skip{position:fixed;top:0;left:20px;transform:translateY(-200%);background:var(--gold);color:var(--bg);z-index:100;padding:12px}.skip:focus{transform:none}
/* Wordmark, fine rules and disciplined alignment form the identity. */
.header{position:fixed;inset:0 0 auto;z-index:20;background:transparent;border-bottom:1px solid transparent;transition:background .3s,border-color .3s}.nav{height:112px;display:flex;align-items:center;gap:3rem;transition:height .3s}.logo{display:inline-flex;margin-right:auto;flex-shrink:0}.wordmark{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1}.wordmark>span:first-child{font-size:2.75rem;font-weight:600;letter-spacing:-.075em;line-height:.9}.wordmark>span:last-child{font-size:.625rem;letter-spacing:.22em;margin-top:.65rem;font-weight:500}.desktop-nav{display:flex;align-items:center;gap:2.2rem}.desktop-nav>a{font-size:.875rem;padding:10px 0;position:relative;transition:color .25s}.desktop-nav>a:after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav>a:hover,.desktop-nav>a[aria-current]{color:var(--gold)}.desktop-nav>a:hover:after,.desktop-nav>a[aria-current]:after{transform:scaleX(1)}.nav-offer{color:var(--gold);border:1px solid #d6ae6866;padding:13px 18px;min-height:48px;gap:1.6rem}.nav-offer:hover{background:var(--gold);color:var(--bg)}.header.scrolled{background:rgba(12,13,12,.9);backdrop-filter:blur(12px);border-color:var(--line)}.header.scrolled .nav{height:82px}.menu-toggle{display:none;background:none;width:48px;height:48px;padding:12px;flex-shrink:0}.menu-toggle span{display:block;background:var(--text);height:1px;width:24px;margin:7px 0}.mobile-menu{background:var(--bg);color:var(--text);border:0;width:100%;max-width:none;height:100svh;max-height:none;margin:0;padding:24px;overflow:auto}.mobile-menu::backdrop{background:var(--bg)}.mobile-menu[open]{display:flex;flex-direction:column;animation:menu-in .3s var(--ease)}.mobile-top{display:flex;justify-content:space-between;align-items:center}.menu-close{background:none;font-size:.875rem;padding:12px}.menu-close span{font-size:1.8rem;vertical-align:middle;margin-left:14px}.mobile-menu nav{display:flex;flex-direction:column;gap:1.2rem;margin:auto 0;padding:45px 0}.mobile-menu nav>a:not(.button){font-size:clamp(2rem,7vw,3rem);font-weight:400;letter-spacing:-.04em}.mobile-menu .button{margin-top:24px;align-self:flex-start}.mobile-bottom{font-size:.75rem;letter-spacing:.12em;color:var(--muted)}
/* Full-screen architecture, with measured cinematic entrance. */
.hero{min-height:100svh;position:relative;isolation:isolate;display:flex;align-items:center;background:var(--bg);overflow:hidden}.hero>img{position:absolute;inset:0;z-index:-3;object-position:60% 50%;animation:hero-image 1.6s var(--ease) both}.hero-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,8,6,.78) 0%,rgba(6,8,6,.43) 52%,rgba(6,8,6,.18) 100%),linear-gradient(0deg,rgba(5,8,6,.6),transparent 55%);animation:overlay-in 1.5s ease both}.hero-inner{padding-top:170px;padding-bottom:150px;position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center}.hero-eyebrow{max-width:650px;animation:rise .85s var(--ease) .22s both}.hero h1{font-size:clamp(4rem,7.9vw,8.3rem);line-height:1.03;letter-spacing:-.055em;max-width:1100px;margin-bottom:2rem}.title-line{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}.title-line>span,.title-line>em{display:block;animation:title-in 1.2s var(--ease) .3s both}.title-line>em{animation-delay:.46s;font-size:1.06em;line-height:1.1}.hero-copy{font-size:1rem;max-width:505px;line-height:1.8;color:#dedbd4;animation:rise 1s var(--ease) .6s both;margin-top:.25rem;margin-bottom:2rem}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;animation:rise 1s var(--ease) .72s both}.hero-bottom{position:absolute;left:0;right:0;bottom:30px;border-top:1px solid rgba(255,255,255,.23);padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.75rem;color:#d8d5cc;letter-spacing:.08em;animation:rise 1s var(--ease) .9s both}.scroll-link{text-transform:uppercase;display:flex;align-items:center;gap:45px}.scroll-link span{color:var(--gold);font-size:1.2rem}.hero-index{font-size:.68rem}.is-home .header{animation:rise 1s var(--ease) .8s both}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.pillar{position:relative;border-right:1px solid var(--line);padding:30px 28px 20px;display:flex;flex-direction:column;justify-content:space-between;min-height:205px}.pillar:first-child{padding-left:0}.pillar:last-child{border-right:0}.pillar:before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s}.pillar:hover:before{transform:scaleX(1)}.pillar div{transition:translate .3s}.pillar:hover div{translate:4px 0}.pillar .number{transition:color .3s}.pillar:hover .number{color:var(--gold)}.pillar h3{font-size:1.1rem;margin-bottom:.5rem;font-weight:500;letter-spacing:-.02em}.pillar p{font-size:.875rem;color:var(--muted);margin:0}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.image-frame{position:relative;overflow:hidden;background:var(--surface)}.image-frame>img{transition:transform 1.2s var(--ease),filter .7s;transform:scale(1)}.service-card .image-frame{aspect-ratio:4/5}.service-card:hover img,.project-card:hover img{transform:scale(1.035);filter:brightness(.88)}.image-arrow{position:absolute;bottom:20px;right:20px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff70;background:#0c0d0c44;font-size:1.4rem;transition:background .25s}.service-card:hover .image-arrow{background:var(--gold);border-color:var(--gold);color:var(--bg)}.service-caption{display:grid;grid-template-columns:24px 1fr;gap:18px;padding-top:24px}.service-caption h3{font-size:1.55rem;line-height:1.2;margin-bottom:14px}.service-caption p{font-size:.9375rem;color:var(--muted);margin-bottom:18px}.inline-link{font-size:.875rem;display:flex;gap:24px;align-items:center;color:var(--gold)}.inline-link span{transition:translate .25s}.service-card:hover .inline-link span{translate:4px 0}.feature{display:grid;grid-template-columns:1.08fr 1fr;gap:8%;align-items:center}.feature-visual{height:680px;position:relative}.image-label{position:absolute;bottom:20px;left:20px;font-size:.6875rem;letter-spacing:.12em;color:#fff;background:#0c0d0ca3;padding:10px 12px}.feature-copy h2{margin-bottom:28px}.feature-copy>p:not(.eyebrow){color:var(--muted)}.fine-list{padding:0;list-style:none;margin:28px 0}.fine-list li{border-top:1px solid var(--line);padding:15px 0;font-size:.875rem;display:flex;gap:18px}.fine-list li:before{content:'+';color:var(--gold);flex-shrink:0}.process-preview{display:grid;grid-template-columns:1fr 1fr;gap:10%}.process-preview h2{margin-bottom:28px}.process-preview .button{margin-top:32px}.steps{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:40px 1fr;gap:30px;padding:32px 0;border-bottom:1px solid var(--line)}.step h3{font-size:1.2rem;letter-spacing:-.02em;margin-bottom:12px}.step p{font-size:.9375rem;color:var(--muted);margin:0}.step .number{color:var(--gold)}
.portfolio{display:grid;grid-template-columns:1.15fr .85fr;column-gap:8%;row-gap:90px}.project-card .image-frame{aspect-ratio:4/5}.project-card:nth-child(2n){padding-top:130px}.project-card:nth-child(2n) .image-frame{aspect-ratio:4/4.7}.project-card:nth-child(4) .image-frame{aspect-ratio:1.2}.project-card:nth-child(3) .image-frame{aspect-ratio:1.15}.project-caption{display:flex;justify-content:space-between;gap:14px;padding-top:24px;border-bottom:1px solid var(--line);padding-bottom:24px}.project-caption h3{font-size:1.45rem;margin-bottom:7px}.project-caption p{font-size:.875rem;color:var(--muted);margin:0}.category{color:var(--muted);font-size:.75rem;text-align:right;line-height:1.5;padding-top:3px}.project-hover{position:absolute;bottom:24px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;background:rgba(12,13,12,.75);padding:16px 18px;opacity:0;translate:0 8px;transition:opacity .3s,translate .3s}.project-hover span{font-size:1.4rem}.project-card:hover .project-hover,.project-card:focus-visible .project-hover{opacity:1;translate:0 0}.home-portfolio{grid-template-columns:1fr 1.1fr}.home-portfolio .project-card:nth-child(2) .image-frame{aspect-ratio:1.2}.home-portfolio .project-card:first-child .image-frame{aspect-ratio:4/5}.testimonials{padding-top:1rem;padding-bottom:var(--space)}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5%}.quote-grid figure{margin:0;border-top:1px solid var(--line);padding-top:28px}.quote-grid blockquote{font-size:1.0625rem;line-height:1.8;margin:0 0 24px;font-weight:400}.quote-grid figcaption{font-size:.875rem;color:var(--muted)}
.global-cta{padding:clamp(60px,7vw,115px) 0;background:var(--gold);color:var(--bg);margin-top:20px}.global-cta .eyebrow{color:#3f3525}.global-cta h2{font-size:clamp(3rem,6vw,6rem);max-width:750px}.global-cta h2 em{color:var(--bg)}.cta-grid{display:flex;align-items:center;justify-content:space-between;gap:48px}.global-cta .button{flex-shrink:0;align-self:flex-end;margin-bottom:10px}.footer{padding:90px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.3fr 1.5fr;gap:5%;padding-bottom:80px}.footer .wordmark>span:first-child{font-size:3.6rem}.footer .wordmark>span:last-child{font-size:.7rem}.footer h2{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:25px}.footer-grid>div>a{display:block;font-size:.875rem;margin-bottom:12px;transition:color .2s;overflow-wrap:anywhere}.footer-grid>div>a:hover{color:var(--gold)}.footer p{font-size:.875rem;color:var(--muted);line-height:1.9;margin-top:24px}.footer-bottom{border-top:1px solid var(--line);padding-top:26px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.75rem;letter-spacing:.035em}
/* Interior pages share the same editorial grid, rather than a repeated landing. */
.page-intro{padding-top:205px;padding-bottom:75px}.page-intro .eyebrow{margin-bottom:35px}.intro-row{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;align-items:end}.intro-row h1{font-size:clamp(3.7rem,6.3vw,6.8rem);line-height:1.06}.intro-aside{max-width:370px;justify-self:end;color:var(--muted)}.intro-aside .number{display:block;margin-bottom:24px;color:var(--gold)}.intro-aside p{margin-bottom:5px}.service-detail{display:grid;grid-template-columns:1.22fr 1fr;gap:8%;align-items:center;padding-bottom:110px;scroll-margin-top:110px}.service-detail:nth-of-type(2n+1){grid-template-columns:1fr 1.22fr}.service-detail:nth-of-type(2n+1) .service-detail-visual{order:2}.service-detail-visual{aspect-ratio:1.06}.service-detail-copy .number{color:var(--gold);display:block;margin-bottom:28px}.service-detail-copy h2{font-size:clamp(2.6rem,4.4vw,4.5rem);margin-bottom:26px}.service-detail-copy>p{color:var(--muted)}.service-detail-copy .large-copy{font-size:1.125rem;color:var(--text)}.portfolio-full{padding-bottom:120px}.about-photo img{aspect-ratio:2.15;height:auto;max-height:640px;object-fit:cover}.photo-caption{font-size:.75rem;letter-spacing:.045em;color:var(--muted);margin:16px 0 0}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;padding-bottom:100px}.contact-details>div{padding:25px 0;border-top:1px solid var(--line)}.contact-details h2{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin-bottom:16px}.contact-details a:not(.button){font-size:clamp(1rem,1.6vw,1.4rem);display:flex;justify-content:space-between;gap:12px;overflow-wrap:anywhere}.contact-details p{margin:0;color:var(--muted)}.contact-details>.button{margin-top:20px}.contact-image img{aspect-ratio:1;height:auto}.offer-layout{display:grid;grid-template-columns:1fr 2fr;gap:10%;padding-bottom:var(--space)}.offer-aside>a{display:block;font-size:.9375rem;margin-bottom:14px;overflow-wrap:anywhere}.offer-aside>p:not(.eyebrow){color:var(--muted);font-size:.9375rem;margin-top:30px}.demo-note{border-top:1px solid var(--line);margin-top:45px;padding-top:25px;color:var(--muted);font-size:.875rem}.demo-note p{margin-top:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.field{display:flex;flex-direction:column;gap:10px}.field.full{grid-column:1/-1}.field label{font-size:.875rem;color:var(--muted)}.field label span{color:var(--gold)}.field input,.field select,.field textarea{background:var(--surface);border:none;border-bottom:1px solid #ffffff38;color:var(--text);border-radius:0;outline:none;padding:14px 12px;min-height:55px;width:100%;transition:border-color .25s,background .25s}.field select{color-scheme:dark}.field textarea{resize:vertical;min-height:140px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);background:#1a1e18;box-shadow:0 1px var(--gold)}.form-end{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:35px}.form-end p{margin:0;color:var(--muted);font-size:.75rem}.form-result{border:1px solid var(--gold);padding:30px;margin-top:30px;background:var(--surface)}.form-result h2{font-size:2rem;margin-bottom:20px}.form-result p:not(.eyebrow){color:var(--muted)}.form-result dl{margin:20px 0}.form-result dl div{display:grid;grid-template-columns:120px 1fr;border-top:1px solid var(--line);padding:12px 0;gap:15px;font-size:.875rem}.form-result dt{color:var(--muted)}.form-result dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.project-facts{display:flex;gap:70px;border-top:1px solid var(--line);padding:24px 0 40px;margin:0}.project-facts dt{color:var(--muted);font-size:.75rem;margin-bottom:8px}.project-facts dd{margin:0;font-size:.9375rem}.detail-photo{margin:0;display:flex;flex-direction:column;align-items:center;background:var(--surface);padding:40px}.detail-photo img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:1000px}.detail-photo figcaption{color:var(--muted);font-size:.8rem;margin-top:22px}.project-notes{max-width:750px;margin:40px auto}.project-pagination{display:flex;justify-content:space-between;gap:30px;margin:35px 0 90px}.project-detail{padding-bottom:10px}
@view-transition{navigation:auto}::view-transition-old(root){animation:page-out .16s ease both}::view-transition-new(root){animation:page-in .35s var(--ease) both}.enter{animation:rise 1s var(--ease) both}.intro-row .enter{animation-delay:.1s}.reveal-ready [data-reveal]{opacity:0;translate:0 22px;transition:opacity .9s var(--ease),translate .9s var(--ease)}.reveal-ready [data-reveal].visible{opacity:1;translate:0 0}@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes title-in{from{transform:translateY(110%);opacity:.1}to{transform:none;opacity:1}}@keyframes hero-image{from{opacity:.2;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes overlay-in{from{opacity:.4}to{opacity:1}}@keyframes menu-in{from{opacity:0;clip-path:inset(0 0 12% 0)}to{opacity:1;clip-path:inset(0)}}@keyframes page-out{to{opacity:0}}@keyframes page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:761px) and (max-width:1100px){.wrap{width:calc(100% - 64px)}.nav{gap:24px}.desktop-nav{gap:22px}.nav-offer{gap:20px}.pillar{padding-inline:18px}.footer-grid{gap:25px;grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.feature-visual{height:590px}.feature{gap:6%}.service-caption{grid-template-columns:1fr}.contact-layout{gap:7%}.intro-row{gap:5%}.offer-layout{gap:6%}.hero h1{font-size:8.4vw}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:block}.nav{gap:20px}.nav-offer{margin-left:auto}.hero-index{display:none}.footer-grid{grid-template-columns:1.3fr 1fr;gap:45px}.footer-grid>div:last-child{grid-column:auto}.service-grid{gap:20px}.service-caption h3{font-size:1.3rem}.section-heading{gap:30px}.section-copy{max-width:310px}}
@media(max-width:760px){:root{--space:80px}.wrap{width:calc(100% - 40px)}.nav{height:90px;gap:12px}.header.scrolled .nav{height:74px}.wordmark>span:first-child{font-size:2.25rem}.wordmark>span:last-child{font-size:.5rem;letter-spacing:.18em}.nav-offer{display:none}.menu-toggle{margin-left:auto}.hero-inner{padding-top:145px;padding-bottom:130px;min-height:100svh;justify-content:center}.hero h1{font-size:clamp(2.9rem,8.8vw,4.6rem);line-height:1.1;letter-spacing:-.05em;margin-bottom:24px}.hero-eyebrow{font-size:.65rem;max-width:330px;margin-bottom:22px}.hero-copy{font-size:.9375rem;max-width:440px}.hero-actions{gap:12px}.hero-actions .button{font-size:.8125rem;min-height:54px;padding-inline:17px;gap:20px}.hero-bottom{bottom:24px;font-size:.65rem;gap:10px;padding-top:17px}.hero-bottom>span:not(.hero-index){max-width:150px;text-align:right}.hero>img{object-position:60% center}.hero-overlay{background:linear-gradient(90deg,#050806af,#05080660),linear-gradient(0deg,#050806aa,transparent 80%)}.section-heading{display:block;margin-bottom:40px}.section-heading .section-copy{max-width:100%;margin-top:28px}.section-heading>.button{margin-top:22px}.eyebrow{font-size:.6875rem;margin-bottom:20px}.pillars{grid-template-columns:1fr 1fr}.pillar{padding:22px 18px 22px 0;border-bottom:1px solid var(--line);min-height:185px}.pillar:nth-child(2n){padding-left:20px;border-right:0}.pillar h3{font-size:1rem}.pillar p{font-size:.8125rem}.service-grid{grid-template-columns:1fr;gap:45px}.service-card .image-frame{aspect-ratio:1.15}.service-caption{grid-template-columns:25px 1fr;gap:16px}.service-caption h3{font-size:1.65rem}.service-caption p{font-size:.9375rem;max-width:400px}.service-card .image-arrow{width:42px;height:42px}.feature{grid-template-columns:1fr;gap:40px}.feature-visual{height:auto;aspect-ratio:4/5}.feature-copy h2{font-size:3.1rem}.process-preview{grid-template-columns:1fr;gap:40px}.process-preview .section-copy{max-width:100%}.step{gap:20px}.portfolio{grid-template-columns:1fr;gap:40px}.project-card:nth-child(2n){padding-top:0}.project-card .image-frame{aspect-ratio:4/5}.project-card:nth-child(3) .image-frame{aspect-ratio:4/5}.project-caption h3{font-size:1.4rem}.project-hover{opacity:1;translate:0 0;bottom:14px;left:14px;right:14px;padding:12px 14px;background:#0c0d0c66}.quote-grid{grid-template-columns:1fr;gap:30px}.quote-grid blockquote{font-size:1rem}.cta-grid{display:block}.global-cta h2{font-size:3.3rem;line-height:1.15}.global-cta .button{margin-top:32px;margin-bottom:0}.footer{padding:65px 0 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:38px 25px;padding-bottom:45px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer h2{margin-bottom:20px}.footer p{margin-top:20px}.footer-bottom{flex-direction:column;gap:10px;font-size:.7rem}.page-intro{padding-top:155px;padding-bottom:48px}.page-intro .eyebrow{margin-bottom:28px}.intro-row{grid-template-columns:1fr;gap:25px}.intro-row h1{font-size:clamp(2.9rem,10vw,4.5rem);overflow-wrap:normal}.intro-aside{justify-self:start;max-width:100%;font-size:.9375rem}.intro-aside .number{display:none}.service-detail,.service-detail:nth-of-type(2n+1){grid-template-columns:1fr;gap:32px;padding-bottom:75px}.service-detail:nth-of-type(2n+1) .service-detail-visual{order:0}.service-detail-copy h2{font-size:2.9rem}.service-detail-visual{aspect-ratio:1.1}.service-detail-copy .number{margin-bottom:20px}.portfolio-full{padding-bottom:70px}.about-photo img{aspect-ratio:1.18;object-fit:cover}.photo-caption{font-size:.7rem}.contact-layout{grid-template-columns:1fr;gap:45px;padding-bottom:70px}.contact-details a:not(.button){font-size:1rem}.offer-layout{grid-template-columns:1fr;gap:40px}.offer-aside{display:grid;grid-template-columns:1fr}.offer-aside>.eyebrow{margin-bottom:15px}.offer-aside>p:not(.eyebrow){margin:10px 0 0}.demo-note{margin-top:20px;padding-top:20px;max-width:500px}.demo-note p{margin-bottom:0}.form-grid{gap:25px 20px}.form-end{align-items:flex-start}.form-end .button{gap:20px}.form-result{padding:22px}.project-facts{gap:24px;flex-wrap:wrap;padding-bottom:24px}.project-facts>div{min-width:90px}.detail-photo{padding:16px}.detail-photo figcaption{font-size:.75rem}.project-pagination .button{font-size:.8rem;gap:16px}.project-pagination{margin-bottom:65px}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:2.7rem}.hero-inner{padding-top:132px;padding-bottom:100px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-copy{font-size:.875rem}.form-grid{grid-template-columns:1fr}.form-end{flex-direction:column}.footer-grid{gap:35px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready [data-reveal]{opacity:1!important;translate:none!important}.title-line>span,.title-line>em{transform:none!important;opacity:1!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
/* Final polish: viewport-centered navigation, living photography and tactile pillars. */
@media(min-width:1061px){.desktop-nav{position:absolute;left:50%;transform:translateX(-50%);gap:clamp(36px,3.1vw,48px)}.desktop-nav>a{font-size:1rem;font-weight:500}.nav-offer{margin-left:auto}}
@media(min-width:901px) and (max-width:1060px){.desktop-nav{display:none}.menu-toggle{display:block}.nav-offer{margin-left:auto}}
.hero-visual{position:absolute;inset:-5%;z-index:-3;transform:translate3d(0,var(--hero-shift,0px),0);animation:overlay-in 1.6s var(--ease) both}
.hero-scene{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease-in-out;overflow:hidden;pointer-events:none}
.hero-scene.is-active{opacity:1}
.hero-scene img{object-position:60% center;width:100%;height:100%;transform:scale(1.02);transform-origin:52% 50%}
.hero.motion-enabled .hero-scene img{animation:cinema-in 18s ease-in-out infinite alternate}
.hero.motion-enabled .scene-1 img{animation-name:cinema-pan;transform-origin:40% 50%}
.hero.motion-enabled .scene-2 img{animation-name:cinema-rise;transform-origin:60% 60%}
.hero.motion-paused .hero-scene img{animation-play-state:paused}
.hero.motion-paused .hero-visual{transform:none}
.hero-motion-control{position:absolute;right:0;bottom:82px;min-height:44px;padding:10px 14px;border:1px solid #ffffff33;background:#0c0d0c66;color:var(--text);font-size:.75rem;letter-spacing:.025em;transition:border-color .25s,background .25s}
.hero-motion-control:hover{border-color:var(--gold);background:#0c0d0c99}
.hero-motion-control[hidden]{display:none}
.pillar-interactive{overflow:hidden;isolation:isolate;padding:30px 24px 24px!important;min-height:215px}
.pillar-photo{position:absolute;inset:0;z-index:-2;opacity:0;transform:scale(1.05);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.pillar-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0c0d0c22,#0c0d0ca6)}
.pillar-photo img{height:100%;object-fit:cover;object-position:center}
.pillar-1 .pillar-photo img{object-position:center 62%;transform:scale(1.5)}
.pillar-2 .pillar-photo img{object-position:center 60%;transform:scale(1.35)}
.pillar-interactive .pillar-copy{position:relative;transition:transform .5s var(--ease)}
.pillar-interactive .number{position:relative;z-index:1}
.pillar-interactive:before{z-index:2}
.pillar-interactive:hover .pillar-photo,.pillar-interactive:focus-visible .pillar-photo{opacity:.55;transform:scale(1)}
.pillar-interactive:hover .pillar-copy,.pillar-interactive:focus-visible .pillar-copy{transform:translateY(-4px);translate:none}
.pillar-interactive:focus-visible:before{transform:scaleX(1)}
.pillar-interactive:hover .number,.pillar-interactive:focus-visible .number{color:var(--gold)}
.pillar-interactive p{color:#bbb8b0}
.pillar-arrow{position:absolute;top:24px;right:24px;font-size:1.25rem;color:var(--gold);opacity:0;transform:translate(-4px,4px);transition:opacity .5s,transform .5s var(--ease)}
.pillar-interactive:hover .pillar-arrow,.pillar-interactive:focus-visible .pillar-arrow{opacity:1;transform:none}
@keyframes cinema-in{from{transform:scale(1.01) translate3d(0,0,0)}to{transform:scale(1.065) translate3d(-.5%,.3%,0)}}
@keyframes cinema-pan{from{transform:scale(1.055) translate3d(-1.2%,0,0)}to{transform:scale(1.035) translate3d(1.2%,0,0)}}
@keyframes cinema-rise{from{transform:scale(1.02) translate3d(0,.6%,0)}to{transform:scale(1.06) translate3d(0,-.6%,0)}}
@media(max-width:760px){.hero-motion-control{bottom:75px;padding:8px 12px;font-size:.6875rem}.pillar-interactive{padding:24px 16px 22px!important;min-height:200px}.pillar-interactive .pillar-photo{opacity:.38;transform:scale(1)}.pillar-interactive p{color:#c5c2ba}.pillar-arrow{top:20px;right:16px}.hero-visual{inset:-5%}}
@media(hover:none){.pillar-interactive .pillar-photo{opacity:.38;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.hero-visual{transform:none!important;animation:none!important}.hero-scene{transition:none!important}.hero-scene img{animation:none!important;transform:none!important}.hero-scene:not(.scene-0){opacity:0!important}.hero-scene.scene-0{opacity:1!important}.hero-motion-control{display:none!important}.pillar-photo,.pillar-copy,.pillar-arrow{transition:none!important}}
.hero:after{content:'';position:absolute;inset:0 0 auto;height:170px;z-index:-1;pointer-events:none;background:linear-gradient(#05080688,transparent)}
.hero-motion-control{bottom:104px}
@media(max-width:760px){.hero-motion-control{bottom:88px}}
