/* Five program worlds — intentionally unrelated art directions. */
@property --spin { syntax: '<angle>'; inherits: true; initial-value: 0deg; }

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;overflow-x:hidden}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
img{max-width:100%;display:block}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* .skip-link lives in inner-core.css — one definition for the whole site. */
html:not(.js) [data-reveal]{opacity:1 !important;transform:none !important}
.js [data-reveal]{opacity:0;transform:translateY(34px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1)}
.js [data-reveal].is-visible,.js [data-reveal].is-seen{opacity:1;transform:none}
.world-nav{position:fixed;z-index:500;left:50%;top:16px;transform:translateX(-50%);width:min(1180px,calc(100% - 28px));display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 10px 10px 18px;border-radius:999px}
.world-brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:900;letter-spacing:-.04em;white-space:nowrap}
.world-nav .world-brand::before{content:none}
.world-brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:13px}
.world-links{display:flex;align-items:center;gap:4px}
.world-links a{color:inherit;text-decoration:none;font-size:13px;font-weight:750;padding:9px 13px;border-radius:99px;transition:background .2s,color .2s,transform .2s}
.world-links a:hover,.world-links a:focus-visible{transform:translateY(-2px)}
.world-menu{display:none;border:0;background:transparent;color:inherit;width:40px;height:40px;border-radius:50%;cursor:pointer}
.world-menu span{display:block;width:18px;height:2px;margin:4px auto;background:currentColor}
.world-footer{position:relative;display:block;padding:70px max(24px,calc((100vw - 1180px)/2));overflow:hidden;border-top:0;text-transform:none;letter-spacing:normal;font-size:initial}
.world-footer-grid{display:grid;grid-template-columns:1.4fr .6fr .6fr;gap:40px;position:relative;z-index:2}
.world-footer h2{font-size:clamp(32px,5vw,68px);line-height:.9;letter-spacing:-.06em;margin:0 0 22px;max-width:12ch}
.world-footer p{max-width:48ch;line-height:1.7}
.world-footer a{color:inherit}
.footer-links{display:grid;gap:10px;align-content:start}
.footer-label{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:900;margin-bottom:10px;opacity:.55}
.footer-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:99px;text-decoration:none;font-weight:850;width:max-content}
.world-section-label{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:900}
.world-section-label::before{content:'';width:32px;height:2px;background:currentColor}
.world-title{margin:0;letter-spacing:-.075em;line-height:.86;text-wrap:balance}
.world-copy{line-height:1.7;text-wrap:pretty}
.portal-anchor{position:relative;z-index:5}

