@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}:root{--bg:#f4f7fb;--surface:#fff;--surface-2:#eaf1f9;--line:#d9e2ee;--line-strong:#b7c6da;--navy:#0b1f3a;--navy-2:#12305a;--text:#0b1f3a;--muted:#4a5d78;--muted-2:#7189aa;--sky:#2e9bea;--sky-ink:#1667b0;--sky-soft:#e1f0fc;--sky-light:#8fd0ff;--running:#8a6100;--failed:#b3412a;--display:"Space Grotesk", ui-sans-serif, system-ui, sans-serif;--sans:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--radius:8px;--gutter:clamp(16px, 3vw, 32px);--header-h:64px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-h) + 12px);-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--text);font-family:var(--sans);margin:0;font-size:1.0625rem;line-height:1.6;overflow-x:clip}h1,h2,h3,h4{font-family:var(--display);letter-spacing:-.025em;text-wrap:balance;margin:0 0 .5em;font-weight:700;line-height:1.08}h2{font-size:clamp(2.2rem,5vw,3.6rem)}h3{font-size:1.3rem}h4{font-size:1rem}p{max-width:68ch;margin:0 0 1em}a{color:inherit;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px}a:hover{color:var(--sky-ink);-webkit-text-decoration-color:var(--sky);text-decoration-color:var(--sky)}ul,ol{padding-left:1.2em}:focus-visible{outline:2px solid var(--sky);outline-offset:3px;border-radius:3px}[tabindex="-1"]:focus{outline:none}.mono{font-family:var(--mono);font-size:.85em}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--navy);color:#fff;border-radius:6px;padding:12px 18px;font-weight:600;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}.kicker{font-family:var(--display);color:var(--sky-ink);letter-spacing:0;margin:0 0 8px;font-size:.95rem;font-weight:500}.kicker--light{color:var(--sky-light)}.cta{min-height:44px;font-family:var(--display);color:var(--sky-ink);align-items:center;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative}.cta--muted{color:var(--muted)}.cta__icon{opacity:0;place-items:center;width:24px;height:24px;margin-top:-12px;transition:opacity .2s;display:grid;position:absolute;top:50%;left:0}.cta__icon i{background:currentColor;width:14px;height:14px}.cta__txt{transition:transform .2s cubic-bezier(.3,.7,.3,1);display:inline-block}.cta:hover .cta__icon,.cta:focus-visible .cta__icon{opacity:1}.cta:hover .cta__txt,.cta:focus-visible .cta__txt{transform:translate(32px)}.cta:hover{color:var(--sky-ink)}.cta--muted:hover{color:var(--text)}.pills,.chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pills li,.chips li{background:var(--sky-soft);color:var(--sky-ink);border-radius:4px;padding:4px 12px;font-size:.85rem;font-weight:600}.tag,.pill-inline{color:var(--sky-ink);background:var(--sky-soft);vertical-align:middle;border-radius:4px;padding:1px 8px;font-size:.75rem;font-weight:600;display:inline-block}.tag--soft{margin-left:6px}.btn{min-height:46px;font:inherit;font-family:var(--display);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:10px 22px;font-size:.98rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn--primary{background:var(--navy);color:#fff}.btn--primary:hover{background:var(--sky-ink);color:#fff}.btn--ghost{color:var(--text);border-color:var(--line-strong);background:0 0}.btn--ghost:hover{border-color:var(--sky);color:var(--sky-ink)}.btn[aria-disabled=true]{cursor:progress;opacity:.7}.evidence{font-family:var(--mono);color:var(--sky-ink);white-space:nowrap;font-size:.78rem}.evidence:before{content:"↗ "}:root{--rail:0px}.topbar{z-index:40;height:var(--header-h);padding:0 var(--gutter);background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.site-header{display:contents}.rail{display:none}.brand{min-height:44px;font-family:var(--display);color:var(--text);white-space:nowrap;align-items:center;gap:6px;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.plus{width:48px;height:48px;color:var(--text);cursor:pointer;background:0 0;border:0;place-items:center;font-size:2.4rem;font-weight:300;line-height:1;transition:transform .3s cubic-bezier(.2,.7,.2,1),color .2s;display:grid}.plus:hover{color:var(--sky-ink);transform:rotate(90deg)}@media (width>=810px){:root{--rail:75px}body{padding:0 var(--rail)}.topbar{display:none}.rail{z-index:40;width:var(--rail);background:var(--bg);flex-direction:column;align-items:center;display:flex;position:fixed;top:0;bottom:0}.rail--left{border-right:1px solid var(--line-strong);justify-content:flex-end;padding-bottom:48px;left:0}.rail--right{gap:18px;padding-top:24px;right:0}.rail__reach,.brand--vertical{writing-mode:vertical-rl;font-family:var(--display);letter-spacing:-.01em;color:var(--text);min-height:0;padding:6px 0;font-size:1.35rem;font-weight:700;text-decoration:none;transform:rotate(180deg)}.rail__reach:hover,.brand--vertical:hover{color:var(--sky-ink)}.reach-out{display:none!important}}.menu{z-index:60;position:fixed;inset:0}.menu__bg{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b1f3a33;animation:.2s both fade-in;position:absolute;inset:0}.menu__panel{background:var(--sky-ink);color:#fff;transform-origin:100% 0;flex-direction:column;width:min(405px,100vw - 16px);min-height:439px;padding:18px 20px 22px;animation:.32s cubic-bezier(.2,.8,.2,1) .14s both panel-in;display:flex;position:absolute;top:20px;right:8px}.menu.is-closing .menu__bg{animation:.24s 60ms both fade-out}.menu.is-closing .menu__panel{animation:.2s both panel-out}.menu__top{justify-content:space-between;align-items:center;display:flex}.menu .brand{color:#fff;font-size:1.3rem}.menu__x{color:#fff;cursor:pointer;background:0 0;border:0;width:44px;height:44px;font-size:1.9rem;line-height:1}.menu nav ul{margin:44px 0 0;padding:0;list-style:none}.menu nav li{animation:.3s both fade-in;animation-delay:calc(.3s + var(--i) * 40ms)}.menu nav a{min-height:34px;font-family:var(--display);color:#fff;align-items:center;font-size:1.05rem;font-weight:700;text-decoration:none;transition:transform .2s;display:inline-flex}.menu nav a:hover{color:#fff;transform:translate(8px)}.menu__foot{font-family:var(--display);margin:auto 0 0;font-size:.95rem;font-weight:500}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes panel-in{0%{opacity:0;transform:scale(.96)translateY(-6px)}}@keyframes panel-out{to{opacity:0;transform:scale(.97)}}main{display:block}.section,.hero,.case{max-width:1280px;padding:clamp(56px, 8vw, 112px) var(--gutter);margin:0 auto}.section__head{margin-bottom:clamp(28px,4vw,48px)}.section__lede{color:var(--muted);margin-top:-16px;margin-bottom:28px;font-size:1.1rem}.hero{padding-top:clamp(32px,6vw,72px);padding-bottom:0;overflow:clip}.hero__label{font-family:var(--display);color:var(--text);margin-bottom:clamp(20px,4vw,44px);font-size:.95rem;font-weight:500}.hero__label span{color:var(--muted-2);margin:0 10px}.hero__headline{margin-bottom:clamp(16px,3vw,32px);font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.12}.hero__headline span{display:block}.hero__headline-2{color:var(--muted-2)}.hero__word{max-width:none;font-family:var(--display);font-weight:700;font-size:clamp(3rem, calc((100vw - 2 * var(--rail)) * .151), 12.6rem);letter-spacing:-.055em;color:var(--sky);white-space:nowrap;-webkit-user-select:none;user-select:none;margin:0;line-height:.9}.hero__word span{display:inline-block}@media (width<=700px){.hero__word{white-space:normal;font-size:23vw;line-height:.88}}.hero__below{align-items:end;gap:24px;display:grid}@media (width>=900px){.hero__below{grid-template-columns:1fr 1.25fr}}.hero__copy{align-self:start;padding-top:clamp(20px,3vw,36px)}.hero__name{font-family:var(--display);margin-bottom:8px;font-weight:700}.hero__name span{color:var(--muted);font-weight:500}.hero__intro{color:var(--muted);max-width:46ch;font-size:1.12rem}.hero__avail{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:baseline;gap:10px;padding:10px 14px;font-size:.95rem;font-weight:600;display:inline-flex}.dot{background:#22a06b;border-radius:50%;flex:none;width:8px;height:8px;transform:translateY(-1px);box-shadow:0 0 0 4px #22a06b2e}.hero__ctas{flex-wrap:wrap;gap:4px 60px;display:flex}.hero__photo{z-index:1;width:100%;height:auto;display:block;position:relative}.hero__photo-wrap{z-index:1;pointer-events:none;margin-top:clamp(-4.5rem,-4vw,-1.5rem);position:relative}@media (width<=899px){.hero__photo-wrap{margin-top:8px}}.statement p{max-width:26ch;font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:clamp(1.8rem,4.4vw,3.4rem);font-weight:700;line-height:1.12}.u--muted{color:var(--muted-2)}.section__head h2{font-size:clamp(1.8rem,3.6vw,2.8rem);line-height:1.12}.head__a,.head__b{display:block}.head__b{color:var(--muted-2)}.caps{margin:0;padding:0;list-style:none}.cap{border-bottom:1px solid var(--line-strong);outline-offset:6px;gap:14px 32px;padding:32px 0;display:grid}.cap h3{margin-bottom:8px;font-size:clamp(1.4rem,2.4vw,1.9rem)}.cap p{color:var(--muted);margin:0}.cap__pills{flex-wrap:wrap;align-content:flex-start;gap:4px;margin:0;padding:0;list-style:none;display:flex}.pill{color:var(--sky-ink);padding:8px 12px;font-size:.95rem;font-weight:600;position:relative;overflow:clip}.pill__bg{background:color-mix(in srgb, var(--sky) 18%, transparent);position:absolute;inset:0}.pill__txt{position:relative}.ascii{font-family:var(--mono);letter-spacing:0;color:var(--muted-2);-webkit-user-select:none;user-select:none;justify-self:end;margin:0;font-size:5px;line-height:5px}@media (width>=900px){.cap{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:start}}@media (hover:hover) and (width>=1100px){.pill__bg{width:0;transition:width .15s}.pill__txt{opacity:0;transition:opacity .15s}.cap:hover .pill__bg,.cap:focus-within .pill__bg,.cap:focus .pill__bg{width:100%;transition:width .25s cubic-bezier(.3, .7, .3, 1) var(--d)}.cap:hover .pill__txt,.cap:focus-within .pill__txt,.cap:focus .pill__txt{opacity:1;transition:opacity .2s ease calc(var(--d) + 80ms)}}.caps__also{color:var(--muted);margin-top:20px}.caps__also span{font-family:var(--mono);color:var(--text);font-size:.9rem}.jobs{margin:0;padding:0;list-style:none}.job{position:relative}.job__head{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto 48px;align-items:center;gap:4px 24px;padding:26px 0;display:grid}@media (width>=900px){.job__head{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px}}.job__who{flex-direction:column;display:flex}@media (width<=600px){.job__head{grid-template-columns:minmax(0,1fr) 48px}.job__when{grid-area:2/1}.job__plus{grid-area:1/2/span 2}}.job__role,.job__org{font-family:var(--display);font-size:clamp(1.15rem,1.8vw,1.35rem);font-weight:700;line-height:1.2}.job__org{color:var(--muted-2)}.job__when{font-family:var(--display);color:var(--muted);font-size:.95rem;font-weight:500}.job__plus{text-align:center;width:40px;color:var(--sky);justify-self:end;font-size:2.2rem;font-weight:300;line-height:1;transition:transform .3s cubic-bezier(.3,.7,.3,1)}.job.is-open .job__plus{transform:rotate(45deg)}.job__body{grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.3,.7,.3,1);display:grid}.job__body>div{overflow:hidden}.job.is-open .job__body{grid-template-rows:1fr}.job__body ul{max-width:62ch;color:var(--muted);margin:0 0 12px;padding-left:1.1em}.job__body li{margin-bottom:6px}.job__body li::marker{color:var(--sky)}.job__body .cta{margin-bottom:24px}.job__line{background:#0b1f3a33;height:1px;display:block;position:relative}.job__line i{background:var(--navy);width:0;transition:width .5s cubic-bezier(.3,.7,.3,1);position:absolute;inset:0 auto 0 0}.job:hover .job__line i,.job.is-open .job__line i,.job__head:focus-visible~.job__line i{width:100%}.cards{gap:clamp(36px,5vw,64px) clamp(20px,3vw,36px);margin:0;padding:0;list-style:none;display:grid}@media (width>=800px){.cards{grid-template-columns:1fr 1fr}}.card__link{color:var(--text);text-decoration:none;display:block}.card__img{aspect-ratio:1;background:radial-gradient(120% 90% at 70% 10%, var(--navy-2), var(--navy));place-items:center;padding:8%;display:grid;overflow:hidden}.card__cat{font-family:var(--display);color:var(--sky-ink);margin-top:16px;font-size:.9rem;font-weight:500;display:block}.card__title{font-family:var(--display);margin-top:4px;font-size:clamp(1.15rem,1.6vw,1.3rem);font-weight:700;line-height:1.2;display:block}.card__kicker{color:var(--muted-2);margin-top:4px;font-weight:500;display:block}.mini{aspect-ratio:640/380;--mini-ink:var(--sky-light);--mini-mine:var(--sky-light);--tone:var(--navy);width:100%;height:auto}.mini__edge{stroke:var(--mini-ink);stroke-width:2px;opacity:.45}.mini__node rect,.mini__node circle{fill:var(--tone);stroke:var(--mini-ink);stroke-width:1.5px;stroke-opacity:.6}.mini__node.is-mine rect,.mini__node.is-mine circle{stroke:var(--mini-mine);stroke-width:2.2px;stroke-opacity:1}.mini__node text,.mini__note{font-family:var(--mono);fill:#fff;font-size:12px}.mini__note{fill:var(--sky-light);font-style:italic}.mini__dot{fill:var(--mini-ink);opacity:.7}.mini--dashed rect{stroke-dasharray:6 6}.lab{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:clamp(18px,3vw,32px)}.lab__head{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:20px;display:flex}.lab__disclaimer{color:var(--muted);margin:0;font-size:.92rem}.badge--sim{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--running);border:1px dashed;border-radius:999px;padding:3px 10px;font-size:.74rem}.lab__controls{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:24px;display:flex}.toggle{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-weight:600;display:inline-flex}.toggle input{width:20px;height:20px;accent-color:var(--failed);cursor:pointer}.stages{grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 24px;padding:0;list-style:none;display:grid}@media (width>=600px){.stages{grid-template-columns:repeat(3,1fr)}}@media (width>=1000px){.stages{grid-template-columns:repeat(6,1fr);gap:20px}}.stage{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);border-left-width:3px;grid-template-columns:auto 1fr;align-items:center;column-gap:10px;padding:10px 12px;display:grid;position:relative}.stage__icon{width:26px;height:26px;color:var(--muted);border:1px solid;border-radius:50%;grid-row:span 2;place-items:center;font-size:.85rem;font-weight:700;display:grid}.stage__name{font-weight:600}.stage__status{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem}.stage--running{border-left-color:var(--running);background:#fff8e6}.stage--running .stage__icon,.stage--running .stage__status{color:var(--running)}.stage--running .stage__icon{animation:1s linear infinite spin}.stage--passed{border-left-color:var(--sky);background:var(--sky-soft)}.stage--passed .stage__icon,.stage--passed .stage__status{color:var(--sky-ink)}.stage--failed{border-color:var(--failed);background:#fbeeea;border-left-width:3px}.stage--failed .stage__icon,.stage--failed .stage__status{color:var(--failed)}.stage--skipped{color:var(--muted);background:0 0;border-style:dashed}.stage__cable{display:none}@media (width>=1000px){.stage__cable{background:var(--line-strong);width:20px;height:1px;display:block;position:absolute;top:50%;right:-21px}.stage__cable i{background:var(--sky);opacity:0;border-radius:1px;width:7px;height:7px;position:absolute;top:-3px;left:0}.stage--passed .stage__cable i{animation:.6s ease-out forwards hop}}.lab__body{gap:20px;display:grid}@media (width>=760px){.lab__body{grid-template-columns:1fr 260px}}.lab__log{background:var(--navy);color:#d6ecff;font-family:var(--mono);border-radius:var(--radius);white-space:pre-wrap;overflow-wrap:anywhere;height:260px;margin:0;padding:14px 16px;font-size:.82rem;line-height:1.6;overflow:auto}.lab__side{flex-direction:column;gap:12px;display:flex}.lab__summary{border:1px solid var(--line);border-radius:var(--radius);font-family:var(--mono);margin:0;font-size:.82rem}.lab__summary div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:9px 12px;display:flex}.lab__summary div:last-child{border-bottom:0}.lab__summary dt{color:var(--muted)}.lab__summary dd{margin:0}.res--success{color:var(--sky-ink)}.res--failure{color:var(--failed)}.res--running{color:var(--running)}.lab__explain{border-left:3px solid var(--sky);background:var(--surface-2);border-radius:var(--radius);color:var(--muted);margin:0;padding:10px 12px;font-size:.9rem}.lab__explain[role=note]{border-left-color:var(--failed)}.lab__explain strong{color:var(--text)}.footer{color:#fff;background:var(--navy);margin-top:clamp(48px,8vw,96px);position:relative}.footer__pixels{pointer-events:none;position:absolute;top:0;left:0}.footer__pixels div{display:flex}.footer__pixels i{background:var(--bg);width:20px;height:20px}.footer__inner{padding:170px var(--gutter) 96px}.footer__inner>*{max-width:1280px;margin-left:auto;margin-right:auto}.footer__avail{color:#c9d8ea}.footer__email{font-family:var(--display);font-weight:700;font-size:clamp(1.3rem, calc((100vw - 2 * var(--rail)) * .058), 5.2rem);letter-spacing:-.04em;color:#fff;overflow-wrap:anywhere;margin:12px auto clamp(32px,5vw,56px);line-height:1.05;text-decoration:none;display:block}.footer__email:hover{color:var(--sky-light)}.footer__cols{flex-wrap:wrap;gap:24px 72px;display:flex}.footer__cols ul{margin:0;padding:0;list-style:none}.footer__cols a{color:#fff;padding:6px 0;font-weight:600;text-decoration:none;display:inline-block}.footer__cols a:hover{color:var(--sky-light)}.footer__credit{color:#9fb3cc;margin-top:40px;font-size:.85rem}.reach-out{z-index:30;background:var(--navy);color:#fff;min-height:46px;font-family:var(--display);border:1px solid #8fd0ff8c;border-radius:999px;align-items:center;padding:0 24px;font-weight:700;text-decoration:none;display:inline-flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0b1f3a40}.reach-out:hover{background:var(--sky-ink);color:#fff}.case{padding-top:16px}.case__back{min-height:44px;color:var(--muted);align-items:center;font-weight:600;display:inline-flex}.case__hero{border-bottom:1px solid var(--line-strong);align-items:center;gap:32px;margin-bottom:40px;padding:20px 0 48px;display:grid}@media (width>=900px){.case__hero{grid-template-columns:1.1fr 1fr}}.panel__meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.case__hero h1{letter-spacing:-.04em;font-size:clamp(2.6rem,6vw,4.6rem)}.case__kicker{font-family:var(--display);color:var(--sky-ink);font-size:1.1rem;font-weight:500}.case__summary{color:var(--muted);font-size:1.12rem}.case__links{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.case__links .btn{overflow-wrap:anywhere;max-width:100%}.case__art{aspect-ratio:16/11;background:radial-gradient(120% 90% at 70% 10%, var(--navy-2), var(--navy));border-radius:12px;justify-self:center;place-items:center;width:100%;max-width:560px;padding:6%;display:grid}.case h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}.case section{margin:0 0 44px}.case__grid{gap:24px 56px;display:grid}@media (width>=900px){.case__grid{grid-template-columns:1fr 1fr}}.case__grid li{margin-bottom:6px}.case__mine{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:24px}.case__mine .chips{margin-top:16px}.decisions{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:28px;display:grid}.decision{border-top:2px solid var(--sky);padding-top:14px}.decision h3{font-size:1.15rem}.decision p{color:var(--muted)}.results{padding:0;list-style:none}.results li{margin-bottom:12px;padding-left:26px;position:relative}.results li:before{content:"✓";color:var(--sky);font-weight:700;position:absolute;top:0;left:0}.case__next{border:1px dashed var(--line-strong);border-radius:12px;padding:24px}.case__next .tag--soft{margin:0 0 8px}.case__pager{border-top:1px solid var(--line-strong);font-family:var(--display);flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:20px;font-weight:700;display:flex}.case__pager a{align-items:center;min-height:44px;display:inline-flex}.arch{border-top:1px solid var(--line-strong);padding-top:40px}.arch__caption{color:var(--muted)}.arch__legend{color:var(--text);white-space:nowrap;align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.legend-mine{border:2px solid var(--sky);border-radius:3px;width:16px;height:12px}.arch__layout{gap:20px;margin:20px 0;display:grid}@media (width>=1000px){.arch__layout{grid-template-columns:1.7fr 1fr}}.arch__diagram{aspect-ratio:640/380;background-color:var(--surface);border:1px solid var(--line);background-image:radial-gradient(#0b1f3a1a 1px,#0000 1.3px);background-size:20px 20px;border-radius:12px;position:relative}.arch__diagram svg{width:100%;height:100%;position:absolute;inset:0}.arch__diagram marker path{fill:var(--muted)}.arch__edge{stroke:var(--muted);stroke-width:1.5px;opacity:.4}.arch__edge.is-on{stroke:var(--sky);opacity:1;stroke-width:2.2px}.arch__node{border:1px solid var(--line-strong);background:var(--surface);max-width:132px;min-height:44px;font-family:var(--mono);color:var(--text);text-align:left;cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:.74rem;line-height:1.2;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.arch__node.is-mine{border:2px solid var(--sky)}.arch__node:hover{border-color:var(--sky-ink)}.arch__node.is-sel{background:var(--navy);border-color:var(--navy);color:#fff}.arch__light{background:var(--line-strong);border-radius:50%;flex:none;width:7px;height:7px}.arch__node.is-sel .arch__light{background:var(--sky-light)}.arch__detail{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-self:start;padding:20px}.arch__detail-kicker{color:var(--sky-ink);margin:0 0 4px}.arch__detail h4{font-size:.76rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:14px;font-weight:400}.arch__conns,.arch__evidence{font-family:var(--mono);margin:0;padding:0;font-size:.85rem;list-style:none}.arch__evidence a{padding:6px 0;display:inline-block}.arch__list summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.arch__list li{margin-bottom:10px}.arch__list-conns{color:var(--muted)}@media (width<=640px){.arch__layout{display:none}}.lost{text-align:center}.lost p{margin-inline:auto}.hero__photo-wrap{will-change:transform}.card__zoom{transform-origin:50%;width:100%;display:block}.reveal .wd{white-space:nowrap}html.motion .reveal .u{opacity:0;transition:opacity .4s;transition-delay:calc(var(--i) * 15ms)}html.motion .reveal[data-reveal=words] .u{transition-duration:.5s;transition-delay:calc(var(--i) * 45ms)}html.motion .reveal.is-in .u{opacity:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes hop{0%{opacity:1;left:0}to{opacity:0;left:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
