@font-face{font-family:Inter;src:url('fonts/inter-400.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-600.woff') format('woff');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-700.woff') format('woff');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('fonts/ibm-plex-mono-400.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
:root{--ink:#151416;--ink-soft:#242229;--paper:#f5f5f7;--muted:#65636e;--line:#d8d7df;--violet:#7346ec;--violet-light:#bdabff;--page:clamp(22px,5.5vw,104px);--mono:'IBM Plex Mono',monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}
body.dialog-open{overflow:hidden}
::selection{background:var(--violet-light);color:var(--ink)}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button,input,textarea,select{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:default}
button{color:inherit}
img{display:block;max-width:100%;height:auto}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:600;letter-spacing:-.055em}
h2{font-size:clamp(2.35rem,4.1vw,4.6rem);line-height:1.08}
h3{font-size:1.5rem;line-height:1.25;letter-spacing:-.035em}
p{max-width:70ch}
:focus-visible{outline:3px solid var(--violet);outline-offset:6px}
.hero :focus-visible,.about :focus-visible,.contact :focus-visible,.site-header :focus-visible,.footer :focus-visible{outline-color:var(--violet-light)}
.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:white;color:var(--ink);padding:12px 20px;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
.section-pad{padding:110px var(--page)}
.eyebrow{font-family:var(--mono);font-size:.75rem;letter-spacing:.05em;line-height:1.6;font-weight:400;margin-bottom:28px}
.muted{color:var(--muted)}
.button{min-height:50px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:12px 21px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:5px;font-size:.875rem;font-weight:600;line-height:1.4;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:3px 3px 0 var(--ink)}
.button:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.button span{font-size:1.25rem;font-weight:400;line-height:1}
.button--small{min-height:44px;padding:10px 16px}
.button--violet{background:var(--violet-light)}
.button--outline{background:transparent;color:white;border-color:#6d6975;box-shadow:none}
.button--outline:hover{background:#302d36;box-shadow:none}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:12px 0;min-height:46px;border-bottom:1px solid var(--ink);font-size:.875rem;font-weight:600}
.text-link span{font-size:1.25rem;font-weight:400;transition:transform .2s}
.text-link:hover span{transform:rotate(90deg)}
.light-link{border-color:#79747f}
.site-header{height:90px;position:fixed;inset:0 0 auto;z-index:30;display:flex;align-items:center;gap:38px;padding:0 var(--page);background:#151416f5;color:white;border-bottom:1px solid #ffffff22;transition:height .25s;backdrop-filter:blur(14px)}
.site-header.is-scrolled{height:76px}
.brand{font-size:1.65rem;font-weight:700;line-height:1;letter-spacing:-.08em;white-space:nowrap;padding:10px 0}
.brand span{color:var(--violet-light)}
.header-location{font-family:var(--mono);font-size:.75rem;color:#bcb8c4;margin-right:auto}
.desktop-nav{display:flex;gap:28px;align-items:center;font-size:.875rem}
.desktop-nav a{padding:12px 0;border-bottom:1px solid transparent}
.desktop-nav a:hover{border-color:var(--violet-light)}
.nav-cta{box-shadow:none;border-color:#e2dfea}
.menu-button{display:none;min-height:44px;align-items:center;gap:14px;border:1px solid #5c5863;border-radius:4px;background:transparent;color:white;padding:8px 14px;font-size:.875rem}
.mobile-menu{position:fixed;top:72px;left:0;right:0;z-index:29;padding:12px var(--page) 24px;background:var(--ink);color:white;border-bottom:1px solid #6d6975}
.mobile-menu a{display:block;padding:15px 0;border-bottom:1px solid #ffffff22;font-size:1.1rem}
.hero{padding:136px var(--page) 0;background:var(--ink);color:var(--paper);overflow:hidden}
.hero-topline{display:flex;justify-content:space-between;gap:24px;align-items:center}
.hero-topline .eyebrow{margin:0;color:#e2dfea}
.edition{font-family:var(--mono);font-size:.75rem;color:#a8a3b0}
.hero h1{font-weight:700;font-size:clamp(8rem,27vw,25.5rem);line-height:.88;letter-spacing:-.078em;margin:39px 0 49px -0.045em;white-space:nowrap}
.hero h1 span{color:var(--violet-light)}
.hero-bottom{display:grid;grid-template-columns:1.1fr .8fr;gap:10%;padding:20px 0 64px}
.hero-copy h2{font-size:clamp(1.7rem,2.4vw,2.65rem);line-height:1.2;letter-spacing:-.04em}
.hero-copy h2 span{color:#a8a3b0}
.hero-copy p{font-size:1rem;color:#bcb8c4;max-width:475px;margin:22px 0 20px}
.hero-copy .text-link{min-width:210px}
.work-index{align-self:start;margin-top:0}
.work-index a{display:grid;grid-template-columns:30px 1fr 24px;align-items:center;gap:12px;padding:20px 0;border-top:1px solid #ffffff35;transition:color .2s}
.work-index a:last-child{border-bottom:1px solid #ffffff35}
.work-index a:hover{color:var(--violet-light)}
.index-number{font-family:var(--mono);color:#9f99a8;font-size:.75rem;align-self:start;padding-top:3px}
.work-index a>span:nth-child(2){font-size:1.0625rem;line-height:1.4}
.work-index small{display:block;font-size:.75rem;color:#a8a3b0;margin-top:4px}
.work-index b{font-size:1.4rem;font-weight:400}
.hero-foot{border-top:1px solid #ffffff35;display:flex;justify-content:space-between;gap:20px;padding:19px 0;font:400 .75rem/1.5 var(--mono);color:#a8a3b0}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:50px}
.section-heading>p{font-size:1rem;color:var(--muted);max-width:325px;padding-bottom:5px}
.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-top:1px solid var(--line);margin-bottom:24px}
.filter-bar{display:flex;flex-wrap:wrap;gap:8px}
.filter{border:1px solid transparent;border-radius:4px;padding:10px 18px;min-height:44px;background:transparent;color:var(--muted);font-size:.875rem;font-weight:600;transition:background .2s,color .2s}
.filter span{margin-left:9px;font:400 .75rem var(--mono);opacity:.7}
.filter:hover{background:#e5e3eb;color:var(--ink)}
.filter.is-active{background:var(--ink);color:white;box-shadow:3px 3px 0 var(--violet-light)}
.filter-status{font:400 .75rem var(--mono);color:var(--muted);white-space:nowrap}
.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:54px 30px}
.project-card{grid-column:span 7;min-width:0;perspective:1100px}
.project-card:nth-child(4n+2),.project-card:nth-child(4n+3){grid-column:span 5}
.project-grid.is-filtered .project-card{grid-column:span 6}
.project-cover{height:410px;display:flex;flex-direction:column;position:relative;padding:27px 30px;overflow:hidden;border:1px solid var(--ink);border-radius:7px;box-shadow:5px 5px 0 var(--ink);transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s,box-shadow .25s;isolation:isolate}
.project-cover:hover{box-shadow:7px 7px 0 var(--ink)}
.cover-meta{display:flex;justify-content:space-between;align-items:start;gap:16px;font:400 .75rem/1.5 var(--mono);position:relative;z-index:2}
.cover-meta span:last-child{text-align:right}
.cover-bottom{margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:16px;position:relative;z-index:2}
.cover-bottom p{font-size:.875rem;line-height:1.5}
.cover-disc{display:grid;place-items:center;width:38px;height:38px;border:1px solid currentColor;border-radius:50%;font-size:1.3rem;flex:none}
.cover-oxford{background:#064c35;color:#e8ffd7}
.oxford-title{font-size:clamp(2.9rem,6vw,6.2rem);font-weight:600;line-height:.95;letter-spacing:-.07em;margin:auto 0}
.oxford-title span{display:block;font-size:.37em;letter-spacing:.28em;margin-top:14px;font-weight:400}
.cover-oxford .cover-meta,.cover-oxford .cover-bottom{color:#c5e6bf}
.cover-recovery{background:#122037;color:#f4dfb7}
.recovery-icon{width:133px;height:133px;object-fit:contain;align-self:center;margin:18px 0 4px;filter:drop-shadow(0 12px 22px #0004);transition:transform .4s}
.cover-recovery:hover .recovery-icon{transform:translateY(-5px) rotate(-4deg)}
.recovery-title{font-size:clamp(1.6rem,2.7vw,2.8rem);letter-spacing:-.055em;line-height:1.1;text-align:center;font-weight:600;margin:4px 0 22px}
.recovery-title span{display:block;font-size:.8125rem;font-weight:400;letter-spacing:0;margin-top:10px;color:#cebfab}
.cover-recovery .cover-meta{color:#d9c9aa}
.cover-zavrio{background:#d7c9ff;color:#2e1555}
.zavrio-title{font-size:clamp(3.3rem,5.8vw,6rem);font-weight:700;letter-spacing:-.075em;margin:auto 0;line-height:1.1}
.zavrio-title>span{color:#7843e2}
.zavrio-title small{display:block;font-size:.9375rem;font-weight:400;letter-spacing:-.02em;margin-top:18px}
.cover-fashion{color:white;background:#313632}
.cover-fashion>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2;transition:transform .6s}
.cover-fashion:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0008 0%,#0001 30%,#000b 100%);z-index:-1}
.cover-fashion:hover>img{transform:scale(1.04)}
.fashion-title{font-size:clamp(2.5rem,5.4vw,5.5rem);font-weight:600;line-height:1;letter-spacing:-.055em;margin-top:auto;margin-bottom:28px}
.fashion-title small{display:block;font:400 .875rem var(--mono);letter-spacing:.08em;margin-top:12px}
.cover-showcase{background:#dee4ed;color:#1b2a45}
.showcase-title{font-weight:600;font-size:clamp(1.7rem,2.4vw,2.5rem);line-height:1.12;letter-spacing:-.045em;margin-top:25px;z-index:2}
.cover-showcase>img{position:absolute;width:72%;max-width:490px;right:-5%;top:137px;transform:rotate(-8deg);border-radius:8px;box-shadow:0 14px 30px #1b2a4529}
.cover-showcase .cover-bottom{font-size:.75rem;background:linear-gradient(0deg,#dee4ed 30%,#dee4ed00);margin:0 -30px -27px;margin-top:auto;padding:36px 30px 27px}
.cover-identity{background:#27242c;color:#e5ddf1}
.identity-icons{display:flex;align-items:center;justify-content:center;gap:6px;margin:21px auto 6px;width:100%;max-width:310px}
.identity-icons img{width:49%;height:auto;max-width:135px;filter:drop-shadow(0 12px 15px #0004);transition:transform .35s}
.identity-icons img:first-child{transform:rotate(-8deg)}
.identity-icons img:last-child{transform:rotate(10deg)}
.cover-identity:hover .identity-icons img:first-child{transform:rotate(-12deg) translateY(-3px)}
.cover-identity:hover .identity-icons img:last-child{transform:rotate(14deg) translateY(-3px)}
.identity-title{font-size:clamp(1.6rem,2.4vw,2.5rem);font-weight:600;letter-spacing:-.04em;line-height:1.1;margin:5px 0 22px}
.project-info{padding:26px 0 0;display:flex;gap:20px;align-items:flex-start}
.project-info>div{flex:1;min-width:0}
.project-category{font:400 .75rem/1.6 var(--mono);color:var(--muted);margin-bottom:10px}
.project-info h3{margin-bottom:10px;font-size:1.5rem}
.project-info h3 a:hover{text-decoration:underline}
.project-info>div>p:last-child{color:var(--muted);max-width:520px;font-size:.9375rem;line-height:1.65}
.project-open{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;font-size:1.5rem;margin-top:21px;transition:background .2s}
.project-open:hover{background:var(--violet-light);border-color:var(--ink)}
.work-note{margin-top:44px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:.8125rem}
.about{background:var(--ink);color:white}
.about>.eyebrow{color:var(--violet-light);margin-bottom:28px}
.about-title{font-size:clamp(2.4rem,3.8vw,4rem);margin-bottom:46px}
.about-title span{color:#96919f}
.about-grid{display:grid;grid-template-columns:.85fr 1fr;gap:10%;align-items:center}
.portrait-card{margin:0;max-width:420px;width:100%;min-width:0}
.portrait-card>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:65% 44%;border:1px solid #7b7487;border-radius:7px;box-shadow:6px 6px 0 #625083}
.portrait-card .identity-note{margin-top:27px}
.identity-note{margin-top:66px;border-left:3px solid var(--violet-light);padding-left:24px}
.identity-note strong{font-size:1.15rem;letter-spacing:-.02em}
.identity-note p{font-size:.9375rem;color:#c3becb;margin:9px 0 19px}
.identity-note>span{font:400 .75rem var(--mono);color:#a8a3b0}
.about-copy>p{color:#bcb8c4;margin-bottom:22px}
.about-copy>.lead{font-size:1.45rem;line-height:1.5;color:white;letter-spacing:-.035em;margin-bottom:28px}
.about-links{display:flex;gap:30px;margin-top:30px}
.tool-strip{border-top:1px solid #ffffff35;margin-top:70px;padding-top:25px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px 25px;color:#bcb8c4;font-size:.8125rem}
.expertise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--ink);border-radius:6px;overflow:hidden;box-shadow:5px 5px 0 var(--ink)}
.expertise-grid article{padding:30px 26px 32px;border-right:1px solid var(--ink);transition:background .2s}
.expertise-grid article:last-child{border-right:0}
.expertise-grid article:hover{background:#e9e2ff}
.item-number{font:400 .75rem var(--mono);color:var(--muted)}
.expertise-grid h3{margin:42px 0 20px;font-size:1.4rem}
.expertise-grid p{font-size:.9375rem;color:var(--muted)}
.process{background:#eae9ef;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12%}
.process>div>p:last-child{margin-top:28px;color:var(--muted);max-width:400px}
.process-list{list-style:none;margin:0;padding:0}
.process-list li{display:grid;grid-template-columns:35px 1fr;gap:20px;padding:26px 0;border-top:1px solid #bbb7c4}
.process-list li:first-child{padding-top:0;border-top:0}
.process-list li:last-child{padding-bottom:0}
.process-list li>span{font:400 .75rem var(--mono);color:var(--muted);padding-top:6px}
.process-list h3{font-size:1.35rem;margin-bottom:10px}
.process-list p{color:var(--muted);font-size:.9375rem}
.contact{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:12%}
.contact .eyebrow{color:var(--violet-light)}
.contact h2{font-size:clamp(2.7rem,4.2vw,4.7rem)}
.contact h2 span{color:var(--violet-light)}
.contact>div>p:not(.eyebrow){color:#bcb8c4;margin:28px 0;max-width:370px}
.contact>div>p.contact-caption{font-size:.8125rem;margin-top:16px}
.contact-methods{display:flex;flex-direction:column;align-items:flex-start;gap:20px;min-width:0}
.contact-number{font-family:var(--mono);font-size:.875rem;color:#bcb8c4;margin-top:14px;letter-spacing:.025em}
.email-link{max-width:100%;overflow-wrap:anywhere;gap:18px;font-size:1rem}
.email-link span{flex:none}
.contact-network{font-size:.875rem;color:#bcb8c4;min-height:44px;display:flex;align-items:center;text-decoration:underline}
.contact-network:hover{color:white}
.contact .button--violet{border-color:var(--violet-light);box-shadow:3px 3px 0 #635873}
.contact .button--violet:hover{box-shadow:5px 5px 0 #635873}
.contact-form{padding-top:6px;min-width:0}
.contact-form h3{font-size:1.45rem;margin-bottom:12px}
.form-intro{font-size:.875rem;color:#bcb8c4;margin-bottom:26px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field{margin-bottom:20px}
.field label,.brief-result label{display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}
.field label>span{font-weight:400;color:#a8a3b0;font-size:.8125rem}
input,textarea,select{display:block;width:100%;border:1px solid #625c6c;border-radius:5px;background:#211e26;color:white;padding:11px 13px;min-height:48px;font-size:1rem;line-height:1.5;transition:border-color .2s}
textarea{resize:vertical;min-height:128px}
select{padding-right:24px;color-scheme:dark}
input:hover,textarea:hover,select:hover{border-color:#bcb8c4}
input:focus,textarea:focus,select:focus{outline:2px solid var(--violet-light);outline-offset:3px}
[aria-invalid="true"]{border-color:#ffb6b6}
.field-error{display:block;color:#ffc3c3;font-size:.8125rem;line-height:1.5;margin-top:5px}
.field-error:empty{display:none}
.form-status{color:#d5c8ff;font-size:.875rem;line-height:1.6;margin-top:18px}
.form-status:empty{margin:0}
.brief-result{padding-top:24px;margin-top:24px;border-top:1px solid #625c6c}
.brief-result textarea{margin-bottom:15px;font-size:.9375rem}
.brief-actions{display:flex;flex-wrap:wrap;gap:12px}
.brief-actions .button{justify-content:center;flex:1 1 145px}
.brief-caption{font-size:.8125rem;line-height:1.6;color:#bcb8c4;margin-top:16px}
.footer{background:var(--ink);color:#aaa4b3;padding:40px var(--page) 75px;border-top:1px solid #ffffff35;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:28px}
.footer .brand{color:white;display:inline-block;font-size:1.5rem}
.footer p{font-size:.8125rem;margin-top:8px}
.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:.8125rem}
.footer-links a{padding:10px 0}
.footer-links a:hover{color:white;text-decoration:underline}
.footer small{flex-basis:100%;font:400 .75rem var(--mono);padding-top:12px}
.case-studies{border-top:1px solid var(--line)}
.case-study{padding:40px 0;scroll-margin-top:115px}
.case-study+.case-study{border-top:1px solid var(--line);margin-top:35px}
.case-study>.eyebrow{color:var(--muted);margin-bottom:24px}
.case-study h2{font-size:clamp(2.1rem,4vw,3.8rem)}
.case-intro{font-size:1.2rem;color:var(--muted);margin:20px 0 30px;letter-spacing:-.02em}
.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:0 0 34px}
.case-facts dt{font:400 .75rem var(--mono);color:var(--muted);margin-bottom:10px}
.case-facts dd{margin:0;font-size:.9375rem;line-height:1.5}
.case-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:30px}
.case-columns h3,.case-study>h3{font-size:1.1rem;margin-bottom:12px}
.case-columns p{font-size:1rem;color:var(--muted)}
.feature-list{padding-left:20px;font-size:.9375rem;columns:2;column-gap:38px;line-height:1.7;margin:0 0 30px}
.feature-list li{break-inside:avoid;padding:3px 0}
.feature-list li::marker{color:var(--violet)}
.case-note{font-size:.875rem;color:var(--muted);background:#e9e6ef;border-left:3px solid var(--violet);padding:16px 20px;margin:28px 0;max-width:none}
.case-figure{margin:30px 0}
.case-figure>img{width:100%;border-radius:5px;border:1px solid var(--line)}
.case-figure>.case-store{height:420px;object-fit:cover;object-position:center 50%}
.case-figure figcaption{font-size:.8125rem;line-height:1.6;color:var(--muted);margin-top:12px}
.case-icon-pair>div{display:flex;justify-content:center;gap:35px;background:#25232c;border-radius:6px;padding:35px}
.case-icon-pair img{width:40%;max-width:210px}
.case-dialog{padding:0;border:1px solid var(--ink);border-radius:9px;background:var(--paper);color:var(--ink);width:min(910px,calc(100vw - 48px));max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);box-shadow:9px 9px 0 #0008;overflow:auto;overscroll-behavior:contain}
.case-dialog::backdrop{background:#0c0817c9;backdrop-filter:blur(8px)}
.dialog-bar{position:sticky;top:0;z-index:3;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--paper);border-bottom:1px solid var(--line)}
.dialog-bar>span{font:400 .75rem var(--mono);color:var(--muted)}
.dialog-close{border:1px solid var(--line);background:white;border-radius:4px;padding:8px 12px;display:flex;align-items:center;gap:22px;min-height:44px;font-size:.875rem}
.dialog-close>span{font-size:1.25rem}
.dialog-close:hover{background:var(--violet-light);border-color:var(--ink)}
.dialog-content{padding:14px 46px 44px}
.dialog-content .case-study{padding:25px 0 0}
.guide-trigger{position:fixed;right:25px;bottom:22px;z-index:35;min-height:44px;display:flex;align-items:center;gap:12px;padding:11px 17px;border:1px solid var(--ink);border-radius:6px;background:var(--violet-light);box-shadow:3px 3px 0 var(--ink);color:var(--ink);font-size:.8125rem;font-weight:600}
.guide-trigger>span{font-size:1rem}
.guide-trigger:hover{background:#cfbfff}
.guide-panel{position:fixed;right:25px;bottom:85px;width:min(360px,calc(100vw - 40px));max-height:calc(100dvh - 115px);overflow:auto;z-index:35;border:1px solid var(--ink);border-radius:7px;background:var(--paper);box-shadow:5px 5px 0 var(--ink)}
.guide-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px;border-bottom:1px solid var(--line)}
.guide-head strong{display:block;font-size:.9375rem;letter-spacing:-.02em}
.guide-head small{display:block;color:var(--muted);font-size:.75rem;margin-top:4px}
.guide-close{width:44px;height:44px;border:0;background:transparent;font-size:1.5rem}
.guide-answer{padding:22px;font-size:.9375rem;line-height:1.7}
.guide-answer a{display:inline-block;color:#6032c7;text-decoration:underline;margin-top:12px}
.guide-options{padding:0 20px 20px;display:flex;flex-wrap:wrap;gap:8px}
.guide-options button{border:1px solid var(--line);border-radius:4px;background:white;padding:9px 12px;min-height:44px;font-size:.8125rem}
.guide-options button:hover,.guide-options button[aria-pressed="true"]{background:var(--violet-light);border-color:var(--ink)}
.reveal-pending{opacity:0;transform:translateY(22px)}
.reveal-visible{opacity:1;transform:none;transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.document-page{min-height:100vh;background:var(--paper)}
.document-header{padding:24px var(--page);background:var(--ink);color:white;display:flex;justify-content:space-between;align-items:center;gap:25px}
.document-header>a:last-child{font-size:.875rem;text-decoration:underline;min-height:44px;display:flex;align-items:center}
.document-content{max-width:880px;margin:0 auto;padding:75px var(--page) 100px}
.document-content h1{font-size:clamp(2.8rem,5vw,4.3rem);line-height:1.05;margin-bottom:28px}
.document-content h2{font-size:1.4rem;line-height:1.3;margin:35px 0 15px}
.document-content p,.document-content li{color:var(--muted);margin-bottom:16px}
.document-content a:not(.button){text-decoration:underline;color:#6032c7}
.document-content .button{margin-top:20px}
@media(min-width:1700px){.hero h1{font-size:26vw;max-width:1500px}.hero-bottom{max-width:1500px}.project-cover{height:460px}.recovery-icon{width:165px;height:165px}.identity-icons{margin-top:30px}.identity-icons img{max-width:165px}.cover-showcase>img{top:150px;width:70%;max-width:620px}}
@media(max-width:1100px){.site-header{gap:24px}.header-location{display:none}.desktop-nav{margin-left:auto;gap:20px}.section-pad{padding-top:90px;padding-bottom:90px}.hero h1{font-size:27.2vw}.hero-bottom{gap:8%}.project-cover{height:370px;padding:24px}.cover-meta{font-size:.75rem;gap:10px}.cover-meta span:last-child{display:none}.cover-showcase .cover-bottom{margin-left:-24px;margin-right:-24px;margin-bottom:-24px;padding:35px 24px 24px}.project-grid{gap:45px 26px}.recovery-icon{width:116px;height:116px;margin:16px 0 5px}.identity-icons img{max-width:111px}.section-heading{gap:40px}.section-heading>p{max-width:280px}.expertise-grid article{padding:25px 20px}.expertise-grid h3{font-size:1.23rem}.expertise-grid p{font-size:.875rem}.contact{gap:8%}.about-grid{gap:8%}}
@media(max-width:800px){.section-pad{padding-top:76px;padding-bottom:76px}.site-header{height:76px}.nav-cta{gap:14px}.hero{padding-top:119px}.edition{display:none}.hero h1{margin-top:35px;margin-bottom:35px;font-size:27vw}.hero-bottom{grid-template-columns:1.1fr 1fr;gap:6%;padding-bottom:42px}.hero-copy h2{font-size:1.6rem}.hero-copy p{font-size:.9375rem}.work-index a{padding:16px 0;grid-template-columns:24px 1fr 18px;gap:8px}.work-index a>span:nth-child(2){font-size:.9375rem}.hero-foot span:nth-child(2){display:none}.section-heading{display:block;margin-bottom:36px}.section-heading>p{max-width:470px;margin-top:24px}.eyebrow{margin-bottom:23px}.project-card,.project-card:nth-child(n){grid-column:span 6}.project-cover{height:340px;padding:21px}.project-grid{gap:40px 24px}.cover-bottom p{font-size:.8125rem}.cover-disc{height:32px;width:32px}.oxford-title{font-size:3.2rem}.recovery-title{font-size:1.65rem}.recovery-icon{width:109px;height:109px}.zavrio-title{font-size:3.4rem}.zavrio-title small{font-size:.875rem;max-width:150px}.fashion-title{font-size:2.9rem}.showcase-title{font-size:1.65rem}.cover-showcase>img{top:143px;width:94%;right:-15%}.cover-showcase .cover-bottom{margin-left:-21px;margin-right:-21px;margin-bottom:-21px;padding:40px 21px 21px}.identity-title{font-size:1.7rem}.identity-icons{margin-top:18px}.identity-icons img{max-width:104px}.project-info{gap:10px;padding-top:22px}.project-info h3{font-size:1.3rem}.project-open{min-width:40px;min-height:44px}.project-category{font-size:.75rem}.project-info>div>p:last-child{font-size:.875rem}.about-grid{grid-template-columns:1fr;gap:42px}.identity-note{margin-top:30px}.about-copy{max-width:620px}.about>.eyebrow{margin-bottom:30px}.tool-strip{margin-top:45px;justify-content:flex-start}.expertise-grid{grid-template-columns:repeat(2,1fr)}.expertise-grid article:nth-child(2){border-right:0}.expertise-grid article:nth-child(-n+2){border-bottom:1px solid var(--ink)}.expertise-grid h3{font-size:1.5rem;margin-top:30px}.expertise-grid p{font-size:.9375rem}.process{gap:7%}.process h2{font-size:2.3rem}.contact{grid-template-columns:1fr;gap:50px}.contact>div>p:not(.eyebrow){max-width:430px}.contact-form{max-width:650px}.footer{align-items:start;gap:32px}.footer-links{gap:20px}.case-dialog{width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}.dialog-content{padding:14px 28px 35px}.case-facts{gap:18px}.case-facts dd{font-size:.875rem}}
@media(max-width:600px){html{scroll-padding-top:91px}.site-header,.site-header.is-scrolled{height:72px}.site-header{justify-content:space-between}.site-header .brand{font-size:1.5rem}.desktop-nav,.nav-cta{display:none}.menu-button{display:flex}.hero{padding-top:107px}.hero-topline .eyebrow{font-size:.75rem;max-width:300px;line-height:1.8}.hero h1{font-size:26.4vw;margin:26px 0 33px -0.045em}.hero-bottom{grid-template-columns:1fr;gap:42px;padding:0 0 32px}.hero-copy h2{font-size:1.8rem}.hero-copy p{font-size:1rem;max-width:400px}.hero-copy .text-link{margin-top:0}.work-index a{padding:16px 0;grid-template-columns:30px 1fr 20px}.work-index a>span:nth-child(2){font-size:1rem}.work-index small{display:inline;margin-left:14px}.hero-foot{flex-wrap:wrap;gap:7px;padding:18px 0;font-size:.75rem}.hero-foot span:last-child{flex-basis:100%}.section-pad{padding-top:66px;padding-bottom:66px}.section-heading{margin-bottom:28px}.section-heading h2{font-size:clamp(2.15rem,7vw,2.75rem)}.section-heading>p{margin-top:23px}.work-toolbar{align-items:flex-start;margin-bottom:15px;gap:12px;flex-direction:column}.filter{padding:10px 13px;font-size:.875rem}.filter-bar{gap:4px}.filter-status{padding-top:5px}.project-grid{display:block}.project-card+.project-card{margin-top:36px}.project-cover{height:360px;padding:24px}.cover-meta span:last-child{display:inline}.oxford-title{font-size:clamp(3.5rem,14vw,5.6rem)}.recovery-icon{width:131px;height:131px;margin:12px 0 0}.recovery-title{font-size:2rem}.cover-bottom p{font-size:.875rem}.cover-disc{width:36px;height:36px}.zavrio-title{font-size:clamp(4rem,17vw,6rem)}.zavrio-title small{max-width:none}.fashion-title{font-size:clamp(3.3rem,13vw,4.7rem)}.showcase-title{font-size:1.9rem}.cover-showcase>img{top:142px;width:84%;right:-5%}.cover-showcase .cover-bottom{margin-left:-24px;margin-right:-24px;margin-bottom:-24px;padding:40px 24px 24px}.identity-icons{max-width:300px;margin-top:15px}.identity-icons img{max-width:124px}.identity-title{font-size:2rem;margin-top:0;margin-bottom:17px}.project-info{padding-top:23px}.project-info h3{font-size:1.45rem}.project-info>div>p:last-child{font-size:.9375rem}.work-note{margin-top:35px}.about-grid h2{font-size:2.45rem}.about-copy>.lead{font-size:1.35rem}.expertise-grid{grid-template-columns:1fr}.expertise-grid article:nth-child(n){border:0;border-bottom:1px solid var(--ink);padding:24px}.expertise-grid article:last-child{border-bottom:0}.expertise-grid h3{margin:20px 0 15px}.expertise-grid h3 br{display:none}.process{grid-template-columns:1fr;gap:38px}.process h2{font-size:2.25rem}.process-list li{padding:22px 0}.contact h2{font-size:clamp(2.5rem,10vw,3.5rem)}.form-row{grid-template-columns:1fr;gap:0}.footer{padding-top:28px;padding-bottom:92px}.footer-links{width:100%;justify-content:space-between;gap:12px}.footer small{padding-top:0}.guide-trigger{right:17px;bottom:17px}.guide-panel{right:17px;bottom:79px}.case-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:6px;box-shadow:4px 4px 0 #0008}.dialog-bar{padding:10px 18px}.dialog-bar>span{font-size:.75rem;max-width:150px}.dialog-content{padding:12px 22px 30px}.case-facts{grid-template-columns:1fr;gap:20px}.case-facts dt{margin-bottom:5px}.case-facts dd{font-size:.9375rem}.case-columns{grid-template-columns:1fr;gap:24px}.feature-list{columns:1}.case-intro{font-size:1.1rem}.case-study h2{font-size:2.1rem;overflow-wrap:break-word}.case-figure>.case-store{height:340px}.case-icon-pair>div{padding:20px;gap:16px}.case-study .button{width:100%;gap:12px}.document-content{padding-top:55px}.document-header{padding-top:18px;padding-bottom:18px}}
@media(max-width:359px){.cover-meta span:last-child{display:none}.project-cover{padding:21px}.hero h1{font-size:25.7vw}.filter{padding:10px}.work-index small{display:block;margin-left:0}.filter span{margin-left:4px}.oxford-title{font-size:3.35rem}.recovery-title{font-size:1.8rem}.zavrio-title{font-size:3.7rem}.fashion-title{font-size:3rem}.project-info h3{font-size:1.35rem}}
@media(min-width:601px) and (max-width:950px){.site-header,.site-header.is-scrolled{height:76px}.desktop-nav,.nav-cta{display:none}.menu-button{display:flex;margin-left:auto}.mobile-menu{top:76px}}
.project-info>div>p:last-child,.expertise-grid p,.process-list p,.guide-answer{font-size:1rem}
@media(max-width:800px){.portrait-card{max-width:380px}.about-grid{align-items:start}.about-copy{padding-top:0}}
@media(max-width:600px){.about-title{font-size:2.45rem;margin-bottom:32px}.portrait-card{max-width:420px}.brief-actions .button{flex-basis:100%}.footer-links{justify-content:flex-start;gap:10px 22px}}
@media(hover:none){.project-cover{transform:none!important}.cover-fashion:hover>img,.cover-recovery:hover .recovery-icon{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-pending{opacity:1;transform:none}.project-cover{transform:none!important}}
@media print{html{scroll-behavior:auto}body{background:white;color:black}.site-header,.mobile-menu,.guide-trigger,.guide-panel,.contact-form,.filter-bar,.work-index,.dialog-bar{display:none!important}.hero{padding-top:30px}.hero h1{font-size:90pt;margin:20px 0}.hero,.about,.contact,.footer{background:white;color:black}.hero span,.about span,.contact span{color:#555}.section-pad{padding:30px}.project-grid{display:block}.project-card{break-inside:avoid;margin:25px 0}.project-cover{height:230px;box-shadow:none;transform:none!important}.case-studies[hidden]{display:block!important}.case-study{break-before:page}.reveal-pending{opacity:1;transform:none}.case-dialog{position:static;max-height:none;border:0;box-shadow:none;width:100%}.hero-foot{display:none}.contact{display:block}.footer{padding:20px}.button{box-shadow:none}.project-card[hidden]{display:block!important}}
