/* Construction beneath the axioms. */
.opening{max-width:none;position:relative;padding-bottom:3.5rem}
.opening h1{font-size:clamp(3.8rem,8vw,6.7rem);line-height:.98;margin-bottom:1.5rem}
.opening .lead{font-size:clamp(1.3rem,2.4vw,1.8rem);max-width:38rem!important}
.opening-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:2.5rem;align-items:center}
.opening-copy p{max-width:39rem}.opening-copy .text-link{margin-top:.6rem}
.origin-diagram{margin:0;background:var(--paper);padding:1.8rem 1.5rem;border-left:3px solid var(--green);align-self:center}
.origin-diagram ol{list-style:none;margin:0;padding:0;display:grid;gap:1.4rem}
.origin-diagram li{display:grid;grid-template-columns:5rem 1fr;column-gap:1rem;align-items:center}
.origin-symbol{font:1.7rem/1.2 var(--mono);letter-spacing:.08em;min-height:2rem;color:var(--green)}
.origin-words strong,.origin-words small{display:block}.origin-words strong{font-size:1rem;font-weight:550}.origin-words small{font-size:.8rem;color:var(--muted);line-height:1.5;margin-top:.1rem}
.origin-diagram figcaption{font-size:.8rem;line-height:1.6;margin-top:1.5rem;color:var(--muted)}
.foundation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:3rem 0;margin:0 auto 4rem}
.formation-lab{margin:2rem 0;width:calc(100% - 5px);padding:1.6rem}
.formation-trace{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;margin:1.2rem 0}
.formation-state{display:grid;place-items:center;border:1px solid var(--ink);min-width:2.4rem;height:2.4rem;border-radius:50%;font:1rem/1 var(--mono);background:#fff}
.formation-state.current{background:var(--accent);border-width:2px}.formation-arrow{font:1rem var(--mono);color:var(--green)}
.formation-extra{border:1px dashed var(--muted);padding:.8rem 1rem;display:flex;gap:1rem;align-items:center;margin:1rem 0}
.formation-extra>span{white-space:nowrap;font:1rem var(--mono)}.formation-extra>p{font-size:.875rem;margin:0}
.formation-readings{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;border-block:1px solid var(--line);padding:1rem 0;margin:1rem 0}
.formation-readings>div{display:grid;gap:.3rem}.formation-readings span{font-size:.875rem}.formation-readings output{font:1.9rem var(--mono)}
.formation-rules{list-style:none;padding:0;margin:1.5rem 0;border-top:1px solid var(--line)}
.formation-rules li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.8rem;padding:.75rem 0;border-bottom:1px solid var(--line);font-size:.95rem}
.formation-rules strong{font:.8rem var(--mono);padding:.35rem .5rem;border:1px solid currentColor;min-width:4rem;text-align:center}
.holds{color:var(--green)}.fails{color:#943620;background:#fff5ef}.formation-static{border:1px solid var(--line);padding:1rem 1.5rem;margin:2rem 0}.formation-static h3{margin-top:0}
.winding-figure{margin:2rem 0;background:var(--paper);padding:1rem;border:1px solid var(--line)}
.winding-figure svg{display:block;width:100%;height:auto;overflow:visible}.winding-figure figcaption{font-size:.85rem;line-height:1.6;color:var(--muted);margin:.5rem .5rem}
@media(max-width:760px){.opening-grid{grid-template-columns:1fr;gap:1.8rem}.origin-diagram{max-width:32rem;width:100%;padding:1.4rem}.origin-diagram ol{gap:1.1rem}.origin-diagram li{grid-template-columns:4.8rem 1fr}.opening h1{font-size:clamp(3.25rem,12.5vw,5rem)}.foundation{padding-top:2.5rem;margin-bottom:2rem}.formation-lab{padding:1rem}.formation-lab .controls label{width:100%}.formation-lab select{width:100%;font-size:.85rem}.formation-extra{flex-direction:column;align-items:start;gap:.5rem}.formation-state{min-width:2rem;height:2rem}.formation-trace{gap:.35rem}.formation-rules li{font-size:.875rem}.formation-readings{gap:1rem}.winding-figure{padding:.4rem}.winding-figure svg{min-height:8rem}}
@media print{.opening-grid{display:block}.origin-diagram{margin-top:1rem;max-width:30rem}.formation-lab{break-inside:avoid}.winding-figure{break-inside:avoid}}
