/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
:root{--poincare-opacity-galaxy-chrome:.5;--poincare-opacity-grade-menu:.9;--poincare-color-curriculum-panel-dark:#0b0d17f2;color-scheme:dark;--poincare-color-space:#0b0d17;--poincare-color-background:#0b0d17;--poincare-color-nebula:#241444;--poincare-color-gold:gold;--poincare-color-blue:#4fc3f7;--poincare-color-white:#fff;--poincare-color-logo-gold:gold;--poincare-color-logo-blue:#4fc3f7;--poincare-color-surface:#1c1c1e;--poincare-color-surface-subtle:#ffffff14;--poincare-color-surface-interactive:#4fc3f759;--poincare-color-overlay:#0b0d17e6;--poincare-color-text:#fff;--poincare-color-text-secondary:#ffffffb8;--poincare-color-text-muted:#ffffff8c;--poincare-color-success:#006400;--poincare-color-warning:gold;--poincare-color-error:#ef5350;--poincare-color-info:#4fc3f7;--poincare-color-locked:#4a4f59;--poincare-color-locked-surface:#4a4f59;--poincare-color-completed:#4a4114;--poincare-color-decorative-star:#fff;--poincare-color-answer-correct-bg:#006400;--poincare-color-answer-correct-text:#fff;--poincare-color-answer-incorrect-bg:#ef5350;--poincare-color-answer-incorrect-text:#0b0d17;--poincare-color-domain-reading:#54c6a9;--poincare-color-domain-writing:#c59bff;--poincare-color-domain-math:gold;--poincare-color-domain-geometry:#4fc3f7;--poincare-color-domain-world:#ff8a65;--poincare-color-domain-puzzle:#90caf9;--poincare-font-family:Roboto, "Noto Sans", Arial, sans-serif;--poincare-font-display:400 3.5625rem/1.1228 var(--poincare-font-family);--poincare-font-hero:700 2.75rem/1.1818 var(--poincare-font-family);--poincare-font-h1:700 2rem/1.25 var(--poincare-font-family);--poincare-font-h2:700 1.75rem/1.2857 var(--poincare-font-family);--poincare-font-h3:700 1.5rem/1.3333 var(--poincare-font-family);--poincare-font-title:600 1.375rem/1.2727 var(--poincare-font-family);--poincare-font-body-lg:400 1rem/1.5 var(--poincare-font-family);--poincare-font-body:400 .875rem/1.4286 var(--poincare-font-family);--poincare-font-small:400 .75rem/1.3333 var(--poincare-font-family);--poincare-font-label:600 .875rem/1.4286 var(--poincare-font-family);--poincare-space-1:.25rem;--poincare-space-2:.5rem;--poincare-space-3:.75rem;--poincare-space-4:1rem;--poincare-space-5:1.25rem;--poincare-space-6:1.5rem;--poincare-space-8:2rem;--poincare-space-10:2.5rem;--poincare-space-12:3rem;--poincare-space-16:4rem;--poincare-radius-sm:.5rem;--poincare-radius-md:.75rem;--poincare-radius-lg:1rem;--poincare-radius-card:1.125rem;--poincare-radius-xl:1.5rem;--poincare-radius-pill:999px;--poincare-border-subtle:1px solid #ffffff1f;--poincare-border-interactive:1px solid #4fc3f78c;--poincare-border-selected:2px solid var(--poincare-color-gold);--poincare-focus-ring:3px solid #4fc3f7c7;--poincare-shadow-raised:0 8px 24px #00000052;--poincare-shadow-dialog:0 24px 72px #00000085;--poincare-glow-gold:0 0 0 6px #ffd7001a, 0 0 24px #ffd70047;--poincare-glow-blue:0 0 0 5px #4fc3f71a, 0 0 20px #4fc3f73d;--poincare-motion-fast:.15s;--poincare-motion-standard:.3s;--poincare-motion-emphasis:.5s;--poincare-motion-galaxy-open:1s;--poincare-easing-standard:cubic-bezier(.2, 0, 0, 1);--poincare-content-max:80rem;--poincare-touch-target:3rem}[data-poincare-theme=light],.poincare-theme-light{color-scheme:light;--poincare-color-background:#fff;--poincare-color-nebula:#d9e6f1;--poincare-color-blue:#08638a;--poincare-color-surface:#fff;--poincare-color-surface-subtle:#0b0d170f;--poincare-color-surface-interactive:#08638a1f;--poincare-color-overlay:#fffffff0;--poincare-color-text:#241444;--poincare-color-text-secondary:#241444b8;--poincare-color-text-muted:#2414448c;--poincare-color-error:#b3261e;--poincare-color-info:#08638a;--poincare-color-locked:#4a4f59;--poincare-color-locked-surface:#d6d9e1;--poincare-color-completed:#fff4b0;--poincare-color-decorative-star:#4fc3f7;--poincare-color-pill-standard-bg:#fff;--poincare-color-pill-standard-text:#241444;--poincare-color-pill-current-bg:#08638a;--poincare-color-pill-current-text:#fff;--poincare-color-pill-unavailable-bg:#fff;--poincare-color-pill-unavailable-text:#4a4f59;--poincare-color-button-primary-bg:gold;--poincare-color-button-primary-text:#0b0d17;--poincare-color-button-secondary-bg:#1c1c1e;--poincare-color-button-secondary-text:#fff;--poincare-color-button-tertiary-bg:transparent;--poincare-color-button-tertiary-text:#08638a;--poincare-color-button-danger-bg:#b3261e;--poincare-color-button-danger-text:#fff;--poincare-color-button-unavailable-bg:gold;--poincare-color-button-unavailable-text:#1c1c1e;--poincare-opacity-button-unavailable:.5;--poincare-color-galaxy-bg:#fff;--poincare-color-galaxy-text:#241444;--poincare-color-answer-incorrect-bg:#b3261e;--poincare-color-answer-incorrect-text:#fff;--poincare-border-subtle:1px solid #24144424;--poincare-border-interactive:1px solid #08638a8c;--poincare-focus-ring:3px solid #08638ac7;--poincare-shadow-raised:0 8px 24px #25304824}@media (prefers-reduced-motion:reduce){:root{--poincare-motion-fast:0s;--poincare-motion-standard:0s;--poincare-motion-emphasis:0s;--poincare-motion-galaxy-open:0s}}@layer theme{:root,:host{--pc-text-display:3.5625rem;--pc-text-display--line-height:1.1228;--pc-text-display--font-weight:400;--pc-text-hero:2.75rem;--pc-text-hero--line-height:1.1818;--pc-text-hero--font-weight:700;--pc-text-h1:2rem;--pc-text-h1--line-height:1.25;--pc-text-h1--font-weight:700;--pc-text-h2:1.75rem;--pc-text-h2--line-height:1.2857;--pc-text-h2--font-weight:700;--pc-text-h3:1.5rem;--pc-text-h3--line-height:1.3333;--pc-text-h3--font-weight:700;--pc-text-title:1.375rem;--pc-text-title--line-height:1.2727;--pc-text-title--font-weight:600;--pc-text-body-lg:1rem;--pc-text-body-lg--line-height:1.5;--pc-text-body:.875rem;--pc-text-body--line-height:1.4286;--pc-text-small:.75rem;--pc-text-small--line-height:1.3333}}@layer utilities{.pc\:flex{display:flex}.pc\:grid{display:grid}.pc\:flex-wrap{flex-wrap:wrap}.pc\:items-center{align-items:center}.pc\:justify-between{justify-content:space-between}.pc\:gap-3{gap:calc(var(--poincare-space-1) * 3)}.pc\:gap-4{gap:calc(var(--poincare-space-1) * 4)}.pc\:gap-6{gap:calc(var(--poincare-space-1) * 6)}.pc\:gap-8{gap:calc(var(--poincare-space-1) * 8)}.pc\:bg-background{background-color:var(--poincare-color-background)}.pc\:font-poincare{font-family:var(--poincare-font-family)}.pc\:text-text{color:var(--poincare-color-text)}@media (min-width:37.5rem){.pc\:tablet\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.pc\:desktop\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}*{box-sizing:border-box}body{background:var(--poincare-color-background);color:var(--poincare-color-text);font:var(--poincare-font-body-lg);margin:0}button,input,textarea{font-family:var(--poincare-font-family)}button{cursor:pointer}button:disabled{cursor:not-allowed}
/* The shared Tailwind adapter is loaded by app/globals.css. */

/* Scoped page rules; all brand values come from the canonical tokens. */
.school-landing { overflow: clip; font: var(--poincare-font-body-lg); background: var(--poincare-color-background); color: var(--poincare-color-text); }
.school-landing :is(h1,h2,h3,h4,p,figure) { margin: 0; }
.school-landing a { color: inherit; text-decoration: none; }
.school-landing button { font-family: var(--poincare-font-family); }
.school-landing :is(a,button,input,textarea,summary,[tabindex="0"]):focus-visible { outline: var(--poincare-focus-ring); outline-offset: 4px; }
.school-landing [id] { scroll-margin-top: 7rem; }
.school-container { width: min(calc(100% - 2 * var(--poincare-space-6)), var(--poincare-content-max)); margin-inline: auto; }
.school-icon { width: 24px; height: 24px; flex: 0 0 24px; vertical-align: middle; }
.school-skip { position: fixed; top: var(--poincare-space-4); left: var(--poincare-space-4); z-index: 100; padding: var(--poincare-space-4); border-radius: var(--poincare-radius-md); background: var(--poincare-color-gold); color: var(--poincare-color-space) !important; transform: translateY(-200%); }
.school-skip:focus { transform: translateY(0); }
.school-header { position: sticky; top: 0; z-index: 30; background: var(--poincare-color-overlay); border-bottom: var(--poincare-border-subtle); backdrop-filter: blur(16px); }
.school-header > div { min-height: 96px; }
.school-brand { flex-shrink: 0; padding: var(--poincare-space-3); margin-left: calc(-1 * var(--poincare-space-3)); }
.school-wordmark { display: block; width: 152px; }
.school-wordmark img { display: block; width: 100%; height: auto; }
.school-asset-light { display: none !important; }
[data-poincare-theme="light"] .school-landing .school-asset-dark { display: none !important; }
[data-poincare-theme="light"] .school-landing .school-asset-light { display: block !important; }
.school-nav { display: flex; gap: var(--poincare-space-8); }
.school-nav a,.school-footer nav a { display: inline-flex; align-items: center; min-height: var(--poincare-touch-target); font: var(--poincare-font-label); color: var(--poincare-color-text-secondary); }
.school-nav a:hover,.school-footer nav a:hover { color: var(--poincare-color-blue); }
.school-theme-toggle { display: grid; place-items: center; width: var(--poincare-touch-target); height: var(--poincare-touch-target); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-pill); background: transparent; color: var(--poincare-color-text); cursor: pointer; }
.school-button { display: inline-flex; justify-content: center; align-items: center; gap: var(--poincare-space-3); min-height: 56px; padding: var(--poincare-space-4) var(--poincare-space-6); border-radius: var(--poincare-radius-md); font: var(--poincare-font-label); transition: background var(--poincare-motion-fast) var(--poincare-easing-standard), box-shadow var(--poincare-motion-fast) var(--poincare-easing-standard); }
.school-button-primary { background: var(--poincare-color-gold); color: var(--poincare-color-space) !important; border: 1px solid var(--poincare-color-gold); }
.school-button-primary:hover { box-shadow: var(--poincare-glow-gold); }
.school-button-outline { border: var(--poincare-border-subtle); color: var(--poincare-color-text); }
.school-button-outline:hover { background: var(--poincare-color-surface-subtle); }
.school-button-small { min-height: var(--poincare-touch-target); padding: var(--poincare-space-3) var(--poincare-space-5); }
.school-button .school-icon { width: 20px; height: 20px; flex-basis: 20px; }
.school-text-link { display: inline-flex; min-height: var(--poincare-touch-target); align-items: center; gap: var(--poincare-space-3); color: var(--poincare-color-blue) !important; font: var(--poincare-font-label); }
.school-text-link:hover { text-decoration: underline; text-underline-offset: 5px; }
.school-eyebrow { display: flex; gap: var(--poincare-space-2); align-items: center; font: var(--poincare-font-small); font-weight: 600; letter-spacing: .12em; color: var(--poincare-color-blue); text-transform: uppercase; }
.school-eyebrow > span:first-child { width: 6px; height: 6px; border-radius: var(--poincare-radius-pill); background: var(--poincare-color-gold); }
.school-hero { display: grid; grid-template-columns: 1.06fr 1fr; align-items: center; gap: var(--poincare-space-16); padding-block: calc(var(--poincare-space-16) + var(--poincare-space-6)); }
.school-hero h1 { margin-top: var(--poincare-space-6); font: var(--poincare-font-display); letter-spacing: -.025em; }
.school-hero h1 > span { color: var(--poincare-color-blue); }
.school-lead { max-width: 33rem; margin-top: var(--poincare-space-6) !important; color: var(--poincare-color-text-secondary); font: var(--poincare-font-body-lg); line-height: 1.75; }
.school-hero-actions { align-items: center; margin-top: var(--poincare-space-8); }
.school-hero-footnote { display: flex; align-items: center; gap: var(--poincare-space-2); margin-top: var(--poincare-space-6) !important; font: var(--poincare-font-small); color: var(--poincare-color-text-secondary); }
.school-hero-footnote .school-icon { width: 16px; height: 16px; flex-basis: 16px; color: var(--poincare-color-blue); }
.school-learning-figure { min-height: 530px; position: relative; isolation: isolate; padding: var(--poincare-space-8); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-xl); background: var(--poincare-color-background); }
.school-route-top { position: relative; display: flex; justify-content: space-between; align-items: center; gap: var(--poincare-space-4); }
.school-mini-label { font: var(--poincare-font-small); letter-spacing: .08em; color: var(--poincare-color-text-secondary); }
.school-live-dot { width: 6px; height: 6px; background: var(--poincare-color-blue); border-radius: var(--poincare-radius-pill); }
.school-journey { display: grid; gap: var(--poincare-space-6); position: relative; margin-top: var(--poincare-space-8); }
.school-journey-line { position: absolute; left: 30px; top: 32px; width: 1px; height: calc(100% - 56px); background: linear-gradient(var(--poincare-color-gold), var(--poincare-color-blue), var(--poincare-color-surface-subtle)); }
.school-journey-step { display: flex; position: relative; align-items: center; gap: var(--poincare-space-5); }
.school-journey-step small { display: block; font: var(--poincare-font-small); letter-spacing: .06em; color: var(--poincare-color-text-secondary); }
.school-journey-step strong { display: block; margin-top: var(--poincare-space-1); font: var(--poincare-font-body-lg); font-weight: 600; }
.school-orb { position: relative; display: grid; place-items: center; width: 60px; height: 60px; flex: 0 0 60px; border-radius: var(--poincare-radius-pill); font: var(--poincare-font-title); }
.school-orb-gold { background: var(--poincare-color-gold); color: var(--poincare-color-space); box-shadow: var(--poincare-glow-gold); }
.school-orb-blue { background: var(--poincare-color-blue); color: var(--poincare-color-background); box-shadow: var(--poincare-glow-blue); }
.school-orb-outline { border: var(--poincare-border-interactive); background: var(--poincare-color-background); color: var(--poincare-color-blue); }
.school-orb-small { border: var(--poincare-border-subtle); background: var(--poincare-color-background); color: var(--poincare-color-text-secondary); }
.school-journey-note { display: flex; gap: var(--poincare-space-3); align-items: center; margin-top: var(--poincare-space-8); margin-left: var(--poincare-space-16); padding: var(--poincare-space-4); border: var(--poincare-border-subtle); background: var(--poincare-color-background); border-radius: var(--poincare-radius-md); font: var(--poincare-font-small); color: var(--poincare-color-text-secondary); }
.school-journey-note > .school-icon { color: var(--poincare-color-blue); }
.school-journey-note strong { color: var(--poincare-color-text); font-weight: 600; }
.school-learning-figure figcaption { margin-top: var(--poincare-space-4); font: var(--poincare-font-small); color: var(--poincare-color-text-secondary); text-align: right; }
.school-promise-strip { border-block: var(--poincare-border-subtle); background: var(--poincare-color-background); }
.school-promise-strip > div { display: flex; justify-content: space-between; gap: var(--poincare-space-6); padding-block: var(--poincare-space-6); }
.school-promise-strip p { display: flex; align-items: center; gap: var(--poincare-space-3); font: var(--poincare-font-label); }
.school-promise-strip .school-icon { color: var(--poincare-color-blue); }
.school-section { padding-block: calc(2 * var(--poincare-space-16)); }
.school-section-heading { max-width: 41rem; margin-bottom: var(--poincare-space-12); }
.school-landing h2 { margin-top: var(--poincare-space-4); font: var(--poincare-font-hero); letter-spacing: -.02em; }
.school-landing h2 span { color: var(--poincare-color-text-secondary); }
.school-section-heading > p:last-child,.school-free-layout > div:first-child > p:not(.school-eyebrow),.school-faq-section > div:first-child > p:not(.school-eyebrow) { margin-top: var(--poincare-space-5); color: var(--poincare-color-text-secondary); line-height: 1.7; }
.school-curriculum-stats { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--poincare-space-8); margin: 0; padding-block: var(--poincare-space-8); border-block: var(--poincare-border-subtle); }
.school-curriculum-stats > div { display: flex; flex-direction: column; gap: var(--poincare-space-3); }
.school-curriculum-stats dt { order: 2; font: var(--poincare-font-label); color: var(--poincare-color-text-secondary); }
.school-curriculum-stats dd { margin: 0; font: var(--poincare-font-hero); color: var(--poincare-color-text); }
.school-curriculum-stats dd span { color: var(--poincare-color-blue); }
.school-curriculum-note { display: flex; align-items: center; gap: var(--poincare-space-3); margin-top: var(--poincare-space-6) !important; color: var(--poincare-color-text-secondary); }
.school-curriculum-note .school-icon { color: var(--poincare-color-blue); }
.school-apps-section { background: var(--poincare-color-background); border-block: var(--poincare-border-subtle); }
.school-app-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--poincare-space-6); }
.school-app-card { min-width: 0; padding: var(--poincare-space-8); background: var(--poincare-color-background); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-xl); }
.school-app-icon { display: inline-flex; padding: var(--poincare-space-3); color: var(--poincare-color-blue); background: var(--poincare-color-background); border-radius: var(--poincare-radius-md); }
.school-app-card h3 { margin-top: var(--poincare-space-6); font: var(--poincare-font-h2); }
.school-app-card > p { margin-top: var(--poincare-space-4); color: var(--poincare-color-text-secondary); line-height: 1.75; }
.school-app-card > a { margin-top: var(--poincare-space-8); }
.school-store-placeholders { display: flex; flex-wrap: wrap; gap: var(--poincare-space-3); margin-top: var(--poincare-space-8); }
.school-store-placeholder { display: flex; align-items: center; gap: var(--poincare-space-3); padding: var(--poincare-space-3) var(--poincare-space-4); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-md); background: var(--poincare-color-background); color: var(--poincare-color-text-secondary); text-align: left; cursor: not-allowed; }
.school-store-placeholder small { display: block; font: var(--poincare-font-small); }
.school-store-placeholder strong { display: block; margin-top: var(--poincare-space-1); font: var(--poincare-font-label); color: var(--poincare-color-text); }
.school-app-card > .school-app-note { font: var(--poincare-font-small); line-height: 1.6; }
.school-contact-section { display: grid; grid-template-columns: 1fr 1.1fr; align-items: start; gap: var(--poincare-space-16); padding-bottom: calc(2 * var(--poincare-space-16)); }
.school-contact-copy > p:not(.school-eyebrow) { margin-top: var(--poincare-space-5); color: var(--poincare-color-text-secondary); line-height: 1.75; }
.school-contact-copy > a { margin-top: var(--poincare-space-6); }
.school-contact-form { display: grid; min-width: 0; gap: var(--poincare-space-5); padding: var(--poincare-space-8); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-xl); background: var(--poincare-color-background); }
.school-contact-form h3 { font: var(--poincare-font-title); }
.school-form-intro { color: var(--poincare-color-text-secondary); font: var(--poincare-font-body); }
.school-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--poincare-space-4); }
.school-contact-form label { display: grid; min-width: 0; gap: var(--poincare-space-2); font: var(--poincare-font-label); }
.school-contact-form :is(input,textarea) { box-sizing: border-box; min-width: 0; width: 100%; min-height: var(--poincare-touch-target); padding: var(--poincare-space-3); border: var(--poincare-border-interactive); border-radius: var(--poincare-radius-sm); background: var(--poincare-color-background); color: var(--poincare-color-text); font: var(--poincare-font-body-lg); }
.school-contact-form textarea { resize: vertical; }
.school-contact-form textarea::placeholder { color: var(--poincare-color-text-secondary); opacity: 1; }
.school-form-note { color: var(--poincare-color-text-secondary); font: var(--poincare-font-small); line-height: 1.6; }
.school-contact-fields > .school-button { justify-self: start; }
.school-tabs { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: var(--poincare-border-subtle); }
.school-tabs button { display: flex; align-items: center; gap: var(--poincare-space-3); min-height: 76px; padding: var(--poincare-space-5); border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--poincare-color-text-secondary); text-align: left; font: var(--poincare-font-label); cursor: pointer; }
.school-tabs button[aria-selected="true"] { border-bottom-color: var(--poincare-color-blue); background: var(--poincare-color-surface-subtle); color: var(--poincare-color-blue); }
.school-tabs button:hover { color: var(--poincare-color-blue); }
.school-tab-number { margin-left: auto; font: var(--poincare-font-small); }
.school-audience-panel:not([hidden]) { display: grid; grid-template-columns: 1.15fr 1fr; gap: var(--poincare-space-16); padding-top: var(--poincare-space-12); }
.school-audience-copy h3 { margin-top: var(--poincare-space-6); max-width: 30rem; font: var(--poincare-font-h1); }
.school-audience-copy > p { margin-top: var(--poincare-space-5); max-width: 33rem; line-height: 1.75; color: var(--poincare-color-text-secondary); }
.school-pill { display: inline-flex; align-items: center; gap: var(--poincare-space-2); padding: var(--poincare-space-2) var(--poincare-space-3); border-radius: var(--poincare-radius-pill); background: var(--poincare-color-surface-interactive); color: var(--poincare-color-blue); font: var(--poincare-font-small); font-weight: 600; }
.school-pill .school-icon { width: 16px; height: 16px; flex-basis: 16px; }
.school-pill-gold { background: var(--poincare-color-gold); color: var(--poincare-color-space); }
.school-checklist { display: grid; gap: var(--poincare-space-4); padding: 0; margin: var(--poincare-space-6) 0 0; list-style: none; }
.school-checklist li { display: flex; align-items: flex-start; gap: var(--poincare-space-3); font: var(--poincare-font-body-lg); }
.school-checklist .school-icon { width: 20px; height: 20px; flex-basis: 20px; color: var(--poincare-color-blue); }
.school-audience-diagram { padding: var(--poincare-space-8); border-radius: var(--poincare-radius-xl); background: var(--poincare-color-background); border: var(--poincare-border-subtle); }
.school-audience-diagram h4 { margin-top: var(--poincare-space-4); font: var(--poincare-font-title); }
.school-audience-diagram ol { list-style: none; display: grid; gap: var(--poincare-space-3); padding: 0; margin-block: var(--poincare-space-6); }
.school-audience-diagram li { display: flex; align-items: center; gap: var(--poincare-space-4); padding: var(--poincare-space-3) var(--poincare-space-4); border-radius: var(--poincare-radius-sm); background: var(--poincare-color-background); border: var(--poincare-border-subtle); font: var(--poincare-font-label); }
.school-audience-diagram li > span { color: var(--poincare-color-blue); font: var(--poincare-font-small); }
.school-diagram-note { font: var(--poincare-font-body); color: var(--poincare-color-text-secondary); line-height: 1.6; }
.school-panel-caption { margin-top: var(--poincare-space-6) !important; font: var(--poincare-font-small); color: var(--poincare-color-text-secondary); }
.school-free-section { background: var(--poincare-color-background); border-block: var(--poincare-border-subtle); }
.school-free-layout { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: calc(2 * var(--poincare-space-16)); padding-block: var(--poincare-space-16); }
.school-free-layout > div:first-child > .school-text-link { margin-top: var(--poincare-space-6); }
.school-free-card { border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-xl); padding: var(--poincare-space-8); background: var(--poincare-color-background); }
.school-free-card h3 { font: var(--poincare-font-h2); margin-top: var(--poincare-space-5); }
.school-free-card > p { color: var(--poincare-color-text-secondary); margin-top: var(--poincare-space-2); }
.school-license-note { font: var(--poincare-font-small); line-height: 1.6; margin-top: var(--poincare-space-6) !important; }
.school-free-card > a { margin-top: var(--poincare-space-6); width: 100%; }
.school-considerations article { border-top: var(--poincare-border-subtle); padding-top: var(--poincare-space-6); }
.school-consideration-top { display: flex; justify-content: space-between; color: var(--poincare-color-blue); }
.school-consideration-top > span { color: var(--poincare-color-text-secondary); font: var(--poincare-font-small); }
.school-considerations h3 { margin-top: var(--poincare-space-6); font: var(--poincare-font-title); }
.school-considerations p { margin-top: var(--poincare-space-3); color: var(--poincare-color-text-secondary); line-height: 1.75; }
.school-principle { display: flex; align-items: center; gap: var(--poincare-space-5); margin-top: var(--poincare-space-12); padding: var(--poincare-space-6); border-radius: var(--poincare-radius-lg); background: var(--poincare-color-background); border-left: 3px solid var(--poincare-color-blue); }
.school-principle > .school-icon { width: 32px; height: 32px; flex-basis: 32px; color: var(--poincare-color-blue); }
.school-principle strong { display: block; font: var(--poincare-font-label); }
.school-principle span { display: block; margin-top: var(--poincare-space-2); font: var(--poincare-font-body); color: var(--poincare-color-text-secondary); }
.school-faq-section { display: grid; grid-template-columns: .75fr 1.25fr; gap: var(--poincare-space-16); padding-bottom: calc(2 * var(--poincare-space-16)); }
.school-faq-list details { border-bottom: var(--poincare-border-subtle); }
.school-faq-list details:first-child { border-top: var(--poincare-border-subtle); }
.school-faq-list summary { display: flex; justify-content: space-between; align-items: center; gap: var(--poincare-space-6); min-height: 80px; padding-block: var(--poincare-space-5); font: var(--poincare-font-label); cursor: pointer; list-style: none; }
.school-faq-list summary::-webkit-details-marker { display: none; }
.school-faq-list summary > span { flex-shrink: 0; color: var(--poincare-color-blue); font: var(--poincare-font-h3); transition: transform var(--poincare-motion-fast) var(--poincare-easing-standard); }
.school-faq-list details[open] summary > span { transform: rotate(45deg); }
.school-faq-list details > p { padding-bottom: var(--poincare-space-6); padding-right: var(--poincare-space-8); font: var(--poincare-font-body-lg); line-height: 1.75; color: var(--poincare-color-text-secondary); }
.school-closing { display: grid; grid-template-columns: 1fr 240px; gap: var(--poincare-space-12); align-items: center; padding: var(--poincare-space-12); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-xl); background: var(--poincare-color-background); }
.school-closing h2 { font: var(--poincare-font-h1); }
.school-closing h2 > span { display: inline-block; margin-top: var(--poincare-space-2); }
.school-closing p:not(.school-eyebrow) { max-width: 40rem; margin-top: var(--poincare-space-5); color: var(--poincare-color-text-secondary); line-height: 1.75; }
.school-closing .school-button { margin-top: var(--poincare-space-6); }
.school-closing-mark img { width: 100%; height: auto; }
.school-footer { margin-top: var(--poincare-space-16); padding-block: var(--poincare-space-8); border-top: var(--poincare-border-subtle); }
.school-footer > div { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--poincare-space-6); }
.school-footer p { font: var(--poincare-font-body); color: var(--poincare-color-text-secondary); }
.school-footer nav { display: flex; flex-wrap: wrap; gap: var(--poincare-space-6); }
.school-footer > div > span { grid-column: 1/-1; padding-top: var(--poincare-space-5); border-top: var(--poincare-border-subtle); font: var(--poincare-font-small); color: var(--poincare-color-text-secondary); }

