@font-face{font-family:Geist;src:url('/fonts/geist-latin.woff') format('woff');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#080909;--surface:#111313;--text:#f5f5f2;--muted:#9b9d9a;--accent:#b2ff00;--line:#ffffff16;--page:1280px;--content:1180px;--reading:620px;--pad:32px;--section:140px;--display:clamp(52px,5.3vw,72px);--heading:clamp(34px,3.6vw,48px);--ease:cubic-bezier(.22,1,.36,1)}
.site-header .brand-symbol{display:block;width:34px;height:auto;object-fit:contain;margin-right:10px;padding:0;border:0;border-radius:0;flex-shrink:0}
.site-header .brand-name{display:inline-flex}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--text);font-family:Geist,Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button{touch-action:manipulation}button:disabled{cursor:wait;opacity:.5}[hidden]{display:none!important}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h1{font-size:var(--display);line-height:1.02;letter-spacing:-.05em}h2{font-size:var(--heading);line-height:1.1;letter-spacing:-.045em}h3{font-size:24px;line-height:1.2;letter-spacing:-.035em}p{color:var(--muted)}.muted{color:var(--muted)}.wrap{width:calc(100% - var(--pad)*2);max-width:var(--content);margin-inline:auto}.eyebrow{font-size:11px;letter-spacing:.1em;line-height:1.5;text-transform:uppercase;color:var(--muted)}.eyebrow+h1,.eyebrow+h2{margin-top:16px}.skip{position:fixed;z-index:20;top:12px;left:12px;padding:12px 24px;background:var(--accent);color:var(--bg);transform:translateY(-160%)}.skip:focus{transform:none}.site-header{max-width:var(--page);height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;font-size:24px;font-weight:600;letter-spacing:-1.2px;white-space:nowrap}.brand-dot{color:var(--accent)}.brand-symbol{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #f5f5f2;border-radius:8px;font-size:19px;margin-right:8px;font-weight:500;letter-spacing:-4px;padding-right:4px}.brand-symbol span{font-size:17px}.site-header nav{display:flex;gap:32px}.site-header nav a{font-size:13px;color:var(--muted);padding-block:12px;transition:color .2s}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--text)}.nav-action{display:inline-flex;align-items:center;gap:24px;padding:12px 16px;border:1px solid #ffffff26;border-radius:8px;font-size:13px;transition:background .2s,border-color .2s}.nav-action:hover{background:#ffffff0c;border-color:#ffffff50}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:48px;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;transition:background .2s,transform .3s var(--ease)}.primary{background:var(--accent);color:#141909}.button:hover{transform:translateY(-2px);background:#caff76}.button span,.text-link span{display:inline-block;transition:transform .3s var(--ease)}.button:hover span,.text-link:hover span{transform:translate(2px,-2px)}.text-link{font-size:14px;display:inline-flex;gap:16px;align-items:center;min-height:44px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:8px;vertical-align:2px}.hero{text-align:center;padding-top:72px}.hero h1{margin-top:24px}.hero-copy{font-size:16px;max-width:480px;margin:24px auto 32px}.hero .muted{color:#a5a7a3}.search-stage{position:relative;max-width:620px;margin:72px auto 0;padding:0 0 48px;isolation:isolate}.search-light{position:absolute;z-index:-1;inset:-24px -48px 0;background:radial-gradient(ellipse at center,#b2ff0009,transparent 65%);pointer-events:none}.search-window{text-align:left;background:linear-gradient(130deg,#1c1e1c,#101211 65%);border:1px solid #ffffff25;border-radius:16px;box-shadow:0 24px 72px #0008,inset 0 1px 0 #ffffff05;overflow:hidden}.search-field{height:72px;display:flex;align-items:center;gap:16px;padding:0 24px;border-bottom:1px solid var(--line)}.search-field svg{width:24px;height:24px;color:#777d75;flex-shrink:0}.typed-brand{font-size:24px;letter-spacing:-.04em}.typing-cursor{display:none;width:2px;height:24px;background:var(--accent);margin-left:-12px}.replay{margin-left:auto;border:1px solid #ffffff18;border-radius:8px;color:var(--muted);background:#ffffff05;min-width:44px;min-height:44px;font-size:20px}.replay:hover{color:var(--accent);border-color:#b2ff0060}.search-result{padding:24px;display:flex;gap:16px;align-items:center}.result-mark{position:relative;display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;background:#b2ff0012;border:1px solid #b2ff0035;border-radius:12px;color:var(--accent);font-size:22px;letter-spacing:-2px}.result-mark span{position:absolute;right:3px;top:0;font-size:12px}.search-result strong{font-size:16px;font-weight:500;letter-spacing:-.025em}.search-result p{font-size:13px;margin-top:4px}.result-tick{color:var(--accent);margin-left:auto;font-size:18px}.stage-caption{font-size:12px;margin-top:24px;color:#8a8d87}.hero-baseline{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:24px 0;font-size:10px;letter-spacing:.06em;color:#93988f}.hero-baseline a{font-size:12px;letter-spacing:0;display:flex;gap:24px;align-items:center;min-height:44px}.section{padding-block:var(--section)}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:48px}.section-intro>p{font-size:15px;max-width:480px}.service-row{display:grid;grid-template-columns:72px 1fr 1fr 48px;align-items:center;gap:24px;min-height:120px;border-top:1px solid var(--line);transition:padding .4s var(--ease),background .4s}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row h3{font-size:clamp(24px,2.6vw,32px)}.service-number{font-size:12px;color:#858a82;font-variant-numeric:tabular-nums}.service-row p{font-size:14px}.row-arrow{font-size:24px;justify-self:end;color:var(--muted);transition:transform .3s,color .3s}.service-row:hover{padding-inline:16px;background:#ffffff03}.service-row:hover .row-arrow{color:var(--accent);transform:translate(3px,-3px)}.work-section{padding-bottom:var(--section)}.work-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.media{overflow:hidden;border-radius:22px;background:#111313;border:1px solid var(--line);position:relative}.media img{display:block;width:100%;height:100%;object-fit:cover}.work-item .media{padding:32px;aspect-ratio:1.22;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 100%,#242724,#111313 80%)}.work-item:nth-child(2) .media{background:#101212}.work-caption{display:flex;flex-direction:column;gap:8px;padding-top:24px}.work-caption h3{font-size:18px;letter-spacing:-.02em}.work-caption>span{font-size:12px;color:var(--muted)}.concept{width:100%;border:1px solid #ffffff20;border-radius:12px;overflow:hidden;position:relative;transition:transform .7s var(--ease);box-shadow:0 24px 48px #0004}.work-item:hover .concept{transform:translateY(-8px)}.concept-chrome{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-size:8px;letter-spacing:.06em;border-bottom:1px solid #0001}.concept-web{background:#e9e8e1;color:#292d29}.concept-web .concept-chrome{color:#73776f;background:#deded6}.web-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;font-size:8px}.web-nav b{font-size:15px;letter-spacing:-.8px}.web-composition{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:12px;padding:16px 24px 24px}.micro{font-size:7px;letter-spacing:.07em}.web-composition h3{font-size:clamp(18px,2vw,28px);margin-top:16px;line-height:1.05;letter-spacing:-.055em}.mini-link{display:inline-block;font-size:8px;border-bottom:1px solid #a2a69b;padding-bottom:8px;margin-top:24px}.arch-art{aspect-ratio:.78;background:linear-gradient(120deg,#b6b8a9,#deded2);border-radius:96px 96px 4px 4px;position:relative;overflow:hidden;box-shadow:inset 12px 0 24px #393f3225}.arch-art i{position:absolute;inset:22% 20% 0;background:#d2d0bd;border-radius:80px 80px 0 0;box-shadow:inset 12px 4px 16px #393f3230}.arch-art b{position:absolute;width:65%;height:12%;left:20%;bottom:12%;border-radius:50%;background:#7b826d;box-shadow:0 8px 0 #6b735e,0 20px 0 -6px #7b826d,10px 32px 18px #434c3540}.web-bottom{display:flex;justify-content:space-between;padding:12px 24px;font-size:7px;border-top:1px solid #0001}.concept-deck{background:#c6d6b5;color:#20281b;aspect-ratio:1.18}.concept-deck .concept-chrome{font-size:7px;border-color:#20281b25}.deck-content{padding:24px}.deck-content h3{font-size:clamp(28px,3.5vw,48px);letter-spacing:-.065em;line-height:1.02;margin-top:16px}.deck-content h3 span{color:#627457}.deck-content p{font-size:9px;color:#435137;margin-top:12px}.deck-line{height:1px;background:#20281b40;margin-top:24px;width:48px}.deck-pagination{display:flex;align-items:center;gap:8px;padding:0 24px 16px}.deck-pagination b,.deck-pagination i{width:16px;height:2px;background:#20281b30}.deck-pagination b{background:#20281b}.deck-pagination span{margin-left:auto}.studio{border-block:1px solid var(--line)}.studio>h2{font-size:clamp(34px,4vw,52px);max-width:900px;margin-top:32px;line-height:1.17}.studio-bottom{display:flex;align-items:center;gap:24px;margin-top:48px}.studio-monogram{display:grid;place-items:center;width:48px;height:48px;background:#1d2219;border:1px solid #ffffff16;border-radius:50%;color:#c6d6b5;font-size:22px;flex-shrink:0}.studio-bottom h3{font-size:16px;letter-spacing:-.02em}.studio-bottom p{max-width:480px;font-size:14px;margin-top:8px}.studio-bottom .text-link{margin-left:auto;font-size:13px}.closing{text-align:center;padding-block:var(--section)}.closing h2{font-size:clamp(42px,5vw,64px);line-height:1.06}.closing>p:not(.eyebrow){margin-top:24px;font-size:15px}.closing .button{margin-top:32px}.closing small{display:block;color:var(--muted);font-size:12px;margin-top:16px}.site-footer{border-top:1px solid var(--line)}.footer-top{padding-block:48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-top p,.footer-top>a:last-child{font-size:13px}.footer-bottom{border-top:1px solid var(--line);display:flex;align-items:center;gap:32px;padding-block:24px;font-size:11px;color:var(--muted)}.footer-bottom p{margin-right:auto}.page-hero{padding-block:96px;max-width:var(--content)}.page-hero>p:not(.eyebrow){margin-top:24px;max-width:620px}.page-hero .button{margin-top:32px}.services-directory{padding-bottom:48px}.directory-item{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:center;border-top:1px solid var(--line);padding-block:72px}.directory-item h2{font-size:40px}.directory-item>div>p:not(.eyebrow){margin-top:24px;max-width:480px}.directory-item .text-link{margin-top:24px;color:var(--accent)}.directory-item .media{padding:32px}.directory-item .concept{max-width:480px;margin:auto}.service-hero{padding:72px 0 96px;display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:center;border-bottom:1px solid var(--line)}.service-hero h1{font-size:clamp(42px,4.2vw,60px)}.breadcrumb{display:inline-flex;align-items:center;min-height:44px;margin-bottom:24px}.service-lead{max-width:480px;margin-top:24px;font-size:16px}.service-hero .button{margin-top:32px}.price-note{display:block;margin-top:16px;color:var(--muted);font-size:12px}.service-hero-visual{padding:32px}.concept-note{font-size:9px;letter-spacing:.08em;text-align:center;margin-top:24px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.benefits article{border-top:1px solid var(--line);padding-top:24px}.benefits h3{margin-top:24px;max-width:280px}.benefits p{font-size:15px;margin-top:16px}.process-section{display:grid;grid-template-columns:1fr 1fr;gap:72px;padding-block:72px;border-block:1px solid var(--line)}.process-list{list-style:none;margin:0;padding:0}.process-list li{display:flex;gap:24px;padding-bottom:32px}.process-list li:last-child{padding-bottom:0}.process-list li>span{font-size:12px;color:var(--accent);padding-top:4px}.process-list h3{font-size:20px}.process-list p{font-size:14px;margin-top:12px}.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:72px}.faq-section details{border-bottom:1px solid var(--line)}.faq-section summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px;cursor:pointer;font-size:15px;padding-block:16px;list-style:none}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary span{font-size:24px;color:var(--muted);transition:transform .25s}.faq-section details[open] summary span{transform:rotate(45deg)}.faq-section details p{padding-bottom:24px;font-size:14px}.concept-report{background:#eeeae0;color:#242b22}.report-heading{display:flex;justify-content:space-between;align-items:flex-start;padding:24px}.report-heading h3{font-size:40px;line-height:1}.report-heading>span{font-size:9px;text-align:right}.chart{height:160px;display:flex;gap:24px;align-items:end;padding:0 24px 24px}.chart>div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;gap:8px}.chart i{display:block;height:38%;background:#adb79e;border-radius:4px 4px 0 0;transform-origin:bottom;animation:bar-in .9s var(--ease) both}.chart>div:nth-child(2) i{height:57%;animation-delay:.1s}.chart>div:nth-child(3) i{height:48%;animation-delay:.2s}.chart>div:nth-child(4) i{height:85%;background:#596d43;animation-delay:.3s}.chart span{font-size:8px;color:#626a5c}.concept-system{background:#141715;padding-bottom:24px}.concept-system h3{padding:24px;font-size:32px}.concept-system .concept-chrome{border-color:var(--line);font-size:7px;color:#a5ae9f}.workflow{margin:0 24px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.workflow>div{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--line);font-size:11px}.workflow>div:last-child{border:0}.workflow-icon{font-size:20px;color:#c6d6b5}.workflow small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.workflow b{margin-left:auto;color:var(--accent);font-weight:400}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:96px;padding-block:96px 140px}.contact-layout>section>p:not(.eyebrow){max-width:480px;margin-top:24px}.contact-person{display:flex;gap:16px;align-items:center;margin:48px 0 24px}.contact-person strong{font-size:14px;font-weight:500}.contact-person p{font-size:13px;margin-top:8px}.form-panel{padding:32px;border:1px solid var(--line);background:var(--surface);border-radius:22px}.form-panel>.eyebrow{margin-bottom:24px}#project-form{display:flex;flex-direction:column}#project-form label{font-size:13px;margin-bottom:8px}#project-form label>span{color:var(--muted)}#project-form input,#project-form select,#project-form textarea{width:100%;border:1px solid #ffffff24;background:#090b0a;color:var(--text);padding:12px 16px;border-radius:8px;margin-bottom:24px;font-size:14px;min-height:48px}#project-form textarea{resize:vertical;min-height:120px}#project-form :is(input,textarea)::placeholder{color:#81877e}.project-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.project-privacy{font-size:12px;margin-bottom:24px}.project-privacy a{text-decoration:underline;text-underline-offset:3px}.project-submit{background:var(--accent);color:#141909;border:0;padding:12px 24px;border-radius:8px;min-height:48px;display:flex;justify-content:space-between;align-items:center;font-size:14px}#project-status{font-size:13px;margin-top:16px}#project-status:empty{display:none}#project-success h2{margin-top:16px}#project-success p{margin-top:24px}#project-success a{display:inline-block;margin-top:32px;color:var(--accent)}#project-success em{font-style:normal;color:var(--muted)}.project-success-mark{color:var(--accent);font-size:32px}.legal{max-width:760px;padding-block:96px 140px}.legal h1{margin-bottom:32px}.legal h2{font-size:28px;margin:48px 0 16px}.legal p{margin-top:16px}.legal a{text-decoration:underline;color:var(--text)}
@keyframes enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes bar-in{from{transform:scaleY(.25)}to{transform:scaleY(1)}}@keyframes expand-search{from{transform:scaleX(.72);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes cursor-blink{50%{opacity:0}}@media(prefers-reduced-motion:no-preference){.hero-enter{animation:enter .85s var(--ease) both}.hero h1{animation-delay:.08s}.hero-copy{animation-delay:.16s}.hero>.button{animation-delay:.24s}.intro-playing .search-window{animation:expand-search .65s var(--ease) both}.intro-playing .search-result{opacity:0;transform:translateY(8px)}.intro-playing .typing-cursor{display:block;animation:cursor-blink .7s step-end infinite}.search-result{transition:opacity .55s,transform .55s var(--ease)}[data-reveal].will-reveal{opacity:0;transform:translateY(24px)}[data-reveal]{transition:opacity .8s var(--ease),transform .8s var(--ease)}}
@media(min-width:1500px){.hero{padding-top:96px}.search-stage{margin-top:72px}}
@media(max-width:1000px){:root{--pad:24px;--section:96px}.site-header{height:88px}.site-header nav{gap:24px}.hero{padding-top:72px}.section-intro>p{max-width:360px}.service-row{grid-template-columns:48px 1fr 1fr 32px}.work-grid{gap:16px}.work-item .media{padding:24px;aspect-ratio:1}.web-composition{padding:16px;gap:8px}.web-nav{padding:16px}.deck-content{padding:24px 16px}.deck-content h3{font-size:36px}.studio-bottom{flex-wrap:wrap}.studio-bottom .text-link{margin-left:72px}.directory-item{gap:48px}.service-hero{gap:32px;grid-template-columns:1fr 1fr}.service-hero-visual{padding:24px}.benefits{gap:24px}.contact-layout{gap:48px}.footer-top{flex-wrap:wrap}.footer-top p{display:none}}
@media(max-width:760px){:root{--pad:18px;--section:80px;--display:48px;--heading:36px}.site-header{height:80px;flex-wrap:wrap;gap:0}.brand{font-size:22px}.brand-symbol{width:28px;height:28px;font-size:17px}.site-header nav{order:3;width:100%;justify-content:center;gap:32px;border-bottom:1px solid var(--line);padding:8px 0}.site-header nav a{font-size:12px;padding:8px 0}.site-header .nav-action{font-size:12px;padding:8px 12px;min-height:44px;gap:16px}.hero{padding-top:88px}.hero .eyebrow{font-size:9px;letter-spacing:.08em}.hero h1{font-size:48px}.hero-copy{font-size:15px}.search-stage{margin-top:48px;padding-bottom:32px}.search-field{height:64px;padding:0 16px;gap:12px}.typed-brand{font-size:22px}.search-result{padding:20px 16px;gap:12px}.search-result strong{font-size:14px}.search-result p{font-size:11px}.result-mark{width:40px;height:40px;font-size:20px}.stage-caption{font-size:10px;margin-top:16px}.hero-baseline{justify-content:center;padding:16px 0}.hero-baseline>span{display:none}.hero-baseline a{font-size:11px}.section-intro{display:block;margin-bottom:32px}.section-intro>p{margin-top:24px;max-width:480px;font-size:14px}.service-row{grid-template-columns:24px 1fr 24px;gap:16px;min-height:112px;padding-block:24px}.service-row h3{font-size:26px;grid-column:2}.service-row p{grid-column:2;font-size:13px;margin-top:-8px}.service-number{grid-row:1;align-self:center}.row-arrow{grid-column:3;grid-row:1/3;font-size:22px}.service-row:hover{padding-inline:8px}.work-grid{grid-template-columns:1fr;gap:32px}.work-item .media{aspect-ratio:1.25;padding:24px}.concept{max-width:480px}.web-composition h3{font-size:28px}.concept-deck{aspect-ratio:1.4}.deck-content h3{font-size:40px}.deck-content{padding:24px}.deck-content p{font-size:10px}.work-caption{padding-top:16px}.studio>h2{font-size:34px;line-height:1.18}.desktop-break{display:none}.studio-bottom{align-items:flex-start;gap:16px;margin-top:32px}.studio-bottom>div{flex:1;min-width:0}.studio-bottom .text-link{margin-left:64px;font-size:12px}.closing h2{font-size:48px}.closing>p:not(.eyebrow){font-size:14px}.footer-top{padding-block:32px;gap:16px}.footer-top>a:last-child{font-size:12px}.footer-bottom{flex-wrap:wrap;gap:16px;font-size:10px}.footer-bottom p{width:100%;line-height:1.8}.page-hero{padding-block:96px 64px}.page-hero>p:not(.eyebrow){font-size:15px}.directory-item{grid-template-columns:1fr;gap:32px;padding-block:48px}.directory-item h2{font-size:34px}.directory-item .media{padding:24px}.service-hero{grid-template-columns:1fr;padding-block:80px 64px;gap:48px}.service-hero h1{font-size:44px}.service-lead{font-size:15px}.service-hero-visual{max-width:100%;width:100%}.service-hero-visual .concept{margin:auto}.benefits{grid-template-columns:1fr;gap:32px}.benefits h3{max-width:none;margin-top:16px}.process-section{grid-template-columns:1fr;gap:48px;padding-block:64px}.faq-section{grid-template-columns:1fr;gap:32px}.faq-section summary{font-size:14px}.contact-layout{grid-template-columns:1fr;gap:48px;padding-block:96px 80px}.contact-layout h1{font-size:48px}.contact-layout>section>p:not(.eyebrow){font-size:15px}.contact-person{margin-top:32px}.form-panel{padding:24px;border-radius:20px}.legal{padding-top:96px}.legal h1{font-size:42px}.legal h2{font-size:26px}.legal p{font-size:15px}}
@media(max-width:380px){.hero h1{font-size:44px}.hero-copy{font-size:14px}.brand{font-size:20px}.brand-symbol{display:none}.search-result p{font-size:10px}.search-result strong{font-size:13px}.result-tick{display:none}.hero .eyebrow{font-size:8px}.work-item .media{padding:16px}.web-composition h3{font-size:23px}.micro{font-size:6px}.service-hero h1{font-size:40px}.footer-top{display:block}.footer-top>a:last-child{display:block;margin-top:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.will-reveal{opacity:1!important;transform:none!important}.typing-cursor{display:none!important}}
.search-light{left:0;right:0}
.brand-intro{display:none;position:fixed;inset:0;z-index:100;background:#080909;align-items:center;justify-content:center;padding:24px}
.intro-pending .brand-intro,.brand-intro.is-playing,.brand-intro.is-leaving{display:flex}
.intro-pending{overflow:hidden}
.intro-pending .home> :is(header,main,footer){visibility:hidden}
.brand-intro.is-leaving{pointer-events:none;animation:intro-out .45s ease both}
.intro-search{width:min(620px,100%);height:80px;padding:0 24px;display:flex;align-items:center;gap:16px;border:1px solid #ffffff28;border-radius:16px;background:#141615;box-shadow:0 24px 72px #0005;overflow:hidden}
.is-playing .intro-search{animation:intro-open .65s cubic-bezier(.22,1,.36,1) both}
.intro-search svg{width:24px;min-width:24px;color:#888e83}
.intro-text{font-size:32px;letter-spacing:-.04em;white-space:nowrap}
.intro-cursor{width:2px;height:32px;background:var(--accent);margin-left:-12px;animation:cursor-blink .65s step-end infinite}
.intro-enter{margin-left:auto;color:#8e9489;border:1px solid var(--line);border-radius:8px;padding:0 12px;font-size:24px}
.intro-skip{position:absolute;right:32px;bottom:32px;background:transparent;border:0;color:var(--muted);font-size:12px;min-height:44px;padding:12px 16px}
.intro-skip:focus-visible{outline-offset:0}
.intro-replay{border:0;background:transparent;color:var(--muted);font-size:11px;min-height:44px;padding:0;white-space:nowrap}
.opening-services{padding-top:120px}
main[tabindex="-1"]:focus{outline:none}
.opening-services .section-intro{margin-bottom:72px}
.opening-services h1{font-size:clamp(48px,5vw,68px)}
.motion-word{display:inline-block}
.words-ready .motion-word{opacity:.12;filter:blur(6px);transform:translateY(8px)}
.inline-icon{display:inline-flex;align-items:center;justify-content:center;width:.95em;height:.95em;vertical-align:-.08em;background:#1c2119;border:1px solid #b2ff0029;border-radius:.22em;color:#c1db9d;margin-inline:.06em}
.inline-icon svg{width:65%;height:65%}
.studio-avatar.media{width:80px;height:80px;border-radius:50%;flex-shrink:0;background:#fff}
.studio-avatar img{object-fit:cover}
[data-count]{font-variant-numeric:tabular-nums}
.service-row{position:relative}
.service-preview{display:none;position:absolute;z-index:4;left:53%;top:50%;width:240px;height:176px;border:1px solid #ffffff30;border-radius:16px;box-shadow:0 24px 48px #0008;padding:20px;overflow:hidden;pointer-events:none;text-align:left;color:#273022}
.preview-chrome{display:block;font-size:7px;letter-spacing:.08em;margin-bottom:16px}
.service-preview strong{display:block;font-size:24px;font-weight:500;line-height:1.08;letter-spacing:-.045em}
.service-preview small{position:absolute;bottom:16px;font-size:8px}
.preview-web{background:#e9e8e1}
.preview-web strong{font-size:20px;max-width:130px}
.preview-arch{position:absolute;width:64px;height:112px;bottom:0;right:16px;border-radius:48px 48px 0 0;background:linear-gradient(100deg,#8f9983,#c2c8b6)}
.preview-deck{background:#c6d6b5}
.preview-line{display:block;width:48px;height:1px;background:#586b46;margin-top:16px}
.preview-report{background:#eae6dc}
.preview-report strong{font-size:22px}
.preview-bars{display:flex;position:absolute;right:20px;bottom:20px;gap:8px;align-items:end;height:64px}
.preview-bars i{width:16px;background:#879875;height:32px}.preview-bars i:nth-child(2){height:48px}.preview-bars i:nth-child(3){height:40px}.preview-bars i:nth-child(4){height:64px}
.preview-system{background:#161c17;color:#edf1e9}
.preview-system strong{font-size:22px}
.preview-tasks{display:block;font-size:9px;line-height:1.8;margin-top:12px;color:#bfd5a7}
@media(hover:hover) and (pointer:fine){.service-preview{display:block;opacity:0;visibility:hidden;transform:translate(-50%,-44%) rotate(-5deg) scale(.88);transition:opacity .25s,transform .45s var(--ease),visibility .25s}.service-row:hover,.service-row:focus-visible{z-index:5}.service-row:hover .service-preview,.service-row:focus-visible .service-preview{opacity:1;visibility:visible;transform:translate(-50%,-50%) rotate(3deg) scale(1)}}
@keyframes intro-open{from{clip-path:inset(0 calc(50% - 40px) round 16px);opacity:0;transform:scale(.96)}to{clip-path:inset(0 0 round 16px);opacity:1;transform:scale(1)}}
@keyframes intro-out{to{opacity:0;visibility:hidden}}
@media(max-width:760px){.opening-services{padding-top:72px}.opening-services h1{font-size:48px}.opening-services .section-intro{margin-bottom:48px}.intro-search{height:64px;padding:0 16px;gap:12px}.intro-text{font-size:24px}.intro-enter{font-size:20px;padding:0 8px}.intro-cursor{height:24px}.intro-skip{right:18px;bottom:18px}.studio-avatar.media{width:64px;height:64px}.studio-bottom .text-link{margin-left:80px}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none!important}.intro-pending .home> :is(header,main,footer){visibility:visible}.words-ready .motion-word{opacity:1;filter:none;transform:none}}
h1,h2{text-wrap:balance}
/* Art-directed light fields and portrait constellation. Keep the centre quiet. */
.nav-action{background:var(--text);color:#101211;border-color:var(--text)}
.nav-action:hover{background:#d9ddd5;border-color:#d9ddd5}
.home .brand-intro{overflow:hidden;isolation:isolate}
.hero-light{position:absolute;inset:0;z-index:-2;background:url('/images/hero-light.svg') center/cover no-repeat;opacity:.85;pointer-events:none;transition:opacity 1.8s ease}
.hero-wordmark{position:absolute;z-index:-1;left:50%;top:50%;transform:translate(-50%,-50%);font-size:20vw;font-weight:600;line-height:1;letter-spacing:-.075em;white-space:nowrap;color:#e0edf2;opacity:.045;pointer-events:none;transition:opacity 1.4s ease}
.intro-pending .hero-light,.intro-pending .hero-wordmark{opacity:0;transition:none}
.home .intro-search{background:#121615ed}
.home .service-art{left:auto;right:32px;top:50%;width:220px;height:220px;padding:12px;background:#111719;border-color:#ffffff14;box-shadow:0 16px 48px #0006;border-radius:22px}
.service-art img{object-fit:contain}
@media(hover:hover) and (pointer:fine){.service-list:has(.service-row:hover) .service-row:focus-visible:not(:hover) .service-art{opacity:0;visibility:hidden}}
@media(hover:hover) and (pointer:fine){.home .service-row .service-art{transform:translate(8px,-44%) rotate(-6deg) scale(.92)}.home .service-row:hover .service-art,.home .service-row:focus-visible .service-art{transform:translate(0,-50%) rotate(4deg) scale(1)}}
.studio{text-align:center}
.studio>h2{max-width:760px;margin:32px auto 0;font-size:clamp(34px,4vw,52px);line-height:1.25}
.inline-icon{border-radius:50%;width:1.12em;height:1.12em;vertical-align:-.15em}
.inline-icon svg{width:56%;height:56%;transform-origin:center}
.icon-parts{color:#b2ff00;background:#1b2114;border-color:#b2ff0045}
.icon-studio{color:#84cfff;background:#14202a;border-color:#84cfff45}
.team-section{position:relative;min-height:720px;display:grid;place-items:center;isolation:isolate;overflow:hidden}
.team-copy{position:relative;text-align:center;max-width:480px;z-index:1}
.team-copy h2{margin-top:16px}
.team-copy>p:not(.eyebrow){font-size:15px;margin-top:24px}
.team-copy .text-link{margin-top:24px}
.team-orbit{position:absolute;inset:0;pointer-events:none}
.team-orbit::before{content:"";position:absolute;width:88%;height:82%;left:6%;top:9%;border:1px solid #ffffff06;border-radius:50%}
.profile-orb{position:absolute;border-radius:50%;background:#f8f8f8;box-shadow:0 0 0 8px #ffffff03;border:1px solid #ffffff26}
.profile-orb img{object-fit:cover}
.profile-1{width:96px;height:96px;left:7%;top:18%}
.profile-2{width:72px;height:72px;right:9%;top:12%}
.profile-3{width:120px;height:120px;right:2%;top:48%}
.profile-4{width:80px;height:80px;left:2%;top:60%}
.profile-5{width:64px;height:64px;right:22%;bottom:7%}
.closing-lit{position:relative;isolation:isolate;overflow:hidden;background:#090d12}
.contact-light{position:absolute;inset:0;z-index:-1;background:url('/images/contact-light.svg') center/cover no-repeat;pointer-events:none}
.closing-content>p:not(.eyebrow){margin-top:24px;font-size:16px}
.closing-content .button{margin-top:32px}
.closing-content small{display:block;margin-top:16px;color:var(--muted);font-size:12px}
@media(max-width:1000px){.team-copy{max-width:480px;padding-inline:24px}.profile-1{left:2%;top:9%;width:80px;height:80px}.profile-2{right:4%;top:8%}.profile-3{right:0;top:62%;width:96px;height:96px}.profile-4{left:0;top:64%;width:64px;height:64px}.profile-5{right:24%;bottom:5%}}
@media(max-width:760px){.studio>h2{font-size:34px}.team-section{min-height:0;padding-top:72px;padding-bottom:72px;display:flex;flex-direction:column;gap:48px}.team-orbit{position:relative;inset:auto;width:100%;height:160px;order:0}.team-orbit::before{width:90%;height:80%;left:5%;top:10%}.team-copy{order:1;padding:0}.profile-1{width:56px;height:56px;left:0;top:56%}.profile-2{width:64px;height:64px;right:auto;left:17%;top:4%}.profile-3{width:80px;height:80px;right:auto;left:calc(50% - 40px);top:42%}.profile-4{width:56px;height:56px;left:auto;right:17%;top:0}.profile-5{width:56px;height:56px;right:0;top:53%;bottom:auto}.hero-wordmark{font-size:23vw}.hero-light{background-position:65% center;opacity:.6}.contact-light{background-size:auto 100%;opacity:.55}.closing-content>p:not(.eyebrow){font-size:14px}}
@media(prefers-reduced-motion:reduce){.hero-light,.hero-wordmark{transition:none}}
@media print{.hero-light,.hero-wordmark,.contact-light,.team-orbit{display:none}.team-section{min-height:0}.closing-lit{background:white}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home>.site-header{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:10}
.home .brand-intro{display:block;position:relative;inset:auto;z-index:auto;height:100svh;min-height:560px;padding:0;background:var(--bg)}
.home .intro-search{position:absolute;top:50%;left:50%;translate:-50% -50%;width:min(400px,calc(100% - 48px));height:56px;padding:0 16px;border-radius:12px;gap:12px;box-shadow:none}
.home .intro-search svg{width:20px;min-width:20px}
.home .intro-text{font-size:22px}
.home .intro-enter{font-size:18px;padding:0 8px}
.home .intro-cursor{height:22px;display:none}
.home .is-playing .intro-cursor{display:block}
.hero-context{position:absolute;top:calc(50% - 88px);left:18px;right:18px;text-align:center}
.hero-follow{position:absolute;top:calc(50% + 64px);left:18px;right:18px;text-align:center}
.hero-follow p{font-size:15px;line-height:1.6}
.hero-follow .text-link{margin-top:24px;font-size:13px}
.hero-footnote{position:absolute;bottom:32px;left:18px;right:18px;text-align:center;font-size:10px;letter-spacing:.1em;color:var(--muted)}
.home>.site-header,.hero-context,.hero-follow,.hero-footnote{transition:opacity .8s var(--ease),translate .8s var(--ease),visibility .8s}
.intro-pending .home> :is(header,main,footer){visibility:visible}
.intro-pending .home>.site-header,.intro-pending .hero-context,.intro-pending .hero-follow,.intro-pending .hero-footnote{opacity:0;visibility:hidden;translate:0 8px;transition:none}
.intro-pending .home main>section:not(.brand-intro),.intro-pending .home>.site-footer{visibility:hidden}
.home .intro-skip{display:none;z-index:2}
.intro-pending .home .intro-skip{display:block}
.opening-services h2{font-size:var(--heading)}
@media(max-width:760px){.home .brand-intro{min-height:520px}.hero-context{font-size:9px}.hero-follow p{font-size:14px}}
.home .brand-intro{min-height:0;height:100dvh}
@media(max-height:520px){.hero-context{top:calc(50% - 64px)}.hero-follow{top:calc(50% + 48px)}.hero-follow .text-link{margin-top:8px}.hero-footnote{display:none}.home .site-header nav{display:none}.hero-follow p{display:none}}
@media(prefers-reduced-motion:reduce){.home .brand-intro{display:block!important}}
@media print{.home .brand-intro{display:none!important}.home>.site-header{display:none}}
@media(max-width:380px){.opening-services h1{font-size:42px}}
@media print{.brand-intro{display:none!important}.intro-pending .home> :is(header,main,footer){visibility:visible}.words-ready .motion-word{opacity:1!important;filter:none!important;transform:none!important}}
@media(max-width:760px){.service-hero h1 br{display:none}}
@media(max-width:760px){.site-header{height:auto;padding-top:16px}.site-header nav{margin-top:12px}.hero{padding-top:72px}}
/* Hero choreography: a stationary glass field, then distinct surrounding beats. */
.site-header .nav-action{font-size:12px;line-height:20px;padding:8px 12px;gap:12px;min-height:36px;border-radius:8px}
@media(pointer:coarse){.site-header .nav-action{min-height:44px}}
.home .hero-copy-line+ .hero-copy-line{margin-top:0}
.team-section .profile-orb{animation:profile-drift 7s ease-in-out infinite;animation-play-state:paused}
.team-section .profile-2{animation-duration:8.5s;animation-delay:-2s}
.team-section .profile-3{animation-duration:9s;animation-delay:-4s}
.team-section .profile-4{animation-duration:7.5s;animation-delay:-1s}
.team-section .profile-5{animation-duration:8s;animation-delay:-3s}
.team-section.portraits-active .profile-orb{animation-play-state:running}
@keyframes profile-drift{0%,100%{translate:0 3px;rotate:-1deg}50%{translate:3px -7px;rotate:1deg}}
@media(prefers-reduced-motion:reduce){.team-section .profile-orb{animation:none;translate:none;rotate:none}}
.home .intro-search{border-radius:999px;background:linear-gradient(115deg,#ffffff0e,#ffffff03);border-color:#ffffff26;backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);box-shadow:inset 0 1px 0 #ffffff12,0 12px 40px #0002;padding-inline:24px}
.intro-services{position:relative;width:122px;height:22px;margin-left:auto;overflow:hidden;flex:0 0 122px;color:#9b9d9a;font-size:13px;line-height:22px;text-align:right;white-space:nowrap}
.intro-service-static,.intro-service-list,.intro-service-option{position:absolute;inset:0}
.intro-service-static{opacity:1;transition:opacity .14s ease}
.intro-service-option{opacity:0;transform:translate3d(0,70%,0);will-change:transform,opacity}
.is-playing .intro-service-static{opacity:0}
.is-playing .intro-service-1{animation:intro-service-pass .42s ease 1.35s both}
.is-playing .intro-service-2{animation:intro-service-pass .42s ease 1.64s both}
.is-playing .intro-service-3{animation:intro-service-pass .42s ease 1.93s both}
.is-playing .intro-service-4{animation:intro-service-pass .42s ease 2.22s both}
.is-playing .intro-service-final{animation:intro-service-settle .34s var(--ease) 2.51s both}
@keyframes intro-service-pass{0%{opacity:0;transform:translate3d(0,70%,0)}18%,64%{opacity:1;transform:translate3d(0,0,0)}100%{opacity:0;transform:translate3d(0,-70%,0)}}
@keyframes intro-service-settle{from{opacity:0;transform:translate3d(0,70%,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.home .intro-enter{border-radius:50%;width:28px;height:28px;display:grid;place-items:center;padding:0;background:#ffffff04;border-color:#ffffff12}
@supports not (backdrop-filter:blur(1px)){.home .intro-search{background:#15191bef}}
@keyframes intro-open{from{clip-path:inset(0 calc(50% - 28px) round 999px);opacity:0}to{clip-path:inset(0 0 round 999px);opacity:1}}
.hero-context{top:30%;transition:opacity .7s ease .3s,filter .8s ease .3s;translate:none}
.hero-follow{top:calc(50% + clamp(72px,12dvh,120px));transition:none}
.hero-copy-line{display:block;transition:opacity .8s ease,clip-path .9s var(--ease);clip-path:inset(0);opacity:1}
.hero-copy-line+ .hero-copy-line{margin-top:16px;transition-delay:.18s}
.hero-follow .text-link{margin-top:clamp(32px,6dvh,72px);transition:opacity .7s ease .65s,filter .7s ease .65s}
.home>.site-header{transition:opacity .65s ease .12s}
.hero-footnote{transition:opacity .8s ease 1s}
.hero-wordmark{transition:opacity 1.8s ease}
.hero-light{transition:opacity 2.2s ease .1s}
.intro-pending .home>.site-header,.intro-pending .hero-context,.intro-pending .hero-footnote{translate:none}
.intro-pending .hero-context{filter:blur(5px)}
.intro-pending .hero-follow{opacity:1;visibility:visible;translate:none}
.intro-pending .hero-copy-line{opacity:0;clip-path:inset(0 100% 0 0);transition:none}
.intro-pending .hero-follow .text-link{opacity:0;visibility:hidden;filter:blur(4px);transition:none}
.home .service-art{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;overflow:visible}
.home .studio{border:0}
.home .site-footer{border-top:0}
.team-orbit{inset:48px 8%}
.team-orbit::before{border:0}
.team-section{min-height:640px}
.team-copy{max-width:480px}
.closing-lit{background:var(--bg)}
.contact-light{background:none;opacity:1;overflow:hidden}
.contact-light::before{content:"";position:absolute;width:92%;height:70%;left:4%;bottom:-52%;border-radius:50%;background:radial-gradient(ellipse at center,#e1f5f2 0%,#89a8af 12%,#54798a 38%,#293c44 55%,transparent 72%);filter:blur(32px);opacity:.75}
.contact-light::after{content:"";position:absolute;width:76%;height:48%;left:12%;bottom:-38%;border-radius:50%;border-top:1px solid #e1f5f280;box-shadow:0 -4px 28px #89a8af20,0 -20px 80px #54798a17;filter:blur(2px)}
@media(max-width:1000px) and (min-width:761px){.team-orbit{inset:48px 6%}.team-copy{max-width:480px;padding-inline:32px}.profile-3{width:80px;height:80px;top:68%}.profile-4{top:70%}.profile-5{bottom:0}}
@media(max-width:760px){.team-section{min-height:0}.team-orbit{inset:auto;width:90%;height:160px}.hero-context{top:30%}.hero-follow{top:calc(50% + 72px)}.hero-copy-line+ .hero-copy-line{margin-top:12px}.hero-follow .text-link{margin-top:32px}.contact-light{opacity:.7}}
@media(max-height:600px){.hero-context{top:calc(50% - 72px)}.hero-follow{top:calc(50% + 48px)}.hero-copy-line+ .hero-copy-line{margin-top:8px}.hero-follow .text-link{margin-top:16px}.hero-footnote{display:none}}
@media print{body{background:white;color:black}.site-header,.site-footer,.search-stage,.button{display:none}p,.muted{color:#444}[data-reveal]{opacity:1!important;transform:none!important}.section,.closing{padding-block:32px}}

/* Keep the intro reveal on compositor-friendly layers. The previous SVG glow
   used large Gaussian filters, which produced stepped fades on slower GPUs. */
.hero-light{inset:-2%;background:
  radial-gradient(ellipse 52% 42% at 92% 3%,#e1f5f2b8 0%,#a6c0c380 18%,#66849042 45%,transparent 72%),
  linear-gradient(132deg,transparent 43%,#65818c20 62%,#d8ebe938 78%,transparent 92%);
  opacity:.78;transform:translate3d(0,0,0) scale(1);transform-origin:85% 12%;
  contain:paint;will-change:opacity,transform;backface-visibility:hidden;
  transition:opacity .9s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1)}
.hero-wordmark{transform:translate3d(-50%,-50%,0) scale(1);contain:paint;
  will-change:opacity,transform;backface-visibility:hidden;
  transition:opacity .85s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1)}
.intro-pending .hero-light{opacity:0;transform:translate3d(2%,-1%,0) scale(.985)}
.intro-pending .hero-wordmark{opacity:0;transform:translate3d(-50%,-50%,0) scale(.975)}
.hero-context{transition:opacity .65s ease .15s;filter:none!important}
.hero-follow .text-link{transition:opacity .55s ease .45s}
.intro-pending .hero-follow .text-link{filter:none}
.home .intro-search{backdrop-filter:blur(10px) saturate(115%);-webkit-backdrop-filter:blur(10px) saturate(115%)}

.nav-toggle{display:none;background:transparent;border:0;color:#fff;width:32px;height:44px;padding:8px 4px;align-items:center;justify-content:center}
.nav-toggle>span{display:flex;flex-direction:column;gap:4px;width:22px}
.nav-toggle i{display:block;width:100%;height:2px;border-radius:999px;background:currentColor;transform-origin:center;transition:transform .25s ease,opacity .2s ease}

@media(max-width:760px){
  .site-header{height:72px!important;padding-top:0!important;flex-wrap:nowrap;position:relative}
  .site-header .brand{margin-right:auto}
  .site-header .nav-action{margin-left:12px}
  .nav-ready .site-header .nav-toggle{display:flex;order:4;margin-left:8px}
  .nav-ready .site-header nav{position:absolute;z-index:12;left:0;right:0;top:64px;display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:0;padding:12px 18px;background:#080909f2;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 48px #0009;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility .2s}
  .nav-ready .site-header.menu-open nav{opacity:1;visibility:visible;transform:none}
  .nav-ready .site-header nav a{width:100%;padding:10px 0;font-size:13px}
  .site-header.menu-open .nav-toggle i:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .site-header.menu-open .nav-toggle i:nth-child(2){opacity:0}
  .site-header.menu-open .nav-toggle i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .hero-wordmark{font-size:clamp(160px,48vw,240px)}
}

@media(max-width:380px){.site-header .brand-symbol{display:none}.site-header .nav-action{margin-left:6px}.nav-ready .site-header .nav-toggle{margin-left:2px}}
@media(max-width:760px){.site-header .brand-symbol{width:30px;height:auto}}
@media(max-width:380px){.site-header .brand-symbol{display:block;width:32px}.site-header .brand-name{display:none}}
@media(max-width:760px){.intro-services{width:108px;flex-basis:108px;font-size:12px}}

/* Keep the primary navigation centred independently of the brand and CTA widths. */
@media(min-width:761px){
  .site-header{position:relative}
  .home>.site-header{position:absolute}
  .site-header nav{position:absolute;left:50%;transform:translateX(-50%)}
}

/* Expandable studio work cards. */
.work-section{padding-bottom:var(--section)}
.work-section .section-intro{align-items:flex-start}
.work-card-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px 16px;max-width:920px;margin-inline:auto;align-items:center}
.work-card-layout>.project-card{width:100%;grid-column:1/span 6;grid-row:1;position:relative;z-index:1}
.work-card-layout>.project-card:nth-of-type(2){grid-column:4/span 6;grid-row:2}
.work-card-layout>.project-card:nth-of-type(3){grid-column:1/span 6;grid-row:3}
.work-card-note{max-width:300px;align-self:start;margin-top:96px;position:relative;z-index:2}
.work-card-note:nth-of-type(1){grid-column:7/span 4;grid-row:1}
.work-card-note:nth-of-type(2){grid-column:10/span 3;grid-row:2}
.work-card-note:nth-of-type(3){grid-column:7/span 4;grid-row:3}
.work-card-note .eyebrow{margin-bottom:16px;color:var(--text);font-size:clamp(18px,1.7vw,24px);line-height:1.12;letter-spacing:-.035em;text-transform:none;font-weight:600}
.work-card-note p:last-child{font-size:14px;line-height:1.65}
.project-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#0d0f10;transition:border-color .3s ease,background .3s ease}
.project-card[open]{border-color:#ffffff2b;background:#101213}
.project-card summary{list-style:none;cursor:pointer;padding:20px}
.project-card summary::-webkit-details-marker{display:none}
.work-card-visual{aspect-ratio:1.56;border-radius:16px;overflow:hidden;background:#151819;position:relative}
.work-card-visual::after{content:"";position:absolute;inset:42% 0 0;border-radius:inherit;background:linear-gradient(to bottom,transparent,#0d0f10d9);backdrop-filter:blur(5px);mask-image:linear-gradient(to bottom,transparent,#000 58%);opacity:1;transition:opacity .45s var(--ease),backdrop-filter .45s var(--ease);pointer-events:none}
.project-card[open] .work-card-visual::after{opacity:0;backdrop-filter:blur(0)}
.work-card-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.work-card-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:20px}
.work-card-meta>span:first-child{display:grid;gap:4px}
.work-card-meta strong{font-size:18px;line-height:1.2;font-weight:500;letter-spacing:-.025em}
.work-card-meta small{font-size:12px;color:var(--muted)}
.work-card-toggle{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;color:var(--muted);transition:transform .35s var(--ease),color .2s,border-color .2s}
.project-card[open] .work-card-toggle{transform:rotate(180deg);color:var(--accent);border-color:#b2ff0045}
.work-card-body{display:grid;grid-template-columns:1.3fr .7fr;gap:32px;margin:0 20px;padding:24px 0 28px;border-top:1px solid var(--line);opacity:1;transform:translateY(0);transition:opacity .28s ease,transform .45s var(--ease)}
.project-card.is-closing .work-card-body{opacity:0;transform:translateY(-8px)}
.work-card-body>p{font-size:14px;line-height:1.6}
.work-card-link{display:inline-flex;margin-top:16px;color:var(--accent);font-size:12px;gap:10px;align-items:center}
.work-card-facts{display:grid;gap:12px;margin:0}
.work-card-facts div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:8px}
.work-card-facts dt{font-size:11px;color:var(--muted)}
.work-card-facts dd{margin:0;font-size:11px;color:var(--text);text-align:right}
@media(prefers-reduced-motion:no-preference){
  .work-card-layout.cards-ready .project-card:not([data-motion-done]){opacity:0;transform:translate3d(-32px,36px,0) scale(.985)}
  .work-card-layout.cards-ready .project-card:nth-of-type(2):not([data-motion-done]){transform:translate3d(32px,36px,0) scale(.985)}
}
@media(max-width:760px){
  .work-card-layout{grid-template-columns:1fr;gap:24px}
  .work-card-layout>.project-card{width:100%;grid-column:1;grid-row:auto}
  .work-card-layout>.project-card:nth-of-type(2),.work-card-layout>.project-card:nth-of-type(3),.work-card-note:nth-of-type(1),.work-card-note:nth-of-type(2),.work-card-note:nth-of-type(3){grid-column:1;grid-row:auto;justify-self:start}
  .work-card-note{max-width:480px;margin:0 0 24px;padding:0;background:none}
  .work-card-body{grid-template-columns:1fr;gap:24px}
}

/* Editorial contact layout: the form belongs to the page rather than a card. */
.contact-page .contact-layout{align-items:start;border-block:1px solid var(--line);padding-block:96px;margin-bottom:96px}
.contact-page .form-panel{padding:0;border:0;background:transparent;border-radius:0}
.contact-page .form-panel>.eyebrow{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.contact-page #project-form input,.contact-page #project-form select,.contact-page #project-form textarea{border:0;border-bottom:1px solid #ffffff35;border-radius:0;background:transparent;padding:12px 0;margin-bottom:28px;min-height:48px;transition:border-color .2s}
.contact-page #project-form textarea{min-height:104px}
.contact-page #project-form :is(input,select,textarea):focus{outline:0;border-color:var(--accent)}
.contact-page .project-submit{margin-top:8px;border-radius:0;padding-inline:20px}
.services-overview{padding-top:96px}
.services-overview .section-intro{align-items:flex-end}
.services-overview h1{font-size:clamp(52px,6vw,76px);line-height:1;letter-spacing:-.05em}
.services-overview .service-row h2{font-size:clamp(24px,2.6vw,32px);line-height:1.2;letter-spacing:-.035em}
.services-overview .service-art{left:auto;right:32px;top:50%;width:220px;height:220px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
@media(hover:hover) and (pointer:fine){
  .services-overview .service-row .service-art{transform:translate(8px,-44%) rotate(-6deg) scale(.92)}
  .services-overview .service-row:hover .service-art,.services-overview .service-row:focus-visible .service-art{transform:translate(0,-50%) rotate(4deg) scale(1)}
}
@media(max-width:760px){
  .contact-page .contact-layout{padding-block:72px;margin-bottom:72px}
  .services-overview{padding-top:72px}
  .services-overview .service-row h2{font-size:26px;grid-column:2}
}
