.schools-sample-link { padding-block: 2rem; border-top: 1px solid var(--v2-border-default); }
.schools-sample-link p { margin-top: .75rem; font-size: .9rem; color: var(--v2-text-secondary); }
.schools-page {
    color: var(--v2-text-primary);
    font-family: var(--v2-font-body);
    line-height: 1.75;
}

.schools-container { width: min(100% - 2 * var(--v2-container-padding), var(--v2-container-max)); margin-inline: auto; }
.schools-section { padding-block: clamp(3.5rem, 7vw, 6rem); }
.schools-page h1, .schools-page h2, .schools-page h3 { font-family: var(--v2-font-display); line-height: 1.12; text-wrap: balance; }
.schools-page h1 { font-size: clamp(2.6rem, 4.7vw, 4.3rem); font-weight: 800; letter-spacing: -.045em; margin: 0 0 1.5rem; }
.schools-page h2 { font-size: clamp(2rem, 3.3vw, 3rem); font-weight: 750; letter-spacing: -.035em; margin: 0 0 1.1rem; }
.schools-page h3 { font-size: 1.3rem; font-weight: 700; margin: 0 0 .8rem; }
.schools-page p { margin: 0; }
.schools-page p, .schools-page li { overflow-wrap: break-word; }
.schools-page a { color: var(--v2-text-link-hover); text-underline-offset: .22em; }
.schools-page a:hover { color: var(--v2-text-primary); }
.schools-page a:focus-visible { outline: 3px solid var(--v2-text-link); outline-offset: 5px; border-radius: 2px; }
.schools-page .schools-eyebrow { font-size: .75rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 1.2rem; color: var(--v2-text-link-hover); }
.schools-actions { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 1.8rem; }
.schools-text-link { display: inline-flex; align-items: center; gap: .65rem; font-weight: 700; font-size: .9rem; }
.schools-hero {
    padding-block: clamp(3rem, 6vw, 5.5rem);
    background: radial-gradient(ellipse at 85% 30%, color-mix(in srgb, var(--v2-brand-accent) 13%, transparent), transparent 55%), var(--v2-surface-lowered);
}
.schools-hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.schools-hero h1 span { color: var(--v2-text-link); }
.schools-lead { max-width: 36rem; font-size: 1.1rem; color: var(--v2-text-secondary); }
.schools-page .schools-hero-note { font-size: .78rem; color: var(--v2-text-secondary); margin-top: 1rem; }
.schools-playboard {
    min-width: 0;
    padding: 1.6rem;
    border: 1px solid var(--v2-border-strong);
    border-radius: 1.3rem;
    background-color: var(--v2-surface-card);
    background-image: linear-gradient(var(--v2-border-default) 1px, transparent 1px), linear-gradient(90deg, var(--v2-border-default) 1px, transparent 1px);
    background-size: 24px 24px;
    box-shadow: var(--v2-shadow-neutral-lg);
    transform: rotate(1.5deg);
}
.schools-board-label { display: flex; align-items: center; gap: .6rem; font-family: var(--v2-font-display); font-size: .95rem; font-weight: 650; margin-bottom: 1rem; background: var(--v2-surface-card); width: fit-content; }
.schools-board-label i { color: var(--v2-text-link); }
.schools-game-frame { margin: 0; border-radius: .75rem; overflow: hidden; background: var(--v2-surface-card); border: 1px solid var(--v2-border-strong); }
.schools-game-frame img { display: block; width: 100%; height: auto; }
.schools-game-frame figcaption { padding: .55rem .85rem; font-size: .7rem; color: var(--v2-text-secondary); }
.schools-lesson-note { display: flex; gap: .9rem; align-items: center; padding: 1rem; margin-block: 1rem; background: color-mix(in srgb, var(--v2-brand-accent) 18%, var(--v2-surface-card)); border: 1px solid color-mix(in srgb, var(--v2-brand-accent) 50%, var(--v2-border-default)); border-radius: .4rem; transform: rotate(-2.5deg); }
.schools-lesson-note strong { font-family: var(--v2-font-display); font-size: 1rem; }
.schools-lesson-note p { font-size: .78rem; color: var(--v2-text-secondary); }
.schools-note-icon { font-size: 1.3rem; }
.schools-playboard > .schools-text-link { background: var(--v2-surface-card); }
.schools-benefit-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; list-style: none; margin: 0; padding: 2rem 0; border-bottom: 1px solid var(--v2-border-default); }
.schools-benefit-strip li { display: flex; gap: .9rem; align-items: center; color: var(--v2-text-secondary); font-size: .8rem; }
.schools-benefit-strip i { font-size: 1.3rem; color: var(--v2-text-link); }
.schools-benefit-strip strong { display: block; color: var(--v2-text-primary); font-family: var(--v2-font-display); font-size: 1rem; }
.schools-section-heading { max-width: 46rem; margin-bottom: 2.5rem; }
.schools-section-heading > p:not(.schools-eyebrow) { color: var(--v2-text-secondary); }
.schools-grade-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.3rem; }
.schools-grade-card { display: flex; flex-direction: column; padding: clamp(1.3rem, 2.5vw, 2rem); border: 1px solid var(--v2-border-default); border-top: 4px solid var(--v2-brand-primary); border-radius: .4rem .4rem 1rem 1rem; background: var(--v2-surface-card); }
.schools-grade-card:nth-child(2) { border-top-color: var(--v2-brand-accent); }
.schools-grade-card:nth-child(3) { border-top-color: var(--v2-brand-secondary); }
.schools-grade-label { display: flex; gap: 1rem; align-items: center; justify-content: space-between; font-family: var(--v2-font-display); font-size: 1.8rem; font-weight: 750; }
.schools-grade-label span { font-family: var(--v2-font-body); font-size: .65rem; font-weight: 650; letter-spacing: .04em; text-transform: uppercase; color: var(--v2-text-secondary); }
.schools-grade-card h3 { margin-top: 1.5rem; font-size: 1.6rem; }
.schools-grade-card > p:not(.schools-grade-label), .schools-grade-card li { font-size: .9rem; color: var(--v2-text-secondary); }
.schools-grade-card ul { padding-left: 1.1rem; margin-block: 1.1rem 1.6rem; }
.schools-grade-card li { padding-block: .18rem; }
.schools-grade-card li::marker { color: var(--v2-text-link); }
.schools-example { margin-top: auto; padding-top: 1.2rem; border-top: 1px dashed var(--v2-border-strong); }
.schools-example span { font-size: .65rem; letter-spacing: .1em; text-transform: uppercase; color: var(--v2-text-secondary); }
.schools-example p { margin-top: .4rem; font-family: var(--v2-font-display); font-size: 1.12rem; font-weight: 600; }
.schools-example strong { display: block; margin-top: .7rem; color: var(--v2-text-link-hover); font-size: .72rem; font-weight: 650; }
.schools-page .schools-caption { max-width: 58rem; margin-top: 1.4rem; color: var(--v2-text-secondary); font-size: .78rem; }
.schools-workflow { background: var(--v2-surface-lowered); }
.schools-steps { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; margin: 0; padding: 0; }
.schools-step-number { display: block; font-family: var(--v2-font-display); font-size: 2.8rem; line-height: 1; font-weight: 750; color: var(--v2-text-link); margin-bottom: 1.25rem; }
.schools-steps p { color: var(--v2-text-secondary); font-size: .92rem; }
.schools-research-note { display: flex; align-items: start; gap: 1rem; margin-top: 2.75rem; padding-top: 1.5rem; border-top: 1px solid var(--v2-border-strong); font-size: .82rem; color: var(--v2-text-secondary); }
.schools-research-note i { color: var(--v2-text-link); font-size: 1.2rem; margin-top: .25rem; }
.schools-routines { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: start; }
.schools-routines .schools-text-link { margin-top: 1.5rem; }
.schools-routine-list article { display: flex; gap: 1.3rem; padding-block: 1.5rem; border-bottom: 1px solid var(--v2-border-default); }
.schools-routine-list article:first-child { padding-top: 0; }
.schools-routine-list i { display: grid; place-items: center; flex-shrink: 0; width: 3rem; height: 3rem; border-radius: .7rem; background: color-mix(in srgb, var(--v2-brand-accent) 15%, var(--v2-surface-card)); color: var(--v2-text-primary); }
.schools-routine-list p { font-size: .9rem; color: var(--v2-text-secondary); }
.schools-adoption { border-block: 1px solid var(--v2-border-default); background: color-mix(in srgb, var(--v2-brand-primary) 6%, var(--v2-surface-page)); }
.schools-adoption-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 5rem; }
.schools-adoption .schools-section-heading { margin-bottom: 0; }
.schools-rollout { padding-left: 1.5rem; margin: 0; }
.schools-rollout li { padding: 0 0 1.5rem .6rem; }
.schools-rollout li:last-child { padding-bottom: 0; }
.schools-rollout li::marker { color: var(--v2-text-link); font-weight: 750; }
.schools-rollout strong { font-family: var(--v2-font-display); font-size: 1.2rem; }
.schools-rollout p { font-size: .9rem; color: var(--v2-text-secondary); margin-top: .45rem; }
.schools-trust-note { display: flex; gap: 1rem; padding: 1.5rem; border: 1px solid var(--v2-border-default); border-radius: .8rem; background: var(--v2-surface-card); margin-top: 3rem; }
.schools-trust-note > i { font-size: 1.3rem; color: var(--v2-text-link); margin-top: .2rem; }
.schools-trust-note h3 { font-size: 1.15rem; }
.schools-trust-note p { color: var(--v2-text-secondary); font-size: .82rem; }
.schools-faq-grid { display: grid; grid-template-columns: 1fr 1fr; column-gap: 4rem; row-gap: 2rem; }
.schools-faq-grid article { border-top: 1px solid var(--v2-border-default); padding-top: 1.5rem; }
.schools-faq-grid h3 { font-size: 1.15rem; line-height: 1.4; }
.schools-faq-grid p { color: var(--v2-text-secondary); font-size: .9rem; }
.schools-final { text-align: center; padding: clamp(2rem, 6vw, 4rem); border-radius: 1.5rem; margin-bottom: 5rem; background: color-mix(in srgb, var(--v2-brand-accent) 13%, var(--v2-surface-lowered)); border: 1px solid var(--v2-border-default); }
.schools-final > p:not(.schools-eyebrow) { color: var(--v2-text-secondary); }
.schools-final .schools-actions { justify-content: center; }

