:root{
  --primary:#1C6DD0;
  --primary-dark:#123E7A;
  --primary-tint:#EAF2FD;
  --ink:#12151B;
  --body:#4B5563;
  --body-soft:#6B7280;
  --muted-bg:#F4F7FB;
  --line:#E3E9F1;
  --white:#FFFFFF;

  --font-head:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",sans-serif;
  --font-body:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",sans-serif;

  --container:1280px;
  --pad-inline:clamp(20px,5vw,64px);
  --section-pad:clamp(48px,7vw,96px);
  --section-pad-s:clamp(32px,4vw,56px);

  --radius-xs:6px;
  --radius-s:10px;
  --radius-m:16px;
  --radius-l:26px;

  --text-xs:0.875rem;
  --text-s:1rem;
  --text-m:clamp(1.05rem,0.98rem + 0.3vw,1.2rem);
  --text-l:clamp(1.25rem,1.1rem + 0.7vw,1.6rem);
  --text-xl:clamp(1.6rem,1.3rem + 1.4vw,2.3rem);
  --text-h1:clamp(1.9rem,1.5rem + 2vw,3rem);

  --shadow-s:0 1px 2px rgba(18,21,27,.06), 0 1px 1px rgba(18,21,27,.04);
  --shadow-m:0 8px 24px rgba(18,21,27,.08);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--body);
  background:var(--white);
  line-height:1.65;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit}

h1,h2,h3,h4{
  font-family:var(--font-head);
  color:var(--ink);
  font-weight:700;
  line-height:1.3;
  margin:0 0 .5em;
}
h1{font-size:var(--text-h1);font-weight:700;letter-spacing:-.01em}
h2{font-size:var(--text-xl);letter-spacing:-.01em}
h3{font-size:var(--text-l)}
p{margin:0 0 1em}

.container{max-width:var(--container);margin:0 auto;padding-inline:var(--pad-inline)}

.eyebrow{
  display:inline-block;
  font-size:var(--text-xs);
  font-weight:600;
  color:var(--primary);
  letter-spacing:.04em;
  margin-bottom:12px;
}

.skip-link{
  position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:200;border-radius:0 0 8px 0;
}
.skip-link:focus{left:0}

.btn-primary,.btn-ghost{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 26px;border-radius:var(--radius-s);
  font-weight:600;font-size:var(--text-s);
  border:1px solid transparent;
  transition:transform .12s ease, background-color .15s ease, border-color .15s ease;
  white-space:nowrap;
}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-dark)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--primary);color:var(--primary)}
.btn-primary:active,.btn-ghost:active{transform:scale(.98)}

.section{padding-block:var(--section-pad)}
.section--tint{background:var(--muted-bg)}
.section--dark{background:var(--primary-dark);color:#DCE8FB}
.section--dark h2,.section--dark h3{color:#fff}

.section-head{max-width:680px;margin-bottom:clamp(28px,4vw,48px)}
.section-head p{color:var(--body-soft);margin-bottom:0}
.section-head--center{margin-inline:auto;text-align:center}

.section-foot{margin-top:clamp(24px,3vw,40px)}
