:root {
  --color-dark: #111827;
  --color-text: #1f2937;
  --color-muted: #5b6470;
  --color-line: #d9e0e6;
  --color-soft: #f3f6f9;
  --color-bg: #ffffff;
  --color-point: #0f5da8;
  --radius-lg: 2.4rem;
  --radius-md: 1.8rem;
}

* { box-sizing: border-box; }
html { font-size: 62.5%; scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Noto Sans KR', sans-serif;
  font-size: 1.6rem;
  color: var(--color-text);
  background: var(--color-bg);
  word-break: keep-all;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
img { display: block; width: 100%; height: 100%; object-fit: cover; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
ul, ol { margin: 0; padding: 0; list-style: none; }
h1,h2,h3,h4,h5,h6,p { margin: 0; }
.site-wrap { min-width: 320px; overflow: hidden; }
.inner { width: min(100% - 4rem, 128rem); margin: 0 auto; }
.section-space { padding: 10rem 0; }
.eyebrow { margin-bottom: 1.4rem; font-size: 1.4rem; font-weight: 800; color: var(--color-point); text-transform: uppercase; letter-spacing: 0.08em; }
.section-head.center { text-align: center; }
.section-head.between { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; }
.section-head h3 { font-size: clamp(3.2rem, 2.4vw, 5rem); line-height: 1.22; }
.text-link { display: inline-flex; align-items: center; gap: 0.8rem; margin-top: 2.4rem; font-weight: 700; }
.text-link::after { content: '→'; }
.pc-only { display: block; }
.mobile-only { display: none; }

@media (max-width: 1439px) {
  .inner { width: min(100% - 6rem, 118rem); }
}

@media (max-width: 1279px) {
  html { font-size: 60%; }
  .section-space { padding: 8rem 0; }
}

@media (max-width: 767px) {
  html { font-size: 56.25%; }
  .inner { width: min(100% - 3.2rem, 100%); }
  .section-space { padding: 6rem 0; }
  .section-head.between { align-items: flex-start; flex-direction: column; }
  .pc-only { display: none !important; }
  .mobile-only { display: block !important; }
}