/* School-level navigation stays in the document flow and wraps on small screens. */
.schools-level-nav { border-bottom: 1px solid var(--v2-border-default); background: var(--v2-surface-card); }
.schools-level-nav > div { display: flex; flex-wrap: wrap; gap: .25rem 1.2rem; padding-block: .55rem; }
.schools-level-nav a { padding: .5rem .35rem; font-size: .8rem; font-weight: 650; text-decoration: none; border-bottom: 2px solid transparent; }
.schools-level-nav a[aria-current="page"] { color: var(--v2-text-primary); border-bottom-color: var(--v2-text-link); }
.schools-hub .schools-hero h1 { max-width: 10ch; }
.schools-hub-notebook { padding: clamp(1.5rem, 3vw, 2.5rem); border: 1px solid var(--v2-border-strong); border-radius: .75rem; background: var(--v2-surface-card); box-shadow: var(--v2-shadow-neutral-card); }
.schools-hub-cycle { list-style: none; margin: 0; padding: 0; }
.schools-hub-cycle li { display: flex; gap: 1.25rem; padding-block: 1.25rem; border-top: 1px solid var(--v2-border-default); }
.schools-hub-cycle li:last-child { padding-bottom: 0; }
.schools-hub-cycle li > span { color: var(--v2-text-link-hover); font: 650 1.3rem var(--v2-font-display); padding-top: .1rem; }
.schools-hub-cycle h2 { font-size: 1.6rem; margin-bottom: .4rem; }
.schools-hub-cycle p { font-size: .85rem; color: var(--v2-text-secondary); }
.schools-audience-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.4rem; }
.schools-page .schools-audience-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--v2-border-default); border-radius: .9rem; background: var(--v2-surface-card); color: var(--v2-text-primary); text-decoration: none; transition: border-color var(--v2-transition-fast), box-shadow var(--v2-transition-fast); }
.schools-page .schools-audience-card:hover { border-color: var(--v2-text-link); box-shadow: var(--v2-shadow-neutral-md); }
.schools-audience-card > img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; border-bottom: 1px solid var(--v2-border-default); }
.schools-audience-card > div { display: flex; flex: 1; flex-direction: column; padding: 1.5rem; }
.schools-audience-card .schools-eyebrow { font-size: .63rem; letter-spacing: .075em; margin-bottom: .8rem; }
.schools-audience-card h3 { font-size: 1.65rem; }
.schools-audience-card p:not(.schools-eyebrow) { color: var(--v2-text-secondary); font-size: .9rem; }
.schools-audience-card span { display: flex; align-items: center; gap: .75rem; margin-top: auto; padding-top: 1.4rem; color: var(--v2-text-link-hover); font-size: .82rem; font-weight: 700; }
.schools-hub-decisions { padding-block: .5rem; }
.schools-hub-decisions ul { padding-left: 1.15rem; margin: 1.25rem 0; }
.schools-hub-decisions li { color: var(--v2-text-secondary); font-size: .9rem; padding-block: .45rem; }
.schools-hub-decisions strong { color: var(--v2-text-primary); }
.schools-hub-decisions > p { color: var(--v2-text-secondary); font-size: .8rem; }
.schools-secondary .schools-hero { background: radial-gradient(ellipse at 85% 30%, color-mix(in srgb, var(--v2-brand-secondary) 12%, transparent), transparent 60%), var(--v2-surface-lowered); }
.schools-secondary-visual { min-width: 0; padding: 1.25rem; border: 1px solid var(--v2-border-strong); border-radius: .75rem; background: var(--v2-surface-card); box-shadow: var(--v2-shadow-neutral-lg); }
.schools-secondary-visual .schools-board-label { line-height: 1.5; }
.schools-page .schools-visual-caption { margin-block: 1rem; color: var(--v2-text-secondary); font-size: .85rem; }
.schools-high .schools-hero { background: linear-gradient(130deg, var(--v2-surface-lowered), color-mix(in srgb, var(--v2-brand-secondary) 8%, var(--v2-surface-page))); }
.schools-high .schools-hero h1 { padding-left: 1.2rem; border-left: 4px solid var(--v2-brand-secondary); }
.schools-high .schools-hero h1 span { color: var(--v2-text-primary); }
.schools-subject-grid .schools-grade-card h3 { margin-top: 0; }
.schools-subject-grid .schools-example { margin-top: 1.5rem; }
.schools-format-feature { display: grid; grid-template-columns: 1.1fr 1fr; gap: 4rem; align-items: start; }
.schools-format-feature .schools-section-heading { margin-bottom: 0; }
.schools-format-feature .schools-text-link { margin-top: 1.5rem; }
.schools-teaching-note { padding: 2rem; background: color-mix(in srgb, var(--v2-brand-accent) 12%, var(--v2-surface-lowered)); border-left: 3px solid var(--v2-brand-accent); }
.schools-teaching-note h3 { font-size: 1.8rem; }
.schools-teaching-note li, .schools-teaching-note > p:not(.schools-eyebrow) { font-size: .9rem; color: var(--v2-text-secondary); }
.schools-teaching-note ul { padding-left: 1.1rem; margin-bottom: 0; }
.schools-teaching-note li { padding-block: .4rem; }
.schools-course-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3rem; }
.schools-course-grid article { display: flex; gap: 1.3rem; padding-block: 2rem; border-top: 1px solid var(--v2-border-strong); }
.schools-course-marker { flex-shrink: 0; font: 650 1.25rem var(--v2-font-display); color: var(--v2-text-link-hover); }
.schools-course-grid h3 { font-size: 1.5rem; }
.schools-course-grid p { font-size: .9rem; color: var(--v2-text-secondary); }
.schools-page .schools-course-question { margin-top: 1rem; padding-left: 1rem; border-left: 2px solid var(--v2-border-strong); color: var(--v2-text-primary); }
.schools-course-question span { display: block; font-size: .65rem; text-transform: uppercase; letter-spacing: .08em; color: var(--v2-text-secondary); margin-bottom: .3rem; }

