@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/dm-sans-400.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/dm-sans-500.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/dm-sans-600.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/dm-sans-700.ttf') format('truetype')}
@font-face{font-family:'Libre Caslon Display';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/libre-caslon-display.ttf') format('truetype')}
:root{--ink:#203c43;--muted:#687879;--line:#dde4df;--paper:#fff;--bg:#faf9f6;--mint:#d9eee4;--teal:#287d70;--orange:#b76334;--blue:#667ba9;--gold:#b1974e;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:3px solid #cf793d;outline-offset:5px}a{color:inherit;text-decoration:none}button{border:0;background:none}svg{display:block;max-width:100%;overflow:visible}svg text{font-family:'DM Sans',Arial,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;letter-spacing:-.03em}.masthead{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1280px;margin:0 auto;padding:22px 30px 20px}.brand{display:flex;gap:13px;align-items:center;font-size:15px;font-weight:600;letter-spacing:-.03em}.brandmark{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:var(--ink);color:#c8ebd9;font-size:24px;font-weight:400}.edition{border-left:1px solid var(--line);padding-left:18px;margin-left:12px;font-size:10px;letter-spacing:.16em;color:var(--muted);font-weight:500}.lab-link{font-size:13px;color:var(--muted);white-space:nowrap}.lab-link span{margin-left:8px}.trail-wrap{position:sticky;top:0;z-index:20;display:flex;gap:24px;align-items:center;justify-content:space-between;background:rgba(250,249,246,.96);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px max(30px,calc((100vw - 1220px)/2));backdrop-filter:blur(16px)}#trail{overflow-x:auto;white-space:nowrap;display:flex;align-items:center;gap:10px;scrollbar-width:thin;scrollbar-color:#bbcec3 transparent;min-width:0;padding:4px 3px}.crumb{display:flex;gap:7px;align-items:center;font-size:14px;flex-shrink:0;border-radius:6px;padding:3px 5px}.crumb:hover{background:#eef1ed}.crumb.current{color:var(--teal);font-weight:600}.crumb-icon{font-size:14px;line-height:1}.crumb-relation{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#778d87;margin:0 2px}.trail-arrow{color:#a9b6ae}.trail-note{font-size:11px;letter-spacing:.04em;color:var(--muted);white-space:nowrap}.stack{max-width:1220px;margin:32px auto 0;padding:0 0 30px;position:relative}.ancestor{border:1px solid #d6dfd7;border-radius:14px;background:#f1f4ee;position:relative;margin-bottom:10px}.ancestor:nth-child(2){margin-left:14px;background:#f5f7f2}.ancestor:nth-child(3){margin-left:28px}.ancestor:nth-child(4){margin-left:42px}.ancestor-button{width:100%;display:flex;align-items:center;gap:18px;text-align:left;padding:14px 22px}.ancestor-mini{width:38px;height:38px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;font-size:22px;flex-shrink:0}.ancestor-title{font-family:Georgia,serif;font-size:19px;line-height:1.2}.ancestor-sub{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);display:block;margin-top:5px}.ancestor-description{font-size:13px;color:var(--muted);margin-left:auto}.ancestor-open{font-size:11px;color:var(--teal);margin-left:20px;white-space:nowrap}.ancestor-open span{font-size:17px;margin-left:8px}.ancestor:hover{border-color:#9eb9aa;background:#ecf2ea}.connection{margin:0 0 8px 30px;color:var(--teal);font-size:11px;letter-spacing:.04em;display:flex;gap:10px;align-items:center}.connection:before{content:'';width:1px;height:18px;background:#a8c6b5}.active-card{margin-left:28px;border:1px solid #d7e0d8;background:var(--paper);border-radius:var(--radius);box-shadow:0 5px 30px #213c4306;overflow:hidden}.active-card.level-3{margin-left:42px}.active-card.level-4{margin-left:56px}.card-topline{display:flex;justify-content:space-between;gap:15px;padding:25px 38px 0;font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.card-topline .meta{color:var(--muted);font-weight:400;letter-spacing:.04em;text-transform:none;font-size:12px}.type{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}.type:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal)}.type.tool:before{background:var(--blue)}.type.material:before{background:var(--orange)}.hero{display:grid;grid-template-columns:44% 56%;align-items:center;padding:8px 35px 20px;min-height:410px}.hero-copy{padding:0 4px 0 3px;align-self:center}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:600;text-transform:uppercase;color:var(--teal);display:block;margin-bottom:19px}.hero h1{font-size:78px;line-height:.96;margin-bottom:20px}.hero .deck{font-family:Georgia,serif;font-size:23px;line-height:1.45;max-width:330px;color:#52736f}.hero .intro{font-size:14px;line-height:1.75;color:var(--muted);max-width:325px;margin-top:14px}.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.tag{font-size:11px;line-height:1;padding:8px 11px;border:1px solid #e1e7e1;border-radius:20px;color:var(--muted);display:flex;gap:5px}.tag-dot{width:5px;height:5px;border-radius:50%;background:var(--teal);align-self:center}.hero-art{margin:0;position:relative}.hero-art svg{width:100%;height:auto;max-height:420px}.art-caption{text-align:center;font-size:11px;color:#87938c;margin-top:-12px}.hotspot{cursor:pointer;transition:opacity .2s}.hotspot:hover .number,.hotspot.selected .number{fill:var(--ink)}.hotspot:hover text,.hotspot.selected text{fill:#fff}.layer{transition:opacity .25s,filter .25s}.dim{opacity:.32}.legend{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:18px 28px 12px}.legend button{border:1px solid var(--line);border-radius:20px;font-size:12px;padding:5px 12px}.legend button.selected{border-color:#9dbcab;background:#eff7f1}.legend .swatch{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:5px}.part-note{margin:0 38px 24px;display:flex;align-items:center;gap:14px;min-height:48px;border-top:1px solid var(--line);padding-top:14px;font-size:13px;color:var(--muted)}.part-note strong{color:var(--ink);font-weight:500;white-space:nowrap}.physics{margin:0 38px 34px;border:1px solid #dce8e0;background:#f4f8f3;border-radius:15px;display:grid;grid-template-columns:46% 54%;padding:20px 26px;align-items:center;gap:15px}.physics h2{font-size:30px;line-height:1.15;margin-bottom:9px}.physics p{font-size:13px;color:var(--muted);max-width:340px;line-height:1.6}.physics .eyebrow{margin-bottom:10px;font-size:10px}.play{font-size:12px;border:1px solid #b3cabb;border-radius:20px;padding:7px 13px;margin-top:15px;display:inline-flex;gap:8px;align-items:center}.play:hover{background:#e4f0e8}.physics svg{max-height:155px;width:100%}.moving{transform-origin:center}.motion-running .moving{animation:oscillate 1.15s ease-in-out infinite}.motion-running .wave{animation:wave 1.15s ease-in-out infinite}.motion-running .wave:nth-child(2){animation-delay:.15s}.motion-running .wave:nth-child(3){animation-delay:.3s}@keyframes oscillate{0%,100%{transform:translateY(-4px)}50%{transform:translateY(5px)}}@keyframes wave{0%,100%{opacity:.3}50%{opacity:1}}.making{padding:0 38px 30px}.section-heading{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 0 17px}.section-heading h2{font-size:39px;line-height:1.1}.section-heading .section-meta{font-size:11px;color:var(--muted);letter-spacing:.03em}.step{border-bottom:1px solid var(--line);padding:24px 0;display:grid;grid-template-columns:34px 165px 1fr;gap:22px;align-items:start}.step-number{font-family:Georgia,serif;font-size:18px;color:var(--teal);border:1px solid #a6c2b4;width:33px;height:33px;border-radius:50%;display:grid;place-items:center}.step-visual{margin-top:3px;background:#fafaf6;border:1px solid #e8ede7;border-radius:12px;display:grid;place-items:center;height:126px;padding:8px;position:relative}.step-visual svg{width:100%;height:100%}.diagram-caption{font-size:9px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;position:absolute;bottom:6px;left:0;right:0;text-align:center}.step-title{font-family:Georgia,serif;font-size:23px;line-height:1.2;letter-spacing:-.015em;font-weight:400}.step-summary{font-size:13px;color:var(--muted);margin-top:7px;line-height:1.6}.step details{margin-top:12px}.step summary{list-style:none;cursor:pointer;font-size:12px;color:var(--teal);display:flex;gap:8px;align-items:center;width:fit-content}.step summary::-webkit-details-marker{display:none}.caret{display:inline-block;width:5px;height:5px;border-right:1.5px solid var(--teal);border-bottom:1.5px solid var(--teal);transform:rotate(45deg);margin:0 3px 4px;transition:transform .2s}.step details[open] .caret{transform:rotate(225deg);margin-bottom:0}.step-detail{padding:13px 0 0;line-height:2.35;color:#556866;font-size:14px}.part-chip{display:inline-flex;align-items:center;gap:7px;line-height:1.25;font-size:12px;border:1px solid #cdded2;border-radius:8px;background:#f3f7f1;color:#2c665b;padding:8px 10px;vertical-align:middle;margin:4px 3px}.part-chip .chip-type{font-size:8px;letter-spacing:.05em;border-right:1px solid #bfd3c3;padding-right:7px;font-weight:600}.part-chip.tool{background:#f2f4fa;border-color:#d2d9e7;color:#52618c}.part-chip.tool .chip-type{border-color:#d2d9e7}.part-chip.material{background:#fbf4eb;border-color:#e7d6bf;color:#8b6f40}.part-chip.material .chip-type{border-color:#e7d6bf}.part-chip.try{border:2px solid #438978;outline:2px solid #e1f0df;outline-offset:2px;position:relative;padding-top:19px;margin:11px 5px 7px}.part-chip.try:before{content:'TRY THIS PATH ↘';position:absolute;left:9px;top:4px;letter-spacing:.09em;color:#28745d;font-size:8px;font-weight:700}.part-chip:hover{filter:brightness(.97);border-color:#88aa93}.part-chip .arrow{font-size:16px;margin-left:3px}.inline-info{border-left:2px solid #9eb8a7;background:#f8faf6;padding:12px 15px;margin-top:12px;font-size:13px;line-height:1.7;border-radius:0 8px 8px 0}.inline-info .type{margin-right:10px;font-size:8px}.step-note{font-size:12px;color:#84918a;line-height:1.6;margin-top:10px}.bottom-note{display:flex;gap:20px;align-items:center;padding:18px 38px;border-top:1px solid var(--line);background:#fafbf7;font-size:12px;color:var(--muted)}.bottom-note .badge{flex-shrink:0;border:1px solid #d4dfd4;border-radius:5px;padding:4px 8px;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.sources{padding:17px 38px;font-size:11px;color:#87918c;line-height:1.6}.sources summary{cursor:pointer}.sources p{margin-top:10px}.sources a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}.page-footer{display:flex;justify-content:space-between;max-width:1220px;margin:0 auto;padding:25px 0 35px;font-size:12px;color:#85918b}.page-footer span:last-child{font-size:9px;letter-spacing:.13em}.sample-label{display:inline-flex;gap:8px;align-items:center;color:#897134;background:#fbf4e4;border:1px solid #e8ddc0;font-size:11px;padding:6px 10px;border-radius:5px;margin-top:20px}.sample-label:before{content:'◌';font-size:17px;line-height:1}.return-button{font-size:12px;margin:0 38px 24px;display:flex;gap:10px;align-items:center;color:var(--teal);border:1px solid #c5d8c9;padding:9px 14px;border-radius:9px;width:fit-content}.return-button:hover{background:#f3f7f1}.sample .hero{min-height:360px}.sample .hero h1{font-size:57px;line-height:1.04}.sample .hero .deck{font-size:21px}.sample .hero-art svg{max-height:320px}.sample .making .section-heading h2{font-size:33px}.context-card{padding:40px}.context-card h1{font-size:58px;line-height:1.1}.context-card p{max-width:550px;color:var(--muted);margin-top:15px}.context-path{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:32px}.context-path .context-node{border:1px solid #cddcd0;border-radius:12px;padding:18px 24px;min-width:180px;text-align:left;background:#f6f9f2}.context-node small{font-size:10px;color:var(--muted);display:block}.context-node strong{font-family:Georgia,serif;font-size:22px;font-weight:400}.context-node:hover{border-color:#438978}.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}.active-card{animation:card-in .35s ease}@keyframes card-in{from{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1450px){.hero{min-height:445px}.hero h1{font-size:86px}.hero-art svg{max-height:445px}.stack{margin-top:42px}}
@media(max-width:1280px){.stack{margin:26px 25px 0}.page-footer{margin:0 30px}}
@media(max-width:900px){.edition,.trail-note{display:none}.hero{grid-template-columns:43% 57%;padding-left:26px;padding-right:20px}.hero h1{font-size:63px}.hero .deck{font-size:21px}.hero .intro{font-size:13px}.physics,.part-note{margin-left:26px;margin-right:26px}.making{padding-left:26px;padding-right:26px}.step{grid-template-columns:30px 120px 1fr;gap:16px}.step-visual{height:112px}.step-title{font-size:21px}.card-topline{padding-left:26px;padding-right:26px}.ancestor-description{display:none}.sample .hero h1{font-size:44px}.bottom-note,.sources{padding-left:26px;padding-right:26px}}
@media(max-width:640px){body{font-size:16px}.masthead{padding:15px 17px;gap:10px}.brand{gap:10px;font-size:13px;max-width:265px;letter-spacing:-.02em}.brandmark{width:29px;height:29px;flex-shrink:0;font-size:20px}.lab-link{font-size:10px}.trail-wrap{padding:9px 13px}.crumb{font-size:12px;padding:3px 2px}.crumb-relation{font-size:8px}#trail{gap:6px}.stack{margin:20px 13px 0;padding-bottom:15px}.ancestor,.ancestor:nth-child(2),.ancestor:nth-child(3),.ancestor:nth-child(4){margin-left:0;margin-bottom:7px;border-radius:11px}.ancestor-button{padding:11px 13px;gap:12px}.ancestor-mini{width:29px;height:29px;font-size:17px;border-radius:7px}.ancestor-title{font-size:17px}.ancestor-sub{font-size:8px;margin-top:3px}.ancestor-open{margin-left:auto;font-size:10px}.ancestor-open span{font-size:14px;margin-left:4px}.connection{margin-left:17px;font-size:10px;height:19px}.active-card,.active-card.level-3,.active-card.level-4{margin-left:0;border-radius:16px}.card-topline{padding:21px 21px 0;font-size:10px;letter-spacing:.1em}.card-topline .meta{font-size:10px}.hero{grid-template-columns:1fr;padding:23px 21px 10px;min-height:0;gap:2px}.hero h1{font-size:67px;margin-bottom:12px}.eyebrow{margin-bottom:12px}.hero .deck{font-size:22px;max-width:100%;line-height:1.4}.hero .intro{font-size:13px;max-width:100%;margin-top:11px}.hero-tags{margin-top:17px;gap:6px}.tag{font-size:10px;padding:7px 10px}.hero-art{margin:6px -10px 0}.hero-art svg{max-height:355px}.art-caption{font-size:9px;margin-top:-7px}.legend{gap:6px;margin:15px 16px 9px}.legend button{font-size:10px;padding:5px 9px}.part-note{margin:0 21px 22px;flex-direction:column;align-items:start;gap:3px;font-size:12px;padding-top:10px}.part-note strong{font-size:13px}.physics{margin:0 15px 27px;padding:19px 18px;grid-template-columns:1fr;gap:15px;border-radius:12px}.physics h2{font-size:30px}.physics p{max-width:100%;font-size:13px}.physics svg{max-height:160px;order:2}.play{font-size:12px;margin-top:12px}.making{padding:0 21px 24px}.section-heading{align-items:center;padding-bottom:15px}.section-heading h2{font-size:33px}.section-meta{font-size:9px!important}.step{grid-template-columns:29px 1fr;gap:8px 13px;padding:21px 0}.step-number{grid-column:1;grid-row:1;width:28px;height:28px;font-size:15px;margin-top:1px}.step-visual{grid-column:2;grid-row:2;height:143px;max-width:none;margin-top:5px;padding:15px 28px}.step-visual svg{max-width:205px;margin:auto}.step-content{grid-column:2;grid-row:1}.step-title{font-size:21px;line-height:1.25}.step-summary{font-size:13px;margin-top:7px}.step details{margin-top:9px}.step summary{font-size:12px}.step-detail{font-size:14px;line-height:2.15;padding-top:9px}.part-chip{font-size:12px;max-width:100%;white-space:normal;margin:5px 1px;padding:7px 8px}.part-chip .chip-type{font-size:8px}.part-chip.try{padding-top:20px;margin:9px 3px}.step-note{font-size:11px}.bottom-note{padding:17px 21px;align-items:start;gap:10px;font-size:11px}.bottom-note .badge{padding:4px 6px;font-size:8px}.sources{padding:15px 21px;font-size:10px}.page-footer{margin:0 16px;padding:13px 0 28px;font-size:10px;gap:10px}.page-footer span:last-child{font-size:8px;max-width:125px;text-align:right}.sample .hero{gap:15px}.sample .hero h1{font-size:49px}.sample .hero .deck{font-size:21px}.sample .hero-art svg{max-height:270px}.sample-label{font-size:10px;margin-top:15px}.return-button{margin:0 21px 20px;font-size:12px}.context-card{padding:28px 21px}.context-card h1{font-size:47px}.context-card p{font-size:14px}.context-path{flex-direction:column;align-items:stretch;margin-top:25px}.context-node{width:100%}.context-path>span{transform:rotate(90deg);align-self:center}.sample .making .section-heading h2{font-size:29px}.inline-info{font-size:12px;padding:10px 11px}}
.step-visual{margin:3px 0 0}.hero .intro,.step-summary,.step-detail,.physics p{font-size:16px}.part-chip,.step summary,.play,.legend button,.return-button{font-size:14px}.part-chip .chip-type{font-size:10px}.step-detail{line-height:2.1}.part-note{font-size:14px}.ancestor-button{padding-top:10px;padding-bottom:10px}.trail-wrap{max-width:100%}.hero .intro{max-width:345px}.step-note{font-size:13px}.step-visual svg{overflow:hidden}.hotspot .number{r:19px}
@media(max-width:640px){.hero .intro,.step-summary,.step-detail,.physics p{font-size:16px}.step-visual{margin:5px 0 0}.part-chip,.step summary,.play,.legend button,.return-button,.crumb{font-size:14px}.part-chip .chip-type{font-size:9px}.step-detail{line-height:2.2}.step-note{font-size:13px}.step-visual{height:150px}.part-note{font-size:14px}.legend{gap:6px}.legend button{padding:5px 7px}.hero h1{font-size:63px}.ancestor-sub{font-size:10px}.ancestor-open{font-size:11px}.physics{margin-bottom:26px}.sample .hero h1{font-size:47px}.card-topline{gap:10px}.card-topline .meta{max-width:140px;text-align:right}.bottom-note{font-size:13px}}
.part-chip,.play,.legend button{min-height:44px}.step summary{min-height:36px}.crumb{min-height:34px}.return-button{min-height:44px}
.active-card{position:relative;animation:none;overflow-anchor:none}.card-content{position:relative}.fold-header{position:absolute;top:0;left:0;width:100%;height:78px;z-index:3;background:#f1f4ec;opacity:0;pointer-events:none}.is-folding .fold-header{animation:fold-header-in .45s .25s both}.is-folding .card-content{animation:fold-content-out .55s .15s both}.is-opening .fold-header{animation:fold-header-out .3s both}.is-opening .card-content{animation:fold-content-in .6s .1s both}.is-folding,.is-opening{border-radius:14px}.is-folding .fold-header .ancestor-open{opacity:0}.type.tool:before{background:#a4914e}.ancestor-mini.tool{color:#9a8749;background:#fbf7e8}.part-chip{border-radius:6px;min-height:35px;gap:6px;background:#f6f8f1;border-color:#d4dec8;padding:7px 9px;font-size:14px;line-height:1.25;margin:3px 2px}.part-chip.tool{background:#fbf8ed;border-color:#e1d8b9;color:#7e713e}.part-chip .mini-role{font-size:9px;color:#879575;font-weight:400;align-self:center;margin-left:3px}.part-chip.tool .mini-role{color:#a29361}.role-dot{height:5px;width:5px;flex-shrink:0;border-radius:50%;background:#769674}.part-chip.tool .role-dot{border-radius:1px;background:#ac9651}.part-chip.try{border-width:1.5px;padding-top:20px;outline-width:1px;outline-offset:2px}.part-chip.try:before{font-size:8px;top:5px}.part-chip .arrow{font-size:13px;color:#8da380}.part-chip.tool .arrow{color:#aa9a5e}.step-detail{line-height:2;font-size:16px}.step-summary{font-size:16px}.type{font-size:10px}.step-visual{overflow:hidden}.tool-rack{display:flex;gap:5px;align-items:start;flex-wrap:wrap;margin-top:8px;width:fit-content;background:#faf9f0;border-bottom:1px solid #e9e4cc;border-radius:7px;padding:4px 4px 0}.rack-tool{width:44px;min-height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:5px;position:relative;padding:3px}.rack-tool:hover{background:#ece8d3}.rack-tool svg{width:30px;height:27px}.rack-tool span{font-size:8px;line-height:1.15;color:#a49565;position:absolute;top:42px;white-space:nowrap;background:#fffdf3;border:1px solid #dfd8bb;padding:4px 5px;border-radius:4px;opacity:0;pointer-events:none;z-index:2}.rack-tool:hover span,.rack-tool:focus-visible span{opacity:1}.use-explanation{margin-top:17px;line-height:1.65;font-size:13px;color:#7a825f;border-left:2px solid #c6b875;padding:0 0 0 14px}.use-explanation p{margin-top:7px;max-width:660px}.use-action{font-size:13px;border:1px solid #d2c69b;border-radius:7px;padding:8px 12px;color:#7d7043;background:#fcf9ee;min-height:40px}.use-action:hover{background:#f4eed9}.tool-action{position:absolute;right:3px;top:10px;width:41px;opacity:.65;transform:translate(0,0)}.tool-action svg{height:30px}.action-line{position:absolute;top:34px;left:15px;width:1px;height:14px;border-left:1px dashed #c2ac67;opacity:0}.using-tool .tool-action{animation:tool-approach 2.8s ease-in-out infinite;opacity:1}.using-tool .action-line{animation:tool-contact 2.8s ease-in-out infinite}.using-tool .step-visual>svg{animation:work-pulse 2.8s ease-in-out infinite}.sample-label{background:#f8f5e6;border-color:#e0d6ac;color:#8e7a40}.sample .hero h1{font-size:54px}.ancestor-sub{text-transform:none;letter-spacing:.02em;font-size:11px}.crumb-relation{font-size:9px}.trail-wrap{padding-top:8px;padding-bottom:8px}.card-content .return-button{margin-top:4px}.step details{margin-top:7px}.page-footer{padding-top:16px}.part-note{line-height:1.6}.making{padding-bottom:30px}
@keyframes fold-header-in{from{opacity:0}to{opacity:1}}@keyframes fold-content-out{from{opacity:1}to{opacity:0}}@keyframes fold-header-out{from{opacity:1}to{opacity:0}}@keyframes fold-content-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes tool-approach{0%,100%{transform:translate(0,0)}35%,65%{transform:translate(-43px,21px)}}@keyframes tool-contact{0%,25%,85%,100%{opacity:0}40%,65%{opacity:1}}@keyframes work-pulse{0%,25%,85%,100%{filter:none}40%,65%{filter:drop-shadow(0 0 5px #dccb7b)}}
@media(max-width:640px){.active-card,.ancestor{margin-left:0!important}.sample .hero h1{font-size:43px}.fold-header{height:78px}.fold-header .ancestor-description{display:none}.step-detail{font-size:16px;line-height:2.05}.part-chip{font-size:14px;min-height:40px;gap:5px;padding:7px 8px}.part-chip .mini-role{font-size:9px}.part-chip.try{min-height:49px}.tool-rack{padding:5px 5px 3px;gap:4px;max-width:100%}.rack-tool{width:48px;min-height:53px;gap:2px;justify-content:start}.rack-tool span{position:static;opacity:1;white-space:normal;background:none;border:0;padding:0;font-size:8px;text-align:center;max-width:48px}.rack-tool svg{width:27px;height:25px}.use-explanation{font-size:13px;line-height:1.7;padding-left:11px}.use-action{font-size:13px;min-height:44px}.step-visual{height:151px}.tool-action{right:9px;top:17px;width:41px}.sample .section-meta{max-width:80px;text-align:right}.card-topline .meta{max-width:165px}.ancestor-sub{font-size:10px}.section-heading .section-meta{max-width:108px;text-align:right}.trail-arrow{font-size:10px}.crumb-relation{font-size:8px}.crumb{font-size:14px}.sample .hero{padding-top:24px}.sample .hero .deck{font-size:21px}.bottom-note{font-size:13px}.physics p{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
