@import url('./fonts/portal-fonts.css');
:root{--paper:#fff;--ink:#1d1d1f;--muted:#58585d;--soft:#f5f5f7;--surface:#ededf0;--blue:#0066cc;--blue-dark:#0055a8;--dark:#141416;--light:#f5f5f7;--ease:cubic-bezier(.23,1,.32,1);--body:'Noto Sans Arabic',Arial,sans-serif;--display:'Noto Kufi Arabic',Arial,sans-serif;--latin:'Noto Sans Arabic',Arial,sans-serif;--line:#dedee3}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 1.125rem/1.85 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:600;text-wrap:balance}h1{font-size:clamp(2.625rem,calc(5.1vw * var(--text-scale,1)),4.75rem);line-height:1.5;letter-spacing:-.025em}h2{font-size:clamp(2rem,calc(3.4vw * var(--text-scale,1)),3rem);line-height:1.65;letter-spacing:-.025em}h3{font-size:1.5rem;line-height:1.8}p{text-wrap:pretty}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{border:0;background:none}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}button:disabled{cursor:default}button:active,.button:active{transform:scale(.97)}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:#cfe6ff;color:var(--ink)}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;top:-80px;right:24px;z-index:20;padding:10px 20px;background:var(--ink);color:var(--paper)}.skip:focus{top:12px}
.site-header{height:76px;background:var(--paper);position:relative;z-index:10}.nav-wrap{width:min(1280px,calc(100% - 80px));margin-inline:auto;height:100%;display:flex;align-items:center;justify-content:space-between;gap:36px}.wordmark{display:inline-block;font:600 1.625rem/1.1 var(--latin);letter-spacing:-1.2px}.site-header nav{display:flex;gap:30px;font-size:0.875rem}.site-header nav a{padding-block:12px}.site-header nav a[aria-current]{color:var(--blue)}.site-header a:hover,.site-footer a:hover{color:var(--blue)}.nav-actions{display:flex;gap:24px;align-items:center;font-size:0.875rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:52px;padding:10px 26px;border-radius:100px;font-size:1.0625rem;white-space:nowrap;transition:transform 180ms var(--ease),background 180ms var(--ease)}.button svg,.text-link svg,.fragment-link svg,.hint-button svg,.plan-overview svg{width:21px;height:21px}.button.primary{background:var(--blue);color:var(--paper)}.button.primary:hover{background:var(--blue-dark);color:var(--paper)}.button.secondary{background:var(--surface);color:var(--ink)}.button.secondary:hover{background:#dcdce1}.button.small{min-height:38px;padding:5px 20px;font-size:0.875rem}.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--blue);font-size:1.125rem;min-height:44px;transition:transform 200ms var(--ease)}.text-link:hover{transform:translateX(-4px)}.actions{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:28px}.menu-toggle{display:none;width:40px;height:40px;position:relative}.menu-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:6px auto;transition:transform 200ms}.hero{text-align:center;padding-top:52px}.hero>p{font-size:1.4375rem;line-height:1.85;max-width:750px;margin:12px auto 0}.hero.compact{padding-top:65px;padding-bottom:65px}.hero-product{margin-top:56px;background:var(--soft);padding:32px;border-radius:28px}.hero .hero-caption{font-size:1rem;color:var(--muted);margin-top:20px}.section{padding-block:135px}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end;margin-bottom:46px}.section-head p{font-size:1.25rem;max-width:49ch}.section-head .text-link{margin-top:20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.split>div{min-width:0}.split>div>p{margin-top:23px;font-size:1.25rem}.split .text-link{margin-top:24px}.field{padding-block:100px}.soft{background:var(--soft)}.dark{background:var(--dark);color:var(--light)}.dark .text-link{color:#7dbaff}.dark .small-note{color:#b4b4ba}.dark .hint-demo{color:var(--ink)}.dark p{max-width:48ch}.small-note{font-size:0.875rem!important;color:var(--muted);line-height:1.85}.cta-band{text-align:center;padding-block:105px 120px}.cta-band h2{font-size:clamp(2rem,calc(4vw * var(--text-scale,1)),3.5rem)}.cta-band>p{font-size:1.25rem;margin-top:16px}.site-footer{background:var(--soft);padding-block:48px 24px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:50px}.footer-top p{font-size:1rem;margin-top:15px}.footer-top nav{display:flex;gap:32px;font-size:1rem}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:45px;color:var(--muted);font-size:0.8125rem}
/* Product fragments are deliberately complete examples, with local controls. */
.product-workspace{display:grid;grid-template-columns:195px 1fr;text-align:right;background:var(--paper);border-radius:16px;overflow:hidden;min-height:410px}.workspace-nav{padding:30px 22px;display:flex;flex-direction:column;align-items:flex-start;gap:16px;font-size:0.875rem;background:#fafafa}.mini-brand{font:600 1.1875rem/1.2 var(--latin);letter-spacing:-.7px}.workspace-scope{color:var(--muted);font-size:0.8125rem;margin-bottom:4px}.workspace-nav .selected{background:var(--surface);border-radius:7px;padding:8px 12px;align-self:stretch}.workspace-nav>span:not(.selected){padding-inline:12px}.workspace-nav .mini-brand{padding:0!important}.workspace-unit{margin-top:auto;padding:20px 12px 0;font-size:0.8125rem;color:var(--muted)}.workspace-unit strong{font-size:1.125rem;color:var(--ink)}.workspace-body{padding:27px 32px}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:0.875rem;margin-bottom:32px}.demo-tag{color:var(--muted);font-size:0.75rem}.workspace-columns{display:grid;grid-template-columns:1fr 1.05fr;gap:35px;align-items:center}.question-kicker{font-size:0.75rem;color:var(--muted)}.question-block h3{font-size:1.375rem;margin-top:8px}.formula{font:500 1.8125rem/1.6 var(--latin);letter-spacing:-.8px;margin-block:22px;text-align:center;unicode-bidi:isolate}.question-block>.formula{text-align:right;font-size:1.5rem;margin-block:16px}.question-block>p:not(.formula):not(.question-kicker):not(.answer-feedback){font-size:0.9375rem;line-height:1.9}.choice-list{display:flex;gap:8px;margin-top:20px}.choice-list button{flex:1;border:1px solid var(--line);border-radius:7px;padding:9px 5px;font:400 0.9375rem/1.6 var(--latin);transition:background 160ms}.choice-list button:hover{background:var(--soft)}.choice-list button[aria-pressed=true]{background:#e3f0ff;border-color:var(--blue);color:var(--blue)}.question-block .answer-feedback{font-size:0.8125rem;margin-top:15px;min-height:48px;color:var(--muted)}.graph-block{text-align:center}.math-graph{width:100%;height:auto;fill:var(--blue);overflow:visible;display:block}.math-graph .axis{stroke:#b1b1b7;stroke-width:1;fill:none}.math-graph .curve{stroke:var(--blue);stroke-width:3;fill:none;stroke-linecap:round}.graph-labels{font:0.875rem var(--latin);fill:var(--muted)}.graph-block>p{font-size:0.8125rem;margin-top:10px}.fragment-link{display:inline-flex;align-items:center;gap:6px;font-size:0.8125rem;color:var(--blue);margin-top:20px;min-height:36px}.hint-demo{background:var(--paper);padding:30px 34px 34px;border-radius:20px;text-align:right;min-height:355px}.fragment-label{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:0.75rem;color:var(--muted);line-height:1.8}.hint-demo h3{font-size:1.375rem;margin-top:24px}.demo-instruction{font-size:0.875rem!important;color:var(--muted)}.hint-response{background:var(--soft);border-radius:8px;padding:16px;margin-top:24px;min-height:86px}.hint-response p{font-size:0.9375rem}.hint-button{display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--blue);width:100%;padding:15px 0 0;font-size:1rem;min-height:44px}.hint-button:disabled{color:var(--muted)}.article-fragment{padding:40px;background:var(--soft);border-radius:22px;height:100%}.article-fragment h3{font-size:1.75rem;margin-top:24px}.article-fragment>p:not(.formula){font-size:1.125rem;margin-top:18px;max-width:37ch}.article-fragment .formula{text-align:right;color:var(--blue);font-size:2.375rem;margin-block:26px}.understanding-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.concept-visual{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:380px;padding:10px 30px}.concept-visual .math-graph{max-width:420px}.concept-visual>span{font-size:1rem;margin-top:25px}
.curriculum-stage{background:var(--soft);padding:45px 60px 48px;border-radius:26px}.unit-picker{display:flex;justify-content:center;gap:10px;margin-bottom:42px}.unit-picker button{font-size:1.0625rem;padding:9px 24px;min-height:50px;border-radius:100px;color:var(--muted);transition:background 180ms,color 180ms}.unit-picker button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.unit-picker button:hover:not([aria-pressed=true]){background:var(--surface)}[data-curriculum-content] h3{font-size:2rem;text-align:center}.topic-row{display:flex;align-items:center;justify-content:center;gap:16px 32px;flex-wrap:wrap;margin-block:28px;font-size:1.25rem}.curriculum-stage>.text-link{display:flex;justify-content:center;margin-top:25px}.human-story{padding-block:20px;background:var(--soft)}.human-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:90px;padding-block:70px}.human-layout img{width:100%;aspect-ratio:1.15;object-fit:cover;object-position:53% center;border-radius:24px}.human-layout figcaption{font-size:0.75rem;margin-top:7px;color:var(--muted)}.human-layout p{font-size:1.25rem;margin-top:25px}.human-layout .text-link{margin-top:24px}.plan-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.plan-overview>a{padding:34px 30px;background:var(--soft);border-radius:22px;transition:transform 220ms var(--ease)}.plan-overview>a:hover{transform:translateY(-5px)}.plan-overview h3{font-size:1.75rem}.plan-overview p{font-size:1.125rem;margin-top:12px}.plan-overview span{display:inline-flex;align-items:center;gap:7px;margin-top:35px;color:var(--blue);font-size:1rem}
.experience-workspace{background:var(--soft);padding:30px;border-radius:28px}.ink-fragment{padding:27px;background:var(--soft);border-radius:22px}.ink-fragment button{font-size:0.8125rem;color:var(--blue);min-height:40px}.ink-fragment canvas{width:100%;height:240px;background:var(--paper);display:block;margin-top:15px;touch-action:none;border-radius:10px}.ink-fragment label{display:block;font-size:0.8125rem;margin-top:12px}.ink-fragment input{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--paper);padding:8px 12px;font-size:0.9375rem;margin-top:7px}.feature-list{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:55px}.feature-list p{font-size:1.125rem;margin-top:18px}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.plan-card{background:var(--soft);border-radius:24px;padding:35px 30px;display:flex;flex-direction:column;scroll-margin-top:30px}.plan-card.featured{background:#eaf3ff}.plan-card h2{font-size:1.875rem}.plan-card h3{font-size:1.25rem;margin-top:12px;min-height:72px;display:flex;align-items:center}.plan-card>p{font-size:1rem;margin-top:14px;min-height:60px}.price-current{margin-block:30px}.price-current span{display:block;font-size:0.8125rem;color:var(--muted)}.price-current strong{display:block;font-size:1.625rem;font-weight:500}.plan-card .button{font-size:0.9375rem;padding-inline:18px}.plan-card ul{padding:0 20px 0 0;margin:30px 0 0;font-size:1rem;line-height:2.2;min-height:140px}.plan-card li{padding-right:4px;margin-bottom:8px}.plan-card .small-note{margin-top:auto;padding-top:24px;min-height:0}.plans-note{font-size:0.875rem;color:var(--muted);max-width:90ch;margin:25px auto 0;text-align:center}.comparison-scroll{overflow-x:auto}.comparison{width:100%;border-collapse:collapse;font-size:1.0625rem;text-align:right;min-width:630px}.comparison th{font-weight:500}.comparison thead th{padding:20px;font-size:1.4375rem}.comparison tbody td,.comparison tbody th{padding:23px 20px;border-bottom:1px solid var(--line)}.comparison tbody tr:last-child>*{border:0}.comparison td:not(:first-child),.comparison thead th:not(:first-child){text-align:center}.detail-list details{padding-block:22px}.detail-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;font-size:1.25rem;font-weight:500;min-height:44px}.detail-list summary::-webkit-details-marker{display:none}.detail-list summary:after{content:'+';font:300 1.6875rem var(--latin);color:var(--muted)}.detail-list details[open] summary:after{content:'−'}.detail-list p{font-size:1.0625rem;max-width:65ch;margin-top:18px}.prose{max-width:790px;margin-inline:auto}.prose p{font-size:1.25rem;margin-top:24px}.prose h2{margin-top:52px}.mini-workspace{background:var(--soft);border-radius:22px;padding:40px}.mini-workspace h3{font-size:1.5625rem}.mini-workspace p{font-size:1.125rem;margin-top:20px}.mini-workspace ul{font-size:1.125rem;padding-right:25px;line-height:2.3}.mini-workspace .formula{font-size:2rem}.prose-photo img{width:100%;border-radius:24px;max-height:540px;object-fit:cover}.prose-photo figcaption{font-size:0.8125rem;color:var(--muted);margin-top:8px}.parent-note{padding:30px 40px;background:var(--soft);border-radius:20px}
@media(prefers-reduced-motion:no-preference){[data-reveal].is-visible{animation:arrive 850ms var(--ease) both}.hero h1.is-visible{animation:arrive 1000ms var(--ease) both}.hero-product.is-visible{animation:product-arrive 1100ms var(--ease) both}.hero-product .curve{stroke-dasharray:600;stroke-dashoffset:600;animation:draw-curve 1800ms 350ms var(--ease) forwards}.hint-response.has-update{animation:arrive 420ms var(--ease) both}.graph-block .math-graph{animation:graph-arrive 1200ms var(--ease) both}.hero-product:hover{transform:translateY(-2px);transition:transform 400ms var(--ease)}}
@keyframes arrive{from{opacity:.25;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes product-arrive{from{opacity:.6;transform:translateY(35px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes graph-arrive{from{opacity:.3;transform:translateX(14px)}to{opacity:1;transform:translateX(0)}}@keyframes draw-curve{to{stroke-dashoffset:0}}
@media(min-width:1450px){.hero{padding-top:70px}.hero-product{margin-top:65px}.product-workspace{min-height:435px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.nav-wrap{width:calc(100% - 48px);gap:20px}.site-header nav{gap:20px;font-size:0.8125rem}.nav-actions{gap:16px}.workspace-nav{padding:25px 14px}.product-workspace{grid-template-columns:170px 1fr}.workspace-body{padding:24px}.workspace-columns{gap:22px}.hero-product{padding:25px}.workspace-heading{margin-bottom:25px}.split,.human-layout{gap:55px}.section-head{gap:55px}.hero>p{font-size:1.3125rem}.plan-card{padding:30px 24px}.plan-card h3{font-size:1.125rem}.footer-top nav{gap:20px}.feature-list{gap:32px}.hint-demo{padding:25px}.hint-demo .mini-brand{font-size:1rem}}
@media(max-width:850px){.site-header nav{gap:17px}.login{display:none}.wordmark{font-size:1.5rem}.product-workspace{grid-template-columns:145px 1fr}.workspace-nav{font-size:0.75rem}.workspace-columns{grid-template-columns:1fr}.graph-block{display:none}.workspace-heading{margin-bottom:22px}.workspace-nav .mini-brand{font-size:1rem}.question-block h3{font-size:1.4375rem}.workspace-body{padding:25px 28px}.question-block>.formula{font-size:1.6875rem}.question-block .answer-feedback{min-height:26px}.workspace-unit{padding-top:25px}.section{padding-block:95px}.section-head{gap:35px}.split{gap:35px}.understanding-grid{gap:25px}.article-fragment{padding:28px}.article-fragment h3{font-size:1.5rem}.article-fragment>p:not(.formula){font-size:1.0625rem}.concept-visual{padding-inline:10px}.hero-product{padding:28px}.human-layout{gap:35px}.plan-overview>a{padding:28px 22px}.plan-overview h3{font-size:1.5rem}.plan-overview p{font-size:1rem}.plans-grid{gap:15px}.plan-card{padding:28px 20px}.plan-card h3{font-size:1.0625rem}.plan-card>p{min-height:90px}.plan-card ul{font-size:0.9375rem}.price-current strong{font-size:1.4375rem}.plan-card .button{font-size:0.8125rem;padding:8px 12px}.footer-top{align-items:flex-start}.footer-top nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.hint-demo h3{font-size:1.25rem}.fragment-label{gap:12px}.hint-demo .mini-brand{display:none}}
@media(max-width:680px){.wrap{width:calc(100% - 40px)}.site-header{height:68px}.nav-wrap{width:calc(100% - 40px);gap:15px}.wordmark{font-size:1.4375rem;letter-spacing:-1px}.site-header nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:15px 24px 25px;gap:2px;font-size:1.125rem}.site-header nav.is-open{display:flex;flex-direction:column;box-shadow:0 15px 25px #00000012}.site-header nav a{padding-block:10px}.menu-toggle{display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav-actions{gap:8px}.button.small{font-size:0.75rem;padding:4px 14px;min-height:34px}.hero{padding-top:35px}h1{font-size:2.4375rem;line-height:1.7;letter-spacing:-.035em}.hero>p{font-size:1.125rem;line-height:1.9;margin-top:13px}.desktop-only{display:none}.actions{gap:22px;margin-top:24px;flex-wrap:wrap}.button{font-size:1rem;padding:9px 22px;min-height:49px;gap:10px}.text-link{font-size:1rem}.hero-product{margin-top:37px;padding:14px;border-radius:20px}.product-workspace{display:block;min-height:0;border-radius:10px}.workspace-nav{display:none}.workspace-body{padding:20px 18px}.workspace-heading{font-size:0.75rem;gap:10px;margin-bottom:22px}.demo-tag{font-size:0.6875rem}.question-kicker{font-size:0.6875rem}.question-block h3{font-size:1.3125rem;margin-top:4px}.question-block>.formula{font-size:1.4375rem;text-align:center;margin-block:17px}.question-block>p:not(.formula):not(.question-kicker):not(.answer-feedback){font-size:0.875rem}.choice-list{gap:6px;margin-top:17px}.choice-list button{font-size:0.8125rem;padding:9px 3px}.question-block .answer-feedback{font-size:0.75rem;margin-top:11px;min-height:44px}.hero .hero-caption{font-size:0.8125rem;margin-top:17px}.section{padding-block:78px}h2{font-size:1.9375rem;line-height:1.7}h3{font-size:1.375rem}.section-head,.split,.understanding-grid{display:block}.section-head{margin-bottom:30px}.section-head p{font-size:1.125rem;margin-top:20px}.section-head .text-link{margin-top:17px}.split>div+div{margin-top:35px}.split>div>p{font-size:1.125rem;margin-top:19px}.understanding-grid>div+div{margin-top:25px}.concept-visual{min-height:260px;padding:10px 20px}.concept-visual .math-graph{max-width:330px}.concept-visual>span{font-size:0.875rem;margin-top:8px}.article-fragment{padding:28px;border-radius:20px}.article-fragment h3{font-size:1.5rem}.article-fragment>p:not(.formula){font-size:1.0625rem}.article-fragment .formula{font-size:2rem;margin-block:20px}.field{padding-block:70px}.hint-demo{padding:24px;border-radius:20px;min-height:340px}.hint-demo h3{font-size:1.25rem;margin-top:22px}.hint-demo .formula{font-size:1.5625rem;margin-block:20px}.hint-response{min-height:92px}.hint-response p{font-size:0.875rem}.fragment-label{font-size:0.6875rem}.hint-button{font-size:0.9375rem}.curriculum-stage{padding:25px 20px 28px;border-radius:20px}.unit-picker{gap:5px;margin-bottom:30px}.unit-picker button{font-size:0.875rem;padding:8px 16px;min-height:46px}[data-curriculum-content] h3{font-size:1.5625rem;line-height:1.9}.topic-row{font-size:1.0625rem;gap:15px 22px;margin-block:24px}.human-story{padding-block:0}.human-layout{display:flex;flex-direction:column;gap:32px;padding-block:40px 65px}.human-layout figure,.human-layout>div{width:100%}.human-layout img{aspect-ratio:1.3;border-radius:20px}.human-layout figcaption{font-size:0.6875rem}.human-layout p{font-size:1.125rem;margin-top:17px}.human-layout .text-link{margin-top:18px}.plan-overview{grid-template-columns:1fr;gap:14px}.plan-overview>a{padding:27px}.plan-overview h3{font-size:1.625rem}.plan-overview p{font-size:1.0625rem;margin-top:8px}.plan-overview span{margin-top:20px;font-size:0.9375rem}.plan-intro{padding-bottom:30px}.cta-band{padding-block:70px 85px}.cta-band h2{font-size:1.9375rem}.cta-band>p{font-size:1.125rem;margin-top:18px}.site-footer{padding-top:35px}.footer-top{display:block}.footer-top nav{margin-top:32px;gap:16px 25px;font-size:0.9375rem}.footer-top p{font-size:0.875rem;margin-top:14px}.footer-bottom{display:block;margin-top:32px;font-size:0.75rem}.footer-bottom p+p{margin-top:7px}.hero.compact{padding-top:36px;padding-bottom:42px}.experience-workspace{padding:14px;border-radius:20px}.feature-list{grid-template-columns:1fr;gap:35px;margin-top:35px}.feature-list p{font-size:1.0625rem;margin-top:10px}.plans-grid{grid-template-columns:1fr;gap:22px}.plan-card{padding:30px;border-radius:22px}.plan-card h2{font-size:1.875rem}.plan-card h3{font-size:1.25rem;min-height:0;display:block;margin-top:10px}.plan-card>p{font-size:1.0625rem;min-height:0}.price-current{margin-block:24px}.price-current strong{font-size:1.625rem}.plan-card .button{font-size:1rem;min-height:50px}.plan-card ul{font-size:1.0625rem;min-height:0;margin-top:25px}.plans-note{font-size:0.8125rem;margin-top:20px;text-align:right}.plan-card .small-note{font-size:0.8125rem!important;padding-top:18px}.comparison{font-size:0.9375rem;min-width:590px}.comparison thead th{font-size:1.1875rem}.comparison tbody td,.comparison tbody th{padding:19px 12px}.comparison-scroll{margin-inline:-10px}.detail-list summary{font-size:1.125rem}.detail-list p{font-size:1rem}.detail-list details{padding-block:18px}.prose p{font-size:1.125rem}.prose h2{margin-top:35px}.mini-workspace{padding:28px}.mini-workspace h3{font-size:1.4375rem}.mini-workspace p,.mini-workspace ul{font-size:1.0625rem}.ink-fragment{padding:22px}.ink-fragment canvas{height:225px}.parent-note{padding:25px}.small-note{font-size:0.8125rem!important}}
@media(max-width:370px){h1{font-size:2.125rem}.wordmark{font-size:1.3125rem}.nav-actions .button.small{font-size:0.6875rem;padding-inline:12px}.nav-wrap{gap:8px}.unit-picker button{padding-inline:12px}.actions{gap:15px}.hero>p{font-size:1.0625rem}.workspace-body{padding:18px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-product .curve{stroke-dashoffset:0!important}}

/* Shared editorial columns stay readable inside secondary-page splits. */
.split>.section-head{display:block;margin-bottom:0}.split>.section-head p{margin-top:24px}.split>.section-head .text-link{margin-top:22px}.prose h3:not(:first-child){margin-top:34px}.mini-workspace .feature-list,.prose .feature-list{display:block;margin-top:22px}.mini-workspace .feature-list li,.prose .feature-list li{margin-bottom:15px}.prose figure{margin-top:30px}.split figure img{border-radius:22px}.split figure figcaption{font-size:0.8125rem;margin-top:8px;color:var(--muted)}
@media(max-width:680px){.hero .hero-caption,.workspace-heading,.demo-tag,.question-kicker,.question-block .answer-feedback,.fragment-label,.footer-bottom,.ink-fragment label,.human-layout figcaption{font-size:0.8125rem}.split>.section-head p{margin-top:18px}.feature-list li{font-size:1.0625rem}.prose h3:not(:first-child){margin-top:28px}}

.hero.is-visible,.hero h1.is-visible{animation-name:title-shift!important}.plans-note{max-width:65ch}.price-current strong{font-size:1.4375rem}.cta-band h2{font-size:clamp(1.9375rem,calc(3.4vw * var(--text-scale,1)),3rem)}
@keyframes title-shift{from{transform:translateY(18px)}to{transform:translateY(0)}}
@media(max-width:680px){.button.small{font-size:0.8125rem}.comparison{min-width:0;table-layout:fixed;font-size:0.8125rem;line-height:1.8}.comparison th:first-child{width:28%}.comparison thead th{font-size:0.875rem;padding:15px 7px}.comparison tbody th,.comparison tbody td{padding:17px 6px;overflow-wrap:anywhere}.comparison-scroll{margin-inline:0}.split>figure{margin-top:32px}.price-current strong{font-size:1.5rem}}

.unit-picker button{white-space:nowrap}.mini-workspace .unit-picker{gap:3px;margin-block:20px 26px}.mini-workspace .unit-picker button{font-size:0.9375rem;padding:7px 10px;flex:1;min-width:0}
.billing-switch{display:flex;justify-content:center;gap:10px;margin-bottom:38px;flex-wrap:wrap}.billing-switch button{padding:10px 28px;min-height:48px;border-radius:100px;font-size:1.0625rem;transition:background 180ms,color 180ms}.billing-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.billing-switch button:hover:not([aria-pressed=true]){background:var(--soft)}.billing-switch button:disabled{cursor:default}.plan-card .plan-pitch{min-height:128px;font-size:1.0625rem;margin-top:20px}.plan-card .price-current{min-height:142px;margin-block:18px 24px}.price-current>strong{display:inline-block;font-size:2.625rem;line-height:1.5;letter-spacing:-.025em}.price-current>span{display:inline;font-size:0.9375rem;margin-inline-start:8px}.price-current>p{font-size:0.875rem;line-height:1.85;margin-top:12px}.plans-grid .plan-card ul{min-height:200px}.plan-overview p{font-size:1.0625rem}.plan-overview span{margin-top:26px}
@media(max-width:1100px){.plan-card .plan-pitch{min-height:145px}.price-current>strong{font-size:2.25rem}.plan-card .price-current{min-height:165px}}@media(max-width:850px){.plan-card .plan-pitch{font-size:1rem;min-height:205px}.price-current>strong{font-size:2rem}.plan-card .price-current{min-height:175px}.price-current>span{display:block;margin:0}.price-current>p{font-size:0.8125rem}.plans-grid .plan-card ul{font-size:0.9375rem}}@media(max-width:680px){.billing-switch{margin-bottom:25px}.billing-switch button{font-size:1rem;padding:9px 27px}.plan-card .plan-pitch{font-size:1.0625rem;min-height:0}.plan-card .price-current{min-height:0;margin-block:25px}.price-current>strong{font-size:2.5rem}.price-current>span{display:inline;font-size:0.9375rem;margin-inline-start:8px}.price-current>p{font-size:0.875rem}.plans-grid .plan-card ul{min-height:0;font-size:1.0625rem}}

/* Keep orientation and student entry within reach throughout long pages. */
:root{--header-height:76px}
html{scroll-padding-block-start:calc(var(--header-height) + 24px)}
.skip{z-index:100}
.site-header{position:sticky;inset-block-start:0;z-index:50;height:var(--header-height);isolation:isolate}
.site-header.is-scrolled{background:#fafafa}
.site-header nav a{display:flex;align-items:center;min-height:44px}
.site-header nav a[aria-current]{font-weight:600}
.site-header nav .mobile-account{display:none}
.menu-toggle{width:44px;height:44px;flex-shrink:0}
.button.small{min-height:44px}
.back-top{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--ink);white-space:nowrap}
.back-top span{font:400 1.3125rem var(--latin)}
.footer-bottom{align-items:center}
.detail-list details{padding-inline:20px;margin-inline:-20px;border-radius:16px}
.detail-list details[open]{background:var(--soft)}
.detail-list summary:hover,.detail-list summary:focus-visible{color:var(--blue)}
@media(min-width:681px){.hero.compact{padding-top:52px;padding-bottom:56px}}
@media(min-width:681px) and (max-width:850px){
  .nav-wrap{gap:16px}
  .site-header nav{gap:12px;font-size:0.8125rem}
  .nav-actions{gap:14px}
  .nav-actions .login{display:inline-flex;align-items:center;min-height:44px;font-size:0.75rem}
  .button.small{font-size:0.8125rem;padding-inline:16px}
}
@media(max-width:680px){
  :root{--header-height:68px}
  .site-header nav{top:var(--header-height);max-height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;padding:12px 20px 22px}
  .site-header.menu-open{background:var(--paper)}
  .site-header nav a{min-height:48px;padding-inline:12px;border-radius:8px}
  .site-header nav a[aria-current]{background:var(--soft)}
  .site-header nav .mobile-account{display:flex;background:var(--soft);margin-block-start:8px}
  .button.small{min-height:44px}
  .back-top{margin-top:14px}
}
@media(prefers-reduced-motion:no-preference){
  .button svg{transition:transform 180ms var(--ease)}
  .button:hover svg{transform:translateX(-3px)}
}

/* Baseline access does not depend on the optional display preferences. */
:root{--control-border:#7a7a82}
:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.dark :focus-visible{outline-color:#a3ceff}
.dark .hint-demo :focus-visible{outline-color:var(--blue)}
.choice-list button,.ink-fragment input{border-color:var(--control-border);min-height:44px}
.fragment-link,.login,.footer-top nav a{min-height:44px}
.footer-top nav a{display:inline-flex;align-items:center}
.site-header .mobile-settings{display:none}
.display-settings-trigger:disabled{visibility:hidden}
.ink-fragment textarea{width:100%;min-height:130px;resize:vertical;border:1px solid var(--control-border);border-radius:10px;background:var(--paper);padding:12px 14px;font:400 1.0625rem/1.9 var(--body);margin-top:8px}
.ink-fragment .small-note{margin-top:14px}
.faq-search{margin-block:0 38px;max-width:700px}
.faq-search label{display:block;font-size:1.125rem;font-weight:500;margin-bottom:12px}
.faq-search-controls{display:flex;align-items:center;gap:16px}
.faq-search input{width:100%;min-width:0;min-height:52px;padding:10px 16px;border:1px solid var(--control-border);border-radius:10px;background:var(--paper);font-size:1.0625rem}
.faq-search button{min-height:44px;flex-shrink:0;color:var(--blue);font-size:0.9375rem}
.faq-search [role=status]{margin-top:10px;min-height:26px}
.faq-search [data-search-empty]{font-size:1.125rem;margin-top:18px}
.hero-product.tour-host{padding:0;background:none}
.experience-workspace:has(.product-tour){padding:0;background:none}
.price-current,.comparison{font-variant-numeric:tabular-nums}
@media(max-width:850px){.site-header .header-settings{display:none}}
@media(max-width:680px){
  .site-header nav .mobile-settings{display:flex;justify-content:flex-start;width:100%;min-height:48px;padding-inline:12px;font-size:1.125rem}
  .faq-search-controls{gap:12px}
  .faq-search input{font-size:1rem}
}
@media(prefers-reduced-motion:no-preference){
  html:not([data-reduce-motion=true]) .product-workspace.pointer-answer.is-correct .math-graph circle{transform-box:fill-box;transform-origin:center;animation:point-confirm 520ms var(--ease)}
  html:not([data-reduce-motion=true]) .human-layout figure.is-visible img{animation:human-arrive 1200ms var(--ease) both}
}
@keyframes point-confirm{0%,100%{transform:scale(1)}45%{transform:scale(1.6)}}
@keyframes human-arrive{from{transform:scale(1.04)}to{transform:scale(1)}}
