#curriculum .framework-stages{gap:48px}#curriculum .framework-stage{grid-template-columns:1.08fr 1fr;box-shadow:0 18px 40px #2c3e5015}.fw-scene{padding:35px 30px}.fw-scene h3{margin-bottom:10px}.fw-lead{font:20px/1.5 Lora,serif;margin:0 0 23px;color:var(--stage);position:relative}.fw-step-track{display:flex;align-items:center;gap:10px;margin-bottom:25px;font-size:10px;color:var(--slate)}.fw-step-track>span{display:flex;gap:7px;align-items:center}.fw-step-track b{display:grid;place-items:center;width:20px;height:20px;border:1px solid var(--stage);border-radius:50%;color:var(--stage);flex-shrink:0}.fw-step-track i{font-style:normal;color:var(--stage)}.fw-window{border:1px solid #2c3e5020;background:#fffdf7;border-radius:7px;overflow:hidden;box-shadow:0 15px 25px #2c3e5024;position:relative}.fw-toolbar{background:var(--slate);color:white;padding:12px 15px;font-size:9px;letter-spacing:.06em;display:flex;justify-content:space-between;gap:8px}.fw-toolbar span{flex-shrink:0}.fw-safety{padding:20px}.fw-project{text-align:center}.fw-project>*{display:block}.fw-folder{font-size:70px;line-height:.8;color:var(--stage);filter:drop-shadow(0 4px 2px #0001);margin:12px 0 18px}.fw-project strong{font-size:16px}.fw-project small{font-size:10px;color:var(--muted)}.fw-transfer{display:flex;justify-content:center;align-items:center;gap:10px;color:var(--stage);margin:15px}.fw-transfer i{height:1px;width:45px;background:var(--stage);opacity:.4}.fw-backup{display:flex;align-items:center;gap:12px;background:var(--wash);border:1px solid #67876b55;border-radius:4px;padding:14px}.fw-backup>span{font-size:30px;color:var(--stage)}.fw-backup strong{font-size:12px}.fw-backup small{display:block;font-size:9px}.fw-backup>b{margin-left:auto;color:var(--stage)}.fw-success{margin:0;padding:14px;text-align:center;font-size:11px;color:var(--stage);font-weight:600;background:var(--wash)}.fw-safety .fw-success{background:none;padding-bottom:0}.fw-organize{display:grid;grid-template-columns:.8fr 20px 1.2fr;gap:12px;align-items:center;padding:28px 18px;min-height:270px}.fw-input{padding:18px 10px;border:1px solid var(--line);box-shadow:4px 4px 0 var(--stone);text-align:center}.fw-input>b{display:inline-block;background:#226ca6;color:white;font:27px/1.3 Poppins,sans-serif;padding:2px 10px;border-radius:3px}.fw-input strong{display:block;font-size:9px;margin:10px 0}.fw-input i{display:block;height:3px;background:var(--line);margin:7px 0}.fw-input>span{display:block;font-size:8px;color:var(--muted);margin-top:12px}.fw-route{color:var(--stage);font-size:24px}.fw-binder{font-size:11px;background:#f3f0e8;border:1px solid var(--line);padding:15px 10px}.fw-binder>div{padding:8px 0 0;color:var(--stage)}.fw-binder small{display:block;font-size:9px;padding:5px 0 0 10px;color:var(--body)}.fw-corkboard{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px;background:#d7bc8a;background-image:radial-gradient(#aa884522 .6px,transparent .6px);background-size:4px 4px}.fw-index{background:#fffdf5;border-top:5px solid var(--sage);padding:12px;box-shadow:0 5px 9px #0002;min-height:110px}.fw-index:nth-child(3){border-color:var(--coral)}.fw-index>span{font-size:7px;letter-spacing:.08em;color:var(--muted)}.fw-index strong{display:block;font:16px/1.4 Lora,serif;margin:8px 0}.fw-index i{display:block;width:85%;height:2px;background:var(--line);margin:6px 0}.fw-index i:last-child{width:60%}.fw-outliner{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:12px 18px;font-size:10px;border-top:1px solid var(--line)}.fw-outliner>span{font-size:7px;color:var(--muted);letter-spacing:.08em}.fw-outliner>b{color:var(--coral);font-size:10px}.fw-snapshot{padding:13px 18px;background:#e4eddf;color:#476d4e;font-size:12px;font-weight:600}.fw-snapshot small{display:block;font-size:9px;font-weight:400}.fw-writing{text-align:center;padding:30px 25px}.fw-writing>small{font-size:8px;letter-spacing:.14em;color:var(--muted)}.fw-writing p{font:26px/1.6 Lora,serif;margin:20px 0 28px;color:var(--slate)}.fw-line{display:block}.fw-progress{height:6px;background:var(--stone);border-radius:5px;overflow:hidden}.fw-progress i{display:block;width:65%;height:100%;background:var(--stage)}.fw-writing>span{display:block;font-size:9px;margin-top:10px;color:var(--muted)}.fw-outcome{margin-top:25px;text-align:center;border-top:1px solid #2c3e501c;padding-top:20px}.fw-outcome>span{display:block;font-size:8px;letter-spacing:.12em;color:var(--stage);margin-bottom:7px}.fw-outcome strong{font:22px/1.4 Lora,serif;color:var(--slate)}.fw-scene.story-entered .fw-arrival{animation:fw-arrive .8s both;animation-delay:var(--beat,0s)}.fw-scene.story-entered .fw-index{animation-name:fw-card-settle}.fw-scene.story-entered .fw-progress i{animation:fw-write-progress 2.5s ease-out both}.fw-scene.story-entered .fw-outcome{animation:fw-arrive .8s 1.8s both}@keyframes fw-arrive{from{opacity:.15;translate:0 13px}to{opacity:1;translate:0 0}}@keyframes fw-card-settle{from{opacity:.3;translate:0 16px;rotate:-7deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes fw-write-progress{from{width:0}to{width:65%}}
@media(max-width:1000px){.fw-scene{padding:28px 22px}.fw-step-track{font-size:9px;gap:7px}.fw-organize{gap:8px;padding:23px 12px}.fw-binder{font-size:10px}.fw-index{padding:10px}.fw-index strong{font-size:14px}.fw-toolbar{font-size:8px}}
@media(max-width:760px){#curriculum .framework-stage{grid-template-columns:1fr}.fw-scene{padding:28px 22px}.fw-window{max-width:430px;margin:auto}.fw-step-track{justify-content:center;flex-wrap:wrap;font-size:10px}.fw-lead{font-size:20px}.fw-outcome strong{font-size:21px}.fw-scene .stage-number{font-size:100px}.fw-organize{min-height:260px}.fw-corkboard{padding:18px;gap:12px}.fw-toolbar{font-size:8px}.fw-backup strong{font-size:10px}.fw-binder small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.fw-scene *{animation:none!important}}
.fw-folder{position:relative;width:88px;height:58px;margin:24px auto 18px;border-radius:4px 7px 7px 7px;background:var(--stage);font-size:0;box-shadow:0 7px 12px #2c3e5018}.fw-folder:before{content:'';position:absolute;left:0;top:-11px;width:38px;height:15px;border-radius:5px 8px 0 0;background:var(--stage)}.fw-folder:after{content:'✓';position:absolute;inset:7px 0 0;color:white;font:32px/1.5 Poppins,sans-serif}
