

/* ==================== MERGED FROM style.css ==================== */

/* ===== TradeWise Academy: tokens + base ===== */
:root {
  --h: 80px;
  --pad: clamp(16px, 4vw, 32px);   /* page side gutter, same on every page */
  --wrap: 1240px;                  /* page content width, same on every page */
  /* Light mode: Ivory, Black, Gold + Profit Green / Loss Red (from the bull logo) */
  --bg: #FAF7EE;
  --surface: #FFFFFF;
  --text: #1E1A0F;
  --muted: #6A604A;
  --ink: #0A0A0A;            /* headings / brand: logo black */
  --accent: #C58A0A;
  --accent-text: #8A5E00;    /* deep gold for TEXT on light surfaces (AA contrast) */
  --violet: #E0A526;         /* glow / gradient partner (kept name; now gold) */
  --gain: #0E9F6E;           /* profit / up moves (candle green) */
  --gold: #E0A526;
  --amber: #E0A526;
  --loss: #D92D32;           /* loss / down moves (candle red) */
  --line: rgba(138, 94, 0, .22);
  --shade: rgba(197, 138, 10, .08);
  --shade-strong: rgba(197, 138, 10, .16);
  --btn-bg: #0A0A0A;
  --btn-fg: #F5C04F;
  --shadow: 0 18px 40px rgba(30, 22, 0, .16);
  --font-head: "Bricolage Grotesque", "Public Sans", system-ui, sans-serif;
  --font-body: "Public Sans", system-ui, sans-serif;
  color-scheme: light;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--text); font: 400 1rem/1.65 var(--font-body); transition: background .3s ease, color .3s ease; }
body.no-scroll { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; }
ul, ol { margin: 0; padding: 0; list-style: none; }
h1, h2, h3 { font-family: var(--font-head); color: var(--ink); line-height: 1.12; margin: 0; }
.container { width: min(100% - 2 * var(--pad), var(--wrap)); margin-inline: auto; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
.skip { position: absolute; inset-inline-start: 12px; top: -60px; z-index: 2000; padding: 10px 16px; background: var(--btn-bg); color: var(--btn-fg); border-radius: 8px; }
.skip:focus { top: 12px; }

/* ===== Buttons ===== */
.btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 22px; border-radius: 999px; font: 600 .9375rem/1 var(--font-body); text-decoration: none; cursor: pointer; border: 1.5px solid transparent; transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease; }
.btn--solid { background: var(--btn-bg); color: var(--btn-fg); }
.btn--solid:hover { transform: translateY(-2px); box-shadow: var(--shadow); }

/* ===== Header (same structure as the reference navbar) ===== */
.hdr { position: sticky; top: 0; z-index: 1000; height: var(--h); background: var(--bg); border-bottom: 1px solid var(--line); transition: box-shadow .25s ease, background .3s ease; }
.hdr.is-scrolled { box-shadow: var(--shadow); }
.hdr__inner { height: 100%; width: min(100% - 2 * var(--pad), var(--wrap)); margin-inline: auto; display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 20px; }

/* brand */
.brand { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 12px; color: var(--text); text-decoration: none; }
.brand__mark { width: 44px; height: 44px; flex: none; border-radius: 12px; transition: transform .5s ease; }
.brand:hover .brand__mark { transform: rotate(-8deg) scale(1.05); }
.brand__text { display: flex; flex-direction: column; line-height: 1.05; white-space: nowrap; }
.brand__name { font: 800 1.5rem/1 var(--font-head); color: var(--ink); }
.brand__name span { color: var(--accent-text); }
.brand__tag { margin-top: 4px; font-size: .8125rem; font-weight: 500; color: var(--muted); }

/* desktop nav: pill group centred between brand and actions */
.menu { display: contents; }
.nav { order: 1; justify-self: center; }
.hdr__tools { order: 2; }
.actions { order: 3; }
.burger { order: 4; }
.nav__list { display: flex; align-items: center; gap: 2px; padding: 4px; background: var(--shade); border-radius: 999px; }
.nav__item { position: relative; }
.nav__link, .nav__row { border-radius: 999px; }
.nav__link { display: inline-block; padding: 10px 18px; font-size: .9375rem; font-weight: 500; white-space: nowrap; color: var(--text); text-decoration: none; transition: background .2s ease, color .2s ease; }
.nav__row { display: flex; align-items: center; transition: background .2s ease, box-shadow .2s ease; }
.nav__row .nav__link { padding-inline: 18px 4px; }
.nav__toggle { width: 28px; height: 28px; margin-inline-end: 8px; display: grid; place-items: center; background: none; border: 0; border-radius: 50%; color: var(--text); font-size: 11px; cursor: pointer; }
.nav__toggle i { transition: transform .2s ease; }
.has-sub.is-open .nav__toggle i { transform: rotate(180deg); }
.nav__link:hover { color: var(--ink); }
.nav__item > .nav__link:hover, .nav__row:hover { background: var(--shade-strong); }
.nav__item.is-current > .nav__link, .nav__item.is-current > .nav__row { background: var(--surface); box-shadow: 0 1px 4px rgba(30, 27, 19, .16), 0 0 0 1px var(--line); }
.nav__item.is-current > .nav__link, .nav__item.is-current .nav__row .nav__link, .nav__item.is-current .nav__toggle { color: var(--ink); font-weight: 700; }

/* dropdown */
.sub { position: absolute; top: 100%; inset-inline-start: 0; z-index: 5; min-width: 176px; margin: 7px 0 0; padding: 4px; display: none; background: var(--surface); border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); }
.sub::before { content: ""; position: absolute; inset-inline: 0; top: -8px; height: 8px; }
.has-sub.is-open > .sub { display: block; }
@media (min-width: 1024px) and (hover: hover) { .has-sub:hover > .sub, .has-sub:focus-within > .sub { display: block; } }
.sub__link { display: block; padding: 9px 12px; min-height: 38px; border-radius: 10px; text-align: center; font-size: .9375rem; line-height: 1.25; font-weight: 500; color: var(--text); text-decoration: none; white-space: nowrap; transition: background .2s ease, color .2s ease; }
.sub__link:hover { background: var(--shade); color: var(--ink); }
.sub__link[aria-current="page"] { background: var(--shade-strong); color: var(--ink); font-weight: 700; }

/* actions: tools (dark mode, RTL) then Login at the right end */
.actions { display: flex; align-items: center; gap: 10px; }
.hdr__tools { position: relative; z-index: 2; display: flex; align-items: center; gap: 10px; }
.icon-btn { width: 42px; height: 42px; display: grid; place-items: center; background: var(--shade); border: 1px solid var(--line); border-radius: 50%; color: var(--text); font-size: 16px; cursor: pointer; transition: background .2s ease, color .2s ease; }
.icon-btn:hover { background: var(--shade-strong); color: var(--ink); }
.ico-sun { display: none; }
.hdr__login { height: 44px; min-height: 0; padding-inline: 24px; gap: 10px; }
.hdr__login i { font-size: 12px; transition: translate .2s ease; }
.hdr__login:hover i { translate: 3px 0; }

/* hamburger: round button, lines drawn in CSS so they never depend on the icon font */
.burger { --bsz: 42px; position: relative; z-index: 2; display: none; width: var(--bsz); height: var(--bsz); place-items: center; padding: 0; background: var(--shade); border: 1px solid var(--line); border-radius: 50%; color: var(--text); cursor: pointer; }
.burger:hover { background: var(--shade-strong); color: var(--ink); }
.burger::before, .burger::after { content: ""; position: absolute; left: 50%; top: 50%; width: 18px; height: 2px; margin: -1px 0 0 -9px; border-radius: 2px; background: currentColor; transition: transform .25s ease, box-shadow .25s ease; }
.burger::before { transform: translateY(-6px); box-shadow: 0 6px 0 currentColor; }
.burger::after { transform: translateY(6px); }
.burger[aria-expanded="true"]::before { transform: rotate(45deg); box-shadow: none; }
.burger[aria-expanded="true"]::after { transform: rotate(-45deg); }

/* large laptops: keep one row */
@media (min-width: 1024px) and (max-width: 1280px) {
  /* Keep the academy subtitle visible in VS Code preview and narrower desktop windows.
     Tighten the navigation spacing instead of hiding the brand subtitle. */
  .hdr__inner { gap: 8px; }
  .brand { gap: 9px; }
  .brand__mark { width: 42px; height: 42px; }
  .brand__name { font-size: 1.35rem; }
  .brand__tag { display: block; font-size: .72rem; }
  .nav__link { padding: 8px 9px; font-size: .82rem; }
  .nav__row .nav__link { padding-inline: 9px 2px; }
  .nav__toggle { margin-inline-end: 4px; }
  .actions { gap: 6px; }
  .hdr__login { padding-inline: 15px; font-size: .82rem; }
}

/* tablet + mobile (below 1024px): dropdown menu card */
@media (max-width: 1023px) {
  :root { --h: 68px; }
  .hdr__inner { display: flex; justify-content: flex-start; gap: 8px; }
  .hdr__tools { margin-inline-start: auto; gap: 8px; }
  .burger { display: grid; }
  .brand__mark { width: 40px; height: 40px; }
  .menu { position: fixed; top: calc(var(--h) + 8px); right: var(--pad); left: auto; z-index: 1; width: min(340px, calc(100% - 2 * var(--pad))); max-height: calc(100vh - var(--h) - 24px); max-height: calc(100dvh - var(--h) - 24px); overflow-y: auto; display: none; flex-direction: column; background: var(--surface); border: 1px solid var(--line); border-radius: 20px; box-shadow: var(--shadow); }
  [dir="rtl"] .menu { right: auto; left: var(--pad); }
  .menu.is-open { display: flex; animation: menu-in .22s ease both; }
  @keyframes menu-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
  .nav { flex: none; width: 100%; justify-self: auto; overflow-y: auto; overscroll-behavior: contain; padding: 10px 12px 6px; }
  .nav__list { flex-direction: column; align-items: stretch; gap: 2px; padding: 0; background: none; border-radius: 0; }
  .nav__link, .nav__row { border-radius: 12px; }
  .nav__link { display: block; padding: 11px 14px; font: 600 1.0625rem/1.25 var(--font-head); }
  .nav__row { justify-content: space-between; }
  .nav__row .nav__link { flex: 1; padding: 11px 14px; }
  .nav__toggle { width: 40px; height: 40px; margin-inline-end: 2px; font-size: 12px; }
  .nav__item > .nav__link:hover, .nav__row:hover { background: var(--shade); }
  .nav__item.is-current > .nav__link, .nav__item.is-current > .nav__row { background: var(--shade-strong); box-shadow: none; }
  .sub { position: static; min-width: 0; margin: 0; padding: 2px 0 6px; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
  .sub::before { display: none; }
  .sub__link { text-align: start; padding: 9px 14px 9px 28px; }
  [dir="rtl"] .sub__link { padding: 9px 28px 9px 14px; }
  .actions { flex: none; padding: 8px 12px 12px; }
  .actions .hdr__login { width: 100%; }
}
@media (max-width: 440px) {
  .brand__tag { display: none; }
  .brand { gap: 10px; }
  .brand__mark { width: 36px; height: 36px; }
  .brand__name { font-size: 1.3rem; }
  .hdr__tools { gap: 6px; }
  .hdr__tools .icon-btn { width: 38px; height: 38px; font-size: 15px; }
  .burger { --bsz: 38px; }
}
@media (max-width: 340px) {
  .hdr__tools .icon-btn { width: 34px; height: 34px; }
  .burger { --bsz: 34px; }
  .brand__name { font-size: 1.15rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .hdr *, .menu { transition: none !important; } }

/* ===== Buttons: ghost variant ===== */
.btn--ghost { background: var(--shade); color: var(--ink); border-color: var(--line); }
.btn--ghost:hover { background: var(--shade-strong); transform: translateY(-2px); }
.btn--md { min-height: 48px; padding: 12px 24px; font-size: .9375rem; gap: 10px; }
.btn i { font-size: .8em; }

/* ===== HERO (Home 1): always-dark cinematic section, NYSE photo + live paper-trading terminal ===== */
.hero { --ink: #FFFFFF; --text: #F5F2EB; --muted: #E5D4A7; --accent-text: #F5C04F; --surface: #1E1C16; --line: rgba(245, 202, 93, .32); --shade: rgba(245, 202, 93, .14); --shade-strong: rgba(245, 202, 93, .26); --gain: #1FD18B; --loss: #FF4D4F; --btn-bg: #F2B632; --btn-fg: #140E00; --violet: #F5CA5D; --shadow: 0 18px 40px rgba(0, 0, 0, .55);
  position: relative; isolation: isolate; overflow: hidden; background: #0F0E0B; color: var(--text); padding-top: clamp(28px, 4vw, 52px); }
.hero__bg { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; object-position: 70% 30%; opacity: .62; }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -2;
  background:
    linear-gradient(90deg, #0F0E0B 0%, rgba(15, 14, 11, .94) 34%, rgba(42, 38, 28, .66) 68%, rgba(130, 99, 20, .42) 100%),
    linear-gradient(180deg, transparent 70%, #0F0E0B 100%); }
.hero::after { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .35;
  background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size: 48px 48px;
  -webkit-mask-image: radial-gradient(70% 80% at 70% 40%, #000 5%, transparent 75%);
          mask-image: radial-gradient(70% 80% at 70% 40%, #000 5%, transparent 75%); }
.hero__copy, .term { min-width: 0; }
.hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: clamp(28px, 5vw, 72px); align-items: center; padding-bottom: clamp(32px, 4vw, 48px); }

.hero__badge { display: inline-flex; align-items: center; gap: 9px; margin: 0; padding: 6px 14px 6px 11px; background: var(--shade); border: 1px solid var(--line); border-radius: 999px; font-size: .8125rem; font-weight: 600; color: var(--text); }
.pulse { position: relative; width: 8px; height: 8px; border-radius: 50%; background: var(--gain); flex: none; }
.pulse::after { content: ""; position: absolute; inset: 0; border-radius: 50%; background: var(--gain); animation: pulse 1.8s ease-out infinite; }
@keyframes pulse { to { transform: scale(3); opacity: 0; } }

.hero__title { margin-top: 16px; font-size: clamp(1.875rem, 3.5vw, 2.875rem); font-weight: 800; letter-spacing: -.015em; line-height: 1.1; }
.grad { background: linear-gradient(95deg, var(--accent-text), var(--violet)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hero__lead { margin: 16px 0 0; max-width: 500px; font-size: 1rem; line-height: 1.6; color: var(--muted); }
.hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.hero__proof { display: flex; flex-wrap: wrap; gap: 12px 32px; margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--line); }
.proof b { display: block; font: 800 1.375rem/1.15 var(--font-head); color: var(--ink); }
.proof b em { font-style: normal; color: var(--accent-text); }
.proof span { font-size: .8125rem; color: var(--muted); }

/* live paper-trading terminal */
.term { position: relative; padding: 18px; color: var(--text); background: rgba(23, 21, 16, .72); border: 1px solid var(--line); border-radius: 22px; -webkit-backdrop-filter: blur(18px) saturate(140%); backdrop-filter: blur(18px) saturate(140%); box-shadow: var(--shadow), 0 0 90px -24px rgba(245, 202, 93, .75); direction: ltr; text-align: left; }
.term__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.term__sym { display: flex; align-items: center; gap: 8px; font-size: .75rem; font-weight: 700; letter-spacing: .06em; color: var(--muted); }
.term__price { margin-top: 2px; font: 800 1.75rem/1.15 var(--font-head); color: #fff; font-variant-numeric: tabular-nums; }
.term__chg { margin-left: 8px; font: 700 .875rem/1 var(--font-body); }
.up { color: var(--gain); } .down { color: var(--loss); }
.mkt { display: inline-flex; align-items: center; gap: 8px; padding: 6px 11px; border-radius: 999px; font-size: .75rem; font-weight: 700; white-space: nowrap; background: var(--shade); border: 1px solid var(--line); }
.mkt .pulse { background: var(--loss); } .mkt .pulse::after { background: var(--loss); }
.mkt.is-open .pulse, .mkt.is-open .pulse::after { background: var(--gain); }
.tchart { display: block; width: 100%; height: auto; margin-top: 10px; overflow: visible; }
.tchart .g { stroke: var(--line); stroke-dasharray: 3 6; }
.tchart .wick { stroke-width: 1.4; }
.tchart .w-up { stroke: var(--gain); } .tchart .w-dn { stroke: var(--loss); }
.tchart .b-up { fill: var(--gain); } .tchart .b-dn { fill: var(--loss); }
.tchart .last { stroke: #fff; stroke-opacity: .55; stroke-dasharray: 4 4; }
.tchart .tag { fill: #fff; } .tchart .tagt { fill: #0F0E0B; font: 700 11px var(--font-body); }
.orders { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 12px; }
.ord { min-height: 46px; border: 0; border-radius: 12px; font: 800 .9375rem/1 var(--font-body); letter-spacing: .02em; cursor: pointer; transition: transform .2s ease, filter .2s ease; }
.ord:hover { transform: translateY(-2px); filter: brightness(1.1); }
.ord:active { transform: translateY(0) scale(.98); }
.ord--buy { background: var(--gain); color: #04130C; }
.ord--sell { background: var(--loss); color: #16130E; }
.term__msg { min-height: 1.3em; margin: 8px 0 0; font-size: .8125rem; color: var(--muted); }
.tstats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 6px; }
.tstat { padding: 9px 11px; background: var(--shade); border-radius: 12px; min-width: 0; }
.tstat span { display: block; font-size: .6875rem; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }
.tstat b { display: block; font: 700 .9375rem/1.35 var(--font-body); color: #fff; font-variant-numeric: tabular-nums; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.term__foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; font-size: .6875rem; color: var(--muted); }
.term__reset { background: none; border: 0; padding: 4px 2px; font: 600 .6875rem/1 var(--font-body); color: var(--accent-text); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }

/* ticker strip */
.ticker { direction: ltr; position: relative; overflow: hidden; border-block: 1px solid var(--line); background: color-mix(in srgb, var(--surface) 70%, transparent); }
.ticker__track { display: flex; width: max-content; animation: marquee 42s linear infinite; }
.ticker:hover .ticker__track { animation-play-state: paused; }
.tick { display: inline-flex; align-items: center; gap: 9px; padding: 11px 24px; white-space: nowrap; font-size: .8125rem; border-inline-end: 1px solid var(--line); }
.tick b { color: var(--ink); letter-spacing: .03em; }
.tick span { color: var(--muted); }
.tick .up { color: var(--gain); font-weight: 700; }
.tick .down { color: var(--loss); font-weight: 700; }
@keyframes marquee { to { transform: translateX(-50%); } }

@media (max-width: 1023px) {
  .hero__grid { grid-template-columns: minmax(0, 1fr); }
  .term { max-width: 560px; width: 100%; margin-inline: auto; }
}
@media (max-width: 560px) {
  .hero__cta .btn { flex: 1 1 100%; }
  .term { padding: 14px; border-radius: 18px; }
  .term__price { font-size: 1.5rem; }
  .tstat b { font-size: .8125rem; }
  .mkt { font-size: .6875rem; padding: 5px 9px; }
  .term__top { flex-wrap: wrap; }
  .term__chg { display: inline-block; }
  .tstats { grid-template-columns: 1.4fr 1fr 1fr; gap: 6px; }
  .tstat { padding: 8px; }
  .tstat b { font-size: .75rem; }
}
@media (prefers-reduced-motion: reduce) {
  .pulse::after { animation: none; }
  .ord { transition: none; }
  .ticker__track { animation: none; overflow-x: auto; }
}

/* ===== Shared section pieces ===== */
.sec { padding: clamp(56px, 8vw, 104px) 0; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 14px; font-size: .8125rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--accent-text); }
.eyebrow::before { content: ""; width: 28px; height: 2px; border-radius: 2px; background: currentColor; }
.sec__title { font-size: clamp(1.75rem, 3.4vw, 2.625rem); font-weight: 800; letter-spacing: -.015em; line-height: 1.12; }
.sec__lead { margin: 16px 0 0; max-width: 560px; color: var(--muted); font-size: 1.0625rem; }

/* ===== Instructor: dark cinematic band ===== */
.inst { --ink: #FFFFFF; --text: #F5F2EB; --muted: #E5D4A7; --accent-text: #F5C04F; --accent: #F5CA5D; --violet: #F5CA5D; --gain: #1FD18B; --surface: #1E1C16; --line: rgba(245, 202, 93, .34); --shade: rgba(245, 202, 93, .14); --shade-strong: rgba(245, 202, 93, .26); --btn-bg: #F2B632; --btn-fg: #140E00; --shadow: 0 18px 40px rgba(0, 0, 0, .55);
  position: relative; isolation: isolate; overflow: hidden; background: #0F0E0B; color: var(--text); }
.inst__bg { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; opacity: .32; }
.inst::before { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(180deg, #0F0E0B 0%, rgba(15, 14, 11, .78) 30%, rgba(42, 38, 28, .72) 70%, #0F0E0B 100%); }
.inst::after { content: ""; position: absolute; inset-inline-end: -10%; top: -10%; width: 55vw; height: 55vw; max-width: 760px; max-height: 760px; z-index: -1; border-radius: 50%; background: radial-gradient(closest-side, rgba(245, 202, 93, .38), transparent); }
.inst__top { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(40px, 7vw, 100px); align-items: center; }
.inst h2 { color: var(--ink); }
.quote { position: relative; margin: 26px 0 0; padding: 4px 0 4px 22px; border-inline-start: 3px solid var(--gain); font-size: 1.125rem; line-height: 1.6; font-style: italic; color: #fff; }
.quote cite { display: block; margin-top: 10px; font-size: .875rem; font-style: normal; font-weight: 600; color: var(--accent-text); }
.inst__lead { margin: 18px 0 0; max-width: 540px; color: var(--muted); }
.inst__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }

.pf { position: relative; width: min(100%, 460px); margin-inline: auto 0; }
.pf::before { content: ""; position: absolute; inset: 20px -20px -20px 20px; border: 2px solid var(--violet); border-radius: 30px; opacity: .8; }
.pf__img { position: relative; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 30px; background: #28241C; -webkit-clip-path: polygon(0 0, 100% 0, 100% 84%, 84% 100%, 0 100%); clip-path: polygon(0 0, 100% 0, 100% 84%, 84% 100%, 0 100%); }
.pf__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; }
.pf__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(245, 202, 93, .12) 0%, transparent 40%, rgba(15, 14, 11, .92) 100%); }
.pf__name { position: absolute; z-index: 2; inset-inline: 0; bottom: 0; padding: 0 26px 26px; }
.pf__name b { display: block; font: 800 1.5rem/1.15 var(--font-head); color: #fff; }
.pf__name span { font-size: .9rem; color: #E8E2D4; }
.gstack { position: absolute; z-index: 3; inset-inline-start: -44px; top: 50%; transform: translateY(-50%); display: grid; gap: 12px; }
.gs { min-width: 148px; padding: 13px 18px; background: rgba(30, 27, 19, .68); border: 1px solid rgba(255, 255, 255, .2); border-radius: 16px; -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 14px 34px rgba(0, 0, 0, .4); }
.gs b { display: block; font: 800 1.625rem/1.1 var(--font-head); color: #fff; font-variant-numeric: tabular-nums; }
.gs b em { font-style: normal; color: var(--accent-text); }
.gs > span { font-size: .8125rem; color: #EDE1C1; }

.credrow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: clamp(48px, 6vw, 80px); }
.cr { position: relative; padding: 26px 22px 24px; background: rgba(30, 28, 22, .72); border: 1px solid var(--line); border-radius: 20px; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.cr::before { content: ""; position: absolute; inset-inline: 22px; top: -1px; height: 3px; border-radius: 0 0 4px 4px; background: linear-gradient(90deg, var(--gain), var(--violet)); }
.cr:hover { transform: translateY(-6px); border-color: var(--violet); box-shadow: var(--shadow), 0 0 40px -12px var(--violet); }
.cr__no { position: absolute; inset-inline-end: 18px; top: 14px; font: 800 2.25rem/1 var(--font-head); color: rgba(255, 255, 255, .07); }
.cr__ico { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; background: var(--shade-strong); color: var(--accent-text); font-size: 1.05rem; }
.cr h3 { margin-top: 18px; font-size: 1.0625rem; line-height: 1.25; color: #fff; }
.cr p { margin: 8px 0 0; font-size: .9rem; line-height: 1.55; color: var(--muted); }

@media (max-width: 1023px) {
  .inst__top { grid-template-columns: minmax(0, 1fr); }
  .pf { margin-inline: auto; width: min(100%, 420px); }
  .gstack { position: static; transform: none; grid-template-columns: repeat(3, 1fr); margin-top: 34px; gap: 10px; }
  .gs { min-width: 0; padding: 11px 12px; }
  .gs b { font-size: 1.25rem; }
  .credrow { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .credrow { grid-template-columns: 1fr; }
  .inst__cta .btn { flex: 1 1 100%; }
  .pf::before { inset: 14px -10px -14px 10px; }
  .gs > span { font-size: .72rem; }
}
@media (prefers-reduced-motion: reduce) { .cr { transition: none; } }

/* ===== ABOUT PAGE (pages/about.html): "the market" concept ===== */

/* --- 1. Hero: centred headline + photo collage (follows theme) --- */
.hx, .ac { --ink: #FFFFFF; --text: #F5F2EB; --muted: #E5D4A7; --accent-text: #F5C04F; --accent: #F5CA5D; --violet: #F5CA5D; --gain: #1FD18B; --loss: #FF4D4F; --surface: #1E1C16; --line: rgba(245, 202, 93, .34); --shade: rgba(245, 202, 93, .14); --shade-strong: rgba(245, 202, 93, .26); --btn-bg: #F2B632; --btn-fg: #140E00; --shadow: 0 18px 40px rgba(0, 0, 0, .55);
  position: relative; isolation: isolate; overflow: hidden; background: #0B0A07; color: var(--text); }
.crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: .875rem; color: var(--muted); }
.crumbs li + li::before { content: "/"; margin-inline-end: 8px; opacity: .6; }
.crumbs a { text-decoration: none; } .crumbs a:hover { color: var(--ink); text-decoration: underline; }
.crumbs [aria-current] { color: var(--ink); font-weight: 600; }

.hx { display: flex; flex-direction: column; }
.hx::before { content: ""; position: absolute; inset: 0; z-index: -2; background: radial-gradient(55% 70% at 78% 40%, rgba(245, 202, 93, .38), transparent 70%), radial-gradient(40% 50% at 0% 100%, rgba(31, 209, 139, .12), transparent 70%); }
.hx::after { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .3; background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px); background-size: 52px 52px; -webkit-mask-image: radial-gradient(70% 90% at 60% 40%, #000 0%, transparent 75%); mask-image: radial-gradient(70% 90% at 60% 40%, #000 0%, transparent 75%); }
.hx__main { padding-block: clamp(18px, 2.5vw, 28px) clamp(36px, 5vw, 60px); }
.hx__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 72px); align-items: center; margin-top: clamp(14px, 2.5vw, 28px); }
.hx__title { margin-top: 18px; font-size: clamp(2.25rem, 4.8vw, 3.875rem); font-weight: 800; letter-spacing: -.03em; line-height: 1.05; }
.hx__lead { max-width: 520px; margin: 16px 0 0; font-size: 1.0625rem; color: var(--muted); }
.hx__ticks { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 20px; }
.hx__ticks li { display: inline-flex; align-items: center; gap: 8px; font-size: .9375rem; font-weight: 600; color: var(--ink); }
.hx__ticks i { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--gain); color: #06140E; font-size: .6rem; }
.hx__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.hx__proof { display: flex; align-items: center; gap: 14px; margin-top: 28px; }
.hx__av { display: flex; }
.hx__av span { width: 38px; height: 38px; display: grid; place-items: center; margin-inline-start: -10px; border: 2px solid #0F0E0B; border-radius: 50%; font: 700 .75rem/1 var(--font-body); color: #fff; }
.hx__av span:first-child { margin-inline-start: 0; }
.hx__av span:nth-child(1) { background: #EDBA3A; } .hx__av span:nth-child(2) { background: #F2C14E; } .hx__av span:nth-child(3) { background: #059669; } .hx__av span:nth-child(4) { background: #D97706; } .hx__av span:nth-child(5) { background: #2A261E; border-color: var(--violet); }
.hx__proof p { margin: 0; font-size: .875rem; line-height: 1.4; color: var(--muted); }
.hx__proof b { color: var(--ink); }
.hx__proof .fa-star { color: #FFC83D; }

/* photo window: every floating element stays INSIDE it, so nothing passes the header's left/right edges */
.hw { position: relative; width: 100%; aspect-ratio: 5 / 4.6; overflow: hidden; border-radius: 28px; border: 1px solid rgba(255, 255, 255, .2); background: #28241C; box-shadow: var(--shadow), 0 0 70px -20px var(--violet); }
.hw > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 60% 35%; }
.hw::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(15, 14, 11, .25) 0%, transparent 35%, rgba(15, 14, 11, .85) 100%); }
.hw__glass { position: absolute; z-index: 2; background: rgba(30, 27, 19, .66); border: 1px solid rgba(255, 255, 255, .22); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 14px 34px rgba(0, 0, 0, .4); }
.hw__pl { top: 16px; inset-inline-start: 16px; width: 206px; padding: 14px 16px; border-radius: 18px; direction: ltr; text-align: left; }
.hw__pl small, .hw__cls small { display: block; font-size: .6875rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #EDE1C1; }
.hw__pl b { display: block; font: 800 1.375rem/1.2 var(--font-head); color: #fff; font-variant-numeric: tabular-nums; }
.hw__pl em { font: 700 .8125rem/1 var(--font-body); font-style: normal; color: var(--gain); }
.hw__spark { display: block; width: 100%; height: 36px; margin-top: 6px; }
.hw__spark path { fill: none; stroke: var(--gain); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 1; animation: draw 2.2s .6s ease-out forwards; }
.hw__tag { top: 16px; inset-inline-end: 16px; padding: 8px 14px; border-radius: 999px; background: var(--gain); border: 0; color: #06140E; font: 800 .8125rem/1 var(--font-body); }
.hw__bar { inset-inline: 16px; bottom: 16px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 16px; border-radius: 20px; }
.hw__who { display: flex; align-items: center; gap: 12px; min-width: 0; }
.hw__who img { width: 52px; height: 52px; flex: none; border-radius: 50%; object-fit: cover; object-position: 50% 15%; border: 2px solid var(--gain); }
.hw__who b { display: block; font: 800 1.0625rem/1.2 var(--font-head); color: #fff; }
.hw__who span { font-size: .8125rem; color: #E8E2D4; }
.hw__cls { display: flex; align-items: center; gap: 12px; padding-inline-start: 14px; border-inline-start: 1px solid rgba(255, 255, 255, .22); }
.hw__cls i { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: var(--shade-strong); color: var(--accent-text); }
.hw__cls b { display: block; font: 800 .9375rem/1.25 var(--font-head); color: #fff; white-space: nowrap; }
.hw__cls .pulse { display: inline-block; margin-inline-end: 6px; vertical-align: middle; }

@media (max-width: 1023px) {
  .hx__grid { grid-template-columns: minmax(0, 1fr); }
  .hw { aspect-ratio: 16 / 11; }
}
@media (max-width: 640px) {
  .hx__cta .btn { flex: 1 1 100%; }
  .hw { aspect-ratio: 4 / 4.2; }
  .hw__pl { width: 168px; padding: 10px 12px; } .hw__pl b { font-size: 1.125rem; }
  .hw__cls { display: none; }
}
@media (prefers-reduced-motion: reduce) { .hw__spark path { animation: none; stroke-dashoffset: 0; } }

/* --- 2. Mission + Vision: alternating image rows + values strip (follows theme) --- */
.am__head { max-width: 780px; margin-inline: auto; text-align: center; }
.am__head .eyebrow { justify-content: center; }
.am__head .sec__lead { margin-inline: auto; }
.am__row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 6vw, 88px); align-items: center; margin-top: clamp(40px, 6vw, 72px); }
.am__row--rev .am__img { order: 2; }
.am__img { position: relative; aspect-ratio: 3 / 2; overflow: hidden; border-radius: 28px; background: var(--shade-strong); border: 1px solid var(--line); box-shadow: var(--shadow); }
.am__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s ease; }
.am__img:hover img { transform: scale(1.04); }
.am__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(15, 14, 11, .7) 100%); }
.am__chip { position: absolute; z-index: 2; inset-inline-start: 16px; bottom: 16px; display: flex; align-items: center; gap: 12px; padding: 11px 16px; background: rgba(30, 27, 19, .66); border: 1px solid rgba(255, 255, 255, .22); border-radius: 16px; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.am__chip i { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 11px; background: rgba(245, 202, 93, .35); color: #4DE3A8; }
.am__chip b { display: block; font: 800 1.0625rem/1.15 var(--font-head); color: #fff; }
.am__chip span { font-size: .75rem; color: #E8E2D4; }
.am__tag { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px 6px 10px; border-radius: 999px; background: var(--shade-strong); color: var(--accent-text); font-size: .75rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.am__txt h3 { margin-top: 16px; font-size: clamp(1.75rem, 3.2vw, 2.625rem); font-weight: 800; letter-spacing: -.02em; line-height: 1.12; }
.am__txt > p { margin: 14px 0 0; max-width: 520px; font-size: 1.0625rem; color: var(--muted); }
.am__list { display: grid; gap: 12px; margin-top: 22px; }
.am__list li { display: flex; align-items: flex-start; gap: 12px; font-weight: 600; color: var(--ink); }
.am__list i { flex: none; width: 22px; height: 22px; margin-top: 2px; display: grid; place-items: center; border-radius: 50%; background: var(--gain); color: #fff; font-size: .62rem; }
[data-theme="dark"] .am__list i { color: #06140E; }
.am__vals { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: clamp(48px, 7vw, 88px); border: 1px solid var(--line); border-radius: 28px; background: var(--surface); overflow: hidden; }
.am__val { padding: clamp(22px, 3vw, 32px) clamp(18px, 2.4vw, 28px); transition: background .3s ease; }
.am__val + .am__val { border-inline-start: 1px solid var(--line); }
.am__val:hover { background: var(--shade); }
.am__val i { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; background: linear-gradient(140deg, #D9A728, #F5CA5D); color: #140E00; font-size: 1.2rem; box-shadow: 0 10px 24px -8px var(--violet); }
.am__val h3 { margin-top: 18px; font-size: 1.125rem; }
.am__val p { margin: 8px 0 0; font-size: .9rem; line-height: 1.55; color: var(--muted); }
@media (max-width: 900px) {
  .am__row { grid-template-columns: minmax(0, 1fr); }
  .am__row--rev .am__img { order: 0; }
  .am__vals { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .am__val:nth-child(3) { border-inline-start: 0; }
  .am__val:nth-child(n+3) { border-top: 1px solid var(--line); }
}
@media (max-width: 520px) { .am__vals { grid-template-columns: minmax(0, 1fr); } .am__val + .am__val { border-inline-start: 0; border-top: 1px solid var(--line); } }
@media (prefers-reduced-motion: reduce) { .am__img img, .am__val { transition: none; } }

/* --- 3. History: growth chart (left) + milestone panel (right), always dark --- */
.ac__head { max-width: 760px; }
.ac__legend { display: inline-flex; align-items: center; gap: 10px; margin-top: 16px; font-size: .8125rem; color: var(--muted); }
.ac__legend::before { content: ""; width: 26px; height: 3px; border-radius: 2px; background: var(--gain); }
.ac__layout { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(0, 1fr); gap: 18px; margin-top: clamp(28px, 4vw, 48px); align-items: stretch; }
.ac__chart { position: relative; direction: ltr; min-height: clamp(320px, 34vw, 460px); border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(180deg, rgba(30, 28, 22, .7), rgba(15, 14, 11, .4)); }
.ac__svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.ac__svg .gl { stroke: var(--line); stroke-dasharray: 3 8; vector-effect: non-scaling-stroke; }
.ac__svg .ln { fill: none; stroke: var(--gain); stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.ac__svg .ar { fill: url(#acfill); }
.ac__svg .rev { clip-path: inset(0 100% 0 0); }
.ac.is-in .rev { animation: reveal 2.2s .2s ease-out forwards; }
@keyframes reveal { to { clip-path: inset(0 0 0 0); } }
.pin { position: absolute; z-index: 2; width: 44px; height: 44px; margin: -22px 0 0 -22px; display: grid; place-items: center; padding: 0; background: none; border: 0; cursor: pointer; opacity: 0; transition: opacity .5s ease; }
.ac.is-in .pin { opacity: 1; transition-delay: calc(var(--n) * 260ms + .6s); }
.pin__dot { width: 16px; height: 16px; border-radius: 50%; background: #0B0A07; border: 3px solid var(--gain); transition: transform .25s ease, background .25s ease, box-shadow .25s ease; }
.pin:hover .pin__dot { transform: scale(1.3); }
.pin[aria-pressed="true"] .pin__dot { background: var(--gain); transform: scale(1.5); box-shadow: 0 0 0 6px rgba(31, 209, 139, .22), 0 0 24px var(--gain); }
.pin__yr { position: absolute; top: calc(100% + 4px); left: 50%; translate: -50% 0; font: 700 .8125rem/1 var(--font-body); color: var(--muted); }
.pin[aria-pressed="true"] .pin__yr { color: #fff; }
.pin:focus-visible { outline-offset: -4px; border-radius: 50%; }

.ac__panel { display: flex; flex-direction: column; padding: clamp(22px, 2.6vw, 32px); border: 1px solid var(--line); border-radius: 24px; background: rgba(30, 28, 22, .78); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.ac__year { font: 800 clamp(3.75rem, 6.5vw, 5.75rem)/1 var(--font-head); letter-spacing: -.03em; color: transparent; -webkit-text-stroke: 1.5px var(--violet); }
.ac__metric { align-self: flex-start; margin-top: 18px; padding: 4px 12px; border-radius: 999px; background: color-mix(in srgb, var(--gain) 16%, transparent); color: var(--gain); font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ac__panel h3 { margin-top: 12px; font-size: clamp(1.375rem, 2.2vw, 1.75rem); color: #fff; }
.ac__panel p { margin: 10px 0 0; color: var(--muted); }
.ac__ctl { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 24px; }
.ac__ctl .btns { display: flex; gap: 10px; }
.ac__ctl .icon-btn { width: 48px; height: 48px; }
.ac__ctl .icon-btn:disabled { opacity: .35; cursor: default; }
.ac__ctl small { font-size: .875rem; color: var(--muted); font-variant-numeric: tabular-nums; }
.ac__panel.is-swap > .ac__swap { animation: swap .35s ease; }
@keyframes swap { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

@media (max-width: 1023px) {
  .ac__layout { grid-template-columns: minmax(0, 1fr); }
  .ac__chart { min-height: clamp(260px, 52vw, 380px); }
}
@media (max-width: 560px) { .pin { width: 40px; height: 40px; margin: -20px 0 0 -20px; } .pin__yr { font-size: .6875rem; } }
.ac__chart{overflow:visible}
@media (max-width: 380px){.pin__yr{font-size:.625rem}.pin__dot{width:14px;height:14px}}
@media (prefers-reduced-motion: reduce) {
  .ac__svg .rev { clip-path: none; animation: none !important; } .ac .pin { opacity: 1; transition: none; }
  .ac__panel.is-swap > .ac__swap { animation: none; }
}

/* ===== ABOUT PAGE: sections 4 to 7 (Team, Method, Reviews, CTA) ===== */
.sh { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px 48px; flex-wrap: wrap; }
.sh .sec__lead { margin: 0; max-width: 420px; }

/* --- 4. Team --- */
.tm { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: clamp(32px, 5vw, 56px); }
.tmc { display: flex; flex-direction: column; background: var(--surface); border: 1px solid var(--line); border-radius: 24px; overflow: hidden; transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.tmc:hover { transform: translateY(-6px); border-color: var(--violet); box-shadow: var(--shadow); }
.tmc__ph { position: relative; aspect-ratio: 1 / 1.02; overflow: hidden; background: linear-gradient(140deg, #95731D, #F5CA5D); }
.tmc__ph--g { background: linear-gradient(140deg, #064E3B, #10B981); }
.tmc__ph--b { background: linear-gradient(140deg, #8A6B1E, #F3BF3D); }
.tmc__ph--o { background: linear-gradient(140deg, #9A3412, #FBBF24); }
.tmc__ph::before { content: ""; position: absolute; inset: 0; background: radial-gradient(70% 60% at 30% 20%, rgba(255, 255, 255, .22), transparent 70%); }
.tmc__ph img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; }
.tmc__ini { position: absolute; inset: 0; display: grid; place-items: center; font: 800 clamp(3.5rem, 7vw, 5rem)/1 var(--font-head); color: rgba(255, 255, 255, .92); letter-spacing: -.02em; }
.tmc__chip { position: absolute; inset-inline-start: 12px; bottom: 12px; padding: 6px 12px; border-radius: 999px; background: rgba(30, 27, 19, .62); border: 1px solid rgba(255, 255, 255, .25); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); color: #fff; font-size: .75rem; font-weight: 700; }
.tmc__body { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 22px; }
.tmc__body h3 { font-size: 1.1875rem; }
.tmc__role { margin: 4px 0 0; font-size: .8125rem; font-weight: 700; letter-spacing: .04em; color: var(--accent-text); }
.tmc__bio { margin: 10px 0 0; font-size: .9rem; line-height: 1.55; color: var(--muted); }
.tmc__soc { display: flex; gap: 8px; margin-top: auto; padding-top: 16px; }
.tmc__soc a { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: var(--shade); border: 1px solid var(--line); color: var(--text); font-size: .85rem; text-decoration: none; transition: background .2s ease, color .2s ease; }
.tmc__soc a:hover { background: var(--shade-strong); color: var(--ink); }

/* --- 5. How we teach --- */
.mt { background: var(--shade); border-block: 1px solid var(--line); }
.mt__steps { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: clamp(40px, 6vw, 64px); }
.mt__steps::before { content: ""; position: absolute; top: 28px; inset-inline: 16% 16%; height: 2px; background: repeating-linear-gradient(90deg, var(--violet) 0 8px, transparent 8px 16px); opacity: .6; }
.ms { position: relative; padding: 0 8px; text-align: center; }
.ms__no { position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto; display: grid; place-items: center; border-radius: 50%; background: linear-gradient(140deg, #D9A728, #F5CA5D); color: #140E00; font: 800 1.25rem/1 var(--font-head); box-shadow: 0 0 0 8px var(--bg), 0 10px 26px -6px var(--violet); }
.ms__card { margin-top: 22px; padding: 26px 24px; text-align: start; background: var(--surface); border: 1px solid var(--line); border-radius: 24px; transition: transform .3s ease, box-shadow .3s ease; }
.ms:hover .ms__card { transform: translateY(-5px); box-shadow: var(--shadow); }
.ms__ico { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; background: var(--shade-strong); color: var(--accent-text); font-size: 1.05rem; }
.ms__card h3 { margin-top: 16px; font-size: 1.375rem; }
.ms__card > p { margin: 8px 0 0; color: var(--muted); }
.ms__card ul { display: grid; gap: 8px; margin-top: 16px; }
.ms__card li { display: flex; gap: 10px; font-size: .9375rem; color: var(--text); }
.ms__card li i { margin-top: 5px; color: var(--gain); font-size: .8rem; }
.ms__tag { display: inline-block; margin-top: 18px; padding: 5px 12px; border-radius: 999px; background: color-mix(in srgb, var(--gain) 15%, transparent); color: var(--gain); font-size: .6875rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }

/* --- 6. Testimonials --- */
.rv { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 2fr); gap: 18px; margin-top: clamp(32px, 5vw, 56px); align-items: stretch; }
.rv__sum { padding: 28px 26px; background: var(--surface); border: 1px solid var(--line); border-radius: 24px; }
.rv__score { font: 800 clamp(3.5rem, 6vw, 4.75rem)/1 var(--font-head); color: var(--ink); }
.stars { display: inline-flex; gap: 3px; color: #FFC83D; font-size: .95rem; }
.rv__sum p { margin: 8px 0 0; font-size: .875rem; color: var(--muted); }
.rv__bars { display: grid; gap: 9px; margin-top: 22px; }
.rv__bar { display: grid; grid-template-columns: 22px 1fr 38px; align-items: center; gap: 10px; font-size: .8125rem; color: var(--muted); }
.rv__bar i { display: block; height: 8px; border-radius: 8px; background: var(--shade-strong); overflow: hidden; }
.rv__bar i::before { content: ""; display: block; height: 100%; width: var(--w); border-radius: 8px; background: linear-gradient(90deg, var(--gain), var(--violet)); }
.rv__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.rvc { position: relative; display: flex; flex-direction: column; gap: 16px; padding: 26px 26px 22px; background: var(--surface); border: 1px solid var(--line); border-radius: 24px; transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.rvc:hover { transform: translateY(-4px); border-color: var(--violet); box-shadow: var(--shadow); }
.rvc::after { content: "\201C"; position: absolute; inset-inline-end: 22px; top: 6px; font: 800 5rem/1 var(--font-head); color: var(--shade-strong); pointer-events: none; }
.rvc--big { grid-column: span 2; background: linear-gradient(140deg, color-mix(in srgb, var(--violet) 20%, var(--surface)), var(--surface)); }
.rvc blockquote { margin: 0; font-size: 1rem; line-height: 1.65; color: var(--text); }
.rvc--big blockquote { font: 700 clamp(1.1875rem, 2vw, 1.5rem)/1.45 var(--font-head); color: var(--ink); max-width: 46ch; }
.rvc footer { display: flex; align-items: center; gap: 12px; margin-top: auto; }
.rvc__av { width: 46px; height: 46px; flex: none; display: grid; place-items: center; border-radius: 50%; color: #fff; font: 700 .875rem/1 var(--font-body); background: #EDBA3A; }
.rvc__av--b { background: #F2C14E; } .rvc__av--g { background: #059669; } .rvc__av--o { background: #D97706; }
.rvc footer b { display: block; font-size: .9375rem; color: var(--ink); }
.rvc footer span { font-size: .8125rem; color: var(--muted); }

/* --- 7. Final CTA --- */
.cta__box { --ink: #FFFFFF; --text: #F5F2EB; --muted: #E8E2D4; --accent-text: #F5C04F; --btn-bg: #F2B632; --btn-fg: #140E00; --line: rgba(255, 255, 255, .22); --shade: rgba(255, 255, 255, .12); --shade-strong: rgba(255, 255, 255, .2);
  position: relative; isolation: isolate; overflow: hidden; padding: clamp(40px, 7vw, 88px) clamp(22px, 5vw, 64px); text-align: center; color: var(--text); border-radius: 32px; background: radial-gradient(120% 120% at 85% 0%, rgba(245, 192, 79, .28) 0%, transparent 55%), linear-gradient(135deg, #0B0A07 0%, #17130A 60%, #2A2008 100%); border: 1px solid rgba(245, 192, 79, .45); box-shadow: 0 30px 70px -24px rgba(245, 192, 79, .35); }
.cta__box::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .3; background-image: linear-gradient(rgba(255, 255, 255, .18) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .18) 1px, transparent 1px); background-size: 48px 48px; -webkit-mask-image: radial-gradient(60% 80% at 50% 50%, #000, transparent 80%); mask-image: radial-gradient(60% 80% at 50% 50%, #000, transparent 80%); }
.cta__box::after { content: ""; position: absolute; z-index: -1; inset-inline-end: -8%; bottom: -40%; width: 46%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(closest-side, rgba(31, 209, 139, .35), transparent); }
.cta__box .eyebrow { justify-content: center; }
.cta__box h2 { max-width: 16em; margin: 0 auto; font-size: clamp(1.875rem, 4.4vw, 3.25rem); font-weight: 800; letter-spacing: -.02em; color: #fff; }
.cta__box h2 .grad { background: linear-gradient(95deg, #93F0C8, #FAE7B8); -webkit-background-clip: text; background-clip: text; color: transparent; }
.cta__box p.lead { max-width: 560px; margin: 16px auto 0; font-size: 1.0625rem; color: var(--muted); }
.cta__btns { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 28px; }
.cta__box .btn--ghost { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .3); color: #fff; }
.cta__box .btn--ghost:hover { background: rgba(255, 255, 255, .22); }
.cta__note { max-width: 620px; margin: 28px auto 0; font-size: .75rem; line-height: 1.5; color: #EDE1C1; }

@media (max-width: 1023px) {
  .tm { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rv { grid-template-columns: minmax(0, 1fr); }
  .mt__steps { grid-template-columns: minmax(0, 1fr); gap: 28px; max-width: 560px; margin-inline: auto; }
  .mt__steps::before { display: none; }
}
@media (max-width: 640px) {
  .tm { grid-template-columns: minmax(0, 1fr); }
  .tmc__ph { aspect-ratio: 4 / 5; }
  .rv__grid { grid-template-columns: minmax(0, 1fr); }
  .rvc--big { grid-column: auto; }
  .cta__btns .btn { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce) { .tmc, .ms__card, .rvc { transition: none; } }

/* ===== CONTACT PAGE: kinetic market editorial ===== */
.cx-hero{position:relative;overflow:hidden;padding:clamp(46px,6vw,84px) 0 0;background:radial-gradient(ellipse at 82% 20%,color-mix(in srgb,var(--gain) 12%,transparent),transparent 32%),var(--bg)}
.cx-hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.32;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,#000,transparent 80%)}
.cx-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(32px,6vw,84px);align-items:center;padding-bottom:clamp(48px,7vw,92px)}
.cx-hero__copy{position:relative;z-index:2}.cx-hero .crumbs{margin-bottom:26px}.cx-hero h1{max-width:720px;font-size:clamp(2.6rem,5.5vw,5.2rem);letter-spacing:-.055em;line-height:.99}.cx-hero h1 span{display:block;margin-top:10px;color:var(--accent-text)}.cx-hero .lead{max-width:570px;margin:24px 0 0;color:var(--muted);font-size:clamp(1rem,1.3vw,1.125rem);line-height:1.8}.cx-hero__actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}.cx-textlink{display:inline-flex;gap:9px;align-items:center;font-size:.9rem;font-weight:700;text-decoration:none;color:var(--text)}.cx-textlink i{color:var(--gain);transition:transform .25s}.cx-textlink:hover i{transform:translateY(4px)}.cx-live-dot,.cx-pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gain);box-shadow:0 0 0 4px color-mix(in srgb,var(--gain) 16%,transparent);animation:cxPulse 2s infinite}.cx-proof{display:flex;align-items:center;gap:12px;margin-top:38px}.cx-proof__icon{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:var(--shade-strong);color:var(--accent-text)}.cx-proof b,.cx-proof small{display:block}.cx-proof b{font-size:.9rem;color:var(--ink)}.cx-proof small{font-size:.8rem;color:var(--muted);margin-top:2px}
.cx-hero__visual{position:relative;min-width:0;padding:18px 12px 28px 20px}.cx-hero__image{position:relative;z-index:1;width:100%;height:clamp(350px,43vw,535px);object-fit:cover;border-radius:46% 46% 22px 22px;box-shadow:var(--shadow);filter:saturate(.82)}.cx-hero__visual::after{content:"";position:absolute;z-index:0;inset:5% 0 0 9%;border:1px solid var(--gain);border-radius:46% 46% 24px 24px;transform:rotate(4deg);opacity:.65}.cx-orbit{position:absolute;border:1px solid color-mix(in srgb,var(--gain) 50%,transparent);border-radius:50%;pointer-events:none}.cx-orbit--one{width:110px;height:110px;right:-18px;top:8%;animation:cxOrbit 12s linear infinite}.cx-orbit--two{width:54px;height:54px;left:-2px;bottom:15%;animation:cxOrbit 9s linear infinite reverse}.cx-float{position:absolute;z-index:3;display:flex;align-items:center;gap:11px;padding:13px 16px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow);animation:cxFloat 5s ease-in-out infinite}.cx-float--top{top:12%;left:-15px}.cx-float--bottom{right:-5px;bottom:12%;animation-delay:-2s}.cx-float__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--gain) 15%,var(--surface));color:var(--accent-text)}.cx-float small,.cx-float b{display:block}.cx-float small{font-size:.65rem;color:var(--muted);letter-spacing:.09em}.cx-float b{font-size:.78rem;color:var(--ink);margin-top:3px}.cx-float--bottom .cx-pulse{flex:none}.cx-ticker{overflow:hidden;background:var(--ink);color:var(--bg);padding:13px 0;transform:rotate(-1deg) scale(1.02);transform-origin:center}.cx-ticker__track{width:max-content;animation:cxTicker 32s linear infinite}.cx-ticker__track span{font-size:.75rem;letter-spacing:.16em;font-weight:800;white-space:nowrap}.cx-ticker i{color:var(--gain);font-style:normal;margin:0 24px}
.cx-channels{padding-block:clamp(64px,8vw,110px)}.cx-section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}.cx-section-head h2,.cx-enquiry h2{max-width:740px;font-size:clamp(2rem,4.1vw,3.65rem);letter-spacing:-.045em}.cx-section-head h2 .grad,.cx-enquiry h2 .grad{color:var(--accent-text)}.cx-section-head .sec__lead{max-width:370px;margin:0;color:var(--muted)}.cx-channel-layout{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:16px;align-items:stretch}.cx-channel{position:relative;min-height:320px;overflow:hidden;display:flex;flex-direction:column;padding:24px;border-radius:22px;text-decoration:none;border:1px solid var(--line);transition:transform .35s ease,box-shadow .35s ease}.cx-channel:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.cx-channel--mint{background:var(--gain);color:#061b17;border-color:transparent}.cx-channel--dark{background:var(--ink);color:var(--bg);border-color:transparent}.cx-channel__number{font-size:.67rem;font-weight:800;letter-spacing:.12em;opacity:.75}.cx-channel__icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid currentColor;border-radius:17px;margin-top:26px;font-size:1.25rem}.cx-channel h3{font-size:1.7rem;margin-top:22px;color:inherit}.cx-channel p{font-size:.91rem;line-height:1.7;opacity:.8;margin:10px 0 20px;max-width:36ch}.cx-channel__link{margin-top:auto;font-size:.78rem;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid currentColor;padding-top:15px}.cx-channel--photo{padding:0;min-height:320px;color:#fff}.cx-channel--photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}.cx-channel--photo:hover>img{transform:scale(1.06)}.cx-channel--photo__overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:end;padding:24px;background:linear-gradient(180deg,rgba(17,16,12,.08),rgba(17,16,12,.92) 80%)}.cx-channel--photo h3{color:#fff;font-size:1.7rem;margin-top:18px}.cx-channel--photo p{color:#EEECE6;opacity:1}.cx-channel--photo a{display:flex;align-items:center;gap:10px;color:#fff;font-size:.85rem;font-weight:800;text-decoration:none}.cx-small-note{display:flex;align-items:center;gap:9px;margin-top:24px;font-size:.8rem;color:var(--muted)}.cx-small-note i{color:var(--accent-text)}
.cx-enquiry{padding-block:clamp(64px,8vw,110px);background:var(--shade);border-block:1px solid var(--line)}.cx-enquiry__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,7vw,90px);align-items:start}.cx-enquiry__aside{position:sticky;top:110px}.cx-enquiry__aside .sec__lead{color:var(--muted);margin-top:18px}.cx-aside-image{position:relative;margin-top:28px;border-radius:20px;overflow:hidden;aspect-ratio:16/9}.cx-aside-image img{width:100%;height:100%;object-fit:cover}.cx-image-caption{position:absolute;left:14px;right:14px;bottom:14px;padding:11px 14px;border:1px solid rgba(255,255,255,.25);border-radius:12px;background:rgba(22,21,17,.72);backdrop-filter:blur(10px);color:#fff;font-size:.78rem;font-weight:700}.cx-image-caption i{color:#54D6B0;margin-inline-end:7px}.cx-benefits{display:grid;gap:12px;margin-top:22px}.cx-benefits li{display:flex;align-items:center;gap:10px;font-size:.87rem;color:var(--text)}.cx-benefits i{color:var(--gain)}.cx-form-panel{padding:clamp(22px,4vw,42px);border-radius:26px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.cx-form-panel__top{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line)}.cx-form-index{font-size:.7rem;font-weight:800;letter-spacing:.12em;color:var(--muted)}.cx-form-index b{margin-left:8px;color:var(--accent-text)}.cx-form-spark{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:var(--shade-strong);color:var(--accent-text)}.cx-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px;padding-top:24px}.cx-field{min-width:0;display:flex;flex-direction:column;gap:8px}.cx-field--full{grid-column:1/-1}.cx-field label{font-size:.84rem;font-weight:700;color:var(--ink)}.cx-field label span,.cx-consent b{color:var(--loss)}.cx-field input,.cx-field select,.cx-field textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--text);padding:13px 14px;font:500 .9rem/1.5 var(--font-body);outline:none;transition:border-color .2s,box-shadow .2s}.cx-field input,.cx-field select{min-height:49px}.cx-field textarea{resize:vertical;min-height:132px}.cx-field input::placeholder,.cx-field textarea::placeholder{color:var(--muted);opacity:.8}.cx-field input:focus,.cx-field select:focus,.cx-field textarea:focus{border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--gain) 15%,transparent)}.cx-field .is-invalid,.cx-field input.is-invalid,.cx-field select.is-invalid,.cx-field textarea.is-invalid{border-color:var(--loss)}.cx-error{min-height:0;color:var(--loss);font-size:.75rem;line-height:1.4}.cx-error:empty{display:none}.cx-textarea-foot{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem}.cx-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;font-size:.82rem;color:var(--text)}.cx-consent input{width:17px;height:17px;accent-color:var(--gain);margin-top:3px;flex:none}.cx-submit{grid-column:1/-1;width:100%;border:0}.cx-form-privacy{grid-column:1/-1;display:flex;gap:8px;align-items:center;justify-content:center;color:var(--muted);font-size:.75rem;margin:-5px 0 0}.cx-form-privacy i{color:var(--gain)}.cx-form-status{grid-column:1/-1;font-size:.84rem;line-height:1.5}.cx-form-status:empty{display:none}.cx-form-status.is-error{padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--loss) 12%,transparent);color:var(--loss)}.cx-form-status.is-success{padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--gain) 14%,transparent);color:var(--accent-text)}
.cx-map-section{padding-block:clamp(64px,8vw,110px)}.cx-map-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);min-height:390px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}.cx-map-frame{position:relative;min-height:390px;background:var(--shade)}.cx-map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.82)}.cx-map-live{position:absolute;top:16px;left:16px;display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--text);font-size:.68rem;font-weight:800;letter-spacing:.1em;box-shadow:var(--shadow)}.cx-map-live .cx-live-dot{width:6px;height:6px}.cx-map-info{padding:clamp(24px,4vw,42px);display:flex;flex-direction:column;align-items:flex-start}.cx-map-stamp{display:flex;align-items:center;gap:8px;color:var(--accent-text);font-size:.7rem;font-weight:800;letter-spacing:.1em}.cx-map-info h3{font-size:clamp(1.6rem,2.5vw,2.2rem);margin-top:22px}.cx-map-info>p{font-size:.9rem;color:var(--muted);line-height:1.7;margin:12px 0 20px}.cx-map-detail{display:flex;gap:12px;align-items:flex-start;margin:10px 0}.cx-map-detail>span{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:12px;background:var(--shade-strong);color:var(--accent-text)}.cx-map-detail b,.cx-map-detail small{display:block}.cx-map-detail b{font-size:.82rem;color:var(--ink)}.cx-map-detail small{font-size:.77rem;color:var(--muted);margin-top:3px}.cx-map-info .btn{margin-top:16px}.cx-final{padding-top:0;padding-bottom:clamp(60px,8vw,100px)}.cx-final__box{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;overflow:hidden;padding:clamp(30px,6vw,72px);border-radius:28px;background:var(--ink);color:var(--bg)}.cx-final__box::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.22;background-image:linear-gradient(color-mix(in srgb,var(--bg) 35%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--bg) 35%,transparent) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(90deg,#000,transparent)}.cx-final__content{max-width:750px}.cx-final .eyebrow{color:var(--accent-text)}.cx-final h2{font-size:clamp(2rem,4.4vw,3.8rem);letter-spacing:-.04em;color:var(--bg)}.cx-final h2 span{color:var(--gain)}.cx-final__content>p:not(.eyebrow){max-width:600px;color:color-mix(in srgb,var(--bg) 75%,transparent);margin:14px 0 0}.cx-final__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.cx-final .btn--ghost{border-color:color-mix(in srgb,var(--bg) 35%,transparent);color:var(--bg)}.cx-final__symbol{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;width:clamp(120px,17vw,210px);aspect-ratio:1;border:1px solid color-mix(in srgb,var(--gain) 55%,transparent);border-radius:50%;color:var(--gain);animation:cxFloat 6s ease-in-out infinite}.cx-final__symbol i{font-size:clamp(2.8rem,6vw,5rem)}.cx-final__symbol span{font-size:.55rem;font-weight:800;letter-spacing:.13em;text-align:center}.cx-footer{border-top:1px solid var(--line);padding:28px 0 18px;background:var(--bg)}.cx-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.cx-footer__inner>p{font-size:.82rem;color:var(--muted);margin:0}.cx-footer__inner>a:last-child{font-size:.82rem;font-weight:700;text-decoration:none;color:var(--accent-text)}.cx-footer__bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem}
@keyframes cxPulse{0%,100%{box-shadow:0 0 0 4px color-mix(in srgb,var(--gain) 16%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--gain) 4%,transparent)}}@keyframes cxFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes cxOrbit{to{transform:rotate(360deg)}}@keyframes cxTicker{to{transform:translateX(-50%)}}
@media(max-width:1023px){.cx-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:26px}.cx-channel-layout{grid-template-columns:1fr 1fr}.cx-channel--photo{grid-column:1/-1;min-height:260px}.cx-enquiry__grid{grid-template-columns:1fr;gap:32px}.cx-enquiry__aside{position:static}.cx-aside-image{max-width:650px}.cx-map-layout{grid-template-columns:1fr  .8fr}}
@media(max-width:700px){.cx-hero__grid{grid-template-columns:1fr}.cx-hero__copy{order:1}.cx-hero__visual{order:0;max-width:520px;width:100%;margin-inline:auto;padding:8px 10px 20px}.cx-hero__image{height:clamp(250px,72vw,390px);border-radius:36% 36% 18px 18px}.cx-float--top{left:0;top:10%}.cx-float--bottom{right:0;bottom:9%}.cx-hero .crumbs{margin-bottom:18px}.cx-hero h1{font-size:clamp(2.55rem,11vw,4.2rem)}.cx-section-head{display:block}.cx-section-head .sec__lead{margin-top:14px}.cx-channel-layout{grid-template-columns:1fr}.cx-channel{min-height:280px}.cx-channel--photo{grid-column:auto}.cx-form{grid-template-columns:1fr}.cx-field--full,.cx-consent,.cx-submit,.cx-form-privacy,.cx-form-status{grid-column:1}.cx-map-layout{grid-template-columns:1fr}.cx-map-frame{min-height:300px}.cx-map-info{padding:25px}.cx-final__box{grid-template-columns:1fr}.cx-final__symbol{position:absolute;right:-32px;top:-30px;width:120px;opacity:.18}.cx-final__content{position:relative;z-index:1}.cx-footer__inner{align-items:flex-start;flex-direction:column}.cx-footer__bottom{flex-direction:column}.cx-ticker__track{animation-duration:24s}}
@media(max-width:420px){.cx-hero__actions{align-items:stretch;flex-direction:column}.cx-hero__actions .btn{width:100%}.cx-textlink{justify-content:center}.cx-float{padding:10px 11px;gap:8px}.cx-float__icon{width:34px;height:34px}.cx-float b{font-size:.7rem}.cx-float small{font-size:.58rem}.cx-form-panel{padding:20px 16px}.cx-channel{padding:20px}.cx-final__actions{flex-direction:column}.cx-final__actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.cx-live-dot,.cx-pulse,.cx-orbit,.cx-float,.cx-final__symbol,.cx-ticker__track{animation:none!important}.cx-channel,.cx-textlink i,.cx-channel--photo>img{transition:none!important}.cx-ticker__track{transform:none}}

/* =========================================================
   CONTACT PAGE REDESIGN — editorial trading journal aesthetic
   ========================================================= */
.contact-redesign{overflow:hidden;background:var(--bg);color:var(--text)}
.contact-redesign .cr-hero{position:relative;padding:clamp(48px,6vw,88px) 0 0;background:var(--ink);color:var(--bg);isolation:isolate}
.contact-redesign .cr-hero:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 78% 35%,color-mix(in srgb,var(--gain) 17%,transparent),transparent 27%),linear-gradient(115deg,transparent 45%,rgba(255,255,255,.035) 45.2%,transparent 45.5%);pointer-events:none}
.contact-redesign .cr-hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:center;gap:clamp(28px,6vw,90px);padding-bottom:clamp(52px,7vw,90px)}
.contact-redesign .cr-hero__copy{position:relative;z-index:2}.contact-redesign .cr-kicker,.contact-redesign .cr-label{font-size:.7rem;line-height:1.5;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}
.contact-redesign .cr-kicker{display:flex;align-items:center;gap:12px;color:#E8D9B1;flex-wrap:wrap}.contact-redesign .cr-kicker__line{height:1px;width:34px;background:var(--gain)}.contact-redesign .cr-live{display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--gain);box-shadow:0 0 0 5px color-mix(in srgb,var(--gain) 18%,transparent);animation:crBlink 2s infinite}
.contact-redesign .cr-hero h1{margin:28px 0 0;max-width:760px;font-size:clamp(3.2rem,6.8vw,6.4rem);line-height:.94;letter-spacing:-.065em;color:#fff}.contact-redesign .cr-hero h1 em{font-style:normal;color:var(--gain)}
.contact-redesign .cr-hero__lead{max-width:550px;margin:25px 0 0;color:#EADCB8;font-size:1.02rem;line-height:1.85}.contact-redesign .cr-hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:29px}
.contact-redesign .cr-button{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:13px 19px;border:1px solid transparent;border-radius:8px;font-size:.86rem;font-weight:800;text-decoration:none;transition:transform .25s ease,background .25s ease,border-color .25s ease;cursor:pointer}.contact-redesign .cr-button:hover{transform:translateY(-3px)}.contact-redesign .cr-button--mint{background:var(--gain);color:#0a211d}.contact-redesign .cr-button--mint:hover{background:#75e4c3}.contact-redesign .cr-underlink{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:.84rem;font-weight:700;text-decoration:none}.contact-redesign .cr-underlink i{color:var(--gain);font-size:.75rem}
.contact-redesign .cr-hero__meta{display:flex;gap:clamp(14px,3vw,35px);margin-top:45px;padding-top:20px;border-top:1px solid rgba(255,255,255,.17)}.contact-redesign .cr-hero__meta div{display:flex;align-items:center;gap:10px}.contact-redesign .cr-hero__meta strong{font-size:1.25rem;color:var(--gain);font-weight:800}.contact-redesign .cr-hero__meta span{max-width:95px;color:#EADBB5;font-size:.73rem;line-height:1.4}
.contact-redesign .cr-hero__art{position:relative;min-width:0;padding:0 14px 30px 0}.contact-redesign .cr-hero__image-wrap{position:relative;height:clamp(360px,43vw,520px);overflow:hidden;border-radius:180px 180px 12px 12px;background:#584619}.contact-redesign .cr-hero__image-wrap:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(21,19,14,.55))}.contact-redesign .cr-hero__image-wrap img{width:100%;height:100%;object-fit:cover;filter:saturate(.78);transition:transform .8s cubic-bezier(.2,.7,.2,1)}.contact-redesign .cr-hero__art:hover .cr-hero__image-wrap img{transform:scale(1.055)}.contact-redesign .cr-image-tag{position:absolute;z-index:1;left:20px;bottom:22px;display:flex;align-items:center;gap:10px;color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.1em}.contact-redesign .cr-image-tag i{color:var(--gain)}.contact-redesign .cr-orbit-label{position:absolute;z-index:3;left:-40px;top:24%;display:flex;align-items:center;gap:12px;max-width:290px;padding:15px 17px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:#F9F8F6;color:#26231C;box-shadow:0 18px 45px rgba(0,0,0,.25);animation:crHover 5s ease-in-out infinite}.contact-redesign .cr-orbit-label__icon{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:10px;background:#dff8ef;color:#148568}.contact-redesign .cr-orbit-label small,.contact-redesign .cr-orbit-label b{display:block}.contact-redesign .cr-orbit-label small{font-size:.61rem;letter-spacing:.1em;color:#BA9536}.contact-redesign .cr-orbit-label b{margin-top:4px;font-size:.83rem}.contact-redesign .cr-orbit-arrow{margin-left:5px;color:#148568;font-size:.8rem}.contact-redesign .cr-hero__index{position:absolute;right:-3px;bottom:0;color:#D5B970;font-size:.62rem;letter-spacing:.17em;writing-mode:vertical-rl}
.contact-redesign .cr-marquee{overflow:hidden;background:var(--gain);color:#10251f;padding:13px 0;transform:rotate(-1deg) scale(1.02);transform-origin:center}.contact-redesign .cr-marquee__track{width:max-content;white-space:nowrap;animation:crMarquee 28s linear infinite;font-size:.7rem;font-weight:900;letter-spacing:.17em}.contact-redesign .cr-marquee b{margin:0 26px;color:#fff;font-size:.9rem}
.contact-redesign .cr-routes{padding:clamp(66px,8vw,112px) 0;background:var(--bg)}.contact-redesign .cr-section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.contact-redesign .cr-section-heading h2{margin:13px 0 0;font-size:clamp(2.4rem,4.7vw,4.6rem);line-height:.98;letter-spacing:-.055em;color:var(--ink)}.contact-redesign .cr-section-heading h2 span{color:var(--accent-text)}.contact-redesign .cr-section-heading>p{max-width:365px;margin:0 0 5px;color:var(--muted);font-size:.94rem;line-height:1.8}
.contact-redesign .cr-route-grid{display:grid;grid-template-columns:1fr 1fr 1.08fr;gap:14px;align-items:stretch}.contact-redesign .cr-route{position:relative;min-height:340px;display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:12px;text-decoration:none;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.contact-redesign .cr-route:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.contact-redesign .cr-route--email{background:var(--gain);color:#10251f;border-color:transparent}.contact-redesign .cr-route--phone{background:var(--shade);color:var(--ink)}.contact-redesign .cr-route__top{display:flex;justify-content:space-between;align-items:center;font-size:.65rem;font-weight:900;letter-spacing:.12em;opacity:.8}.contact-redesign .cr-route__icon{display:grid;place-items:center;width:54px;height:54px;margin-top:35px;border:1px solid currentColor;border-radius:50%;font-size:1.15rem}.contact-redesign .cr-route h3{margin:23px 0 0;font-size:clamp(1.55rem,2.2vw,2rem);line-height:1.1;letter-spacing:-.035em;color:inherit}.contact-redesign .cr-route p{margin:11px 0 22px;max-width:34ch;font-size:.88rem;line-height:1.7;opacity:.8}.contact-redesign .cr-route__bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:15px;border-top:1px solid currentColor;font-size:.76rem;font-weight:800;overflow-wrap:anywhere}.contact-redesign .cr-route__bottom i{flex:none}.contact-redesign .cr-route-photo{position:relative;min-height:340px;overflow:hidden;border-radius:12px;background:#2E2B24}.contact-redesign .cr-route-photo>img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;transition:transform .8s}.contact-redesign .cr-route-photo:hover>img{transform:scale(1.06)}.contact-redesign .cr-route-photo__shade{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:end;padding:24px;background:linear-gradient(180deg,rgba(21,19,14,.03),rgba(21,19,14,.91))}.contact-redesign .cr-route-photo .cr-label{color:var(--gain)}.contact-redesign .cr-route-photo h3{margin:15px 0 20px;color:#fff;font-size:2rem;line-height:1.08;letter-spacing:-.04em}.contact-redesign .cr-route-photo a{display:flex;align-items:center;gap:12px;color:#fff;font-size:.82rem;font-weight:800;text-decoration:none}.contact-redesign .cr-route-photo a i{color:var(--gain)}.contact-redesign .cr-disclaimer{display:flex;align-items:center;gap:10px;margin:22px 0 0;color:var(--muted);font-size:.77rem}.contact-redesign .cr-disclaimer i{color:var(--accent-text)}
.contact-redesign .cr-enquiry{padding:clamp(65px,8vw,112px) 0;background:var(--shade);border-block:1px solid var(--line)}.contact-redesign .cr-enquiry__grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:start;gap:clamp(30px,7vw,92px)}.contact-redesign .cr-enquiry__intro h2{max-width:520px;margin:14px 0 0;color:var(--ink);font-size:clamp(2.55rem,4.8vw,4.55rem);line-height:.99;letter-spacing:-.06em}.contact-redesign .cr-enquiry__intro h2 span{color:var(--accent-text)}.contact-redesign .cr-enquiry__intro>p:not(.cr-label){max-width:470px;margin:19px 0 0;color:var(--muted);font-size:.94rem;line-height:1.8}.contact-redesign .cr-enquiry__photo{position:relative;margin-top:30px;aspect-ratio:1.55;overflow:hidden;border-radius:12px;background:#353129}.contact-redesign .cr-enquiry__photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.contact-redesign .cr-enquiry__photo:hover img{transform:scale(1.05)}.contact-redesign .cr-enquiry__photo:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(19,17,13,.78))}.contact-redesign .cr-enquiry__photo span{position:absolute;z-index:1;left:16px;bottom:16px;color:#fff;font-size:.63rem;font-weight:900;letter-spacing:.1em}.contact-redesign .cr-promise{display:flex;align-items:center;gap:13px;margin-top:23px}.contact-redesign .cr-promise>span{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;background:var(--gain);color:#10251f}.contact-redesign .cr-promise p{margin:0}.contact-redesign .cr-promise b,.contact-redesign .cr-promise small{display:block}.contact-redesign .cr-promise b{font-size:.85rem;color:var(--ink)}.contact-redesign .cr-promise small{margin-top:4px;color:var(--muted);font-size:.77rem;line-height:1.5}
.contact-redesign .cr-form-shell{padding:clamp(22px,3.5vw,38px);border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 20px 55px rgba(27,24,18,.07)}.contact-redesign .cr-form-shell__heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:21px;border-bottom:1px solid var(--line)}.contact-redesign .cr-form-shell__heading h3{margin:8px 0 0;color:var(--ink);font-size:1.8rem;letter-spacing:-.04em}.contact-redesign .cr-form-shell__heading h3 span{color:var(--accent-text)}.contact-redesign .cr-form-stamp{display:grid;place-content:center;width:53px;height:53px;flex:none;border-radius:50%;background:var(--ink);color:var(--gain);text-align:center;font-weight:900;font-size:.9rem;line-height:1.05;transform:rotate(8deg)}.contact-redesign .cr-form-stamp small{margin-top:4px;font-size:.52rem;letter-spacing:.08em}.contact-redesign .cr-form{display:grid;grid-template-columns:1fr 1fr;gap:17px 13px;padding-top:23px}.contact-redesign .cx-field{display:flex;flex-direction:column;gap:7px;min-width:0}.contact-redesign .cx-field label{font-size:.8rem;font-weight:800;color:var(--ink)}.contact-redesign .cx-field label span,.contact-redesign .cx-consent b{color:var(--loss)}.contact-redesign .cx-field input,.contact-redesign .cx-field select,.contact-redesign .cx-field textarea{width:100%;min-width:0;min-height:48px;padding:12px 13px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--text);font:500 .86rem/1.5 var(--font-body);outline:none;transition:border-color .2s,box-shadow .2s}.contact-redesign .cx-field textarea{min-height:125px;resize:vertical}.contact-redesign .cx-field input:focus,.contact-redesign .cx-field select:focus,.contact-redesign .cx-field textarea:focus{border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--gain) 17%,transparent)}.contact-redesign .cx-field input::placeholder,.contact-redesign .cx-field textarea::placeholder{color:var(--muted);opacity:.8}.contact-redesign .cx-field .is-invalid,.contact-redesign .cx-field input.is-invalid,.contact-redesign .cx-field select.is-invalid,.contact-redesign .cx-field textarea.is-invalid{border-color:var(--loss)}.contact-redesign .cx-field--full,.contact-redesign .cx-consent,.contact-redesign .cx-submit,.contact-redesign .cx-form-privacy,.contact-redesign .cx-form-status{grid-column:1/-1}.contact-redesign .cx-error{min-height:0;color:var(--loss);font-size:.73rem;line-height:1.4}.contact-redesign .cx-error:empty{display:none}.contact-redesign .cx-textarea-foot{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem}.contact-redesign .cx-consent{display:flex;align-items:flex-start;gap:10px;color:var(--text);font-size:.79rem;line-height:1.5}.contact-redesign .cx-consent input{width:16px;height:16px;flex:none;margin-top:3px;accent-color:var(--gain)}.contact-redesign .cx-submit{width:100%;border:0;font-family:inherit}.contact-redesign .cx-form-privacy{display:flex;align-items:center;justify-content:center;gap:8px;margin:-3px 0 0;color:var(--muted);font-size:.73rem}.contact-redesign .cx-form-privacy i{color:var(--accent-text)}.contact-redesign .cx-form-status{font-size:.82rem;line-height:1.5}.contact-redesign .cx-form-status:empty{display:none}.contact-redesign .cx-form-status.is-error,.contact-redesign .cx-form-status.is-success{padding:12px;border-radius:7px}.contact-redesign .cx-form-status.is-error{background:color-mix(in srgb,var(--loss) 12%,transparent);color:var(--loss)}.contact-redesign .cx-form-status.is-success{background:color-mix(in srgb,var(--gain) 15%,transparent);color:var(--accent-text)}
.contact-redesign .cr-location{padding:clamp(65px,8vw,108px) 0;background:var(--bg)}.contact-redesign .cr-location__panel{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.contact-redesign .cr-map{position:relative;min-height:430px;background:#dce6e9}.contact-redesign .cr-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.75)}.contact-redesign .cr-map__badge{position:absolute;top:17px;left:17px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.45);border-radius:6px;background:rgba(37,34,28,.91);color:#fff;font-size:.66rem;font-weight:900;letter-spacing:.1em}.contact-redesign .cr-map__badge .cr-live{width:7px;height:7px}.contact-redesign .cr-location__info{padding:clamp(25px,4vw,42px);background:var(--ink);color:#fff}.contact-redesign .cr-location__pin{display:grid;place-items:center;width:46px;height:46px;margin-bottom:27px;border-radius:50%;background:var(--gain);color:#10251f;font-size:1.1rem}.contact-redesign .cr-location__info .cr-label{color:var(--gain)}.contact-redesign .cr-location__info h3{margin:11px 0 0;color:#fff;font-size:clamp(1.7rem,2.6vw,2.5rem);line-height:1.05;letter-spacing:-.04em}.contact-redesign .cr-location__info>p:not(.cr-label){margin:15px 0 0;color:#EADCB8;font-size:.86rem;line-height:1.8}.contact-redesign .cr-hours{display:flex;gap:13px;margin:25px 0;padding:18px 0;border-block:1px solid rgba(255,255,255,.16)}.contact-redesign .cr-hours>span{color:var(--gain);font-size:1.1rem}.contact-redesign .cr-hours b,.contact-redesign .cr-hours small{display:block}.contact-redesign .cr-hours b{font-size:.83rem}.contact-redesign .cr-hours small{margin-top:6px;color:#EADCB8;font-size:.77rem;line-height:1.6}.contact-redesign .cr-button--outline{border-color:rgba(255,255,255,.38);color:#fff}.contact-redesign .cr-button--outline:hover{border-color:var(--gain);background:rgba(77,227,168,.1)}
.contact-redesign .cr-closer{padding:0 0 clamp(65px,8vw,100px);background:var(--bg)}.contact-redesign .cr-closer__panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:30px;min-height:340px;padding:clamp(30px,6vw,70px);overflow:hidden;border-radius:14px;background:var(--ink);color:#fff;isolation:isolate}.contact-redesign .cr-closer__panel:before{content:"";position:absolute;z-index:-1;width:480px;height:480px;right:-120px;top:-250px;border:1px solid rgba(77,227,168,.22);border-radius:50%;box-shadow:0 0 0 38px rgba(77,227,168,.035),0 0 0 78px rgba(77,227,168,.025)}.contact-redesign .cr-closer__copy{position:relative;z-index:2}.contact-redesign .cr-closer__copy .cr-label{color:var(--gain)}.contact-redesign .cr-closer h2{max-width:800px;margin:15px 0 0;color:#fff;font-size:clamp(2.5rem,5vw,4.7rem);line-height:.99;letter-spacing:-.06em}.contact-redesign .cr-closer h2 em{color:var(--gain);font-style:normal}.contact-redesign .cr-closer__copy>p:not(.cr-label){max-width:610px;margin:17px 0 0;color:#EADCB8;font-size:.93rem;line-height:1.8}.contact-redesign .cr-closer__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.contact-redesign .cr-button--light{border-color:rgba(255,255,255,.3);color:#fff}.contact-redesign .cr-button--light:hover{background:rgba(255,255,255,.08)}.contact-redesign .cr-closer__graphic{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;width:205px;aspect-ratio:1;border:1px solid rgba(77,227,168,.48);border-radius:50%;color:var(--gain);justify-self:center;animation:crHover 6s ease-in-out infinite}.contact-redesign .cr-closer__graphic>i{font-size:4.5rem}.contact-redesign .cr-closer__ring{position:absolute;inset:13px;border:1px dashed rgba(77,227,168,.45);border-radius:50%;animation:crRotate 25s linear infinite}.contact-redesign .cr-closer__graphic-label{font-size:.52rem;font-weight:900;letter-spacing:.12em;text-align:center}
@keyframes crBlink{0%,100%{box-shadow:0 0 0 4px rgba(77,227,168,.12)}50%{box-shadow:0 0 0 8px rgba(77,227,168,.04)}}@keyframes crHover{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes crMarquee{to{transform:translateX(-50%)}}@keyframes crRotate{to{transform:rotate(360deg)}}
@media(max-width:1023px){.contact-redesign .cr-hero__grid{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:28px}.contact-redesign .cr-hero h1{font-size:clamp(3rem,6vw,5rem)}.contact-redesign .cr-orbit-label{left:-16px}.contact-redesign .cr-route-grid{grid-template-columns:1fr 1fr}.contact-redesign .cr-route-photo{grid-column:1/-1;min-height:260px}.contact-redesign .cr-enquiry__grid{grid-template-columns:1fr;gap:35px}.contact-redesign .cr-enquiry__intro{max-width:760px}.contact-redesign .cr-enquiry__photo{max-width:580px}.contact-redesign .cr-location__panel{grid-template-columns:1fr .75fr}}
@media(max-width:700px){.contact-redesign .cr-hero{padding-top:42px}.contact-redesign .cr-hero__grid{grid-template-columns:1fr;gap:30px}.contact-redesign .cr-hero__art{grid-row:1;padding:0 10px 24px 20px;max-width:540px;width:100%;margin:auto}.contact-redesign .cr-hero__image-wrap{height:clamp(270px,76vw,390px);border-radius:150px 150px 10px 10px}.contact-redesign .cr-orbit-label{left:-2px;top:21%;padding:11px 12px;gap:9px}.contact-redesign .cr-orbit-label__icon{width:34px;height:34px}.contact-redesign .cr-orbit-label b{font-size:.72rem}.contact-redesign .cr-orbit-label small{font-size:.53rem}.contact-redesign .cr-hero h1{font-size:clamp(3.1rem,13vw,4.8rem)}.contact-redesign .cr-hero__lead{font-size:.94rem}.contact-redesign .cr-hero__meta{gap:12px;margin-top:30px}.contact-redesign .cr-hero__meta div{align-items:flex-start;flex-direction:column;gap:4px}.contact-redesign .cr-hero__meta span{max-width:110px}.contact-redesign .cr-section-heading{display:block}.contact-redesign .cr-section-heading h2{font-size:clamp(2.5rem,11vw,3.7rem)}.contact-redesign .cr-section-heading>p{margin-top:16px}.contact-redesign .cr-route-grid{grid-template-columns:1fr}.contact-redesign .cr-route{min-height:300px}.contact-redesign .cr-route-photo{grid-column:auto;min-height:310px}.contact-redesign .cr-form{grid-template-columns:1fr}.contact-redesign .cx-field--full,.contact-redesign .cx-consent,.contact-redesign .cx-submit,.contact-redesign .cx-form-privacy,.contact-redesign .cx-form-status{grid-column:1}.contact-redesign .cr-location__panel{grid-template-columns:1fr}.contact-redesign .cr-map{min-height:320px}.contact-redesign .cr-location__info{padding:26px}.contact-redesign .cr-closer__panel{grid-template-columns:1fr;gap:25px;padding:30px 24px}.contact-redesign .cr-closer__graphic{position:absolute;right:-65px;top:-55px;width:170px;opacity:.17}.contact-redesign .cr-closer__copy{z-index:1}.contact-redesign .cr-closer h2{font-size:clamp(2.5rem,10vw,3.5rem)}.contact-redesign .cr-closer__actions{flex-direction:column;align-items:stretch}.contact-redesign .cr-closer__actions .cr-button{width:100%}.contact-redesign .cr-marquee__track{animation-duration:20s}}
@media(max-width:380px){.contact-redesign .cr-hero h1{font-size:2.8rem}.contact-redesign .cr-hero__actions{align-items:stretch;flex-direction:column}.contact-redesign .cr-hero__actions .cr-button{width:100%}.contact-redesign .cr-underlink{justify-content:center;font-size:.78rem}.contact-redesign .cr-orbit-label{max-width:240px}.contact-redesign .cr-form-shell{padding:20px 15px}.contact-redesign .cr-hero__meta span{font-size:.66rem}}
@media(prefers-reduced-motion:reduce){.contact-redesign .cr-live,.contact-redesign .cr-orbit-label,.contact-redesign .cr-marquee__track,.contact-redesign .cr-closer__graphic,.contact-redesign .cr-closer__ring{animation:none!important}.contact-redesign .cr-route,.contact-redesign .cr-button,.contact-redesign img{transition:none!important}}
/* Contact redesign contrast locks: these panels intentionally stay navy in both themes. */
.contact-redesign .cr-hero,.contact-redesign .cr-closer__panel,.contact-redesign .cr-location__info{background-color:#26231C}
.contact-redesign .cr-section-heading h2,.contact-redesign .cr-enquiry__intro h2{color:var(--text)}
.contact-redesign .cr-route--phone{background:var(--surface);color:var(--text)}
.contact-redesign .cr-route--phone h3,.contact-redesign .cr-route--phone .cr-route__bottom{color:var(--text)}
[dir="rtl"] .contact-redesign .cr-hero__index{right:auto;left:-3px;writing-mode:vertical-lr}
[dir="rtl"] .contact-redesign .cr-orbit-label{left:auto;right:-40px}
[dir="rtl"] .contact-redesign .cr-hero__art{padding:0 0 30px 14px}
[dir="rtl"] .contact-redesign .cr-map__badge{left:auto;right:17px}
[dir="rtl"] .contact-redesign .cr-enquiry__photo span{left:auto;right:16px}
@media(max-width:1023px){[dir="rtl"] .contact-redesign .cr-orbit-label{right:-16px}}
@media(max-width:700px){[dir="rtl"] .contact-redesign .cr-hero__art{padding:0 20px 24px 10px}[dir="rtl"] .contact-redesign .cr-orbit-label{right:-2px}}

/* ===== Contact page: cohesive TradeWise visual system, refined redesign ===== */
.contact-redesign{background:var(--bg);color:var(--text)}
.contact-redesign .cr-hero{padding:clamp(36px,5vw,72px) 0 0;background:radial-gradient(circle at 78% 25%,rgba(245,202,93,.25),transparent 30%),linear-gradient(135deg,#1E1B13 0%,#312D23 58%,#23201A 100%);color:#fff}
.contact-redesign .cr-hero:before{background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(90deg,transparent,#000)}
.contact-redesign .cr-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:clamp(28px,5vw,72px);padding-bottom:clamp(42px,6vw,70px)}
.contact-redesign .cr-kicker{color:#EFE8D5}.contact-redesign .cr-label{color:var(--accent-text)}
.contact-redesign .cr-hero h1{font-size:clamp(3.15rem,6.2vw,6rem);line-height:.98;letter-spacing:-.065em}
.contact-redesign .cr-hero h1 em{color:var(--gain)}
.contact-redesign .cr-hero__lead{color:#EEE3C6;max-width:500px;line-height:1.8}
.contact-redesign .cr-button{border-radius:999px;min-height:48px;padding:13px 21px}
.contact-redesign .cr-button--mint{background:var(--gain);color:#071c16;box-shadow:0 10px 24px color-mix(in srgb,var(--gain) 20%,transparent)}
.contact-redesign .cr-button--mint:hover{filter:brightness(1.07);box-shadow:0 14px 30px color-mix(in srgb,var(--gain) 25%,transparent)}
.contact-redesign .cr-underlink{color:#fff}.contact-redesign .cr-underlink i{color:var(--gold)}
.contact-redesign .cr-hero__meta{border-color:rgba(255,255,255,.2);gap:clamp(12px,2vw,24px)}
.contact-redesign .cr-hero__meta strong{color:var(--gold)}
.contact-redesign .cr-hero__image-wrap{height:clamp(350px,40vw,490px);border-radius:48% 48% 16px 16px;outline:1px solid rgba(255,255,255,.22);outline-offset:8px}
.contact-redesign .cr-hero__image-wrap img{filter:saturate(.88)}
.contact-redesign .cr-image-tag{left:22px;bottom:22px;padding:10px 13px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(30,27,19,.72);backdrop-filter:blur(10px);font-size:.62rem}
.contact-redesign .cr-orbit-label{left:-30px;top:24%;border:1px solid rgba(245,202,93,.22);border-radius:15px;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.contact-redesign .cr-orbit-label__icon{background:color-mix(in srgb,var(--gain) 16%,white);color:#087f5b}
.contact-redesign .cr-hero__index{color:#E2CE9B}
.contact-redesign .cr-marquee{transform:none;margin-top:0;background:var(--gain);color:#071c16;padding:12px 0}
.contact-redesign .cr-marquee b{color:var(--gold)}
.contact-redesign .cr-routes{padding:clamp(58px,7vw,92px) 0;background:var(--bg)}
.contact-redesign .cr-section-heading{align-items:end;margin-bottom:30px}
.contact-redesign .cr-section-heading h2,.contact-redesign .cr-enquiry__intro h2{font-size:clamp(2.35rem,4.5vw,4.25rem);letter-spacing:-.055em;line-height:1.02}
.contact-redesign .cr-section-heading h2 span,.contact-redesign .cr-enquiry__intro h2 span{color:var(--accent-text)}
.contact-redesign .cr-route-grid{grid-template-columns:.92fr .92fr 1.16fr;gap:16px}
.contact-redesign .cr-route{min-height:320px;padding:25px;border-radius:20px 20px 20px 5px;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-radius .35s}
.contact-redesign .cr-route:hover{transform:translateY(-8px);border-radius:20px;box-shadow:var(--shadow)}
.contact-redesign .cr-route--email{background:var(--accent);color:#fff}
.contact-redesign .cr-route--email .cr-route__icon{border-color:rgba(255,255,255,.55)}
.contact-redesign .cr-route--phone{background:var(--surface);color:var(--text);border-color:var(--line)}
.contact-redesign .cr-route--phone h3,.contact-redesign .cr-route--phone .cr-route__bottom{color:var(--ink)}
.contact-redesign .cr-route--phone .cr-route__icon{color:var(--gain)}
.contact-redesign .cr-route h3{font-size:clamp(1.45rem,2vw,1.9rem)}
.contact-redesign .cr-route-photo{min-height:320px;border-radius:20px 20px 5px 20px}
.contact-redesign .cr-route-photo__shade{background:linear-gradient(180deg,rgba(30,27,19,.02),rgba(30,27,19,.9) 88%)}
.contact-redesign .cr-route-photo .cr-label,.contact-redesign .cr-route-photo a i{color:var(--gold)}
.contact-redesign .cr-disclaimer{padding:13px 16px;border-left:3px solid var(--gold);background:var(--shade);border-radius:0 10px 10px 0;font-size:.8rem}
.contact-redesign .cr-disclaimer i{color:var(--gold)}
.contact-redesign .cr-enquiry{position:relative;padding:clamp(60px,7vw,96px) 0;background:var(--shade);border-block:1px solid var(--line)}
.contact-redesign .cr-enquiry:before{content:"03";position:absolute;top:24px;right:max(24px,calc((100vw - var(--wrap))/2));font:800 clamp(5rem,12vw,10rem)/1 var(--font-head);letter-spacing:-.08em;color:color-mix(in srgb,var(--accent) 7%,transparent);pointer-events:none}
.contact-redesign .cr-enquiry__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,66px);align-items:start}
.contact-redesign .cr-enquiry__photo{border-radius:24px 24px 24px 5px;aspect-ratio:1.7;box-shadow:12px 12px 0 color-mix(in srgb,var(--accent) 12%,transparent)}
.contact-redesign .cr-enquiry__photo span{font-size:.62rem;letter-spacing:.08em}
.contact-redesign .cr-promise>span{background:var(--gold);color:#251600}
.contact-redesign .cr-form-shell{position:relative;padding:clamp(22px,3.2vw,38px);border:1px solid var(--line);border-radius:24px 24px 24px 6px;background:var(--surface);box-shadow:0 24px 60px rgba(30,27,19,.12)}
.contact-redesign .cr-form-shell__heading{align-items:start}
.contact-redesign .cr-form-shell__heading h3{font-size:clamp(1.65rem,2.5vw,2.15rem)}
.contact-redesign .cr-form-stamp{border-radius:15px;background:var(--accent);color:var(--gold);transform:rotate(5deg)}
.contact-redesign .cr-form{gap:18px 15px}
.contact-redesign .cx-field label{font-size:.82rem}
.contact-redesign .cx-field input,.contact-redesign .cx-field select,.contact-redesign .cx-field textarea{border-radius:12px;background:var(--bg);min-height:50px;padding:13px 14px}
.contact-redesign .cx-field textarea{min-height:130px}
.contact-redesign .cx-field input:focus,.contact-redesign .cx-field select:focus,.contact-redesign .cx-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}
.contact-redesign .cx-submit{margin-top:2px;border-radius:999px}
.contact-redesign .cx-consent input{accent-color:var(--accent)}
.contact-redesign .cr-location{padding:clamp(58px,7vw,92px) 0;background:var(--bg)}
.contact-redesign .cr-location__panel{grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr);border:1px solid var(--line);border-radius:24px 24px 24px 6px;box-shadow:var(--shadow)}
.contact-redesign .cr-map{min-height:420px}
.contact-redesign .cr-map__badge{border-radius:999px;background:var(--ink);color:var(--bg)}
.contact-redesign .cr-location__info{background:linear-gradient(150deg,#312D23,#1E1B13);padding:clamp(25px,3.8vw,42px)}
.contact-redesign .cr-location__pin{background:var(--gold);color:#251600;border-radius:14px}
.contact-redesign .cr-location__info .cr-label{color:var(--gain)}
.contact-redesign .cr-location__info h3{font-size:clamp(1.75rem,2.7vw,2.5rem)}
.contact-redesign .cr-button--outline{border-color:rgba(255,255,255,.42);border-radius:999px}
.contact-redesign .cr-button--outline:hover{border-color:var(--gain);background:rgba(245,202,93,.2)}
.contact-redesign .cr-closer{padding:0 0 clamp(58px,7vw,90px)}
.contact-redesign .cr-closer__panel{grid-template-columns:minmax(0,1fr) 220px;min-height:320px;border-radius:26px 26px 26px 6px;background:linear-gradient(125deg,#1E1B13,#3F392C);box-shadow:0 24px 60px rgba(30,27,19,.2)}
.contact-redesign .cr-closer__panel:before{border-color:rgba(245,202,93,.38);box-shadow:0 0 0 38px rgba(245,202,93,.08),0 0 0 78px rgba(5,150,105,.05)}
.contact-redesign .cr-closer__copy .cr-label{color:var(--gold)}
.contact-redesign .cr-closer h2 em{color:var(--gain)}
.contact-redesign .cr-closer__graphic{border-color:var(--gain);color:var(--gain)}
.contact-redesign .cr-closer__ring{border-color:var(--gold)}
.contact-redesign .cr-button--light{border-color:rgba(255,255,255,.35);border-radius:999px}
@media(max-width:1023px){.contact-redesign .cr-route-grid{grid-template-columns:1fr 1fr}.contact-redesign .cr-route-photo{grid-column:1/-1;min-height:280px}.contact-redesign .cr-enquiry__grid{grid-template-columns:1fr;gap:34px}.contact-redesign .cr-enquiry__intro{max-width:760px}.contact-redesign .cr-enquiry__photo{max-width:600px}.contact-redesign .cr-location__panel{grid-template-columns:1fr .82fr}}
@media(max-width:700px){.contact-redesign .cr-hero__grid{grid-template-columns:1fr;gap:28px}.contact-redesign .cr-hero__art{grid-row:1;padding:0 12px 20px;max-width:520px}.contact-redesign .cr-hero__image-wrap{height:clamp(260px,72vw,370px);border-radius:44% 44% 14px 14px}.contact-redesign .cr-orbit-label{left:0;top:23%;max-width:260px}.contact-redesign .cr-hero h1{font-size:clamp(3rem,12.5vw,4.5rem)}.contact-redesign .cr-hero__meta{gap:12px}.contact-redesign .cr-hero__meta span{font-size:.68rem}.contact-redesign .cr-section-heading{display:block}.contact-redesign .cr-section-heading>p{margin-top:15px}.contact-redesign .cr-route-grid{grid-template-columns:1fr}.contact-redesign .cr-route{min-height:280px}.contact-redesign .cr-route-photo{grid-column:auto;min-height:300px}.contact-redesign .cr-enquiry:before{right:14px;top:10px;font-size:5rem}.contact-redesign .cr-form{grid-template-columns:1fr}.contact-redesign .cx-field--full,.contact-redesign .cx-consent,.contact-redesign .cx-submit,.contact-redesign .cx-form-privacy,.contact-redesign .cx-form-status{grid-column:1}.contact-redesign .cr-location__panel{grid-template-columns:1fr}.contact-redesign .cr-map{min-height:300px}.contact-redesign .cr-closer__panel{grid-template-columns:1fr;gap:20px;padding:28px 22px}.contact-redesign .cr-closer__graphic{position:absolute;right:-58px;top:-55px;width:160px;opacity:.16}.contact-redesign .cr-closer__actions{flex-direction:column;align-items:stretch}.contact-redesign .cr-closer__actions .cr-button{width:100%}}
@media(max-width:380px){.contact-redesign .cr-hero h1{font-size:2.7rem}.contact-redesign .cr-hero__actions{align-items:stretch;flex-direction:column}.contact-redesign .cr-hero__actions .cr-button{width:100%}.contact-redesign .cr-underlink{justify-content:center;font-size:.76rem}.contact-redesign .cr-orbit-label{max-width:220px}.contact-redesign .cr-form-shell{padding:19px 14px}.contact-redesign .cr-hero__meta span{font-size:.62rem}}
[dir="rtl"] .contact-redesign .cr-orbit-label{left:auto;right:-30px}
[dir="rtl"] .contact-redesign .cr-enquiry:before{right:auto;left:max(24px,calc((100vw - var(--wrap))/2))}
@media(max-width:1023px){[dir="rtl"] .contact-redesign .cr-orbit-label{right:-16px}}
@media(max-width:700px){[dir="rtl"] .contact-redesign .cr-orbit-label{right:0}}
@media(prefers-reduced-motion:reduce){.contact-redesign .cr-live,.contact-redesign .cr-orbit-label,.contact-redesign .cr-marquee__track,.contact-redesign .cr-closer__graphic,.contact-redesign .cr-closer__ring{animation:none!important}}

/* ==========================================================
   TRADEWISE CONTACT — COMPLETE VISUAL RESET / EDITORIAL V2
   Palette stays aligned with the academy: violet, profit green, gold.
   ========================================================== */
.contact-v2{--cv-violet:#D9A728;--cv-green:#059669;--cv-gold:#F5B301;overflow:clip;background:var(--bg);color:var(--text)}
.contact-v2 section{position:relative;isolation:isolate}
.contact-v2 .cv-label,.contact-v2 .cv-eyebrow{margin:0;font-size:.7rem;line-height:1.5;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.contact-v2 .cv-label{color:var(--accent-text)}
.contact-v2 .cv-eyebrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#EFE8D5}
.contact-v2 .cv-pulse{display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--gain);box-shadow:0 0 0 5px color-mix(in srgb,var(--gain) 18%,transparent);animation:cvPulse 2s ease-in-out infinite}
.contact-v2 .cv-eyebrow__rule{width:38px;height:1px;background:var(--gold)}
.contact-v2 .cv-hero{padding-top:clamp(42px,5.8vw,82px);background:var(--ink);color:#fff;overflow:hidden}
.contact-v2 .cv-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 78% 38%,rgba(217,167,40,.42),transparent 36%),linear-gradient(125deg,transparent 0 58%,rgba(255,255,255,.035) 58.1% 58.3%,transparent 58.4%),repeating-linear-gradient(0deg,transparent 0 51px,rgba(255,255,255,.035) 52px,transparent 53px);mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.85))}
.contact-v2 .cv-hero__grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(320px,.96fr);align-items:center;gap:clamp(32px,6vw,88px);padding-bottom:clamp(50px,6vw,82px)}
.contact-v2 .cv-hero__copy{position:relative;z-index:2}
.contact-v2 .cv-hero h1{max-width:760px;margin:28px 0 0;color:#fff;font-size:clamp(3.4rem,6.7vw,6.6rem);line-height:.91;letter-spacing:-.075em}
.contact-v2 .cv-hero h1 span{color:var(--gain);display:inline-block}
.contact-v2 .cv-lead{max-width:550px;margin:25px 0 0;color:#EDE0C0;font-size:1rem;line-height:1.85}
.contact-v2 .cv-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}
.contact-v2 .cv-btn{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 21px;border:1px solid transparent;border-radius:999px;font:800 .85rem/1.25 var(--font-body);text-decoration:none;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease}
.contact-v2 .cv-btn:hover{transform:translateY(-3px)}
.contact-v2 .cv-btn--green{background:var(--gain);color:#071c16;box-shadow:0 10px 25px color-mix(in srgb,var(--gain) 20%,transparent)}
.contact-v2 .cv-btn--green:hover{box-shadow:0 15px 32px color-mix(in srgb,var(--gain) 28%,transparent);filter:brightness(1.04)}
.contact-v2 .cv-text-link{display:inline-flex;align-items:center;gap:9px;color:#fff;font-size:.82rem;font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.contact-v2 .cv-text-link i{color:var(--gold);font-size:.75rem}
.contact-v2 .cv-hero__foot{display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:43px;padding-top:20px;border-top:1px solid rgba(255,255,255,.17)}
.contact-v2 .cv-hero__foot span{display:flex;align-items:center;gap:9px;color:#ECDEBC;font-size:.75rem}
.contact-v2 .cv-hero__foot b{color:var(--gold);font-size:1rem}
.contact-v2 .cv-hero__visual{position:relative;min-width:0;padding:0 15px 35px 0}
.contact-v2 .cv-hero__photo{position:relative;height:clamp(350px,42vw,520px);overflow:hidden;border-radius:46% 46% 8px 8px;background:#2E2A22;outline:1px solid rgba(255,255,255,.25);outline-offset:8px}
.contact-v2 .cv-hero__photo:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(30,27,19,.78))}
.contact-v2 .cv-hero__photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.78);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.contact-v2 .cv-hero__visual:hover .cv-hero__photo img{transform:scale(1.045)}
.contact-v2 .cv-photo-caption{position:absolute;z-index:1;left:20px;bottom:22px;display:flex;align-items:center;gap:10px;color:#fff;font-size:.63rem;font-weight:800;letter-spacing:.1em}
.contact-v2 .cv-photo-caption i{color:var(--gain)}
.contact-v2 .cv-floating-note{position:absolute;z-index:3;left:-42px;top:24%;display:flex;align-items:center;gap:12px;max-width:290px;padding:15px 17px;background:#fff;color:#343027;border:1px solid rgba(245,202,93,.22);border-radius:16px 16px 16px 4px;box-shadow:0 20px 55px rgba(0,0,0,.28);animation:cvFloat 5.5s ease-in-out infinite}
.contact-v2 .cv-floating-note__icon{display:grid;place-items:center;width:43px;height:43px;flex:none;border-radius:13px;background:#e0f7ee;color:#087f5b}
.contact-v2 .cv-floating-note small,.contact-v2 .cv-floating-note strong{display:block}
.contact-v2 .cv-floating-note small{font-size:.57rem;letter-spacing:.09em;color:#BF9938}
.contact-v2 .cv-floating-note strong{margin-top:4px;font-size:.79rem}
.contact-v2 .cv-floating-note>i{color:#087f5b;font-size:.75rem}
.contact-v2 .cv-market-strip{position:absolute;right:-1px;bottom:0;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 17px;background:var(--gold);color:#343027;border-radius:8px 0 0 8px;font-size:.64rem;font-weight:900;letter-spacing:.1em;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.contact-v2 .cv-market-strip i{color:#087f5b;font-size:.85rem}
.contact-v2 .cv-ticker{overflow:hidden;padding:13px 0;background:var(--gain);color:#071c16}
.contact-v2 .cv-ticker>div{width:max-content;white-space:nowrap;animation:cvTicker 30s linear infinite;font-size:.69rem;font-weight:900;letter-spacing:.16em}
.contact-v2 .cv-ticker b{margin:0 24px;color:#fff;font-size:.9rem}
.contact-v2 .cv-channels{padding:clamp(66px,8vw,110px) 0;background:var(--bg)}
.contact-v2 .cv-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:34px}
.contact-v2 .cv-heading h2{margin:14px 0 0;color:var(--ink);font-size:clamp(2.7rem,5vw,4.8rem);line-height:.96;letter-spacing:-.065em}
.contact-v2 .cv-heading h2 em{font-style:normal;color:var(--accent-text)}
.contact-v2 .cv-heading>p{max-width:385px;margin:0 0 5px;color:var(--muted);font-size:.93rem;line-height:1.8}
.contact-v2 .cv-channel-layout{display:grid;grid-template-columns:.95fr .95fr 1.12fr;gap:16px;align-items:stretch}
.contact-v2 .cv-channel{position:relative;min-width:0;min-height:340px;display:flex;flex-direction:column;padding:25px;border:1px solid var(--line);border-radius:22px 22px 22px 5px;text-decoration:none;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-radius .3s ease}
.contact-v2 .cv-channel:hover{transform:translateY(-7px);border-radius:22px;box-shadow:var(--shadow)}
.contact-v2 .cv-channel--email{background:var(--accent);color:#fff;border-color:transparent}
.contact-v2 .cv-channel--email:after{content:"";position:absolute;width:175px;height:175px;right:-75px;top:105px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 22px rgba(255,255,255,.04),0 0 0 48px rgba(255,255,255,.035)}
.contact-v2 .cv-channel__index{font-size:.64rem;font-weight:900;letter-spacing:.12em;opacity:.8}
.contact-v2 .cv-channel__icon{display:grid;place-items:center;width:53px;height:53px;margin-top:32px;border:1px solid currentColor;border-radius:17px;font-size:1.15rem}
.contact-v2 .cv-channel h3{margin:21px 0 0;color:inherit;font-size:clamp(1.55rem,2.2vw,2rem);line-height:1.05;letter-spacing:-.045em}
.contact-v2 .cv-channel p{max-width:32ch;margin:11px 0 20px;font-size:.85rem;line-height:1.75;opacity:.82}
.contact-v2 .cv-channel__action{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid currentColor;font-size:.73rem;font-weight:800;overflow-wrap:anywhere}
.contact-v2 .cv-channel__action i{flex:none}
.contact-v2 .cv-channel--phone{background:var(--surface);color:var(--text)}
.contact-v2 .cv-channel--phone h3{color:var(--ink)}
.contact-v2 .cv-channel--phone .cv-channel__icon{color:var(--gain)}
.contact-v2 .cv-channel--phone .cv-channel__action{color:var(--ink)}
.contact-v2 .cv-channel-photo{position:relative;min-height:340px;overflow:hidden;border-radius:22px 22px 5px 22px;background:#2C2921}
.contact-v2 .cv-channel-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.contact-v2 .cv-channel-photo:hover img{transform:scale(1.06)}
.contact-v2 .cv-channel-photo__overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:end;padding:25px;background:linear-gradient(180deg,rgba(30,27,19,.02),rgba(30,27,19,.92) 88%);color:#fff}
.contact-v2 .cv-channel-photo__overlay>span{font-size:.64rem;font-weight:900;letter-spacing:.13em;color:var(--gold)}
.contact-v2 .cv-channel-photo h3{margin:14px 0 22px;color:#fff;font-size:2rem;line-height:1.04;letter-spacing:-.05em}
.contact-v2 .cv-channel-photo a{display:flex;align-items:center;gap:10px;color:#fff;font-size:.8rem;font-weight:800;text-decoration:none}
.contact-v2 .cv-channel-photo a i{color:var(--gain)}
.contact-v2 .cv-disclaimer{display:flex;align-items:center;gap:10px;margin:22px 0 0;padding:13px 16px;border-inline-start:3px solid var(--gold);border-radius:0 10px 10px 0;background:var(--shade);color:var(--muted);font-size:.77rem;line-height:1.6}
.contact-v2 .cv-disclaimer i{color:var(--gold);flex:none}
.contact-v2 .cv-enquiry{padding:clamp(65px,8vw,112px) 0;background:var(--shade);border-block:1px solid var(--line);overflow:hidden}
.contact-v2 .cv-enquiry:before{content:"03";position:absolute;z-index:-1;right:max(20px,calc((100vw - var(--wrap))/2));top:12px;color:color-mix(in srgb,var(--accent) 7%,transparent);font:800 clamp(8rem,17vw,16rem)/1 var(--font-head);letter-spacing:-.1em;pointer-events:none}
.contact-v2 .cv-enquiry__layout{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);align-items:start;gap:clamp(30px,6vw,78px)}
.contact-v2 .cv-enquiry__aside{position:relative;min-width:0}
.contact-v2 .cv-enquiry__aside h2{margin:14px 0 0;color:var(--ink);font-size:clamp(2.8rem,5vw,4.8rem);line-height:.95;letter-spacing:-.07em}
.contact-v2 .cv-enquiry__aside h2 em{font-style:normal;color:var(--accent-text)}
.contact-v2 .cv-enquiry__aside>p:not(.cv-label){max-width:440px;margin:18px 0 0;color:var(--muted);font-size:.92rem;line-height:1.8}
.contact-v2 .cv-aside-photo{position:relative;aspect-ratio:1.55;max-width:520px;margin-top:27px;overflow:hidden;border-radius:24px 24px 24px 5px;box-shadow:12px 12px 0 color-mix(in srgb,var(--accent) 13%,transparent);background:#2C2921}
.contact-v2 .cv-aside-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.contact-v2 .cv-aside-photo:hover img{transform:scale(1.05)}
.contact-v2 .cv-aside-photo:after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(transparent,rgba(30,27,19,.86))}
.contact-v2 .cv-aside-photo span{position:absolute;z-index:1;left:17px;right:17px;bottom:16px;color:#fff;font-size:.62rem;font-weight:900;letter-spacing:.1em}
.contact-v2 .cv-promise{display:flex;align-items:flex-start;gap:12px;margin-top:25px}
.contact-v2 .cv-promise>span{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:11px;background:var(--gold);color:#343027}
.contact-v2 .cv-promise b,.contact-v2 .cv-promise small{display:block}
.contact-v2 .cv-promise b{color:var(--ink);font-size:.85rem}
.contact-v2 .cv-promise small{margin-top:4px;color:var(--muted);font-size:.77rem;line-height:1.6}
.contact-v2 .cv-aside-number{position:absolute;right:0;bottom:-10px;display:flex;align-items:center;gap:8px;color:var(--accent-text);opacity:.6}
.contact-v2 .cv-aside-number strong{font-size:2.6rem;line-height:1;letter-spacing:-.08em}
.contact-v2 .cv-aside-number span{font-size:.55rem;font-weight:900;letter-spacing:.1em;line-height:1.3}
.contact-v2 .cv-form-panel{min-width:0;padding:clamp(22px,3.3vw,40px);border:1px solid var(--line);border-radius:26px 26px 26px 6px;background:var(--surface);box-shadow:0 25px 65px rgba(30,27,19,.12)}
.contact-v2 .cv-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.contact-v2 .cv-form-heading h3{margin:8px 0 0;color:var(--ink);font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.05;letter-spacing:-.05em}
.contact-v2 .cv-form-heading h3 span{color:var(--gain)}
.contact-v2 .cv-form-heading p{margin:9px 0 0;color:var(--muted);font-size:.79rem}
.contact-v2 .cv-form-mark{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:58px;height:58px;flex:none;border-radius:17px;background:var(--accent);color:var(--gold);transform:rotate(4deg)}
.contact-v2 .cv-form-mark i{font-size:1.1rem}.contact-v2 .cv-form-mark small{font-size:.46rem;font-weight:900;letter-spacing:.08em}
.contact-v2 .cv-form{display:grid;grid-template-columns:1fr 1fr;gap:17px 14px;padding-top:23px}
.contact-v2 .cx-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.contact-v2 .cx-field label{font-size:.81rem;font-weight:800;color:var(--ink)}
.contact-v2 .cx-field label span,.contact-v2 .cx-consent b{color:var(--loss)}
.contact-v2 .cx-field input,.contact-v2 .cx-field select,.contact-v2 .cx-field textarea{width:100%;min-width:0;min-height:50px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--bg);color:var(--text);font:500 .87rem/1.5 var(--font-body);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.contact-v2 .cx-field textarea{min-height:135px;resize:vertical}
.contact-v2 .cx-field input::placeholder,.contact-v2 .cx-field textarea::placeholder{color:var(--muted);opacity:.8}
.contact-v2 .cx-field input:focus,.contact-v2 .cx-field select:focus,.contact-v2 .cx-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}
.contact-v2 .cx-field .is-invalid,.contact-v2 .cx-field input.is-invalid,.contact-v2 .cx-field select.is-invalid,.contact-v2 .cx-field textarea.is-invalid{border-color:var(--loss)}
.contact-v2 .cx-field--full,.contact-v2 .cx-consent,.contact-v2 .cv-submit,.contact-v2 .cx-form-privacy,.contact-v2 .cx-form-status{grid-column:1/-1}
.contact-v2 .cx-error{color:var(--loss);font-size:.73rem;line-height:1.4}.contact-v2 .cx-error:empty{display:none}
.contact-v2 .cx-textarea-foot{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem}
.contact-v2 .cx-consent{display:flex;align-items:flex-start;gap:10px;color:var(--text);font-size:.79rem;line-height:1.55}
.contact-v2 .cx-consent input{width:17px;height:17px;flex:none;margin-top:3px;accent-color:var(--accent)}
.contact-v2 .cv-submit{width:100%;border:0;margin-top:1px}
.contact-v2 .cx-form-privacy{display:flex;align-items:center;justify-content:center;gap:8px;margin:-4px 0 0;color:var(--muted);font-size:.73rem}
.contact-v2 .cx-form-privacy i{color:var(--gain)}
.contact-v2 .cx-form-status{font-size:.83rem;line-height:1.55}.contact-v2 .cx-form-status:empty{display:none}
.contact-v2 .cx-form-status.is-error,.contact-v2 .cx-form-status.is-success{padding:12px 14px;border-radius:11px}
.contact-v2 .cx-form-status.is-error{background:color-mix(in srgb,var(--loss) 12%,transparent);color:var(--loss)}
.contact-v2 .cx-form-status.is-success{background:color-mix(in srgb,var(--gain) 14%,transparent);color:var(--accent-text)}
.contact-v2 .cv-location{padding:clamp(65px,8vw,108px) 0;background:var(--bg)}
.contact-v2 .cv-location-panel{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(290px,.68fr);overflow:hidden;border:1px solid var(--line);border-radius:26px 26px 26px 5px;box-shadow:var(--shadow)}
.contact-v2 .cv-map{position:relative;min-height:430px;background:var(--shade)}
.contact-v2 .cv-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.78)}
.contact-v2 .cv-map-badge{position:absolute;top:18px;left:18px;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:var(--ink);color:var(--bg);font-size:.64rem;font-weight:900;letter-spacing:.1em;box-shadow:0 8px 24px rgba(0,0,0,.16)}
.contact-v2 .cv-map-badge .cv-pulse{width:7px;height:7px}
.contact-v2 .cv-location-info{padding:clamp(26px,4vw,44px);background:linear-gradient(145deg,#312D23,#1E1B13);color:#fff}
.contact-v2 .cv-location-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:22px;border-radius:15px;background:var(--gold);color:#343027;font-size:1.1rem}
.contact-v2 .cv-location-info .cv-label{color:var(--gain)}
.contact-v2 .cv-location-info h3{margin:12px 0 0;color:#fff;font-size:clamp(1.8rem,2.8vw,2.55rem);line-height:1.02;letter-spacing:-.05em}
.contact-v2 .cv-location-info>p:not(.cv-label){margin:15px 0 0;color:#EDE0C0;font-size:.85rem;line-height:1.8}
.contact-v2 .cv-hours{display:flex;gap:13px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18)}
.contact-v2 .cv-hours>span{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:12px;background:rgba(255,255,255,.09);color:var(--gold)}
.contact-v2 .cv-hours b,.contact-v2 .cv-hours small{display:block}.contact-v2 .cv-hours b{font-size:.82rem}.contact-v2 .cv-hours small{margin-top:5px;color:#EDE0C0;font-size:.78rem;line-height:1.6}
.contact-v2 .cv-btn--outline{margin-top:23px;border-color:rgba(255,255,255,.38);color:#fff;background:transparent}.contact-v2 .cv-btn--outline:hover{border-color:var(--gain);background:rgba(255,255,255,.07)}
.contact-v2 .cv-closer{padding:0 0 clamp(60px,8vw,95px);background:var(--bg)}
.contact-v2 .cv-closer-panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.7fr);align-items:center;gap:35px;min-height:345px;padding:clamp(30px,5vw,62px);overflow:hidden;border-radius:28px 28px 28px 6px;background:linear-gradient(125deg,#1E1B13 0%,#332F24 62%,#70581A 100%);box-shadow:0 25px 65px rgba(30,27,19,.2)}
.contact-v2 .cv-closer-panel:before{content:"";position:absolute;right:-100px;top:-150px;width:420px;height:420px;border:1px solid rgba(245,202,93,.4);border-radius:50%;box-shadow:0 0 0 35px rgba(245,202,93,.08),0 0 0 75px rgba(5,150,105,.05);pointer-events:none}
.contact-v2 .cv-closer-copy{position:relative;z-index:2}.contact-v2 .cv-closer-copy .cv-label{color:var(--gold)}
.contact-v2 .cv-closer h2{margin:15px 0 0;color:#fff;font-size:clamp(2.7rem,5vw,4.8rem);line-height:.95;letter-spacing:-.065em}.contact-v2 .cv-closer h2 em{font-style:normal;color:var(--gain)}
.contact-v2 .cv-closer-copy>p:not(.cv-label){max-width:560px;margin:18px 0 0;color:#EDE0C0;font-size:.91rem;line-height:1.8}
.contact-v2 .cv-closer-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.contact-v2 .cv-btn--ghost{border-color:rgba(255,255,255,.35);color:#fff;background:transparent}.contact-v2 .cv-btn--ghost:hover{border-color:var(--gain);background:rgba(255,255,255,.07)}
.contact-v2 .cv-closer-visual{position:relative;justify-self:center;width:min(100%,330px);aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(31,209,139,.42);border-radius:50%;background:radial-gradient(circle,rgba(31,209,139,.13),rgba(245,202,93,.08) 48%,transparent 70%);color:var(--gain);animation:cvFloat 7s ease-in-out infinite}
.contact-v2 .cv-chart-bars{position:absolute;inset:19% 16%;display:flex;align-items:end;justify-content:center;gap:9px;opacity:.8}
.contact-v2 .cv-chart-bars i{display:block;width:9%;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--gain),rgba(31,209,139,.15));animation:cvBars 2.8s ease-in-out infinite alternate}
.contact-v2 .cv-chart-bars i:nth-child(1){height:24%}.contact-v2 .cv-chart-bars i:nth-child(2){height:39%;animation-delay:.2s}.contact-v2 .cv-chart-bars i:nth-child(3){height:31%;animation-delay:.35s}.contact-v2 .cv-chart-bars i:nth-child(4){height:57%;animation-delay:.1s}.contact-v2 .cv-chart-bars i:nth-child(5){height:48%;animation-delay:.4s}.contact-v2 .cv-chart-bars i:nth-child(6){height:71%;animation-delay:.25s}.contact-v2 .cv-chart-bars i:nth-child(7){height:63%;animation-delay:.5s}.contact-v2 .cv-chart-bars i:nth-child(8){height:91%;animation-delay:.15s}
.contact-v2 .cv-chart-line{position:absolute;inset:27% 13% 30%;border-top:3px solid var(--gold);transform:rotate(-23deg);clip-path:polygon(0 75%,18% 48%,33% 64%,49% 25%,66% 43%,82% 8%,100% 0,100% 5%,82% 14%,66% 49%,49% 31%,33% 70%,18% 54%,0 81%);filter:drop-shadow(0 0 7px rgba(245,179,1,.45))}
.contact-v2 .cv-chart-caption{position:absolute;bottom:15%;font-size:.58rem;font-weight:900;letter-spacing:.16em;color:#EFEBE2}
@keyframes cvPulse{0%,100%{box-shadow:0 0 0 4px color-mix(in srgb,var(--gain) 15%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--gain) 5%,transparent)}}
@keyframes cvFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes cvTicker{to{transform:translateX(-50%)}}
@keyframes cvBars{from{scale:1 .84;transform-origin:bottom}to{scale:1 1;transform-origin:bottom}}
@media(max-width:1023px){.contact-v2 .cv-hero__grid{grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);gap:35px}.contact-v2 .cv-hero h1{font-size:clamp(3.1rem,6.5vw,5.2rem)}.contact-v2 .cv-floating-note{left:-22px}.contact-v2 .cv-channel-layout{grid-template-columns:1fr 1fr}.contact-v2 .cv-channel-photo{grid-column:1/-1;min-height:280px}.contact-v2 .cv-enquiry__layout{grid-template-columns:1fr;gap:40px}.contact-v2 .cv-enquiry__aside{max-width:760px}.contact-v2 .cv-aside-photo{max-width:560px}.contact-v2 .cv-aside-number{right:10px;bottom:0}.contact-v2 .cv-location-panel{grid-template-columns:minmax(0,1fr) minmax(270px,.78fr)}.contact-v2 .cv-closer-panel{grid-template-columns:1fr minmax(200px,.6fr)}}
@media(max-width:700px){.contact-v2 .cv-hero{padding-top:38px}.contact-v2 .cv-hero__grid{grid-template-columns:1fr;gap:34px}.contact-v2 .cv-hero__visual{grid-row:1;width:100%;max-width:520px;margin-inline:auto;padding:0 12px 28px 8px}.contact-v2 .cv-hero__photo{height:clamp(270px,76vw,390px);border-radius:42% 42% 9px 9px}.contact-v2 .cv-floating-note{left:0;top:23%;padding:11px 12px;gap:9px;max-width:250px}.contact-v2 .cv-floating-note__icon{width:36px;height:36px}.contact-v2 .cv-floating-note small{font-size:.5rem}.contact-v2 .cv-floating-note strong{font-size:.72rem}.contact-v2 .cv-market-strip{right:0;gap:8px;padding:10px 12px;font-size:.55rem}.contact-v2 .cv-hero h1{font-size:clamp(3rem,12vw,4.5rem)}.contact-v2 .cv-lead{font-size:.94rem}.contact-v2 .cv-actions{align-items:stretch;flex-direction:column;gap:15px}.contact-v2 .cv-actions .cv-btn{width:100%}.contact-v2 .cv-text-link{justify-content:center;font-size:.76rem}.contact-v2 .cv-hero__foot{gap:12px 17px;margin-top:30px}.contact-v2 .cv-hero__foot span{font-size:.68rem}.contact-v2 .cv-heading{display:block}.contact-v2 .cv-heading h2{font-size:clamp(2.7rem,11vw,3.8rem)}.contact-v2 .cv-heading>p{margin-top:15px}.contact-v2 .cv-channel-layout{grid-template-columns:1fr}.contact-v2 .cv-channel{min-height:285px;padding:23px}.contact-v2 .cv-channel__icon{margin-top:25px}.contact-v2 .cv-channel-photo{grid-column:auto;min-height:290px}.contact-v2 .cv-enquiry:before{right:12px;top:10px;font-size:6rem}.contact-v2 .cv-enquiry__aside h2{font-size:clamp(2.8rem,11vw,4rem)}.contact-v2 .cv-aside-number{display:none}.contact-v2 .cv-form-panel{padding:23px 18px;border-radius:21px 21px 21px 5px}.contact-v2 .cv-form{grid-template-columns:1fr;gap:15px}.contact-v2 .cx-field--full,.contact-v2 .cx-consent,.contact-v2 .cv-submit,.contact-v2 .cx-form-privacy,.contact-v2 .cx-form-status{grid-column:1}.contact-v2 .cv-form-mark{width:47px;height:47px;border-radius:13px}.contact-v2 .cv-location-panel{grid-template-columns:1fr}.contact-v2 .cv-map{min-height:310px}.contact-v2 .cv-location-info{padding:27px 23px}.contact-v2 .cv-closer-panel{grid-template-columns:1fr;gap:24px;padding:30px 23px}.contact-v2 .cv-closer h2{font-size:clamp(2.65rem,10.5vw,3.7rem)}.contact-v2 .cv-closer-visual{position:absolute;right:-80px;top:-55px;width:210px;opacity:.16}.contact-v2 .cv-closer-actions{flex-direction:column;align-items:stretch}.contact-v2 .cv-closer-actions .cv-btn{width:100%}}
@media(max-width:380px){.contact-v2 .cv-hero h1{font-size:2.7rem}.contact-v2 .cv-hero__foot{gap:10px}.contact-v2 .cv-hero__foot span{font-size:.62rem}.contact-v2 .cv-floating-note{max-width:218px}.contact-v2 .cv-floating-note>i{display:none}.contact-v2 .cv-market-strip{font-size:.5rem}.contact-v2 .cv-form-panel{padding:20px 14px}.contact-v2 .cv-form-heading h3{font-size:1.65rem}.contact-v2 .cv-channel__action{font-size:.68rem}}
[dir="rtl"] .contact-v2 .cv-floating-note{left:auto;right:-30px}
[dir="rtl"] .contact-v2 .cv-market-strip{right:auto;left:-1px;border-radius:0 8px 8px 0}
[dir="rtl"] .contact-v2 .cv-enquiry:before{right:auto;left:max(20px,calc((100vw - var(--wrap))/2))}
[dir="rtl"] .contact-v2 .cv-aside-number{right:auto;left:0}
[dir="rtl"] .contact-v2 .cv-map-badge{left:auto;right:18px}
@media(max-width:1023px){[dir="rtl"] .contact-v2 .cv-floating-note{right:-15px}}
@media(max-width:700px){[dir="rtl"] .contact-v2 .cv-floating-note{right:0}.contact-v2 .cv-closer-visual{pointer-events:none}}
@media(prefers-reduced-motion:reduce){.contact-v2 .cv-pulse,.contact-v2 .cv-floating-note,.contact-v2 .cv-ticker>div,.contact-v2 .cv-closer-visual,.contact-v2 .cv-chart-bars i{animation:none!important}.contact-v2 *{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* header: keep one row at 1024px to 1140px (Login button was pushed past the edge) */
@media (min-width: 1024px) and (max-width: 1140px) {
  .hdr__inner { gap: 8px; }
  .nav__link { padding: 9px 8px; font-size: .8125rem; }
  .nav__row .nav__link { padding-inline: 8px 0; }
  .nav__toggle { width: 24px; margin-inline-end: 4px; }
  .brand__name { font-size: 1.3rem; }
  .brand { gap: 8px; }
  .hdr__login { padding-inline: 14px; }
}

/* =========================================================
   COURSES PAGE (pages/courses.html)
   1 hero: moving photo wall · 2 the climb (scroll roadmap) · 3 tabbed course posters
   ========================================================= */
.cr-dark { --ink: #FFFFFF; --text: #F5F2EB; --muted: #E5D4A7; --accent-text: #F5C04F; --accent: #F5CA5D; --violet: #F5CA5D; --gain: #1FD18B; --gold: #FFC83D; --loss: #FF4D4F; --surface: #1E1C16; --line: rgba(245, 202, 93, .34); --shade: rgba(245, 202, 93, .14); --shade-strong: rgba(245, 202, 93, .26); --btn-bg: #F2B632; --btn-fg: #140E00; --shadow: 0 18px 40px rgba(0, 0, 0, .55);
  position: relative; isolation: isolate; background: #0B0A07; color: var(--text); }
.cr-hero, .cr-levels { overflow: hidden; }
.cr-climb, .cr-levels { scroll-margin-top: calc(var(--h) - 1px); }
.cr-glass { padding: 14px 16px; border-radius: 18px; background: rgba(26, 24, 19, .74); border: 1px solid rgba(255, 255, 255, .18); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: 0 20px 44px rgba(0, 0, 0, .45); color: #fff; }
.cr-live { flex: none; display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: #1FD18B; box-shadow: 0 0 0 5px rgba(31, 209, 139, .22); animation: crPulse 2s ease-in-out infinite; }
@keyframes crPulse { 50% { box-shadow: 0 0 0 9px rgba(31, 209, 139, 0); } }

/* ---------- 1. HERO ---------- */
.cr-hero__glow { position: absolute; inset: 0; z-index: -1; background: radial-gradient(48% 60% at 85% 40%, rgba(245, 202, 93, .42), transparent 70%), radial-gradient(38% 50% at 0% 100%, rgba(31, 209, 139, .14), transparent 70%); }
.cr-hero__main { padding-block: clamp(18px, 2.5vw, 28px) clamp(30px, 4vw, 48px); }
.cr-hero__grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: clamp(28px, 5vw, 72px); align-items: center; padding-block: clamp(18px, 3vw, 40px) clamp(34px, 4vw, 52px); }
.cr-badge { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 22px; padding: 7px 14px 7px 12px; border-radius: 999px; font-size: .8125rem; font-weight: 600; color: #F6F2E8; background: var(--shade); border: 1px solid var(--line); animation: crFade .8s .05s both; }
.cr-hero__title { font-size: clamp(2.7rem, 5.2vw, 4.8rem); font-weight: 800; line-height: .98; letter-spacing: -.045em; color: #fff; text-wrap: balance; }
.cr-ln { display: block; overflow: hidden; padding-bottom: .1em; margin-bottom: -.1em; }
.cr-ln > span { display: block; transform: translateY(108%); animation: crLn 1s cubic-bezier(.2, .8, .2, 1) forwards; animation-delay: calc(.12s + var(--n) * .14s); }
@keyframes crLn { to { transform: none; } }
@keyframes crFade { from { opacity: 0; transform: translateY(16px); } }
.cr-hero__lead { max-width: 500px; margin: 24px 0 0; font-size: 1.0625rem; color: var(--muted); animation: crFade .9s .5s both; }
.cr-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; animation: crFade .9s .62s both; }
.cr-proof { display: flex; align-items: center; gap: 14px; margin-top: 32px; font-size: .8125rem; line-height: 1.5; color: var(--muted); animation: crFade .9s .76s both; }
.cr-proof p { margin: 0; } .cr-proof b { color: #fff; } .cr-proof .fa-star { color: var(--gold); }
.cr-proof__av { display: flex; }
.cr-proof__av span { display: grid; place-items: center; width: 36px; height: 36px; margin-inline-start: -9px; border-radius: 50%; font-size: .6875rem; font-weight: 800; color: #fff; background: linear-gradient(135deg, #EDBA3A, #95731D); border: 2px solid #0B0A07; }
.cr-proof__av span:first-child { margin-inline-start: 0; }
.cr-proof__av span:nth-child(2) { background: linear-gradient(135deg, #059669, #064E3B); }
.cr-proof__av span:nth-child(3) { background: linear-gradient(135deg, #D97706, #78350F); }
.cr-proof__av span:nth-child(4) { background: linear-gradient(135deg, #DC2626, #7F1D1D); }

.cr-hero__vis { position: relative; height: clamp(440px, 46vw, 640px); }
.cr-wall { position: absolute; inset: 0; overflow: hidden; border-radius: 34px 140px 34px 34px; background: #12100C; border: 1px solid var(--line); box-shadow: 0 40px 90px rgba(0, 0, 0, .6), 0 0 90px rgba(245, 202, 93, .28); animation: crWall 1.3s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes crWall { from { clip-path: inset(0 0 0 100%); } to { clip-path: inset(0 0 0 0); } }
.cr-wall::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(11, 10, 7, .78), transparent 24%, transparent 70%, rgba(11, 10, 7, .9)), linear-gradient(90deg, rgba(11, 10, 7, .7), transparent 30%), linear-gradient(135deg, rgba(217, 167, 40, .3), transparent 60%); }
.cr-wall__cols { position: absolute; inset: -22% -14%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; transform: rotate(-9deg); }
.cr-col { overflow: hidden; }
.cr-col__track { display: flex; flex-direction: column; animation: crUp 46s linear infinite; will-change: transform; }
.cr-col--down .cr-col__track { animation-name: crDown; animation-duration: 54s; }
.cr-col:last-child .cr-col__track { animation-duration: 40s; }
@keyframes crUp { to { transform: translateY(-50%); } }
@keyframes crDown { from { transform: translateY(-50%); } to { transform: none; } }
.cr-col img { width: 100%; margin-bottom: 14px; border-radius: 18px; object-fit: cover; aspect-ratio: 4 / 5; background: linear-gradient(145deg, #413B2E, #171511); }
.cr-col img:nth-child(3n+2) { aspect-ratio: 1 / 1; }
.cr-col img:nth-child(3n) { aspect-ratio: 3 / 4; }
.cr-float { position: absolute; z-index: 3; transition: transform .35s cubic-bezier(.2, .7, .2, 1); will-change: transform; }
.cr-float > .cr-glass { animation: crBob 6s ease-in-out infinite; }
.cr-float--pf > .cr-glass { animation-delay: -2s; } .cr-float--live > .cr-glass { animation-delay: -4s; }
@keyframes crBob { 50% { transform: translateY(-9px); } }
.cr-glass p { margin: 0 0 8px; font: 700 .75rem/1 var(--font-body); color: #EEE2C4; }
.cr-glass small { display: block; margin-top: 8px; font-size: .75rem; color: #EEE2C4; }
.cr-float--path { top: 7%; inset-inline-end: 5%; width: min(210px, 46%); }
.cr-path { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; }
.cr-path i { height: 8px; border-radius: 4px; background: rgba(255, 255, 255, .18); }
.cr-path i.on { background: var(--c); box-shadow: 0 0 12px var(--c); }
.cr-float--pf { top: 36%; inset-inline-start: -30px; width: 210px; }
.cr-pf__val { display: block; font: 800 1.75rem/1 var(--font-head); letter-spacing: -.02em; color: #fff; font-variant-numeric: tabular-nums; }
.cr-pf__line { display: block; margin-top: 10px; }
.cr-float--live { bottom: 9%; inset-inline-end: 6%; max-width: calc(100% - 24px); }
.cr-glass--row { display: flex; align-items: center; gap: 12px; padding: 12px 16px; font-size: .8125rem; line-height: 1.35; }
.cr-glass--row b { display: block; font-weight: 700; } .cr-glass--row small { margin: 2px 0 0; }
.cr-spark { stroke-dasharray: 1; stroke-dashoffset: 1; animation: crDraw 2.2s .9s cubic-bezier(.3, .7, .2, 1) forwards; }
@keyframes crDraw { to { stroke-dashoffset: 0; } }

.cr-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border-top: 1px solid var(--line); padding-top: 24px; animation: crFade .9s .9s both; }
.cr-stats li { display: flex; flex-direction: column; gap: 3px; padding-inline: 20px; border-inline-start: 1px solid var(--line); }
.cr-stats li:first-child { padding-inline-start: 0; border-inline-start: 0; }
.cr-stats b { font: 800 clamp(1.5rem, 2.6vw, 2.1rem)/1.1 var(--font-head); color: #fff; font-variant-numeric: tabular-nums; }
.cr-stats span { font-size: .8125rem; color: var(--muted); }
.cr-topics { overflow: hidden; padding: 13px 0; background: var(--gain); color: #06140E; }
.cr-topics__track { display: flex; width: max-content; animation: crMarq 42s linear infinite; }
.cr-topics:hover .cr-topics__track { animation-play-state: paused; }
.cr-topics span { display: inline-flex; align-items: center; white-space: nowrap; font: 700 .9375rem/1 var(--font-head); }
.cr-topics span::after { content: ""; width: 9px; height: 9px; margin-inline: 26px; background: #06140E; transform: rotate(45deg); }
@keyframes crMarq { to { transform: translateX(-50%); } }
[dir="rtl"] .cr-topics__track { animation-direction: reverse; }

/* ---------- shared heads ---------- */
.cr-climb__head, .cr-levels__head { margin-bottom: clamp(48px, 7vw, 96px); }
.cr-climb__head { max-width: 760px; margin-inline: auto; text-align: center; }
.cr-climb__head .sec__lead { margin-inline: auto; }
.cr-levels__head { display: flex; align-items: end; justify-content: space-between; gap: 28px 48px; margin-bottom: clamp(28px, 4vw, 44px); }
.cr-levels__head .sec__title { max-width: 22ch; text-wrap: balance; }
.cr-levels__head .sec__lead { margin: 0; max-width: 440px; }

/* ---------- 2. THE CLIMB (follows theme) ---------- */
.cr-climb { position: relative; isolation: isolate; overflow: hidden; padding: clamp(70px, 9vw, 130px) 0; background: var(--bg); }
.cr-climb::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(40% 30% at 0% 20%, color-mix(in srgb, var(--violet) 22%, transparent), transparent 70%), radial-gradient(35% 28% at 100% 75%, color-mix(in srgb, var(--gain) 16%, transparent), transparent 70%); }
.cr-climb__path { --p: 0; position: relative; }
.cr-climb__track { position: absolute; inset-block: 0; left: 50%; width: 4px; margin-left: -2px; border-radius: 4px; background: var(--line); }
.cr-climb__fill { position: absolute; inset: 0; border-radius: 4px; transform-origin: top; transform: scaleY(var(--p)); background: linear-gradient(180deg, #1FD18B, #F5CA5D 40%, #FFC83D 72%, #FF4D4F); box-shadow: 0 0 18px rgba(245, 202, 93, .65); }
.cr-lvls { display: grid; gap: clamp(64px, 10vw, 130px); }
.cr-lvl { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(56px, 10vw, 150px); align-items: center; }
.cr-lvl:nth-child(even) .cr-lvl__mw { order: 2; }
.cr-lvl__node { position: absolute; z-index: 2; left: 50%; top: 50%; display: grid; place-items: center; width: 60px; height: 60px; transform: translate(-50%, -50%) scale(.8); border-radius: 50%; font: 800 1.375rem/1 var(--font-head); color: var(--ink); background: var(--bg); border: 3px solid var(--line); transition: transform .5s cubic-bezier(.3, 1.6, .5, 1), background .4s, color .4s, border-color .4s, box-shadow .4s; }
.cr-lvl__node.is-on { transform: translate(-50%, -50%) scale(1); background: var(--lv); color: var(--lv-ink); border-color: var(--lv); box-shadow: 0 0 0 7px color-mix(in srgb, var(--lv) 25%, transparent), 0 0 36px color-mix(in srgb, var(--lv) 60%, transparent); }
.cr-lvl__mw { filter: drop-shadow(0 30px 36px rgba(30, 27, 19, .35)); }
.cr-lvl__media { position: relative; margin: 0; aspect-ratio: 5 / 4; overflow: hidden; border-radius: 40px 150px 40px 40px; background: linear-gradient(145deg, color-mix(in srgb, var(--lv) 45%, #1E1C16), #1E1C16); }
.cr-lvl:nth-child(even) .cr-lvl__media { border-radius: 150px 40px 40px 40px; }
.cr-lvl:nth-child(3n) .cr-lvl__media { border-radius: 40px 40px 150px 40px; }
.cr-lvl:nth-child(4n) .cr-lvl__media { border-radius: 40px 40px 40px 150px; }
.cr-lvl__media img { position: absolute; inset: -9% 0; width: 100%; height: 118%; object-fit: cover; transform: translate3d(0, var(--py, 0px), 0) scale(1.05); transition: transform .9s cubic-bezier(.2, .7, .2, 1); will-change: transform; }
.cr-lvl__media::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 45%, rgba(11, 10, 7, .72)), linear-gradient(135deg, color-mix(in srgb, var(--lv) 28%, transparent), transparent 55%); mix-blend-mode: normal; }
.cr-lvl__chip { position: absolute; z-index: 1; inset-inline-start: 18px; bottom: 18px; display: flex; align-items: center; gap: 16px; padding: 12px 16px; border-radius: 16px; color: var(--lv); background: rgba(26, 24, 19, .72); border: 1px solid rgba(255, 255, 255, .2); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.cr-lvl__chip small { display: block; font-size: .75rem; color: #EAE5D8; }
.cr-lvl__chip b { font: 800 1.5rem/1.1 var(--font-head); color: #fff; }
.cr-lvl__body { position: relative; z-index: 1; }
.cr-lvl__big { position: relative; z-index: 0; display: block; margin: 0 0 -.2em; font: 800 clamp(4.5rem, 8vw, 7rem)/.9 var(--font-head); color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--lv) 70%, transparent); pointer-events: none; }
.cr-lvl__body h3 { position: relative; z-index: 1; font-size: clamp(2.2rem, 4.4vw, 3.5rem); font-weight: 800; letter-spacing: -.035em; line-height: 1; }
.cr-lvl__body h3::after { content: ""; display: block; width: 64px; height: 6px; margin-top: 16px; border-radius: 6px; background: var(--lv); }
.cr-lvl__who { margin: 20px 0 0; max-width: 460px; font-size: 1.0625rem; color: var(--muted); }
.cr-lvl__outs { display: grid; gap: 12px; margin: 24px 0 0; }
.cr-lvl__outs li { display: flex; gap: 12px; font-size: .9688rem; }
.cr-lvl__outs i { flex: none; display: grid; place-items: center; width: 22px; height: 22px; margin-top: 1px; border-radius: 50%; font-size: .625rem; background: var(--lv); color: var(--lv-ink); }
.cr-lvl__facts { display: grid; grid-template-columns: repeat(3, minmax(0, auto)); gap: 0; width: max-content; max-width: 100%; margin: 28px 0 0; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
.cr-lvl__facts div { padding: 12px 20px; border-inline-start: 1px solid var(--line); }
.cr-lvl__facts div:first-child { border-inline-start: 0; }
.cr-lvl__facts dt { font-size: .75rem; color: var(--muted); }
.cr-lvl__facts dd { margin: 2px 0 0; font: 800 1.0625rem/1.2 var(--font-head); color: var(--ink); }
.cr-lvl__go { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; margin-top: 28px; padding: 12px 24px; border-radius: 999px; font-weight: 700; font-size: .9375rem; text-decoration: none; background: var(--lv); color: var(--lv-ink); transition: transform .3s ease, box-shadow .3s ease; }
.cr-lvl__go:hover { transform: translateY(-3px); box-shadow: 0 14px 30px color-mix(in srgb, var(--lv) 45%, transparent); }
.cr-lvl__go i { font-size: .8em; transition: transform .3s ease; } .cr-lvl__go:hover i { transform: translateY(3px); }
[dir="rtl"] .cr-lvl__go i { display: none; }

/* reveal (only when JS is running) */
.cr-js .cr-lvl__media { clip-path: inset(0 100% 0 0); transition: clip-path 1.1s cubic-bezier(.2, .8, .2, 1); }
.cr-js .cr-lvl:nth-child(even) .cr-lvl__media { clip-path: inset(0 0 0 100%); }
.cr-js .cr-lvl.is-in .cr-lvl__media { clip-path: inset(0 0 0 0); }
.cr-js .cr-lvl__body > * { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .8s cubic-bezier(.2, .8, .2, 1); }
.cr-js .cr-lvl.is-in .cr-lvl__body > * { opacity: 1; transform: none; }
.cr-lvl__body > :nth-child(2) { transition-delay: .25s !important; } .cr-lvl__body > :nth-child(3) { transition-delay: .33s !important; } .cr-lvl__body > :nth-child(4) { transition-delay: .41s !important; } .cr-lvl__body > :nth-child(5) { transition-delay: .49s !important; } .cr-lvl__body > :nth-child(6) { transition-delay: .57s !important; }
.cr-lvl__chip .cr-spark { animation: none; stroke-dashoffset: 1; transition: stroke-dashoffset 1.8s .9s cubic-bezier(.3, .7, .2, 1); }
.cr-lvl.is-in .cr-lvl__chip .cr-spark { stroke-dashoffset: 0; }
.cr-lvl.is-in .cr-lvl__media img { transform: translate3d(0, var(--py, 0px), 0) scale(1); }

/* ---------- 3. COURSE POSTERS (always dark) ---------- */
.cr-levels { padding: clamp(70px, 9vw, 130px) 0; }
.cr-levels[data-lv="beginner"] { --lv: #1FD18B; } .cr-levels[data-lv="intermediate"] { --lv: #F5CA5D; } .cr-levels[data-lv="advanced"] { --lv: #FFC83D; } .cr-levels[data-lv="pro"] { --lv: #FF4D4F; }
.cr-levels__glow { position: absolute; z-index: -1; top: -12%; inset-inline-end: -12%; width: min(70vw, 900px); aspect-ratio: 1; border-radius: 50%; background: var(--lv); filter: blur(150px); opacity: .2; transition: background-color .8s ease; pointer-events: none; }
.cr-levels::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .22; background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px); background-size: 56px 56px; -webkit-mask-image: radial-gradient(70% 60% at 50% 20%, #000, transparent 80%); mask-image: radial-gradient(70% 60% at 50% 20%, #000, transparent 80%); }

.cr-tabs { overflow-x: auto; margin-bottom: clamp(22px, 3vw, 32px); border-radius: 999px; background: rgba(30, 28, 22, .8); border: 1px solid var(--line); scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.cr-tabs::-webkit-scrollbar { display: none; }
.cr-tabs__in { position: relative; display: flex; min-width: 100%; width: max-content; padding: 6px; }
.cr-tabs__pill { position: absolute; top: 6px; bottom: 6px; left: 0; width: var(--w, 25%); transform: translateX(var(--x, 6px)); border-radius: 999px; background: var(--pill, #1FD18B); box-shadow: 0 8px 30px color-mix(in srgb, var(--pill, #1FD18B) 45%, transparent); transition: transform .55s cubic-bezier(.3, .9, .2, 1), width .55s cubic-bezier(.3, .9, .2, 1), background-color .5s ease, box-shadow .5s ease; }
.cr-tab { position: relative; z-index: 1; flex: 1 0 auto; min-width: 150px; display: flex; align-items: baseline; justify-content: center; gap: 10px; padding: 16px 22px; font: inherit; color: var(--text); background: transparent; border: 0; border-radius: 999px; cursor: pointer; transition: color .4s ease; }
.cr-tab__name { font: 800 1.0625rem/1.2 var(--font-head); }
.cr-tab__count { font-size: .8125rem; opacity: .75; }
.cr-tab:not([aria-selected="true"]):hover { color: #fff; }
.cr-tab[aria-selected="true"] { color: var(--lv-ink); }

.cr-panel[hidden] { display: none; }
.cr-banner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, .9fr); gap: clamp(20px, 3vw, 44px); align-items: start; margin-bottom: clamp(22px, 3vw, 34px); padding: clamp(20px, 2.6vw, 30px); border-radius: 24px; background: linear-gradient(120deg, color-mix(in srgb, var(--lv) 16%, var(--surface)), var(--surface) 60%); border: 1px solid var(--line); border-inline-start: 6px solid var(--lv); }
.cr-banner h3 { font-size: 1.75rem; font-weight: 800; letter-spacing: -.025em; }
.cr-banner__id p { margin: 8px 0 0; color: var(--muted); font-size: .9375rem; }
.cr-banner__outs { display: grid; gap: 10px; font-size: .9rem; }
.cr-banner__outs li { display: flex; gap: 10px; }
.cr-banner__outs i { flex: none; display: grid; place-items: center; width: 20px; height: 20px; margin-top: 2px; border-radius: 50%; font-size: .6rem; background: var(--lv); color: var(--lv-ink); }
.cr-banner__facts { display: grid; gap: 12px; margin: 0; }
.cr-banner__facts dt { font-size: .75rem; color: var(--muted); }
.cr-banner__facts dd { margin: 2px 0 0; font-weight: 700; font-size: .9375rem; color: #fff; }

.cr-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2vw, 28px); }
.cr-card { --mx: 50%; --my: 0%; position: relative; isolation: isolate; display: flex; flex-direction: column; min-width: 0; overflow: hidden; border-radius: 28px; background: var(--surface); border: 1px solid var(--line); transition: transform .45s cubic-bezier(.2, .7, .2, 1), border-color .4s ease, box-shadow .45s ease; }
.cr-card::before { content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none; opacity: 0; background: radial-gradient(320px circle at var(--mx) var(--my), color-mix(in srgb, var(--lv) 24%, transparent), transparent 70%); transition: opacity .4s ease; }
.cr-card:hover { transform: translateY(-10px); border-color: var(--lv); box-shadow: 0 30px 60px rgba(0, 0, 0, .55), 0 0 0 1px var(--lv), 0 0 50px color-mix(in srgb, var(--lv) 28%, transparent); }
.cr-card:hover::before { opacity: 1; }
.cr-card__img { position: relative; aspect-ratio: 4 / 3.2; overflow: hidden; background: linear-gradient(145deg, color-mix(in srgb, var(--lv) 50%, #1E1C16), #1E1C16); }
.cr-card__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1s cubic-bezier(.2, .7, .2, 1), filter .6s ease; filter: saturate(.9); }
.cr-card:hover .cr-card__img img { transform: scale(1.09); filter: saturate(1.1); }
.cr-card__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11, 10, 7, .35), transparent 35%, rgba(30, 28, 22, .95)); }
.cr-card__lv, .cr-chip--tag, .cr-card__rate { position: absolute; z-index: 2; border-radius: 999px; font-size: .75rem; font-weight: 700; }
.cr-card__lv { top: 16px; inset-inline-start: 16px; padding: 6px 13px; font-weight: 800; background: var(--lv); color: var(--lv-ink); }
.cr-chip--tag { top: 16px; inset-inline-end: 16px; padding: 6px 13px; color: #fff; background: rgba(11, 10, 7, .7); border: 1px solid rgba(255, 255, 255, .3); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.cr-card__rate { bottom: 44px; inset-inline-start: 16px; padding: 5px 11px; color: #fff; background: rgba(11, 10, 7, .7); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.cr-card__rate i { color: var(--gold); } .cr-card__rate small { color: #EEE2C4; font-size: .75rem; }
.cr-card__panel { position: relative; z-index: 2; flex: 1; display: flex; flex-direction: column; margin-top: -30px; padding: 26px 24px 24px; border-radius: 26px 26px 0 0; background: var(--surface); }
.cr-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: .75rem; color: var(--muted); }
.cr-meta i { margin-inline-end: 5px; color: var(--lv); }
.cr-card__title { margin: 12px 0 0; font: 800 1.25rem/1.25 var(--font-head); letter-spacing: -.015em; color: #fff; }
.cr-card__desc { margin: 10px 0 0; font-size: .9rem; color: var(--muted); display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.cr-card__foot { margin-top: auto; padding-top: 20px; }
.cr-by { display: flex; align-items: center; gap: 10px; margin: 0; padding-top: 16px; border-top: 1px dashed var(--line); font-size: .8125rem; font-weight: 600; color: #fff; }
.cr-av { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; font-size: .6875rem; font-weight: 800; background: var(--lv); color: var(--lv-ink); }
.cr-buy { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; }
.cr-price { margin: 0; line-height: 1; } .cr-price b { display: block; font: 800 1.75rem/1 var(--font-head); color: #fff; }
.cr-price span { font-size: .75rem; color: var(--muted); }
.cr-enroll { min-height: 46px; padding-inline: 24px; }
.cr-panel:not([hidden]) .cr-card { animation: crRise .8s cubic-bezier(.2, .8, .2, 1) backwards; }
.cr-panel:not([hidden]) .cr-card:nth-child(2) { animation-delay: .1s; } .cr-panel:not([hidden]) .cr-card:nth-child(3) { animation-delay: .2s; }
.cr-panel:not([hidden]) .cr-banner { animation: crFade .6s ease backwards; }
@keyframes crRise { from { opacity: 0; transform: translateY(46px) scale(.96); } }
.cr-disclaimer { margin: 40px 0 0; font-size: .8125rem; color: var(--muted); text-align: center; }

/* ---------- responsive ---------- */
@media (max-width: 1023px) {
  .cr-banner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .cr-banner__id { grid-column: 1 / -1; }
  .cr-cards { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 16px; margin-inline: calc(var(--pad) * -1); padding: 6px var(--pad) 22px; scrollbar-width: thin; scrollbar-color: var(--accent) transparent; outline-offset: -4px; }
  .cr-card { flex: 0 0 min(78%, 390px); scroll-snap-align: center; }
  .cr-card:hover { transform: none; }
}
@media (max-width: 999px) {
  .cr-hero__grid { grid-template-columns: minmax(0, 1fr); }
  .cr-hero__title { max-width: 14ch; }
  .cr-hero__vis { height: clamp(380px, 78vw, 540px); }
  .cr-float--pf { inset-inline-start: 8px; }
  .cr-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 0; }
  .cr-stats li:nth-child(4) { padding-inline-start: 0; border-inline-start: 0; }
  .cr-levels__head { flex-direction: column; align-items: flex-start; }
  .cr-climb__track { left: auto; inset-inline-start: 30px; margin-left: 0; margin-inline-start: -2px; }
  .cr-lvl { grid-template-columns: minmax(0, 1fr); gap: 28px; padding-inline-start: 78px; }
  .cr-lvl:nth-child(even) .cr-lvl__mw { order: 0; }
  .cr-lvl__node { left: auto; inset-inline-start: 30px; top: 18px; transform: scale(.8); margin-inline-start: -30px; }
  .cr-lvl__node.is-on { transform: scale(1); }
  [dir="rtl"] .cr-lvl__node { translate: 0; }
  .cr-js .cr-lvl .cr-lvl__media, .cr-js .cr-lvl:nth-child(even) .cr-lvl__media { clip-path: inset(0 100% 0 0); }
  .cr-js .cr-lvl.is-in .cr-lvl__media, .cr-js .cr-lvl:nth-child(even).is-in .cr-lvl__media { clip-path: inset(0 0 0 0); }
  
}
@media (max-width: 679px) {
  .cr-banner { grid-template-columns: minmax(0, 1fr); }
  .cr-card { flex-basis: 84%; }
  .cr-tab { min-width: 138px; padding: 14px 16px; flex-direction: column; align-items: center; gap: 2px; }
}
@media (max-width: 559px) {
  .cr-hero__cta .btn { flex: 1 1 100%; }
  .cr-hero__title { font-size: clamp(2.6rem, 13vw, 3.4rem); }
  .cr-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cr-stats li, .cr-stats li:nth-child(4) { padding-inline: 16px 0; border-inline-start: 1px solid var(--line); }
  .cr-stats li:nth-child(odd) { padding-inline-start: 0; border-inline-start: 0; }
  .cr-float--path { display: none; }
  .cr-float--pf { top: 10%; inset-inline-start: 10px; width: 188px; }
  .cr-float--live { inset-inline-end: 10px; bottom: 8%; }
  .cr-wall { border-radius: 26px 90px 26px 26px; }
  .cr-climb__track { inset-inline-start: 22px; }
  .cr-lvl { padding-inline-start: 62px; }
  .cr-lvl__node { inset-inline-start: 22px; width: 46px; height: 46px; margin-inline-start: -23px; font-size: 1.1rem; }
  .cr-lvl__media, .cr-lvl:nth-child(n) .cr-lvl__media { border-radius: 26px 90px 26px 26px; }
  .cr-lvl__facts { grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; }
  .cr-lvl__facts div { padding: 10px 12px; } .cr-lvl__facts dd { font-size: .9375rem; }
  .cr-lvl__go { width: 100%; justify-content: center; }
  .cr-buy { flex-wrap: wrap; } .cr-enroll { flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .cr-ln > span, .cr-badge, .cr-hero__lead, .cr-hero__cta, .cr-proof, .cr-stats, .cr-wall { animation: none; transform: none; clip-path: none; }
  .cr-col__track, .cr-topics__track, .cr-glass, .cr-live { animation: none; }
  .cr-spark { animation: none; stroke-dashoffset: 0; }
  .cr-js .cr-lvl__media, .cr-js .cr-lvl:nth-child(even) .cr-lvl__media { clip-path: none; transition: none; }
  .cr-js .cr-lvl__body > * { opacity: 1; transform: none; transition: none; }
  .cr-lvl__chip .cr-spark { stroke-dashoffset: 0; }
  .cr-panel:not([hidden]) .cr-card, .cr-panel:not([hidden]) .cr-banner { animation: none; }
}
[dir="rtl"] .cr-hero__title, [dir="rtl"] .cr-lvl__body h3, [dir="rtl"] .cr-card__title, [dir="rtl"] .cr-banner h3 { letter-spacing: 0; }
[dir="rtl"] .cr-hero__cta .fa-arrow-right { transform: scaleX(-1); }


/* ===== Student dashboard ===== */
.student-app{--sd-panel:var(--surface);--sd-border:var(--line);--sd-muted:var(--muted);min-height:100vh;background:var(--bg)}
.sd-shell{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr)}
.sd-sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--surface);border-inline-end:1px solid var(--line);padding:23px 15px 17px;display:flex;flex-direction:column;z-index:1100}
.sd-brand{display:flex;align-items:center;gap:10px;padding:0 9px 24px;text-decoration:none;border-bottom:1px solid var(--line)}
.sd-brand-mark{width:39px;height:39px;border-radius:12px;background:var(--ink);color:var(--gold);display:grid;place-items:center;font-size:18px}
.sd-brand strong,.sd-brand small{display:block;line-height:1.1;letter-spacing:.08em}.sd-brand strong{font-size:14px;font-weight:800;color:var(--text)}.sd-brand small{font-size:9px;letter-spacing:.23em;color:var(--muted);margin-top:5px}
.sd-student-mini{display:flex;align-items:center;gap:10px;padding:19px 7px 18px;border-bottom:1px solid var(--line)}.sd-avatar{width:39px;height:39px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#f2c45f,#b57a08);color:#211a08;font-weight:800;font-size:12px;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line)}.sd-student-mini>div:nth-child(2){min-width:0;flex:1}.sd-student-mini strong,.sd-student-mini span{display:block}.sd-student-mini strong{font-size:12px;color:var(--text)}.sd-student-mini span{font-size:10px;color:var(--muted);margin-top:3px}.sd-student-mini>i{font-size:10px;color:var(--muted)}
.sd-nav-label{font-size:9px;font-weight:800;letter-spacing:.16em;color:var(--muted);padding:22px 10px 9px}.sd-nav-label--space{padding-top:25px}.sd-nav{display:grid;gap:4px}.sd-nav a{min-height:43px;display:flex;align-items:center;gap:12px;padding:0 11px;border-radius:10px;text-decoration:none;color:var(--muted);font-size:12px;font-weight:600;transition:background .2s,color .2s}.sd-nav a>i{width:17px;text-align:center;font-size:14px}.sd-nav a:hover,.sd-nav a.is-active{background:var(--shade-strong);color:var(--accent-text)}.sd-nav a.is-active{font-weight:800;box-shadow:inset 3px 0 var(--accent)}.sd-nav-count{margin-inline-start:auto;font-size:10px;background:var(--shade-strong);padding:2px 7px;border-radius:20px;color:var(--accent-text)}
.sd-sidebar-bottom{margin-top:auto;padding-top:24px}.sd-help-card{padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--shade)}.sd-help-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:var(--shade-strong);color:var(--accent-text);margin-bottom:10px}.sd-help-card>strong{font-size:12px}.sd-help-card p{font-size:10px;line-height:1.55;color:var(--muted);margin:5px 0 10px}.sd-help-card>a{font-size:10px;color:var(--accent-text);font-weight:800;text-decoration:none}.sd-help-card>a i{margin-inline-start:5px}.sd-logout{display:flex;align-items:center;gap:11px;padding:16px 11px 2px;margin-top:15px;border-top:1px solid var(--line);text-decoration:none;color:var(--muted);font-size:12px;font-weight:700}.sd-logout:hover{color:var(--loss)}
.sd-main-wrap{min-width:0}.sd-topbar{height:74px;position:sticky;top:0;z-index:1000;background:var(--bg);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,38px);gap:18px}.sd-breadcrumb{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);white-space:nowrap}.sd-breadcrumb i{font-size:9px}.sd-breadcrumb strong{color:var(--text)}.sd-top-actions{display:flex;align-items:center;gap:10px}.sd-search{width:clamp(180px,24vw,285px);height:38px;border:1px solid var(--line);background:var(--surface);border-radius:9px;display:flex;align-items:center;gap:9px;padding:0 12px;color:var(--muted)}.sd-search i{font-size:12px}.sd-search input{border:0;outline:0;background:transparent;color:var(--text);width:100%;min-width:0;font:500 11px var(--font-body)}.sd-search input::placeholder{color:var(--muted)}.sd-icon-btn{width:37px;height:37px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer;position:relative;transition:background .2s,color .2s}.sd-icon-btn:hover{background:var(--shade-strong);color:var(--accent-text)}.sd-notification>span{position:absolute;top:7px;right:8px;width:6px;height:6px;background:var(--loss);border:1px solid var(--surface);border-radius:50%}.sd-top-profile{display:flex;align-items:center;gap:9px;margin-inline-start:5px}.sd-avatar--small{width:34px;height:34px;font-size:10px}.sd-top-profile>span strong,.sd-top-profile>span small{display:block;white-space:nowrap}.sd-top-profile>span strong{font-size:11px}.sd-top-profile>span small{font-size:9px;color:var(--muted);margin-top:2px}.sd-top-profile>i{font-size:9px;color:var(--muted);margin-inline-start:3px}.sd-menu-toggle{display:none}
.sd-content{width:min(100%,1500px);margin:0 auto;padding:30px clamp(18px,3vw,38px) 22px}.sd-welcome{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);align-items:center;gap:28px;padding:28px 30px;border-radius:18px;overflow:hidden;position:relative;background:var(--ink);color:#f9f4e6;isolation:isolate}.sd-welcome:after{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(224,165,38,.18);border-radius:50%;right:-120px;top:-180px;box-shadow:0 0 0 35px rgba(224,165,38,.035),0 0 0 70px rgba(224,165,38,.025);z-index:-1}.sd-welcome h1{font-size:clamp(25px,2.5vw,36px);color:#fff8e9;letter-spacing:-.04em;margin:11px 0 10px}.sd-welcome-copy>p{max-width:530px;font-size:12px;color:rgba(255,248,233,.72);margin:0;line-height:1.8}.sd-eyebrow{font-size:9px;font-weight:800;letter-spacing:.15em;color:var(--accent-text)}.sd-welcome .sd-eyebrow{color:#f0bd4b}.sd-eyebrow>span{display:inline-block;width:7px;height:7px;background:#e0a526;border-radius:50%;margin-inline-end:7px;box-shadow:0 0 0 4px rgba(224,165,38,.15)}.sd-wave{color:#e0a526;font-size:.8em}.sd-welcome-actions{display:flex;align-items:center;gap:20px;margin-top:23px;flex-wrap:wrap}.sd-primary-btn{display:inline-flex;align-items:center;gap:13px;min-height:42px;padding:0 17px;background:#e0a526;color:#17130a;text-decoration:none;border-radius:8px;font-size:11px;font-weight:800;transition:transform .2s,box-shadow .2s}.sd-primary-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #e0a52630}.sd-text-btn{color:#fff8e9;text-decoration:none;font-size:11px;font-weight:700}.sd-text-btn i{margin-inline-start:7px;color:#e0a526}.sd-market-art{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:8px 0 0 10px}.sd-art-top,.sd-art-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.1em;color:rgba(255,248,233,.62)}.sd-art-top b{font-size:11px;color:#6de0a9;letter-spacing:0}.sd-market-art svg{width:100%;height:135px;overflow:visible;color:#fff}.sd-art-foot{letter-spacing:0;font-size:9px}.sd-art-foot span{display:flex;align-items:center;gap:6px}.sd-art-foot span i{width:6px;height:6px;background:#6de0a9;border-radius:50%}.sd-art-foot strong{color:#f0bd4b;font-size:10px}
.sd-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:18px 0 34px}.sd-stat-card{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:16px 17px;min-width:0;transition:transform .2s,border-color .2s}.sd-stat-card:hover{transform:translateY(-3px);border-color:var(--accent)}.sd-stat-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px;color:var(--muted);font-weight:700}.sd-stat-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;font-size:13px}.sd-gold{background:#e0a52622;color:#b77d00}.sd-blue{background:#389be51c;color:#398fcb}.sd-violet{background:#9874e51c;color:#9874e5}.sd-green{background:#15966a1c;color:#15966a}.sd-stat-number{font-size:26px;line-height:1.25;font-weight:800;letter-spacing:-.04em;margin:11px 0 12px;color:var(--text)}.sd-stat-number small{font-size:10px;font-weight:600;letter-spacing:0;color:var(--muted)}.sd-stat-foot{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:9px;color:var(--muted)}.sd-mini-bar{height:5px;background:var(--line);border-radius:9px;flex:1;max-width:65px;overflow:hidden}.sd-mini-bar i{display:block;height:100%;background:var(--accent);border-radius:9px}.sd-positive{color:var(--gain);font-weight:800;white-space:nowrap}
.sd-section{margin:0 0 34px}.sd-section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:17px}.sd-section-heading h2,.sd-panel-heading h2{font-size:clamp(20px,2vw,25px);letter-spacing:-.04em;margin:6px 0;color:var(--text)}.sd-section-heading p{font-size:11px;color:var(--muted);margin:0}.sd-view-link{white-space:nowrap;font-size:10px;font-weight:800;color:var(--accent-text);text-decoration:none}.sd-view-link i{margin-inline-start:7px;transition:transform .2s}.sd-view-link:hover i{transform:translateX(3px)}.sd-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sd-course-card{min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface);transition:transform .22s,box-shadow .22s}.sd-course-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.sd-course-visual{height:142px;position:relative;overflow:hidden;background:#171a1e;color:#f7f2e6;padding:13px 15px}.sd-course-visual:before,.sd-course-visual:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.12);width:150px;height:150px;border-radius:50%;right:-25px;top:-65px}.sd-course-visual:after{width:210px;height:210px;right:-55px;top:-95px}.sd-visual-candles{background:linear-gradient(125deg,#171b20,#33301f)}.sd-level{position:relative;z-index:2;font-size:8px;font-weight:800;letter-spacing:.12em;color:#f0bd4b}.sd-course-symbol{position:absolute;right:14px;top:10px;font-size:38px;font-weight:800;color:#ffffff13;letter-spacing:-.08em}.sd-candle{position:absolute;bottom:25px;width:9px;border-radius:2px;z-index:1}.sd-candle:before{content:"";position:absolute;left:4px;top:-10px;width:1px;height:calc(100% + 20px);background:currentColor}.sd-candle:nth-of-type(1){left:24%;height:35px;background:#25b781;color:#25b781}.sd-candle:nth-of-type(2){left:35%;height:51px;background:#e45b61;color:#e45b61}.sd-candle:nth-of-type(3){left:47%;height:30px;background:#25b781;color:#25b781}.sd-candle:nth-of-type(4){left:59%;height:62px;background:#25b781;color:#25b781}.sd-candle:nth-of-type(5){left:71%;height:44px;background:#e45b61;color:#e45b61}.sd-candle:nth-of-type(6){left:82%;height:73px;background:#25b781;color:#25b781}.sd-course-visual-label{position:absolute;left:15px;bottom:10px;font-size:8px;font-weight:800;letter-spacing:.13em;color:#ffffffa8}.sd-visual-risk{background:linear-gradient(130deg,#172c38,#1a4d59)}.sd-risk-ring{position:absolute;inset:0;display:grid;place-items:center;color:#77d7d0;font-size:45px;opacity:.85}.sd-visual-portfolio{background:linear-gradient(130deg,#292039,#493453)}.sd-portfolio-bars{position:absolute;bottom:23px;left:22%;right:12%;height:73px;display:flex;align-items:end;gap:8px}.sd-portfolio-bars i{flex:1;max-width:20px;border-radius:3px 3px 0 0;background:linear-gradient(#e8bc5c,#ad7a17);opacity:.85}.sd-course-body{padding:15px 15px 16px}.sd-course-meta{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:9px}.sd-course-meta i{color:var(--accent-text);margin-inline-end:4px}.sd-course-body h3{font-size:15px;line-height:1.35;color:var(--text);margin:11px 0 7px}.sd-course-body p{font-size:10px;line-height:1.65;color:var(--muted);margin:0;min-height:49px}.sd-progress-line{height:5px;background:var(--line);border-radius:9px;overflow:hidden;margin-top:17px}.sd-progress-line span{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--accent),#e7bd5c)}.sd-progress-info{display:flex;justify-content:space-between;gap:8px;margin-top:7px;font-size:9px;color:var(--muted)}.sd-progress-info strong{color:var(--text);font-size:9px}.sd-course-continue{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;margin-top:13px;text-decoration:none;color:var(--accent-text);font-size:10px;font-weight:800}.sd-course-continue i{transition:transform .2s}.sd-course-continue:hover i{transform:translateX(3px)}
.sd-lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:15px;margin-bottom:34px}.sd-panel{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px}.sd-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.sd-panel-heading h2{font-size:20px;margin-bottom:0}.sd-round-link{width:30px;height:30px;border:1px solid var(--line);border-radius:9px;display:grid;place-items:center;text-decoration:none;color:var(--muted);font-size:11px}.sd-date-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:20px 0 17px}.sd-date-strip>div{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 3px;border:1px solid var(--line);border-radius:9px;color:var(--muted);position:relative}.sd-date-strip small{font-size:8px;font-weight:800;letter-spacing:.08em}.sd-date-strip strong{font-size:16px;color:var(--text)}.sd-date-strip .is-today{background:var(--ink);border-color:var(--ink);color:#fff}.sd-date-strip .is-today strong{color:#f0bd4b}.sd-date-strip .is-today i{position:absolute;bottom:5px;width:4px;height:4px;border-radius:50%;background:#f0bd4b}.sd-event{display:grid;grid-template-columns:45px 3px minmax(0,1fr) 30px;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.sd-event-time{text-align:center}.sd-event-time strong,.sd-event-time span{display:block}.sd-event-time strong{font-size:12px;color:var(--text)}.sd-event-time span{font-size:9px;color:var(--muted)}.sd-event-line{width:3px;height:38px;background:#e0a526;border-radius:5px}.sd-event-line--blue{background:#398fcb}.sd-event-details{min-width:0}.sd-event-details strong,.sd-event-details span{display:block}.sd-event-details strong{font-size:10px;color:var(--text);line-height:1.4}.sd-event-details span{font-size:9px;color:var(--muted);margin-top:5px}.sd-event-details span i{margin-inline-end:4px}.sd-play-btn,.sd-record-play{width:29px;height:29px;border:1px solid var(--line);background:var(--bg);border-radius:9px;color:var(--accent-text);cursor:pointer;font-size:10px}.sd-play-btn:hover,.sd-record-play:hover{background:var(--shade-strong)}.sd-all-schedule{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:var(--accent-text);font-size:10px;font-weight:800;margin-top:14px}.sd-sim-badge{font-size:8px;letter-spacing:.1em;font-weight:800;color:var(--gain);border:1px solid color-mix(in srgb,var(--gain) 35%,transparent);background:color-mix(in srgb,var(--gain) 8%,transparent);padding:6px 8px;border-radius:20px;white-space:nowrap}.sd-sim-badge i{display:inline-block;width:5px;height:5px;background:var(--gain);border-radius:50%;margin-inline-end:4px}.sd-portfolio-balance{margin:20px 0 13px}.sd-portfolio-balance>span{font-size:10px;color:var(--muted)}.sd-portfolio-balance>strong{display:block;font-size:30px;line-height:1.3;letter-spacing:-.04em;color:var(--text);margin:3px 0}.sd-portfolio-balance>div{font-size:10px;display:flex;gap:7px;align-items:center}.sd-portfolio-balance>div b{color:var(--gain)}.sd-portfolio-balance>div span{color:var(--muted)}.sd-chart-tabs{display:flex;justify-content:flex-end;gap:4px}.sd-chart-tabs button{border:0;background:transparent;color:var(--muted);font:800 9px var(--font-body);padding:5px 8px;border-radius:6px;cursor:pointer}.sd-chart-tabs button.is-active,.sd-chart-tabs button:hover{background:var(--shade-strong);color:var(--accent-text)}.sd-portfolio-chart{height:143px;display:grid;grid-template-columns:37px minmax(0,1fr);gap:7px;margin-top:7px}.sd-chart-y{display:flex;flex-direction:column;justify-content:space-between;font-size:8px;color:var(--muted);padding:3px 0}.sd-portfolio-chart svg{width:100%;height:100%;overflow:visible;color:var(--muted)}.sd-chart-x{display:flex;justify-content:space-between;padding-left:44px;font-size:8px;color:var(--muted);margin-top:6px}.sd-portfolio-note{display:flex;gap:7px;align-items:flex-start;font-size:9px;color:var(--muted);line-height:1.5;padding-top:12px;margin-top:12px;border-top:1px solid var(--line)}.sd-portfolio-note i{color:var(--accent-text);margin-top:2px}
.sd-recordings{margin-top:0}.sd-recording-list{border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:0 17px}.sd-recording-row{display:grid;grid-template-columns:76px minmax(0,1fr) auto 31px;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.sd-recording-row:last-child{border-bottom:0}.sd-recording-thumb{height:55px;border-radius:9px;display:flex;flex-direction:column;justify-content:space-between;padding:8px;color:#f8f3e8;overflow:hidden}.sd-recording-thumb i{font-size:17px}.sd-recording-thumb span{font-size:7px;font-weight:800;letter-spacing:.08em}.sd-thumb-gold{background:linear-gradient(135deg,#4d3a13,#b58219)}.sd-thumb-blue{background:linear-gradient(135deg,#183649,#2f88a3)}.sd-thumb-violet{background:linear-gradient(135deg,#342445,#8d68aa)}.sd-recording-info{min-width:0}.sd-recording-info strong,.sd-recording-info span{display:block}.sd-recording-info strong{font-size:11px;color:var(--text);line-height:1.4}.sd-recording-info span{font-size:9px;color:var(--muted);margin-top:5px;line-height:1.4}.sd-recording-tag{font-size:8px;letter-spacing:.06em;font-weight:800;color:var(--accent-text);background:var(--shade-strong);padding:6px 7px;border-radius:6px;white-space:nowrap}.sd-tag-done{color:var(--gain);background:color-mix(in srgb,var(--gain) 10%,transparent)}
.sd-bottom-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:15px;margin:0 0 30px}.sd-streak-card,.sd-achievement-card{border-radius:14px;padding:22px;border:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}.sd-streak-card{background:linear-gradient(115deg,var(--surface),var(--shade))}.sd-streak-copy{min-width:0}.sd-streak-copy h2{font-size:21px;letter-spacing:-.04em;color:var(--text);margin:8px 0}.sd-streak-copy p{font-size:10px;color:var(--muted);margin:0;line-height:1.7}.sd-streak-copy p strong{color:var(--text)}.sd-streak-link{display:inline-block;font-size:10px;font-weight:800;color:var(--accent-text);text-decoration:none;margin-top:13px}.sd-streak-link i{margin-inline-start:5px}.sd-streak-days{display:grid;grid-template-columns:repeat(4,28px);gap:7px;justify-items:center;flex:0 0 auto}.sd-streak-days>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--bg);border:1px solid var(--line);font-size:9px;font-weight:800;color:var(--muted)}.sd-streak-days>span.done{background:var(--ink);border-color:var(--ink);color:#e0a526}.sd-streak-days>span.today{border-color:var(--accent);color:var(--accent-text)}.sd-streak-days small{grid-column:1/-1;font-size:9px;color:var(--muted);white-space:nowrap}.sd-streak-days small i{color:#e0a526}.sd-achievement-card{justify-content:flex-start}.sd-achievement-icon{width:45px;height:45px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;background:#e0a52622;color:#c58a0a;font-size:21px}.sd-achievement-card>div:nth-child(2){min-width:0;flex:1}.sd-achievement-card h3{font-size:16px;color:var(--text);margin:5px 0}.sd-achievement-card p{font-size:9px;color:var(--muted);line-height:1.5;margin:0 0 7px}.sd-achievement-progress{font-size:9px;color:var(--accent-text);font-weight:800}.sd-badge-mark{width:51px;height:51px;flex:0 0 auto;border:1px dashed var(--accent);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--accent-text);font-size:16px;font-weight:800;transform:rotate(8deg)}.sd-badge-mark span{font-size:5px;letter-spacing:.08em}.sd-footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:16px;font-size:9px;color:var(--muted)}.sd-footer a{color:var(--accent-text);text-decoration:none;font-weight:700}.sd-toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:2000;padding:12px 18px;background:var(--ink);color:#f9f4e6;border:1px solid var(--accent);border-radius:10px;font-size:12px;box-shadow:var(--shadow);transition:opacity .2s,transform .2s;max-width:calc(100% - 30px)}.sd-toast.is-visible{opacity:1;transform:translate(-50%,0)}.sd-overlay{display:none}
@media(max-width:1023px){.sd-shell{grid-template-columns:225px minmax(0,1fr)}.sd-stat-grid{gap:9px}.sd-stat-card{padding:14px 12px}.sd-course-grid{gap:10px}.sd-course-body{padding:13px}.sd-course-visual{height:125px}.sd-welcome{padding:24px;gap:16px}.sd-top-profile>span{display:none}}
@media(max-width:980px){.sd-shell{grid-template-columns:minmax(0,1fr)}.sd-sidebar{position:fixed;top:0;bottom:0;left:0;width:270px;height:100dvh;transform:translateX(-105%);transition:transform .25s ease;box-shadow:var(--shadow)}.sd-sidebar.is-open{transform:translateX(0)}.sd-overlay.is-visible{display:block;position:fixed;inset:0;background:#08080875;z-index:1050}.sd-menu-toggle{display:grid}.sd-topbar{justify-content:flex-start}.sd-breadcrumb{flex:1}.sd-top-actions{gap:7px}.sd-search{width:220px}.sd-content{padding-top:22px}.sd-welcome{grid-template-columns:1fr  .8fr}.sd-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sd-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sd-course-card:last-child{display:none}.sd-lower-grid{grid-template-columns:1fr 1fr}.sd-bottom-grid{grid-template-columns:1fr}.sd-course-visual{height:140px}}
@media(max-width:680px){.sd-topbar{height:64px;padding:0 15px;gap:10px}.sd-breadcrumb{font-size:10px;gap:6px}.sd-top-actions{gap:6px}.sd-search{width:38px;height:37px;padding:0;justify-content:center;border:0;background:transparent}.sd-search input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sd-search:focus-within{position:absolute;left:58px;right:160px;width:auto;background:var(--surface);padding:0 10px;border:1px solid var(--line);z-index:3}.sd-search:focus-within input{position:static;width:100%;height:auto;opacity:1;pointer-events:auto}.sd-icon-btn{width:34px;height:34px}.sd-top-profile{display:none}.sd-content{padding:17px 14px 18px}.sd-welcome{grid-template-columns:1fr;padding:22px 19px;gap:20px;border-radius:14px}.sd-welcome h1{font-size:27px}.sd-welcome-copy>p{font-size:11px}.sd-market-art{padding:0}.sd-market-art svg{height:105px}.sd-art-top,.sd-art-foot{font-size:8px}.sd-welcome-actions{gap:13px;margin-top:18px}.sd-primary-btn{font-size:10px;min-height:40px}.sd-stat-grid{gap:9px;margin:13px 0 28px}.sd-stat-card{padding:13px 11px;border-radius:11px}.sd-stat-head{font-size:9px}.sd-stat-icon{width:28px;height:28px;font-size:11px}.sd-stat-number{font-size:23px;margin:9px 0}.sd-stat-foot{font-size:8px}.sd-section{margin-bottom:28px}.sd-section-heading{align-items:flex-start;gap:10px}.sd-section-heading h2,.sd-panel-heading h2{font-size:20px}.sd-section-heading p{font-size:10px;max-width:260px}.sd-view-link{font-size:9px;padding-top:12px}.sd-course-grid{grid-template-columns:1fr;gap:12px}.sd-course-card:last-child{display:block}.sd-course-card{display:grid;grid-template-columns:115px minmax(0,1fr)}.sd-course-visual{height:100%;min-height:210px;padding:10px}.sd-course-symbol{font-size:29px;right:7px}.sd-course-visual-label{left:10px;bottom:9px;font-size:7px;writing-mode:vertical-rl;transform:rotate(180deg);left:6px}.sd-candle:nth-of-type(1){left:24%}.sd-candle:nth-of-type(2){left:38%}.sd-candle:nth-of-type(3){left:52%}.sd-candle:nth-of-type(4){left:66%}.sd-candle:nth-of-type(5){left:80%}.sd-candle:nth-of-type(6){left:91%}.sd-course-body{padding:12px}.sd-course-body h3{font-size:14px;margin:8px 0 6px}.sd-course-body p{font-size:9px;min-height:0}.sd-course-meta{font-size:8px}.sd-progress-line{margin-top:12px}.sd-progress-info{font-size:8px}.sd-progress-info strong{font-size:8px}.sd-course-continue{font-size:9px;padding-top:10px;margin-top:10px}.sd-lower-grid{grid-template-columns:1fr;gap:12px;margin-bottom:28px}.sd-panel{padding:16px}.sd-panel-heading h2{font-size:19px}.sd-date-strip{margin:16px 0 12px}.sd-event{gap:9px}.sd-event-details strong{font-size:10px}.sd-portfolio-balance>strong{font-size:27px}.sd-portfolio-chart{height:130px}.sd-recording-list{padding:0 12px}.sd-recording-row{grid-template-columns:56px minmax(0,1fr) 28px;gap:10px;padding:12px 0}.sd-recording-thumb{height:49px;padding:6px}.sd-recording-thumb i{font-size:14px}.sd-recording-thumb span{font-size:6px}.sd-recording-info strong{font-size:10px}.sd-recording-info span{font-size:8px}.sd-recording-tag{display:none}.sd-record-play{grid-column:3;grid-row:1}.sd-bottom-grid{gap:12px}.sd-streak-card,.sd-achievement-card{padding:16px;gap:12px}.sd-streak-copy h2{font-size:18px}.sd-streak-copy p{font-size:9px}.sd-streak-days{grid-template-columns:repeat(4,23px);gap:5px}.sd-streak-days>span{width:23px;height:23px;font-size:8px}.sd-achievement-icon{width:37px;height:37px;font-size:17px}.sd-achievement-card h3{font-size:14px}.sd-badge-mark{width:42px;height:42px;font-size:13px}.sd-footer{flex-wrap:wrap;font-size:8px;gap:8px}}
@media(max-width:380px){.sd-breadcrumb span,.sd-breadcrumb i{display:none}.sd-top-actions{margin-inline-start:auto}.sd-topbar{gap:6px}.sd-icon-btn{width:31px;height:31px}.sd-stat-grid{gap:7px}.sd-stat-card{padding:11px 9px}.sd-stat-number{font-size:21px}.sd-stat-head{align-items:flex-start}.sd-stat-icon{width:25px;height:25px}.sd-course-card{grid-template-columns:95px minmax(0,1fr)}.sd-course-visual{min-height:225px}.sd-course-body{padding:10px}.sd-course-body h3{font-size:13px}.sd-course-body p{font-size:8.5px}.sd-course-meta{flex-wrap:wrap}.sd-course-continue{font-size:8px}.sd-streak-card{align-items:flex-start;flex-direction:column}.sd-streak-days{grid-template-columns:repeat(7,23px)}.sd-achievement-card{align-items:flex-start}.sd-achievement-icon{display:none}.sd-welcome h1{font-size:24px}}
/* RTL dashboard-specific alignment */
html[dir="rtl"] .sd-nav a.is-active{box-shadow:inset -3px 0 var(--accent)}
html[dir="rtl"] .sd-sidebar{border-inline-end:0;border-inline-start:1px solid var(--line)}
html[dir="rtl"] .sd-sidebar{left:auto;right:0}
html[dir="rtl"] .sd-sidebar{transform:translateX(105%)}
html[dir="rtl"] .sd-sidebar.is-open{transform:translateX(0)}
html[dir="rtl"] .sd-welcome:after{right:auto;left:-120px}
html[dir="rtl"] .sd-course-symbol{right:auto;left:14px}
html[dir="rtl"] .sd-course-visual-label{left:auto;right:15px}
html[dir="rtl"] .sd-view-link i,html[dir="rtl"] .sd-primary-btn i,html[dir="rtl"] .sd-text-btn i{transform:scaleX(-1)}
html[dir="rtl"] .sd-course-continue i{transform:scaleX(-1)}
html[dir="rtl"] .sd-streak-link i{transform:scaleX(-1)}
@media(max-width:680px){html[dir="rtl"] .sd-course-visual-label{right:6px}}

/* ===== Student login portal ===== */

.login-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--bg)}.login-art{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(25px,5vw,70px);background:#090909;color:#fff8e9;isolation:isolate}.login-art:before,.login-art:after{content:"";position:absolute;border:1px solid #e0a52655;border-radius:50%;width:420px;height:420px;right:-120px;bottom:-110px;z-index:-1;box-shadow:0 0 0 50px #e0a52609,0 0 0 100px #e0a52608}.login-art:after{width:300px;height:300px;right:-60px;bottom:-50px}.login-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff}.login-brand i{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#e0a526;color:#17130a}.login-brand strong{display:block;font-size:15px;letter-spacing:.08em}.login-brand small{display:block;font-size:9px;letter-spacing:.2em;color:#bcb5a4}.login-art-copy{max-width:480px}.login-art-copy .kicker{color:#e0a526;font-size:10px;letter-spacing:.18em;font-weight:800}.login-art-copy h1{font-size:clamp(36px,4vw,58px);color:#fff8e9;line-height:1.02;letter-spacing:-.05em;margin:15px 0}.login-art-copy p{font-size:13px;color:#c2bcad;max-width:390px}.login-art-foot{font-size:10px;color:#a6a092}.login-art-foot i{color:#e0a526;margin-inline-end:7px}.login-form-side{display:grid;place-items:center;padding:30px}.login-form{width:min(100%,390px)}.login-form .eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--accent-text)}.login-form h2{font-size:34px;letter-spacing:-.04em;margin:9px 0;color:var(--text)}.login-form>p{font-size:12px;color:var(--muted);margin:0 0 27px}.login-field{display:block;margin:17px 0}.login-field span{display:block;font-size:11px;font-weight:700;margin-bottom:7px}.login-field input{width:100%;height:47px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:0 13px;font:12px var(--font-body);outline-offset:2px}.login-form-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted);margin:13px 0 22px}.login-form-row label{display:flex;align-items:center;gap:6px}.login-form-row a,.login-back{color:var(--accent-text);text-decoration:none;font-weight:700}.login-submit{width:100%;min-height:47px;border:0;border-radius:9px;background:var(--btn-bg);color:var(--btn-fg);font:800 12px var(--font-body);cursor:pointer}.login-demo-note{margin-top:16px;padding:12px;border:1px dashed var(--line);border-radius:9px;color:var(--muted);font-size:10px;line-height:1.6}.login-back{display:inline-block;margin-top:23px;font-size:11px}.login-status{font-size:11px;color:var(--gain);margin-top:10px;min-height:18px}
@media(max-width:760px){.login-screen{grid-template-columns:1fr}.login-art{min-height:260px;padding:24px}.login-art-copy h1{font-size:34px;margin:10px 0}.login-art-copy p{font-size:11px;margin-bottom:0}.login-art-foot{margin-top:20px}.login-form-side{padding:32px 22px 45px}.login-form h2{font-size:29px}}



/* ===== Student dashboard refinements: shared TradeWise branding ===== */
.student-app{font-family:var(--font-body,inherit)}
.student-app .sd-brand{align-items:center;gap:11px;padding:0 7px 22px}
.student-app .sd-brand-logo{display:block;width:48px;height:48px;object-fit:contain;flex:0 0 auto}
.student-app .sd-brand-copy strong{font-family:var(--font-heading,var(--font-body,inherit));font-size:20px;letter-spacing:-.045em;line-height:1;color:var(--text);display:block}
.student-app .sd-brand-copy strong span{color:var(--accent-text)}
.student-app .sd-brand-copy small{font-size:13px;letter-spacing:0.005em;line-height:1.35;max-width:145px;margin-top:5px;color:var(--muted)}
.student-app .sd-avatar-photo{display:block;object-fit:cover;object-position:center;border-radius:50%;padding:0;background:var(--surface);box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--line)}
.student-app .sd-top-profile{color:var(--text);text-decoration:none;border:0;background:transparent;padding:0;cursor:pointer}
.student-app .sd-top-profile .sd-avatar--small{width:39px;height:39px}
.student-app .sd-top-profile>span strong{font-size:14px}
.student-app .sd-top-profile>span small{font-size:13px}
.student-app .sd-search{display:none!important}
.student-app .sd-welcome h1{font-family:var(--font-heading,var(--font-body,inherit));font-size:clamp(27px,2.4vw,36px);letter-spacing:-.035em}
.student-app .sd-welcome-copy>p{font-size:14px;line-height:1.75}
.student-app .sd-eyebrow,.student-app .sd-art-top,.student-app .sd-art-foot,.student-app .sd-level,.student-app .sd-course-visual-label{font-size:13px;letter-spacing:.04em}
.student-app .sd-stat-head,.student-app .sd-stat-foot,.student-app .sd-section-heading p,.student-app .sd-view-link,.student-app .sd-course-meta,.student-app .sd-course-body p,.student-app .sd-progress-info,.student-app .sd-course-continue,.student-app .sd-event-details span,.student-app .sd-event-time span,.student-app .sd-recording-info span,.student-app .sd-footer,.student-app .sd-help-card p,.student-app .sd-help-card>a,.student-app .sd-nav-label,.student-app .sd-nav-count,.student-app .sd-breadcrumb,.student-app .sd-portfolio-note,.student-app .sd-chart-x,.student-app .sd-chart-y{font-size:13px!important}
.student-app .sd-nav a,.student-app .sd-logout,.student-app .sd-help-card>strong,.student-app .sd-student-mini strong,.student-app .sd-student-mini span{font-size:14px}
.student-app .sd-primary-btn,.student-app .sd-text-btn,.student-app .sd-panel-heading h2,.student-app .sd-course-body h3,.student-app .sd-recording-info strong{font-size:14px}
.student-app .sd-stat-number small{font-size:13px}
.student-app .sd-profile-panel{display:flex;align-items:center;gap:18px;margin:0 0 22px;padding:20px 22px;background:var(--surface);border:1px solid var(--line);border-radius:15px}
.student-app .sd-profile-panel>img{width:62px;height:62px;object-fit:cover;border-radius:50%;box-shadow:0 0 0 3px var(--shade-strong)}
.student-app .sd-profile-panel>div{flex:1;min-width:0}
.student-app .sd-profile-panel h2{font-size:21px;margin:5px 0;color:var(--text)}
.student-app .sd-profile-panel p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}
.student-app .sd-profile-logout{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 16px;border:1px solid var(--line);border-radius:9px;text-decoration:none;color:var(--text);font-size:14px;font-weight:700;white-space:nowrap}
.student-app .sd-profile-logout:hover{background:var(--shade-strong);color:var(--accent-text)}
.student-app .sd-topbar{gap:14px}
@media(max-width:680px){.student-app .sd-profile-panel{align-items:flex-start;flex-wrap:wrap;padding:16px}.student-app .sd-profile-panel>div{flex:1 1 calc(100% - 85px)}.student-app .sd-profile-logout{margin-inline-start:78px}.student-app .sd-brand-logo{width:42px;height:42px}.student-app .sd-brand-copy strong{font-size:18px}.student-app .sd-brand-copy small{font-size:13px}.student-app .sd-top-profile{display:none}}
@media(max-width:380px){.student-app .sd-profile-panel>img{width:52px;height:52px}.student-app .sd-profile-logout{margin-inline-start:0}.student-app .sd-welcome h1{font-size:25px}.student-app .sd-course-body p{font-size:13px!important}.student-app .sd-course-meta,.student-app .sd-progress-info,.student-app .sd-course-continue{font-size:13px!important}}
/* Readability floor for dashboard UI: no tiny helper text */
.student-app p,.student-app small,.student-app .sd-nav-label,.student-app .sd-date-strip small,.student-app .sd-date-strip strong,.student-app .sd-course-meta,.student-app .sd-progress-info,.student-app .sd-event-details span,.student-app .sd-event-time span,.student-app .sd-recording-thumb span,.student-app .sd-recording-info span,.student-app .sd-recording-tag,.student-app .sd-streak-days small,.student-app .sd-streak-days>span,.student-app .sd-badge-mark span,.student-app .sd-chart-tabs button,.student-app .sd-sim-badge,.student-app .sd-stat-foot,.student-app .sd-stat-head,.student-app .sd-art-top,.student-app .sd-art-foot,.student-app .sd-course-visual-label,.student-app .sd-level,.student-app .sd-portfolio-note,.student-app .sd-chart-x,.student-app .sd-chart-y,.student-app .sd-footer,.student-app .sd-help-card p,.student-app .sd-help-card>a{font-size:13px!important}

/* Student dashboard uses the same shared RTL and theme controls as the main site. */
.student-app .sd-top-actions .icon-btn{width:37px;height:37px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer;position:relative;transition:background .2s,color .2s}
.student-app .sd-top-actions .icon-btn:hover{background:var(--shade-strong);color:var(--accent-text)}
.student-app .sd-top-actions .icon-btn .ico-sun{display:none}
html[data-theme="dark"] .student-app .sd-top-actions .icon-btn .ico-moon{display:none}
html[data-theme="dark"] .student-app .sd-top-actions .icon-btn .ico-sun{display:inline-block}
@media(max-width:680px){.student-app .sd-top-actions .icon-btn{width:34px;height:34px}}
@media(max-width:380px){.student-app .sd-top-actions .icon-btn{width:31px;height:31px}}


/* ===== Student dashboard fixes: theme contrast, RTL sidebar and dedicated portfolio ===== */
.student-app .sd-welcome{background:#080808!important;color:#fff8e9!important}
.student-app .sd-welcome h1{color:#fff8e9!important}
.student-app .sd-welcome-copy>p{color:rgba(255,248,233,.82)!important}
.student-app .sd-text-btn{color:#fff8e9!important}
.student-app .sd-art-top,.student-app .sd-art-foot{color:rgba(255,248,233,.82)!important}
.student-app .sd-nav a>i{display:inline-block!important;visibility:visible!important;opacity:1!important;flex:0 0 17px}
.student-app .sd-portfolio-section>.sd-panel{width:100%}
.student-app .sd-portfolio-section .sd-portfolio-panel{display:block;width:100%;margin:0}
.student-app .sd-portfolio-section .sd-panel-heading{margin-bottom:18px}
.student-app .sd-portfolio-section .sd-portfolio-chart{height:clamp(170px,22vw,280px)}
html[dir="rtl"] .student-app .sd-sidebar{transform:none;left:auto;right:auto;inset-inline-start:0;inset-inline-end:auto}
html[dir="rtl"] .student-app .sd-nav a.is-active{box-shadow:inset -3px 0 var(--accent)}
@media(max-width:980px){html[dir="rtl"] .student-app .sd-sidebar{left:auto;right:0;transform:translateX(105%)}html[dir="rtl"] .student-app .sd-sidebar.is-open{transform:translateX(0)}html[dir="ltr"] .student-app .sd-sidebar{left:0;right:auto;transform:translateX(-105%)}html[dir="ltr"] .student-app .sd-sidebar.is-open{transform:translateX(0)}}
@media(min-width:981px){.student-app .sd-lower-grid{grid-template-columns:minmax(0,1fr)}.student-app .sd-schedule-panel{min-height:0}}
@media(max-width:680px){.student-app .sd-portfolio-section .sd-portfolio-chart{height:170px}}

/* Student profile: fuller account summary without adding separate assets or stylesheets. */
.student-app .sd-profile-panel{display:block;padding:24px;margin:0 0 22px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft,0 8px 24px #15120a08)}
.student-app .sd-profile-main{display:flex;align-items:center;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.student-app .sd-profile-photo-wrap{position:relative;flex:0 0 94px;width:94px;height:94px}
.student-app .sd-profile-photo-wrap>img{display:block;width:94px;height:94px;object-fit:cover;border-radius:50%;border:4px solid var(--surface);box-shadow:0 0 0 2px var(--line)}
.student-app .sd-profile-online{position:absolute;right:5px;bottom:6px;width:15px;height:15px;border:3px solid var(--surface);border-radius:50%;background:#16a879}
.student-app .sd-profile-identity{flex:1;min-width:0}
.student-app .sd-profile-identity h2{font-size:25px;margin:5px 0 6px;color:var(--text)}
.student-app .sd-profile-identity p{font-size:14px;line-height:1.65;color:var(--muted);margin:0;max-width:720px}
.student-app .sd-profile-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.student-app .sd-profile-tags span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:13px;background:var(--bg)}
.student-app .sd-profile-tags span:first-child{color:var(--gain)}
.student-app .sd-profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:19px 0}
.student-app .sd-profile-stats>div{padding:13px 15px;background:var(--bg);border:1px solid var(--line);border-radius:11px;min-width:0}
.student-app .sd-profile-stats span{display:block;font-size:13px;color:var(--muted);margin-bottom:7px}
.student-app .sd-profile-stats strong{display:block;color:var(--text);font-size:23px;line-height:1.3}
.student-app .sd-profile-stats strong small{font-size:13px;color:var(--muted)}
.student-app .sd-profile-stats em{display:block;margin-top:6px;font-size:13px;font-style:normal;color:var(--gain)}
.student-app .sd-profile-stats i{display:block;height:5px;margin-top:9px;border-radius:8px;background:var(--line);overflow:hidden}
.student-app .sd-profile-stats i b{display:block;height:100%;border-radius:8px;background:var(--accent)}
.student-app .sd-profile-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.student-app .sd-profile-edit,.student-app .sd-profile-logout{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 15px;border:1px solid var(--line);border-radius:9px;text-decoration:none;color:var(--text);font-size:14px;font-weight:700;white-space:nowrap}
.student-app .sd-profile-edit{background:var(--ink);color:var(--surface)}
.student-app .sd-profile-edit:hover{opacity:.88}
.student-app .sd-profile-logout:hover{background:var(--shade-strong);color:var(--accent-text)}
@media(max-width:680px){.student-app .sd-profile-panel{padding:17px}.student-app .sd-profile-main{align-items:flex-start;gap:14px}.student-app .sd-profile-photo-wrap,.student-app .sd-profile-photo-wrap>img{width:68px;height:68px;flex-basis:68px}.student-app .sd-profile-online{right:1px;bottom:2px}.student-app .sd-profile-identity h2{font-size:21px}.student-app .sd-profile-identity p{font-size:13px}.student-app .sd-profile-tags{gap:6px}.student-app .sd-profile-tags span{font-size:13px;padding:6px 8px}.student-app .sd-profile-stats{grid-template-columns:1fr;gap:8px;padding:14px 0}.student-app .sd-profile-stats>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;padding:11px 12px}.student-app .sd-profile-stats span{margin:0}.student-app .sd-profile-stats strong{grid-column:2;grid-row:1/3}.student-app .sd-profile-stats i,.student-app .sd-profile-stats em{grid-column:1}.student-app .sd-profile-actions{justify-content:stretch}.student-app .sd-profile-actions a{flex:1}}

/* Final dashboard layout: balanced class schedule + mock portfolio panels. */
.student-app .sd-lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:18px;margin:0 0 32px}
.student-app .sd-lower-grid>.sd-panel{min-width:0;height:100%;padding:22px}
.student-app .sd-schedule-panel,.student-app .sd-portfolio-panel{display:flex;flex-direction:column}
.student-app .sd-schedule-panel .sd-date-strip>div{min-height:65px;justify-content:center;cursor:pointer;transition:border-color .18s,background .18s,color .18s}
.student-app .sd-date-strip>div:hover{border-color:var(--accent);background:var(--shade)}
.student-app .sd-date-strip>div:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.student-app .sd-date-strip>div.is-today{background:var(--ink);border-color:var(--ink);color:#fff8e9}
.student-app .sd-date-strip>div.is-today small{color:#fff8e9}
.student-app .sd-date-strip>div.is-today strong{color:#f0bd4b}
.student-app .sd-event{grid-template-columns:54px 3px minmax(0,1fr) 34px;gap:12px;padding:15px 0}
.student-app .sd-event-details strong{font-size:14px;line-height:1.45}
.student-app .sd-event-details span,.student-app .sd-event-time strong,.student-app .sd-event-time span{font-size:13px!important}
.student-app .sd-event-time strong{color:var(--text)}
.student-app .sd-all-schedule{font-size:13px!important;margin-top:auto;padding-top:17px}
.student-app .sd-portfolio-panel .sd-panel-heading{align-items:flex-start;margin-bottom:12px}
.student-app .sd-portfolio-panel .sd-panel-heading h2{font-size:clamp(19px,1.6vw,23px);margin:5px 0 7px}
.student-app .sd-panel-subtitle{font-size:13px!important;color:var(--muted);line-height:1.5;margin:0;max-width:420px}
.student-app .sd-portfolio-balance{margin:12px 0 10px}
.student-app .sd-portfolio-balance>strong{font-size:clamp(27px,2.4vw,34px)}
.student-app .sd-portfolio-chart{height:clamp(145px,16vw,205px);margin-top:8px}
.student-app .sd-portfolio-note{font-size:13px!important;margin-top:auto;padding-top:12px}
.student-app .sd-toast{background:#11100d!important;color:#fff8e9!important;border:1px solid #dba324!important;box-shadow:0 12px 32px #0005!important;font-size:14px!important;line-height:1.5;opacity:0;visibility:hidden}
.student-app .sd-toast.is-visible{opacity:1;visibility:visible}
html[data-theme="dark"] .student-app .sd-toast{background:#11100d!important;color:#fff8e9!important}
html[data-theme="dark"] .student-app .sd-date-strip>div:not(.is-today){background:#171612;border-color:#494234;color:#d8d0bf}
html[data-theme="dark"] .student-app .sd-date-strip>div:not(.is-today) strong{color:#fff8e9}
html[data-theme="dark"] .student-app .sd-date-strip>div:not(.is-today) small{color:#d8d0bf}
html[data-theme="dark"] .student-app .sd-portfolio-panel .sd-panel-subtitle{color:#d4cbb8}
@media(max-width:980px){.student-app .sd-lower-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.student-app .sd-lower-grid>.sd-panel{padding:17px}.student-app .sd-event{grid-template-columns:45px 3px minmax(0,1fr) 30px;gap:8px}}
@media(max-width:700px){.student-app .sd-lower-grid{grid-template-columns:1fr}.student-app .sd-lower-grid>.sd-panel{padding:18px}.student-app .sd-portfolio-chart{height:190px}}

/* Dedicated full-width learning sections: class schedule and mock portfolio */
.student-app .sd-class-schedule-section,
.student-app .sd-portfolio-section{margin:0 0 34px}
.student-app .sd-class-schedule-section>.sd-section-heading,
.student-app .sd-portfolio-section>.sd-section-heading{margin-bottom:15px;align-items:center}
.student-app .sd-class-schedule-section>.sd-section-heading h2,
.student-app .sd-portfolio-section>.sd-section-heading h2{font-size:clamp(22px,2vw,28px);margin:4px 0 5px;color:var(--text)}
.student-app .sd-class-schedule-section>.sd-section-heading p,
.student-app .sd-portfolio-section>.sd-section-heading p{font-size:14px!important;line-height:1.6;color:var(--muted);margin:0;max-width:660px}
.student-app .sd-class-schedule-section>.sd-schedule-panel,
.student-app .sd-portfolio-section>.sd-portfolio-panel{width:100%;padding:24px;border-radius:16px;box-shadow:var(--shadow-soft,0 8px 24px #15120a08)}
.student-app .sd-class-schedule-section .sd-panel-heading{padding-bottom:15px;border-bottom:1px solid var(--line)}
.student-app .sd-class-schedule-section .sd-panel-heading h2{font-size:19px}
.student-app .sd-class-schedule-section .sd-date-strip{grid-template-columns:repeat(5,minmax(0,1fr));max-width:640px;margin:18px 0 12px}
.student-app .sd-class-schedule-section .sd-date-strip>div{min-height:72px}
.student-app .sd-class-schedule-section .sd-event{grid-template-columns:70px 4px minmax(0,1fr) 42px;padding:17px 10px;gap:16px}
.student-app .sd-class-schedule-section .sd-event-time strong{font-size:15px!important}
.student-app .sd-class-schedule-section .sd-event-details strong{font-size:15px;line-height:1.5}
.student-app .sd-class-schedule-section .sd-event-details span{font-size:13px!important;line-height:1.5}
.student-app .sd-class-schedule-section .sd-play-btn{width:38px;height:38px;font-size:13px}
.student-app .sd-class-schedule-section .sd-all-schedule{margin-top:15px;padding:14px 10px 2px;border-top:1px solid var(--line);font-size:14px!important}
.student-app .sd-portfolio-section .sd-portfolio-panel{padding:24px}
.student-app .sd-portfolio-section .sd-portfolio-panel>.sd-panel-heading{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:16px}
.student-app .sd-portfolio-summary-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}
.student-app .sd-portfolio-summary-grid .sd-portfolio-balance{margin:0;padding:17px 18px;border-radius:12px;background:var(--bg);border:1px solid var(--line)}
.student-app .sd-portfolio-summary-grid .sd-portfolio-balance>strong{font-size:clamp(26px,2.6vw,35px);margin:7px 0}
.student-app .sd-portfolio-mini-stat{display:flex;flex-direction:column;justify-content:center;gap:7px;padding:17px 18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.student-app .sd-portfolio-mini-stat>span{font-size:13px;color:var(--muted)}
.student-app .sd-portfolio-mini-stat>strong{font-size:20px;color:var(--text);line-height:1.3}
.student-app .sd-portfolio-mini-stat>small{font-size:13px!important;color:var(--muted);line-height:1.45}
.student-app .sd-portfolio-mini-stat>small i{color:var(--gain);margin-inline-end:4px}
.student-app .sd-portfolio-section .sd-chart-tabs{margin-top:18px}
.student-app .sd-portfolio-section .sd-chart-tabs button{font-size:13px!important;padding:8px 12px}
.student-app .sd-portfolio-section .sd-portfolio-chart{height:clamp(180px,23vw,260px);margin-top:12px}
.student-app .sd-portfolio-section .sd-chart-y,.student-app .sd-portfolio-section .sd-chart-x{font-size:13px!important}
.student-app .sd-portfolio-insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.student-app .sd-portfolio-insights>div{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.student-app .sd-insight-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;background:var(--shade-strong);color:var(--accent-text);font-size:16px}
.student-app .sd-portfolio-insights strong{font-size:14px;color:var(--text)}
.student-app .sd-portfolio-insights p{font-size:13px!important;line-height:1.55;color:var(--muted);margin:5px 0 0}
.student-app .sd-portfolio-section .sd-portfolio-note{margin-top:17px}
html[data-theme="dark"] .student-app .sd-portfolio-summary-grid .sd-portfolio-balance,
html[data-theme="dark"] .student-app .sd-portfolio-mini-stat,
html[data-theme="dark"] .student-app .sd-portfolio-insights>div{background:#171612;border-color:#494234}
@media(max-width:760px){.student-app .sd-class-schedule-section>.sd-schedule-panel,.student-app .sd-portfolio-section>.sd-portfolio-panel{padding:17px}.student-app .sd-portfolio-summary-grid{grid-template-columns:1fr 1fr}.student-app .sd-portfolio-summary-grid .sd-portfolio-balance{grid-column:1/-1}.student-app .sd-portfolio-insights{grid-template-columns:1fr}.student-app .sd-class-schedule-section .sd-event{grid-template-columns:52px 3px minmax(0,1fr) 34px;gap:10px;padding:14px 0}.student-app .sd-class-schedule-section>.sd-section-heading,.student-app .sd-portfolio-section>.sd-section-heading{align-items:flex-start}}
@media(max-width:420px){.student-app .sd-portfolio-summary-grid{grid-template-columns:1fr}.student-app .sd-portfolio-summary-grid .sd-portfolio-balance{grid-column:auto}.student-app .sd-class-schedule-section .sd-date-strip{gap:5px}.student-app .sd-class-schedule-section .sd-date-strip>div{min-height:61px;padding:8px 2px}.student-app .sd-class-schedule-section .sd-event-details strong{font-size:13px}.student-app .sd-class-schedule-section .sd-event-details span{font-size:13px!important}}

/* Student dashboard refinement: compact portfolio + aligned schedule */
.sd-class-schedule-section,.sd-portfolio-section{width:100%;max-width:100%;}
.sd-class-schedule-section .sd-section-heading,.sd-portfolio-section .sd-section-heading{align-items:center;margin-bottom:18px;}
.sd-schedule-panel{width:100%;max-width:none;padding:clamp(18px,2.4vw,28px);display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.6fr);column-gap:28px;align-items:start;}
.sd-schedule-panel>.sd-panel-heading{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:space-between;margin:0 0 16px;}
.sd-schedule-panel>.sd-date-strip{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0;align-self:start;}
.sd-schedule-panel>.sd-event{grid-column:2;display:grid;grid-template-columns:68px 3px minmax(0,1fr) 42px;align-items:center;gap:14px;margin:0;padding:15px 0;border-bottom:1px solid var(--sd-line,rgba(120,120,120,.18));min-width:0;}
.sd-schedule-panel>.sd-event:nth-of-type(3){grid-row:1;grid-column:2;margin-top:40px;}
.sd-schedule-panel>.sd-event:nth-of-type(4){grid-row:2;grid-column:2;}
.sd-schedule-panel>.sd-all-schedule{grid-column:1 / -1;grid-row:3;justify-self:start;margin-top:18px;}
.sd-event-details{min-width:0;}
.sd-event-details strong{display:block;line-height:1.4;overflow-wrap:anywhere;}
.sd-event-details span{display:block;line-height:1.5;margin-top:5px;}
.sd-date-strip>div{min-width:0;min-height:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:13px;}
.sd-date-strip>div strong{font-size:22px;line-height:1.1;}
.sd-portfolio-panel{width:100%;max-width:none;padding:clamp(18px,2.4vw,28px);display:grid;grid-template-columns:minmax(210px,.78fr) minmax(0,1.5fr);gap:18px 28px;align-items:start;}
.sd-portfolio-panel>.sd-panel-heading{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0;padding-bottom:16px;border-bottom:1px solid var(--sd-line,rgba(120,120,120,.18));}
.sd-portfolio-summary-grid{grid-column:1;display:flex;flex-direction:column;gap:10px;margin:0;}
.sd-portfolio-balance,.sd-portfolio-mini-stat{padding:15px 17px;border-radius:14px;min-width:0;}
.sd-portfolio-balance strong{font-size:clamp(24px,2.3vw,32px);line-height:1.25;display:block;overflow-wrap:anywhere;}
.sd-portfolio-mini-stat strong{font-size:18px;line-height:1.35;display:block;overflow-wrap:anywhere;}
.sd-chart-tabs{grid-column:2;grid-row:2;justify-self:end;display:flex;align-self:center;gap:6px;margin:0;}
.sd-portfolio-chart{grid-column:2;grid-row:3;height:205px;min-height:0;margin:0;display:flex;min-width:0;}
.sd-portfolio-chart svg{height:100%;min-width:0;flex:1;}
.sd-chart-y{flex:0 0 44px;}
.sd-chart-x{grid-column:2;display:flex;justify-content:space-between;gap:8px;margin:0;padding-inline:46px 4px;}
.sd-portfolio-insights{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding-top:16px;border-top:1px solid var(--sd-line,rgba(120,120,120,.18));}
.sd-portfolio-insights>div{display:flex;gap:12px;align-items:flex-start;padding:13px 15px;border-radius:12px;min-width:0;}
.sd-portfolio-insights p{margin:4px 0 0;line-height:1.5;}
.sd-portfolio-note{grid-column:1 / -1;margin:0;padding-top:12px;line-height:1.5;}
.sd-sim-badge{white-space:nowrap;}
@media(max-width:760px){
 .sd-schedule-panel{grid-template-columns:minmax(0,1fr);gap:15px;}
 .sd-schedule-panel>.sd-panel-heading{grid-column:1;grid-row:auto;margin:0;}
 .sd-schedule-panel>.sd-date-strip{grid-column:1;grid-row:auto;}
 .sd-schedule-panel>.sd-event,.sd-schedule-panel>.sd-event:nth-of-type(3),.sd-schedule-panel>.sd-event:nth-of-type(4){grid-column:1;grid-row:auto;margin:0;}
 .sd-schedule-panel>.sd-all-schedule{grid-column:1;grid-row:auto;margin-top:2px;}
 .sd-date-strip>div{min-height:76px;}
 .sd-portfolio-panel{grid-template-columns:minmax(0,1fr);gap:14px;}
 .sd-portfolio-panel>.sd-panel-heading{grid-column:1;align-items:flex-start;}
 .sd-portfolio-summary-grid{grid-column:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
 .sd-portfolio-balance{grid-column:1 / -1;}
 .sd-chart-tabs{grid-column:1;grid-row:auto;justify-self:start;}
 .sd-portfolio-chart{grid-column:1;grid-row:auto;height:190px;}
 .sd-chart-x{grid-column:1;padding-inline:44px 2px;}
 .sd-portfolio-insights,.sd-portfolio-note{grid-column:1;}
}
@media(max-width:480px){
 .sd-schedule-panel>.sd-event{grid-template-columns:55px 3px minmax(0,1fr) 36px;gap:9px;padding:13px 0;}
 .sd-event-details strong{font-size:14px;}
 .sd-event-details span{font-size:13px;}
 .sd-portfolio-summary-grid{grid-template-columns:minmax(0,1fr);}
 .sd-portfolio-insights{grid-template-columns:minmax(0,1fr);}
 .sd-portfolio-panel>.sd-panel-heading{flex-wrap:wrap;}
 .sd-chart-y{flex-basis:38px;}
 .sd-chart-x{padding-inline:38px 0;}
}

/* Student dashboard — refined class schedule layout */
.student-app .sd-class-schedule-section .sd-schedule-panel{
  display:flex!important; flex-direction:column!important; gap:0!important;
  width:100%; max-width:100%; padding:clamp(18px,2.2vw,26px)!important;
  border-radius:20px; overflow:hidden;
}
.student-app .sd-class-schedule-section .sd-schedule-panel>.sd-panel-heading{
  width:100%; display:flex!important; align-items:center; justify-content:space-between;
  gap:16px; margin:0!important; padding:0 0 18px!important;
  border-bottom:1px solid var(--sd-line,rgba(120,120,120,.18));
}
.student-app .sd-class-schedule-section .sd-schedule-panel>.sd-date-strip{
  width:100%; display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important; margin:18px 0 12px!important; padding:0!important;
}
.student-app .sd-class-schedule-section .sd-date-strip>div{
  min-height:76px!important; padding:12px 8px!important; gap:7px!important;
  border:1px solid var(--sd-line,rgba(120,120,120,.18)); border-radius:13px;
  background:var(--sd-soft,rgba(120,120,120,.055)); transition:background .2s,border-color .2s;
}
.student-app .sd-class-schedule-section .sd-date-strip>div small{font-size:12px!important;letter-spacing:.08em;font-weight:700;}
.student-app .sd-class-schedule-section .sd-date-strip>div strong{font-size:21px!important;line-height:1.1!important;}
.student-app .sd-class-schedule-section .sd-date-strip>div.is-today{background:rgba(207,164,75,.14)!important;border-color:#cfa44b!important;}
.student-app .sd-class-schedule-section .sd-date-strip>div.is-today i{width:5px;height:5px;border-radius:50%;background:#cfa44b;}
.student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event,
.student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event:nth-of-type(3),
.student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event:nth-of-type(4){
  width:100%; display:grid!important; grid-template-columns:72px 3px minmax(0,1fr) 42px!important;
  grid-column:auto!important; grid-row:auto!important; align-items:center; gap:16px!important;
  margin:0!important; padding:18px 2px!important; border-bottom:1px solid var(--sd-line,rgba(120,120,120,.18));
}
.student-app .sd-class-schedule-section .sd-event-time{display:flex;align-items:baseline;gap:4px;white-space:nowrap;}
.student-app .sd-class-schedule-section .sd-event-time strong{font-size:16px!important;font-weight:800;}
.student-app .sd-class-schedule-section .sd-event-time span{font-size:12px!important;}
.student-app .sd-class-schedule-section .sd-event-line{height:40px!important;border-radius:5px;}
.student-app .sd-class-schedule-section .sd-event-details strong{font-size:15px!important;line-height:1.45!important;}
.student-app .sd-class-schedule-section .sd-event-details span{font-size:13px!important;line-height:1.5!important;}
.student-app .sd-class-schedule-section .sd-play-btn{width:38px!important;height:38px!important;border-radius:12px!important;}
.student-app .sd-class-schedule-section .sd-schedule-panel>.sd-all-schedule{align-self:flex-start;display:inline-flex;align-items:center;gap:9px;margin:16px 0 0!important;padding:0!important;border:0!important;font-size:14px!important;font-weight:700;}
@media(max-width:640px){
 .student-app .sd-class-schedule-section .sd-schedule-panel{padding:16px!important}
 .student-app .sd-class-schedule-section .sd-schedule-panel>.sd-date-strip{gap:6px!important;margin:14px 0 8px!important}
 .student-app .sd-class-schedule-section .sd-date-strip>div{min-height:66px!important;padding:9px 3px!important;border-radius:10px}
 .student-app .sd-class-schedule-section .sd-date-strip>div strong{font-size:18px!important}
 .student-app .sd-class-schedule-section .sd-date-strip>div small{font-size:11px!important}
 .student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event,
 .student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event:nth-of-type(3),
 .student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event:nth-of-type(4){grid-template-columns:58px 3px minmax(0,1fr) 34px!important;gap:10px!important;padding:15px 0!important}
 .student-app .sd-class-schedule-section .sd-event-time{display:block;text-align:left;white-space:normal}
 .student-app .sd-class-schedule-section .sd-event-time strong{display:block;font-size:15px!important}
 .student-app .sd-class-schedule-section .sd-event-time span{display:block;margin-top:2px}
 .student-app .sd-class-schedule-section .sd-event-details strong{font-size:14px!important}
 .student-app .sd-class-schedule-section .sd-event-details span{font-size:13px!important}
 .student-app .sd-class-schedule-section .sd-play-btn{width:33px!important;height:33px!important}
}
@media(max-width:360px){
 .student-app .sd-class-schedule-section .sd-date-strip>div{min-height:60px!important}
 .student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event,
 .student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event:nth-of-type(3),
 .student-app .sd-class-schedule-section .sd-schedule-panel>.sd-event:nth-of-type(4){grid-template-columns:50px 3px minmax(0,1fr) 30px!important;gap:8px!important}
 .student-app .sd-class-schedule-section .sd-event-details strong{font-size:13px!important}
}

/* Selected schedule day: strong yellow highlight in both themes. */
.student-app .sd-date-strip>div.is-today,
.student-app .sd-date-strip>div.is-selected{
  background:#f0bd4b!important;
  border-color:#f0bd4b!important;
  color:#211b0d!important;
  box-shadow:0 4px 12px rgba(240,189,75,.22);
}
.student-app .sd-date-strip>div.is-today small,
.student-app .sd-date-strip>div.is-selected small,
.student-app .sd-date-strip>div.is-today strong,
.student-app .sd-date-strip>div.is-selected strong{color:#211b0d!important}
.student-app .sd-date-strip>div.is-today i,
.student-app .sd-date-strip>div.is-selected i{background:#211b0d!important}
.student-app .sd-date-strip>div.is-today:hover,
.student-app .sd-date-strip>div.is-selected:hover{background:#ffd36b!important;border-color:#ffd36b!important}

/* ===== Responsive overhaul: Student dashboard (wide desktop to 320px) ===== */
.student-app,.student-app *{box-sizing:border-box}
.student-app{overflow-x:hidden;min-width:0}
.student-app .sd-shell{width:100%;min-width:0;grid-template-columns:252px minmax(0,1fr)}
.student-app .sd-main-wrap,.student-app .sd-content,.student-app .sd-section,.student-app .sd-panel,.student-app .sd-course-card,.student-app .sd-profile-panel{min-width:0;max-width:100%}
.student-app .sd-content{padding-inline:clamp(14px,2.4vw,36px)}
.student-app .sd-welcome{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(14px,2vw,28px);padding:clamp(20px,2.5vw,30px)}
.student-app .sd-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.student-app .sd-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.student-app .sd-course-card,.student-app .sd-course-body,.student-app .sd-course-visual{min-width:0}
.student-app .sd-course-body h3,.student-app .sd-course-body p,.student-app .sd-recording-info strong,.student-app .sd-event-details strong{overflow-wrap:anywhere}
.student-app .sd-lower-grid{grid-template-columns:minmax(0,1fr)}
.student-app .sd-recording-row{grid-template-columns:76px minmax(0,1fr) auto 34px}
.student-app .sd-profile-main{min-width:0}
.student-app .sd-profile-identity,.student-app .sd-profile-stats>div{min-width:0}
.student-app .sd-portfolio-section .sd-portfolio-panel{min-width:0;overflow:hidden}
.student-app .sd-portfolio-chart svg{width:100%;max-width:100%}
.student-app .sd-date-strip>div{cursor:pointer;min-width:0}
.student-app .sd-date-strip>div:focus-visible{outline:2px solid #f0bd4b;outline-offset:2px}

@media (max-width:1023px){
 .student-app .sd-shell{grid-template-columns:226px minmax(0,1fr)}
 .student-app .sd-sidebar{padding-inline:12px}
 .student-app .sd-brand{gap:8px}
 .student-app .sd-brand-logo{width:42px;height:42px}
 .student-app .sd-brand-copy strong{font-size:18px}
 .student-app .sd-brand-copy small{font-size:12px}
 .student-app .sd-content{padding-inline:20px}
 .student-app .sd-welcome{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}
 .student-app .sd-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .student-app .sd-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .student-app .sd-course-card:last-child{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr)}
 .student-app .sd-course-card:last-child .sd-course-visual{height:100%;min-height:210px}
}
@media (max-width:980px){
 .student-app .sd-shell{display:block}
 .student-app .sd-sidebar{position:fixed;top:0;bottom:0;left:0;right:auto;width:min(290px,86vw);height:100dvh;max-height:100dvh;overflow-y:auto;transform:translateX(-105%);transition:transform .25s ease;box-shadow:0 20px 60px #0002;z-index:1200;padding:22px 16px}
 .student-app .sd-sidebar.is-open{transform:translateX(0)}
 html[dir="rtl"] .student-app .sd-sidebar{left:auto;right:0;transform:translateX(105%)}
 html[dir="rtl"] .student-app .sd-sidebar.is-open{transform:translateX(0)}
 .student-app .sd-menu-toggle{display:grid;flex:0 0 38px}
 .student-app .sd-topbar{height:auto;min-height:68px;padding:12px 18px;gap:12px}
 .student-app .sd-breadcrumb{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
 .student-app .sd-top-actions{gap:8px;flex:0 0 auto}
 .student-app .sd-content{padding:22px 20px}
 .student-app .sd-welcome{grid-template-columns:minmax(0,1fr) minmax(0,.8fr)}
 .student-app .sd-schedule-panel{display:flex!important;flex-direction:column!important;gap:0!important}
 .student-app .sd-schedule-panel>.sd-panel-heading,.student-app .sd-schedule-panel>.sd-date-strip,.student-app .sd-schedule-panel>.sd-event,.student-app .sd-schedule-panel>.sd-all-schedule{width:100%;grid-column:auto!important;grid-row:auto!important;margin:0!important}
 .student-app .sd-schedule-panel>.sd-date-strip{margin:16px 0 10px!important}
 .student-app .sd-schedule-panel>.sd-event{grid-template-columns:60px 3px minmax(0,1fr) 38px!important;gap:12px!important;padding:15px 0!important}
 .student-app .sd-schedule-panel>.sd-all-schedule{margin-top:15px!important}
 .student-app .sd-portfolio-section .sd-portfolio-panel{display:flex;flex-direction:column;gap:15px}
 .student-app .sd-portfolio-summary-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .student-app .sd-portfolio-balance{grid-column:1/-1}
 .student-app .sd-chart-tabs{align-self:flex-start}
 .student-app .sd-portfolio-chart{width:100%;height:220px}
 .student-app .sd-portfolio-insights{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
 .student-app .sd-content{padding:16px 14px}
 .student-app .sd-topbar{padding:10px 14px;min-height:62px}
 .student-app .sd-breadcrumb span,.student-app .sd-breadcrumb>i{display:none}
 .student-app .sd-breadcrumb{font-size:13px!important}
 .student-app .sd-top-actions{gap:6px}
 .student-app .sd-top-actions .icon-btn{width:35px;height:35px}
 .student-app .sd-welcome{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 20px}
 .student-app .sd-market-art{padding:0;min-height:170px}
 .student-app .sd-market-art svg{height:130px}
 .student-app .sd-stat-grid{gap:10px;margin-top:13px;margin-bottom:25px}
 .student-app .sd-stat-card{padding:13px}
 .student-app .sd-stat-number{font-size:24px}
 .student-app .sd-course-grid{grid-template-columns:minmax(0,1fr);gap:14px}
 .student-app .sd-course-card:last-child{grid-column:auto;display:block}
 .student-app .sd-course-card:last-child .sd-course-visual{min-height:190px}
 .student-app .sd-section-heading{align-items:flex-start;gap:10px;flex-wrap:wrap}
 .student-app .sd-section-heading>div{min-width:0;flex:1 1 100%}
 .student-app .sd-section-heading .sd-view-link{white-space:normal}
 .student-app .sd-panel{padding:16px}
 .student-app .sd-schedule-panel{padding:16px!important}
 .student-app .sd-date-strip{gap:5px!important}
 .student-app .sd-date-strip>div{min-height:65px!important;padding:8px 2px!important}
 .student-app .sd-date-strip>div small{font-size:12px!important;letter-spacing:.02em}
 .student-app .sd-date-strip>div strong{font-size:19px!important}
 .student-app .sd-recording-list{padding-inline:12px}
 .student-app .sd-recording-row{grid-template-columns:64px minmax(0,1fr) 32px;gap:10px;padding:12px 0}
 .student-app .sd-recording-tag{grid-column:2;grid-row:2;justify-self:start;white-space:normal}
 .student-app .sd-record-play{grid-column:3;grid-row:1 / span 2}
 .student-app .sd-recording-thumb{height:54px}
 .student-app .sd-profile-panel{padding:17px}
 .student-app .sd-profile-main{align-items:flex-start;gap:14px}
 .student-app .sd-profile-photo-wrap,.student-app .sd-profile-photo-wrap>img{width:70px;height:70px;flex-basis:70px}
 .student-app .sd-profile-identity h2{font-size:21px}
 .student-app .sd-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .student-app .sd-profile-stats>div:last-child{grid-column:1/-1}
 .student-app .sd-portfolio-insights{grid-template-columns:minmax(0,1fr)}
 .student-app .sd-portfolio-chart{height:185px}
}
@media (max-width:420px){
 .student-app .sd-topbar{gap:8px;padding-inline:10px}
 .student-app .sd-menu-toggle{width:34px;height:34px;flex-basis:34px}
 .student-app .sd-top-actions .icon-btn{width:32px;height:32px}
 .student-app .sd-content{padding:13px 10px}
 .student-app .sd-welcome{padding:19px 16px;border-radius:14px}
 .student-app .sd-welcome h1{font-size:25px;line-height:1.22;overflow-wrap:anywhere}
 .student-app .sd-welcome-actions{gap:12px;align-items:flex-start}
 .student-app .sd-primary-btn{padding-inline:12px;gap:8px;max-width:100%}
 .student-app .sd-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .student-app .sd-stat-card{padding:11px 10px}
 .student-app .sd-stat-head{align-items:flex-start;gap:5px}
 .student-app .sd-stat-icon{width:28px;height:28px;flex:0 0 28px}
 .student-app .sd-stat-number{font-size:22px;margin:9px 0}
 .student-app .sd-stat-foot{align-items:flex-start;flex-direction:column;gap:5px}
 .student-app .sd-course-visual{min-height:165px}
 .student-app .sd-course-body{padding:15px}
 .student-app .sd-section-heading h2{font-size:22px;line-height:1.25}
 .student-app .sd-section-heading p{line-height:1.5}
 .student-app .sd-panel-heading h2{font-size:19px;line-height:1.3}
 .student-app .sd-schedule-panel{padding:12px!important}
 .student-app .sd-date-strip{gap:4px!important}
 .student-app .sd-date-strip>div{min-height:59px!important;border-radius:8px;padding:7px 1px!important}
 .student-app .sd-date-strip>div small{font-size:11px!important}
 .student-app .sd-date-strip>div strong{font-size:17px!important}
 .student-app .sd-schedule-panel>.sd-event{grid-template-columns:44px 3px minmax(0,1fr) 30px!important;gap:7px!important;padding:13px 0!important}
 .student-app .sd-event-time strong{font-size:13px!important}
 .student-app .sd-event-time span{font-size:12px!important}
 .student-app .sd-event-details strong{font-size:13px!important;line-height:1.4!important}
 .student-app .sd-event-details span{font-size:12px!important;line-height:1.4!important;overflow-wrap:anywhere}
 .student-app .sd-play-btn{width:29px!important;height:29px!important}
 .student-app .sd-portfolio-panel{padding:13px!important}
 .student-app .sd-portfolio-summary-grid{grid-template-columns:minmax(0,1fr)}
 .student-app .sd-portfolio-balance{grid-column:auto}
 .student-app .sd-portfolio-balance strong{font-size:27px}
 .student-app .sd-chart-tabs{flex-wrap:wrap}
 .student-app .sd-portfolio-chart{height:160px;gap:4px}
 .student-app .sd-chart-y{flex-basis:34px;font-size:12px!important}
 .student-app .sd-chart-x{padding-inline:36px 0;gap:3px;font-size:12px!important}
 .student-app .sd-recording-row{grid-template-columns:54px minmax(0,1fr) 29px;gap:8px}
 .student-app .sd-recording-thumb{height:49px;padding:6px}
 .student-app .sd-recording-info strong{font-size:13px!important}
 .student-app .sd-recording-info span{font-size:12px!important;overflow-wrap:anywhere}
 .student-app .sd-profile-main{flex-wrap:wrap}
 .student-app .sd-profile-identity{flex:1 1 calc(100% - 85px)}
 .student-app .sd-profile-tags span{max-width:100%;overflow-wrap:anywhere}
 .student-app .sd-profile-stats{grid-template-columns:minmax(0,1fr)}
 .student-app .sd-profile-stats>div:last-child{grid-column:auto}
}
@media (max-width:340px){
 .student-app .sd-top-profile{display:none}
 .student-app .sd-topbar{padding-inline:8px}
 .student-app .sd-content{padding-inline:8px}
 .student-app .sd-welcome h1{font-size:23px}
 .student-app .sd-welcome-copy>p{font-size:13px!important}
 .student-app .sd-welcome-actions{flex-direction:column;align-items:flex-start}
 .student-app .sd-date-strip>div small{font-size:11px!important;letter-spacing:0}
 .student-app .sd-schedule-panel>.sd-event{grid-template-columns:41px 3px minmax(0,1fr) 28px!important;gap:6px!important}
 .student-app .sd-event-details strong{font-size:13px!important}
 .student-app .sd-event-details span{font-size:12px!important}
 .student-app .sd-stat-number{font-size:20px}
}
@media (prefers-reduced-motion:reduce){.student-app .sd-sidebar,.student-app .sd-stat-card,.student-app .sd-primary-btn{transition:none!important}}

/* ===== TradeWise Admin Dashboard: responsive shared-theme workspace ===== */
.admin-app{--ad-bg:var(--bg,#f6f4ef);--ad-surface:var(--surface,#fff);--ad-text:var(--text,#201f1b);--ad-muted:var(--muted,#77766f);--ad-line:var(--line,rgba(30,30,25,.12));background:var(--ad-bg);color:var(--ad-text);min-height:100vh;font-size:14px}
.admin-app *{box-sizing:border-box}.admin-app a{color:inherit;text-decoration:none}.ad-shell{min-height:100vh;display:grid;grid-template-columns:258px minmax(0,1fr)}.ad-sidebar{position:sticky;top:0;height:100vh;min-height:620px;display:flex;flex-direction:column;padding:22px 16px 16px;background:var(--ad-surface);border-inline-end:1px solid var(--ad-line);z-index:80;overflow-y:auto}.ad-brand{display:flex;align-items:center;gap:10px;padding:0 7px 22px;border-bottom:1px solid var(--ad-line)}.ad-brand img{width:42px;height:42px;object-fit:contain;border-radius:10px}.ad-brand>span{display:flex;flex-direction:column;min-width:0}.ad-brand strong{font-size:22px;letter-spacing:-.8px;line-height:1.05}.ad-brand strong span{color:var(--accent,#e8b332)}.ad-brand small{font-size:10px;letter-spacing:.65px;color:var(--ad-muted);margin-top:5px;line-height:1.35}.ad-admin-card{display:flex;align-items:center;gap:10px;margin:19px 0 23px;padding:11px;background:color-mix(in srgb,var(--ad-text) 4%,var(--ad-surface));border:1px solid var(--ad-line);border-radius:13px}.ad-admin-avatar{width:38px;height:38px;flex:0 0 38px;border-radius:50%;display:grid;place-items:center;background:#e9b638;color:#211a08;font-size:12px;font-weight:850}.ad-admin-card>div:nth-child(2){min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.ad-admin-card strong,.ad-top-user strong{font-size:13px}.ad-admin-card small,.ad-top-user small{font-size:12px;color:var(--ad-muted)}.ad-admin-card small i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#20bd80;margin-inline-end:5px}.ad-admin-card>i{color:var(--ad-muted);font-size:13px}.ad-nav-label{font-size:10px;font-weight:800;letter-spacing:1.3px;color:var(--ad-muted);padding:0 10px;margin-bottom:9px}.ad-nav{display:grid;gap:4px}.ad-nav a{min-height:42px;display:flex;align-items:center;gap:12px;padding:0 12px;border-radius:10px;color:var(--ad-muted);font-size:13px;font-weight:650;transition:background .2s,color .2s}.ad-nav a>i{width:18px;text-align:center;font-size:15px}.ad-nav a span{flex:1}.ad-nav a b{font-size:10px;padding:3px 7px;border-radius:7px;background:color-mix(in srgb,var(--ad-text) 7%,var(--ad-surface));color:var(--ad-text)}.ad-nav a:hover,.ad-nav a.active{background:color-mix(in srgb,#eab637 14%,var(--ad-surface));color:var(--ad-text)}.ad-nav a.active{box-shadow:inset 3px 0 #eab637}.ad-nav-label-gap{margin-top:27px}.ad-sidebar-bottom{margin-top:auto;padding-top:20px}.ad-help{display:flex;align-items:center;gap:9px;padding:12px 9px;border:1px solid var(--ad-line);border-radius:12px;margin-bottom:14px}.ad-help-icon{width:30px;height:30px;display:grid;place-items:center;background:color-mix(in srgb,#eab637 18%,var(--ad-surface));border-radius:9px;color:#d5a020}.ad-help>div{flex:1;display:flex;flex-direction:column;gap:3px}.ad-help strong{font-size:12px}.ad-help small{font-size:11px;color:var(--ad-muted)}.ad-help>i{font-size:11px;color:var(--ad-muted)}.ad-logout{display:flex;align-items:center;gap:10px;padding:12px;border-radius:9px;color:#d96a5c!important;font-size:13px;font-weight:700}.ad-logout:hover{background:rgba(220,90,70,.09)}.ad-main-wrap{min-width:0}.ad-topbar{height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 clamp(18px,3vw,42px);background:var(--ad-surface);border-bottom:1px solid var(--ad-line)}.ad-crumb{display:flex;align-items:center;gap:11px;white-space:nowrap;font-size:12px;color:var(--ad-muted)}.ad-crumb i{font-size:10px}.ad-crumb strong{color:var(--ad-text);font-size:13px}.ad-top-actions{display:flex;align-items:center;gap:10px;min-width:0}.ad-search{height:38px;width:clamp(170px,20vw,255px);display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--ad-line);border-radius:10px;color:var(--ad-muted);background:var(--ad-bg)}.ad-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ad-text);font:inherit;font-size:12px}.ad-icon-btn,.ad-notify,.ad-menu-toggle{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border:1px solid var(--ad-line);border-radius:10px;background:var(--ad-surface);color:var(--ad-text);cursor:pointer}.ad-notify{position:relative}.ad-notify>i:last-child{position:absolute;width:7px;height:7px;border-radius:50%;background:#e9b638;right:8px;top:7px}.ad-top-user{display:flex;align-items:center;gap:9px;padding-inline-start:6px}.ad-top-user .ad-admin-avatar{width:35px;height:35px;flex-basis:35px}.ad-top-user>span{display:flex;flex-direction:column;gap:3px;white-space:nowrap}.ad-top-user>i{font-size:10px;color:var(--ad-muted);margin-inline-start:3px}.ad-menu-toggle{display:none}.ad-content{width:100%;max-width:1680px;margin:auto;padding:29px clamp(18px,3vw,42px) 20px}.ad-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.ad-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.25px;color:var(--ad-muted)}.ad-eyebrow>i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e9b638;margin-inline-end:7px}.ad-welcome h1{font-size:clamp(24px,2.4vw,34px);line-height:1.2;letter-spacing:-.8px;margin:10px 0 8px;color:var(--ad-text)}.ad-welcome h1 span{color:#e9b638}.ad-welcome p,.ad-panel-heading p{font-size:13px;line-height:1.6;color:var(--ad-muted);margin:0}.ad-welcome-actions{display:flex;gap:9px;flex-wrap:wrap}.ad-btn-primary,.ad-btn-quiet{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border-radius:10px;font-size:12px;font-weight:750;cursor:pointer}.ad-btn-primary{background:#e9b638;color:#201a0b;border:1px solid #e9b638}.ad-btn-quiet{background:var(--ad-surface);color:var(--ad-text);border:1px solid var(--ad-line)}.ad-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.ad-stat,.ad-panel{background:var(--ad-surface);border:1px solid var(--ad-line);border-radius:15px;min-width:0;box-shadow:0 6px 22px rgba(0,0,0,.025)}.ad-stat{padding:17px 18px 14px}.ad-stat-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--ad-muted);font-size:12px;font-weight:650}.ad-stat-top>i{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font-size:14px;font-style:normal}.ad-stat-top>i.gold{background:rgba(233,182,56,.15);color:#d5a020}.ad-stat-top>i.blue{background:rgba(76,153,225,.14);color:#569fe3}.ad-stat-top>i.violet{background:rgba(156,119,219,.15);color:#a283e4}.ad-stat-top>i.green{background:rgba(35,181,125,.14);color:#28b77f}.ad-stat>strong{display:block;font-size:29px;letter-spacing:-.7px;margin:12px 0 9px;color:var(--ad-text)}.ad-stat-foot{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--ad-muted);font-size:11px}.ad-stat-foot .ad-up{color:#20b77b;font-weight:800}.ad-stat-foot .ad-neutral{color:var(--ad-text);font-weight:700}.ad-stat-foot svg{width:65px;height:23px;margin-inline-start:auto;overflow:visible}.ad-stat-foot svg path{fill:none;stroke:#28b77f;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.ad-overview-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:16px;margin-bottom:20px}.ad-panel{padding:20px}.ad-panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:19px}.ad-panel-heading h2{font-size:18px;line-height:1.3;margin:7px 0 5px;letter-spacing:-.3px}.ad-panel-heading p{font-size:12px}.ad-panel-heading select{max-width:130px;background:var(--ad-surface);color:var(--ad-text);border:1px solid var(--ad-line);border-radius:8px;padding:9px 10px;font:inherit;font-size:11px}.ad-chart-legend{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:11px;color:var(--ad-muted)}.ad-chart-legend span{display:flex;align-items:center;gap:7px}.ad-chart-legend span i{width:8px;height:8px;border-radius:50%;background:#e9b638}.ad-chart-legend b{color:#20b77b;font-size:12px}.ad-chart-legend small{font-weight:500;color:var(--ad-muted)}.ad-enrollment-chart{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px}.ad-y-labels{height:190px;display:flex;flex-direction:column;justify-content:space-between;text-align:right;color:var(--ad-muted);font-size:10px}.ad-chart-area{height:190px;position:relative;min-width:0}.ad-grid-lines{position:absolute;inset:0 0 22px;display:flex;flex-direction:column;justify-content:space-between}.ad-grid-lines i{height:1px;border-top:1px dashed var(--ad-line)}.ad-chart-area svg{position:absolute;inset:0 0 22px;width:100%;height:calc(100% - 22px);overflow:visible}.ad-x-labels{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;color:var(--ad-muted);font-size:10px}.ad-small-link{display:inline-flex;align-items:center;gap:7px;color:var(--ad-text)!important;font-size:11px;font-weight:750;white-space:nowrap}.ad-small-link i{color:#d6a324}.ad-top-course{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid var(--ad-line)}.ad-top-course:first-of-type{padding-top:0}.ad-top-course:last-of-type{border-bottom:0}.ad-course-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;display:grid;place-items:center;font-size:17px}.ad-course-icon.candle{background:rgba(233,182,56,.15);color:#d7a52b}.ad-course-icon.risk{background:rgba(76,153,225,.14);color:#569fe3}.ad-course-icon.market{background:rgba(156,119,219,.15);color:#a283e4}.ad-top-course-copy{flex:1;min-width:0}.ad-top-course-copy strong{display:block;font-size:12px;line-height:1.4;margin-bottom:4px}.ad-top-course-copy small{font-size:11px;color:var(--ad-muted)}.ad-course-meter{height:4px;margin-top:9px;border-radius:9px;background:color-mix(in srgb,var(--ad-text) 9%,var(--ad-surface));overflow:hidden}.ad-course-meter i{display:block;height:100%;border-radius:9px;background:#e9b638}.ad-top-course>b{font-size:13px;white-space:nowrap}.ad-top-course>b small{display:block;font-size:10px;color:var(--ad-muted);font-weight:500;margin-top:3px}.ad-course-note{font-size:10px;line-height:1.5;color:var(--ad-muted);padding-top:12px;margin-top:5px;border-top:1px solid var(--ad-line)}.ad-course-note i{color:#d7a52b;margin-inline-end:5px}.ad-lower-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);gap:16px;margin-bottom:20px}.ad-table-wrap{width:100%;overflow-x:auto}.ad-students-table{width:100%;border-collapse:collapse;min-width:590px;text-align:start}.ad-students-table th{text-align:start;padding:0 9px 11px;font-size:10px;letter-spacing:.35px;color:var(--ad-muted);font-weight:750;white-space:nowrap}.ad-students-table td{padding:12px 9px;border-top:1px solid var(--ad-line);font-size:11px;white-space:nowrap}.ad-person{display:flex;align-items:center;gap:9px;min-width:155px}.ad-person img{width:34px;height:34px;object-fit:cover;border-radius:50%;background:var(--ad-bg)}.ad-person span{display:flex;flex-direction:column;gap:4px}.ad-person strong{font-size:11px}.ad-person small{font-size:10px;color:var(--ad-muted)}.ad-status{display:inline-flex;padding:5px 8px;border-radius:20px;font-size:10px;font-weight:750}.ad-status.active{background:rgba(32,183,123,.12);color:#20b77b}.ad-status.pending{background:rgba(233,182,56,.15);color:#d6a324}.ad-row-menu{border:0;background:transparent;color:var(--ad-muted);cursor:pointer;padding:5px}.ad-table-foot{display:flex;justify-content:space-between;gap:10px;padding-top:13px;border-top:1px solid var(--ad-line);font-size:10px;color:var(--ad-muted)}.ad-no-results{padding:24px;text-align:center;font-size:12px;color:var(--ad-muted)}.ad-class-item{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--ad-line)}.ad-class-date{width:43px;height:48px;flex:0 0 43px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;background:rgba(233,182,56,.14);color:#d5a020}.ad-class-date strong{font-size:19px;line-height:1.1}.ad-class-date span{font-size:9px;font-weight:800;letter-spacing:.7px;margin-top:3px}.ad-class-date.blue-date{background:rgba(76,153,225,.13);color:#569fe3}.ad-class-date.violet-date{background:rgba(156,119,219,.15);color:#a283e4}.ad-class-copy{flex:1;min-width:0}.ad-class-copy>strong{display:block;font-size:12px;line-height:1.4}.ad-class-copy>small{display:block;font-size:10px;color:var(--ad-muted);margin:5px 0}.ad-class-copy>small i{margin-inline-end:3px}.ad-class-type{font-size:10px;font-weight:700}.ad-class-type.live{color:#20b77b}.ad-class-type.recorded{color:#569fe3}.ad-class-attendees{font-size:10px;color:var(--ad-muted);white-space:nowrap}.ad-class-attendees i{margin-inline-end:3px}.ad-create-class{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;padding:11px;border:1px dashed var(--ad-line);border-radius:9px;color:var(--ad-text)!important;font-size:11px;font-weight:750}.ad-create-class i{color:#d5a020}.ad-bottom-strip{display:flex;align-items:center;gap:13px;padding:17px 20px;background:color-mix(in srgb,#e9b638 8%,var(--ad-surface));border:1px solid color-mix(in srgb,#e9b638 28%,var(--ad-line));border-radius:14px;margin-bottom:19px}.ad-bottom-icon{width:40px;height:40px;display:grid;place-items:center;background:rgba(233,182,56,.18);color:#d5a020;border-radius:11px;font-size:17px}.ad-bottom-strip>div:nth-child(2){flex:1;min-width:0}.ad-bottom-strip strong{font-size:13px}.ad-bottom-strip p{font-size:11px;line-height:1.5;color:var(--ad-muted);margin:4px 0 0}.ad-bottom-strip>a{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;white-space:nowrap}.ad-bottom-strip>a i{color:#d5a020}.ad-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 0 4px;color:var(--ad-muted);font-size:10px}.ad-footer a{font-weight:750;color:var(--ad-text)}.ad-overlay{display:none}.ad-toast{position:fixed;z-index:120;bottom:22px;inset-inline-end:22px;max-width:min(390px,calc(100vw - 32px));padding:13px 17px;border-radius:11px;background:#e9b638;color:#211a08;font-size:12px;font-weight:750;box-shadow:0 12px 34px #0002;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.ad-toast.show{opacity:1;transform:translateY(0)}
@media(max-width:1023px){.ad-shell{grid-template-columns:230px minmax(0,1fr)}.ad-sidebar{padding-inline:12px}.ad-stat-grid{gap:10px}.ad-stat{padding:15px}.ad-overview-grid,.ad-lower-grid{grid-template-columns:minmax(0,1fr) minmax(290px,.85fr)}.ad-top-actions{gap:7px}.ad-top-user>span{display:none}}
@media(max-width:980px){.ad-shell{display:block}.ad-sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:min(290px,84vw);height:100dvh;min-height:0;transform:translateX(-105%);transition:transform .25s ease;box-shadow:0 20px 60px #0002}.admin-app[dir="rtl"] .ad-sidebar{transform:translateX(105%)}.admin-app.ad-menu-open .ad-sidebar{transform:translateX(0)}.ad-overlay{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.48)}.admin-app.ad-menu-open .ad-overlay{display:block}.ad-menu-toggle{display:grid}.ad-topbar{height:68px;padding-inline:18px}.ad-crumb{margin-inline-end:auto}.ad-top-user{display:none}.ad-content{padding:24px 18px}.ad-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ad-overview-grid,.ad-lower-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:720px){.ad-topbar{gap:10px}.ad-search{width:clamp(125px,35vw,220px)}.ad-crumb span,.ad-crumb>i{display:none}.ad-crumb{font-size:12px}.ad-top-actions{gap:6px}.ad-icon-btn,.ad-notify,.ad-menu-toggle{width:35px;height:35px;flex-basis:35px}.ad-welcome{align-items:flex-start;flex-direction:column;gap:15px}.ad-welcome-actions{width:100%}.ad-btn-primary,.ad-btn-quiet{flex:1}.ad-overview-grid,.ad-lower-grid{grid-template-columns:minmax(0,1fr)}.ad-panel{padding:17px}.ad-enrollment-chart .ad-y-labels,.ad-y-labels{height:160px}.ad-chart-area{height:160px}.ad-bottom-strip{align-items:flex-start;flex-wrap:wrap}.ad-bottom-strip>div:nth-child(2){width:calc(100% - 60px)}.ad-bottom-strip>a{margin-inline-start:53px}.ad-stat-foot svg{width:54px}}
@media(max-width:480px){.ad-topbar{padding-inline:12px}.ad-content{padding:20px 12px 16px}.ad-search{width:36px;padding:0;justify-content:center;border-color:transparent;background:transparent}.ad-search input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ad-search:focus-within{position:absolute;left:58px;right:104px;z-index:5;width:auto;padding:0 10px;background:var(--ad-surface);border-color:var(--ad-line)}.ad-search:focus-within input{position:static;width:100%;height:auto;opacity:1;pointer-events:auto}.ad-crumb strong{font-size:11px}.ad-top-actions{gap:4px}.ad-stat-grid{gap:9px}.ad-stat{padding:13px 12px}.ad-stat-top{font-size:11px;align-items:flex-start}.ad-stat-top>i{width:29px;height:29px;flex-basis:29px}.ad-stat>strong{font-size:25px;margin:11px 0 8px}.ad-stat-foot{font-size:10px;gap:4px}.ad-stat-foot svg{display:none}.ad-welcome h1{font-size:25px}.ad-welcome p{font-size:12px}.ad-panel-heading{gap:8px}.ad-panel-heading h2{font-size:17px}.ad-panel-heading p{font-size:11px}.ad-panel-heading select{max-width:104px;padding:8px 5px;font-size:10px}.ad-top-course{gap:8px}.ad-course-icon{width:35px;height:35px;flex-basis:35px}.ad-top-course-copy strong{font-size:11px}.ad-top-course>b{font-size:11px}.ad-table-foot{font-size:10px}.ad-class-attendees{display:none}.ad-bottom-strip{padding:14px}.ad-bottom-strip>a{margin-inline-start:0}.ad-footer{font-size:10px;gap:7px}.ad-footer span:nth-child(2){display:none}}
@media(max-width:350px){.ad-stat-grid{grid-template-columns:1fr 1fr}.ad-stat{padding:11px 9px}.ad-stat-top{font-size:10px}.ad-stat>strong{font-size:23px}.ad-stat-foot{font-size:9px}.ad-top-actions{gap:3px}.ad-search{width:30px}.ad-icon-btn,.ad-notify,.ad-menu-toggle{width:32px;height:32px;flex-basis:32px}.ad-welcome h1{font-size:23px}.ad-welcome-actions{flex-direction:column}.ad-btn-primary,.ad-btn-quiet{width:100%;flex:auto}.ad-panel{padding:13px}.ad-panel-heading{flex-wrap:wrap}.ad-panel-heading select{max-width:100%}.ad-top-course>b small{font-size:9px}}
[dir="rtl"] .ad-nav a.active{box-shadow:inset -3px 0 #eab637}[dir="rtl"] .admin-app .ad-sidebar{border-inline-end:0;border-inline-start:1px solid var(--ad-line)}
@media(prefers-reduced-motion:reduce){.admin-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ===== Admin dashboard alignment with the student dashboard ===== */
.admin-app{font-family:var(--font-body,inherit);font-size:14px;color:var(--text);background:var(--bg)}
.admin-app h1,.admin-app h2,.admin-app h3,.admin-app .ad-brand strong{font-family:var(--font-heading,var(--font-body,inherit))}
.admin-app .ad-shell{grid-template-columns:clamp(228px,19vw,258px) minmax(0,1fr)}
.admin-app .ad-sidebar,.admin-app .ad-topbar,.admin-app .ad-panel,.admin-app .ad-stat{background:var(--surface);color:var(--text);border-color:var(--line)}
.admin-app .ad-content{padding:clamp(20px,2.5vw,36px) clamp(14px,2.4vw,38px) 24px}
.admin-app .ad-nav a{font-size:13px;min-height:44px;color:var(--muted)}
.admin-app .ad-nav a.active,.admin-app .ad-nav a:hover{color:var(--text);background:color-mix(in srgb,var(--accent) 14%,var(--surface))}
.admin-app .ad-nav a.active{box-shadow:inset 3px 0 var(--accent)}
.admin-app .ad-eyebrow,.admin-app .ad-nav-label{font-size:12px;line-height:1.45;letter-spacing:.08em}
.admin-app .ad-welcome h1{font-size:clamp(27px,2.4vw,36px);line-height:1.2;color:var(--text);overflow-wrap:anywhere}
.admin-app .ad-welcome p,.admin-app .ad-panel-heading p{font-size:13px;color:var(--muted);line-height:1.65}
.admin-app .ad-stat-top{font-size:13px;color:var(--muted)}
.admin-app .ad-stat-foot{font-size:12px;color:var(--muted);line-height:1.5}
.admin-app .ad-panel-heading h2{font-size:clamp(17px,1.35vw,20px);color:var(--text)}
.admin-app .ad-chart-legend,.admin-app .ad-chart-legend b{font-size:13px}
.admin-app .ad-chart-legend small,.admin-app .ad-y-labels,.admin-app .ad-x-labels{font-size:12px}
.admin-app .ad-top-course-copy strong,.admin-app .ad-class-copy>strong{font-size:13px;line-height:1.5;color:var(--text);overflow-wrap:anywhere}
.admin-app .ad-top-course-copy small,.admin-app .ad-class-copy>small,.admin-app .ad-top-course>b small{font-size:12px;color:var(--muted);line-height:1.5}
.admin-app .ad-course-note{font-size:12px;color:var(--muted);line-height:1.6}
.admin-app .ad-students-table th{font-size:12px;color:var(--muted);padding:12px 10px}
.admin-app .ad-students-table td{font-size:13px;color:var(--text);padding:13px 10px}
.admin-app .ad-person strong{font-size:13px;color:var(--text)}
.admin-app .ad-person small{font-size:12px;color:var(--muted)}
.admin-app .ad-status,.admin-app .ad-class-type,.admin-app .ad-class-attendees{font-size:12px}
.admin-app .ad-table-foot,.admin-app .ad-footer{font-size:12px;color:var(--muted);line-height:1.5}
.admin-app .ad-btn-primary,.admin-app .ad-btn-quiet{font-size:13px;min-height:42px}
.admin-app .ad-admin-card strong,.admin-app .ad-top-user strong{font-size:13px;color:var(--text)}
.admin-app .ad-admin-card small,.admin-app .ad-top-user small{font-size:12px;color:var(--muted)}
.admin-app .ad-admin-card{background:color-mix(in srgb,var(--text) 4%,var(--surface));border-color:var(--line)}
.admin-app .ad-topbar{gap:12px}
.admin-app .ad-top-actions{gap:8px}
.admin-app .ad-top-user{min-width:0}
.admin-app .ad-top-user>span{white-space:normal}
.admin-app .ad-panel,.admin-app .ad-stat{box-shadow:0 6px 22px rgba(0,0,0,.04)}
.admin-app .ad-overview-grid,.admin-app .ad-lower-grid{align-items:stretch;gap:16px;margin-bottom:20px}
.admin-app .ad-panel{min-width:0;overflow:hidden}
.admin-app .ad-table-wrap{max-width:100%;overscroll-behavior-inline:contain}
.admin-app .ad-students-table{min-width:650px}
.admin-app .ad-logout{font-size:13px}
.admin-app .ad-toast{font-size:13px;line-height:1.5}
.admin-app .ad-overlay{z-index:79}
@media(max-width:1023px){
 .admin-app .ad-shell{grid-template-columns:220px minmax(0,1fr)}
 .admin-app .ad-overview-grid,.admin-app .ad-lower-grid{grid-template-columns:minmax(0,1fr)}
 .admin-app .ad-top-user>span{display:flex}
}
@media(max-width:980px){
 .admin-app .ad-shell{display:block}
 .admin-app .ad-sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:min(300px,86vw);height:100dvh;min-height:0;transform:translateX(-105%);transition:transform .25s ease;box-shadow:0 18px 55px rgba(0,0,0,.25);z-index:80}
 .admin-app[dir="rtl"] .ad-sidebar{transform:translateX(105%)}
 .admin-app.ad-menu-open .ad-sidebar{transform:translateX(0)}
 .admin-app .ad-menu-toggle{display:grid}
 .admin-app .ad-topbar{height:auto;min-height:68px;padding:12px 18px;flex-wrap:wrap}
 .admin-app .ad-crumb{margin-inline-end:auto}
 .admin-app .ad-top-user>span{display:flex}
 .admin-app .ad-content{padding:24px 18px}
 .admin-app .ad-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
}
@media(max-width:600px){
 .admin-app .ad-topbar{gap:8px;padding:11px 12px}
 .admin-app .ad-crumb{font-size:12px;min-width:0}
 .admin-app .ad-crumb span,.admin-app .ad-crumb>i{display:none}
 .admin-app .ad-top-actions{gap:6px}
 .admin-app .ad-icon-btn,.admin-app .ad-menu-toggle{width:36px;height:36px;flex-basis:36px}
 .admin-app .ad-top-user{display:none}
 .admin-app .ad-content{padding:20px 12px 16px}
 .admin-app .ad-welcome{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:18px}
 .admin-app .ad-welcome h1{font-size:clamp(24px,7vw,30px);letter-spacing:-.03em}
 .admin-app .ad-welcome p{font-size:13px}
 .admin-app .ad-welcome-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .admin-app .ad-btn-primary,.admin-app .ad-btn-quiet{min-width:0;padding:0 9px;font-size:12px}
 .admin-app .ad-stat-grid{gap:9px;margin-bottom:14px}
 .admin-app .ad-stat{padding:13px 12px;border-radius:12px}
 .admin-app .ad-stat-top{font-size:12px;align-items:flex-start}
 .admin-app .ad-stat-top>i{width:30px;height:30px;flex-basis:30px}
 .admin-app .ad-stat>strong{font-size:25px;margin:10px 0 8px}
 .admin-app .ad-stat-foot{font-size:12px;gap:4px}
 .admin-app .ad-stat-foot svg{display:none}
 .admin-app .ad-overview-grid,.admin-app .ad-lower-grid{grid-template-columns:minmax(0,1fr);gap:13px;margin-bottom:14px}
 .admin-app .ad-panel{padding:15px 13px;border-radius:12px}
 .admin-app .ad-panel-heading{gap:10px;margin-bottom:16px}
 .admin-app .ad-panel-heading h2{font-size:18px}
 .admin-app .ad-panel-heading p{font-size:13px}
 .admin-app .ad-panel-heading select{max-width:116px;font-size:12px;padding:8px 6px}
 .admin-app .ad-enrollment-chart{grid-template-columns:20px minmax(0,1fr);gap:6px}
 .admin-app .ad-y-labels{font-size:12px}
 .admin-app .ad-x-labels{font-size:11px}
 .admin-app .ad-top-course{gap:9px}
 .admin-app .ad-course-icon{width:36px;height:36px;flex-basis:36px}
 .admin-app .ad-top-course-copy strong{font-size:13px}
 .admin-app .ad-top-course>b{font-size:12px}
 .admin-app .ad-class-item{gap:9px}
 .admin-app .ad-class-date{width:40px;flex-basis:40px}
 .admin-app .ad-class-attendees{display:none}
 .admin-app .ad-table-foot{align-items:flex-start;flex-wrap:wrap}
}
@media(max-width:360px){
 .admin-app .ad-stat{padding:11px 9px}
 .admin-app .ad-stat-top{gap:5px;font-size:12px}
 .admin-app .ad-stat-top>i{width:26px;height:26px;flex-basis:26px}
 .admin-app .ad-stat>strong{font-size:23px}
 .admin-app .ad-welcome-actions{grid-template-columns:1fr}
 .admin-app .ad-panel-heading select{max-width:100px}
 .admin-app .ad-chart-legend{align-items:flex-start;gap:8px;flex-wrap:wrap}
 .admin-app .ad-top-course{align-items:flex-start;flex-wrap:wrap}
 .admin-app .ad-top-course>b{margin-inline-start:auto}
}
@media(prefers-reduced-motion:reduce){.admin-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Admin dashboard alignment with the student dashboard typography and profile UI. */
.admin-app{font-family:var(--font-body,inherit);font-size:14px;color:var(--text);background:var(--bg)}
.admin-app .ad-sidebar,.admin-app .ad-topbar,.admin-app .ad-panel,.admin-app .ad-stat{color:var(--text)}
.admin-app .ad-brand strong{font-family:var(--font-heading,var(--font-body,inherit));font-size:20px;letter-spacing:-.045em}
.admin-app .ad-brand small{font-size:12px;line-height:1.35;letter-spacing:.35px;color:var(--muted)}
.admin-app .ad-admin-card{gap:10px;padding:11px;margin:18px 0 22px;background:color-mix(in srgb,var(--text) 4%,var(--surface));border-color:var(--line)}
.admin-app .ad-admin-photo{width:42px;height:42px;flex:0 0 42px;object-fit:cover;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 65%,transparent)}
.admin-app .ad-admin-card>div:nth-child(2){min-width:0;flex:1}
.admin-app .ad-admin-card strong,.admin-app .ad-top-user strong{font-size:14px;line-height:1.35;color:var(--text)}
.admin-app .ad-admin-card small,.admin-app .ad-top-user small{font-size:12px;line-height:1.4;color:var(--muted)}
.admin-app .ad-admin-card>i{color:var(--muted);font-size:12px}
.admin-app .ad-nav-label{font-size:12px;letter-spacing:.7px;color:var(--muted)}
.admin-app .ad-nav a{font-size:14px;min-height:45px;color:var(--muted)}
.admin-app .ad-nav a>i{font-size:16px;flex:0 0 18px}
.admin-app .ad-nav a.active,.admin-app .ad-nav a:hover{color:var(--text);background:color-mix(in srgb,var(--accent) 16%,var(--surface))}
.admin-app .ad-nav a.active{box-shadow:inset 3px 0 var(--accent)}
.admin-app[dir="rtl"] .ad-nav a.active{box-shadow:inset -3px 0 var(--accent)}
.admin-app .ad-profile-link{display:flex;align-items:center;gap:11px;min-height:44px;padding:0 12px;border-radius:10px;color:var(--muted);font-size:14px;font-weight:650}
.admin-app .ad-profile-link:hover,.admin-app .ad-profile-link:focus-visible{color:var(--text);background:color-mix(in srgb,var(--accent) 16%,var(--surface))}
.admin-app .ad-profile-link i{width:18px;text-align:center;font-size:16px}
.admin-app .ad-logout{font-size:14px;color:#d96a5c!important}
.admin-app .ad-top-photo{width:36px;height:36px;flex:0 0 36px;object-fit:cover;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 65%,transparent)}
.admin-app .ad-welcome h1{font-family:var(--font-heading,var(--font-body,inherit));color:var(--text);font-size:clamp(27px,2.4vw,36px)}
.admin-app .ad-welcome p,.admin-app .ad-panel-heading p{font-size:13px;color:var(--muted);line-height:1.65}
.admin-app .ad-eyebrow{font-size:12px;color:var(--muted);letter-spacing:.65px;line-height:1.5}
.admin-app .ad-stat-top{font-size:13px;color:var(--muted)}
.admin-app .ad-stat-foot{font-size:12px;color:var(--muted)}
.admin-app .ad-panel-heading h2{font-family:var(--font-heading,var(--font-body,inherit));font-size:clamp(18px,1.35vw,20px);color:var(--text)}
.admin-app .ad-chart-legend,.admin-app .ad-chart-legend b{font-size:12px;color:var(--text)}
.admin-app .ad-chart-legend small{font-size:12px;color:var(--muted)}
.admin-app .ad-y-labels,.admin-app .ad-x-labels{font-size:12px;color:var(--muted)}
.admin-app .ad-top-course-copy strong{font-size:13px;color:var(--text)}
.admin-app .ad-top-course-copy small,.admin-app .ad-top-course>b small{font-size:12px;color:var(--muted)}
.admin-app .ad-course-note{font-size:12px;line-height:1.55;color:var(--muted)}
.admin-app .ad-students-table th{font-size:12px;color:var(--muted)}
.admin-app .ad-students-table td{font-size:12px;color:var(--text)}
.admin-app .ad-person strong{font-size:13px;color:var(--text)}
.admin-app .ad-person small{font-size:12px;color:var(--muted)}
.admin-app .ad-status{font-size:12px}
.admin-app .ad-table-foot,.admin-app .ad-no-results{font-size:12px;color:var(--muted)}
.admin-app .ad-class-copy>strong{font-size:13px;color:var(--text)}
.admin-app .ad-class-copy>small,.admin-app .ad-class-type,.admin-app .ad-class-attendees{font-size:12px;color:var(--muted)}
.admin-app .ad-create-class,.admin-app .ad-small-link,.admin-app .ad-bottom-strip>a{font-size:13px;color:var(--text)}
.admin-app .ad-bottom-strip strong{font-size:14px;color:var(--text)}
.admin-app .ad-bottom-strip p{font-size:13px;color:var(--muted)}
.admin-app .ad-footer{font-size:12px;color:var(--muted)}
.admin-app .ad-btn-primary,.admin-app .ad-btn-quiet{font-size:13px}
.admin-app .ad-panel select{color:var(--text);background:var(--surface)}
.admin-app .ad-profile-panel{margin:0 0 20px;scroll-margin-top:20px}
.admin-app .ad-profile-main{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.admin-app .ad-profile-main>img{width:76px;height:76px;flex:0 0 76px;object-fit:cover;border-radius:50%;border:3px solid color-mix(in srgb,var(--accent) 65%,transparent)}
.admin-app .ad-profile-main h2{margin:5px 0;font-size:22px;color:var(--text)}
.admin-app .ad-profile-main p{margin:0 0 8px;font-size:13px;color:var(--muted)}
.admin-app .ad-profile-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
.admin-app .ad-profile-status i{width:7px;height:7px;border-radius:50%;background:#20bd80}
.admin-app .ad-profile-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-app .ad-profile-details>div{display:flex;flex-direction:column;gap:7px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--text) 3%,var(--surface))}
.admin-app .ad-profile-details span{font-size:12px;color:var(--muted)}
.admin-app .ad-profile-details strong{font-size:13px;color:var(--text);overflow-wrap:anywhere}
.admin-app .ad-topbar{background:var(--surface);border-color:var(--line)}
.admin-app .ad-crumb,.admin-app .ad-crumb strong{color:var(--text)}
.admin-app .ad-crumb span{color:var(--muted)}
.admin-app .ad-icon-btn,.admin-app .ad-menu-toggle{background:var(--surface);color:var(--text);border-color:var(--line)}
@media(max-width:720px){.admin-app .ad-profile-details{grid-template-columns:1fr}.admin-app .ad-profile-main>img{width:64px;height:64px;flex-basis:64px}.admin-app .ad-profile-main h2{font-size:20px}}
@media(max-width:380px){.admin-app .ad-brand small{font-size:11px}.admin-app .ad-nav a{font-size:13px}.admin-app .ad-profile-main{align-items:flex-start}.admin-app .ad-profile-main>img{width:56px;height:56px;flex-basis:56px}}

/* Admin dashboard: keep every content area as a clearly separated section. */
.admin-app .ad-content{display:flex;flex-direction:column;gap:22px;min-width:0}
.admin-app .ad-content>section{width:100%;min-width:0;scroll-margin-top:90px}
.admin-app .ad-welcome{margin:0;padding:0 0 20px;border-bottom:1px solid var(--line)}
.admin-app .ad-stat-grid{margin:0;gap:14px}
.admin-app .ad-overview-grid,
.admin-app .ad-lower-grid{display:flex;flex-direction:column;gap:18px;margin:0;align-items:stretch}
.admin-app .ad-overview-grid>.ad-panel,
.admin-app .ad-lower-grid>.ad-panel,
.admin-app .ad-content>.ad-profile-panel{width:100%;min-width:0;margin:0;padding:clamp(18px,2vw,26px);border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 8px 24px rgba(0,0,0,.045)}
.admin-app .ad-overview-grid>.ad-panel{border-top:3px solid var(--accent)}
.admin-app .ad-course-performance{border-top-color:#69aee8!important}
.admin-app .ad-students-panel{border-top:3px solid #5dbb91!important}
.admin-app .ad-classes-panel{border-top:3px solid #a58bea!important}
.admin-app .ad-profile-panel{border-top:3px solid var(--accent)!important}
.admin-app .ad-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.admin-app .ad-panel-heading>div{min-width:0}
.admin-app .ad-panel-heading h2{margin:5px 0 6px;line-height:1.3}
.admin-app .ad-panel-heading p{margin:0}
.admin-app .ad-enrollment-chart{max-width:100%;min-width:0}
.admin-app .ad-chart-area{min-width:0}
.admin-app .ad-top-course{padding:15px 0;border-bottom:1px solid var(--line)}
.admin-app .ad-top-course:last-of-type{border-bottom:0}
.admin-app .ad-table-wrap{width:100%;overflow-x:auto}
.admin-app .ad-students-table{width:100%;min-width:680px}
.admin-app .ad-class-item{padding:16px 0;border-bottom:1px solid var(--line)}
.admin-app .ad-class-item:last-of-type{border-bottom:0}
.admin-app .ad-profile-panel{padding:clamp(18px,2vw,26px)}
.admin-app .ad-profile-details{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-app .ad-footer{margin-top:0;padding-top:18px;border-top:1px solid var(--line)}
@media(max-width:720px){
 .admin-app .ad-content{gap:16px}
 .admin-app .ad-stat-grid{gap:10px}
 .admin-app .ad-overview-grid>.ad-panel,.admin-app .ad-lower-grid>.ad-panel,.admin-app .ad-content>.ad-profile-panel{padding:17px 14px;border-radius:13px}
 .admin-app .ad-panel-heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:16px}
 .admin-app .ad-panel-heading .ad-small-link{margin-inline-start:auto;white-space:nowrap}
 .admin-app .ad-profile-details{grid-template-columns:1fr}
 .admin-app .ad-profile-details>div{padding:12px}
 .admin-app .ad-students-table{min-width:650px}
}
@media(max-width:380px){
 .admin-app .ad-content{padding-inline:10px;gap:14px}
 .admin-app .ad-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .admin-app .ad-stat{min-width:0;padding:11px 9px}
 .admin-app .ad-stat-top{font-size:12px;line-height:1.4}
 .admin-app .ad-stat-foot{font-size:12px;flex-wrap:wrap}
 .admin-app .ad-panel-heading h2{font-size:18px}
 .admin-app .ad-profile-main{align-items:flex-start}
 .admin-app .ad-profile-main>div{min-width:0}
 .admin-app .ad-profile-main p{overflow-wrap:anywhere}
}

/* Admin dashboard: give every feature its own clearly separated section. */
.ad-content > .ad-independent-section,
.ad-content > #adminProfile {
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0 0 26px;
  box-sizing:border-box;
}
.ad-content > .ad-independent-section.ad-enrollment-panel,
.ad-content > .ad-independent-section.ad-course-performance,
.ad-content > .ad-independent-section.ad-students-panel,
.ad-content > .ad-independent-section.ad-classes-panel,
.ad-content > #adminProfile {
  padding:clamp(18px,2.2vw,28px);
  border-radius:20px;
}
.ad-content > .ad-independent-section .ad-panel-heading {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
.ad-content .ad-panel h2,
.ad-content .ad-independent-section h2,
.ad-content #adminProfile h2 { line-height:1.25; }
.ad-content .ad-panel p,
.ad-content .ad-independent-section p,
.ad-content #adminProfile p { line-height:1.6; }
.ad-content .ad-table-wrap { width:100%; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.ad-content .ad-students-table { min-width:680px; }
.ad-content .ad-profile-details { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.ad-content .ad-profile-details > div { min-width:0; overflow-wrap:anywhere; }
.ad-content .ad-profile-details strong { overflow-wrap:anywhere; }
@media (max-width:1023px) {
  .ad-content > .ad-independent-section,
  .ad-content > #adminProfile { margin-bottom:20px; }
  .ad-content .ad-profile-details { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .ad-content { min-width:0; width:100%; }
  .ad-content > .ad-independent-section,
  .ad-content > #adminProfile { margin-bottom:16px; }
  .ad-content > .ad-independent-section.ad-enrollment-panel,
  .ad-content > .ad-independent-section.ad-course-performance,
  .ad-content > .ad-independent-section.ad-students-panel,
  .ad-content > .ad-independent-section.ad-classes-panel,
  .ad-content > #adminProfile { padding:17px; border-radius:16px; }
  .ad-content .ad-panel-heading { align-items:flex-start; }
  .ad-content .ad-enrollment-chart { max-width:100%; overflow:hidden; }
  .ad-content .ad-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .ad-content .ad-profile-main { align-items:flex-start; gap:14px; }
  .ad-content .ad-profile-details { grid-template-columns:minmax(0,1fr); }
  .ad-content .ad-welcome { flex-wrap:wrap; gap:16px; }
}
@media (max-width:390px) {
  .ad-content > .ad-independent-section.ad-enrollment-panel,
  .ad-content > .ad-independent-section.ad-course-performance,
  .ad-content > .ad-independent-section.ad-students-panel,
  .ad-content > .ad-independent-section.ad-classes-panel,
  .ad-content > #adminProfile { padding:14px; }
  .ad-content .ad-stat-grid { gap:9px; }
  .ad-content .ad-stat { min-width:0; padding:13px; }
  .ad-content .ad-profile-main { flex-direction:column; }
  .ad-content .ad-profile-details { gap:10px; }
}

/* Admin dashboard visual alignment: inherit the Student Dashboard shell and rhythm. */
.admin-app.student-app .ad-sidebar{background:var(--sidebar-bg,#101010);color:var(--sidebar-text,#fff8e9);border-right:1px solid rgba(224,165,38,.22)}
.admin-app.student-app .ad-brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.admin-app.student-app .ad-brand img{width:42px;height:42px;object-fit:contain}
.admin-app.student-app .ad-admin-card{display:flex;align-items:center;gap:11px;margin:22px 0;padding:12px;border:1px solid rgba(224,165,38,.2);border-radius:14px;background:rgba(255,255,255,.035)}
.admin-app.student-app .ad-admin-card>div,.admin-app.student-app .ad-top-user>span{display:grid;gap:4px;min-width:0}
.admin-app.student-app .ad-admin-photo{width:38px;height:38px;border-radius:50%;object-fit:cover}
.admin-app.student-app .ad-nav a{min-height:44px;border-radius:10px}
.admin-app.student-app .ad-nav a.active,.admin-app.student-app .ad-nav a.is-active{background:rgba(224,165,38,.15);color:#e0a526;border:1px solid rgba(224,165,38,.25)}
.admin-app.student-app .ad-topbar{min-height:76px;background:var(--surface,#fff);border-bottom:1px solid var(--line,#e9e3d6);padding:14px clamp(16px,2.5vw,30px)}
.admin-app.student-app .ad-menu-toggle{border:1px solid var(--line,#e9e3d6);border-radius:10px;background:var(--surface,#fff);color:var(--text,#171717);min-width:40px;min-height:40px}
.admin-app.student-app .ad-content{gap:22px;padding:clamp(18px,2.5vw,30px);}
.admin-app.student-app .ad-welcome{border-radius:18px;border:1px solid rgba(224,165,38,.24);box-shadow:0 10px 28px rgba(24,20,10,.045)}
.admin-app.student-app .ad-independent-section.ad-enrollment-panel,.admin-app.student-app .ad-independent-section.ad-course-performance,.admin-app.student-app .ad-independent-section.ad-students-panel,.admin-app.student-app .ad-independent-section.ad-classes-panel,.admin-app.student-app .ad-content>.ad-profile-panel{border:1px solid var(--line,#e9e3d6);border-radius:16px;background:var(--surface,#fff);box-shadow:0 8px 24px rgba(24,20,10,.035)}
.admin-app.student-app .ad-panel-heading{padding-bottom:13px;border-bottom:1px solid var(--line,#e9e3d6);margin-bottom:18px}
.admin-app.student-app .ad-stat{border:1px solid var(--line,#e9e3d6);border-radius:15px;background:var(--surface,#fff);box-shadow:0 7px 22px rgba(24,20,10,.035)}
.admin-app.student-app .ad-footer{margin-top:0;padding:18px 4px 6px;border-top:1px solid var(--line,#e9e3d6)}
.admin-app.student-app .ad-content h1,.admin-app.student-app .ad-content h2,.admin-app.student-app .ad-content h3{font-family:inherit;letter-spacing:-.02em}
.admin-app.student-app .ad-content p,.admin-app.student-app .ad-content span,.admin-app.student-app .ad-content td,.admin-app.student-app .ad-content th,.admin-app.student-app .ad-content label{font-size:14px;line-height:1.55}
@media(max-width:760px){.admin-app.student-app .ad-content{padding:16px;gap:16px}.admin-app.student-app .ad-topbar{min-height:66px;padding:12px 14px}.admin-app.student-app .ad-top-user span{display:none}.admin-app.student-app .ad-independent-section.ad-enrollment-panel,.admin-app.student-app .ad-independent-section.ad-course-performance,.admin-app.student-app .ad-independent-section.ad-students-panel,.admin-app.student-app .ad-independent-section.ad-classes-panel,.admin-app.student-app .ad-content>.ad-profile-panel{padding:17px;border-radius:14px}}
@media(max-width:390px){.admin-app.student-app .ad-content{padding:12px;gap:13px}.admin-app.student-app .ad-welcome{padding:16px}.admin-app.student-app .ad-stat-grid{gap:9px}.admin-app.student-app .ad-stat{padding:12px 10px}.admin-app.student-app .ad-panel-heading h2{font-size:20px}}

/* Admin dashboard visual correction — keep both themes readable and align with student workspace */
.admin-app.student-app .ad-sidebar{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-color:var(--line) !important;
}
.admin-app.student-app .ad-brand strong,
.admin-app.student-app .ad-admin-card strong,
.admin-app.student-app .ad-nav a,
.admin-app.student-app .ad-sidebar-bottom a,
.admin-app.student-app .ad-nav a span{color:var(--text);}
.admin-app.student-app .ad-brand small,
.admin-app.student-app .ad-admin-card small,
.admin-app.student-app .ad-nav-label,
.admin-app.student-app .ad-admin-card>i{color:var(--muted);}
.admin-app.student-app .ad-admin-card{
  background:var(--bg) !important;
  border-color:var(--line) !important;
}
.admin-app.student-app .ad-nav a{border:1px solid transparent;}
.admin-app.student-app .ad-nav a:hover,
.admin-app.student-app .ad-nav a.active,
.admin-app.student-app .ad-nav a.is-active{
  background:var(--shade-strong) !important;
  color:var(--accent-text) !important;
  border-color:var(--line) !important;
}
.admin-app.student-app .ad-nav a:hover span,
.admin-app.student-app .ad-nav a.active span,
.admin-app.student-app .ad-nav a.is-active span{color:inherit;}
.admin-app.student-app .ad-nav a b{background:var(--shade);color:var(--text);}
.admin-app.student-app .ad-sidebar-bottom .ad-logout{color:var(--text) !important;}
.admin-app.student-app .ad-sidebar-bottom .ad-logout:hover{background:var(--shade);}
.admin-app.student-app .ad-topbar,
.admin-app.student-app .ad-panel,
.admin-app.student-app .ad-stat,
.admin-app.student-app .ad-admin-card{color:var(--text);}
.admin-app.student-app .ad-content{gap:24px;}
.admin-app.student-app .ad-welcome{
  background:linear-gradient(115deg,var(--surface),color-mix(in srgb,var(--accent) 8%,var(--surface)));
  padding:24px 26px;border:1px solid var(--line);border-radius:18px;
}
.admin-app.student-app .ad-stat-grid{margin:0;gap:14px;}
.admin-app.student-app .ad-stat{
  border-radius:16px;background:var(--surface);border:1px solid var(--line);
  box-shadow:0 7px 22px rgba(0,0,0,.045);padding:18px;
}
.admin-app.student-app .ad-independent-section.ad-panel,
.admin-app.student-app .ad-content>.ad-profile-panel{
  display:block;width:100%;margin:0;padding:23px 24px;
  border:1px solid var(--line);border-radius:17px;background:var(--surface);
  box-shadow:0 7px 24px rgba(0,0,0,.045);color:var(--text);
}
.admin-app.student-app .ad-panel-heading{align-items:center;margin:0 0 19px;padding:0 0 16px;border-bottom:1px solid var(--line);}
.admin-app.student-app .ad-panel-heading h2{font-size:clamp(19px,1.6vw,23px);color:var(--text);}
.admin-app.student-app .ad-panel-heading p{font-size:14px;color:var(--muted);}
.admin-app.student-app .ad-content .ad-eyebrow{color:var(--muted);}
.admin-app.student-app .ad-content .ad-top-course,
.admin-app.student-app .ad-content .ad-class-item{border-color:var(--line);}
.admin-app.student-app .ad-content .ad-top-course-copy strong,
.admin-app.student-app .ad-content .ad-class-copy>strong,
.admin-app.student-app .ad-content .ad-person strong,
.admin-app.student-app .ad-content .ad-top-course>b{color:var(--text);}
.admin-app.student-app .ad-content .ad-top-course-copy small,
.admin-app.student-app .ad-content .ad-class-copy>small,
.admin-app.student-app .ad-content .ad-person small,
.admin-app.student-app .ad-content .ad-table-foot{color:var(--muted);}
.admin-app.student-app .ad-table-wrap{border:1px solid var(--line);border-radius:12px;}
.admin-app.student-app .ad-students-table th{background:var(--bg);color:var(--muted);}
.admin-app.student-app .ad-students-table td{color:var(--text);border-color:var(--line);}
.admin-app.student-app .ad-students-table tbody tr:hover{background:var(--shade);}
.admin-app.student-app .ad-create-class{border-color:var(--line);background:var(--bg);}
.admin-app.student-app .ad-profile-details>div{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:14px;}
.admin-app.student-app .ad-profile-details span{color:var(--muted);}
.admin-app.student-app .ad-profile-details strong{color:var(--text);overflow-wrap:anywhere;}
.admin-app.student-app .ad-footer{color:var(--muted);}
[data-theme="light"] .admin-app.student-app .ad-sidebar{background:var(--surface) !important;color:var(--text) !important;}
[data-theme="light"] .admin-app.student-app .ad-nav a{color:var(--text) !important;}
[data-theme="light"] .admin-app.student-app .ad-nav a.active,
[data-theme="light"] .admin-app.student-app .ad-nav a.is-active{color:#815a00 !important;background:#fff2c8 !important;border-color:#ead18b !important;}
[data-theme="light"] .admin-app.student-app .ad-admin-card{background:#fffdf7 !important;}
[data-theme="dark"] .admin-app.student-app .ad-sidebar{background:var(--surface) !important;color:var(--text) !important;}
[data-theme="dark"] .admin-app.student-app .ad-nav a.active,
[data-theme="dark"] .admin-app.student-app .ad-nav a.is-active{color:var(--accent-text) !important;background:rgba(245,192,79,.13) !important;}
@media(max-width:760px){
 .admin-app.student-app .ad-content{gap:16px;padding:16px;}
 .admin-app.student-app .ad-welcome{padding:19px 18px;}
 .admin-app.student-app .ad-independent-section.ad-panel,
 .admin-app.student-app .ad-content>.ad-profile-panel{padding:18px 16px;border-radius:14px;}
 .admin-app.student-app .ad-panel-heading{align-items:flex-start;}
}
@media(max-width:390px){
 .admin-app.student-app .ad-content{padding:12px;gap:13px;}
 .admin-app.student-app .ad-welcome{padding:16px 14px;}
 .admin-app.student-app .ad-independent-section.ad-panel,
 .admin-app.student-app .ad-content>.ad-profile-panel{padding:15px 12px;}
 .admin-app.student-app .ad-panel-heading h2{font-size:19px;}
}

/* ===== Admin dashboard complete command-center redesign ===== */
.admin-app.student-app .ad-sidebar{background:var(--surface)!important;color:var(--text)!important;border-right:1px solid var(--line)!important;box-shadow:8px 0 30px rgba(18,14,3,.035)}
.admin-app.student-app .ad-brand,.admin-app.student-app .ad-admin-card,.admin-app.student-app .ad-nav a,.admin-app.student-app .ad-sidebar-bottom a{color:var(--text)!important}
.admin-app.student-app .ad-admin-card{background:var(--shade)!important;border-color:var(--line)!important}
.admin-app.student-app .ad-admin-card small,.admin-app.student-app .ad-nav-label{color:var(--muted)!important}
.admin-app.student-app .ad-nav a{border:1px solid transparent!important}
.admin-app.student-app .ad-nav a.active,.admin-app.student-app .ad-nav a.is-active{background:var(--shade-strong)!important;color:var(--accent-text)!important;border-color:var(--line)!important}
.admin-app.student-app .ad-nav a:hover,.admin-app.student-app .ad-sidebar-bottom a:hover{background:var(--shade)!important;color:var(--accent-text)!important}
.admin-app.student-app .ad-content{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:22px;padding:clamp(18px,2.4vw,34px);}
.admin-app.student-app .ad-content>.ad-hero-redesign{grid-column:1/-1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:190px;padding:clamp(24px,3vw,40px);border-radius:22px;border:1px solid var(--line);background:linear-gradient(115deg,var(--surface) 0%,var(--surface) 65%,var(--shade-strong) 100%);box-shadow:var(--shadow)}
.admin-app.student-app .ad-hero-redesign:after{content:"";position:absolute;width:250px;height:250px;border:1px solid var(--line);border-radius:50%;inset-inline-end:-70px;top:-115px;box-shadow:0 0 0 24px var(--shade),0 0 0 48px rgba(197,138,10,.035);pointer-events:none}
.admin-app.student-app .ad-hero-redesign>div:first-child{position:relative;z-index:1;max-width:680px}
.admin-app.student-app .ad-hero-redesign h1{font-size:clamp(25px,3vw,38px);letter-spacing:-.035em;margin:8px 0 9px;color:var(--ink)}
.admin-app.student-app .ad-hero-redesign h1 span{color:var(--accent)}
.admin-app.student-app .ad-hero-redesign p{color:var(--muted);font-size:15px;margin:0}
.admin-app.student-app .ad-hero-redesign .ad-eyebrow{font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--accent-text)}
.admin-app.student-app .ad-welcome-actions{position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap}
.admin-app.student-app .ad-live-ribbon{position:absolute;bottom:16px;inset-inline-start:clamp(24px,3vw,40px);font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px;z-index:1}
.admin-app.student-app .ad-live-ribbon strong{color:var(--gain);font-weight:700}
.admin-app.student-app .ad-live-dot{width:7px;height:7px;border-radius:50%;background:var(--gain);box-shadow:0 0 0 4px color-mix(in srgb,var(--gain) 15%,transparent)}
.admin-app.student-app .ad-content>.ad-metrics-redesign{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0}
.admin-app.student-app .ad-metrics-redesign .ad-stat{position:relative;overflow:hidden;min-height:145px;padding:20px;border-radius:17px;border:1px solid var(--line);background:var(--surface);box-shadow:0 7px 22px rgba(20,16,5,.045)}
.admin-app.student-app .ad-metrics-redesign .ad-stat:after{content:"";position:absolute;width:72px;height:72px;border:1px solid var(--line);border-radius:50%;right:-28px;bottom:-30px;box-shadow:0 0 0 12px var(--shade)}
.admin-app.student-app .ad-stat-top{font-size:13px;color:var(--muted);font-weight:650;display:flex;justify-content:space-between;gap:8px;align-items:center}
.admin-app.student-app .ad-stat-top>i{width:37px;height:37px;display:grid;place-items:center;border-radius:12px;background:var(--shade-strong);color:var(--accent-text);font-size:15px}
.admin-app.student-app .ad-stat>strong{display:block;font-size:32px;line-height:1.25;letter-spacing:-.04em;color:var(--ink);margin:12px 0 7px}
.admin-app.student-app .ad-stat-foot{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.admin-app.student-app .ad-stat-foot svg{width:55px;height:24px;margin-inline-start:auto;stroke:var(--gain);fill:none;stroke-width:2}
.admin-app.student-app .ad-content>.ad-growth-redesign{grid-column:span 8;min-width:0}
.admin-app.student-app .ad-content>.ad-courses-redesign{grid-column:span 4;min-width:0}
.admin-app.student-app .ad-content>.ad-students-redesign{grid-column:span 7;min-width:0}
.admin-app.student-app .ad-content>.ad-calendar-redesign{grid-column:span 5;min-width:0}
.admin-app.student-app .ad-content>.ad-account-redesign{grid-column:1/-1;min-width:0}
.admin-app.student-app .ad-content>.ad-growth-redesign,.admin-app.student-app .ad-content>.ad-courses-redesign,.admin-app.student-app .ad-content>.ad-students-redesign,.admin-app.student-app .ad-content>.ad-calendar-redesign,.admin-app.student-app .ad-content>.ad-account-redesign{margin:0;padding:clamp(19px,2.1vw,28px);border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 9px 28px rgba(20,16,5,.045);}
.admin-app.student-app .ad-panel-heading{border:0!important;padding:0 0 18px!important;margin:0 0 18px!important;border-bottom:1px solid var(--line)!important;gap:12px}
.admin-app.student-app .ad-panel-heading h2{font-size:22px;letter-spacing:-.025em;color:var(--ink);margin:5px 0 5px}
.admin-app.student-app .ad-panel-heading p{font-size:13px;color:var(--muted)}
.admin-app.student-app .ad-chart-legend{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 12px;font-size:12px;color:var(--muted)}
.admin-app.student-app .ad-chart-legend>span{display:flex;align-items:center;gap:8px}.admin-app.student-app .ad-chart-legend>span i{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.admin-app.student-app .ad-chart-legend>b{color:var(--gain);font-size:14px}.admin-app.student-app .ad-chart-legend small{font-size:11px;color:var(--muted);font-weight:500}
.admin-app.student-app .ad-enrollment-chart{height:245px}.admin-app.student-app .ad-chart-area{height:220px}.admin-app.student-app .ad-y-labels{font-size:11px;color:var(--muted)}.admin-app.student-app .ad-x-labels{font-size:11px;color:var(--muted)}
.admin-app.student-app .ad-top-course{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid var(--line)}
.admin-app.student-app .ad-course-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--shade-strong);color:var(--accent-text)}
.admin-app.student-app .ad-top-course-copy strong{font-size:13px;line-height:1.45;color:var(--text)}.admin-app.student-app .ad-top-course-copy small{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.admin-app.student-app .ad-top-course>b{font-size:15px;color:var(--ink);text-align:end}.admin-app.student-app .ad-top-course>b small{display:block;font-size:10px;font-weight:500;color:var(--muted)}
.admin-app.student-app .ad-course-meter{height:5px;background:var(--shade-strong);border-radius:99px;overflow:hidden;margin-top:10px}.admin-app.student-app .ad-course-meter i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--accent),#f5cf6b)}
.admin-app.student-app .ad-course-note{padding:12px;margin-top:13px;border-radius:12px;background:var(--shade);font-size:11px;line-height:1.6;color:var(--muted)}
.admin-app.student-app .ad-table-wrap{border:1px solid var(--line);border-radius:13px}.admin-app.student-app .ad-students-table{border-collapse:collapse;min-width:650px}.admin-app.student-app .ad-students-table th{background:var(--shade);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:13px 14px;text-align:left}.admin-app.student-app .ad-students-table td{padding:14px;border-top:1px solid var(--line);font-size:12px;color:var(--text)}.admin-app.student-app .ad-students-table tbody tr:hover{background:var(--shade)}
.admin-app.student-app .ad-person{display:flex;align-items:center;gap:10px;min-width:180px}.admin-app.student-app .ad-person img{width:34px;height:34px;object-fit:cover;border-radius:50%;border:2px solid var(--line)}.admin-app.student-app .ad-person strong{font-size:12px;color:var(--text)}.admin-app.student-app .ad-person small{font-size:10px;color:var(--muted);display:block}
.admin-app.student-app .ad-status{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:11px;font-weight:700}.admin-app.student-app .ad-status.active{background:rgba(14,159,110,.12);color:var(--gain)}.admin-app.student-app .ad-status.pending{background:var(--shade-strong);color:var(--accent-text)}
.admin-app.student-app .ad-table-foot{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px;padding-top:12px}
.admin-app.student-app .ad-class-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:13px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.admin-app.student-app .ad-class-date{width:52px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:13px;background:var(--shade-strong);border:1px solid var(--line);color:var(--accent-text)}.admin-app.student-app .ad-class-date strong{font-size:22px;line-height:1.1}.admin-app.student-app .ad-class-date span{font-size:10px;letter-spacing:.12em;font-weight:800}
.admin-app.student-app .ad-class-copy strong{display:block;font-size:13px;line-height:1.4;color:var(--text)}.admin-app.student-app .ad-class-copy small{display:block;font-size:11px;color:var(--muted);margin:5px 0}.admin-app.student-app .ad-class-type{font-size:10px;font-weight:700;color:var(--gain)}.admin-app.student-app .ad-class-type.recorded{color:var(--accent-text)}.admin-app.student-app .ad-class-attendees{font-size:12px;color:var(--muted);white-space:nowrap}
.admin-app.student-app .ad-create-class{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:16px;padding:12px;border:1px dashed var(--line);border-radius:12px;color:var(--accent-text);font-size:12px;font-weight:700;text-decoration:none}.admin-app.student-app .ad-create-class:hover{background:var(--shade)}
.admin-app.student-app .ad-profile-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center}.admin-app.student-app .ad-profile-main{display:flex;align-items:center;gap:18px}.admin-app.student-app .ad-profile-main>img{width:82px;height:82px;border-radius:22px;object-fit:cover;border:3px solid var(--line)}.admin-app.student-app .ad-profile-main h2{font-size:24px;color:var(--ink);margin:5px 0}.admin-app.student-app .ad-profile-main p{font-size:13px;color:var(--muted);margin:0 0 8px}.admin-app.student-app .ad-profile-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-app.student-app .ad-profile-details>div{padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--shade)}.admin-app.student-app .ad-profile-details span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.admin-app.student-app .ad-profile-details strong{display:block;margin-top:4px;font-size:12px;color:var(--text)}
.admin-app.student-app .ad-footer{grid-column:1/-1;margin:0!important}
html[data-theme="dark"] .admin-app.student-app .ad-sidebar{background:#0f0e0b!important;color:#f1eada!important;border-color:rgba(245,192,79,.24)!important}
html[data-theme="dark"] .admin-app.student-app .ad-sidebar .ad-brand,html[data-theme="dark"] .admin-app.student-app .ad-sidebar .ad-admin-card,html[data-theme="dark"] .admin-app.student-app .ad-sidebar .ad-nav a,html[data-theme="dark"] .admin-app.student-app .ad-sidebar .ad-sidebar-bottom a{color:#f1eada!important}
html[data-theme="dark"] .admin-app.student-app .ad-sidebar .ad-nav-label,html[data-theme="dark"] .admin-app.student-app .ad-sidebar .ad-admin-card small{color:#b9ad94!important}
@media(max-width:1023px){.admin-app.student-app .ad-content>.ad-growth-redesign{grid-column:span 7}.admin-app.student-app .ad-content>.ad-courses-redesign{grid-column:span 5}.admin-app.student-app .ad-content>.ad-students-redesign{grid-column:1/-1}.admin-app.student-app .ad-content>.ad-calendar-redesign{grid-column:1/-1}.admin-app.student-app .ad-content>.ad-metrics-redesign{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.admin-app.student-app .ad-content{grid-template-columns:minmax(0,1fr);gap:15px;padding:15px}.admin-app.student-app .ad-content>.ad-hero-redesign,.admin-app.student-app .ad-content>.ad-metrics-redesign,.admin-app.student-app .ad-content>.ad-growth-redesign,.admin-app.student-app .ad-content>.ad-courses-redesign,.admin-app.student-app .ad-content>.ad-students-redesign,.admin-app.student-app .ad-content>.ad-calendar-redesign,.admin-app.student-app .ad-content>.ad-account-redesign,.admin-app.student-app .ad-content>.ad-footer{grid-column:1/-1}.admin-app.student-app .ad-content>.ad-hero-redesign{min-height:0;padding:23px 20px 48px;align-items:flex-start;flex-direction:column;gap:15px}.admin-app.student-app .ad-live-ribbon{inset-inline-start:20px;bottom:15px}.admin-app.student-app .ad-welcome-actions{width:100%}.admin-app.student-app .ad-welcome-actions>*{flex:1;justify-content:center}.admin-app.student-app .ad-content>.ad-growth-redesign,.admin-app.student-app .ad-content>.ad-courses-redesign,.admin-app.student-app .ad-content>.ad-students-redesign,.admin-app.student-app .ad-content>.ad-calendar-redesign,.admin-app.student-app .ad-content>.ad-account-redesign{padding:18px;border-radius:16px}.admin-app.student-app .ad-profile-panel{grid-template-columns:1fr;gap:18px}.admin-app.student-app .ad-profile-details{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-app.student-app .ad-enrollment-chart{height:215px}.admin-app.student-app .ad-chart-area{height:190px}}
@media(max-width:420px){.admin-app.student-app .ad-content{padding:11px;gap:12px}.admin-app.student-app .ad-content>.ad-metrics-redesign{gap:9px}.admin-app.student-app .ad-metrics-redesign .ad-stat{padding:13px 11px;min-height:130px}.admin-app.student-app .ad-stat>strong{font-size:26px}.admin-app.student-app .ad-stat-top{font-size:11px;align-items:flex-start}.admin-app.student-app .ad-stat-top>i{width:30px;height:30px;flex-shrink:0}.admin-app.student-app .ad-stat-foot{font-size:10px}.admin-app.student-app .ad-panel-heading h2{font-size:20px}.admin-app.student-app .ad-top-course{grid-template-columns:34px minmax(0,1fr) auto;gap:9px}.admin-app.student-app .ad-course-icon{width:34px;height:34px}.admin-app.student-app .ad-profile-main{flex-direction:row}.admin-app.student-app .ad-profile-main>img{width:62px;height:62px;border-radius:17px}.admin-app.student-app .ad-profile-details{grid-template-columns:1fr}.admin-app.student-app .ad-class-item{grid-template-columns:44px minmax(0,1fr);gap:10px}.admin-app.student-app .ad-class-date{width:42px;height:51px}.admin-app.student-app .ad-class-attendees{grid-column:2}.admin-app.student-app .ad-table-foot{flex-direction:column}}


/* Admin sidebar destinations: individual student-dashboard-style hero headers */
.admin-app.student-app .ad-page-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:clamp(20px,3vw,38px);align-items:center;position:relative;isolation:isolate;overflow:hidden;margin:0 0 25px;padding:clamp(22px,3vw,34px);border:1px solid var(--line);border-radius:20px;background:linear-gradient(115deg,var(--surface) 0%,var(--surface) 58%,var(--shade-strong) 100%);box-shadow:var(--shadow)}
.admin-app.student-app .ad-page-hero:before{content:"";position:absolute;z-index:-1;width:280px;height:280px;border-radius:50%;border:1px solid var(--line);inset-inline-end:-105px;top:-145px;box-shadow:0 0 0 24px var(--shade),0 0 0 49px rgba(224,165,38,.045)}
.admin-app.student-app .ad-page-hero-copy{min-width:0}.admin-app.student-app .ad-page-hero-copy h2{font-size:clamp(25px,3vw,36px);line-height:1.12;letter-spacing:-.04em;color:var(--ink);margin:10px 0 12px}.admin-app.student-app .ad-page-hero-copy h2 em{font-style:normal;color:var(--accent-text)}.admin-app.student-app .ad-page-hero-copy p{max-width:620px;font-size:14px;line-height:1.75;color:var(--muted);margin:0}.admin-app.student-app .ad-page-hero .ad-eyebrow{display:flex;align-items:center;gap:9px;color:var(--accent-text);font-size:10px;letter-spacing:.14em;font-weight:800}.admin-app.student-app .ad-page-hero .ad-eyebrow i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--shade-strong)}
.admin-app.student-app .ad-hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.admin-app.student-app .ad-hero-tags span{display:inline-flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:999px;background:var(--shade);color:var(--text);font-size:11px;font-weight:700}.admin-app.student-app .ad-hero-tags i{color:var(--accent-text)}
.admin-app.student-app .ad-hero-visual{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:17px 18px 13px;border:1px solid var(--line);border-radius:16px;background:var(--shade);overflow:hidden}.admin-app.student-app .ad-hero-visual-top,.admin-app.student-app .ad-hero-visual-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.07em;color:var(--muted)}.admin-app.student-app .ad-hero-visual-top b{color:var(--gain);font-size:12px;letter-spacing:0}.admin-app.student-app .ad-hero-visual svg{width:100%;height:auto;max-height:135px;overflow:visible;margin:15px 0}.admin-app.student-app .ad-hero-visual-foot{padding-top:11px;border-top:1px solid var(--line);letter-spacing:0}.admin-app.student-app .ad-hero-visual-foot strong{font-size:11px;color:var(--text)}
.admin-app.student-app .ad-path-stack{display:grid;gap:8px;margin:13px 0}.admin-app.student-app .ad-path-stack>div{display:grid;grid-template-columns:26px 27px minmax(0,1fr);align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.admin-app.student-app .ad-path-stack>div>span{font-size:10px;color:var(--accent-text);font-weight:800}.admin-app.student-app .ad-path-stack i{color:var(--accent-text);font-size:13px}.admin-app.student-app .ad-path-stack b{font-size:11px;color:var(--text)}.admin-app.student-app .ad-path-stack small{grid-column:3;font-size:10px;color:var(--muted);margin-top:-5px}.admin-app.student-app .ad-calendar-feature{display:flex;align-items:center;gap:12px;margin:18px 0}.admin-app.student-app .ad-calendar-date{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;width:59px;height:66px;border-radius:13px;background:var(--shade-strong);border:1px solid var(--line);color:var(--accent-text)}.admin-app.student-app .ad-calendar-date span{font-size:10px;letter-spacing:.12em;font-weight:800}.admin-app.student-app .ad-calendar-date strong{font-size:29px;line-height:1.15}.admin-app.student-app .ad-calendar-feature>div:last-child{min-width:0}.admin-app.student-app .ad-calendar-feature b{display:block;color:var(--text);font-size:12px;line-height:1.45}.admin-app.student-app .ad-calendar-feature small{display:block;margin:6px 0;color:var(--muted);font-size:11px}.admin-app.student-app .ad-calendar-live{font-size:10px;font-weight:800;color:var(--gain)}.admin-app.student-app .ad-calendar-live i,.admin-app.student-app .ad-profile-hero-avatar span i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gain);margin-inline-end:5px}.admin-app.student-app .ad-hero-profile-art{align-items:center;justify-content:center;min-height:220px}.admin-app.student-app .ad-profile-hero-avatar{display:flex;flex-direction:column;align-items:center;gap:9px}.admin-app.student-app .ad-profile-hero-avatar img{width:76px;height:76px;object-fit:cover;border-radius:24px;border:3px solid var(--line)}.admin-app.student-app .ad-profile-hero-avatar span{font-size:9px;font-weight:800;letter-spacing:.12em;color:var(--gain)}.admin-app.student-app .ad-profile-hero-name{text-align:center;margin:10px 0 16px}.admin-app.student-app .ad-profile-hero-name strong{display:block;color:var(--text);font-size:16px}.admin-app.student-app .ad-profile-hero-name small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.admin-app.student-app .ad-content>.ad-students-redesign,.admin-app.student-app .ad-content>.ad-courses-redesign,.admin-app.student-app .ad-content>.ad-calendar-redesign,.admin-app.student-app .ad-content>.ad-account-redesign{scroll-margin-top:88px}
@media(max-width:900px){.admin-app.student-app .ad-page-hero{grid-template-columns:minmax(0,1fr);gap:18px}.admin-app.student-app .ad-hero-visual{min-height:180px}.admin-app.student-app .ad-hero-course-art{min-height:0}.admin-app.student-app .ad-path-stack{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-app.student-app .ad-path-stack>div{grid-template-columns:22px 1fr;gap:6px}.admin-app.student-app .ad-path-stack b,.admin-app.student-app .ad-path-stack small{grid-column:1/-1}.admin-app.student-app .ad-path-stack small{margin-top:0}}
@media(max-width:560px){.admin-app.student-app .ad-page-hero{padding:21px 17px;border-radius:16px;margin-bottom:18px}.admin-app.student-app .ad-page-hero-copy h2{font-size:26px}.admin-app.student-app .ad-page-hero-copy p{font-size:13px}.admin-app.student-app .ad-hero-tags{gap:7px;margin-top:15px}.admin-app.student-app .ad-hero-tags span{font-size:10px;padding:8px 9px}.admin-app.student-app .ad-hero-visual{padding:14px}.admin-app.student-app .ad-path-stack{grid-template-columns:1fr}.admin-app.student-app .ad-path-stack>div{grid-template-columns:24px 24px minmax(0,1fr)}.admin-app.student-app .ad-path-stack b{grid-column:3}.admin-app.student-app .ad-path-stack small{grid-column:3;margin-top:-5px}.admin-app.student-app .ad-calendar-feature{align-items:flex-start}.admin-app.student-app .ad-calendar-feature b{font-size:11px}}
@media(max-width:360px){.admin-app.student-app .ad-page-hero-copy h2{font-size:23px}.admin-app.student-app .ad-hero-tags span{width:100%;justify-content:flex-start}.admin-app.student-app .ad-hero-visual-top,.admin-app.student-app .ad-hero-visual-foot{align-items:flex-start;flex-direction:column;gap:5px}}

/* ===== Final layout correction: distinct, aligned dashboard sections ===== */
.admin-app.student-app .ad-content{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  gap:24px!important;width:100%;max-width:1600px;min-width:0;margin-inline:auto;
  padding:clamp(18px,2.3vw,32px) clamp(16px,2.6vw,38px) 28px!important;
}
.admin-app.student-app .ad-content>section,
.admin-app.student-app .ad-content>.ad-footer{
  display:block;float:none;position:relative;grid-column:auto!important;grid-row:auto!important;
  width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;
  align-self:stretch;clear:both;
}
.admin-app.student-app .ad-content>.ad-hero-redesign{
  display:flex!important;flex-direction:row;align-items:center;justify-content:space-between;
  gap:28px;min-height:200px;padding:clamp(24px,3vw,40px)!important;
  margin:0!important;border-radius:22px;
}
.admin-app.student-app .ad-content>.ad-metrics-redesign{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:15px!important;margin:0!important;padding:0!important;background:transparent!important;
  border:0!important;box-shadow:none!important;
}
.admin-app.student-app .ad-content>.ad-growth-redesign,
.admin-app.student-app .ad-content>.ad-courses-redesign,
.admin-app.student-app .ad-content>.ad-students-redesign,
.admin-app.student-app .ad-content>.ad-calendar-redesign,
.admin-app.student-app .ad-content>.ad-account-redesign{
  display:block!important;padding:clamp(20px,2.4vw,32px)!important;
  margin:0!important;border:1px solid var(--line)!important;border-radius:20px!important;
  background:var(--surface)!important;color:var(--text)!important;box-shadow:var(--shadow)!important;
  overflow:hidden;
}
.admin-app.student-app .ad-content>.ad-growth-redesign .ad-panel-heading,
.admin-app.student-app .ad-content>.ad-courses-redesign .ad-panel-heading,
.admin-app.student-app .ad-content>.ad-students-redesign .ad-panel-heading,
.admin-app.student-app .ad-content>.ad-calendar-redesign .ad-panel-heading{
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;
  width:100%;margin:0 0 22px!important;padding:0 0 18px!important;border-bottom:1px solid var(--line)!important;
}
.admin-app.student-app .ad-page-hero{width:100%;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:clamp(20px,3vw,36px);margin:0 0 28px;padding:clamp(22px,3vw,34px);}
.admin-app.student-app .ad-page-hero-copy{min-width:0;max-width:100%;}
.admin-app.student-app .ad-page-hero-copy h2{max-width:720px;overflow-wrap:normal;}
.admin-app.student-app .ad-page-hero-copy p{max-width:650px;}
.admin-app.student-app .ad-hero-visual{width:100%;min-width:0;}
.admin-app.student-app .ad-enrollment-chart{width:100%;max-width:100%;}
.admin-app.student-app .ad-chart-area{min-width:0;width:100%;}
.admin-app.student-app .ad-table-wrap{width:100%;max-width:100%;overflow-x:auto;}
.admin-app.student-app .ad-students-table{width:100%;min-width:700px;}
.admin-app.student-app .ad-profile-details{grid-template-columns:repeat(3,minmax(0,1fr));}
.admin-app.student-app .ad-content>.ad-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:18px 2px 4px;border-top:1px solid var(--line);}
.admin-app.student-app .ad-stat{min-width:0;}
.admin-app.student-app .ad-stat-top span{min-width:0;}
.admin-app.student-app .ad-content section[id]{scroll-margin-top:90px;}
@media(max-width:1023px){
 .admin-app.student-app .ad-content{gap:20px!important;padding:22px 22px 26px!important;}
 .admin-app.student-app .ad-content>.ad-metrics-redesign{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 .admin-app.student-app .ad-page-hero{grid-template-columns:minmax(0,1fr) minmax(230px,.72fr);}
 .admin-app.student-app .ad-profile-details{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
 .admin-app.student-app .ad-content{gap:17px!important;padding:16px 15px 22px!important;}
 .admin-app.student-app .ad-content>.ad-hero-redesign{min-height:0;flex-direction:column;align-items:flex-start;gap:18px;padding:24px 20px 50px!important;}
 .admin-app.student-app .ad-content>.ad-metrics-redesign{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important;}
 .admin-app.student-app .ad-content>.ad-growth-redesign,
 .admin-app.student-app .ad-content>.ad-courses-redesign,
 .admin-app.student-app .ad-content>.ad-students-redesign,
 .admin-app.student-app .ad-content>.ad-calendar-redesign,
 .admin-app.student-app .ad-content>.ad-account-redesign{padding:18px!important;border-radius:16px!important;}
 .admin-app.student-app .ad-page-hero{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 18px;margin-bottom:22px;}
 .admin-app.student-app .ad-hero-visual{min-height:170px;}
 .admin-app.student-app .ad-profile-details{grid-template-columns:repeat(2,minmax(0,1fr));}
 .admin-app.student-app .ad-profile-main{align-items:center;}
}
@media(max-width:480px){
 .admin-app.student-app .ad-content{padding:12px!important;gap:14px!important;}
 .admin-app.student-app .ad-content>.ad-hero-redesign{padding:19px 16px 50px!important;border-radius:16px;}
 .admin-app.student-app .ad-content>.ad-metrics-redesign{gap:9px!important;}
 .admin-app.student-app .ad-metrics-redesign .ad-stat{padding:13px 11px;min-height:128px;}
 .admin-app.student-app .ad-stat>strong{font-size:25px;}
 .admin-app.student-app .ad-welcome-actions{display:flex;width:100%;gap:8px;}
 .admin-app.student-app .ad-welcome-actions>*{flex:1;min-width:0;padding-inline:9px;font-size:11px;}
 .admin-app.student-app .ad-live-ribbon{inset-inline-start:16px;bottom:14px;flex-wrap:wrap;max-width:calc(100% - 32px);}
 .admin-app.student-app .ad-page-hero{padding:19px 15px;border-radius:15px;}
 .admin-app.student-app .ad-page-hero-copy h2{font-size:25px;}
 .admin-app.student-app .ad-page-hero-copy p{font-size:13px;}
 .admin-app.student-app .ad-profile-main{flex-direction:row;align-items:center;}
 .admin-app.student-app .ad-profile-details{grid-template-columns:minmax(0,1fr);}
 .admin-app.student-app .ad-enrollment-chart{grid-template-columns:20px minmax(0,1fr);gap:6px;}
 .admin-app.student-app .ad-y-labels{font-size:9px;}
 .admin-app.student-app .ad-x-labels{font-size:9px;}
 .admin-app.student-app .ad-panel-heading h2{font-size:20px;}
}
@media(max-width:350px){
 .admin-app.student-app .ad-content{padding:10px!important;}
 .admin-app.student-app .ad-content>.ad-metrics-redesign{grid-template-columns:minmax(0,1fr)!important;}
 .admin-app.student-app .ad-metrics-redesign .ad-stat{min-height:0;}
 .admin-app.student-app .ad-stat-foot{font-size:11px;}
 .admin-app.student-app .ad-page-hero-copy h2{font-size:23px;}
 .admin-app.student-app .ad-hero-tags span{width:100%;justify-content:flex-start;}
}

/* Admin overview hero: intentionally mirrors the Student Dashboard's black-and-gold welcome banner. */
.admin-app.student-app .ad-content>.ad-admin-black-hero{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:center;gap:clamp(22px,3vw,38px);
  position:relative;isolation:isolate;overflow:hidden;min-width:0;min-height:250px;margin:0;padding:30px 32px 46px;
  border:1px solid rgba(224,165,38,.26);border-radius:18px;
  background:#171611;color:#fff8e9;box-shadow:0 10px 28px rgba(24,20,10,.09);
}
.admin-app.student-app .ad-admin-black-hero:before{content:"";position:absolute;z-index:-1;width:310px;height:310px;border:1px solid rgba(224,165,38,.18);border-radius:50%;inset-inline-end:-130px;top:-190px;box-shadow:0 0 0 34px rgba(224,165,38,.035),0 0 0 68px rgba(224,165,38,.025)}
.admin-app.student-app .ad-admin-hero-copy{min-width:0;position:relative;z-index:1}
.admin-app.student-app .ad-admin-black-hero .ad-eyebrow{display:flex;align-items:center;gap:8px;color:#f0bd4b;font-size:10px;font-weight:800;letter-spacing:.14em}
.admin-app.student-app .ad-admin-eyebrow-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#e0a526;box-shadow:0 0 0 4px rgba(224,165,38,.15)}
.admin-app.student-app .ad-admin-black-hero h1{margin:12px 0 11px;color:#fff8e9;font-size:clamp(27px,2.5vw,36px);line-height:1.15;letter-spacing:-.04em;overflow-wrap:anywhere}
.admin-app.student-app .ad-admin-hero-star{color:#e0a526}
.admin-app.student-app .ad-admin-black-hero .ad-admin-hero-copy>p{max-width:510px;margin:0;color:rgba(255,248,233,.73);font-size:13px;line-height:1.8}
.admin-app.student-app .ad-admin-black-hero .ad-welcome-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:22px}
.admin-app.student-app .ad-admin-black-hero .ad-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 17px;border:1px solid #e0a526;border-radius:8px;background:#e0a526;color:#19150b;font-size:12px;font-weight:800}
.admin-app.student-app .ad-admin-black-hero .ad-btn-quiet{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid rgba(255,248,233,.24);border-radius:8px;background:rgba(255,255,255,.035);color:#fff8e9;font-size:12px;font-weight:750}
.admin-app.student-app .ad-admin-market-art{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:6px 0 0 6px;color:rgba(255,248,233,.62)}
.admin-app.student-app .ad-admin-art-top,.admin-app.student-app .ad-admin-art-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;letter-spacing:.09em}
.admin-app.student-app .ad-admin-art-top b{font-size:12px;letter-spacing:0;color:#6de0a9;white-space:nowrap}
.admin-app.student-app .ad-admin-market-art svg{display:block;width:100%;height:150px;overflow:visible;margin:12px 0}
.admin-app.student-app .ad-admin-art-foot{font-size:10px;letter-spacing:0;flex-wrap:wrap}
.admin-app.student-app .ad-admin-art-foot span{display:flex;align-items:center;gap:7px}
.admin-app.student-app .ad-admin-art-foot span i{width:6px;height:6px;border-radius:50%;background:#6de0a9;box-shadow:0 0 0 4px rgba(109,224,169,.1)}
.admin-app.student-app .ad-admin-art-foot strong{color:#fff8e9;font-size:11px}
.admin-app.student-app .ad-admin-black-hero .ad-live-ribbon{position:absolute;inset-inline-start:32px;bottom:13px;display:flex;align-items:center;gap:8px;color:rgba(255,248,233,.58);font-size:9px;letter-spacing:.09em}
.admin-app.student-app .ad-admin-black-hero .ad-live-ribbon strong{color:#fff8e9;letter-spacing:0;font-size:10px}
.admin-app.student-app .ad-admin-black-hero .ad-live-dot{width:6px;height:6px;border-radius:50%;background:#6de0a9;box-shadow:0 0 0 4px rgba(109,224,169,.12)}
@media(max-width:760px){.admin-app.student-app .ad-content>.ad-admin-black-hero{grid-template-columns:minmax(0,1fr);gap:16px;padding:23px 20px 48px;min-height:0}.admin-app.student-app .ad-admin-market-art{padding:0}.admin-app.student-app .ad-admin-market-art svg{height:120px;max-height:130px;margin:10px 0}.admin-app.student-app .ad-admin-black-hero .ad-live-ribbon{inset-inline-start:20px;bottom:15px}.admin-app.student-app .ad-admin-black-hero .ad-welcome-actions>*{flex:0 1 auto}}
@media(max-width:420px){.admin-app.student-app .ad-content>.ad-admin-black-hero{padding:19px 16px 51px;gap:14px}.admin-app.student-app .ad-admin-black-hero h1{font-size:25px}.admin-app.student-app .ad-admin-black-hero .ad-welcome-actions{display:grid;grid-template-columns:1fr;gap:8px}.admin-app.student-app .ad-admin-black-hero .ad-welcome-actions>*{width:100%}.admin-app.student-app .ad-admin-art-top,.admin-app.student-app .ad-admin-art-foot{font-size:9px}.admin-app.student-app .ad-admin-art-foot{align-items:flex-start}}

/* Admin course section: visual image-led course cards */
.admin-app.student-app .ad-course-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch;margin-top:4px}
.admin-app.student-app .ad-course-image-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:0 8px 24px rgba(18,15,8,.055);transition:transform .22s ease,box-shadow .22s ease}
.admin-app.student-app .ad-course-image-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,15,8,.1)}
.admin-app.student-app .ad-course-image-wrap{height:178px;position:relative;overflow:hidden;background:#161616}
.admin-app.student-app .ad-course-image-wrap:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(180deg,transparent,rgba(8,8,8,.62));pointer-events:none}
.admin-app.student-app .ad-course-image-wrap img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .4s ease;opacity:.92}
.admin-app.student-app .ad-course-image-card:hover .ad-course-image-wrap img{transform:scale(1.045)}
.admin-app.student-app .ad-course-level{position:absolute;z-index:2;top:13px;left:13px;padding:6px 9px;border:1px solid rgba(233,182,56,.4);border-radius:6px;background:rgba(12,12,12,.84);color:#f2c34e;font-size:10px;font-weight:850;letter-spacing:.75px}
.admin-app.student-app .ad-course-level.intermediate{color:#b9dfff;border-color:rgba(110,178,237,.4)}
.admin-app.student-app .ad-course-level.advanced{color:#d8c3ff;border-color:rgba(185,145,255,.4)}
.admin-app.student-app .ad-course-image-icon{position:absolute;z-index:2;right:14px;bottom:13px;width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:#e9b638;color:#201a0b;font-size:16px;box-shadow:0 5px 14px rgba(0,0,0,.18)}
.admin-app.student-app .ad-course-image-body{padding:17px 17px 15px}
.admin-app.student-app .ad-course-image-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:11px}
.admin-app.student-app .ad-course-image-meta span{display:inline-flex;align-items:center;gap:6px}
.admin-app.student-app .ad-course-image-meta i{color:#d8a629}
.admin-app.student-app .ad-course-image-body h3{font-size:16px;line-height:1.4;letter-spacing:-.25px;color:var(--text);margin:13px 0 7px}
.admin-app.student-app .ad-course-image-body p{font-size:12px;line-height:1.65;color:var(--muted);margin:0;min-height:40px}
.admin-app.student-app .ad-course-image-progress{margin-top:17px}
.admin-app.student-app .ad-course-image-progress>div{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted);margin-bottom:8px}
.admin-app.student-app .ad-course-image-progress strong{font-size:11px;color:var(--text)}
.admin-app.student-app .ad-course-image-track{height:5px;display:block;overflow:hidden;border-radius:99px;background:color-mix(in srgb,var(--text) 10%,var(--surface))}
.admin-app.student-app .ad-course-image-track i{height:100%;display:block;border-radius:99px;background:linear-gradient(90deg,#c89116,#f2c64c)}
.admin-app.student-app .ad-course-image-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.admin-app.student-app .ad-course-image-foot>span{display:inline-flex;align-items:center;gap:6px}
.admin-app.student-app .ad-course-image-foot>span i{color:#d8a629}
.admin-app.student-app .ad-course-image-foot a{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-weight:800;white-space:nowrap}
.admin-app.student-app .ad-course-image-foot a i{color:#d8a629}
@media(max-width:1023px){.admin-app.student-app .ad-course-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-app.student-app .ad-course-image-card:last-child{grid-column:1/-1}.admin-app.student-app .ad-course-image-card:last-child .ad-course-image-wrap{height:200px}}
@media(max-width:760px){.admin-app.student-app .ad-course-cards{grid-template-columns:minmax(0,1fr);gap:14px}.admin-app.student-app .ad-course-image-card:last-child{grid-column:auto}.admin-app.student-app .ad-course-image-card:last-child .ad-course-image-wrap{height:178px}.admin-app.student-app .ad-course-image-wrap{height:190px}.admin-app.student-app .ad-course-image-body p{min-height:0}}
@media(max-width:380px){.admin-app.student-app .ad-course-image-wrap{height:155px}.admin-app.student-app .ad-course-image-body{padding:14px}.admin-app.student-app .ad-course-image-body h3{font-size:15px}.admin-app.student-app .ad-course-image-meta{font-size:10px}}

/* Admin responsive + theme consistency hardening */
.admin-app.student-app{min-width:0;overflow-x:clip;background:var(--bg);color:var(--text)}
.admin-app.student-app .ad-shell,.admin-app.student-app .ad-main-wrap,.admin-app.student-app .ad-content,.admin-app.student-app .ad-content section,.admin-app.student-app .ad-panel{min-width:0}
.admin-app.student-app .ad-sidebar{background:var(--surface)!important;color:var(--text)!important;border-color:var(--line)!important}
.admin-app.student-app .ad-brand,.admin-app.student-app .ad-admin-card,.admin-app.student-app .ad-nav a,.admin-app.student-app .ad-sidebar-bottom a{color:var(--text)!important}
.admin-app.student-app .ad-nav a:not(.active):hover{background:var(--shade)!important;color:var(--text)!important}
.admin-app.student-app .ad-admin-card{background:var(--bg)!important;border-color:var(--line)!important}
.admin-app.student-app .ad-nav a.active{background:var(--shade-strong)!important;color:var(--accent-text)!important;box-shadow:inset 3px 0 var(--accent)!important}
.admin-app.student-app .ad-topbar,.admin-app.student-app .ad-panel,.admin-app.student-app .ad-stat,.admin-app.student-app .ad-course-image-card{background:var(--surface)!important;color:var(--text)!important;border-color:var(--line)!important}
.admin-app.student-app .ad-content h1,.admin-app.student-app .ad-content h2,.admin-app.student-app .ad-content h3,.admin-app.student-app .ad-content strong,.admin-app.student-app .ad-crumb strong{color:var(--text)}
.admin-app.student-app .ad-content p,.admin-app.student-app .ad-content small,.admin-app.student-app .ad-content label{color:var(--muted)}
.admin-app.student-app .ad-icon-btn,.admin-app.student-app .ad-menu-toggle{background:var(--surface)!important;color:var(--text)!important;border-color:var(--line)!important}
.admin-app.student-app .ad-overlay{position:fixed;inset:0;display:none;background:rgba(0,0,0,.58);z-index:89;backdrop-filter:blur(2px)}
.admin-app.student-app.ad-menu-open .ad-overlay{display:block}
@media(max-width:980px){
 .admin-app.student-app .ad-shell{display:block!important;grid-template-columns:minmax(0,1fr)!important}
 .admin-app.student-app .ad-sidebar{position:fixed!important;top:0!important;bottom:0!important;inset-block:0!important;inset-inline-start:0!important;left:auto!important;right:auto!important;width:min(310px,88vw)!important;height:100vh!important;height:100dvh!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain;z-index:90!important;transform:translateX(-110%)!important;visibility:hidden;transition:transform .25s ease,visibility .25s ease!important}
 .admin-app.student-app[dir="rtl"] .ad-sidebar{transform:translateX(110%)!important}
 .admin-app.student-app.ad-menu-open .ad-sidebar{transform:translateX(0)!important;visibility:visible!important}
 .admin-app.student-app .ad-menu-toggle{display:grid!important;place-items:center;position:relative;z-index:95;flex:0 0 40px!important;width:40px!important;height:40px!important}
 .admin-app.student-app .ad-topbar{position:relative;z-index:85;gap:10px!important;min-width:0}
 .admin-app.student-app .ad-top-actions{margin-inline-start:auto}.admin-app.student-app .ad-top-user{display:none!important}
 .admin-app.student-app .ad-content{padding:20px 16px 24px!important}
}
@media(max-width:600px){
 .admin-app.student-app .ad-topbar{padding:10px 12px!important;flex-wrap:nowrap!important}
 .admin-app.student-app .ad-crumb{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
 .admin-app.student-app .ad-top-actions{flex:0 0 auto;gap:5px!important}
 .admin-app.student-app .ad-icon-btn,.admin-app.student-app .ad-menu-toggle{width:36px!important;height:36px!important;flex-basis:36px!important}
 .admin-app.student-app .ad-content{padding:14px 12px 20px!important}
 .admin-app.student-app .ad-overview-grid,.admin-app.student-app .ad-lower-grid,.admin-app.student-app .ad-course-cards{grid-template-columns:minmax(0,1fr)!important}
 .admin-app.student-app .ad-course-image-card:last-child{grid-column:auto!important}
}
@media(max-width:380px){.admin-app.student-app .ad-content{padding:11px 9px 18px!important}.admin-app.student-app .ad-topbar{gap:6px!important;padding-inline:8px!important}.admin-app.student-app .ad-icon-btn,.admin-app.student-app .ad-menu-toggle{width:33px!important;height:33px!important;flex-basis:33px!important}.admin-app.student-app .ad-content>.ad-metrics-redesign{grid-template-columns:minmax(0,1fr)!important}.admin-app.student-app .ad-page-hero-copy h2{overflow-wrap:anywhere}.admin-app.student-app .ad-panel{padding:13px!important}}
@media(prefers-reduced-motion:reduce){.admin-app.student-app .ad-sidebar,.admin-app.student-app .ad-course-image-card,.admin-app.student-app .ad-course-image-wrap img{transition:none!important}}


/* ===== Responsive repair: About page + dashboard sticky headers ===== */
.ad-main-wrap{min-width:0;min-height:100vh;overflow:visible!important}
.admin-app .ad-topbar,
.admin-app .sd-topbar{
  position:sticky!important;top:0!important;z-index:120!important;
  align-self:stretch;isolation:isolate;
  background:var(--surface, #fff)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
}
.admin-app .ad-shell{align-items:start;overflow:visible!important}
.admin-app .ad-sidebar{align-self:start}
html{scroll-padding-top:88px}
@media (max-width: 1023px){
  .admin-app .ad-main-wrap{width:100%;max-width:100%;min-width:0}
  .admin-app .ad-content,.admin-app .sd-content{min-width:0;width:100%;box-sizing:border-box}
  .admin-app .ad-topbar,.admin-app .sd-topbar{flex-wrap:nowrap!important;min-height:64px;padding:10px 14px!important}
  .admin-app .ad-crumb,.admin-app .sd-breadcrumb{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .admin-app .ad-top-actions,.admin-app .sd-top-actions{flex-shrink:0;gap:8px}
}
@media (max-width: 760px){
  .admin-app .ad-topbar,.admin-app .sd-topbar{top:0!important;min-height:60px;padding:8px 10px!important;gap:8px!important}
  .admin-app .ad-top-user span,.admin-app .sd-top-profile span{display:none}
  .admin-app .ad-top-photo,.admin-app .sd-top-photo{width:34px;height:34px}
  .admin-app .ad-content,.admin-app .sd-content{padding:18px 12px!important}
  .admin-app .ad-content section,.admin-app .sd-content section{max-width:100%;min-width:0}
  .admin-app .ad-shell{overflow:visible!important}
  .admin-app .ad-main-wrap{overflow:visible!important}
}
/* About page: prevent horizontal overflow and make all layouts adapt cleanly */
.hx,.hw,.ticker,.sec{max-width:100%}
.hx__main,.hx__grid,.am__row,.ac__layout,.container{min-width:0}
.hx__grid > *, .am__row > *, .ac__layout > *{min-width:0;max-width:100%}
.hx img,.am img,.ac img,.sec img{max-width:100%;height:auto}
@media (max-width: 1023px){
  .hx__grid{grid-template-columns:minmax(0,1fr)!important}
  .hx__main{width:100%;max-width:100%}
  .am__row{gap:clamp(18px,4vw,36px)!important}
  .ac__layout{grid-template-columns:minmax(0,1fr)!important}
  .container{width:min(100% - 2 * var(--pad), var(--wrap))!important}
}
@media (max-width: 700px){
  .hdr__inner,.nav__row{min-width:0;max-width:100%}
  .hx{padding-inline:0;overflow:hidden}
  .hx__grid{gap:22px!important}
  .hx__main h1{font-size:clamp(2rem,9vw,3.4rem)!important;line-height:1.06;overflow-wrap:anywhere}
  .hx__main p,.am__txt,.ac p{overflow-wrap:anywhere}
  .am__row,.am__row--rev{display:flex!important;flex-direction:column!important;align-items:stretch!important}
  .am__img,.am__txt{width:100%!important;max-width:100%!important}
  .am__img img{width:100%;object-fit:cover}
  .sec{padding-block:clamp(36px,9vw,64px)!important}
  .container{width:min(100% - 2 * var(--pad), var(--wrap))!important;padding-inline:0!important}
  .ticker{overflow:hidden}
}
@media (max-width: 380px){
  .admin-app .ad-topbar,.admin-app .sd-topbar{padding-inline:7px!important;gap:5px!important}
  .admin-app .ad-crumb,.admin-app .sd-breadcrumb{font-size:11px}
  .admin-app .ad-top-actions,.admin-app .sd-top-actions{gap:5px}
  .container{width:min(100% - 2 * var(--pad), var(--wrap))!important}
}


@media (max-width: 980px) {
  html body.admin-app .ad-shell { display: block !important; overflow: visible !important; }
  html body.admin-app .ad-main-wrap { min-width: 0 !important; overflow: visible !important; }
  html body.admin-app .ad-sidebar {
    position: fixed !important;
    top: 0 !important; bottom: 0 !important;
    left: 0 !important; right: auto !important;
    inset-inline-start: 0 !important; inset-inline-end: auto !important;
    width: min(290px, 86vw) !important;
    height: 100vh !important; height: 100dvh !important;
    min-height: 0 !important;
    z-index: 2200 !important;
    overflow-y: auto !important;
    visibility: hidden !important;
    transform: translateX(-105%) !important;
    transition: transform .25s ease, visibility .25s ease !important;
    pointer-events: none;
  }
  html[dir="rtl"] body.admin-app .ad-sidebar {
    left: auto !important; right: 0 !important;
    transform: translateX(105%) !important;
  }
  html body.admin-app.ad-menu-open .ad-sidebar {
    visibility: visible !important;
    transform: translateX(0) !important;
    pointer-events: auto !important;
  }
  html body.admin-app .ad-overlay {
    position: fixed !important; inset: 0 !important;
    z-index: 2100 !important;
  }
  html body.admin-app.ad-menu-open .ad-overlay { display: block !important; }
  html body.admin-app .ad-topbar {
    position: sticky !important; top: 0 !important;
    z-index: 1500 !important; isolation: isolate;
  }
  html body.admin-app .ad-menu-toggle { position: relative; z-index: 1600 !important; }
}

/* Admin drawer intentionally mirrors the Student Dashboard drawer. */
@media (max-width: 980px) {
  html body.admin-app.student-app .ad-shell { display: block !important; grid-template-columns: minmax(0,1fr) !important; overflow: visible !important; }
  html body.admin-app.student-app .ad-main-wrap { min-width: 0 !important; width: 100% !important; overflow: visible !important; }
  html body.admin-app.student-app .ad-sidebar {
    position: fixed !important; top: 0 !important; bottom: 0 !important; inset-block: 0 !important;
    left: 0 !important; right: auto !important; inset-inline-start: 0 !important; inset-inline-end: auto !important;
    width: min(290px, 86vw) !important; height: 100vh !important; height: 100dvh !important;
    max-height: 100dvh !important; min-height: 0 !important; overflow-x: hidden !important; overflow-y: auto !important;
    z-index: 6200 !important; background: var(--surface, #111) !important;
    visibility: hidden !important; pointer-events: none !important;
    transform: translateX(-110%) !important; transition: transform .25s ease, visibility .25s ease !important;
  }
  html[dir="rtl"] body.admin-app.student-app .ad-sidebar { left: auto !important; right: 0 !important; transform: translateX(110%) !important; }
  html body.admin-app.student-app.ad-menu-open .ad-sidebar { visibility: visible !important; pointer-events: auto !important; transform: translateX(0) !important; }
  html body.admin-app.student-app .ad-overlay {
    display: none; position: fixed !important; inset: 0 !important; z-index: 6100 !important;
    background: rgba(0,0,0,.56) !important; cursor: pointer;
  }
  html body.admin-app.student-app.ad-menu-open .ad-overlay { display: block !important; }
  html body.admin-app.student-app .ad-topbar {
    position: sticky !important; top: 0 !important; z-index: 5000 !important;
    width: 100% !important; isolation: isolate;
  }
  html body.admin-app.student-app .ad-menu-toggle { display: grid !important; position: relative !important; z-index: 5100 !important; flex: 0 0 37px !important; }
}


/* ==================== MERGED FROM darkmode.css ==================== */

/* ===== TradeWise Academy: dark mode (default look): Black + Gold, green/red for markets ===== */
[data-theme="dark"] {
  color-scheme: dark;
  --bg: #050505;             /* logo black */
  --surface: #0F0E0B;
  --text: #F1EADA;
  --muted: #A99F88;
  --ink: #FFFFFF;
  --accent: #F2B632;
  --accent-text: #F5C04F;    /* logo gold for highlighted text */
  --violet: #D9981C;
  --gain: #1FD18B;
  --gold: #F5C04F;
  --amber: #F5C04F;
  --loss: #FF4D4F;
  --line: rgba(245, 192, 79, .26);
  --shade: rgba(245, 192, 79, .09);
  --shade-strong: rgba(245, 192, 79, .20);
  --btn-bg: #F2B632;
  --btn-fg: #140E00;
  --shadow: 0 18px 40px rgba(0, 0, 0, .7);
}
[data-theme="dark"] .ico-moon { display: none; }
[data-theme="dark"] .ico-sun { display: inline; }


/* ==================== MERGED FROM rtl.css ==================== */

/* ===== TradeWise Academy: right-to-left ===== */
[dir="rtl"] { --font-body: "Segoe UI", Tahoma, "Noto Sans Arabic", system-ui, sans-serif; }
/* letter-spacing breaks joined Arabic letters */
[dir="rtl"] .hdr, [dir="rtl"] .menu, [dir="rtl"] .brand__name { letter-spacing: 0; }
[dir="rtl"] body { text-align: right; }
/* flip the arrow and its hover direction */
[dir="rtl"] .hdr__login i { transform: scaleX(-1); }
[dir="rtl"] .hdr__login:hover i { translate: -3px 0; }
[dir="rtl"] .brand:hover .brand__mark { transform: rotate(8deg) scale(1.05); }
/* dropdown, paddings and margins use logical properties already */
[dir="rtl"] .hero__title { letter-spacing: 0; }
[dir="rtl"] .hero__cta .fa-arrow-right { transform: scaleX(-1); }
[dir="rtl"] .hx__title, [dir="rtl"] .ac__year { letter-spacing: 0; }
[dir="rtl"] .hx__cta .fa-arrow-right, [dir="rtl"] .tkt__foot .fa-arrow-right, [dir="rtl"] .ac__ctl .fa-arrow-left, [dir="rtl"] .ac__ctl .fa-arrow-right { transform: scaleX(-1); }
[dir="rtl"] .cta__box h2, [dir="rtl"] .tmc__ini { letter-spacing: 0; }
[dir="rtl"] .cta__btns .fa-arrow-right { transform: scaleX(-1); }


/* ==================== MERGED FROM instructor.css ==================== */

/* ===== Home: teaching team cards (sits inside the original .inst section, same card style as .cr) ===== */
.tm-wrap { margin-top: clamp(48px, 6vw, 80px); }
.tm__h { margin: 0; font-size: clamp(1.5rem, 2.6vw, 2.1rem); line-height: 1.15; color: var(--ink); }
.tm__sub { margin: 8px 0 0; color: var(--muted); }
.tm-grid { list-style: none; margin: 26px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.tm { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 20px; align-items: start; padding: 28px 24px 24px; background: rgba(30, 28, 22, .72); border: 1px solid var(--line); border-radius: 20px; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.tm::before { content: ""; position: absolute; inset-inline: 22px; top: -1px; height: 3px; border-radius: 0 0 4px 4px; background: linear-gradient(90deg, var(--gain), var(--violet)); }
.tm:hover { transform: translateY(-6px); border-color: var(--violet); box-shadow: var(--shadow), 0 0 40px -12px var(--violet); }
.tm__av { display: grid; place-items: center; width: 76px; height: 76px; border-radius: 50%; overflow: hidden; background: var(--shade-strong); border: 2px solid var(--violet); font: 800 1.5rem/1 var(--font-head); color: var(--accent-text); }
.tm__av img { width: 100%; height: 100%; object-fit: cover; }
.tm h4 { margin: 0; font: 800 1.1875rem/1.25 var(--font-head); color: #fff; }
.tm__cred { display: flex; align-items: center; gap: 7px; margin-top: 4px; font-size: .875rem; font-weight: 600; color: var(--gain); }
.tm__bio { margin: 12px 0 0; font-size: .9rem; line-height: 1.55; color: var(--muted); }
.tm__tag { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; padding: 7px 13px; border-radius: 999px; background: var(--shade-strong); color: var(--accent-text); font-size: .8125rem; font-weight: 700; text-decoration: none; transition: background .2s; }
.tm__tag:hover { background: rgba(245, 202, 93, .4); }
.tm__tag:focus-visible { outline: 2px solid var(--accent-text); outline-offset: 2px; }
@media (max-width: 900px) { .tm-grid { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .tm { grid-template-columns: 1fr; } .tm__av { width: 64px; height: 64px; font-size: 1.25rem; } }
@media (prefers-reduced-motion: reduce) { .tm { transition: none; } }

/* Fix: the global ".sec img { height: auto }" rule was shrinking the portrait photo, leaving an empty block under it */
.inst .pf__img img { height: 100%; max-width: none; }

/* Profile photos in the avatar circle (initials stay underneath as a fallback) */
.tm__av { position: relative; }
.inst .tm__av img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 20%; }

/* Readability fix: instructor cards stay dark in light mode, so keep their copy bright. */
html:not([data-theme="dark"]) .inst .tm,
body:not(.dark-mode) .inst .tm {
  background: #24231f;
  color: #f5f0e4;
}
html:not([data-theme="dark"]) .inst .tm h4,
body:not(.dark-mode) .inst .tm h4 { color: #fff; }
html:not([data-theme="dark"]) .inst .tm__bio,
body:not(.dark-mode) .inst .tm__bio { color: #e6dfcd; }
html:not([data-theme="dark"]) .inst .tm__creds li.is-exp,
body:not(.dark-mode) .inst .tm__creds li.is-exp {
  color: #ffd166;
  background: rgba(245, 192, 79, .16);
  border-color: rgba(245, 192, 79, .42);
}
html:not([data-theme="dark"]) .inst .tm__tag,
body:not(.dark-mode) .inst .tm__tag {
  color: #ffe08a;
  background: rgba(245, 192, 79, .24);
}

/* Credential chips */
.tm__creds { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 0; padding: 0; }
.tm__creds li { display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px; border-radius: 999px; border: 1px solid rgba(31, 209, 139, .4); background: rgba(31, 209, 139, .1); font-size: .8125rem; font-weight: 600; color: var(--gain); }
.tm__creds li.is-exp { border-color: var(--line); background: var(--shade); color: var(--accent-text); }

/* Equal alignment: identical rows in both cards, course button pinned to the bottom */
.tm > div:last-child { display: flex; flex-direction: column; align-items: flex-start; align-self: stretch; min-width: 0; }
.tm__creds { flex-wrap: nowrap; }
.tm__creds + .tm__creds { margin-top: 8px; }
.tm__creds li { white-space: nowrap; }
.tm__bio { margin-bottom: 14px; }
.tm__tag { margin-top: auto; }
@media (max-width: 480px) { .tm__creds { flex-wrap: wrap; } }


/* ==================== MERGED FROM home-sections.css ==================== */

/* ===== Home section 3: How it works. Bento grid with product mini-UIs. Always dark (ink + gold) ===== */
.fl{--ink:#fff;--text:#F5F2EB;--muted:#BDB296;--accent-text:#F5C04F;--accent:#F2B632;--gain:#1FD18B;--loss:#FF4D4F;--line:rgba(245,192,79,.22);--shade:rgba(245,192,79,.08);--shade-strong:rgba(245,192,79,.18);--btn-bg:#F2B632;--btn-fg:#140E00;--shadow:0 18px 40px rgba(0,0,0,.6);
  position:relative;isolation:isolate;overflow:hidden;background:#0A0A09;color:var(--text)}
.fl::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(60% 50% at 50% 0%,rgba(245,192,79,.16),transparent 70%),radial-gradient(40% 40% at 100% 100%,rgba(31,209,139,.08),transparent 70%)}
.fl__head{max-width:760px;margin-inline:auto;text-align:center}
.fl__head .eyebrow{justify-content:center}
.fl__head h2{font-size:clamp(2.1rem,4.8vw,3.75rem);line-height:1.05;letter-spacing:-.035em;color:var(--ink)}
.fl__head p.fl__lead{margin:18px auto 0;max-width:56ch;color:var(--muted);font-size:1.0625rem;line-height:1.65}

.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;margin-top:clamp(40px,5vw,64px)}
.bt{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:clamp(22px,2.6vw,32px);border:1px solid var(--line);border-radius:28px;background:linear-gradient(160deg,rgba(245,192,79,.10),rgba(255,255,255,.015) 45%),#12110D;transition:border-color .3s,box-shadow .3s}
.bt::after{content:"";position:absolute;inset-inline-end:-80px;top:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(closest-side,rgba(245,192,79,.16),transparent);pointer-events:none}
.bt:hover{border-color:var(--accent);box-shadow:0 0 0 1px rgba(245,192,79,.25),0 24px 60px -24px rgba(245,192,79,.35)}
.bt--live{grid-column:span 7}.bt--play{grid-column:span 5}.bt--paper{grid-column:span 5}.bt--track{grid-column:span 7}
.bt__top{display:flex;gap:16px;align-items:flex-start}
.bt__no{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--accent);color:#140E00;font:800 1.125rem/1 var(--font-head)}
.bt h3{margin:0;font:800 clamp(1.3rem,2vw,1.625rem)/1.2 var(--font-head);color:var(--ink);letter-spacing:-.015em}
.bt__top p{margin:8px 0 0;max-width:46ch;color:var(--muted);font-size:.9688rem;line-height:1.6}

/* shared mini-UI frame */
.ui{margin-top:auto;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#0A0907;overflow:hidden}
.bt__top+.ui{margin-top:24px}
.ui-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.08);font-size:.8125rem;color:var(--muted)}
.ui-bar b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-weight:600}
.fl-live{display:inline-flex;align-items:center;gap:7px;padding:3px 10px;border-radius:999px;background:rgba(255,77,79,.14);color:var(--loss);font-size:.75rem;font-weight:700}
.fl-live::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;animation:flPulse 1.6s ease-in-out infinite}
@keyframes flPulse{50%{opacity:.25}}

/* 1 live class */
.ui-live__body{display:grid;grid-template-columns:1.15fr 1fr}
.ui-stage{position:relative;background:linear-gradient(180deg,#14120C,#0A0907)}
.ui-stage svg{display:block;width:100%;height:100%;min-height:150px}
.ui-stage__who{position:absolute;inset-inline-start:10px;bottom:10px;display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;background:rgba(0,0,0,.6);font-size:.75rem;color:#fff}
.ui-stage__who i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#140E00;font:800 .6875rem/1 var(--font-head);font-style:normal}
.ui-chat{list-style:none;margin:0;padding:12px;display:grid;gap:8px;align-content:center;border-inline-start:1px solid rgba(255,255,255,.08)}
.ui-chat li{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.04);font-size:.78rem;line-height:1.4;color:var(--muted)}
.ui-chat b{color:#fff;font-weight:700}
.ui-chat .is-ins{background:var(--shade-strong);color:var(--text)}
.ui-chat .is-ins b{color:var(--accent-text)}

/* 2 replay */
.ui-play__screen{position:relative;display:grid;place-items:center;aspect-ratio:16/8;background:radial-gradient(circle at 30% 30%,#2A2210,#0A0907 70%)}
.ui-play__btn{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--accent);color:#140E00;font-size:1.1rem;box-shadow:0 0 0 8px rgba(245,192,79,.18)}
.ui-play__time{position:absolute;inset-inline-end:10px;bottom:8px;font-size:.75rem;color:#fff;font-variant-numeric:tabular-nums}
.ui-scrub{height:5px;background:rgba(255,255,255,.12)}
.ui-scrub i{display:block;height:100%;width:var(--p);background:linear-gradient(90deg,var(--accent),var(--gain))}
.ui-chap{list-style:none;margin:0;padding:6px 6px 8px;display:grid;gap:2px}
.ui-chap li{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;font-size:.8125rem;color:var(--muted)}
.ui-chap li.is-done{color:var(--gain)}
.ui-chap li.is-on{background:var(--shade-strong);color:#fff;font-weight:600}
.ui-chap span{font-variant-numeric:tabular-nums}

/* 3 paper trading */
.ui-paper svg{display:block;width:100%;height:auto}
.ui-line{stroke-dasharray:640;stroke-dashoffset:0}
.bt--paper.aos-animate .ui-line{animation:flDraw 1.8s .2s ease-out both}
@keyframes flDraw{from{stroke-dashoffset:640}to{stroke-dashoffset:0}}
.ui-paper__row{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid rgba(255,255,255,.08)}
.ui-pill{padding:7px 16px;border-radius:10px;font-size:.8125rem;font-weight:800}
.ui-pill--buy{background:var(--gain);color:#04140D}.ui-pill--sell{background:rgba(255,77,79,.16);color:var(--loss)}
.ui-paper__pl{margin-inline-start:auto;text-align:end;font-size:.75rem;color:var(--muted);line-height:1.3}
.ui-paper__pl b{display:block;font:800 1.125rem/1.2 var(--font-head);color:var(--gain);font-variant-numeric:tabular-nums}

/* 4 dashboard */
.ui-dash{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;padding:18px}
.ui-ring{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:50%;background:conic-gradient(var(--accent) 0 64%,rgba(255,255,255,.1) 0)}
.ui-ring::before{content:"";position:absolute;inset:9px;border-radius:50%;background:#0A0907}
.ui-ring b{position:relative;font:800 1.375rem/1 var(--font-head);color:#fff}
.ui-ring small{position:absolute;bottom:20px;font-size:.625rem;color:var(--muted)}
.ui-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ui-stats div{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04)}
.ui-stats b{display:block;font:800 1.125rem/1.2 var(--font-head);color:#fff}
.ui-stats span{font-size:.75rem;color:var(--muted)}
.ui-stats .up{color:var(--gain)}
.ui-next{display:flex;align-items:center;gap:10px;grid-column:1/-1;padding:10px 12px;border-radius:12px;background:var(--shade);font-size:.8125rem;color:var(--text)}
.ui-next i{color:var(--accent-text)}
.fl-link{display:inline-flex;align-items:center;gap:8px;margin-top:16px;color:var(--accent-text);font-weight:700;font-size:.9375rem;text-decoration:none}
.fl-link:hover{text-decoration:underline}
.fl-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}

.fl__cta{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:clamp(36px,4vw,56px);text-align:center}
.fl__cta div{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.fl__note{margin:0;max-width:60ch;font-size:.8125rem;line-height:1.5;color:var(--muted)}

/* ===== Home section 7: Student stories. Dark "story player": pick a student, read the story, watch before -> after ===== */
.sty{position:relative;isolation:isolate;overflow:hidden;background:#0A0A0A;border:0;color:#F5EEDC}
.sty::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 50% at 85% 10%,rgba(224,165,38,.22),transparent 70%),radial-gradient(50% 45% at 5% 95%,rgba(14,159,110,.14),transparent 70%)}
.sty .eyebrow{color:#F5C04F}
.sty__top{max-width:760px}
.sty__top h2{font-size:clamp(1.75rem,3.2vw,2.5rem);line-height:1.12;letter-spacing:-.03em;color:#fff}
.sty__lead{margin:12px 0 0;max-width:52ch;color:#B9AE92;font-size:1rem;line-height:1.6}
.sx{margin-top:clamp(26px,3.4vw,40px);display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,2fr);gap:clamp(14px,2vw,22px);align-items:stretch}
.sx-tabs{display:flex;flex-direction:column;gap:10px}
.sx-tab{position:relative;overflow:hidden;display:flex;align-items:center;gap:12px;width:100%;flex:1;text-align:start;cursor:pointer;font:inherit;color:#F5EEDC;padding:12px 16px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(245,192,79,.18);transition:background .25s,border-color .25s}
.sx-tab:hover{background:rgba(255,255,255,.08)}
.sx-tab:focus-visible{outline:2px solid #F5C04F;outline-offset:3px}
.sx-tab[aria-selected="true"]{background:linear-gradient(135deg,rgba(245,192,79,.2),rgba(245,192,79,.06));border-color:#F5C04F}
.sx-av{flex:none;width:42px;height:42px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px rgba(245,192,79,.4);filter:grayscale(.7);transition:filter .25s,box-shadow .25s}
.sx-tab[aria-selected="true"] .sx-av{filter:none;box-shadow:0 0 0 2px #F5C04F}
.sx-av img{display:block;width:100%;height:100%;object-fit:cover}
.sx-who b{display:block;font:700 .9375rem/1.25 var(--font-head);color:#fff}
.sx-who small{display:block;margin-top:2px;font-size:.8125rem;color:#B9AE92}
.sx-bar{position:absolute;inset:auto 0 0 0;height:3px;background:transparent}
.sx-bar i{display:block;height:100%;width:0;background:#F5C04F}
.sx-tab[aria-selected="true"] .sx-bar i{width:100%}
.sx[data-play] .sx-tab[aria-selected="true"] .sx-bar i{width:0;animation:sxbar var(--sx-dur,8s) linear forwards}
.sx[data-paused] .sx-bar i{animation-play-state:paused}
@keyframes sxbar{to{width:100%}}
.sx-stage{position:relative;display:grid;border-radius:20px;border:1px solid rgba(245,192,79,.25);background:rgba(255,255,255,.04);overflow:hidden}
.sx-panel{grid-area:1/1;position:relative;display:flex;flex-direction:column;gap:20px;padding:clamp(22px,3vw,34px)}
.js-sx .sx-panel{opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease,visibility 0s .45s}
.js-sx .sx-panel.is-on{opacity:1;visibility:visible;transform:none;transition:opacity .45s ease,transform .45s ease}
.sx-bigq{position:absolute;inset-block-start:-.05em;inset-inline-end:.3em;font:800 clamp(4rem,8vw,6rem)/1 var(--font-head);color:rgba(245,192,79,.12);pointer-events:none;user-select:none}
.sx-q{position:relative;margin:0;flex:1}
.sx-q p{margin:0;max-width:56ch;font:500 clamp(1.0625rem,1.5vw,1.25rem)/1.6 var(--font-body);color:#F5EEDC}
.sx-q mark{background:none;color:#F5C04F;font-weight:700;padding:0}
.sx-jrny{display:grid;grid-template-columns:minmax(0,1fr) minmax(40px,.5fr) minmax(0,1fr);align-items:center;gap:14px;padding:14px 16px;border-radius:12px;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.08)}
.sx-node small{display:block;font:800 .625rem/1 var(--font-head);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
.sx-node b{display:block;font:600 .9375rem/1.35 var(--font-head)}
.sx-node--b small{color:#FF7A7E}.sx-node--b b{color:#B9AE92}
.sx-node--a small{color:#34D399}.sx-node--a b{color:#fff}
.sx-line{position:relative;height:3px;border-radius:3px;background:linear-gradient(90deg,#D92D32,#E0A526,#0E9F6E);transform-origin:left;transform:scaleX(0)}
.sx-line::after{content:"";position:absolute;inset-inline-end:-2px;top:50%;width:10px;height:10px;border-radius:50%;background:#34D399;transform:translateY(-50%);box-shadow:0 0 0 4px rgba(52,211,153,.22)}
.sx-panel.is-on .sx-line,html:not(.js-sx) .sx-line{animation:sxline .9s .2s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes sxline{to{transform:scaleX(1)}}
.sx-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0}
.sx-stars{color:#F5C04F;letter-spacing:.12em;font-size:.8125rem}
.sx-path{font:700 .625rem/1 var(--font-head);letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;border:1px solid rgba(245,192,79,.45);color:#F5C04F}
.sx-marq{margin-top:clamp(20px,3vw,30px);overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.sx-track{list-style:none;margin:0;padding:0;display:flex;gap:14px;width:max-content;animation:sxmarq 38s linear infinite}
.sx-marq:hover .sx-track{animation-play-state:paused}
.sx-track li{display:flex;align-items:baseline;gap:8px;white-space:nowrap;padding:9px 16px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(245,192,79,.18)}
.sx-track span{font:600 .875rem/1 var(--font-head);color:#F5EEDC}
.sx-track small{font-size:.75rem;color:#B9AE92}
@keyframes sxmarq{to{transform:translateX(-50%)}}
[dir="rtl"] .sx-track{animation-direction:reverse}
.sty__note{margin:26px 0 0;max-width:70ch;font-size:.8125rem;line-height:1.55;color:#8F8670}
@media (max-width:900px){
  .sx{grid-template-columns:minmax(0,1fr)}
  .sx-tabs{flex-direction:row;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}
  .sx-tab{flex:0 0 auto;width:auto;min-width:220px;scroll-snap-align:start}
  .sx-tab:hover{transform:none}
}
@media (max-width:620px){.sx-jrny{grid-template-columns:minmax(0,1fr)}.sx-line{width:4px;height:36px;margin-inline-start:6px;transform-origin:top;transform:scaleY(0)}.sx-line::after{inset-inline-end:auto;top:auto;bottom:-2px;left:-4px;transform:none}@keyframes sxline{to{transform:scale(1)}}}
@media (prefers-reduced-motion:reduce){.sx-track{animation:none;overflow-x:auto}.sx-line{animation:none!important;transform:none!important}.sx-panel,.sx-tab{transition:none!important}.sx[data-play] .sx-bar i{animation:none}}

/* ===== Home final CTA: copy on the left, "next batch" ticket on the right ===== */
.fcta{background:var(--bg);padding-block:clamp(56px,7vw,96px)}
.fcta__wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.fcta h2{font-size:clamp(1.75rem,3.4vw,2.6rem);line-height:1.12;letter-spacing:-.03em;max-width:18em}
.fcta__lead{margin:14px 0 0;max-width:50ch;color:var(--muted);font-size:1rem;line-height:1.65}
.fcta__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.fcta__note{margin:18px 0 0;font-size:.8125rem;color:var(--muted)}
.fcta-ticket{position:relative;overflow:hidden;border-radius:22px;background:#0A0A0A;color:#F5EEDC;border:1px solid rgba(245,192,79,.4);box-shadow:var(--shadow)}
.fcta-ticket__top{padding:clamp(20px,2.6vw,28px);display:grid;gap:8px;justify-items:start;background:radial-gradient(80% 120% at 100% 0,rgba(245,192,79,.22),transparent 70%)}
.fcta-ticket__lbl{font:800 .6875rem/1 var(--font-head);letter-spacing:.14em;text-transform:uppercase;color:#F5C04F}
.fcta-ticket__date{font:800 clamp(1.375rem,2.4vw,1.75rem)/1.15 var(--font-head);color:#fff;letter-spacing:-.02em}
.fcta-ticket__tag{font:700 .6875rem/1 var(--font-head);letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:rgba(14,159,110,.18);color:#34D399}
.fcta-ticket__cut{position:relative;height:0;border-top:2px dashed rgba(245,192,79,.35);margin-inline:20px}
.fcta-ticket__cut::before,.fcta-ticket__cut::after{content:"";position:absolute;top:-13px;width:24px;height:24px;border-radius:50%;background:var(--bg);border:1px solid rgba(245,192,79,.4)}
.fcta-ticket__cut::before{inset-inline-start:-32px}
.fcta-ticket__cut::after{inset-inline-end:-32px}
.fcta-ticket__steps{list-style:none;margin:0;padding:clamp(18px,2.4vw,26px) clamp(20px,2.6vw,28px) clamp(20px,2.6vw,28px);display:grid;gap:16px}
.fcta-ticket__steps li{display:flex;align-items:center;gap:14px}
.fcta-ticket__steps li>span{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#F5C04F;color:#0A0A0A;font:800 .875rem/1 var(--font-head)}
.fcta-ticket__steps b{display:block;font:700 .9375rem/1.3 var(--font-head);color:#fff}
.fcta-ticket__steps small{display:block;margin-top:2px;font-size:.8125rem;color:#B9AE92}
@media (max-width:860px){.fcta__wrap{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.fcta__btns .btn{flex:1 1 100%}}

@media (max-width:900px){.bt--live,.bt--play,.bt--paper,.bt--track{grid-column:1/-1}}
@media (max-width:520px){
  .ui-live__body{grid-template-columns:1fr}.ui-chat{border-inline-start:0;border-top:1px solid rgba(255,255,255,.08)}
  .ui-dash{grid-template-columns:1fr;justify-items:center}.ui-stats{width:100%}
  .fl__cta div .btn{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){.bt{transition:none}.fl-live::before{animation:none}.bt--paper.aos-animate .ui-line{animation:none}}

/* fill each tile so there is no empty space under the mini-UI */
.fl__head{max-width:880px}
.bt__top+.ui{flex:1}
.bt--live .ui,.ui-paper{display:flex;flex-direction:column}
.ui-live__body{flex:1}
.ui-stage{min-height:160px}
.ui-stage svg{position:absolute;inset:0;width:100%;height:100%;min-height:0}
.ui-paper svg{flex:1;height:auto;min-height:120px}
.ui-dash{align-content:center}
.bt--play .ui{display:flex;flex-direction:column}.bt--play .ui-chap{margin-top:auto}
@media (max-width:520px){.ui-stage{min-height:170px}}

/* ---- Home "learn / practise / track" tiles: never crop on small screens ---- */
.bento>*{min-width:0}
.bt__top>div{min-width:0}
.bt h3,.bt__top p{overflow-wrap:anywhere}
.ui,.ui-dash>*,.ui-stats>*{min-width:0}
.ui-paper__row{flex-wrap:wrap;row-gap:8px}
.ui-paper__pl{min-width:0}
.ui-paper__pl b{white-space:nowrap}
.ui-stats b{white-space:nowrap}
@media (max-width:640px){
  .bt{border-radius:22px;padding:20px 16px}
  .bt__top{gap:12px}
  .bt__no{width:36px;height:36px;border-radius:12px;font-size:1rem}
  .bt__top+.ui{margin-top:18px}
  .ui-dash{padding:14px;gap:14px}
  .ui-stats{gap:8px}
  .ui-stats div{padding:9px 8px}
  .ui-stats b{font-size:1rem}
  .ui-stats span{font-size:.7rem;line-height:1.3;display:block}
  .ui-paper__row{padding:12px}
  .ui-pill{padding:7px 12px}
}
@media (max-width:400px){
  .ui-stats{grid-template-columns:1fr 1fr}
  .ui-stats div:last-child{grid-column:1/-1}
  .ui-paper__row{justify-content:space-between}
  .ui-paper__pl{flex:1 1 100%;margin-inline-start:0;text-align:start;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
  .ui-next{align-items:flex-start;line-height:1.4}
  .fl-link{align-items:flex-start}
}

/* ===== Home section 4: Courses by level. Level switcher (tabs) + one big showcase panel ===== */
.lv{position:relative;isolation:isolate;overflow:hidden;background:var(--bg)}
.lv__head{max-width:820px}
.lv__head h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.06;letter-spacing:-.035em;color:var(--ink)}
.lv__head p{margin:16px 0 0;color:var(--muted);font-size:1.0625rem;line-height:1.65;max-width:56ch}

.lv-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:clamp(32px,4vw,52px)}
.lv-tab{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:16px;padding:18px 22px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);transition:background .25s,border-color .25s,transform .25s}
.lv-tab:hover{border-color:var(--accent);transform:translateY(-2px)}
.lv-tab:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.lv-tab b{display:block;font:800 1.25rem/1.15 var(--font-head);color:var(--ink);letter-spacing:-.015em}
.lv-tab small{display:block;margin-top:4px;font-size:.875rem;color:var(--muted)}
.lv-meter{display:inline-flex;align-items:flex-end;gap:3px;flex:none}
.lv-meter i{display:block;width:8px;border-radius:2px;background:var(--shade-strong)}
.lv-meter i:nth-child(1){height:10px}.lv-meter i:nth-child(2){height:18px}.lv-meter i:nth-child(3){height:26px}
.lv-meter i.on{background:var(--accent)}
.lv-tab[aria-selected="true"]{background:var(--btn-bg);border-color:var(--btn-bg);transform:none}
.lv-tab[aria-selected="true"] b,.lv-tab[aria-selected="true"] small{color:var(--btn-fg)}
.lv-tab[aria-selected="true"] .lv-meter i{background:rgba(20,14,0,.28)}
.lv-tab[aria-selected="true"] .lv-meter i.on{background:#140E00}

.lv-stage{--ink:#fff;--text:#F5F2EB;--muted:#BDB296;--accent-text:#F5C04F;--accent:#F2B632;--gain:#1FD18B;--btn-bg:#F2B632;--btn-fg:#140E00;--line:rgba(245,192,79,.24);--shade:rgba(245,192,79,.08);
  position:relative;isolation:isolate;overflow:hidden;margin-top:14px;padding:clamp(24px,4vw,52px);border:1px solid var(--line);border-radius:32px;background:radial-gradient(60% 80% at 100% 0%,rgba(245,192,79,.18),transparent 65%),radial-gradient(40% 50% at 0% 100%,rgba(31,209,139,.09),transparent 70%),#0E0D0A;color:var(--text);box-shadow:var(--shadow)}
.lv-panel{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4.5vw,64px);align-items:start;animation:lvIn .45s ease both}
.lv--js .lv-panel[hidden]{display:none}
@keyframes lvIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.lv-lvl{margin:0;font-size:.9375rem;font-weight:700;color:var(--accent-text)}
.lv-panel h3{margin:6px 0 0;font:800 clamp(2.2rem,4.2vw,3.5rem)/1.02 var(--font-head);letter-spacing:-.035em;color:var(--ink)}
.lv-tag{margin:12px 0 0;max-width:34ch;font-size:1.125rem;line-height:1.45;color:var(--text)}
.lv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:26px 0 0;padding:0;list-style:none}
.lv-stats li{padding:14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.lv-stats b{display:block;font:800 1.5rem/1.1 var(--font-head);color:#fff}
.lv-stats span{font-size:.8125rem;color:var(--muted)}
.lv-learn{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:10px}
.lv-learn li{display:flex;gap:10px;align-items:flex-start;font-size:.9688rem;line-height:1.45}
.lv-learn i{flex:none;margin-top:3px;color:var(--gain);font-size:.875rem}
.lv-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

.lv-list__h{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 14px;font-size:.875rem;color:var(--muted)}
.lv-list__h b{font:800 1.0625rem/1 var(--font-head);color:#fff}
.lv-rows{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lv-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;align-items:center;padding:18px 20px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:rgba(255,255,255,.035);text-decoration:none;color:inherit;transition:border-color .25s,background .25s,transform .25s}
.lv-row:hover{border-color:var(--accent);background:var(--shade);transform:translateX(4px)}
[dir="rtl"] .lv-row:hover{transform:translateX(-4px)}
.lv-row:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.lv-row h4{margin:0;font:700 1.1875rem/1.25 var(--font-head);color:#fff}
.lv-row p{margin:5px 0 0;font-size:.875rem;line-height:1.5;color:var(--muted)}
.lv-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding:0;list-style:none}
.lv-meta li{padding:3px 10px;border-radius:999px;background:var(--shade);font-size:.75rem;font-weight:600;color:var(--accent-text)}
.lv-price{text-align:end}
.lv-price b{display:block;font:800 1.625rem/1.1 var(--font-head);color:#fff}
.lv-price small{font-size:.75rem;color:var(--muted)}
.lv-help{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:22px;padding:18px 24px;border:1px dashed var(--line);border-radius:20px;background:var(--shade)}
.lv-help p{margin:0;color:var(--text)}.lv-help b{color:var(--ink)}

@media (max-width:900px){.lv-panel{grid-template-columns:1fr}}
@media (max-width:640px){
  .lv-tabs{gap:6px}.lv-tab{justify-content:center;padding:14px 8px;text-align:center}.lv-tab .lv-meter,.lv-tab small{display:none}.lv-tab b{font-size:.9375rem}
  .lv-stage{border-radius:24px}.lv-row{grid-template-columns:1fr}.lv-price{text-align:start;display:flex;align-items:baseline;gap:8px}
  .lv-cta .btn,.lv-help .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.lv-panel{animation:none}.lv-tab,.lv-row{transition:none}.lv-tab:hover,.lv-row:hover{transform:none}}

/* active tab is gold in both light and dark themes */
.lv-tab[aria-selected="true"]{background:#F2B632;border-color:#F2B632}
.lv-tab[aria-selected="true"] b,.lv-tab[aria-selected="true"] small{color:#140E00}


/* ==================== MERGED FROM courses.css ==================== */

/* ===== TradeWise Academy: Courses page (sections 1 to 3) ===== */
/* Level colours are used the same way everywhere: Beginner = green, Intermediate = violet, Advanced = gold */
.tc-b { --c: var(--gain); } .tc-i { --c: var(--violet); } .tc-a { --c: var(--gold); }
.tc-hero, .tc-road, .tc-lv { scroll-margin-top: calc(var(--h) - 1px); }

/* ---------- 1. HERO ---------- */
.tc-hero { --ink: #fff; --text: #F5F2EB; --muted: #E5D4A7; --line: rgba(245,202,93,.34); --shade: rgba(245,202,93,.14);
  --btn-bg: #F2B632; --btn-fg: #140E00; --gain: #1FD18B; --gold: #FFC83D; --loss: #FF4D4F; --violet: #F5CA5D; --accent-text: #F5C04F;
  position: relative; isolation: isolate; overflow: hidden; color: var(--text); background: #0B0A07; }
.tc-hero::before { content: ""; position: absolute; inset: 0; z-index: -1;
  background: radial-gradient(50% 60% at 82% 45%, rgba(245,202,93,.38), transparent 70%), radial-gradient(36% 46% at 0 100%, rgba(31,209,139,.12), transparent 70%); }
.tc-tape { direction: ltr; overflow: hidden; border-bottom: 1px solid var(--line); background: rgba(245,202,93,.07); }
.tc-tape__track { display: flex; width: max-content; animation: tcTape 46s linear infinite; }
.tc-tape span { padding: 11px 22px; font-size: .8125rem; font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; color: #EEE2C4; }
.tc-tape b { color: #fff; margin-inline-end: 8px; } .tc-tape .up { color: var(--gain); } .tc-tape .dn { color: var(--loss); }
.tc-hero__grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: clamp(28px, 5vw, 72px); align-items: center; padding-block: clamp(36px, 6vw, 84px); }
.tc-hero__title { font-size: clamp(2.6rem, 5.4vw, 4.9rem); font-weight: 800; line-height: .98; letter-spacing: -.045em; color: #fff; text-wrap: balance; }
.tc-ln { display: block; overflow: hidden; padding-bottom: .1em; margin-bottom: -.1em; }
.tc-ln > span { display: block; transform: translateY(110%); animation: tcLn 1s cubic-bezier(.2,.8,.2,1) forwards; animation-delay: calc(.1s + var(--n) * .14s); }
.tc-hero__lead { max-width: 480px; margin: 22px 0 0; font-size: 1.0625rem; color: var(--muted); }
.tc-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.tc-hero .btn--ghost { color: #fff; border-color: var(--line); }
.tc-jump { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 34px; }
.tc-jump a { display: block; padding: 11px 14px; border-radius: 12px; text-decoration: none; background: var(--shade); border: 1px solid var(--line); border-inline-start: 4px solid var(--c); transition: transform .25s, background .25s; }
.tc-jump a:hover, .tc-jump a:focus-visible { transform: translateY(-3px); background: rgba(245,202,93,.26); }
.tc-jump b { display: block; color: #fff; font-size: .9375rem; } .tc-jump small { color: var(--muted); font-size: .75rem; }
.tc-stats { display: flex; flex-wrap: wrap; gap: 14px 36px; margin: 34px 0 0; padding-top: 22px; border-top: 1px solid var(--line); }
.tc-stats div { min-width: 0; } .tc-stats dt { font: 800 clamp(1.5rem, 2.6vw, 2rem)/1 var(--font-head); color: #fff; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.tc-stats dd { margin: 4px 0 0; font-size: .8125rem; color: var(--muted); }

.tc-chart { direction: ltr; padding: clamp(14px, 2vw, 22px); border-radius: 30px 30px 30px 110px; background: rgba(26,24,19,.72); border: 1px solid var(--line); box-shadow: 0 40px 90px rgba(0,0,0,.55), 0 0 90px rgba(245,202,93,.26); }
.tc-chart__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; padding: 4px 6px 12px; }
.tc-chart__head p { margin: 0; font-size: .8125rem; color: var(--muted); } .tc-chart__head b { display: block; font: 800 1.6rem/1.1 var(--font-head); color: #fff; font-variant-numeric: tabular-nums; }
.tc-chart__head em { font-style: normal; font-weight: 700; color: var(--gain); font-size: .875rem; }
.tc-plot { position: relative; aspect-ratio: 600 / 340; }
.tc-plot svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.tc-grid line { stroke: rgba(255,255,255,.07); stroke-width: 1; }
.tc-cd { transform-box: fill-box; transform-origin: 50% 100%; transform: scaleY(0); animation: tcUp .55s cubic-bezier(.2,.8,.2,1) forwards; animation-delay: calc(.45s + var(--i) * 55ms); }
.tc-cd.up { fill: var(--gain); stroke: var(--gain); } .tc-cd.dn { fill: var(--loss); stroke: var(--loss); } .tc-cd line { stroke: inherit; stroke-width: 1.6; }
.tc-trend { fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 1; filter: drop-shadow(0 0 6px rgba(255,255,255,.55)); animation: tcDraw 2s 1s cubic-bezier(.3,.7,.2,1) forwards; }
.tc-pin { position: absolute; left: var(--x); top: var(--y); z-index: 2; transform: translate(-50%, calc(-100% - 14px)); padding: 5px 11px; border-radius: 999px; font-size: .75rem; font-weight: 700; white-space: nowrap; color: #0B0A07; background: var(--c); opacity: 0; animation: tcPin .6s forwards; animation-delay: var(--d); }
.tc-pin::after { content: ""; position: absolute; left: 50%; top: calc(100% + 4px); width: 10px; height: 10px; margin-left: -5px; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 4px rgba(255,255,255,.14); }
.tc-pin--end { transform: translate(-82%, calc(-100% - 14px)); } .tc-pin--end::after { left: 82%; }
.tc-chart__note { margin: 10px 6px 0; font-size: .75rem; color: var(--muted); }

/* ---------- 2. ROADMAP ---------- */
.tc-road { padding-block: clamp(64px, 8vw, 112px); background: var(--bg); }
.tc-head { max-width: 720px; margin-bottom: clamp(28px, 4vw, 48px); }
.tc-road__wrap { --p: 0; position: relative; }
.tc-curve { position: relative; direction: ltr; aspect-ratio: 1000 / 300; width: 100%; margin-bottom: 0;
  background: linear-gradient(var(--line) 1px, transparent 1px) 0 0 / 100% 25%; border-bottom: 1px solid var(--line); }
.tc-curve svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.tc-curve__base { fill: none; stroke: var(--line); stroke-width: 3; }
.tc-curve__line { fill: none; stroke: var(--accent-text); stroke-width: 4; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--p)); }
.tc-node { position: absolute; left: var(--x); top: var(--y); bottom: 0; width: 0; border-inline-start: 1px dashed var(--line); }
.tc-node::before { content: ""; position: absolute; left: -9px; top: -9px; width: 18px; height: 18px; border-radius: 50%; background: var(--surface); border: 3px solid var(--c); transition: background .4s, box-shadow .4s; }
.tc-node.on::before { background: var(--c); box-shadow: 0 0 0 6px color-mix(in srgb, var(--c) 28%, transparent); }
.tc-node span { position: absolute; left: 0; top: -38px; transform: translateX(-50%); font-size: .8125rem; font-weight: 700; color: var(--ink); white-space: nowrap; }
.tc-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 22px; }
.tc-step { display: flex; flex-direction: column; padding: 24px; border-radius: 20px; background: var(--surface); border: 1px solid var(--line); border-top: 4px solid var(--c); transition: opacity .5s, transform .5s; }
.tc-js .tc-step:not(.on) { opacity: .45; transform: translateY(10px); }
.tc-step h3 { font-size: 1.5rem; letter-spacing: -.02em; } .tc-step > p { margin: 8px 0 0; color: var(--muted); font-size: .9375rem; }
.tc-facts { margin: 18px 0 22px; display: grid; gap: 12px; }
.tc-facts div { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 10px; font-size: .875rem; }
.tc-facts dt { color: var(--muted); } .tc-facts dd { margin: 0; color: var(--text); font-weight: 600; }
.tc-step .btn { margin-top: auto; align-self: flex-start; }

/* ---------- 3. BEGINNER ---------- */
.tc-lv { padding-block: clamp(64px, 8vw, 112px); }
.tc-lv--b { background: var(--shade); }
.tc-lvhead { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 28px 48px; align-items: end; margin-bottom: clamp(28px, 4vw, 44px); }
.tc-lvtag { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 14px; font-weight: 700; font-size: .9375rem; color: var(--ink); }
.tc-lvtag i { width: 12px; height: 12px; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 5px color-mix(in srgb, var(--c) 25%, transparent); }
.tc-glance { display: flex; margin: 0; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); overflow: hidden; }
.tc-glance div { padding: 14px 22px; text-align: center; } .tc-glance div + div { border-inline-start: 1px solid var(--line); }
.tc-glance dt { font: 800 1.5rem/1 var(--font-head); color: var(--ink); } .tc-glance dd { margin: 5px 0 0; font-size: .75rem; color: var(--muted); }
.tc-bgrid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 20px; }
.tc-course { position: relative; display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; background: var(--surface); border: 1px solid var(--line); transition: transform .3s, border-color .3s, box-shadow .3s; }
.tc-course:hover, .tc-course:focus-within { transform: translateY(-4px); border-color: var(--c); box-shadow: var(--shadow); }
.tc-course--feat { grid-row: 1 / 3; }
.tc-media { position: relative; flex: none; background: linear-gradient(145deg, #413B2E, #171511); }
.tc-media img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 16 / 10; }
.tc-course--feat .tc-media img { aspect-ratio: 16 / 11; }
.tc-badge { position: absolute; top: 14px; inset-inline-start: 14px; padding: 6px 12px; border-radius: 999px; font-size: .75rem; font-weight: 800; background: var(--gold); color: #1a1100; }
.tc-hint { display: none; }
.tc-body { display: flex; flex-direction: column; flex: 1; padding: 22px 24px 24px; }
.tc-meta { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0 0 10px; font-size: .8125rem; color: var(--muted); } .tc-meta i { margin-inline-end: 6px; color: var(--accent-text); }
.tc-course h3 { font-size: 1.25rem; letter-spacing: -.02em; } .tc-course--feat h3 { font-size: clamp(1.5rem, 2.4vw, 1.9rem); }
.tc-course p.tc-desc { margin: 10px 0 0; color: var(--muted); font-size: .9375rem; }
.tc-learn { margin: 18px 0 0; padding: 16px 0 0; border-top: 1px solid var(--line); }
.tc-learn h4 { margin: 0 0 10px; font: 700 .875rem/1.2 var(--font-body); color: var(--ink); }
.tc-learn li { position: relative; padding-inline-start: 24px; margin-top: 8px; font-size: .875rem; color: var(--text); }
.tc-learn li::before { content: "\f00c"; font: 900 .6rem/18px "Font Awesome 6 Free"; position: absolute; inset-inline-start: 0; top: 2px; width: 18px; height: 18px; text-align: center; border-radius: 50%; background: color-mix(in srgb, var(--gain) 22%, transparent); color: var(--accent-text); }
.tc-foot { position: relative; z-index: 3; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: auto; padding-top: 20px; }
.tc-price b { font: 800 1.5rem/1 var(--font-head); color: var(--ink); } .tc-price span { margin-inline-start: 6px; font-size: .75rem; color: var(--muted); }
.tc-lvend { display: flex; justify-content: space-between; align-items: center; gap: 16px 28px; flex-wrap: wrap; margin-top: 28px; padding: 18px 24px; border-radius: 18px; border: 1px dashed var(--line); }
.tc-lvend p { margin: 0; max-width: 680px; font-size: .9375rem; color: var(--muted); } .tc-lvend b { color: var(--ink); }
.tc-disc { margin: 22px 0 0; font-size: .8125rem; color: var(--muted); }

/* hover devices: the learning list becomes an overlay, so cards never change height */
@media (hover: hover) and (min-width: 700px) {
  .tc-learn { position: absolute; inset: 0; z-index: 2; margin: 0; padding: 26px 26px 96px; border: 0; background: color-mix(in srgb, var(--surface) 95%, #000); opacity: 0; visibility: hidden; transform: translateY(14px); transition: opacity .3s, transform .3s, visibility .3s; }
  .tc-course:hover .tc-learn, .tc-course:focus-within .tc-learn { opacity: 1; visibility: visible; transform: none; }
  .tc-hint { display: inline-flex; gap: 8px; align-items: center; position: absolute; inset-inline-end: 14px; bottom: 14px; padding: 6px 12px; border-radius: 999px; font-size: .75rem; font-weight: 700; color: #fff; background: rgba(15,14,11,.72); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); transition: opacity .3s; }
  .tc-course:hover .tc-hint { opacity: 0; }
  .tc-course:not(.tc-course--feat) { flex-direction: row; } .tc-course:not(.tc-course--feat) .tc-media { width: 36%; } .tc-course:not(.tc-course--feat) .tc-media img { aspect-ratio: auto; }
}

/* ---------- keyframes ---------- */
@keyframes tcTape { to { transform: translateX(-50%); } }
@keyframes tcLn { to { transform: none; } }
@keyframes tcUp { to { transform: scaleY(1); } }
@keyframes tcDraw { to { stroke-dashoffset: 0; } }
@keyframes tcPin { from { opacity: 0; margin-top: 10px; } to { opacity: 1; margin-top: 0; } }

/* ---------- responsive ---------- */
@media (max-width: 960px) {
  .tc-hero__grid { grid-template-columns: 1fr; } .tc-chart { max-width: 640px; }
  .tc-lvhead { grid-template-columns: 1fr; } .tc-glance { justify-self: start; }
  .tc-bgrid { grid-template-columns: 1fr; } .tc-course--feat { grid-row: auto; }
}
@media (max-width: 860px) {
  .tc-curve { display: none; }
  .tc-steps { grid-template-columns: 1fr; position: relative; margin-top: 0; padding-inline-start: 30px; }
  .tc-steps::before, .tc-steps::after { content: ""; position: absolute; inset-inline-start: 7px; top: 8px; bottom: 8px; width: 3px; border-radius: 3px; background: var(--line); }
  .tc-steps::after { background: var(--accent-text); transform-origin: top; transform: scaleY(var(--p)); }
  .tc-step::before { content: ""; position: absolute; inset-inline-start: -30px; top: 26px; width: 17px; height: 17px; border-radius: 50%; background: var(--surface); border: 3px solid var(--c); z-index: 1; }
  .tc-step { position: relative; } .tc-step.on::before { background: var(--c); }
}
@media (max-width: 560px) {
  .tc-jump { grid-template-columns: 1fr; } .tc-tape span { padding-block: 9px; }
  .tc-glance { width: 100%; } .tc-glance div { flex: 1; padding-inline: 10px; }
  .tc-chart { border-radius: 22px 22px 22px 60px; } .tc-pin { font-size: .6875rem; padding: 4px 8px; }
  .tc-facts div { grid-template-columns: 1fr; gap: 2px; }
}
[dir="rtl"] .tc-hero__grid, [dir="rtl"] .tc-road, [dir="rtl"] .tc-lv { text-align: start; }
@media (prefers-reduced-motion: reduce) {
  .tc-tape__track, .tc-ln > span, .tc-cd, .tc-trend, .tc-pin { animation: none !important; transform: none !important; opacity: 1 !important; stroke-dashoffset: 0 !important; }
  .tc-step { transition: none; }
}


/* ==================== MERGED FROM courses-hero.css ==================== */

/* ===== Courses page: HERO only ===== */
.th { --ink:#fff; --text:#F5F2EB; --muted:#E5D4A7; --line:rgba(245,202,93,.34); --btn-bg:#1FD18B; --btn-fg:#06140E;
  --gain:#1FD18B; --gold:#FFC83D; --violet:#F8DA8D; --loss:#FF4D4F; --accent-text:#4DE3A8;
  position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; min-height:calc(100svh - var(--h)); color:var(--text); background:#0B0A07; }
.th-b { --c:var(--gain); } .th-i { --c:var(--violet); } .th-a { --c:var(--gold); }
.th__bg { position:absolute; inset:0; z-index:-1; pointer-events:none; }
.th__bg i { position:absolute; inset:0; }
.th__bg .g { background:linear-gradient(rgba(245,202,93,.09) 1px,transparent 1px) 0 0/64px 64px, linear-gradient(90deg,rgba(245,202,93,.09) 1px,transparent 1px) 0 0/64px 64px; -webkit-mask-image:radial-gradient(70% 80% at 70% 45%,#000,transparent 75%); mask-image:radial-gradient(70% 80% at 70% 45%,#000,transparent 75%); }
.th__bg .l { background:radial-gradient(45% 60% at 72% 48%,rgba(237,186,58,.42),transparent 70%), radial-gradient(30% 40% at 8% 100%,rgba(31,209,139,.13),transparent 70%); }
.th__main { flex:1; display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:clamp(28px,4.5vw,72px); align-items:center; padding-block:clamp(28px,4vw,56px); }
.th__crumb { display:flex; gap:10px; margin:0 0 24px; font-size:.875rem; color:var(--muted); animation:thFade .8s both; }
.th__crumb a { color:var(--muted); text-decoration:none; } .th__crumb a:hover { color:#fff; } .th__crumb b { color:#fff; font-weight:600; }
.th__title { font-size:clamp(2.8rem,5.8vw,5.6rem); font-weight:800; line-height:.97; letter-spacing:-.05em; color:#fff; }
.th__ln { display:block; overflow:hidden; padding-bottom:.2em; margin-bottom:-.2em; }
.th__ln > span { display:block; transform:translateY(112%); animation:thLn 1.1s cubic-bezier(.2,.8,.2,1) forwards; animation-delay:calc(.1s + var(--n)*.15s); }
.th__ln:last-child > span { background:linear-gradient(90deg,#fff 10%,#4DE3A8 55%,#F8DA8D); -webkit-background-clip:text; background-clip:text; color:transparent; }
.th__lead { max-width:480px; margin:24px 0 0; font-size:1.125rem; color:var(--muted); animation:thFade .9s .55s both; }
.th__cta { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; animation:thFade .9s .7s both; }
.th .btn--ghost { color:#fff; border-color:var(--line); }
.th__proof { display:flex; align-items:center; gap:14px; margin-top:32px; font-size:.875rem; color:var(--muted); animation:thFade .9s .85s both; }
.th__proof p { margin:0; line-height:1.45; } .th__proof b { color:#fff; } .th__proof .fa-star { color:var(--gold); }
.th__av { display:flex; } .th__av span { display:grid; place-items:center; width:38px; height:38px; margin-inline-start:-10px; border-radius:50%; font-size:.6875rem; font-weight:800; color:#fff; border:2px solid #0B0A07; background:linear-gradient(135deg,#EDBA3A,#95731D); }
.th__av span:first-child { margin-inline-start:0; } .th__av span:nth-child(2) { background:linear-gradient(135deg,#059669,#064E3B); } .th__av span:nth-child(3) { background:linear-gradient(135deg,#D97706,#78350F); } .th__av span:nth-child(4) { background:linear-gradient(135deg,#DC2626,#7F1D1D); }
.th__stats { display:flex; flex-wrap:wrap; gap:14px 40px; margin:30px 0 0; padding-top:24px; border-top:1px solid var(--line); animation:thFade .9s 1s both; }
.th__stats dt { font:800 clamp(1.6rem,2.8vw,2.2rem)/1 var(--font-head); color:#fff; letter-spacing:-.03em; font-variant-numeric:tabular-nums; } .th__stats dd { margin:5px 0 0; font-size:.8125rem; color:var(--muted); }

/* visual: three photo cards climbing like stairs */
.th__vis { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; align-items:end; height:clamp(440px,42vw,610px); }
.th-slot { height:var(--h2); transform:translate3d(calc(var(--mx,0) * var(--d) * 16px), calc(var(--my,0) * var(--d) * 12px), 0); transition:transform .4s cubic-bezier(.2,.7,.2,1); }
.th-slot:nth-child(1) { --h2:60%; --d:.6; } .th-slot:nth-child(2) { --h2:79%; --d:1; } .th-slot:nth-child(3) { --h2:98%; --d:1.5; }
.th-card { position:relative; display:flex; flex-direction:column; justify-content:flex-end; height:100%; border-radius:26px; overflow:hidden; text-decoration:none; color:#fff; background:linear-gradient(150deg,#413B2E,#171511); border:1px solid var(--line);
  box-shadow:0 30px 70px rgba(0,0,0,.55); opacity:0; transform:translateY(70px); animation:thRise 1s cubic-bezier(.2,.8,.2,1) forwards; animation-delay:calc(.5s + var(--n)*.16s); transition:box-shadow .35s, border-color .35s; }
.th-card:hover, .th-card:focus-visible { border-color:var(--c); box-shadow:0 30px 70px rgba(0,0,0,.55), 0 0 50px color-mix(in srgb,var(--c) 40%,transparent); }
.th-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 1.2s cubic-bezier(.2,.7,.2,1); } .th-card:hover img { transform:scale(1.08); }
.th-card::before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(0deg,rgba(11,10,7,.96) 0%,rgba(11,10,7,.55) 45%,rgba(11,10,7,.05) 80%); }
.th-card::after { content:""; position:absolute; z-index:2; inset-inline:0; top:0; height:4px; background:var(--c); }
.th-card__in { position:relative; z-index:2; padding:18px; }
.th-card small { display:block; font-size:.75rem; font-weight:700; color:var(--c); } .th-card strong { display:block; margin-top:3px; font:800 clamp(1rem,1.55vw,1.4rem)/1.05 var(--font-head); letter-spacing:-.03em; }
.th-card p { margin:8px 0 0; font-size:.8125rem; color:#EEE2C4; }
.th-lv { display:flex; align-items:center; gap:5px; margin-top:12px; } .th-lv i { width:22px; height:5px; border-radius:3px; background:rgba(255,255,255,.2); } .th-lv i.on { background:var(--c); box-shadow:0 0 10px var(--c); }
.th-go { position:absolute; z-index:2; top:18px; inset-inline-end:16px; display:grid; place-items:center; width:34px; height:34px; border-radius:50%; font-size:.75rem; background:rgba(15,14,11,.6); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); transition:background .3s, color .3s; } .th-card:hover .th-go { background:var(--c); color:#0B0A07; }
.th-chip { position:absolute; z-index:4; padding:12px 16px; border-radius:18px; font-size:.8125rem; line-height:1.35; background:rgba(26,24,19,.78); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); border:1px solid rgba(255,255,255,.16); box-shadow:0 20px 44px rgba(0,0,0,.45); opacity:0; animation:thPop .7s 1.5s forwards, thBob 6s 2.2s ease-in-out infinite; }
.th-chip--live { top:2%; inset-inline-start:0; display:flex; align-items:center; gap:12px; } .th-chip b { display:block; color:#fff; } .th-chip small { color:var(--muted); }
.th-dot { width:10px; height:10px; border-radius:50%; background:var(--loss); box-shadow:0 0 0 5px rgba(255,77,79,.22); animation:thPulse 1.8s infinite; }
.th-chip--pf { top:16%; inset-inline-start:34%; animation-delay:1.7s, 2.4s; } .th-chip--pf b { font:800 1.4rem/1.1 var(--font-head); font-variant-numeric:tabular-nums; } .th-chip--pf em { font-style:normal; font-weight:700; color:var(--gain); }
.th-chip svg { display:block; margin-top:6px; } .th-spark { stroke-dasharray:1; stroke-dashoffset:1; animation:thDraw 2s 1.9s cubic-bezier(.3,.7,.2,1) forwards; }
.th__tape { direction:ltr; overflow:hidden; border-top:1px solid var(--line); background:rgba(11,10,7,.7); }
.th__tape div { display:flex; width:max-content; animation:thTape 46s linear infinite; }
.th__tape span { padding:11px 22px; font-size:.8125rem; font-weight:600; white-space:nowrap; color:#EEE2C4; font-variant-numeric:tabular-nums; } .th__tape b { color:#fff; margin-inline-end:8px; } .th__tape .up { color:var(--gain); font-style:normal; } .th__tape .dn { color:var(--loss); font-style:normal; }
@keyframes thLn { to { transform:none; } } @keyframes thFade { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:none; } }
@keyframes thRise { to { opacity:1; transform:none; } } @keyframes thPop { from { opacity:0; transform:scale(.9) translateY(10px); } to { opacity:1; transform:none; } }
@keyframes thBob { 50% { translate:0 -8px; } } @keyframes thDraw { to { stroke-dashoffset:0; } } @keyframes thPulse { 50% { box-shadow:0 0 0 9px rgba(255,77,79,0); } } @keyframes thTape { to { transform:translateX(-50%); } }
@media (max-width:960px) { .th__main { grid-template-columns:1fr; } .th__vis { height:clamp(340px,70vw,460px); max-width:640px; } }
@media (max-width:560px) { .th__vis { gap:8px; height:340px; } .th-card { border-radius:18px; } .th-card__in { padding:12px 10px; } .th-card p, .th-go { display:none; } .th-card strong { font-size:.95rem; } .th-lv i { width:14px; }
  .th-chip--pf { display:none; } .th-chip--live { top:0; padding:9px 12px; } .th__title { font-size:2.7rem; } }
@media (prefers-reduced-motion:reduce) { .th *, .th *::before { animation:none !important; } .th__ln > span, .th-card, .th-chip, .th__lead, .th__cta, .th__proof, .th__stats, .th__crumb { opacity:1 !important; transform:none !important; } .th-spark { stroke-dashoffset:0; } .th-slot { transform:none; } }


/* ==================== MERGED FROM courses-sections.css ==================== */

/* ===== Courses page: clean light sections with gold accents ===== */
.cs { --ink:#14100A; --mut:#6A604A; --gold:#C58A0A; --gold2:#F2B632; --ln:rgba(20,16,10,.1); --btn-bg:#14100A; --btn-fg:#F2B632;
  position:relative; padding-block:clamp(64px,8vw,104px); color:var(--ink); overflow:clip; }
.cs--w { background:#fff; } .cs--c { background:#FAF7EE; }
.cs__tag { display:inline-flex; align-items:center; gap:10px; font-weight:700; font-size:.9375rem; color:var(--gold); }
.cs-lv { display:inline-flex; gap:4px; } .cs-lv i { width:18px; height:5px; border-radius:3px; background:currentColor; opacity:.22; } .cs-lv i.on { opacity:1; }
.cs__h { margin:12px 0 0; font:800 clamp(2.1rem,4.4vw,3.6rem)/1.02 var(--font-head); letter-spacing:-.045em; color:var(--ink); }
.cs__h .ln { display:block; overflow:hidden; padding-bottom:.16em; margin-bottom:-.16em; } .cs__h .ln > span { display:block; }
.cs__p { max-width:540px; margin:16px 0 0; font-size:1.0625rem; color:var(--mut); }
.cs-js .cs__h .ln > span { transform:translateY(112%); transition:transform 1.1s cubic-bezier(.2,.8,.2,1) calc(var(--n,0)*.14s); } .cs-js .cs__h.in .ln > span { transform:none; }
.cs-js .cs-rv { opacity:0; transform:translateY(34px); transition:opacity .8s ease calc(var(--n,0)*.13s), transform .9s cubic-bezier(.2,.8,.2,1) calc(var(--n,0)*.13s); } .cs-js .cs-rv.in { opacity:1; transform:none; }
.cs-lh { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; flex-wrap:wrap; margin-bottom:clamp(32px,4.5vw,52px); }
.cs-stats { display:flex; gap:clamp(20px,3.5vw,44px); margin:0; padding:0; } .cs-stats dt { font:800 1.9rem/1 var(--font-head); letter-spacing:-.03em; } .cs-stats dd { margin:6px 0 0; font-size:.8125rem; color:var(--mut); }
.cs-stats div { padding-inline-start:16px; border-inline-start:3px solid var(--gold2); }

/* roadmap: three steps joined by a gold line */
.cs-path { --p:0; position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(20px,3vw,40px); padding-top:56px; }
.cs-path::before, .cs-path::after { content:""; position:absolute; top:19px; inset-inline:16.66%; height:3px; border-radius:3px; background:var(--ln); }
.cs-path::after { background:linear-gradient(90deg,var(--gold2),var(--gold)); transform-origin:left; transform:scaleX(var(--p)); transition:transform 1s cubic-bezier(.2,.8,.2,1); } [dir="rtl"] .cs-path::after { transform-origin:right; }
.cs-pt { position:relative; } .cs-node { position:absolute; top:-56px; inset-inline-start:50%; width:40px; height:40px; margin-inline-start:-20px; display:grid; place-items:center; border-radius:50%; background:#fff; border:3px solid var(--ln); font:800 1rem var(--font-head); color:var(--mut); transition:all .5s; z-index:2; }
.cs-pt.on .cs-node { background:var(--gold2); border-color:var(--gold2); color:var(--ink); box-shadow:0 0 0 8px rgba(242,182,50,.22); }
.cs-pt__img { aspect-ratio:4/3; border-radius:22px; overflow:hidden; background:linear-gradient(135deg,#eadfba,#cfae55); } .cs-pt__img img { width:100%; height:100%; object-fit:cover; transform:scale(1.14); transition:transform 1.8s cubic-bezier(.2,.7,.2,1); } .cs-pt.on img { transform:scale(1); }
.cs-pt h3 { margin:20px 0 0; font:800 1.75rem/1.1 var(--font-head); letter-spacing:-.035em; } .cs-pt h3 small { display:block; margin-bottom:6px; font:700 .875rem var(--font-body); letter-spacing:0; color:var(--gold); }
.cs-pt p { margin:10px 0 0; color:var(--mut); } .cs-pt ul { margin:14px 0 0; padding:0; list-style:none; display:grid; gap:8px; font-size:.9375rem; } .cs-pt li i, .cs-learn li i { color:var(--gold); margin-inline-end:10px; font-size:.8125rem; }
.cs-pt__f { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:20px; padding-top:18px; border-top:1px solid var(--ln); } .cs-pt__f b { font:800 1.25rem var(--font-head); } .cs-pt__f small { display:block; color:var(--mut); font-size:.75rem; }
.cs-link { font-weight:700; color:var(--ink); text-decoration:none; border-bottom:2px solid var(--gold2); padding-bottom:2px; transition:color .3s, border-color .3s; } .cs-link:hover { color:var(--gold); }

/* shared bits */
.cs-rate { display:flex; align-items:center; gap:6px; font-size:.8125rem; color:var(--mut); } .cs-rate i { color:var(--gold2); }
.cs-badge { position:absolute; inset:14px auto auto 14px; padding:6px 13px; border-radius:99px; background:var(--gold2); color:var(--ink); font-size:.8125rem; font-weight:800; }
.cs-facts { display:flex; flex-wrap:wrap; gap:10px 26px; margin:18px 0 0; } .cs-facts div { display:flex; align-items:center; gap:10px; } .cs-facts i { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:rgba(242,182,50,.2); color:var(--gold); font-size:.875rem; } .cs-facts b { display:block; font-size:.9375rem; line-height:1.2; } .cs-facts small { font-size:.75rem; color:var(--mut); }
.cs-learn { list-style:none; margin:0; padding:0; display:grid; gap:9px; font-size:.9375rem; } .cs-sub { margin:0 0 12px; font:700 .8125rem var(--font-body); color:var(--gold); text-transform:none; }
.cs-sched { display:inline-flex; align-items:center; gap:8px; margin:16px 0 0; padding:9px 14px; border-radius:12px; background:rgba(242,182,50,.16); font-size:.8125rem; } .cs-sched i { color:var(--gold); }
.cs-price { font:800 2.2rem/1 var(--font-head); letter-spacing:-.03em; } .cs-price small { display:block; margin-bottom:4px; font:500 .75rem var(--font-body); letter-spacing:0; color:var(--mut); }
.cs-demo { display:inline-block; margin-top:12px; font-size:.875rem; }
.cs-included { display:flex; flex-wrap:wrap; gap:12px 32px; margin-top:28px; padding:18px 24px; border-radius:18px; background:var(--ink); color:#fff; font-size:.9375rem; } .cs-included span i { color:var(--gold2); margin-inline-end:8px; }

/* BEGINNER: tabs + one big showcase panel */
.cs-tabs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:22px; }
.cs-tab { display:flex; align-items:center; gap:12px; padding:12px 20px 12px 12px; border:1px solid var(--ln); border-radius:99px; background:#fff; color:var(--ink); font:inherit; font-weight:700; cursor:pointer; transition:all .35s; }
.cs-tab em { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#FAF7EE; font:800 .875rem var(--font-head); font-style:normal; transition:all .35s; } .cs-tab small { font-weight:500; color:var(--mut); }
.cs-tab:hover { border-color:var(--gold2); transform:translateY(-2px); } .cs-tab.on { background:var(--ink); color:#fff; border-color:var(--ink); } .cs-tab.on em { background:var(--gold2); color:var(--ink); } .cs-tab.on small { color:#E5D4A7; }
.cs-tab:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.cs-show { display:grid; }
.cs-sp { grid-area:1/1; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); background:#fff; border:1px solid var(--ln); border-radius:30px; overflow:hidden; box-shadow:0 40px 70px -46px rgba(20,16,10,.5); opacity:0; visibility:hidden; transform:translateY(20px); transition:opacity .55s, transform .7s cubic-bezier(.2,.8,.2,1), visibility 0s .55s; }
.cs-sp.on { opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.cs-sp__img { position:relative; min-height:480px; overflow:hidden; background:linear-gradient(135deg,#eadfba,#cfae55); } .cs-sp__img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform:scale(1.14); transition:transform 2s cubic-bezier(.2,.7,.2,1); } .cs-sp.on .cs-sp__img img { transform:scale(1); }
.cs-sp__img::after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 55%,rgba(20,16,10,.7)); } .cs-sp__img .cs-rate { position:absolute; z-index:2; inset:auto auto 20px 20px; color:#fff; padding:8px 14px; border-radius:99px; background:rgba(20,16,10,.7); }
.cs-sp__b { padding:clamp(24px,3.4vw,44px); } .cs-sp__b h3 { margin:0; font:800 clamp(1.8rem,3vw,2.5rem)/1.05 var(--font-head); letter-spacing:-.04em; } .cs-sp__d { margin:12px 0 0; color:var(--mut); max-width:520px; }
.cs-cols { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:28px; margin-top:24px; padding-top:22px; border-top:1px solid var(--ln); }
.cs-learn li i, .cs-syl li::before { color:var(--gold); } .cs-learn li i { margin-inline-end:10px; font-size:.8125rem; }
.cs-syl { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:10px 16px; counter-reset:m; font-size:.875rem; } .cs-syl li { display:flex; align-items:center; gap:10px; counter-increment:m; color:var(--mut); } .cs-syl li::before { content:counter(m); flex:none; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:rgba(242,182,50,.22); font-weight:800; font-size:.75rem; }
.cs-buy { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-top:26px; padding-top:22px; border-top:1px solid var(--ln); } .cs-buy .cs-demo { margin:0; }

/* INTERMEDIATE: wide rows */
.cs-rows { display:grid; gap:22px; }
.cs-wr { display:grid; grid-template-columns:300px minmax(0,1fr) 240px; background:#FAF7EE; border:1px solid var(--ln); border-radius:26px; overflow:hidden; transition:transform .5s cubic-bezier(.2,.7,.2,1), box-shadow .5s, border-color .4s; }
.cs-wr:hover { transform:translateY(-6px); border-color:var(--gold2); box-shadow:0 34px 56px -34px rgba(197,138,10,.6); }
.cs-wr__img { position:relative; min-height:300px; overflow:hidden; background:linear-gradient(135deg,#eadfba,#cfae55); } .cs-wr__img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 1.3s cubic-bezier(.2,.7,.2,1); } .cs-wr:hover .cs-wr__img img { transform:scale(1.08); }
.cs-wr__b { padding:26px 28px; } .cs-wr__b h3 { margin:8px 0 0; font:800 1.7rem/1.1 var(--font-head); letter-spacing:-.035em; } .cs-wr__b p { margin:10px 0 0; color:var(--mut); }
.cs-wr__b .cs-facts { margin-top:16px; } .cs-wr__b .cs-learn { margin-top:16px; }
.cs-wr details { margin-top:14px; border-top:1px solid var(--ln); } .cs-wr summary { display:flex; align-items:center; gap:10px; padding:12px 0 0; font-weight:700; cursor:pointer; list-style:none; } .cs-wr summary::-webkit-details-marker { display:none; } .cs-wr summary i { color:var(--gold); transition:transform .4s; } .cs-wr details[open] summary i { transform:rotate(180deg); } .cs-wr summary:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.cs-wr .cs-syl { margin-top:14px; } .cs-wr details[open] .cs-syl { animation:csOpen .5s ease; } @keyframes csOpen { from { opacity:0; transform:translateY(-8px); } }
.cs-wr__s { display:flex; flex-direction:column; justify-content:center; padding:26px; background:#fff; border-inline-start:1px dashed rgba(20,16,10,.2); text-align:center; } .cs-wr__s .btn { width:100%; justify-content:center; margin-top:16px; } .cs-wr__s .cs-sched { margin:14px 0 0; justify-content:center; }

@media (max-width:1023px) { .cs-wr { grid-template-columns:240px minmax(0,1fr); } .cs-wr__s { grid-column:1/-1; flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; border-inline-start:0; border-top:1px dashed rgba(20,16,10,.2); } .cs-wr__s .btn { width:auto; margin:0; } }
@media (max-width:900px) { .cs-sp { grid-template-columns:1fr; } .cs-sp__img { min-height:240px; } .cs-cols { grid-template-columns:1fr; } }
@media (max-width:700px) { .cs-wr { grid-template-columns:1fr; } .cs-wr__img { min-height:200px; } .cs-syl { grid-template-columns:1fr; } .cs-path { grid-template-columns:1fr; padding-top:0; } .cs-path::before, .cs-path::after, .cs-node { display:none; } .cs-tab small { display:none; } }
@media (prefers-reduced-motion:reduce) { .cs *, .cs *::before, .cs *::after { transition-duration:.01ms !important; transition-delay:0s !important; animation:none !important; } .cs-js .cs-rv, .cs-js .cs__h .ln > span { opacity:1; transform:none; } }

/* ADVANCED: side-by-side plans, featured one raised */
.cs-pls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; align-items:stretch; padding-top:20px; }
.cs-pl { position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid var(--ln); border-radius:28px; overflow:hidden; transition:transform .5s cubic-bezier(.2,.7,.2,1), box-shadow .5s, border-color .4s; }
.cs-pl:hover { transform:translateY(-8px); border-color:var(--gold2); box-shadow:0 34px 56px -34px rgba(197,138,10,.6); }
.cs-pl__img { position:relative; height:200px; overflow:hidden; background:linear-gradient(135deg,#eadfba,#cfae55); } .cs-pl__img img { width:100%; height:100%; object-fit:cover; transition:transform 1.3s cubic-bezier(.2,.7,.2,1); } .cs-pl:hover .cs-pl__img img { transform:scale(1.08); }
.cs-pl__img::after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 40%,rgba(20,16,10,.75)); }
.cs-spark { position:absolute; z-index:2; inset:auto 18px 12px 18px; width:calc(100% - 36px); height:48px; } .cs-spark path { fill:none; stroke:var(--gold2); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:1; stroke-dashoffset:1; transition:stroke-dashoffset 2.2s cubic-bezier(.4,0,.2,1) .4s; } .cs-rv.in .cs-spark path { stroke-dashoffset:0; }
.cs-pl__b { display:flex; flex-direction:column; flex:1; padding:24px 26px 28px; }
.cs-pl h3 { margin:8px 0 0; font:800 1.7rem/1.1 var(--font-head); letter-spacing:-.035em; } .cs-pl__d { margin:10px 0 0; color:var(--mut); font-size:.9375rem; }
.cs-pl .cs-price { margin-top:20px; } .cs-pl .cs-facts { margin-top:16px; gap:10px 18px; } .cs-pl .cs-learn { margin-top:18px; padding-top:18px; border-top:1px solid var(--ln); } .cs-pl .cs-sched { margin-top:16px; }
.cs-pl details { margin-top:14px; } .cs-pl summary { display:flex; align-items:center; gap:10px; padding:4px 0; font-weight:700; cursor:pointer; list-style:none; } .cs-pl summary::-webkit-details-marker { display:none; } .cs-pl summary i { color:var(--gold); transition:transform .4s; } .cs-pl details[open] summary i { transform:rotate(180deg); } .cs-pl summary:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.cs-pl .cs-syl { grid-template-columns:1fr; margin-top:12px; } .cs-pl details[open] .cs-syl { animation:csOpen .5s ease; }
.cs-pl__f { margin-top:auto; padding-top:22px; } .cs-pl__f .btn { width:100%; justify-content:center; } .cs-pl__f .cs-demo { display:block; text-align:center; }
.cs-pl--f { --ink:#fff; --mut:#E5D4A7; --ln:rgba(245,202,93,.26); --btn-bg:#F2B632; --btn-fg:#14100A; background:#14100A; color:#fff; border-color:var(--gold2); translate:0 -18px; box-shadow:0 40px 70px -36px rgba(197,138,10,.7); }
.cs-pl--f .cs-price { color:var(--gold2); } .cs-pl--f .cs-link { color:#fff; }
.cs-pl--f::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.14) 50%,transparent 65%); transform:translateX(-120%); animation:csShine 5s ease-in-out 1.5s infinite; } @keyframes csShine { 55%,100% { transform:translateX(120%); } }
.cs-check { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; margin-top:clamp(40px,5vw,64px); padding:clamp(22px,3vw,34px); border:1px dashed rgba(20,16,10,.28); border-radius:24px; background:#fff; }
.cs-check h3 { margin:0; font:800 1.5rem var(--font-head); letter-spacing:-.03em; } .cs-check p { margin:6px 0 0; color:var(--mut); max-width:520px; } .cs-check div:last-child { display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
@media (max-width:1023px) { .cs-pls { grid-template-columns:1fr; max-width:560px; margin-inline:auto; } .cs-pl--f { translate:0 0; order:-1; } }
@media (prefers-reduced-motion:reduce) { .cs-pl--f::after { animation:none; display:none; } .cs-spark path { stroke-dashoffset:0; } }


/* ==================== MERGED FROM courses2.css ==================== */

/* ===== TradeWise Academy: Courses page v2 (hero, pinned climb, stacking Beginner cards) ===== */
.tc-b { --c: var(--gain); } .tc-i { --c: var(--violet); } .tc-a { --c: var(--gold); }
.tc-hero, .tc-climb, .tc-lv { scroll-margin-top: calc(var(--h) - 1px); }
.tc-dark { --ink: #fff; --text: #F5F2EB; --muted: #E5D4A7; --line: rgba(245,202,93,.34); --surface: #1E1C16; --btn-bg: #F2B632; --btn-fg: #140E00;
  --gain: #1FD18B; --gold: #FFC83D; --loss: #FF4D4F; --violet: #F5CA5D; --accent-text: #F5C04F; color: var(--text); background: #0B0A07; }

/* word-by-word headline reveal */
.tc-w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .14em; margin-bottom: -.14em; }
.tc-w > span { display: inline-block; transform: translateY(112%); transition: transform .9s cubic-bezier(.2,.8,.2,1); transition-delay: calc(var(--w) * 70ms + .1s); }
.in .tc-w > span { transform: none; }

/* ================= 1. HERO ================= */
.tc-hero { position: relative; isolation: isolate; display: flex; flex-direction: column; min-height: calc(100svh - var(--h)); overflow: hidden; }
.tc-hero canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; }
.tc-hero::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(90deg, #0B0A07 0%, rgba(11,10,7,.82) 30%, rgba(11,10,7,.1) 70%), linear-gradient(0deg, #0B0A07 0%, transparent 34%); }
.tc-hero > * { position: relative; z-index: 2; } .tc-hero > canvas { position: absolute; z-index: 0; }
.tc-hero__in { flex: 1; display: flex; flex-direction: column; justify-content: center; padding-block: clamp(32px, 5vw, 64px) 12px; }
.tc-live { display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; margin: 0 0 22px; padding: 7px 14px; border-radius: 999px; font-size: .8125rem; font-weight: 600; background: rgba(245,202,93,.16); border: 1px solid var(--line); }
.tc-live i { width: 9px; height: 9px; border-radius: 50%; background: var(--gain); box-shadow: 0 0 0 5px rgba(31,209,139,.2); animation: tcPulse 2s infinite; }
.tc-hero__title { font-size: clamp(3rem, 8.6vw, 8.2rem); font-weight: 800; line-height: .92; letter-spacing: -.055em; color: #fff; max-width: 11ch; }
.tc-ln { display: block; overflow: hidden; padding-bottom: .22em; margin-bottom: -.22em; }
.tc-ln > span { display: block; transform: translateY(112%); animation: tcLn 1.1s cubic-bezier(.2,.8,.2,1) forwards; animation-delay: calc(.15s + var(--n) * .16s); }
.tc-hero__title .tc-ln:last-child > span { background: linear-gradient(90deg, #fff 20%, #4DE3A8 55%, #F8DA8D 90%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.tc-hero__lead { max-width: 470px; margin: 26px 0 0; font-size: 1.125rem; color: var(--muted); animation: tcFade 1s .7s both; }
.tc-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; animation: tcFade 1s .85s both; }
.tc-hero .btn--ghost { color: #fff; border-color: var(--line); }
.tc-stats { display: flex; flex-wrap: wrap; gap: 12px 40px; margin: 32px 0 0; animation: tcFade 1s 1s both; }
.tc-stats dt { font: 800 clamp(1.6rem, 2.8vw, 2.2rem)/1 var(--font-head); color: #fff; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.tc-stats dd { margin: 4px 0 0; font-size: .8125rem; color: var(--muted); }
.tc-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: start; padding-bottom: 26px; }
.tc-tile { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; padding: 16px 18px; border-radius: 22px; text-decoration: none; color: #fff;
  background: rgba(26,24,19,.62); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid var(--line); border-top: 3px solid var(--c);
  opacity: 0; animation: tcRise .9s cubic-bezier(.2,.8,.2,1) forwards; animation-delay: calc(1.1s + var(--n) * .12s); transition: transform .3s, box-shadow .3s; }
.tc-tile:nth-child(1) { margin-top: 48px; } .tc-tile:nth-child(2) { margin-top: 24px; }
.tc-tile:hover, .tc-tile:focus-visible { transform: translateY(-8px); box-shadow: 0 20px 50px color-mix(in srgb, var(--c) 35%, transparent); }
.tc-ring { position: relative; width: 52px; height: 52px; } .tc-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.tc-ring circle { fill: none; stroke-width: 5; } .tc-ring .bg { stroke: rgba(255,255,255,.12); }
.tc-ring .fg { stroke: var(--c); stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; animation: tcDraw 1.4s calc(1.4s + var(--n) * .12s) cubic-bezier(.3,.7,.2,1) forwards; }
.tc-ring b { position: absolute; inset: 0; display: grid; place-items: center; font: 800 1.1rem var(--font-head); }
.tc-tile strong { display: block; font: 800 1.15rem/1.1 var(--font-head); } .tc-tile small { color: var(--muted); font-size: .8125rem; }
.tc-tile > i { color: var(--c); transition: transform .3s; } .tc-tile:hover > i { transform: translateY(4px); }
.tc-tape { direction: ltr; overflow: hidden; border-top: 1px solid var(--line); background: rgba(11,10,7,.7); }
.tc-tape__track { display: flex; width: max-content; animation: tcTape 46s linear infinite; }
.tc-tape span { padding: 11px 22px; font-size: .8125rem; font-weight: 600; white-space: nowrap; color: #EEE2C4; font-variant-numeric: tabular-nums; }
.tc-tape b { color: #fff; margin-inline-end: 8px; } .tc-tape .up { color: var(--gain); font-style: normal; } .tc-tape .dn { color: var(--loss); font-style: normal; }

/* ================= 2. PINNED CLIMB ================= */
.tc-climb { --p: 0; --sc: #1FD18B; }
.tc-climb[data-s="1"] { --sc: #F8DA8D; } .tc-climb[data-s="2"] { --sc: #FFC83D; }
.tc-climb__track { position: relative; height: 340vh; }
.tc-climb__stick { position: sticky; top: var(--h); height: calc(100svh - var(--h)); min-height: 540px; overflow: hidden; display: flex; align-items: center; }
.tc-glow { position: absolute; inset: 0; opacity: 0; transition: opacity .9s; pointer-events: none; }
.tc-glow.g0 { background: radial-gradient(60% 75% at 75% 55%, rgba(31,209,139,.3), transparent 70%); }
.tc-glow.g1 { background: radial-gradient(60% 75% at 75% 55%, rgba(245,202,93,.45), transparent 70%); }
.tc-glow.g2 { background: radial-gradient(60% 75% at 75% 55%, rgba(255,200,61,.3), transparent 70%); }
.tc-climb[data-s="0"] .g0, .tc-climb[data-s="1"] .g1, .tc-climb[data-s="2"] .g2 { opacity: 1; }
.tc-climb__grid { position: relative; display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: clamp(20px, 4vw, 64px); align-items: center; width: min(100% - 2 * var(--pad), var(--wrap)); margin-inline: auto; }
.tc-climb__title { font-size: clamp(1.4rem, 2.5vw, 2.1rem); letter-spacing: -.03em; max-width: 18ch; }
.tc-stagenav { display: flex; gap: 8px; flex-wrap: wrap; margin: 20px 0 clamp(14px, 2.6vh, 30px); }
.tc-stagenav button { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 8px 16px; border-radius: 999px; font: 600 .875rem var(--font-body); color: var(--muted); background: transparent; border: 1px solid var(--line); cursor: pointer; transition: background .3s, color .3s, border-color .3s; }
.tc-stagenav button i { width: 9px; height: 9px; border-radius: 50%; background: var(--c); }
.tc-stagenav button[aria-current="true"] { color: #fff; background: color-mix(in srgb, var(--c) 22%, transparent); border-color: var(--c); }
.tc-panels { display: grid; }
.tc-panel { grid-area: 1 / 1; opacity: 0; visibility: hidden; transform: translateY(34px); transition: opacity .55s, transform .7s cubic-bezier(.2,.8,.2,1), visibility .55s; }
.tc-panel.past { transform: translateY(-34px); } .tc-panel.on { opacity: 1; visibility: visible; transform: none; }
.tc-bignum { display: block; font: 800 clamp(4.5rem, 11vh, 8.5rem)/.8 var(--font-head); letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 2px var(--c); }
.tc-panel h3 { margin-top: 10px; font-size: clamp(2.2rem, 4.6vw, 4.2rem); letter-spacing: -.045em; line-height: .95; color: #fff; }
.tc-panel > p { margin: 12px 0 0; max-width: 430px; color: var(--muted); }
.tc-chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: clamp(14px, 2.6vh, 26px) 0; max-width: 520px; }
.tc-chips div { padding: 11px 14px; border-radius: 14px; background: rgba(255,255,255,.045); border: 1px solid var(--line); }
.tc-chips dt { font-size: .75rem; color: var(--muted); } .tc-chips dd { margin: 2px 0 0; font-size: .875rem; font-weight: 700; color: #fff; }
.tc-panel.on .tc-chips div { animation: tcPop .6s both; } .tc-chips div:nth-child(1) { animation-delay: .15s !important; } .tc-chips div:nth-child(2) { animation-delay: .22s !important; } .tc-chips div:nth-child(3) { animation-delay: .29s !important; } .tc-chips div:nth-child(4) { animation-delay: .36s !important; }
.tc-climb__vis { position: relative; aspect-ratio: 6 / 5; width: 100%; max-height: calc(100svh - var(--h) - 40px); justify-self: center; }
.tc-climb__vis svg { width: 100%; height: 100%; overflow: visible; }
.tc-base { fill: none; stroke: rgba(255,255,255,.16); stroke-width: 3; stroke-dasharray: 2 9; stroke-linecap: round; }
.tc-trail { fill: none; stroke: var(--sc); stroke-width: 6; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--p)); filter: drop-shadow(0 0 10px var(--sc)); transition: stroke .6s; }
.tc-bar { fill: rgba(255,255,255,.05); transition: fill .6s; } .tc-bar.lit { fill: color-mix(in srgb, var(--sc) 48%, transparent); }
.tc-pole { stroke: rgba(255,255,255,.18); stroke-dasharray: 3 6; }
.tc-flag circle { fill: #0B0A07; stroke: var(--fc); stroke-width: 4; transition: fill .4s; } .tc-flag.on circle { fill: var(--fc); }
.tc-flag rect { fill: #1E1C16; stroke: var(--fc); stroke-width: 1.5; } .tc-flag text { fill: #fff; font: 700 19px var(--font-body); text-anchor: middle; }
.tc-flag { opacity: .5; transition: opacity .5s; } .tc-flag.on { opacity: 1; }
.tc-dot { fill: #fff; filter: drop-shadow(0 0 12px var(--sc)); } .tc-halo { fill: var(--sc); opacity: .35; transform-box: fill-box; transform-origin: center; animation: tcHalo 1.8s ease-out infinite; }

/* ================= 3. BEGINNER: stacking cards ================= */
.tc-lv { padding-block: 0 clamp(64px, 8vw, 110px); }
.tc-lv--b { background: var(--bg); }
.tc-mq { overflow: hidden; border-block: 1px solid var(--line); margin-bottom: clamp(44px, 6vw, 80px); padding-block: 16px; background: var(--shade); }
.tc-mq div { display: flex; width: max-content; animation: tcTape 40s linear infinite; }
.tc-mq span { padding-inline: 28px; white-space: nowrap; font: 800 clamp(2.2rem, 5.4vw, 4.6rem)/1 var(--font-head); letter-spacing: -.03em; color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--ink) 45%, transparent); }
.tc-mq span::after { content: ""; display: inline-block; width: .3em; height: .3em; margin-inline-start: 56px; border-radius: 50%; background: var(--c); vertical-align: middle; }
.tc-lvhead { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px 48px; align-items: end; margin-bottom: clamp(30px, 4vw, 52px); }
.tc-lvtag { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 16px; font-weight: 700; color: var(--ink); }
.tc-lvtag i { width: 12px; height: 12px; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 5px color-mix(in srgb, var(--c) 25%, transparent); }
.tc-lvhead h2 { font-size: clamp(2.4rem, 6vw, 5.4rem); letter-spacing: -.05em; line-height: .96; max-width: 14ch; }
.tc-lvhead .sec__lead { margin-top: 20px; }
.tc-glance { display: flex; margin: 0; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); overflow: hidden; }
.tc-glance div { padding: 16px 24px; text-align: center; } .tc-glance div + div { border-inline-start: 1px solid var(--line); }
.tc-glance dt { font: 800 1.9rem/1 var(--font-head); color: var(--ink); font-variant-numeric: tabular-nums; } .tc-glance dd { margin: 6px 0 0; font-size: .75rem; color: var(--muted); }
.tc-stack { padding-bottom: 8px; }
.tc-sc { --k: 0; position: sticky; top: calc(var(--h) + 18px + var(--i) * 24px); display: grid; grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  min-height: min(540px, calc(100svh - var(--h) - 100px)); margin-bottom: 36px; border-radius: 34px; overflow: hidden; background: color-mix(in srgb, var(--c) calc(4% + var(--i) * 3%), var(--surface));
  border: 1px solid var(--line); box-shadow: 0 -14px 44px rgba(0,0,0,.16); transform: scale(calc(1 - var(--k) * .05)); transform-origin: 50% 0; filter: brightness(calc(1 - var(--k) * .32)); will-change: transform; }
.tc-sc:nth-child(even) .tc-sc__img { order: 2; }
.tc-sc__img { position: relative; overflow: hidden; background: linear-gradient(145deg, #413B2E, #171511); }
.tc-sc__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; animation: tcKb 18s ease-in-out infinite alternate; }
.tc-sc__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(11,10,7,.65), transparent 45%); }
.tc-badge { position: absolute; z-index: 2; top: 18px; inset-inline-start: 18px; padding: 7px 14px; border-radius: 999px; font-size: .8125rem; font-weight: 800; background: var(--gold); color: #1a1100; }
.tc-imeta { position: absolute; z-index: 2; inset-inline: 18px; bottom: 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.tc-imeta span { padding: 7px 13px; border-radius: 999px; font-size: .8125rem; font-weight: 600; color: #fff; background: rgba(15,14,11,.62); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.tc-imeta i { margin-inline-end: 6px; color: var(--gain); }
.tc-sc__body { position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(26px, 3.6vw, 56px); }
.tc-ghost { position: absolute; z-index: 2; top: 6px; inset-inline-end: 20px; font: 800 clamp(5rem, 10vw, 9rem)/1 var(--font-head); letter-spacing: -.06em; color: transparent; -webkit-text-stroke: 2px rgba(255,255,255,.7); pointer-events: none; }
.tc-sc h3 { position: relative; max-width: 16ch; font-size: clamp(1.8rem, 3.2vw, 2.8rem); letter-spacing: -.04em; line-height: 1; }
.tc-sc p.tc-desc { position: relative; max-width: 460px; margin: 14px 0 0; color: var(--muted); }
.tc-learn { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 22px; margin: 22px 0 0; padding: 20px 0 0; border-top: 1px solid var(--line); }
.tc-learn li { position: relative; padding-inline-start: 28px; font-size: .9375rem; color: var(--text); }
.tc-learn li::before { content: "\f00c"; font: 900 .65rem/20px "Font Awesome 6 Free"; position: absolute; inset-inline-start: 0; top: 2px; width: 20px; height: 20px; text-align: center; border-radius: 50%; background: color-mix(in srgb, var(--gain) 24%, transparent); color: var(--accent-text); }
.tc-js .tc-learn li { opacity: 0; transform: translateX(-16px); transition: opacity .6s, transform .6s; transition-delay: calc(var(--j) * 90ms + .3s); }
.tc-js .tc-sc.in .tc-learn li { opacity: 1; transform: none; }
.tc-learn li:nth-child(1) { --j: 0; } .tc-learn li:nth-child(2) { --j: 1; } .tc-learn li:nth-child(3) { --j: 2; } .tc-learn li:nth-child(4) { --j: 3; }
.tc-foot { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin-top: 26px; }
.tc-price b { font: 800 2rem/1 var(--font-head); color: var(--ink); letter-spacing: -.03em; } .tc-price span { margin-inline-start: 8px; font-size: .8125rem; color: var(--muted); }
.tc-end { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; margin-top: 18px; padding: clamp(24px, 4vw, 44px) clamp(24px, 4vw, 52px); border-radius: 30px; background: var(--ink); color: var(--bg); overflow: hidden; }
.tc-end h3 { color: var(--bg); font-size: clamp(1.6rem, 3.6vw, 3rem); letter-spacing: -.04em; } .tc-end p { margin: 8px 0 0; max-width: 520px; color: color-mix(in srgb, var(--bg) 72%, transparent); }
.tc-end a { display: inline-flex; align-items: center; gap: 12px; padding: 16px 26px; border-radius: 999px; font-weight: 700; text-decoration: none; color: #06140E; background: var(--gain); transition: transform .3s; }
.tc-end a:hover { transform: translateX(6px); } .tc-end a i { animation: tcNudge 1.6s ease-in-out infinite; }
.tc-disc { margin: 24px 0 0; font-size: .8125rem; color: var(--muted); }

/* ---------- keyframes ---------- */
@keyframes tcTape { to { transform: translateX(-50%); } }
@keyframes tcLn { to { transform: none; } } @keyframes tcFade { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes tcRise { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: none; } }
@keyframes tcDraw { to { stroke-dashoffset: 0; } } @keyframes tcPulse { 50% { box-shadow: 0 0 0 9px rgba(31,209,139,0); } }
@keyframes tcPop { from { opacity: 0; transform: translateY(14px) scale(.96); } to { opacity: 1; transform: none; } }
@keyframes tcHalo { from { transform: scale(.6); opacity: .5; } to { transform: scale(2.4); opacity: 0; } }
@keyframes tcKb { from { transform: scale(1.04); } to { transform: scale(1.18) translate(-2%, -1%); } }
@keyframes tcNudge { 50% { transform: translateX(5px); } }

/* ---------- responsive ---------- */
@media (max-width: 960px) {
  .tc-lvhead { grid-template-columns: 1fr; } .tc-glance { justify-self: start; }
  .tc-hero::after { background: linear-gradient(0deg, #0B0A07 0%, rgba(11,10,7,.7) 55%, rgba(11,10,7,.25) 100%); }
}
@media (max-width: 860px) {
  .tc-climb__grid { grid-template-columns: 1fr; gap: 8px; }
  .tc-climb__vis { order: -1; aspect-ratio: auto; height: 31svh; max-height: none; } .tc-climb__title { display: none; }
  .tc-stagenav { margin: 0 0 10px; } .tc-stagenav button { min-height: 34px; padding: 5px 12px; font-size: .8125rem; }
  .tc-bignum { display: none; } .tc-panel h3 { font-size: 2.2rem; margin-top: 0; } .tc-panel > p { font-size: .9375rem; margin-top: 8px; }
  .tc-chips { gap: 8px; margin: 12px 0; } .tc-chips div { padding: 8px 11px; } .tc-chips dd { font-size: .8125rem; }
}
@media (max-width: 760px) {
  .tc-tiles { grid-template-columns: 1fr; } .tc-tile, .tc-tile:nth-child(n) { margin-top: 0; }
  .tc-sc { position: relative; top: auto; grid-template-columns: 1fr; min-height: 0; transform: none; filter: none; } .tc-sc:nth-child(even) .tc-sc__img { order: 0; }
  .tc-sc__img { min-height: 230px; } .tc-learn { grid-template-columns: 1fr; } .tc-ghost { font-size: 5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .tc-tape__track, .tc-mq div, .tc-sc__img img, .tc-live i, .tc-halo, .tc-end a i { animation: none !important; }
  .tc-ln > span, .tc-tile, .tc-hero__lead, .tc-hero__cta, .tc-stats { animation: none !important; opacity: 1 !important; transform: none !important; }
  .tc-w > span { transform: none !important; transition: none !important; } .tc-ring .fg { animation: none !important; stroke-dashoffset: 0 !important; }
  .tc-panel { transition: none; } .tc-js .tc-learn li { opacity: 1; transform: none; transition: none; }
}


/* ==================== MERGED FROM free-resources.css ==================== */

/* Free Resources: hero (clean split layout). Other sections come one by one. */
.fx{--g:#F5C04F;--up:#1FD18B;--e:cubic-bezier(.2,.8,.2,1);background:#050505;color:#F1EADA;--muted:#B9AF98;--line:rgba(245,192,79,.22)}
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:56px;padding:calc(var(--h) + 48px) 0 40px;overflow:hidden;background:radial-gradient(60% 55% at 78% 40%,rgba(245,192,79,.14),transparent 70%),linear-gradient(rgba(245,192,79,.05) 1px,transparent 1px) 0 0/64px 64px,linear-gradient(90deg,rgba(245,192,79,.05) 1px,transparent 1px) 0 0/64px 64px,#050505}
.hero__g{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border:1px solid var(--line);border-radius:99px;color:var(--g);font-weight:600;font-size:.9rem;margin:0 0 22px;animation:fade .8s var(--e) both}
.dot{width:8px;height:8px;border-radius:50%;background:var(--up);animation:ping 2s infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(31,209,139,.6)}80%,100%{box-shadow:0 0 0 10px rgba(31,209,139,0)}}
.fx h1{font:800 clamp(2.4rem,5.4vw,4.6rem)/1.04 var(--font-head);letter-spacing:-.02em;color:#fff;margin:0 0 20px;max-width:15ch;animation:fade .9s var(--e) .1s both}
.gold{background:linear-gradient(100deg,#B8780A,#FFE29A 45%,#E0A526 60%,#B8780A);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 4s linear 1.2s infinite}
@keyframes shine{to{background-position:-220% 0}}
.lead{max-width:46ch;color:var(--muted);font-size:1.125rem;margin:0 0 30px;animation:fade .9s var(--e) .25s both}
.cta{display:flex;flex-wrap:wrap;gap:12px;animation:fade .9s var(--e) .4s both}
@keyframes fade{from{opacity:0;transform:translateY(18px)}}
.viz{position:relative;padding:0 0 28px;animation:fade 1s var(--e) .3s both}
.card{border:1px solid var(--line);border-radius:24px;background:linear-gradient(160deg,#14110a,#0a0906);padding:22px 22px 10px;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.03) inset;transition:transform .25s}
.card__top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}
.card__top b{display:block;color:#fff;font:700 1.05rem var(--font-head)}.card__top span{color:var(--muted);font-size:.85rem}
.px{text-align:right}.px b{font:800 1.7rem var(--font-head)}.px span{color:var(--up);font-weight:700}
.card svg{width:100%;height:auto;display:block;overflow:visible}
.grid line{stroke:rgba(245,192,79,.12);stroke-dasharray:4 6}
.line{fill:none;stroke:var(--g);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2.2s var(--e) .6s forwards;filter:drop-shadow(0 0 8px rgba(245,192,79,.6))}
@keyframes draw{to{stroke-dashoffset:0}}
.area{opacity:0;animation:fade2 1.2s ease 1.8s forwards}@keyframes fade2{to{opacity:1}}
.edot{fill:var(--g);opacity:0;animation:fade2 .4s ease 2.7s forwards}
.chip{position:absolute;display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(12,11,8,.92);backdrop-filter:blur(10px);color:var(--muted);font-size:.8rem;box-shadow:0 14px 40px rgba(0,0,0,.5)}
.chip i{color:var(--g);font-size:1.3rem}.chip b{display:block;color:#fff;font:700 .95rem var(--font-head)}
.c1{left:-26px;top:38%;animation:bob 6s ease-in-out infinite}.c2{right:-14px;bottom:0;animation:bob 6s ease-in-out -3s infinite}
@keyframes bob{50%{transform:translateY(-10px)}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:28px 0 0;margin-inline:auto;border-top:1px solid var(--line);color:var(--muted);animation:fade .9s var(--e) .9s both}
.stats b{display:block;font:800 2.3rem var(--font-head);color:var(--g);line-height:1.1}
.fx a:focus-visible{outline:2px solid var(--g);outline-offset:3px}
@media(max-width:860px){.hero__g{grid-template-columns:1fr;gap:40px}.c1{left:8px}.c2{right:8px}.stats{grid-template-columns:repeat(2,1fr);gap:20px}}
@media(prefers-reduced-motion:reduce){.fx *{animation:none!important;transition:none!important}.line{stroke-dashoffset:0}.area,.edot{opacity:1}}
/* ---------- 2. Free class: cinema strip ---------- */
.s2{padding:clamp(64px,9vw,112px) 0;background:#0A0906}
.s2__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 48px;margin-bottom:32px}
.fx h2{font:800 clamp(1.9rem,4.2vw,3.2rem)/1.05 var(--font-head);color:#fff;margin:0;max-width:14ch;letter-spacing:-.02em}
.s2__head .lead{margin:0;max-width:40ch}
.screen{position:relative;aspect-ratio:21/9;min-height:300px;border:1px solid var(--line);border-radius:26px;overflow:hidden;background:#0d0b06;box-shadow:0 40px 90px rgba(0,0,0,.6);isolation:isolate}
.screen__art{position:absolute;inset:0;display:grid;place-items:center;background:#090909;transition:opacity .5s}
.screen__art i{font-size:clamp(7rem,20vw,16rem);color:rgba(245,192,79,.14);position:absolute;right:8%;transform:rotate(-8deg)}
.screen__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.92) 8%,rgba(5,5,5,.2) 70%),linear-gradient(0deg,rgba(5,5,5,.8),transparent 45%)}
.screen__txt{position:absolute;left:clamp(20px,4vw,48px);bottom:clamp(24px,4vw,44px);max-width:min(520px,70%);transition:opacity .35s,transform .35s}
.screen.swap .screen__txt,.screen.swap .screen__art{opacity:0;transform:translateY(8px)}
.tag{display:inline-block;padding:5px 12px;border-radius:99px;background:var(--g);color:#140E00;font:700 .8rem var(--font-body);margin-bottom:12px}
.screen h3{font:800 clamp(1.5rem,3.6vw,2.7rem)/1.08 var(--font-head);color:#fff;margin:0 0 8px}
.screen p{margin:0;color:var(--muted)}
.play{position:absolute;right:clamp(24px,8%,120px);top:50%;transform:translateY(-50%);width:92px;height:92px;border-radius:50%;border:0;background:var(--g);color:#140E00;font-size:1.7rem;cursor:pointer;display:grid;place-items:center;z-index:2;transition:transform .3s var(--e);box-shadow:0 0 0 0 rgba(245,192,79,.5);animation:ping2 2.4s infinite}
.play:hover{transform:translateY(-50%) scale(1.08)}
@keyframes ping2{80%,100%{box-shadow:0 0 0 26px rgba(245,192,79,0)}}
.bar{position:absolute;left:0;right:0;bottom:0;height:5px;background:rgba(255,255,255,.1)}
.bar i{display:block;height:100%;width:0;background:var(--g)}
.screen.on .bar i{animation:prog 12s linear forwards}.screen.on .play{animation:none}
@keyframes prog{to{width:100%}}
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px}
.poster{position:relative;aspect-ratio:3/4;max-height:340px;width:100%;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:radial-gradient(ellipse at 72% 28%,rgba(132,75,167,.28),transparent 38%),linear-gradient(170deg,#272113,#0a0906);color:#fff;text-align:left;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer;font:inherit;transition:transform .4s var(--e),border-color .3s,box-shadow .4s}
.poster:before{content:"";position:absolute;left:9%;right:8%;top:24%;height:38%;opacity:.48;background:linear-gradient(180deg,transparent 0 24%,rgba(245,192,79,.12) 24.5% 25%,transparent 25.5% 49%,rgba(245,192,79,.12) 49.5% 50%,transparent 50.5% 74%,rgba(245,192,79,.12) 74.5% 75%,transparent 75.5%),linear-gradient(90deg,transparent 0 8%,rgba(245,192,79,.8) 8% 10%,transparent 10% 20%,rgba(245,192,79,.65) 20% 22%,transparent 22% 32%,rgba(245,192,79,.9) 32% 34%,transparent 34% 44%,rgba(245,192,79,.6) 44% 46%,transparent 46% 56%,rgba(245,192,79,.85) 56% 58%,transparent 58% 68%,rgba(245,192,79,.7) 68% 70%,transparent 70% 80%,rgba(245,192,79,.9) 80% 82%,transparent 82%);mask-image:linear-gradient(180deg,#000,transparent);pointer-events:none}.poster i{position:absolute;top:18px;right:18px;font-size:2.6rem;color:rgba(245,192,79,.55);transition:transform .5s var(--e),color .3s}
.poster small{color:var(--g);font-weight:700;margin-bottom:6px}
.poster b{font:700 1.15rem/1.2 var(--font-head)}.poster em{font-style:normal;color:var(--muted);font-size:.85rem;margin-top:4px}
.poster span{position:absolute;left:18px;top:18px;opacity:0;transform:translateY(6px);transition:.3s;background:var(--g);color:#140E00;border-radius:99px;padding:5px 12px;font:700 .8rem var(--font-body)}
.poster:hover,.poster:focus-visible{transform:translateY(-10px);border-color:var(--g);box-shadow:0 24px 50px rgba(0,0,0,.6),0 0 40px rgba(245,192,79,.15)}
.poster:hover i{transform:scale(1.15) rotate(-6deg);color:var(--g)}.poster:hover span{opacity:1;transform:none}
.fx button:focus-visible{outline:2px solid var(--g);outline-offset:3px}
@media(max-width:860px){.screen{aspect-ratio:auto;min-height:380px}.screen__txt{max-width:calc(100% - 40px)}.play{top:28%;right:24px;width:72px;height:72px}.strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.poster{flex:0 0 62%;scroll-snap-align:start}}

/* ---------- section 2: real images + video ---------- */
.screen__art{display:block;overflow:hidden;background:radial-gradient(ellipse at 78% 34%,rgba(120,53,153,.32),transparent 34%),radial-gradient(ellipse at 48% 70%,rgba(245,192,79,.10),transparent 40%),linear-gradient(120deg,#080907 0%,#11100d 48%,#100b17 100%)}
/* CSS-only market-chart artwork keeps the lesson screen visually rich without image files */
.screen__art:before{content:"";position:absolute;inset:0;opacity:.42;background-image:linear-gradient(rgba(245,192,79,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(245,192,79,.10) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,transparent 0%,#000 35%,#000 100%)}
.screen__art:after{content:"";position:absolute;inset:8% 5% 12% 36%;opacity:.9;background-repeat:no-repeat;background-size:100% 100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 420'%3E%3Cdefs%3E%3ClinearGradient id='area' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23f5c04f' stop-opacity='.24'/%3E%3Cstop offset='1' stop-color='%23f5c04f' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 320 L70 280 120 300 180 210 230 250 290 185 350 220 410 140 470 180 530 110 590 145 650 65 710 100 770 35 840 60 900 12 L900 420 L0 420Z' fill='url(%23area)'/%3E%3Cpath d='M0 320 L70 280 120 300 180 210 230 250 290 185 350 220 410 140 470 180 530 110 590 145 650 65 710 100 770 35 840 60 900 12' fill='none' stroke='%23f5c04f' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cg stroke-width='5'%3E%3Cpath d='M90 155V285 M125 180V305 M160 135V240 M195 115V215 M230 160V270 M265 105V205 M300 120V225 M335 85V185 M370 105V230 M405 65V160 M440 80V190 M475 45V140 M510 65V155 M545 35V125 M580 55V160 M615 20V110 M650 40V130 M685 12V95 M720 25V110 M755 8V80 M790 18V92 M825 0V72' stroke='%23d7a843'/%3E%3C/g%3E%3Cg fill='%23f5c04f'%3E%3Crect x='80' y='190' width='20' height='55' rx='3'/%3E%3Crect x='115' y='215' width='20' height='55' rx='3'/%3E%3Crect x='150' y='155' width='20' height='48' rx='3'/%3E%3Crect x='185' y='145' width='20' height='40' rx='3'/%3E%3Crect x='220' y='195' width='20' height='45' rx='3'/%3E%3Crect x='255' y='130' width='20' height='48' rx='3'/%3E%3Crect x='290' y='150' width='20' height='45' rx='3'/%3E%3Crect x='325' y='110' width='20' height='45' rx='3'/%3E%3Crect x='360' y='140' width='20' height='55' rx='3'/%3E%3Crect x='395' y='90' width='20' height='45' rx='3'/%3E%3Crect x='430' y='105' width='20' height='50' rx='3'/%3E%3Crect x='465' y='70' width='20' height='45' rx='3'/%3E%3Crect x='500' y='85' width='20' height='40' rx='3'/%3E%3Crect x='535' y='50' width='20' height='45' rx='3'/%3E%3Crect x='570' y='70' width='20' height='50' rx='3'/%3E%3Crect x='605' y='38' width='20' height='45' rx='3'/%3E%3Crect x='640' y='52' width='20' height='45' rx='3'/%3E%3Crect x='675' y='24' width='20' height='45' rx='3'/%3E%3Crect x='710' y='35' width='20' height='42' rx='3'/%3E%3Crect x='745' y='15' width='20' height='38' rx='3'/%3E%3Crect x='780' y='26' width='20' height='40' rx='3'/%3E%3C/g%3E%3C/svg%3E");filter:drop-shadow(0 0 18px rgba(245,192,79,.10));transform:translateY(0);transition:transform 1s ease,opacity .4s}
.screen:hover .screen__art:after{transform:translateY(-5px)}
.screen__art img{display:none}
.screen__vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;z-index:3;display:none}
.x{position:absolute;top:16px;right:16px;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(5,5,5,.8);color:#fff;cursor:pointer;display:none}
.screen.on .screen__vid,.screen.on .x{display:block}
.screen.on .screen__txt,.screen.on .screen__shade,.screen.on .play{display:none}
.screen__art i{display:none}
.poster{background:linear-gradient(0deg,rgba(5,5,5,.94) 8%,rgba(5,5,5,.25) 75%),var(--im) center/cover}
.poster:hover{background:linear-gradient(0deg,rgba(5,5,5,.9) 8%,rgba(5,5,5,.1) 75%),var(--im) center/cover}
/* ---------- 3. Free downloads: three clear groups, one row per file ---------- */
.s3{padding:clamp(64px,9vw,112px) 0;background:#050505}
.s3__r{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.s3__r .lead{margin:0}
.grp{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:clamp(24px,5vw,64px);padding:44px 0;border-top:1px solid var(--line)}
.grp__side{align-self:start;position:sticky;top:calc(var(--h) + 24px)}
.grp__side i{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--g);color:#140E00;font-size:1.4rem;margin-bottom:18px}
.grp__side h3{font:800 clamp(1.6rem,3vw,2.2rem)/1.05 var(--font-head);color:#fff;margin:0 0 10px}
.grp__side p{color:var(--muted);margin:0 0 14px;font-size:1.05rem}.grp__side span{color:var(--g);font-weight:700}
.doc{display:grid;grid-template-columns:104px 1fr auto;gap:22px;align-items:center;padding:16px;margin-bottom:14px;border:1px solid var(--line);border-radius:20px;background:#0C0B08;transition:transform .35s var(--e),border-color .3s,background .3s}
.doc:hover{transform:translateX(8px);border-color:var(--g);background:#14110a}
.doc__th img{display:block;width:104px;height:auto;border-radius:6px;box-shadow:0 8px 24px rgba(0,0,0,.6);transition:transform .4s var(--e)}
.doc:hover .doc__th img{transform:rotate(-3deg) scale(1.05)}
.doc h4{font:700 1.25rem/1.2 var(--font-head);color:#fff;margin:0 0 6px}
.doc p{margin:0 0 10px;color:#F1EADA;font-size:1rem}
.doc ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 20px;color:var(--muted);font-size:.9rem}
.doc li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--g);margin-right:8px;vertical-align:middle}
.doc__act{display:flex;flex-direction:column;align-items:center;gap:8px}.doc__act small{color:var(--muted);font-size:.78rem}
.fx-js .doc{opacity:0;transform:translateY(26px)}.fx-js .doc.in{opacity:1;transform:none}.fx-js .doc.in:hover{transform:translateX(8px)}
.btn.ok{background:var(--up)!important;color:#04150e!important}
@media(max-width:860px){.grp{grid-template-columns:1fr;gap:20px;padding:32px 0}.grp__side{position:static}}
@media(max-width:560px){.doc{grid-template-columns:76px 1fr;gap:14px}.doc__th img{width:76px}.doc__act{grid-column:1/-1;flex-direction:row;justify-content:space-between}.doc__act .btn{flex:1}.doc:hover{transform:none}}
/* ---------- light theme: sections follow the site theme (dark stays as built) ---------- */
:root[data-theme="dark"] .fx .btn--ghost{color:#fff}
:root:not([data-theme="dark"]) .fx{background:#FAF7EE;color:#1E1A0F;--muted:#5A5038;--line:rgba(138,94,0,.3)}
:root:not([data-theme="dark"]) .fx h2{color:#0A0A0A}
:root:not([data-theme="dark"]) .grp__side span{color:#8A5E00}
:root:not([data-theme="dark"]) .s2{background:#F3EEDD}
:root:not([data-theme="dark"]) .s3{background:#FAF7EE}
:root:not([data-theme="dark"]) .grp__side h3,:root:not([data-theme="dark"]) .doc h4{color:#0A0A0A}
:root:not([data-theme="dark"]) .doc{background:#fff;box-shadow:0 8px 24px rgba(30,22,0,.08)}
:root:not([data-theme="dark"]) .doc:hover{background:#FFFBF0}
:root:not([data-theme="dark"]) .doc p{color:#1E1A0F}
:root:not([data-theme="dark"]) .doc li::before{background:#C58A0A}
:root:not([data-theme="dark"]) .doc__th img{box-shadow:0 8px 24px rgba(30,22,0,.25)}


/* hero stays dark in both themes */
.hero{--muted:#B9AF98;--line:rgba(245,192,79,.22);color:#F1EADA}
.hero .btn--ghost{color:#fff;border-color:rgba(245,192,79,.45)}


/* ================= Sections 4 and 5: Trade Simulator + Staircase ================= */
.s4,.s5{--bg:#0A0906;--card:#0F0D08;--inb:#0a0906;--ink:#fff;--txt:#F1EADA;--mut:#B9AF98;--ln:rgba(245,192,79,.22);--acc:#F5C04F;--accT:#F5C04F;--good:#1FD18B;--bad:#FF6464;--sh:0 24px 60px rgba(0,0,0,.5);position:relative;background:var(--bg);color:var(--txt);padding:clamp(64px,9vw,112px) 0}
.s5{--bg:#050505}
:root:not([data-theme="dark"]) .s4,:root:not([data-theme="dark"]) .s5{--bg:#F3EEDD;--card:#fff;--inb:#FAF7EE;--ink:#0A0A0A;--txt:#1E1A0F;--mut:#5A5038;--ln:rgba(138,94,0,.26);--accT:#8A5E00;--good:#0E9F6E;--bad:#D92D32;--sh:0 18px 44px rgba(30,22,0,.12)}
:root:not([data-theme="dark"]) .s5{--bg:#FAF7EE}
.s4,.s5{overflow:hidden}.s4{isolation:isolate}
.s4 :focus-visible,.s5 :focus-visible{outline:2px solid var(--acc);outline-offset:3px}
/* heading: never hidden */
.sh{max-width:740px;margin:0 0 clamp(28px,4.5vw,52px)}
.eye{display:inline-flex;align-items:center;gap:10px;color:var(--accT);font:700 .85rem var(--font-body);letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.eye b{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--acc);color:#140E00;font:800 .9rem var(--font-head);letter-spacing:0}
.fx .sh h2{position:relative;font:800 clamp(2rem,4.6vw,3.4rem)/1.05 var(--font-head);color:var(--ink);max-width:none;margin:0 0 14px;padding-bottom:18px;letter-spacing:-.02em}
.sh h2::after{content:"";position:absolute;left:0;bottom:0;height:4px;width:0;border-radius:4px;background:linear-gradient(90deg,var(--acc),transparent);transition:width 1.1s var(--e) .2s}.sh.in h2::after{width:140px}
.sh p{margin:0;font-size:1.15rem;color:var(--mut);max-width:58ch}

/* ---------- 4: simulator ---------- */
.s4__bg{position:absolute;inset:0;z-index:-1}.s4__bg img{width:100%;height:100%;object-fit:cover;opacity:.22;filter:blur(3px) saturate(.8)}
.s4__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(var(--bg),transparent 35%,transparent 65%,var(--bg))}
.sim{border:1px solid rgba(245,192,79,.3);border-radius:28px;background:linear-gradient(160deg,rgba(22,18,10,.94),rgba(7,6,4,.97));backdrop-filter:blur(14px);box-shadow:0 40px 100px rgba(0,0,0,.55),0 0 90px rgba(245,192,79,.12);overflow:hidden;color:#F1EADA}
.tape{position:relative;height:42px;overflow:hidden;border-bottom:1px solid rgba(245,192,79,.2);background:rgba(0,0,0,.35);display:flex;align-items:center}
.tape__t{display:flex;gap:40px;white-space:nowrap;padding-left:20px;font:700 .85rem var(--font-body);color:#B9AF98;animation:tape 36s linear infinite;width:max-content}
.tape__t b.u{color:#1FD18B}.tape__t b.d{color:#FF6464}
@keyframes tape{to{transform:translateX(-50%)}}
.tape .live{position:absolute;right:0;top:0;bottom:0;display:flex;align-items:center;gap:8px;padding:0 18px 0 40px;background:linear-gradient(90deg,transparent,#0b0905 40%);color:#F5C04F;font:700 .78rem var(--font-body);text-transform:uppercase;letter-spacing:.1em}
.tape .live i{width:8px;height:8px;border-radius:50%;background:#1FD18B;animation:ping 2s infinite}
.sim__ctl{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,4vw,48px);padding:20px clamp(18px,3vw,32px);border-bottom:1px solid rgba(245,192,79,.14)}
.sl{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center}.sl span{color:#B9AF98;font-weight:600;font-size:.9rem}.sl output{font:800 1.3rem var(--font-head);color:#F5C04F}.sl input{grid-column:1/-1}
.sim input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:99px;background:rgba(245,192,79,.2);cursor:pointer;accent-color:#F5C04F}
.sim input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#F5C04F;border:3px solid #0a0906;box-shadow:0 0 0 2px #F5C04F,0 4px 14px rgba(245,192,79,.55);cursor:grab}
.sim input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#F5C04F;border:3px solid #0a0906}
.sim__g{display:grid;grid-template-columns:1.75fr 1fr}
.chart{padding:18px clamp(8px,2vw,22px) 12px}
#cv{width:100%;height:auto;display:block;user-select:none;-webkit-user-select:none}
.hint{margin:6px 0 0 10px;color:#B9AF98;font-size:.88rem}.hint i{color:#F5C04F;margin-right:6px}.hint .hg{color:#1FD18B}.hint .hy{color:#F5C04F}.hint .hr{color:#FF6464}
#cv .g line{stroke:rgba(245,192,79,.12);stroke-dasharray:4 6}#cv .ax{fill:#8C8268;font:600 11px var(--font-body)}
#cv .cd{transform-box:fill-box;transform-origin:50% 50%;transform:scaleY(0)}
#cv .cd line{stroke:var(--c);stroke-width:2}#cv .cd rect{fill:var(--c)}#cv .cd.up{--c:#1FD18B}#cv .cd.dn{--c:#FF6464}#cv .cd.last rect{filter:drop-shadow(0 0 7px var(--c))}
.sim.in #cv .cd{animation:cdp .55s var(--e) calc(var(--i)*38ms) forwards}@keyframes cdp{to{transform:scaleY(1)}}
#cv .zg{fill:rgba(31,209,139,.17)}#cv .zr{fill:rgba(255,100,100,.17)}
#cv .hd{cursor:ns-resize;outline:none;touch-action:none}
#cv .ln{stroke:var(--c);stroke-width:2.5}#cv .ln-tg,#cv .ln-st{stroke-dasharray:8 6}
#cv .hit{fill:transparent}#cv .pl{fill:var(--c);transition:filter .2s}#cv .pt{fill:#140E00;font:800 11.5px var(--font-body);pointer-events:none}
#cv .hd:hover .pl,#cv .hd:focus .pl,#cv .hd.drag .pl{filter:drop-shadow(0 0 10px var(--c))}
#cv .hd:focus-visible .ln{stroke-width:4}
.read{padding:clamp(20px,3vw,30px);border-left:1px solid rgba(245,192,79,.14);display:flex;flex-direction:column;gap:14px}
.vd{align-self:flex-start;padding:6px 14px;border-radius:99px;font:700 .82rem var(--font-body);transition:background .3s,color .3s}
.vd.good{background:rgba(31,209,139,.16);color:#1FD18B}.vd.warn{background:rgba(245,192,79,.18);color:#F5C04F}.vd.bad{background:rgba(255,100,100,.16);color:#FF6464}
.r1 small{display:block;color:#B9AF98;font-weight:600}.r1 b{display:block;font:800 clamp(3rem,5vw,4.4rem)/1 var(--font-head);color:#F5C04F;letter-spacing:-.02em;text-shadow:0 0 40px rgba(245,192,79,.35)}
.st{list-style:none;padding:0;margin:0}.st li{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed rgba(245,192,79,.2);color:#B9AF98}.st b{font:800 1.15rem var(--font-head);color:#fff}.st .neg{color:#FF6464}.st .pos{color:#1FD18B}
.mt__b{height:10px;border-radius:99px;background:rgba(245,192,79,.14);overflow:hidden}.mt__b i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#B8780A,#F5C04F);transition:width .5s var(--e),background .3s}.mt__b i.over{background:#FF6464}
.mt p{margin:8px 0 0;color:#B9AF98;font-size:.85rem;font-weight:600}
.say{margin:0;color:#F1EADA;font-size:1.02rem;padding:14px;border-radius:14px;background:rgba(245,192,79,.08);border-left:3px solid #F5C04F}
.acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}.acts .btn{color:#fff}
/* ---- Simulator responsive ---- */
.sim,.sim__g>*,.sim__ctl>*,.sl{min-width:0}
.sl output{white-space:nowrap}
.st li span{min-width:0}.st li b{white-space:nowrap;text-align:right}
.say{overflow-wrap:anywhere}
@media(max-width:1023px){.sim__g{grid-template-columns:1.4fr 1fr}.r1 b{font-size:clamp(2.6rem,6vw,3.6rem)}}
@media(max-width:860px){
 .sim__g{grid-template-columns:1fr}
 .read{border-left:0;border-top:1px solid rgba(245,192,79,.14)}
 .hint{margin-left:4px}
}
@media(max-width:600px){
 .sim{border-radius:20px}
 .sim__ctl{grid-template-columns:1fr;gap:18px;padding:16px}
 .chart{padding:14px 6px 10px}
 .hint{font-size:.82rem;margin:8px 8px 0}
 .read{padding:18px 16px}
 .say{font-size:.96rem;padding:12px}
 .acts{flex-direction:column}.acts .btn{width:100%;justify-content:center}
}
@media(max-width:380px){
 .sim{border-radius:16px}
 .tape__t{font-size:.78rem;gap:28px}
 .sl span{font-size:.85rem}.sl output{font-size:1.15rem}
 .st li{padding:9px 0;font-size:.92rem}.st b{font-size:1.02rem}
 .r1 b{font-size:2.8rem}
 .say{font-size:.92rem}
}
.sim input[type=range]{touch-action:pan-y}
@media(max-width:480px){.tape .live{padding:0 12px 0 28px;font-size:.7rem;letter-spacing:.06em}.pt__ring{top:12px;inset-inline-end:12px;width:44px;height:44px}.pt__ring b{font-size:.72rem}.pt__tag{max-width:calc(100% - 56px);font-size:.78rem}}
@media(max-width:600px){#cv .ax{font-size:17px}#cv .pt{font-size:14.5px}#cv .ln{stroke-width:3.5}}

.note4{margin:20px 0 0;color:var(--mut);font-size:.9rem}.note4 i{color:var(--accT);margin-right:6px}

/* ---------- 5: learning path (vertical roadmap) ---------- */
.find{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:0 0 20px}
.find>span{font:700 1.05rem var(--font-head);color:var(--ink);margin-right:6px}
.find button{border:1px solid var(--ln);background:var(--card);color:var(--txt);border-radius:99px;padding:10px 18px;font:700 .95rem var(--font-body);cursor:pointer;transition:.25s}
.find button:hover{border-color:var(--acc);transform:translateY(-2px)}.find button.on{background:var(--acc);border-color:var(--acc);color:#140E00}
.find p{flex-basis:100%;margin:2px 0 0;min-height:1.4em;color:var(--accT);font-weight:700}
.ok{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:9px}.ok li{display:flex;gap:10px;color:var(--txt)}
.ok li::before{content:"\f00c";font:900 .7rem "Font Awesome 6 Free";display:grid;place-items:center;flex:none;width:20px;height:20px;border-radius:50%;background:rgba(31,209,139,.18);color:var(--good);margin-top:2px}
.perks{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;list-style:none;padding:0;margin:clamp(30px,4vw,48px) 0 0}
.perks li{display:flex;align-items:center;gap:10px;padding:12px 20px;border:1px solid var(--ln);border-radius:99px;background:var(--card);color:var(--txt)}.perks i{color:var(--accT)}.perks b{color:var(--ink)}
.qz{border:1px solid var(--ln);border-radius:30px;background:var(--card);box-shadow:var(--sh);padding:clamp(22px,4vw,48px)}
.qz__bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:clamp(20px,3vw,32px);color:var(--accT);font:800 .95rem var(--font-body)}
.qz__dots{display:flex;gap:8px}.qz__dots i{width:48px;height:6px;border-radius:6px;background:var(--ln);transition:background .4s}.qz__dots i.on{background:var(--acc)}
.qz__body.sw{animation:qin .5s var(--e) both}@keyframes qin{from{opacity:0;transform:translateX(34px)}}
.qz__q{margin:0 0 8px;font:800 clamp(1.7rem,3.6vw,2.7rem)/1.08 var(--font-head);color:var(--ink);letter-spacing:-.01em;outline:0}
.qz__h{margin:0 0 clamp(20px,3vw,30px);font-size:1.1rem;color:var(--mut)}
.qz__a{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.qa{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:22px;min-height:150px;border:1px solid var(--ln);border-radius:20px;background:var(--inb);color:var(--ink);font:700 1.15rem/1.25 var(--font-body);text-align:left;cursor:pointer;transition:transform .3s var(--e),border-color .3s,box-shadow .3s,background .3s}
.qa:hover{transform:translateY(-6px);border-color:var(--acc);box-shadow:0 16px 36px rgba(245,192,79,.18)}
.qa__i{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:rgba(245,192,79,.16);color:var(--accT);font-size:1.15rem;transition:.3s}
.qa:hover .qa__i{background:var(--acc);color:#140E00}
.qz__back{margin-top:22px;background:none;border:0;color:var(--mut);font:700 1rem var(--font-body);cursor:pointer;padding:6px 0}.qz__back:hover{color:var(--accT)}
.qr{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(20px,4vw,44px);align-items:center}
.qr__why{margin:0 0 10px;color:var(--accT);font-weight:800}
.qr h3{margin:0 0 12px;font:800 clamp(1.9rem,4vw,3rem)/1.05 var(--font-head);color:var(--ink);letter-spacing:-.01em;outline:0}
.qr__m{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.qr__tag{padding:5px 13px;border-radius:99px;background:var(--acc);color:#140E00;font:800 .8rem var(--font-body)}.qr__chip{padding:5px 13px;border-radius:99px;border:1px solid var(--ln);color:var(--accT);font:700 .8rem var(--font-body)}
.qr p.d{margin:0 0 16px;font-size:1.1rem;color:var(--mut);max-width:48ch}
.qr .ok{margin:0 0 22px}
.qr__act{display:flex;flex-wrap:wrap;gap:12px}
.qr__img{position:relative;min-height:300px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#2a2008,#0a0906)}
.qr__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.chain{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:clamp(18px,3vw,28px) 0 0;padding:clamp(16px,2.5vw,22px) 0 0;border-top:1px solid var(--ln)}
.chain li{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:99px;border:1px solid var(--ln);color:var(--mut);font:700 .9rem var(--font-body)}
.chain li+li::before{content:"";width:0}
.chain li.done{opacity:.55}.chain li.you{background:var(--acc);border-color:var(--acc);color:#140E00}
.chain li.you::after{content:"You start here";font-weight:800;font-size:.75rem;padding:2px 8px;border-radius:99px;background:rgba(20,14,0,.14)}
.qz__lv{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;list-style:none;margin:20px 0 0;padding:0}
.qz__lv .lbl{color:var(--mut);font-weight:700;margin-right:6px}
.qz__lv a{display:inline-block;padding:8px 14px;border:1px solid var(--ln);border-radius:99px;color:var(--txt);font:700 .9rem var(--font-body);text-decoration:none;transition:.25s}.qz__lv a:hover{border-color:var(--acc);color:var(--accT);transform:translateY(-2px)}
.qz :focus-visible,.qz__lv a:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
@media(max-width:900px){.qz__a{grid-template-columns:1fr}.qa{flex-direction:row;align-items:center;min-height:0;padding:16px 18px}.qr{grid-template-columns:1fr}.qr__img{order:-1;min-height:200px}}
@media(prefers-reduced-motion:reduce){.qz__body.sw{animation:none}.qa,.qz__dots i{transition:none}}

/* ---------- 6: glossary (flip deck) ---------- */
.s6{--bg:#0A0906;--card:#0F0D08;--inb:#0a0906;--ink:#fff;--txt:#F1EADA;--mut:#B9AF98;--ln:rgba(245,192,79,.22);--acc:#F5C04F;--accT:#F5C04F;--sh:0 24px 60px rgba(0,0,0,.5);position:relative;background:var(--bg);color:var(--txt);padding:clamp(56px,9vw,112px) 0;overflow:hidden}
:root:not([data-theme="dark"]) .s6{--bg:#F3EEDD;--card:#fff;--inb:#FAF7EE;--ink:#0A0A0A;--txt:#1E1A0F;--mut:#5A5038;--ln:rgba(138,94,0,.26);--accT:#8A5E00;--sh:0 18px 44px rgba(30,22,0,.12)}
.s6 :focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.s6 .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.dk__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;margin-bottom:clamp(16px,2.4vw,26px)}
.dk__tabs{display:flex;flex-wrap:wrap;gap:8px}.dk__tabs button{padding:10px 18px;border:1px solid var(--ln);border-radius:99px;background:var(--card);color:var(--txt);font:700 .95rem var(--font-body);cursor:pointer;transition:all .2s}.dk__tabs button:hover{border-color:var(--acc)}.dk__tabs button.on{background:var(--acc);border-color:var(--acc);color:#140E00}
.dk__s{display:flex;align-items:center;gap:10px;flex:1 1 220px;max-width:360px;padding:0 16px;border:1px solid var(--ln);border-radius:99px;background:var(--card)}.dk__s i{color:var(--accT)}.dk__s input{flex:1;min-width:0;height:46px;border:0;background:none;color:var(--ink);font:inherit;outline:none}
.dk__wrap{position:relative}
.dk__track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:8px 2px 20px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.dk__track::-webkit-scrollbar{display:none}
.dk__a{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:52px;height:52px;margin-top:-36px;border:1px solid var(--acc);border-radius:50%;background:var(--acc);color:#140E00;font-size:1rem;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.4);transition:transform .25s var(--e),opacity .25s}.dk__a:hover{transform:scale(1.1)}.dk__a:disabled{opacity:0;pointer-events:none}
#dkP{inset-inline-start:-14px}#dkN{inset-inline-end:-14px}
.dc{flex:0 0 clamp(250px,78vw,316px);scroll-snap-align:start;perspective:1200px;opacity:0;transform:translateY(28px)}
.dk.in .dc{opacity:1;transform:none;transition:opacity .6s var(--e) calc(var(--k)*.07s),transform .6s var(--e) calc(var(--k)*.07s)}
.dc__b{display:block;width:100%;height:clamp(400px,46vw,440px);padding:0;border:0;background:none;color:inherit;font:inherit;text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent}
.dc__f{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .75s var(--e)}.dc.flip .dc__f{transform:rotateY(180deg)}
.dc__fr,.dc__bk{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--ln);border-radius:26px;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:var(--sh)}
.dc__fr{background:var(--card)}.dc__bk{transform:rotateY(180deg);background:#0A0906;color:#fff;justify-content:flex-end}
.dc__ph{position:relative;display:block;flex:0 0 52%;overflow:hidden;background:var(--inb)}.dc__ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--e)}.dc:hover .dc__ph img{transform:scale(1.08)}
.dc__tg{position:absolute;top:14px;inset-inline-start:14px;padding:5px 13px;border-radius:99px;background:var(--acc);color:#140E00;font-weight:800;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.dc__ic{position:absolute;bottom:-22px;inset-inline-end:18px;display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--card);border:2px solid var(--acc);color:var(--accT);font-size:1.1rem}
.dc__tx{display:flex;flex-direction:column;gap:8px;flex:1;padding:22px 20px 18px}.dc__tx b{font:800 clamp(1.35rem,2.2vw,1.6rem)/1.1 var(--font-head);color:var(--ink)}.dc__tx span{font-size:.98rem;line-height:1.5;color:var(--txt);display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.dc__tx em,.dc__bt em{margin-top:auto;font-style:normal;font-weight:700;font-size:.85rem;color:var(--accT)}
.dc__bk>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}.dc__bk::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,5,5,.96) 25%,rgba(5,5,5,.7))}
.dc__bt{position:relative;z-index:2;display:flex;flex-direction:column;gap:12px;height:100%;padding:24px 22px 20px}.dc__bt small{color:var(--acc);font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}.dc__bt b{font:800 1.5rem/1.1 var(--font-head)}
.dc__ex{display:block;padding:14px 16px;border-inline-start:4px solid var(--acc);border-radius:12px;background:rgba(255,255,255,.1);font-size:1.02rem;line-height:1.5}.dc__ex u{display:block;margin-bottom:4px;text-decoration:none;color:var(--acc);font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.dc__bt em{color:var(--acc)}
.dk__foot{display:flex;align-items:center;gap:16px;margin-top:4px;color:var(--mut);font-weight:700}.dk__prog{flex:1;height:5px;border-radius:5px;background:var(--ln);overflow:hidden}.dk__prog i{display:block;height:100%;border-radius:5px;background:var(--acc);transform-origin:left;transition:transform .25s}
.dk__none{margin:0;padding:30px 4px;color:var(--mut)}
@media(max-width:700px){#dkP{inset-inline-start:2px}#dkN{inset-inline-end:2px}.dk__a{width:44px;height:44px}.dk__s{max-width:none}}
@media(max-width:380px){.dc__b{height:420px}.dk__tabs button{padding:9px 14px}}
@media(prefers-reduced-motion:reduce){.dc__f,.dk.in .dc{transition:none}.dc{opacity:1;transform:none}.dc__ph img{transition:none}}

/* ---------- 7: next step ---------- */
.s7{--bg:#050505;--card:#0F0D08;--inb:#0a0906;--ink:#fff;--txt:#F1EADA;--mut:#B9AF98;--ln:rgba(245,192,79,.22);--acc:#F5C04F;--accT:#F5C04F;--good:#1FD18B;--bad:#FF6464;--sh:0 24px 60px rgba(0,0,0,.5);position:relative;background:var(--bg);color:var(--txt);padding:clamp(64px,9vw,112px) 0;overflow:hidden}
:root:not([data-theme="dark"]) .s7{--bg:#FAF7EE;--card:#fff;--inb:#FAF7EE;--ink:#0A0A0A;--txt:#1E1A0F;--mut:#5A5038;--ln:rgba(138,94,0,.26);--accT:#8A5E00;--good:#0E9F6E;--bad:#D92D32;--sh:0 18px 44px rgba(30,22,0,.12)}
.s7 :focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.nl{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.nl input{flex:1 1 220px;height:54px;padding:0 18px;border-radius:99px;border:1px solid var(--ln);background:var(--inb);color:var(--ink);font:600 1.05rem var(--font-body);transition:border-color .25s,box-shadow .25s}
.nl input:focus{outline:0;border-color:var(--acc);box-shadow:0 0 0 4px rgba(245,192,79,.18)}.nl input.err{border-color:var(--bad)}
.nl .btn{height:54px}
.nl__m{flex-basis:100%;min-height:1.4em;font-size:.95rem;font-weight:700;color:var(--bad)}
.nl__ok{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--good);border-radius:18px;background:rgba(31,209,139,.1)}
.nl__ok[hidden]{display:none}.nl__ok b{display:block;color:var(--ink);font:800 1.15rem var(--font-head)}.nl__ok span{color:var(--mut)}
.nl__ok svg{width:52px;height:52px;flex:none;fill:none;stroke:var(--good);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.nl__ok circle{stroke-dasharray:145;stroke-dashoffset:145;animation:nd .7s var(--e) forwards}.nl__ok path{stroke-dasharray:40;stroke-dashoffset:40;animation:nd .5s var(--e) .55s forwards}
@keyframes nd{to{stroke-dashoffset:0}}
.nx__s{margin-top:auto;color:var(--mut)}


.dr{display:flex;gap:clamp(12px,2vw,22px);min-height:clamp(560px,52vw,640px);opacity:0;transform:translateY(30px);transition:opacity .8s var(--e),transform .8s var(--e)}.dr.in{opacity:1;transform:none}
.dr__d{position:relative;isolation:isolate;flex:1 1 0;min-width:0;display:flex;align-items:flex-end;overflow:hidden;border:1px solid var(--ln);border-radius:30px;background:#0A0906;color:#fff;box-shadow:var(--sh);transition:flex .7s var(--e)}
.dr__d>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--e),filter .6s;filter:brightness(.8)}
.dr__d::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(5,5,5,.95) 12%,rgba(5,5,5,.78) 50%,rgba(5,5,5,.35))}
.dr:has(.dr__d:hover) .dr__d:not(:hover),.dr:has(.dr__d:focus-within) .dr__d:not(:focus-within){flex:.78}.dr__d:hover,.dr__d:focus-within{flex:1.28}.dr__d:hover>img,.dr__d:focus-within>img{transform:scale(1.07);filter:brightness(1)}
.dr__no{position:absolute;top:10px;inset-inline-end:22px;font:800 clamp(5rem,11vw,9rem)/1 var(--font-head);color:transparent;-webkit-text-stroke:2px rgba(245,192,79,.55)}
.dr__in{display:flex;flex-direction:column;gap:14px;width:100%;padding:clamp(22px,3.4vw,40px)}
.dr__tag{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:7px 15px;border-radius:99px;background:var(--acc);color:#140E00;font-weight:800;font-size:.85rem}
.dr h3{margin:0;font:800 clamp(1.8rem,3.4vw,2.7rem)/1.06 var(--font-head);color:#fff;letter-spacing:-.02em}
.dr p{margin:0;font-size:1.1rem;color:#E8DFC6;max-width:44ch}
.dr .nl input{background:rgba(255,255,255,.95);color:#0A0A0A;border-color:transparent}
.dr .nl__m,.dr .nx__s{color:#E8DFC6}.dr .nl__ok{background:rgba(5,5,5,.6);color:#fff}.dr .nl__ok b{color:#fff}.dr .nl__ok span{color:#E8DFC6}
.dr__lv{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:10px}
.dr__lv a{display:grid;grid-template-columns:1fr auto;gap:2px 16px;align-items:center;padding:13px 18px;border:1px solid rgba(255,255,255,.28);border-radius:18px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px);color:#fff;text-decoration:none;transition:transform .3s var(--e),background .3s,border-color .3s}
.dr__lv a:hover{transform:translateX(8px);border-color:var(--acc);background:rgba(245,192,79,.2)}
.dr__lv b{font:800 1.15rem var(--font-head)}.dr__lv span{grid-column:1;color:#E8DFC6;font-size:.92rem}.dr__lv em{grid-row:1/3;grid-column:2;font-style:normal;font-weight:800;color:var(--acc)}
.dr__act{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.dr .btn--ghost{color:#fff;border-color:rgba(255,255,255,.5)}
.dr .btn--solid{background:#F2B632;color:#140E00;border-color:transparent}
@media(max-width:900px){.dr{flex-direction:column;min-height:0}.dr__d,.dr:has(.dr__d:hover) .dr__d:not(:hover),.dr__d:hover{flex:none;min-height:480px}.dr__no{font-size:5rem}}
@media(prefers-reduced-motion:reduce){.dr,.dr__d,.dr__d>img,.dr__lv a{transition:none}.dr{opacity:1;transform:none}}


/* ==================== MERGED FROM login-page.css ==================== */

/* TradeWise student authentication — intentionally independent of the main site header */
.auth-page{min-height:100vh;background:var(--bg);font-family:var(--font-body);overflow-x:hidden}
.auth-topbar{height:64px;padding:0 clamp(18px,3.3vw,48px);display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1000;flex:none}
.auth-back{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-size:14px;font-weight:600;transition:color .2s}
.auth-back:hover{color:var(--accent-text)}.auth-back i{font-size:13px}
.auth-tools{display:flex;align-items:center;gap:9px}
.auth-tool{width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--text);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.auth-tool:hover{background:var(--shade);border-color:var(--accent);transform:translateY(-1px)}.auth-tool i{font-size:14px}
.auth-main{position:relative;isolation:isolate;min-height:calc(100vh - 64px);padding:clamp(32px,5.2vh,58px) 18px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 8% 8%,var(--shade-strong),transparent 34%),radial-gradient(ellipse at 96% 92%,var(--shade),transparent 33%),var(--bg)}
.auth-orbit{position:absolute;z-index:-1;width:310px;height:310px;border:1px solid var(--line);border-radius:50%;pointer-events:none}.auth-orbit--one{top:-215px;left:-125px;box-shadow:0 0 0 32px var(--shade),0 0 0 64px transparent}.auth-orbit--two{right:-215px;bottom:-235px;width:390px;height:390px;box-shadow:0 0 0 35px var(--shade)}
.auth-card{width:min(100%,660px);padding:clamp(27px,4vw,48px) clamp(22px,5vw,64px) 28px;border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:0 24px 75px rgba(30,22,0,.09);position:relative}
.auth-brand{display:flex;align-items:center;justify-content:center;gap:13px;text-decoration:none;color:var(--text);margin:0 auto 31px;width:fit-content;max-width:100%}.auth-brand img{width:60px;height:60px;object-fit:contain;flex:none}.auth-brand-copy{display:flex;flex-direction:column;gap:4px}.auth-brand-copy strong{font:700 clamp(18px,2.2vw,25px)/1.12 var(--font-head);letter-spacing:-.045em}.auth-brand-copy small{font-size:9px;font-weight:800;letter-spacing:.13em;color:var(--accent-text)}
.auth-intro{text-align:center;margin:0 auto 28px;max-width:510px}.auth-eyebrow{font-size:10px;font-weight:800;letter-spacing:.17em;color:var(--accent-text)}.auth-intro h1{font:700 clamp(30px,4vw,43px)/1.13 var(--font-head);letter-spacing:-.055em;color:var(--text);margin:15px 0 12px}.auth-intro h1 em{font-style:normal;color:var(--accent-text);position:relative;white-space:normal}.auth-intro p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.auth-form{width:100%;max-width:520px;margin:0 auto}.auth-label{display:block;color:var(--text);font-size:13px;font-weight:800;margin:0 0 9px}.auth-label span{color:var(--loss)}.auth-input{display:block;width:100%;height:56px;border:1px solid var(--line);border-radius:13px;padding:0 17px;background:var(--bg);color:var(--text);font:500 14px var(--font-body);outline:none;transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:var(--muted);opacity:.7}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--shade-strong)}
.auth-label-row{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:23px}.auth-label-row .auth-label{margin-bottom:9px}.auth-label-row>a,.auth-switch a{font-size:12px;font-weight:800;color:var(--accent-text);text-decoration:none}.auth-label-row>a:hover,.auth-switch a:hover{text-decoration:underline}
.auth-password-wrap{position:relative}.auth-password-wrap .auth-input{padding-inline-end:72px}.auth-show{position:absolute;inset-block:0;inset-inline-end:13px;border:0;background:transparent;color:var(--accent-text);font:800 12px var(--font-body);cursor:pointer}
.auth-remember{display:flex;align-items:center;gap:10px;margin:18px 0 22px;color:var(--muted);font-size:12px;cursor:pointer}.auth-remember input{width:16px;height:16px;margin:0;accent-color:var(--accent)}
.auth-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:57px;border:0;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);font:800 15px var(--font-body);cursor:pointer;box-shadow:0 12px 26px var(--shade-strong);transition:transform .2s,box-shadow .2s,background .2s}.auth-submit:hover{transform:translateY(-2px);box-shadow:0 16px 30px var(--shade-strong)}.auth-submit i{font-size:13px}.auth-status{min-height:0;margin:0;text-align:center;color:var(--accent-text);font-size:12px}.auth-status:not(:empty){margin-top:12px}
.auth-switch{text-align:center;color:var(--muted);font-size:12px;margin:21px 0 22px}.auth-security{display:flex;align-items:center;gap:12px;padding-top:19px;border-top:1px solid var(--line)}.auth-security-icon{width:38px;height:38px;display:grid;place-items:center;flex:none;border-radius:12px;background:var(--shade-strong);color:var(--accent-text)}.auth-security strong,.auth-security small{display:block}.auth-security strong{font-size:12px;color:var(--text);margin-bottom:2px}.auth-security small{font-size:11px;line-height:1.5;color:var(--muted)}.auth-bottom-note{margin:20px 0 0;text-align:center;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.18em}
html[data-theme="dark"] .auth-card{box-shadow:0 24px 75px rgba(0,0,0,.28)}html[data-theme="dark"] .auth-submit{background:var(--gold);color:#17130a}html[dir="rtl"] .auth-back i{transform:rotate(180deg)}html[dir="rtl"] .auth-submit i{transform:rotate(180deg)}
@media(max-width:600px){.auth-topbar{height:58px;padding-inline:15px}.auth-tool{width:36px;height:36px}.auth-main{min-height:calc(100svh - 58px);padding:24px 13px 18px;justify-content:flex-start}.auth-card{border-radius:21px;padding:26px 21px 23px}.auth-brand{margin-bottom:27px;gap:10px}.auth-brand img{width:51px;height:51px}.auth-brand-copy small{font-size:8px;letter-spacing:.08em}.auth-intro{margin-bottom:25px}.auth-intro h1{font-size:clamp(29px,8vw,36px);margin-top:13px}.auth-intro p{font-size:13px}.auth-input{height:53px}.auth-bottom-note{font-size:8px;letter-spacing:.12em;margin-top:16px}}
@media(max-width:360px){.auth-card{padding-inline:16px}.auth-brand-copy strong{font-size:17px}.auth-brand-copy small{font-size:7px}.auth-back{font-size:12px}.auth-tools{gap:6px}.auth-tool{width:33px;height:33px}}
@media(prefers-reduced-motion:reduce){.auth-tool,.auth-input,.auth-submit{transition:none}}

/* Accessible validation feedback and reliable sticky auth toolbar */
.auth-topbar{position:sticky!important;top:0!important;z-index:1000!important;isolation:isolate}
.auth-field-error{display:block;color:#b42318;font-size:12px;line-height:1.45;margin:7px 2px 0;font-weight:600}
.auth-input[aria-invalid="true"]{border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.09)}
.auth-input:focus-visible,.auth-tool:focus-visible,.auth-submit:focus-visible,.auth-show:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.auth-status{line-height:1.5}


/* ==================== MERGED FROM register-page.css ==================== */

/* Register page extensions — shares the existing TradeWise authentication system */
.register-main{padding-top:clamp(28px,4vh,44px)}
.register-card{width:min(100%,760px);padding:clamp(25px,3.5vw,42px) clamp(22px,5vw,62px) 28px}
.register-card .auth-brand{margin-bottom:24px}
.register-intro{margin-bottom:24px;max-width:600px}
.register-intro h1{font-size:clamp(29px,3.5vw,39px);margin:12px 0 10px}
.register-intro p{max-width:540px;margin-inline:auto}
.register-form{max-width:100%}
.register-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:17px}
.register-field{min-width:0}
.register-field--full{grid-column:1/-1}
.register-field .auth-label{margin-bottom:8px}
.register-field .auth-input{height:52px;min-width:0}
.register-field .auth-password-wrap .auth-input{padding-inline-end:67px}
.register-field .auth-field-error{margin-bottom:0}
.register-strength{height:4px;background:var(--line);border-radius:99px;overflow:hidden;margin-top:9px}
.register-strength span{display:block;width:0;height:100%;border-radius:inherit;background:var(--accent);transition:width .2s ease,background .2s ease}
.register-strength span[data-strength="1"]{background:#d97706}
.register-strength span[data-strength="2"]{background:#b9a12c}
.register-strength span[data-strength="3"]{background:#16835d}
.register-strength-label{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.4}
.register-terms-wrap{margin:18px 0 20px}
.register-terms{align-items:flex-start;line-height:1.55;margin:0 0 7px;font-size:12px}
.register-terms input{margin-top:2px;flex:none}
.register-terms a{color:var(--accent-text);font-weight:800;text-decoration:none}
.register-terms a:hover{text-decoration:underline}
.register-terms b{color:var(--loss)}
.register-terms-note{display:none;margin:8px 0 0 26px;color:var(--muted);font-size:11px;line-height:1.55}
.register-terms-note.is-visible{display:block}
.register-card .auth-switch{margin:19px 0 20px}
@media(max-width:600px){.register-main{padding-top:22px}.register-card{padding:24px 20px 22px}.register-grid{grid-template-columns:minmax(0,1fr);row-gap:15px}.register-field--full{grid-column:auto}.register-intro{margin-bottom:22px}.register-intro h1{font-size:clamp(28px,7.5vw,35px)}.register-field .auth-input{height:52px}.register-terms-wrap{margin:17px 0}.register-card .auth-brand{margin-bottom:22px}}
@media(max-width:360px){.register-card{padding-inline:15px}.register-terms{font-size:11px}}
@media(prefers-reduced-motion:reduce){.register-strength span{transition:none}}

/* ===== About page: isolate the instructor-card grid from legacy .tm component styles ===== */
.about-page #team .tm {
  position: static;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 18px;
  margin-top: clamp(28px, 4vw, 48px);
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  box-shadow: none;
}
.about-page #team .tm::before { content: none; display: none; }
.about-page #team .tmc {
  min-width: 0;
  height: 100%;
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--line);
  border-radius: 20px;
  overflow: hidden;
}
.about-page #team .tmc__body { min-width: 0; background: var(--surface); color: var(--text); }
.about-page #team .tmc__body h3 { color: var(--ink); overflow-wrap: anywhere; }
.about-page #team .tmc__role { color: var(--accent-text); line-height: 1.45; overflow-wrap: anywhere; }
.about-page #team .tmc__bio { color: var(--muted); overflow-wrap: anywhere; }
.about-page #team .tmc__soc a { color: var(--text); }
.about-page #team .tmc__ph { min-width: 0; }
.about-page #team .tmc__ini { z-index: 1; }
@media (max-width: 1023px) {
  .about-page #team .tm { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .about-page #team .tm { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .about-page #team .tm { max-width: 400px; margin-inline: auto; }
  .about-page #team .tmc__ph { aspect-ratio: 4 / 5; }
  .about-page #team .tmc__ph img { object-position: 50% 12%; }
  .about-page #team .tmc__body { padding: 18px; }
  .about-page #team .tmc__body h3 { font-size: 1.15rem; }
}
@media (max-width: 360px) {
  .about-page #team .tmc__body { padding: 15px; }
  .about-page #team .tmc__soc a { width: 32px; height: 32px; }
}
/* Keep About text readable in both themes, including inherited legacy rules. */
html[data-theme="dark"] .about-page #team .tmc__body h3 { color: #fff8e9; }
html[data-theme="dark"] .about-page #team .tmc__role { color: #f5c04f; }
html[data-theme="dark"] .about-page #team .tmc__bio { color: #d0c7b4; }
html[data-theme="light"] .about-page #team .tmc__body h3 { color: #17140d; }
html[data-theme="light"] .about-page #team .tmc__role { color: #805700; }
html[data-theme="light"] .about-page #team .tmc__bio { color: #5b5343; }
/* Sticky header remains above animated sections on every viewport. */
.about-page main { position: relative; }
@media (prefers-reduced-motion: reduce) {
  .about-page [data-aos] { opacity: 1 !important; transform: none !important; }
}

/* ===== Home section 5: Student dashboard. Scroll-driven story: big type on the left, one sticky app screen on the right ===== */
.sp{overflow-x:clip;--ink:#fff;--text:#F5F2EB;--muted:#BDB296;--accent:#F2B632;--accent-text:#F5C04F;--gain:#1FD18B;--line:rgba(245,192,79,.22);--btn-bg:#F2B632;--btn-fg:#140E00;
  position:relative;isolation:isolate;background:#0A0A09;color:var(--text);padding-bottom:clamp(48px,6vw,96px)}
.sp::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(50% 40% at 85% 30%,rgba(245,192,79,.13),transparent 70%),radial-gradient(40% 30% at 0% 80%,rgba(31,209,139,.07),transparent 70%)}
.sp__intro{max-width:900px}
.sp__intro h2{font-size:clamp(2.2rem,5.2vw,4.25rem);line-height:1.03;letter-spacing:-.04em;color:var(--ink)}
.sp__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,96px);margin-top:clamp(16px,3vw,40px)}

/* left: the three steps */
.sp-step{display:flex;flex-direction:column;justify-content:center;min-height:82vh}
.sp--js .sp-step{opacity:.25;transition:opacity .5s}
.sp--js .sp-step.is-on{opacity:1}
.sp-step .sp-no{margin:0;max-width:none;font:800 clamp(5rem,11vw,9.5rem)/.85 var(--font-head);letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px var(--accent)}
.sp-step h3{margin:18px 0 0;font:800 clamp(1.75rem,3.2vw,2.75rem)/1.08 var(--font-head);letter-spacing:-.03em;color:var(--ink);max-width:16ch}
.sp-step p{margin:16px 0 0;max-width:40ch;color:var(--muted);font-size:1.0625rem;line-height:1.65}
.sp-big{display:flex;align-items:baseline;gap:14px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.sp-big b{font:800 clamp(2.4rem,4.4vw,3.6rem)/1 var(--font-head);letter-spacing:-.04em;color:var(--accent-text)}
.sp-big span{max-width:22ch;font-size:.9375rem;line-height:1.4;color:var(--muted)}
.sp-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* right: sticky stage with crossfading screens */
.sp__side{position:relative}
.sp-stage{position:sticky;top:calc(var(--h, 72px) + 24px);height:min(76vh,640px);margin-top:calc(-1 * min(4vh,0px));border:1px solid var(--line);border-radius:32px;background:linear-gradient(160deg,rgba(245,192,79,.09),transparent 40%),#0E0D0A;overflow:hidden;box-shadow:0 40px 100px -40px rgba(0,0,0,.9),0 0 90px -40px var(--accent)}
.sp-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid rgba(255,255,255,.07);font-size:.8125rem;color:var(--muted)}
.sp-bar i{display:inline-block;width:9px;height:9px;margin-inline-end:6px;border-radius:50%;background:rgba(255,255,255,.18)}
.sp-bar b{color:var(--text);font-weight:600}
.sp-screens{position:absolute;inset:50px 0 62px}
.sp-screen{padding:clamp(18px,2.4vw,30px);display:flex;flex-direction:column}
.sp--js .sp-screen{position:absolute;inset:0;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .5s,transform .5s}
.sp--js .sp-screen.is-on{opacity:1;transform:none;pointer-events:auto}
.sp-k{display:flex;align-items:center;gap:10px;margin:0 0 18px;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text)}
.sp-pill{padding:2px 9px;border-radius:999px;background:rgba(245,192,79,.14);font-size:.6875rem;letter-spacing:.04em}
.sp-tabs{position:absolute;inset:auto 0 0;display:flex;justify-content:center;gap:8px;padding:14px;border-top:1px solid rgba(255,255,255,.07);background:#0B0A08}
.sp-tabs button{all:unset;cursor:pointer;padding:7px 16px;border-radius:999px;font-size:.8125rem;font-weight:700;color:var(--muted);transition:background .25s,color .25s}
.sp-tabs button:hover{color:#fff}
.sp-tabs button[aria-current="true"]{background:var(--accent);color:#140E00}
.sp-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* screen 1: courses (ring + lines, no boxes) */
.sp-s1{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:center;flex:1}
.sp-ring{position:relative;display:grid;place-items:center;align-content:center;width:clamp(130px,15vw,190px);aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--accent) 0 74%,rgba(255,255,255,.1) 0);text-align:center}
.sp-ring::before{content:"";position:absolute;inset:12px;border-radius:50%;background:#0E0D0A}
.sp-ring b,.sp-ring span{position:relative}
.sp-ring b{font:800 clamp(1.9rem,3vw,2.75rem)/1 var(--font-head);color:#fff;letter-spacing:-.03em}
.sp-ring span{margin-top:6px;font-size:.75rem;color:var(--muted)}
.sp-lines{list-style:none;margin:0;padding:0;display:grid;gap:0}
.sp-lines li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.sp-lines li:last-child{border-bottom:0}
.sp-lines b{font-size:.9688rem;color:#fff;font-weight:600}
.sp-lines span{font:800 1rem/1.2 var(--font-head);color:var(--accent-text)}
.sp-lines small{grid-column:1/-1;font-size:.75rem;color:var(--muted)}
.sp-lines i{grid-column:1/-1;height:5px;margin-top:8px;border-radius:9px;background:rgba(255,255,255,.1);overflow:hidden}
.sp-lines i::after{content:"";display:block;height:100%;width:var(--p);border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--gain))}

/* screen 2: schedule as a vertical timeline */
.sp-tl{list-style:none;margin:0;padding:0;position:relative;display:grid;gap:6px;flex:1;align-content:space-evenly}
.sp-tl::before{content:"";position:absolute;inset-inline-start:92px;top:12px;bottom:12px;width:2px;background:linear-gradient(180deg,var(--accent),rgba(255,255,255,.1))}
.sp-tl li{position:relative;display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:0 30px;align-items:center;padding:12px 0}
.sp-tl li::before{content:"";position:absolute;inset-inline-start:87px;width:12px;height:12px;border-radius:50%;background:#0E0D0A;border:2px solid var(--accent)}
.sp-tl time{font:700 .8125rem/1.2 var(--font-head);color:var(--accent-text);white-space:nowrap}
.sp-tl b{display:block;font-size:.9688rem;color:#fff;font-weight:600}
.sp-tl small{font-size:.75rem;color:var(--muted)}
.sp-tl em{font-style:normal;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.08);font-size:.6875rem;font-weight:700;color:var(--text)}
.sp-tl em.is-live{background:rgba(255,77,79,.15);color:#FF6B6D}

/* screen 3: portfolio, big number + full-width chart */
.sp-val{font:800 clamp(2.4rem,4.6vw,3.75rem)/1 var(--font-head);letter-spacing:-.04em;color:#fff}
.sp-delta{margin-top:8px;font-size:.9375rem;font-weight:700;color:var(--gain)}
.sp-delta span{font-weight:400;color:var(--muted)}
.sp-chart{position:relative;flex:1;min-height:110px;margin-top:14px}
.sp-chart svg{position:absolute;inset:0;width:100%;height:100%}
.sp-grid line{stroke:rgba(255,255,255,.08);stroke-dasharray:3 4}
.sp-line{stroke-dasharray:700;stroke-dashoffset:0}
.sp-screen.is-on .sp-line{animation:spDraw 1.6s .15s ease-out both}
@keyframes spDraw{from{stroke-dashoffset:700}to{stroke-dashoffset:0}}
.sp-x{display:flex;justify-content:space-between;margin-top:8px;font-size:.6875rem;color:var(--muted)}
.sp-note{margin:10px 0 0;font-size:.6875rem;line-height:1.45;color:var(--muted)}

@media (max-width:900px){
  .sp__grid{grid-template-columns:minmax(0,1fr);gap:0}
  .sp__side{order:-1;position:sticky;top:calc(var(--h, 64px) + 8px);z-index:2;align-self:start;margin-bottom:8px}
  .sp-stage{position:relative;top:auto;height:min(58vh,400px);border-radius:24px}
  .sp-step{min-height:62vh;padding-block:24px}
  .sp-no{font-size:4.5rem}
  .sp-ring{display:none}.sp-s1{grid-template-columns:1fr}
  .sp-tl li:nth-child(n+4){display:none}
  .sp-note{display:none}
}
@media (max-width:520px){.sp-tl::before{inset-inline-start:81px}.sp-tl li::before{inset-inline-start:76px}.sp-tl li{grid-template-columns:72px minmax(0,1fr);gap:0 22px}.sp-tl em{display:none}.sp-cta .btn{flex:1 1 100%}}

@media (prefers-reduced-motion:reduce){.sp--js .sp-step,.sp--js .sp-screen,.sp-tabs button{transition:none}.sp-screen.is-on .sp-line{animation:none}}

/* mobile polish for the dashboard story */
@media (max-width:900px){
  .sp-stage{height:min(62vh,440px)}
  .sp-bar{padding:10px 16px}.sp-bar span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sp-bar b{display:none}
  .sp-screens{inset:40px 0 52px}
  .sp-screen{padding:16px 18px}
  .sp-k{margin-bottom:10px}
  .sp-tl li{padding:7px 0}
  .sp-tabs{padding:8px}
  .sp-val{font-size:2.25rem}
  .sp-lines li{padding:9px 0}
}

/* ---- Dashboard story: robust mobile / tablet layout ----
   The stage sizes to its content (no clipped rows), sits on a solid
   backing so scrolling text never shows around or behind it, and only
   sticks when the screen is tall enough to leave room for the steps. */
@media (max-width:900px){
  .sp__side{position:relative;top:auto;z-index:5;margin:0 0 12px;padding:0;background:transparent}
  .sp-stage{position:relative;top:auto;height:auto;max-height:none;margin:0;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(160deg,rgba(245,192,79,.09),transparent 40%),#0E0D0A}
  .sp-screens{position:relative;inset:auto;display:grid;flex:1}
  .sp--js .sp-screen,.sp-screen{position:relative;inset:auto;grid-area:1/1;min-width:0}
  .sp--js .sp-screen:not(.is-on){visibility:hidden}
  .sp-tabs{position:relative;inset:auto;flex-wrap:wrap}
  .sp-chart{min-height:96px}
  .sp-lines li:nth-child(n+4){display:none}
  .sp-step{min-height:60vh;justify-content:flex-start;padding-block:28px}
  .sp-step:last-child{min-height:0}
}
@media (max-width:900px) and (min-height:640px){
  .sp__side{position:sticky;top:calc(var(--h,68px) - 1px);padding:9px 0 14px;background:linear-gradient(#0A0A09 90%,rgba(10,10,9,0));box-shadow:-100vmax 0 0 0 #0A0A09,100vmax 0 0 0 #0A0A09;clip-path:inset(0 -100vmax)}
}
@media (max-width:520px){
  .sp-stage{border-radius:20px}
  .sp-bar{padding:9px 14px;font-size:.75rem}
  .sp-screen{padding:14px}
  .sp-k{font-size:.72rem;margin-bottom:8px}
  .sp-lines b,.sp-tl b{font-size:.9rem}
  .sp-lines li{padding:8px 0;gap:2px 10px}
  .sp-tabs{gap:4px;padding:8px 6px}
  .sp-tabs button{padding:7px 12px;font-size:.78rem}
  .sp-val{font-size:2rem}
  .sp-step h3{max-width:none}
  .sp-big{flex-wrap:wrap;gap:8px 14px}
}
@media (max-width:420px){.sp-tl time{font-size:.72rem}}
@media (max-width:360px){
  .sp-tabs button{padding:6px 9px;font-size:.74rem}
  .sp-tl li{grid-template-columns:62px minmax(0,1fr);gap:0 18px}
  .sp-tl::before{inset-inline-start:71px}.sp-tl li::before{inset-inline-start:66px}
}


/* ===== Home section 6: Free resources. Index list + fanned stack of real PDF previews ===== */
.res{position:relative;isolation:isolate;overflow:hidden;background:var(--bg)}
.res::before{content:"";position:absolute;z-index:-1;inset-inline-end:-10%;top:-6%;width:min(60vw,720px);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,var(--shade-strong),transparent);pointer-events:none}
.res__top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px 48px}
.res__copy{flex:1 1 420px;min-width:0}
.res__copy h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.06;letter-spacing:-.035em;color:var(--ink);max-width:16ch}
.res__lead{margin:16px 0 0;max-width:50ch;color:var(--muted);font-size:1.0625rem;line-height:1.65}
.res-stats{list-style:none;margin:0;padding:0;display:flex;gap:0;border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}
.res-stats li{padding:16px 24px;text-align:center;border-inline-start:1px solid var(--line)}
.res-stats li:first-child{border-inline-start:0}
.res-stats b{display:block;font:800 1.75rem/1 var(--font-head);letter-spacing:-.03em;color:var(--accent-text)}
.res-stats span{display:block;margin-top:6px;font-size:.8125rem;color:var(--muted);white-space:nowrap}
.res-filter{display:flex;flex-wrap:wrap;gap:10px;margin:34px 0 26px}
.res-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--text);font:600 .9375rem/1 var(--font-head);cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.res-chip em{font-style:normal;font-size:.75rem;opacity:.7}
.res-chip:hover{border-color:var(--accent);background:var(--shade)}
.res-chip[aria-pressed="true"]{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}
.res-chip:focus-visible,.rc:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.res-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.rc-li[hidden]{display:none}
.rc{display:flex;flex-direction:column;height:100%;border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden;text-decoration:none;color:inherit;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.rc:hover{transform:translateY(-6px);border-color:var(--accent);box-shadow:var(--shadow)}
.rc-thumb{position:relative;display:block;height:210px;overflow:hidden;background:linear-gradient(160deg,var(--shade-strong),var(--shade))}
.rc-thumb img{position:absolute;inset-inline:0;top:30px;margin-inline:auto;width:62%;height:auto;border-radius:6px 6px 0 0;box-shadow:0 16px 36px -14px rgba(0,0,0,.55);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.rc:hover .rc-thumb img{transform:translateY(-8px) scale(1.03)}
.rc-tag{position:absolute;z-index:2;inset-block-start:12px;inset-inline-start:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);font:700 .6875rem/1 var(--font-head);letter-spacing:.02em}
.rc-body{display:block;padding:18px 18px 8px;flex:1}
.rc-body b{display:block;font:700 1.0625rem/1.25 var(--font-head);color:var(--ink)}
.rc-body small{display:block;margin-top:6px;font-size:.875rem;line-height:1.5;color:var(--muted)}
.rc-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 18px 0;padding:12px 0 16px;border-top:1px dashed var(--line);font-size:.8125rem;font-weight:700;color:var(--muted)}
.rc-dl{display:inline-flex;align-items:center;gap:8px;color:var(--accent-text);transition:gap .3s}
.rc-dl i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--shade-strong);font-size:.75rem;transition:background .3s,color .3s}
.rc:hover .rc-dl i{background:var(--accent);color:#140E00}
.res-kit{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(20px,4vw,48px);margin-top:28px;padding:28px clamp(22px,4vw,44px);border-radius:26px;overflow:hidden;background:radial-gradient(120% 160% at 0% 0%,#2A2108 0%,#0A0A0A 60%);color:#F5F2EB;border:1px solid rgba(245,192,79,.35)}
.res-kit__fan{position:relative;width:170px;height:120px}
.res-kit__fan img{position:absolute;top:-6px;width:84px;height:auto;border-radius:5px;box-shadow:0 14px 28px -8px rgba(0,0,0,.8);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.res-kit__fan img:nth-child(1){inset-inline-start:0;transform:rotate(-12deg)}
.res-kit__fan img:nth-child(2){inset-inline-start:42px;top:-14px;z-index:2;transform:rotate(-1deg)}
.res-kit__fan img:nth-child(3){inset-inline-start:84px;transform:rotate(11deg)}
.res-kit:hover .res-kit__fan img:nth-child(1){transform:rotate(-18deg) translateX(-6px)}
.res-kit:hover .res-kit__fan img:nth-child(3){transform:rotate(17deg) translateX(6px)}
.res-kit__k{margin:0 0 6px;font:700 .75rem/1 var(--font-head);letter-spacing:.14em;text-transform:uppercase;color:#F5C04F}
.res-kit h3{margin:0;font:800 clamp(1.375rem,2.6vw,1.875rem)/1.15 var(--font-head);letter-spacing:-.02em;color:#fff}
.res-kit__txt p:last-child{margin:8px 0 0;max-width:46ch;color:#D8CFB8;font-size:.9375rem;line-height:1.6}
.res-kit__cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.res-kit .btn--solid{--btn-bg:#F2B632;--btn-fg:#140E00}
.res-kit .btn--ghost{color:#F5F2EB;border-color:rgba(245,192,79,.5)}





@media (max-width:900px){
  .res-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .res-kit{grid-template-columns:minmax(0,1fr);justify-items:start}
  .res-kit__cta{justify-content:flex-start}
  }
@media (max-width:520px){.res-grid{grid-template-columns:minmax(0,1fr)}.res-stats{width:100%}.res-stats li{flex:1;padding:14px 8px}.res-stats span{white-space:normal}.rc-thumb{height:190px}.res-kit__cta .btn{flex:1 1 100%}.res-kit__fan{transform:scale(.9);transform-origin:left center}}
@media (prefers-reduced-motion:reduce){
  .rc,.rc-thumb img,.res-chip,.res-kit__fan img{transition:none}.rc:hover{transform:none}
}


/* ==================== Courses page: Student dashboard section (cs-db) ==================== */
.cs-db { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(32px,5vw,72px); align-items:center; }
.cs-db .cs__h { font-size:clamp(2rem,4vw,3.2rem); }
.cs-db-list { margin:26px 0 0; padding:0; list-style:none; display:grid; gap:16px; }
.cs-db-list li { display:flex; gap:14px; align-items:flex-start; color:var(--mut); font-size:.9375rem; line-height:1.5; }
.cs-db-list li > i { flex:none; width:26px; height:26px; margin-top:1px; display:grid; place-items:center; border-radius:50%; background:var(--gold2); color:var(--ink); font-size:.75rem; }
.cs-db-list b { display:block; color:var(--ink); font-size:1rem; }
.cs-db-cta { display:flex; flex-wrap:wrap; align-items:center; gap:14px 24px; margin-top:30px; }
.cs-db-mock { --dt:#F5EFE0; --dm:#B7AC93; --dl:rgba(245,192,79,.22); position:relative; padding:clamp(16px,2.4vw,24px); border-radius:28px; background:#14100A; color:var(--dt); box-shadow:0 30px 70px rgba(20,16,10,.28); }
.cs-db-mock::before { content:""; position:absolute; inset:-14px -14px auto auto; width:46%; height:46%; z-index:-1; border-radius:28px; background:var(--gold2); opacity:.35; }
.cs-db-top { display:flex; align-items:center; gap:14px; margin-bottom:16px; flex-wrap:wrap; }
.cs-db-av { flex:none; width:44px; height:44px; overflow:hidden; border-radius:50%; background:linear-gradient(135deg,#3a2c0c,#0d0e11); border:2px solid var(--gold2); }
.cs-db-av img, .cs-db-rec img { width:100%; height:100%; object-fit:cover; display:block; }
.cs-db-top b { display:block; font:700 1.0625rem/1.2 var(--font-head); } .cs-db-top small { color:var(--dm); font-size:.8125rem; }
.cs-db-pill { margin-inline-start:auto; display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border-radius:99px; border:1px solid var(--dl); background:rgba(245,192,79,.1); font-size:.8125rem; font-weight:600; }
.cs-db-pill i { width:8px; height:8px; border-radius:50%; background:#ff4d4d; animation:cs-db-pulse 1.8s infinite; }
@keyframes cs-db-pulse { 0% { box-shadow:0 0 0 0 rgba(255,77,77,.6); } 70%,100% { box-shadow:0 0 0 8px rgba(255,77,77,0); } }
.cs-db-g { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.cs-db-p { min-width:0; padding:18px; border:1px solid var(--dl); border-radius:18px; background:rgba(255,255,255,.04); }
.cs-db-p > small { display:block; margin-bottom:12px; font-size:.8125rem; color:var(--dm); }
.cs-db-p--pf { grid-column:1/-1; } .cs-db-p--pf b { font:800 clamp(1.6rem,3vw,2.1rem)/1 var(--font-head); letter-spacing:-.03em; } .cs-db-p--pf em { margin-inline-start:8px; font:700 .9375rem var(--font-body); font-style:normal; color:#1FD18B; }
.cs-db-p svg { display:block; width:100%; height:92px; margin-top:12px; } .cs-db-line { fill:none; stroke:#1FD18B; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:1; vector-effect:non-scaling-stroke; }
.cs-db-pr { margin-bottom:14px; font-size:.875rem; } .cs-db-pr:last-child { margin-bottom:0; } .cs-db-pr span { display:flex; justify-content:space-between; gap:10px; margin-bottom:7px; } .cs-db-pr em { font-style:normal; color:var(--gold2); font-weight:700; }
.cs-db-pr i { display:block; height:8px; border-radius:99px; background:rgba(255,255,255,.1); overflow:hidden; } .cs-db-pr i::after { content:""; display:block; width:var(--p); height:100%; border-radius:99px; background:linear-gradient(90deg,var(--gold),var(--gold2)); transition:width 1.2s cubic-bezier(.2,.8,.2,1) .5s; }
.cs-db-rec { margin:0; padding:0; list-style:none; display:grid; gap:12px; }
.cs-db-rec li { display:flex; align-items:center; gap:12px; min-width:0; font-size:.8125rem; color:var(--dm); }
.cs-db-rec img { flex:none; width:44px; height:44px; border-radius:10px; background:#2a2210; } .cs-db-rec span { flex:1; min-width:0; } .cs-db-rec b { display:block; color:var(--dt); font-size:.875rem; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } .cs-db-rec li > i { color:var(--gold2); font-size:1.25rem; }
.cs-js .cs-db-mock:not(.in) .cs-db-line { stroke-dashoffset:1; } .cs-db-line { transition:stroke-dashoffset 2s cubic-bezier(.4,0,.2,1) .5s; } .cs-db-mock.in .cs-db-line { stroke-dashoffset:0; }
.cs-js .cs-db-mock:not(.in) .cs-db-pr i::after { width:0; }
@media (max-width:1000px) { .cs-db { grid-template-columns:minmax(0,1fr); } .cs-db-mock { max-width:640px; width:100%; } }
@media (max-width:560px) { .cs-db-g { grid-template-columns:minmax(0,1fr); } .cs-db-pill { margin-inline-start:0; } .cs-db-cta .btn { width:100%; justify-content:center; } .cs-db-mock::before { display:none; } }
@media (prefers-reduced-motion:reduce) { .cs-db-pill i { animation:none; } .cs-db-line, .cs-db-pr i::after { transition:none; } .cs-js .cs-db-mock:not(.in) .cs-db-line { stroke-dashoffset:0; } .cs-js .cs-db-mock:not(.in) .cs-db-pr i::after { width:var(--p); } }


/* ==================== Courses page: "Before you enroll" as a mentor chat with quick replies ==================== */
.fq{--fq-ink:#0C0B07;--fq-gold:#F5C04F;--fq-deep:#8A5E00;--fq-mut:#B9AE92;--fq-line:rgba(138,94,0,.22);background:#FAF7EE;padding-block:clamp(56px,7vw,96px)}
.fq-card{--fq-px:clamp(18px,3vw,36px);display:flex;flex-direction:column;width:100%;overflow:hidden;border-radius:24px;background:#fff;border:1px solid var(--fq-line);box-shadow:0 24px 60px -30px rgba(30,22,0,.3)}
.fq-side{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:22px;padding:clamp(24px,3vw,32px) var(--fq-px);background:var(--fq-ink);color:#F5EEDC}
.fq-side::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(75% 55% at 0% 0%,rgba(245,192,79,.2),transparent 70%),radial-gradient(60% 45% at 100% 100%,rgba(14,159,110,.15),transparent 70%)}
.fq-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px}
.fq-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1 1 340px;min-width:0}
.fq .cs__tag{color:var(--fq-gold)}
.fq .cs__h{display:flex;flex-wrap:wrap;column-gap:.28em;font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.08;letter-spacing:-.04em;color:#fff;margin-top:10px}
.fq .cs__h .ln:last-child>span{color:var(--fq-gold)}
.fq .cs__p{max-width:46ch;margin:10px 0 0;font-size:.9375rem;line-height:1.6;color:var(--fq-mut)}
.fq-cta{flex:none}
.fq-free{margin-top:14px;padding:6px 12px;border-radius:999px;background:rgba(52,211,153,.15);color:#34D399;font:700 .75rem/1 var(--font-head)}
.fq-cta__a{display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.fq .btn--solid{--btn-bg:#F5C04F;--btn-fg:#0A0A0A}
.fq .cs-link{color:#F5EEDC;border-color:rgba(245,192,79,.6)}
.fq .cs-link:hover{color:var(--fq-gold)}
.fq-facts{list-style:none;margin:0;padding:18px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px;border-top:1px solid rgba(245,192,79,.18)}
.fq-facts li{display:flex;align-items:center;gap:12px}
.fq-facts li>i{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:rgba(245,192,79,.14);color:var(--fq-gold);font-size:.95rem}
.fq-facts b{display:block;margin-bottom:1px;font:700 .875rem/1.3 var(--font-head);color:#fff}
.fq-facts li>span{font-size:.78rem;line-height:1.4;color:var(--fq-mut)}
.fq-chat{display:flex;flex-direction:column;min-width:0;text-align:start;background:#FFFEFB}
.fq-chat__bar{display:flex;align-items:center;gap:12px;padding:12px var(--fq-px);background:#FAF7EE;border-bottom:1px solid var(--fq-line)}
.fq-av,.fq-r--bot::before{flex:none;border-radius:50%;background:#2a2412 url(../images/team-1.jpg) center/cover}
.fq-av{width:40px;height:40px;box-shadow:0 0 0 2px #FAF7EE,0 0 0 4px var(--fq-gold)}
.fq-chat__bar b{display:block;font:700 1rem/1.2 var(--font-head);color:#14100A}
.fq-chat__bar small{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:.75rem;color:#6A604A}
.fq-chat__bar small i{width:7px;height:7px;border-radius:50%;background:#0E9F6E}
.fq-chat__body{display:flex;flex-direction:column;gap:12px;height:230px;overflow-y:auto;padding:16px var(--fq-px);scroll-behavior:smooth}
.fq-r{display:flex;align-items:flex-end;gap:10px;animation:fqIn .35s ease both}
.fq-r--me{justify-content:flex-end}
.fq-r--bot::before{content:"";width:28px;height:28px}
.fq-m{max-width:82%;padding:11px 15px;border-radius:18px;font-size:.9rem;line-height:1.55}
.fq-r--me .fq-m{background:var(--fq-gold);color:#14100A;font-weight:600;border-end-end-radius:6px}
.fq-r--bot .fq-m{background:#F6F0DF;color:#1E1A0F;border:1px solid rgba(138,94,0,.16);border-end-start-radius:6px}
.fq-r--typing .fq-m{display:inline-flex;gap:5px;align-items:center;padding:15px 16px}
.fq-r--typing i{width:7px;height:7px;border-radius:50%;background:#8A7A55;animation:fqDot 1s ease-in-out infinite}
.fq-r--typing i:nth-child(2){animation-delay:.15s}.fq-r--typing i:nth-child(3){animation-delay:.3s}
@keyframes fqIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes fqDot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.fq-nojs{margin:0;font-size:.875rem;line-height:1.6}.fq-nojs dt{margin-top:12px;font-weight:700;color:var(--fq-deep)}.fq-nojs dd{margin:4px 0 0;color:#1E1A0F}
.fq-js .fq-nojs{display:none}
.fq-quick{display:none;padding:12px var(--fq-px) 14px;border-top:1px solid var(--fq-line);background:#FAF7EE}
.fq-js .fq-quick{display:block}
.fq-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.fq-tabs::-webkit-scrollbar{display:none}
.fq-tabs button{flex:none;padding:8px 13px;border-radius:999px;cursor:pointer;font:700 .75rem/1 var(--font-head);color:#6A604A;background:transparent;border:0;transition:background .25s,color .25s}
.fq-tabs button:hover{color:#14100A}
.fq-tabs button[aria-pressed="true"]{background:#14100A;color:var(--fq-gold)}
.fq-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.fq-chips [hidden]{display:none}
.fq-q{padding:9px 14px;border-radius:999px;cursor:pointer;text-align:start;font:600 .8125rem/1.3 var(--font-head);color:#1E1A0F;background:#fff;border:1px solid rgba(138,94,0,.38);transition:background .25s,color .25s,border-color .25s,transform .2s}
.fq-q:hover{background:#14100A;border-color:#14100A;color:var(--fq-gold);transform:translateY(-2px)}
.fq-q:focus-visible,.fq-tabs button:focus-visible{outline:2px solid var(--fq-deep);outline-offset:2px}
.fq-q.used{background:transparent;border-color:rgba(138,94,0,.2);color:#8A7A55}
.fq-q.used:hover{background:#14100A;border-color:#14100A;color:var(--fq-gold)}
.fq-chat__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:11px var(--fq-px);border-top:1px solid var(--fq-line);font-size:.8125rem;color:#6A604A;background:#fff}
.fq-chat__foot a{color:var(--fq-deep);font-weight:700;text-decoration:none}
.fq-chat__foot a:hover{text-decoration:underline}
@media (max-width:700px){.fq-cta{flex:1 1 100%;min-width:0}.fq-facts{grid-template-columns:minmax(0,1fr);gap:12px}.fq-cta__a{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:12px 20px}.fq-chat__body{height:260px}}
@media (max-width:540px){.fq-m{max-width:90%}}
@media (prefers-reduced-motion:reduce){.fq-r,.fq-r--typing i{animation:none!important}.fq-chat__body{scroll-behavior:auto}.fq-q,.fq-tabs button{transition:none!important}}

/* ---- Section 5: level navigator ---- */
.pt{display:grid;grid-template-columns:minmax(260px,.8fr) 1.6fr;gap:clamp(16px,2.6vw,30px);align-items:stretch}
.pt__list{position:relative;list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-auto-rows:1fr}.pt__list>li{display:flex}.pt__i{align-self:stretch}
.pt__list::before{content:"";position:absolute;inset:10% auto 10% 33px;width:3px;border-radius:3px;background:var(--ln)}
.pt__list::after{content:"";position:absolute;inset:10% auto auto 33px;width:3px;border-radius:3px;background:linear-gradient(var(--acc),#FFE08A);height:calc(80% * var(--f,0));transition:height .7s var(--e);box-shadow:0 0 12px rgba(245,192,79,.6)}
.pt__i{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:100%;padding:12px 16px 12px 12px;border:1px solid var(--ln);border-radius:20px;background:var(--card);color:var(--txt);text-align:start;font:inherit;cursor:pointer;opacity:0;transform:translateX(-18px);transition:opacity .6s var(--e) var(--d),transform .6s var(--e) var(--d),border-color .3s,background .3s,box-shadow .3s}
.pt.in .pt__i{opacity:1;transform:none}
.pt__i:hover{border-color:var(--acc)}
.pt__n{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;border:2px solid var(--ln);background:var(--bg);color:var(--accT);transition:all .3s}
.pt__m{display:grid;min-width:0}.pt__m b{font:800 1.05rem/1.2 var(--font-head);color:var(--ink)}.pt__m small{color:var(--mut);font-size:.85rem}
.pt__i em{font-style:normal;font-weight:800;font-size:.8rem;padding:4px 11px;border-radius:99px;border:1px solid var(--ln);color:var(--accT)}
.pt__i.done .pt__n{background:var(--acc);border-color:var(--acc);color:#140E00}
.pt__i.on{border-color:var(--acc);background:linear-gradient(135deg,rgba(245,192,79,.16),var(--card));box-shadow:0 14px 34px rgba(245,192,79,.16)}
.pt__i.on .pt__n{background:var(--acc);border-color:var(--acc);color:#140E00;transform:scale(1.08)}
.pt__i.on em{background:var(--acc);color:#140E00;border-color:var(--acc)}
.pt__bar{position:absolute;inset:auto 0 0 0;height:3px;background:var(--acc);transform:scaleX(0);transform-origin:left}
.pt:not(.auto) .pt__i.on .pt__bar{transform:scaleX(1);opacity:.35}
.pt.auto .pt__i.on .pt__bar{animation:ptb 6.5s linear forwards}.pt.auto:hover .pt__i.on .pt__bar{animation-play-state:paused}
@keyframes ptb{to{transform:scaleX(1)}}
.pt__card{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(440px,44vw,560px);border:1px solid var(--ln);border-radius:30px;overflow:hidden;background:#0A0906;box-shadow:var(--sh);color:#fff}
.pt__imgs img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .8s var(--e),transform 6s linear}
.pt__imgs img.on{opacity:1;transform:scale(1)}
.pt__card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(5,5,5,.94) 8%,rgba(5,5,5,.72) 42%,rgba(5,5,5,.1) 85%)}
.pt__ring{position:absolute;top:18px;inset-inline-end:18px;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(5,5,5,.6);backdrop-filter:blur(8px)}
.pt__ring svg{position:absolute;inset:4px;transform:rotate(-90deg)}.pt__ring circle{fill:none;stroke:rgba(255,255,255,.2);stroke-width:3}.pt__ring .f{stroke:var(--acc);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:80;transition:stroke-dashoffset .7s var(--e)}
.pt__ring b{font:800 .85rem var(--font-head)}
.pt__txt{width:100%;padding:clamp(20px,3.2vw,40px);max-width:680px}
.pt__txt.sw>*{animation:ptIn .6s var(--e) both}.pt__txt.sw>*:nth-child(2){animation-delay:.07s}.pt__txt.sw>*:nth-child(3){animation-delay:.14s}.pt__txt.sw>*:nth-child(4){animation-delay:.21s}.pt__txt.sw>*:nth-child(5){animation-delay:.28s}
@keyframes ptIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.pt__tag{display:inline-block;margin-bottom:12px;padding:6px 14px;border-radius:99px;background:var(--acc);color:#140E00;font-weight:800;font-size:.85rem}
.pt__txt h3{margin:0 0 10px;font:800 clamp(1.9rem,4vw,3.1rem)/1.05 var(--font-head);color:#fff;letter-spacing:-.02em}
.pt__d{margin:0 0 16px;font-size:1.1rem;color:#E8DFC6;max-width:52ch}
.pt__ok{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:9px}.pt__ok li{display:flex;gap:10px;align-items:center;font-weight:600;color:#fff}.pt__ok i{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;background:rgba(31,209,139,.2);color:#1FD18B;font-size:.7rem}
.pt__act{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.pt__nx{padding:12px 20px;border:1px solid rgba(255,255,255,.4);border-radius:99px;background:rgba(255,255,255,.08);color:#fff;font:700 1rem var(--font-body);cursor:pointer;backdrop-filter:blur(6px)}.pt__nx:hover{background:rgba(255,255,255,.2)}
.pt :focus-visible{outline:2px solid var(--acc);outline-offset:3px}
@media(max-width:900px){.pt{grid-template-columns:1fr}.pt__list{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.pt__list::before,.pt__list::after{display:none}.pt__i{grid-template-columns:1fr;justify-items:center;text-align:center;padding:10px 4px;gap:6px}.pt__m small,.pt__i em{display:none}.pt__m b{font-size:.72rem}.pt__n{width:38px;height:38px}.pt__card{min-height:480px}}
@media(prefers-reduced-motion:reduce){.pt__i,.pt__imgs img,.pt__ring .f,.pt__list::after{transition:none}.pt__txt.sw>*{animation:none}.pt.auto .pt__i.on .pt__bar{animation:none}}



.s7 .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* responsive polish */
@media(max-width:520px){.pt__list{gap:6px}.pt__i{padding:10px 2px}.pt__m b{font-size:.62rem;letter-spacing:-.01em;white-space:nowrap}.pt__n{width:34px;height:34px}.pt__txt{padding:20px 18px}.pt__ring{width:54px;height:54px}}
@media(max-width:900px){.dr__d{cursor:pointer}}


/* =========================================================
   TradeWise Contact Hero — editorial market-console redesign
   Scoped to the contact hero so the rest of the site is untouched.
   ========================================================= */
.contact-v2 .cv-hero--reimagined{position:relative;isolation:isolate;padding-top:clamp(46px,5.5vw,78px);background:#080a09;color:#fff;overflow:hidden}
.contact-v2 .cv-hero--reimagined:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 78% 48%,rgba(12,164,119,.16),transparent 34%),radial-gradient(ellipse at 15% 8%,rgba(216,166,40,.12),transparent 34%),linear-gradient(115deg,transparent 0 63%,rgba(255,255,255,.035) 63.1% 63.25%,transparent 63.4%),repeating-linear-gradient(0deg,transparent 0 54px,rgba(255,255,255,.035) 55px,transparent 56px)}
.contact-v2 .cv-hero--reimagined .cv-hero__grid{grid-template-columns:minmax(0,1.02fr) minmax(330px,.98fr);gap:clamp(28px,5vw,76px);align-items:center;padding-bottom:clamp(54px,6.5vw,88px)}
.contact-v2 .cv-hero--reimagined .cv-hero__copy{padding:8px 0 0}
.contact-v2 .cv-hero--reimagined .cv-eyebrow{display:flex;align-items:center;gap:11px;flex-wrap:wrap;color:#f7d878;font-size:.7rem;letter-spacing:.15em;font-weight:900}
.contact-v2 .cv-hero--reimagined .cv-eyebrow__rule{width:38px;height:1px;background:#d9a728}
.contact-v2 .cv-hero--reimagined h1{max-width:700px;margin:29px 0 0;font-size:clamp(3.45rem,6.15vw,6.1rem);line-height:.94;letter-spacing:-.075em;font-weight:800}
.contact-v2 .cv-hero--reimagined h1 span{display:inline;color:#0ca477}
.contact-v2 .cv-hero--reimagined .cv-lead{max-width:525px;margin-top:25px;color:#e2e5df;font-size:1rem;line-height:1.85}
.contact-v2 .cv-hero--reimagined .cv-actions{gap:20px;margin-top:28px}
.contact-v2 .cv-hero--reimagined .cv-btn--green{background:#0ca477;color:#06150f;box-shadow:0 12px 32px rgba(12,164,119,.2)}
.contact-v2 .cv-hero--reimagined .cv-text-link{color:#f7d878;font-size:.85rem;font-weight:750}
.contact-v2 .cv-hero--reimagined .cv-hero__foot{display:flex;flex-wrap:wrap;gap:13px 22px;margin-top:39px;padding-top:19px;border-top:1px solid rgba(255,255,255,.16)}
.contact-v2 .cv-hero--reimagined .cv-hero__foot span{color:#e8e9e5;font-size:.75rem;white-space:nowrap}
.contact-v2 .cv-hero--reimagined .cv-hero__foot b{margin-right:7px;color:#f4b91d;font-size:.9rem}
.contact-v2 .cv-contact-visual{position:relative;min-width:0;min-height:475px;display:flex;align-items:center;justify-content:center;padding:28px 10px 40px}
.contact-v2 .cv-contact-orbit{position:absolute;border:1px solid rgba(244,185,29,.23);border-radius:50%;pointer-events:none}
.contact-v2 .cv-contact-orbit--one{width:min(94%,490px);aspect-ratio:1;transform:rotate(-18deg)}
.contact-v2 .cv-contact-orbit--two{width:min(78%,410px);aspect-ratio:1;border-color:rgba(12,164,119,.22);transform:rotate(29deg)}
.contact-v2 .cv-contact-console{position:relative;z-index:1;width:min(100%,485px);overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:20px 20px 20px 5px;background:linear-gradient(145deg,#151a17,#0d100e 72%);box-shadow:0 30px 90px rgba(0,0,0,.42);transform:rotate(-1.5deg)}
.contact-v2 .cv-console-top,.contact-v2 .cv-console-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 19px;border-bottom:1px solid rgba(255,255,255,.1)}
.contact-v2 .cv-console-kicker,.contact-v2 .cv-console-status{font-size:.59rem;font-weight:900;letter-spacing:.14em}
.contact-v2 .cv-console-kicker{color:#e7c45e}.contact-v2 .cv-console-kicker i{margin-right:7px;color:#0ca477;font-size:.55rem}
.contact-v2 .cv-console-status{color:#b7c0b8;font-size:.54rem}.contact-v2 .cv-console-status i{display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#0ca477;box-shadow:0 0 0 4px rgba(12,164,119,.12)}
.contact-v2 .cv-console-main{padding:clamp(22px,3vw,34px) clamp(20px,3vw,32px) 20px}
.contact-v2 .cv-console-index{color:#0ca477;font-size:.62rem;font-weight:900;letter-spacing:.2em}
.contact-v2 .cv-console-main h2{margin:13px 0 8px;color:#fff;font-size:clamp(2rem,3.6vw,3.1rem);line-height:.98;letter-spacing:-.065em}
.contact-v2 .cv-console-main h2 em{color:#e9b52e;font-style:normal}
.contact-v2 .cv-console-main>p{margin:0;color:#c0c8c2;font-size:.85rem;line-height:1.6}
.contact-v2 .cv-console-chart{position:relative;height:150px;margin-top:24px;overflow:hidden;border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(12,164,119,.035),transparent)}
.contact-v2 .cv-chart-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:42px 30px}
.contact-v2 .cv-console-chart svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.contact-v2 .cv-chart-fill{fill:url(#cvLineGlow);opacity:.55}
.contact-v2 .cv-chart-stroke{fill:none;stroke:#0ca477;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:700;stroke-dashoffset:700;animation:cvLineDraw 2.1s .25s ease forwards}
.contact-v2 .cv-chart-point{position:absolute;width:9px;height:9px;border:2px solid #0ca477;border-radius:50%;background:#0c1712;box-shadow:0 0 0 5px rgba(12,164,119,.12);animation:cvPointPulse 2.4s infinite}
.contact-v2 .cv-chart-point--a{left:47%;top:31%}.contact-v2 .cv-chart-point--b{left:67%;top:17%;animation-delay:.5s}.contact-v2 .cv-chart-point--c{right:1.5%;top:10%;animation-delay:1s}
.contact-v2 .cv-chart-axis{position:absolute;right:0;bottom:4px;color:#98a39a;font-size:.52rem;font-weight:800;letter-spacing:.15em}
.contact-v2 .cv-console-bottom{border-top:1px solid rgba(255,255,255,.1);border-bottom:0;color:#dfe6df;font-size:.55rem;font-weight:900;letter-spacing:.1em}
.contact-v2 .cv-console-bottom span:first-child{color:#e9b52e}.contact-v2 .cv-console-bottom i{margin-right:7px;color:#0ca477}
.contact-v2 .cv-contact-float{position:absolute;z-index:3;display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid rgba(224,184,71,.2);border-radius:13px;background:#f9f5e9;color:#101512;box-shadow:0 18px 40px rgba(0,0,0,.32);animation:cvFloat 5s ease-in-out infinite}
.contact-v2 .cv-contact-float--top{top:10%;left:-5px}.contact-v2 .cv-contact-float--bottom{right:-1px;bottom:9%;background:#0ca477;color:#04150e;border-color:transparent;animation-delay:-2.1s}
.contact-v2 .cv-float-symbol{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:#d9f3e9;color:#087d5b;font-size:1rem}
.contact-v2 .cv-contact-float small{display:block;margin-bottom:4px;color:#8b6815;font-size:.5rem;font-weight:900;letter-spacing:.13em}
.contact-v2 .cv-contact-float strong{display:block;font-size:.77rem;white-space:nowrap}
.contact-v2 .cv-contact-float--bottom small{color:#073e2d}.contact-v2 .cv-contact-float--bottom strong{font-size:.7rem}
.contact-v2 .cv-float-arrow{margin-left:3px;color:#087d5b;font-size:.75rem}
.contact-v2 .cv-live-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#f7d878;box-shadow:0 0 0 5px rgba(247,216,120,.15)}
.contact-v2 .cv-contact-stamp{position:absolute;right:8%;bottom:0;display:flex;align-items:center;gap:9px;padding:12px 16px;background:#e9b52e;color:#101512;font-size:.58rem;font-weight:950;letter-spacing:.13em;box-shadow:0 12px 25px rgba(0,0,0,.22);transform:rotate(2deg)}
.contact-v2 .cv-contact-stamp b{color:#0a805d;font-size:.85rem}
@keyframes cvLineDraw{to{stroke-dashoffset:0}}
@keyframes cvPointPulse{0%,100%{box-shadow:0 0 0 4px rgba(12,164,119,.1)}50%{box-shadow:0 0 0 8px rgba(12,164,119,.02)}}
@media(max-width:1023px){
 .contact-v2 .cv-hero--reimagined .cv-hero__grid{grid-template-columns:minmax(0,1fr) minmax(290px,.9fr);gap:28px}
 .contact-v2 .cv-hero--reimagined h1{font-size:clamp(3.1rem,6vw,5rem)}
 .contact-v2 .cv-contact-visual{min-height:430px}
 .contact-v2 .cv-contact-float--top{left:-8px}.contact-v2 .cv-contact-float--bottom{right:-5px}
}
@media(max-width:700px){
 .contact-v2 .cv-hero--reimagined{padding-top:34px}
 .contact-v2 .cv-hero--reimagined .cv-hero__grid{grid-template-columns:1fr;gap:14px;padding-bottom:48px}
 .contact-v2 .cv-hero--reimagined .cv-hero__copy{grid-row:1}
 .contact-v2 .cv-hero--reimagined h1{font-size:clamp(3rem,11.8vw,4.4rem);margin-top:23px}
 .contact-v2 .cv-hero--reimagined .cv-lead{font-size:.93rem;margin-top:20px}
 .contact-v2 .cv-hero--reimagined .cv-actions{align-items:stretch;flex-direction:column;gap:14px}
 .contact-v2 .cv-hero--reimagined .cv-actions .cv-btn{width:100%}
 .contact-v2 .cv-hero--reimagined .cv-text-link{justify-content:center;font-size:.77rem}
 .contact-v2 .cv-hero--reimagined .cv-hero__foot{gap:12px 17px;margin-top:27px;padding-top:16px}
 .contact-v2 .cv-hero--reimagined .cv-hero__foot span{font-size:.67rem}
 .contact-v2 .cv-contact-visual{grid-row:2;width:100%;min-height:365px;margin:0 auto;padding:24px 4px 38px}
 .contact-v2 .cv-contact-console{width:100%;max-width:460px}
 .contact-v2 .cv-console-top{padding:13px 14px}
 .contact-v2 .cv-console-main{padding:23px 18px 16px}
 .contact-v2 .cv-console-main h2{font-size:2.35rem}
 .contact-v2 .cv-console-chart{height:112px;margin-top:19px}
 .contact-v2 .cv-console-bottom{padding:13px 12px;font-size:.48rem}
 .contact-v2 .cv-contact-float--top{top:2%;left:0;padding:10px 11px}
 .contact-v2 .cv-contact-float--bottom{right:0;bottom:2%;padding:10px 12px}
 .contact-v2 .cv-contact-float--bottom strong{font-size:.62rem}
 .contact-v2 .cv-contact-stamp{right:3%;font-size:.5rem;padding:10px 12px}
}
@media(max-width:380px){
 .contact-v2 .cv-hero--reimagined h1{font-size:2.75rem}
 .contact-v2 .cv-contact-visual{min-height:340px}
 .contact-v2 .cv-contact-float strong{font-size:.68rem}
 .contact-v2 .cv-contact-float--bottom{max-width:205px}
 .contact-v2 .cv-console-status{font-size:.46rem}
 .contact-v2 .cv-console-bottom{font-size:.43rem}
}
[dir="rtl"] .contact-v2 .cv-contact-float--top{left:auto;right:-5px}
[dir="rtl"] .contact-v2 .cv-contact-float--bottom{right:auto;left:-1px}
[dir="rtl"] .contact-v2 .cv-contact-stamp{right:auto;left:8%}
@media(prefers-reduced-motion:reduce){.contact-v2 .cv-chart-stroke,.contact-v2 .cv-contact-float,.contact-v2 .cv-chart-point{animation:none}}


/* Contact hero v3: editorial art direction. No chart or green trend line. */
.contact-v2 .cv-hero--reimagined:before{
 background:radial-gradient(ellipse at 80% 45%,rgba(218,169,42,.13),transparent 37%),radial-gradient(ellipse at 12% 9%,rgba(255,255,255,.045),transparent 30%),linear-gradient(125deg,transparent 0 62%,rgba(218,169,42,.07) 62.1% 62.22%,transparent 62.4%),repeating-linear-gradient(0deg,transparent 0 54px,rgba(255,255,255,.028) 55px,transparent 56px)
}
.contact-v2 .cv-hero--reimagined .cv-eyebrow__rule{background:#d9a728}
.contact-v2 .cv-hero--reimagined h1 span{color:#e9b52e}
.contact-v2 .cv-hero--reimagined .cv-btn--green{background:#e9b52e;color:#11110e;box-shadow:0 12px 32px rgba(233,181,46,.17)}
.contact-v2 .cv-hero--reimagined .cv-btn--green:hover{background:#f5ce65}
.contact-v2 .cv-hero--reimagined .cv-text-link{color:#f1ce69}
.contact-v2 .cv-contact-visual--editorial{min-height:485px}
.contact-v2 .cv-contact-art{position:relative;z-index:1;width:min(100%,470px);min-height:405px;overflow:hidden;padding:23px 27px 18px;border:1px solid rgba(232,190,75,.38);border-radius:4px 34px 4px 34px;background:linear-gradient(145deg,#f8f1df 0%,#e9dfc7 100%);color:#171711;box-shadow:0 32px 75px rgba(0,0,0,.42);transform:rotate(2deg)}
.contact-v2 .cv-art-topline,.contact-v2 .cv-art-footer{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.52rem;font-weight:950;letter-spacing:.12em}
.contact-v2 .cv-art-topline{padding-bottom:15px;border-bottom:1px solid rgba(23,23,17,.18);color:#4e493b}
.contact-v2 .cv-art-number{position:relative;z-index:2;margin-top:23px;color:#9c7415;font-size:.73rem;font-weight:950;letter-spacing:.18em}
.contact-v2 .cv-art-number span{margin:0 4px;color:#b8ad94}
.contact-v2 .cv-art-heading{position:relative;z-index:2;margin-top:13px;font-size:clamp(2.15rem,3.4vw,3.2rem);font-weight:900;line-height:.98;letter-spacing:-.07em}
.contact-v2 .cv-art-heading em{color:#a87b0c;font-style:normal}
.contact-v2 .cv-art-caption{position:relative;z-index:2;max-width:235px;margin:13px 0 0;color:#625b49;font-size:.78rem;line-height:1.6}
.contact-v2 .cv-art-orbit{position:absolute;right:-23px;bottom:42px;width:225px;height:225px;border:1px solid rgba(159,119,17,.34);border-radius:50%;transform:rotate(-22deg)}
.contact-v2 .cv-art-orbit:before,.contact-v2 .cv-art-orbit:after{content:"";position:absolute;inset:18px;border:1px solid rgba(159,119,17,.24);border-radius:50%}
.contact-v2 .cv-art-orbit:after{inset:43px;border-style:dashed;border-color:rgba(159,119,17,.28)}
.contact-v2 .cv-art-orbit__sun{position:absolute;top:70px;left:72px;width:48px;height:48px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff1a8,#d9a526 58%,#9c7415);box-shadow:0 0 0 12px rgba(217,165,38,.12),0 0 45px rgba(217,165,38,.25)}
.contact-v2 .cv-art-orbit__dot{position:absolute;width:10px;height:10px;border-radius:50%;background:#171711;border:2px solid #c99a21}
.contact-v2 .cv-art-orbit__dot--one{top:24px;left:39px}.contact-v2 .cv-art-orbit__dot--two{right:16px;top:94px;width:7px;height:7px}.contact-v2 .cv-art-orbit__dot--three{bottom:23px;left:67px;width:6px;height:6px}
.contact-v2 .cv-art-orbit__label{position:absolute;right:9px;bottom:45px;color:#76602a;font-size:.46rem;font-weight:950;letter-spacing:.16em;transform:rotate(22deg)}
.contact-v2 .cv-art-footer{position:absolute;right:27px;bottom:18px;left:27px;padding-top:13px;border-top:1px solid rgba(23,23,17,.18);color:#5b5545}
.contact-v2 .cv-art-footer i{margin-right:6px;color:#a87b0c}
.contact-v2 .cv-contact-orbit--one{border-color:rgba(233,181,46,.3)}
.contact-v2 .cv-contact-orbit--two{border-color:rgba(255,255,255,.1)}
.contact-v2 .cv-contact-float--top{background:#fffaf0;border-color:rgba(218,169,42,.28)}
.contact-v2 .cv-float-symbol{background:#f2e4bc;color:#8b650d}
.contact-v2 .cv-contact-float small{color:#98700e}
.contact-v2 .cv-float-arrow{color:#98700e}
.contact-v2 .cv-contact-float--bottom{background:#171711;color:#fff7e2;border:1px solid rgba(233,181,46,.4)}
.contact-v2 .cv-contact-float--bottom small{color:#e9b52e}
.contact-v2 .cv-live-dot{background:#e9b52e;box-shadow:0 0 0 5px rgba(233,181,46,.15)}
.contact-v2 .cv-contact-stamp{background:#e9b52e;color:#11110e}
.contact-v2 .cv-contact-stamp b{color:#11110e}
.contact-v2 .cv-ticker{background:#e9b52e;color:#11110e}
.contact-v2 .cv-ticker b{color:#11110e}
@media(max-width:1023px){
 .contact-v2 .cv-contact-art{min-height:390px;padding:20px 22px 18px}
 .contact-v2 .cv-art-orbit{width:200px;height:200px;right:-28px;bottom:40px}
 .contact-v2 .cv-art-heading{font-size:clamp(2rem,4vw,2.8rem)}
}
@media(max-width:700px){
 .contact-v2 .cv-contact-visual--editorial{min-height:380px}
 .contact-v2 .cv-contact-art{min-height:330px;padding:17px 18px 16px;border-radius:4px 25px 4px 25px}
 .contact-v2 .cv-art-topline{font-size:.45rem;padding-bottom:11px}
 .contact-v2 .cv-art-number{margin-top:17px}
 .contact-v2 .cv-art-heading{font-size:2.35rem}
 .contact-v2 .cv-art-caption{max-width:200px;font-size:.72rem}
 .contact-v2 .cv-art-orbit{width:160px;height:160px;right:-24px;bottom:42px}
 .contact-v2 .cv-art-orbit:before{inset:13px}.contact-v2 .cv-art-orbit:after{inset:30px}
 .contact-v2 .cv-art-orbit__sun{top:49px;left:50px;width:35px;height:35px}
 .contact-v2 .cv-art-orbit__label{right:4px;bottom:29px;font-size:.4rem}
 .contact-v2 .cv-art-footer{right:18px;bottom:15px;left:18px;font-size:.44rem}
 .contact-v2 .cv-contact-float--top{top:0;left:0}
 .contact-v2 .cv-contact-float--bottom{right:0;bottom:0}
 .contact-v2 .cv-contact-stamp{right:3%;font-size:.48rem}
}
@media(max-width:380px){
 .contact-v2 .cv-contact-visual--editorial{min-height:355px}
 .contact-v2 .cv-contact-art{min-height:310px}
 .contact-v2 .cv-art-heading{font-size:2.05rem}
 .contact-v2 .cv-art-orbit{width:135px;height:135px;right:-20px}
 .contact-v2 .cv-art-orbit__sun{top:42px;left:41px;width:30px;height:30px}
 .contact-v2 .cv-art-footer{font-size:.39rem}
}
[dir="rtl"] .contact-v2 .cv-art-orbit{right:auto;left:-23px}
[dir="rtl"] .contact-v2 .cv-contact-stamp{right:auto;left:8%}


/* Bespoke Contact hero: static, sculptural, no ticker, no line-chart animation. */
.contact-v2 .cv-hero--bespoke{position:relative;isolation:isolate;overflow:hidden;padding:clamp(52px,6vw,88px) 0 clamp(48px,5vw,72px);background:#090a09;color:#fbf8ee}
.contact-v2 .cv-hero--bespoke:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 78% 42%,rgba(218,169,42,.11),transparent 35%),radial-gradient(ellipse at 7% 93%,rgba(255,255,255,.035),transparent 28%);pointer-events:none}
.contact-v2 .cv-hero--bespoke .cv-hero__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(330px,.98fr);gap:clamp(32px,5vw,78px);align-items:center;padding-bottom:0}
.contact-v2 .cv-hero--bespoke .cv-hero__copy{position:relative;z-index:2}
.contact-v2 .cv-hero--bespoke .cv-eyebrow{display:flex;align-items:center;gap:11px;flex-wrap:wrap;color:#e8bf52;font-size:.69rem;letter-spacing:.16em;font-weight:900}
.contact-v2 .cv-hero--bespoke .cv-eyebrow__rule{width:26px;height:2px;background:#e8bf52}
.contact-v2 .cv-hero--bespoke h1{margin:30px 0 0;font-size:clamp(4.2rem,8vw,7.8rem);line-height:.82;letter-spacing:-.09em;font-weight:900;color:#fbf8ee}
.contact-v2 .cv-hero--bespoke h1 span{color:#e8bf52}
.contact-v2 .cv-hero--bespoke h1 .cv-title-dot{color:#e8bf52}
.contact-v2 .cv-hero--bespoke .cv-lead{max-width:490px;margin-top:28px;color:#c8c7bf;font-size:1rem;line-height:1.85}
.contact-v2 .cv-hero--bespoke .cv-actions{display:flex;align-items:center;flex-wrap:wrap;gap:19px;margin-top:27px}
.contact-v2 .cv-hero--bespoke .cv-btn--green{display:inline-flex;align-items:center;gap:13px;background:#e8bf52;color:#11110d;box-shadow:none;border-radius:4px;font-weight:850}
.contact-v2 .cv-hero--bespoke .cv-btn--green:hover{background:#f4d77f;transform:translateY(-2px)}
.contact-v2 .cv-hero--bespoke .cv-text-link{color:#f2d98f;font-size:.83rem;font-weight:750}
.contact-v2 .cv-hero--bespoke .cv-hero__foot{display:flex;flex-wrap:wrap;gap:13px 22px;margin-top:38px;padding-top:18px;border-top:1px solid rgba(255,255,255,.13)}
.contact-v2 .cv-hero--bespoke .cv-hero__foot span{color:#d5d3ca;font-size:.73rem}
.contact-v2 .cv-hero--bespoke .cv-hero__foot b{margin-right:7px;color:#e8bf52;font-size:.86rem}
.contact-v2 .cv-contact-visual--bespoke{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:475px;padding:12px 8px 18px}
.contact-v2 .cv-contact-art--bespoke{position:relative;isolation:isolate;width:min(100%,470px);min-height:425px;overflow:hidden;padding:24px 26px;background:#e9dfc7;color:#15140f;border-radius:3px 3px 70px 3px;box-shadow:18px 18px 0 #b58b24,0 35px 75px rgba(0,0,0,.38);transform:rotate(1.2deg)}
.contact-v2 .cv-contact-art--bespoke:before{content:"";position:absolute;z-index:-1;width:290px;height:290px;right:-75px;top:65px;border-radius:50%;background:#d6b85d}
.contact-v2 .cv-contact-art--bespoke:after{content:"";position:absolute;z-index:-1;width:210px;height:210px;right:-35px;top:105px;border-radius:50%;background:#171711}
.contact-v2 .cv-bespoke-top{display:flex;justify-content:space-between;gap:12px;color:#655a3e;font-size:.54rem;font-weight:950;letter-spacing:.14em}
.contact-v2 .cv-question-mark{position:absolute;right:35px;top:38px;color:#e9dfc7;font-size:14rem;font-weight:900;line-height:.9;letter-spacing:-.12em;opacity:.98}
.contact-v2 .cv-bespoke-message{position:relative;z-index:2;margin-top:77px}
.contact-v2 .cv-bespoke-kicker{color:#8d6a11;font-size:.58rem;font-weight:950;letter-spacing:.15em}
.contact-v2 .cv-bespoke-message h2{margin:13px 0 10px;font-size:clamp(2.8rem,4.7vw,4.4rem);line-height:.88;letter-spacing:-.08em;font-weight:900;color:#171711}
.contact-v2 .cv-bespoke-message h2 em{color:#9c7415;font-style:normal}
.contact-v2 .cv-bespoke-message p{max-width:240px;margin:0;color:#5b5545;font-size:.8rem;line-height:1.65}
.contact-v2 .cv-bespoke-note{position:absolute;z-index:3;left:25px;right:25px;bottom:67px;display:flex;align-items:center;gap:12px;padding:13px 14px;background:#fbf8ee;box-shadow:0 13px 25px rgba(0,0,0,.15)}
.contact-v2 .cv-note-icon{display:grid;place-items:center;flex:0 0 39px;height:39px;background:#e8bf52;color:#171711;font-size:1rem}
.contact-v2 .cv-bespoke-note small{display:block;margin-bottom:4px;color:#927019;font-size:.5rem;font-weight:950;letter-spacing:.13em}
.contact-v2 .cv-bespoke-note strong{display:block;color:#171711;font-size:.73rem}
.contact-v2 .cv-note-arrow{margin-left:auto;color:#927019;font-size:.8rem}
.contact-v2 .cv-bespoke-index{position:absolute;bottom:24px;left:27px;color:#625a48;font-size:.55rem;font-weight:950;letter-spacing:.14em}
.contact-v2 .cv-bespoke-index span{margin:0 5px;color:#9c7415}
.contact-v2 .cv-contact-float{position:absolute;z-index:4;display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fbf8ee;color:#171711;border:1px solid rgba(218,169,42,.3);box-shadow:0 15px 32px rgba(0,0,0,.25);border-radius:3px}
.contact-v2 .cv-contact-float--top{top:6%;left:-12px}
.contact-v2 .cv-contact-float--bottom{right:-4px;bottom:5%;background:#171711;color:#fbf8ee;border-color:rgba(232,191,82,.4)}
.contact-v2 .cv-float-symbol{display:grid;place-items:center;width:37px;height:37px;background:#e8bf52;color:#171711}
.contact-v2 .cv-contact-float small{display:block;margin-bottom:4px;color:#927019;font-size:.49rem;font-weight:950;letter-spacing:.12em}
.contact-v2 .cv-contact-float strong{display:block;font-size:.72rem;white-space:nowrap}
.contact-v2 .cv-contact-float--bottom small{color:#e8bf52}
.contact-v2 .cv-live-dot{width:8px;height:8px;flex:0 0 8px;background:#e8bf52;border-radius:50%}
@media(max-width:1023px){
 .contact-v2 .cv-hero--bespoke .cv-hero__grid{grid-template-columns:minmax(0,1fr) minmax(290px,.9fr);gap:28px}
 .contact-v2 .cv-hero--bespoke h1{font-size:clamp(3.8rem,7vw,6rem)}
 .contact-v2 .cv-contact-art--bespoke{min-height:390px;padding:21px}
 .contact-v2 .cv-question-mark{font-size:11rem;right:24px}
 .contact-v2 .cv-bespoke-message{margin-top:75px}
 .contact-v2 .cv-bespoke-message h2{font-size:clamp(2.6rem,4.5vw,3.4rem)}
}
@media(max-width:700px){
 .contact-v2 .cv-hero--bespoke{padding:38px 0 48px}
 .contact-v2 .cv-hero--bespoke .cv-hero__grid{grid-template-columns:1fr;gap:27px}
 .contact-v2 .cv-hero--bespoke h1{margin-top:24px;font-size:clamp(4rem,16vw,6rem)}
 .contact-v2 .cv-hero--bespoke .cv-lead{margin-top:21px;font-size:.93rem}
 .contact-v2 .cv-hero--bespoke .cv-actions{align-items:stretch;flex-direction:column;gap:14px}
 .contact-v2 .cv-hero--bespoke .cv-actions .cv-btn{justify-content:center;width:100%}
 .contact-v2 .cv-hero--bespoke .cv-text-link{text-align:center}
 .contact-v2 .cv-hero--bespoke .cv-hero__foot{gap:12px 16px;margin-top:28px}
 .contact-v2 .cv-hero--bespoke .cv-hero__foot span{font-size:.65rem}
 .contact-v2 .cv-contact-visual--bespoke{min-height:390px;padding:9px 7px 17px}
 .contact-v2 .cv-contact-art--bespoke{min-height:345px;padding:18px;border-radius:3px 3px 50px 3px;box-shadow:10px 10px 0 #b58b24,0 25px 45px rgba(0,0,0,.3)}
 .contact-v2 .cv-contact-art--bespoke:before{width:220px;height:220px;right:-65px;top:62px}
 .contact-v2 .cv-contact-art--bespoke:after{width:160px;height:160px;right:-34px;top:92px}
 .contact-v2 .cv-question-mark{top:38px;right:17px;font-size:9rem}
 .contact-v2 .cv-bespoke-top{font-size:.46rem}
 .contact-v2 .cv-bespoke-message{margin-top:68px}
 .contact-v2 .cv-bespoke-message h2{font-size:clamp(2.7rem,11vw,3.7rem)}
 .contact-v2 .cv-bespoke-note{left:17px;right:17px;bottom:55px;padding:10px}
 .contact-v2 .cv-bespoke-note strong{font-size:.65rem}
 .contact-v2 .cv-bespoke-index{bottom:18px;left:19px;font-size:.48rem}
 .contact-v2 .cv-contact-float--top{top:0;left:0;padding:9px}
 .contact-v2 .cv-contact-float--bottom{right:0;bottom:0;padding:9px}
 .contact-v2 .cv-contact-float strong{font-size:.63rem}
}
@media(max-width:380px){
 .contact-v2 .cv-hero--bespoke h1{font-size:3.6rem}
 .contact-v2 .cv-contact-visual--bespoke{min-height:365px}
 .contact-v2 .cv-contact-art--bespoke{min-height:325px}
 .contact-v2 .cv-question-mark{font-size:7.5rem}
 .contact-v2 .cv-bespoke-message h2{font-size:2.5rem}
 .contact-v2 .cv-contact-float strong{font-size:.58rem}
}
[dir="rtl"] .contact-v2 .cv-contact-float--top{left:auto;right:-12px}
[dir="rtl"] .contact-v2 .cv-contact-float--bottom{right:auto;left:-4px}
[dir="rtl"] .contact-v2 .cv-bespoke-note .cv-note-arrow{margin-left:0;margin-right:auto}
@media(prefers-reduced-motion:reduce){.contact-v2 .cv-hero--bespoke *{scroll-behavior:auto}}

/* Free Resources: remove the oversized header-to-hero gap while retaining a full-height hero. */
main#main > .hero#top {
  padding-top: calc(var(--h, 76px) + 10px);
  scroll-margin-top: var(--h, 76px);
}
@media (max-width: 700px) {
  main#main > .hero#top { padding-top: calc(var(--h, 76px) + 8px); }
}

/* Shared footer navigation */
.site-footer__inner{align-items:center}
.site-footer__nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,26px);flex-wrap:wrap}
.site-footer__nav a{color:var(--muted);font-size:.82rem;font-weight:700;text-decoration:none;transition:color .2s ease,transform .2s ease}
.site-footer__nav a:hover,.site-footer__nav a:focus-visible{color:var(--accent-text);transform:translateY(-1px)}
.site-footer__nav a:focus-visible{outline:2px solid var(--accent-text);outline-offset:4px;border-radius:3px}
@media(max-width:700px){.site-footer__nav{justify-content:flex-start;gap:12px 20px}.site-footer__inner{gap:16px}}


/* TradeWise editorial footer — shared across the main pages */
.tw-footer{position:relative;isolation:isolate;overflow:hidden;background:#050706;color:#e9ece8;border-top:1px solid rgba(226,177,64,.26);padding:clamp(42px,5.5vw,76px) 0 0;margin-top:0}
.tw-footer:before{content:"";position:absolute;z-index:-1;right:-130px;top:-210px;width:440px;height:440px;border:1px solid rgba(226,177,64,.12);border-radius:50%;box-shadow:0 0 0 35px rgba(226,177,64,.025),0 0 0 75px rgba(226,177,64,.018);pointer-events:none}
.tw-footer__grid{display:grid;grid-template-columns:minmax(230px,1.35fr) repeat(2,minmax(135px,.72fr)) minmax(220px,1fr);gap:clamp(26px,4vw,58px);padding-bottom:42px}
.tw-footer__brand{max-width:350px}
.tw-footer__logo{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;margin-bottom:18px}
.tw-footer__logo img{display:block;width:48px;height:48px;object-fit:contain;border-radius:12px}
.tw-footer__logo>span{display:flex;flex-direction:column;gap:3px}
.tw-footer__logo strong{font-size:1.45rem;line-height:1;font-weight:850;letter-spacing:-.045em}
.tw-footer__logo strong span{color:#e3b342}
.tw-footer__logo small{font-size:.72rem;letter-spacing:.015em;color:#b7bdb8}
.tw-footer__brand>p{font-size:.92rem;line-height:1.8;color:#b8c0ba;margin:0 0 22px;max-width:330px}
.tw-footer__cta{display:inline-flex;align-items:center;gap:12px;padding:12px 17px;border-radius:8px;background:#e4b23d;color:#11120e;text-decoration:none;font-weight:800;font-size:.86rem;transition:transform .2s ease,background .2s ease,box-shadow .2s ease;box-shadow:0 8px 24px rgba(228,178,61,.12)}
.tw-footer__cta:hover{transform:translateY(-2px);background:#f1c85d;box-shadow:0 10px 28px rgba(228,178,61,.2)}
.tw-footer__column{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0}
.tw-footer__column h2{font-size:.98rem;color:#e8b63e;font-weight:800;margin:2px 0 5px;letter-spacing:.005em}
.tw-footer__column>a{color:#c4cbc5;text-decoration:none;font-size:.9rem;line-height:1.45;transition:color .18s ease,transform .18s ease}
.tw-footer__column>a:hover,.tw-footer__column>a:focus-visible{color:#fff;transform:translateX(3px)}
.tw-footer__contact p{display:flex;align-items:flex-start;gap:12px;margin:0;color:#c4cbc5;font-size:.88rem;line-height:1.65}
.tw-footer__contact p>i{width:15px;flex:0 0 15px;margin-top:4px;color:#e8b63e;text-align:center}
.tw-footer__contact p a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.tw-footer__contact p a:hover{color:#fff}
.tw-footer__contact .tw-footer__contact-link{display:inline-flex;align-items:center;gap:9px;color:#e8b63e;font-weight:750;margin-top:4px}
.tw-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.13);padding-top:19px;padding-bottom:20px;color:#aeb6b0;font-size:.78rem}
.tw-footer__bottom a{color:#d5b45e;text-decoration:none}
.tw-footer__bottom a:hover{color:#fff}
.tw-footer__disclaimer{text-align:center}
@media(max-width:900px){.tw-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 40px}.tw-footer__brand{max-width:420px}.tw-footer__contact{grid-column:auto}}
@media(max-width:540px){.tw-footer{padding-top:38px}.tw-footer__grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:32px}.tw-footer__brand{grid-column:1/-1;max-width:none}.tw-footer__brand>p{max-width:440px}.tw-footer__column h2{font-size:.9rem}.tw-footer__column>a,.tw-footer__contact p{font-size:.82rem}.tw-footer__bottom{align-items:flex-start;flex-direction:column;gap:9px}.tw-footer__disclaimer{text-align:left}}
@media(prefers-reduced-motion:reduce){.tw-footer *{scroll-behavior:auto!important;transition:none!important}}


/* Footer brand mirrors the header wordmark and keeps even outer gutters. */
.tw-footer .container{width:min(100% - 2 * var(--pad), var(--wrap));max-width:none;margin-inline:auto;padding-inline:0;box-sizing:border-box}
.tw-footer__logo.brand{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;color:#fff;text-decoration:none}
.tw-footer__logo.brand .brand__mark{display:block;width:44px;height:44px;flex:0 0 44px;object-fit:contain;border-radius:10px}
.tw-footer__logo.brand .brand__text{display:flex;flex-direction:column;gap:4px}
.tw-footer__logo.brand .brand__name{font-size:1.45rem;line-height:1;font-weight:850;letter-spacing:-.045em;color:#fff}
.tw-footer__logo.brand .brand__name span{color:#e3b342}
.tw-footer__logo.brand .brand__tag{font-size:.72rem;line-height:1.35;letter-spacing:.015em;color:#b7bdb8}
@media(max-width:600px){.tw-footer__logo.brand .brand__mark{width:42px;height:42px;flex-basis:42px}}

/* ===== Courses page: "Your learning path" as an interactive trading chart (Entry / Stop / Target) ===== */
.lp{position:relative;isolation:isolate;overflow:hidden;background:#0A0A0A;padding-block:clamp(60px,8vw,104px)}
.lp::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(55% 45% at 90% 5%,rgba(245,192,79,.18),transparent 70%),radial-gradient(45% 40% at 4% 95%,rgba(14,159,110,.14),transparent 70%)}
.lp-head{max-width:680px}
.lp .cs__tag{color:#F5C04F;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.lp .cs__h{font-size:clamp(1.75rem,3.6vw,2.75rem);line-height:1.08;letter-spacing:-.04em;color:#fff;margin-top:14px}
.lp .cs__h .ln:last-child>span{color:#F5C04F}
.lp .cs__p{max-width:52ch;margin-top:14px;font-size:1rem;line-height:1.65;color:#B9AE92}
.lp-win{margin-top:clamp(26px,3.6vw,44px);border-radius:20px;overflow:hidden;background:#0F0F0C;border:1px solid rgba(245,192,79,.28);box-shadow:0 30px 70px rgba(0,0,0,.5)}
.lp-bar{display:flex;align-items:center;gap:14px;padding:12px 18px;background:#16150F;border-bottom:1px solid rgba(245,192,79,.18);font:700 .6875rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;color:#B9AE92}
.lp-dots{display:flex;gap:6px}.lp-dots i{width:10px;height:10px;border-radius:50%;background:#D92D32}.lp-dots i:nth-child(2){background:#E0A526}.lp-dots i:nth-child(3){background:#0E9F6E}
.lp-bar b{font-weight:700;flex:1}
.lp-live{display:inline-flex;align-items:center;gap:7px;color:#34D399}.lp-live i{width:7px;height:7px;border-radius:50%;background:#34D399;animation:lpPulse 1.8s ease-in-out infinite}
@keyframes lpPulse{50%{opacity:.35}}
.lp-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid rgba(245,192,79,.18)}
.lp-tab{display:flex;align-items:baseline;gap:10px;padding:14px 18px;cursor:pointer;font:inherit;text-align:start;color:#B9AE92;background:transparent;border:0;border-inline-start:1px solid rgba(245,192,79,.12);border-bottom:2px solid transparent;transition:background .25s,color .25s,border-color .25s}
.lp-tab:first-child{border-inline-start:0}
.lp-tab em{font:700 .75rem/1 ui-monospace,Menlo,monospace;font-style:normal;color:#F5C04F}
.lp-tab span{font:700 .9375rem/1.2 var(--font-head);color:#F5EEDC}
.lp-tab small{margin-inline-start:auto;font:600 .75rem/1 ui-monospace,Menlo,monospace;color:#B9AE92}
.lp-tab:hover{background:rgba(255,255,255,.04)}
.lp-tab:focus-visible{outline:2px solid #F5C04F;outline-offset:-3px}
.lp-tab[aria-selected="true"]{background:rgba(245,192,79,.1);border-bottom-color:#F5C04F}
.lp-tab[aria-selected="true"] span{color:#fff}
.lp-body{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr)}
.lp-chart{padding:clamp(10px,1.6vw,18px);border-inline-end:1px solid rgba(245,192,79,.18);background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}
.lp-svg{display:block;width:100%;height:auto}
.lp-grid{stroke:rgba(255,255,255,.06);stroke-width:1}
.lp-zone{fill:transparent;cursor:pointer;transition:fill .4s}
.lp-zone.on{fill:rgba(245,192,79,.09)}
.lp-trend{fill:none;stroke:rgba(245,192,79,.55);stroke-width:2;stroke-dasharray:2 7;stroke-linecap:round}
.lp-c line{stroke-width:2}
.lp-c--up line{stroke:#1FD18B}.lp-c--up rect{fill:#1FD18B}
.lp-c--dn line{stroke:#FF4D4F}.lp-c--dn rect{fill:#FF4D4F}
.lp-js .lp-c{transform-box:fill-box;transform-origin:50% 100%;transform:scaleY(0);opacity:0}
.lp-js .lp-win.in .lp-c{transform:none;opacity:1;transition:transform .5s cubic-bezier(.2,.8,.2,1) calc(var(--d)*45ms),opacity .3s calc(var(--d)*45ms)}
.lp-mk{cursor:pointer;opacity:.55;transition:opacity .3s}
.lp-mk.on{opacity:1}
.lp-mk line{stroke:currentColor;stroke-width:1.5;stroke-dasharray:3 4}
.lp-mk circle{fill:currentColor}
.lp-mk .lp-ring{fill:none;stroke:currentColor;stroke-width:2;opacity:0}
.lp-mk.on .lp-ring{opacity:.7;animation:lpRing 1.8s ease-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes lpRing{from{transform:scale(.8);opacity:.8}to{transform:scale(2.2);opacity:0}}
.lp-mk rect{fill:currentColor}
.lp-mk text{fill:#08110c;font:800 11px ui-monospace,Menlo,monospace;letter-spacing:.08em}
.lp-mk--up{color:#1FD18B}.lp-mk--dn{color:#FF4D4F}.lp-mk--tg{color:#F5C04F}
.lp-mk--dn text{fill:#1a0405}
.lp-zl{fill:rgba(245,238,220,.4);font:700 10.5px ui-monospace,Menlo,monospace;letter-spacing:.08em;transition:fill .3s}
.lp-zl.on{fill:#F5C04F}
.lp-side{position:relative;display:grid}
.lp-tk{grid-area:1/1;display:none;flex-direction:column;padding:clamp(18px,2.4vw,28px)}
.lp-tk.on{display:flex;animation:lpIn .45s ease both}
@keyframes lpIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.lp-tk__lv{margin:0;font:700 .6875rem/1 ui-monospace,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:#F5C04F}
.lp-tk h3{margin:10px 0 0;font:800 1.625rem/1.1 var(--font-head);letter-spacing:-.03em;color:#fff}
.lp-tk__d{margin:8px 0 0;font-size:.9rem;line-height:1.6;color:#B9AE92}
.lp-tk ul{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:9px;font-size:.875rem;line-height:1.5;color:#F5EEDC}
.lp-tk li{display:flex;gap:10px;align-items:flex-start}
.lp-tk li i{margin-top:4px;font-size:.75rem;color:#34D399}
.lp-tk__rows{margin:18px 0 0;border-top:1px dashed rgba(245,192,79,.3)}
.lp-tk__rows div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px dashed rgba(245,192,79,.3);font:600 .8125rem/1.2 ui-monospace,Menlo,monospace}
.lp-tk__rows dt{color:#B9AE92}.lp-tk__rows dd{margin:0;color:#fff}
.lp-go{margin-top:20px;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;background:#F5C04F;color:#0A0A0A;font:700 .875rem/1 var(--font-head);text-decoration:none;transition:background .25s,transform .25s}
.lp-go:hover{background:#FFD36E;transform:translateX(3px)}
.lp-help{margin:clamp(20px,3vw,30px) 0 0;max-width:70ch;font-size:.875rem;line-height:1.6;color:#B9AE92}
.lp-help a{color:#F5C04F;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){
  .lp-body{grid-template-columns:minmax(0,1fr)}
  .lp-chart{border-inline-end:0;border-bottom:1px solid rgba(245,192,79,.18)}
  .lp-mk text{font-size:15px}.lp-zl{font-size:14px}
}
@media (max-width:620px){
  .lp-tab{flex-direction:column;align-items:flex-start;gap:4px;padding:12px}.lp-tab small{margin:0}
  .lp-zl{display:none}.lp-bar b{font-size:.625rem}
}
@media (prefers-reduced-motion:reduce){.lp-js .lp-c{transform:none!important;opacity:1!important;transition:none!important}.lp-mk .lp-ring,.lp-live i,.lp-tk.on{animation:none!important}}


/* ================================================================
   MERGED PAGE STYLES: Contact hero + Home 2
   These were formerly separate page stylesheets; retained unchanged.
   ================================================================ */

/* --- Contact hero styles (merged from contact-hero.css) --- */
/* Contact hero: local trading-workspace image, with a fixed dark presentation in either site theme. */
.cv-hero--image {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 420px;
  display: flex;
  align-items: center;
  padding: clamp(54px, 7vw, 82px) 0 clamp(50px, 6vw, 72px);
  color: #fff !important;
  background-color: #071018;
  background-image: linear-gradient(90deg, rgba(5,12,18,.72) 0%, rgba(5,12,18,.62) 48%, rgba(5,12,18,.50) 100%);
  background-size: cover;
  background-position: center 54%;
}
.cv-hero__photo { position:absolute; z-index:-2; inset:-8px; width:calc(100% + 16px); height:calc(100% + 16px); object-fit:cover; object-position:center 54%; filter:blur(4px); transform:scale(1.025); }
.cv-hero--image::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(0deg,rgba(3,8,12,.38),transparent 48%); pointer-events:none; }
.cv-image-hero__inner { position:relative; z-index:1; width:100%; max-width:1200px; }
.cv-image-hero__eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 18px; color:#a9f3d0 !important; font-size:12px; line-height:1.5; font-weight:800; letter-spacing:.15em; }
.cv-image-hero__eyebrow span { width:8px; height:8px; flex:0 0 8px; border-radius:50%; background:#54dfa0; box-shadow:0 0 0 5px rgba(84,223,160,.17); }
.cv-hero--image h1 { display:block; max-width:760px; margin:0; color:#fff !important; font-size:clamp(34px,3.7vw,48px); line-height:1.14; font-weight:750; letter-spacing:-.035em; text-wrap:balance; text-shadow:0 2px 18px rgba(0,0,0,.28); }
.cv-hero--image h1 em { color:#78e5b0 !important; font-style:normal; }
.cv-image-hero__lead { max-width:610px; margin:22px 0 0; color:#f3f7fa !important; font-size:clamp(16px,1.5vw,18px); line-height:1.75; font-weight:500; text-shadow:0 1px 10px rgba(0,0,0,.35); }
.cv-image-hero__actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px 26px; margin-top:28px; }
.cv-image-hero__button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:49px; padding:14px 21px; border:1px solid #78e5b0; border-radius:7px; background:#78e5b0; color:#10251d !important; font-size:14px; font-weight:800; text-decoration:none !important; transition:transform .2s ease,background .2s ease; }
.cv-image-hero__button:hover { transform:translateY(-2px); background:#a0f1c9; }
.cv-image-hero__email { display:inline-flex; align-items:center; gap:9px; color:#fff !important; font-size:14px; font-weight:700; text-decoration:none !important; overflow-wrap:anywhere; }
.cv-image-hero__email i { color:#8beabb; }
.cv-image-hero__trust { display:flex; flex-wrap:wrap; gap:12px 25px; margin-top:27px; }
.cv-image-hero__trust span { display:inline-flex; align-items:center; gap:9px; color:#f3f7fa !important; font-size:13px; line-height:1.5; font-weight:600; }
.cv-image-hero__trust i { color:#8beabb; font-size:14px; }
.cv-hero--image a:focus-visible { outline:3px solid #fff; outline-offset:4px; }
/* Explicitly override theme rules: this hero intentionally stays dark in light and dark mode. */
html[data-theme="light"] .cv-hero--image, html[data-theme="dark"] .cv-hero--image { color:#fff !important; background-color:#071018; }
html[data-theme="light"] .cv-hero--image h1, html[data-theme="dark"] .cv-hero--image h1 { color:#fff !important; }
html[data-theme="light"] .cv-hero--image h1 em, html[data-theme="dark"] .cv-hero--image h1 em { color:#78e5b0 !important; }
html[data-theme="light"] .cv-hero--image .cv-image-hero__lead, html[data-theme="dark"] .cv-hero--image .cv-image-hero__lead { color:#f3f7fa !important; }
html[data-theme="light"] .cv-hero--image .cv-image-hero__email, html[data-theme="dark"] .cv-hero--image .cv-image-hero__email { color:#fff !important; }
html[data-theme="light"] .cv-hero--image .cv-image-hero__trust span, html[data-theme="dark"] .cv-hero--image .cv-image-hero__trust span { color:#f3f7fa !important; }
[dir="rtl"] .cv-image-hero__inner { direction:rtl; }
[dir="rtl"] .cv-image-hero__eyebrow { letter-spacing:.04em; }
@media(max-width:700px) { .cv-hero--image { min-height:0; padding:54px 0 48px; } .cv-hero__photo { object-position:62% center; } .cv-hero--image h1 { font-size:clamp(31px,6.5vw,40px); } .cv-image-hero__lead { margin-top:18px; font-size:16px; line-height:1.7; } .cv-image-hero__actions { align-items:flex-start; flex-direction:column; gap:17px; margin-top:25px; } .cv-image-hero__trust { gap:11px 18px; margin-top:24px; } }
@media(max-width:420px) { .cv-hero--image { padding:46px 0 42px; } .cv-image-hero__eyebrow { margin-bottom:15px; font-size:11px; } .cv-hero--image h1 { font-size:32px; } .cv-image-hero__button { width:100%; } .cv-image-hero__trust { flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { .cv-image-hero__button { transition:none; } }

/* Final alignment pass: full-bleed background and centered copy, matching Free Resources typography. */
.cv-hero.cv-hero--image {
  width: 100%;
  max-width: none;
  min-height: 560px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(100px, 10vw, 132px) 24px clamp(64px, 7vw, 88px);
  text-align: center;
  background-color: #080d11;
  background-image: linear-gradient(180deg, rgba(5,10,14,.58), rgba(5,10,14,.72));
  background-size: cover;
  background-position: center;
}
.cv-hero.cv-hero--image .cv-hero__photo {
  position: absolute;
  inset: -10px;
  z-index: -2;
  display: block;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  max-width: none;
  object-fit: cover;
  object-position: center;
  filter: blur(5px) brightness(.66);
  transform: scale(1.035);
}
.cv-hero.cv-hero--image .cv-image-hero__inner {
  width: min(100%, 920px);
  max-width: 920px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.cv-hero.cv-hero--image .cv-image-hero__eyebrow {
  justify-content: center;
  margin-bottom: 16px;
  color: #f0bd4a !important;
  letter-spacing: .12em;
}
.cv-hero.cv-hero--image h1 {
  max-width: 900px;
  margin: 0 auto;
  color: #fff !important;
  font-size: clamp(38px, 5vw, 62px);
  line-height: 1.08;
  font-weight: 760;
  letter-spacing: -.045em;
  text-align: center;
}
.cv-hero.cv-hero--image h1 em {
  color: #e3ad39 !important;
  font-style: normal;
}
.cv-hero.cv-hero--image .cv-image-hero__lead {
  max-width: 680px;
  margin: 22px auto 0;
  color: #d8d0bd !important;
  font-size: clamp(16px, 1.45vw, 19px);
  line-height: 1.7;
  text-align: center;
}
.cv-hero.cv-hero--image .cv-image-hero__actions {
  justify-content: center;
  margin-top: 28px;
}
.cv-hero.cv-hero--image .cv-image-hero__trust {
  justify-content: center;
}
html[data-theme="light"] .cv-hero.cv-hero--image h1,
html[data-theme="dark"] .cv-hero.cv-hero--image h1 { color: #fff !important; }
html[data-theme="light"] .cv-hero.cv-hero--image h1 em,
html[data-theme="dark"] .cv-hero.cv-hero--image h1 em { color: #e3ad39 !important; }
@media (max-width: 700px) {
  .cv-hero.cv-hero--image { min-height: 460px; padding: 48px 20px 48px; }
  .cv-hero.cv-hero--image .cv-hero__photo { object-position: center; }
  .cv-hero.cv-hero--image h1 { font-size: clamp(34px, 8vw, 46px); }
  .cv-hero.cv-hero--image .cv-image-hero__actions { align-items: center; flex-direction: column; }
  .cv-hero.cv-hero--image .cv-image-hero__trust { align-items: center; }
}

/* Premium Contact hero refresh — aligned with the Free Resources gold/ivory palette. */
.cv-hero.cv-hero--image {
  position: relative;
  min-height: 590px;
  padding: clamp(42px, 5vw, 64px) 22px clamp(58px, 7vw, 82px);
  background: #080d11;
  text-align: center;
}
.cv-hero.cv-hero--image::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 50% 42%, rgba(4, 10, 14, .25) 0%, rgba(4, 10, 14, .70) 72%),
    linear-gradient(180deg, rgba(5, 9, 12, .45), rgba(5, 9, 12, .72));
}
.cv-hero.cv-hero--image::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 18px;
  border: 1px solid rgba(227, 173, 57, .17);
  border-radius: 22px;
  pointer-events: none;
}
.cv-hero.cv-hero--image .cv-hero__photo {
  inset: -12px;
  width: calc(100% + 24px);
  height: calc(100% + 24px);
  object-fit: cover;
  object-position: center 48%;
  filter: blur(3px) brightness(.58) saturate(.82);
  transform: scale(1.045);
}
.cv-hero.cv-hero--image .cv-image-hero__inner {
  width: min(100%, 960px);
  max-width: 960px;
  padding: 0 12px;
}
.cv-hero.cv-hero--image .cv-image-hero__eyebrow {
  display: inline-flex;
  min-height: 40px;
  margin: 0 auto 24px;
  padding: 9px 17px;
  border: 1px solid rgba(227, 173, 57, .35);
  border-radius: 999px;
  background: rgba(8, 13, 17, .58);
  color: #f3c75e !important;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.cv-hero.cv-hero--image .cv-image-hero__eyebrow span {
  background: #52dfa0;
  box-shadow: 0 0 0 5px rgba(82, 223, 160, .14), 0 0 18px rgba(82, 223, 160, .5);
}
.cv-hero.cv-hero--image h1 {
  max-width: 900px;
  font-size: clamp(38px, 4.7vw, 60px);
  line-height: 1.08;
  letter-spacing: -.045em;
  font-weight: 800;
  text-shadow: 0 5px 28px rgba(0, 0, 0, .34);
}
.cv-hero.cv-hero--image h1 em {
  color: #e3ad39 !important;
  text-shadow: 0 4px 28px rgba(227, 173, 57, .16);
}
.cv-hero.cv-hero--image .cv-image-hero__lead {
  max-width: 650px;
  margin-top: 23px;
  color: #eee8dc !important;
  font-size: clamp(16px, 1.35vw, 18px);
  line-height: 1.75;
  font-weight: 450;
}
.cv-hero.cv-hero--image .cv-image-hero__actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-top: 32px;
}
.cv-hero.cv-hero--image .cv-image-hero__button {
  min-height: 56px;
  padding: 0 25px;
  gap: 15px;
  border: 1px solid #f0c65e;
  border-radius: 999px;
  background: linear-gradient(135deg, #f5d77d 0%, #e3ad39 52%, #c88b19 100%);
  color: #17130a !important;
  font-size: 14px;
  font-weight: 850;
  letter-spacing: .005em;
  box-shadow: 0 9px 28px rgba(196, 139, 25, .24), inset 0 1px 0 rgba(255,255,255,.55);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.cv-hero.cv-hero--image .cv-image-hero__button i {
  display: inline-grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: rgba(23, 19, 10, .10);
  transition: transform .22s ease;
}
.cv-hero.cv-hero--image .cv-image-hero__button:hover {
  transform: translateY(-3px);
  filter: brightness(1.05);
  box-shadow: 0 14px 34px rgba(196, 139, 25, .34), inset 0 1px 0 rgba(255,255,255,.65);
}
.cv-hero.cv-hero--image .cv-image-hero__button:hover i { transform: translateX(3px); }
.cv-hero.cv-hero--image .cv-image-hero__email {
  min-height: 54px;
  padding: 0 19px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 999px;
  background: rgba(9, 15, 20, .42);
  color: #fff !important;
  font-size: 14px;
  font-weight: 700;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.cv-hero.cv-hero--image .cv-image-hero__email:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, .10);
  border-color: rgba(227, 173, 57, .65);
}
.cv-hero.cv-hero--image .cv-image-hero__email i { color: #f0c65e; }
.cv-hero.cv-hero--image .cv-image-hero__trust {
  justify-content: center;
  gap: 12px 26px;
  margin-top: 30px;
}
.cv-hero.cv-hero--image .cv-image-hero__trust span {
  color: #eee8dc !important;
  font-size: 12px;
  font-weight: 650;
}
.cv-hero.cv-hero--image .cv-image-hero__trust i { color: #64e0a8; }
@media (max-width: 700px) {
  .cv-hero.cv-hero--image { min-height: 0; padding: 100px 18px 66px; }
  .cv-hero.cv-hero--image::after { inset: 10px; border-radius: 16px; }
  .cv-hero.cv-hero--image .cv-image-hero__inner { padding: 0 3px; }
  .cv-hero.cv-hero--image h1 { font-size: clamp(34px, 8vw, 46px); line-height: 1.1; }
  .cv-hero.cv-hero--image .cv-image-hero__lead { margin-top: 18px; font-size: 16px; }
  .cv-hero.cv-hero--image .cv-image-hero__actions { width: 100%; flex-direction: column; gap: 12px; margin-top: 25px; }
  .cv-hero.cv-hero--image .cv-image-hero__button,
  .cv-hero.cv-hero--image .cv-image-hero__email { width: min(100%, 340px); box-sizing: border-box; }
  .cv-hero.cv-hero--image .cv-image-hero__trust { gap: 12px 18px; margin-top: 23px; }
}
@media (prefers-reduced-motion: reduce) {
  .cv-hero.cv-hero--image .cv-image-hero__button,
  .cv-hero.cv-hero--image .cv-image-hero__button i,
  .cv-hero.cv-hero--image .cv-image-hero__email { transition: none; }
}

/* Contact hero motion refresh: subtle entrance + slow background drift. */
@keyframes twContactHeroReveal {
  from { opacity: 0; transform: translate3d(0, 24px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes twContactHeroPhotoDrift {
  from { transform: scale(1.045) translate3d(0, 0, 0); }
  to { transform: scale(1.10) translate3d(-.6%, -.4%, 0); }
}
.cv-hero.cv-hero--image .cv-hero__photo {
  animation: twContactHeroPhotoDrift 22s ease-in-out infinite alternate;
  will-change: transform;
}
.cv-hero.cv-hero--image .cv-image-hero__eyebrow,
.cv-hero.cv-hero--image h1,
.cv-hero.cv-hero--image .cv-image-hero__lead,
.cv-hero.cv-hero--image .cv-image-hero__actions,
.cv-hero.cv-hero--image .cv-image-hero__trust {
  animation: twContactHeroReveal .75s cubic-bezier(.2,.7,.2,1) both;
}
.cv-hero.cv-hero--image h1 { animation-delay: .08s; }
.cv-hero.cv-hero--image .cv-image-hero__lead { animation-delay: .16s; }
.cv-hero.cv-hero--image .cv-image-hero__actions { animation-delay: .24s; }
.cv-hero.cv-hero--image .cv-image-hero__trust { animation-delay: .32s; }
@media (max-width: 700px) {
  .cv-hero.cv-hero--image { padding-top: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .cv-hero.cv-hero--image .cv-hero__photo,
  .cv-hero.cv-hero--image .cv-image-hero__eyebrow,
  .cv-hero.cv-hero--image h1,
  .cv-hero.cv-hero--image .cv-image-hero__lead,
  .cv-hero.cv-hero--image .cv-image-hero__actions,
  .cv-hero.cv-hero--image .cv-image-hero__trust { animation: none !important; }
}

/* Contact page closing hero: high-contrast black + gold/green finish. */
.contact-v2 .cv-closer {
  background: #050505 !important;
  padding: clamp(34px, 5vw, 64px) 0 clamp(60px, 8vw, 95px) !important;
}
.contact-v2 .cv-closer-panel {
  background:
    radial-gradient(ellipse at 82% 18%, rgba(245, 192, 79, .13), transparent 36%),
    radial-gradient(ellipse at 12% 85%, rgba(12, 164, 119, .10), transparent 38%),
    #050505 !important;
  border: 1px solid rgba(245, 192, 79, .28);
  box-shadow: 0 28px 80px rgba(0, 0, 0, .48), inset 0 0 0 1px rgba(255,255,255,.025) !important;
}
.contact-v2 .cv-closer-panel::before {
  border-color: rgba(245, 192, 79, .26) !important;
  box-shadow: 0 0 0 35px rgba(245, 192, 79, .055), 0 0 0 75px rgba(12, 164, 119, .045) !important;
}
.contact-v2 .cv-closer-copy .cv-label { color: #F5C04F !important; }
.contact-v2 .cv-closer h2 { color: #FFFFFF !important; text-shadow: 0 3px 24px rgba(0,0,0,.45); }
.contact-v2 .cv-closer h2 em {
  color: #F5C04F !important;
  background: linear-gradient(100deg, #D99A16, #FFE29A 48%, #E7B638 75%, #C98A0A);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.contact-v2 .cv-closer-copy > p:not(.cv-label) { color: #E8E4D8 !important; }
.contact-v2 .cv-closer-visual {
  border-color: rgba(31, 209, 139, .58) !important;
  background: radial-gradient(circle, rgba(31,209,139,.16), rgba(245,192,79,.07) 48%, transparent 72%) !important;
  color: #1FD18B !important;
  box-shadow: 0 0 48px rgba(31,209,139,.07);
}
.contact-v2 .cv-chart-bars { opacity: 1 !important; }
.contact-v2 .cv-chart-bars i { background: linear-gradient(180deg, #1FD18B 0%, rgba(31,209,139,.36) 100%) !important; }
.contact-v2 .cv-chart-caption { color: #FFFFFF !important; text-shadow: 0 2px 8px #000; }
.contact-v2 .cv-closer .cv-btn--green { background: #1FD18B !important; color: #04150E !important; border: 1px solid #1FD18B !important; }
.contact-v2 .cv-closer .cv-btn--ghost { color: #F5C04F !important; border-color: rgba(245,192,79,.55) !important; background: rgba(245,192,79,.045) !important; }
.contact-v2 .cv-closer .cv-btn--ghost:hover { background: rgba(245,192,79,.12) !important; }
@media (max-width: 700px) {
  .contact-v2 .cv-closer { padding-top: 28px !important; }
  .contact-v2 .cv-closer-panel { border-radius: 22px 22px 22px 5px; }
}


/* Contact closing CTA: dedicated light-mode palette (keeps dark mode unchanged). */
html[data-theme="light"] .contact-v2 .cv-closer {
  background: #F8F5EC !important;
}
html[data-theme="light"] .contact-v2 .cv-closer-panel {
  /* Keep the CTA card black in light mode; only the surrounding page stays light. */
  background:
    radial-gradient(ellipse at 82% 18%, rgba(245, 192, 79, .09), transparent 38%),
    radial-gradient(ellipse at 12% 85%, rgba(31, 209, 139, .08), transparent 40%),
    #050505 !important;
  border: 1px solid rgba(245, 192, 79, .28) !important;
  box-shadow: 0 22px 58px rgba(0, 0, 0, .22), inset 0 0 0 1px rgba(255,255,255,.025) !important;
}
html[data-theme="light"] .contact-v2 .cv-closer-panel::before {
  border-color: rgba(245, 192, 79, .26) !important;
  box-shadow: 0 0 0 35px rgba(245, 192, 79, .055), 0 0 0 75px rgba(12, 164, 119, .045) !important;
}
html[data-theme="light"] .contact-v2 .cv-closer h2 {
  color: #FFFFFF !important;
  text-shadow: 0 3px 24px rgba(0,0,0,.45) !important;
}
html[data-theme="light"] .contact-v2 .cv-closer h2 em {
  background: linear-gradient(100deg, #D99A16, #FFE29A 48%, #E7B638 75%, #C98A0A) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
html[data-theme="light"] .contact-v2 .cv-closer-copy > p:not(.cv-label) {
  color: #E8E4D8 !important;
}
html[data-theme="light"] .contact-v2 .cv-closer-copy .cv-label { color: #F5C04F !important; }
html[data-theme="light"] .contact-v2 .cv-closer-visual {
  background: radial-gradient(circle, rgba(31,209,139,.16), rgba(245,192,79,.07) 48%, transparent 72%) !important;
  border-color: rgba(31, 209, 139, .58) !important;
  color: #1FD18B !important;
  box-shadow: 0 0 42px rgba(31,209,139,.09) !important;
}
html[data-theme="light"] .contact-v2 .cv-chart-caption { color: #FFFFFF !important; text-shadow: 0 2px 8px #000 !important; }
html[data-theme="light"] .contact-v2 .cv-closer .cv-btn--ghost {
  color: #F5C04F !important;
  border-color: rgba(245,192,79,.55) !important;
  background: rgba(245,192,79,.045) !important;
}
html[data-theme="light"] .contact-v2 .cv-closer .cv-btn--ghost:hover { background: rgba(245,192,79,.12) !important; }


/* --- Home 2 styles (merged from home2.css) --- */
/* ===== Home 2: "The Trading Floor" (sections 1-3). All classes prefixed h2- ===== */
.h2-hero{--gold:#F5C04F;position:relative;isolation:isolate;overflow:hidden;background:#050505;color:#F1EADA;padding:clamp(28px,5vw,56px) 0 clamp(48px,7vw,88px)}
.h2-hero__bg{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;opacity:.5}
.h2-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(100deg,#050505 8%,rgba(5,5,5,.86) 46%,rgba(120,86,10,.38) 100%),linear-gradient(180deg,transparent 72%,#050505)}
.h2-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,72px);align-items:center}
.h2-kicker{display:inline-flex;align-items:center;gap:10px;margin:0 0 20px;padding:7px 15px;border:1px solid rgba(245,192,79,.4);border-radius:999px;background:rgba(245,192,79,.1);font-size:.8125rem;font-weight:600;color:#F1EADA}
.h2-hero__title{margin:0;font:800 clamp(2.4rem,6.2vw,5rem)/1.02 var(--font-head);letter-spacing:-.025em;color:#fff}
.h2-outline{color:transparent;-webkit-text-stroke:2px var(--gold)}
.h2-hero .grad{background:linear-gradient(95deg,#F5C04F,#FFE29A);-webkit-background-clip:text;background-clip:text;color:transparent}
.h2-hero__lead{max-width:520px;margin:20px 0 0;font-size:clamp(1rem,1.4vw,1.125rem);line-height:1.65;color:#C9BEA3}
.h2-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.h2-hero .btn--solid{--btn-bg:#F2B632;--btn-fg:#140E00}
.h2-hero .btn--ghost{color:#fff;border-color:rgba(245,192,79,.45);background:rgba(245,192,79,.08)}
.h2-cd{margin-top:34px;max-width:460px}
.h2-cd>p{margin:0 0 10px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.h2-cd ul{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0;padding:0;list-style:none}
.h2-cd li{padding:12px 6px;text-align:center;border:1px solid rgba(245,192,79,.3);border-radius:14px;background:rgba(15,14,11,.7);backdrop-filter:blur(6px)}
.h2-cd b{display:block;font:800 clamp(1.4rem,3vw,1.9rem)/1 var(--font-head);color:#fff;font-variant-numeric:tabular-nums}
.h2-cd span{font-size:.6875rem;text-transform:uppercase;letter-spacing:.08em;color:#B9AF98}
/* photo collage with floating glass cards */
.h2-art{position:relative;min-height:clamp(340px,46vw,540px)}
.h2-ph{position:absolute;margin:0;overflow:hidden;border-radius:26px;box-shadow:0 30px 70px rgba(0,0,0,.6)}
.h2-ph img{width:100%;height:100%;object-fit:cover;display:block}
.h2-ph--a{inset-block-start:0;inset-inline-end:0;width:70%;height:80%;border:1px solid rgba(245,192,79,.35)}
.h2-ph--b{inset-block-end:0;inset-inline-start:0;width:50%;height:44%;border:6px solid #050505;border-radius:22px}
.h2-gl{position:absolute;padding:14px 16px;border:1px solid rgba(245,192,79,.4);border-radius:18px;background:rgba(15,14,11,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 16px 40px rgba(0,0,0,.5);animation:h2-float 6s ease-in-out infinite}
.h2-gl--ring{inset-block-start:6%;inset-inline-start:0;display:flex;align-items:center;gap:12px}
.h2-gl--spark{inset-block-end:6%;inset-inline-end:3%;width:min(46%,210px);animation-delay:-3s}
.h2-ring{width:64px;height:64px;flex:none;transform:rotate(-90deg)}
.h2-ring circle{fill:none;stroke-width:8;stroke-linecap:round}
.h2-ring .t{stroke:rgba(245,192,79,.2)}.h2-ring .v{stroke:#1FD18B;stroke-dasharray:176;stroke-dashoffset:176;transition:stroke-dashoffset 1.6s ease .3s}
.is-in .h2-ring .v{stroke-dashoffset:48}
.h2-gl small{display:block;font-size:.6875rem;text-transform:uppercase;letter-spacing:.08em;color:#B9AF98}
.h2-gl strong{display:block;font:800 1.375rem/1.2 var(--font-head);color:#1FD18B}
.h2-gl em{font-style:normal;font-size:.75rem;color:#B9AF98}
.h2-spark{width:100%;height:42px;margin-top:6px}
.h2-spark polyline{fill:none;stroke:#1FD18B;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
@keyframes h2-float{50%{transform:translateY(-10px)}}
@media (max-width:959px){
  .h2-hero__grid{grid-template-columns:minmax(0,1fr)}
  .h2-art{min-height:clamp(320px,70vw,480px);max-width:560px;width:100%;margin-inline:auto}
}
@media (max-width:480px){
  .h2-outline{-webkit-text-stroke:1.5px var(--gold)}
  .h2-cta .btn{flex:1 1 100%}
  .h2-gl{padding:10px 12px}.h2-ring{width:48px;height:48px}.h2-gl strong{font-size:1.125rem}
}
@media (prefers-reduced-motion:reduce){.h2-gl{animation:none}.h2-ring .v{transition:none}}

/* ===== Sections 4-6 ===== */
.h2-head{max-width:640px;margin-bottom:clamp(28px,4vw,48px)}
.h2-h2{margin:0;font:800 clamp(1.75rem,3.8vw,2.875rem)/1.1 var(--font-head);letter-spacing:-.02em;color:var(--ink)}
.h2-sub{margin:16px 0 0;max-width:540px;font-size:1.0625rem;line-height:1.65;color:var(--muted)}
/* 4: staircase of level panels (swipeable on small screens) */
/* 5: bento grid (always dark) */
/* ===== 5. Inside a live class: sticky screen that changes as you scroll the steps ===== */
.h2-lx{--ink:#fff;--text:#F1EADA;--muted:#B9AF98;--line:rgba(245,192,79,.26);--accent-text:#F5C04F;--g:#1FD18B;--r:#FF4D4F;padding:clamp(60px,9vw,112px) 0;background:#0A0906;color:var(--text);overflow-x:clip}
.h2-lx__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,84px);align-items:start;margin-top:clamp(8px,2vw,24px)}
.h2-lx__stage{position:sticky;top:calc(var(--h) + 24px);height:clamp(380px,calc(100vh - var(--h) - 48px),600px);border:1px solid rgba(245,192,79,.4);border-radius:30px;background:#0F0D09;overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.55),0 0 0 6px rgba(245,192,79,.06)}
.h2-lx__hud{position:absolute;z-index:3;inset-inline:0;inset-block-start:0;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;pointer-events:none}
.h2-lx__live{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:rgba(255,77,79,.16);border:1px solid rgba(255,77,79,.55);font-size:.6875rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.h2-lx__live .pulse{background:var(--r)}.h2-lx__live .pulse::after{background:var(--r)}
.h2-lx__cnt{font:700 .8125rem/1 var(--font-body);letter-spacing:.14em;color:var(--accent-text);font-variant-numeric:tabular-nums}
.h2-lx__dots{position:absolute;z-index:3;inset-inline:0;inset-block-end:0;display:flex;justify-content:center;gap:8px;padding:16px}
.h2-lx__dots button{width:30px;height:5px;padding:0;border:0;border-radius:99px;background:rgba(245,192,79,.3);cursor:pointer;transition:background .3s,width .3s}
.h2-lx__dots button.is-on{width:54px;background:#F5C04F}
.h2-lx__dots button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.h2-lx__v{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s,visibility 0s .6s;background:linear-gradient(160deg,#241a04,#0A0906)}
.h2-lx__v.is-on{opacity:1;visibility:visible;transition:opacity .6s,visibility 0s}
.h2-lx__v>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6;transform:scale(1.08);transition:transform 6s ease-out}
.h2-lx__v.is-on>img{transform:scale(1)}
.h2-lx__v--ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,9,6,.55),rgba(10,9,6,.1) 35%,rgba(10,9,6,.9))}
.h2-lx__bt{position:absolute;z-index:2;inset-inline:clamp(20px,4vw,40px);inset-block-end:clamp(48px,8vw,70px)}
.h2-lx__bt small{display:block;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text)}
.h2-lx__bt b{display:block;margin-top:6px;font:800 clamp(2rem,4.6vw,3.5rem)/1.05 var(--font-head);letter-spacing:-.04em;color:#fff}
.h2-lx__bt span{display:block;margin-top:8px;font-size:1rem;color:var(--muted)}
.h2-lx__v.is-on .h2-lx__bt{animation:lxUp .8s .15s cubic-bezier(.2,.7,.2,1) backwards}
/* seats */
.h2-lx__v--seats{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:60px 24px 56px;text-align:center}
.h2-lx__big{font:800 clamp(4rem,10vw,7rem)/1 var(--font-head);letter-spacing:-.05em;color:#fff}.h2-lx__big small{display:block;margin-top:6px;font:600 1rem/1.3 var(--font-body);letter-spacing:0;color:var(--muted)}
.h2-lx__seats{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(8px,1.6vw,14px);width:min(70%,300px);margin:0;padding:0;list-style:none}
.h2-lx__seats li{aspect-ratio:1;border-radius:50%;background:rgba(245,192,79,.6)}.h2-lx__seats li:last-child{background:var(--g);box-shadow:0 0 0 5px rgba(31,209,139,.25)}
.h2-lx__you{margin:0;font-size:.8125rem;color:var(--muted)}.h2-lx__you i{display:inline-block;width:9px;height:9px;margin-inline-end:6px;border-radius:50%;background:var(--g)}
.h2-lx__v.is-on .h2-lx__seats li{animation:lxSeat .4s calc(.2s + var(--i)*.035s) cubic-bezier(.2,.7,.2,1) backwards}
/* chart */
.h2-lx__v--chart{padding:64px clamp(18px,3vw,32px) 56px;display:flex;flex-direction:column;justify-content:center}
.h2-lx__ct{position:absolute;z-index:2;inset-block-start:60px;inset-inline:clamp(20px,3vw,34px);font:800 clamp(1.25rem,2.4vw,1.75rem)/1.15 var(--font-head);letter-spacing:-.02em;color:#fff}
.h2-lx__cs{display:block;width:100%;height:auto;max-height:62%;overflow:visible;margin-top:22px}
.h2-lx__cs>line,.h2-lx__cs>rect{transform-box:fill-box;transform-origin:50% 100%}
.h2-lx__note{margin:10px 0 0;font-size:.6875rem;color:#8F8670}
.h2-lx__v.is-on .h2-lx__cs>line,.h2-lx__v.is-on .h2-lx__cs>rect{animation:lxCandle .5s calc(.2s + var(--i)*.1s) cubic-bezier(.2,.7,.2,1) backwards}
.h2-lx__v.is-on .h2-lx__cs g>*{animation:lxFade .6s 1.7s ease backwards}.h2-lx__v.is-on .h2-lx__cs g>:nth-child(n+3){animation-delay:2s}.h2-lx__v.is-on .h2-lx__cs g>:nth-child(n+5){animation-delay:2.3s}
/* schedule */
.h2-lx__v--wk{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(22px,4vw,44px) 56px}
.h2-lx__v--wk h4{margin:0 0 14px;font:700 .75rem/1.2 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text)}
.h2-lx__wk{margin:0;padding:0;list-style:none}
.h2-lx__wk li{display:grid;gap:4px;padding:clamp(14px,2.4vh,24px) 0;border-block-start:1px solid rgba(245,192,79,.22);font:700 clamp(1.25rem,2.6vw,1.875rem)/1.2 var(--font-head);color:#fff}
.h2-lx__wk time{font:700 .8125rem/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:#F5C04F}
.h2-lx__v.is-on .h2-lx__wk li{animation:lxUp .7s calc(.15s + var(--i)*.15s) cubic-bezier(.2,.7,.2,1) backwards}
/* replay */
.h2-lx__play{position:absolute;z-index:2;inset-block-start:42%;inset-inline-start:50%;translate:-50% -50%;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:#F2B632;color:#140E00;font-size:1.5rem;text-decoration:none;box-shadow:0 0 0 12px rgba(242,182,50,.22);transition:transform .25s,box-shadow .25s}
[dir="rtl"] .h2-lx__play{inset-inline-start:auto;left:50%}
.h2-lx__play:hover{transform:scale(1.07);box-shadow:0 0 0 18px rgba(242,182,50,.22)}
.h2-lx__sc{display:block;height:5px;margin-top:16px;border-radius:99px;background:rgba(245,192,79,.22);overflow:hidden}.h2-lx__sc i{display:block;width:62%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#F5C04F,#FFE29A);transform-origin:left}
[dir="rtl"] .h2-lx__sc i{transform-origin:right}
.h2-lx__v.is-on .h2-lx__sc i{animation:lxFill 2.2s .3s cubic-bezier(.4,0,.2,1) backwards}
@keyframes lxUp{from{opacity:0;transform:translateY(22px)}}
@keyframes lxFade{from{opacity:0}}
@keyframes lxSeat{from{opacity:0;transform:scale(.3)}}
@keyframes lxCandle{from{opacity:0;transform:scaleY(.2)}}
@keyframes lxFill{from{transform:scaleX(0)}}
/* steps */
.h2-lx__steps{margin:0;padding:0;list-style:none;border-inline-start:1px solid var(--line)}
.h2-lx__s{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:clamp(320px,56vh,500px);padding:24px 0 24px clamp(24px,4vw,48px);opacity:.32;transition:opacity .5s}
.h2-lx__s.is-on{opacity:1}
.h2-lx__s::before{content:"";position:absolute;inset-inline-start:-7px;inset-block-start:50%;width:13px;height:13px;margin-top:-7px;border-radius:50%;background:#0A0906;border:2px solid rgba(245,192,79,.5);transition:background .4s,box-shadow .4s,border-color .4s}
.h2-lx__s.is-on::before{background:#F5C04F;border-color:#F5C04F;box-shadow:0 0 0 7px rgba(245,192,79,.2),0 0 20px rgba(245,192,79,.5)}
.h2-lx__n{font:800 clamp(3.5rem,7vw,5.5rem)/1 var(--font-head);letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px rgba(245,192,79,.55);transition:-webkit-text-stroke-color .4s,color .4s}
.h2-lx__s.is-on .h2-lx__n{color:rgba(245,192,79,.14);-webkit-text-stroke-color:#F5C04F}
.h2-lx__k{margin-top:10px;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}
.h2-lx__s h3{margin:8px 0 0;font:800 clamp(1.5rem,3vw,2.375rem)/1.15 var(--font-head);letter-spacing:-.02em;color:#fff}
.h2-lx__s p{margin:12px 0 0;max-width:440px;font-size:1.0625rem;line-height:1.65;color:var(--muted)}
.h2-lx__s a{margin-top:16px;align-self:flex-start;font-weight:700;color:#F5C04F;text-decoration:none}.h2-lx__s a:hover{text-decoration:underline}
@media (max-width:899px){
  .h2-lx__grid{grid-template-columns:minmax(0,1fr);gap:0}
  .h2-lx__stage{top:calc(var(--h) + 8px);z-index:2;height:clamp(250px,42vh,360px);border-radius:22px}
  .h2-lx__steps{border-inline-start:0}
  .h2-lx__s{min-height:clamp(260px,50vh,380px);padding-inline-start:0}.h2-lx__s::before{display:none}
  .h2-lx__n{font-size:3rem}
  .h2-lx__big{font-size:3.25rem}.h2-lx__v--seats{gap:10px;padding:52px 20px 40px}.h2-lx__seats{width:min(46%,170px)}
  .h2-lx__ct{inset-block-start:52px;font-size:1.0625rem}.h2-lx__v--chart{padding:48px 16px 40px}
  .h2-lx__v--wk{padding:52px 22px 40px}.h2-lx__wk li{padding:8px 0;font-size:1.0625rem}.h2-lx__wk time{font-size:.6875rem}
  .h2-lx__play{width:60px;height:60px;font-size:1.125rem}.h2-lx__bt{inset-block-end:40px}.h2-lx__bt b{font-size:2.25rem}.h2-lx__bt span{font-size:.875rem;margin-top:4px}
}
/* ---- Inside a live class: robust tablet / mobile stage ----
   Slides stack in one grid cell so the stage is always as tall as its tallest
   slide (nothing overlaps the HUD or dots), it sits on a solid backing, and it
   only sticks when the screen is tall enough to leave room for the steps. */
@media (max-width:899px){
  .h2-lx__stage{position:relative;top:auto;height:auto;display:grid;margin-bottom:8px;background:#0F0D09;box-shadow:0 0 0 8px #0A0906,0 16px 22px 6px #0A0906}
  .h2-lx__v{position:relative;inset:auto;grid-area:1/1;min-width:0;min-height:300px;display:flex;flex-direction:column;justify-content:center}
  .h2-lx__v--ph{display:block;min-height:320px}
  .h2-lx__v--seats{padding:64px 20px 56px}
  .h2-lx__v--chart{padding:64px 16px 56px}
  .h2-lx__v--wk{padding:64px 22px 56px}
  .h2-lx__ct{position:relative;inset:auto;margin-bottom:6px}
  .h2-lx__cs{max-height:none;margin-top:10px}
  .h2-lx__bt{inset-block-end:52px}
  .h2-lx__play{inset-block-start:36%}
  .h2-lx__s{min-height:clamp(240px,46vh,340px)}
  .h2-lx__s:last-child{min-height:0;padding-bottom:8px}
}
@media (max-width:899px) and (min-height:620px){
  .h2-lx__stage{position:sticky;top:calc(var(--h) + 10px);z-index:3}
}
@media (max-width:520px){
  .h2-lx__stage{border-radius:20px}
  .h2-lx__hud{padding:12px 14px}
  .h2-lx__live{padding:5px 11px;letter-spacing:.1em}
  .h2-lx__v{min-height:280px}.h2-lx__v--ph{min-height:290px}
  .h2-lx__big{font-size:3rem}
  .h2-lx__seats{width:min(42%,140px)}
  .h2-lx__bt{inset-inline:18px;inset-block-end:46px}
  .h2-lx__bt b{font-size:clamp(1.6rem,8vw,2.1rem)}
  .h2-lx__play{width:52px;height:52px;font-size:1rem;box-shadow:0 0 0 8px rgba(242,182,50,.22)}
  .h2-lx__wk li{font-size:1rem}
}
@media (max-width:360px){
  .h2-lx__live{font-size:.625rem;padding:5px 9px;gap:6px}
  .h2-lx__cnt{font-size:.75rem;letter-spacing:.1em}
  .h2-lx__dots button{width:22px}.h2-lx__dots button.is-on{width:40px}
}
@media (prefers-reduced-motion:reduce){.h2-lx__v,.h2-lx__s,.h2-lx__dots button{transition:none}.h2-lx__v>img{transition:none;transform:none}.h2-lx .h2-lx__v *{animation:none!important}}
/* 6: portfolio lab */
.h2-lab{padding:clamp(60px,9vw,112px) 0;background:var(--bg);color:var(--text);overflow:hidden}
.h2-lab__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,6vw,80px);align-items:center}
.h2-checks{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:10px;font-weight:500}.h2-checks i{margin-inline-end:10px;color:var(--gain)}
.h2-lab .h2-cta{margin-top:26px}
.h2-pf{--g:#1FD18B;--r:#FF4D4F;padding:clamp(18px,3vw,28px);border:1px solid rgba(245,192,79,.35);border-radius:26px;background:#0B0A07;color:#F1EADA;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.h2-pf__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.h2-pf small{display:block;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#B9AF98}
.h2-pf__top b{font:800 clamp(1.75rem,4vw,2.5rem)/1.15 var(--font-head);color:#fff;font-variant-numeric:tabular-nums}
.h2-pf__chg{padding:6px 12px;border-radius:999px;background:rgba(31,209,139,.15);font-weight:700;font-size:.875rem;color:var(--g)}
.h2-area{display:block;width:100%;height:clamp(80px,12vw,120px);margin:14px 0}
.h2-tw{overflow-x:auto}.h2-pf table{width:100%;border-collapse:collapse;font-size:.9375rem;font-variant-numeric:tabular-nums}
.h2-pf th,.h2-pf td{padding:10px 8px;text-align:end;border-top:1px solid rgba(245,192,79,.18)}
.h2-pf th:first-child{text-align:start;color:#fff}.h2-pf thead th{border-top:0;font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:#B9AF98;font-weight:700}
.h2-pf .up{color:var(--g)}.h2-pf .dn{color:var(--r)}
.h2-cash{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:.75rem;color:#B9AF98}
.h2-cash i{flex:1;height:8px;border-radius:99px;background:rgba(245,192,79,.2);overflow:hidden}.h2-cash u{display:block;width:38%;height:100%;background:#F5C04F;border-radius:99px}
.h2-note{margin:12px 0 0;font-size:.75rem;color:#8F8670}
@media (max-width:959px){
  .h2-lab__grid{grid-template-columns:minmax(0,1fr)}
}

/* ===== Sections 7-8 ===== */
.h2-wall{padding:clamp(60px,9vw,112px) 0;background:var(--surface);color:var(--text)}
.h2-fine{margin:10px 0 0;max-width:720px;font-size:.8125rem;color:var(--muted)}
.h2-end{padding:clamp(56px,8vw,96px) 0;background:var(--bg);color:var(--text)}
.h2-end__card{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:clamp(380px,46vw,500px);border-radius:32px;border:1px solid var(--line)}
.h2-end__card>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.h2-end__card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,5,5,.94) 30%,rgba(5,5,5,.55) 100%)}
[dir="rtl"] .h2-end__card::before{background:linear-gradient(270deg,rgba(5,5,5,.94) 30%,rgba(5,5,5,.55) 100%)}
.h2-end__body{max-width:560px;padding:clamp(28px,5vw,64px);color:#F1EADA;--accent-text:#F5C04F;--btn-bg:#F2B632;--btn-fg:#140E00}
.h2-end__body h2{margin:0;font:800 clamp(2rem,4.6vw,3.5rem)/1.05 var(--font-head);letter-spacing:-.025em;color:#fff}
.h2-end__body>p:not(.eyebrow){margin:16px 0 0;font-size:1.0625rem;line-height:1.6;color:#D8CDB2}
.h2-end .btn--ghost{color:#fff;border-color:rgba(245,192,79,.5);background:rgba(245,192,79,.08)}
.h2-kit{margin-top:24px;padding:clamp(20px,3vw,32px);border:1px solid var(--line);border-radius:24px;background:var(--surface)}
.h2-kit__h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:18px}
.h2-kit h3{margin:0;font:700 1.25rem/1.2 var(--font-head);color:var(--ink)}
.h2-kit__h a{font-weight:700;font-size:.9375rem;color:var(--accent-text);text-decoration:none}.h2-kit__h a:hover{text-decoration:underline}
.h2-kit ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.h2-kit li a{display:flex;align-items:center;gap:12px;height:100%;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--bg);color:var(--text);text-decoration:none;transition:transform .25s,border-color .25s}
.h2-kit li a:hover{transform:translateY(-3px);border-color:var(--accent)}
.h2-kit li a>i:first-child{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:var(--shade-strong);color:var(--accent-text)}
.h2-kit li span{flex:1;min-width:0;display:grid}.h2-kit li b{font-size:.9375rem;color:var(--ink)}.h2-kit li small{color:var(--muted)}
.h2-dl{color:var(--muted);font-size:.85rem}
@media (max-width:1023px){.h2-kit ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.h2-kit ul{grid-template-columns:minmax(0,1fr)}.h2-end__card{border-radius:24px}.h2-end__card::before{background:rgba(5,5,5,.78)}.h2-end .h2-cta .btn{flex:1 1 100%}}

/* ===== Redesign: slim stats card + instructor spotlight ===== */
.h2-stats{position:relative;z-index:3;margin-top:-46px}
.h2-stats ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:6px;list-style:none;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}
.h2-stats li{padding:14px clamp(14px,2.4vw,28px);border-inline-start:1px solid var(--line)}
.h2-stats li:first-child{border-inline-start:0}
.h2-stats b{display:block;font:800 clamp(1.5rem,2.8vw,2.125rem)/1.1 var(--font-head);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.h2-stats span{font-size:.8125rem;color:var(--muted)}
@media (max-width:959px){.h2-stats ul{grid-template-columns:repeat(2,minmax(0,1fr))}.h2-stats li:nth-child(3){border-inline-start:0}.h2-stats li:nth-child(n+3){border-top:1px solid var(--line)}}
/* ===== 3. Lead instructor: mentor dossier (dark band, same look in light and dark mode) ===== */
.h2-mn{--mn-gold:#F5C04F;--mn-ink:#F1EADA;--mn-mut:#B9AE96;--mn-line:rgba(245,192,79,.28);position:relative;padding:clamp(64px,9vw,120px) 0;background:#070604;color:var(--mn-ink);overflow-x:clip}
.h2-mn::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 55% at 12% 22%,rgba(245,192,79,.16),transparent 70%),radial-gradient(45% 45% at 92% 80%,rgba(31,209,139,.08),transparent 70%),repeating-linear-gradient(0deg,rgba(245,192,79,.05) 0 1px,transparent 1px 64px),repeating-linear-gradient(90deg,rgba(245,192,79,.04) 0 1px,transparent 1px 64px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent)}
.h2-mn .container{position:relative}
.h2-mn__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,6vw,96px);align-items:center}
/* photo */
.h2-mn__fig{position:relative;width:100%;max-width:460px;margin-inline:auto;padding:0 0 0 clamp(0px,2vw,18px)}
.h2-mn__big{position:absolute;inset-block-start:-.34em;inset-inline-end:-.28em;z-index:0;font:800 clamp(150px,21vw,300px)/1 var(--font-head);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1.5px rgba(245,192,79,.38);user-select:none;pointer-events:none}
.h2-mn__frame{position:relative;z-index:1;aspect-ratio:4/5;border-radius:6px;overflow:hidden;background:linear-gradient(160deg,#3a2a00,#0A0906);box-shadow:0 30px 70px rgba(0,0,0,.55),0 0 0 1px var(--mn-line)}
.h2-mn__frame img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.04)}
.h2-mn__frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(7,6,4,.88));pointer-events:none}
.h2-mn__c{position:absolute;z-index:2;width:46px;height:46px;border:3px solid var(--mn-gold);pointer-events:none}
.h2-mn__c--tl{inset-block-start:14px;inset-inline-start:14px;border-inline-end:0;border-block-end:0}
.h2-mn__c--br{inset-block-end:14px;inset-inline-end:14px;border-inline-start:0;border-block-start:0}
.h2-mn__plate{position:absolute;z-index:3;inset-inline:16px;inset-block-end:16px;display:flex;flex-direction:column;gap:2px;padding:14px 18px;border:1px solid var(--mn-line);border-radius:10px;background:rgba(10,9,6,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.h2-mn__plate b{font:700 1.25rem/1.2 var(--font-head);color:#fff}.h2-mn__plate span{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mn-gold)}
.h2-mn__tag{position:absolute;z-index:4;display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:999px;background:var(--mn-gold);color:#140E00;font:700 .8125rem/1 var(--font-body);box-shadow:0 14px 30px rgba(0,0,0,.45);animation:mnFloat 6s ease-in-out infinite}
.h2-mn__tag--a{inset-block-start:15%;inset-inline-start:-6px}
.h2-mn__tag--b{inset-block-end:24%;inset-inline-end:-10px;animation-delay:-3s;background:#0F0E0B;color:var(--mn-gold);border:1px solid var(--mn-gold)}
@keyframes mnFloat{50%{transform:translateY(-8px)}}
/* text */
.h2-mn .eyebrow{color:var(--mn-gold)}
.h2-mn .h2-h2{color:#fff}.h2-mn .grad{background:linear-gradient(95deg,#F5C04F,#FFE29A);-webkit-background-clip:text;background-clip:text;color:transparent}
.h2-mn .h2-sub{color:var(--mn-mut)}
.h2-mn__nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:30px 0 0;padding:0;list-style:none;border-block:1px solid var(--mn-line)}
.h2-mn__nums li{padding:18px clamp(10px,2vw,22px);border-inline-start:1px solid var(--mn-line)}.h2-mn__nums li:first-child{border-inline-start:0;padding-inline-start:0}
.h2-mn__nums b{display:block;font:800 clamp(1.875rem,4vw,3rem)/1 var(--font-head);letter-spacing:-.03em;color:var(--mn-gold);font-variant-numeric:tabular-nums}
.h2-mn__nums span{display:block;margin-top:6px;font-size:.8125rem;line-height:1.35;color:var(--mn-mut)}
.h2-mn__pr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(20px,3vw,40px);margin:26px 0 0;padding:0;list-style:none}
.h2-mn__pr li{position:relative;display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-block-end:1px solid rgba(245,192,79,.16)}
.h2-mn__pr li::after{content:"";position:absolute;inset-inline:0;inset-block-end:-1px;height:2px;background:var(--mn-gold);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
[dir="rtl"] .h2-mn__pr li::after{transform-origin:right}
.h2-mn__pr li:hover::after,.h2-mn__pr li:focus-within::after{transform:scaleX(1)}
.h2-mn__n{flex:none;min-width:2ch;font:800 1.125rem/1.3 var(--font-head);color:var(--mn-gold);font-variant-numeric:tabular-nums}
.h2-mn__pr h3{margin:0 0 2px;font:700 1rem/1.3 var(--font-head);color:#fff}.h2-mn__pr p{margin:0;font-size:.875rem;line-height:1.5;color:var(--mn-mut)}
.h2-mn__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.h2-mn__b1{background:var(--mn-gold);color:#140E00;border-color:var(--mn-gold)}.h2-mn__b1:hover{background:#FFD36E;transform:translateY(-2px);box-shadow:0 12px 28px rgba(245,192,79,.28)}
.h2-mn__b2{background:transparent;color:#fff;border-color:rgba(255,255,255,.34)}.h2-mn__b2:hover{background:rgba(255,255,255,.08);border-color:var(--mn-gold);transform:translateY(-2px)}
/* career timeline: the line fills as the section appears */
.h2-mn__tl{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:clamp(48px,7vw,88px) 0 0;padding:0;list-style:none}
.h2-mn__tl::before,.h2-mn__tl::after{content:"";position:absolute;inset-inline:0;inset-block-start:6px;height:2px}
.h2-mn__tl::before{background:rgba(245,192,79,.2)}
.h2-mn__tl::after{background:linear-gradient(90deg,var(--mn-gold),#FFE29A);transform:scaleX(1);transform-origin:left}
[dir="rtl"] .h2-mn__tl::after{transform-origin:right;background:linear-gradient(270deg,var(--mn-gold),#FFE29A)}
.h2-mn__tl li{position:relative;padding-top:34px}
.h2-mn__tl li::before{content:"";position:absolute;inset-block-start:0;inset-inline-start:0;width:14px;height:14px;border-radius:50%;background:var(--mn-gold);box-shadow:0 0 0 5px rgba(245,192,79,.2),0 0 18px rgba(245,192,79,.55)}
.h2-mn__tl time{font:700 .8125rem/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--mn-gold)}
.h2-mn__tl h3{margin:8px 0 2px;font:700 1.0625rem/1.3 var(--font-head);color:#fff}.h2-mn__tl p{margin:0;font-size:.875rem;line-height:1.5;color:var(--mn-mut)}
/* entrance animation: only armed when JS runs, so the content is never hidden without it */
.h2-mn.is-armed .h2-mn__frame img{clip-path:inset(0 0 100% 0);transform:scale(1.14);transition:clip-path 1.1s cubic-bezier(.7,0,.2,1),transform 1.6s cubic-bezier(.2,.7,.2,1)}
.h2-mn.is-armed .h2-mn__c{opacity:0;transition:opacity .5s .9s}
.h2-mn.is-armed .h2-mn__plate,.h2-mn.is-armed .h2-mn__tag{opacity:0;translate:0 16px;transition:opacity .6s .9s,translate .6s .9s}
.h2-mn.is-armed .h2-mn__big{opacity:0;translate:0 40px;transition:opacity 1s .2s,translate 1.2s .2s cubic-bezier(.2,.7,.2,1)}
.h2-mn.is-armed .h2-mn__body>*,.h2-mn.is-armed .h2-mn__pr li{opacity:0;translate:0 24px;transition:opacity .7s var(--d,0s),translate .7s var(--d,0s) cubic-bezier(.2,.7,.2,1)}
.h2-mn.is-armed .h2-mn__body>:nth-child(2){--d:.08s}.h2-mn.is-armed .h2-mn__body>:nth-child(3){--d:.16s}.h2-mn.is-armed .h2-mn__body>:nth-child(4){--d:.26s}
.h2-mn.is-armed .h2-mn__pr li:nth-child(1){--d:.36s}.h2-mn.is-armed .h2-mn__pr li:nth-child(2){--d:.44s}.h2-mn.is-armed .h2-mn__pr li:nth-child(3){--d:.52s}.h2-mn.is-armed .h2-mn__pr li:nth-child(4){--d:.6s}
.h2-mn.is-armed .h2-mn__body>:nth-child(6){--d:.68s}
.h2-mn.is-armed .h2-mn__tl::after{transform:scaleX(0);transition:transform 1.8s .5s cubic-bezier(.4,0,.2,1)}
.h2-mn.is-armed .h2-mn__tl li{opacity:.35;transition:opacity .6s}.h2-mn.is-armed .h2-mn__tl li::before{background:#070604;box-shadow:0 0 0 2px rgba(245,192,79,.4);transition:background .4s,box-shadow .4s}
.h2-mn.is-in .h2-mn__frame img{clip-path:inset(0);transform:none}
.h2-mn.is-in .h2-mn__c,.h2-mn.is-in .h2-mn__plate,.h2-mn.is-in .h2-mn__tag,.h2-mn.is-in .h2-mn__big,.h2-mn.is-in .h2-mn__body>*,.h2-mn.is-in .h2-mn__pr li{opacity:1;translate:0 0}
.h2-mn.is-in .h2-mn__tl::after{transform:scaleX(1)}
.h2-mn.is-in .h2-mn__tl li{opacity:1}
.h2-mn.is-in .h2-mn__tl li::before{background:var(--mn-gold);box-shadow:0 0 0 5px rgba(245,192,79,.2),0 0 18px rgba(245,192,79,.55)}
.h2-mn.is-in .h2-mn__tl li:nth-child(1){transition-delay:.5s}.h2-mn.is-in .h2-mn__tl li:nth-child(2){transition-delay:.95s}.h2-mn.is-in .h2-mn__tl li:nth-child(3){transition-delay:1.45s}.h2-mn.is-in .h2-mn__tl li:nth-child(4){transition-delay:1.95s}
.h2-mn.is-in .h2-mn__tl li::before{transition-delay:inherit}
@media (max-width:959px){.h2-mn__grid{grid-template-columns:minmax(0,1fr)}.h2-mn__fig{max-width:400px}.h2-mn__tl{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:34px}.h2-mn__tl::before,.h2-mn__tl::after{display:none}.h2-mn__tl li{border-top:2px solid rgba(245,192,79,.3)}.h2-mn__tl li::before{inset-block-start:-8px}}
@media (max-width:639px){.h2-mn__pr{grid-template-columns:minmax(0,1fr)}.h2-mn__nums b{font-size:1.75rem}.h2-mn__nums span{font-size:.75rem}.h2-mn__tag{font-size:.75rem;padding:8px 12px}.h2-mn__tag--a{inset-inline-start:-2px}.h2-mn__tag--b{inset-inline-end:-2px}.h2-mn__big{inset-inline-end:-.1em}
.h2-mn__tl{grid-template-columns:minmax(0,1fr);gap:0;padding-inline-start:30px}.h2-mn__tl::before,.h2-mn__tl::after{display:block;inset:6px auto 6px 6px;width:2px;height:auto}[dir="rtl"] .h2-mn__tl::before,[dir="rtl"] .h2-mn__tl::after{inset:6px 6px 6px auto}
.h2-mn__tl::after{transform-origin:top;background:linear-gradient(180deg,var(--mn-gold),#FFE29A);transform:scaleY(1)}.h2-mn.is-armed .h2-mn__tl::after{transform:scaleY(0)}.h2-mn.is-in .h2-mn__tl::after{transform:scaleY(1)}
.h2-mn__tl li{padding:0 0 28px;border-top:0}.h2-mn__tl li:last-child{padding-bottom:0}.h2-mn__tl li::before{inset-block-start:2px;inset-inline-start:-30px}}
@media (prefers-reduced-motion:reduce){.h2-mn__tag{animation:none}.h2-mn.is-armed *,.h2-mn.is-armed *::before,.h2-mn.is-armed *::after{transition:none!important}.h2-mn.is-armed .h2-mn__frame img{clip-path:none;transform:none}.h2-mn.is-armed .h2-mn__c,.h2-mn.is-armed .h2-mn__plate,.h2-mn.is-armed .h2-mn__tag,.h2-mn.is-armed .h2-mn__big,.h2-mn.is-armed .h2-mn__body>*,.h2-mn.is-armed .h2-mn__pr li,.h2-mn.is-armed .h2-mn__tl li{opacity:1;translate:none}.h2-mn.is-armed .h2-mn__tl::after{transform:none}.h2-mn.is-armed .h2-mn__tl li::before{background:var(--mn-gold)}}

/* ===== 4. Learning path: section frame ===== */
.h2-path{padding:clamp(60px,9vw,112px) 0;background:var(--surface);color:var(--text);overflow-x:clip}
.h2-path__top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:clamp(24px,4vw,40px)}
.h2-path__top .h2-head{margin:0}
.h2-path__all{font-weight:700;color:var(--accent-text);text-decoration:none}.h2-path__all:hover{text-decoration:underline}

/* fallback if a photo cannot load: keep a clean gradient instead of a broken icon */
img.is-broken{visibility:hidden}
.h2-ph{background:linear-gradient(160deg,#3a2a00,#0A0906)}

/* ===== 4. Learning path: the climb (one price chart, tap a level) ===== */
.h2-cl{--cx:15%;position:relative;border:1px solid var(--line);border-radius:30px;background:var(--bg);overflow:hidden;box-shadow:var(--shadow)}
.h2-cl[data-i="1"]{--cx:50%}.h2-cl[data-i="2"]{--cx:85%}
.h2-cl__top{padding:clamp(18px,3vw,34px) clamp(18px,3vw,40px) 0;border-block-end:1px solid var(--line);background:radial-gradient(60% 90% at 50% 100%,var(--shade),transparent 70%)}
.h2-cl__chart{position:relative;direction:ltr;aspect-ratio:1000/340;margin-top:clamp(36px,5vw,56px);background:repeating-linear-gradient(180deg,var(--shade-strong) 0 1px,transparent 1px 25%),repeating-linear-gradient(90deg,var(--shade) 0 1px,transparent 1px 12.5%)}
.h2-cl__svg,.h2-cl__lit,.h2-cl__lit svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.h2-cl__dim{fill:none;stroke:var(--muted);stroke-opacity:.5;stroke-width:2.5;stroke-dasharray:3 8;stroke-linecap:round;stroke-linejoin:round}
.h2-cl__lit{clip-path:inset(0 calc(100% - var(--cx)) 0 0);transition:clip-path .95s cubic-bezier(.65,0,.25,1);filter:drop-shadow(0 6px 14px rgba(245,192,79,.45))}
.h2-cl__ln{stroke:var(--gold);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.h2-cl__drop{position:absolute;inset-inline-start:var(--x);inset-block-start:var(--y);inset-block-end:0;width:0;border-inline-start:1.5px dashed var(--line);transition:border-color .4s}
.h2-cl__drop.is-on{border-color:var(--gold)}
.h2-cl__n{position:absolute;inset-inline-start:var(--x);inset-block-start:var(--y);z-index:2;transform:translate(-50%,-50%);display:block;width:48px;height:48px;padding:0;border:0;background:none;color:var(--ink);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.h2-cl__dot{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;border:2px solid var(--muted);background:var(--bg);font:800 1.125rem/1 var(--font-head);color:var(--ink);transition:transform .3s,background .3s,border-color .3s,color .3s,box-shadow .3s}
.h2-cl__n:hover .h2-cl__dot{transform:scale(1.1)}
.h2-cl__n.is-done .h2-cl__dot{border-color:var(--gold);background:var(--shade-strong)}
.h2-cl__n.is-on .h2-cl__dot{transform:scale(1.18);border-color:var(--gold);background:var(--gold);color:#140E00;animation:h2clPulse 2.2s ease-out infinite}
@keyframes h2clPulse{0%{box-shadow:0 0 0 0 rgba(245,192,79,.55)}80%,100%{box-shadow:0 0 0 18px rgba(245,192,79,0)}}
.h2-cl__n:focus-visible .h2-cl__dot{outline:3px solid var(--ink);outline-offset:3px}
.h2-cl__lbl{position:absolute;inset-block-end:calc(100% + 12px);inset-inline-start:50%;translate:-50% 0;white-space:nowrap;text-align:center;font:700 .9375rem/1.25 var(--font-head);color:var(--muted);transition:color .3s}
[dir="rtl"] .h2-cl__lbl{inset-inline-start:auto;left:50%}
.h2-cl__lbl small{display:block;font:700 .6875rem/1.2 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}
.h2-cl__n.is-on .h2-cl__lbl{color:var(--ink)}
.h2-cl__ax{position:relative;direction:ltr;height:44px;font-size:.75rem;font-weight:600;letter-spacing:.04em;color:var(--muted)}
.h2-cl__ax span{position:absolute;inset-block-start:14px;left:var(--x);translate:-50% 0;white-space:nowrap}
.h2-cl__ax .h2-cl__ax-s{left:0;translate:none}.h2-cl__ax .h2-cl__ax-e{left:auto;right:0;translate:none;color:var(--accent-text);font-weight:700}
/* detail panel */
.h2-cl__panels{padding:clamp(22px,3.4vw,44px) clamp(18px,3vw,40px)}
.h2-cl__p{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,4vw,60px);align-items:center}
.h2-cl__p[hidden]{display:none}
.h2-cl.is-armed .h2-cl__p:not([hidden]) .h2-cl__txt{animation:h2clIn .6s cubic-bezier(.2,.7,.2,1) both}
.h2-cl.is-armed .h2-cl__p:not([hidden]) .h2-cl__ph{animation:h2clPh .9s cubic-bezier(.7,0,.2,1) both}
@keyframes h2clIn{from{opacity:0;transform:translateY(18px)}}
@keyframes h2clPh{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
.h2-cl__lv{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-text)}
.h2-cl__txt h3{margin:8px 0 0;font:800 clamp(1.5rem,2.8vw,2.25rem)/1.15 var(--font-head);letter-spacing:-.02em;color:var(--ink)}
.h2-cl__txt>p{margin:12px 0 0;max-width:520px;font-size:1.0625rem;line-height:1.65;color:var(--muted)}
.h2-cl__chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.h2-cl__chips li{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid var(--line);border-radius:999px;font-size:.8125rem;font-weight:600;color:var(--ink);background:var(--shade)}
.h2-cl__chips i{color:var(--accent-text)}
.h2-cl__pts{display:grid;gap:9px;margin:18px 0 24px;padding:0;list-style:none;font-size:.9375rem;color:var(--text)}
.h2-cl__pts i{margin-inline-end:10px;color:var(--gain);font-size:.8em}
.h2-cl__ph{position:relative;margin:0;aspect-ratio:4/3;border-radius:22px;overflow:hidden;background:linear-gradient(160deg,#3a2a00,#0A0906);box-shadow:var(--shadow)}
.h2-cl__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.h2-cl__ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.1) 40%,rgba(5,5,5,.78))}
.h2-cl__no{position:absolute;z-index:1;inset-block-start:10px;inset-inline-end:18px;font:800 clamp(64px,9vw,112px)/1 var(--font-head);letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.7)}
.h2-cl__ph figcaption{position:absolute;z-index:1;inset-block-end:16px;inset-inline-start:16px;padding:7px 15px;border:1px solid rgba(245,192,79,.5);border-radius:999px;background:rgba(10,9,6,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.8125rem;font-weight:700;color:#F5C04F}
@media (max-width:859px){.h2-cl__p{grid-template-columns:minmax(0,1fr)}.h2-cl__ph{order:-1;aspect-ratio:16/10}}
@media (max-width:639px){.h2-cl{border-radius:22px}.h2-cl__chart{aspect-ratio:1000/620;margin-top:48px}.h2-cl__n{width:40px;height:40px}.h2-cl__dot{font-size:1rem}.h2-cl__lbl{font-size:.8125rem;inset-block-end:calc(100% + 8px)}.h2-cl__lbl small{font-size:.625rem;letter-spacing:.1em}.h2-cl__ax-s,.h2-cl__ax-e{display:none}.h2-cl__ax span{font-size:.6875rem}}
@media (prefers-reduced-motion:reduce){.h2-cl__lit,.h2-cl__dot,.h2-cl__drop{transition:none}.h2-cl__n.is-on .h2-cl__dot{animation:none}.h2-cl.is-armed .h2-cl__p .h2-cl__txt,.h2-cl.is-armed .h2-cl__p .h2-cl__ph{animation:none}}
/* draw-in: the lit line starts empty and climbs to level 1 when the chart scrolls into view */
.h2-cl.is-armed:not(.is-in) .h2-cl__lit{clip-path:inset(0 100% 0 0)}

/* ===== 7. Student results: sticky rating + result cards ===== */
.h2-wall__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,80px);align-items:start}
.h2-wall__side{position:sticky;top:calc(var(--h) + 24px)}
.h2-rate{margin-top:26px;padding:22px;border:1px solid var(--line);border-radius:24px;background:var(--bg)}
.h2-rate__top{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.h2-rate__top>b{font:800 3.5rem/1 var(--font-head);letter-spacing:-.03em;color:var(--ink)}
.h2-rate__st{display:block;font-size:1.125rem;letter-spacing:2px;color:#E0A526}.h2-rate small{color:var(--muted)}
.h2-rb{display:grid;grid-template-columns:34px 1fr 38px;align-items:center;gap:10px;margin-top:8px;font-size:.8125rem;color:var(--muted)}
.h2-rb i{display:block;height:8px;border-radius:99px;background:var(--shade-strong);overflow:hidden}.h2-rb u{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#E0A526,#F5C04F)}
.h2-rb em{font-style:normal;text-align:end}
.h2-wall__cta{margin-top:22px}
.h2-res{display:grid;gap:18px;margin:0;padding:0;list-style:none}
.h2-rs{padding:clamp(20px,2.8vw,30px);border:1px solid var(--line);border-radius:26px;background:var(--bg);box-shadow:var(--shadow);transition:transform .3s}
.h2-rs:hover{transform:translateY(-4px)}
.h2-rs__who{display:flex;align-items:center;gap:14px}
.h2-av{position:relative;display:grid;place-items:center;flex:none;width:54px;height:54px;overflow:hidden;border-radius:50%;background:linear-gradient(135deg,#F5C04F,#B8780A);color:#140E00;font:800 1rem/1 var(--font-head)}
.h2-av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.h2-rs__who b{display:block;color:var(--ink)}.h2-rs__who div span{font-size:.8125rem;color:var(--muted)}
.h2-rs__tag{margin-inline-start:auto;padding:4px 11px;border:1px solid var(--line);border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.h2-rs__m{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.h2-rs__m b{display:block;font:800 clamp(2.25rem,4.4vw,3.25rem)/1 var(--font-head);letter-spacing:-.03em;color:var(--gain)}
.h2-rs__m span{font-size:.875rem;color:var(--muted)}
.h2-rs__m svg{flex:none;width:clamp(110px,28%,170px);height:54px}.h2-rs__m polyline{fill:none;stroke:var(--gain);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.h2-rs blockquote{margin:16px 0 0;font-size:1.0625rem;line-height:1.6;color:var(--text)}
.h2-rs mark{background:var(--shade-strong);color:var(--ink);padding:0 4px;border-radius:4px}
.h2-rs__chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.h2-rs__chips li{padding:5px 12px;border-radius:999px;background:var(--shade);font-size:.8125rem;font-weight:600;color:var(--text)}
@media (max-width:959px){.h2-wall__grid{grid-template-columns:minmax(0,1fr)}.h2-wall__side{position:static}}
@media (max-width:480px){.h2-rs__tag{display:none}.h2-rs__m{flex-direction:column;align-items:flex-start}.h2-rs__m svg{width:100%}}
@media (prefers-reduced-motion:reduce){.h2-rs{transition:none}}

/* About page: match each frame to the actual saved image ratio so no artwork is cropped. */
.hx .hw {
  aspect-ratio: 1672 / 941 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden;
}
.hx .hw > img {
  position: absolute !important;
  inset: 0 !important;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #0b0b0a;
}
.am .am__img {
  aspect-ratio: 640 / 427 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden;
}
.am .am__img > img {
  position: absolute !important;
  inset: 0 !important;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #0b0b0a;
}
@media (max-width: 767px) {
  .hx .hw { aspect-ratio: 1672 / 941 !important; min-height: 0 !important; }
  .am .am__img { aspect-ratio: 640 / 427 !important; min-height: 0 !important; }
  .hx .hw > img, .am .am__img > img { object-fit: contain !important; }
}

/* FINAL About-page image corrections: preserve the large hero, keep the instructor avatar circular,
   and let the vision artwork fill a frame matching its own 16:9 proportions. */
.about-page .hx .hw {
  width: 100% !important;
  aspect-ratio: 5 / 4.6 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden;
}
.about-page .hx .hw > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  background: transparent !important;
}
.about-page .hx .hw__who img {
  display: block !important;
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  aspect-ratio: 1 / 1 !important;
  flex: 0 0 52px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}
.about-page .am__row--rev .am__img {
  aspect-ratio: 1672 / 941 !important;
  height: auto !important;
  min-height: 0 !important;
}
.about-page .am__row--rev .am__img > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  background: transparent !important;
}
@media (max-width: 767px) {
  .about-page .hx .hw { aspect-ratio: 5 / 4.6 !important; }
  .about-page .am__row--rev .am__img { aspect-ratio: 1672 / 941 !important; }
}

/* ===== Back to top (every page) ===== */
.to-top{position:fixed;inset-inline-end:clamp(14px,2.6vw,28px);bottom:clamp(14px,2.6vw,28px);z-index:900;display:grid;place-items:center;width:48px;height:48px;padding:0;border-radius:50%;cursor:pointer;color:var(--btn-fg);background:var(--btn-bg);border:2px solid rgba(245,192,79,.55);box-shadow:0 12px 28px rgba(0,0,0,.28);opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .3s ease,transform .3s ease,visibility 0s linear .3s,box-shadow .25s ease}
.to-top svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.to-top.is-on{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.to-top.is-on:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(0,0,0,.36)}
.to-top:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.to-top{transition:none}.to-top.is-on:hover{transform:none}}
@media print{.to-top{display:none}}

/* ===== ADVANCED: live payoff scrubber ===== */
.av{--av-a:#E0A526;--av-b:#0E9F6E;--av-gain:#0E9F6E;--av-loss:#D92D32;--av-gt:#0B7A55;--av-lt:#C42328;display:grid;gap:22px;padding-top:6px}
[data-theme="dark"] .av{--av-a:#F5C04F;--av-b:#1FD18B;--av-gain:#1FD18B;--av-loss:#FF4D4F;--av-gt:#1FD18B;--av-lt:#FF6B6D}
.av-chart,.av-p.cs-pl{background:var(--cs-surface,#fff);border:1px solid var(--ln);border-radius:28px;box-shadow:0 30px 60px -44px rgba(20,16,10,.5)}
.av-chart{padding:clamp(18px,2.6vw,30px)}
.av-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 24px}
.av-q{margin:0;font:800 clamp(1.15rem,2vw,1.5rem)/1.2 var(--font-head);letter-spacing:-.03em;color:var(--ink)}
.av-cap{margin:0;font-size:.9rem;color:var(--mut);max-width:52ch}
.av-svg{display:block;width:100%;height:auto;margin-top:14px;touch-action:none;overflow:visible}
.av-grid line{stroke:var(--ln);stroke-width:1}.av-grid text,.av-svg .ax{font:600 11px var(--font-body);fill:var(--mut)}
.av-zero{stroke:var(--mut);stroke-width:1.5;stroke-dasharray:4 5}
.av-fill{opacity:0;transition:opacity .4s}.av-fill--g{fill:var(--av-gain)}.av-fill--r{fill:var(--av-loss)}.av.in .av-fill{opacity:.2}
.av-c{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;opacity:.38;stroke-dasharray:1;stroke-dashoffset:1;transition:opacity .35s,stroke-width .35s,stroke-dashoffset 1.6s cubic-bezier(.4,0,.2,1)}
.av.in .av-c{stroke-dashoffset:0}.av-c.on{opacity:1;stroke-width:4}
.av-c0{stroke:var(--av-a)}.av-c1{stroke:var(--av-b)}.av-c2{stroke:var(--ink)}.av-c2.on{stroke-dasharray:.03 .012}
.av-cur line{stroke:var(--ink);stroke-width:1.5;opacity:.55}
.av-cur circle{stroke:var(--cs-surface,#fff);stroke-width:2.5;opacity:.55;transition:opacity .3s}.av-cur circle.on{opacity:1}
.av-d0{fill:var(--av-a)}.av-d1{fill:var(--av-b)}.av-d2{fill:var(--ink)}
.av-scrub{display:flex;align-items:center;gap:16px;margin-top:10px;font-weight:700;font-size:.875rem}
.av-scrub span{flex:none;color:var(--mut)}.av-move{flex:none;min-width:3.4em;text-align:end;font:800 1.25rem var(--font-head);color:var(--ink)}
.av-range{flex:1;min-width:0;height:34px;accent-color:var(--gold2);cursor:ew-resize;background:none}
.av-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.av-tab{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"sw n pl" "sw p pl";align-items:center;gap:2px 12px;padding:14px 16px;text-align:start;font:inherit;color:var(--ink);background:transparent;border:1px solid var(--ln);border-radius:18px;cursor:pointer;transition:border-color .25s,box-shadow .25s,transform .25s}
.av-tab:hover{transform:translateY(-2px);border-color:var(--gold2)}.av-tab.on{border-color:var(--gold2);box-shadow:0 0 0 2px var(--gold2)}
.av-tab:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.av-sw{grid-area:sw;width:6px;height:34px;border-radius:3px}.av-sw0{background:var(--av-a)}.av-sw1{background:var(--av-b)}.av-sw2{background:repeating-linear-gradient(var(--ink) 0 5px,transparent 5px 8px)}
.av-n{grid-area:n;font-weight:800;line-height:1.2}.av-tab small{grid-area:p;color:var(--mut);font-size:.8125rem}
.av-pl{grid-area:pl;font:800 1.5rem/1 var(--font-head);letter-spacing:-.03em;color:var(--mut)}.av-pl.pos{color:var(--av-gt)}.av-pl.neg{color:var(--av-lt)}
.av-note{margin:14px 0 0;font-size:.78rem;color:var(--mut)}
.av-p.cs-pl{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);transition:none;animation:avIn .5s ease both}
.av-p.cs-pl[hidden]{display:none}.av-p.cs-pl:hover{transform:none;box-shadow:0 30px 60px -44px rgba(20,16,10,.5);border-color:var(--ln)}
@keyframes avIn{from{opacity:0;transform:translateY(12px)}}
.av-p .cs-pl__img{position:relative;height:auto;min-height:320px}.av-p .cs-pl__img img{position:absolute;inset:0;height:100%}
.av-p .cs-spark path{stroke-dashoffset:0}
.av-p .cs-pl__f{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}.av-p .cs-pl__f .btn{width:auto}.av-p .cs-pl__f .cs-demo{display:inline-block;margin:0}
@media (max-width:900px){.av-p.cs-pl{grid-template-columns:1fr}.av-p .cs-pl__img{min-height:220px}.av-tabs{grid-template-columns:1fr}.av-scrub span{display:none}}
@media (prefers-reduced-motion:reduce){.av-p.cs-pl{animation:none}.av-c{transition:none;stroke-dashoffset:0}}

/* Advanced: skill dial */
.ad{--ink:#fff;--mut:#E5D4A7;--ln:rgba(245,202,93,.28);--btn-bg:#F2B632;--btn-fg:#14100A;position:relative;overflow:hidden;border-radius:32px;background:#14100A;color:#fff;padding:clamp(20px,4vw,52px)}
.ad-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s;transform:scale(1.04)}.ad-bg.on{opacity:.55}
.ad-sh{position:absolute;inset:0;background:linear-gradient(100deg,rgba(20,16,10,.92) 30%,rgba(20,16,10,.55))}
.ad-gr{position:relative;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(24px,4vw,56px);align-items:center}
.ad-dial{position:relative;width:100%;max-width:520px;aspect-ratio:400/280;margin-inline:auto}
.ad-dial svg{position:absolute;left:0;top:0;width:100%;aspect-ratio:400/260;overflow:visible}
.ad-arc0,.ad-arc{fill:none;stroke-width:14;stroke-linecap:round}.ad-arc0{stroke:rgba(255,255,255,.14)}.ad-arc{stroke:url(#adg);transition:stroke-dashoffset .9s cubic-bezier(.3,.9,.3,1)}
.ad-ndl{transform-origin:200px 220px;transform:rotate(-62deg);transition:transform .9s cubic-bezier(.3,1.5,.5,1)}.ad-ndl line{stroke:#fff;stroke-width:4;stroke-linecap:round}.ad-ndl circle{fill:#F2B632}.ad-hub{fill:#14100A;stroke:#F2B632;stroke-width:4}
.ad-nd{all:unset;box-sizing:border-box;position:absolute;translate:-50% -50%;display:grid;justify-items:center;gap:2px;cursor:pointer;color:#fff;text-align:center}
.ad-ic{display:grid;place-items:center;width:clamp(46px,9vw,64px);aspect-ratio:1;border-radius:50%;background:rgba(20,16,10,.85);border:2px solid rgba(255,255,255,.4);font-size:1.15rem;transition:background .3s,border-color .3s,transform .4s}
.ad-nd:hover .ad-ic{transform:scale(1.08)}.ad-nd.on .ad-ic{background:#F2B632;border-color:#F2B632;color:#14100A;transform:scale(1.14)}
.ad-nd b{font:800 .95rem var(--font-head);margin-top:4px}.ad-nd small{font-size:.8rem;color:var(--mut)}
.ad-nd:focus-visible .ad-ic{outline:3px solid #fff;outline-offset:3px}
.ad-hint{position:absolute;left:0;right:0;bottom:0;margin:0;text-align:center;font-size:.875rem;color:var(--mut)}
.ad-pn{padding:clamp(20px,3vw,32px);border-radius:24px;background:rgba(20,16,10,.66);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--ln);animation:adIn .55s cubic-bezier(.2,.7,.2,1)}
@keyframes adIn{from{opacity:0;translate:0 14px}}
.ad-pn[hidden]{display:none}.ad-bdg{position:static;display:inline-block}
.ad-pn h3{margin:12px 0 0;font:800 clamp(1.5rem,2.6vw,2.1rem)/1.1 var(--font-head);letter-spacing:-.035em;color:#fff}
.ad-d{margin:10px 0 0;color:var(--mut)}.ad-rt{margin:10px 0 0;display:flex;gap:8px;align-items:center;color:#fff}.ad-rt i{color:#F2B632}
.ad-fx{display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:12px;margin-top:18px;padding:14px 0;border-block:1px solid var(--ln)}
.ad-fx b{display:block;font:800 1.15rem var(--font-head);color:#fff}.ad-fx div:first-child b{color:#F2B632}.ad-fx small{font-size:.75rem;color:var(--mut)}
.ad-pn .cs-learn{margin-top:16px;color:#fff}.ad-pn .cs-sched{margin-top:14px;color:var(--mut)}
.ad-pn details{margin-top:12px}.ad-pn summary{cursor:pointer;font-weight:700;list-style:none;color:#fff}.ad-pn summary::-webkit-details-marker{display:none}.ad-pn summary i{margin-left:6px;color:#F2B632;transition:transform .3s}.ad-pn details[open] summary i{transform:rotate(180deg)}
.ad-syl{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.ad-syl li{padding:5px 11px;border:1px solid var(--ln);border-radius:99px;font-size:.8rem;color:#fff}
.ad-pn .cs-pl__f{margin-top:20px}.ad-pn .cs-link{color:#fff}
@media (max-width:900px){.ad-gr{grid-template-columns:1fr}.ad-sh{background:rgba(20,16,10,.75)}.ad-fx{grid-template-columns:repeat(2,1fr)}}
@media (prefers-reduced-motion:reduce){.ad-bg,.ad-ndl,.ad-arc,.ad-ic{transition:none}.ad-pn{animation:none}}

/* Free Resources: use the saved local photography for the video stage and lesson cards */
.s2 .screen__art{background:#080907}
.s2 .screen__art:before,.s2 .screen__art:after{display:none!important}
.s2 .screen__art img{display:block!important;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;opacity:1}
.s2 .screen__shade{background:linear-gradient(90deg,rgba(5,5,5,.78) 0%,rgba(5,5,5,.38) 52%,rgba(5,5,5,.12) 100%),linear-gradient(0deg,rgba(5,5,5,.72),transparent 60%)}
.s2 .poster{background-image:linear-gradient(0deg,rgba(5,5,5,.94) 0%,rgba(5,5,5,.48) 40%,rgba(5,5,5,.08) 100%),var(--im);background-size:cover;background-position:center;background-repeat:no-repeat}
.s2 .poster:before{display:none}


/* Free Resources: show a real saved photograph in EVERY lesson tile */
.s2 .poster{
  background-color:#080907 !important;
  background-image:linear-gradient(180deg,rgba(5,7,10,.08) 0%,rgba(5,7,10,.18) 34%,rgba(5,7,10,.72) 67%,rgba(5,7,10,.96) 100%),var(--im) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
.s2 .poster:before{display:none !important;content:none !important}
.s2 .poster:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,rgba(245,192,79,.07),transparent 38%);z-index:0}
.s2 .poster>*{position:relative;z-index:1}
.s2 .poster i{z-index:1;color:rgba(255,211,111,.9);text-shadow:0 2px 16px rgba(0,0,0,.45)}
.s2 .poster small,.s2 .poster b,.s2 .poster em{ text-shadow:0 2px 9px rgba(0,0,0,.85)}
.s2 .screen__art img{object-fit:cover;object-position:center center}


/* FINAL FIX: render actual saved image elements in all five lesson cards. */
.s2 .poster{isolation:isolate;background:#080907!important;overflow:hidden}
.s2 .poster .poster__image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center!important;z-index:0!important;opacity:1!important;visibility:visible!important;transform:scale(1.001);transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.s2 .poster:hover .poster__image{transform:scale(1.06)}
.s2 .poster:after{z-index:1!important;background:linear-gradient(180deg,rgba(5,7,10,.04) 0%,rgba(5,7,10,.12) 28%,rgba(5,7,10,.58) 62%,rgba(5,7,10,.94) 100%)!important}
.s2 .poster>i,.s2 .poster>span,.s2 .poster>small,.s2 .poster>b,.s2 .poster>em{position:relative;z-index:2}


/* ===== Courses page: every text link is a real button; level tabs stay aligned ===== */
.cs-link,.lp-helpbtn,.fq-chat__btn,.tw-footer__ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 20px;border:1.5px solid var(--gold2,#F2B632);border-radius:999px;background:transparent;color:var(--ink,#14100A);font:700 .9375rem/1.2 var(--font-body);text-align:center;text-decoration:none;cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .25s,box-shadow .25s}
.cs-link:hover,.lp-helpbtn:hover,.fq-chat__btn:hover,.tw-footer__ghost:hover{background:var(--gold2,#F2B632);border-color:var(--gold2,#F2B632);color:#140E00;transform:translateY(-2px);box-shadow:0 10px 22px -10px rgba(242,182,50,.7);text-decoration:none}
.cs-link:focus-visible,.lp-helpbtn:focus-visible,.fq-chat__btn:focus-visible,.tw-footer__ghost:focus-visible{outline:3px solid var(--gold2,#F2B632);outline-offset:3px}
.cs-link i,.lp-helpbtn i,.fq-chat__btn i,.tw-footer__ghost i{font-size:.85em}
.cs-link{padding-bottom:11px}
.cs-demo{margin-top:12px;font-size:.875rem}
.cs-pl__f .cs-demo{display:flex;width:100%}
.av-p .cs-pl__f .cs-demo{display:inline-flex;width:auto}
.cs-pl--f .cs-link,.ad-pn .cs-link,.fq .cs-link{color:#fff;border-color:rgba(245,192,79,.7)}
.cs-pl--f .cs-link:hover,.ad-pn .cs-link:hover,.fq .cs-link:hover{color:#140E00}
.cs-check>div:last-child{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.lp-helpbtn{display:inline-flex;min-height:38px;padding:8px 16px;margin:2px 2px;font-size:.875rem;color:#F5C04F;border-color:rgba(245,192,79,.7);vertical-align:middle}
.lp-helpbtn:hover{color:#140E00}
.fq-chat__btn{min-height:38px;padding:8px 16px;font-size:.8125rem;color:var(--fq-deep,#14100A);border-color:var(--fq-deep,#8A5E00)}
.fq-chat__foot a.fq-chat__btn:hover{text-decoration:none}
.tw-footer__bottom a.tw-footer__ghost{min-height:40px;padding:9px 18px;font-size:.8125rem;color:#d5b45e;border-color:rgba(213,180,94,.6)}
.tw-footer__bottom a.tw-footer__ghost:hover{color:#140E00}
@media (max-width:540px){
  .cs-check>div:last-child .btn,.cs-check>div:last-child .cs-link{flex:1 1 100%}
  .cs-buy .cs-demo,.cs-pl__f .cs-demo{width:100%}
  .fq-chat__foot{justify-content:flex-start}
  .tw-footer__bottom a.tw-footer__ghost{width:100%}
}
/* level tabs: name and price never collide; on phones each tab is a clean row */
.lp-tab{min-width:0}
.lp-tab span{min-width:0;overflow-wrap:normal;white-space:nowrap}
.lp-tab small{white-space:nowrap}
@media (min-width:701px) and (max-width:1023px){
  .lp-tab{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:4px 10px;padding:14px 14px}
  .lp-tab small{grid-column:2;margin:0}
}
@media (max-width:700px){
  .lp-tabs{grid-template-columns:minmax(0,1fr)}
  .lp-tab{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 16px;border-inline-start:0;border-bottom:1px solid rgba(245,192,79,.14)}
  .lp-tab:last-child{border-bottom-color:transparent}
  .lp-tab small{margin:0;text-align:end;white-space:nowrap}
  .lp-tab[aria-selected="true"]{border-bottom-color:rgba(245,192,79,.14);box-shadow:inset 3px 0 0 #F5C04F}
}
.lp-help a.lp-helpbtn{text-decoration:none;color:#F5C04F}
.lp-help a.lp-helpbtn:hover{color:#140E00;text-decoration:none}


/* ===== FIX: Free Resources lesson cards - icon + "Watch now" pill were forced into the text flow on hover ===== */
.s2 .poster>i{position:absolute!important;top:18px!important;right:18px!important;left:auto!important;bottom:auto!important;margin:0;line-height:1;pointer-events:none}
.s2 .poster>span{position:absolute!important;top:16px!important;left:16px!important;right:auto!important;margin:0;z-index:3;white-space:nowrap;line-height:1.2;pointer-events:none}
.s2 .poster>small,.s2 .poster>b,.s2 .poster>em{display:block;position:relative;z-index:2;max-width:100%}
.s2 .poster>small{margin:0 0 6px}
.s2 .poster>b{overflow-wrap:anywhere}
.s2 .poster:hover,.s2 .poster:focus-visible{transform:translateY(-6px)}
.s2 .poster:hover>i{transform:scale(1.08) rotate(-6deg)}
.s2 .poster:after{z-index:1!important}

/* ===== FIX: Contact page - "03 ENQUIRY FORM" badge no longer sits on top of the text ===== */
.contact-v2 .cv-aside-number{position:static!important;right:auto;bottom:auto;display:flex;align-items:center;justify-content:flex-start;gap:10px;margin-top:28px;padding-top:18px;border-top:1px solid var(--line);opacity:.75}
.contact-v2 .cv-aside-number span{white-space:nowrap}
.contact-v2 .cv-enquiry__aside>*{position:relative}
.contact-v2 .cv-promise>div{min-width:0}
.contact-v2 .cv-promise small{overflow-wrap:break-word}
@media(max-width:700px){.contact-v2 .cv-aside-number{display:flex!important}}
[dir="rtl"] .contact-v2 .cv-aside-number{left:auto;right:auto}

/* ===== FIX: Student dashboard - proper responsive course cards + recording thumbnails ===== */
@media (max-width:700px){
  .student-app .sd-course-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .student-app .sd-course-card,
  .student-app .sd-course-card:last-child{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-column:auto!important}
  .student-app .sd-course-card .sd-course-visual{height:150px!important;min-height:0!important;padding:14px 16px!important}
  .student-app .sd-course-visual-label{writing-mode:horizontal-tb!important;transform:none!important;left:16px!important;right:auto!important;bottom:12px!important;font-size:11px!important;letter-spacing:.12em;white-space:nowrap}
  html[dir="rtl"] .student-app .sd-course-visual-label{left:auto!important;right:16px!important}
  .student-app .sd-level{display:block;font-size:11px;letter-spacing:.1em;white-space:nowrap}
  .student-app .sd-course-symbol{font-size:38px;right:14px;top:10px}
  .student-app .sd-candle:nth-of-type(1){left:48%}.student-app .sd-candle:nth-of-type(2){left:56%}.student-app .sd-candle:nth-of-type(3){left:64%}
  .student-app .sd-candle:nth-of-type(4){left:72%}.student-app .sd-candle:nth-of-type(5){left:80%}.student-app .sd-candle:nth-of-type(6){left:88%}
  .student-app .sd-candle{bottom:36px}
  .student-app .sd-portfolio-bars{bottom:36px;left:46%;right:14%}
  .student-app .sd-course-body{padding:16px}
  .student-app .sd-course-body h3{font-size:17px}
  /* recorded classes: thumbnail wide enough for its "LESSON 08" label */
  .student-app .sd-recording-row{grid-template-columns:78px minmax(0,1fr) 34px!important;gap:12px!important;align-items:start}
  .student-app .sd-recording-thumb{height:56px!important;padding:7px 8px!important;min-width:0}
  .student-app .sd-recording-thumb span{font-size:10px!important;letter-spacing:.04em!important;white-space:nowrap}
  .student-app .sd-recording-thumb i{font-size:15px!important}
  .student-app .sd-recording-info{min-width:0}
  .student-app .sd-recording-info span{display:block;overflow-wrap:anywhere}
  /* profile footer links and bar never clip */
  .student-app .sd-footer,.student-app footer{flex-wrap:wrap;gap:6px 14px}
}
@media (max-width:380px){
  .student-app .sd-course-visual-label{font-size:10px!important;letter-spacing:.08em}
  .student-app .sd-course-card .sd-course-visual{height:140px!important}
}
/* tablet: keep the 3rd course card from collapsing or hiding */
@media (min-width:701px) and (max-width:980px){
  .student-app .sd-course-card:last-child{display:grid!important;grid-column:1/-1!important;grid-template-columns:minmax(0,.8fr) minmax(0,1fr)!important}
  .student-app .sd-course-card:last-child .sd-course-visual{height:100%!important;min-height:200px}
}
.student-app .sd-candle{bottom:36px}
.student-app .sd-portfolio-bars{bottom:36px}

/* ===== 1024px laptop: same layout as desktop, hero instructor bar kept tidy ===== */
@media (min-width:1024px) and (max-width:1180px){
  .hw__bar{gap:10px;padding:12px 14px}
  .hw__who{gap:10px;flex:1 1 auto}
  .hw__who img{width:46px;height:46px}
  .hw__who b{font-size:.9375rem}
  .hw__who span{display:block;font-size:.75rem;line-height:1.3}
  .hw__cls{flex:0 0 auto;gap:0;padding-inline-start:12px}
  .hw__cls>i{display:none}
  .hw__cls b{font-size:.8125rem}
}

/* ===== Header always pinned to the top on every page and every screen size ===== */
.hdr,.about-page .hdr{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;height:var(--h);z-index:3000!important;transform:none!important;translate:none!important}
body.has-hdr{padding-top:var(--h)}
html{scroll-padding-top:var(--h)}

/* ===== Profile avatars: real photos over the initials (initials stay as fallback) ===== */
.hx__av span, .th__av span, .rvc__av { position: relative; overflow: hidden; }
.hx__av span img, .th__av span img, .rvc__av img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 18%; border-radius: 50%; }

/* ===== Free Resources glossary cards: keep the icon badge fully inside the photo (was clipped at the bottom edge) ===== */
.dc__ph .dc__ic { bottom: 12px !important; z-index: 2; }

/* ===== Student dashboard schedule: selected day readable in dark AND light mode ===== */
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-today,
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-selected {
  background: #f0bd4b !important;
  border-color: #f0bd4b !important;
  color: #211b0d !important;
  box-shadow: 0 4px 12px rgba(240, 189, 75, .25) !important;
}
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-today small,
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-today strong,
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-selected small,
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-selected strong { color: #211b0d !important; }
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-today i,
html .student-app .sd-class-schedule-section .sd-date-strip > div.is-selected i { background: #211b0d !important; }


/* Student dashboard: real saved photography for the "Pick up where you left off" course cards. */
.sd-course-visual { isolation: isolate; }
.sd-course-visual .sd-course-photo { position:absolute; inset:0; z-index:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.sd-course-visual::before { z-index:1; pointer-events:none; border-color:rgba(255,255,255,.16); background:linear-gradient(180deg,rgba(8,10,13,.18) 0%,rgba(8,10,13,.08) 35%,rgba(8,10,13,.78) 100%); width:auto; height:auto; inset:0; border-radius:0; }
.sd-course-visual::after { z-index:1; pointer-events:none; }
.sd-course-visual .sd-level, .sd-course-visual .sd-course-symbol, .sd-course-visual .sd-course-visual-label { z-index:2; }
.sd-course-visual .sd-course-symbol { color:rgba(255,255,255,.58); text-shadow:0 1px 10px rgba(0,0,0,.35); }
.sd-course-visual .sd-course-visual-label { text-shadow:0 2px 8px rgba(0,0,0,.65); }


/* FINAL FIX: About page first mission photo should fit its native 4:3 image ratio.
   Prevent later legacy aspect-ratio overrides from forcing a wide crop. */
.about-page .am__row:not(.am__row--rev) .am__img {
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: #0b0b0a !important;
}
.about-page .am__row:not(.am__row--rev) .am__img > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}
.about-page .am__row:not(.am__row--rev) .am__img:hover > img { transform: none !important; }


/* Fix: admin dashboard welcome heading must stay readable in light mode.
   The hero intentionally keeps its dark cinematic background in both themes. */
html[data-theme="light"] body.admin-app.student-app .ad-admin-black-hero h1,
html[data-theme="light"] body.admin-app.student-app .ad-admin-black-hero h1 * {
  color: #fff8e9 !important;
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-text-fill-color: #fff8e9;
}
html[data-theme="light"] body.admin-app.student-app .ad-admin-black-hero .ad-admin-hero-star {
  color: #e0a526 !important;
  -webkit-text-fill-color: #e0a526;
}
html[data-theme="light"] body.admin-app.student-app .ad-admin-black-hero .ad-admin-hero-copy,
html[data-theme="light"] body.admin-app.student-app .ad-admin-black-hero .ad-admin-hero-copy h1 {
  position: relative;
  z-index: 2;
}


/* Home1 instructor + how-it-works sections: theme-aware backgrounds. */
html[data-theme="light"] .inst {
  --ink: #17140D;
  --text: #282315;
  --muted: #5B5038;
  --accent-text: #805700;
  --line: rgba(138, 94, 0, .28);
  --shade: rgba(138, 94, 0, .08);
  --shade-strong: rgba(138, 94, 0, .14);
  --shadow: 0 18px 40px rgba(30, 22, 0, .12);
  background: #FAF7EE;
  color: var(--text);
}
html[data-theme="light"] .inst::before {
  background: linear-gradient(180deg, #FAF7EE 0%, rgba(250, 247, 238, .96) 32%, rgba(243, 238, 221, .94) 72%, #FAF7EE 100%);
}
html[data-theme="light"] .inst::after {
  background: radial-gradient(closest-side, rgba(197, 138, 10, .14), transparent);
}
html[data-theme="light"] .inst__bg { opacity: .10; }
html[data-theme="light"] .inst .quote { color: #282315; }
html[data-theme="light"] .inst .cr {
  background: rgba(255, 255, 255, .82);
  border-color: rgba(138, 94, 0, .24);
}
html[data-theme="light"] .inst .cr__no { color: rgba(23, 20, 13, .08); }
html[data-theme="light"] .inst .cr h3 { color: #17140D; }
html[data-theme="light"] .inst .cr p { color: #5B5038; }
html[data-theme="light"] .fl {
  --ink: #17140D;
  --text: #282315;
  --muted: #5B5038;
  --accent-text: #805700;
  --line: rgba(138, 94, 0, .24);
  --shade: rgba(138, 94, 0, .08);
  --shade-strong: rgba(138, 94, 0, .14);
  --shadow: 0 18px 40px rgba(30, 22, 0, .12);
  background: #F3EEDD;
  color: var(--text);
}
html[data-theme="light"] .fl::before {
  background: radial-gradient(60% 50% at 50% 0%, rgba(197, 138, 10, .10), transparent 70%), radial-gradient(40% 40% at 100% 100%, rgba(31, 160, 112, .06), transparent 70%);
}
html[data-theme="light"] .fl .bt {
  background: linear-gradient(160deg, rgba(197, 138, 10, .06), rgba(255, 255, 255, .7) 45%), #FFFCF4;
  border-color: rgba(138, 94, 0, .22);
}
html[data-theme="light"] .fl .bt h3 { color: #17140D; }
html[data-theme="light"] .fl .bt__top p { color: #5B5038; }


/* Targeted Home1 contrast correction requested for light theme:
   keep instructor profile cards dark with bright text, and restore the
   How It Works section to its original dark presentation in light mode. */
html[data-theme="light"] .inst .tm {
  background: rgba(30, 28, 22, .94);
  border-color: rgba(197, 138, 10, .34);
}
html[data-theme="light"] .inst .tm h4 { color: #FFFFFF; }
html[data-theme="light"] .inst .tm__bio { color: #E5DCC8; }
html[data-theme="light"] .inst .tm__creds { color: #1FD18B; }
html[data-theme="light"] .inst .tm__tag {
  background: rgba(245, 202, 93, .20);
  color: #F5CA5D;
}
html[data-theme="light"] .fl {
  --ink: #FFFFFF;
  --text: #F5F2EB;
  --muted: #BDB296;
  --accent-text: #F5C04F;
  --line: rgba(245, 202, 93, .18);
  --shade: rgba(245, 202, 93, .06);
  --shade-strong: rgba(245, 202, 93, .14);
  --shadow: 0 18px 40px rgba(0, 0, 0, .32);
  background: #0A0A09;
  color: #F5F2EB;
}
html[data-theme="light"] .fl::before {
  background: radial-gradient(60% 50% at 50% 0%, rgba(197, 138, 10, .12), transparent 70%), radial-gradient(40% 40% at 100% 100%, rgba(31, 160, 112, .06), transparent 70%);
}
html[data-theme="light"] .fl .bt {
  background: linear-gradient(160deg, rgba(197, 138, 10, .08), rgba(24, 22, 17, .92) 45%), #14130F;
  border-color: rgba(245, 202, 93, .20);
  color: #F5F2EB;
}
html[data-theme="light"] .fl .bt h3 { color: #FFFFFF; }
html[data-theme="light"] .fl .bt__top p,
html[data-theme="light"] .fl .fl__lead { color: #BDB296; }

/* ==================== Scroll animation (all pages) ==================== */
.sa-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 6000; pointer-events: none;
  background: linear-gradient(90deg, #f2b632, #f5c04f); transform: scaleX(0); transform-origin: 0 50%; }
[dir="rtl"] .sa-progress { transform-origin: 100% 50%; }
html.sa-ready .sa { opacity: 0; will-change: opacity, transform;
  transition: opacity .7s cubic-bezier(.22,.8,.3,1) var(--sa-d, 0ms), transform .7s cubic-bezier(.22,.8,.3,1) var(--sa-d, 0ms); }
html.sa-ready .sa[data-sa-kind="up"]    { transform: translate3d(0, 34px, 0); }
html.sa-ready .sa[data-sa-kind="left"]  { transform: translate3d(-44px, 0, 0); }
html.sa-ready .sa[data-sa-kind="right"] { transform: translate3d(44px, 0, 0); }
html.sa-ready .sa[data-sa-kind="zoom"]  { transform: scale(.94); }
[dir="rtl"] html.sa-ready .sa[data-sa-kind="left"], html[dir="rtl"].sa-ready .sa[data-sa-kind="left"]   { transform: translate3d(44px, 0, 0); }
html[dir="rtl"].sa-ready .sa[data-sa-kind="right"] { transform: translate3d(-44px, 0, 0); }
html.sa-ready .sa.sa-in { opacity: 1; transform: none; }
@media (max-width: 640px) {
  html.sa-ready .sa[data-sa-kind="left"], html.sa-ready .sa[data-sa-kind="right"] { transform: translate3d(0, 28px, 0); }
}
@media (prefers-reduced-motion: reduce) {
  html.sa-ready .sa { opacity: 1 !important; transform: none !important; transition: none !important; }
  .sa-progress { display: none; }
}
