@charset "UTF-8";
:root{--bg:#0b0c0d;--panel:#131516;--ink:#f5f4ec;--muted:#a6a8a5;--yellow:#ffd21c;--line:#2c2e2e;--font:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}body.viewer-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.25;cursor:default}[hidden]{display:none!important}::selection{background:var(--yellow);color:var(--bg)}:focus-visible{outline:2px solid var(--yellow);outline-offset:6px}.wrap{width:calc(100% - 100px);max-width:1500px;margin-inline:auto}.accent,em{color:var(--yellow);font-style:normal}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.19em;color:var(--yellow);line-height:1.8}.body-copy{color:var(--muted);font-size:15px;line-height:1.8;max-width:530px}.index{font-size:11px;letter-spacing:.1em;color:var(--muted);font-variant-numeric:tabular-nums}h1,h2,h3{margin:0;font-weight:800}h1{font-size:clamp(52px,5.6vw,87px);letter-spacing:-.065em;line-height:1.02}h2{font-size:clamp(30px,3.1vw,47px);letter-spacing:-.045em;line-height:1.12}h3{font-size:21px;letter-spacing:-.025em}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:52px;padding:16px 23px;background:var(--yellow);color:var(--bg);font-size:13px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#ffe16a;transform:translateY(-2px)}.button span{font-size:21px;font-weight:400;line-height:.8}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px;font-weight:700;min-height:44px;border-bottom:1px solid var(--line)}.text-link span{color:var(--yellow);font-size:20px}.text-link:hover{border-color:var(--yellow)}.skip-link{position:fixed;top:10px;left:16px;z-index:50;padding:14px;background:var(--yellow);color:var(--bg);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:20;background:rgba(11,12,13,.96);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:38px;min-height:96px}.brand{display:flex;align-items:center;gap:11px;margin-right:auto}.brand>img{width:60px;height:60px;object-fit:contain}.brand>span{font-size:26px;font-weight:900;letter-spacing:-1.4px;line-height:1}.brand small{display:block;font-size:9px;line-height:1;letter-spacing:.27em;text-transform:uppercase;margin-top:7px;color:var(--muted);font-weight:500}.main-nav{display:flex;gap:30px;align-items:center}.main-nav a{font-size:12px;color:var(--muted);font-weight:700;min-height:44px;display:flex;align-items:center;position:relative}.main-nav a:hover,.main-nav a[aria-current]{color:var(--ink)}.main-nav a[aria-current]:after{content:'';position:absolute;height:2px;background:var(--yellow);bottom:0;left:0;right:0}.languages{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding-left:25px;border-left:1px solid var(--line)}.languages a{min-width:30px;min-height:44px;display:grid;place-items:center;color:var(--muted)}.languages a[aria-current]{color:var(--yellow)}.languages span{color:#666}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:.82fr 1.18fr;gap:25px;align-items:center;min-height:650px;padding-block:52px 64px}.hero-copy{position:relative;z-index:1}.hero-copy .eyebrow{margin-bottom:24px}.hero-copy h1{margin-bottom:25px}.hero-copy .body-copy{max-width:370px;margin-bottom:28px}.hero-signature{font-size:10px;color:#747873;text-transform:uppercase;letter-spacing:.2em;margin-top:38px}.hero-image{position:relative;align-self:stretch;min-height:460px;display:flex;flex-direction:column;justify-content:center}.hero-image:before{content:'';position:absolute;height:40px;top:0;right:0;width:2px;background:var(--yellow)}.hero-image img{width:100%;aspect-ratio:1.5;object-fit:contain}.hero-image figcaption{display:flex;justify-content:space-between;gap:16px;font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);padding-top:16px}.selected-section{padding-block:65px 80px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:34px}.section-heading h2{margin-top:13px}.section-heading .body-copy{margin-top:14px}.selected-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.work-card{display:block}.work-image{position:relative;overflow:hidden;background:var(--panel)}.work-image img{width:100%;aspect-ratio:1.5;object-fit:contain;transition:transform .4s}.work-card:hover img{transform:scale(1.025)}.round-arrow{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff80;background:#0b0c0db3;border-radius:50%;font-size:17px}.work-card:hover .round-arrow{background:var(--yellow);border-color:var(--yellow);color:var(--bg)}.work-caption{display:flex;gap:16px;align-items:center;margin-top:18px}.work-caption h3{font-size:17px}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-block:80px;border-top:1px solid var(--line)}.about-image img{width:100%;aspect-ratio:1.5;object-fit:contain}.about-image figcaption{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-top:14px}.about-copy h2{margin:16px 0 23px}.about-copy .body-copy+.body-copy{margin-top:15px}.about-copy .text-link{margin-top:20px}.scope-section{border-top:1px solid var(--line);padding-block:70px 80px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:38px}.service{border-top:1px solid var(--line);padding-top:22px}.service .index{color:var(--yellow)}.service h3{margin:24px 0 12px}.service p{color:var(--muted);font-size:14px;line-height:1.8;max-width:360px}.contact-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;padding-block:80px 90px}.contact-section h2{margin:17px 0 22px}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:15px;justify-self:end;min-width:265px}.contact-links .button{width:100%}.contact-links .text-link{width:100%}.contact-detail{font-size:12px;color:var(--muted);line-height:1.6;min-height:26px;display:flex;align-items:center}.contact-detail:hover{color:var(--ink)}.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:35px 40px}.footer-brand{font-size:16px;font-weight:800;letter-spacing:-.04em}.footer-brand span{color:var(--yellow)}.site-footer p{font-size:10px;color:var(--muted);margin-top:10px;line-height:1.8}.footer-motto{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#737772}.back-top{font-size:11px;min-height:44px;display:flex;align-items:center}
.portfolio-intro{padding-block:76px 54px}.portfolio-intro h1{font-size:clamp(49px,6.1vw,90px);margin:20px 0 24px}.portfolio-intro .body-copy{max-width:560px}.portfolio-section{padding-bottom:80px}.filter-bar{border-block:1px solid var(--line);padding-block:18px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:34px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filter{border:1px solid transparent;background:transparent;padding:12px 16px;min-height:44px;font-size:12px;color:var(--muted)}.filter span{font-size:9px;margin-left:12px;font-variant-numeric:tabular-nums;opacity:.6}.filter:hover{border-color:var(--line);color:var(--ink)}.filter.active{background:var(--yellow);color:var(--bg)}.photo-count{color:var(--muted);font-size:11px;white-space:nowrap}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px;align-items:start}.photo-link{display:block}.gallery-image{position:relative;overflow:hidden;background:var(--panel)}.gallery-image img{width:100%;aspect-ratio:1.5;object-fit:contain;transition:transform .4s}.photo-link:hover img{transform:scale(1.018)}.photo-expand{position:absolute;right:17px;bottom:17px;border:1px solid #ffffff80;background:#0b0c0db3;display:grid;place-items:center;width:38px;height:38px;font-size:23px}.photo-link:hover .photo-expand{background:var(--yellow);color:var(--bg);border-color:var(--yellow)}.gallery-caption{display:flex;justify-content:space-between;align-items:center;padding-top:18px}.photo-category{text-transform:uppercase;font-size:9px;color:var(--yellow);letter-spacing:.13em}.gallery-caption h2{font-size:22px;margin:8px 0 6px;letter-spacing:-.02em}.gallery-caption p{font-size:12px;color:var(--muted)}
dialog{max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;padding:0;border:0;background:#0b0c0dfb;color:var(--ink)}dialog::backdrop{background:#0b0c0d}.viewer{height:100%;padding:18px 32px 12px;display:flex;flex-direction:column}.viewer-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0}.viewer-brand{font-size:14px;font-weight:700}.viewer-close{background:none;border:0;min-height:44px;padding:6px 0 6px 16px;display:flex;align-items:center;gap:16px;font-size:12px}.viewer-close span{font-size:32px;font-weight:300}.viewer-stage{min-height:0;flex:1;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;gap:20px;padding-block:12px}.viewer-image{width:100%;height:100%;min-height:0;object-fit:contain}.viewer-arrow{display:grid;place-items:center;min-width:48px;min-height:48px;background:transparent;border:1px solid var(--line);font-size:25px}.viewer-arrow:hover:enabled{border-color:var(--yellow);color:var(--yellow)}.viewer-footer{display:flex;justify-content:space-between;gap:25px;padding:10px 72px;font-size:13px;align-items:center;flex-shrink:0}.viewer-count{color:var(--yellow);font-size:11px;white-space:nowrap}.viewer-instructions{text-align:center;font-size:10px;color:var(--muted);padding:8px;line-height:1.5;flex-shrink:0}
@media(min-width:1600px){.hero{min-height:730px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-inner{gap:22px}.main-nav{gap:22px}.hero{min-height:560px}.hero h1{font-size:clamp(43px,5.8vw,70px)}.hero-image{min-height:370px}.eyebrow{font-size:9px}.hero-copy .body-copy{font-size:14px}.hero-signature{font-size:8px}.about-section{gap:6%}.contact-section{gap:35px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header-inner{gap:12px;min-height:80px}.brand>img{width:49px;height:49px}.brand>span{font-size:23px}.brand small{font-size:8px}.languages{padding-left:12px}.main-nav{gap:16px}.main-nav a{font-size:11px}.hero{grid-template-columns:1fr;gap:32px;padding-block:48px;min-height:0}.hero h1{font-size:clamp(51px,9.3vw,74px)}.hero-copy .body-copy{max-width:430px;font-size:15px}.hero-copy .eyebrow{margin-bottom:17px}.hero-signature{display:none}.hero-image{min-height:0;align-self:auto}.hero-image:before{display:none}.hero-image img{aspect-ratio:1.5}.hero-image figcaption{font-size:8px}.selected-section{padding-block:48px 55px}.selected-grid{gap:14px}.work-caption{gap:8px}.work-caption h3{font-size:14px}.work-caption .index{font-size:9px}.section-heading{gap:18px}.section-heading .body-copy{font-size:14px}.section-heading .text-link{white-space:nowrap}.about-section{grid-template-columns:1fr;gap:30px;padding-block:55px}.about-image{max-width:620px}.about-copy{max-width:600px}.about-copy h2{font-size:37px}.scope-section{padding-block:55px}.services{gap:20px}.service h3{font-size:19px}.service p{font-size:13px}.contact-section{grid-template-columns:1fr;gap:30px;padding-block:55px}.contact-links{justify-self:start}.contact-section h2{font-size:40px}.footer-motto{display:none}.portfolio-intro{padding-block:52px 40px}.portfolio-intro h1{font-size:clamp(45px,8.5vw,68px)}.filter-bar{align-items:flex-start;flex-direction:column;gap:14px}.gallery-grid{gap:35px 20px}.portfolio-section{padding-bottom:55px}}
@media(max-width:600px){html{scroll-padding-top:90px}.header-inner{flex-wrap:wrap;column-gap:10px;row-gap:0}.brand{min-height:78px}.menu-toggle{order:2;border:1px solid var(--line);background:transparent;width:44px;height:44px;padding:12px;flex-shrink:0}.js-ready .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px}.menu-toggle span{height:1px;width:18px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.languages{order:1;border:0;padding:0;gap:0}.languages a{min-width:28px}.languages span{margin-inline:2px}.main-nav{order:3;flex-basis:100%;padding-block:7px 14px;justify-content:space-between;gap:12px;border-top:1px solid var(--line)}.main-nav a{font-size:12px}.js-ready .main-nav{display:none}.js-ready .main-nav.open{display:flex}.brand>span{font-size:22px}.brand>img{width:44px;height:44px}.brand{gap:7px}.hero{padding-block:38px 40px;gap:32px}.hero h1{font-size:clamp(46px,11.8vw,67px)}.hero-copy .body-copy{font-size:14px}.eyebrow{font-size:8px;letter-spacing:.15em}.section-heading{align-items:flex-start;flex-direction:column;margin-bottom:24px}.section-heading h2{font-size:33px}.section-heading .text-link{font-size:12px;min-height:39px}.selected-grid{grid-template-columns:1fr;gap:30px}.work-caption{gap:13px;margin-top:13px}.work-caption h3{font-size:18px}.work-caption .index{font-size:10px}.work-image img{aspect-ratio:1.5}.about-copy h2{font-size:33px}.body-copy{font-size:14px}.services{grid-template-columns:1fr;gap:28px;margin-top:28px}.service h3{margin:15px 0 8px}.service p{max-width:100%;font-size:14px}.contact-section h2{font-size:36px}.contact-links{width:100%;min-width:0}.contact-detail{min-height:32px;font-size:13px}.site-footer{flex-wrap:wrap;gap:17px;padding-block:28px}.back-top{font-size:10px}.portfolio-intro{padding-block:39px 33px}.portfolio-intro h1{font-size:clamp(41px,9.9vw,59px)}.portfolio-intro .body-copy{font-size:14px}.filter-bar{padding-block:14px;margin-bottom:24px}.filters{gap:6px}.filter{font-size:11px;padding:12px 10px;border-color:var(--line)}.filter span{margin-left:8px;font-size:8px}.gallery-grid{grid-template-columns:1fr;gap:32px}.gallery-caption{padding-top:14px}.gallery-caption h2{font-size:22px}.viewer{padding:10px 16px}.viewer-header{gap:10px}.viewer-brand{font-size:12px}.viewer-stage{grid-template-columns:1fr;position:relative;gap:0;padding-bottom:60px}.viewer-image{grid-column:1;grid-row:1}.viewer-arrow{position:absolute;bottom:0;width:48px;height:44px;min-height:44px}.viewer-prev{left:calc(50% - 60px)}.viewer-next{right:calc(50% - 60px)}.viewer-footer{padding:16px 0 4px;font-size:12px;gap:12px}.viewer-instructions{font-size:9px;padding:8px 0 4px}.viewer-close{min-width:70px;justify-content:flex-end}.viewer-caption{line-height:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