@media (min-width: 1440px) { .school-hero { padding-block: calc(2 * var(--poincare-space-16)); } }
@media (max-width: 1023px) {
  .school-nav { display: none; }
  .school-hero { gap: var(--poincare-space-8); }
  .school-hero h1 { font: var(--poincare-font-hero); }
  .school-learning-figure { padding: var(--poincare-space-6); }
  .school-promise-strip > div { display: grid; grid-template-columns: 1fr 1fr; }
  .school-section { padding-block: var(--poincare-space-16); }
  .school-free-layout { gap: var(--poincare-space-8); }
  .school-contact-section { gap: var(--poincare-space-8); padding-bottom: var(--poincare-space-16); }
  .school-form-row { grid-template-columns: 1fr; }
  .school-audience-panel:not([hidden]) { gap: var(--poincare-space-8); }
  .school-tabs button { padding-inline: var(--poincare-space-3); }
  .school-tab-number { display: none; }
  .school-faq-section { gap: var(--poincare-space-8); padding-bottom: var(--poincare-space-16); }
  .school-closing { grid-template-columns: 1fr 160px; padding: var(--poincare-space-8); }
  .school-footer > div { grid-template-columns: auto 1fr; }
  .school-footer nav { grid-column: 1/-1; }
}
@media (max-width: 599px) {
  .school-container { width: calc(100% - 2 * var(--poincare-space-4)); }
  .school-header > div { min-height: 80px; gap: var(--poincare-space-2); }
  .school-wordmark { width: 120px; }
  .school-header .school-button { padding-inline: var(--poincare-space-3); }
  .school-header .school-button .school-icon { display: none; }
  .school-hero { grid-template-columns: 1fr; padding-block: var(--poincare-space-12); gap: var(--poincare-space-12); }
  .school-hero h1 { font: var(--poincare-font-hero); }
  .school-eyebrow { letter-spacing: .08em; font-size: .6875rem; line-height: 1.5; }
  .school-hero-actions { flex-direction: column; align-items: stretch; }
  .school-hero-actions .school-text-link { justify-content: center; }
  .school-hero-footnote { align-items: flex-start; line-height: 1.6; }
  .school-learning-figure { min-height: 0; }
  .school-journey-note { margin-left: var(--poincare-space-8); }
  .school-promise-strip > div { gap: var(--poincare-space-5) var(--poincare-space-3); }
  .school-promise-strip p { font: var(--poincare-font-small); gap: var(--poincare-space-2); }
  .school-promise-strip .school-icon { width: 20px; height: 20px; flex-basis: 20px; }
  .school-landing h2 { font: var(--poincare-font-h1); }
  .school-curriculum-stats { grid-template-columns: 1fr; gap: var(--poincare-space-6); }
  .school-curriculum-stats > div + div { padding-top: var(--poincare-space-6); border-top: var(--poincare-border-subtle); }
  .school-curriculum-stats dd { font: var(--poincare-font-h1); }
  .school-curriculum-note { align-items: flex-start; }
  .school-app-grid,.school-contact-section { grid-template-columns: 1fr; }
  .school-app-card,.school-contact-form { padding: var(--poincare-space-6); }
  .school-contact-fields > .school-button { width: 100%; }
  .school-tabs { grid-template-columns: 1fr 1fr; }
  .school-tabs button { min-height: 64px; }
  .school-audience-panel:not([hidden]),.school-free-layout,.school-faq-section { grid-template-columns: 1fr; }
  .school-audience-copy h3 { font: var(--poincare-font-h2); }
  .school-audience-diagram,.school-free-card { padding: var(--poincare-space-6); }
  .school-free-layout { padding-block: var(--poincare-space-12); }
  .school-considerations { gap: var(--poincare-space-8); }
  .school-principle { align-items: flex-start; padding: var(--poincare-space-5); }
  .school-closing { grid-template-columns: 1fr; padding: var(--poincare-space-6); }
  .school-closing-mark { display: none; }
  .school-closing .school-button { width: 100%; }
  .school-footer > div { grid-template-columns: 1fr; gap: var(--poincare-space-3); }
  .school-footer nav { flex-wrap: wrap; gap: var(--poincare-space-4); }
}

