/* ============================================================
   ACRO MEDICAL — BASE
   Design tokens, reset, typography, reveal, responsive
   ============================================================ */

/* ============================================================
   ACRO MEDICAL — SHARED DESIGN SYSTEM
   ============================================================ */

:root {
  /* Cool cobalt palette — adopted from index_new.html (final selection).
     Legacy aliases preserved at the bottom so existing class rules keep working. */

  /* surfaces */
  --bg:            #F6F7FA;
  --bg-2:          #EBEDF2;
  --bg-3:          #E2E5EC;
  --bg-deep:       #1A2336;

  /* ink + text */
  --ink:           #1A2336;
  --ink-2:         #4E5363;
  --muted:         #7A7F8E;

  /* lines + dividers */
  --line:          #D5D8E0;
  --line-2:        #C3C7D1;

  /* primary action (cobalt) */
  --primary:       #2D4FAE;
  --primary-hover: #243F8E;
  --primary-soft:  #DCE2F0;

  /* emphasis (terracotta) */
  --emphasis:      #A35639;
  --emphasis-soft: #D9A790;

  /* legacy aliases — preserve old class rules without rewriting them */
  --ink-soft:      var(--ink-2);
  --paper:         var(--bg);
  --paper-warm:    var(--bg-2);
  --accent:        var(--primary);
  --accent-soft:   var(--emphasis-soft);
  --gold:          var(--emphasis);

  --white:         #FFFFFF;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Source Sans 3', 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif;
  background: var(--paper);
  color: var(--ink);
  font-weight: 400;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 1000;
  opacity: 0.035;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  mix-blend-mode: multiply;
}
.serif {
  font-family: 'Source Serif 4', 'Noto Serif KR', Georgia, serif;
  letter-spacing: -0.02em;
}
a { color: inherit; }

/* ===== REVEAL ===== */
.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.9s ease, transform 0.9s ease;
}
.reveal.in {
  opacity: 1;
  transform: translateY(0);
}

