/* Membership MCP design system, ported from the Astro site by tools/port-css.py and retargeted to core block
   markup (see the script for the four rewrites). Do not edit by hand: change the Astro CSS or the script and
   re-run it. Everything the rewrites cannot express lives in style.css. Fonts come from theme.json. */
/* ==== design system: astro/site/src/styles/global.css (compiled, retargeted) ==== */
:root{--bg:#fff;--panel:#f6f7f8;--panel-2:#eef0f2;--well:#fff;--ink:#16181b;--muted:#5a5f66;--soft:#6b7178;--line:#16181b14;--line-2:#16181b24;--line-3:#16181b38;--brass:#c9a13b;--brass-hover:#b8922f;--accent:#4a2e4d;--accent-fg:#4a2e4d;--accent-soft:#f3edf3;--on-accent:#fff;--on-accent-2:#fffc;--on-accent-3:#ffffffb8;--on-accent-fill:#ffffff24;--on-accent-ring:#ffffff4d;--shadow:0 32px 64px -24px #16181b47, 0 2px 6px #16181b12;--scrim:#16181b7a;--text:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"DM Mono",ui-monospace,"SF Mono",Menlo,monospace;--ease:cubic-bezier(.16,1,.3,1);--r-control:8px;--r-panel:14px;--wrap:1152px;--gutter:clamp(24px,5vw,64px);--band:clamp(96px,8.9vw,128px);--band-short:clamp(48px,4.5vw,64px);--band-tall:clamp(112px,11vw,160px);--head-gap:56px;--card-gap:24px;--card-pad:28px;--fs-h1:clamp(2.75rem,1.5rem + 3.2vw,4.25rem);--fs-h2:clamp(1.875rem,1.3rem + 1.45vw,2.5rem);--fs-h2-big:clamp(2.25rem,1.5rem + 2vw,3rem);--fs-h3:1.375rem;--fs-lede:clamp(1.0625rem,1rem + .4vw,1.1875rem);--fs-hero-lede:clamp(1.125rem,1rem + .55vw,1.3125rem);color-scheme:light}
@media (prefers-color-scheme:dark){
:root:not([data-theme=light]){--bg:#101113;--panel:#1a1c1f;--panel-2:#202327;--well:#101113;--ink:#edeef0;--muted:#9ca1a8;--soft:#8e949b;--line:#edeef017;--line-2:#edeef024;--line-3:#edeef038;--brass:#e3ba4e;--brass-hover:#eac45a;--accent-fg:#c9a9cb;--accent-soft:#c9a9cb29;--shadow:0 32px 64px -24px #000000b3, 0 2px 6px #00000073;--scrim:#0000009e;color-scheme:dark}
}
:root[data-theme=dark]{--bg:#101113;--panel:#1a1c1f;--panel-2:#202327;--well:#101113;--ink:#edeef0;--muted:#9ca1a8;--soft:#8e949b;--line:#edeef017;--line-2:#edeef024;--line-3:#edeef038;--brass:#e3ba4e;--brass-hover:#eac45a;--accent-fg:#c9a9cb;--accent-soft:#c9a9cb29;--shadow:0 32px 64px -24px #000000b3, 0 2px 6px #00000073;--scrim:#0000009e;color-scheme:dark}
*,:before,:after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px}
body{background:var(--bg);color:var(--ink);font-family:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01","cv11";margin:0;font-size:1rem;line-height:1.5}
h1,h2,h3,h4,p,ul,ol,figure,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}
img,svg{display:block}
code,kbd{font-family:var(--mono)}
::selection{background:var(--line-3);color:var(--ink)}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:4px}
html{scrollbar-color:var(--line-3) transparent;scrollbar-width:thin}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:var(--line-3);border:3px solid var(--bg);border-radius:999px}
::-webkit-scrollbar-track{background:0 0}
.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{left:var(--gutter);z-index:100;background:var(--ink);color:var(--bg);border-radius:var(--r-control);padding:10px 14px;font-weight:600;position:absolute;top:-48px}
.skip:focus{top:12px}
.wrap{width:min(var(--wrap),100% - 2*var(--gutter));margin-inline:auto}
.wrap.mid{width:min(896px,100% - 2*var(--gutter))}
.wrap.narrow{width:min(768px,100% - 2*var(--gutter))}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.num{font-variant-numeric:tabular-nums}
.note{color:var(--soft);font-size:.8125rem;line-height:1.5}
.icon{stroke:currentColor;fill:none;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}
h1,h2,h3{letter-spacing:-.03em;text-wrap:balance;font-weight:600}
h1{font-size:var(--fs-h1);letter-spacing:-.034em;line-height:.98}
h2{font-size:var(--fs-h2);line-height:1.08}
h3{font-size:var(--fs-h3);letter-spacing:-.015em;line-height:1.2}
.lede{font-size:var(--fs-lede);color:var(--muted);text-wrap:pretty;line-height:1.55}
.btn,.wp-block-button__link{border-radius:var(--r-control);white-space:nowrap;height:48px;transition:background-color .15s var(--ease),box-shadow .15s var(--ease),transform .12s var(--ease),color .15s var(--ease);justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:1rem;font-weight:600;line-height:1;display:inline-flex}
.btn:active,.wp-block-button__link:active{transform:translateY(1px)}
.btn.sm,.sm>.wp-block-button__link{height:38px;padding:0 14px;font-size:.9375rem}
.btn.brass,.is-style-brass>.wp-block-button__link{background:var(--brass);color:#16181b}
.btn.brass:hover,.is-style-brass>.wp-block-button__link:hover{background:var(--brass-hover);color:#16181b}
.btn.sec,.is-style-sec>.wp-block-button__link{background:var(--panel);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}
.btn.sec:hover,.is-style-sec>.wp-block-button__link:hover{background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line-3)}
.btn.ghost,.is-style-ghost>.wp-block-button__link{color:var(--muted);background:0 0;padding:0 12px}
.btn.ghost:hover,.is-style-ghost>.wp-block-button__link:hover{color:var(--ink);background:var(--panel)}
.btn .icon,.wp-block-button__link::after{width:16px;height:16px}
.btn.lg,.lg>.wp-block-button__link{height:52px;padding:0 26px;font-size:1.0625rem}
.link{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-3);text-underline-offset:.2em;font-weight:500;text-decoration-thickness:1px;transition:text-decoration-color .15s}
.link:hover{text-decoration-color:currentColor}
.more{color:var(--ink);transition:gap .15s var(--ease);align-items:center;gap:6px;font-weight:500;display:inline-flex}
.more .icon{width:16px;height:16px;color:var(--muted);transition:transform .2s var(--ease)}
.more:hover .icon{transform:translate(3px)}
.nav{z-index:50;background:var(--bg);transition:border-color .2s var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}
.nav.is-stuck,.no-js .nav{border-bottom-color:var(--line)}
.nav .wrap{align-items:center;gap:8px;height:64px;display:flex}
.lockup{color:var(--ink);border-radius:4px;align-items:center;margin-right:28px;display:inline-flex}
.lockup svg{width:auto;height:26px}
.lockup{--lt-plum:#4a2e4d;--lt-brass:#c9a13b;--lt-gray:#9aa0a6}
@media (prefers-color-scheme:dark){
:root:not([data-theme=light]) .lockup{--lt-plum:#b98bbd;--lt-brass:#e3ba4e}
}
:root[data-theme=dark] .lockup{--lt-plum:#b98bbd;--lt-brass:#e3ba4e}
.lockup .lt{opacity:0;fill:var(--lt-plum);transition:opacity .2s ease-in-out}
.lockup .lt.on{opacity:1}
@media (prefers-reduced-motion:reduce){
.lockup .lt{display:none}
}
.nav .sp{flex:1}
.nav .acts{align-items:center;gap:8px;display:flex}
.nav .acts .ghost{font-weight:500}
.hero{background:var(--accent);color:var(--on-accent);--nav-h:64px;--hero-pt:clamp(32px,4.5vh,56px);--hero-pb:clamp(32px,4.5vh,56px);--copy-w:540px;--art-left:calc(max(var(--gutter),(100% - var(--wrap))/2) + var(--copy-w) + 16px);min-height:min(calc(100svh - var(--nav-h)),836px);padding-top:var(--hero-pt);padding-bottom:var(--hero-pb);flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}
.hero .wrap{z-index:1;position:relative}
.hero .copy{max-width:var(--copy-w)}
.hero h1{max-width:12ch;color:var(--on-accent);font-size:clamp(2.5rem,min(1.5rem + 3.2vw,1.75rem + 4.6vh),4.25rem)}
.hero .lede{max-width:none;color:var(--on-accent-2);margin-top:18px;font-size:clamp(1.0625rem,1rem + .3vw,1.1875rem)}
.cta{flex-wrap:wrap;gap:12px;margin-top:40px;display:flex}
.fine{color:var(--soft);margin-top:18px;font-size:.875rem}
.hero ::selection{color:#fff;background:#ffffff47}
.hero .connect{max-width:var(--copy-w);--bar:#fff;--bar-ink:#16181b;--bar-soft:#6b7178;--bar-brass:#c9a13b;--bar-brass-hover:#b8922f;margin-top:28px}
.hero .connect .field{background:var(--bar);border-radius:var(--r-panel);transition:box-shadow .15s var(--ease);gap:8px;padding:6px;display:flex;box-shadow:0 32px 64px -24px #00000080,0 2px 6px #0000002e}
.hero .connect .field:focus-within{box-shadow:0 32px 64px -24px #00000080,0 2px 6px #0000002e,0 0 0 2px #ffffff8c}
.hero .connect input{min-width:0;height:48px;color:var(--bar-ink);font:inherit;caret-color:var(--bar-ink);color-scheme:light;background:0 0;border:0;border-radius:8px;flex:1;padding:0 14px;font-size:1rem}
.hero .connect input::placeholder{color:var(--bar-soft)}
.hero .connect input:focus{outline:0}
.hero .connect input::selection{color:var(--bar-ink);background:#16181b2e}
.hero .connect .btn.brass{background:var(--bar-brass);height:48px;color:var(--bar-ink);flex:none}
.hero .connect .btn.brass:hover{background:var(--bar-brass-hover)}
.hero .connect .help{color:var(--on-accent-3);margin-top:14px;font-size:.875rem;line-height:1.5}
.hero .connect .help .how{margin-left:10px}
.hero .connect .how{vertical-align:bottom;color:var(--on-accent);text-underline-offset:.2em;transition:text-decoration-color .15s,gap .15s var(--ease);align-items:center;gap:5px;font-weight:500;text-decoration:underline 1px #fff6;display:inline-flex}
.hero .connect .how:hover{gap:8px;text-decoration-color:currentColor}
.hero .connect .how .icon{width:14px;height:14px}
.hero .connect .err{color:var(--on-accent);margin-top:12px;font-size:.875rem}
.hero .connect .err[hidden]{display:none}
.hero .connect .ready{border-top:1px solid #ffffff38;margin-top:16px;padding-top:14px}
.hero .connect .ready[hidden]{display:none}
.hero .connect .ready b{align-items:center;gap:8px;font-weight:500;display:flex}
.hero .connect .ready b i{background:#e3ba4e;border-radius:50%;flex:none;width:9px;height:9px}
.hero .connect .ready .url{font-family:var(--mono);color:var(--on-accent);text-underline-offset:.2em;overflow-wrap:anywhere;margin-top:6px;font-size:.8125rem;font-weight:500;text-decoration:underline;display:block}
.hero .connect .ready .note{color:var(--on-accent-3);margin-top:8px}
.hero .connect .ready .zip-step{color:var(--on-accent-2);margin-top:6px}
.hero .connect .btn.sec{background:var(--bar);color:var(--bar-ink);box-shadow:none}
.hero .connect .btn.sec:hover{background:#ece7ee}
.hero .connect .field{position:relative}
.hero .connect .field:after{content:"";border-radius:calc(var(--r-panel) + 4px);pointer-events:none;opacity:0;box-shadow:0 0 0 3px var(--brass),0 0 14px 2px var(--brass);position:absolute;inset:-4px}
.hero .connect .field.is-called:after{animation:2.1s ease-out connect-called}
@keyframes connect-called{0%{opacity:0}
7%,78%{opacity:1}
to{opacity:0}
}
.hero .art{top:0;bottom:0;left:var(--art-left);pointer-events:none;position:absolute;right:-20px}
.hero .stage{aspect-ratio:760/836;max-width:100%;height:100%;position:absolute;top:50%;right:0;transform:translateY(-50%)}
.hero .stage>svg{width:100%;height:100%;position:absolute;inset:0}
.hero .deck-pos{width:400px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.hero .deck{display:grid;position:relative}
.lev{animation:8s ease-in-out infinite lev}
@keyframes lev{0%,to{transform:translateY(0)}
50%{transform:translateY(-10px)}
}
.dcard{--c-ink:#16181b;--c-mu:#5a5f66;--c-so:#6b7178;--c-line:#16181b1a;--c-well:#fff;border-radius:var(--r-panel);box-shadow:inset 0 0 0 1px var(--c-line);color:var(--c-ink);font-family:var(--text);font-feature-settings:"ss01","cv11";text-align:left;transform-origin:50%;transition:transform .7s var(--ease),background-color .7s var(--ease),box-shadow .7s var(--ease);background:#f8f6f8;grid-area:1/1;position:relative;overflow:hidden}
.dcard.is-front{z-index:3;transform:rotate(-4deg)}
.dcard.is-mid{z-index:2;background:#ffffff29;transform:rotate(-9deg);box-shadow:inset 0 0 0 1px #ffffff47}
.dcard.is-back{z-index:1;background:#ffffff1a;transform:rotate(-14deg);box-shadow:inset 0 0 0 1px #ffffff38}
.dcard.is-away{background:#ffffff4d;transition-duration:.35s;transform:rotate(-4deg)translateY(-14px)scale(1.02);box-shadow:inset 0 0 0 1px #ffffff4d}
.dcard .body,.dcard .bar{transition:opacity .3s var(--ease)}
.dcard:not(.is-front) .body,.dcard.is-away .body,.dcard:not(.is-front) .bar,.dcard.is-away .bar{opacity:0;transition-duration:.2s}
.dcard .bar{border-bottom:1px solid var(--c-line);background:#16181b09;justify-content:center;align-items:center;padding:7px 16px;display:flex;position:relative}
.dcard .bar .dots{gap:6px;display:flex;position:absolute;top:50%;left:16px;transform:translateY(-50%)}
.dcard .bar .dots i{background:#16181b1f;border-radius:50%;width:8px;height:8px}
.dcard .bar .addr{background:var(--c-well);height:24px;box-shadow:inset 0 0 0 1px var(--c-line);font-family:var(--mono);color:var(--c-mu);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12px;display:inline-flex}
.dcard .bar .addr svg{width:11px;height:11px;stroke:var(--c-so);fill:none;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}
.dcard .bar .app{color:var(--c-mu);font-size:12.5px;font-weight:500;line-height:24px}
.dcard .body{padding:18px 22px 20px}
.dcard .prompt{align-items:flex-start;gap:10px;display:flex}
.dcard .prompt .av{background:var(--c-well);letter-spacing:.01em;width:28px;height:28px;color:var(--c-mu);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid;box-shadow:inset 0 0 0 1px #16181b24}
.dcard .prompt .txt{color:var(--c-ink);letter-spacing:-.005em;min-height:calc(2.8em + 4px);padding-top:4px;font-size:14.5px;font-weight:500;line-height:1.4}
.dcard .tools{grid-template-columns:minmax(0,1fr);gap:6px;margin:16px 0 0;padding:0;list-style:none;display:grid}
.dcard .tools li{height:26px;font-family:var(--mono);color:var(--c-mu);opacity:0;background:#16181b0a;border-radius:8px;align-items:center;gap:10px;padding:0 10px 0 8px;font-size:12px;line-height:1;display:flex;transform:translateY(6px)}
.dcard .tools li.is-on{opacity:1;transition:opacity .3s var(--ease),transform .3s var(--ease);transform:none}
.dcard .tools li .mark{flex:none;width:15px;height:15px}
.dcard .tools li .mark .lit{opacity:0;fill:var(--accent)}
.dcard .tools li .mark .lit:nth-of-type(2){--d:.15s}
.dcard .tools li .mark .lit:nth-of-type(3){--d:.3s}
.dcard .tools li.is-working .mark .lit{animation:.75s ease-in-out infinite litq;animation-delay:var(--d,0s)}
@keyframes litq{0%,to{opacity:0}
40%{opacity:1}
}
.dcard .tools li .lbl{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}
.dcard .tools li .st{color:var(--c-so);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}
.dcard .tools li .st svg{width:12px;height:12px;stroke:var(--accent);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;display:none}
.dcard .tools li .st:before{content:"Working"}
.dcard .tools li.is-done .st:before{content:"Done"}
.dcard .tools li.is-done .st{color:var(--c-ink)}
.dcard .tools li.is-done .st svg{display:block}
.dcard .reply{border-top:1px solid var(--c-line);min-height:4.35em;color:var(--c-ink);opacity:0;margin:14px 0 0;padding-top:12px;font-size:14px;line-height:1.45;transform:translateY(6px)}
.dcard .reply.is-on{opacity:1;transition:opacity .42s var(--ease),transform .42s var(--ease);transform:none}
.dcard .num{font-variant-numeric:tabular-nums}
.orbits,.orbit{pointer-events:none}
.orbit .ring{fill:none;stroke:var(--ol);stroke-width:var(--osw,1)}
.orbit .r1{stroke-opacity:var(--oo1)}
.orbit .r2{stroke-opacity:var(--oo2)}
.orbit .r3{stroke-opacity:var(--oo3)}
.orbit .r4{stroke-opacity:var(--oo4)}
.orbit .dash{stroke-dasharray:2 7;stroke-linecap:round}
.orbit .body{fill:var(--ob);fill-opacity:var(--obo)}
.orbit .b-brass{fill:var(--obr);fill-opacity:.92}
.orbit .bring{fill:none;stroke:var(--ob);stroke-opacity:.6;stroke-width:1px}
.orbit .halo{fill:var(--ob);fill-opacity:.1}
.orbit .core{fill:var(--oc);fill-opacity:var(--oco)}
.orbit .core2{fill:var(--oc);fill-opacity:var(--oc2o)}
.spin{animation:spin calc(var(--T,60s)*var(--Tm,1)) linear infinite;animation-delay:var(--d,0s)}
.dspin{animation:spin calc(var(--T,200s)*var(--Tm,1)) linear infinite}
.orbits.is-off .spin,.orbits.is-off .dspin{animation-play-state:paused}
@keyframes spin{to{transform:rotate(360deg)}
}
.on-plum{--ol:#e3d3e4;--ob:#f3eaf4;--oc:#f3eaf4;--obr:#e3ba4e;--oo1:.36;--oo2:.28;--oo3:.22;--oo4:.16;--obo:.92;--oco:.9;--oc2o:.08}
.on-page{--ol:var(--accent-fg);--ob:var(--accent-fg);--oc:var(--accent-fg);--obr:var(--brass);--oo1:.26;--oo2:.2;--oo3:.15;--oo4:.11;--obo:.8;--oco:.72;--oc2o:.06}
@media (prefers-color-scheme:dark){
:root:not([data-theme=light]) .on-page{--oo1:.32;--oo2:.24;--oo3:.18;--oo4:.13;--obo:.86;--oco:.8;--oc2o:.08}
}
:root[data-theme=dark] .on-page{--oo1:.32;--oo2:.24;--oo3:.18;--oo4:.13;--obo:.86;--oco:.8;--oc2o:.08}
.hero .orb-a{transform:translate(96px,92px)}
.hero .orb-b{transform:translate(100px,726px)scale(.72)}
.start{background:var(--panel);border-radius:var(--r-panel);box-shadow:var(--shadow),inset 0 0 0 1px var(--line);padding:32px}
.start h2{letter-spacing:-.02em;font-size:1.5rem;line-height:1.15}
.start>p{color:var(--muted);margin-top:10px}
.start form{margin-top:24px}
.start label{margin-bottom:8px;font-size:.9375rem;font-weight:500;display:block}
.start .field{gap:10px;display:flex}
.start input{border-radius:var(--r-control);background:var(--well);min-width:0;height:48px;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink);font:inherit;caret-color:var(--ink);border:0;flex:1;padding:0 14px;font-size:1rem;transition:box-shadow .15s}
.start input::placeholder{color:var(--soft)}
.start input:focus{box-shadow:inset 0 0 0 1px var(--line-3)}
.start input:focus:not(:focus-visible){outline:0}
.start input:focus-visible{outline:2px solid var(--brass);outline-offset:2px;border-radius:var(--r-control)}
.start input[aria-invalid=true]{box-shadow:inset 0 0 0 1px var(--line-3)}
.start .btn{flex:none}
.start .help{color:var(--soft);margin-top:10px;font-size:.875rem}
.start .err{color:var(--ink);margin-top:10px;font-size:.875rem}
.start .err[hidden]{display:none}
.start .ready{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}
.start .ready[hidden]{display:none}
.start .ready b{align-items:center;gap:8px;font-weight:500;display:flex}
.start .ready b i{background:var(--brass);border-radius:50%;flex:none;width:9px;height:9px}
.start .ready .url{font-family:var(--mono);color:var(--ink);text-underline-offset:.2em;overflow-wrap:anywhere;margin-top:6px;font-size:.8125rem;font-weight:500;text-decoration:underline;display:block}
.ready .url span{text-decoration:inherit;display:inline-block}
.start .ready .note{margin-top:8px}
.start .ready .zip-step{color:var(--muted);margin-top:6px}
.start>a.btn.sec{background:var(--panel);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2);margin-top:16px}
.start>a.btn.sec:hover{background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line-3)}
.ready .go{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:10px;display:flex}
.ready .go .url{flex:14em;min-width:0;margin-top:0}
.start .alt{border-top:1px solid var(--line);color:var(--muted);margin-top:22px;padding-top:16px;font-size:.875rem}
.start .alt a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-3);text-underline-offset:.2em;font-weight:500}
.start .alt a:hover{text-decoration-color:currentColor}
.seq{animation:settle .42s var(--ease) both;animation-delay:calc(var(--i,0)*90ms)}
@keyframes settle{0%{opacity:0;transform:translateY(6px)}
to{opacity:1;transform:none}
}
section{scroll-margin-top:72px}
.band{padding-top:clamp(96px,8.9vw,128px);padding-bottom:clamp(96px,8.9vw,128px)}
.rule{border:0;border-top:1px solid var(--line);margin:0}
.band.short{padding-top:clamp(48px,4.5vw,64px);padding-bottom:clamp(48px,4.5vw,64px)}
.band.tall{padding-top:clamp(112px,11vw,160px);padding-bottom:clamp(112px,11vw,160px)}
.sec-head{text-align:center;max-width:760px;margin-inline:auto}
.sec-head .lede{margin-top:16px}
.sec-head.left{text-align:left;margin-inline:0}
.after-head{margin-top:var(--head-gap)}
.card{background:var(--panel);border-radius:var(--r-panel);padding:var(--card-pad);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s var(--ease)}
.card:hover{box-shadow:inset 0 0 0 1px var(--line-3)}
.il{width:100%;height:auto;font-family:var(--text);font-feature-settings:"ss01","cv11";display:block}
.il .c{fill:var(--well);stroke:var(--line-2)}
.il .cb{fill:var(--panel);stroke:var(--line-2)}
.il .c2{fill:var(--panel-2)}
.il .hs{fill:var(--well);stroke:var(--ink)}
.il .ink{fill:var(--ink)}
.il .mu{fill:var(--muted)}
.il .so{fill:var(--soft)}
.il .acc{fill:var(--accent-fg)}
.il .accs{fill:var(--accent-soft)}
.il .ln{stroke:var(--line-2)}
.il .acl{stroke:var(--accent-fg)}
.il .onacc{stroke:var(--bg)}
.il .mono{font-family:var(--mono)}
.maker p+p{margin-top:16px}
.maker .lede{color:var(--muted)}
.steps{gap:var(--card-gap);grid-template-columns:repeat(3,1fr);display:grid}
.step{text-align:center}
.step .il{max-width:240px;margin:0 auto 22px}
.steps+.note{text-align:center;margin-top:24px}
.step .n{background:var(--bg);width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--line-2);font-family:var(--mono);color:var(--ink);border-radius:50%;place-items:center;margin:0 auto 18px;font-size:.9375rem;font-weight:500;display:grid}
.step h3{margin-bottom:8px}
.step p{color:var(--muted)}
.jobs .grid{gap:var(--card-gap);grid-template-columns:1fr 1fr;display:grid}
.job{align-items:flex-start;gap:18px;display:flex}
.job>.icon{width:24px;height:24px;color:var(--accent-fg);margin-top:2px}
.job h3{letter-spacing:-.01em;margin-bottom:6px;font-size:1.125rem}
.job p{color:var(--muted)}
.job .ask{border-top:1px solid var(--line);color:var(--ink);align-items:flex-start;gap:12px;margin-top:16px;padding-top:14px;font-size:.9375rem;line-height:1.45;display:flex}
.av{background:var(--well);width:28px;height:28px;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--muted);letter-spacing:.01em;border-radius:50%;flex:none;place-items:center;font-size:.75rem;font-weight:600;display:grid}
.jobs .head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;display:flex}
.jobs .head .more{white-space:nowrap;margin-bottom:6px}
.jobs .note{margin-top:32px}
.safety .duo{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(32px,5vw,64px);display:grid}
.safety .fig{margin:0}
.safety .fig .il{max-width:420px;margin-inline:auto}
.safety .fig figcaption{text-align:center;margin-top:14px}
.guard{grid-template-columns:1fr;gap:20px;display:grid}
.guard li{color:var(--ink);align-items:flex-start;gap:12px;display:flex}
.guard li .icon{width:18px;height:18px;color:var(--accent-fg);margin-top:3px}
.guard li span{color:var(--muted)}
.guard li span b{color:var(--ink);font-weight:500}
.safety .note{text-align:center;margin-top:40px;max-width:60ch;margin-inline:auto}
.plans{gap:var(--card-gap);grid-template-columns:repeat(3,1fr);display:grid}
.plan{flex-direction:column;padding:32px;display:flex}
.plan:hover{box-shadow:inset 0 0 0 1px var(--line)}
.plan.hi{box-shadow:inset 0 0 0 1px var(--accent-fg)}
.plan h3{letter-spacing:0;font-size:1.125rem}
.plan .amt{align-items:baseline;gap:8px;margin-top:16px;display:flex}
.plan .amt b{letter-spacing:-.03em;font-size:2.75rem;font-weight:600;line-height:1}
.plan .amt span{color:var(--muted);font-size:.9375rem}
.plan .calls{margin-top:14px;font-size:1.0625rem;font-weight:500}
.plan .calls small{color:var(--muted);margin-top:4px;font-size:.875rem;font-weight:400;display:block}
.plan ul{color:var(--muted);gap:10px;margin-top:22px;font-size:.9375rem;display:grid}
.plan li{align-items:flex-start;gap:10px;display:flex}
.plan li .icon{width:16px;height:16px;color:var(--accent-fg);margin-top:3px}
.plan .btn,.plan .wp-block-button__link{width:100%;margin-top:28px}
.pricing .note{text-align:center;margin-top:32px}
.faq details:first-child{border-top:1px solid var(--line-2)}
.faq details{border-bottom:1px solid var(--line-2)}
.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:1.125rem;font-weight:500;list-style:none;display:flex}
.faq summary::-webkit-details-marker{display:none}
.faq summary .icon{width:18px;height:18px;color:var(--soft);transition:transform .25s var(--ease)}
.faq details[open] summary .icon{transform:rotate(45deg)}
.faq details p{color:var(--muted);max-width:68ch;padding:0 0 24px}
.faq summary:hover{color:var(--ink)}
.guides{gap:var(--card-gap);grid-template-columns:repeat(3,1fr);display:grid}
.guide{flex-direction:column;display:flex}
.guide h3{letter-spacing:-.01em;margin-bottom:8px;font-size:1.125rem}
.guide p:not(.morep){color:var(--muted);flex:1}
.guide .more{margin-top:20px}
.close-cta{text-align:center;background:var(--accent);color:var(--on-accent);position:relative;overflow:hidden}
.close-cta .orbits{width:100%;height:100%;position:absolute;inset:0}
.close-cta .orbit.big{--oo1:.3;--oo2:.22;--oo3:.18;--oo4:.13}
.close-cta .wrap{z-index:1;position:relative}
.close-cta h2,.close-cta .mark{color:var(--on-accent)}
.close-cta .lede{color:var(--on-accent-2)}
.close-cta .fine{color:var(--on-accent-3)}
.close-cta ::selection{color:#fff;background:#ffffff47}
.close-cta .mark{width:40px;height:40px;margin:0 auto 32px}
.close-cta h2{font-size:var(--fs-h2-big);letter-spacing:-.032em;line-height:1.02}
.close-cta .lede{max-width:560px;margin:18px auto 0}
.close-cta .cta{justify-content:center;margin-top:36px}
.close-cta .fine{margin-top:20px}
@media (width<=1100px){
.hero{--copy-w:480px}
.hero .deck-pos{width:360px}
.hero .orb-a,.hero .orb-b{display:none}
}
@media (width<=960px){
.hero{--hero-pt:clamp(40px,5vh,56px);--hero-pb:40px;min-height:0;display:block}
.hero .copy{max-width:600px}
.hero h1{max-width:14ch}
.hero .connect{max-width:600px}
.hero .art{height:560px;margin-top:40px;position:relative;inset:auto;overflow:hidden}
.hero .stage{width:760px;max-width:none;height:auto;top:50%;left:50%;right:auto;transform:translate(-50%,-50%)}
.hero .deck-pos{width:400px}
.hero .orb-a{display:inline;transform:translate(64px,170px)scale(.8)}
.hero .orb-b{display:none}
.close-cta .orbit.big{transform:translate(720px,322px)scale(1.15)}
.safety .duo{grid-template-columns:1fr;gap:40px}
.steps,.plans,.guides,.jobs .grid,.guard{grid-template-columns:1fr}
}
@media (width<=760px){
:root{--card-pad:24px}
.hero{--hero-pt:36px;--hero-pb:36px}
.hero h1{max-width:none}
.hero .lede{margin-top:16px;font-size:1.0625rem}
.hero .connect{margin-top:24px}
.hero .connect .field{box-shadow:none;background:0 0;flex-direction:column;gap:10px;padding:0}
.hero .connect .field:focus-within{box-shadow:none}
.hero .connect input{background:var(--bar);flex:none;height:52px;box-shadow:0 32px 64px -24px #00000080,0 2px 6px #0000002e}
.hero .connect input:focus-visible{outline-offset:2px;outline:2px solid #fff}
.hero .connect .btn.brass{width:100%;height:52px}
.hero .connect .help .how{margin-top:4px;margin-left:0;display:flex}
.hero .art{height:500px;margin-top:36px}
.hero .stage{width:600px}
.hero .deck-pos{width:min(400px,100vw - 48px)}
.hero .orbit.big{transform:translate(400px,408px)scale(.9)}
.hero .orb-a{display:none}
.cta{margin-top:32px}
.cta .btn,.cta .wp-block-button__link{width:100%}
.works{gap:10px 14px;margin-top:32px}
.works>span{flex-basis:100%;margin-right:0}
.start{padding:24px}
.start .field{flex-direction:column}
.start input{flex:none}
.start .btn{width:100%}
.faq summary{font-size:1.0625rem}
.close-cta .cta .btn,.close-cta .cta .wp-block-button__link{width:100%}
.close-cta .orbit.big{--oo1:.16;--oo2:.12;--oo3:.1;--oo4:.08}
}
@media (width<=420px){
.dcard .tools li .st:before,.dcard .tools li.is-done .st:before{content:none}
}
@media (width<=380px){
.nav .acts .brass{display:none}
}
[hidden]{display:none}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
.seq,.lev,.lit{animation:none}
.hero .connect .field.is-called:after{animation-duration:2.1s!important}
.lit{opacity:0}
.spin,.dspin{animation-play-state:paused;animation-duration:var(--T,60s)!important;animation-iteration-count:infinite!important}
}

/* ==== site chrome: astro/site/src/styles/site.css (compiled, retargeted) ==== */
.lockup{align-items:center}
.menu{align-items:center;gap:4px;display:flex}
.menu>a,.menu .dd>button{height:36px;color:var(--muted);border-radius:6px;align-items:center;gap:5px;padding:0 12px;font-size:.9375rem;font-weight:500;transition:color .15s,background-color .15s;display:inline-flex}
.menu>a:hover,.menu .dd>button:hover,.menu .dd.is-open>button{color:var(--ink);background:var(--panel)}
.menu a[aria-current=page],.menu .dd.is-current>button{color:var(--ink)}
.menu .dd>button .icon{width:14px;height:14px;color:var(--soft);transition:transform .2s var(--ease)}
.menu .dd.is-open>button .icon{transform:rotate(180deg)}
.menu .dd{position:relative}
.menu .panel{background:var(--bg);border-radius:var(--r-panel);box-shadow:var(--shadow),inset 0 0 0 1px var(--line-2);z-index:60;opacity:0;visibility:hidden;transition:opacity .18s var(--ease),transform .18s var(--ease),visibility 0s .18s;padding:20px;position:absolute;top:calc(100% + 10px);left:0;transform:translateY(-4px)}
.menu .dd.is-open .panel{opacity:1;visibility:visible;transition:opacity .18s var(--ease),transform .18s var(--ease),visibility 0s;transform:none}
.menu .panel.mega{grid-template-columns:1fr 1fr;gap:20px;width:680px;display:grid}
.menu .panel.single{width:320px}
.menu .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);padding:8px 12px 6px;font-size:.6875rem;font-weight:600;display:block}
.menu .lbl+.lbl,.menu ul+.lbl{margin-top:10px}
.menu .box{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);border-radius:12px;padding:8px}
.menu .box .lbl{color:var(--accent-fg)}
.mi{border-radius:8px;padding:9px 12px;transition:background-color .15s;display:block}
.mi:hover{background:var(--panel-2)}
.menu .panel:not(.mega) .mi:hover,.menu .panel .col .mi:hover{background:var(--panel)}
.mi b{color:var(--ink);font-size:.9375rem;font-weight:500;line-height:1.3;display:block}
.mi span{color:var(--soft);margin-top:2px;font-size:.8125rem;line-height:1.4;display:block}
.menu .box .more{margin:10px 12px 6px;font-size:.9375rem}
.nav .burger,.mnav{display:none}
@media (width<=1024px){
.menu{display:none}
.lockup{margin-right:0}
.nav .acts .ghost{display:none}
.nav .burger{border-radius:var(--r-control);width:40px;height:40px;color:var(--ink);justify-content:center;align-items:center;display:inline-flex}
.nav .burger .icon{width:22px;height:22px}
.nav .burger:hover{background:var(--panel)}
.mnav{background:var(--bg);border-top:1px solid var(--line);z-index:55;-webkit-overflow-scrolling:touch;display:block;position:fixed;inset:64px 0 0;overflow:auto}
.mnav[hidden]{display:none}
.mnav .in{padding:16px var(--gutter) 40px}
.mnav .btn{width:100%;margin-bottom:8px}
.mnav .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);padding:22px 0 6px;font-size:.6875rem;font-weight:600;display:block}
.mnav ul{display:grid}
.mnav li a{border-bottom:1px solid var(--line);align-items:center;min-height:48px;font-size:1.0625rem;font-weight:500;display:flex}
.mnav .tail{margin-top:22px;display:grid}
.mnav .tail a{border-bottom:1px solid var(--line);align-items:center;min-height:48px;font-size:1.0625rem;font-weight:500;display:flex}
.no-js .mnav{border-top:0;position:static}
body.menu-open{overflow:hidden}
}
footer.site{border-top:1px solid var(--line-2);padding:72px 0 40px;font-size:.9375rem}
footer.site .top{grid-template-columns:repeat(12,1fr);gap:40px 32px;display:grid}
footer.site .brand{grid-column:span 4}
footer.site .col{grid-column:span 2}
footer.site .brand p{color:var(--muted);max-width:32ch;margin-top:16px}
footer.site .brand .btn,footer.site .brand .wp-block-button__link{margin-top:24px}
footer.site h4{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);margin-bottom:18px;font-size:.6875rem;font-weight:600}
footer.site .col ul{gap:14px;display:grid}
footer.site .col a{color:var(--muted);align-items:center;gap:4px;transition:color .15s;display:inline-flex}
footer.site .col a:hover{color:var(--ink)}
footer.site .col a .icon{width:12px;height:12px;color:var(--soft)}
footer.site .family{border-top:1px solid var(--line);color:var(--muted);margin-top:56px;padding-top:24px;font-size:.875rem}
footer.site .family a{color:var(--ink);font-weight:500}
footer.site .bottom{border-top:1px solid var(--line);color:var(--soft);flex-wrap:wrap;justify-content:space-between;gap:16px 32px;margin-top:24px;padding-top:24px;font-size:.8125rem;display:flex}
footer.site .bottom .legal a{color:var(--soft)}
footer.site .bottom .legal a:hover{color:var(--ink)}
footer.site .bottom .legal .links{white-space:nowrap}
footer.site .bottom .tm{text-align:right;max-width:62ch}
@media (width<=1100px){
footer.site .top{grid-template-columns:repeat(4,1fr)}
footer.site .brand{grid-column:1/-1}
footer.site .col{grid-column:span 1}
}
@media (width<=760px){
footer.site{padding-top:56px}
footer.site .top{grid-template-columns:1fr 1fr;gap:32px}
footer.site .bottom{flex-direction:column}
footer.site .bottom .tm{text-align:left}
footer.site .bottom .legal .links{display:block}
footer.site .bottom .legal .sep{display:none}
}
@media (width<=360px){
footer.site .top{grid-template-columns:1fr}
}
.phero{background:var(--accent);color:var(--on-accent);padding-top:clamp(64px,7vw,104px);padding-bottom:clamp(64px,7vw,104px);position:relative;overflow:hidden}
.phero.tall{padding-top:clamp(80px,9vw,128px);padding-bottom:clamp(80px,9vw,128px)}
.phero.short{padding-top:clamp(48px,5vw,72px);padding-bottom:clamp(48px,5vw,72px)}
.phero .orbits{width:100%;height:100%;position:absolute;inset:0}
.phero .wrap{z-index:1;position:relative}
.phero h1{color:var(--on-accent);max-width:16ch;font-size:clamp(2.25rem,1.4rem + 2.6vw,3.75rem)}
.phero.center .copy{text-align:center;margin-inline:auto}
.phero.center h1,.phero.center .lede{margin-inline:auto}
.phero.center .cta{justify-content:center}
.phero .lede{color:var(--on-accent-2);max-width:34em;margin-top:18px}
.phero .cta{margin-top:32px}
.phero .fine{color:var(--on-accent-3)}
.phero .badge{background:var(--on-accent-fill);height:30px;box-shadow:inset 0 0 0 1px var(--on-accent-ring);border-radius:999px;align-items:center;gap:8px;margin-bottom:22px;padding:0 12px 0 10px;font-size:.8125rem;font-weight:500;display:inline-flex}
.phero .badge:before{content:"";background:#e3ba4e;border-radius:50%;width:7px;height:7px}
.phero .meta{color:var(--on-accent-3);margin-top:18px;font-size:.875rem}
.phero ::selection{color:#fff;background:#ffffff47}
.phero .btn.sec,.phero .is-style-sec>.wp-block-button__link{background:var(--on-accent-fill);color:var(--on-accent);box-shadow:inset 0 0 0 1px var(--on-accent-ring)}
.phero .btn.sec:hover,.phero .is-style-sec>.wp-block-button__link:hover{background:#ffffff38}
.phero .crumbs a,.phero .crumbs span{color:var(--on-accent-2)}
.phero .crumbs a:hover{color:var(--on-accent)}
.phero .crumbs .sep{color:var(--on-accent-3)}
.phero.split .grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(40px,5vw,72px);display:grid}
@media (width<=960px){
.phero.split .grid{grid-template-columns:1fr;gap:40px}
}
@media (width<=760px){
.phero .cta .btn,.phero .cta .wp-block-button__link{width:100%}
}
.phero .start{color:var(--ink);box-shadow:var(--shadow),inset 0 0 0 1px var(--line)}
.phero .start .note{color:var(--soft)}
.orbzone{position:relative;overflow-x:clip}
.orbzone>.wrap{z-index:1;position:relative}
.oz-wide{--half:576px}
.oz-mid{--half:448px}
.oz-narrow{--half:384px}
.ospot{z-index:0;pointer-events:none;--m:calc(50% - var(--half,576px));width:min(var(--w,240px),calc(var(--m) - 32px));aspect-ratio:1;height:auto;position:absolute;top:0}
.ospot.left{left:calc(var(--m)/2);transform:translate(-50%)}
.ospot.right{right:calc(var(--m)/2);transform:translate(50%)}
.ospot.inline{width:var(--w,124px);position:static;transform:none}
@media (width<=1339px){
.oz-wide .ospot{display:none}
}
@media (width<=1099px){
.oz-mid .ospot{display:none}
}
@media (width<=1023px){
.ospot.left,.ospot.right{display:none}
}
.crumbs{color:var(--soft);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.8125rem;font-weight:500;display:flex}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--ink)}
.crumbs .sep{color:var(--line-3)}
.crumbs [aria-current]{color:var(--ink)}
.fgrid{gap:var(--card-gap);display:grid}
.fgrid.c2{grid-template-columns:repeat(2,1fr)}
.fgrid.c3{grid-template-columns:repeat(3,1fr)}
.fgrid.c4{grid-template-columns:repeat(4,1fr)}
.fcard{flex-direction:column;scroll-margin-top:88px;display:flex}
.fcard>.icon{width:24px;height:24px;color:var(--accent-fg);margin-bottom:16px}
.fcard h3{letter-spacing:-.01em;margin-bottom:8px;font-size:1.125rem}
.fcard p{color:var(--muted)}
.fcard .ask{border-top:1px solid var(--line);color:var(--ink);align-items:flex-start;gap:12px;margin-top:16px;padding-top:14px;font-size:.9375rem;line-height:1.45;display:flex}
.fcard .more{margin-top:auto;padding-top:20px}
.fcard .tag{color:var(--soft);align-items:center;gap:8px;margin-top:14px;font-size:.75rem;display:inline-flex}
a.fcard{color:inherit}
a.fcard:hover{box-shadow:inset 0 0 0 1px var(--line-3)}
@media (width<=960px){
.fgrid.c3,.fgrid.c4{grid-template-columns:1fr 1fr}
}
@media (width<=760px){
.fgrid.c2,.fgrid.c3,.fgrid.c4{grid-template-columns:1fr}
}
.duo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,64px);display:grid}
.duo.rev>:first-child{order:2}
.duo h3{font-size:var(--fs-h2);letter-spacing:-.03em;font-weight:600;line-height:1.08}
.duo .lede{margin-top:16px}
.duo ul.ticks{gap:12px;margin-top:22px;display:grid}
.duo ul.ticks li{color:var(--muted);align-items:flex-start;gap:12px;display:flex}
.duo ul.ticks li .icon{width:18px;height:18px;color:var(--accent-fg);margin-top:3px}
.duo ul.ticks li b{color:var(--ink);font-weight:500}
@media (width<=960px){
.duo{grid-template-columns:1fr;gap:40px}
.duo.rev>:first-child{order:0}
}
.xchg{background:var(--panel);border-radius:var(--r-panel);box-shadow:inset 0 0 0 1px var(--line);padding:22px 24px;font-size:.9375rem}
.xchg .q{align-items:flex-start;gap:10px;font-weight:500;display:flex}
.xchg .a{border-top:1px solid var(--line);color:var(--muted);margin-top:14px;padding-top:12px;line-height:1.5}
.xchg .a b{color:var(--ink);font-weight:500}
.xchg+.note{margin-top:12px}
.callout{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);border-radius:12px;align-items:flex-start;gap:14px;padding:18px 20px;font-size:.9375rem;display:flex}
.callout .icon{width:18px;height:18px;color:var(--accent-fg);margin-top:2px}
.callout b{color:var(--ink);margin-bottom:2px;font-weight:500;display:block}
.callout.plum{background:var(--accent-soft);box-shadow:none}
.callout a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-3);text-underline-offset:.2em;font-weight:500}
.callout a:hover{text-decoration-color:currentColor}
.callout.todo{box-shadow:inset 0 0 0 1px var(--line-3);border-style:dashed}
.strip{border-radius:var(--r-panel);background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;display:flex}
.strip p:not(.morep){color:var(--muted)}
.strip p b{color:var(--ink);font-weight:500}
.tbl table{border-collapse:collapse;text-align:left;width:100%;font-size:.9375rem}
.tbl th{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);border-bottom:1px solid var(--line-2);padding:0 14px 12px;font-size:.6875rem;font-weight:600}
.tbl td{border-bottom:1px solid var(--line);vertical-align:top;color:var(--muted);padding:14px}
.tbl td:first-child{color:var(--ink);font-weight:500}
.tbl td code{color:var(--ink);font-size:.8125rem}
.wp-block-table{-webkit-overflow-scrolling:touch;overflow-x:auto}
.tbl .yes{color:var(--ink)}
.tbl caption{text-align:left;color:var(--soft);padding-bottom:12px;font-size:.8125rem}
@media (width>=641px){
.tbl.alt td:first-child,.tbl.alt td:last-child{width:18%}
.tbl.side td:first-child{width:20%}
.tbl.side th:nth-child(2),.tbl.side td:nth-child(2){color:var(--ink);background:var(--panel)}
}
.walk{counter-reset:w;gap:0;display:grid}
.walk li{border-bottom:1px solid var(--line);grid-template-columns:40px 1fr;gap:20px;padding:22px 0;display:grid}
.walk li:first-child{border-top:1px solid var(--line-2)}
.walk li .n{background:var(--bg);width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--line-2);font-family:var(--mono);border-radius:50%;place-items:center;font-size:.9375rem;font-weight:500;display:grid}
.walk h3{letter-spacing:-.01em;margin-bottom:6px;font-size:1.125rem}
.walk p{color:var(--muted)}
.chips{flex-wrap:wrap;gap:8px;display:flex}
.chips a,.chips span{background:var(--panel);height:34px;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);border-radius:999px;align-items:center;padding:0 14px;font-size:.875rem;font-weight:500;transition:box-shadow .15s,color .15s;display:inline-flex}
.chips a:hover{color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-3)}
.chips [aria-current]{color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.search{border-radius:var(--r-control);background:var(--well);height:52px;box-shadow:inset 0 0 0 1px var(--line-2);align-items:center;gap:10px;padding:0 8px 0 16px;display:flex}
.search:focus-within{box-shadow:inset 0 0 0 1px var(--line-3)}
.search .icon{width:18px;height:18px;color:var(--soft)}
.search input{min-width:0;height:100%;color:var(--ink);font:inherit;background:0 0;border:0;flex:1;font-size:1rem}
.search input:focus{outline:0}
.search input::placeholder{color:var(--soft)}
.search kbd{color:var(--soft);box-shadow:inset 0 0 0 1px var(--line-2);border-radius:6px;padding:3px 7px;font-size:.75rem}
.tools-row{gap:var(--card-gap);grid-template-columns:1.2fr .8fr;align-items:center;display:grid}
@media (width<=760px){
.tools-row{grid-template-columns:1fr}
}
.copyblk{border-radius:var(--r-control);background:var(--panel);box-shadow:inset 0 0 0 1px var(--line-2);align-items:center;gap:12px;padding:6px 6px 6px 16px;display:flex}
.copyblk code{min-width:0;color:var(--ink);white-space:nowrap;flex:1;font-size:.875rem;overflow-x:auto}
.copyblk .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);white-space:nowrap;font-size:.6875rem;font-weight:600}
.copyblk .btn,.copyblk .wp-block-button__link{flex:none}
.copyblk.multi{padding:18px 20px;display:block;position:relative}
.copyblk.multi pre{font-family:var(--mono);color:var(--ink);white-space:pre-wrap;margin:0;padding-right:88px;font-size:.875rem;line-height:1.55}
.copyblk.multi .btn,.copyblk.multi .wp-block-button__link{position:absolute;top:10px;right:10px}
.copyblk.multi code{white-space:pre-wrap;word-break:break-word;display:block;overflow:visible}
@media (width<=640px){
.copyblk:not(.multi){flex-wrap:wrap}
.copyblk:not(.multi) code{white-space:normal;overflow-wrap:anywhere;flex:100%;order:2;overflow:visible}
.copyblk:not(.multi) .btn,.copyblk:not(.multi) .wp-block-button__link{order:3}
.copyblk.multi pre{padding-right:0}
.copyblk.multi .btn,.copyblk.multi .wp-block-button__link{margin-top:12px;position:static}
}
.prose{color:var(--ink);font-size:1.0625rem;line-height:1.6}
.prose>*+*{margin-top:1.1em}
.prose h2{letter-spacing:-.025em;margin-top:2.2em;scroll-margin-top:88px;font-size:1.625rem;line-height:1.15}
.prose h3{letter-spacing:-.015em;margin-top:1.8em;scroll-margin-top:88px;font-size:1.25rem;line-height:1.25}
.prose h2+*,.prose h3+*{margin-top:.7em}
.prose p{text-wrap:pretty}
.prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-3);text-underline-offset:.2em;font-weight:500;text-decoration-thickness:1px}
.prose a:hover{text-decoration-color:currentColor}
.prose ul,.prose ol{gap:.45em;padding-left:1.4em;display:grid}
.prose ul{list-style:outside}
.prose ol{list-style:decimal}
.prose li::marker{color:var(--soft)}
.prose strong{font-weight:500}
.prose code{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);border-radius:5px;padding:.1em .4em;font-size:.875em}
.prose pre{border-radius:var(--r-control);background:var(--panel);box-shadow:inset 0 0 0 1px var(--line-2);padding:18px 20px;font-size:.875rem;line-height:1.55;overflow-x:auto}
.prose pre code{box-shadow:none;font-size:inherit;background:0 0;padding:0}
.prose blockquote{border-left:1px solid var(--line-3);color:var(--muted);padding:4px 0 4px 20px}
.prose hr{border:0;border-top:1px solid var(--line);margin:2.5em 0}
.prose img{border-radius:var(--r-panel);max-width:100%;height:auto;box-shadow:inset 0 0 0 1px var(--line)}
.prose figure figcaption{color:var(--soft);margin-top:10px;font-size:.8125rem}
.prose table{border-collapse:collapse;width:100%;font-size:.9375rem}
.prose th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--soft);border-bottom:1px solid var(--line-2);padding:0 12px 10px;font-size:.6875rem;font-weight:600}
.prose td{border-bottom:1px solid var(--line);vertical-align:top;color:var(--muted);padding:12px}
.prose td:first-child{color:var(--ink);font-weight:500}
.prose .todo{color:var(--soft);box-shadow:inset 0 0 0 1px var(--line-2);border-radius:6px;padding:2px 6px;font-size:.8125rem;font-style:normal;font-weight:500}
.prose kbd{box-shadow:inset 0 0 0 1px var(--line-2);border-radius:5px;padding:.1em .45em;font-size:.8125em}
.todo-mark{font-family:var(--mono);color:var(--soft);box-shadow:inset 0 0 0 1px var(--line-2);vertical-align:middle;border-radius:6px;align-items:center;gap:6px;padding:3px 8px;font-size:.75rem;display:inline-flex}
.article-head{padding-top:clamp(40px,5vw,64px)}
.article-head h1{letter-spacing:-.03em;max-width:20ch;font-size:clamp(2rem,1.3rem + 2vw,3rem);line-height:1.04}
.article-head .lede{max-width:60ch;margin-top:16px}
.article-head .crumbs{margin-bottom:22px}
.article-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:22px;font-size:.875rem;display:flex}
.article-meta .dot{color:var(--line-3)}
.article-body{margin-top:clamp(32px,4vw,48px)}
.article-foot{border-top:1px solid var(--line-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:clamp(48px,6vw,72px);padding-top:24px;display:flex}
.pn{gap:var(--card-gap);grid-template-columns:1fr 1fr;margin-top:clamp(40px,5vw,56px);display:grid}
.pn a{border-radius:var(--r-panel);background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s var(--ease);flex-direction:column;gap:6px;padding:20px 22px;display:flex}
.pn a:hover{box-shadow:inset 0 0 0 1px var(--line-3)}
.pn a small{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);font-size:.75rem;font-weight:600}
.pn a b{color:var(--ink);font-weight:500}
.pn a.next{text-align:right;align-items:flex-end}
@media (width<=760px){
.pn{grid-template-columns:1fr}
.pn a.next{text-align:left;align-items:flex-start}
}
.byline{align-items:center;gap:14px;display:flex}
.byline img{object-fit:cover;width:48px;height:48px;box-shadow:inset 0 0 0 1px var(--line-2);border-radius:50%}
.byline .who b{color:var(--ink);font-weight:500;display:block}
.byline .who span{color:var(--muted);font-size:.875rem;display:block}
.byline .who a{color:var(--ink)}
.author-card{border-radius:var(--r-panel);background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);align-items:flex-start;gap:20px;padding:24px;display:flex}
.author-card img{object-fit:cover;border-radius:50%;flex:none;width:72px;height:72px}
.author-card h3{letter-spacing:-.01em;font-size:1.125rem}
.author-card .role{color:var(--muted);margin-top:2px;font-size:.875rem}
.author-card p{color:var(--muted);margin-top:10px;font-size:.9375rem}
.author-head{align-items:center;gap:28px;display:flex}
.author-head img{object-fit:cover;width:112px;height:112px;box-shadow:inset 0 0 0 1px var(--line-2);border-radius:50%;flex:none}
@media (width<=760px){
.author-head{flex-direction:column;align-items:flex-start}
}
.docs{padding-top:clamp(32px,4vw,48px);padding-bottom:var(--band);grid-template-columns:232px minmax(0,1fr) 200px;align-items:start;gap:clamp(32px,4vw,64px);display:grid}
.docs .side{max-height:calc(100vh - 104px);font-size:.9375rem;position:sticky;top:88px;overflow:auto}
.docs .side .grp+.grp{margin-top:22px}
.docs .side .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);padding:0 10px 8px;font-size:.6875rem;font-weight:600;display:block}
.docs .side a{color:var(--muted);border-radius:6px;padding:7px 10px;transition:color .15s,background-color .15s;display:block}
.docs .side a:hover{color:var(--ink);background:var(--panel)}
.docs .side a[aria-current=page]{color:var(--ink);background:var(--panel);font-weight:500}
.docs .side summary{display:none}
.docs .side .ospot{margin:44px 0 0 10px}
.docs .toc{font-size:.875rem;position:sticky;top:88px}
.docs .toc .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);margin-bottom:10px;font-size:.6875rem;font-weight:600;display:block}
.docs .toc a{border-left:1px solid var(--line);color:var(--muted);padding:5px 0 5px 12px;transition:color .15s,border-color .15s;display:block}
.docs .toc a:hover{color:var(--ink)}
.docs .toc a.is-active{color:var(--ink);border-left-color:var(--ink)}
.docs .toc a.d3{padding-left:24px;font-size:.8125rem}
.docs .main .article-head{padding-top:0}
.docs .main .article-head h1{font-size:clamp(1.875rem,1.3rem + 1.6vw,2.625rem)}
@media (width<=1180px){
.docs{grid-template-columns:220px minmax(0,1fr)}
.docs .toc{display:none}
}
@media (width<=900px){
.docs{grid-template-columns:1fr;gap:32px}
.docs .side{max-height:none;position:static;overflow:visible}
.docs .side summary{cursor:pointer;border-radius:var(--r-control);background:var(--panel);height:48px;box-shadow:inset 0 0 0 1px var(--line-2);justify-content:space-between;align-items:center;padding:0 16px;font-weight:500;list-style:none;display:flex}
.docs .side summary::-webkit-details-marker{display:none}
.docs .side summary .icon{width:16px;height:16px;color:var(--soft);transition:transform .2s}
.docs .side details[open] summary .icon{transform:rotate(180deg)}
.docs .side .grps{padding:16px 4px 0}
.docs .side .ospot{display:none}
}
.dgrid{gap:var(--card-gap);grid-template-columns:repeat(3,1fr);display:grid}
.dcard2{color:inherit;flex-direction:column;gap:6px;display:flex}
.dcard2 h3{letter-spacing:-.01em;font-size:1.0625rem}
.dcard2 p{color:var(--muted);font-size:.9375rem}
.dcard2:hover{box-shadow:inset 0 0 0 1px var(--line-3)}
.dgroup+.dgroup{margin-top:56px}
.dgroup h2{letter-spacing:-.015em;margin-bottom:20px;font-size:1.25rem}
@media (width<=960px){
.dgrid{grid-template-columns:1fr 1fr}
}
@media (width<=640px){
.dgrid{grid-template-columns:1fr}
}
.pgrid{gap:var(--card-gap);grid-template-columns:repeat(3,1fr);display:grid}
.pcard{color:inherit;flex-direction:column;padding:0;display:flex;overflow:hidden}
.pcard:hover{box-shadow:inset 0 0 0 1px var(--line-3)}
.pcard .cover{aspect-ratio:16/9;background:var(--accent);position:relative;overflow:hidden}
.pcard .cover img{object-fit:cover;width:100%;height:100%}
.pcard .cover svg{width:100%;height:100%;position:absolute;inset:0}
.pcard .in{padding:var(--card-pad);flex-direction:column;flex:1;display:flex}
.pcard .kick{color:var(--soft);flex-wrap:wrap;align-items:center;gap:8px;font-size:.8125rem;display:flex}
.pcard .kick a{color:var(--muted);font-weight:500}
.pcard h2,.pcard h3{letter-spacing:-.015em;margin-top:12px;font-size:1.25rem;line-height:1.25}
.pcard p{color:var(--muted);flex:1;margin-top:10px;font-size:.9375rem}
.pcard .more{margin-top:18px}
.pager{margin-top:var(--head-gap);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding-top:24px;display:flex}
.pager .pg{color:var(--soft);font-size:.875rem}
@media (width<=960px){
.pgrid{grid-template-columns:1fr 1fr}
}
@media (width<=640px){
.pgrid{grid-template-columns:1fr}
}
.release{border-top:1px solid var(--line);grid-template-columns:200px 1fr;gap:32px;padding:40px 0;display:grid}
.release:first-of-type{border-top:0;padding-top:0}
.release .when{color:var(--muted);font-size:.9375rem}
.release .when b{font-family:var(--mono);color:var(--ink);margin-bottom:4px;font-size:1.0625rem;font-weight:500;display:block}
.release .when .tools{color:var(--soft);margin-top:10px;font-size:.8125rem;display:inline-block}
.release .prose ul{padding:0;list-style:none}
.release .prose li{align-items:flex-start;gap:12px;display:flex}
.release .prose li:before{content:attr(data-kind);letter-spacing:.08em;text-transform:uppercase;width:92px;color:var(--soft);flex:none;margin-top:.45em;font-size:.6875rem;font-weight:600}
@media (width<=760px){
.release{grid-template-columns:1fr;gap:16px}
}
.nf{text-align:center;padding:var(--band-tall) 0;position:relative;overflow:hidden}
.nf .nf-orbits{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}
.nf .wrap{z-index:1;position:relative}
@media (width<=760px){
.nf .nf-orbits .orbit:not(.big){display:none}
}
.nf .mark{width:40px;height:40px;color:var(--accent-fg);margin:0 auto 28px}
.nf h1{font-size:var(--fs-h2-big)}
.nf .lede{max-width:40em;margin:16px auto 0}
.nf .cta{justify-content:center}
.stack>*+*{margin-top:var(--card-gap)}
.mt-head{margin-top:var(--head-gap)}
.mt-32{margin-top:32px}
.mt-24{margin-top:24px}
.mt-16{margin-top:16px}
.mt-56{margin-top:56px}
.center{text-align:center}
.ticks{gap:12px;display:grid}
.ticks li{color:var(--muted);align-items:flex-start;gap:12px;display:flex}
.ticks li .icon{width:18px;height:18px;color:var(--accent-fg);margin-top:3px}
.ticks li b{color:var(--ink);font-weight:500}
.ticks.c2{grid-template-columns:1fr 1fr;gap:16px 40px}
@media (width<=760px){
.ticks.c2{grid-template-columns:1fr}
}
.kv{grid-template-columns:auto 1fr;gap:10px 24px;font-size:.9375rem;display:grid}
.kv dt{color:var(--soft)}
.kv dd{color:var(--ink)}
.tools-row>*,.docs .main{min-width:0}
.tbl.cmp table{min-width:760px;font-size:.875rem}
.tbl.cmp th:nth-child(2),.tbl.cmp td:nth-child(2){color:var(--ink);background:var(--panel);font-weight:500}
@media (width<=760px){
.tbl.cmp th:first-child,.tbl.cmp td:first-child{z-index:1;background:var(--bg);box-shadow:1px 0 0 var(--line);position:sticky;left:0}
}
.tbl.cmp td:first-child{width:22%}
@media (width<=600px){
.tbl.stack table{min-width:0}
.tbl.stack thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
.tbl.stack table,.tbl.stack tbody,.tbl.stack tr,.tbl.stack td{display:block}
.tbl.stack tr{border-bottom:1px solid var(--line-2);padding:18px 0}
.tbl.stack tr:first-child{border-top:1px solid var(--line-2)}
.tbl.stack td{border:0;grid-template-columns:minmax(0,8.5em) minmax(0,1fr);gap:14px;padding:6px 10px;display:grid}
.tbl.stack td:before{content:attr(data-label);letter-spacing:.08em;text-transform:uppercase;color:var(--soft);padding-top:.2em;font-size:.6875rem;font-weight:600}
.tbl.stack td:first-child{width:auto;box-shadow:none;background:0 0;padding:0 0 8px;font-size:.9375rem;display:block;position:static}
.tbl.stack td:first-child:before{content:none}
.tbl.stack td:empty{display:none}
.tbl.alt.stack td,.tbl.side.stack td{padding:4px 10px;display:block}
.tbl.alt.stack td:before,.tbl.side.stack td:before{margin-bottom:2px;padding-top:0;display:block}
.tbl.alt.stack td:empty,.tbl.side.stack td:empty{display:none}
}
.guides.g4{grid-template-columns:repeat(2,1fr)}
@media (width<=960px){
.guides.g4{grid-template-columns:1fr}
}

