:root{--serif:"Fraunces",Georgia,serif;--sans:"Inter Tight",Inter,system-ui,sans-serif;--ink:#263b33;--muted:#58665d;--paper:#f4efe6;--coral:#ad4325;--cream:#f4efe6;--cream-dim:#c8cec5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%;font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer;border:0}button:focus-visible{outline:3px solid #ad4325;outline-offset:5px}button:disabled{cursor:wait;opacity:.6}.eyebrow{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;line-height:1.5}.school-screen{min-height:100svh;display:grid;grid-template-columns:42% 58%;padding:32px;gap:0;position:relative}.school-panel{grid-column:1;grid-row:1;align-self:center;padding:42px clamp(20px,4vw,64px) 42px 18px;max-width:620px;z-index:1}.school-panel h1{font-family:var(--serif);font-weight:300;font-size:clamp(4rem,8.2vw,8.2rem);line-height:.95;letter-spacing:-.055em;margin:28px 0}.school-panel h1 em{color:var(--coral);font-weight:300}.school-tagline{font-family:var(--serif);font-weight:300;font-size:clamp(1.65rem,2.4vw,2.5rem);line-height:1.15;letter-spacing:-.025em;margin-bottom:24px}.school-copy{font-size:clamp(1rem,1.15vw,1.15rem);line-height:1.7;color:var(--muted);max-width:390px}.school-note{font-size:.64rem;font-weight:600;letter-spacing:.12em;line-height:1.8;margin:26px 0;color:var(--muted)}.cta{background:var(--ink);color:#fff8ed;min-height:52px;padding:16px 25px;border-radius:999px;font-weight:600;font-size:.95rem;line-height:1.4;transition:background .2s,transform .2s;display:inline-block}.cta:hover:enabled{background:#3d5545;transform:translateY(-2px)}.school-footnote{font-size:.72rem;line-height:1.6;color:var(--muted);margin-top:30px;max-width:360px}.school-secondary{display:block;background:transparent;color:var(--ink);min-height:44px;margin-top:8px;text-decoration:underline;text-underline-offset:4px}.school-scene{grid-column:2;grid-row:1;min-height:640px;border-radius:24px;overflow:hidden;background:#efe7da;box-shadow:0 1px #fff9 inset,0 18px 70px #443b2210;position:relative}.school-scene canvas{touch-action:none}.rehearsal{height:100svh;position:relative;background:#efe7da;overflow:hidden}.rehearsal>div:first-child{position:absolute!important;top:0;right:0;bottom:0;left:0}.rehearsal-heading{position:absolute;top:24px;left:24px;right:160px;padding:16px 20px;background:#f4efe6f5;border:1px solid #d7d0c1;border-radius:16px;width:fit-content;max-width:65%;pointer-events:none}.rehearsal-heading .sub{font-size:.9rem;line-height:1.5;margin-top:6px}.orbit-hint{font-size:.7rem;color:var(--muted);margin-top:6px}.sound-toggle{position:absolute;right:24px;top:24px;min-height:44px;padding:12px 18px;border-radius:999px;background:var(--paper);color:var(--ink);border:1px solid #c5c5b5}.rehearsal-controls{position:absolute;bottom:24px;left:50%;transform:translate(-50%);width:min(650px,calc(100% - 48px));background:#f4efe6f7;border:1px solid #d9d0c1;box-shadow:0 12px 50px #1e30231a;border-radius:24px;padding:22px 30px;text-align:center}.action{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,3vw,2.8rem);letter-spacing:-.035em;line-height:1.1;margin:20px 0 10px}.sub{font-size:1rem;line-height:1.5;color:var(--muted)}.rehearsal-controls .cta{margin-top:16px}.replay-cue{background:transparent;color:var(--muted);display:block;margin:8px auto 0;min-height:44px;font-size:.85rem;text-decoration:underline;text-underline-offset:4px}.cue-progress{display:flex;justify-content:center;gap:45px}.cue-progress span{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:var(--muted)}.cue-progress small{font:inherit}.cue-progress .current{color:var(--coral)}.cue-progress .done{color:#356343}.recorder{position:fixed;top:4px;right:4px;z-index:100;background:#263b33;color:#fff;padding:10px}.recorder a{color:#fff}@media (min-width:1500px){.school-screen{padding:48px}.school-panel{padding-left:4vw}}@media (max-width:800px){.school-screen{display:flex;flex-direction:column;padding:22px;gap:24px}.school-panel{padding:18px 4px 0;max-width:none;align-self:stretch}.school-panel h1{font-size:5rem;margin:22px 0}.school-tagline{font-size:1.9rem}.school-copy{max-width:540px}.school-note{margin:20px 0}.school-footnote{margin-top:20px}.school-scene{min-height:420px;height:52svh;border-radius:20px;flex:none}.rehearsal-heading{top:12px;left:12px;right:120px;padding:12px;max-width:calc(100% - 138px)}.rehearsal-heading .sub{font-size:.78rem}.orbit-hint{font-size:.65rem}.sound-toggle{right:12px;top:12px;padding:10px 12px;font-size:.8rem}.rehearsal-controls{bottom:12px;width:calc(100% - 24px);padding:18px 16px;border-radius:20px}.cue-progress{gap:16px}.cue-progress span{font-size:.65rem}.action{margin-top:16px}.rehearsal-controls .sub{font-size:.88rem}.rehearsal-controls .cta{font-size:.87rem}.replay-cue{margin-top:2px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.cta:hover:enabled{transform:none}}.rehearsal>div:first-child{bottom:270px!important}@media (max-width:800px){.rehearsal>div:first-child{top:135px!important;bottom:290px!important}.rehearsal-heading{border-color:transparent;background:#f4efe6}.rehearsal{background:#f4efe6}}.rehearsal>div:first-child{height:auto!important}.school-panel h1.phase-title{font-size:clamp(3rem,5vw,5.5rem);line-height:1.02;letter-spacing:-.035em}@media (max-width:800px){.school-panel h1.phase-title{font-size:3rem}}@media (max-width:800px){.school-panel{order:0}.school-scene{order:1}}.slice-restart{min-height:44px;position:absolute;right:1.5rem;top:4.5rem;z-index:5;border:1px solid #aaa;background:#fff8;color:#31423a;padding:.5rem 1rem;border-radius:2rem;cursor:pointer}.camera-toggle{position:absolute;right:24px;top:116px;z-index:5;min-height:44px;padding:10px 14px;border:1px solid #aaa;border-radius:24px;background:#f4efe6;color:#31423a;cursor:pointer}@media (max-width:800px){.camera-toggle{right:12px;top:116px;font-size:.8rem}.slice-restart{right:12px}}.rehearsal>div:first-child{top:0!important;right:0!important;bottom:320px!important;left:0!important;height:auto!important}@media (max-width:800px){.rehearsal>div:first-child{top:0!important;right:0!important;bottom:310px!important;left:0!important;height:auto!important}}.illustrated-screen{min-height:100svh;background:#efe9dc;color:#203c35;padding:28px 24px}.illustrated-panel{max-width:1060px;margin:0 auto}.illustrated-panel h1{font-family:var(--serif);font-size:clamp(2rem,4vw,3.5rem);font-weight:400;margin:20px 0 12px}.illustrated-panel p{line-height:1.55;max-width:80ch;margin:12px 0}.illustrated-panel video{display:block;width:100%;aspect-ratio:16/9;background:#203c35;border-radius:16px;margin:20px 0;max-height:64svh}.illustrated-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.illustrated-actions button,.illustrated-choice{min-height:44px}.illustrated-actions .school-secondary{margin:0;padding:12px 18px}.media-limit{font-size:.9rem;color:#526257}.motion-note{background:#f9f6ef;padding:12px;border-radius:10px}.illustrated-choice{display:block;margin-top:16px;text-align:left}.illustrated-panel video:focus-visible{outline:3px solid #ce6546;outline-offset:4px}@media (max-width:600px){.illustrated-screen{padding:20px 16px}.illustrated-actions{align-items:stretch;flex-direction:column}.illustrated-actions button{text-align:center;width:100%}.illustrated-panel video{border-radius:10px}.illustrated-choice{font-size:.9rem}}
