:root{--ink:#111;--paper:#fff;--grey:#595959;--hair:#dcdcdc;--mustard:#e9bd33;--mustard-pale:#faf3c8;--mustard-deep:#765800;--sage:#A8C3A0;--red:#cf2f24}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--paper)}
body{min-height:100vh;color:var(--ink);background:var(--paper);font-family:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;font-size:16px;line-height:1.7;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:3px}
button,input{font:inherit}
.skip{position:fixed;left:12px;top:12px;z-index:10;padding:10px 14px;background:var(--ink);color:#fff;transform:translateY(-160%)}
.skip:focus{transform:none}
:focus-visible{outline:3px solid var(--mustard-deep);outline-offset:3px}
.wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}
header{border-bottom:1px solid var(--ink)}
.head{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.wordmark{font-weight:850;letter-spacing:-.03em;text-decoration:none}
.wordmark span{color:var(--red)}
.by{font-size:13px;color:var(--grey)}
main{min-height:72vh}
.hero{padding:clamp(64px,8vw,108px) 0 60px;background:linear-gradient(180deg,var(--mustard-pale),#fff 82%)}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px}
h1{font-size:clamp(52px,8vw,116px);line-height:1.02;letter-spacing:-.04em;max-width:980px}
.hero-subtitle{margin-top:28px;font-size:clamp(19px,2.4vw,30px);line-height:1.35;letter-spacing:-.025em;font-weight:650}
.summary{max-width:700px;margin-top:28px;color:var(--grey);font-size:clamp(17px,2vw,21px);line-height:1.75}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;list-style:none}
.facts li{padding:8px 12px;border:1px solid var(--ink);font-size:13px;font-weight:700;background:#fff}
.hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;margin-top:22px;padding:9px 14px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:14px;font-weight:800;text-decoration:none}
.hero-cta:hover{background:var(--mustard);color:var(--ink)}
.notice{padding:64px 0;border-top:1px solid var(--hair);scroll-margin-top:24px}
.grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,480px);gap:clamp(40px,8vw,110px);align-items:start}
h2{font-size:clamp(30px,4vw,52px);line-height:1.08;letter-spacing:-.04em;margin-bottom:18px}
.copy{color:var(--grey);font-size:17px;max-width:570px}
.copy a{font-weight:700;color:var(--ink)}
.form-card{border:1px solid var(--ink);padding:28px;background:#fff}
.form-card h2{font-size:24px;margin-bottom:8px}
.form-card>p{font-size:14px;color:var(--grey);margin-bottom:20px}
.field{display:grid;gap:7px;margin-bottom:14px}
.field label{font-size:13px;font-weight:750}
input[type="email"]{width:100%;min-height:50px;border:1px solid var(--ink);border-radius:0;padding:12px;font-size:16px;background:#fff;color:var(--ink)}
.consent-wrap{margin:12px 0 2px}
.consent{display:flex;align-items:flex-start;gap:10px;min-height:44px;font-size:13px;line-height:1.6;color:var(--grey);cursor:pointer}
.consent input{flex:0 0 auto;width:22px;height:22px;margin-top:1px;accent-color:var(--mustard)}
.privacy-disclosure{display:inline-flex;align-items:center;min-height:44px;margin-top:-6px;font-size:13px;font-weight:700;color:var(--ink)}
.error{min-height:20px;color:#9b1c12;font-size:13px}
.field [aria-invalid="true"]{border-color:#9b1c12;box-shadow:0 0 0 1px #9b1c12}
.bot-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.submit{width:100%;min-height:50px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:14px;font-weight:800;cursor:pointer}
.submit:hover{background:var(--mustard);color:var(--ink)}
.submit:disabled{opacity:.65;cursor:wait}
.submit.is-success{background:var(--sage);border-color:var(--sage);color:var(--ink)}
.status{margin-top:14px;min-height:24px;font-size:13px}
.status.success{padding:12px;background:var(--mustard-pale);color:var(--ink)}
.status.failure{padding:12px;border:1px solid #9b1c12;color:#9b1c12}
.privacy{margin-top:18px;border-top:1px solid var(--hair);padding-top:6px;font-size:14px;color:var(--grey);scroll-margin-top:24px}
.privacy summary{min-height:44px;display:flex;align-items:center;font-weight:700;color:var(--ink);cursor:pointer}
.privacy p{margin-top:8px}
.link-facts li{padding:0}
.link-facts a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;text-decoration:none}
footer{border-top:1px solid var(--ink);padding:28px 0;font-size:13px;color:var(--grey)}
.foot{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.foot a{color:var(--ink)}
@media(max-width:900px){
  .grid{grid-template-columns:1fr;gap:36px}
  .form-card{width:100%;max-width:640px}
}
@media(max-width:760px){
  .wrap{width:min(100% - 36px,1180px)}
  .head{min-height:62px}
  .by{display:none}
  .hero{padding:62px 0 52px}
  h1{font-size:clamp(48px,15vw,72px)}
  .notice{padding:48px 0}
  .form-card{padding:22px 18px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}
