/* Built from fonts.css, tokens.css, base.css, shell.css, components.css by src/assets.php. Edit those. */
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:100 900;font-display:swap;src:url("/assets/fonts/InterTight-var.woff2") format("woff2");unicode-range:U+0000-00FF,U+0100-024F,U+0259,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2122,U+2190-2199,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Inter Tight";font-style:italic;font-weight:100 900;font-display:swap;src:url("/assets/fonts/InterTight-Italic-var.woff2") format("woff2");unicode-range:U+0000-00FF,U+0100-024F,U+0259,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2122,U+2190-2199,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Inter Tight Fallback";src:local("Helvetica Neue"),local("Helvetica"),local("Arial"),local("Liberation Sans");size-adjust:96.31%;ascent-override:96.88%;descent-override:24.12%;line-gap-override:0%}
:root{color-scheme:light;--font-sans:"Inter Tight","Inter Tight Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--weight-regular:400;--weight-semibold:600;--weight-bold:700;--color-bg:#fdf8f4;--color-bg-glass:rgba(255,255,255,0.78);--color-bg-white:#ffffff;--color-bg-nav:#f8f8f8;--color-bg-soft:#f3f0ee;--color-heading:#000000;--color-text:#0b0a09;--color-ghost:#918c87;--color-muted:#6d6965;--color-line:#c1bbb5;--color-border:#eae4df;--color-solid-hover:#2c2927;--color-on-dark-hover:#e6e2df;--color-dark:#000000;--color-dark-alt:#0a0202;--color-on-dark:#fffcfa;--color-on-dark-muted:#b7b2ad;--color-line-on-dark:#615c57;--size-display:3.875rem;--size-h1: 2.75rem;--size-h2: 1.9375rem;--size-h3: 1.75rem;--size-h4: 1.25rem;--size-lead:1.125rem;--size-body:1rem;--size-small:0.75rem;--size-label:clamp(12px,0.6875rem,16px);--leading-tight:1.04;--leading-body:1.6;--leading-lead:1.5;--leading-none:1;--tracking-heading:-0.01em;--tracking-label:0.04em;--space-1: 0.25rem;--space-2: 0.5rem;--space-3: 0.75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--space-10: 4rem;--space-12: 6rem;--topbar-height:1.75rem;--journey-entry-height:33rem;--container:72rem;--container-wide:84rem;--measure:36rem;--gutter:clamp(1.25rem,4vw,2.5rem);--radius-button:30px;--radius-pill:50px;--radius-panel:12px;--ease:cubic-bezier(0.2,0,0,1);--ease-settle:cubic-bezier(0.22,1,0.36,1);--duration:200ms;--duration-slow:320ms}:root[data-theme="dark"]{color-scheme:dark;--color-bg:#14110f;--color-bg-glass:rgba(29,26,24,0.78);--color-bg-white:#1d1a18;--color-bg-nav:#1d1a18;--color-bg-soft:#221f1c;--color-heading:#fdf8f4;--color-text:#ebe5e0;--color-ghost:#7c756f;--color-muted:#a9a29c;--color-line:#56504b;--color-border:#2e2a27;--color-solid-hover:#d8d2cd;--color-on-dark-hover:#d8d2cd;--color-dark:#262220;--color-dark-alt:#201d1b;--color-on-dark:#fdf8f4;--color-on-dark-muted:#b0a9a3;--color-line-on-dark:#6a625c}@media (max-width:47.99rem){:root{--size-display:3rem;--size-h1: 2.5rem;--size-h2: 1.875rem;--size-h3: 1.625rem;--size-h4: 1.3125rem;--size-lead:1.125rem;--size-small:0.8125rem;--gutter:1.5rem}}
*,*::before,*::after{box-sizing:border-box}html{font-size:clamp(1.0625rem,0.78rem + 0.45vw,1.5rem);-webkit-text-size-adjust:100%;scroll-behavior:smooth;overscroll-behavior-y:none;background:var(--color-dark)}body{margin:0;font-family:var(--font-sans);font-size:var(--size-body);line-height:var(--leading-body);font-weight:var(--weight-regular);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-kerning:normal;font-feature-settings:"kern","liga","calt";font-synthesis:none}img,svg,video{display:block;max-width:100%;height:auto}h1,h2,h3,h4,.h1,.h2,.h3,.h4,.display{margin:0 0 0.5em;font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-heading);color:var(--color-heading);text-wrap:balance}h1,.h1{font-size:var(--size-h1)}h2,.h2{font-size:var(--size-h2)}h3,.h3{font-size:var(--size-h3)}h4,.h4{font-size:var(--size-h4)}.display{font-size:var(--size-display)}p{margin:0 0 1em;max-width:var(--measure)}p:last-child{margin-bottom:0}strong,b{font-weight:var(--weight-bold)}small,.small{font-size:var(--size-small)}.lead{font-size:var(--size-lead);line-height:var(--leading-lead)}.muted{color:var(--color-muted)}.label{display:inline-block;font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.label--strong{color:var(--color-heading)}a{color:var(--color-muted);text-decoration:none;-webkit-box-decoration-break:clone;box-decoration-break:clone;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-size:0% 1px;background-position:100% 100%;transition:background-size var(--duration-slow) var(--ease),color var(--duration) var(--ease)}a:hover,a:focus-visible{color:var(--color-heading);background-size:100% 1px;background-position:0% 100%}a:focus-visible,.btn:focus-visible,button:focus-visible{outline:2px solid var(--color-heading);outline-offset:3px}.link-display{display:inline-block;font-size:var(--size-display);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-heading);color:var(--color-heading);background-size:0% 2px}.link-display:hover,.link-display:focus-visible{background-size:100% 2px}@property --btn-sweep{syntax:"<angle>";inherits:false;initial-value:0deg}.btn{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.75rem;padding:0.875rem 1.5rem;border:1px solid var(--color-line);border-radius:var(--radius-button);font:inherit;font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-heading);background-color:transparent;background-image:none;cursor:pointer;white-space:nowrap;--btn-from:0deg;transition:background-color var(--duration) var(--ease),color var(--duration) var(--ease)}.btn::before{content:"";position:absolute;inset:-1px;z-index:-1;border:1px solid var(--color-heading);border-radius:inherit;pointer-events:none;--btn-sweep:0deg;-webkit-mask:conic-gradient(from calc(var(--btn-from) - var(--btn-sweep) / 2),#000 var(--btn-sweep),transparent 0);mask:conic-gradient(from calc(var(--btn-from) - var(--btn-sweep) / 2),#000 var(--btn-sweep),transparent 0);transition:--btn-sweep 200ms var(--ease) 50ms}.btn:hover::before,.btn:focus-visible::before{--btn-sweep:360deg;transition:--btn-sweep 210ms linear}.btn:hover,.btn:focus-visible{color:var(--color-bg);background-color:var(--color-heading);transition:background-color 240ms cubic-bezier(0.4,0,0.2,1) 130ms,color 240ms cubic-bezier(0.4,0,0.2,1) 130ms}.btn--solid{color:var(--color-bg);border-color:var(--color-heading);background-color:var(--color-heading)}.btn--solid::before{display:none}.btn--solid:hover,.btn--solid:focus-visible{background-color:var(--color-solid-hover);border-color:var(--color-solid-hover);transition-delay:0s}.btn--ghost{border-color:transparent}.btn--ghost:hover,.btn--ghost:focus-visible{color:var(--color-heading);background-color:transparent}.btn--sm{min-height:2.25rem;padding:0.625rem 1.125rem}.btn--lg{min-height:3.25rem;padding:1.125rem 2rem;font-size:0.8125rem}.btn[disabled],.btn[aria-disabled="true"]{opacity:0.4;pointer-events:none}.cta-link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-heading)}.cta-link::after{content:"\2192";transition:transform var(--duration) var(--ease)}.cta-link:hover::after{transform:translateX(3px)}.theme-dark{background:var(--color-dark);color:var(--color-on-dark)}.theme-dark h1,.theme-dark h2,.theme-dark h3,.theme-dark h4,.theme-dark .link-display,.theme-dark .cta-link,.theme-dark .label--strong{color:var(--color-on-dark)}.theme-dark .label,.theme-dark .muted,.theme-dark .small,.theme-dark small{color:var(--color-on-dark-muted)}.theme-dark a{color:var(--color-on-dark-muted)}.theme-dark a:hover,.theme-dark a:focus-visible{color:var(--color-on-dark)}.theme-dark a:focus-visible,.theme-dark .btn:focus-visible{outline-color:var(--color-on-dark)}.theme-dark .btn{color:var(--color-on-dark);border-color:var(--color-line-on-dark)}.theme-dark .btn::before{border-color:var(--color-on-dark)}.theme-dark .btn:hover,.theme-dark .btn:focus-visible{color:var(--color-dark);background-color:var(--color-on-dark)}.theme-dark .btn--solid{background-color:var(--color-on-dark);border-color:var(--color-on-dark);color:var(--color-dark)}.theme-dark .btn--solid:hover,.theme-dark .btn--solid:focus-visible{background-color:var(--color-on-dark-hover);border-color:var(--color-on-dark-hover)}.theme-dark .btn--ghost{border-color:transparent}.theme-dark .btn--ghost:hover,.theme-dark .btn--ghost:focus-visible{color:var(--color-on-dark);background-color:transparent}@view-transition{navigation:auto}@media (prefers-reduced-motion:no-preference){::view-transition-old(root),::view-transition-new(root){animation-duration:220ms;animation-timing-function:var(--ease)}::view-transition-group(*){animation-duration:340ms;animation-timing-function:var(--ease)}}:root:active-view-transition .reveal-load,:root:active-view-transition .hero__line{animation-play-state:paused}@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none !important}html{scroll-behavior:auto}@view-transition{navigation:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none !important}}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:var(--space-4);z-index:100;padding:var(--space-3) var(--space-4);background:var(--color-heading);color:var(--color-on-dark);border-radius:0 0 var(--radius-panel) var(--radius-panel);text-decoration:none;font-size:var(--size-small);font-weight:var(--weight-semibold)}.skip-link{background-image:none}.skip-link:focus{top:0;color:var(--color-on-dark)}.site-main{min-height:50vh}.topbar{position:sticky;top:0;z-index:19;background:var(--color-dark);font-size:0.6875rem;line-height:1;color:var(--color-on-dark);transition:transform var(--duration-slow) var(--ease)}html.topbar-hidden .topbar{transform:translateY(-100%)}.topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--topbar-height)}.topbar ul{display:flex;align-items:center;gap:var(--space-4);margin:0;padding:0;list-style:none}.topbar li{display:inline-flex;align-items:center;gap:var(--space-1)}.topbar a{color:inherit;background-image:none;display:inline-flex;align-items:center;gap:var(--space-1)}.topbar a:hover{color:var(--color-on-dark-muted)}.topbar__icon{padding:var(--space-1);margin-inline:calc(var(--space-1) * -1)}.topbar__social{gap:var(--space-2)}.topbar svg{flex:none}.site-header{position:sticky;top:var(--topbar-height);z-index:20;padding-block:var(--space-3);transition:top var(--duration-slow) var(--ease)}html.topbar-hidden .site-header{top:0}.site-header__inner{--nav-pad:clamp(1rem,2vw,1.5rem);position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-height:3.75rem;margin-inline:calc(var(--nav-pad) * -1);padding-inline:var(--nav-pad);border-radius:var(--radius-pill)}.site-header__inner::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--color-bg);transition:background-color var(--duration-slow) var(--ease)}.page-scrolled .site-header__inner::before{background:var(--color-bg-white)}@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header__inner::before{-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:background-color var(--duration-slow) var(--ease),-webkit-backdrop-filter var(--duration-slow) var(--ease),backdrop-filter var(--duration-slow) var(--ease)}.page-scrolled .site-header__inner::before{background:var(--color-bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.site-header__brand{font-size:1.125rem;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);color:var(--color-heading);background-image:none;white-space:nowrap}.site-header__brand:hover{color:var(--color-muted)}.site-nav__list{display:flex;align-items:center;gap:var(--space-5);margin:0;padding:0;list-style:none}.site-nav__link{display:inline-block;padding-block:var(--space-2);font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-heading);background-size:0% 1px;background-position:100% calc(100% - 0.25rem);white-space:nowrap}.site-nav__link:hover,.site-nav__link:focus-visible{color:var(--color-heading);background-size:100% 1px;background-position:0% calc(100% - 0.25rem)}.site-nav__link[aria-current="page"]{color:var(--color-muted)}.site-nav__cta{margin-left:var(--space-2)}.site-nav__minor{display:none}.site-header__toggle{display:none;position:relative;width:2.75rem;height:2.75rem;margin-right:calc(var(--space-2) * -1);padding:0;border:0;background:none;cursor:pointer;color:var(--color-heading)}.site-header__toggle-bar{position:absolute;left:50%;top:50%;width:1.375rem;height:2px;background:currentColor;transform:translate(-50%,-50%) translateY(-4px);transition:transform var(--duration) var(--ease)}.site-header__toggle-bar + .site-header__toggle-bar{transform:translate(-50%,-50%) translateY(4px)}.site-header__toggle[aria-expanded="true"] .site-header__toggle-bar{transform:translate(-50%,-50%) rotate(45deg)}.site-header__toggle[aria-expanded="true"] .site-header__toggle-bar + .site-header__toggle-bar{transform:translate(-50%,-50%) rotate(-45deg)}@keyframes nav-in{from{opacity:0;transform:translateY(0.5rem);filter:blur(0.25rem)}to{opacity:1;transform:none;filter:blur(0)}}@media (max-width:55.99rem){.site-header__toggle{display:block}.site-header__inner{position:relative;z-index:1}.site-nav{position:fixed;inset:0;z-index:-1;height:100dvh;background:var(--color-bg);overflow-y:auto;padding:calc(3.75rem + var(--space-8)) var(--gutter) max(var(--space-6),env(safe-area-inset-bottom))}.site-nav__list{min-height:100%;flex-direction:column;align-items:stretch;gap:0;padding:0}.site-nav__list > li{animation:nav-in 480ms var(--ease) both}.site-nav__list > li:nth-child(1){animation-delay:40ms}.site-nav__list > li:nth-child(2){animation-delay:100ms}.site-nav__list > li:nth-child(3){animation-delay:160ms}.site-nav__list > li:nth-child(4){animation-delay:220ms}.site-nav__list > li:nth-child(n + 5){animation-delay:280ms}.site-nav__link{display:block;padding-block:var(--space-4);font-size:clamp(2rem,9vw,2.75rem);line-height:var(--leading-tight);letter-spacing:var(--tracking-heading);text-transform:none;background-image:none}.site-nav__link[aria-current="page"]{color:var(--color-muted)}.site-nav__minor{display:block}li:not(.site-nav__minor) + .site-nav__minor{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border)}.site-nav__minor-link{display:block;padding-block:var(--space-4);font-size:1.125rem;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-tight);color:var(--color-heading);background-image:none}.site-nav__minor-link:hover,.site-nav__minor-link:focus-visible{color:var(--color-muted)}.site-nav__minor-link[aria-current="page"]{color:var(--color-muted)}.site-nav__cta{margin:auto 0 0;padding-top:var(--space-8)}.site-nav__cta .btn{width:100%;min-height:3.5rem}.site-header:has(.site-header__toggle[aria-expanded="false"]) .site-nav{display:none}.site-header.is-open .site-nav{display:block}html.nav-open{overflow:hidden}}.site-footer{background:var(--color-dark);color:var(--color-on-dark);padding-block:var(--space-8) var(--space-8)}.site-footer__list{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);margin:0;padding:0;list-style:none}.site-footer__link{display:inline-block;padding-bottom:0.375rem;font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-on-dark);background-size:0% 1px;background-position:100% 100%;white-space:nowrap}.site-footer__link:hover,.site-footer__link:focus-visible{color:var(--color-on-dark);background-size:100% 1px;background-position:0% 100%}.site-footer__link[aria-current="page"]{color:var(--color-on-dark-muted)}@media (max-width:47.99rem){.site-footer__list{flex-direction:column;gap:0}.site-footer__link{display:inline-block;margin-block:var(--space-3)}}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:var(--space-1);margin-inline:calc(var(--space-1) * -1);border:0;background:none;font:inherit;color:inherit;cursor:pointer;transition:color var(--duration) var(--ease)}.theme-toggle:hover{color:var(--color-on-dark-muted)}.theme-toggle:focus-visible{outline:2px solid var(--color-on-dark);outline-offset:2px}.theme-toggle__state{display:inline-flex;align-items:center;gap:var(--space-2)}.theme-toggle__state--to-light{display:none}:root[data-theme="dark"] .theme-toggle__state--to-dark{display:none}:root[data-theme="dark"] .theme-toggle__state--to-light{display:inline-flex}.theme-toggle__label{white-space:nowrap}.site-footer__bio{max-width:34rem;margin:var(--space-4) 0 0;font-size:var(--size-small);line-height:var(--leading-body);color:var(--color-on-dark-muted)}.site-footer__brand{display:inline-block;margin-top:clamp(6rem,18vw,12rem);font-size:var(--size-h3);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-tight);color:var(--color-on-dark);background-image:none}.site-footer__brand:hover{color:var(--color-on-dark-muted)}
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(3.5rem,8vw,6rem)}.section--dark{background:var(--color-dark)}.stack > * + *{margin-top:var(--space-4)}.stack--lg > * + *{margin-top:var(--space-6)}.cluster{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.grid{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}.hero{padding-block:clamp(3.5rem,8vw,5.5rem) clamp(3.5rem,8vw,6rem)}.hero__label{margin-bottom:var(--space-4)}.hero__title{margin-bottom:0;max-width:16ch}.hero__intro{margin-top:clamp(2.5rem,6vw,4rem)}.hero__intro p{max-width:none}.hero__actions{margin-top:var(--space-6)}@media (min-width:56rem){.hero__intro{margin-left:35%}}.panel{background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:var(--space-6)}.panel__label{margin-bottom:var(--space-3)}.panel__title{font-size:2.375rem;margin-bottom:var(--space-3)}.panel__title--sm{font-size:var(--size-h4)}.panel__text{margin-bottom:var(--space-5)}.panel--dark{background:var(--color-dark);border-color:var(--color-dark);color:var(--color-on-dark)}.panel--dark .panel__title{color:var(--color-on-dark)}.case-list{margin:0;padding:0;list-style:none}.case-list__item{border-top:1px solid var(--color-border);padding-block:var(--space-5)}.case-list__item:last-child{border-bottom:1px solid var(--color-border)}.case-list__meta{display:block;margin-bottom:var(--space-2)}.pill{display:inline-block;padding:0.375rem 0.875rem;border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:var(--leading-none);color:var(--color-heading);background:var(--color-bg-white)}.pill--dark{border-color:var(--color-heading);color:var(--color-on-dark);background:var(--color-heading)}@keyframes reveal-blink{from{opacity:0;filter:blur(0.5rem) contrast(4)}to{opacity:1;filter:blur(0) contrast(1)}}@keyframes reveal-blink-timed{from{opacity:0;filter:blur(0.5rem) contrast(4)}to{opacity:1;filter:blur(0) contrast(1)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation:reveal-blink ease-in-out both;animation-timeline:view();animation-range:entry 0% cover 33%}.reveal-group > *{animation:reveal-blink ease-in-out both;animation-timeline:view()}.reveal-group > :nth-child(1){animation-range:entry 0% cover 30%}.reveal-group > :nth-child(2){animation-range:entry 10% cover 38%}.reveal-group > :nth-child(3){animation-range:entry 20% cover 46%}.reveal-group > :nth-child(n + 4){animation-range:entry 30% cover 54%}}}@media (prefers-reduced-motion:no-preference){.reveal-load{animation:reveal-blink 900ms var(--ease) both;animation-delay:var(--reveal-delay,0ms)}}@media (prefers-reduced-motion:no-preference){.reveal-fallback .reveal,.reveal-fallback .reveal-group > *{opacity:0}.reveal-fallback .is-revealed{animation:reveal-blink-timed 900ms var(--ease) both;animation-delay:var(--reveal-delay,0ms)}}.split{display:grid;grid-template-columns:1fr;background:var(--color-dark);color:var(--color-on-dark);overflow:hidden;overflow:clip}.split__media{position:relative;overflow:hidden;overflow:clip;clip-path:inset(0);aspect-ratio:4 / 3;background:var(--color-dark-alt)}.split__media img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transform:scale(1.02);transition:filter 600ms var(--ease),transform 1200ms var(--ease)}.split__media:hover img,.split__media:focus-within img{filter:grayscale(0);transform:scale(1)}.split__body{display:flex;flex-direction:column;justify-content:center;gap:var(--space-5);padding:clamp(3rem,6vw,5rem) var(--gutter)}.split__title{margin:0;font-size:var(--size-h2);color:var(--color-on-dark);text-wrap:pretty}@media (min-width:48rem){.split{grid-template-columns:1fr 1fr}.split__media{aspect-ratio:auto;min-height:30rem}.split__media img{position:absolute;inset:0}.split__body{--split-inset:calc(100% - min(var(--container),200%) / 2 + var(--gutter));padding-inline:clamp(2.5rem,6vw,5rem) var(--split-inset)}.split--reverse .split__media{order:2}.split--reverse .split__body{padding-inline:var(--split-inset) clamp(2.5rem,6vw,5rem)}}@media (prefers-reduced-motion:reduce){.split__media img{filter:grayscale(0);transform:none}}.clients__header{margin-bottom:clamp(2.5rem,5vw,3.5rem)}.clients__header h2{margin-bottom:0;font-size:calc(var(--size-h2) * 1.25);max-width:24ch}.clients__body{margin-top:clamp(2.5rem,5vw,3.5rem)}.clients__body p{max-width:none}.clients__body .btn{margin-top:var(--space-5)}@media (min-width:56rem){.clients__body{margin-left:35%}}@property --logo-in{syntax:"<number>";inherits:false;initial-value:1}@property --logo-out{syntax:"<number>";inherits:false;initial-value:1}@keyframes logo-in{from{--logo-in:0}to{--logo-in:1}}@keyframes logo-out{from{--logo-out:1}to{--logo-out:0}}.logo-row{--per-view:3;--inset:calc((100% - min(var(--container),100%)) / 2 + var(--gutter));padding-inline:var(--inset);scroll-padding-inline:var(--inset);overscroll-behavior-x:contain;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab;user-select:none;-webkit-user-select:none}.logo-row::-webkit-scrollbar{display:none}.logo-row:focus-visible{outline:2px solid var(--color-heading);outline-offset:4px}.logo-row.is-dragging{cursor:grabbing}.logo-row.is-dragging,.logo-row.is-animating{scroll-snap-type:none}.logo-row__track{display:flex;margin:0;padding:0;list-style:none}.logo-row__item{flex:0 0 calc(100% / var(--per-view));min-width:0;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-4);min-height:7rem;opacity:calc(var(--logo-in) * var(--logo-out));filter:blur(calc((1 - var(--logo-in) * var(--logo-out)) * 0.4rem))}.logo-row__link{display:block;width:100%;background-image:none;-webkit-user-drag:none;transition:opacity var(--duration) var(--ease)}.logo-row__link:hover{opacity:0.6}.logo-row__link img{display:block;width:100%;height:5.5rem;object-fit:contain;-webkit-user-drag:none}:root[data-theme="dark"] .logo-row__link img{filter:invert(1)}@media (max-width:39.99rem){.logo-row{--per-view:2.5}.logo-row__item{padding-inline:var(--space-2)}}@media (min-width:40rem){.logo-row{--per-view:4}}@media (min-width:64rem){.logo-row{--per-view:6}}@supports (animation-timeline:view()){.logo-row__item{animation:logo-in linear both,logo-out linear both;animation-timeline:view(inline var(--inset)),view(inline var(--inset));animation-range:entry,exit}}@supports not (animation-timeline:view()){.logo-row{-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--inset),#000 calc(100% - var(--inset)),transparent);mask-image:linear-gradient(to right,transparent,#000 var(--inset),#000 calc(100% - var(--inset)),transparent)}}.work__header{text-align:center;margin-inline:auto;margin-bottom:clamp(2.5rem,6vw,4.5rem)}.work__header h2{margin:0 auto;font-size:calc(var(--size-h2) * 1.25);max-width:28ch}.work__more{text-align:center;max-width:none;margin-top:clamp(2.5rem,6vw,4rem)}.work-grid{display:grid;gap:clamp(2.5rem,5vw,4rem);--bleed:calc(var(--gutter) + max(0px,(100vw - var(--container)) / 2));margin-inline:calc(-1 * var(--bleed));padding-inline:var(--bleed);overflow-x:clip}.work-grid__row{display:grid;gap:clamp(2.5rem,4vw,2.5rem);align-items:end}.work-grid__row--flip{align-items:start}@media (min-width:48rem){.work-grid__row{grid-template-columns:3fr 2fr}.work-grid__row--flip{grid-template-columns:2fr 3fr}}.work-tile{display:block;color:var(--color-heading);background-image:none}.work-tile__media{margin:0;overflow:clip;background:var(--color-bg-soft)}.work-tile__media img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transform:scale(1);transition:filter 600ms var(--ease),transform 900ms var(--ease)}.work-tile__media:hover img,.work-tile:focus-visible .work-tile__media img{filter:grayscale(0);transform:scale(1.03)}@media (prefers-reduced-motion:reduce){.work-tile__media img{filter:grayscale(0)}}.work-tile__caption{display:block;margin-top:var(--space-4);font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:1.4;letter-spacing:var(--tracking-label);text-transform:uppercase}.work-tile__title{display:inline;padding-bottom:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-size:0% 1px;background-position:100% 100%;transition:background-size var(--duration-slow) var(--ease)}.work-tile:hover .work-tile__title,.work-tile:focus-visible .work-tile__title{background-size:100% 1px;background-position:0% 100%}.work-tile__client{display:block;margin-top:0.375rem;color:var(--color-muted)}.journey__header{padding-block:clamp(3.5rem,8vw,6rem) clamp(4rem,12vw,9rem)}.journey__list{display:grid;grid-template-columns:1fr;align-items:start;gap:clamp(4rem,10vw,7rem);width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);list-style:none}.journey__entry{margin:0}@media (max-width:47.99rem){.journey{overflow-x:clip}.journey__list{gap:clamp(3rem,9vw,4.5rem)}.journey__entry--left,.journey__entry--right{width:88%}.journey__entry--right{margin-inline-start:auto}}@media (min-width:48rem){.journey__list{grid-template-columns:1fr 1fr;column-gap:clamp(2.5rem,6vw,6rem)}.journey__entry--right{margin-top:clamp(5rem,14vw,11rem)}}.journey__entry--marker{grid-column:1 / -1;text-align:center;padding-block:clamp(1rem,4vw,3rem)}@media (max-width:47.99rem){.journey__entry--marker{display:grid;place-items:center;min-height:55svh;padding-block:0}.journey__entry--marker .journey__age{font-size:clamp(1.5rem,7vw,2rem)}}.journey__age{font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.journey__year{margin:0 0 var(--space-4);font-size:clamp(2.75rem,7vw,4rem);font-weight:var(--weight-semibold);line-height:0.9;letter-spacing:var(--tracking-heading);color:var(--color-ghost)}.journey__media{position:relative;margin:0 0 var(--space-5);overflow:clip;background:var(--color-bg-soft)}.journey__media--video{aspect-ratio:16 / 9}.journey__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter 600ms var(--ease)}.journey__media:hover img{filter:grayscale(0)}.journey__play{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;aspect-ratio:16 / 9}.journey__play img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.journey__copy{display:contents}.journey__play-icon{position:absolute;inset:50% auto auto 50%;translate:-50% -50%;width:3.5rem;height:3.5rem;border-radius:50%;background:var(--color-bg);transition:transform var(--duration) var(--ease)}.journey__play-icon::after{content:"";position:absolute;inset:50% auto auto 54%;translate:-50% -50%;border-style:solid;border-width:0.5rem 0 0.5rem 0.85rem;border-color:transparent transparent transparent var(--color-heading)}.journey__play:hover .journey__play-icon{transform:scale(1.08)}.journey__text{margin:0 0 var(--space-3);max-width:32rem}.journey__credit{margin:0;font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.journey__credit a{color:var(--color-muted)}.journey__credit a:hover{color:var(--color-heading)}.journey__fact-label{margin-bottom:var(--space-4)}.journey__fact{margin:0;font-size:var(--size-h3);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-heading);color:var(--color-heading);max-width:22ch}@keyframes journey-step-in{from{opacity:0;filter:blur(0.5rem) contrast(4);transform:translateX(var(--from-x))}25%{opacity:0.7;filter:blur(0.38rem) contrast(3.1);transform:translateX(calc(var(--from-x) * 0.45))}50%{opacity:0.95;filter:blur(0.26rem) contrast(2.3);transform:translateX(calc(var(--from-x) * 0.2))}75%{opacity:1;filter:blur(0.13rem) contrast(1.6);transform:translateX(calc(var(--from-x) * 0.06))}to{opacity:1;filter:blur(0) contrast(1);transform:translateX(0)}}@keyframes journey-step-in-timed{from{opacity:0;filter:blur(0.5rem) contrast(4);transform:translateX(var(--from-x))}25%{opacity:0.7;filter:blur(0.38rem) contrast(3.1);transform:translateX(calc(var(--from-x) * 0.45))}50%{opacity:0.95;filter:blur(0.26rem) contrast(2.3);transform:translateX(calc(var(--from-x) * 0.2))}75%{opacity:1;filter:blur(0.13rem) contrast(1.6);transform:translateX(calc(var(--from-x) * 0.06))}to{opacity:1;filter:blur(0) contrast(1);transform:translateX(0)}}@media (prefers-reduced-motion:no-preference) and (max-width:47.99rem){.journey__entry--left{--from-x:-3rem}.journey__entry--right{--from-x:3rem}.journey__entry--marker{--from-x:0}@supports (animation-timeline:view()){.journey__entry.reveal{animation-name:journey-step-in;animation-timing-function:linear;animation-range:entry 0% cover 45%}}.reveal-fallback .journey__entry.is-revealed{animation-name:journey-step-in-timed;animation-timing-function:linear;animation-duration:1100ms}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:48rem){.journey{position:relative}.journey__header{position:absolute;inset:0 0 auto 0;z-index:1;padding-block:clamp(3.5rem,8vw,6rem) 0}.journey__track{--k:3;--pace:48vh;--pause:2.1;--lead:1.1;--launches:calc(var(--n) + var(--k) - 1 - var(--lead));--step:calc(100% / var(--launches));--span:calc(100% * var(--k) / var(--launches));height:calc(var(--launches) * var(--pace));view-timeline-name:--journey;view-timeline-axis:block}.journey__stage{position:sticky;top:0;height:100vh;height:100svh;overflow:clip}.journey__list{display:block;position:relative;height:100%;--lane-gap:clamp(2.5rem,6vw,6rem);--edge:calc((100% - min(100%,var(--container))) / 2 + var(--gutter));--column:calc((100% - 2 * var(--edge) - var(--lane-gap)) / 2);--tile:max(min(15rem,30svh),min(var(--column),calc(120svh - 38rem)));--lane:calc((100% - 2 * var(--tile) - var(--lane-gap)) / 2);perspective:60rem;perspective-origin:50% 24%;max-width:none;margin:0;padding:0;gap:0}.journey__entry.reveal{position:absolute;top:50%;--tx:0px;pointer-events:none;width:var(--tile);margin:0;opacity:0;animation:journey-fly linear both;animation-timeline:--journey;animation-range:contain calc((var(--i) - var(--lead)) * var(--step)) contain calc((var(--i) - var(--lead)) * var(--step) + var(--span))}.journey__entry--left{left:var(--lane);--y:9vh}.journey__entry--right{right:var(--lane);--y:9vh}.journey__entry--marker.reveal{left:50%;--tx:-50%;--y:11vh;padding-block:0}.journey__stage .journey__age{font-size:clamp(1.5rem,3.5vw,2.5rem)}@media (max-height:820px){.journey__header{padding-block-start:0}.journey__entry--left,.journey__entry--right{--y:6vh}.journey__entry--marker.reveal{--y:8vh}}@media (max-height:780px) and (min-width:56rem){.journey__header{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(2.5rem,6vw,6rem);align-items:center;text-align:left}.journey__header .opening__text{margin-top:0}.journey__header .opening__text p{margin-inline:0}.journey__entry--left,.journey__entry--right{--y:3vh}.journey__entry--marker.reveal{--y:5vh}}.journey__stage .journey__media{max-height:52svh}.journey__stage .journey__year{font-size:clamp(2.25rem,5vw,3rem)}.journey__stage .journey__text{max-width:none}}}@keyframes journey-fly{0%{opacity:0;pointer-events:none;filter:blur(0.5rem) contrast(4);transform:translate3d(var(--tx),calc(-50% + var(--y)),34rem)}22%{opacity:0.22;filter:blur(0.25rem) contrast(2.5);transform:translate3d(var(--tx),calc(-50% + var(--y)),19.04rem)}40%{opacity:1;filter:blur(0) contrast(1);transform:translate3d(var(--tx),calc(-50% + var(--y)),6.8rem)}46%{pointer-events:none}50%{opacity:1;transform:translate3d(var(--tx),calc(-50% + var(--y)),0rem)}54%{pointer-events:auto}74%{opacity:1;transform:translate3d(var(--tx),calc(-50% + var(--y)),-16.32rem)}70%{pointer-events:auto}78%{pointer-events:none}90%{opacity:0;transform:translate3d(var(--tx),calc(-50% + var(--y)),-27.2rem)}100%{opacity:0;transform:translate3d(var(--tx),calc(-50% + var(--y)),-34rem)}}.journey__frame{display:block;width:100%;aspect-ratio:16 / 9;height:auto;border:0}@media (min-width:48rem){.work-grid--wide .work-grid__row{grid-template-columns:2fr 1fr}.work-grid--wide .work-grid__row--flip{grid-template-columns:1fr 2fr}}.opening{text-align:center}.opening__title{margin-bottom:0}.opening__text{margin-top:clamp(2rem,5vw,3rem)}.opening__text p{max-width:46rem;margin-inline:auto;font-size:var(--size-lead);line-height:var(--leading-lead)}.values__title{margin-bottom:clamp(2.5rem,6vw,4rem);font-size:calc(var(--size-h2) * 1.25);max-width:24ch}.values__grid{display:grid;gap:clamp(2.5rem,5vw,3.5rem);margin:0;padding:0;list-style:none;counter-reset:none}@media (min-width:48rem){.values__grid{grid-template-columns:repeat(3,1fr)}}.value{margin:0}.value__label{margin-bottom:var(--space-4)}.value p{text-wrap:pretty}.value__title{font-size:var(--size-h4);margin-bottom:var(--space-3)}.value p{max-width:none}.capabilities__header{margin-bottom:clamp(2.5rem,6vw,4rem)}.capabilities__header h2{margin-bottom:0;margin-top:var(--space-4);font-size:calc(var(--size-h2) * 1.25);max-width:22ch}.capabilities__body p{max-width:none}.capabilities__lists{display:grid;gap:var(--space-4) clamp(2rem,5vw,4rem);margin-top:clamp(2rem,4vw,2.5rem)}@media (min-width:34rem){.capabilities__lists{grid-template-columns:repeat(2,1fr)}}.capabilities__action{margin-top:clamp(2rem,5vw,3rem)}@media (min-width:56rem){.capabilities__body{margin-left:35%}}.arrow-list{margin:0;padding:0;list-style:none}.arrow-list li{position:relative;padding-left:1.75em;padding-block:0.4em;font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:1.4;letter-spacing:var(--tracking-label);text-transform:uppercase}.arrow-list li::before{content:"\2192";position:absolute;left:0;color:var(--color-line);transition:color var(--duration) var(--ease)}.arrow-list li:hover::before{color:var(--color-heading)}.connect__label{margin-bottom:var(--space-4)}.connect__title{margin-bottom:0;font-size:calc(var(--size-h2) * 1.25);max-width:20ch}.connect__action{margin-top:clamp(2rem,5vw,3rem);max-width:none}.breadcrumb__list{display:flex;flex-wrap:wrap;gap:0 var(--space-2);margin:0;padding:0;list-style:none;font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.breadcrumb__item + .breadcrumb__item::before{content:"/";margin-right:var(--space-2);color:var(--color-line)}.breadcrumb a{color:inherit;background-image:none}.breadcrumb a:hover,.breadcrumb a:focus-visible{color:var(--color-heading)}.breadcrumb [aria-current]{color:var(--color-heading)}.case-section{display:grid;gap:var(--space-5)}.case-section + .case-section{margin-top:clamp(3rem,7vw,5rem)}@media (min-width:56rem){.case-section{grid-template-columns:35% 1fr;gap:0}.case-section__title{padding-right:clamp(1.5rem,4vw,3rem)}}.case-section__title{margin:0;font-size:var(--size-h3)}.case-meta__term{margin:0;font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.case-section__body p{max-width:none}.case-section__body p + p{margin-top:1em}.case-meta{display:grid;gap:clamp(2rem,4vw,3rem);margin:clamp(3rem,7vw,5rem) 0 0}@media (min-width:48rem){.case-meta{grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,2.5rem)}}@media (min-width:64rem){.case-meta{grid-template-columns:1fr 1fr 1fr 2fr}}.case-meta__item{margin:0}.case-meta__value{margin:var(--space-4) 0 0}.case-results{display:grid;gap:var(--space-5);margin:clamp(3rem,7vw,5rem) 0 0}@media (min-width:56rem){.case-results{grid-template-columns:35% 1fr;gap:0}}.case-results__label{margin:0}.case-results__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:clamp(2rem,4vw,3rem) clamp(1.5rem,3vw,2.5rem);margin:0;padding:0;list-style:none}.case-results__item{display:grid;align-content:start;gap:var(--space-3);container-type:inline-size}.case-results__value{font-size:var(--size-display);font-size:min(var(--size-display),25cqi);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-heading);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-heading)}.case-results__caption{max-width:16rem;font-size:var(--size-small);line-height:var(--leading-lead);color:var(--color-muted)}.case-results__stars{display:inline-flex;align-items:center;gap:0.06em;height:1em}.case-results__star{width:0.72em;height:0.72em;fill:var(--color-border);transition:fill var(--duration) var(--ease)}.case-results__star.is-on{fill:var(--color-heading)}.case-results__star.is-lit{animation:results-star 460ms var(--ease-settle)}@keyframes results-star{from{scale:0.4}50%{scale:1.3}to{scale:1}}.case-figure{width:min(100% - 2rem,var(--container-wide));margin:clamp(3.5rem,8vw,6rem) auto;background:var(--color-bg-soft)}.case-figure img{display:block;width:100%;height:auto}.case-figures{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1rem,2vw,1.75rem);width:min(100% - 2rem,var(--container-wide));margin:clamp(3.5rem,8vw,6rem) auto}@media (min-width:48rem){.case-figures{grid-template-columns:repeat(2,minmax(0,1fr))}}.case-figures__item{margin:0;background:var(--color-bg-soft)}.case-figures__item img{display:block;width:100%;height:auto}.case-video{width:min(100% - 2rem,var(--container-wide));margin:clamp(3.5rem,8vw,6rem) auto;background:var(--color-bg-soft)}.case-video__play,.case-video__frame{display:block;width:100%;aspect-ratio:16 / 9;height:auto;border:0}.case-video__play{position:relative;padding:0;background:none;cursor:pointer}.case-video__play img{display:block;width:100%;height:100%;object-fit:cover}.case-figure img,.case-figures__item img,.case-video__play img{filter:grayscale(1);transition:filter 600ms var(--ease)}.case-figure:hover img,.case-figures__item:hover img,.case-video__play:hover img,.case-video__play:focus-visible img{filter:grayscale(0)}@media (prefers-reduced-motion:reduce){.case-figure img,.case-figures__item img,.case-video__play img{filter:grayscale(0)}}.case-video__icon{position:absolute;inset:50% auto auto 50%;width:4.5rem;height:4.5rem;translate:-50% -50%;border-radius:50%;background:var(--color-bg-glass);backdrop-filter:blur(8px);transition:scale var(--duration) var(--ease)}.case-video__icon::after{content:"";position:absolute;inset:50% auto auto 54%;translate:-50% -50%;border-style:solid;border-width:0.6rem 0 0.6rem 1rem;border-color:transparent transparent transparent var(--color-heading)}.case-video__play:hover .case-video__icon{scale:1.08}.case-quote{display:grid;margin:clamp(3rem,7vw,5rem) 0 0}@media (min-width:56rem){.case-quote{grid-template-columns:35% 1fr}.case-quote > *{grid-column:2}}.case-quote__text{margin:0}.case-quote__text p{margin:0;max-width:none;font-size:var(--size-h3);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-heading);text-wrap:balance}.case-quote__source{margin:var(--space-4) 0 0;font-size:var(--size-label);font-weight:var(--weight-semibold);line-height:var(--leading-none);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.case-statement{max-width:46rem;margin:clamp(3rem,7vw,5rem) auto 0;text-align:center}.case-statement p{max-width:none}.case-statement p + p{margin-top:1em}.case-more__list{margin:var(--space-6) 0 0;padding:0;list-style:none;font-size:clamp(2.5rem,8vw,5.5rem);font-weight:var(--weight-bold);line-height:0.95;letter-spacing:-0.025em;word-spacing:-0.06em;text-transform:uppercase}.case-more__list li{display:inline}.case-more__list a{color:var(--color-ghost);background-image:none;transition:color var(--duration) var(--ease)}.case-more__list a:hover,.case-more__list a:focus-visible{color:var(--color-heading)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.case-more__list a{color:transparent;-webkit-text-fill-color:transparent;background-image:linear-gradient(var(--color-heading),var(--color-heading)),linear-gradient(var(--color-ghost),var(--color-ghost));background-repeat:no-repeat;background-size:0% 100%,100% 100%;background-position:0 0,0 0;-webkit-background-clip:text;background-clip:text;transition:background-size 420ms var(--ease)}.case-more__list a:hover,.case-more__list a:focus-visible{background-size:100% 100%,100% 100%}}.book-hero{display:grid;gap:clamp(2.5rem,6vw,4rem);align-items:center}@media (min-width:56rem){.book-hero{grid-template-columns:5fr 6fr}}.book-hero__cover{margin:0;justify-self:center;perspective:60rem}.book-hero__cover a{background-image:none;display:block}.book-hero__cover.has-tilt a{will-change:transform}.book-hero__cover img{display:block;width:100%;max-width:24rem;height:auto;transition:transform var(--duration-slow) var(--ease)}.book-hero__cover a:hover img,.book-hero__cover a:focus-visible img{transform:translateY(-0.5rem)}.book-hero__cover.has-tilt a:hover img{transform:none}.book-hero__title{margin:var(--space-4) 0 var(--space-5)}.book-hero__body p{max-width:none}.book-hero__actions{margin-top:var(--space-6)}.book-hero__note{margin-top:var(--space-10);font-size:max(11px,0.5625rem)}.book-hero__note a{color:var(--color-text);background-size:100% 1px}.footnote-mark{font-size:0.7em;line-height:0;vertical-align:super}.book-still,.cv-still{clip-path:inset(0);height:clamp(20rem,70vh,36rem)}.book-still__img,.cv-still__img{position:fixed;inset:0;width:100%;max-width:none;height:100vh;height:100lvh;object-fit:cover}@media (prefers-reduced-motion:reduce){.book-still,.cv-still{position:relative;clip-path:none;overflow:hidden}.book-still__img,.cv-still__img{position:absolute;height:100%}}.cv-still{margin:clamp(2.5rem,5vw,3.5rem) 0 0}.cv-still__img{object-position:45% 40%}.cv-still + .container > .cv-section:first-child{border-top:0}@media (max-width:47.99rem) and (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.book-still{view-timeline-name:--book-still;view-timeline-axis:block}.book-still__img{width:160vw;animation:book-still-pan linear both;animation-timeline:--book-still}}}@keyframes book-still-pan{from{transform:translateX(-30vw)}to{transform:translateX(-60vw)}}.explore__header{margin-bottom:clamp(2.5rem,6vw,4rem);text-align:center}.explore__header h2{margin:0 auto;max-width:20ch}.explore__grid{display:grid;gap:clamp(2rem,4vw,3rem);margin:0;padding:0;list-style:none}@media (min-width:40rem){.explore__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:64rem){.explore__grid{grid-template-columns:repeat(4,1fr)}}.explore__item{margin:0}.explore__item p{max-width:none}.explore__title{font-size:var(--size-h4);margin-bottom:var(--space-3)}.sacred{display:grid;gap:clamp(2.5rem,6vw,4rem)}@media (min-width:56rem){.sacred{grid-template-columns:1fr 1fr;align-items:start}.sacred__claim{text-align:right}}.sacred__title{margin:0;max-width:18ch}.sacred__line{margin:var(--space-5) 0 0;max-width:28ch;color:var(--color-muted)}@media (min-width:56rem){.sacred__title,.sacred__line{margin-left:auto}}.sacred__body p{max-width:none}.sacred__body p + p{margin-top:1em}.faq__header{margin-bottom:clamp(2rem,5vw,3rem);text-align:center}.faq__header h2{margin:0 auto}.faq__grid{display:grid;grid-template-columns:minmax(0,1fr)}.faq__question{position:relative;display:block;width:100%;margin:0;padding:var(--space-4) 2.5rem var(--space-4) 0;border:0;border-top:1px solid var(--color-border);background:none;font:inherit;font-size:var(--size-lead);font-weight:var(--weight-semibold);line-height:1.35;letter-spacing:var(--tracking-heading);text-align:left;color:var(--color-heading);cursor:pointer}.faq__question:focus-visible{outline:2px solid var(--color-heading);outline-offset:4px}.faq__question::before,.faq__question::after{content:"";position:absolute;right:0.25rem;top:50%;width:0.875rem;height:1px;background:var(--color-heading);transition:transform var(--duration) var(--ease)}.faq__question::after{transform:rotate(90deg)}.faq__question[aria-expanded="true"]::after{transform:rotate(0deg)}.faq__answer{padding-bottom:var(--space-5)}.faq__answer p{max-width:none}.faq__grid::after{content:"";border-top:1px solid var(--color-border)}@media (min-width:56rem){.faq__grid--live{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(var(--faq-count,1),auto);column-gap:clamp(2rem,5vw,4rem);align-items:start}.faq__grid--live .faq__question{grid-column:1;font-size:var(--size-body)}.faq__grid--live{border-top:1px solid var(--color-border)}.faq__grid--live .faq__question:first-of-type{border-top-color:transparent}.faq__grid--live .faq__answer{grid-column:2;grid-row:1 / -1;align-self:start;padding-top:var(--space-5)}.faq__grid--live .faq__question::after{display:none}.faq__grid--live .faq__question::before{opacity:0;transition:opacity var(--duration) var(--ease)}.faq__grid--live .faq__question[aria-expanded="true"]::before{opacity:1}.faq__grid--live .faq__question[aria-expanded="false"]{color:var(--color-muted)}.faq__grid--live .faq__question[aria-expanded="false"]:hover{color:var(--color-heading)}.faq__grid--live::after{grid-column:1}}.faq__answer[hidden]{padding:0}.chat{position:fixed;inset:0;z-index:60;background:var(--color-bg)}html.chat-open{overflow:hidden}.chat__panel{position:relative;display:flex;flex-direction:column;height:100%;max-width:44rem;margin-inline:auto;padding:0 var(--gutter) max(var(--space-4),env(safe-area-inset-bottom))}.chat__bar{position:absolute;top:var(--space-4);right:var(--gutter);z-index:2}.chat__close{display:grid;place-items:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid var(--color-line);border-radius:50%;background:var(--color-bg);color:var(--color-heading);cursor:pointer;transition:background-color var(--duration) var(--ease),color var(--duration) var(--ease)}@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.chat__close{background:var(--color-bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.chat__close:hover,.chat__close:focus-visible{background:var(--color-heading);color:var(--color-bg)}@media (min-width:48rem){.chat__bar{position:fixed;top:var(--space-4);right:var(--space-4)}.chat__close{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.chat__close:hover,.chat__close:focus-visible{background:var(--color-heading)}.chat__thread{padding-block:var(--space-5)}}.chat__thread{display:flex;flex-direction:column;gap:var(--space-3);flex:1;overflow-y:auto;overscroll-behavior:contain;padding-block:4.5rem var(--space-5)}.chat__bubble{max-width:min(30rem,85%);margin:0;padding:var(--space-4) var(--space-5);border-radius:1.375rem;line-height:var(--leading-body);overflow-wrap:anywhere;margin-inline:1px}.chat__bubble--bot{align-self:flex-start;border-top-left-radius:0.375rem;background:var(--color-heading);color:var(--color-bg);font-size:var(--size-lead);font-weight:var(--weight-medium);transition:background-color 300ms var(--ease)}.chat__bubble--typing{display:flex;align-items:center;gap:0.3125rem;background:var(--color-border);min-height:1.625rem}.chat__dot{width:0.375rem;height:0.375rem;border-radius:50%;background:var(--color-muted)}@media (prefers-reduced-motion:no-preference){.chat__dot{animation:chat-dot 1s var(--ease) infinite both}.chat__dot:nth-child(2){animation-delay:0.15s}.chat__dot:nth-child(3){animation-delay:0.3s}}@keyframes chat-dot{0%,60%,100%{opacity:0.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-0.2rem)}}.chat__bubble--bot a{color:inherit;background-image:none;text-decoration:underline;text-underline-offset:0.15em}.chat__bubble--me{align-self:flex-end;appearance:none;border:1px solid var(--color-heading);border-bottom-right-radius:0.375rem;background:transparent;color:var(--color-heading);font:inherit;font-size:var(--size-body);text-align:left;cursor:pointer;transition:box-shadow var(--duration) var(--ease)}.chat__bubble--me:hover,.chat__bubble--me:focus-visible{box-shadow:0 0 0 1px var(--color-heading)}@media (prefers-reduced-motion:no-preference){.chat__bubble{animation:chat-rise 500ms var(--ease) both}.chat--in{animation:chat-screen-in 420ms var(--ease) both}.chat--out{animation:chat-screen-out 320ms var(--ease) both}}@keyframes chat-screen-in{from{opacity:0;filter:blur(0.5rem) contrast(4)}to{opacity:1;filter:blur(0) contrast(1)}}@keyframes chat-screen-out{from{opacity:1;filter:blur(0) contrast(1)}to{opacity:0;filter:blur(0.5rem) contrast(4)}}@keyframes chat-rise{from{opacity:0;transform:translateY(0.75rem);filter:blur(0.5rem) contrast(4)}to{opacity:1;transform:translateY(0);filter:blur(0) contrast(1)}}.chat__pills{display:flex;flex-wrap:wrap;gap:var(--space-3);padding-block:var(--space-4)}.chat__form{display:flex;align-items:flex-end;gap:var(--space-3);padding-block:var(--space-4)}.chat__input{flex:1;min-width:0;min-height:3rem;max-height:10rem;padding:0.625rem 1.25rem;border:1px solid var(--color-line);border-radius:var(--radius-button);background:transparent;color:var(--color-heading);font:inherit;font-size:var(--size-body);line-height:1.625rem;resize:none}.chat__input::placeholder{color:var(--color-muted)}.chat__input:focus-visible{outline:none;border-color:var(--color-heading)}.chat__send{flex:none;display:grid;place-items:center;width:3rem;height:3rem;padding:0;border:1px solid var(--color-heading);border-radius:50%;background:var(--color-heading);color:var(--color-bg);cursor:pointer;transition:background-color var(--duration) var(--ease),color var(--duration) var(--ease)}.chat__send:hover,.chat__send:focus-visible{background:transparent;color:var(--color-heading)}@media (max-width:47.99rem){.chat__bar{top:var(--space-3)}.chat__thread{gap:var(--space-2);padding-block:4rem var(--space-4)}.chat__bubble{max-width:88%;padding:var(--space-3) var(--space-4)}.chat__bubble--bot{font-size:var(--size-body)}.chat__pills,.chat__form{padding-block:var(--space-3)}}.journey-nav{position:fixed;bottom:max(var(--space-4),env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-pill);background:var(--color-bg)}@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.journey-nav{background:color-mix(in srgb,var(--color-bg) 78%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.journey-nav__pill{position:relative;padding:0.375rem 0.875rem;border:1px solid var(--color-line);border-radius:var(--radius-pill);font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:var(--leading-none);white-space:nowrap;color:var(--color-heading);background-image:none;background-color:transparent;transition:border-color var(--duration) var(--ease)}.journey-nav__pill:hover,.journey-nav__pill:focus-visible{border-color:var(--color-heading);color:var(--color-heading)}.journey-nav__fill{position:absolute;inset:-1px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--color-heading);color:var(--color-bg);clip-path:inset(0 calc(100% - var(--fill,0%)) 0 0 round var(--radius-pill));transition:clip-path 80ms linear}@media (max-width:47.99rem){.journey-nav{gap:var(--space-1)}.journey-nav__pill{padding:0.375rem 0.625rem}}.journey__entry{scroll-margin-top:6rem}.hero__title--flight{display:flex;flex-wrap:wrap;gap:0 0.25em;perspective:60rem;perspective-origin:90% 30%;font-size:clamp(1.75rem,8.7vw,5.5rem);line-height:var(--leading-tight);max-width:none}.hero__line{display:block}.hero__brk{flex:0 0 100%;height:0}@media (min-width:48rem){.hero__brk--narrow{display:none}}@media (max-width:47.99rem){.hero__brk--wide{display:none}}.hero__line--a{--line:0}.hero__line--b,.hero__line--c{--line:1}.hero__line--d{--line:2}.hero__line--e{--line:3}.hero__line--f{--line:4}@media (min-width:48rem){.hero__line--b{--line:0}.hero__line--c,.hero__line--d{--line:1}.hero__line--e,.hero__line--f{--line:2}}@media (max-width:47.99rem){.hero__title--flight{font-size:clamp(1.75rem,11.5vw,5.5rem)}}@media (prefers-reduced-motion:no-preference){.hero__line{animation:hero-fly-in 900ms var(--ease) both;animation-delay:calc(var(--line,0) * 110ms)}}@keyframes hero-fly-in{from{opacity:0;filter:blur(0.5rem) contrast(4);transform:translateZ(34rem)}40%{opacity:1;filter:blur(0) contrast(1)}to{opacity:1;filter:blur(0) contrast(1);transform:translateZ(0)}}@media (max-width:47.99rem){.split__media.in-center img{filter:grayscale(0);transform:scale(1)}.work-tile__media.in-center img{filter:grayscale(0);transform:scale(1.03)}.journey__media.in-center img{filter:grayscale(0)}.case-figure.in-center img,.case-figures__item.in-center img,.case-video__play.in-center img{filter:grayscale(0)}}.commentary{position:fixed;bottom:max(var(--space-4),env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-5) var(--space-2) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);white-space:nowrap}.case{position:relative}.case:has(.commentary) .case-more{margin-top:9rem}.commentary.is-docked{position:absolute;bottom:auto}@media (prefers-reduced-motion:no-preference){.commentary{animation:commentary-rise 550ms var(--ease) 500ms both}.commentary__body{animation:commentary-open 450ms var(--ease) 1200ms both}}@keyframes commentary-rise{from{transform:translate(-50%,calc(100% + 6rem))}to{transform:translate(-50%,0)}}@keyframes commentary-open{from{min-width:0;max-width:0;opacity:0}to{min-width:11rem;max-width:24rem;opacity:1}}@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.commentary{background:color-mix(in srgb,var(--color-bg) 78%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.commentary__play{flex:none;display:grid;place-items:center;width:3rem;height:3rem;padding:0;border:1px solid var(--color-heading);border-radius:50%;background:var(--color-heading);color:var(--color-bg);cursor:pointer;transition:background-color var(--duration) var(--ease),color var(--duration) var(--ease)}.commentary__play:hover,.commentary__play:focus-visible{background:transparent;color:var(--color-heading)}.commentary__icon-pause{display:none}.commentary.is-playing .commentary__icon-play{display:none}.commentary.is-playing .commentary__icon-pause{display:block}.commentary__body{display:flex;flex-direction:column;gap:0.4375rem;min-width:11rem;overflow:hidden}.commentary__label{font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:var(--leading-none);color:var(--color-heading)}.commentary__time{color:var(--color-muted)}.commentary__track{display:block;height:2px;border-radius:1px;background:var(--color-border);cursor:pointer}.commentary__minor{display:flex;gap:var(--space-4);align-items:baseline}.commentary__toggle,.commentary__ts{padding:0;border:0;background:none;font-size:0.5625rem;font-weight:var(--weight-regular);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:var(--leading-none);color:var(--color-muted);cursor:pointer;transition:color var(--duration) var(--ease)}.commentary__toggle:hover,.commentary__toggle:focus-visible,.commentary__ts:hover,.commentary__ts:focus-visible{color:var(--color-heading)}.commentary__toggle-state{color:var(--color-heading)}.commentary__ts.is-on{color:var(--color-heading)}.commentary__transcript{position:absolute;bottom:calc(100% + var(--space-3));left:50%;transform:translateX(-50%);width:min(34rem,calc(100vw - 2 * var(--gutter)));max-height:45vh;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-bg);white-space:normal;text-align:left}.commentary__transcript .label{margin-bottom:var(--space-3)}.commentary__transcript p:not(.label){max-width:none;font-size:var(--size-small)}.commentary__bar{display:block;width:0%;height:100%;border-radius:inherit;background:var(--color-heading)}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.work-grid .work-tile.reveal{animation:case-drop var(--ease) both;animation-timeline:view();animation-range:entry 0% cover 40%}@media (min-width:48rem){.work-grid--wide .work-grid__row:nth-child(-n + 2) .work-tile.reveal{animation:case-drop 900ms var(--ease) both;animation-timeline:auto;animation-range:normal;animation-delay:350ms}.work-grid--wide .work-grid__row:first-child .work-tile.reveal:nth-child(2){animation-delay:500ms}.work-grid--wide .work-grid__row:nth-child(2) .work-tile.reveal:first-child{animation-delay:650ms}.work-grid--wide .work-grid__row:nth-child(2) .work-tile.reveal:nth-child(2){animation-delay:800ms}}@media (max-width:47.99rem){.work-grid--wide .work-grid__row:first-child .work-tile.reveal:first-child{animation:case-drop 900ms var(--ease) both;animation-timeline:auto;animation-range:normal;animation-delay:350ms}}}}@keyframes case-drop{from{opacity:0;filter:blur(0.5rem) contrast(4);transform:perspective(60rem) translateZ(22rem)}60%{opacity:1;filter:blur(0) contrast(1)}to{opacity:1;filter:blur(0) contrast(1);transform:perspective(60rem) translateZ(0)}}@media (max-width:47.99rem){.case-figure,.case-figures__item{width:100%;margin-inline:0;position:relative}.case-pan{aspect-ratio:3 / 4;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.case-pan::-webkit-scrollbar{display:none}.case-pan img{width:auto;max-width:none;height:100%}}.case-pan-hint{position:absolute;left:50%;bottom:var(--space-5);z-index:1;margin:0;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:var(--leading-none);color:var(--color-heading);white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,0.5rem);transition:opacity var(--duration-slow) var(--ease),transform var(--duration-slow) var(--ease)}@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.case-pan-hint{background:color-mix(in srgb,var(--color-bg) 78%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.case-pan-hint.is-in{opacity:1;transform:translate(-50%,0)}.toast{position:fixed;left:50%;bottom:max(var(--space-5),env(safe-area-inset-bottom,0px));z-index:50;transform:translateX(-50%);max-width:min(28rem,calc(100vw - 2 * var(--gutter)));padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);background:var(--color-dark);color:var(--color-on-dark);box-shadow:0 1rem 2.5rem rgb(0 0 0 / 0.18);pointer-events:none}:root[data-theme="dark"] .toast{border:1px solid rgb(255 255 255 / 0.16);box-shadow:0 1rem 2.5rem rgb(0 0 0 / 0.5)}.toast__text{margin:0;font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:1.4;text-align:center}.toast__copy{display:none}@media (prefers-reduced-motion:no-preference){.toast{opacity:0;transform:translateX(-50%) translateY(0.75rem);transition:opacity var(--duration-slow) var(--ease),transform var(--duration-slow) var(--ease-settle,var(--ease))}.toast.is-in{opacity:1;transform:translateX(-50%) translateY(0)}}@media (prefers-reduced-motion:no-preference){:root.theme-shifting,:root.theme-shifting *{transition:background-color 500ms var(--ease),border-color 500ms var(--ease),color 500ms var(--ease),fill 500ms var(--ease) !important}}.cv-head{padding-block:clamp(2.5rem,7vw,4.5rem) 0}.cv-head__label{margin-bottom:var(--space-4)}.cv-head__name{margin:0;font-size:clamp(2.75rem,9vw,6rem);line-height:0.92;letter-spacing:var(--tracking-heading);max-width:none}.cv-head__line{margin:var(--space-5) 0 0;max-width:38rem}.cv-head__top{padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}@media (min-width:48rem){.cv-head__top{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:clamp(2rem,5vw,4rem)}.cv-head__line{margin:0;max-width:26rem;text-align:right}}.cv__facts{margin:var(--space-6) 0 0;display:grid;gap:var(--space-5)}@media (min-width:48rem){.cv__facts{grid-template-columns:repeat(4,1fr);column-gap:clamp(1.5rem,3vw,3rem)}}.cv__fact{display:grid;gap:var(--space-2);align-content:start}.cv__fact dt{font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.cv__fact dd{margin:0}.cv__source{display:none}.cv__actions{margin-top:var(--space-6)}.cv-section{display:grid;gap:var(--space-4);padding-block:clamp(2.5rem,5vw,3.5rem);border-top:1px solid var(--color-border)}.cv-section:first-of-type{border-top:0}.cv-section__title{margin:0;font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.cv-section__body > * + *{margin-top:var(--space-5)}.cv-section__body p{max-width:46rem}@media (min-width:56rem){.cv-section{grid-template-columns:14rem 1fr;column-gap:clamp(2rem,5vw,4rem)}.cv-section__title{position:sticky;top:calc(var(--topbar-height) + 4.5rem);align-self:start}}.cv-entry{display:grid;gap:var(--space-1)}.cv-entry + .cv-entry{margin-top:var(--space-6)}.cv-entry__when{margin:0;font-size:var(--size-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted);white-space:nowrap}.cv-entry__role{margin:0;font-size:var(--size-lead);font-weight:var(--weight-semibold);line-height:1.3;letter-spacing:var(--tracking-heading);color:var(--color-heading)}.cv-entry__where{margin:0 0 var(--space-3);color:var(--color-muted)}.cv-entry__list{margin:0;padding:0;list-style:none}.cv-entry__list li{position:relative;padding-left:1.1rem;max-width:46rem}.cv-entry__list li + li{margin-top:var(--space-3)}.cv-entry__list li::before{content:"";position:absolute;left:0;top:0.7em;width:0.5rem;height:1px;background:var(--color-muted)}.cv-list,.cv-tags{margin:0;padding:0;list-style:none}.cv-list li + li{margin-top:var(--space-2)}.cv-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.cv-tags li{padding:0.375rem 0.875rem;border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:var(--size-label);line-height:var(--leading-none);color:var(--color-heading)}
