:root{--ink:#1a1d2b;--ink-soft:rgba(26,29,43,.65);--paper:#fafaf8;--paper-soft:#f5f5f7;--gold:#c8a96e;--purple:#a78bfa;--line:rgba(26,29,43,.15);--radius:20px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 'Open Sans',sans-serif}a{color:inherit}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}a,button,input,textarea{outline-offset:5px}:focus-visible{outline:3px solid #7656bb}h1,h2,h3,.brand,.eyebrow,.btn{font-family:Montserrat,sans-serif}h1{font-size:clamp(35px,6vw,72px);line-height:1.08;letter-spacing:-2px;margin:18px 0}h2{font-size:clamp(25px,3vw,38px);line-height:1.25;margin:12px 0 20px}h3{font-size:18px;line-height:1.4}p{max-width:65ch}.topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 5%;background:#fff;border-bottom:1px solid var(--line)}.topbar a{text-decoration:none;font-size:13px}.brand{font-weight:800}.brand span{color:var(--ink-soft);font-weight:500}main{max-width:1120px;margin:auto;padding:40px 28px 70px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;text-transform:uppercase;color:#745b38}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:42px;align-items:center;margin:30px 0 48px}.hero .media{min-height:350px}.intro{white-space:pre-line;font-size:17px}.meta,.muted{color:var(--ink-soft);font-size:13px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:100px;text-decoration:none;padding:13px 22px;font-size:12px;font-weight:800;letter-spacing:.4px;min-height:46px}.btn.secondary{color:var(--ink);background:#fff}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;min-width:0}.card h3{margin:10px 0}.media{background:#f1ece4;border:1px dashed #c3b6a4;border-radius:14px;min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;text-align:center;gap:12px;color:#756650;margin:18px 0}.media small{font-size:10px;text-transform:uppercase;letter-spacing:1.6px}.media strong{font-family:Montserrat,sans-serif;font-weight:500}.media img,.media video{width:100%;max-height:500px;object-fit:contain}.material .media{min-height:100px;margin:0}.journey{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:22px 0;border-block:1px solid var(--line);font:700 11px Montserrat,sans-serif;letter-spacing:1px}.journey li:not(:last-child):after{content:' →';margin-left:12px;color:#967847}.section-gap{margin-top:48px}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;margin-top:28px}.steps{display:flex;flex-direction:column;gap:8px}.steps a{padding:11px 12px;border-radius:10px;text-decoration:none;font-size:12px;border:1px solid transparent}.steps a[aria-current=step]{background:#eee7db;border-color:#d7c5a6;font-weight:700}.lesson-head{border-bottom:1px solid var(--line);padding-bottom:18px}.lesson-head h1{font-size:clamp(28px,4vw,44px);letter-spacing:-1px}.stage{min-width:0}.stage>.card{margin-bottom:20px}.field{display:block;margin:22px 0;font-weight:600;font-size:14px}.field textarea{display:block;width:100%;resize:vertical;min-height:95px;border:1px solid #a9a8ae;border-radius:10px;padding:12px;margin-top:10px;background:white;color:var(--ink);font-weight:400}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.chip{border:1px solid var(--line);border-radius:30px;background:#fff;padding:10px 17px;min-height:44px}.chip[aria-pressed=true]{background:#ece4fa;border-color:#8865c6}.check{display:flex;gap:12px;align-items:flex-start;margin:16px 0}.check input{width:19px;height:19px;flex-shrink:0;accent-color:#7656a9}.safety{display:block;color:#83451d;background:#fff0df;padding:9px 12px;border-radius:8px;font-size:12px}.status{display:inline-block;border-radius:30px;background:#f1edf8;padding:4px 10px;font-size:11px}.navigation{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:24px;margin-top:32px}progress{width:100%;height:7px;accent-color:#9b7948}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:22px 5%;color:var(--ink-soft);font-size:12px}.text-button{background:none;border:0;text-decoration:underline;color:inherit}.skip{position:absolute;left:12px;top:-100px;background:white;padding:12px;z-index:5}.skip:focus{top:12px}.notice{padding:15px 20px;border-left:3px solid var(--gold);background:#f4efe6}.summary{padding:14px 0;border-bottom:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere}.summary b{display:block}@media(max-width:760px){main{padding:26px 18px 48px}.hero,.layout{grid-template-columns:1fr;gap:22px}.hero .media{min-height:210px}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{flex-direction:row;overflow:auto;padding-bottom:10px}.steps a{min-width:135px}.brand span{display:none}.topbar{padding:15px 18px}.card{padding:20px}}@media(max-width:480px){.grid,.grid.three{grid-template-columns:1fr}h1{letter-spacing:-1px}.journey{gap:9px}.hero{margin-top:15px}.hero .media{min-height:180px}}

main:focus{outline:none}
/* Photo-led preparation: real objects, short labels, one clear action. */
.hero-photo{display:block;border-radius:20px;overflow:hidden;background:#eee6db;text-decoration:none;position:relative}.hero-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.hero-photo>span{display:flex;justify-content:space-between;padding:15px 20px;font-size:13px;font-weight:600}.visual-hero{grid-template-columns:1fr 1.2fr;gap:32px}.visual-hero h1{font-size:clamp(36px,5vw,58px)}.visual-hero h3{font-size:16px}.visual-hero .intro{font-size:23px;line-height:1.4}.quiet-details{font-size:12px;color:var(--ink-soft);margin-top:20px}.quiet-details summary{cursor:pointer}.quiet-details p{margin:10px 0}.visual-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.visual-path a{padding:20px;border:1px solid var(--line);border-radius:16px;display:grid;grid-template-columns:36px 1fr;gap:4px 12px;text-decoration:none;background:#fff}.path-number{grid-row:span 2;color:#bba07a;font:500 24px Montserrat,sans-serif}.visual-path strong{font:700 18px Montserrat,sans-serif}.visual-path a>span:last-child{font-size:12px;color:var(--ink-soft)}.visual-path a:hover{border-color:var(--gold);background:#f8f4ed}.lesson-cards .btn{padding:10px 18px}.course-details{margin-top:40px;border-block:1px solid var(--line);padding:20px 0}.course-details summary{font-weight:600;cursor:pointer}.prepare-heading{margin:35px 0}.prepare-heading h1{font-size:clamp(32px,4vw,48px);letter-spacing:-1px}.prepare-heading p{color:var(--ink-soft)}.gather-block{margin:32px 0 42px}.action-heading{display:flex;gap:18px;align-items:center;margin-bottom:22px}.action-number{font:500 34px Montserrat,sans-serif;color:#b89b70}.action-heading h2{font-size:25px;margin:0 0 3px}.action-heading p{font-size:13px;margin:0;color:var(--ink-soft)}.cardboard-pick{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:center;background:#f2eee7;border-radius:18px;overflow:hidden;padding-right:22px}.cardboard-pick>img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tool-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:#fff;border:2px solid #e4e0d9;border-radius:16px;padding:16px;cursor:pointer;min-width:0;text-align:center;transition:border-color .15s,background .15s}.tool-card:hover{border-color:#bba07a}.tool-card:focus-within{outline:3px solid #8865c6;outline-offset:3px}.tool-card.is-ready{background:#f4f0fa;border-color:#9876c0}.tool-card input{position:absolute;right:14px;top:14px;width:24px;height:24px;opacity:0}.ready-mark{position:absolute;right:14px;top:14px;width:25px;height:25px;display:grid;place-items:center;border:1px solid #c3beb5;border-radius:50%;font-size:14px;color:transparent}.is-ready .ready-mark{background:#7856a2;border-color:#7856a2;color:#fff}.tool-card img{width:100%;height:145px;object-fit:contain;margin:12px 0}.tool-name{font:700 14px Montserrat,sans-serif}.tool-safety{font-size:11px;color:#854b25;margin-top:8px}.small-note{font-size:12px;color:var(--ink-soft);margin:12px 0}.also-bring{display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px;margin-top:18px;font-size:13px}.also-bring .check{margin:0}.optional-tools,.photo-reference{border:1px solid var(--line);border-radius:14px;margin:18px 0;padding:18px 22px;background:#fff}.optional-tools summary,.photo-reference summary{cursor:pointer;font-size:14px;font-weight:600}.optional-tools summary span{font-weight:400;font-size:12px;color:var(--ink-soft);margin-left:12px}.optional-tools[open] .tool-grid{margin-top:20px}.photo-reference .media{border:0;background:transparent;padding:0;margin:20px 0 0;min-height:0}.photo-reference img{max-height:650px}.ready-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding:22px 0;border-top:1px solid var(--line)}.ready-bar>span{font-size:14px;color:var(--ink-soft)}.stage>.media:has(img){padding:0;border:0;overflow:hidden;background:none}.stage>.media img{border-radius:14px}.stage>.media figcaption{font-size:12px}.stage .tool-grid{gap:10px}.stage .tool-card img{height:115px}.stage .cardboard-pick{grid-template-columns:1.2fr 1fr;gap:16px}.stage .check{font-size:13px}.stage .gather-block:first-child{margin-top:20px}.lesson-head h1{font-size:clamp(25px,3vw,34px);margin:10px 0 15px}.lesson-head{padding-bottom:6px}.stage>.eyebrow{display:none}.navigation .btn{max-width:100%;text-align:center}.photo-reference .media small{font-size:11px}
@media(max-width:760px){.visual-hero{grid-template-columns:1fr}.hero-photo{grid-row:1}.visual-hero h1{font-size:38px}.visual-hero .intro{font-size:20px}.visual-path{gap:8px}.visual-path a{padding:14px 10px;grid-template-columns:1fr;gap:7px}.path-number{grid-row:auto;font-size:18px}.visual-path strong{font-size:16px}.visual-path a>span:last-child{font-size:11px}.cardboard-pick,.stage .cardboard-pick{grid-template-columns:1fr;padding:0;gap:0}.cardboard-pick>div{padding:6px 20px 14px}.tool-grid{gap:10px}.tool-card{padding:12px 7px}.tool-card img,.stage .tool-card img{height:105px}.tool-name{font-size:12px}.ready-bar{align-items:flex-start;flex-direction:column}.ready-bar .btn{width:100%}.optional-tools,.photo-reference{padding:16px}.optional-tools summary span{display:block;margin:4px 0 0}.action-heading h2{font-size:22px}}
@media(max-width:430px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-card img,.stage .tool-card img{height:120px}.visual-path{grid-template-columns:1fr}.visual-path a{grid-template-columns:32px 1fr}.visual-path a>span:last-child{grid-column:2}.path-number{grid-row:span 2}.also-bring{gap:14px}.hero-photo img{aspect-ratio:4/3}}
/* Optional example project — original process-sheet viewports. */
.today-project{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#eee7db;border:1px solid #d9c9ae;border-radius:16px;padding:22px 26px;margin-top:24px;text-decoration:none}.today-project>span{display:grid;gap:6px}.today-project small{font-size:10px;letter-spacing:2px;color:#745b38}.today-project strong{font:700 21px Montserrat,sans-serif}.today-project span span{font-size:13px;color:var(--ink-soft)}.today-project>b{white-space:nowrap;font-size:13px}.guide-crop{display:block;width:100%;height:auto;background:#fff;border-radius:14px;overflow:hidden}.project-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;margin:32px 0}.project-intro h1{font-size:clamp(30px,4.5vw,52px);letter-spacing:-1px}.project-intro p{font-size:18px}.project-phase{display:flex;gap:28px;flex-wrap:wrap;border-block:1px solid var(--line);padding:18px 0;font-size:13px}.project-phase span{color:var(--ink-soft)}.project-section-title{font-size:23px;margin-top:32px}.element-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.element-card{display:block;text-decoration:none;border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;min-width:0}.element-card:hover{border-color:var(--gold)}.element-card .guide-crop{height:230px;object-fit:contain;margin-bottom:18px}.element-card h3{display:flex;justify-content:space-between;margin:10px 0 0}.upcoming{grid-template-columns:repeat(4,minmax(0,1fr))}.upcoming .guide-crop{height:150px}.upcoming h3{font-size:14px}.upcoming .muted{font-size:11px}.project-top{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px}.build-step-nav{display:flex;gap:10px;overflow:auto;padding:22px 0}.build-step-nav a{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--line);background:#fff;border-radius:50%;text-decoration:none;font-size:13px}.build-step-nav [aria-current=step]{background:var(--ink);color:#fff}.making-stage{display:grid;grid-template-columns:1.25fr 1fr;align-items:start;gap:40px}.making-visual{background:#fff;border:1px solid var(--line);padding:20px;border-radius:20px;text-align:center}.making-visual .guide-crop{height:440px;max-height:60vh}.making-visual button{margin-top:18px;font-size:12px}.making-action h1{font-size:clamp(29px,4vw,44px);letter-spacing:-1px}.one-action{font-size:20px}.build-video{margin:26px 0;min-height:70px;border-block:1px solid var(--line);display:flex;align-items:center;gap:14px;font-size:12px;color:var(--ink-soft);flex-wrap:wrap}.build-video>span{font-size:30px}.build-video video{width:100%;display:block}.build-secondary{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.build-secondary .btn{font-size:11px;padding:9px 14px}.full-guide{display:block;width:100%;height:auto;margin-top:20px}.picture-dialog{width:min(95vw,900px);max-height:95vh;border:0;border-radius:16px;padding:20px}.picture-dialog::backdrop{background:rgba(26,29,43,.7)}.picture-dialog .guide-crop{height:75vh;margin-top:12px}.picture-dialog>button{float:right}.picture-dialog[open]{display:flex;flex-direction:column;align-items:flex-end}@media(max-width:760px){.project-intro,.making-stage{grid-template-columns:1fr;gap:22px}.project-intro>.guide-crop{max-height:290px;grid-row:1}.making-visual .guide-crop{height:350px;max-height:48vh}.element-grid{gap:10px}.element-card{padding:10px}.element-card .guide-crop{height:155px}.element-card h3{font-size:13px}.element-card .eyebrow{font-size:9px;letter-spacing:.5px}.upcoming{grid-template-columns:repeat(2,minmax(0,1fr))}.today-project{align-items:flex-start;flex-direction:column}.today-project strong{font-size:18px}.project-top{align-items:flex-start}.project-top .btn{font-size:10px;padding:10px 12px}.making-action h1{margin-top:10px}.making-visual{padding:12px}.making-stage{gap:18px}.one-action{font-size:18px}.build-video{margin:18px 0}.project-phase{gap:14px;font-size:12px}}@media(max-width:430px){.element-grid:not(.upcoming){grid-template-columns:1fr}.element-grid:not(.upcoming) .element-card{display:grid;grid-template-columns:100px 1fr;gap:0 18px;align-items:center}.element-grid:not(.upcoming) .guide-crop{grid-row:span 2;height:130px;margin:0}.element-grid:not(.upcoming) h3{font-size:16px;margin:0}.element-grid:not(.upcoming) .eyebrow{align-self:end}.project-intro h1{font-size:32px}}

.element-grid.upcoming{grid-template-columns:repeat(2,minmax(0,1fr))}
/* A shared Smart Class shell; warm process photography stays at the centre. */
body.gothic-flow,body.course-entry{background:linear-gradient(135deg,#e9d8fd 0%,#d4e6ff 50%,#cffafe 100%);background-attachment:fixed;padding:24px 16px;color:#1a1d2b}
.gothic-flow>.topbar,.course-entry>.topbar{display:none}
.gothic-flow main,.course-entry main{max-width:900px;min-height:calc(100dvh - 100px);margin:0 auto;padding:24px 30px;background:linear-gradient(#fff,#faf8ff);border:1px solid #e8ecf2;border-radius:28px;box-shadow:0 24px 70px #1a1d2b15}
.gothic-flow footer,.course-entry footer{max-width:900px;margin:0 auto;padding:12px 20px;font-size:10px;border:0}.gothic-flow footer #export{font-size:10px}
.gothic-flow .btn:not(.secondary),.course-entry .btn:not(.secondary){background:#67e8f9;color:#1a1d2b;border-color:#67e8f9}
.gothic-flow .project-top{font-size:11px;color:#475569}.gothic-flow .project-top .btn{padding:8px 0;background:none;border:0;font-size:12px}
.path-heading{max-width:580px;margin:24px auto 20px}.path-heading h1{font-size:30px;line-height:1.2;letter-spacing:-.7px;margin:12px 0}.path-heading p{font-size:14px;color:#475569}.path-progress{font-size:11px;color:#475569}
.learning-path{list-style:none;padding:0;max-width:580px;margin:0 auto;display:grid;gap:8px}.learning-path a{display:grid;grid-template-columns:28px 64px 1fr 16px;gap:14px;align-items:center;text-decoration:none;border:1px solid #e8ecf2;border-radius:14px;background:#fff;padding:10px 14px}.learning-path a:hover{border-color:#a78bfa;background:#faf8ff}.route-number{font-size:13px;font-weight:800;color:#756190}.learning-path .guide-crop{height:66px;border-radius:8px}.learning-path strong{font-size:14px;display:block}.learning-path small{display:block;font-size:11px;color:#64748b;margin-top:5px}.path-start{max-width:580px;margin:20px auto 0}.path-start .btn{width:100%;text-align:center}.path-resources{max-width:580px;margin:20px auto;font-size:12px}
.making-progress{display:block;width:100%;height:5px;margin:18px 0 26px;accent-color:#1d9e75}.making-progress::-webkit-progress-bar{background:#e8ecf2;border-radius:8px}.making-progress::-webkit-progress-value{background:linear-gradient(90deg,#1d9e75,#67e8f9);border-radius:8px}
.gothic-flow .making-stage{gap:28px;align-items:center}.gothic-flow .making-visual{border:0;padding:8px;background:#fff}.gothic-flow .making-visual .guide-crop{height:380px;max-height:52dvh}.gothic-flow .making-action h1{font-size:30px;line-height:1.2}.gothic-flow .one-action{font-size:17px;line-height:1.6}.build-video:empty{display:none}.flow-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;padding:16px 0 0;border-top:1px solid #e8ecf2}.flow-actions>.btn{text-align:center}.flow-actions>.btn:last-child{min-width:220px}.gothic-flow .project-intro h1{font-size:34px}.gothic-flow .project-intro p{font-size:16px}.focused-preparation .gather-block{margin:24px 0}.focused-preparation .action-number{display:none}.focused-preparation .cardboard-pick{grid-template-columns:1.3fr 1fr}.focused-preparation .action-heading h2{font-size:28px}
.course-choice{display:flex;align-items:center;gap:26px;text-decoration:none;border:1px solid #e8ecf2;background:#fff;border-radius:20px;padding:20px;max-width:580px;margin:auto}.course-choice img{width:130px;border-radius:10px}.course-choice h2{font-size:21px;line-height:1.4}.course-choice small{font-size:9px;color:#756190;letter-spacing:1px}.course-choice p{font-size:13px}.course-entry .course-details{max-width:580px;margin:24px auto}.course-list{padding-left:20px}.course-list li{padding:12px 0}.course-list a{display:flex;justify-content:space-between;gap:12px;text-decoration:none;font-size:13px}.course-list a span{white-space:nowrap;font-size:11px}
@media(max-width:600px){body.gothic-flow,body.course-entry{padding:0;background:#faf8ff}.gothic-flow main,.course-entry main{border:0;border-radius:0;box-shadow:none;padding:18px;min-height:calc(100dvh - 52px)}.path-heading h1{font-size:26px}.learning-path a{gap:9px;grid-template-columns:22px 52px 1fr 12px;padding:8px 10px}.learning-path .guide-crop{height:55px}.learning-path strong{font-size:13px}.learning-path small{font-size:10px}.gothic-flow .making-stage{display:flex;flex-direction:column;gap:12px;align-items:stretch}.gothic-flow .making-visual .guide-crop{height:32dvh;max-height:290px}.gothic-flow .making-visual button{margin-top:7px}.gothic-flow .making-action h1{font-size:25px;margin:8px 0}.gothic-flow .one-action{font-size:15px;margin:10px 0}.gothic-flow .safety{font-size:12px}.making-progress{margin:14px 0}.flow-actions{position:sticky;bottom:0;background:#faf8fff5;padding:14px 0 calc(14px + env(safe-area-inset-bottom));margin-top:18px;z-index:2}.flow-actions .btn{font-size:12px;padding:13px 14px}.flow-actions>.btn:last-child{min-width:0;flex:1}.focused-preparation .cardboard-pick{grid-template-columns:1fr}.course-choice{gap:16px;padding:14px}.course-choice img{width:88px}.course-choice h2{font-size:18px}.gothic-flow .project-intro{margin:24px 0}.gothic-flow .project-intro h1{font-size:28px}}
.making-progress{appearance:none;-webkit-appearance:none;border:0;border-radius:8px;overflow:hidden;background:#e8ecf2}.making-progress::-moz-progress-bar{background:linear-gradient(90deg,#1d9e75,#67e8f9)}
@media(min-width:601px) and (max-width:760px){.gothic-flow .making-visual .guide-crop{height:30dvh}.gothic-flow .making-action h1{font-size:25px;margin:8px 0}.gothic-flow .one-action{font-size:15px;margin:8px 0}.gothic-flow .making-stage{gap:12px}.gothic-flow .making-visual button{margin-top:6px}.flow-actions{margin-top:16px}}
