:root{--black: #0a0a0b;--charcoal: #131417;--graphite: #1d1f23;--steel: #2c2f35;--silver: #c9cdd3;--silver-dim: #8b9199;--white: #f3f3f0;--paper: #ecece8;--ink: #0b0b0c;--ink-2: #565a60;--rule-light: #d3d3ce;--rule-dark: #2a2d32;--accent: #3f97bd;--accent-deep: #0756a4;--font-sans: "Archivo", "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--step-0: 1.0625rem;--step-1: clamp(1.15rem, 1.6vw, 1.35rem);--step-2: clamp(1.5rem, 2.6vw, 2.15rem);--step-3: clamp(2.4rem, 6.2vw, 5.6rem);--step-4: clamp(3rem, 7.6vw, 7.4rem);--gutter: clamp(1.25rem, 4vw, 3.5rem);--max: 88rem;--header-h: 4.5rem;--ease: cubic-bezier(.16, 1, .3, 1);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-padding-top:var(--header-h)}body{margin:0;overflow-x:clip;background:var(--black);color:var(--white);font-family:var(--font-sans);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:700;font-stretch:108%;line-height:.98;letter-spacing:-.045em;text-wrap:balance}p,li,dd{text-wrap:pretty}p{margin:0}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.light :focus-visible{outline-color:var(--accent-deep)}code,pre{font-family:var(--font-mono)}img{max-width:100%;height:auto}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.grid12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem)}.sr-only{position:absolute!important;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:.75rem;left:.75rem;z-index:100;padding:.6rem 1rem;background:var(--white);color:var(--black);font-weight:700;transform:translateY(-200%)}.skip-link:focus{transform:none}.label{font-family:var(--font-mono);font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.light{background:var(--paper);color:var(--ink);color-scheme:light}.dark{background:var(--black);color:var(--white)}.site-header{position:fixed;inset:env(safe-area-inset-top,0px) 0 auto 0;z-index:50;color:var(--white);border-bottom:1px solid transparent;transition:background .5s var(--ease),border-color .5s var(--ease)}.site-header.is-scrolled,.page .site-header{background:#0a0a0bf0;-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border-bottom-color:var(--rule-dark)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--header-h)}.brand{display:inline-flex;align-items:center;gap:.8rem;color:inherit;text-decoration:none;font-size:.84rem;font-weight:650;font-stretch:125%;letter-spacing:.06em;text-transform:uppercase}.brand:before{content:"";width:42px;height:22px;flex:none;background:url(/assets/wafer-mark-CrhuDXQ_.png) center / contain no-repeat;transition:transform .6s var(--ease)}.brand:hover:before{transform:translateY(-2px) scale(1.06)}.nav-list{display:flex;align-items:center;gap:.2rem;margin:0;padding:0;list-style:none}.nav-link{display:block;padding:.5rem .85rem;color:var(--silver);text-decoration:none;font-size:.95rem;font-weight:500;transition:color .2s ease}.nav-link:hover,.nav-link[aria-current]{color:var(--white)}.nav-link[aria-current]{box-shadow:inset 0 -1px 0 var(--white)}.nav-toggle{display:none;align-items:center;gap:.55rem;padding:.5rem 0;border:0;background:none;color:inherit;font:600 .95rem var(--font-sans);cursor:pointer}.nav-toggle-lines,.nav-toggle-lines:before{display:block;width:1.1rem;height:1.5px;background:currentColor}.nav-toggle-lines{position:relative;margin-top:-5px}.nav-toggle-lines:before{content:"";position:absolute;top:6px}@media(max-width:48rem){.nav-toggle{display:inline-flex}.nav-list{display:none;position:fixed;inset:calc(var(--header-h) + env(safe-area-inset-top,0px)) 0 auto 0;flex-direction:column;align-items:stretch;padding:1rem var(--gutter) 2rem;background:var(--black);border-bottom:1px solid var(--rule-dark)}.nav-list.is-open{display:flex}.nav-link{padding:1rem 0;font-size:1.6rem;font-weight:600;letter-spacing:-.03em;border-bottom:1px solid var(--rule-dark)}.nav-link[aria-current]{box-shadow:none}}.btn{display:inline-flex;align-items:center;gap:.7rem;padding:.95rem 1.5rem;border:1px solid currentColor;border-radius:999px;font:600 .98rem var(--font-sans);text-decoration:none;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}.btn:after{content:"→";transition:transform .3s var(--ease)}.btn:hover:after{transform:translate(4px)}.dark .btn-solid{background:var(--white);color:var(--black);border-color:var(--white)}.dark .btn-solid:hover{background:var(--silver);border-color:var(--silver)}.dark .btn-line{color:var(--white);background:transparent}.dark .btn-line:hover{background:var(--white);color:var(--black)}.light .btn-solid{background:var(--ink);color:var(--white);border-color:var(--ink)}.light .btn-solid:hover{background:var(--steel);border-color:var(--steel)}.light .btn-line{color:var(--ink);background:transparent}.light .btn-line:hover{background:var(--ink);color:var(--white)}.hero{position:relative;min-height:100svh;display:grid;align-items:center;padding-block:calc(var(--header-h) + 2rem) 4rem;overflow:hidden;background:radial-gradient(55% 60% at 74% 50%,rgb(201 205 211 / .08),transparent 70%),var(--black)}.hero-grid{position:relative;row-gap:2rem;align-items:center}.hero-text{grid-column:1 / span 6;display:grid;gap:1.6rem;align-content:center;position:relative;z-index:1}.hero h1{font-size:clamp(2.6rem,5.4vw,5.4rem);font-stretch:112%;letter-spacing:-.055em;line-height:.92}.hero h1 .line{display:block}.hero-name{font-size:clamp(3.2rem,7.4vw,7.6rem);line-height:.88}.hero-name span{display:block}.hero-given{font-weight:800;color:var(--white)}.hero-family{font-weight:300;font-stretch:100%;letter-spacing:-.04em;background:linear-gradient(100deg,#f3f3f0,#8b9199 55%,#5a5f67);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{font-size:var(--step-1);color:var(--silver);max-width:34rem;line-height:1.5}.hero-who{color:var(--silver-dim);max-width:34rem}.hero-who strong{color:var(--white);font-weight:600}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.4rem}.hero-stage{grid-column:7 / span 6;position:relative;height:min(46rem,80svh);margin-right:calc(var(--gutter) * -1)}.hero-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;-webkit-mask-image:radial-gradient(closest-side,#000 62%,transparent 100%);mask-image:radial-gradient(closest-side,#000 62%,transparent 100%)}.wafer-fallback{position:absolute;inset:12%;transform:perspective(1600px) rotateX(52deg);transition:opacity .9s var(--ease)}.wafer-fallback .wafer-svg{display:block;width:100%;height:100%}.hero .wafer-notch{fill:var(--black)}.hero-stage.has-3d .wafer-fallback{opacity:0;pointer-events:none}.hero-scroll{position:absolute;left:var(--gutter);bottom:1.6rem;color:var(--silver-dim)}@media(max-width:60rem){.hero-text,.hero-stage{grid-column:1 / -1}.hero-stage{order:-1;height:22rem;margin-inline:calc(var(--gutter) * -1)}.hero{align-items:start}}.wafer-die{fill:#1e222829;stroke:#ffffff59;stroke-width:.6}.die-pad{fill:var(--accent);opacity:.8}.die-block{stroke:#5a5f67;stroke-width:1}.die-logic{fill:#2b2e34}.die-analog{fill:#343229}.die-core{fill:#b8bdc4;stroke:#e2e5e9}.die-label{fill:#e6e8eb;font:600 13px var(--font-mono);letter-spacing:.08em}.die-label-small{font-size:11.5px;letter-spacing:.06em}.die-core+.die-label{fill:var(--black);font-size:15px}.section{position:relative;padding-block:clamp(6rem,13vw,11rem)}.section-intro{row-gap:1.6rem;margin-bottom:clamp(3.5rem,7vw,6rem)}.section-intro .label{grid-column:1 / -1}.light .section-intro .label{color:var(--ink-2)}.dark .section-intro .label{color:var(--silver-dim)}.section-intro h2{grid-column:1 / span 10;font-size:var(--step-3)}.section-intro .lead{grid-column:6 / span 7;font-size:var(--step-1);line-height:1.55}.light .section-intro .lead{color:var(--ink-2)}.dark .section-intro .lead{color:var(--silver)}@media(max-width:56rem){.section-intro h2,.section-intro .lead{grid-column:1 / -1}}.interests{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(1.5rem,3vw,3rem);row-gap:.9rem;margin:0;padding:0;list-style:none}.interest{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start}.interest-defs{position:absolute;width:0;height:0;overflow:hidden}.interest-scene{display:block;width:100%;height:clamp(9rem,14vw,12rem);margin-bottom:1rem;align-self:end}.int-top{fill:url(#int-top-g)}.int-front{fill:url(#int-front-g)}.int-side{fill:url(#int-side-g)}.int-shadow{fill:#000;opacity:.09}.int-cable-off{fill:none;stroke:#a9adb3;stroke-width:2;stroke-dasharray:3 6;stroke-linecap:round}.int-cloud{fill:#d3d6da}.int-packet,.int-remote-lit,[data-scene-kind=sovereignty] [data-link=c]{visibility:hidden}[data-scene-kind=sovereignty] [data-led=app-c]{fill:#5b5f66}.int-led{opacity:.55}.interest h3{font-size:clamp(1.35rem,1.1rem + .9vw,1.85rem);line-height:1.12;letter-spacing:-.025em}.interest p:last-child{font-size:1.05rem;line-height:1.55;color:var(--ink-2)}@media(max-width:56rem){.interests{grid-template-columns:minmax(0,1fr);row-gap:0}.interest{grid-row:auto;grid-template-rows:none;gap:.9rem}.interest+.interest{margin-top:2.5rem}}.cases{border-top:1px solid var(--rule-dark)}.case{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:1rem;padding-block:clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--rule-dark);scroll-margin-top:calc(var(--header-h) + 1rem)}.case-aside{grid-column:1 / span 3;display:grid;gap:.4rem;align-content:start;color:var(--silver-dim)}.case-period{font-family:var(--font-mono);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--white)}.case-body{grid-column:4 / span 9;display:grid;gap:1rem;min-width:0}.case-body>p{max-width:64ch;color:var(--silver)}.case-title{font-size:var(--step-2)}.case-fulltitle{font-style:italic}.case-body>.case-name{color:var(--accent)}.case-pitch{font-size:var(--step-1);line-height:1.45}.case-details{max-width:66ch;color:var(--silver)}.case-details summary{cursor:pointer;width:max-content;font-family:var(--font-mono);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--silver-dim)}.case-details summary:hover{color:var(--white)}.case-details[open] summary{margin-bottom:1rem}.case-details>p{margin-bottom:1rem}.case-facts{display:grid;gap:1rem;margin:.4rem 0 0;max-width:66ch}.case-facts div{display:grid;grid-template-columns:8.5rem minmax(0,1fr);gap:1rem}.case-facts dt{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--silver-dim);padding-top:.3rem}.case-facts dd{margin:0;color:var(--silver)}.stack{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin:.4rem 0 0;padding:0;list-style:none;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--silver-dim)}.stack li:before{content:"";display:inline-block;width:6px;height:6px;margin-right:.5rem;background:var(--accent);vertical-align:.1em}.case-link a{font-weight:600}.journey-wrap{margin:clamp(3rem,6vw,5rem) calc(50% - 50vw);padding-block:clamp(2rem,5vw,4rem);background:var(--black);color:var(--white);color-scheme:dark}.journey{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter)}.journey-progress{display:none}.journey-chapter{display:grid;gap:1.5rem;padding-block:2rem}.journey-chapter+.journey-chapter{border-top:1px solid var(--rule-dark)}.journey-svg{display:block;width:100%;height:auto;overflow:visible}.journey-scene{position:relative}.journey-overlay{position:absolute;inset:0;height:100%;pointer-events:none;will-change:transform}.journey-text{display:grid;gap:.7rem;max-width:40rem}.journey-text .label{color:var(--accent)}.journey-text h3{font-size:var(--step-2)}.journey-step{font-size:var(--step-1);line-height:1.45;color:var(--silver)}.journey.is-animated{height:calc(100svh - var(--header-h) - 2rem);display:grid;grid-template-rows:auto 1fr;gap:1rem;padding-block:1rem}.journey.is-animated .journey-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin:0;padding:0;list-style:none}.journey-progress li{position:relative;padding-top:.7rem;font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--silver-dim);transition:color .3s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.journey-progress li:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--rule-dark)}.journey-progress li:after{content:"";position:absolute;top:0;left:0;height:2px;width:var(--fill, 0%);background:var(--accent)}.journey-progress li.is-current{color:var(--white)}.journey.is-animated .journey-stage{position:relative;min-height:0}.journey.is-animated .journey-chapter{position:absolute;inset:0;display:block;padding:0;border:0}.journey.is-animated .journey-scene{position:absolute;inset:0 0 7rem}.journey.is-animated .journey-svg{width:100%;height:100%}.journey.is-animated .journey-text{position:absolute;left:0;bottom:0;grid-template-rows:auto auto auto;width:min(40rem,100%)}.journey.is-animated .journey-step{grid-row:3;grid-column:1;color:var(--white)}@media(max-width:48rem){.journey.is-animated .journey-scene{inset:0 0 45%}.journey.is-animated .journey-text{top:57%;bottom:auto}.journey-progress span{display:none}}.jn-link{stroke:#3a3e45;stroke-width:1.5}.jn-box{fill:#141518;stroke:#4a4f57;stroke-width:1.2}.jn-led{fill:var(--accent)}.jn-led-dim{fill:#3a3e45}.jn-label{fill:var(--silver-dim);font:600 11px var(--font-mono);letter-spacing:.12em}.jn-label-strong{fill:var(--white);font-size:13px}.jn-packet{fill:var(--accent)}.iso-grid{fill:none;stroke:#1b1d21;stroke-width:1}.iso-top{fill:url(#lab-top)}.iso-side-l{fill:url(#lab-front)}.iso-side-r{fill:url(#lab-side)}.iso-vent-slot{fill:#202226}.iso-vent{stroke:#0a0b0c;stroke-width:2}.iso-cloud-shadow{fill:#000;opacity:.5}.iso-globe{fill:#1d1f23}.iso-globe-line{fill:none;stroke:var(--accent);stroke-width:1;opacity:.8}.iso-globe-rim{fill:none;stroke:none}.iso-globe-shine{fill:#fff;opacity:.12}.iso-brick{stroke:#0a0b0c;stroke-width:1.4}.iso-antenna{stroke:#8b9199;stroke-width:2;stroke-linecap:round}.iso-antenna-tip{fill:var(--accent)}.iso-port{fill:#050506;stroke:#4a4f57;stroke-width:.5}.iso-bay{fill:#0e0f11;stroke:#4a4f57;stroke-width:.6}.iso-screen{fill:#12364a;stroke:var(--accent);stroke-width:.8}.iso-disk-hub{fill:#0e0f11}.iso-accent{stroke:var(--accent);stroke-width:2.5;stroke-linecap:round}.iso-cable{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linejoin:round;opacity:.85}.iso-cable-glow{fill:none;stroke:var(--accent);stroke-width:7;stroke-linejoin:round;opacity:.18;filter:url(#iso-glow)}.iso-packet{fill:#bfe4f4}.cable-plain{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.lab-packet{stroke-width:6;stroke-opacity:.3}.iso-reroute,.iso-spark{opacity:0}.iso-spark path{stroke:#e5484d;stroke-width:3;stroke-linecap:round}.iso-spark-ring{fill:#e5484d26;stroke:#e5484d;stroke-width:1.5}.iso-term rect{fill:#0e0f11eb;stroke:#3a3e45;stroke-width:1}.iso-term circle{fill:#3a3e45}.iso-term-title{fill:var(--silver-dim);font:600 10px var(--font-mono);letter-spacing:.1em}.iso-term-line{font:500 11.5px var(--font-mono)}.iso-term-cmd{fill:var(--silver)}.iso-term-dim{fill:var(--silver-dim)}.iso-term-err{fill:#e5484d}.iso-term-ok{fill:var(--accent)}.rk-frame{fill:#0f1012;stroke:#3a3e45;stroke-width:1.5}.rk-rail{fill:#1a1c20}.rk-hole{fill:#000;stroke:#2c2f35;stroke-width:.8}.rk-face{fill:#17181b;stroke:#4a4f57;stroke-width:1}.rk-port{fill:#050506;stroke:#3a3e45;stroke-width:.8}.rk-port-patch{stroke:#5a5f67}.rk-led{fill:var(--accent)}.rk-bay{fill:#0e0f11;stroke:#3a3e45;stroke-width:.8}.rk-vent{stroke:#2a2d32;stroke-width:2.5}.rk-screen{fill:#0b0d0c;stroke:#3a3e45;stroke-width:.8}.rk-battery{fill:none;stroke:var(--silver-dim);stroke-width:1}.rk-accent{fill:var(--accent)}@media(prefers-reduced-motion:no-preference){.rk-blink{animation:blink 1.3s steps(1) infinite}.rk-blink:nth-of-type(3n){animation-duration:.9s;animation-delay:-.4s}.rk-blink:nth-of-type(3n+1){animation-duration:1.7s;animation-delay:-1.1s}.rk-blink:nth-of-type(5n){animation-duration:2.3s}@keyframes blink{0%,65%{opacity:1}66%,to{opacity:.2}}}.homelab{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 19rem;gap:2rem;align-items:center;height:100%;min-height:26rem}.homelab-stage{position:relative;height:100%;min-height:26rem}.homelab-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.homelab-fallback{height:100%;display:grid;place-items:center}.homelab-fallback .journey-svg{max-height:100%}.homelab-stage.has-3d .homelab-fallback{display:none}.homelab-legend{margin:0;padding:0;list-style:none}.homelab-legend li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding-block:.55rem;border-bottom:1px solid var(--rule-dark);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--silver-dim);transition:color .3s var(--ease)}.homelab-legend strong{font-weight:600}.homelab-legend li.is-active{color:var(--silver)}.homelab-legend li.is-active strong{color:var(--accent)}.homelab-side{display:grid;gap:1.4rem;align-content:center}.homelab-whys{display:grid}.homelab-why{margin:0;font-size:.85rem;line-height:1.45;color:var(--silver-dim)}.homelab-why+.homelab-why{margin-top:.4rem}.homelab-why strong{color:var(--silver);font-weight:600}.homelab-whys.is-live .homelab-why{grid-area:1 / 1;margin:0;min-height:3em;font-size:.95rem;color:var(--silver);opacity:0;transition:opacity .35s var(--ease)}.homelab-whys.is-live .homelab-why.is-active{opacity:1}@media(max-width:60rem){.homelab{grid-template-columns:minmax(0,1fr);min-height:0}.homelab-stage{min-height:16rem}.homelab-side{display:none}}.journey:not(.is-animated) [data-lock]{display:none}.journey:not(.is-animated) [data-lid]{transform:translateY(-14px)}.jn-silo-lines{stroke:var(--silver-dim);stroke-width:2;stroke-linecap:round}.jn-stream{fill:none;stroke:var(--accent);stroke-width:1.5;opacity:.6}.jn-pod-ring{fill:none;stroke:var(--silver-dim);stroke-width:1;stroke-dasharray:3 7}.jn-pod-core{fill:#141518;stroke:var(--silver);stroke-width:1.5}.jn-person{fill:var(--silver)}.jn-lock .jn-shackle{fill:none;stroke:var(--silver);stroke-width:3}.jn-lock-body{fill:var(--silver)}.jn-hub-edge{fill:none;stroke:var(--accent);stroke-width:1.5;opacity:.8}.jn-hub-node{fill:var(--accent)}.jn-user-you .jn-box{stroke:var(--accent);fill:#3f97bd1f}.jn-user-you .jn-person{fill:var(--accent)}.wg-top{fill:url(#wg-silicon)}.wg-edge{fill:#1d1f23;stroke:#4a4f57;stroke-width:.8}.wg-rim{fill:none;stroke:#ffffff59;stroke-width:1}.wg-die{fill:#2a2d33;fill-opacity:.88;stroke:#c9cdd340;stroke-width:.5}.wg-film{fill:url(#wg-film)}.wg-shine{fill:url(#wg-shine)}.wg-lift{fill:none;stroke:var(--accent);stroke-width:1.2;opacity:.85}.journey:not(.is-animated) .wg-die-lift{fill:#050506}.wg-node-halo{fill:#3f97bd1f}.wg-node-dot{fill:#141518;stroke:var(--silver);stroke-width:1.5}.wg-node-me .wg-node-dot{fill:var(--accent);stroke:#8fd0ec}.wg-node-me .wg-node-halo{fill:#3f97bd40}.wg-edge-faint{fill:none;stroke:#3f97bd;stroke-width:.8;opacity:.35}.iso-cable.kg-cable-faint{stroke:#5a6270;stroke-width:1.1;opacity:.7}.iso-cable-glow.kg-cable-faint{display:none}@media(prefers-reduced-motion:reduce){.jn-packet{display:none}}.dg-land{fill:url(#dg-top)}.dg-wall-base{stroke:none}.dg-shadow{fill:#000;opacity:.55}.dg-scene{position:relative;height:100%}.dg-static{will-change:transform}.dg-live{position:absolute;inset:0}.dg-grid{vector-effect:non-scaling-stroke}.dg-city{fill:var(--silver);font:600 10px var(--font-mono);letter-spacing:.14em}.dg-risk-core{fill:#e8b02a38;stroke:#e8b02a;stroke-width:1.5}.dg-risk-ring{fill:none;stroke:#e8b02a;stroke-width:1.5;transform-box:fill-box;transform-origin:center}.dg-dome{fill:#3f97bd29;stroke:var(--accent);stroke-width:1.5}.dg-dome-shine{fill:none;stroke:#ffffff59;stroke-width:2;stroke-linecap:round}.dg-route{fill:none;stroke:none}.dg-packet{stroke-width:6;stroke-opacity:.3}.dg-packet-case{fill:#f0a39f;stroke:#e2605a}.dg-packet-risk{fill:#f3d27f;stroke:#e8b02a}.dg-packet-safe{fill:#8fd0ec;stroke:var(--accent)}.dg-dashboard{font-family:var(--font-sans)}.dg-card{fill:url(#dg-card-g);stroke:#2c3036;stroke-width:1}.dg-card-shadow{fill:#000;opacity:.45}.dg-header{fill:#1a1c20}.dg-baseline{stroke:#2c3036;stroke-width:1}.dg-h1{fill:#fff;font-size:12.5px;font-weight:700;letter-spacing:-.01em}.dg-sub{fill:var(--silver-dim);font-size:10px;font-weight:600;font-variant-numeric:tabular-nums}.dg-sea{fill:url(#dg-sea-g)}.dg-sea-flat{fill:#0f151a}.dg-sea-grid{fill:none;stroke:#fff;stroke-opacity:.035;stroke-width:1}.dg-mini-shadow{fill:#020406;opacity:.8}.dg-mini{fill:url(#dg-land-g)}.dg-pin{stroke:#00000059;stroke-width:.8}.dg-pin-ok{fill:#3cb878}.dg-pin-cases{fill:#e2605a}.dg-pin-risk{fill:#e8b02a}.dg-pin-safe{fill:var(--accent)}.dg-glyph{fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dg-glyph-fill{fill:#fff}.dg-pin-shadow{fill:#000;opacity:.6}.dg-dot-flash{fill:#e2605a59}.dg-label rect{fill:#0a0c0fc7}.dg-label text{fill:#e6e8eb;font-size:9px;font-weight:600}.dg-legend text{fill:var(--silver);font-size:8.5px;font-weight:600}.dg-legend-dot{stroke:none}.dg-toast{fill:#1a1c20;stroke:#2c3036;stroke-width:1}.dg-story text{fill:#fff;font-size:11.5px;font-weight:600}.dg-btn{cursor:pointer;outline:none}.dg-hit{fill:transparent}.dg-btn:hover .dg-hit{fill:#ffffff0f}.dg-btn:focus-visible .dg-hit{stroke:var(--accent);stroke-width:1.5}.dg-view-detail{display:none}.dg-dashboard.is-detail .dg-view-detail{display:inline}.dg-dashboard.is-detail .dg-view-map{display:none}.dg-back{fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dg-d-town{fill:#fff;font-size:13px;font-weight:700}.dg-chip text{font-size:9.5px;font-weight:700}.dg-chip-ok rect{fill:#3cb87829}.dg-chip-ok text{fill:#6fd39f}.dg-chip-cases rect{fill:#e2605a29}.dg-chip-cases text{fill:#ef8b86}.dg-chip-risk rect{fill:#e8b02a29}.dg-chip-risk text{fill:#f0c75e}.dg-chip-safe rect{fill:#3f97bd2e}.dg-chip-safe text{fill:#8fd0ec}.dg-d-note{fill:var(--silver);font-size:10px}.dg-d-label{fill:var(--silver-dim);font-size:8px;font-weight:700;letter-spacing:.08em}.dg-d-grid{stroke:#fff;stroke-opacity:.06;stroke-width:1}.dg-d-base{stroke:#3a3e45;stroke-width:1}.dg-d-axis{fill:var(--silver-dim);font-size:8px;font-variant-numeric:tabular-nums}.dg-dbar{fill:#3b4048}.dg-dbar-ok{fill:#3cb878}.dg-dbar-cases{fill:#e2605a}.dg-dbar-risk{fill:#e8b02a}.dg-dbar-safe{fill:var(--accent)}.dg-story-ok .dg-toast-edge{fill:#3cb878}.dg-story-cases .dg-toast-edge{fill:#e2605a}.dg-story-risk .dg-toast-edge{fill:#e8b02a}.dg-story-safe .dg-toast-edge{fill:var(--accent)}.dg-baseline{stroke:#3a3e45;stroke-width:1}.dg-dot-flash{fill:#e2605a4d}.dg-ico-ok{fill:#3cb878;stroke:#141518;stroke-width:2}.dg-ico-cases{fill:#e2605a}.dg-ico-spikes{stroke:#e2605a;stroke-width:1.6;stroke-linecap:round}.dg-ico-risk path:first-child{fill:#e8b02a;stroke:#e8b02a;stroke-width:1.5;stroke-linejoin:round}.dg-ico-safe path:first-child{fill:var(--accent)}.dg-ico-mark{fill:none;stroke:#141518;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.dg-story text{fill:#fff;font-size:12px;font-weight:600}.dg-story:not([data-story="4"]){visibility:hidden}.dg-core{fill:var(--accent)}.dg-infect-core{fill:#e2605a38;stroke:#e2605a;stroke-width:1.5}.dg-infect-ring{fill:none;stroke:#e2605a;stroke-width:1.5;transform-box:fill-box;transform-origin:center}.dg-burst{fill:#e2605a59;stroke:#ec8a85;stroke-width:1}.mq-leg{fill:none;stroke:#6f747c;stroke-width:1.1;stroke-linecap:round}.mq-leg-band{fill:none;stroke:#f3f3f0;stroke-width:1.3;stroke-dasharray:1.6 7;stroke-linecap:round}.mq-wing{fill:#d6deeb29;stroke:#d6deeb80;stroke-width:.6}.mq-vein{fill:none;stroke:#d6deeb59;stroke-width:.45}.mq-flap{transform-box:fill-box;transform-origin:50% 0%}.mq-shadow{fill:url(#mq-shade)}[data-landed=true] .mq-flap-l{transform:rotate(-14deg)}[data-landed=true] .mq-flap-r{transform:rotate(14deg)}.mq-seg{fill:#24262a;stroke:#4b4f56;stroke-width:.5}.mq-band{stroke:#f3f3f0;stroke-width:1.1;stroke-linecap:round}.mq-thorax{fill:#2a2c31;stroke:#565b62;stroke-width:.6}.mq-lyre{fill:none;stroke:#f3f3f0;stroke-width:.9;stroke-linecap:round}.mq-haltere{fill:#c9cdd3}.mq-head{fill:#1c1e21;stroke:#4b4f56;stroke-width:.5}.mq-eye{fill:#3c3f45}.mq-glint{fill:#fff}.mq-bite{fill:#e2605a;stroke:#e2605a59;stroke-width:3}.mq-proboscis{fill:none;stroke:#8b9199;stroke-width:1.1;stroke-linecap:round}.mq-palp{fill:none;stroke:#c9cdd3;stroke-width:.9;stroke-linecap:round}.mq-antenna,.mq-hair{fill:none;stroke:#8b9199;stroke-width:.5;stroke-linecap:round}@media(prefers-reduced-motion:no-preference){[data-landed=false] .mq-flap{animation:wing 38ms linear infinite alternate}[data-landed=false] .mq-hover{animation:mq-hover .9s linear infinite}@keyframes mq-hover{0%,to{transform:translate(0)}17%{transform:translate(2.5px,-3px)}31%{transform:translate(-1.5px,1px)}48%{transform:translate(3px,2px)}63%{transform:translate(-2.5px,-1.5px)}82%{transform:translate(1px,3px)}}.dg-infect-ring{animation:ring 1.6s ease-out infinite}.dg-infect-ring-2{animation-delay:-.8s}.dg-risk-ring{animation:ring 1.6s ease-out infinite}.dg-risk-ring-2{animation-delay:-.8s}@keyframes wing{0%{transform:scaleY(1) rotate(-8deg);opacity:.9}to{transform:scaleY(.55) rotate(10deg);opacity:.3}}@keyframes ring{0%{transform:scale(1);opacity:.9}to{transform:scale(4.2);opacity:0}}}@media(max-width:56rem){.case-aside,.case-body{grid-column:1 / -1}}@media(max-width:34rem){.case-facts div{grid-template-columns:1fr;gap:.15rem}}.timeline-intro{margin-top:clamp(6rem,12vw,10rem)}.about-section{padding-top:0;overflow-x:clip}.timeline{margin:0;padding:0;list-style:none;border-top:1px solid var(--ink)}.timeline>li{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);padding-block:1.2rem;border-bottom:1px solid var(--rule-light)}.timeline .when{grid-column:1 / span 3;font-family:var(--font-mono);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);padding-top:.45rem}.timeline>li>div{grid-column:4 / span 9}.timeline strong{display:block;font-size:var(--step-2);font-weight:650;letter-spacing:-.035em;line-height:1.15}.timeline .where{display:block;margin-top:.3rem;color:var(--ink-2)}.timeline-wrap{position:relative;padding-left:10rem}.tl-trace{position:absolute;left:0;top:0;width:8.5rem;height:100%;overflow:visible}.tl-line{fill:none;stroke-width:3;stroke-linecap:round;opacity:.16}.tl-lit{fill:none;stroke-width:3.5;stroke-linecap:round}.tl-future{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-dasharray:1 6;stroke-linecap:round;opacity:.3}.tl-commit{fill:var(--paper);stroke-width:3;opacity:.3;transition:opacity .5s ease}.tl-commit.is-lit{opacity:1}.tl-commit-small{stroke-width:2.5}.tl-halo{opacity:0;transition:opacity .7s ease}.tl-halo.is-lit{opacity:.14}.timeline>li{position:relative}.timeline>li.is-lit .when{color:color-mix(in srgb,var(--c, #3f97bd) 75%,#000)}.timeline .when{transition:color .5s ease}@media(max-width:40rem){.timeline-wrap{padding-left:5.5rem}.tl-trace{width:5rem}}.timeline .case-body{display:grid;gap:.4rem;margin-top:1rem}.timeline .case-name{color:var(--accent-deep)}.timeline .case-title{font-size:var(--step-1);line-height:1.3;color:var(--ink)}.timeline .case-pitch{font-size:1.05rem;color:var(--ink-2)}.timeline .case-link a{color:var(--ink)}.case-link{display:flex;flex-wrap:wrap;gap:.6rem 1.8rem}.timeline .case-body,#work{scroll-margin-top:calc(var(--header-h) + 1rem)}.work-block{display:block}.dark .timeline{border-top-color:var(--rule-dark)}.dark .timeline>li{border-bottom-color:var(--rule-dark)}.dark .timeline .when{color:var(--white)}.dark .timeline .where{color:var(--silver-dim)}@media(max-width:40rem){.timeline .when,.timeline>li>div{grid-column:1 / -1}}.contact-section .label{grid-column:1 / -1;color:var(--silver-dim);margin-bottom:2rem}.contact-section h2{grid-column:1 / span 11;font-size:var(--step-4);font-stretch:112%;letter-spacing:-.055em;line-height:.92}.contact-body{grid-column:1 / span 8;margin-top:3rem;display:grid;gap:1.6rem;justify-items:start}.contact-body p{color:var(--silver);font-size:var(--step-1);max-width:40ch}.big-email{font-size:clamp(1.4rem,3.4vw,2.6rem);font-weight:600;letter-spacing:-.03em;overflow-wrap:anywhere}.contact-actions{display:flex;flex-wrap:wrap;gap:.8rem}@media(max-width:56rem){.contact-section h2,.contact-body{grid-column:1 / -1}}.site-footer{padding-block:2.2rem calc(2.2rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--rule-dark);background:var(--black)}.footer-inner{display:flex;flex-wrap:wrap;gap:.8rem 2rem;align-items:center}.footer-inner>*{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--silver-dim)}.footer-inner a{color:var(--silver)}.footer-end{margin-left:auto}.page main{padding-top:var(--header-h)}.page-head{padding-block:clamp(4rem,9vw,7rem) clamp(2rem,4vw,3.5rem)}.page-head .label{color:var(--ink-2)}.page-head h1{margin-top:1.4rem;font-size:var(--step-3)}.page-head p{margin-top:1.4rem;font-size:var(--step-1);color:var(--ink-2);max-width:44ch}.contact-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:3rem;padding-bottom:clamp(5rem,10vw,8rem)}.form{grid-column:1 / span 7;display:grid;gap:1.6rem}.field{display:grid;gap:.5rem}.field label{font-family:var(--font-mono);font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}.field input,.field textarea{width:100%;padding:.8rem 0;border:0;border-bottom:1px solid var(--ink);background:transparent;color:var(--ink);font:inherit;font-size:1.15rem}.field input:focus-visible,.field textarea:focus-visible{outline:none;border-bottom:2px solid var(--ink)}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:.6rem}.fineprint{font-size:.95rem;color:var(--ink-2);max-width:40ch}@media(max-width:56rem){.form{grid-column:1 / -1}}.doc{padding-bottom:clamp(5rem,10vw,8rem)}.prose{display:grid;gap:1rem;max-width:68ch}.prose h2{font-size:var(--step-2);margin-top:1.8rem}.prose ul,.prose ol{margin:0;padding-left:1.3rem;display:grid;gap:.35rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}@media(pointer:coarse){main a:not(.btn),.site-footer a,.brand,.nav-toggle{position:relative}main a:not(.btn):after,.site-footer a:after,.brand:after,.nav-toggle:after{content:"";position:absolute;inset:-14px -6px}}