@media (prefers-reduced-motion: reduce) { .school-landing *, .school-landing *::before, .school-landing *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }
.school-contact-fields { display: grid; min-width: 0; gap: var(--poincare-space-4); margin: 0; padding: 0; border: 0; }
.school-contact-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.school-contact-success, .school-contact-error { padding: var(--poincare-space-4); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-sm); color: var(--poincare-color-text); }
.school-contact-success { border-color: var(--poincare-color-success); }
.school-contact-error { border-color: var(--poincare-color-error); }
.school-contact-fields:disabled .school-button { opacity: var(--poincare-opacity-button-unavailable); cursor: wait; }
.school-business-details { display: grid; gap: var(--poincare-space-2); grid-column: 1 / -1; margin: 0; font: var(--poincare-font-small); font-style: normal; overflow-wrap: anywhere; color: var(--poincare-color-text-secondary); }
.school-form-note a { text-decoration: underline; text-underline-offset: var(--poincare-space-1); }
.school-public-information { min-height: 100vh; display: flex; flex-direction: column; }
.school-public-information .school-footer { margin-top: auto; }
.school-policy { width: min(100%, 52rem); margin-inline: auto; padding: var(--poincare-space-12) var(--poincare-space-6); overflow-wrap: anywhere; }
.school-policy h1 { margin-block: var(--poincare-space-4) var(--poincare-space-6); font: var(--poincare-font-h1); }
.school-policy h2 { margin-block: var(--poincare-space-8) var(--poincare-space-4); font: var(--poincare-font-h3); }
.school-policy p, .school-policy ul, .school-policy address { margin-bottom: var(--poincare-space-4); line-height: 1.7; }
.school-policy a { color: var(--poincare-color-info); text-decoration: underline; text-underline-offset: var(--poincare-space-1); }
.school-policy li + li { margin-top: var(--poincare-space-3); }
.school-policy-date { margin-top: var(--poincare-space-8) !important; color: var(--poincare-color-text-secondary); font: var(--poincare-font-small); }
.school-public-information .theme-toggle { min-width: var(--poincare-touch-target); min-height: var(--poincare-touch-target); background: var(--poincare-color-background); color: var(--poincare-color-text); border: var(--poincare-border-interactive); border-radius: var(--poincare-radius-pill); font: var(--poincare-font-title); }
.school-cookie-banner { position: fixed; z-index: 60; right: var(--poincare-space-4); bottom: var(--poincare-space-4); width: min(36rem, calc(100% - 2 * var(--poincare-space-4))); max-height: calc(100dvh - 2 * var(--poincare-space-4)); overflow: auto; padding: var(--poincare-space-6); background: var(--poincare-color-background); color: var(--poincare-color-text); border: var(--poincare-border-interactive); border-radius: var(--poincare-radius-lg); box-shadow: var(--poincare-shadow-dialog); }
.school-cookie-banner h2 { margin: 0 0 var(--poincare-space-4); font: var(--poincare-font-title); }
.school-cookie-banner p { margin: 0 0 var(--poincare-space-4); font: var(--poincare-font-body); }
.school-cookie-banner a { text-decoration: underline; text-underline-offset: var(--poincare-space-1); }
.school-cookie-actions { display: flex; flex-wrap: wrap; gap: var(--poincare-space-3); }
.school-cookie-actions .school-button { flex: 1 1 auto; justify-content: center; padding: var(--poincare-space-3); background: var(--poincare-color-background); color: var(--poincare-color-text); }
.school-cookie-settings { display: inline-flex; align-items: center; min-height: var(--poincare-touch-target); padding: 0; background: transparent; color: var(--poincare-color-text-secondary); border: 0; font: var(--poincare-font-label); cursor: pointer; }
.school-cookie-settings:hover { color: var(--poincare-color-blue); }
@media (forced-colors: active) { .school-landing :is(.school-button,.school-theme-toggle,.school-tabs button[aria-selected="true"],.school-orb) { border: 2px solid ButtonText; } }

