:root{--bg:#0B1017;--surface:#141B26;--surface-2:#10161F;--accent:#10B981;--accent-soft:#133B38;--ink:#FFFFFF;--ink-muted:#A7A9AB;--line:#32363C;--on-accent:#0B0B0C;--font-body:Inter,system-ui,sans-serif;--font-label:"IBM Plex Mono",monospace;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--content-width:1440px;--page-gutter:clamp(16px,3vw,48px);--reading-width:68ch;--font-heading:"Instrument Sans",var(--font-body);--reader-bg:#F7F5F0;--reader-surface:#FFFFFF;--reader-ink:#14181E;--reader-body:#22262C;--reader-muted:#5B6169;--reader-line:#DCD8D0;--reader-accent:#0B7A55;--reader-soft:#E8F2EC;--type-h1:clamp(34px,4.5vw,56px);--type-h2:clamp(26px,3vw,36px);--type-h3:24px;--type-body:18px;--type-small:15px;--type-label:13px;--leading-body:1.7;--space-6:56px;--reader-width:1180px;--reader-hero-image:240px;--touch-target:44px}:root[data-theme=dark]{--reader-bg:var(--bg);--reader-surface:var(--surface);--reader-ink:#F5F6F7;--reader-body:#D4D7DB;--reader-muted:#A7A9AB;--reader-line:var(--line);--reader-accent:#6EE7B7;--reader-soft:var(--accent-soft)}:root[data-theme=light]{color-scheme:light;--bg:#F7F5F0;--surface:#FFFFFF;--surface-2:#EEECE6;--ink:#14181E;--ink-muted:#565D66;--line:#DCD8D0;--accent:#087A53;--accent-soft:#E1EFE7;--on-accent:#FFFFFF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono.woff2) format("woff2")}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-variable.woff2) format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-variable.woff2) format("woff2")}*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:dark}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}a,button,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}::selection{background:var(--accent-soft);color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(36px,4.8vw,56px);font-weight:650}h2{font-size:clamp(28px,3vw,36px)}h2,h3{font-weight:600}h3{font-size:24px}p{color:var(--ink-muted)}svg{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:16px;z-index:20;padding:12px 24px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius-md)}.skip-link:focus{top:8px}.site-header{border-bottom:1px solid var(--line);background:var(--surface-2)}.nav-shell{max-width:var(--content-width);min-height:72px;padding:12px var(--page-gutter);margin:auto;display:flex;gap:32px}.brand,.nav-shell{align-items:center}.brand{display:inline-flex;gap:12px;font-size:20px;font-weight:750;letter-spacing:-.04em;white-space:nowrap}.brand-light{font-weight:400;color:var(--ink-muted)}.brand-mark{width:36px;height:36px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius-md);display:flex;justify-content:center;align-items:center;font-size:29px;line-height:1}.brand-mark span{font-size:17px;align-self:flex-start;padding-top:5px}.nav-shell nav{display:flex;gap:32px}.nav-shell nav a,.parent-link{color:var(--ink-muted);display:inline-flex;align-items:center;min-height:44px}.nav-shell a:hover{color:var(--ink)}.parent-link{margin-left:auto;gap:12px;font-size:14px}.page-shell{width:100%;max-width:var(--content-width);padding:0 var(--page-gutter) 64px;margin:auto}.welcome{padding:56px 0 40px;display:flex;justify-content:space-between;align-items:center;gap:24px}.eyebrow{font-family:var(--font-label);font-size:11px;font-weight:500;line-height:1.6;letter-spacing:.12em;color:var(--ink-muted)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px;vertical-align:middle}.welcome h1{margin:16px 0}.login-story h1 span,.welcome h1 span,.welcome-doodle{color:var(--accent)}.welcome-doodle{font-size:72px;line-height:1;transform:rotate(-12deg);padding-right:32px;text-align:center}.welcome-doodle span{display:block;font-family:var(--font-label);font-size:11px;margin-top:8px;color:var(--ink-muted)}.featured{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid #2c4943;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(115deg,var(--surface) 25%,#102925 100%)}.feature-copy{padding:40px}.feature-copy .eyebrow{color:#8ED6BE}.label-divider{color:#507E70;padding:0 8px}.feature-copy h2{font-size:clamp(32px,4vw,44px);margin:24px 0 16px}.feature-copy>p:not(.eyebrow){max-width:360px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:12px 24px;background:var(--accent);color:var(--on-accent);border:1px solid transparent;border-radius:var(--radius-md);font-weight:650;line-height:1.4;transition:background .15s,transform .15s}.button:hover:not(:disabled){background:#36D6A2;transform:translateY(-2px)}.feature-copy .button,.feature-tags{margin-top:24px}.feature-tags{display:flex;flex-wrap:wrap;gap:8px 16px;font-family:var(--font-label);font-size:10px;color:#A6C1B8}.feature-tags span:before{content:"#";color:#678D80;margin-right:3px}.catapult-art{position:relative;display:flex;align-items:center;min-width:0}.catapult-art svg{width:100%}.art-note{position:absolute;font-family:var(--font-label);color:#94BDAB;font-size:11px}.note-top{top:32px;left:20%;transform:rotate(-7deg)}.note-bottom{bottom:32px;right:32px;font-size:10px;letter-spacing:.1em}.library,.subjects-section{padding-top:56px;scroll-margin-top:24px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.section-heading .eyebrow{margin-bottom:8px}.section-meta{color:var(--ink-muted);font-size:13px}.subject-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.subject-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .2s,transform .2s}.subject-card:hover{border-color:var(--accent);transform:translateY(-4px)}.subject-illustration{height:144px;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;background:var(--art-bg);border-bottom:1px solid var(--line)}.subject-money{--art-bg:#29271F}.subject-history{--art-bg:#302421}.subject-illustration svg{width:165px;height:108px;transform:rotate(-6deg)}.subject-illustration:before{content:"";position:absolute;width:210px;height:210px;border:1px solid;border-radius:50%;opacity:.09}.subject-illustration .subject-number{position:absolute;left:16px;top:16px;font:10px var(--font-label);opacity:.7}.art-spark{position:absolute;right:24px;bottom:24px;font-size:23px;opacity:.6}.subject-art{--art-bg:#262238}.subject-science{--art-bg:#17312C}.subject-math{--art-bg:#1B2A3D}.subject-philosophy{--art-bg:#302331}.subject-copy{padding:24px}.subject-copy h3{display:flex;justify-content:space-between;align-items:center}.subject-copy h3 span{color:var(--ink-muted);font-size:20px}.subject-copy p{margin-top:8px;font-size:16px}.subject-availability{display:block;margin-top:24px;font:11px var(--font-label);color:var(--ink-muted)}.search-field{display:flex;align-items:center;gap:16px;padding:0 16px;min-height:56px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink-muted)}.search-field:focus-within{outline:2px solid var(--accent);outline-offset:3px}.search-field input{min-width:0;width:100%;background:transparent;border:0;color:var(--ink);padding:16px 0;outline:none}.search-field input::placeholder{color:var(--ink-muted);opacity:1}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.filter-row button{border:1px solid var(--line);border-radius:var(--radius-md);background:transparent;color:var(--ink-muted);padding:8px 16px;min-height:44px;font-size:13px}.filter-row button[aria-pressed=true]{background:var(--accent-soft);color:#8BE4C4;border-color:#397867}.filter-row button:hover{color:var(--ink);border-color:var(--ink-muted)}.result-count{font:11px var(--font-label);margin:24px 0 16px}.project-row{display:flex;align-items:center;gap:24px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.project-row:hover{border-color:var(--accent)}.project-row h3{margin:8px 0}.project-icon{display:grid;place-items:center;width:72px;height:72px;flex-shrink:0;background:var(--accent-soft);color:#79DCC1;border-radius:var(--radius-md);font-size:36px}.row-arrow{margin-left:auto;color:var(--accent);font-size:24px}.empty-state{padding:32px;background:var(--surface-2);border:1px dashed var(--line);border-radius:var(--radius-lg)}.empty-state p{margin:16px 0;max-width:65ch}.text-button{display:inline-flex;align-items:center;gap:16px;min-height:44px;color:#7DE1BD;background:none;border:0;padding:0;font-weight:550}.text-button:hover{color:var(--ink)}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:24px 0;font-size:13px;color:var(--ink-muted)}.breadcrumbs a{min-height:44px;display:inline-flex;align-items:center}.breadcrumbs a:hover{color:var(--accent)}.subject-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:40px;background:var(--art-bg);border:1px solid var(--line);border-radius:var(--radius-lg)}.subject-intro h1{margin:16px 0}.subject-intro svg{width:220px;flex-shrink:0}.question-section,.subject-projects{margin-top:48px}.question-section h2{margin:16px 0 24px;max-width:800px}.question-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.question-card{border-top:1px solid var(--line);padding:24px 0}.question-card p{color:var(--ink);margin-top:16px}.subject-project{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.subject-project h3{margin:16px 0}.subject-project .button{flex-shrink:0}.back-link{margin-top:32px}.login-shell{max-width:1184px;margin:auto;padding:80px 32px;display:grid;grid-template-columns:1fr 1fr;align-items:center;grid-gap:80px;gap:80px;min-height:75vh}.login-story h1{margin:24px 0}.login-card{background:var(--surface);padding:40px;border:1px solid var(--line);border-radius:var(--radius-lg)}.login-symbol{display:grid;place-items:center;width:48px;height:48px;background:var(--accent-soft);color:var(--accent);font-size:28px;border-radius:var(--radius-md);margin-bottom:32px}.login-card h2{margin:16px 0}.signin-state{display:flex;align-items:baseline;gap:8px;padding:24px 0;margin:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.signin-state .status-dot{flex-shrink:0;background:#F3CA79}.signin-state p{margin-top:8px}.login-card .button{width:100%}.button:disabled{background:var(--surface-2);color:var(--ink-muted);border-color:var(--line)}.login-orbit{position:relative;width:260px;height:180px;margin-top:40px;display:grid;place-items:center}.login-orbit>span{color:var(--accent);font-size:120px;line-height:1}.login-orbit i{position:absolute;inset:20px 0;border:1px solid #397867;border-radius:50%;transform:rotate(-24deg)}.login-orbit b,.login-orbit em{position:absolute;font:32px var(--font-label);color:#F3CA79;background:var(--bg)}.login-orbit b{top:4px;right:24px;transform:rotate(16deg)}.login-orbit em{bottom:8px;left:16px;color:#C3A0F5}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px;margin:32px 0}.card{padding:32px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.card h2{font-size:24px;margin-bottom:16px}.card a{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;color:#7DE1BD}.page-shell>.eyebrow:first-child{padding-top:48px;margin-bottom:16px}.page-shell>h1+p{margin-top:16px;max-width:65ch}@media (min-width:1600px){.page-shell{padding-top:24px}}@media (max-width:900px){.nav-shell{gap:32px}.subject-grid{gap:16px}.subject-copy{padding:16px}.section-meta{max-width:180px;text-align:right}.feature-copy{padding:32px}.feature-tags{gap:8px}.login-shell{gap:32px}.login-card{padding:24px}.subject-project{align-items:flex-start;flex-direction:column}}@media (max-width:640px){.nav-shell{padding:16px 20px;gap:8px 24px;flex-wrap:wrap}.brand{margin-right:auto}.nav-shell nav{order:3;width:100%;gap:24px}.parent-link{font-size:12px;gap:4px}.page-shell{padding:0 20px 48px}.welcome{padding:32px 0}.welcome-doodle{display:none}.featured{grid-template-columns:1fr}.feature-copy{padding:24px}.catapult-art{height:240px}.catapult-art svg{height:100%}.note-top{top:8px}.note-bottom{bottom:12px;right:20px}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.section-meta{max-width:none;text-align:left}.question-grid,.subject-grid,.template-grid{grid-template-columns:1fr}.subject-illustration{height:152px}.subject-copy{padding:24px}.library,.subjects-section{padding-top:40px}.project-row{padding:20px;gap:16px;align-items:flex-start}.project-icon{width:44px;height:44px;font-size:24px}.project-row p{font-size:16px}.row-arrow{display:none}.empty-state,.subject-intro{padding:24px}.subject-intro svg{width:104px}.subject-intro h1{font-size:36px}.question-grid{gap:0}.subject-project{padding:24px}.login-shell{grid-template-columns:1fr;padding:40px 20px;gap:32px}.login-orbit,.login-story h1 br{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}}img,video{max-width:100%}.lesson-thumbnail{aspect-ratio:1/1;background:#191919;overflow:hidden;border-bottom:1px solid var(--line)}.lesson-thumbnail img{display:block;width:100%;height:100%;object-fit:contain}.collection-page .breadcrumbs{padding:12px 0;gap:10px}.collection-heading{padding:8px 0 28px}.collection-heading h1{font-size:clamp(28px,3vw,36px);margin:0 0 8px}.collection-page .section-heading{margin-bottom:16px;flex-direction:row;align-items:center}.collection-page .section-heading h2{font-size:20px;letter-spacing:-.02em}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));grid-gap:20px;gap:20px}.project-grid>.lesson-card:only-child{max-width:340px;width:100%}.lesson-card{min-width:0;display:block}.lesson-card .subject-copy{padding:18px}.lesson-card .subject-copy h3{font-size:21px;gap:12px}.lesson-card .subject-copy p{font-size:15px;line-height:1.5;overflow-wrap:anywhere}@media(max-width:600px){.project-grid{grid-template-columns:1fr}.collection-heading{padding-bottom:24px}}.site-header{background:#000;--ink:#FFFFFF;--ink-muted:#A7A9AB;--line:#32363C;--surface:#141B26;color:#FFFFFF}.card a,.project-icon,.text-button{color:var(--accent)}[data-theme=light] .featured{background:var(--surface);border-color:var(--line)}.theme-toggle{min-width:60px;min-height:var(--touch-target);padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:transparent;color:#fff;font-size:14px}.featured{background:#141414;border-color:#303030}.home-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);grid-gap:32px;gap:32px;align-items:center;padding:32px 0 24px}.home-top>*{min-width:0}.learning-home .home-top .welcome{padding:0}.learning-home .welcome h1{font-size:clamp(32px,4vw,44px);margin:8px 0}.home-top .home-project{margin-top:0}.home-project>.eyebrow{margin-bottom:8px}.home-project .project-row{padding:20px}.home-project h2{font-size:24px}.home-project p{font-size:14px;margin-top:6px}.home-top .project-row{gap:16px;padding:16px}.home-project .project-row+.project-row{margin-top:12px}.home-top .project-row>div{min-width:0;overflow-wrap:anywhere}.home-top .project-icon{width:40px;height:40px;font-size:24px;flex-shrink:0}.club-artwork{display:block;width:64px;height:64px;object-fit:contain;flex-shrink:0;border-radius:var(--radius-md)}@media(max-width:640px){.club-artwork{width:48px;height:48px}}@media(max-width:900px){.home-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}}@media(max-width:600px){.home-top{grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:0}}.learning-home .subjects-section{padding-top:32px}.learning-home .subject-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.learning-home .subject-illustration{height:auto;aspect-ratio:1/1}.learning-home .subject-illustration svg{height:60%;width:70%}.learning-home .subject-custom-icon{background:#000}.learning-home .subject-custom-icon:after,.learning-home .subject-custom-icon:before{display:none}.learning-home .subject-custom-icon img{display:block;width:100%;height:100%;object-fit:contain}.learning-home .subject-copy{padding:16px}.learning-home .subject-copy h3{font-size:19px}.learning-home .subject-copy p{font-size:13px;line-height:1.5}@media(max-width:1100px){.learning-home .subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.learning-home .subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-project .project-icon{display:none}.home-project .project-row{gap:12px}.learning-home .subject-copy{padding:12px}.learning-home .subject-copy h3{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.subject-card{transition:none}.subject-card:hover{transform:none}}.home-shortcuts{display:flex;flex-wrap:wrap;gap:24px;margin-top:16px;color:var(--accent);font-size:14px}.home-shortcuts a{min-height:44px;display:inline-flex;align-items:center}.subject-english{--art-bg:#222b40}.subject-arts{--art-bg:#262238}.subject-technology{--art-bg:#17312c}.subject-life{--art-bg:#302421}.subject-languages{--art-bg:#29271f}.subject-topics{margin-top:32px}.subject-topics ul{display:flex;flex-wrap:wrap;gap:12px;padding:0;list-style:none}.subject-topics li{padding:8px 16px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.page-shell>*{min-width:0}.nav-shell nav{gap:24px}.nav-shell .brand{margin-right:auto}.project-context{max-width:var(--content-width);margin:auto;padding:12px var(--page-gutter);display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px;color:var(--ink-muted)}.project-context a{display:inline-flex;align-items:center;min-height:44px}.project-context a:last-child{margin-left:auto;color:var(--accent)}.guide-frame{display:block;width:100%;border:0;scroll-margin-top:12px}.video-section{padding-top:40px;padding-bottom:48px}.catapult-intro{padding-top:8px;padding-bottom:12px}.catapult-intro video{display:block;width:100%;height:auto;max-height:56vh;aspect-ratio:16/9;background:#0B1017;border-radius:var(--radius-lg)}.intro-actions{display:flex;justify-content:space-between;gap:16px;align-items:center}.intro-actions a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);font-size:14px}.club-access{max-width:420px;margin:40px auto}.club-access form{display:grid;grid-gap:12px;gap:12px}.club-access button,.club-access input{font:inherit;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink)}.club-access button{background:var(--accent);color:var(--on-accent);font-weight:600}.club-access p{margin:16px 0;color:var(--ink-muted)}.video-section .eyebrow{margin-bottom:12px}.reading{max-width:var(--reading-width)}.mobile-menu{display:none}.nav-actions{display:flex;align-items:center;gap:20px}.nav-actions button{background:transparent;border:0;color:var(--ink-muted);min-height:44px;font-size:14px}@media(min-width:640px) and (max-width:1023px){.question-grid,.subject-grid,.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-copy{padding:24px}}@media(max-width:767px){.nav-shell{min-height:64px;padding:8px var(--page-gutter);gap:16px;flex-wrap:nowrap}.nav-shell>.nav-actions,.nav-shell>nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:8px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:52px;z-index:40;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px;min-width:200px;display:flex;flex-direction:column;gap:0;box-shadow:0 16px 40px #0006}.mobile-menu nav a,.mobile-menu nav button{padding:10px 12px;min-height:44px;color:var(--ink);text-align:left}.mobile-menu form button{background:none;border:0;width:100%}.welcome{padding:32px 0;gap:16px}.welcome-doodle{display:none}.featured{grid-template-columns:1fr}.catapult-art{height:240px;justify-content:center}.catapult-art svg{height:100%;width:auto;max-width:100%}.page-shell{padding-inline:var(--page-gutter)}.section-heading{align-items:flex-start;flex-direction:column;gap:8px}.section-meta{text-align:left;max-width:none}.subject-intro{padding:24px;gap:16px}.subject-intro svg{width:96px}}@media(max-width:479px){.question-grid,.subject-grid,.template-grid{grid-template-columns:1fr}.subject-intro{align-items:flex-start}.subject-intro svg{width:64px}.project-context{gap:8px;font-size:13px}.project-context a:last-child{margin-left:auto;font-size:12px}.card{padding:20px}.feature-copy h2{font-size:32px}.brand{font-size:18px;gap:8px}}