/* ==========================================================
   FUUM DESIGN SYSTEM V1.0 — COMMON TYPOGRAPHY
   Place in css/common.css; remove conflicting old typography rules.
   ========================================================== */
:root {
  --fuum-font: 'Pretendard', 'Noto Sans KR', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --fuum-purple: #7024F5;
  --fuum-title: #2E2844;
  --fuum-body: #555555;
  --fuum-muted: #777777;
  --fuum-bg: #FAF7FF;
  --fuum-white: #FFFFFF;
  --fuum-border: #E7DDF4;

  --fuum-step1-size: 24px;
  --fuum-step2-size: 18px;
  --fuum-step3-size: 16px;
  --fuum-step4-size: 14px;
  --fuum-step1-weight: 700;
  --fuum-step2-weight: 700;
  --fuum-step3-weight: 500;
  --fuum-step4-weight: 400;
  --fuum-display-size: 48px;
  --fuum-display-weight: 700;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: var(--fuum-font); font-size: var(--fuum-step3-size); font-weight: var(--fuum-step3-weight); line-height: 1.7; color: var(--fuum-body); background: var(--fuum-white); word-break: keep-all; }
button, input, select, textarea { font: inherit; }
.fuum-type-1 { font-size: var(--fuum-step1-size); font-weight: var(--fuum-step1-weight); line-height: 1.35; letter-spacing: -0.035em; color: var(--fuum-title); }
.fuum-type-2 { font-size: var(--fuum-step2-size); font-weight: var(--fuum-step2-weight); line-height: 1.45; letter-spacing: -0.025em; color: var(--fuum-title); }
.fuum-type-3 { font-size: var(--fuum-step3-size); font-weight: var(--fuum-step3-weight); line-height: 1.7; letter-spacing: -0.01em; color: var(--fuum-body); }
.fuum-type-4 { font-size: var(--fuum-step4-size); font-weight: var(--fuum-step4-weight); line-height: 1.6; letter-spacing: 0; color: var(--fuum-muted); }
.fuum-display { font-size: var(--fuum-display-size); font-weight: var(--fuum-display-weight); line-height: 1.24; letter-spacing: -0.045em; color: var(--fuum-title); }
.fuum-accent { color: var(--fuum-purple); }
.fuum-on-dark { color: var(--fuum-white); }
.fuum-btn, .fuum-nav-link { font-size: var(--fuum-step2-size); font-weight: var(--fuum-step2-weight); line-height: 1.4; }
.fuum-btn { display: inline-flex; align-items: center; justify-content: center; gap: .5em; min-height: 44px; padding: 12px 20px; border-radius: 10px; text-decoration: none; cursor: pointer; }
.fuum-btn-primary { color: var(--fuum-white); background: var(--fuum-purple); border: 1px solid var(--fuum-purple); }
.fuum-btn-secondary { color: var(--fuum-title); background: var(--fuum-white); border: 1px solid var(--fuum-border); }
@media (max-width: 767px) {
  :root { --fuum-step1-size: 22px; --fuum-step2-size: 17px; --fuum-display-size: 34px; }
  .fuum-display { line-height: 1.3; letter-spacing: -0.035em; }
}
/* Integration: apply fuum-type-1..4 to existing markup and remove
   legacy font-size/font-weight/letter-spacing overrides from home.css.
   Display is for hero advertising headline only, not ordinary headings. */
