/* ============================================================
   AELS 2026 Redesign — shared inner-page design system
   ETS-inspired: Fraunces serif, navy + cream, periwinkle accent.
   All rules scoped to .aels-pg (+ .aels- prefixed classes) so the
   shared Webflow header/footer and other pages are never affected.
   Load AFTER css/webflow-style.css. Requires Fraunces + Inter fonts.
   ============================================================ */
.aels-pg{
  --navy:#10106e; --ink:#0a0a4a; --red:#0c8a97; --red-dark:#0a7480;
  --blue:#5fd4de; --cream:#f5f1e7; --cream-2:#fbf9f4;
  --text:#1e293b; --muted:#5b6079; --line:#e7e2d5;
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  color:var(--text); line-height:1.65; background:var(--cream-2);
}
.aels-pg *{box-sizing:border-box;}
.aels-pg h1,.aels-pg h2,.aels-pg h3{font-family:'Fraunces',Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.01em;color:var(--navy);margin:0;}
.aels-pg p{margin:0;}
.aels-pg a{text-decoration:none;color:inherit;}
.aels-wrap{max-width:1140px;margin:0 auto;padding:0 40px;}
.aels-kick{font-family:'Inter';font-weight:700;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--red);}

/* buttons */
.aels-btn{display:inline-flex;align-items:center;gap:9px;font-family:'Inter';font-weight:600;font-size:15.5px;padding:14px 30px;border-radius:100px;transition:all .2s;border:1px solid transparent;cursor:pointer;}
.aels-btn.red{background:var(--red);color:#fff;box-shadow:0 8px 20px rgba(12,138,151,.24);}
.aels-btn.red:hover{background:var(--red-dark);transform:translateY(-2px);}
.aels-btn.ghost{border-color:rgba(255,255,255,.4);color:#fff;background:transparent;}
.aels-btn.ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;}

/* hero (inner page: navy band, no video) */
.aels-hero{position:relative;color:#fff;overflow:hidden;background:radial-gradient(1100px 460px at 85% -20%,rgba(175,16,16,.28),transparent 60%),linear-gradient(135deg,#10106e,#0a0a4a 75%);padding:84px 0 70px;}
.aels-hero .aels-eyebrow{color:var(--blue);font-family:'Inter';font-weight:700;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;}
.aels-hero h1{color:#fff;font-size:clamp(40px,5.6vw,72px);margin:20px 0 20px;max-width:16ch;}
.aels-hero p{color:rgba(255,255,255,.82);font-size:clamp(17px,1.4vw,20px);max-width:60ch;line-height:1.55;}
.aels-hcta{margin-top:34px;}
.aels-hstats{margin-top:56px;display:grid;grid-template-columns:repeat(3,auto);gap:60px;justify-content:start;}
.aels-hstats .n{font-family:'Fraunces';font-size:clamp(38px,4vw,54px);font-weight:300;color:#fff;line-height:1;}
.aels-hstats .l{color:rgba(255,255,255,.66);font-size:14px;margin-top:8px;}

/* sections */
.aels-sec{padding:96px 0;}
.aels-sec.cream{background:var(--cream);}
.aels-h{font-size:clamp(28px,3.3vw,44px);color:var(--navy);}
.aels-head .aels-kick{display:block;margin-bottom:12px;}
.aels-head h2{max-width:22ch;}
.aels-head p{color:var(--muted);max-width:54ch;margin-top:12px;font-size:16.5px;}
.aels-head.center{text-align:center;}
.aels-head.center h2,.aels-head.center p{margin-left:auto;margin-right:auto;}

/* split: heading left, prose right */
.aels-split{display:grid;grid-template-columns:.9fr 1.5fr;gap:50px;align-items:start;}
.aels-split + .aels-split{margin-top:70px;padding-top:70px;border-top:1px solid var(--line);}
.aels-split .aels-sub{font-family:'Fraunces';font-size:20px;color:var(--navy);margin:22px 0 8px;}
.aels-split .aels-sub:first-child{margin-top:0;}
.aels-split p{color:var(--muted);font-size:16.5px;margin-bottom:14px;}
.aels-split ul{margin:0 0 14px 0;padding-left:20px;color:var(--muted);font-size:16.5px;}
.aels-split li{margin-bottom:8px;}

/* card grid (levels / generic cells) */
.aels-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:44px;}
.aels-grid.cols2{grid-template-columns:repeat(2,1fr);}
.aels-cell{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .22s;display:block;}
.aels-cell:hover{background:#fff;}
.aels-sec.cream .aels-cell:hover{background:var(--cream-2);}
.aels-cell .n{font-family:'Inter';font-size:12px;letter-spacing:.18em;color:var(--muted);font-weight:700;}
.aels-cell h3{font-size:23px;margin:10px 0 8px;}
.aels-cell p{color:var(--muted);font-size:15px;}
.aels-cell .go{margin-top:16px;color:var(--red);font-weight:600;font-size:14.5px;font-family:'Inter';display:inline-flex;gap:7px;opacity:0;transform:translateX(-6px);transition:.2s;}
.aels-cell:hover .go{opacity:1;transform:translateX(0);}

/* dark feature band */
.aels-band{background:var(--ink);color:#fff;padding:96px 0;}
.aels-band .aels-kick{color:var(--blue);text-align:center;display:block;margin-bottom:14px;}
.aels-band h2{color:#fff;text-align:center;margin-bottom:14px;}
.aels-band .aels-sc{color:rgba(255,255,255,.72);text-align:center;max-width:46ch;margin:0 auto 60px;}
.aels-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;}
.aels-feat h3{color:#fff;font-size:22px;margin-bottom:10px;}
.aels-feat .rule{width:36px;height:2px;background:var(--blue);margin-bottom:18px;}
.aels-feat p{color:rgba(255,255,255,.72);font-size:15.5px;}

/* faq (native details/summary) */
.aels-faq{max-width:820px;margin:0 auto;}
.aels-q{border-bottom:1px solid var(--line);}
.aels-q summary{list-style:none;cursor:pointer;padding:24px 6px;font-family:'Fraunces';font-weight:500;font-size:20px;color:var(--navy);display:flex;justify-content:space-between;align-items:center;gap:18px;}
.aels-q summary::-webkit-details-marker{display:none;}
.aels-q .plus{color:var(--red);font-size:24px;font-weight:300;transition:transform .2s;flex-shrink:0;}
.aels-q[open] summary .plus{transform:rotate(45deg);}
.aels-q .a{padding:0 6px 24px;color:var(--muted);font-size:16px;max-width:74ch;}
.aels-q .a b{color:var(--navy);}
.aels-q .a a{color:var(--red);font-weight:600;}

/* cta band (light, sits above the dark footer for contrast) */
.aels-ctaband{background:var(--cream);color:var(--navy);text-align:center;padding:104px 0;border-top:1px solid var(--line);}
.aels-ctaband h2{color:var(--navy);font-size:clamp(30px,4vw,52px);max-width:18ch;margin:0 auto 20px;}
.aels-ctaband h2 em{font-style:italic;color:var(--red);}
.aels-ctaband p{color:var(--muted);max-width:46ch;margin:0 auto 32px;font-size:17px;}

/* transparent-header offset: give the hero room to clear the overlaid header */
body.aels-darkhero .aels-hero{padding-top:140px;}

/* table (tuition/fees/dates) */
.aels-table{width:100%;border-collapse:collapse;margin-top:24px;font-size:15px;font-family:'Inter';}
.aels-table th,.aels-table td{border:1px solid var(--line);padding:14px 16px;text-align:left;}
.aels-table thead th{background:var(--navy);color:#fff;font-weight:600;}
.aels-table tbody tr:nth-child(even) td{background:var(--cream);}
.aels-table td.num{text-align:right;font-variant-numeric:tabular-nums;}

@media(max-width:860px){
  .aels-wrap{padding-left:24px;padding-right:24px;}
  .aels-hero{padding:64px 0 54px;}
  .aels-hstats{grid-template-columns:1fr 1fr;gap:34px;}
  .aels-split,.aels-grid,.aels-grid.cols2,.aels-feats{grid-template-columns:1fr;}
  .aels-cell{border-left:1px solid var(--line);}
  .aels-sec,.aels-band,.aels-ctaband{padding:64px 0;}
  .aels-table{display:block;overflow-x:auto;}
}
