:root{--ink: #0a0a0a;--white: #ffffff;--dark: #111111;--panel-light: #f4f4f4;--panel-dark: #1c1c1c;--hairline-light: #d9d9d9;--hairline-dark: #3a3a3a;--muted-light: #8c8c8c;--muted-light-strong: #555555;--muted-dark: #a6a6a6;--muted-dark-strong: #d9d9d9;--font-display: "Archivo Black", "Archivo", system-ui, sans-serif;--font-sans: "Archivo", system-ui, -apple-system, sans-serif;--track: .18em;--track-wide: .22em;--email-size: clamp(17px, 5.2vw, 74px);--max-width: 1440px;--pad-x: clamp(20px, 6vw, 96px);--section-y: clamp(72px, 11vh, 140px);--gutter: clamp(16px, 2vw, 32px);--column-gap: clamp(40px, 6vw, 96px);--stack-gap: clamp(40px, 5vw, 72px);--ease: cubic-bezier(.22, .61, .36, 1)}[data-theme=light]{--bg: var(--white);--fg: var(--ink);--rule: var(--hairline-light);--panel: var(--panel-light);--muted: var(--muted-light-strong);--caption: var(--muted-light-strong);--stat-rule: var(--ink)}[data-theme=dark]{--bg: var(--dark);--fg: var(--white);--rule: var(--hairline-dark);--panel: var(--panel-dark);--muted: var(--muted-dark-strong);--caption: var(--muted-dark);--stat-rule: var(--hairline-dark)}*,*:before,*:after{box-sizing:border-box}html{scroll-padding-top:66px;scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font-sans);font-size:17px;line-height:normal;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:900;text-transform:uppercase}p{margin:0}img{max-width:100%}a{color:inherit;text-decoration:none;transition:color .16s var(--ease)}a:hover{color:var(--muted-light)}:focus-visible{outline:2px solid currentColor;outline-offset:3px}.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}.shell{max-width:var(--max-width);margin:0 auto;padding-left:var(--pad-x);padding-right:var(--pad-x)}.section{background:var(--bg);color:var(--fg)}.overline{font-size:13px;letter-spacing:var(--track-wide);font-weight:600}.label{font-size:13px;letter-spacing:var(--track);font-weight:700}@media(prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .4s ease-out,transform .4s ease-out}.js [data-reveal].is-revealed{opacity:1;transform:none}}.site-header{position:sticky;top:0;z-index:10;background:var(--dark);color:var(--white)}.site-header__inner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:22px;padding-bottom:22px;font-size:13px;letter-spacing:var(--track)}.site-header__brand{font-weight:700}.site-header__nav{display:flex;gap:32px}@media(max-width:640px){.site-header__inner{flex-wrap:wrap;gap:10px 20px}.site-header__nav{gap:20px}}.nav-toggle{display:none;appearance:none;width:44px;height:44px;margin:-10px -12px -10px 0;padding:0;border:0;background:none;color:inherit;cursor:pointer;align-items:center;justify-content:flex-end}.nav-toggle__bars,.nav-toggle__bars:before,.nav-toggle__bars:after{display:block;width:24px;height:1.5px;background:currentColor;transition:transform .18s var(--ease),background-color .12s linear}.nav-toggle__bars{position:relative}.nav-toggle__bars:before,.nav-toggle__bars:after{content:"";position:absolute;left:0}.nav-toggle__bars:before{transform:translateY(-7px)}.nav-toggle__bars:after{transform:translateY(7px)}.nav-toggle[aria-expanded=true] .nav-toggle__bars{background:transparent}.nav-toggle[aria-expanded=true] .nav-toggle__bars:before{transform:rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle__bars:after{transform:rotate(-45deg)}.site-menu{position:fixed;inset:0;z-index:9;background:var(--dark);color:var(--white);overflow-y:auto;overscroll-behavior:contain}.site-menu[hidden]{display:none}.site-menu__inner{display:flex;flex-direction:column;align-items:flex-start;padding-top:clamp(96px,18vh,140px);padding-bottom:clamp(40px,8vh,72px)}.site-menu__link{padding:12px 0;font-family:var(--font-display);font-weight:900;font-size:clamp(40px,5.5vw,80px);line-height:1;letter-spacing:normal;text-transform:uppercase;color:var(--white)}.site-menu__link:hover{color:var(--muted-light)}body.is-nav-open{overflow:hidden}@media(max-width:640px){.has-nav-menu .site-header__nav{display:none}.has-nav-menu .site-header__inner{flex-wrap:nowrap}.has-nav-menu .nav-toggle{display:flex}}@media(prefers-reduced-motion:reduce){.nav-toggle__bars,.nav-toggle__bars:before,.nav-toggle__bars:after{transition:none}}.contact__inner{display:flex;flex-direction:column;padding-top:clamp(96px,14vh,170px);padding-bottom:48px;gap:clamp(64px,10vh,120px)}.contact--case-study .contact__inner{padding-top:clamp(80px,12vh,140px);gap:clamp(56px,8vh,96px)}.contact__block{display:flex;flex-direction:column;gap:28px}.contact--case-study .contact__block{gap:24px}.contact__email{font-family:var(--font-display);font-size:var(--email-size);line-height:1;text-transform:uppercase;word-break:break-word}.contact__details{font-size:18px;letter-spacing:.06em}.contact__foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;border-top:1px solid var(--hairline-dark);padding-top:24px;font-size:12px;letter-spacing:var(--track);color:var(--muted-dark)}.hero__inner{display:flex;flex-direction:column;padding-top:clamp(56px,9vh,110px);padding-bottom:48px;gap:clamp(40px,5vw,64px)}.hero__stack{display:flex;flex-direction:column;gap:clamp(28px,4vw,48px)}.hero__name{font-size:clamp(56px,11.5vw,176px);line-height:.92;letter-spacing:-.01em}@media(max-width:380px){.hero__name{font-size:clamp(44px,13.5vw,56px)}}.hero__subhead{max-width:900px;font-family:var(--font-display);font-size:clamp(22px,2.6vw,38px);line-height:1.15;text-transform:uppercase;text-wrap:balance}.hero__foot{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:32px;border-top:1px solid var(--hairline-dark);padding-top:24px}.hero__intro{max-width:620px;font-size:18px;line-height:1.65;text-wrap:pretty}.work__inner{display:flex;flex-direction:column;padding-top:clamp(72px,10vh,120px);padding-bottom:clamp(96px,14vh,160px);gap:var(--stack-gap)}.work__head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:24px}.work__title{font-size:clamp(40px,5.5vw,80px);line-height:1}.work__count{font-size:13px;letter-spacing:var(--track);color:var(--muted-light)}.work__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,520px),1fr));gap:clamp(48px,5vw,72px) clamp(24px,3vw,48px)}.card{display:flex;flex-direction:column;gap:22px}.card__frame{aspect-ratio:4 / 3;background:var(--panel-light);overflow:hidden}.card__frame--cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}.card__frame--contain{display:flex;align-items:center;justify-content:center;padding:6% 0}.card__frame--contain img{display:block;height:100%;width:auto}.card__frame img.is-rounded{border-radius:28px}.card__frame--pair{gap:4%}.card__frame img.is-framed{aspect-ratio:375 / 812;object-fit:cover;object-position:top;border-radius:18px}.card__meta{display:flex;align-items:baseline;gap:20px}.card__number{font-family:var(--font-display);font-size:40px;line-height:1}.card__naming{display:flex;flex-direction:column;gap:6px}.card__name{font-family:var(--font-display);font-size:22px;text-transform:uppercase}.card__role{font-size:12px;letter-spacing:var(--track);color:var(--muted-light)}.card__summary{max-width:520px;font-size:17px;line-height:1.55;text-wrap:pretty}.how__inner{display:flex;flex-wrap:wrap;align-items:flex-start;padding-top:clamp(88px,12vh,150px);padding-bottom:clamp(88px,12vh,150px);gap:clamp(48px,6vw,96px)}.how__portrait{flex:1 1 360px;display:flex;flex-direction:column;gap:28px}@media(min-width:1000px){.how__portrait{position:sticky;top:96px}}.how__portrait-frame{position:relative;aspect-ratio:1 / 1;background:var(--dark);overflow:hidden}.how__portrait-frame img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.how__content{flex:1.4 1 440px;display:flex;flex-direction:column;gap:40px}.how__title{font-size:clamp(36px,4.6vw,68px);line-height:1.02}.how__body{display:flex;flex-direction:column;gap:20px;font-size:18px;line-height:1.65}.how__list{display:flex;flex-direction:column}.how__row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;border-top:1px solid var(--hairline-dark);padding:22px 0}.how__row:last-child{border-bottom:1px solid var(--hairline-dark)}.how__row-number{font-family:var(--font-display);font-size:24px;line-height:1}.how__row-text{display:flex;flex-direction:column;gap:6px}.how__row-title{font-family:var(--font-display);font-size:17px;text-transform:uppercase}.how__row-detail{font-size:16px;line-height:1.55;color:var(--muted-dark-strong)}.resume__inner{display:flex;flex-direction:column;padding-top:clamp(88px,12vh,150px);padding-bottom:clamp(88px,12vh,150px);gap:clamp(40px,5vw,64px)}.resume__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px}.resume__heading{display:flex;flex-direction:column;gap:16px}.resume__title{font-size:clamp(36px,4.5vw,64px);line-height:1}.resume__contact{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.resume__links{display:flex;flex-wrap:wrap;gap:10px 28px}.resume__contact-lines{font-size:15px;line-height:1.6}.resume__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(40px,5vw,72px)}.resume__main{grid-column:span 3;min-width:0;display:flex;flex-direction:column}@media(max-width:640px){.resume__main,.resume__detail{grid-column:auto}}.resume__section-label{padding-bottom:14px}.resume__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px 32px;border-top:1px solid var(--hairline-light);padding:18px 0}.resume__role{display:flex;flex-direction:column;gap:4px}.resume__company{font-family:var(--font-display);font-size:17px;text-transform:uppercase}.resume__job{font-size:15px;line-height:1.4}.resume__dates{font-size:12px;letter-spacing:.14em;color:var(--muted-light)}.resume__detail{grid-column:span 2;min-width:0;font-size:16px;line-height:1.6;text-wrap:pretty}.resume__side{display:flex;flex-direction:column;gap:40px;min-width:0}.resume__block{display:flex;flex-direction:column;gap:10px}.resume__item{border-top:1px solid var(--hairline-light);padding-top:10px;font-size:15px;line-height:1.45}.cs-hero__inner{display:flex;flex-direction:column;padding-top:clamp(56px,9vh,110px);padding-bottom:var(--section-y);gap:clamp(40px,5vw,64px)}.cs-hero__row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--column-gap)}.cs-hero__text{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:28px}.cs-hero__title{display:flex;align-items:flex-start;gap:24px;flex-wrap:wrap}.cs-hero__number{font-family:var(--font-display);font-size:clamp(64px,8vw,120px);line-height:.85}.cs-hero__naming{display:flex;flex-direction:column;gap:10px;padding-top:6px}.cs-hero__naming h1{font-size:clamp(32px,4vw,60px);line-height:1}.cs-hero__meta{font-size:12px;letter-spacing:var(--track);color:var(--muted-dark)}.cs-hero__lead{max-width:640px;font-size:clamp(20px,1.8vw,26px);line-height:1.45;font-weight:600;text-wrap:pretty}.cs-hero__problem{display:flex;flex-direction:column;gap:12px;max-width:640px}.cs-hero__problem p{font-size:18px;line-height:1.65;text-wrap:pretty}.cs-hero__problem p+p{font-size:16px;line-height:1.6;color:var(--muted-dark)}.cs-hero__phone{flex:0 1 auto;min-width:0;display:flex;justify-content:center;width:100%;max-width:420px;margin:0 auto}.cs-hero__phone img{display:block;height:clamp(320px,36vw,560px);width:auto;max-width:100%;object-fit:contain}.chapter__inner{display:flex;flex-direction:column;padding-top:var(--section-y);padding-bottom:var(--section-y);gap:var(--stack-gap)}.chapter__split{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--column-gap)}.chapter__text{display:flex;flex-direction:column;gap:24px;max-width:860px}.chapter__split .chapter__text{flex:1 1 380px;min-width:0;max-width:620px}.chapter__media-column{flex:1.3 1 460px;min-width:0;display:flex;flex-direction:column;gap:var(--gutter)}.chapter__title{font-size:clamp(30px,3.6vw,52px);line-height:1.06;text-wrap:balance}.chapter__body{font-size:18px;line-height:1.65;text-wrap:pretty}.chapter__note{font-size:17px;line-height:1.6;color:var(--muted);text-wrap:pretty}.chapter__quote{margin:0;padding:0;font-family:var(--font-display);font-size:clamp(22px,2.2vw,30px);line-height:1.25;text-transform:uppercase}.rules{display:flex;flex-direction:column}.rules__row{border-top:1px solid var(--rule);padding:16px 0;font-size:17px;line-height:1.6;text-wrap:pretty}.rules__row:last-child{border-bottom:1px solid var(--rule)}.tags{display:flex;flex-wrap:wrap;gap:10px}.tags__item{border:1px solid currentColor;border-radius:999px;padding:8px 14px;font-size:12px;letter-spacing:.16em;font-weight:600}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--gutter)}.stats__card{display:flex;flex-direction:column;gap:10px;border-top:2px solid var(--stat-rule);padding-top:18px}.stats__value{font-family:var(--font-display);font-size:clamp(36px,4vw,56px);line-height:1}.stats__label{font-size:12px;letter-spacing:var(--track);font-weight:700}.stats__detail{font-size:16px;line-height:1.55;color:var(--muted)}.media{display:flex;flex-direction:column;gap:var(--gutter);min-width:0}.media__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--media-min, 420px)),1fr));gap:var(--gutter)}.media__item{display:flex;flex-direction:column;gap:12px;background:var(--panel)}.media__item--padded{padding:clamp(16px,3vw,40px)}.media__item img{display:block;width:100%;height:auto}.media__item--inset img{width:70%;margin:0 auto}.media__caption{font-size:12px;letter-spacing:var(--track);color:var(--caption);padding-bottom:4px}.media__item--padded .media__caption{padding-bottom:0}.media__phones{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--gutter);padding:clamp(24px,4vw,56px);background:var(--panel)}.media__phones img{display:block;height:calc(clamp(320px,36vw,560px) * var(--phone-scale, 1));width:auto;max-width:100%;object-fit:contain}.next-case{border-top:1px solid var(--hairline-light)}.next-case__link{display:block;padding-top:clamp(64px,10vh,120px);padding-bottom:clamp(64px,10vh,120px)}.next-case__label{margin-bottom:18px}.next-case__title{display:flex;align-items:baseline;flex-wrap:wrap;gap:24px}.next-case__number{font-family:var(--font-display);font-size:clamp(48px,6vw,96px);line-height:.9}.next-case__name{font-family:var(--font-display);font-size:clamp(36px,5vw,80px);line-height:.95;text-transform:uppercase}.media__zoom{display:block;cursor:zoom-in}.media__zoom:hover{color:inherit}.media__phones .media__zoom{display:flex}.lightbox{width:100%;max-width:100vw;height:100%;max-height:100vh;margin:0;padding:clamp(16px,3vw,32px);border:0;background:var(--dark);color:var(--white);overflow:hidden}.lightbox::backdrop{background:#0a0a0af0}.lightbox[open]{display:flex;flex-direction:column;gap:clamp(12px,2vw,24px)}.lightbox__bar,.lightbox__nav{display:flex;justify-content:space-between;align-items:center;gap:24px;flex:0 0 auto}.lightbox__nav{justify-content:center;gap:clamp(24px,5vw,64px)}.lightbox__nav[hidden]{display:none}.lightbox__count{font-size:12px;letter-spacing:var(--track);color:var(--muted-dark)}.lightbox__button{appearance:none;border:0;padding:8px 0;background:none;color:var(--white);font-family:inherit;font-size:13px;letter-spacing:var(--track);font-weight:700;cursor:pointer}.lightbox__button:hover{color:var(--muted-light)}.lightbox__figure{flex:1 1 auto;min-height:0;overflow:hidden;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.lightbox__image{flex:1 1 auto;min-height:0;width:100%;height:100%;object-fit:contain}.lightbox__caption{flex:0 0 auto;max-width:720px;text-align:center;font-size:14px;line-height:1.5;color:var(--muted-dark-strong)}.lightbox__caption:empty{display:none}.notice__inner{display:flex;flex-direction:column;align-items:flex-start;gap:28px;padding-top:clamp(96px,16vh,200px);padding-bottom:clamp(96px,16vh,200px);min-height:60vh;justify-content:center}.notice__title{font-size:clamp(40px,7vw,96px);line-height:1}.notice__body{max-width:620px;font-size:18px;line-height:1.65;text-wrap:pretty}.notice__email{font-family:var(--font-display);font-size:var(--email-size);line-height:1;text-transform:uppercase;word-break:break-word}.notice__back{color:var(--muted-dark)}.phone{display:block;height:var(--phone-height);width:auto;max-width:none;aspect-ratio:375 / 812;object-fit:cover;object-position:top;border-radius:28px;flex:none}.carousel{--phone-height: clamp(300px, 34vw, 520px);--carousel-pad: clamp(28px, 4vw, 64px);--carousel-inset: clamp(32px, 6vw, 96px);display:flex;flex-direction:column;gap:16px;min-width:0}.carousel--compact,.screens--compact{--phone-height: clamp(300px, 34vw, 440px)}.carousel--large,.screens--large{--phone-height: clamp(360px, 40vw, 620px)}.carousel--tall,.screens--tall{--phone-height: clamp(420px, 46vw, 680px)}.screens{--phone-height: clamp(300px, 34vw, 520px);--carousel-pad: clamp(28px, 4vw, 64px);--carousel-inset: clamp(32px, 6vw, 96px);display:flex;flex-direction:column;align-items:center;gap:clamp(16px,2vw,32px);padding:var(--carousel-pad) var(--carousel-inset);min-width:0}.screens--panel-light{background:var(--panel-light)}.screens--panel-dark{background:var(--dark)}.screens .phone{width:100%;max-width:340px;height:auto;aspect-ratio:auto;object-fit:contain}.carousel__viewport{overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--carousel-inset);-webkit-overflow-scrolling:touch;scrollbar-width:none}.carousel__viewport::-webkit-scrollbar{display:none}.carousel__track{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:clamp(16px,2vw,32px);width:max-content;padding:var(--carousel-pad) var(--carousel-inset)}.carousel__item{scroll-snap-align:start;display:block}.carousel--panel-light .carousel__viewport{background:var(--panel-light)}.carousel--panel-dark .carousel__viewport{background:var(--dark)}.carousel--bleed{margin-inline:calc(-1 * var(--pad-x))}.carousel--bleed .carousel__track{padding-inline:var(--pad-x)}.carousel--bleed .carousel__viewport{scroll-padding-inline:var(--pad-x)}.carousel--bleed .carousel__foot{padding-inline:var(--pad-x)}.carousel--center .carousel__track{flex-wrap:nowrap;min-width:100%;justify-content:center;justify-content:safe center}.carousel__foot{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.carousel__foot--end{justify-content:flex-end}.carousel__caption{font-size:13px;letter-spacing:var(--track);color:var(--caption)}.carousel__controls{display:flex;gap:12px}.carousel__controls[hidden]{display:none}.carousel__button{width:48px;height:48px;border-radius:50%;border:1.5px solid currentColor;background:transparent;color:var(--fg);font-family:inherit;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .16s var(--ease),color .16s var(--ease)}.carousel__button:hover:not(:disabled){background:var(--fg);color:var(--bg)}.carousel__button:disabled{opacity:.35;cursor:default}.chapter__text--statement{max-width:1200px}.chapter__title--statement{font-size:clamp(34px,5vw,76px);line-height:1.02}.chapter__inner--flush{padding-top:0;padding-bottom:0}.chapter--rule{border-top:1px solid var(--rule)}.cs-hero__phone--full{max-width:440px}.cs-hero__phone--full img{width:100%;max-width:340px;height:auto;border-radius:28px;object-fit:contain}.chapter__inner--flush .carousel{gap:0}.chapter__inner--flush .carousel__track{padding-block:clamp(40px,6vw,80px)}.chapter__inner--flush .carousel__foot{margin-top:calc(-1*clamp(16px,3vw,40px));padding-bottom:clamp(40px,6vw,64px)}@media(min-width:1000px){.chapter__text--sticky{position:sticky;top:96px}}.is-clipped{display:block;border-radius:11%/5%;clip-path:inset(.5% round 11% / 5%)}.is-clipped-wrap{overflow:hidden;border-radius:11%/5%}.resume-page{max-width:900px;margin:0 auto;padding:clamp(40px,8vh,96px) clamp(20px,6vw,64px) clamp(64px,10vh,120px);display:flex;flex-direction:column;gap:clamp(32px,5vw,56px)}.resume-page__head{display:flex;flex-direction:column;gap:14px;border-bottom:1px solid var(--hairline-light);padding-bottom:24px}.resume-page__name{font-size:clamp(32px,6vw,52px);line-height:1}.resume-page__contact{font-size:15px;line-height:1.6}.resume-page__links{display:flex;flex-wrap:wrap;gap:10px 28px}.resume-page__back{font-size:13px;letter-spacing:var(--track);font-weight:700}.resume-page__group{display:flex;flex-direction:column;gap:4px}.resume-page__group-label{padding-bottom:10px}.resume-page__list{display:flex;flex-direction:column}@media print{.site-header,.resume-page__back,.contact{display:none}.resume-page{padding:0;max-width:none}a{color:#0a0a0a}}
