.th{max-width:1180px;margin:0 auto;padding:clamp(40px,7vw,84px) clamp(16px,3vw,28px) 0;color:var(--color-text)}.th-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:clamp(28px,5vw,64px);gap:clamp(28px,5vw,64px);padding-bottom:clamp(36px,6vw,72px);border-bottom:1px solid var(--border)}.th-kicker{display:block;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--color-accent)}.th-title{margin:18px 0 22px;font-size:clamp(44px,9vw,116px);line-height:.86;letter-spacing:-.05em;font-weight:900}.th-title em{font-style:normal;color:var(--color-accent)}.th-title-serif{display:inline-block;font-weight:400;font-size:1.14em;letter-spacing:-.008em;padding-right:.06em;line-height:.92}.th-lead-accent,.th-title-serif{font-family:var(--font-serif);font-style:italic;color:var(--color-accent)}.th-lead-accent{font-size:1.06em;letter-spacing:0}.th-lead{margin:0;max-width:46ch;font-size:clamp(15px,1.6vw,19px);line-height:1.45;color:color-mix(in srgb,var(--color-text) 76%,transparent)}.th-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.th-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 20px;border:1px solid var(--border);border-radius:0;background:transparent;color:var(--color-text);font-size:13.5px;font-weight:800;letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease}.th-btn:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.th-btn.primary,.th-btn:hover{border-color:var(--color-accent)}.th-btn.primary{background:var(--color-accent);color:#fff}.th-btn.primary:hover{background:color-mix(in srgb,var(--color-accent) 86%,#000)}.th-btn.small{padding:9px 14px;font-size:12.5px}.th-featured{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:20px 0 0;font-size:13px;color:var(--color-text-muted)}.th-featured strong{font-family:var(--font-serif);font-weight:400;font-size:1.14em;color:var(--color-text)}.th-featured-dot{width:7px;height:7px;border-radius:50%;background:var(--color-accent);animation:th-pulse 1.8s ease-in-out infinite}@keyframes th-pulse{0%,to{opacity:1}50%{opacity:.3}}.th-aside{display:grid;grid-gap:20px;gap:20px;align-content:end;padding-left:clamp(16px,2vw,28px);border-left:1px solid var(--border)}.th-now{display:grid;grid-gap:4px;gap:4px;padding:12px 14px;border:1px solid var(--border);background:var(--color-surface);text-decoration:none;color:inherit;min-width:0;transition:border-color .15s ease,background .15s ease}a.th-now:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.th-now.empty{border-style:dashed;border-color:color-mix(in srgb,var(--color-text) 22%,transparent);background:transparent}.th-now-head{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.th-now.live .th-now-head{color:var(--color-accent)}.th-now-name{font-family:var(--font-serif);font-size:20px;font-weight:400;line-height:1.1;overflow-wrap:anywhere}.th-now-meta{font-size:11.5px;color:var(--color-text-muted)}.th-counts{display:grid;grid-gap:18px;gap:18px;margin:0}.th-counts div{display:grid;grid-gap:2px;gap:2px}.th-counts dt{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap}.th-counts dd{margin:0;font-family:var(--font-serif);font-size:clamp(32px,4vw,48px);font-weight:400;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.th-module{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-gap:clamp(28px,5vw,72px);gap:clamp(28px,5vw,72px);align-items:center;padding:clamp(48px,8vw,96px) 0;border-bottom:1px solid var(--border)}.th-module.reverse .th-copy{order:2}.th-num{display:block;font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.16em;color:var(--color-accent)}.th-copy h2{margin:16px 0 18px;font-size:clamp(28px,4.2vw,52px);line-height:.98;letter-spacing:-.035em;font-weight:900}.th-copy p{margin:0 0 14px;max-width:46ch;font-size:15px;line-height:1.55;color:color-mix(in srgb,var(--color-text) 76%,transparent)}.th-small{font-family:var(--font-serif)!important;font-style:italic;font-size:15.5px!important;line-height:1.4!important;color:var(--color-text-muted)!important}.th-points{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-gap:9px;gap:9px}.th-points li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;line-height:1.4}.th-points svg{flex:0 0 auto;margin-top:2px;color:var(--color-accent)}.th-figure{margin:0;border:1px solid var(--border);background:var(--color-surface);min-width:0}.th-figcap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;padding:11px 14px;border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--color-text-muted)}.th-legend{display:inline-flex;align-items:center;gap:6px}.th-key{width:14px;height:0;border-top:2px dashed;display:inline-block}.th-key.t{color:var(--color-accent)}.th-key.ct{color:#3b82f6;margin-left:8px}.bs{display:block;width:100%;height:auto;padding:14px}.bs-floor{fill:color-mix(in srgb,var(--color-text) 5%,transparent);stroke:none}.bs-wall{fill:none;stroke:var(--color-text);stroke-width:1.6;stroke-opacity:.55;stroke-linecap:butt}.bs-block{fill:color-mix(in srgb,var(--color-text) 13%,transparent);stroke:var(--color-text);stroke-width:1;stroke-opacity:.4}.bs-zone{fill:color-mix(in srgb,var(--color-accent) 5%,transparent);stroke:var(--color-accent);stroke-width:1.4;stroke-opacity:.45;stroke-dasharray:5 4}.bs-path{fill:none;stroke-width:2;stroke-dasharray:7 6;stroke-linecap:butt;stroke-opacity:.9}.bs-path.t{stroke:var(--color-accent)}.bs-path.ct{stroke:#3b82f6}.bs-head{fill-opacity:.9}.bs-head.t{fill:var(--color-accent)}.bs-head.ct{fill:#3b82f6}.bs-plant{fill:none;stroke:var(--color-accent);stroke-width:1.5;stroke-dasharray:3 3}.bs-plant-label{font-size:9px;font-weight:700;fill:var(--color-accent);text-anchor:middle}.bs-plant-label,.bs-site{font-family:var(--font-mono)}.bs-site{font-size:34px;font-weight:900;fill:var(--color-text);fill-opacity:.16}.th-fignote{margin:0;padding:12px 14px;border-top:1px solid var(--border);font-family:var(--font-serif);font-style:italic;font-size:15px;line-height:1.35;color:var(--color-text-muted)}.th-roles{grid-gap:var(--space-3);min-width:0}.th-role-tabs,.th-roles{display:grid;gap:var(--space-3)}.th-role-tabs{grid-template-columns:1fr 1fr;grid-gap:var(--space-3)}.th-role-side{display:grid;grid-gap:5px;gap:5px;align-content:start;min-width:0}.th-side-label{font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);padding-bottom:5px;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.th-role{display:flex;align-items:center;gap:8px;width:100%;padding:10px 11px;border-left:1px solid var(--border);border:1px solid var(--border);border-left-width:3px;border-radius:0;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;font-weight:700;text-align:left;cursor:pointer;min-width:0;transition:border-color .14s ease,background .14s ease}.th-role span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.th-role svg{flex:0 0 auto;opacity:.7}.th-role em{margin-left:auto;flex:0 0 auto;font-style:normal;font-family:var(--font-mono);font-size:8.5px;font-weight:800;letter-spacing:.09em;padding:2px 5px;border:1px solid;opacity:.6}.th-role:hover{background:color-mix(in srgb,var(--color-text) 5%,var(--color-surface))}.th-role.on.ct{border-left-color:#3b82f6;background:color-mix(in srgb,#3b82f6 12%,transparent)}.th-role.on.t{border-left-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.th-role.on svg{opacity:1}.th-role-detail{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-top:3px solid var(--color-accent);background:var(--color-surface);min-width:0}.th-role-detail.ct{border-top-color:#3b82f6}.th-role-detail h3{margin:0 0 8px;font-size:19px;font-weight:900;letter-spacing:-.01em}.th-role-detail p{margin:0 0 16px;font-size:13.5px;line-height:1.55;color:color-mix(in srgb,var(--color-text) 78%,transparent)}.th-role-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));grid-gap:var(--space-3);gap:var(--space-3);margin:0;padding-top:14px;border-top:1px solid var(--border)}.th-role-facts div{display:grid;grid-gap:2px;gap:2px;min-width:0}.th-role-facts dt{font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-muted)}.th-role-facts dd{margin:0;font-size:13px;font-weight:600;line-height:1.35}.th-steps{list-style:none;margin:0;padding:0;display:grid;min-width:0}.th-steps li{border-bottom:1px solid var(--border)}.th-steps li:first-child{border-top:1px solid var(--border)}.th-steps button{display:flex;align-items:flex-start;gap:14px;width:100%;padding:17px 12px;border:0;border-left:3px solid transparent;border-radius:0;background:transparent;color:var(--color-text-muted);font:inherit;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease}.th-steps button:hover{background:color-mix(in srgb,var(--color-text) 4%,transparent)}.th-steps button.on{border-left-color:var(--color-accent);background:var(--color-surface);color:var(--color-text)}.th-step-n{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border:1px solid var(--border);font-family:var(--font-mono);font-size:11px;font-weight:700}.th-steps button.done .th-step-n,.th-steps button.on .th-step-n{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.th-step-text{display:grid;grid-gap:4px;gap:4px;min-width:0}.th-step-text b{font-size:14px;font-weight:800;color:var(--color-text)}.th-step-text small{font-size:12.5px;line-height:1.45;display:none}.th-steps button.on .th-step-text small{display:block}.th-format-tabs{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.th-format-tabs button{padding:9px 13px;border:1px solid var(--border);border-radius:0;background:transparent;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;font-weight:700;cursor:pointer}.th-format-tabs button.on{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.th-format{padding:var(--space-4);border:1px solid var(--border);background:var(--color-surface);min-width:0}.th-format-head{display:flex;align-items:center;gap:9px;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--border)}.th-format-head svg{color:var(--color-accent)}.th-format-head strong{font-size:15px;font-weight:900}.th-format p{margin:0;font-size:13.5px;line-height:1.55;color:color-mix(in srgb,var(--color-text) 78%,transparent)}.th-format .th-btn{margin-top:20px}.th-close{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:clamp(32px,5vw,56px) 0 clamp(48px,7vw,80px)}.th-close>svg{color:var(--color-accent);flex:0 0 auto}.th-close div{display:grid;grid-gap:3px;gap:3px;min-width:0}.th-close strong{font-family:var(--font-serif);font-size:26px;font-weight:400;letter-spacing:-.01em;line-height:1.05}.th-close span{font-size:13.5px;color:var(--color-text-muted)}.th-close .th-btn{margin-left:auto}@media (max-width:860px){.th-hero{grid-template-columns:1fr;align-items:start}.th-counts{grid-auto-flow:column;justify-content:start;gap:clamp(20px,6vw,40px);padding:20px 0 0;border-left:0;border-top:1px solid var(--border)}.th-module,.th-module.reverse{grid-template-columns:1fr}.th-module.reverse .th-copy{order:0}.th-role-tabs{grid-template-columns:1fr;gap:var(--space-4)}.th-role,.th-steps button{min-height:48px}.th-btn{min-height:46px;flex:1 1 auto;justify-content:center}.th-close .th-btn{margin-left:0;width:100%}}@media (prefers-reduced-motion:reduce){.th-featured-dot{animation:none}}.bt{padding:clamp(48px,8vw,96px) 0;border-bottom:1px solid var(--border)}.bt-head{max-width:62ch;margin-bottom:clamp(24px,4vw,40px)}.bt-head h2{margin:0 0 12px;font-size:clamp(28px,4.2vw,52px);line-height:.98;letter-spacing:-.035em;font-weight:900}.bt-head p{margin:0;font-family:var(--font-serif);font-size:20px;line-height:1.35;color:color-mix(in srgb,var(--color-text) 76%,transparent)}.bt-ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border)}.bt-tier{display:grid;align-content:start;grid-gap:14px;gap:14px;padding:clamp(16px,2vw,22px);background:var(--color-surface)}.bt-tier-head{display:flex;align-items:center;gap:12px}.bt-rungs{width:22px;height:34px;flex:none}.bt-rungs rect{fill:color-mix(in srgb,var(--color-text) 14%,transparent)}.bt-rungs rect.on{fill:var(--color-accent)}.bt-tier-n{display:block;font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.bt-tier h3{margin:2px 0 0;font-size:20px;font-weight:900;letter-spacing:-.02em}.bt-meters{display:grid;grid-gap:7px;gap:7px}.bt-meter{display:grid;grid-template-columns:4.5rem 1fr;align-items:center;grid-gap:10px;gap:10px}.bt-meter-label{font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.bt-meter-bars{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:3px;gap:3px}.bt-meter-bars i{height:6px;background:color-mix(in srgb,var(--color-text) 12%,transparent)}.bt-meter-bars i.on{background:var(--color-accent)}.bt-tier-body{margin:0;font-size:13px;line-height:1.5;color:color-mix(in srgb,var(--color-text) 74%,transparent)}.bt-split{list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--border);display:grid;grid-gap:8px;gap:8px}.bt-split li{display:grid;grid-template-columns:14px 1fr;align-items:start;grid-gap:8px;gap:8px;font-size:12.5px;line-height:1.4}.bt-move{width:11px;height:11px;margin-top:3px}.bt-move.up{color:#4ade80}.bt-move.down{color:#f87171}.bt-rules{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:12.5px;color:var(--color-text-muted)}.bt-rules li{display:inline-flex;align-items:center;gap:7px}