:root{--ink: #10110e;--ink-2: #181a16;--paper: #f3eee4;--paper-2: #e7e1d4;--text: #f3eee4;--text-dim: #c9c2b3;--ink-text: #171814;--ink-dim: #4d5148;--line: rgba(243, 238, 228, .16);--line-strong: rgba(243, 238, 228, .38);--line-ink: rgba(16, 17, 14, .14);--signal: #dff25a;--danger: #8d2b16;--ok: #1d4a32;--serif: "Instrument Serif", "Iowan Old Style", Georgia, serif;--sans: "Instrument Sans", "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--header: 4.5rem;--wrap: 1120px;--shadow: 0 24px 60px rgba(0, 0, 0, .28);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--ink);color:var(--text);font-family:var(--sans);font-size:1.0625rem;line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body.nav-lock{overflow:hidden}img{max-width:100%;display:block}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,.role__when strong,.map__detail strong{font-family:var(--serif);font-weight:400;letter-spacing:-.03em}h1{font-size:clamp(2.7rem,8.4vw,6.4rem);line-height:.9}h1 em{display:block;font-style:italic}h2{font-size:clamp(2.15rem,4.6vw,3.7rem);line-height:1.02;max-width:14em}a{color:inherit}:focus-visible{outline:2px solid var(--signal);outline-offset:3px}::selection{background:var(--signal);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;left:1rem;top:-4rem;z-index:40;background:var(--signal);color:var(--ink);padding:.7rem 1rem;text-decoration:none}.skip:focus{top:.75rem}.wrap{width:min(var(--wrap),calc(100% - 2.5rem));margin-inline:auto}.kicker,.practice__index,.case__top,.role__when p,.lab__key span,.field label,.map__label,.site-footer{font-family:var(--mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.kicker,.map__label{color:var(--text-dim);margin-bottom:1rem}.lede{color:var(--text-dim);font-size:1.125rem;max-width:42rem}.section{padding:clamp(4.5rem,9vw,7.5rem) 0}.section--paper{background:var(--paper);color:var(--ink-text);color-scheme:light}.section--paper .kicker,.section--paper .lede,.section--paper .role__place,.about__text,.case__grid p,.case__result{color:var(--ink-dim)}.section--paper :focus-visible{outline-color:var(--ink)}section[id]{scroll-margin-top:calc(var(--header) + .75rem)}.section__head{display:grid;gap:1rem;margin-bottom:clamp(2rem,5vw,3.5rem)}.site-header{position:fixed;inset:0 0 auto;z-index:30;height:var(--header);color:var(--text);background:transparent}.site-header.is-solid{background:#10110eeb;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.site-header__bar{height:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{text-decoration:none;font-family:var(--serif);font-size:1.7rem;letter-spacing:-.04em;line-height:1}.header-end{display:flex;align-items:center;gap:.75rem}.nav{display:flex;align-items:center}.nav ul{display:flex;gap:.35rem 1.1rem;list-style:none;margin:0;padding:0}.nav a{text-decoration:none;color:var(--text-dim);font-size:.95rem}.nav a.is-active{color:var(--text);box-shadow:inset 0 -1px 0 var(--signal)}.lang{display:flex;border:1px solid var(--line-strong);border-radius:999px;overflow:hidden}.lang button{min-width:44px;min-height:36px;border:0;background:transparent;color:var(--text-dim)}.lang button[aria-pressed=true]{background:var(--signal);color:var(--ink)}.menu-btn{display:none;width:48px;height:48px;border:0;background:transparent;position:relative}.menu-btn__lines,.menu-btn__lines:before,.menu-btn__lines:after{content:"";position:absolute;left:14px;width:20px;height:1.5px;background:var(--text)}.menu-btn__lines{top:23px}.menu-btn__lines:before{top:-6px}.menu-btn__lines:after{top:6px}.menu-btn.is-open .menu-btn__lines{background:transparent}.menu-btn.is-open .menu-btn__lines:before{top:0;transform:rotate(45deg)}.menu-btn.is-open .menu-btn__lines:after{top:0;transform:rotate(-45deg)}.hero{min-height:100svh;display:flex;align-items:center;padding:calc(var(--header) + 2rem) 0 4rem;background:radial-gradient(900px 420px at 85% 20%,rgba(223,242,90,.08),transparent 60%),var(--ink)}.hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(2rem,5vw,4.5rem);align-items:end;width:min(var(--wrap),calc(100% - 2.5rem));margin-inline:auto}.hero__name{margin:0 0 .8rem;font-size:1rem;color:var(--text-dim)}.hero__lede{margin-top:1.4rem}.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.8rem}.hero__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2.4rem 0 0}.hero__facts dt{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--signal)}.hero__facts dd{margin:.3rem 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.15rem;border-radius:999px;border:1px solid transparent;text-decoration:none;line-height:1.2;background:transparent}.btn--solid{background:var(--signal);color:var(--ink)}.btn--ghost{border-color:var(--line-strong);color:var(--text)}.btn--solid:hover{background:#eaf97a}.btn--ghost:hover{border-color:var(--text)}.section--paper .btn--solid{background:var(--ink);color:var(--paper)}.section--paper .btn--solid:hover{background:#2a2d27}.section--paper .btn--ghost{color:var(--ink-text);border-color:#10110e47}button:disabled{cursor:wait;opacity:.55}.map__label{margin-bottom:.8rem}.map__stage{position:relative;height:460px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(243,238,228,.03),transparent 30%),var(--ink-2);box-shadow:var(--shadow)}.map__lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.map__lines line{stroke:#f3eee447;stroke-width:1.5px;vector-effect:non-scaling-stroke}.map__lines line.is-hot{stroke:var(--signal)}.map__node{position:absolute;transform:translate(-50%,-50%);min-width:118px;min-height:64px;padding:.7rem .85rem;border:1px solid var(--line-strong);background:#10110ee0;color:var(--text);text-align:left;z-index:1}.map__node span{display:block;font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.map__node strong{display:block;margin-top:.15rem;font-size:1.02rem;font-weight:500}.map__node.is-active{border-color:var(--signal);background:#22261a}.map__detail{min-height:5.5rem;margin-top:1rem;color:var(--text-dim)}.map__detail strong{color:var(--text);font-size:1.35rem;font-style:italic;font-weight:400}.map__hint{margin-top:.4rem;color:var(--text-dim);font-size:.92rem}.map__hint a{color:var(--text)}.about{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:2rem 4rem;align-items:start}.about__intro{grid-column:1 / -1;max-width:16em}.about__frame{margin:0;padding:.7rem .7rem .85rem;background:var(--paper-2)}.about__frame img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:center;background:#000}.about__frame figcaption{margin-top:.7rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim)}.about__text{display:grid;gap:1.1rem;font-size:1.08rem}.practice,.timeline,.cases{list-style:none;margin:0;padding:0}.practice__row,.role,.case{border-top:1px solid var(--line)}.section--paper .practice__row,.section--paper .case{border-top-color:var(--line-ink)}.practice__row{display:grid;grid-template-columns:3.5rem minmax(0,.9fr) minmax(220px,1.1fr);gap:1.25rem 1.5rem;padding:1.5rem 0;align-items:start}.practice__index{color:var(--text-dim);padding-top:.45rem}.practice__row h3,.case h3,.role h3{font-size:1.45rem;font-weight:500;letter-spacing:-.03em;line-height:1.2}.practice__row p,.role p,.case p{margin-top:.45rem;color:var(--text-dim)}.chips{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:.9rem 0 0;padding:0}.chips li{border:1px solid var(--line-strong);border-radius:999px;padding:.28rem .65rem;color:var(--text);font-size:.86rem}.section--paper .chips li{border-color:#10110e2e;color:var(--ink-text)}.case{padding:2rem 0 2.2rem}.case__top{display:flex;justify-content:space-between;gap:1rem;color:var(--ink-dim);margin-bottom:.8rem}.case h3 small{display:block;margin-top:.35rem;font-family:var(--mono);font-size:.75rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim)}.case__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:1.3rem}.case__grid h4,.case__result span{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-text)}.case__result{margin-top:1.2rem;display:grid;gap:.3rem}.case__links{margin-top:1rem}.case__links a{color:var(--ink-text);font-weight:500}.pending{margin-top:.9rem;padding:.75rem .9rem;border-left:3px solid var(--signal);background:#dff25a1a;color:var(--text);font-size:.95rem}.section--paper .pending{background:#10110e0d;color:var(--ink-text)}.role{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:1rem 2rem;padding:1.8rem 0}.role__when strong{display:block;margin-top:.35rem;font-size:clamp(1.8rem,3vw,2.5rem);line-height:.95;color:var(--text)}.role__when em{display:block;margin-top:.45rem;font-style:normal;color:var(--signal);font-family:var(--sans);font-size:.95rem;letter-spacing:0;text-transform:none}.role__when p{color:var(--text-dim)}.role__org{color:var(--text);margin-top:.2rem}.role__place{font-size:.95rem}.section--lab{background:radial-gradient(700px 280px at 80% 0%,rgba(223,242,90,.07),transparent 60%),var(--ink)}.lab{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:1.5rem;padding:1rem;border:1px solid var(--line);background:#141612}.lab__brief{display:grid;align-content:start;gap:1rem;padding:.6rem;color:var(--text-dim)}.lab__key{display:grid;gap:.45rem;justify-items:start;padding-top:.4rem}.lab__key strong{font-family:var(--mono);font-size:1.35rem;letter-spacing:.04em;color:var(--signal);text-transform:none}.processors{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}.processor{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:76px;padding:.8rem .9rem;border:1px solid var(--line);background:#f3eee405}.processor span,.processor em{display:block;font-style:normal;color:var(--text-dim);font-size:.82rem}.processor strong{display:block;font-size:1.15rem;font-weight:500}.processor button{min-height:44px;min-width:8.5rem;border:1px solid var(--line-strong);background:transparent;color:var(--text)}.processor.is-up button{color:#cfe8c4}.processor.is-degraded button{color:#f0c27a}.processor.is-down{opacity:.62}.processor.is-chosen{border-color:var(--signal);background:#dff25a14;opacity:1}.lab__dispatch{margin-top:1rem;display:grid;gap:.9rem;justify-items:start}.lab__dispatch [role=status]{font-family:var(--serif);font-size:clamp(1.35rem,2vw,1.8rem);font-style:italic;line-height:1.25;letter-spacing:-.02em}.lab__trace{margin:0;padding-left:1.1rem;color:var(--text-dim)}.lab__trace li+li{margin-top:.35rem}.contact{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,1fr);gap:2.5rem 4rem;align-items:start}.contact__links{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:1rem}.contact__links span{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim)}.contact__links a,.contact__links strong{font-weight:500;overflow-wrap:anywhere}.form{display:grid;gap:1.15rem}.field label{display:block;margin-bottom:.35rem;color:var(--ink-dim)}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid rgba(16,17,14,.3);border-radius:0;background:transparent;color:var(--ink-text);padding:.75rem 0;min-height:48px}.field textarea{min-height:148px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#6f6b62}.field.is-invalid input,.field.is-invalid textarea{border-bottom-color:var(--danger)}.field p,.form__bad{margin-top:.4rem;color:var(--danger);font-size:.92rem}.form__ok{color:var(--ok)}.site-footer{padding:1.5rem 0 2rem;color:var(--text-dim);border-top:1px solid var(--line)}.site-footer__bar{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.site-footer a{color:var(--text)}.site-footer__note{margin-top:.8rem}@media (max-width: 980px){.hero__grid,.contact,.lab,.case__grid,.practice__row,.role{grid-template-columns:1fr}.hero{align-items:start}.map__stage{height:430px}}@media (max-width: 980px){.menu-btn{display:inline-block}.nav{display:none;position:fixed;inset:calc(var(--header) + .5rem) .8rem auto;padding:1rem;background:#171914;border:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav.is-open{display:flex}.nav ul{flex-direction:column;gap:.2rem}.nav a{display:flex;align-items:center;min-height:44px}.lang{align-self:flex-start}}@media (max-width: 720px){.wrap,.hero__grid{width:min(var(--wrap),calc(100% - 1.5rem))}.about,.hero__facts{grid-template-columns:1fr}.about__frame{max-width:260px}.hero__actions,.hero__actions .btn{width:100%}.map__stage{height:auto;display:grid;gap:.65rem;padding:.75rem;background:transparent;border:0;box-shadow:none}.map__lines{display:none}.map__node{position:static;transform:none;width:100%}.processor{align-items:stretch;flex-direction:column}.processor button,.lab__dispatch .btn,.form .btn{width:100%}}@media (prefers-reduced-motion: no-preference){.map__lines line.is-hot{stroke-dasharray:4 8;animation:flow 1.15s linear infinite}.reveal{opacity:0;transform:translateY(16px);transition:opacity .68s ease,transform .68s ease}.reveal.is-in{opacity:1;transform:none}.processor,.map__node,.btn,.nav{transition:border-color .16s ease,background-color .16s ease,opacity .16s ease}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}}@keyframes flow{to{stroke-dashoffset:-24}}
