@import url('/assets/fonts/fonts.css');
:root{--font-display:'Satoshi',Arial,sans-serif;--font-text:'Satoshi',Arial,sans-serif;--bg:#f7f7f5;--surface:#eaeae7;--ink:#171717;--muted:#555552;--accent:#e32a23;--accent-ink:#fff;--field:#171717;--field-ink:#f7f7f5;--gutter:32px;--small:15px;--body:18px;--lead:24px;--head:64px}
[data-theme=dark]{--bg:#121212;--surface:#252525;--ink:#f2f2ee;--muted:#b9b9b5;--accent:#ff5b51;--accent-ink:#151515;--field:#eaeae7;--field-ink:#171717}
body{font-family:var(--font-text);font-size:18px;line-height:1.6;font-variant-numeric:tabular-nums}button,input,select,textarea{font-family:var(--font-text)}h1,h2,h3{font-family:var(--font-text);font-weight:600;letter-spacing:-.035em}h1{font-family:var(--font-display);font-weight:400;line-height:.98;letter-spacing:-.035em}button,.button,input,select,textarea,.study-panel,.lab,.worked,.topic-complete,.exam-status,.math-actions a,.math-actions button,.math-sidebar nav a{border-radius:0}.button{background:var(--ink);color:var(--bg);font-size:16px}.site-nav{padding:20px var(--gutter);gap:24px;background:var(--bg);border:0}.brand{font-family:var(--font-display);text-transform:uppercase;font-weight:400;font-size:28px;line-height:1;letter-spacing:-.035em}.nav-links{gap:28px;font-size:15px}.nav-links a{min-height:44px;display:inline-flex;align-items:center}.nav-links .theme-toggle{font-size:14px;padding:9px 12px}.site-footer{padding:40px var(--gutter) 26px;margin-top:100px;min-height:0}.footer-wordmark{font-family:var(--font-display);font-size:clamp(74px,18vw,280px);font-weight:400;letter-spacing:-.04em;line-height:.92;margin:60px 0 30px;text-transform:uppercase;max-width:none;white-space:nowrap}.footer-top p,.footer-top a,.footer-note{font-size:15px}.footer-top{grid-template-columns:1.5fr 1fr 1fr}.footer-note{font-size:13px}.atlas-hero{padding:24px var(--gutter) 60px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px 24px}.atlas-hero>h1{font-size:clamp(100px,18.2vw,290px);text-transform:uppercase;grid-column:1/-1;line-height:.9;margin:0;max-width:none}.atlas-intro{grid-column:1/5;align-self:end;padding-bottom:8px}.atlas-intro>p{font-size:24px;line-height:1.45;max-width:26ch;margin:0 0 30px}.atlas-intro .text-link{font-size:15px;display:block;margin-top:20px}.atlas-live{grid-column:5/-1;background:var(--surface);padding:24px;min-width:0}.live-heading{display:flex;justify-content:space-between;gap:18px;align-items:baseline}.atlas-live h2{font-size:24px;line-height:1.15}.live-heading a{font-size:14px}.atlas-live p{font-size:15px;margin:12px 0;max-width:64ch}.atlas-live svg{display:block;width:100%;height:auto;max-height:250px;margin:10px 0 16px}.atlas-live .axis{fill:none;stroke:var(--muted);stroke-width:1}.atlas-live svg text{font:14px var(--font-text);fill:var(--ink)}.atlas-live .curve{stroke:var(--accent);stroke-width:3;fill:none}.atlas-live .tangent{stroke:var(--muted);stroke-width:2;stroke-dasharray:7 4;fill:none}.atlas-live .secant{stroke:var(--ink);stroke-width:1.5;fill:none}.atlas-live circle{fill:var(--accent)}.atlas-live label{font-size:15px;display:block}.atlas-live output{float:right}.atlas-live input{width:100%;display:block}.live-readout{font-variant-numeric:tabular-nums}.atlas-courses,.atlas-sheets,.atlas-method{padding:90px var(--gutter)}.section-opening{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;margin-bottom:44px}.section-opening h2{font:400 clamp(42px,6vw,84px)/.98 var(--font-display);letter-spacing:-.035em;max-width:13ch}.section-opening p{font-size:22px;line-height:1.45;max-width:40ch}.section-opening a{font-size:16px;display:inline-block;margin-top:22px}.atlas-courses{background:var(--field);color:var(--field-ink)}.atlas-course{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:start;padding:36px 0}.atlas-course+.atlas-course{padding-top:50px}.atlas-course .course-title{font:400 clamp(48px,7vw,104px)/1 var(--font-display);letter-spacing:-.035em;text-decoration:none}.atlas-course p{font-size:19px;max-width:43ch;margin:0 0 18px}.atlas-course .course-facts{font-size:15px}.atlas-course>div>a{font-size:16px}.atlas-sheets{padding-bottom:80px}.sheet-strip{display:grid;grid-template-columns:1.15fr .85fr .85fr 1.15fr;gap:22px;align-items:start}.sheet-strip figure{min-width:0;overflow:hidden}.sheet-strip a{display:block;background:#fff}.sheet-strip img{aspect-ratio:210/297;object-fit:cover;object-position:top}.sheet-strip figcaption{font-size:14px;line-height:1.4;margin-top:14px}.atlas-method{background:var(--surface)}.method-sequence{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;margin:48px 0}.method-sequence h3{font-size:26px;margin-bottom:16px}.method-sequence p{font-size:18px;max-width:35ch}.atlas-home .site-footer{margin-top:0}.portal-page{padding:46px var(--gutter) 60px;max-width:1600px;margin:auto}.portal-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:48px}.portal-heading h1{font-size:clamp(52px,7vw,100px);max-width:17ch}.portal-heading>p{font-size:21px;max-width:40ch}.resource-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:22px;background:var(--surface);padding:24px;margin:30px 0}.resource-filters label{font-size:14px;display:grid;gap:8px}.resource-filters input,.resource-filters select{min-height:50px;font-size:16px;padding:12px;border:0;background:var(--bg);color:var(--ink);width:100%;min-width:0}.resource-count{font-size:14px;color:var(--muted);margin:22px 0}.resource-row{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--surface)}.resource-meta{font-size:13px;color:var(--muted);margin-bottom:10px}.resource-row h2{font-size:24px;line-height:1.25;margin-bottom:12px;overflow-wrap:anywhere}.resource-row h2 a{text-decoration:none}.resource-description{font-size:16px;max-width:85ch}.resource-open{font-size:15px;min-height:44px;display:inline-flex;align-items:center;padding:0 16px}.resource-row .katex-display{max-width:100%;overflow:auto}.resource-empty{padding:40px 0}.resource-empty h2{font-size:28px;margin-bottom:18px}#resource-more{margin-top:32px}.subject-filter{display:flex;gap:30px;font-size:17px;margin-bottom:60px}.formula-set{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.5fr);gap:48px;align-items:start;padding:48px 0 72px}.formula-set h2{font:400 clamp(34px,4vw,58px)/1.05 var(--font-display);max-width:15ch;margin-bottom:24px}.formula-set-copy>p{font-size:18px;max-width:42ch}.formula-set-copy ul{padding-left:20px;margin:24px 0;font-size:16px}.formula-set-copy li{margin:10px 0}.formula-set-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;background:var(--surface);padding:22px}.formula-set-images a{background:#fff}.formula-set-images a:nth-child(3){grid-column:1/-1;width:calc(50% - 9px)}.formula-set-images img{width:100%;height:auto}.formula-links{gap:20px;font-size:15px}.formula-view .formula-title h1{font-family:var(--font-display)}.formula-view h2{font-family:var(--font-text)}
/* Course reading uses the text face; stencil is reserved for the course identity. */
.course-heading h1{font-family:var(--font-display);font-size:clamp(48px,6vw,80px)}#content h2,#content h3,#math-content h2,#math-content h3{font-family:var(--font-text);letter-spacing:-.025em}#content h2{font-size:32px}#content section{padding:28px}#content p,.math-app{font-family:var(--font-text);font-size:18px;line-height:1.7}.course-heading p{font-size:19px}.math-shell{grid-template-columns:250px minmax(0,1fr)}.math-sidebar{padding-left:24px}.math-sidebar nav a{font-size:14px;padding:8px 9px}.course-name{font:600 18px/1.4 var(--font-text);gap:0}.course-name>span{display:none}.course-name small{font-size:13px}.math-sidebar nav .nav-group{font-size:13px}.math-top{border:0}#math-content{padding-top:34px;max-width:1240px}#math-content h1{font-family:var(--font-display);font-weight:400;font-size:clamp(32px,4vw,54px);max-width:28ch;line-height:1.05}#math-content .intro{font:400 21px/1.65 var(--font-text);max-width:66ch}#math-content h2{font-size:25px;line-height:1.3}#math-content h3{font-size:21px;line-height:1.35}.math-actions a,.math-actions button{font-size:15px}.lab svg text,#fig text,.live-svg text{font-family:var(--font-text)}.lab h3{font-family:var(--font-text)}.lab{padding:24px}.math-task>p{font-size:19px}.math-task details p{font-size:18px}.math-task summary{font-size:16px}.topic-complete{background:var(--surface)}.math-note h3{margin:0}.lesson-list{margin-top:24px}.lesson-list li{padding:18px 0}.lesson-list a{font-size:18px}.course-route-groups{margin-top:40px}.course-route-groups section{margin-top:32px}.course-route-groups section h2{font-size:20px!important}.english-note{margin:18px 0;font-size:16px;background:var(--surface);padding:16px 20px}.english-note summary{font-size:14px;min-height:40px}.english-note p{font-size:16px;line-height:1.6}.lesson-sources{margin:36px 0;padding:22px;background:var(--surface)}.lesson-sources h2{font-size:20px!important;margin-top:0!important}.lesson-sources li{font-size:15px;margin:12px 0}.lesson-sources ul{padding-left:20px}.lab-legend{font-size:15px!important}.lab .band-label{font-size:14px}.formula-preview{gap:18px}.math-footer{font-family:var(--font-text)}
@media(prefers-reduced-motion:no-preference){.atlas-hero>h1{animation:atlas-title .8s var(--ease) both}@keyframes atlas-title{from{transform:translateY(30px);opacity:.25}to{transform:translateY(0);opacity:1}}.sheet-strip figure:nth-child(2) img{animation:paper-drift 8s ease-in-out infinite alternate}@keyframes paper-drift{from{transform:translateY(0)}to{transform:translateY(-10px)}}.atlas-live{animation:atlas-enter 1s var(--ease) both}@keyframes atlas-enter{from{opacity:.3;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}}
@media(max-width:1100px){.math-shell{display:block}.site-nav{flex-wrap:wrap}.nav-links{gap:20px}.atlas-hero{gap:28px 20px}.atlas-intro>p{font-size:20px}.atlas-live{padding:20px}.live-heading{display:block}.live-heading a{display:inline-block;margin-top:10px}.atlas-course{grid-template-columns:1.1fr 1fr;gap:28px}.atlas-course .course-title{font-size:8vw}.formula-set{grid-template-columns:.85fr 1.15fr;gap:30px}.formula-set-images{padding:14px;gap:12px}.formula-set-images a:nth-child(3){width:calc(50% - 6px)}.math-sidebar{padding:18px 24px}.course-name{margin:0}.course-name small{display:none}}
@media(max-width:750px){:root{--gutter:20px}.site-nav{padding:16px var(--gutter);gap:16px}.nav-links{width:100%;justify-content:space-between;gap:12px;font-size:14px}.brand{font-size:26px}.nav-links .theme-toggle{font-size:13px;padding:8px;min-height:44px}.atlas-hero{padding-top:30px;padding-bottom:50px;display:block}.atlas-hero>h1{font-size:18vw;letter-spacing:-.045em;margin:0 0 34px}.atlas-intro{padding:0;margin-bottom:32px}.atlas-intro>p{font-size:21px;max-width:39ch;margin-bottom:24px}.atlas-intro .text-link{display:inline-block;margin:0 0 0 18px}.atlas-live{padding:20px}.atlas-live svg{margin:14px 0}.live-heading h2{font-size:23px}.live-heading{display:flex;align-items:start}.live-heading a{margin:0;max-width:13ch}.atlas-courses,.atlas-sheets,.atlas-method{padding:56px var(--gutter)}.section-opening{display:block;margin-bottom:32px}.section-opening h2{font-size:44px;margin-bottom:24px;max-width:17ch}.section-opening p{font-size:20px;max-width:40ch}.atlas-course{display:block;padding:26px 0}.atlas-course .course-title{font-size:12.6vw;display:block;margin-bottom:22px}.atlas-course p{font-size:18px}.sheet-strip{grid-template-columns:1.15fr .85fr;gap:28px 14px}.sheet-strip figure:nth-child(3){grid-column:2;grid-row:2}.sheet-strip figure:nth-child(4){grid-column:1;grid-row:2}.sheet-strip figcaption{font-size:13px}.method-sequence{display:block;margin:32px 0}.method-sequence article{margin:32px 0}.method-sequence h3{font-size:24px;margin-bottom:12px}.method-sequence p{font-size:17px;max-width:45ch}.portal-page{padding:32px var(--gutter) 40px}.portal-heading{display:block;margin-bottom:32px}.portal-heading h1{font-size:15vw;margin-bottom:26px;max-width:none}.portal-heading p{font-size:20px}.resource-filters{grid-template-columns:1fr 1fr;gap:16px;padding:18px}.resource-search{grid-column:1/-1}.resource-filters select{font-size:14px}.resource-filters input{font-size:15px}.resource-row{gap:12px;padding:24px 0}.resource-row h2{font-size:21px}.resource-description{font-size:16px}.resource-open{font-size:14px;padding:0}.resource-meta{font-size:13px}.subject-filter{margin-bottom:24px}.formula-set{display:block;padding:30px 0 52px}.formula-set h2{font-size:40px;max-width:15ch}.formula-set-copy{margin-bottom:30px}.formula-set-copy p{font-size:18px}.formula-set-images{padding:14px}.site-footer{margin-top:60px;padding:32px var(--gutter) 24px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>p{grid-column:1/-1}.footer-wordmark{font-size:18vw;max-width:none;line-height:1;margin:48px 0 20px;white-space:nowrap}.footer-note{font-size:13px}.math-sidebar{padding:16px 20px}#math-content{padding:28px 20px 48px}#math-content h1{font-size:32px;max-width:24ch}#math-content .intro{font-size:19px;line-height:1.7}#math-content h2{font-size:23px;line-height:1.3}.lesson-list a{font-size:16px}.lesson-list small,.lesson-list span{font-size:13px}.math-app{font-size:18px}.lab{padding:18px}.lab h3{font-size:20px!important}.english-note{padding:14px 16px}.lesson-sources{padding:18px}.math-task>p{font-size:18px}.math-task details p{font-size:17px}.course-heading h1{font-size:48px}.course-heading{padding-top:32px}.course-main{padding:0 20px}#content h2{font-size:26px}#content section{padding:22px 18px}.formula-title h1{font-size:46px}.resource-row{display:block}.resource-open{margin-top:12px}.atlas-intro .button{font-size:14px;padding:12px 16px}.atlas-intro .text-link{font-size:14px}}
@media print{body{background:#fff;color:#000}.site-nav,.site-footer{display:none}.sheet{background:white;color:#111}h1{font-family:var(--font-display)}.sheet h1{font-family:var(--font-display)!important}.sheet p,.sheet section{font-family:var(--font-text)}.sheet{font-size:12px}}
.epsilon-function{font-size:15px;display:grid;gap:8px;margin-top:20px}.epsilon-function select{font-size:15px;padding:10px;background:var(--bg);color:var(--ink);border:0;max-width:100%;min-height:44px}
/* Stable headline stacking prevents moving panels from ever covering the wordmark. */
.atlas-hero>h1{position:relative;z-index:1}.atlas-home{--step-body:18px}
.atlas-home .nav-links,.atlas-home .theme-toggle,.atlas-home .atlas-live p,.atlas-home .atlas-live label,.atlas-home .course-facts,.atlas-home .course-facts+a,.atlas-home .atlas-intro .text-link,.atlas-home .sheet-strip figcaption,.atlas-home .footer-top p,.atlas-home .footer-top a,.atlas-home .footer-note,.atlas-home .section-opening a,.atlas-home .live-heading a{font-size:15px}
.atlas-home .atlas-intro p,.atlas-home .section-opening p{font-size:24px}.atlas-home .atlas-course p:not(.course-facts),.atlas-home .method-sequence p{font-size:18px}.atlas-home .method-sequence h3,.atlas-home .atlas-live h2,.atlas-home .brand{font-size:24px}
.atlas-home .atlas-course .course-title{font-size:clamp(42px,6vw,84px)}.atlas-home .footer-wordmark{font-size:clamp(100px,18.2vw,290px)}.atlas-home .button{font-size:15px}.atlas-home .atlas-live svg text{font-size:15px}
@media(max-width:750px){.atlas-home .footer-wordmark{font-size:18vw}.atlas-home .atlas-course .course-title{font-size:44px}.atlas-home .atlas-intro p,.atlas-home .section-opening p{font-size:20px}.atlas-home .atlas-intro .text-link{font-size:15px;margin:18px 0 0;display:block}}
.sheet{font-family:var(--font-text);font-size:12px;line-height:1.5}.sheet h1{font-family:var(--font-display)}.sheet h2,.sheet p,.sheet section{font-family:var(--font-text)}.sheet h2{font-size:16px}
.atlas-hero>h1,.footer-wordmark,.portal-heading h1{overflow:hidden}
