/* base */
:root {
      --bg: #f7f6f2;
      --surface: #ffffff;
      --surface-soft: #eef3ed;
      --fg: #211b17;
      --muted: #675d55;
      --border: #ddd8d0;
      --accent: #b52b1e;
      --accent-2: #d49a16;
      --dark: #17382a;
      --success: #247a4b;
      --sticky-h: 116px;
      --font-display: "Noto Sans KR", "Apple SD Gothic Neo", system-ui, sans-serif;
      --font-body: "Noto Sans KR", "Apple SD Gothic Neo", system-ui, sans-serif;
    }

    * { box-sizing: border-box; }

    html { scroll-behavior: smooth; }

    body {
      margin: 0;
      padding-bottom: calc(var(--sticky-h) + env(safe-area-inset-bottom));
      background: var(--bg);
      color: var(--fg);
      font-family: var(--font-body);
      letter-spacing: 0;
    }

    img { max-width: 100%; display: block; }

    a { color: inherit; text-decoration: none; }

    button, input, textarea { font: inherit; }

    main { overflow: hidden; }

    .section {
      width: min(1180px, calc(100% - 40px));
      margin: 0 auto;
      padding: 86px 0;
    }

    .eyebrow {
      margin: 0 0 16px;
      color: var(--accent-2);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    h1, h2, h3, p { margin-top: 0; }

    h1 {
      margin-bottom: 22px;
      font-family: var(--font-display);
      font-size: clamp(48px, 7vw, 86px);
      line-height: 1.04;
      letter-spacing: -0.025em;
    }

    h2 {
      margin-bottom: 18px;
      font-size: clamp(34px, 4vw, 56px);
      line-height: 1.08;
      letter-spacing: -0.018em;
    }

    .lead {
      max-width: 58ch;
      color: var(--muted);
      font-size: clamp(18px, 2vw, 24px);
      line-height: 1.55;
      font-weight: 600;
    }

    .btn {
      min-height: 48px;
      border: 0;
      border-radius: 999px;
      padding: 14px 22px;
      cursor: pointer;
      font-weight: 900;
      letter-spacing: 0.02em;
    }

    .btn-primary { background: var(--accent); color: #fff; }

    .btn-secondary { background: var(--surface); color: var(--accent); border: 1px solid var(--accent); }
