/* Classroom — outcomes up front, classes as cards, warm and clear. */
:root { --t-font-display: "Fraunces", Georgia, serif; --t-font-body: "Nunito Sans", system-ui, sans-serif; --t-max: 1120px; --t-radius: 16px; --t-size-1: 1rem; }

/* board hero: a dark-green "board" panel with chalk-white text */
.t-hero--board { padding-block: clamp(20px, 4vw, 36px) 0; }
.t-hero--board .t-hero__inner { background: var(--t-accent); color: var(--t-on-accent); border-radius: var(--t-radius); padding: clamp(24px, 4vw, 44px); box-shadow: inset 0 0 0 6px color-mix(in srgb, var(--t-on-accent) 18%, transparent), var(--t-shadow); gap: 24px; }
.t-hero--board .t-eyebrow, .t-hero--board .t-tagline, .t-hero--board .t-meta { color: var(--t-on-accent); opacity: .85; }
.t-hero--board .t-photo { width: clamp(112px, 15vw, 150px); border-radius: var(--t-radius); box-shadow: 0 0 0 4px var(--t-on-accent); }
.t-hero--board .t-name { font-weight: 500; font-size: clamp(2.2rem, 5vw, 3.4rem); }
.t-hero--board .t-headline { font-size: var(--t-size-3); }
.t-hero--board .btn-primary { --bs-btn-bg: var(--t-on-accent); --bs-btn-color: var(--t-accent); --bs-btn-border-color: var(--t-on-accent); --bs-btn-hover-bg: var(--t-on-accent); --bs-btn-hover-color: var(--t-accent); --bs-btn-hover-border-color: var(--t-on-accent); --bs-btn-active-bg: var(--t-on-accent); --bs-btn-active-color: var(--t-accent); }
.t-hero--board .btn-outline-primary { --bs-btn-color: var(--t-on-accent); --bs-btn-border-color: var(--t-on-accent); --bs-btn-hover-bg: rgba(255,255,255,.12); --bs-btn-hover-color: var(--t-on-accent); --bs-btn-hover-border-color: var(--t-on-accent); }
.t-hero--board .t-link { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.35); color: var(--t-on-accent); }
.t-hero--board .t-link:hover { color: var(--t-on-accent); border-color: var(--t-on-accent); }
.t-hero--board .t-link__handle { color: var(--t-on-accent); opacity: .8; }
.t-hero--board .t-stats strong, .t-hero--board .t-stats span { color: var(--t-on-accent); }

.t-section__title { font-weight: 500; }
.t-section--summary .t-section__title { display: none; }
.t-summary { font-size: var(--t-size-3); max-width: 60ch; }

/* outcomes as big numbers */
.t-section--achievements .t-list { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 14px; }
.t-section--achievements .t-list li { display: grid; gap: 4px; padding: 16px 18px; background: var(--t-surface); border: 1px solid var(--t-line); border-radius: var(--t-radius); }
.t-section--achievements .t-list strong { font-family: var(--t-font-display); font-size: var(--t-size-3); font-weight: 500; line-height: 1.2; }

/* classes as cards with the price and a join line */
.t-cards--services .card { border-block-start: 4px solid var(--t-accent); }
.t-cards--services .t-item__title { font-family: var(--t-font-display); font-weight: 500; font-size: 1.3rem; }
.t-quote { background: var(--t-surface2); border: 0; }
.t-quote blockquote { font-size: var(--t-size-2); }
.t-rail .t-section { background: var(--t-surface); border: 1px solid var(--t-line); border-radius: var(--t-radius); padding: 16px 18px; }
.t-rail .t-section__title { font-family: var(--t-font-body); font-size: var(--t-size-0); text-transform: uppercase; letter-spacing: .1em; color: var(--t-muted); font-weight: 800; margin-block-end: 10px; }
.t-footer { border: 0; }
