/* AiNex 사이버연수원 design tokens — navy palette from 연수원_디자인시안 v1.0 (2026-09-15).
   The inner pages' CSS (layout/components/pages) keeps using the old names (--accent, --bg-alt …),
   so those are aliased to the new palette here: every page turns navy without being touched. */
:root, body.landing, .landing {
  /* 시안 tokens */
  --p: #0d3f76;        /* primary navy */
  --p-dark: #0a3260;   /* primary hover */
  --a: #226ec1;        /* accent blue (links, tags) */
  --ink: #111;
  --text: #1f2328;
  --mute: #6b7280;
  --off: #6b7683;
  --line: #e3e7ec;
  --surface: #f5f7fa;
  --warn: #d82020;
  --ok: #1f7a3a;
  --bn: #fff6e8;       /* campaign banner bg */
  --bnt: #7a3f00;      /* campaign banner text */
  --bnl: #8a4600;      /* campaign banner link (AA on the banner bg) */
  --ft: #15213a;       /* footer */
  --max: 1160px;
  --hd-h: 68px;
  /* aliases used by the existing page CSS */
  --bg: #fff;
  --bg-alt: var(--surface);
  --muted: var(--mute);
  --accent: var(--p);
  --mint: var(--a);
  --border: var(--line);
  --radius-button: 4px;
  --radius-header-pill: 4px;
  --radius-hero-visual: 6px;
  --shadow-primary: 0 4px 14px rgba(13, 63, 118, 0.18);
  --hover-blue: var(--p-dark);
  --heading-weight: 800;
  --heading-tracking: -0.02em;
  --axis: var(--warn);
}
body.landing, .landing {
  min-height: 100vh;
  color: var(--text);
  background: var(--bg);
  font-family: Pretendard, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", Arial, sans-serif;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  word-break: keep-all;
  font-variant-numeric: tabular-nums;
}

/* base — zero-specificity resets (:where) so component styles always win */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
:where(body.landing){margin:0;font-size:16px;line-height:1.65}
:where(body.landing a){color:inherit}
:where(body.landing img){max-width:100%;height:auto}
:where(body.landing h1,body.landing h2,body.landing h3,body.landing h4,body.landing p,body.landing ul,body.landing ol){margin:0}
:where(body.landing button){font:inherit}
/* overlays: the hidden attribute must always win over display:flex/grid */
[hidden]{display:none !important}
/* dark pills in the remaining old components: explicit text colour */
.sh-classroom,.fm-classroomLink,.fm-solid,.msa-primary,.pf-dark{color:#fff !important}
