/** Shared frontend readability rules. No admin/editor or form behaviour changes. */
body.tma-next :is(h1,h2,h3,h4,legend){font-family:var(--tma-font-body);text-transform:none;letter-spacing:-.025em;font-weight:700;line-height:1.25;text-wrap:pretty;overflow-wrap:break-word}
body.tma-next h1{font-size:var(--tma-type-display-1);line-height:var(--tma-leading-display)}
body.tma-next h2{font-size:var(--tma-type-display-2)}
body.tma-next h3{font-size:var(--tma-type-lg)}
body.tma-next :is(.tma-event-card h2,.tma-faculty-card h2,legend){font-size:var(--tma-type-xl)}
body.tma-next :is(.tma-eyebrow,.tma-step-kicker,.tma-field>span,.tma-course-menu__title b,.tma-course-menu__header strong,.tma-teacher-blurb strong,.tma-partner-card__copy strong){text-transform:none;letter-spacing:0;line-height:1.4}
body.tma-next :is(.tma-eyebrow,.tma-step-kicker,.tma-field>span){font-size:var(--tma-type-sm)}
body.tma-next :is(.tma-section__intro,.tma-explorer__intro){margin-bottom:3.2rem}
body.tma-next :is(.tma-page-hero__lead,.tma-hero__lead){font-size:var(--tma-type-md);line-height:1.7;max-width:62ch;color:var(--tma-white)}
body.tma-next :is(.tma-explorer-card p,.tma-program-card p,.tma-program-card li,.tma-home-course-card p,.tma-faculty-card p,.tma-learning-card p,.tma-module-tile p,.tma-teacher-blurb em){font-size:var(--tma-type-base);line-height:1.65}
body.tma-next :is(.tma-choice-grid small,.tma-field>small,.tma-enrollment-card .tma-choice-grid small,.tma-enrollment-card .tma-field>small){font-size:var(--tma-type-sm);line-height:1.6}
body.tma-next :is(.tma-header,.tma-header.is-stuck){background:var(--tma-ink);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body.tma-next .tma-utility nav{font-size:var(--tma-type-xs);letter-spacing:0;text-transform:none}
body.tma-next .tma-course-menu__header{background:var(--tma-surface);color:var(--tma-white)}
body.tma-next .tma-course-menu__header :is(.tma-eyebrow,.tma-mega__label){color:var(--tma-cyan)}
body.tma-next .tma-nav__trigger>button{min-width:44px;min-height:44px}
body.tma-next [data-nav-ready] .tma-nav__group:not(.is-open)>.tma-mega{display:none}
body.tma-next .tma-course-menu section>nav a{height:auto;min-height:44px;padding:.8rem 1.2rem;font-size:var(--tma-type-sm);line-height:1.4}
body.tma-next .tma-page-hero{min-height:400px;background:var(--tma-surface)}
body.tma-next .tma-page-hero--compact{min-height:280px}
body.tma-next .tma-page-hero__content{padding-block:4.8rem}
body.tma-next .tma-hero{min-height:560px}
body.tma-next .tma-hero__content{padding-block:6.4rem}
body.tma-next :is(.tma-hero__media,.tma-page-hero__media){background-image:linear-gradient(90deg,rgba(36,40,50,.96),rgba(36,40,50,.8) 58%,rgba(36,40,50,.28)),var(--hero-image)}
body.tma-next .tma-hero--home .tma-hero__media::after{background:linear-gradient(90deg,rgba(36,40,50,.95),rgba(36,40,50,.8) 58%,rgba(36,40,50,.3))}
body.tma-next :is(.tma-final-cta,.tma-footer,.tma-wizard-section,.tma-enrollment-section,.tma-home-finder,.tma-contact-section){background:var(--tma-ink)}
body.tma-next :is(.tma-button,.tma-button:hover){box-shadow:none;transform:none;border-radius:10px;padding:1.2rem 1.8rem;min-height:48px;color:var(--tma-accent-text)!important;transition:background .15s,border-color .15s}
body.tma-next .tma-button:is(.tma-button--ghost,.tma-button--dark){color:var(--tma-white)!important}
body.tma-next :is(.tma-button--ghost:hover,.tma-button--dark:hover){background:var(--tma-surface-2);border-color:var(--tma-muted);color:var(--tma-white)!important}
body.tma-next .tma-button--dark-ghost{color:var(--tma-ink)!important}
body.tma-next :is(.tma-actions,.tma-enrollment-success__actions){gap:1.2rem}
body.tma-next :is(.tma-info-card,.tma-faculty-card,.tma-teacher-blurb,.tma-partner-card,.tma-event-card,.tma-home-course-card,.tma-explorer-card,.tma-program-card,.tma-portal-card){background:var(--tma-card);box-shadow:none}
body.tma-next :is(.tma-faculty-card,.tma-event-card,.tma-partner-card,.tma-explorer-card,.tma-portal-card):hover{box-shadow:none;transform:none;border-color:var(--tma-cyan-ink)}
body.tma-next :is(.tma-teacher-blurb,.tma-path-card,.tma-learning-card,.tma-home-course-card,.tma-info-card):hover{box-shadow:none;transform:none}
body.tma-next :is(.tma-faculty-card,.tma-event-card,.tma-home-gallery,.tma-partner-card):hover img{transform:none}
body.tma-next :is(.tma-card-grid,.tma-faculty-grid,.tma-path-grid,.tma-news-grid,.tma-location-grid,.tma-event-grid,.tma-partner-grid){gap:2.4rem}
body.tma-next :is(.tma-info-card,.tma-faculty-card__content,.tma-event-card__body,.tma-home-course-card,.tma-news-card){padding:2.4rem}
body.tma-next .tma-home-course-card{min-height:280px}
body.tma-next .tma-home-course-card small{margin-top:0;margin-bottom:1rem}
body.tma-next .tma-home-course-card h3{line-height:1.3}
body.tma-next .tma-explorer__intro h2{max-width:24ch}
body.tma-next .tma-explorer__search{min-width:0;width:min(100%,340px)}
body.tma-next .tma-explorer__search input{font-size:var(--tma-type-base)}
body.tma-next .tma-explorer-card__visual.is-graphic{background:var(--tma-surface-2);aspect-ratio:auto;min-height:100px;border-bottom:3px solid var(--tma-cyan)}
body.tma-next .tma-explorer-card__visual.is-graphic::after{display:none}
body.tma-next .tma-explorer-card__visual>span{display:none}
body.tma-next .tma-program-card{border-top:1px solid var(--tma-line-dark)}
body.tma-next .tma-facts{background:var(--tma-surface);color:var(--tma-white);border-bottom:2px solid var(--tma-cyan)}
body.tma-next .tma-facts span{padding:1.6rem;border-color:var(--tma-line);font-weight:600}
body.tma-next .tma-teacher-blurb{padding:1.6rem;gap:1.6rem}
body.tma-next .tma-teacher-blurb strong{font-size:var(--tma-type-md)}
body.tma-next .tma-teacher-blurb em{display:block;overflow:visible;-webkit-line-clamp:unset}
body.tma-next :is(.tma-wizard,.tma-enrollment.tma-enrollment-card,.tma-wizard-preview,.tma-enrollment-sidebar,.tma-contact-form){background:var(--tma-surface);box-shadow:none}
body.tma-next :is(.tma-wizard,.tma-enrollment-card__inner){padding:clamp(1.6rem,3vw,3.2rem)}
body.tma-next .tma-enrollment-progress i{background:var(--tma-cyan)}
body.tma-next .tma-wizard-preview__visual{background:var(--tma-surface-2);aspect-ratio:2.6}
body.tma-next .tma-wizard-preview__pulse{display:none}
body.tma-next .tma-wizard-preview__visual>b{font-size:3.2rem;line-height:1.2}
body.tma-next .tma-wizard-preview>p:not(.tma-wizard-preview__label){min-height:0}
body.tma-next .tma-wizard-preview{padding:2rem}
body.tma-next :is(.tma-field input,.tma-field select,.tma-field textarea,.tma-enrollment-card .tma-field input,.tma-enrollment-card .tma-field select,.tma-enrollment-card .tma-field textarea){background-color:var(--tma-ink);color:var(--tma-white);border-color:var(--tma-line);font-size:var(--tma-type-base);padding:1.2rem;line-height:1.5;color-scheme:dark}
body.tma-next :is(.tma-field input,.tma-field textarea)::placeholder{color:var(--tma-muted);opacity:1}
body.tma-next .tma-field option{background:var(--tma-ink);color:var(--tma-white)}
body.tma-next .tma-choice-grid label>span{padding:1.6rem;transform:none}
body.tma-next .tma-choice-grid--instruments label>span{padding-top:5.6rem}
body.tma-next .tma-choice-grid input:checked+span{transform:none;color:var(--tma-accent-text)}
body.tma-next .tma-choice-grid input:checked+span :is(b,small){color:var(--tma-accent-text)}
body.tma-next .tma-course-group{padding:1.6rem}
body.tma-next .tma-form-status.is-success{color:var(--tma-cyan)}
body.tma-next :is(.tma-field>span,.tma-group-label){color:var(--tma-white)}
body.tma-next .tma-event-filters{position:static;display:flex;flex-wrap:wrap;overflow:visible;white-space:normal;gap:8px;padding:0;background:transparent;box-shadow:none;border:0;border-radius:0;margin:0 0 3.2rem}
body.tma-next .tma-event-filters a{min-height:44px;white-space:normal;border:1px solid var(--tma-line-dark);border-radius:8px;padding:1rem 1.6rem;transform:none}
body.tma-next .tma-footer__grid{gap:3.2rem}
body.tma-next .tma-footer a{overflow-wrap:anywhere}
body.tma-next .tma-footer h2{font-size:var(--tma-type-display-3)}
body.tma-next .tma-footer h3{font-size:var(--tma-type-base);letter-spacing:0}
body.tma-next .tma-post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:2.4rem}
body.tma-next .tma-post-card{overflow:hidden;border:1px solid var(--tma-line);border-radius:12px;background:var(--tma-surface)}
body.tma-next .tma-post-card>div{padding:2.4rem}
body.tma-next .tma-post-card h2{font-size:var(--tma-type-xl);margin-block:1rem}
body.tma-next .tma-post-card img{width:100%;height:220px;object-fit:cover}
body.tma-next .tma-post-card time{font-size:var(--tma-type-sm);color:var(--tma-muted)}
body.tma-next .tma-editorial-sections>article{grid-template-columns:1fr;padding-block:2.8rem}
body.tma-next .tma-editorial-sections>article>span{display:none}
/* Visible keyboard focus remains distinct on both surface families. */
body.tma-next :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--tma-cyan);outline-offset:4px;box-shadow:none}
body.tma-next .tma-section--paper :is(a,button,input,select,textarea,summary):focus-visible,body.tma-next .tma-mega :is(a,button):focus-visible{outline-color:var(--tma-cyan-ink)}
@media(max-width:1080px){body.tma-next .tma-nav{background:var(--tma-ink);box-shadow:none}body.tma-next .tma-nav.is-open{transform:none}}
@media(max-width:760px){
  body.tma-next .tma-page-hero{min-height:320px}
  body.tma-next .tma-page-hero--compact{min-height:240px}
  body.tma-next .tma-page-hero__content{padding-block:3.2rem}
  body.tma-next .tma-hero{min-height:480px}
  body.tma-next .tma-hero__content{padding-block:4.8rem}
  body.tma-next :is(.tma-info-card,.tma-faculty-card__content,.tma-event-card__body,.tma-home-course-card,.tma-news-card){padding:2rem}
  body.tma-next .tma-section__intro--split{gap:2rem}
  body.tma-next .tma-editorial-sections>article{grid-template-columns:1fr;gap:1rem}
}
@media(max-width:400px){body.tma-next .tma-footer__grid{grid-template-columns:1fr}body.tma-next .tma-choice-grid--four{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body.tma-next *,body.tma-next *::before,body.tma-next *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html{scroll-behavior:auto}}