@media (max-width: 960px) {
    .schools-hero-grid { gap: 2rem; }
    .schools-playboard { padding: 1rem; transform: none; }
    .schools-grade-grid { gap: .8rem; }
    .schools-grade-label { align-items: start; flex-direction: column; gap: .1rem; }
    .schools-steps { gap: 1.5rem; }
    .schools-adoption-grid, .schools-routines { gap: 2.5rem; }
    .schools-benefit-strip { gap: 1rem; }
    .schools-audience-grid { gap: .8rem; }
    .schools-audience-card > div { padding: 1.15rem; }
    .schools-format-feature { gap: 2rem; }
}

@media (max-width: 720px) {
    .schools-hero-grid, .schools-grade-grid, .schools-routines, .schools-adoption-grid { grid-template-columns: 1fr; }
    .schools-hero-copy { max-width: 36rem; }
    .schools-playboard { max-width: 34rem; margin-top: 1rem; }
    .schools-page h1 { font-size: clamp(2.6rem, 8.5vw, 3.7rem); }
    .schools-benefit-strip { grid-template-columns: 1fr; padding-block: 1.5rem; gap: 1.1rem; }
    .schools-grade-label { flex-direction: row; align-items: center; }
    .schools-grade-card { padding: 1.6rem; }
    .schools-steps { grid-template-columns: 1fr; gap: 2rem; }
    .schools-step-number { font-size: 2rem; margin-bottom: .7rem; }
    .schools-faq-grid { grid-template-columns: 1fr; gap: 1.5rem; }
    .schools-routines .schools-section-heading { margin-bottom: 0; }
    .schools-final { margin-bottom: 3rem; }
    .schools-audience-grid, .schools-format-feature, .schools-course-grid { grid-template-columns: 1fr; }
    .schools-audience-grid { gap: 1.5rem; }
    .schools-hub .schools-hero h1 { max-width: none; }
    .schools-secondary-visual { padding: .9rem; }
    .schools-format-feature { gap: 2rem; }
    .schools-course-grid article { padding-block: 1.5rem; }
    .schools-teaching-note { padding: 1.5rem; }
}

@media (max-width: 480px) {
    .schools-level-nav > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .2rem .8rem; }
    .schools-level-nav a { font-size: .75rem; }
}

@media (max-width: 400px) {
    .schools-actions { flex-direction: column; align-items: stretch; }
    .schools-actions wa-button { width: 100%; }
    .schools-board-label { font-size: .8rem; }
}

@media (prefers-reduced-motion: reduce) {
    .schools-page *, .schools-page *::before, .schools-page *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
