/* Plus Jakarta Sans Variable, SIL OFL 1.1, self-hosted */
@font-face{font-family:"Plus Jakarta Sans Variable";font-style:normal;font-display:swap;font-weight:200 800;
src:url(/fonts/plus-jakarta-sans-latin-ext.woff2) format("woff2-variations");
unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plus Jakarta Sans Variable";font-style:normal;font-display:swap;font-weight:200 800;
src:url(/fonts/plus-jakarta-sans-latin.woff2) format("woff2-variations");
unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Transparent Academy brand tokens v1.0 — mirror of brand/tokens.json.
   Change both together (brand/tools/check_contrast.py reads tokens.json). */
:root {
  --ta-navy: #16213d;
  --ta-sky-100: #e3f1fd;
  --ta-sky-300: #80d6fb;
  --ta-sky-500: #bfe6fb;
  --ta-mint: #62eba3;
  --ta-link: #1b5fd0;
  --ta-bg: #f3f8fe;
  --ta-surface: #ffffff;
  --ta-text: #16213d;
  --ta-text-muted: #4b5878;
  --ta-line: #d5e3f3;
  --ta-success: #166b43;
  --ta-warning: #8a4b00;
  --ta-error: #b3261e;

  --ta-font: "Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --ta-fs-small: 0.875rem;
  --ta-fs-body: 1rem;
  --ta-fs-body-lg: 1.125rem;
  --ta-fs-h4: 1.25rem;
  --ta-fs-h3: 1.5rem;
  --ta-fs-h2: 2rem;
  --ta-fs-h1: 2.75rem;
  --ta-fs-display: 3.75rem;
  --ta-fs-display-max: 4.75rem;

  --ta-space-1: 4px;
  --ta-space-2: 8px;
  --ta-space-3: 12px;
  --ta-space-4: 16px;
  --ta-space-5: 24px;
  --ta-space-6: 32px;
  --ta-space-7: 48px;
  --ta-space-8: 64px;
  --ta-space-9: 96px;

  --ta-radius-s: 8px;
  --ta-radius-m: 16px;
  --ta-radius-l: 28px;
  --ta-radius-pill: 999px;

  --ta-shadow-card: 0 1px 2px rgba(22, 33, 61, 0.06), 0 8px 24px rgba(22, 33, 61, 0.08);
  --ta-shadow-raised: 0 2px 4px rgba(22, 33, 61, 0.08), 0 16px 40px rgba(22, 33, 61, 0.14);

  --ta-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ta-target: 44px;
}

/* base.css */
:root{--ta-input-border:#6f82a3;--ta-star:#c77700;--ta-whatsapp:#128c4a}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--ta-bg);color:var(--ta-text);font-family:var(--ta-font);font-size:var(--ta-fs-body);line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--ta-link)}
h1,h2,h3,h4{font-weight:700;line-height:1.15;margin:0;text-wrap:balance;color:var(--ta-navy)}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:2px solid var(--ta-link);outline-offset:2px;border-radius:4px}
::selection{background:var(--ta-sky-300);color:var(--ta-navy)}
.ta-container{width:min(100% - 2rem,1200px);margin-inline:auto}
.ta-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ta-skip{position:absolute;left:8px;top:-60px;background:var(--ta-navy);color:#fff;padding:12px 16px;border-radius:8px;z-index:100}
.ta-skip:focus{top:8px}
.ta-center{display:flex;justify-content:center;margin-top:var(--ta-space-6)}

/* Section shell: the style controls every block shares */
.ta-section{position:relative}
.ta-bg-canvas{background:var(--ta-bg)}
.ta-bg-white{background:#fff}
.ta-bg-sky{background:var(--ta-sky-100)}
.ta-bg-navy{background:var(--ta-navy);color:#fff}
.ta-bg-navy :is(h1,h2,h3,h4){color:#fff}
.ta-pt-none{padding-top:0}.ta-pt-s{padding-top:32px}.ta-pt-m{padding-top:56px}.ta-pt-l{padding-top:88px}
.ta-pb-none{padding-bottom:0}.ta-pb-s{padding-bottom:32px}.ta-pb-m{padding-bottom:56px}.ta-pb-l{padding-bottom:88px}
.ta-w-wide .ta-container{width:min(100% - 2rem,1400px)}
.ta-w-full .ta-container{width:min(100% - 2rem,1200px)}
.ta-align-center{text-align:center}
.ta-align-center :is(.ta-card,.ta-feature,.ta-story,.ta-coursecard,.ta-person,.ta-panel .ta-coursecard){text-align:start}
@media (max-width:767px){.ta-hide-mobile{display:none}.ta-pt-l{padding-top:56px}.ta-pb-l{padding-bottom:56px}.ta-pt-m{padding-top:40px}.ta-pb-m{padding-bottom:40px}}
@media (min-width:768px){.ta-hide-desktop{display:none}}

/* Buttons */
.ta-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ta-space-3);min-height:48px;padding:0 var(--ta-space-5);border-radius:var(--ta-radius-pill);border:0;font:600 var(--ta-fs-body)/1.2 var(--ta-font);text-decoration:none;cursor:pointer;transition:transform 120ms var(--ta-ease),background-color 160ms var(--ta-ease),box-shadow 160ms var(--ta-ease)}
.ta-btn:active{transform:scale(.98)}
.ta-btn[disabled]{opacity:.6;cursor:progress}
.ta-btn--primary{background:var(--ta-navy);color:#fff}
.ta-btn--primary:hover{background:#243566}
.ta-btn--secondary{background:var(--ta-sky-300);color:var(--ta-navy)}
.ta-btn--secondary:hover{background:#6ccbf3}
.ta-btn--light{background:#fff;color:var(--ta-navy)}
.ta-btn--light:hover{background:var(--ta-sky-100)}
.ta-btn--accent{background:var(--ta-mint);color:var(--ta-navy)}
.ta-btn--accent:hover{background:#4fe093}
.ta-btn--sm{min-height:44px;padding:0 20px;font-size:.9375rem}
.ta-btn--block{width:100%}
.ta-btn__chip{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--ta-navy);color:#fff;margin-right:-12px}
.ta-pill{display:inline-block;background:var(--ta-navy);color:#fff;font-weight:600;font-size:var(--ta-fs-small);padding:6px 16px;border-radius:var(--ta-radius-pill)}
.ta-pill--light{background:#fff;color:var(--ta-navy);font-size:1rem;padding:8px 20px}
.ta-badge{display:inline-flex;align-items:center;gap:8px;background:var(--ta-mint);color:var(--ta-navy);font-weight:600;font-size:var(--ta-fs-small);padding:6px 14px;border-radius:var(--ta-radius-pill);margin-bottom:var(--ta-space-4)}
.ta-badge__dot{width:8px;height:8px;border-radius:50%;background:var(--ta-navy);animation:ta-pulse 1.6s ease-in-out infinite}
@keyframes ta-pulse{50%{opacity:.35;transform:scale(.8)}}
.ta-card{background:#fff;border:1px solid var(--ta-line);border-radius:var(--ta-radius-l);padding:var(--ta-space-6);box-shadow:var(--ta-shadow-card)}
.ta-sechead{margin-bottom:var(--ta-space-7);display:grid;gap:var(--ta-space-3);justify-items:inherit}
.ta-sechead h1,.ta-sechead h2{font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:800}
.ta-sechead p{color:var(--ta-text-muted);font-size:var(--ta-fs-body-lg);max-width:62ch}
.ta-align-center .ta-sechead{justify-items:center}
.ta-align-center .ta-sechead p{margin-inline:auto}
.ta-sub{color:var(--ta-text-muted)}
.ta-chips{display:flex;flex-wrap:wrap;gap:8px}
.ta-chips li{border:1px solid var(--ta-line);background:#fff;border-radius:var(--ta-radius-pill);padding:4px 14px;font-size:var(--ta-fs-small);color:var(--ta-text)}
.ta-chips--lg li{padding:8px 18px;font-size:1rem;background:var(--ta-sky-100);border-color:transparent;font-weight:600;color:var(--ta-navy)}
.ta-footnote{color:var(--ta-text-muted);font-size:var(--ta-fs-small);margin-top:var(--ta-space-4)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* chrome.css */
.ta-topbar{background:var(--ta-sky-100);font-size:var(--ta-fs-small)}
.ta-topbar .ta-container{display:flex;gap:var(--ta-space-5);flex-wrap:wrap;padding-block:4px}
.ta-topbar a{color:var(--ta-navy);text-decoration:none;min-height:36px;display:inline-flex;align-items:center;gap:6px}
.ta-topbar a:hover{text-decoration:underline}
.ta-header{background:#fff;border-bottom:1px solid var(--ta-line);position:sticky;top:0;z-index:40}
.ta-header__row{display:flex;align-items:center;justify-content:space-between;gap:var(--ta-space-5);min-height:76px}
.ta-brand{display:flex;align-items:center;gap:var(--ta-space-3);text-decoration:none;color:var(--ta-navy)}
.ta-brand img{height:48px;width:auto}
.ta-brand b{display:block;font-size:1.25rem;line-height:1.1;font-weight:700}
.ta-brand small{display:block;font-size:var(--ta-fs-small);color:var(--ta-text-muted)}
.ta-brand--light,.ta-brand--light small{color:#fff}
.ta-brand--light small{opacity:.85}
.ta-navwrap{position:relative}
.ta-menubtn{display:none;width:48px;height:48px;border:1px solid var(--ta-line);border-radius:var(--ta-radius-pill);background:#fff;color:var(--ta-navy);place-items:center;cursor:pointer}
.ta-nav{display:flex;align-items:center;gap:var(--ta-space-2)}
.ta-nav__item{position:relative}
.ta-nav__link{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;color:var(--ta-navy);font:600 1rem/1 var(--ta-font);text-decoration:none;background:none;border:0;border-radius:var(--ta-radius-pill);cursor:pointer}
.ta-nav__link:hover{background:var(--ta-sky-100)}
.ta-dropdown{display:none;position:absolute;right:0;top:calc(100% + 8px);width:min(360px,90vw);background:#fff;border:1px solid var(--ta-line);border-radius:var(--ta-radius-m);box-shadow:var(--ta-shadow-raised);padding:8px;z-index:50}
.ta-dropdown.is-open{display:block}
.ta-dropdown a{display:block;padding:12px 14px;border-radius:12px;color:var(--ta-navy);text-decoration:none;font-weight:500}
.ta-dropdown a:hover{background:var(--ta-sky-100)}
@media (max-width:899px){
  .ta-menubtn{display:grid}
  .ta-nav{display:none;position:absolute;right:0;top:calc(100% + 8px);width:min(340px,92vw);flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--ta-line);border-radius:var(--ta-radius-m);box-shadow:var(--ta-shadow-raised);padding:12px;gap:4px}
  .ta-nav.is-open{display:flex}
  .ta-dropdown{position:static;box-shadow:none;border:0;width:100%;padding:0 0 0 12px}
  .ta-nav__link{justify-content:space-between}
}
.ta-footer{background:var(--ta-navy);color:#fff;margin-top:var(--ta-space-9)}
.ta-footer h2{color:#fff;font-size:1rem;margin-bottom:var(--ta-space-4)}
.ta-footer a{color:#fff;text-decoration:none}
.ta-footer a:hover{text-decoration:underline}
.ta-footer__grid{display:grid;grid-template-columns:1.3fr .8fr .8fr 1.5fr;gap:var(--ta-space-7);padding-block:var(--ta-space-8)}
.ta-footer li{margin-bottom:8px}
.ta-footer nav a{display:inline-flex;min-height:32px;align-items:center}
.ta-footer__map{display:flex;gap:12px;margin-top:var(--ta-space-5);font-size:var(--ta-fs-small);line-height:1.5}
.ta-footer__lead{font-size:var(--ta-fs-small);margin-bottom:var(--ta-space-3);color:#d6def0}
.ta-footer__bar{border-top:1px solid rgba(255,255,255,.18)}
.ta-footer__bar .ta-container{display:flex;flex-wrap:wrap;gap:var(--ta-space-4);justify-content:space-between;padding-block:var(--ta-space-4);font-size:var(--ta-fs-small)}
.ta-footer__bar ul{display:flex;gap:var(--ta-space-5)}
.ta-footer__bar li{margin:0}
@media (max-width:899px){.ta-footer__grid{grid-template-columns:1fr 1fr}.ta-footer__brand,.ta-footer__grid>div:last-child{grid-column:1/-1}}
@media (max-width:520px){.ta-footer__grid{grid-template-columns:1fr}}
.ta-whatsapp{position:fixed;right:16px;bottom:16px;z-index:45;width:56px;height:56px;border-radius:50%;background:var(--ta-whatsapp);color:#fff;display:grid;place-items:center;box-shadow:var(--ta-shadow-raised)}
.ta-whatsapp:hover{filter:brightness(1.1)}
.ta-dialog{border:0;border-radius:var(--ta-radius-l);padding:0;width:min(520px,92vw);max-height:92vh;color:var(--ta-text);box-shadow:var(--ta-shadow-raised)}
.ta-dialog::backdrop{background:rgba(22,33,61,.6)}
.ta-dialog__body{padding:var(--ta-space-6);display:grid;gap:var(--ta-space-4)}
.ta-dialog__body h2{font-size:1.5rem;padding-right:48px}
.ta-dialog__close{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:var(--ta-sky-100);color:var(--ta-navy);display:grid;place-items:center;cursor:pointer}
/* Forms */
.ta-form{display:grid;gap:var(--ta-space-4)}
.ta-field{display:grid;gap:6px}
.ta-field label{font-weight:600;font-size:.9375rem;color:var(--ta-navy)}
.ta-field input:not([type=checkbox]),.ta-field select,.ta-field textarea{width:100%;min-height:48px;padding:10px 14px;border:1.5px solid var(--ta-input-border);border-radius:12px;background:#fff;font:400 1rem/1.4 var(--ta-font);color:var(--ta-text)}
.ta-field textarea{min-height:96px;resize:vertical}
.ta-field input:focus-visible,.ta-field select:focus-visible,.ta-field textarea:focus-visible{outline:2px solid var(--ta-link);outline-offset:1px}
.ta-field [aria-invalid=true]{border-color:var(--ta-error)}
.ta-field__err{color:var(--ta-error);font-size:.875rem;font-weight:500}
.ta-field--check{grid-template-columns:24px 1fr;align-items:start;column-gap:12px}
.ta-field--check input{width:24px;height:24px;margin:2px 0 0;accent-color:var(--ta-navy)}
.ta-field--check label{font-weight:400;font-size:.875rem;line-height:1.5;color:var(--ta-text-muted)}
.ta-field--check .ta-field__err{grid-column:2}
.ta-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.ta-form__done{background:var(--ta-sky-100);border-radius:var(--ta-radius-m);padding:var(--ta-space-5);display:grid;gap:var(--ta-space-3);justify-items:start}
.ta-footer .ta-form--compact .ta-field label{color:#fff}
.ta-footer .ta-form--compact .ta-field--check label{color:#d6def0}
.ta-footer .ta-btn--primary{background:#fff;color:var(--ta-navy)}
.ta-footer .ta-btn--primary:hover{background:var(--ta-sky-100)}
.ta-footer .ta-form__done{background:rgba(255,255,255,.1)}
.ta-agecard{background:var(--ta-sky-100);border-radius:var(--ta-radius-m);padding:var(--ta-space-5);display:grid;gap:var(--ta-space-3);margin-top:var(--ta-space-4)}
.ta-agecard h3{font-size:1.125rem}
.ta-agecard li{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding-block:8px;border-bottom:1px solid #fff}
.ta-agecard li small{grid-column:1/-1;color:var(--ta-text-muted)}
.ta-agecard__verdict{display:inline-flex;gap:8px;align-items:center;background:var(--ta-navy);color:#fff;border-radius:var(--ta-radius-pill);padding:8px 18px;font-weight:700;justify-self:center}
.ta-agecard__blocked{color:var(--ta-error);font-weight:600}
/* touch targets: 44px floor (poluix standard) */
.ta-topbar a{min-height:44px}
.ta-footer nav a{min-height:44px}
.ta-footer__map{min-height:44px;align-items:center}
.ta-infolist a{display:inline-flex;min-height:44px;align-items:center}
.ta-ts{margin:.25rem 0}

/* blocks.css */
/* ---------- Home hero ---------- */
.ta-hero{position:relative;min-height:min(80vh,660px);display:grid;align-items:center;color:#fff;background:var(--ta-navy);isolation:isolate;overflow:hidden}
.ta-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ta-hero__scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(22,33,61,.94) 0%,rgba(22,33,61,.74) 48%,rgba(22,33,61,.3) 100%)}
.ta-hero__inner{padding-block:var(--ta-space-8)}
.ta-hero__title{color:#fff;font-size:clamp(2.25rem,5.4vw,var(--ta-fs-display));font-weight:800;line-height:1.05;margin-bottom:var(--ta-space-4)}
.ta-hero__accent{color:var(--ta-sky-300)}
.ta-hero__body{max-width:58ch;font-size:var(--ta-fs-body-lg);margin-bottom:var(--ta-space-6);color:#eaf0fb}
.ta-hero__stats{display:flex;flex-wrap:wrap;gap:var(--ta-space-4);margin-top:var(--ta-space-7)}
.ta-hero__stats li{background:rgba(255,255,255,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:var(--ta-radius-m);padding:14px 22px;min-width:132px}
.ta-hero__stats b{display:block;font-size:1.75rem;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}
.ta-hero__stats span{font-size:var(--ta-fs-small);color:#eaf0fb}

/* ---------- Course cards ---------- */
.ta-panel{background:var(--ta-sky-100);border-radius:var(--ta-radius-l);padding:clamp(20px,4vw,56px)}
.ta-coursegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ta-space-5)}
.ta-coursecard{background:#fff;border-radius:var(--ta-radius-m);padding:var(--ta-space-4);display:grid;gap:var(--ta-space-3);align-content:start;box-shadow:var(--ta-shadow-card);text-align:start}
.ta-coursecard__img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:12px}
.ta-coursecard h3{font-size:1.25rem;font-weight:600;padding-bottom:var(--ta-space-3);border-bottom:1px solid var(--ta-line);margin-top:var(--ta-space-2)}
.ta-coursecard__sum{color:var(--ta-text-muted)}
.ta-meta{display:grid;gap:6px}
.ta-meta li{display:flex;align-items:center;gap:10px;font-weight:500}
.ta-meta svg,.ta-coursecard__subjects svg{color:var(--ta-link);flex:none}
.ta-coursecard__subjects{display:grid;gap:8px;padding-top:var(--ta-space-3);border-top:1px solid var(--ta-line)}
.ta-coursecard__subjects b{display:flex;align-items:center;gap:8px;font-weight:600}
.ta-coursecard .ta-btn{justify-self:center;margin-top:auto}
@media (max-width:767px){.ta-coursegrid{grid-template-columns:1fr}}

/* ---------- Feature grid ---------- */
.ta-features{display:grid;grid-template-columns:1fr;gap:var(--ta-space-6);align-items:end}
@media (min-width:1100px){.ta-features:has(.ta-features__img){grid-template-columns:3fr 1fr}}
.ta-features__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--ta-space-4)}
.ta-feature{background:#fff;border:1px solid var(--ta-line);border-radius:var(--ta-radius-m);padding:var(--ta-space-5);display:grid;gap:var(--ta-space-3);align-content:start;text-align:start}
.ta-feature__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--ta-navy);color:#fff}
.ta-feature h3{font-size:1.0625rem;font-weight:600}
.ta-feature p{color:var(--ta-text-muted);font-size:.9375rem}
.ta-features__img{display:none;width:100%;max-height:560px;object-fit:contain;object-position:bottom}
@media (min-width:1100px){.ta-features__img{display:block}}

/* ---------- Faculty ---------- */
.ta-faculty{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--ta-space-5)}
.ta-person{background:#fff;border:1px solid var(--ta-line);border-radius:var(--ta-radius-l);padding:var(--ta-space-4) var(--ta-space-4) var(--ta-space-5);box-shadow:var(--ta-shadow-card);display:grid;gap:8px;align-content:start;text-align:center}
.ta-person__photo{aspect-ratio:4/5;border-radius:999px 999px 20px 20px;overflow:hidden;background:var(--ta-sky-100);display:grid;place-items:center;margin-bottom:var(--ta-space-2)}
.ta-person__photo img{width:100%;height:100%;object-fit:cover;object-position:top}
.ta-person__photo span{font-size:3rem;font-weight:800;color:var(--ta-navy)}
.ta-person h3{font-size:1.0625rem}
.ta-person__role{font-weight:600;color:var(--ta-link);font-size:.9375rem}
.ta-person__bio{color:var(--ta-text-muted);font-size:.875rem;line-height:1.55}
@media (max-width:1023px){.ta-faculty{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ta-faculty{grid-template-columns:1fr}}

/* ---------- Logo strip ---------- */
.ta-logostrip__title{font-size:clamp(1.25rem,2.4vw,1.75rem);margin-bottom:var(--ta-space-5)}
.ta-logostrip{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--ta-space-5) var(--ta-space-7)}
.ta-logostrip img{height:36px;width:auto;max-width:150px;object-fit:contain;filter:grayscale(1);opacity:.85}

/* ---------- Testimonials ---------- */
.ta-stories{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ta-space-5)}
.ta-story{background:#fff;border:1px solid var(--ta-line);border-radius:var(--ta-radius-m);padding:var(--ta-space-5);box-shadow:var(--ta-shadow-card);text-align:start}
.ta-story figure{margin:0;display:grid;gap:var(--ta-space-4)}
.ta-story figcaption{display:flex;align-items:center;gap:12px}
.ta-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ta-sky-300);color:var(--ta-navy);font-weight:700}
.ta-story blockquote{margin:0;line-height:1.65}
.ta-stars{display:inline-flex;gap:2px;color:var(--ta-star)}
.ta-stars svg{fill:none}
.ta-stars .is-on{fill:currentColor}
.ta-stars .is-half{fill:currentColor;fill-opacity:.45}
@media (max-width:767px){.ta-stories{grid-template-columns:1fr}}

/* ---------- Contact ---------- */
.ta-contact{display:grid;grid-template-columns:1fr 1fr;gap:var(--ta-space-5);text-align:start}
.ta-contact__form h3{margin-bottom:var(--ta-space-4);font-size:1.5rem}
.ta-contact__img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--ta-radius-m);margin-bottom:var(--ta-space-5)}
.ta-infolist{display:grid;gap:var(--ta-space-4)}
.ta-infolist li{display:flex;gap:var(--ta-space-4);align-items:flex-start}
.ta-infolist__icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:12px;background:var(--ta-sky-100);color:var(--ta-navy)}
.ta-infolist h3{font-size:1rem;margin-bottom:2px}
.ta-infolist p{color:var(--ta-text-muted);font-size:.9375rem}
.ta-infolist a{color:inherit}
@media (max-width:899px){.ta-contact{grid-template-columns:1fr}}

/* ---------- Course page ---------- */
.ta-coursehero{background:linear-gradient(135deg,var(--ta-navy) 0%,#1d3a78 62%,#1b5fd0 135%);color:#fff;padding-block:var(--ta-space-7)}
.ta-coursehero__grid{display:grid;grid-template-columns:1.35fr .9fr;gap:var(--ta-space-7);align-items:start}
.ta-coursehero h1{color:#fff;display:grid;gap:4px;margin:var(--ta-space-4) 0 var(--ta-space-3)}
.ta-coursehero__code{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;line-height:1}
.ta-coursehero__name{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:500}
.ta-coursehero__org{color:var(--ta-sky-300);font-weight:600}
.ta-coursehero__mode{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);padding:6px 18px;border-radius:var(--ta-radius-pill);margin:var(--ta-space-3) 0;font-weight:600}
.ta-coursehero__sum{font-size:var(--ta-fs-body-lg);max-width:54ch;margin-bottom:var(--ta-space-4);color:#eaf0fb}
.ta-back{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;min-height:44px;font-weight:500}
.ta-back:hover{text-decoration:underline}
.ta-facts{display:flex;flex-wrap:wrap;gap:var(--ta-space-3) var(--ta-space-5);margin-bottom:var(--ta-space-5);font-size:.9375rem}
.ta-facts li{display:inline-flex;align-items:center;gap:8px}
.ta-actions{display:flex;flex-wrap:wrap;gap:var(--ta-space-3)}
.ta-actions--center{justify-content:center;margin-top:var(--ta-space-5)}
.ta-highlights{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.3);border-radius:var(--ta-radius-m);padding:var(--ta-space-5)}
.ta-highlights h2{color:#fff;font-size:1.25rem;margin-bottom:var(--ta-space-3)}
.ta-highlights ul{display:grid;gap:12px}
.ta-highlights li{display:flex;gap:10px;align-items:flex-start}
.ta-highlights svg{color:var(--ta-mint);flex:none;margin-top:3px}
@media (max-width:899px){.ta-coursehero__grid{grid-template-columns:1fr}}

.ta-tabs__list{display:flex;flex-wrap:wrap;gap:var(--ta-space-3);justify-content:center;margin-bottom:var(--ta-space-5)}
.ta-tabs__tab{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 24px;border-radius:var(--ta-radius-pill);border:1.5px solid var(--ta-line);background:#fff;color:var(--ta-navy);font:600 1rem/1 var(--ta-font);cursor:pointer;transition:background-color 160ms var(--ta-ease)}
.ta-tabs__tab:hover{background:var(--ta-sky-100)}
.ta-tabs__tab[aria-selected=true]{background:var(--ta-navy);border-color:var(--ta-navy);color:#fff}
.ta-tabs__panel{background:#fff;border:1px solid var(--ta-line);border-radius:var(--ta-radius-l);padding:clamp(20px,3.5vw,40px);box-shadow:var(--ta-shadow-card);display:grid;gap:var(--ta-space-6);align-content:start}
.ta-tabs__panel[hidden]{display:none}
.ta-tabs--edit{display:grid;gap:var(--ta-space-5)}
.ta-tabs__editlabel{font-weight:700;color:var(--ta-link)}
.ta-subhead h2{font-size:clamp(1.5rem,2.6vw,2rem);margin-bottom:6px}
.ta-level{display:grid;grid-template-columns:44px 1fr;gap:var(--ta-space-4);padding-block:var(--ta-space-4);border-bottom:1px solid var(--ta-line)}
.ta-level:last-child{border-bottom:0}
.ta-level__n{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ta-sky-100);color:var(--ta-navy);font-weight:700}
.ta-level h3{font-size:1.25rem}
.ta-level__dur{color:var(--ta-text-muted);font-size:var(--ta-fs-small)}
.ta-level__intro{margin-top:8px;color:var(--ta-text-muted)}
.ta-papers{margin-top:var(--ta-space-3)}
.ta-papers h4{font-size:1rem;margin-bottom:6px}
.ta-papers ul{list-style:disc;padding-left:1.25rem;display:grid;gap:6px}
.ta-papers li small{display:block;color:var(--ta-text-muted);font-size:.875rem}
.ta-checkcard h3{font-size:1.25rem;margin-bottom:6px}
.ta-checkcard ul{display:grid;gap:10px;margin-top:var(--ta-space-3)}
.ta-checkcard li{display:flex;gap:10px;align-items:flex-start}
.ta-checkcard li svg{color:var(--ta-link);flex:none;margin-top:3px}
.ta-checkcard--soft{background:var(--ta-sky-100);border-radius:var(--ta-radius-m);padding:var(--ta-space-5)}
.ta-feecards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--ta-space-4)}
.ta-feecards li{border:1px solid var(--ta-line);border-radius:var(--ta-radius-m);padding:var(--ta-space-5);display:grid;gap:6px;align-content:start;background:var(--ta-bg)}
.ta-feecards h3{font-size:1.0625rem}
.ta-feecards__price{font-size:1.75rem;font-weight:800;color:var(--ta-navy);font-variant-numeric:tabular-nums}
.ta-feecards__unit{color:var(--ta-text-muted);font-size:var(--ta-fs-small)}
.ta-feecards__inc{font-size:.9375rem}
.ta-feetable h3{font-size:1.25rem;margin-bottom:var(--ta-space-3)}
.ta-feetable table{width:100%;border-collapse:collapse}
.ta-feetable th,.ta-feetable td{padding:12px 0;border-bottom:1px solid var(--ta-line);text-align:start;font-weight:500}
.ta-feetable td{text-align:end;font-weight:700;font-variant-numeric:tabular-nums}
.ta-note{background:var(--ta-sky-100);border-radius:var(--ta-radius-m);padding:var(--ta-space-4) var(--ta-space-5);font-size:.9375rem}
.ta-chiplist h3,.ta-salary h3{font-size:1.25rem;margin-bottom:var(--ta-space-3)}
.ta-salary dl{display:grid;gap:8px;margin:0}
.ta-salary dl>div{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;background:var(--ta-bg);border-radius:12px}
.ta-salary dt{color:var(--ta-text-muted)}
.ta-salary dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
.ta-textblock h3{font-size:1.125rem;margin-bottom:6px}
.ta-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--ta-space-5)}
@media (max-width:767px){.ta-pair{grid-template-columns:1fr}}
.ta-cta h2{color:#fff;font-size:clamp(1.75rem,3.4vw,2.5rem)}
.ta-cta p{max-width:54ch;margin:var(--ta-space-3) auto 0;color:#d6def0}

/* Form pages (course application, TAT exam application) */
.ta-formpage{max-width:640px}
.ta-formpage .ta-sechead{text-align:center}
.ta-formpage__note{margin-top:var(--ta-space-4);font-size:.9rem;color:var(--ta-text-muted)}

/* Examination results (ResultTabs) */
.ta-res__years{display:flex;gap:var(--ta-space-3);justify-content:center;margin-bottom:var(--ta-space-5)}
.ta-res__year{min-height:44px;padding:0 28px;border-radius:var(--ta-radius-pill);border:1.5px solid var(--ta-navy);background:#fff;color:var(--ta-navy);font:inherit;font-weight:800;cursor:pointer}
.ta-res__year[aria-selected=true]{background:var(--ta-mint);border-color:var(--ta-mint);color:var(--ta-navy)}
.ta-res__year:focus-visible,.ta-res__panel:focus-visible{outline:3px solid var(--ta-link);outline-offset:2px}
.ta-res__panel{align-content:start}
.ta-res__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--ta-space-3)}
.ta-res__exam{font-size:var(--ta-fs-h3);font-weight:800}
.ta-res__date{display:inline-flex;align-items:center;gap:8px;color:var(--ta-text-muted);font-weight:600}
.ta-res__stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ta-space-4)}
.ta-res__stats li{display:grid;justify-items:center;gap:2px;padding:var(--ta-space-4);border-radius:var(--ta-radius-l);background:var(--ta-sky-100)}
.ta-res__stats strong{font-size:clamp(1.5rem,3.4vw,2.25rem);font-weight:800;color:var(--ta-navy);line-height:1.1}
.ta-res__stats span{color:var(--ta-text-muted);font-weight:600;font-size:var(--ta-fs-small)}
.ta-res__sectionhead{display:flex;align-items:center;gap:10px;font-size:var(--ta-fs-h4);font-weight:800;margin-bottom:var(--ta-space-4)}
.ta-res__cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--ta-space-5)}
.ta-res__card{display:grid;gap:6px;justify-items:center;text-align:center}
.ta-res__cardphoto{position:relative;width:100%;max-width:240px;aspect-ratio:4/5;border-radius:var(--ta-radius-l);overflow:hidden;background:var(--ta-sky-100)}
.ta-res__cardphoto .ta-res__photo{width:100%;height:100%;object-fit:cover}
.ta-res__rank{position:absolute;left:10px;top:10px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--ta-navy);color:#fff;font-weight:800;box-shadow:0 0 0 3px var(--ta-mint)}
.ta-res__name{font-weight:800;color:var(--ta-navy)}
.ta-res__marks{font-weight:700;color:var(--ta-success)}
.ta-res__rows{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--ta-space-3)}
.ta-res__row{display:flex;align-items:center;gap:var(--ta-space-3);padding:10px 14px;border:1px solid var(--ta-line);border-radius:var(--ta-radius-l);background:#fff}
.ta-res__row .ta-res__photo{flex:none;width:52px;height:52px;border-radius:50%;object-fit:cover}
.ta-res__photo--none{display:grid;place-items:center;background:var(--ta-sky-100);color:var(--ta-navy);font-weight:800}
.ta-res__rowname{flex:1;font-weight:700;color:var(--ta-navy);overflow-wrap:anywhere}
.ta-res__rowmarks{font-weight:700;color:var(--ta-success);white-space:nowrap}
@media (max-width:560px){.ta-res__stats{gap:var(--ta-space-2)}.ta-res__stats li{padding:var(--ta-space-3) 6px}.ta-res__rows{grid-template-columns:1fr}.ta-res__cards{grid-template-columns:repeat(2,1fr);gap:var(--ta-space-3)}}

/* glass.css */
/* Design layer v1.1 (2026-10-23): glass, kinetic details, accordions, carousels, compact mobile.
   Decided by the user 2026-10-23 (Horizon-style reference): more glass, collapsibles and motion than brand pack v1.0 allowed.
   Rules kept: glass sits over media or a tinted background and never lowers text below 4.5:1; motion is transform and opacity,
   at most 280 ms for UI, and switched off for reduced-motion users (the Motion component never adds .ta-motion then). */
:root{
  --ta-glass-light:rgba(255,255,255,.66);
  --ta-glass-line:rgba(255,255,255,.72);
  --ta-glass-dark:rgba(22,33,61,.74);
  --ta-glass-dark-line:rgba(255,255,255,.28);
  --ta-blur:blur(16px) saturate(1.35);
  --ta-dur:280ms;
}
.ta-glass{background:var(--ta-glass-light);border:1px solid var(--ta-glass-line);box-shadow:var(--ta-shadow-card);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-glass--dark{background:var(--ta-glass-dark);border-color:var(--ta-glass-dark-line);color:#fff}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .ta-glass{background:rgba(255,255,255,.96)}
  .ta-glass--dark{background:rgba(22,33,61,.92)}
}

/* Tinted backdrop so glass has something to refract on plain sections */
.ta-bg-aurora{background:
  radial-gradient(520px 320px at 8% 12%,rgba(128,214,251,.55),transparent 70%),
  radial-gradient(460px 300px at 92% 30%,rgba(98,235,163,.28),transparent 70%),
  radial-gradient(520px 360px at 55% 100%,rgba(27,95,208,.16),transparent 70%),var(--ta-bg)}

/* ---------- Floating glass header ---------- */
.ta-topbar{display:none}
@media (min-width:900px){.ta-topbar{display:block}}
.ta-header{position:sticky;top:10px;z-index:40;background:none;border:0;padding-inline:12px;pointer-events:none}
.ta-header__row{pointer-events:auto;width:min(100%,1360px);margin-inline:auto;min-height:64px;padding-inline:14px 10px;border-radius:var(--ta-radius-pill);background:var(--ta-glass-light);border:1px solid var(--ta-glass-line);box-shadow:var(--ta-shadow-card);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur);transition:box-shadow var(--ta-dur) var(--ta-ease),background-color var(--ta-dur) var(--ta-ease)}
.ta-header.is-scrolled .ta-header__row{box-shadow:var(--ta-shadow-raised);background:rgba(255,255,255,.82)}
.ta-header .ta-container{width:min(100%,1360px)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.ta-header__row{background:#fff}}
.ta-brand img{height:40px}
.ta-brand b{font-size:1.0625rem}
.ta-brand small{display:none}
@media (min-width:600px){.ta-brand small{display:block;font-size:.75rem}}
.ta-menubtn{background:rgba(255,255,255,.7)}
@media (max-width:899px){
  .ta-nav{background:var(--ta-glass-light);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur);border:1px solid var(--ta-glass-line);top:calc(100% + 10px);transform-origin:top right}
  .ta-nav.is-open{animation:ta-pop var(--ta-dur) var(--ta-ease)}
  .ta-nav .ta-btn{margin-top:4px}
}
@keyframes ta-pop{from{opacity:0;transform:translateY(-6px) scale(.98)}}
.ta-dropdown{background:rgba(255,255,255,.94);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-dropdown.is-open{animation:ta-pop 200ms var(--ta-ease)}

/* ---------- Hero: rounded card with a looping video ---------- */
.ta-hero{width:min(100% - 24px,1360px);margin:10px auto 0;border-radius:28px;min-height:min(84vh,700px)}
.ta-hero__img,.ta-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ta-hero__video{opacity:0;transition:opacity 600ms ease}
.ta-hero__video.is-ready{opacity:1}
.ta-hero__scrim{background:linear-gradient(90deg,rgba(22,33,61,.9) 0%,rgba(22,33,61,.68) 52%,rgba(22,33,61,.38) 100%)}
.ta-hero .ta-container{width:min(100% - 3rem,1200px)}
.ta-hero__inner{padding-block:clamp(40px,7vw,96px) clamp(88px,10vw,120px)}
.ta-hero .ta-badge{background:var(--ta-glass-dark);color:#fff;border:1px solid var(--ta-glass-dark-line);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-hero .ta-badge__dot{background:var(--ta-mint)}
.ta-hero__stats{position:absolute;right:clamp(16px,3vw,40px);bottom:clamp(16px,3vw,32px);margin:0;gap:10px;flex-wrap:nowrap}
.ta-hero__stats li{background:var(--ta-glass-dark);border-color:var(--ta-glass-dark-line);min-width:0;padding:12px 18px;border-radius:20px;transition:transform 160ms var(--ta-ease)}
.ta-hero__stats li:hover{transform:translateY(-3px)}
.ta-hero__stats b{font-size:1.5rem}
.ta-hero__ctrl{position:absolute;left:clamp(16px,3vw,40px);bottom:clamp(16px,3vw,32px);display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border-radius:var(--ta-radius-pill);background:var(--ta-glass-dark);border:1px solid var(--ta-glass-dark-line);color:#fff;font:600 .875rem/1 var(--ta-font);cursor:pointer;-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur);transition:transform 120ms var(--ta-ease)}
.ta-hero__ctrl:active{transform:scale(.98)}
.ta-hero__ctrl:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ta-hero__ctrl[hidden]{display:none}
.ta-hero .ta-btn--light{box-shadow:0 8px 24px rgba(0,0,0,.25)}
@media (max-width:767px){
  .ta-hero{width:calc(100% - 16px);border-radius:22px;min-height:min(78svh,560px);margin-top:6px}
  .ta-hero .ta-container{width:calc(100% - 2rem)}
  .ta-hero__inner{padding-block:36px 124px}
  .ta-hero__title{font-size:clamp(1.875rem,9vw,2.5rem);margin-bottom:12px}
  .ta-hero__body{font-size:1rem;margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .ta-hero__stats{left:12px;right:12px;bottom:68px;gap:6px;justify-content:space-between}
  .ta-hero__stats li{flex:1;padding:8px 6px;text-align:center;border-radius:16px}
  .ta-hero__stats b{font-size:1.25rem}
  .ta-hero__stats span{font-size:.75rem;line-height:1.2;display:block}
  .ta-hero__ctrl{left:12px;bottom:12px}
}

/* ---------- Bento (About) ---------- */
.ta-bento__intro{display:grid;grid-template-columns:1fr 2fr;gap:var(--ta-space-6);align-items:start;margin-bottom:var(--ta-space-6)}
.ta-bento__intro p{font-size:clamp(1.0625rem,2vw,1.375rem);line-height:1.5;color:var(--ta-navy);font-weight:500;max-width:60ch}
.ta-tag{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border:1px solid var(--ta-line);background:#fff;border-radius:var(--ta-radius-pill);font-size:var(--ta-fs-small);font-weight:600;color:var(--ta-navy);width:fit-content}
.ta-bento__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ta-space-5)}
.ta-bcard{position:relative;border-radius:var(--ta-radius-l);overflow:hidden;min-height:300px;display:grid;align-content:space-between;padding:var(--ta-space-6)}
.ta-bcard--dark{background:var(--ta-navy);color:#fff}
.ta-bcard--dark p{font-size:clamp(1.125rem,1.8vw,1.5rem);font-weight:500;line-height:1.35}
.ta-bcard--dark p b{color:#fff;font-weight:700}
.ta-bcard--photo{padding:0;background:var(--ta-sky-300)}
.ta-bcard--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ta-bcard--photo .ta-chipglass{position:absolute;left:16px;bottom:16px}
.ta-chipglass{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border-radius:var(--ta-radius-pill);font-weight:600;font-size:.9375rem;color:#fff;background:var(--ta-glass-dark);border:1px solid var(--ta-glass-dark-line);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-bcard--stat{background:#fff;border:1px solid var(--ta-line)}
.ta-bcard--stat strong{display:block;font-size:clamp(2.5rem,4.4vw,3.5rem);font-weight:800;line-height:1;color:var(--ta-navy);font-variant-numeric:tabular-nums}
.ta-bcard--stat small{display:block;margin-top:6px;font-weight:600;color:var(--ta-navy)}
.ta-bcard--stat p{color:var(--ta-text-muted);font-size:.9375rem;margin-top:6px}
.ta-bcard__statrow{display:grid;gap:10px}
.ta-bcard__statrow li{display:flex;justify-content:space-between;gap:12px;font-weight:600;font-variant-numeric:tabular-nums}
.ta-bcard__statrow span{color:var(--ta-text-muted);font-weight:500}
/* Segmented switch (Classroom / Online): the one interactive bento piece */
.ta-switch{display:inline-grid;grid-auto-flow:column;gap:4px;padding:4px;border-radius:var(--ta-radius-pill);background:rgba(255,255,255,.12);border:1px solid var(--ta-glass-dark-line);width:fit-content}
.ta-switch button{min-height:44px;padding:0 18px;border:0;border-radius:var(--ta-radius-pill);background:none;color:#fff;font:600 .9375rem/1 var(--ta-font);cursor:pointer;transition:background-color 160ms var(--ta-ease),color 160ms var(--ta-ease),transform 120ms var(--ta-ease)}
.ta-switch button:active{transform:scale(.98)}
.ta-switch button[aria-pressed=true]{background:#fff;color:var(--ta-navy)}
.ta-switch button:focus-visible{outline:2px solid var(--ta-sky-300);outline-offset:2px}
@media (max-width:899px){.ta-bento__intro{grid-template-columns:1fr;gap:var(--ta-space-4)}.ta-bento__grid{grid-template-columns:1fr}.ta-bcard{min-height:0;padding:var(--ta-space-5)}.ta-bcard--photo{min-height:200px}}

/* ---------- Accordions (native <details>, animated where the browser can) ---------- */
.ta-accs{display:grid;gap:10px}
.ta-acc{interpolate-size:allow-keywords;border:1px solid var(--ta-glass-line);border-radius:20px;background:var(--ta-glass-light);box-shadow:var(--ta-shadow-card);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur);overflow:hidden;text-align:start}
.ta-acc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 20px;font-weight:700;color:var(--ta-navy);cursor:pointer;list-style:none}
.ta-acc summary::-webkit-details-marker{display:none}
.ta-acc summary::after{content:"";flex:none;width:12px;height:12px;border-right:2.5px solid var(--ta-navy);border-bottom:2.5px solid var(--ta-navy);transform:rotate(45deg) translateY(-3px);transition:transform var(--ta-dur) var(--ta-ease)}
.ta-acc[open] summary::after{transform:rotate(225deg) translateY(-3px)}
.ta-acc summary:focus-visible{outline:2px solid var(--ta-link);outline-offset:-3px;border-radius:20px}
.ta-acc__body{padding:0 20px 18px;color:var(--ta-text);display:grid;gap:10px}
.ta-acc__body p{color:var(--ta-text-muted)}
.ta-acc::details-content{block-size:0;overflow:hidden;transition:block-size var(--ta-dur) var(--ta-ease),content-visibility var(--ta-dur) allow-discrete}
.ta-acc[open]::details-content{block-size:auto}
.ta-acc--flat{background:#fff;box-shadow:none;border-color:var(--ta-line);-webkit-backdrop-filter:none;backdrop-filter:none}
.ta-faq{display:grid;grid-template-columns:1fr 1.6fr;gap:var(--ta-space-7);align-items:start}
.ta-faq .ta-sechead{margin-bottom:0}
@media (max-width:899px){.ta-faq{grid-template-columns:1fr;gap:var(--ta-space-5)}}

/* ---------- Carousels (phones): scroll-snap rows with button controls; normal grids on larger screens ---------- */
.ta-car{position:relative}
.ta-car__ctrls{display:none}
@media (max-width:767px){
  .ta-car__track{display:flex!important;grid-template-columns:none!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px!important;margin-inline:-16px;padding:4px 16px 12px;scroll-padding-inline:16px;scrollbar-width:none;overscroll-behavior-x:contain}
  .ta-car__track::-webkit-scrollbar{display:none}
  .ta-car__track>*{flex:0 0 min(84%,320px);scroll-snap-align:start}
  .ta-car__ctrls{display:flex;gap:10px;justify-content:center;margin-top:6px}
  .ta-car__btn{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--ta-line);background:#fff;color:var(--ta-navy);cursor:pointer;transition:transform 120ms var(--ta-ease)}
  .ta-car__btn:active{transform:scale(.96)}
  .ta-car__btn[disabled]{opacity:.4;cursor:default}
}
.ta-car__track:focus-visible{outline:2px solid var(--ta-link);outline-offset:2px}

/* ---------- Motion: reveal, tilt, magnetic (only when the Motion component added .ta-motion) ---------- */
.ta-motion [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity var(--ta-dur) var(--ta-ease),transform var(--ta-dur) var(--ta-ease);transition-delay:calc(min(var(--i,0),6)*55ms)}
.ta-motion [data-reveal].is-in{opacity:1;transform:none}
[data-tilt]{transition:transform 160ms var(--ta-ease),box-shadow 160ms var(--ta-ease);will-change:transform}
[data-tilt].is-tilting{transition:none}
@media (hover:hover) and (pointer:fine){
  .ta-coursecard:hover,.ta-feature:hover,.ta-person:hover,.ta-story:hover{box-shadow:var(--ta-shadow-raised)}
}
.ta-hero__title .ta-w{display:inline-block;opacity:0;transform:translateY(.5em);animation:ta-word 320ms var(--ta-ease) forwards;animation-delay:calc(var(--w)*45ms + 60ms)}
@keyframes ta-word{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ta-hero__title .ta-w{opacity:1;transform:none;animation:none}.ta-motion [data-reveal]{opacity:1;transform:none}}

/* ---------- Glass on cards, results, forms, dialogs ---------- */
.ta-res__stats li{background:var(--ta-glass-light);border:1px solid var(--ta-glass-line);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-contact__form,.ta-contact__info{background:var(--ta-glass-light);border:1px solid var(--ta-glass-line);border-radius:var(--ta-radius-l);padding:var(--ta-space-6);box-shadow:var(--ta-shadow-card);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-formpage .ta-form{background:var(--ta-glass-light);border:1px solid var(--ta-glass-line);border-radius:var(--ta-radius-l);padding:var(--ta-space-6);box-shadow:var(--ta-shadow-card);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-dialog{background:rgba(255,255,255,.9);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
.ta-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ta-tabs__panel{background:var(--ta-glass-light);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur);border-color:var(--ta-glass-line)}
.ta-tabs__list{position:relative}
.ta-coursehero .ta-highlights{background:var(--ta-glass-dark);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur)}
@media (max-width:767px){.ta-contact__form,.ta-contact__info,.ta-formpage .ta-form{padding:var(--ta-space-5)}}

/* ---------- Sticky mobile action bar ---------- */
.ta-mbar{display:none}
@media (max-width:899px){
  .ta-mbar{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:44;display:grid;grid-template-columns:auto 1fr;gap:8px;padding:8px;border-radius:var(--ta-radius-pill);background:var(--ta-glass-light);border:1px solid var(--ta-glass-line);box-shadow:var(--ta-shadow-raised);-webkit-backdrop-filter:var(--ta-blur);backdrop-filter:var(--ta-blur);transform:translateY(140%);transition:transform var(--ta-dur) var(--ta-ease)}
  .ta-mbar.is-on{transform:none}
  .ta-mbar .ta-btn{min-height:48px}
  .ta-mbar__call{width:48px;padding:0;background:#fff;color:var(--ta-navy);border:1px solid var(--ta-line)}
  .ta-whatsapp{bottom:84px;right:14px;width:48px;height:48px}
  body{padding-bottom:76px}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.ta-mbar{background:rgba(255,255,255,.97)}}

/* ---------- Footer accordions (phones) ---------- */
.ta-footacc summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;cursor:pointer;list-style:none;font-weight:700;color:#fff;margin-bottom:var(--ta-space-3)}
.ta-footacc summary::-webkit-details-marker{display:none}
.ta-footacc summary h2{margin:0}
@media (min-width:900px){.ta-footacc summary{cursor:default;pointer-events:none}}
@media (max-width:899px){
  .ta-footacc{border-bottom:1px solid rgba(255,255,255,.18)}
  .ta-footacc summary::after{content:"";width:10px;height:10px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg);transition:transform var(--ta-dur) var(--ta-ease)}
  .ta-footacc[open] summary::after{transform:rotate(225deg)}
}

/* ---------- Compact phone scale (poluix: phones are not small desktops) ---------- */
@media (max-width:767px){
  :root{--ta-fs-body-lg:1.0625rem;--ta-fs-h3:1.25rem;--ta-space-5:20px;--ta-space-6:24px;--ta-space-7:28px;--ta-space-8:36px;--ta-space-9:40px}
  .ta-container{width:min(100% - 2rem,1200px)}
  .ta-pt-s{padding-top:16px}.ta-pb-s{padding-bottom:16px}
  .ta-pt-m{padding-top:28px}.ta-pb-m{padding-bottom:28px}
  .ta-pt-l{padding-top:36px}.ta-pb-l{padding-bottom:36px}
  .ta-sechead{margin-bottom:var(--ta-space-5);gap:8px}
  .ta-sechead h1,.ta-sechead h2{font-size:clamp(1.5rem,6.6vw,1.875rem)}
  .ta-panel{padding:14px;border-radius:22px}
  .ta-coursecard{padding:12px}
  .ta-coursecard h3{font-size:1.0625rem;padding-bottom:8px}
  .ta-coursecard__img{aspect-ratio:16/9}
  .ta-feature{padding:var(--ta-space-4)}
  .ta-faculty{grid-template-columns:none}
  .ta-person{padding:12px 12px 16px}
  .ta-person__photo{aspect-ratio:1/1}
  .ta-story{padding:var(--ta-space-4)}
  .ta-coursehero{padding-block:var(--ta-space-5)}
  .ta-coursehero__code{font-size:2.25rem}
  .ta-coursehero__name{font-size:1.25rem}
  .ta-coursehero__sum{font-size:1rem}
  .ta-tabs__list{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin-inline:-16px;padding:2px 16px 8px;scrollbar-width:none}
  .ta-tabs__list::-webkit-scrollbar{display:none}
  .ta-tabs__tab{flex:none;padding:0 18px}
  .ta-tabs__panel{padding:16px;gap:var(--ta-space-5);border-radius:22px}
  .ta-footer{margin-top:var(--ta-space-7)}
  .ta-footer__grid{padding-block:var(--ta-space-5);gap:0}
  .ta-res__cardphoto{max-width:none}
}

.ta-res__section .ta-res__sectionhead{margin:0;font-size:1.0625rem}
.ta-res__section{margin-bottom:var(--ta-space-3)}
.ta-papers{margin-top:var(--ta-space-3)}
.ta-papers summary{min-height:48px;font-size:1rem}
.ta-hero__stats b span,.ta-bcard strong span{font-size:inherit;color:inherit;display:inline;line-height:inherit}
@media (max-width:767px){
  .ta-coursecard__sum{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .ta-contact__img{display:none}
  .ta-bento__grid .ta-bcard{min-height:240px}
  .ta-bento__grid .ta-bcard--photo{min-height:240px}
}
@media (max-width:767px){
  .ta-person__bio{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .ta-features__grid .ta-feature p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
}
.ta-features>*,.ta-car,.ta-faq>*,.ta-bento__grid{min-width:0}
.ta-features{grid-template-columns:minmax(0,1fr)}
@media (min-width:1100px){.ta-features:has(.ta-features__img){grid-template-columns:minmax(0,3fr) minmax(0,1fr)}}
.ta-footer__grid>*{min-width:0}
@media (max-width:767px){
  .ta-coursecard__subjects .ta-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-4px;padding:2px 4px}
  .ta-coursecard__subjects .ta-chips::-webkit-scrollbar{display:none}
  .ta-coursecard__subjects .ta-chips li{flex:none}
  .ta-sechead p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .ta-person__photo{aspect-ratio:4/3}
  .ta-person__bio{-webkit-line-clamp:3}
  .ta-story blockquote{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
}
@media (min-width:768px) and (max-width:899px){
  .ta-bento__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ta-bcard{min-height:260px;padding:var(--ta-space-5)}
  .ta-bcard--dark p{font-size:1.0625rem}
  .ta-bcard--photo{padding:0}
}
/* 44 px targets (poluix floor): brand link, short footer links, consent rows */
.ta-brand{min-height:44px}
.ta-footer nav a{min-width:44px;padding-inline:10px;margin-inline:-10px}
.ta-field--check{min-height:44px;align-items:center}
.ta-field--check label{min-height:44px;display:flex;align-items:center;cursor:pointer}
.ta-field--check input{margin:0;position:relative}

/* polish.css */
/* Polish round 2026-10-23 (user review of staging 20261023h): tiny pause button, looping rows, course abbreviations,
   rounded-rectangle faculty photos, real icons instead of CSS chevrons, opaque-ish phone menu, spacing fixes, legal pages. */

/* ---------- Accordion chevrons: Lucide icons, not CSS-drawn borders ---------- */
.ta-acc summary::after,.ta-footacc summary::after{content:none!important}
.ta-acc__chev,.ta-footacc__chev{flex:none;transition:transform var(--ta-dur) var(--ta-ease)}
.ta-acc[open]>summary .ta-acc__chev,.ta-footacc[open]>summary .ta-footacc__chev{transform:rotate(180deg)}
@media (min-width:900px){.ta-footacc__chev{display:none}}

/* ---------- Hero video control: small and quiet (44 px hit area kept with a pseudo-element) ---------- */
.ta-hero__ctrl{min-height:0;width:30px;height:30px;padding:0;gap:0;justify-content:center;opacity:.8;transition:opacity 160ms var(--ta-ease),transform 120ms var(--ta-ease)}
.ta-hero__ctrl:hover,.ta-hero__ctrl:focus-visible{opacity:1}
.ta-hero__ctrl::after{content:"";position:absolute;inset:-7px}

/* ---------- Looping rows (why choose us, success stories) ---------- */
.ta-marq{position:relative;min-width:0}
.ta-marq__track.ta-features__grid,.ta-marq__track.ta-stories{display:flex;grid-template-columns:none;gap:16px}
.ta-marq__track{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x proximity;padding:6px 2px 14px;overscroll-behavior-x:contain;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%)}
.ta-marq__track::-webkit-scrollbar{display:none}
.ta-marq__track>*{flex:0 0 min(82%,300px);scroll-snap-align:start}
.ta-marq__track.ta-stories>*{flex-basis:min(88%,380px)}
.ta-marq.is-loop .ta-marq__track{scroll-snap-type:none}
.ta-marq__track:focus-visible{outline:2px solid var(--ta-link);outline-offset:2px}
.ta-marq__ctrls{display:flex;justify-content:center;gap:10px;margin-top:4px}
.ta-marq .ta-car__btn{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--ta-line);background:#fff;color:var(--ta-navy);cursor:pointer;transition:transform 120ms var(--ta-ease),background-color 160ms var(--ta-ease)}
.ta-marq .ta-car__btn:hover{background:var(--ta-sky-100)}
.ta-marq .ta-car__btn:active{transform:scale(.96)}
.ta-marq__track>.ta-feature{align-self:stretch}

/* ---------- Course cards: the abbreviation is the picture ---------- */
.ta-coursecard__abbr{display:grid;place-items:center;aspect-ratio:16/6;border-radius:12px;background:linear-gradient(135deg,var(--ta-navy) 0%,#1d3a78 62%,#1b5fd0 135%);color:#fff;font-weight:800;line-height:1;letter-spacing:-.02em;font-size:clamp(2.75rem,5.6vw,4rem);position:relative;overflow:hidden}
.ta-coursecard__abbr::after{content:"";position:absolute;left:50%;bottom:14%;width:44px;height:4px;border-radius:4px;background:var(--ta-sky-300);transform:translateX(-50%)}
.ta-coursecard__abbr[data-len="6"],.ta-coursecard__abbr[data-len="7"]{font-size:clamp(2.25rem,4.6vw,3.25rem)}
@media (max-width:767px){.ta-coursecard__abbr{aspect-ratio:16/5;font-size:2.5rem}.ta-coursecard__abbr[data-len="6"]{font-size:2.125rem}}

/* ---------- Faculty: rounded rectangles, inline "more" grid ---------- */
.ta-person__photo{border-radius:20px}
ul.ta-faculty.ta-faculty--more{display:grid;margin-top:var(--ta-space-5);grid-template-columns:repeat(4,1fr)}
@media (max-width:1023px){ul.ta-faculty.ta-faculty--more{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){ul.ta-faculty.ta-faculty--more{grid-template-columns:1fr}}

/* ---------- Swipe rows on phones: vertical page scroll must always win ---------- */
@media (max-width:767px){
  .ta-car__track,.ta-tabs__list,.ta-coursecard__subjects .ta-chips{overflow-y:hidden;overscroll-behavior-y:auto}
  .ta-panel{overflow:hidden}
  .ta-panel .ta-car__track{margin-inline:-14px;padding-inline:14px;scroll-padding-inline:14px}
}
.ta-panel{overflow:hidden}

/* ---------- Header and course hero spacing ---------- */
.ta-topbar .ta-container{padding-block:6px}
.ta-header{margin-top:12px}
.ta-back{display:flex;width:fit-content;margin-bottom:var(--ta-space-3)}
@media (max-width:899px){
  .ta-nav{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(28px) saturate(1.5);backdrop-filter:blur(28px) saturate(1.5)}
}
.ta-footer__bar a{display:inline-flex;align-items:center;min-height:44px}

/* ---------- Policy pages ---------- */
.ta-container.ta-legal{width:min(100% - 2rem,820px)}
.ta-legal__head h1{font-size:clamp(2rem,4.5vw,2.75rem);font-weight:800}
.ta-legal__date{color:var(--ta-text-muted);margin-top:8px;font-weight:600}
.ta-legal__intro{margin-top:var(--ta-space-4);font-size:var(--ta-fs-body-lg)}
.ta-legal__toc{margin:var(--ta-space-5) 0 var(--ta-space-6);background:var(--ta-sky-100);border-radius:var(--ta-radius-m);padding:var(--ta-space-3) var(--ta-space-5)}
.ta-legal__toc ol{list-style:decimal;padding-left:1.25rem;columns:2;column-gap:var(--ta-space-6)}
.ta-legal__toc a{display:inline-flex;align-items:center;min-height:44px;color:var(--ta-navy);font-weight:600}
.ta-legal__body section{margin-top:var(--ta-space-6);scroll-margin-top:96px}
.ta-legal__body h2{font-size:1.25rem;margin-bottom:var(--ta-space-3)}
.ta-legal__body p+p,.ta-legal__body p+ul,.ta-legal__body ul+p{margin-top:var(--ta-space-3)}
.ta-legal__body ul{list-style:disc;padding-left:1.25rem;display:grid;gap:6px}
@media (max-width:640px){.ta-legal__toc ol{columns:1}}

/* ---------- Course hero text on the blue gradient: 4.5:1 or better ---------- */
.ta-coursehero__org{color:#d6f1ff}
.ta-coursehero__mode{background:rgba(22,33,61,.42)}

/* Phone menu: a backdrop-filter inside another backdrop-filter does not blur the page, so while the menu is open the
   header pill drops its own filter and the panel becomes the glass: mostly opaque, strongly blurred. */
@media (max-width:899px){
  .ta-header__row:has(.ta-nav.is-open){-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(255,255,255,.96)}
  .ta-nav{background:rgba(255,255,255,.93);-webkit-backdrop-filter:blur(32px) saturate(1.6);backdrop-filter:blur(32px) saturate(1.6)}
}

/* =====================================================================================================
   Round 2 (2026-10-23, user review of 20261023i): spacing, full-bleed rows, living background
   ===================================================================================================== */

/* ---------- Living background: white with a slow, soft sky-blue drift (reference: blurred white to cyan wash) ---------- */
html{overflow-x:clip}
body{background:#fbfdff;position:relative}
body::before,body::after{content:"";position:fixed;z-index:-1;pointer-events:none;will-change:transform}
body::before{inset:-25%;background:
  radial-gradient(48% 40% at 88% 14%,rgba(128,214,251,.55),transparent 70%),
  radial-gradient(60% 46% at 10% 96%,rgba(98,200,240,.5),transparent 72%),
  radial-gradient(70% 34% at 62% 70%,rgba(160,226,250,.42),transparent 72%);
  animation:ta-drift-a 32s ease-in-out infinite alternate}
body::after{inset:-25%;background:
  radial-gradient(40% 34% at 22% 20%,rgba(190,236,252,.45),transparent 70%),
  radial-gradient(44% 36% at 80% 86%,rgba(120,210,246,.38),transparent 72%);
  animation:ta-drift-b 44s ease-in-out infinite alternate}
@keyframes ta-drift-a{from{transform:translate3d(-3%,2%,0) scale(1)}to{transform:translate3d(4%,-3%,0) scale(1.12)}}
@keyframes ta-drift-b{from{transform:translate3d(3%,-2%,0) scale(1.08)}to{transform:translate3d(-4%,3%,0) scale(1)}}
@media (prefers-reduced-motion:reduce){body::before,body::after{animation:none}}
/* sections that were flat white or canvas now let the wash show through; cards, panels, the FAQ tint and navy bands stay solid */
.ta-bg-canvas,.ta-bg-white,.ta-bg-none{background:transparent}
/* .ta-bg-aurora keeps its own tinted background (glass.css): it is what sets the FAQ section apart from the wash */

/* ---------- Full-bleed rows: cards run off the screen edge, no fade mask ---------- */
.ta-marq{margin-inline:calc(50% - 50vw)}
.ta-marq__track{-webkit-mask-image:none;mask-image:none;padding-inline:max(16px,calc((100% - 1200px) / 2));scroll-padding-inline:max(16px,calc((100% - 1200px) / 2))}
.ta-marq__ctrls{padding-inline:16px}

/* ---------- Vertical rhythm: slot wrappers inside course tabs ignored the panel gap ---------- */
.ta-tabs__panel div:not([class]){display:grid;gap:var(--ta-space-6);align-content:start}
.ta-subhead{display:grid;gap:8px}
.ta-subhead h2{margin-bottom:0}
.ta-checkcard{display:grid;gap:var(--ta-space-3)}
.ta-checkcard h3{margin-bottom:0}
.ta-checkcard ul{margin-top:0}
.ta-checkcard--soft{padding:var(--ta-space-5) var(--ta-space-6)}
.ta-feecards{margin-top:0}
.ta-feetable,.ta-chiplist,.ta-salary,.ta-textblock{display:grid;gap:var(--ta-space-3)}
.ta-feetable h3,.ta-chiplist h3,.ta-salary h3,.ta-textblock h3{margin-bottom:0}
.ta-note{line-height:1.6}
.ta-level{gap:var(--ta-space-4) var(--ta-space-4)}
.ta-level__body{display:grid;gap:var(--ta-space-2);align-content:start}
.ta-level__body .ta-papers{margin-top:0}
.ta-level__intro{margin-top:0}

/* ---------- Section heads: pill hugs its text, headings never touch the first item ---------- */
.ta-sechead{justify-items:start;gap:var(--ta-space-3)}
.ta-align-center .ta-sechead{justify-items:center}
.ta-sechead .ta-pill{width:fit-content}
.ta-panel .ta-sechead{margin-bottom:var(--ta-space-6)}

/* ---------- Contact: the info card fills its height with the photo instead of leaving a blank block ---------- */
.ta-contact{align-items:stretch}
.ta-contact__info{display:flex;flex-direction:column;gap:var(--ta-space-5)}
.ta-contact__img{flex:1 1 auto;min-height:220px;width:100%;height:auto;aspect-ratio:auto;object-fit:cover;margin-bottom:0}
.ta-infolist{flex:none}
.ta-infolist li div p+p{margin-top:2px}

/* ---------- Small crowding fixes found by the spacing scan ---------- */
.ta-hero__stats li{display:grid;gap:2px}
.ta-brand b{margin-bottom:2px}
.ta-infolist h3{margin-bottom:4px}
.ta-infolist li div p+p{margin-top:4px}
.ta-infolist{gap:var(--ta-space-5)}
.ta-footer li{margin-bottom:6px}

/* muted text that sits straight on the living background: a little darker so it stays above 4.5:1 on the deepest sky tint */
.ta-sechead p,.ta-bento__intro p,.ta-legal__date,.ta-footnote{color:#3f4c6b}
p,li{text-wrap:pretty}
@media (max-width:767px){.ta-highlights{padding:var(--ta-space-4)}.ta-highlights li{font-size:.9375rem;gap:8px}}

/* ---------- Form pages: one card, not a card inside a card ---------- */
.ta-formpage .ta-form{background:none;border:0;box-shadow:none;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none}
.ta-formpage__card{padding:clamp(20px,4vw,40px)}

/* ---------- Phone: room for the sticky action bar lives inside the footer, not as a white strip under it ---------- */
@media (max-width:899px){
  body{padding-bottom:0}
  .ta-footer{padding-bottom:84px}
}
.ta-formpage .ta-sechead{justify-items:center}

/* Looping rows: cards run edge to edge, no side padding while the loop runs (the loop keeps cards on both sides) */
.ta-marq.is-loop .ta-marq__track{padding-inline:0;scroll-padding-inline:0}

/* The FAQ tint stays a solid, slightly stronger band so it reads as its own section against the page wash */
.ta-section.ta-bg-aurora{border-block:1px solid rgba(128,214,251,.5);background:
  radial-gradient(520px 320px at 8% 12%,rgba(128,214,251,.62),transparent 70%),
  radial-gradient(460px 300px at 92% 30%,rgba(98,235,163,.34),transparent 70%),
  radial-gradient(520px 360px at 55% 100%,rgba(27,95,208,.18),transparent 70%),#f1f7fe}

/* ---------- Phone: WhatsApp lives inside the action bar, which is always on (the floating button is desktop-only) ---------- */
@media (max-width:899px){
  .ta-whatsapp{display:none}
  .ta-mbar{grid-template-columns:auto auto 1fr;transform:none}
  .ta-mbar__wa{width:48px;padding:0;background:var(--ta-whatsapp);color:#fff}
  .ta-mbar__wa:hover{filter:brightness(1.1)}
  /* the hero pause button moves to the top corner so the bar never covers it */
  .ta-hero__ctrl{left:auto;right:12px;bottom:auto;top:12px}
}

/* Small phones: the bar's Enroll label never wraps, and the hero stats flow under the button instead of being pinned over it */
@media (max-width:767px){
  .ta-mbar .ta-btn--primary{white-space:nowrap;padding-inline:16px}
  .ta-hero{align-content:center}
  .ta-hero__inner{padding-block:36px 8px}
  .ta-hero__stats{position:static;margin:16px 16px 20px;flex-wrap:nowrap}
}
