.hero{position:relative;padding:56px 0 72px}.hero-grid{display:grid;gap:24px;align-items:center}@media (min-width: 1000px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:32px}}.hero h1{font-size:var(--fs-hero);max-width:12ch}.hero .lead{font-size:18px;color:var(--mute);margin:22px 0 30px}.hero-sketch{margin:0;position:relative}.hero-sketch svg{transform:perspective(1000px) rotateY(-14deg) rotateX(7deg);filter:drop-shadow(0 30px 30px #0003)}svg .hole{fill:url(#hole)}svg .line{fill-rule:evenodd;stroke:var(--steel);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}svg path.line:not([fill]),svg polygon.line:not([fill]){fill:none}svg .line.thin{stroke-width:1;stroke-opacity:.5;fill:none}svg .dim-line{stroke:var(--accent);stroke-width:1.4;stroke-linecap:round;fill:none}svg .dim-text{fill:var(--accent);font:500 13px var(--mono-font);letter-spacing:.06em}.features{display:grid;gap:40px}@media (min-width: 1000px){.features{grid-template-columns:repeat(3,1fr);gap:0}.feature+.feature{border-left:1px solid var(--line);padding-left:32px}.feature{padding-right:32px}}.feature{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:start}.feature h3{font-size:var(--fs-h3);letter-spacing:-.02em;line-height:1.2;margin-bottom:8px}.feature p{margin:0;color:var(--mute);font-size:15px}.matrix{height:84px;width:auto}svg .dot-on{fill:var(--highlight);stroke:#d9ae2c;stroke-width:1}svg .dot-off{fill:var(--ink);opacity:.14}.needs{padding:0;margin:0 0 20px;list-style:none;display:grid;gap:8px;color:var(--mute)}.needs li{display:flex;gap:12px;align-items:center}.needs li:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none}.materials{display:grid;gap:20px;margin:44px 0 8px}@media (min-width: 768px){.materials{grid-template-columns:1fr 1fr}}.materials figure{margin:0;padding:20px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-panel)}.materials figcaption{text-align:center;margin-top:14px;color:var(--dim)}@media (min-width: 1080px){.howto{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:center;margin-top:64px}.howto .step-title{margin-top:0}.howto .video{margin:0}}.howto>div>p{color:var(--mute);font-size:15px}svg .d-edge{stroke:var(--steel);stroke-width:1.1;stroke-linejoin:round;stroke-opacity:.85}svg path.d-edge{fill:none}svg .d-side{fill:#d5d8db;stroke:var(--steel);stroke-width:1;stroke-opacity:.55;stroke-linejoin:round}svg .d-side-r{fill:#e4e6e8}svg .d-brush{stroke:var(--steel);stroke-opacity:.07;stroke-width:1}svg .d-pad{fill:none;stroke:var(--steel);stroke-opacity:.35;stroke-width:.8;stroke-dasharray:3 2.5}svg .d-hole{fill:#2a2d31;stroke:var(--steel);stroke-opacity:.6;stroke-width:.5}svg .d-dim{stroke:var(--accent);stroke-width:1.3;stroke-linecap:round;fill:none}svg .d-dim text{stroke:none;fill:var(--ink);font:500 18px var(--mono-font);letter-spacing:.06em}svg .d-hit{fill:var(--accent)}svg .d-ring{fill:none;stroke:var(--accent);stroke-width:1.4}svg .d-mark{fill:var(--highlight);stroke:none}svg .d-motion{fill:none;stroke:var(--steel);stroke-opacity:.5;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.materials figure>svg{max-width:300px;margin:0 auto}
