
:root{--ink:#104b3b;--deep:#103c31;--paper:#f7f4ed;--line:#cfd6c8;--lime:#d9e7b6;--soft:#eaeede}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:19px/1.55 Arial,sans-serif}button,a,input{touch-action:manipulation}button{cursor:pointer;font:inherit;border:0}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a86420;outline-offset:5px}button:disabled{cursor:default}button,a{ -webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}h2{font:normal clamp(38px,4.8vw,72px)/1.06 Georgia,serif;letter-spacing:-.035em}h3{font-size:26px;line-height:1.2}.eyebrow{font-size:17px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.muted{color:#4c6d60}.shell{max-width:1280px;margin:auto;padding:0 5vw}.section{padding:110px 0}.section-lead{max-width:770px;margin-bottom:45px}.section-lead p{font-size:21px;max-width:650px}.site-header{position:absolute;z-index:20;top:26px;left:4vw;right:4vw;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:25px;font-weight:700;letter-spacing:-1px;text-decoration:none}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{text-decoration:none;font-size:18px}.pill{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:52px;border-radius:999px;padding:14px 25px;background:var(--ink);color:white;text-decoration:none;font-size:19px;line-height:1.25}.pill.light{background:var(--paper);color:var(--ink)}.outline{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:transparent;border:1px solid currentColor;border-radius:999px;padding:12px 22px;color:inherit;text-decoration:none}.text-link{font-weight:700;text-underline-offset:5px}.intro{height:330vh;position:relative}.intro-sticky{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate}.intro canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}.hero{position:absolute;top:11vh;left:0;width:100%;text-align:center;pointer-events:none;z-index:2;padding:0 20px}.hero h1{font:normal clamp(96px,16vw,210px)/.85 Georgia,serif;letter-spacing:-.065em;margin:0}.hero p{font:clamp(26px,3.5vw,42px)/1.2 Georgia;margin:24px 0}.hero button{pointer-events:auto}.scroll-hint{display:table;margin:18px auto 0;padding:9px 18px;border:1px solid #c8d0bd;border-radius:999px;background:#fcfaf5;color:#104b3b;font-size:18px;line-height:1.3;box-shadow:0 3px 18px #183e3210}.controls{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);width:min(630px,92vw);padding:12px 16px;background:#fcfaf5f5;border:1px solid #c5cfbb;border-radius:18px;z-index:9;box-shadow:0 8px 40px #183e3218}.row{display:flex;align-items:center;gap:10px}.controls button{background:transparent;color:var(--ink);padding:5px;min-width:44px;min-height:44px;font-size:22px}.controls input{flex:1;min-width:30px;accent-color:#174e3c}.control-note{display:flex;justify-content:space-between;gap:14px;font-size:17px;line-height:1.3;margin-top:6px;color:#315a46}.course{position:absolute;top:0;left:0;background:#fff8e8;transform-origin:0 0;z-index:3;overflow:auto;overscroll-behavior:contain;display:none;flex-direction:column;gap:12px;padding:28px;color:#104b3b;font-size:19px;line-height:1.4;border:2px solid #e8d5a9;box-shadow:inset 0 0 30px #e4d5b255}.course h2{font:normal var(--heading,48px)/1.08 Georgia;margin:0;flex:none}.course svg{display:block;width:100%;min-height:36px;flex:1 0 36px;pointer-events:none}.course .course-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;flex:none}.course button,.course a{font-size:19px;line-height:1.25;min-height:48px}.course .sample{text-decoration:none;background:transparent;color:#104b3b;padding:12px 4px}.course .eyebrow{font-size:18px;letter-spacing:.08em;color:#42634a;flex:none}.course .note{font-size:18px;line-height:1.35;color:#42634a;flex:none}.course.compact{padding:16px;gap:8px}.course.compact .course-actions{gap:4px 10px}.course.compact .pill{padding:12px 18px}.fallback{display:none;position:absolute;inset:15%;z-index:10;background:#fff8e8;padding:35px;border-radius:20px}.no-webgl .intro,.motion-off .intro{height:100svh}.no-webgl .intro canvas{display:none}.no-webgl .fallback{display:block}.no-webgl .hero,.no-webgl .controls{display:none}.motion-off .controls{display:none}.skip-intro{position:absolute;right:4vw;bottom:135px;z-index:5;padding:10px 16px;border-radius:999px;background:#fcfaf5;border:1px solid #c5cfbb;text-decoration:none;font-size:17px}.divider{height:1px;background:var(--line)}.two-col{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;align-items:start}.goal-tabs{display:flex;flex-direction:column;border-top:1px solid var(--line)}.goal-tab{display:grid;grid-template-columns:45px 1fr 28px;gap:12px;align-items:center;width:100%;padding:24px 5px;text-align:left;color:var(--ink);background:transparent;border-bottom:1px solid var(--line);font-size:25px;line-height:1.2}.goal-tab .num{font-size:17px;color:#5f7869}.goal-tab[aria-selected=true]{font-weight:700}.goal-tab[aria-selected=true] .arrow{transform:rotate(45deg)}.goal-tab .arrow{transition:transform .25s}.goal-panel{min-height:430px;background:var(--deep);color:var(--paper);padding:40px;border-radius:3px;position:relative;overflow:hidden}.goal-panel:before{content:'';position:absolute;width:260px;height:260px;border:1px solid #c6d9b145;border-radius:50%;right:-110px;top:-100px}.goal-panel h3{font:normal 38px/1.1 Georgia;max-width:430px;margin:20px 0 30px}.goal-output{margin:0;padding:0;list-style:none;display:grid;gap:12px}.goal-output li{display:flex;gap:15px;align-items:flex-start;padding:16px 0;border-top:1px solid #c6d9b145}.goal-output li span:first-child{font-size:17px;color:#c9dfac;min-width:30px}.goal-note{font-size:17px;color:#d2ddcb;margin:25px 0 0}.lesson{background:var(--deep);color:var(--paper)}.lesson .section-lead{max-width:900px}.lesson-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:5vw;align-items:start}.lesson-options{display:grid;gap:12px;margin:24px 0}.lesson-option{display:grid;grid-template-columns:30px 1fr;gap:13px;align-items:start;width:100%;text-align:left;background:#ffffff08;color:var(--paper);border:1px solid #dce9ca50;padding:20px;border-radius:4px}.lesson-option[aria-pressed=true]{background:#d9e7b6;color:#103c31;border-color:#d9e7b6}.check{border:1px solid currentColor;width:25px;height:25px;display:flex;align-items:center;justify-content:center;font-size:18px;margin-top:1px}.lesson-option strong{display:block;font-size:22px;margin-bottom:5px}.lesson-option small{font-size:18px;line-height:1.4;display:block}.lesson-prompt{padding:22px;border-left:2px solid #b7cda0;margin-top:25px;font-size:19px;background:#ffffff07}.lesson-prompt p{margin-bottom:0}.lesson-result{position:sticky;top:25px;background:#fcfaf5;color:var(--ink);padding:34px;border-radius:5px;min-height:410px}.result-status{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:17px;margin-bottom:24px}.dots{display:flex;gap:7px}.dot{width:9px;height:9px;border-radius:50%;background:#dce2d5}.dot.on{background:var(--ink)}.lesson-result h3{font:normal 35px/1.13 Georgia;margin-bottom:25px}.agenda{list-style:none;padding:0;margin:0}.agenda li{display:grid;grid-template-columns:85px 1fr;gap:15px;padding:15px 0;border-top:1px solid #cbd4c3}.agenda time{font-weight:700;font-size:18px}.agenda p{margin:0}.result-explain{font-size:18px;border-top:1px solid #cbd4c3;margin:24px 0 0;padding-top:20px;color:#486a55}.lesson-demo{font-size:17px;color:#d6e1cd;max-width:600px}.route{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:45px 0 35px}.route-tab{position:relative;text-align:left;background:transparent;color:var(--ink);padding:28px 25px 28px 0;border-top:2px solid #cbd4c3;font-size:26px}.route-tab:before{content:'';position:absolute;left:0;top:-8px;width:14px;height:14px;background:var(--paper);border:2px solid #8d9f8b;border-radius:50%}.route-tab[aria-selected=true]{border-color:var(--ink);font-weight:700}.route-tab[aria-selected=true]:before{background:var(--ink);border-color:var(--ink)}.route-tab small{display:block;font-size:18px;font-weight:400;margin-top:8px;color:#4c6d60}.route-panel{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:start;padding:36px;background:#e9eedf;border-radius:4px;min-height:190px}.route-panel h3{font:normal 36px/1.1 Georgia;margin:0}.route-panel p{margin:0 0 20px;max-width:650px}.beforeafter{background:#e9eedf}.ba-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:25px;align-items:center;margin-bottom:35px}.segmented{display:inline-flex;padding:5px;border:1px solid #aebda6;border-radius:999px;gap:3px}.segmented button{padding:12px 24px;border-radius:999px;min-height:48px;background:transparent;color:var(--ink);font-size:19px}.segmented button[aria-pressed=true]{background:var(--ink);color:white}.ba-canvas{background:var(--paper);padding:45px;min-height:360px;border:1px solid #cdd5c4;border-radius:5px}.ba-canvas h3{font:normal 34px/1.1 Georgia;margin-bottom:30px}.ba-items{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ba-item{padding:24px;min-height:170px;background:#fffdf8;border:1px solid #cbd3c1;transition:transform .35s,background .35s}.ba-item .item-label{display:block;font-size:17px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:15px;color:#53765c}.ba-item p{margin:0;font-size:22px;line-height:1.35}.ba-canvas[data-state=before] .ba-item:nth-child(1){transform:rotate(-3deg) translateY(12px)}.ba-canvas[data-state=before] .ba-item:nth-child(2){transform:rotate(2deg) translateY(-6px)}.ba-canvas[data-state=before] .ba-item:nth-child(3){transform:rotate(-1deg) translateY(18px)}.ba-canvas[data-state=after] .ba-item{background:#edf2e4;border-color:#78936e}.ba-caption{max-width:800px;margin:25px 0 0;font-size:18px;color:#42624b}.entry{padding:110px 0 90px}.entry h2{max-width:900px;font-size:clamp(45px,6vw,88px)}.entry-bottom{display:flex;justify-content:space-between;gap:35px;align-items:end}.entry-bottom p{max-width:640px;margin:0;font-size:21px}.footer{padding:32px 0;border-top:1px solid var(--line);font-size:17px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer a{text-underline-offset:4px}.reveal{opacity:1}.reveal-ready .reveal:not(.is-visible){opacity:0;transform:translateY(24px)}.reveal-ready .reveal{transition:opacity .6s,transform .6s}.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}
@media(max-width:800px){.section{padding:75px 0}.two-col,.lesson-grid{grid-template-columns:1fr;gap:32px}.goal-panel{min-height:340px}.lesson-result{position:relative;top:0}.route-panel{grid-template-columns:1fr;gap:20px}.ba-items{grid-template-columns:1fr}.ba-item{min-height:120px}.ba-canvas{padding:25px}.entry-bottom{display:block}.entry-bottom p{margin-bottom:30px}.site-header nav a:not(:last-child){display:none}.route-tab{font-size:23px}.route-tab small{font-size:17px}.goal-tab{font-size:23px}.route-panel{padding:25px}}
@media(max-width:500px){body{font-size:18px}.shell{padding:0 6vw}.site-header{top:19px;left:6vw;right:6vw}.brand{font-size:21px}.site-header nav a{font-size:17px}.hero{top:16vh}.hero h1{font-size:clamp(96px,25vw,145px)}.hero p{font-size:26px;margin:22px 0}.scroll-hint{font-size:17px;max-width:86vw}.hero .pill{font-size:18px}.controls{bottom:12px;padding:10px 12px}.control-note{font-size:17px}.control-note span:last-child{display:none}.skip-intro{bottom:123px;right:6vw;font-size:17px}.goal-panel{padding:27px}.goal-panel h3{font-size:32px}.lesson-result{padding:25px}.lesson-result h3{font-size:31px}.agenda li{grid-template-columns:70px 1fr;gap:10px}.agenda time{font-size:17px}.route{grid-template-columns:1fr;margin-top:30px}.route-tab{padding:24px 0}.route-tab:before{display:none}.route-tab small{margin-top:5px}.ba-toolbar{display:block}.segmented{margin-top:15px}.ba-item p{font-size:20px}.ba-canvas{padding:22px}.entry{padding:75px 0}.entry-bottom p,.section-lead p{font-size:19px}.footer{font-size:17px}.lesson-option{padding:17px}.lesson-option strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready .reveal:not(.is-visible){opacity:1;transform:none}}
/* v4: skill workbench; the approved B entry and its camera are unchanged. */
.workshop{padding:105px 0 90px;background:#f4f1e8;overflow:hidden}.workshop-shell{max-width:1440px}.workshop-intro{padding:0 10px}.workshop-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:6vw;align-items:end}.workshop-heading h2{font-size:clamp(50px,6.3vw,88px);line-height:1.02;margin:0;letter-spacing:-.045em}.workshop-heading p{font-size:21px;line-height:1.5;max-width:400px;margin:0 0 6px}.object-shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:3.5%;padding:60px 22px 65px;position:relative;isolation:isolate}.object-shelf:after{content:'';position:absolute;left:0;right:0;bottom:43px;height:1px;background:#abb5a2;z-index:-1}.work-object{position:relative;text-align:left;display:flex;flex-direction:column;min-height:310px;padding:26px 26px 20px;color:#104b3b;box-shadow:2px 5px 0 #d3d0bf,8px 15px 22px #283c2c13;border:1px solid #c9cbb7;transition:transform .4s,box-shadow .4s,border-color .4s;border-radius:1px;background:#fdfbf3}.work-object:hover{transform:translateY(-9px) rotate(0deg)}.work-object[aria-pressed=true]{border-color:#104b3b;box-shadow:2px 5px 0 #104b3b,9px 17px 24px #283c2c20;transform:translateY(-10px) rotate(-2deg)}.object-notebook{transform:rotate(-3deg);background:linear-gradient(90deg,#e8eadc 0 12px,#fdfbf3 12px)}.object-notebook:before{content:'';position:absolute;left:18px;top:0;bottom:0;border-left:1px solid #b4beac}.object-slides{transform:rotate(2deg);background:#e7eddb}.object-map{transform:rotate(-1deg);background-color:#f0eddf;background-image:linear-gradient(#80947814 1px,transparent 1px),linear-gradient(90deg,#80947814 1px,transparent 1px);background-size:15px 15px}.object-no{font-size:16px;letter-spacing:.06em;font-weight:700}.object-title{font:normal clamp(28px,3.1vw,43px)/1.05 Georgia,serif;margin:20px 0 10px;letter-spacing:-.02em;position:relative;z-index:1}.object-action{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:18px;margin-top:auto;padding-top:15px;border-top:1px solid #a7b39c}.object-action>span{font-size:26px;line-height:1}.object-preview{height:75px;display:block;position:relative;margin:2px 0 17px}.notebook-preview{padding-top:8px;width:100%}.notebook-preview i{display:block;margin:13px 0;border-top:1px solid #87a183;width:65%}.notebook-preview i:nth-child(2){width:45%}.notebook-preview b{position:absolute;right:4px;top:0;font:normal 57px Georgia;color:#6c8366}.slides-preview{width:150px;margin-left:auto;margin-right:4px}.slides-preview i{position:absolute;width:100px;height:64px;left:0;top:0;background:#c6d3b8;border:1px solid #718768;transform:rotate(-9deg)}.slides-preview i:nth-child(2){left:25px;top:3px;transform:rotate(3deg);background:#edf2e3}.slides-preview i:nth-child(3){left:50px;top:7px;transform:rotate(11deg);background:#104b3b}.slides-preview b{display:block;width:40px;height:1px;background:#e5edce;position:relative;top:31px;left:30px}.map-preview{width:100%;height:85px;margin:0 0 10px;fill:#f4f1e8;stroke:#597853;stroke-width:1.5}.map-preview circle:first-of-type{fill:#104b3b}.workbench{scroll-margin-top:30px;position:relative;background:#e7e7da;border:1px solid #b6beab;border-radius:3px;box-shadow:0 18px 55px #26412d12}.bench-topline{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:22px 30px;border-bottom:1px solid #b6beab}.bench-topline h3{font:normal 27px/1.2 Georgia;margin:0}.bench-reset{font-size:18px;display:flex;gap:15px;background:transparent;color:var(--ink);padding:8px 0;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}.bench-reset span{font-size:24px;line-height:1}.bench-surface{position:relative;display:grid;grid-template-columns:minmax(250px,.8fr) 65px minmax(0,1.2fr);padding:35px 32px 45px;background-image:radial-gradient(#70866a27 .8px,transparent .8px);background-size:18px 18px;align-items:start;gap:0}.bench-label{font-size:16px;line-height:1.35;font-weight:700;letter-spacing:.08em;display:flex;justify-content:space-between;gap:15px}.bench-help{font-size:18px;color:#486044;line-height:1.4;margin:12px 0 30px}.ingredient{display:flex;flex-direction:column;position:relative;text-align:left;width:100%;padding:18px 20px 16px;border:1px solid #b9b8a0;border-radius:1px;background:#f6e8b8;color:#354b31;box-shadow:3px 5px 0 #2e492c0e,7px 9px 14px #283b2712;transform:rotate(-2deg);margin:0 0 22px;transition:transform .4s,background .4s,box-shadow .4s;isolation:isolate}.ingredient:after{content:'';position:absolute;top:0;right:0;width:20px;height:20px;background:linear-gradient(225deg,#e7e7da 49%,#998d6440 50%,transparent 53%)}.ingredient-task{background:#ead6c7;transform:rotate(1.5deg);margin-left:8px;width:calc(100% - 8px)}.ingredient-format{background:#d9e2cb;transform:rotate(-.7deg)}.ingredient:hover{transform:rotate(0) translateY(-4px)}.ingredient[aria-pressed=true]{transform:rotate(0);box-shadow:inset 0 0 0 1px currentColor,2px 3px 0 #2e492c15}.ingredient-top{font-size:15px;font-weight:700;letter-spacing:.07em;display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.piece-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid currentColor;border-radius:50%;font-size:22px;line-height:1}.ingredient strong{font-size:21px;line-height:1.2;margin-bottom:10px;max-width:270px}.ingredient-copy{font-size:18px;line-height:1.4;display:block}.piece-action{font-size:17px;font-weight:700;margin-top:14px;padding-top:9px;border-top:1px solid #5f6d4b45}.ingredient[aria-pressed=true] .piece-action{font-weight:400}.ingredient[aria-pressed=true] .piece-toggle{background:#104b3b;color:white;border-color:#104b3b}.ingredient.dragging{opacity:.5}.transfer{align-self:stretch;position:relative;padding-top:115px;pointer-events:none}.transfer svg{width:100%;height:500px;position:absolute;top:100px;left:0;overflow:visible;fill:none;stroke:#8da183;stroke-width:1}.transfer-ink{stroke:#104b3b;stroke-width:2.5;stroke-dasharray:20 750;stroke-dashoffset:20;opacity:0}.workbench.ink-moving .transfer-ink{animation:ink-send .85s ease-in-out}.transfer span{position:absolute;left:18px;top:450px;writing-mode:vertical-rl;font-size:13px;letter-spacing:.12em;opacity:.8;line-height:1.8}.result-zone{min-width:0;padding-left:12px;transition:box-shadow .2s}.result-zone.drag-over{outline:3px dashed #647e4d;outline-offset:10px}.result-heading{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:28px}.result-heading .bench-label{max-width:250px}.assembly-count{font-size:17px;white-space:nowrap;border:1px solid #a7b69a;padding:4px 10px;border-radius:999px}.paper-stack{position:relative;margin:0 8px 25px 0;perspective:1500px}.paper-under{position:absolute;inset:0;border:1px solid #c6c8b5;background:#f9f7ef;box-shadow:0 6px 13px #293c2910;pointer-events:none}.paper-under-one{transform:rotate(2deg) translate(4px,6px)}.paper-under-two{transform:rotate(-1deg) translate(-5px,2px)}.working-paper{position:relative;min-height:600px;background:#fffdf6;color:#213f30;border:1px solid #bbc4af;padding:25px 28px 22px;box-shadow:0 15px 24px #273c2912;transform:rotate(-1deg);transition:transform .6s,background .5s;transform-origin:50% 50%;overflow:hidden}.working-paper:before{content:'';position:absolute;width:40px;height:11px;border:1px solid #6b7c62;border-radius:8px;top:-4px;left:calc(50% - 20px);background:#c2c7b4;box-shadow:0 2px 1px #213f3020}.paper-meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:.08em;gap:12px;border-bottom:1px solid #b5c0aa;padding:0 0 16px;margin-bottom:22px;font-weight:700}.paper-meta>span:last-child{font:normal 36px/.9 Georgia}.working-paper h3{font:normal clamp(31px,3.5vw,47px)/1.03 Georgia;letter-spacing:-.035em;margin:0 0 18px;max-width:430px}.paper-context{display:flex;gap:10px;font-size:18px;line-height:1.4;padding:0 0 20px;color:#68735e;min-height:70px;transition:color .3s}.context-mark{flex:none;width:8px;height:8px;margin-top:8px;border-radius:50%;background:#a9b398}.working-paper[data-context=true] .paper-context{color:#263f2b}.working-paper[data-context=true] .context-mark{background:#9c782d}.paper-rows{display:grid;gap:12px;margin:10px 0 24px;position:relative;min-height:290px}.paper-row{position:relative;display:grid;grid-template-columns:1fr;align-items:center;background:#f4f3e9;padding:16px 18px;min-height:74px;border:1px solid #dddccd;transition:transform .65s cubic-bezier(.2,.7,.2,1),background .45s,border-color .45s;transform-origin:50% 50%}.paper-row:nth-child(1){transform:translate(8px,0) rotate(-2deg)}.paper-row:nth-child(2){transform:translate(-8px,0) rotate(1.5deg)}.paper-row:nth-child(3){transform:translate(7px,0) rotate(-1deg)}.paper-row:nth-child(4){transform:translate(-3px,0) rotate(1deg)}.row-index{display:none;font-size:18px;font-weight:700}.row-copy{font-size:18px;line-height:1.35;margin:0}.row-label{display:none;font-size:15px;letter-spacing:.04em;font-weight:700;margin-bottom:4px}.working-paper[data-structured=true] .paper-row{transform:translate(0) rotate(0);background:#f1f3e8;border-color:#c6d0b8}.working-paper[data-formatted=true] .paper-row{grid-template-columns:60px 1fr;gap:16px;transform:translate(0) rotate(0);padding:16px 0;background:transparent;border-width:1px 0 0;min-height:78px}.working-paper[data-formatted=true] .row-index{display:block}.working-paper[data-formatted=true] .row-label{display:block}.working-paper[data-formatted=true]{transform:rotate(0deg)}.working-paper[data-kind=presentation]{background:#edf1e2}.working-paper[data-kind=presentation][data-formatted=true] .paper-rows{grid-template-columns:1fr 1fr;gap:14px}.working-paper[data-kind=presentation][data-formatted=true] .paper-row{display:flex;flex-direction:column;gap:12px;align-items:flex-start;justify-content:space-between;padding:18px 17px;background:#fffdf5;border:1px solid #a8b99c;min-height:158px;box-shadow:3px 4px 0 #a8b99c44}.working-paper[data-kind=presentation][data-formatted=true] .paper-row:first-child{background:#104b3b;color:#fffdf5}.working-paper[data-kind=presentation] .row-index{font:normal 34px/1 Georgia}.working-paper[data-kind=project]{background-color:#f5f2e7;background-image:linear-gradient(#889d7910 1px,transparent 1px),linear-gradient(90deg,#889d7910 1px,transparent 1px);background-size:20px 20px}.working-paper[data-kind=project][data-formatted=true] .paper-rows{gap:0;border-left:1px solid #607c55;margin-left:8px;padding:0 0 0 22px}.working-paper[data-kind=project][data-formatted=true] .paper-row{border:0;padding:15px 0;grid-template-columns:38px 1fr;gap:16px;min-height:92px}.working-paper[data-kind=project][data-formatted=true] .paper-row:before{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:#f5f2e7;border:2px solid #607c55;left:-28px;top:33px}.paper-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:16px;border-top:1px solid #b5c0aa;color:#536a48;font-size:16px}.paper-bottom span{max-width:280px}.paper-bottom svg{width:65px;height:28px;fill:none;stroke:#607c55;stroke-width:1.5;flex:none}.meaning-change{display:flex;gap:16px;margin:30px 0 0;min-height:120px}.change-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border:1px solid #8da17f;border-radius:50%;font:normal 25px Georgia}.meaning-change strong{font-size:21px;line-height:1.25;display:block;padding-top:5px;margin-bottom:9px}.meaning-change p{font-size:18px;line-height:1.45;color:#4e6344;margin:0}.workbench.change-context .working-paper{box-shadow:0 0 0 2px #a88c4a,0 15px 24px #273c2912}.workbench.change-task .working-paper{box-shadow:0 0 0 2px #a27659,0 15px 24px #273c2912}.workbench.change-format .working-paper{box-shadow:0 0 0 2px #6e8657,0 15px 24px #273c2912}.paper-row.just-changed{animation:meaning-arrive .75s ease-out}.prompt-strip{position:relative;display:grid;grid-template-columns:160px 1fr;gap:12px 30px;background:#f9f7ec;border-top:1px solid #b6beab;border-bottom:1px solid #b6beab;padding:25px 32px}.prompt-strip .bench-label{padding-top:6px}.prompt-strip p{font:normal 23px/1.45 Georgia;margin:0;max-width:900px}.prompt-segment{border-bottom:2px solid transparent}.prompt-segment.context{border-color:#b89c54}.prompt-segment.task{border-color:#b38363}.prompt-segment.format{border-color:#759058}.prompt-hint{grid-column:2;font-size:16px;color:#64705a}.bench-bottom{padding:20px 32px;display:flex;justify-content:space-between;align-items:center;gap:30px}.bench-bottom p{font-size:16px;line-height:1.45;color:#52684a;max-width:600px;margin:0}.finish-demo{display:flex;align-items:center;gap:15px;font-size:18px;background:#104b3b;color:#fffdf5;padding:13px 20px;min-height:52px;white-space:nowrap;border-radius:999px}.finish-demo:disabled{background:transparent;color:#104b3b;border:1px solid #a0b18e}.learning-line{padding:95px 0;background:#104b3b;color:#f5f2e7}.learning-line h2{font-size:clamp(45px,5.2vw,75px);max-width:900px;margin:20px 0 60px}.learning-path{display:grid;grid-template-columns:1fr 70px 1fr 70px 1fr;gap:22px;align-items:start}.learning-path>div>span{font-size:17px;color:#b8cba1}.learning-path h3{font:normal 33px Georgia;margin:13px 0}.learning-path p{font-size:19px;color:#d7dfcb;line-height:1.5;margin:0}.learning-path svg{width:70px;height:25px;fill:none;stroke:#a9c18e;stroke-width:1.2;margin-top:54px}.workshop-entry{background:#f4f1e8}.workshop-entry .pill{white-space:nowrap}.workbench button:focus-visible,.work-object:focus-visible{outline:3px solid #a75f25;outline-offset:6px}.workbench .piece-toggle{flex:none}@keyframes ink-send{0%{opacity:0;stroke-dashoffset:20}15%{opacity:1}85%{opacity:1}100%{opacity:0;stroke-dashoffset:-700}}@keyframes meaning-arrive{0%{background:#d3dfbf;translate:0 9px}100%{translate:0 0}}@media(min-width:1400px){.bench-surface{grid-template-columns:minmax(280px,.8fr) 85px minmax(0,1.2fr);padding:40px 45px 50px}.working-paper{padding:30px 38px}.ingredient{padding:20px 23px}}@media(max-width:1000px){.workshop-heading{gap:5vw;grid-template-columns:1.15fr .85fr}.workshop-heading p{font-size:19px}.object-shelf{padding-left:8px;padding-right:8px;gap:3%}.work-object{padding:23px 20px 18px;min-height:300px}.object-title{font-size:33px}.object-action{font-size:16px}.object-no{font-size:13px}.bench-surface{padding:30px 22px;grid-template-columns:minmax(240px,.85fr) 25px minmax(0,1.15fr)}.transfer{opacity:.5}.transfer span{display:none}.result-zone{padding-left:10px}.working-paper{padding:24px 20px}.working-paper h3{font-size:35px}.ingredient{padding:16px}.ingredient strong{font-size:20px}.ingredient-copy{font-size:18px}.paper-row{padding:14px;min-height:85px}.working-paper[data-formatted=true] .paper-row{grid-template-columns:47px 1fr;gap:10px}.result-heading{flex-direction:column;gap:10px}.result-heading .bench-label{max-width:none}.bench-bottom{align-items:start}.bench-bottom p{max-width:430px}.finish-demo{white-space:normal;text-align:left;line-height:1.3}.learning-path{grid-template-columns:1fr 30px 1fr 30px 1fr;gap:15px}.learning-path svg{width:30px}}
@media(max-width:760px){.workshop{padding:75px 0 65px}.workshop-heading{display:block}.workshop-heading h2{font-size:clamp(46px,9vw,65px)}.workshop-heading p{font-size:19px;max-width:540px;margin-top:25px}.object-shelf{padding:45px 5px 55px;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.work-object{min-height:228px;padding:17px 14px 14px}.object-no{font-size:11px;line-height:1.35;min-height:30px;letter-spacing:.02em}.object-title{font-size:clamp(23px,3.5vw,29px);margin:9px 0 12px}.object-action{font-size:0;padding-top:10px}.object-action>span{font-size:24px;margin-left:auto}.object-preview{height:55px;margin:0 0 10px}.notebook-preview b{font-size:41px}.notebook-preview i{margin:9px 0}.slides-preview{transform:scale(.75);transform-origin:right center;width:105px}.map-preview{height:55px}.bench-topline{padding:20px;display:block}.bench-topline h3{font-size:27px;margin-bottom:15px}.bench-reset{font-size:17px}.bench-surface{display:block;padding:26px 20px 25px}.ingredients{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ingredients>.bench-label{grid-column:1/-1}.bench-help{grid-column:1/-1;margin:0 0 12px;font-size:18px}.bench-help br{display:none}.ingredient{padding:14px 12px 12px;margin:0;width:100%;min-width:0}.ingredient-task{margin-left:0}.ingredient-top{font-size:11px;letter-spacing:.02em;margin-bottom:12px;gap:8px;align-items:start;min-height:40px}.piece-toggle{width:24px;height:24px;font-size:21px}.ingredient strong{font-size:19px;margin-bottom:8px;min-height:46px}.ingredient-copy{font-size:16px}.piece-action{font-size:14px}.transfer{height:60px;padding:0;opacity:1}.transfer svg{position:static;width:100%;height:60px;transform:rotate(90deg);max-width:80px;margin:auto;display:block}.result-zone{padding:0}.result-heading{flex-direction:row;align-items:center;margin:15px 0 24px}.result-heading .bench-label{font-size:13px;max-width:240px}.working-paper{padding:25px 28px;min-height:570px;max-width:580px;margin:auto}.paper-stack{max-width:580px;margin:0 auto}.working-paper h3{font-size:40px}.paper-context{min-height:65px}.paper-rows{min-height:290px}.paper-row{min-height:70px;padding:15px 18px}.meaning-change{max-width:580px;margin:30px auto 0;min-height:100px}.prompt-strip{display:block;padding:24px 20px}.prompt-strip>.bench-label{font-size:14px;margin-bottom:13px}.prompt-strip p{font-size:22px}.prompt-hint{display:block;margin-top:16px}.bench-bottom{padding:22px 20px;display:block}.bench-bottom p{max-width:none;font-size:16px;margin-bottom:20px}.finish-demo{font-size:18px;white-space:nowrap}.learning-line{padding:75px 0}.learning-line h2{font-size:45px;margin-bottom:40px}.learning-path{grid-template-columns:1fr;gap:25px}.learning-path>div{display:grid;grid-template-columns:35px 1fr;gap:0 15px}.learning-path h3{margin:0 0 12px;font-size:30px}.learning-path p{grid-column:2;max-width:430px}.learning-path>div>span{padding-top:7px}.learning-path svg{display:none}.workshop-entry .entry-bottom p{font-size:19px}}
@media(max-width:480px){.workshop-shell{padding:0 5vw}.workshop-heading h2{font-size:46px}.object-shelf{gap:9px;padding-top:40px}.work-object{padding:13px 10px;min-height:216px}.object-notebook:before{left:7px}.object-title{font-size:23px}.object-no{font-size:10px}.object-preview{height:50px}.slides-preview{transform:scale(.54);width:95px;transform-origin:right center;position:relative;left:-2px}.notebook-preview b{font-size:35px}.map-preview{height:50px}.bench-topline{padding:20px 17px}.bench-topline h3{font-size:25px}.bench-surface{padding:23px 16px}.ingredients{display:flex;flex-direction:column;gap:15px}.ingredients>.bench-label{font-size:14px}.bench-help{margin:-3px 0 5px}.ingredient{padding:16px 18px;display:grid;grid-template-columns:1fr 33px;gap:0;min-height:0}.ingredient-top{grid-column:1/-1;min-height:0;font-size:13px;margin-bottom:9px}.piece-toggle{position:absolute;right:18px;top:17px;width:27px;height:27px}.ingredient strong{min-height:0;font-size:21px;grid-column:1/-1;margin-bottom:8px}.ingredient-copy{font-size:18px;grid-column:1/-1;padding-right:3px}.piece-action{grid-column:1/-1;font-size:16px;margin-top:12px}.ingredient[aria-pressed=true]{transform:rotate(0)}.transfer{height:45px}.transfer svg{height:45px}.result-heading{gap:10px;margin-top:13px}.result-heading .bench-label{font-size:12px;max-width:160px}.assembly-count{font-size:15px;padding:4px 8px}.working-paper{padding:23px 19px;min-height:590px}.working-paper h3{font-size:34px}.paper-meta{font-size:10px;letter-spacing:.04em}.paper-context{font-size:18px}.paper-row{padding:15px 12px}.row-copy{font-size:18px}.working-paper[data-formatted=true] .paper-row{grid-template-columns:44px 1fr;gap:12px}.row-index{font-size:16px}.row-label{font-size:13px}.working-paper[data-kind=presentation][data-formatted=true] .paper-rows{grid-template-columns:1fr}.working-paper[data-kind=presentation][data-formatted=true] .paper-row{display:grid;grid-template-columns:35px 1fr;gap:15px;min-height:100px;padding:16px}.working-paper[data-kind=presentation] .row-index{font-size:29px}.paper-bottom{font-size:14px}.paper-bottom svg{width:40px}.meaning-change{gap:12px}.meaning-change strong{font-size:20px}.meaning-change p{font-size:18px}.change-number{width:34px;height:34px;font-size:23px}.prompt-strip{padding:23px 17px}.prompt-strip p{font-size:21px}.prompt-hint{font-size:16px}.bench-bottom{padding:22px 17px}.finish-demo{font-size:17px;padding:13px 18px;white-space:normal}.learning-line h2{font-size:40px}.learning-path p{font-size:18px}}
@media(prefers-reduced-motion:reduce){.work-object,.ingredient,.paper-row,.working-paper{transition:none}.transfer-ink{display:none}.paper-row.just-changed{animation:none}.work-object[aria-pressed=true]{transform:translateY(-4px)}.working-paper,.paper-under-one,.paper-under-two{transform:none}}

@media(max-width:480px){.object-shelf{grid-template-columns:1fr;gap:19px;padding:40px 7px 45px}.work-object{min-height:153px;padding:20px 21px 17px;display:grid;grid-template-columns:1fr 105px;column-gap:15px}.object-no{font-size:13px;min-height:0;grid-column:1}.object-title{font-size:29px;margin:12px 0 0;grid-column:1;grid-row:2}.object-title br{display:none}.object-action{font-size:17px;grid-column:1/-1;margin-top:18px;padding-top:12px}.object-action>span{font-size:24px}.object-preview,.map-preview{grid-column:2;grid-row:1/3;align-self:center;margin:0;width:100%;height:70px}.notebook-preview{padding-top:8px}.notebook-preview b{font-size:39px;top:0}.slides-preview{transform:scale(.7);transform-origin:center;left:-9px}.object-notebook:before{left:11px}.object-map .map-preview{height:70px}.work-object[aria-pressed=true]{transform:rotate(-1deg) translateY(-3px)}}

/* v4 localization and access refinements */
.locale-switch{display:flex;gap:3px;flex:none;border:1px solid #104b3b55;border-radius:999px;padding:3px;background:#f7f4ed}
.locale-switch button{min-width:48px;min-height:44px;padding:6px 10px;background:transparent;color:var(--ink);border-radius:999px;font-size:15px;font-weight:bold}
.locale-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.site-header nav{margin-left:auto}.skip-link{position:fixed;left:20px;top:10px;z-index:100;padding:12px 18px;background:var(--paper);transform:translateY(-200%)}.skip-link:focus{transform:none}
.course.approaching>.eyebrow,.course.approaching>.course-actions,.course.approaching>.note{opacity:var(--details,0)}
.controls input{height:44px}.course{overscroll-behavior:auto}.work-object,.ingredient,.working-paper{overflow-wrap:anywhere}.paper-meta{gap:12px}.paper-meta span:first-child{min-width:0}.bench-topline h3{min-width:0}.bench-reset{flex-shrink:0}.object-title{hyphens:auto}.hero p{max-width:90vw;margin-left:auto;margin-right:auto}
.motion-off .intro{height:100svh;min-height:560px}.motion-off .hero{top:26%}.motion-off .skip-intro{bottom:35px}.no-webgl .fallback{inset:15% 6%;overflow:auto;max-width:650px;margin:auto}.no-webgl .skip-intro{display:none}
@media(max-width:800px){.site-header{gap:10px}.site-header nav{display:none}.site-header .brand{font-size:22px}.locale-switch button{min-width:44px}.bench-topline h3{margin-right:10px}}
@media(max-width:480px){.hero p{font-size:25px}.controls{padding:8px 10px}.control-note{font-size:15px}.site-header .brand{font-size:20px}.work-object{grid-template-columns:minmax(0,1fr) 85px}.work-object .object-title{font-size:27px}.object-action{font-size:16px}.paper-meta{font-size:11px;flex-wrap:wrap}.paper-row{min-width:0}.working-paper h3{font-size:32px}.bench-topline h3{font-size:26px}.result-heading .bench-label{font-size:12px}.ingredient strong{padding-right:20px}.workshop-heading h2{font-size:43px}.entry h2{font-size:42px}.course.compact{padding:14px}.course .eyebrow,.course .note{font-size:16px}.course .course-actions button{font-size:17px}.no-webgl .fallback{padding:25px}}
@media(max-height:550px){.hero{top:21%}.hero h1{font-size:85px}.hero p{font-size:23px;margin:12px auto}.scroll-hint{display:none}.skip-intro{bottom:115px}.motion-off .intro{min-height:480px}}

@media(max-width:480px){.course .course-actions a{font-size:17px}}
.skip-link{transform:none;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip-link:focus{clip-path:none;width:auto;height:auto;overflow:visible}.paper-meta{font-size:13px}