.school-differentiation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--poincare-space-6); margin-top: var(--poincare-space-12); }
.school-differentiation article { padding: var(--poincare-space-6); border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-lg); background: var(--poincare-color-background); }
.school-differentiation h3 { margin-top: var(--poincare-space-4); font: var(--poincare-font-h3); }
.school-differentiation article > p:last-child { margin-top: var(--poincare-space-4); color: var(--poincare-color-text-secondary); line-height: 1.75; }
.school-showcase-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--poincare-space-6); }
.school-showcase-card { min-width: 0; overflow: hidden; border: var(--poincare-border-subtle); border-radius: var(--poincare-radius-xl); background: var(--poincare-color-background); }
.school-showcase-image { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; padding: var(--poincare-space-4); border-bottom: var(--poincare-border-subtle); }
.school-showcase-image img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.school-showcase-phone { height: 28rem; aspect-ratio: auto; }
.school-showcase-image.school-screenshot-light { display: none; }
[data-poincare-theme="light"] .school-showcase-image.school-screenshot-dark { display: none; }
[data-poincare-theme="light"] .school-showcase-image.school-screenshot-light { display: flex; }
.school-showcase-card figcaption { padding: var(--poincare-space-6); }
.school-showcase-card h3 { margin-top: var(--poincare-space-3); font: var(--poincare-font-title); }
.school-showcase-card figcaption > p:last-child { margin-top: var(--poincare-space-3); color: var(--poincare-color-text-secondary); line-height: 1.7; }
@media (max-width: 1023px) { .school-showcase-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .school-differentiation,.school-showcase-grid { grid-template-columns: minmax(0, 1fr); } .school-showcase-phone { height: 26rem; } }
