:root{--bg: #111111;--bg-elevated: #161616;--text: #f2f2f0;--text-muted: #8a8a86;--text-dim: #5c5c58;--border: rgba(242, 242, 240, .12);--border-strong: rgba(242, 242, 240, .22);--font: "IBM Plex Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--pad-x: clamp(1.25rem, 4vw, 3.5rem);--pad-y: clamp(1rem, 2.5vw, 1.5rem);--header-h: 4.25rem;--ease: cubic-bezier(.22, 1, .36, 1);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html,body{margin:0;min-height:100%}body{font-family:var(--font);font-weight:400;font-size:15px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body.is-overlay-open{overflow:hidden}.page-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none;background:var(--bg)}.page-bg-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:translateZ(0);backface-visibility:hidden;filter:brightness(.6) saturate(.34) contrast(.84)}.page-bg-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#1111116b,#11111194,#111111d1),#11111138}.site-header,main,.site-footer{position:relative;z-index:1}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}.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}.site-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:var(--header-h);padding:calc(var(--pad-y) + var(--safe-top)) calc(var(--pad-x) + var(--safe-right)) var(--pad-y) calc(var(--pad-x) + var(--safe-left));background:#111111eb}.site-header:after{content:"";position:absolute;left:calc(var(--pad-x) + var(--safe-left));right:calc(var(--pad-x) + var(--safe-right));bottom:0;height:1px;background:#f2f2f014}.brand{font-size:.8125rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;flex-shrink:0}.site-nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,1.75rem);flex-wrap:wrap;justify-content:flex-end}.site-nav a,.site-nav .nav-link{font-size:.8125rem;font-weight:400;letter-spacing:.02em;color:var(--text-muted);transition:color .35s var(--ease)}.site-nav a:hover,.site-nav .nav-link:hover{color:var(--text)}.nav-indicator{width:7px;height:7px;border-radius:50%;border:1px solid rgba(242,242,240,.35);background:transparent;flex-shrink:0;margin-left:.15rem;animation:indicator-breathe 7s ease-in-out infinite}@keyframes indicator-breathe{0%,to{opacity:.45;border-color:#f2f2f047}50%{opacity:.85;border-color:#f2f2f07a}}.hero{position:relative;min-height:calc(100svh - var(--header-h));min-height:calc(100dvh - var(--header-h));display:flex;flex-direction:column;justify-content:flex-start;padding:clamp(1.25rem,2.5vh,2rem) calc(var(--pad-x) + var(--safe-right)) clamp(2rem,5vh,3.5rem) calc(var(--pad-x) + var(--safe-left));overflow:hidden}.signal-field{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.62}.signal-annotations{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.signal-annotation{position:absolute;display:flex;flex-direction:column;align-items:flex-start;gap:.12rem;opacity:0;transform:translateY(-50%);text-align:left;transition:opacity 1.6s var(--ease);will-change:opacity}.signal-annotation.is-visible{opacity:1}.signal-annotation-city{font-size:.8125rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#f2f2f09e;line-height:1.2;min-height:1em}.signal-annotation-meta{font-size:.6875rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:#f2f2f066;font-variant-numeric:tabular-nums;line-height:1.35;white-space:nowrap;min-height:1em}.signal-annotation-city.is-typing:after,.signal-annotation-meta.is-typing:after{content:"";display:inline-block;width:.45em;height:.85em;margin-left:.12em;vertical-align:-.05em;background:#f2f2f080;animation:caret-blink .9s steps(1) infinite}@keyframes caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}.hero-copy{position:relative;z-index:2;max-width:34rem}.hero-title{margin:0;font-size:clamp(2.35rem,6.4vw,4.7rem);font-weight:500;line-height:1.02;letter-spacing:-.035em;color:var(--text)}.hero-line{display:block}.hero-cta{display:inline-flex;align-items:center;gap:.35rem;margin-top:clamp(1.5rem,3.5vh,2.25rem);font-size:.8125rem;font-weight:400;letter-spacing:.02em;color:var(--text-muted);transition:color .35s var(--ease)}.hero-cta-arrow{display:inline-block;transition:transform .35s var(--ease)}.hero-cta:hover{color:var(--text)}.hero-cta:hover .hero-cta-arrow{transform:translate(3px)}.approach{position:relative;z-index:1;padding:clamp(4.5rem,12vh,7.5rem) calc(var(--pad-x) + var(--safe-right)) clamp(3.5rem,9vh,5.5rem) calc(var(--pad-x) + var(--safe-left));border-top:1px solid var(--border);background:#111111eb}.approach-kicker{margin:0 0 1.35rem;font-size:.625rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.approach-lede{margin:0 0 clamp(3.25rem,8vh,4.75rem);max-width:36rem;font-size:clamp(1rem,1.55vw,1.125rem);font-weight:400;line-height:1.6;letter-spacing:-.01em;color:var(--text-muted)}.approach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:72rem;border-top:1px solid var(--border)}.approach-item{min-width:0;display:flex;flex-direction:column;padding:2rem clamp(1.35rem,2.6vw,2.15rem) 0 0;border-right:1px solid var(--border)}.approach-item:last-child{border-right:0;padding-right:0}.approach-item:first-child{padding-left:0}.approach-num{display:block;margin-bottom:1.35rem;font-size:.6875rem;font-weight:500;letter-spacing:.1em;color:var(--text-dim)}.approach-title{margin:0 0 .9rem;font-size:.8125rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text)}.approach-text{margin:0;max-width:17.5rem;font-size:.8125rem;line-height:1.6;color:var(--text-muted)}.site-footer{position:relative;z-index:1;padding:0 calc(var(--pad-x) + var(--safe-right)) calc(2.25rem + var(--safe-bottom)) calc(var(--pad-x) + var(--safe-left));background:#111111f5}.footer-inner{display:flex;flex-wrap:wrap;align-items:baseline;gap:.65rem 1.75rem;padding-top:1.75rem;border-top:1px solid var(--border);max-width:72rem}.footer-brand{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text)}.footer-meta{margin:0;font-size:.75rem;color:var(--text-dim)}.footer-mail{margin:0;font-size:.75rem;color:var(--text-muted);-webkit-user-select:text;user-select:text}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:stretch;justify-content:flex-end}.overlay[hidden]{display:none}.overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;cursor:pointer}.panel{position:relative;z-index:1;width:min(100%,26rem);margin:0;padding:calc(1.5rem + var(--safe-top)) calc(1.75rem + var(--safe-right)) calc(2rem + var(--safe-bottom)) 1.75rem;background:var(--bg-elevated);border-left:1px solid var(--border);display:flex;flex-direction:column;outline:none}.panel-close{align-self:flex-end;margin-bottom:2.5rem;font-size:.75rem;letter-spacing:.04em;color:var(--text-muted);transition:color .25s var(--ease)}.panel-close:hover{color:var(--text)}.panel-kicker{margin:0 0 .75rem;font-size:.625rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.panel h2{margin:0 0 1.5rem;font-size:1.5rem;font-weight:500;letter-spacing:-.02em;line-height:1.2}.panel-copy{margin:0 0 .5rem;font-size:.875rem;color:var(--text-muted)}.panel-mail{margin:0;font-size:1rem;font-weight:500;letter-spacing:-.01em;color:var(--text);align-self:flex-start;-webkit-user-select:text;user-select:text}body:not(.is-ready) .hero-title,body:not(.is-ready) .hero-cta{opacity:0;transform:translateY(10px)}body.is-ready .hero-title,body.is-ready .hero-cta{opacity:1;transform:none;transition:opacity .9s var(--ease),transform .9s var(--ease)}body.is-ready .hero-cta{transition-delay:.14s}@media(prefers-reduced-motion:reduce){body:not(.is-ready) .hero-title,body:not(.is-ready) .hero-cta{opacity:1;transform:none}body.is-ready .hero-title,body.is-ready .hero-cta,.hero-cta,.hero-cta-arrow,.site-nav a,.site-nav .nav-link,.panel-close,.signal-annotation{transition:none}.signal-annotation-city.is-typing:after,.signal-annotation-meta.is-typing:after{animation:none;display:none}.nav-indicator{animation:none;opacity:.55}.page-bg-video{display:none}.hero-cta:hover .hero-cta-arrow{transform:none}}@media(max-width:900px){.approach-grid{grid-template-columns:1fr;border-top:0}.approach-item{border-right:0;border-top:1px solid var(--border);padding:2rem 0 0}.approach-item:first-child{border-top:1px solid var(--border)}.approach-text{max-width:28rem}}@media(max-width:640px){:root{--header-h: 3.75rem}.site-header{gap:1rem}.site-nav{gap:.85rem}.site-nav a,.site-nav .nav-link{font-size:.75rem}.hero{min-height:calc(100svh - var(--header-h));padding-top:clamp(1rem,2vh,1.5rem)}.signal-field{opacity:.48}.signal-annotation-city{font-size:.75rem}.signal-annotation-meta{font-size:.625rem}.footer-inner{flex-direction:column;align-items:flex-start;gap:.45rem;padding-top:1.5rem}.panel{width:100%;border-left:0;border-top:1px solid var(--border);margin-top:auto;max-height:85svh}.overlay{align-items:flex-end}}