/* -------------------------------- MUSIC / HI-FI ARCHIVE */
body[data-world="music"]{--cream:#eadfcb;--red:#c1272d;--acid:#b6e04a;--brown:#241914;--orange:#8cc63f;background:var(--brown);color:var(--cream);font-family:'Space Grotesk',"Roboto Condensed",Arial,sans-serif}
body[data-world="music"]::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:300;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}
body[data-world="music"] .world-nav{background:#eadfcb;color:#241914;border:2px solid #241914;box-shadow:6px 6px 0 #c1272d}
body[data-world="music"] .world-brand-mark{background:var(--red);color:#fff}
body[data-world="music"] .world-links a:hover,body[data-world="music"] .world-links a:focus-visible{background:var(--brown);color:var(--cream)}
.music-hero{min-height:100svh;padding:145px max(24px,calc((100vw - 1240px)/2)) 70px;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.85fr);align-items:center;gap:clamp(40px,7vw,100px);background:linear-gradient(130deg,#e4c8c9 0 62%,#c3282e 62%);color:var(--brown);overflow:hidden}
.music-hero::after{content:'LISTEN / CHOOSE / PLAY';position:absolute;left:-3%;bottom:-.18em;font-size:clamp(80px,13vw,190px);font-weight:1000;letter-spacing:-.09em;line-height:.8;color:transparent;-webkit-text-stroke:2px rgba(36,25,20,.12);z-index:-1;white-space:nowrap}
.music-kicker{display:flex;align-items:center;gap:10px;margin-bottom:22px;font-family:ui-monospace,monospace;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.music-kicker i{width:11px;height:11px;border-radius:50%;background:var(--red);box-shadow:17px 0 0 var(--orange),34px 0 0 #a7cf6e}
.music-title{font-size:clamp(62px,9.2vw,138px);font-weight:1000;max-width:7ch;text-transform:uppercase}
.music-title em{display:block;color:var(--red);font-style:normal;transform:translateX(.48em)}
.music-intro{max-width:54ch;font-family:Georgia,serif;font-size:clamp(16px,1.5vw,21px);margin:30px 0}
.music-hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.music-button{border:2px solid var(--brown);background:var(--brown);color:var(--cream);border-radius:0;padding:14px 20px;text-decoration:none;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:12px;box-shadow:5px 5px 0 var(--red);transition:transform .2s,box-shadow .2s;cursor:pointer}
.music-button:hover,.music-button:focus-visible{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--red)}
.hifi-console{position:relative;perspective:1000px;min-height:580px;display:grid;place-items:center}
.hifi-case{position:relative;width:min(100%,540px);aspect-ratio:.92;background:#30231e;border:3px solid #160f0d;border-radius:18px;padding:22px;box-shadow:0 35px 0 #140e0c,0 55px 80px rgba(0,0,0,.4);transform:rotateY(-8deg) rotateX(5deg);transform-style:preserve-3d;transition:transform .2s ease-out}
.hifi-panel{height:100%;background:#d18487;border:2px solid #160f0d;border-radius:9px;padding:20px;display:grid;grid-template-rows:1fr auto;gap:16px;box-shadow:inset 0 0 0 6px rgba(62, 20, 22,.18)}
.turntable{position:relative;min-height:370px;background:#c77679;border:2px solid #2a1912;border-radius:4px;overflow:hidden}
.record-platter{position:absolute;left:50%;top:48%;width:min(70%,320px);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:repeating-radial-gradient(circle,#171414 0 3px,#27201e 4px 6px);box-shadow:0 15px 22px rgba(0,0,0,.35),inset 0 0 0 8px #17110f;animation:record-spin 5s linear infinite paused}
.hifi-case.is-playing .record-platter{animation-play-state:running}
@keyframes record-spin{to{transform:translate(-50%,-50%) rotate(1turn)}}
.record-label{position:absolute;inset:33%;border-radius:50%;display:grid;place-items:center;background:var(--record-accent,var(--red));color:#f8e8d0;font-size:10px;text-align:center;font-weight:900;line-height:1.1;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 0 4px #e6acae}
.record-spindle{position:absolute;inset:46%;border-radius:50%;background:#daa3a5;border:2px solid #281b16}
.tonearm{position:absolute;right:9%;top:12%;width:18px;height:68%;background:linear-gradient(90deg,#8f8a83,#eee,#716b64);border:2px solid #2b211d;border-radius:10px;transform:rotate(7deg);transform-origin:50% 10%;transition:transform .65s cubic-bezier(.2,1.4,.3,1);box-shadow:4px 4px 9px rgba(0,0,0,.3)}
.tonearm::after{content:'';position:absolute;left:-9px;bottom:-6px;width:32px;height:38px;background:#161311;border-radius:4px}
.hifi-case.is-playing .tonearm{transform:rotate(23deg)}
.hifi-display{display:grid;grid-template-columns:1fr auto;gap:14px;background:#241914;color:#f1a4a7;padding:15px;border:2px solid #130c0a;align-items:center}
.hifi-track{font-family:ui-monospace,monospace;text-transform:uppercase;font-size:11px;line-height:1.5}
.hifi-track strong{display:block;color:var(--acid);font-size:14px}
.hifi-controls{display:flex;gap:8px}
.hifi-controls button{width:42px;height:42px;border-radius:50%;border:2px solid #0d0907;background:var(--red);color:#fff;cursor:pointer;font-weight:900;box-shadow:2px 3px 0 #090605}
.music-catalogue{padding:110px max(20px,calc((100vw - 1240px)/2));background:var(--brown);position:relative}
.music-catalogue-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px;margin-bottom:56px}
.music-catalogue h2{font-size:clamp(48px,8vw,108px);font-weight:1000;text-transform:uppercase;line-height:.83;letter-spacing:-.065em;margin:14px 0 0;color:var(--cream)}
.music-filter{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.music-filter button{border:1px solid rgba(234,223,203,.45);border-radius:99px;background:transparent;color:var(--cream);padding:10px 15px;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.11em;cursor:pointer}
.music-filter button[aria-pressed="true"]{background:var(--acid);color:var(--brown);border-color:var(--acid)}
.sleeve-wall{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,28px);align-items:start}
.course-sleeve{grid-column:span 4;position:relative;color:inherit;text-decoration:none;transform-style:preserve-3d;perspective:700px;transition:opacity .35s,transform .55s cubic-bezier(.16,1,.3,1)}
.course-sleeve:nth-child(2),.course-sleeve:nth-child(5),.course-sleeve:nth-child(8){margin-top:74px}
.course-sleeve.is-filtered{opacity:0;visibility:hidden;transform:scale(.8);pointer-events:none;position:absolute}
.sleeve-art{position:relative;isolation:isolate;aspect-ratio:1;overflow:hidden;background:#241914;border:2px solid #100b09;box-shadow:12px 14px 0 rgba(0,0,0,.25);transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s}
.course-sleeve:hover .sleeve-art,.course-sleeve:focus-visible .sleeve-art{transform:rotateY(-8deg) rotateX(6deg) translateY(-10px);box-shadow:25px 30px 0 rgba(0,0,0,.25)}
.sleeve-art img{display:block;position:relative;z-index:0;width:100%;height:100%;object-fit:cover;filter:contrast(1.07) saturate(.88);transition:transform .7s}
.course-sleeve:hover img{transform:scale(1.08)}
.sleeve-art::before{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(17,10,7,.08) 27%,rgba(17,10,7,.68) 100%)}
.sleeve-art::after{content:'';position:absolute;z-index:3;inset:0;background:linear-gradient(130deg,transparent 46%,rgba(255,255,255,.3) 47%,transparent 50%);mix-blend-mode:overlay;pointer-events:none}
.sleeve-number{position:absolute;z-index:2;top:14px;left:14px;background:var(--acid);color:var(--brown);padding:7px 9px;font-family:ui-monospace,monospace;font-weight:900;font-size:10px}
.sleeve-title{position:absolute;z-index:2;left:14px;bottom:14px;right:14px;font-size:clamp(28px,3.4vw,52px);font-weight:1000;letter-spacing:-.07em;line-height:.8;text-transform:uppercase;color:#fff;text-shadow:0 3px 20px rgba(0,0,0,.6)}
.sleeve-meta{display:flex;justify-content:space-between;gap:12px;margin-top:14px;font-family:ui-monospace,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#c68487}
@media(max-width:700px){.sleeve-wall{grid-template-columns:1fr;gap:28px}.course-sleeve{grid-column:1;margin:0!important;min-width:0}.course-sleeve.is-filtered{position:absolute}.sleeve-art{box-shadow:8px 9px 0 rgba(0,0,0,.28)}.sleeve-title{font-size:clamp(34px,11vw,52px)}.sleeve-meta{font-size:9px;letter-spacing:.06em}}
.music-manifesto{background:var(--acid);color:var(--brown);padding:120px max(24px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}
.music-manifesto blockquote{margin:0;font-size:clamp(42px,7vw,91px);font-weight:1000;letter-spacing:-.075em;line-height:.88;text-transform:uppercase}
.music-manifesto ul{margin:0;padding:0;list-style:none;border-top:2px solid currentColor}
.music-manifesto li{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:24px 0;border-bottom:2px solid currentColor;font-family:Georgia,serif;font-size:18px}
body[data-world="music"] .world-footer{background:#c3282e;color:#241914}
body[data-world="music"] .footer-button{background:#241914;color:#eadfcb}

/* -------------------------------- JMC / BUILDABLE TOY ROOM */
body[data-world="jmc"]{--j-ink:#30221d;--j-cream:#fff5dc;--j-pink:#ed6066;--j-blue:#74309c;--j-yellow:#a8dc60;--j-mint:#b7e27b;background:var(--j-cream);color:var(--j-ink);font-family:Verdana,Geneva,sans-serif}
body[data-world="jmc"] .world-nav{background:#fffaf0;color:var(--j-ink);border:3px solid var(--j-ink);box-shadow:0 6px 0 var(--j-ink)}
body[data-world="jmc"] .world-brand-mark{background:var(--j-yellow);border:2px solid var(--j-ink)}
body[data-world="jmc"] .world-links a:hover,body[data-world="jmc"] .world-links a:focus-visible{background:var(--j-pink);color:#fff}
.jmc-hero{position:relative;min-height:100svh;padding:145px max(20px,calc((100vw - 1200px)/2)) 70px;background:linear-gradient(#c68fe6 0 58%,#b3e074 58%);overflow:hidden}
.jmc-sun{position:absolute;width:clamp(130px,18vw,250px);aspect-ratio:1;border-radius:50%;background:var(--j-yellow);right:4vw;top:10vh;box-shadow:0 0 0 22px rgba(168, 220, 96,.25),0 0 0 46px rgba(168, 220, 96,.12)}
.jmc-cloud,.jmc-cloud::before,.jmc-cloud::after{position:absolute;background:#fff;border:3px solid var(--j-ink);border-radius:99px}
.jmc-cloud{width:150px;height:58px;top:18%;left:5%;animation:cloud-float 9s ease-in-out infinite}
.jmc-cloud::before{content:'';width:70px;height:70px;left:18px;bottom:-3px}.jmc-cloud::after{content:'';width:86px;height:86px;right:12px;bottom:-3px}
@keyframes cloud-float{50%{transform:translateX(28px)}}
.jmc-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:center}
.jmc-title{font-size:clamp(58px,9vw,122px);line-height:.78;letter-spacing:-.095em;font-weight:1000;margin:0 0 30px;text-transform:uppercase;transform:rotate(-2deg)}
.jmc-title span{display:inline-block;background:#fff;border:3px solid var(--j-ink);padding:.12em .12em .2em;box-shadow:8px 9px 0 var(--j-ink)}
.jmc-title span:nth-child(2){background:var(--j-pink);color:#fff;transform:translateX(.42em) rotate(2deg)}
.jmc-copy{font-size:17px;font-weight:700;line-height:1.65;max-width:48ch}
.jmc-cta{display:inline-flex;margin-top:24px;padding:15px 22px;border:3px solid var(--j-ink);background:var(--j-blue);color:#fff;text-decoration:none;font-weight:900;border-radius:15px;box-shadow:6px 7px 0 var(--j-ink);transition:transform .2s,box-shadow .2s}
.jmc-cta:hover{transform:translate(3px,3px);box-shadow:3px 4px 0 var(--j-ink)}
.music-room{position:relative;min-height:600px;perspective:1000px;transform-style:preserve-3d}
.room-shell{position:absolute;inset:4% 1% 8%;transform:rotateY(-7deg) rotateX(3deg);transform-style:preserve-3d;transition:transform .2s;background:#fff1c2;border:4px solid var(--j-ink);border-radius:42px 42px 14px 14px;overflow:hidden;box-shadow:20px 30px 0 rgba(48,34,29,.22)}
.room-wall{position:absolute;inset:0 0 31%;background:linear-gradient(90deg,rgba(255,255,255,.18) 50%,transparent 50%) 0 0/54px 54px,linear-gradient(#e4c8c9,#f07c81);border-bottom:4px solid var(--j-ink)}
.room-floor{position:absolute;left:-12%;right:-12%;bottom:-11%;height:52%;background:repeating-linear-gradient(86deg,#ec5e63 0 56px,#c3282e 57px 60px);transform:rotateX(54deg);border-top:4px solid var(--j-ink)}
.room-window{position:absolute;right:10%;top:10%;width:32%;height:32%;background:#c791e7;border:4px solid var(--j-ink);border-radius:80px 80px 4px 4px;box-shadow:inset 0 0 0 10px #fff7e5}
.room-window::after{content:'';position:absolute;left:50%;top:0;bottom:0;border-left:3px solid var(--j-ink)}
.room-rug{position:absolute;z-index:4;left:21%;right:16%;bottom:7%;height:30%;border-radius:50%;background:repeating-radial-gradient(ellipse,var(--j-mint) 0 18px,#fff 19px 34px,var(--j-blue) 35px 48px);border:4px solid var(--j-ink);transform:rotateX(56deg)}
.placed-instruments{position:absolute;inset:0;z-index:8;pointer-events:none}
.placed-toy{position:absolute;display:grid;place-items:center;width:112px;height:112px;border:4px solid var(--j-ink);border-radius:24px;background:var(--toy-color,var(--j-yellow));box-shadow:9px 11px 0 rgba(48,34,29,.35);font-size:50px;animation:toy-land .6s cubic-bezier(.12,1.55,.3,1);pointer-events:auto;cursor:pointer}
.placed-toy:nth-child(1){left:11%;bottom:15%;transform:rotate(-8deg)}
.placed-toy:nth-child(2){left:38%;bottom:19%;transform:rotate(5deg)}
.placed-toy:nth-child(3){right:12%;bottom:13%;transform:rotate(-3deg)}
.placed-toy:nth-child(4){left:30%;bottom:42%;transform:rotate(7deg)}
@keyframes toy-land{from{opacity:0;transform:translateY(-180px) rotate(20deg) scale(.4)}to{opacity:1}}
.jmc-builder{padding:100px max(20px,calc((100vw - 1180px)/2));background:#fff9e9}
.builder-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}
.builder-head h2{font-size:clamp(44px,7vw,86px);line-height:.9;letter-spacing:-.07em;margin:14px 0;font-weight:1000}
.builder-instructions{line-height:1.7;font-weight:650;max-width:52ch}
.toy-tray{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:50px 0 0}
.toy-block{position:relative;min-height:190px;border:3px solid var(--j-ink);border-radius:26px;background:var(--toy-color);box-shadow:8px 9px 0 var(--j-ink);color:var(--j-ink);cursor:pointer;padding:20px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;transition:transform .25s,box-shadow .25s}
.toy-block:hover,.toy-block:focus-visible{transform:translateY(-9px) rotate(-2deg);box-shadow:13px 18px 0 var(--j-ink)}
.toy-block[aria-pressed="true"]{box-shadow:inset 0 0 0 7px #fff,8px 9px 0 var(--j-ink)}
.toy-icon{font-size:55px;filter:drop-shadow(3px 4px 0 rgba(255,255,255,.6))}
.toy-name{font-size:17px;font-weight:1000;text-transform:uppercase;letter-spacing:-.03em}
.toy-block small{font-size:11px;font-weight:700;opacity:.7}
.jmc-journey{padding:100px max(20px,calc((100vw - 1180px)/2));background:var(--j-blue);color:#fff;position:relative;overflow:hidden}
.jmc-journey::before{content:'10';position:absolute;right:-.05em;top:-.28em;font-size:clamp(300px,50vw,700px);line-height:1;font-weight:1000;color:rgba(255,255,255,.08);pointer-events:none}
.jmc-journey h2{font-size:clamp(48px,8vw,96px);letter-spacing:-.08em;line-height:.85;margin:12px 0 55px;max-width:8ch}
.jmc-road{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:25px}
.jmc-road::before{content:'';position:absolute;left:7%;right:7%;top:50px;border-top:6px dashed var(--j-yellow)}
.month-stop{position:relative;z-index:2;background:#fff;color:var(--j-ink);border:3px solid var(--j-ink);border-radius:22px;padding:22px;min-height:230px;box-shadow:9px 10px 0 rgba(35,23,17,.4);transform:rotate(var(--stop-rotate,-2deg))}
.month-stop:nth-child(even){--stop-rotate:2deg;margin-top:50px}
.month-dot{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;border:3px solid var(--j-ink);background:var(--j-yellow);font-size:22px;font-weight:1000;margin-bottom:30px}
.month-stop strong{font-size:19px;display:block;margin-bottom:8px}.month-stop p{font-size:13px;line-height:1.6;margin:0}
.jmc-family{padding:110px max(20px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:#bee588}
.jmc-photo-frame{position:relative;transform:rotate(-4deg);background:#fff;padding:18px 18px 70px;border:3px solid var(--j-ink);box-shadow:17px 20px 0 var(--j-pink)}
.jmc-photo-frame img{width:100%;aspect-ratio:4/3;object-fit:cover}
.jmc-family h2{font-size:clamp(44px,7vw,83px);line-height:.9;letter-spacing:-.075em;margin:0 0 25px}
.jmc-family li{margin:14px 0;font-weight:700;line-height:1.5}
body[data-world="jmc"] .world-footer{background:var(--j-ink);color:#fff5dc}
body[data-world="jmc"] .footer-button{background:var(--j-pink);color:#fff;border:2px solid #fff5dc}

/* -------------------------------- ARTS / TACTILE COLLAGE DESK */
body[data-world="arts"]{--a-paper:#f2eee3;--a-ink:#171717;--a-blue:#74309c;--a-pink:#c3282e;--a-yellow:#a3da56;--a-green:#659521;background:var(--a-paper);color:var(--a-ink);font-family:Georgia,"Times New Roman",serif}
body[data-world="arts"] .world-nav{background:#171717;color:#f2eee3;border-radius:0;box-shadow:8px 8px 0 var(--a-blue);transform:translateX(-50%) rotate(-.4deg)}
body[data-world="arts"] .world-brand-mark{background:var(--a-yellow);color:#171717;border-radius:0;transform:rotate(7deg)}
body[data-world="arts"] .world-links a{border-radius:0;font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:10px}
body[data-world="arts"] .world-links a:hover,body[data-world="arts"] .world-links a:focus-visible{background:var(--a-pink);color:#fff}
.arts-hero{min-height:100svh;padding:145px max(24px,calc((100vw - 1220px)/2)) 85px;position:relative;overflow:hidden;background-color:#eee8da;background-image:linear-gradient(rgba(35,35,35,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(35,35,35,.07) 1px,transparent 1px);background-size:38px 38px}
.arts-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;position:relative;z-index:3}
.arts-eyebrow{font-family:ui-monospace,monospace;text-transform:uppercase;font-weight:800;letter-spacing:.18em;font-size:10px;margin-bottom:25px;display:inline-block;border:2px solid currentColor;padding:7px 11px;background:var(--a-yellow);transform:rotate(-2deg)}
.arts-title{font-size:clamp(62px,10.4vw,148px);font-weight:400;line-height:.72;letter-spacing:-.09em;margin:0;position:relative}
.arts-title .cut{display:inline-block;font-family:Arial Black,Arial,sans-serif;text-transform:uppercase;background:var(--a-blue);color:#fff;padding:.06em .1em .12em;transform:rotate(-2deg);box-shadow:9px 10px 0 #171717}
.arts-title .script{display:block;color:var(--a-pink);font-style:italic;transform:translateX(.28em) rotate(2deg)}
.arts-lead{font-size:clamp(17px,1.6vw,21px);line-height:1.65;max-width:48ch;margin:36px 0}
.arts-cta{display:inline-block;background:#171717;color:#fff;padding:14px 22px;text-decoration:none;font-family:Arial,sans-serif;font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.12em;box-shadow:7px 8px 0 var(--a-pink);transform:rotate(.5deg)}
.hero-collage{position:relative;min-height:650px;perspective:1000px;transform-style:preserve-3d}
.collage-photo{position:absolute;width:68%;left:17%;top:11%;background:#fff;padding:13px 13px 62px;box-shadow:17px 21px 0 rgba(23,23,23,.25);transform:rotate(5deg) rotateY(-7deg);border:2px solid #171717}
.collage-photo img{width:100%;aspect-ratio:4/5;object-fit:cover}
.collage-photo figcaption{font-family:ui-monospace,monospace;font-size:11px;text-transform:uppercase;margin-top:16px;text-align:center}
.paper-shape{position:absolute;border:2px solid #171717;box-shadow:7px 8px 0 rgba(23,23,23,.25)}
.paper-shape.one{width:150px;height:190px;background:var(--a-yellow);left:0;top:7%;transform:rotate(-14deg);clip-path:polygon(4% 7%,96% 0,89% 94%,0 100%)}
.paper-shape.two{width:190px;height:150px;background:var(--a-pink);right:-3%;bottom:12%;transform:rotate(11deg);border-radius:50%}
.paper-shape.three{width:180px;height:70px;background:var(--a-green);left:3%;bottom:14%;transform:rotate(-8deg)}
.paper-shape.four{width:100px;height:100px;right:5%;top:5%;border-radius:50%;background:repeating-conic-gradient(#171717 0 12deg,#fff 13deg 25deg);animation:arts-spin 12s linear infinite}
@keyframes arts-spin{to{transform:rotate(1turn)}}
.tape{position:absolute;width:120px;height:34px;background:rgba(163, 218, 86,.75);z-index:3;transform:rotate(-18deg);top:8%;left:36%}
.arts-studio{padding:110px max(20px,calc((100vw - 1240px)/2));background:#171717;color:#f2eee3}
.arts-studio-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px;align-items:end;margin-bottom:50px}
.arts-studio h2{font-size:clamp(50px,8vw,104px);line-height:.82;letter-spacing:-.08em;font-weight:400;margin:10px 0}
.arts-studio h2 em{color:var(--a-yellow)}
.art-desk{display:grid;grid-template-columns:minmax(170px,.3fr) 1fr;gap:24px;align-items:start;padding:25px;background:#b74c50;border:3px solid #0e0e0e;box-shadow:0 25px 0 #080808,0 50px 90px rgba(0,0,0,.45);perspective:1200px}
.art-tools{background:#e8e0d0;color:#171717;border:2px solid #171717;padding:18px;box-shadow:8px 9px 0 rgba(0,0,0,.25);transform:rotate(-1deg)}
.art-tools h3{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:11px;margin:0 0 18px}
.palette{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:20px}
.paint-swatch{aspect-ratio:1;border-radius:50% 45% 55% 48%;border:2px solid #171717;cursor:pointer;background:var(--paint);position:relative}
.paint-swatch[aria-pressed="true"]::after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-family:Arial,sans-serif;font-weight:900;text-shadow:0 2px 3px #000}
.brush-row{display:grid;gap:8px;margin-top:18px}
.brush-row label{font-family:Arial,sans-serif;font-size:11px;font-weight:800;text-transform:uppercase}
.brush-row input{width:100%;accent-color:var(--a-pink)}
.tool-buttons{display:grid;gap:8px;margin-top:20px}
.tool-buttons button{border:2px solid #171717;background:#fff;padding:10px;font-family:Arial,sans-serif;text-transform:uppercase;font-size:10px;font-weight:900;cursor:pointer;box-shadow:3px 3px 0 #171717}
.canvas-wrap{position:relative;background:#f8f4e9;border:3px solid #171717;padding:16px;transform:rotate(.5deg);box-shadow:12px 14px 0 rgba(0,0,0,.3)}
#artCanvas{display:block;width:100%;height:auto;aspect-ratio:16/10;background:#fffdf7;cursor:crosshair;touch-action:none;border:1px solid rgba(23,23,23,.25)}
.canvas-note{display:flex;justify-content:space-between;gap:18px;color:#171717;font-family:ui-monospace,monospace;font-size:10px;text-transform:uppercase;margin-top:12px}
.arts-gallery{padding:110px max(20px,calc((100vw - 1240px)/2));background:#f3eee2;overflow:hidden}
.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:50px}
.gallery-heading h2{font-size:clamp(50px,9vw,112px);line-height:.8;letter-spacing:-.09em;font-weight:400;margin:0}
.gallery-strip{display:grid;grid-template-columns:1.2fr .75fr .95fr;gap:32px;align-items:start}
.gallery-piece{position:relative;background:#fff;border:2px solid #171717;padding:12px 12px 50px;box-shadow:12px 15px 0 rgba(23,23,23,.18);transition:transform .4s cubic-bezier(.16,1,.3,1)}
.gallery-piece:nth-child(1){transform:rotate(-3deg)}.gallery-piece:nth-child(2){transform:rotate(4deg);margin-top:100px}.gallery-piece:nth-child(3){transform:rotate(-1deg);margin-top:30px}
.gallery-piece:hover{transform:rotate(0) translateY(-15px) scale(1.03);z-index:3}
.gallery-piece img{width:100%;aspect-ratio:1;object-fit:cover}.gallery-piece figcaption{font-family:ui-monospace,monospace;color:#171717;font-size:10px;text-transform:uppercase;margin-top:14px}
.arts-method{padding:110px max(20px,calc((100vw - 1180px)/2));background:var(--a-blue);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px}
.arts-method h2{font-size:clamp(50px,8vw,105px);line-height:.82;letter-spacing:-.08em;font-weight:400;margin:0}
.arts-method-list{counter-reset:artstep;display:grid;gap:0}
.arts-method-item{counter-increment:artstep;display:grid;grid-template-columns:70px 1fr;gap:20px;border-top:2px solid #fff;padding:25px 0}
.arts-method-item::before{content:'0' counter(artstep);font-family:ui-monospace,monospace;font-weight:900}
.arts-method-item strong{display:block;font-family:Arial,sans-serif;text-transform:uppercase;font-size:18px;margin-bottom:8px}.arts-method-item p{margin:0;line-height:1.6}
body[data-world="arts"] .world-footer{background:var(--a-yellow);color:#171717}
body[data-world="arts"] .footer-button{background:#171717;color:#fff;border-radius:0;box-shadow:6px 7px 0 var(--a-pink)}

/* -------------------------------- ONLINE / FLOATING LESSON PORTAL */
body[data-world="online"]{--o-night:#180a20;--o-blue:#c388e5;--o-cyan:#a9dc61;--o-lime:#b9e27f;--o-paper:#e7eedd;background:var(--o-night);color:var(--o-paper);font-family:Inter,"Segoe UI",Arial,sans-serif}
body[data-world="online"] .world-nav{background:rgba(9,13,33,.92);color:#e7eedd;border:1px solid rgba(232, 221, 238,.22);box-shadow:0 12px 50px rgba(0,0,0,.35)}
body[data-world="online"] .world-brand-mark{background:linear-gradient(135deg,var(--o-cyan),var(--o-blue));color:#161f09}
body[data-world="online"] .world-links a:hover,body[data-world="online"] .world-links a:focus-visible{background:var(--o-paper);color:var(--o-night)}
.online-hero{min-height:100svh;position:relative;padding:145px max(22px,calc((100vw - 1240px)/2)) 100px;overflow:hidden;background:radial-gradient(circle at 75% 15%,rgba(195, 136, 229,.42),transparent 28%),radial-gradient(circle at 12% 75%,rgba(169, 220, 97,.18),transparent 32%),#180a20}
.orbit-grid{position:absolute;inset:0;opacity:.3;background-image:linear-gradient(rgba(199, 145, 230,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(199, 145, 230,.1) 1px,transparent 1px);background-size:64px 64px;transform:perspective(600px) rotateX(55deg) scale(1.6);transform-origin:center bottom;mask-image:linear-gradient(to top,#000,transparent 80%)}
.online-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
.live-chip{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(232, 221, 238,.25);border-radius:99px;padding:9px 13px;font-family:ui-monospace,monospace;text-transform:uppercase;font-size:10px;letter-spacing:.14em;margin-bottom:24px;background:rgba(255,255,255,.05)}
.live-chip i{width:8px;height:8px;border-radius:50%;background:#ed666b;box-shadow:0 0 0 6px rgba(237, 102, 107,.15);animation:live-pulse 1.4s infinite}
@keyframes live-pulse{50%{box-shadow:0 0 0 11px rgba(237, 102, 107,0)}}
.online-title{font-size:clamp(57px,8.6vw,126px);font-weight:650;line-height:.81;letter-spacing:-.085em;margin:0;max-width:8ch}
.online-title span{display:block;color:var(--o-cyan);font-family:Georgia,serif;font-style:italic;font-weight:400;transform:translateX(.35em)}
.online-lead{font-size:clamp(16px,1.5vw,20px);line-height:1.7;max-width:48ch;color:rgba(232, 221, 238,.67);margin:32px 0}
.online-cta{display:inline-flex;align-items:center;gap:12px;color:var(--o-night);background:var(--o-lime);border-radius:14px;text-decoration:none;padding:15px 20px;font-weight:850;box-shadow:0 14px 40px rgba(185, 226, 127,.2)}
.portal-stack{position:relative;min-height:630px;perspective:1200px;transform-style:preserve-3d}
.browser-window{position:absolute;background:#e7eedd;color:#271134;border:1px solid rgba(255,255,255,.7);border-radius:19px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.55);transform-style:preserve-3d;transition:transform .18s ease-out}
.browser-window.main{width:86%;right:2%;top:8%;z-index:3;transform:rotateY(-8deg) rotateX(3deg)}
.browser-window.chat{width:47%;left:-4%;bottom:4%;z-index:5;transform:translateZ(80px) rotateY(8deg) rotate(-3deg)}
.browser-window.schedule{width:41%;right:-4%;bottom:-2%;z-index:6;transform:translateZ(120px) rotate(4deg)}
.browser-bar{height:44px;background:#e7eedd;display:flex;align-items:center;gap:7px;padding:0 14px;border-bottom:1px solid #dac8e4}
.browser-dot{width:9px;height:9px;border-radius:50%;background:#ef767b}.browser-dot:nth-child(2){background:#b1df70}.browser-dot:nth-child(3){background:#a6db5b}
.browser-url{margin-left:8px;flex:1;background:#e8ddee;border-radius:99px;padding:6px 12px;color:#9367ac;font-size:9px;font-family:ui-monospace,monospace}
.lesson-video{position:relative;aspect-ratio:16/10;background:#291535;overflow:hidden}
.lesson-video img{width:100%;height:100%;object-fit:cover;opacity:.78}
.lesson-video::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(9,13,33,.78))}
.teacher-pill{position:absolute;z-index:2;left:15px;bottom:15px;color:#fff;background:rgba(9,13,33,.86);padding:8px 11px;border-radius:9px;font-size:10px;font-weight:750}
.lesson-controls{display:flex;justify-content:center;gap:8px;padding:12px;background:#23112e}
.lesson-controls span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#492b5a;color:#fff;font-size:11px}.lesson-controls span:last-child{background:#ed666b}
.chat-body{padding:15px;display:grid;gap:10px;font-size:10px}
.chat-bubble{padding:9px 11px;border-radius:12px 12px 12px 3px;background:#e7eedd;max-width:85%}.chat-bubble.you{justify-self:end;border-radius:12px 12px 3px 12px;background:#b9e27f}
.schedule-body{padding:15px}.schedule-time{font-size:29px;font-weight:750;letter-spacing:-.05em}.schedule-label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#879b6a}
.floating-country{position:absolute;z-index:8;padding:10px 13px;border:1px solid rgba(232, 221, 238,.35);background:#291236;border-radius:99px;font-size:10px;font-weight:750;box-shadow:0 13px 30px rgba(0,0,0,.3);animation:country-float 5s ease-in-out infinite}
.floating-country.one{left:4%;top:5%}.floating-country.two{right:1%;top:48%;animation-delay:-1.5s}.floating-country.three{left:24%;bottom:0;animation-delay:-3s}
@keyframes country-float{50%{transform:translateY(-13px)}}
.online-planner{padding:110px max(20px,calc((100vw - 1180px)/2));background:#e7eedd;color:#1c0c25}
.planner-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:start}
.online-planner h2{font-size:clamp(48px,8vw,96px);line-height:.84;letter-spacing:-.08em;margin:12px 0 25px}
.planner-copy{line-height:1.7;color:#6c7b56;max-width:46ch}
.timezone-console{background:#1e0c28;color:#e7eedd;border-radius:28px;padding:28px;box-shadow:0 35px 80px rgba(70, 35, 90,.25);position:relative;overflow:hidden}
.timezone-console::before{content:'';position:absolute;width:280px;height:280px;border:1px solid rgba(169, 220, 97,.2);border-radius:50%;right:-130px;top:-130px;box-shadow:0 0 0 35px rgba(169, 220, 97,.05),0 0 0 70px rgba(169, 220, 97,.03)}
.timezone-console label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#ba9ccb;margin-bottom:9px}
.timezone-console select{position:relative;z-index:2;width:100%;background:#2f153e;color:#fff;border:1px solid #58356d;border-radius:13px;padding:14px;margin-bottom:24px}
.time-readout{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 25px}
.clock-card{position:relative;background:#2f153e;border:1px solid #58356d;border-radius:18px;padding:18px}
.clock-city{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#ba9ccb}.clock-time{font-size:clamp(31px,4vw,52px);font-weight:650;letter-spacing:-.07em;margin:5px 0}.clock-date{font-size:11px;color:#9a71b1}
.slot-list{display:grid;gap:9px}.slot-button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:13px 15px;color:#e7eedd;background:#2f153e;border:1px solid #58356d;border-radius:13px;text-align:left;cursor:pointer}.slot-button:hover,.slot-button[aria-pressed="true"]{border-color:var(--o-cyan);background:#37174a}.slot-button em{color:var(--o-cyan);font-style:normal;font-size:11px}
.planner-result{margin-top:18px;padding:14px 15px;border-radius:12px;background:rgba(185, 226, 127,.1);color:var(--o-lime);font-size:12px;line-height:1.5}
.online-courses{padding:110px max(20px,calc((100vw - 1240px)/2));background:#24102f}
.online-courses-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.online-courses h2{font-size:clamp(48px,8vw,98px);letter-spacing:-.08em;line-height:.85;margin:10px 0}
.portal-tabs{display:flex;flex-wrap:wrap;gap:8px}.portal-tabs button{border:1px solid #5e3e70;background:transparent;color:#d1b8df;border-radius:99px;padding:9px 13px;cursor:pointer;font-size:11px}.portal-tabs button[aria-selected="true"]{background:var(--o-cyan);border-color:var(--o-cyan);color:#161f09}
.online-course-window{display:grid;grid-template-columns:1fr 1fr;background:#e7eedd;color:#1c0c25;border-radius:28px;overflow:hidden;min-height:520px;box-shadow:0 40px 100px rgba(0,0,0,.3)}
.online-course-image{position:relative;overflow:hidden}.online-course-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.online-course-window:hover img{transform:scale(1.05)}
.online-course-detail{padding:clamp(35px,6vw,75px);display:flex;flex-direction:column;justify-content:center}.online-course-detail .course-index{font-family:ui-monospace,monospace;text-transform:uppercase;letter-spacing:.13em;font-size:10px;color:#7b8a66}.online-course-detail h3{font-family:Georgia,serif;font-size:clamp(41px,6vw,75px);line-height:.9;letter-spacing:-.065em;margin:18px 0}.online-course-detail p{line-height:1.7;color:#707f5c}.online-course-detail a{display:inline-flex;width:max-content;margin-top:25px;padding:13px 18px;border-radius:12px;background:#1c0c25;color:#fff;text-decoration:none;font-weight:750}
.online-benefits{padding:100px max(20px,calc((100vw - 1180px)/2));background:#b9e27f;color:#161f09;display:grid;grid-template-columns:repeat(4,1fr);gap:1px}
body[data-world="online"] .world-footer{background:#a9dc61;color:#161f09}
body[data-world="online"] .footer-button{background:#161f09;color:#e7eedd}

/* -------------------------------- DECIDE / KINETIC ROUTE FINDER */
body[data-world="decide"]{--d-bg:#f4f0e9;--d-ink:#141414;--d-red:#eb5359;--d-blue:#74309c;--d-yellow:#afde6c;--d-green:#96c850;background:var(--d-bg);color:var(--d-ink);font-family:'Space Grotesk',Arial,sans-serif}
body[data-world="decide"] .world-nav{background:var(--d-bg);color:var(--d-ink);border:2px solid var(--d-ink);border-radius:0;box-shadow:5px 5px 0 var(--d-ink)}
body[data-world="decide"] .world-brand-mark{border-radius:0;background:var(--d-blue);color:#fff}
body[data-world="decide"] .world-links a{border-radius:0;text-transform:uppercase;letter-spacing:.12em;font-size:9px}
body[data-world="decide"] .world-links a:hover,body[data-world="decide"] .world-links a:focus-visible{background:var(--d-yellow);color:var(--d-ink)}
.decide-hero{position:relative;min-height:100svh;padding:145px max(20px,calc((100vw - 1240px)/2)) 80px;display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:center;overflow:hidden;background:var(--d-bg)}
.decide-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.85%,rgba(20,20,20,.1) 50%,transparent 50.15%);background-size:110px 100%;pointer-events:none}
.decide-kicker{display:inline-flex;align-items:center;gap:10px;background:var(--d-yellow);border:2px solid var(--d-ink);padding:8px 10px;text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:900;margin-bottom:25px;box-shadow:4px 4px 0 var(--d-ink)}
.decide-title{font-size:clamp(63px,9.5vw,138px);line-height:.75;letter-spacing:-.09em;text-transform:uppercase;font-weight:1000;margin:0}
.decide-title span{display:block;color:var(--d-blue);transform:translateX(.27em)}
.decide-lead{font-family:Georgia,serif;font-size:clamp(17px,1.6vw,21px);line-height:1.65;margin:34px 0;max-width:45ch}
.start-route{display:inline-flex;align-items:center;gap:13px;border:2px solid var(--d-ink);background:var(--d-red);color:#fff;text-decoration:none;padding:14px 18px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:11px;box-shadow:5px 5px 0 var(--d-ink)}
.route-sculpture{position:relative;min-height:620px;perspective:1200px;transform-style:preserve-3d}
.route-map{position:absolute;inset:4%;transform:rotateY(-12deg) rotateX(7deg);transform-style:preserve-3d;transition:transform .2s;background:#fff;border:3px solid var(--d-ink);box-shadow:23px 30px 0 var(--d-blue);overflow:hidden}
.route-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(20,20,20,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(20,20,20,.09) 1px,transparent 1px);background-size:44px 44px}
.map-line{position:absolute;height:13px;border:3px solid var(--d-ink);transform-origin:left center;border-radius:99px;background:var(--line-color)}
.map-line.one{left:7%;top:68%;width:75%;transform:rotate(-36deg)}.map-line.two{left:20%;top:24%;width:70%;transform:rotate(31deg)}.map-line.three{left:7%;top:46%;width:81%;transform:rotate(5deg)}.map-line.four{left:48%;top:8%;width:65%;transform:rotate(78deg)}
.map-station{position:absolute;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;border:5px solid var(--d-ink);background:#fff;font-size:20px;box-shadow:5px 6px 0 rgba(20,20,20,.24);animation:station-pulse 2.8s ease-in-out infinite}
.map-station.s1{left:7%;top:67%}.map-station.s2{left:29%;top:50%;animation-delay:-.5s}.map-station.s3{left:50%;top:34%;animation-delay:-1s}.map-station.s4{right:10%;top:57%;animation-delay:-1.5s}.map-station.s5{right:16%;top:18%;animation-delay:-2s}
@keyframes station-pulse{50%{transform:translateZ(40px) scale(1.1)}}
.map-ticket{position:absolute;right:7%;bottom:8%;z-index:4;width:45%;background:var(--d-yellow);border:3px solid var(--d-ink);padding:18px;transform:translateZ(80px) rotate(-4deg);box-shadow:10px 12px 0 rgba(20,20,20,.3)}
.map-ticket small{font-family:ui-monospace,monospace;text-transform:uppercase;letter-spacing:.13em}.map-ticket strong{display:block;font-size:22px;text-transform:uppercase;margin-top:8px}
.quiz-zone{min-height:100svh;padding:110px max(20px,calc((100vw - 1180px)/2));background:var(--d-ink);color:#fff;position:relative;overflow:hidden}
.quiz-zone::before{content:'ROUTE';position:absolute;right:-.05em;top:.1em;font-size:clamp(150px,27vw,420px);font-weight:1000;line-height:.7;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.07);transform:rotate(90deg) translateX(50%);transform-origin:right top}
.quiz-layout{position:relative;z-index:2;display:grid;grid-template-columns:280px 1fr;gap:70px}
.quiz-sidebar{position:sticky;top:120px;align-self:start}
.quiz-sidebar h2{font-size:clamp(40px,5vw,64px);line-height:.86;letter-spacing:-.07em;text-transform:uppercase;margin:12px 0 25px}
.route-progress{display:grid;gap:0;margin-top:35px}
.progress-stop{position:relative;display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:center;min-height:60px;color:rgba(255,255,255,.38);font-family:ui-monospace,monospace;text-transform:uppercase;font-size:9px;letter-spacing:.1em}
.progress-stop::before{content:'';display:block;width:18px;height:18px;border:3px solid currentColor;border-radius:50%;background:var(--d-ink);z-index:2}
.progress-stop:not(:last-child)::after{content:'';position:absolute;margin-left:8px;margin-top:43px;height:36px;border-left:3px solid currentColor}
.progress-stop.is-active,.progress-stop.is-done{color:var(--d-yellow)}.progress-stop.is-active::before{background:var(--d-yellow);box-shadow:0 0 0 6px rgba(175, 222, 108,.15)}
.quiz-stage{min-height:610px;background:var(--d-bg);color:var(--d-ink);border:3px solid #fff;padding:clamp(28px,5vw,65px);box-shadow:18px 20px 0 var(--d-blue);position:relative}
.quiz-stage::before{content:attr(data-step-label);position:absolute;right:22px;top:18px;font-family:ui-monospace,monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.quiz-question{font-size:clamp(38px,5.4vw,72px);line-height:.9;letter-spacing:-.065em;text-transform:uppercase;margin:25px 0 40px;max-width:13ch}
.quiz-options{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.quiz-option{border:2px solid var(--d-ink);background:#fff;color:var(--d-ink);min-height:120px;padding:18px;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;box-shadow:5px 5px 0 var(--d-ink);font-weight:850;transition:transform .2s,box-shadow .2s,background .2s}
.quiz-option:hover,.quiz-option:focus-visible{background:var(--option-color,var(--d-yellow));transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--d-ink)}
.quiz-option small{font-family:ui-monospace,monospace;text-transform:uppercase;letter-spacing:.1em;font-size:9px;opacity:.55}
.quiz-back{margin-top:24px;border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer;font-weight:750;padding:8px 0}
.quiz-result{animation:result-in .65s cubic-bezier(.16,1.45,.3,1)}
@keyframes result-in{from{opacity:0;transform:translateY(40px) rotate(2deg) scale(.95)}}
.result-ticket{position:relative;background:var(--result-color,var(--d-yellow));border:3px solid var(--d-ink);padding:clamp(25px,5vw,50px);box-shadow:12px 14px 0 var(--d-ink);overflow:hidden}
.result-ticket::after{content:'ADMIT ONE';position:absolute;right:-.45em;bottom:.12em;font-size:65px;font-weight:1000;color:rgba(20,20,20,.08);transform:rotate(-90deg)}
.result-ticket h3{font-size:clamp(52px,8vw,100px);line-height:.82;letter-spacing:-.08em;text-transform:uppercase;margin:14px 0 20px;max-width:8ch}.result-ticket p{font-family:Georgia,serif;font-size:18px;line-height:1.6;max-width:50ch}.result-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}.result-actions a,.result-actions button{border:2px solid var(--d-ink);background:var(--d-ink);color:#fff;text-decoration:none;padding:13px 17px;cursor:pointer;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.result-actions button{background:#fff;color:var(--d-ink)}
.course-network{padding:110px max(20px,calc((100vw - 1200px)/2));background:var(--d-yellow);color:var(--d-ink)}
.course-network h2{font-size:clamp(52px,9vw,114px);line-height:.8;letter-spacing:-.09em;text-transform:uppercase;margin:12px 0 55px;max-width:8ch}
.network-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:2px solid var(--d-ink)}
.network-card{min-height:220px;border-right:2px solid var(--d-ink);border-bottom:2px solid var(--d-ink);padding:23px;text-decoration:none;color:inherit;display:flex;flex-direction:column;justify-content:space-between;transition:background .25s,color .25s,transform .25s}.network-card:nth-child(4n){border-right:0}.network-card:nth-last-child(-n+4){border-bottom:0}.network-card:hover{background:var(--d-blue);color:#fff;transform:translateY(-7px)}.network-card span{font-size:34px}.network-card strong{text-transform:uppercase;font-size:20px;letter-spacing:-.04em}.network-card small{font-family:ui-monospace,monospace;text-transform:uppercase;letter-spacing:.1em}
body[data-world="decide"] .world-footer{background:var(--d-blue);color:#fff}
body[data-world="decide"] .footer-button{background:var(--d-yellow);color:var(--d-ink);border-radius:0;border:2px solid var(--d-ink);box-shadow:5px 5px 0 var(--d-ink)}

/* -------------------------------- RESPONSIVE */
@media(max-width:980px){
  .world-nav .world-links{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);padding:10px;flex-direction:column;align-items:stretch;background:inherit;border:inherit;box-shadow:inherit;border-radius:18px}
  .world-nav.is-open .world-links{display:flex}.world-nav.is-open .world-links a{display:block!important}.world-menu{display:block}.world-links a{text-align:center;padding:12px}
  .music-hero,.jmc-hero-inner,.arts-hero-grid,.online-hero-grid,.decide-hero{grid-template-columns:1fr}
  .music-hero{background:linear-gradient(#e4c8c9 0 54%,#c3282e 54%)}
  .hifi-console,.music-room,.hero-collage,.portal-stack,.route-sculpture{min-height:560px}
  .music-catalogue-head,.music-manifesto,.builder-head,.jmc-family,.arts-studio-head,.arts-method,.planner-grid,.quiz-layout{grid-template-columns:1fr;gap:45px}
  .quiz-sidebar{position:static}.route-progress{grid-template-columns:repeat(4,1fr)}.progress-stop{grid-template-columns:1fr;text-align:center}.progress-stop::before{margin:auto}.progress-stop:not(:last-child)::after{display:none}
  .toy-tray,.jmc-road{grid-template-columns:repeat(2,1fr)}.jmc-road::before{display:none}
  .gallery-strip{grid-template-columns:repeat(2,1fr)}.gallery-piece:nth-child(3){grid-column:1/-1;width:58%;margin-left:auto;margin-right:auto}
  .online-course-window{grid-template-columns:1fr}.online-course-image{min-height:380px}
  .online-benefits{grid-template-columns:repeat(2,1fr)}
  .network-grid{grid-template-columns:repeat(2,1fr)}.network-card:nth-child(n){border-right:2px solid var(--d-ink);border-bottom:2px solid var(--d-ink)}.network-card:nth-child(2n){border-right:0}.network-card:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:700px){
  .world-nav{top:10px;width:calc(100% - 20px)}.world-brand{font-size:14px}.world-brand-mark{width:28px;height:28px}
  .world-footer{padding:58px 22px}.world-footer-grid{grid-template-columns:1fr;gap:30px}
  .music-hero,.jmc-hero,.arts-hero,.online-hero,.decide-hero{padding-left:20px;padding-right:20px;padding-top:115px}
  .music-title,.jmc-title,.arts-title,.online-title,.decide-title{font-size:clamp(51px,18vw,78px)}
  .music-hero{background:linear-gradient(#e4c8c9 0 50%,#c3282e 50%)}.hifi-console{min-height:470px}.hifi-case{padding:13px;transform:none}.hifi-panel{padding:12px}.turntable{min-height:300px}
  .music-catalogue,.music-manifesto,.jmc-builder,.jmc-journey,.jmc-family,.arts-studio,.arts-gallery,.arts-method,.online-planner,.online-courses,.quiz-zone,.course-network{padding:80px 20px}
  .music-filter{justify-content:flex-start}.sleeve-wall{grid-template-columns:repeat(2,1fr);gap:22px 14px}.course-sleeve{grid-column:span 1}.course-sleeve:nth-child(n){margin-top:0}.sleeve-title{font-size:28px}.sleeve-meta{display:block}.sleeve-meta span{display:block;margin-top:5px}
  .music-manifesto blockquote{font-size:45px}.music-manifesto li{grid-template-columns:40px 1fr;font-size:15px}
  .music-room{min-height:460px}.room-shell{transform:none;inset:2% 0 7%}.room-window{width:38%}.placed-toy{width:80px;height:80px;font-size:37px}.toy-tray{grid-template-columns:1fr 1fr;gap:13px}.toy-block{min-height:155px;padding:15px}.toy-icon{font-size:42px}.jmc-road{grid-template-columns:1fr}.month-stop:nth-child(even){margin-top:0}.jmc-photo-frame{padding:11px 11px 45px}.jmc-sun{top:11%;right:-9%}
  .hero-collage{min-height:470px}.paper-shape.one{width:95px;height:130px}.paper-shape.two{width:125px;height:100px}.collage-photo{width:76%;left:12%;padding:9px 9px 45px}.arts-title .cut{box-shadow:5px 6px 0 #171717}.art-desk{grid-template-columns:1fr;padding:14px}.art-tools{transform:none}.palette{grid-template-columns:repeat(6,1fr)}.gallery-strip{grid-template-columns:1fr}.gallery-piece:nth-child(n){transform:none;margin:0;width:auto}.arts-method{gap:45px}
  .portal-stack{min-height:470px}.browser-window.main{width:96%;right:0;transform:none}.browser-window.chat{width:52%;left:0}.browser-window.schedule{width:48%;right:0}.floating-country{display:none}.time-readout{grid-template-columns:1fr}.online-course-image{min-height:270px}.online-courses-head{display:block}.portal-tabs{margin-top:25px}.online-course-detail{padding:30px}
  .online-benefits{grid-template-columns:1fr;padding:60px 20px}.online-benefits article{border-right:0!important;border-bottom:1px solid #161f09}.online-benefits article:last-child{border-bottom:0}
  .route-sculpture{min-height:470px}.route-map{inset:2%;transform:none;box-shadow:12px 15px 0 var(--d-blue)}.map-ticket{width:61%;right:4%}.quiz-stage{padding:25px 18px;box-shadow:9px 11px 0 var(--d-blue)}.quiz-options{grid-template-columns:1fr}.quiz-option{min-height:95px}.route-progress{overflow:auto;grid-template-columns:repeat(4,110px);padding-bottom:8px}.network-grid{grid-template-columns:1fr}.network-card:nth-child(n){border-right:0;border-bottom:2px solid var(--d-ink)}.network-card:last-child{border-bottom:0}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ========================================================================== */
/* PROGRAM EXPANSIONS — each world keeps its own spatial grammar              */
/* ========================================================================== */

/* MUSIC / PATHWAY GALAXY + SCORE ARCHITECTURE */
.music-galaxy{padding:120px max(22px,calc((100vw - 1260px)/2));display:grid;grid-template-columns:minmax(320px,.78fr) minmax(520px,1.22fr);gap:clamp(45px,7vw,100px);align-items:center;background:var(--cream);color:var(--brown)}
.music-galaxy h2,.music-score-journey h2,.music-lesson-cutaway h2,.music-field-guide h2,.music-faq h2{font-size:clamp(48px,7.3vw,96px);font-weight:1000;line-height:.82;letter-spacing:-.075em;text-transform:uppercase;margin:16px 0 28px}
.galaxy-copy em{font-family:Georgia,serif;text-transform:none}.galaxy-controls{display:grid;border-top:2px solid var(--brown);margin-top:34px}.galaxy-controls button{display:grid;grid-template-columns:34px 1fr;gap:2px 13px;padding:15px 10px;border:0;border-bottom:2px solid var(--brown);background:transparent;color:inherit;text-align:left;cursor:pointer;transition:padding .25s,background .25s,color .25s}.galaxy-controls button>span{grid-row:1/3;font:900 10px/1.5 ui-monospace,monospace;opacity:.55}.galaxy-controls button strong{text-transform:uppercase;font-size:14px;letter-spacing:.03em}.galaxy-controls button small{font:10px/1.4 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.08em}.galaxy-controls button[aria-pressed="true"]{padding-left:22px;background:var(--brown);color:var(--acid)}
.galaxy-stage{--galaxy-accent:#b6e04a;position:relative;min-height:760px;isolation:isolate;perspective:1200px;overflow:hidden;background:radial-gradient(circle at 50% 39%,#57292b 0 2%,#241914 33%,#100b09 73%);border:3px solid #0d0907;box-shadow:24px 28px 0 var(--red);transform-style:preserve-3d}.galaxy-stage::before{content:'BROOKS PATHWAY ARRAY';position:absolute;top:19px;left:22px;color:#d19d9f;font:900 9px/1 ui-monospace,monospace;letter-spacing:.16em}.galaxy-stage::after{content:'';position:absolute;inset:8%;border:1px solid rgba(234,223,203,.16);transform:translateZ(-40px) rotate(3deg);pointer-events:none}.galaxy-orbit{position:absolute;left:50%;top:43%;border:1px solid rgba(234,223,203,.4);border-radius:50%;transform-style:preserve-3d;animation:galaxy-turn 14s linear infinite}.galaxy-orbit i{position:absolute;left:50%;top:-8px;width:15px;height:15px;border-radius:50%;background:var(--galaxy-accent);box-shadow:0 0 0 6px rgba(255,255,255,.08)}.galaxy-orbit.orbit-a{width:280px;height:280px;margin:-140px;transform:rotateX(63deg) rotateZ(13deg)}.galaxy-orbit.orbit-b{width:420px;height:420px;margin:-210px;transform:rotateY(64deg) rotateZ(-24deg);animation-direction:reverse;animation-duration:19s}.galaxy-orbit.orbit-c{width:540px;height:300px;margin:-150px -270px;transform:rotateX(71deg) rotateZ(42deg);animation-duration:24s}.galaxy-orbit.orbit-b i{background:var(--red);left:18%}.galaxy-orbit.orbit-c i{background:var(--orange);left:77%}@keyframes galaxy-turn{to{rotate:1turn}}
.galaxy-core{position:absolute;z-index:4;left:50%;top:43%;width:190px;aspect-ratio:1;translate:-50% -50%;display:grid;place-items:center;align-content:center;text-align:center;border-radius:50%;background:var(--galaxy-accent);color:var(--brown);border:3px solid #0d0907;box-shadow:0 0 0 14px rgba(234,223,203,.08),0 28px 50px rgba(0,0,0,.55);transform:translateZ(85px);transition:background .4s,transform .4s}.galaxy-core>span{font-size:42px}.galaxy-core strong{font-size:26px;text-transform:uppercase;letter-spacing:-.05em}.galaxy-core small{max-width:16ch;margin-top:5px;font:9px/1.4 ui-monospace,monospace;text-transform:uppercase}.galaxy-stage.is-changing .galaxy-core{transform:translateZ(130px) rotateY(18deg) scale(.88)}
.galaxy-readout{position:absolute;z-index:5;left:22px;right:22px;bottom:22px;padding:22px;background:var(--cream);color:var(--brown);border:2px solid #0d0907;box-shadow:8px 9px 0 var(--red)}.galaxy-readout>span{font:900 9px/1 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.14em}.galaxy-readout h3{font-size:clamp(23px,3vw,38px);line-height:.9;text-transform:uppercase;letter-spacing:-.05em;margin:9px 0}.galaxy-readout p{max-width:62ch;font:15px/1.55 Georgia,serif;margin:0 0 13px}.galaxy-readout a{color:inherit;font-weight:1000;text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.music-score-journey{padding:120px max(22px,calc((100vw - 1240px)/2));background:var(--acid);color:var(--brown)}.music-score-journey>header{max-width:860px}.music-score-journey>header p{max-width:65ch}.score-staff{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:65px;padding:40px 0}.score-staff::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 25px,rgba(36,25,20,.32) 26px 28px,transparent 29px 41px);border-left:5px solid var(--brown);border-right:5px solid var(--brown)}.score-movement{position:relative;z-index:2;min-height:360px;padding:24px 20px;background:var(--cream);border:2px solid var(--brown);box-shadow:9px 11px 0 var(--red);transform:rotate(-2deg)}.score-movement:nth-child(2n){margin-top:70px;transform:rotate(2deg)}.score-movement>span{font:900 9px/1 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.14em}.score-movement h3{font-size:36px;text-transform:uppercase;letter-spacing:-.06em;margin:90px 0 13px}.score-movement h3::before{content:'♪';display:block;font-size:70px;line-height:.5;margin-bottom:28px}.score-movement p{font:15px/1.65 Georgia,serif}
.music-lesson-cutaway{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:.68fr 1.32fr;gap:clamp(50px,9vw,130px);align-items:center;background:var(--orange);color:var(--brown)}.cutaway-dial{position:relative;aspect-ratio:1;min-height:460px;display:grid;place-items:center;overflow:hidden;isolation:isolate}.cutaway-dial::before{content:'';position:absolute;inset:10%;border-radius:50%;background:var(--brown);border:12px solid var(--cream);box-shadow:0 0 0 3px var(--brown),16px 18px 0 rgba(36,25,20,.25);z-index:-1}.cutaway-dial strong{position:relative;z-index:4;display:inline-block;padding:25px 30px 28px;background:var(--acid);color:var(--brown);font-size:clamp(38px,4.8vw,64px);line-height:.86;letter-spacing:-.08em;text-align:left;transform:rotate(-4deg);box-shadow:9px 10px 0 var(--brown)}.dial-ring{position:absolute;border:3px solid var(--brown);border-radius:50%;animation:record-spin 10s linear infinite}.dial-ring.r1{inset:3%}.dial-ring.r2{inset:25%;animation-direction:reverse;animation-duration:7s}.dial-ring::after{content:'';position:absolute;top:3%;left:48%;width:22px;height:22px;border-radius:50%;background:var(--red);border:3px solid var(--brown)}.lesson-frequency-list{list-style:none;margin:38px 0 0;padding:0;border-top:3px solid var(--brown)}.lesson-frequency-list li{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:22px 0;border-bottom:3px solid var(--brown)}.lesson-frequency-list li>span{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:var(--brown);color:var(--acid);font-weight:1000}.lesson-frequency-list h3{margin:0 0 6px;text-transform:uppercase;font-size:20px}.lesson-frequency-list p{margin:0;font:16px/1.6 Georgia,serif}
.music-field-guide{display:grid;grid-template-columns:1fr 1fr}.field-practice,.field-outcomes{padding:110px max(24px,calc((100vw - 1180px)/2 - 50% + 24px))}.field-practice{background:var(--cream);color:var(--brown)}.field-practice p{font:17px/1.7 Georgia,serif;max-width:60ch}.field-outcomes{background:#a0cf5e;color:var(--brown)}.field-outcomes ul{list-style:none;margin:36px 0 0;padding:0;border-top:3px solid currentColor}.field-outcomes li{display:grid;gap:7px;padding:22px 0;border-bottom:3px solid currentColor}.field-outcomes strong{text-transform:uppercase;font-size:22px}.field-outcomes span{font:15px/1.6 Georgia,serif}
.music-faq{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;background:var(--red);color:var(--brown)}.music-faq>div:first-child{position:sticky;top:120px;align-self:start}.music-faq .music-button{display:inline-flex;margin-top:25px}.music-faq-list{border-top:3px solid var(--brown)}.music-faq details{border-bottom:3px solid var(--brown);padding:20px 0}.music-faq summary{cursor:pointer;font-size:20px;font-weight:1000;text-transform:uppercase;line-height:1.2;list-style-position:outside;margin-left:23px}.music-faq details p{font:16px/1.65 Georgia,serif;max-width:65ch;margin:15px 0 5px 23px}

/* JMC / STORYBOOK THEATRE + GROWTH RULER */
.jmc-story-theatre{padding:120px max(22px,calc((100vw - 1220px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(45px,7vw,95px);align-items:center;background:var(--j-blue);color:#fff}.jmc-story-theatre h2,.jmc-class-rhythm h2,.jmc-growth-map h2,.jmc-parent-guide h2,.jmc-faq h2{font-size:clamp(45px,7vw,88px);line-height:.84;letter-spacing:-.075em;margin:15px 0 28px}.storybook-tabs{display:grid;margin-top:32px;border:3px solid #fff}.storybook-tabs button{display:flex;align-items:center;gap:14px;padding:14px;border:0;border-bottom:2px solid #fff;background:transparent;color:#fff;text-align:left;font-weight:900;cursor:pointer}.storybook-tabs button:last-child{border-bottom:0}.storybook-tabs button span{font:900 9px ui-monospace,monospace;opacity:.65}.storybook-tabs button[aria-selected="true"]{background:var(--j-yellow);color:var(--j-ink)}.storybook-note{margin-top:20px;padding:16px;border:2px dashed #fff;display:grid;gap:5px}.storybook-note strong{text-transform:uppercase}.storybook-note span{font-size:13px;line-height:1.55}
.storybook-stage{--scene-sky:#c58ce6;position:relative;min-height:680px;overflow:hidden;perspective:1100px;transform-style:preserve-3d;background:var(--scene-sky);border:5px solid var(--j-ink);border-radius:35px 35px 12px 12px;box-shadow:20px 25px 0 var(--j-ink);transition:background .45s}.storybook-stage::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px);background-size:72px 72px;pointer-events:none}.storybook-stage[data-scene="parade"]{--scene-sky:#e4c8c9}.storybook-stage[data-scene="moon"]{--scene-sky:#7a3d9e}.storybook-stage[data-scene="garden"]{--scene-sky:#bee18e}.theatre-curtain{position:absolute;z-index:10;top:0;bottom:0;width:18%;background:repeating-linear-gradient(90deg,#c3282e 0 22px,#ee7074 23px 43px);border:3px solid var(--j-ink);transition:width .5s}.theatre-curtain.left{left:0;border-radius:0 0 80% 0}.theatre-curtain.right{right:0;border-radius:0 0 0 80%}.storybook-stage.is-cued .theatre-curtain{width:10%}.theatre-depth{position:absolute;transform-style:preserve-3d}.theatre-depth.back{inset:8% 14% 30%;transform:translateZ(-90px) scale(1.12)}.theatre-depth.middle{inset:28% 16% 19%;transform:translateZ(45px)}.scene-moon{position:absolute;right:11%;top:4%;width:110px;aspect-ratio:1;border-radius:50%;background:var(--j-yellow);border:4px solid var(--j-ink);box-shadow:9px 10px 0 rgba(48,34,29,.25)}.scene-tree{position:absolute;bottom:0;width:80px;height:270px;background:#6b2e30;border:4px solid var(--j-ink)}.scene-tree::before{content:'';position:absolute;left:50%;top:-85px;width:170px;aspect-ratio:1;translate:-50%;border-radius:50%;background:#84b939;border:4px solid var(--j-ink)}.scene-tree.t1{left:8%;transform:rotate(-5deg)}.scene-tree.t2{right:9%;height:230px;transform:rotate(7deg)}.scene-hill{position:absolute;left:-15%;right:-15%;bottom:-55%;height:100%;border-radius:50% 50% 0 0;background:#a7cf70;border:4px solid var(--j-ink)}.scene-character{position:absolute;left:50%;top:24%;translate:-50%;font-size:90px;filter:none;transition:transform .4s}.storybook-stage.is-cued .scene-character{transform:translateY(-24px) rotate(8deg) scale(1.08)}.theatre-floor{position:absolute;left:-10%;right:-10%;bottom:-20%;height:45%;background:repeating-linear-gradient(90deg,#e75d62 0 45px,#bf2c31 46px 49px);border-top:5px solid var(--j-ink);transform:rotateX(59deg);transform-origin:top}.story-cue{position:absolute;z-index:20;bottom:16%;width:72px;height:72px;border:4px solid var(--j-ink);border-radius:50%;background:var(--j-yellow);color:var(--j-ink);cursor:pointer;box-shadow:6px 7px 0 var(--j-ink);display:grid;place-items:center;align-content:center}.story-cue span{font-weight:1000;font-size:20px;line-height:1}.story-cue small{text-transform:uppercase;font-size:8px;font-weight:900}.story-cue.cue-one{left:22%}.story-cue.cue-two{left:calc(50% - 36px);background:var(--j-mint)}.story-cue.cue-three{right:22%;background:var(--j-pink);color:#fff}.story-cue:active{translate:3px 4px;box-shadow:3px 3px 0 var(--j-ink)}.theatre-caption{position:absolute;z-index:22;left:15%;right:15%;bottom:4%;padding:11px;background:#fff;color:var(--j-ink);border:3px solid var(--j-ink);font-size:11px;font-weight:900;text-align:center;transform:rotate(-1deg)}
.jmc-class-rhythm{padding:120px max(22px,calc((100vw - 1120px)/2));background:#fff5dc}.jmc-class-rhythm>header{max-width:880px}.class-ribbon{list-style:none;margin:65px 0 0;padding:0;counter-reset:classstep}.class-ribbon li{position:relative;display:grid;grid-template-columns:170px 1fr;gap:35px;min-height:180px;padding:25px 0;border-top:3px solid var(--j-ink)}.class-ribbon li:last-child{border-bottom:3px solid var(--j-ink)}.class-ribbon li>span{display:grid;place-items:center;align-self:start;aspect-ratio:1;border-radius:50%;background:var(--j-yellow);border:4px solid var(--j-ink);box-shadow:8px 9px 0 var(--j-ink);font-size:25px;font-weight:1000;text-transform:uppercase;transform:rotate(-5deg)}.class-ribbon li:nth-child(2n)>span{background:var(--j-pink);color:#fff;transform:rotate(5deg)}.class-ribbon li:nth-child(3n)>span{background:var(--j-mint);color:var(--j-ink)}.class-ribbon strong{display:block;font-size:clamp(28px,4vw,48px);letter-spacing:-.055em;margin:7px 0 9px}.class-ribbon p{font-size:15px;line-height:1.7;max-width:68ch;margin:0}
.jmc-growth-map{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;background:var(--j-mint);align-items:stretch}.growth-ruler{position:relative;min-height:740px;border:4px solid var(--j-ink);background:#fff;box-shadow:15px 18px 0 var(--j-ink);display:flex;align-items:flex-end;justify-content:center;gap:12px;padding:70px 25px 40px;overflow:hidden}.growth-ruler::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 47px,rgba(48,34,29,.23) 48px 51px)}.growth-ruler>span{position:relative;z-index:2;height:var(--height);width:18%;display:flex;align-items:flex-end;justify-content:center;padding:10px 5px;background:var(--j-pink);border:3px solid var(--j-ink);font-size:10px;font-weight:900;text-transform:uppercase;writing-mode:vertical-rl}.growth-ruler>span:nth-child(2){background:var(--j-yellow)}.growth-ruler>span:nth-child(3){background:var(--j-blue);color:#fff}.growth-ruler>span:nth-child(4){background:var(--j-mint)}.growth-ruler>strong{position:absolute;z-index:3;left:20px;top:20px;font-size:70px;text-transform:uppercase;letter-spacing:-.08em;transform:rotate(-7deg)}.growth-signals{margin-top:35px}.growth-signals>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px 0;border-top:3px solid var(--j-ink)}.growth-signals>div:last-child{border-bottom:3px solid var(--j-ink)}.growth-signals dt{font-weight:1000;text-transform:uppercase}.growth-signals dd{margin:0;font-size:14px;line-height:1.65}
.jmc-parent-guide{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr .82fr;gap:75px;background:var(--j-pink);color:#fff;align-items:start}.parent-guide-copy p{font-size:17px}.jmc-fit-ticket{background:var(--j-yellow);color:var(--j-ink);border:4px solid var(--j-ink);padding:35px;box-shadow:15px 17px 0 var(--j-ink);transform:rotate(2deg)}.jmc-fit-ticket>span{font:900 10px ui-monospace,monospace;letter-spacing:.15em}.jmc-fit-ticket h3{font-size:34px;line-height:.95;letter-spacing:-.05em}.jmc-fit-ticket li{margin:12px 0;line-height:1.5;font-weight:750}.jmc-fit-ticket p{font-size:13px;line-height:1.6}.jmc-fit-ticket .jmc-cta{font-size:13px;background:var(--j-blue);transform:rotate(-2deg)}
.jmc-faq{padding:120px max(22px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.68fr 1.32fr;gap:80px;background:var(--j-yellow);color:var(--j-ink)}.jmc-faq-stack details{padding:20px;border:3px solid var(--j-ink);background:#fff;margin-bottom:-3px;box-shadow:8px 9px 0 transparent;transition:transform .2s,box-shadow .2s}.jmc-faq-stack details[open]{position:relative;z-index:2;transform:translate(-5px,-5px);box-shadow:8px 9px 0 var(--j-pink)}.jmc-faq summary{cursor:pointer;font-weight:1000;line-height:1.35}.jmc-faq details p{line-height:1.65;margin-bottom:0}

/* ARTS / MATERIAL CABINET + ATELIER SCROLL */
.material-cabinet{padding:120px max(22px,calc((100vw - 1220px)/2));display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(50px,8vw,110px);align-items:center;background:#171717;color:#fff}.material-cabinet h2,.arts-atelier-path h2,.arts-home-studio h2,.arts-outcomes h2,.arts-faq h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(48px,7.5vw,96px);line-height:.86;letter-spacing:-.07em;margin:15px 0 28px}.cabinet-readout{margin-top:35px;padding:24px;background:var(--a-paper);color:#171717;box-shadow:10px 12px 0 var(--a-pink);transform:rotate(-1deg)}.cabinet-readout>span{font:900 9px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.15em}.cabinet-readout h3{font:900 25px/1 Arial,sans-serif;text-transform:uppercase;margin:12px 0}.cabinet-readout p,.cabinet-readout li{font-size:14px;line-height:1.6}.cabinet-readout ul{padding-left:20px}
.cabinet-scene{position:relative;perspective:1200px;transform-style:preserve-3d;min-height:760px;padding:38px 35px 70px}.cabinet-top{position:relative;z-index:3;height:110px;padding:25px;background:#c3282e;color:#171717;border:4px solid #171717;transform:rotateX(-8deg) translateZ(30px);box-shadow:15px 18px 0 #74309c;font:900 12px Arial,sans-serif;letter-spacing:.14em}.cabinet-top i{display:inline-block;width:18px;height:18px;margin:30px 7px 0 0;border-radius:50%;background:#c3282e;border:3px solid #171717}.cabinet-body{position:relative;z-index:2;background:#bd2c32;border:4px solid #171717;padding:18px 24px 28px;transform:rotateY(-6deg);transform-style:preserve-3d;box-shadow:25px 32px 0 rgba(156, 60, 212,.75)}.cabinet-drawer{position:relative;width:100%;height:98px;display:flex;align-items:center;justify-content:space-between;margin:0 0 13px;padding:20px;background:#c3282e;color:#171717;border:4px solid #171717;box-shadow:0 8px 0 #7c1b1f;cursor:pointer;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.16,1,.3,1),background .25s;text-align:left}.cabinet-drawer:hover,.cabinet-drawer:focus-visible{background:#ee6e73}.cabinet-drawer.is-open{z-index:5;transform:translateX(-34px) translateZ(85px);background:#f49ca0}.drawer-label{font:900 16px Arial,sans-serif;text-transform:uppercase}.drawer-handle{width:82px;height:25px;border:4px solid #171717;border-radius:99px;background:#bd2c32}.drawer-object{position:absolute;right:24%;bottom:24px;opacity:0;transform:translateY(20px) rotate(-8deg);transition:opacity .3s,transform .4s;pointer-events:none}.cabinet-drawer.is-open .drawer-object{opacity:1;transform:translateY(-44px) rotate(8deg)}.drawer-object.pencil{width:145px;height:13px;background:#74309c;border:3px solid #171717}.drawer-object.brush{width:125px;height:16px;border-radius:99px;background:#c3282e;border:3px solid #171717}.drawer-object.paper{width:85px;height:65px;background:#fff;border:3px solid #171717}.drawer-object.found{width:65px;aspect-ratio:1;border-radius:50%;background:#a3da56;border:5px dashed #171717}.drawer-object.digital{width:78px;height:54px;background:#171717;border:7px solid #74309c}.cabinet-instruction{text-align:center;color:#fff;font:900 9px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.15em;margin-top:34px}
.arts-atelier-path{padding:120px max(22px,calc((100vw - 1180px)/2));background:var(--a-paper);color:#171717}.arts-atelier-path>header{max-width:840px}.atelier-scroll{margin-top:70px;border-top:3px solid #171717}.atelier-scroll article{display:grid;grid-template-columns:180px 1fr;gap:40px;padding:30px 0;border-bottom:3px solid #171717;transition:padding .3s,background .3s}.atelier-scroll article:hover{padding-left:25px;background:#fff}.atelier-number{font:900 11px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.14em}.atelier-scroll h3{font-family:Georgia,serif;font-size:clamp(40px,6vw,72px);font-weight:400;letter-spacing:-.06em;margin:0 0 10px}.atelier-scroll p{max-width:65ch;line-height:1.65}.atelier-scroll small{font:900 9px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.12em}.atelier-scroll article:nth-child(2){border-left:18px solid var(--a-blue);padding-left:30px}.atelier-scroll article:nth-child(3){border-left:35px solid var(--a-pink);padding-left:30px}.atelier-scroll article:nth-child(4){border-left:52px solid #a3da56;padding-left:30px}.atelier-scroll article:nth-child(5){border-left:70px solid #659521;padding-left:30px}
.arts-home-studio{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center;background:#c3282e;color:#171717}.studio-blueprint{position:relative;min-height:680px;background:#74309c;border:4px solid #171717;box-shadow:18px 21px 0 #171717;transform:rotate(-2deg);overflow:hidden;color:#fff}.studio-blueprint::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px);background-size:45px 45px}.studio-blueprint>strong{position:absolute;left:30px;top:30px;font:900 clamp(35px,5vw,69px)/.82 Arial,sans-serif;letter-spacing:-.07em}.blueprint-paper{position:absolute;display:grid;place-items:center;width:180px;height:230px;background:#fff;color:#171717;border:3px solid #171717;box-shadow:9px 11px 0 #c3282e;font:900 22px Arial,sans-serif}.blueprint-paper.p1{left:12%;bottom:11%;transform:rotate(8deg)}.blueprint-paper.p2{right:9%;bottom:18%;transform:rotate(-11deg);background:#a3da56}.blueprint-cup{position:absolute;left:45%;bottom:9%;width:85px;height:130px;background:#659521;border:4px solid #171717;transform:skew(-5deg)}.blueprint-lamp{position:absolute;right:12%;top:23%;width:16px;height:220px;background:#171717;transform:rotate(18deg)}.blueprint-lamp::before{content:'';position:absolute;top:-50px;left:-50px;width:105px;height:70px;background:#a3da56;border:4px solid #171717;border-radius:70px 70px 10px 10px}.home-studio-copy p{font-size:17px}.studio-rule{display:grid;gap:6px;margin-top:30px;padding:20px;border:3px solid #171717;background:var(--a-paper);box-shadow:8px 9px 0 #171717;transform:rotate(1deg)}.studio-rule strong{text-transform:uppercase}.studio-rule span{line-height:1.55}
.arts-outcomes{display:grid;grid-template-columns:.9fr 1.1fr;background:#659521;color:#fff;padding:120px max(22px,calc((100vw - 1180px)/2));gap:80px}.outcome-poster{align-self:start;padding:35px;background:#a3da56;color:#171717;border:4px solid #171717;box-shadow:15px 18px 0 var(--a-pink);transform:rotate(-3deg)}.outcome-poster>span{font:900 10px ui-monospace,monospace;letter-spacing:.15em}.outcome-poster h2{font-family:Arial,sans-serif;font-weight:1000;text-transform:uppercase}.outcome-poster p{line-height:1.65}.outcome-notes{border-top:3px solid #fff}.outcome-notes article{padding:24px 0;border-bottom:3px solid #fff}.outcome-notes strong{font-family:Georgia,serif;font-size:27px;font-weight:400}.outcome-notes p{line-height:1.65;margin-bottom:0}
.arts-faq{padding:120px max(22px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.65fr 1.35fr;gap:80px;background:var(--a-paper);color:#171717}.arts-faq>div:first-child{align-self:start;position:sticky;top:120px}.arts-faq-sheet{padding:28px;background:#fff;border:3px solid #171717;box-shadow:14px 17px 0 var(--a-blue);transform:rotate(1deg)}.arts-faq details{padding:18px 0;border-bottom:2px solid #171717}.arts-faq details:last-child{border-bottom:0}.arts-faq summary{cursor:pointer;font-family:Georgia,serif;font-size:20px}.arts-faq details p{line-height:1.65}

/* ONLINE / TRANSMISSION ROOM + LIVE SEQUENCE */
.transmission-room{padding:120px max(22px,calc((100vw - 1260px)/2));background:#120818;color:#e7eedd}.transmission-head{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:end}.transmission-room h2,.online-lesson-sequence h2,.online-setup-guide h2,.online-progress h2,.online-fit-faq h2{font-family:Georgia,serif;font-size:clamp(48px,7vw,92px);font-weight:400;line-height:.86;letter-spacing:-.065em;margin:15px 0}.transmission-layout{display:grid;grid-template-columns:300px 1fr;gap:28px;margin-top:65px}.transmission-controls{display:grid;align-content:start}.transmission-controls button{display:grid;gap:5px;padding:18px;border:1px solid #553866;border-bottom:0;background:#22102d;color:#e7eedd;text-align:left;cursor:pointer}.transmission-controls button:last-child{border-bottom:1px solid #553866}.transmission-controls button>span{color:var(--o-cyan);font:900 9px ui-monospace,monospace;letter-spacing:.14em}.transmission-controls button strong{font-size:16px}.transmission-controls button small{color:#aa88bd}.transmission-controls button[aria-pressed="true"]{background:var(--o-cyan);color:#161f09}.transmission-controls button[aria-pressed="true"]>span,.transmission-controls button[aria-pressed="true"] small{color:#161f09}
.transmission-space{--channel:#a9dc61;position:relative;min-height:700px;perspective:1300px;transform-style:preserve-3d;background:#1f0d2a;border:1px solid #553866;overflow:hidden;padding:40px 30px 215px;display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:center;gap:10px}.transmission-space[data-channel="sound"]{--channel:#b9e27f}.transmission-space[data-channel="respond"]{--channel:#ed666b}.transmission-space[data-channel="carry"]{--channel:#cfa1ea}.transmission-room-side{position:relative;z-index:4;min-height:260px;padding:22px;background:#2f183c;border:1px solid #724b88;display:flex;flex-direction:column;justify-content:space-between;transform-style:preserve-3d;transition:transform .4s}.student-side{transform:rotateY(12deg) translateZ(25px)}.teacher-side{transform:rotateY(-12deg) translateZ(25px)}.room-label{font:900 8px ui-monospace,monospace;letter-spacing:.16em;color:var(--channel)}.transmission-room-side strong{font-family:Georgia,serif;font-size:17px;line-height:1.25}.device-rig{position:relative;height:125px}.rig-screen{position:absolute;left:15%;right:15%;top:18%;bottom:8%;border:7px solid #130819;background:var(--channel)}.rig-camera{position:absolute;z-index:2;left:45%;top:3%;width:35px;height:18px;border-radius:6px;background:#130819}.rig-desk{position:absolute;left:4%;right:4%;bottom:0;height:9px;background:#aa88bd}.teacher-console{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.teacher-console i{height:100px;background:linear-gradient(145deg,var(--channel),#40264f 55%);border:4px solid #130819;transform:translateZ(30px)}
.transmission-tunnel{position:relative;height:190px;transform-style:preserve-3d}.tunnel-line{position:absolute;left:0;right:0;top:40%;height:2px;background:var(--channel);transform:rotateY(0)}.tunnel-line.l2{top:65%}.packet{position:absolute;z-index:3;left:0;top:35%;width:18px;height:18px;background:var(--channel);border-radius:3px;animation:packet-travel 2.2s linear infinite}.packet.p2{top:60%;animation-delay:-.7s}.packet.p3{top:47%;animation-delay:-1.4s}.transmission-tunnel em{position:absolute;left:0;right:0;bottom:0;color:var(--channel);font:normal 8px/1.4 ui-monospace,monospace;text-align:center;text-transform:uppercase;letter-spacing:.1em}@keyframes packet-travel{0%{left:0;transform:rotate(0)}100%{left:calc(100% - 18px);transform:rotate(360deg)}}.transmission-readout{position:absolute;z-index:8;left:30px;right:30px;bottom:28px;padding:22px;background:#e7eedd;color:#161f09;border-left:8px solid var(--channel)}.transmission-readout>span{font:900 9px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.14em}.transmission-readout h3{font-family:Georgia,serif;font-size:27px;margin:8px 0}.transmission-readout p{line-height:1.55;margin:0;max-width:75ch}
.online-lesson-sequence{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:85px;background:#e7eedd;color:#161f09}.sequence-sidebar{position:sticky;top:120px;align-self:start}.sequence-feed{counter-reset:feed;border-top:1px solid #161f09}.sequence-feed article{display:grid;grid-template-columns:110px 1fr;gap:25px;padding:28px 0;border-bottom:1px solid #161f09}.sequence-feed time{font:900 10px ui-monospace,monospace;letter-spacing:.14em;color:#74309c}.sequence-feed h3{font-family:Georgia,serif;font-size:31px;font-weight:400;margin:0 0 8px}.sequence-feed p{line-height:1.65;color:#69457d;margin:0}
.online-setup-guide{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr .85fr;gap:70px;background:var(--o-lime);color:#161f09}.setup-console{padding:35px;background:#24102f;color:#e7eedd;border-radius:28px;box-shadow:18px 22px 0 #a9dc61;position:relative}.setup-light{position:absolute;right:25px;top:25px;width:15px;height:15px;border-radius:50%;background:#b9e27f;box-shadow:0 0 0 7px rgba(185, 226, 127,.13)}.setup-console h2{font-size:clamp(43px,6vw,75px);max-width:10ch}.setup-console>p{color:#c3aad1;line-height:1.65;max-width:60ch}.setup-console dl{margin:35px 0 0}.setup-console dl>div{display:grid;grid-template-columns:95px 1fr;gap:15px;padding:14px 0;border-top:1px solid #5f3e72}.setup-console dt{color:#a9dc61;font-weight:800;text-transform:uppercase}.setup-console dd{margin:0;color:#dac8e4;line-height:1.55}.setup-check{border:3px solid #161f09;padding:30px;background:#e7eedd;box-shadow:13px 16px 0 #161f09;transform:rotate(1deg)}.setup-check ol{list-style:none;padding:0;margin:25px 0;border-top:2px solid #161f09}.setup-check li{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:14px 0;border-bottom:2px solid #161f09;line-height:1.5}.setup-check li span{font:900 10px ui-monospace,monospace;color:#74309c}.setup-check>p{font-size:13px;line-height:1.6}
.online-progress{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#24102f;color:#e7eedd;align-items:center}.progress-orbit-copy p{color:#cdb6da;font-size:17px}.progress-satellite{position:relative;min-height:600px;display:grid;place-items:center;perspective:1000px;transform-style:preserve-3d}.sat-core{position:relative;z-index:5;display:grid;place-items:center;width:130px;aspect-ratio:1;border-radius:50%;background:var(--o-cyan);color:#161f09;font-size:27px;font-weight:900;box-shadow:0 0 0 15px rgba(169, 220, 97,.08);transform:translateZ(70px)}.sat-ring{position:absolute;inset:18%;border:1px solid #8859a3;border-radius:50%;transform:rotateX(65deg);animation:sat-turn 12s linear infinite}.sat-ring.two{inset:8%;transform:rotateY(65deg) rotateZ(23deg);animation-direction:reverse;animation-duration:16s}.sat-ring.three{inset:28%;transform:rotateX(70deg) rotateZ(-44deg);animation-duration:9s}.sat-ring b{position:absolute;top:-15px;left:45%;padding:8px;background:#b9e27f;color:#161f09;border-radius:8px;font:900 8px ui-monospace,monospace;letter-spacing:.1em}@keyframes sat-turn{to{rotate:1turn}}
.online-fit-faq{padding:120px max(22px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.78fr 1.22fr;gap:75px;background:#a9dc61;color:#161f09}.online-fit-panel{align-self:start;padding:32px;background:#e7eedd;border:1px solid #161f09;box-shadow:15px 18px 0 #161f09}.online-fit-panel>span{font:900 9px ui-monospace,monospace;letter-spacing:.15em}.online-fit-panel h2{font-size:clamp(40px,5.5vw,68px)}.online-fit-panel p{line-height:1.65}.online-fit-panel .online-cta{margin-top:20px;background:#161f09;color:#fff}.online-faq-list{border-top:2px solid #161f09}.online-faq-list details{padding:20px 0;border-bottom:2px solid #161f09}.online-faq-list summary{cursor:pointer;font-family:Georgia,serif;font-size:20px}.online-faq-list p{line-height:1.65}

/* DECIDE / BRANCHING CONSTELLATION + TRIAL OBSERVATORY */
.decision-constellation{padding:120px max(22px,calc((100vw - 1260px)/2));display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center;background:var(--d-red);color:var(--d-ink)}.decision-constellation h2,.decision-principles h2,.trial-observatory h2,.decide-faq h2{font-size:clamp(50px,8vw,103px);line-height:.8;letter-spacing:-.085em;text-transform:uppercase;margin:15px 0 28px}.constellation-filters{display:flex;flex-wrap:wrap;gap:7px;margin-top:30px}.constellation-filters button{padding:10px 13px;border:2px solid var(--d-ink);background:transparent;color:inherit;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;box-shadow:3px 3px 0 var(--d-ink)}.constellation-filters button[aria-pressed="true"]{background:var(--d-yellow);transform:translate(2px,2px);box-shadow:1px 1px 0 var(--d-ink)}.constellation-answer{margin-top:25px;padding:20px;background:var(--d-bg);border:2px solid var(--d-ink);box-shadow:7px 8px 0 var(--d-ink)}.constellation-answer>span{font:900 9px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.14em}.constellation-answer h3{font-size:24px;line-height:1;text-transform:uppercase;margin:10px 0}.constellation-answer p{font:15px/1.6 Georgia,serif;margin:0}
.constellation-space{position:relative;min-height:760px;perspective:1200px;transform-style:preserve-3d;background:#111;border:3px solid var(--d-ink);box-shadow:22px 27px 0 var(--d-yellow);overflow:hidden}.constellation-space::before{content:'COURSE SIGNAL FIELD';position:absolute;left:20px;top:18px;color:#fff;font:900 9px ui-monospace,monospace;letter-spacing:.16em}.constellation-axis{position:absolute;left:50%;top:50%;width:78%;height:1px;background:rgba(255,255,255,.25);transform-origin:center}.constellation-axis.x{transform:translate(-50%,-50%) rotate(18deg)}.constellation-axis.y{transform:translate(-50%,-50%) rotate(88deg)}.constellation-axis.z{transform:translate(-50%,-50%) rotate(-38deg)}.constellation-core{position:absolute;z-index:4;left:50%;top:48%;translate:-50% -50%;display:grid;place-items:center;width:130px;aspect-ratio:1;border-radius:50%;background:var(--d-yellow);color:var(--d-ink);border:3px solid #fff;text-align:center;font-weight:1000;line-height:.85;box-shadow:0 0 0 13px rgba(175, 222, 108,.13);transform:translateZ(80px)}.course-star{position:absolute;z-index:3;display:grid;place-items:center;gap:3px;width:90px;aspect-ratio:1;border-radius:50%;background:#252525;color:#fff;border:2px solid #777;text-decoration:none;transition:left .65s cubic-bezier(.16,1,.3,1),top .65s cubic-bezier(.16,1,.3,1),transform .5s,opacity .4s,background .3s;transform-style:preserve-3d}.course-star b{font-size:25px}.course-star span{font:900 8px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.08em}.course-star.is-primary{background:var(--d-blue);border-color:#fff;transform:translateZ(95px) scale(1.12);box-shadow:0 12px 0 rgba(170, 87, 218,.35)}.course-star.is-related{background:var(--d-green);color:#111;transform:translateZ(45px)}.course-star.is-quiet{opacity:.38;transform:translateZ(-25px) scale(.8)}.star-piano{left:12%;top:17%}.star-violin{left:43%;top:9%}.star-guitar{right:8%;top:22%}.star-drums{right:12%;top:54%}.star-vocals{right:29%;bottom:7%}.star-choir{left:40%;bottom:4%}.star-dance{left:8%;bottom:13%}.star-arts{left:5%;top:43%}.star-theory{left:25%;top:41%}
.decision-principles{padding:120px max(22px,calc((100vw - 1180px)/2));background:var(--d-bg)}.decision-principles>header{max-width:940px}.principle-route{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:70px;border:3px solid var(--d-ink)}.principle-route::before{content:'';position:absolute;left:50%;top:0;bottom:0;border-left:3px solid var(--d-ink)}.principle-route article{min-height:330px;padding:35px;border-bottom:3px solid var(--d-ink)}.principle-route article:nth-last-child(-n+2){border-bottom:0}.principle-route article:nth-child(2n){padding-top:90px}.principle-route article>span{display:inline-block;background:var(--d-yellow);border:2px solid var(--d-ink);padding:6px 8px;font:900 9px ui-monospace,monospace;letter-spacing:.13em}.principle-route article:nth-child(2)>span{background:var(--d-green)}.principle-route article:nth-child(3)>span{background:var(--d-red);color:#fff}.principle-route article:nth-child(4)>span{background:var(--d-blue);color:#fff}.principle-route h3{font-size:36px;line-height:.92;text-transform:uppercase;letter-spacing:-.05em;margin:30px 0 12px}.principle-route p{font:16px/1.65 Georgia,serif;max-width:48ch}
.trial-observatory{padding:120px max(22px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;background:var(--d-blue);color:#fff}.trial-ticket{align-self:start;padding:30px;background:var(--d-yellow);color:var(--d-ink);border:3px solid var(--d-ink);box-shadow:14px 17px 0 var(--d-ink);transform:rotate(-2deg)}.trial-ticket>span{font:900 9px ui-monospace,monospace;letter-spacing:.14em}.trial-ticket h2{font-size:clamp(44px,6vw,72px)}.trial-ticket p{font:16px/1.6 Georgia,serif}.trial-log{border-top:3px solid #fff}.trial-log>div{display:grid;grid-template-columns:95px 1fr;gap:20px;padding:26px 0;border-bottom:3px solid #fff}.trial-log>div>span{font:900 10px ui-monospace,monospace;letter-spacing:.14em;color:var(--d-yellow)}.trial-log h3{font-size:28px;text-transform:uppercase;margin:0 0 10px}.trial-log ul{margin:0;padding-left:19px}.trial-log li,.trial-log p{font:15px/1.65 Georgia,serif;margin-top:7px}
.decide-faq{padding:120px max(22px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;background:var(--d-yellow);color:var(--d-ink)}.decide-faq-list{border:3px solid var(--d-ink);background:#fff;box-shadow:13px 16px 0 var(--d-red)}.decide-faq details{padding:20px;border-bottom:2px solid var(--d-ink)}.decide-faq details:last-child{border-bottom:0}.decide-faq summary{cursor:pointer;font-size:18px;font-weight:1000;text-transform:uppercase;line-height:1.25}.decide-faq details p{font:15px/1.65 Georgia,serif}

/* PROGRAM EXPANSIONS / TABLET */
@media(max-width:980px){
  .music-galaxy,.music-lesson-cutaway,.jmc-story-theatre,.jmc-growth-map,.jmc-parent-guide,.jmc-faq,.material-cabinet,.arts-home-studio,.arts-outcomes,.arts-faq,.transmission-head,.online-lesson-sequence,.online-setup-guide,.online-progress,.online-fit-faq,.decision-constellation,.trial-observatory,.decide-faq{grid-template-columns:minmax(0,1fr)}
  .music-galaxy{gap:65px}.galaxy-stage{min-height:720px}.score-staff{grid-template-columns:repeat(2,1fr)}.score-movement:nth-child(n){margin-top:0}.music-field-guide{grid-template-columns:1fr}.field-practice,.field-outcomes{padding:90px max(22px,calc((100vw - 700px)/2))}.music-faq{grid-template-columns:1fr}.music-faq>div:first-child,.arts-faq>div:first-child,.sequence-sidebar{position:static}
  .jmc-story-theatre{gap:60px}.storybook-stage{min-height:650px}.jmc-growth-map{grid-template-columns:.7fr 1.3fr;gap:40px}.growth-ruler{min-height:660px}.jmc-faq{gap:45px}
  .material-cabinet{gap:50px}.cabinet-scene{width:min(100%,720px);margin:auto}.arts-home-studio{gap:55px}.studio-blueprint{min-height:590px}.arts-outcomes{gap:50px}.arts-faq{gap:45px}
  .transmission-layout{grid-template-columns:1fr}.transmission-controls{grid-template-columns:repeat(4,1fr)}.transmission-controls button{border:1px solid #553866;border-right:0}.transmission-controls button:last-child{border-right:1px solid #553866}.transmission-space{min-height:680px}.online-progress{gap:30px}
  .decision-constellation{gap:60px}.constellation-space{min-height:720px}.trial-observatory{gap:50px}
}

/* PROGRAM EXPANSIONS / MOBILE */
@media(max-width:700px){
  .music-galaxy,.music-score-journey,.music-lesson-cutaway,.music-faq,.jmc-story-theatre,.jmc-class-rhythm,.jmc-growth-map,.jmc-parent-guide,.jmc-faq,.material-cabinet,.arts-atelier-path,.arts-home-studio,.arts-outcomes,.arts-faq,.transmission-room,.online-lesson-sequence,.online-setup-guide,.online-progress,.online-fit-faq,.decision-constellation,.decision-principles,.trial-observatory,.decide-faq{padding:82px 20px}
  .music-galaxy h2,.music-score-journey h2,.music-lesson-cutaway h2,.music-field-guide h2,.music-faq h2,.jmc-story-theatre h2,.jmc-class-rhythm h2,.jmc-growth-map h2,.jmc-parent-guide h2,.jmc-faq h2,.material-cabinet h2,.arts-atelier-path h2,.arts-home-studio h2,.arts-outcomes h2,.arts-faq h2,.transmission-room h2,.online-lesson-sequence h2,.online-setup-guide h2,.online-progress h2,.online-fit-faq h2,.decision-constellation h2,.decision-principles h2,.trial-observatory h2,.decide-faq h2{font-size:clamp(41px,13vw,62px)}
  .galaxy-stage{min-height:650px;box-shadow:10px 13px 0 var(--red)}.galaxy-stage::after{inset:4%}.galaxy-orbit.orbit-a{width:220px;height:220px;margin:-110px}.galaxy-orbit.orbit-b{width:310px;height:310px;margin:-155px}.galaxy-orbit.orbit-c{width:390px;height:240px;margin:-120px -195px}.galaxy-core{width:142px}.galaxy-core strong{font-size:20px}.galaxy-readout{left:12px;right:12px;bottom:12px;padding:16px}.galaxy-readout h3{font-size:24px}.galaxy-readout p{font-size:13px}.score-staff{grid-template-columns:1fr;padding:15px 0}.score-movement{min-height:0}.score-movement h3{margin-top:55px}.cutaway-dial{min-height:330px}.lesson-frequency-list li{grid-template-columns:48px 1fr}.field-practice,.field-outcomes{padding:80px 20px}.music-faq{gap:45px}
  .storybook-stage{min-height:560px;box-shadow:10px 12px 0 var(--j-ink)}.theatre-depth.back{inset:10% 10% 35%}.scene-tree{height:210px;width:56px}.scene-tree::before{width:115px}.scene-character{font-size:70px}.story-cue{width:58px;height:58px}.story-cue.cue-one{left:15%}.story-cue.cue-two{left:calc(50% - 29px)}.story-cue.cue-three{right:15%}.theatre-caption{left:8%;right:8%;font-size:9px}.class-ribbon li{grid-template-columns:100px 1fr;gap:20px;min-height:145px}.class-ribbon li>span{font-size:16px}.jmc-growth-map{grid-template-columns:1fr}.growth-ruler{min-height:520px;order:2}.growth-ruler>strong{font-size:54px}.growth-signals>div{grid-template-columns:1fr;gap:7px}.jmc-fit-ticket{padding:25px;box-shadow:9px 11px 0 var(--j-ink)}
  .cabinet-scene{min-height:630px;padding:25px 8px 55px}.cabinet-top{height:95px}.cabinet-body{padding:13px;transform:none;box-shadow:12px 16px 0 rgba(156, 60, 212,.75)}.cabinet-drawer{height:86px;padding:14px}.cabinet-drawer.is-open{transform:translateX(-8px) translateZ(45px)}.drawer-label{font-size:13px}.drawer-handle{width:60px}.drawer-object{right:20%}.atelier-scroll article{grid-template-columns:1fr;gap:13px}.atelier-scroll article:nth-child(n){border-left-width:12px;padding-left:16px}.studio-blueprint{min-height:510px;box-shadow:10px 12px 0 #171717}.blueprint-paper{width:130px;height:175px}.outcome-poster{padding:25px;box-shadow:9px 11px 0 var(--a-pink)}.arts-faq-sheet{padding:18px;box-shadow:8px 10px 0 var(--a-blue)}
  .transmission-layout{margin-top:40px}.transmission-controls{grid-template-columns:1fr 1fr}.transmission-controls button:nth-child(n){border:1px solid #553866;margin:-1px 0 0 -1px}.transmission-space{min-height:790px;padding:28px 14px 245px;grid-template-columns:1fr 1fr}.transmission-tunnel{position:absolute;z-index:5;left:30%;right:30%;top:260px;height:100px}.transmission-room-side{min-height:230px;padding:14px}.teacher-console i{height:80px}.transmission-readout{left:14px;right:14px;bottom:14px;padding:16px}.transmission-readout h3{font-size:22px}.transmission-readout p{font-size:13px}.sequence-feed article{grid-template-columns:1fr;gap:10px}.setup-console{padding:24px;box-shadow:10px 12px 0 #a9dc61}.setup-console dl>div{grid-template-columns:1fr;gap:6px}.setup-check{padding:22px;box-shadow:8px 10px 0 #161f09}.progress-satellite{min-height:420px}.sat-ring{inset:19%}.sat-ring.two{inset:8%}.online-fit-panel{padding:23px;box-shadow:9px 11px 0 #161f09}
  .constellation-space{min-height:650px;box-shadow:10px 13px 0 var(--d-yellow)}.course-star{width:69px}.course-star b{font-size:20px}.course-star span{font-size:7px}.constellation-core{width:105px}.star-piano{left:6%}.star-guitar{right:3%}.star-drums{right:5%}.star-dance{left:3%}.star-arts{left:2%}.principle-route{grid-template-columns:1fr}.principle-route::before{display:none}.principle-route article:nth-child(n){min-height:0;padding:28px;border-bottom:3px solid var(--d-ink)}.principle-route article:last-child{border-bottom:0}.trial-ticket{padding:24px;box-shadow:8px 10px 0 var(--d-ink)}.trial-log>div{grid-template-columns:1fr;gap:8px}.decide-faq-list{box-shadow:8px 10px 0 var(--d-red)}
}

@media(prefers-reduced-motion:reduce){.galaxy-orbit,.dial-ring,.packet,.sat-ring{animation:none!important}.course-star,.cabinet-drawer,.storybook-stage,.theatre-curtain{transition:none!important}}

@media(max-width:700px){
  .transmission-space{min-height:960px;display:grid;grid-template-columns:1fr;grid-template-rows:220px 100px 220px;gap:18px;padding:28px 14px 255px;align-content:start}
  .transmission-room-side{min-height:0;width:100%;transform:none}
  .student-side{grid-row:1}.teacher-side{grid-row:3}
  .transmission-tunnel{position:relative;grid-row:2;left:auto;right:auto;top:auto;width:110px;height:82px;justify-self:center;align-self:center;transform:rotate(90deg)}
  .transmission-tunnel em{display:none}
}

/* Decide keeps its spatial depth on narrow screens without letting the route
   labels establish a wider intrinsic grid track. */
@media(max-width:700px){
  body[data-world="decide"] main,
  body[data-world="decide"] main>*,
  .quiz-layout,.quiz-sidebar,.quiz-stage,.quiz-card,.quiz-options,
  .decision-constellation,.constellation-copy,.constellation-space,
  .decision-principles,.principle-route,.course-network,.network-grid,
  .trial-observatory,.trial-log,.decide-faq,.decide-faq-list{min-width:0;max-width:100%}
  .quiz-layout{width:100%}
  .quiz-stage{width:100%;overflow:hidden}
  .route-progress{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;padding-bottom:8px}
  .progress-stop{min-width:0;overflow-wrap:anywhere;font-size:7px;letter-spacing:.06em}
  .quiz-options{width:100%}
  .quiz-option{width:100%;min-width:0;overflow-wrap:anywhere}
  body[data-world="decide"] .world-section-label{max-width:100%;flex-wrap:wrap;overflow-wrap:anywhere}
  body[data-world="decide"] main h2,
  body[data-world="decide"] main h3{max-width:100%;overflow-wrap:anywhere}
  .constellation-filters{max-width:100%}
  .constellation-filters button{min-width:0;white-space:normal}
  .constellation-space .star-piano{left:10%}
  .constellation-space .star-guitar{right:8%}
  .constellation-space .star-drums{right:8%}
  .constellation-space .star-dance{left:8%}
  .constellation-space .star-arts{left:8%}
}

/* keyword sub-line under world titles (music) */
body[data-world="music"] .world-title-sub{display:block;margin-top:20px;max-width:30ch;font-family:Georgia,serif;font-size:clamp(15px,1.5vw,20px);font-weight:400;line-height:1.4;letter-spacing:0;text-transform:none;color:#d09b9d}
/* Global reach bridge: compact regional SEO coverage without a city directory. */
.global-reach{padding:clamp(64px,8vw,118px) var(--gutter,clamp(18px,4vw,54px));background:#f4f0e5;color:#151510;border-top:2px solid #151510}.global-reach-head,.global-reach-grid,.global-reach-note{max-width:1180px;margin-inline:auto}.global-reach-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,6vw,88px);align-items:end;margin-bottom:38px}.global-reach h2{margin:0;font-family:'Instrument Serif',Georgia,serif;font-size:clamp(44px,6.4vw,86px);font-weight:400;line-height:.9;letter-spacing:-.04em}.global-reach h2 em{color:#c1272d;font-style:italic}.global-reach .world-section-label,.global-reach article>span{font-family:'DM Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}.global-reach .world-section-label{margin-bottom:16px;color:#662d91}.global-reach .world-copy{max-width:62ch;margin:0;font-size:17px;line-height:1.65}.global-reach-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.global-reach article{display:flex;flex-direction:column;min-height:260px;padding:clamp(22px,3vw,32px);background:#fffaf0;border:2px solid #151510;border-radius:18px;box-shadow:7px 7px 0 #8cc63f}.global-reach article:nth-child(2n){box-shadow:7px 7px 0 #c1272d}.global-reach article>span{color:#662d91}.global-reach article h3{margin:22px 0 10px;font-family:'Instrument Serif',Georgia,serif;font-size:clamp(26px,3vw,36px);font-weight:400;line-height:1;letter-spacing:-.02em}.global-reach article p{margin:0 0 22px;font-size:15px;line-height:1.55}.global-reach article a{margin-top:auto;color:#662d91;font-weight:700;text-underline-offset:4px}.global-reach-note{margin-top:30px;padding:18px 20px;border-left:4px solid #c1272d;background:rgba(255,250,240,.72);font-size:15px;line-height:1.55}.global-reach-note strong{color:#c1272d}@media(max-width:720px){.global-reach-head,.global-reach-grid{grid-template-columns:1fr}.global-reach-grid article{min-height:0}}

/* Keep the decorative music cutaway inside very narrow viewports. */
@media(max-width:600px){
  .music-lesson-cutaway{min-width:0;overflow:hidden}
  .music-lesson-cutaway>*{min-width:0}
  .music-lesson-cutaway .cutaway-dial{width:min(100%,330px);max-width:100%;min-width:0;justify-self:center}
}