/* ==== page-scoped styles: src/pages/start.astro (.needs) and src/pages/plugins.astro (.nx-*) ==== */
.needs{margin-top:16px;padding:18px 20px;border-radius:var(--r-panel);background:color-mix(in srgb, #fff 14%, var(--accent));box-shadow:inset 0 0 0 1px var(--on-accent-ring);font-size:.9375rem;color:var(--on-accent-2)}
.needs h2{font-size:.8125rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--on-accent)}
.needs ul{margin:8px 0 0;padding-left:1.2em;list-style:disc}
.needs li + li{margin-top:4px}
.needs p{margin-top:10px;color:var(--on-accent-3);font-size:.875rem}

.nx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.nx{display:flex;flex-direction:column;scroll-margin-top:96px}
.nx-tag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-size:.75rem;font-weight:500;letter-spacing:.02em;color:var(--accent-fg);background:var(--accent-soft);border-radius:999px;padding:4px 10px}
.nx-tag .icon{width:14px;height:14px}
.nx h3{font-size:1.25rem;letter-spacing:-.01em;margin-top:16px}
.nx-text{color:var(--muted);margin-top:8px}
.nx-form{margin-top:auto;padding-top:22px}
.nx-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:8px}
.nx-field{display:flex;flex-direction:column;gap:10px}
.nx-field input{width:100%;height:48px;padding:0 14px;border:0;border-radius:var(--r-control);background:var(--well);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink);font:inherit;font-size:1rem;caret-color:var(--ink)}
.nx-field input::placeholder{color:var(--soft)}
.nx-field input:focus{box-shadow:inset 0 0 0 1px var(--line-3)}
.nx-field input:focus-visible{outline:2px solid var(--brass);outline-offset:2px}
.nx-field input[aria-invalid="true"]{box-shadow:inset 0 0 0 1px var(--line-3)}
.nx-field .btn{width:100%}
.nx-field .btn[disabled]{opacity:.6;cursor:progress}
.nx-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.nx-stat{display:none;gap:10px;align-items:flex-start;margin-top:14px;font-size:.9375rem;color:var(--muted);scroll-margin-top:240px}
.nx-stat b{color:var(--ink);font-weight:500}
.nx-stat .icon{flex:none;width:18px;height:18px;margin-top:2px;color:var(--accent-fg)}
.nx-stat:target,.nx-stat.on{display:flex}
.nx-stat.ok:target,.nx-stat.ok.on{margin-top:auto;padding:16px;border-radius:12px;background:var(--accent-soft);color:var(--ink)}
.nx:has(.nx-stat.ok:target) .nx-form,.nx.done .nx-form{display:none}
.nx-fine{margin-top:24px;font-size:.875rem;color:var(--soft);text-align:center}
@media (max-width:960px){
.nx-grid{grid-template-columns:1fr}
}
