/* 2026-09-21 copy hierarchy pass: concise copy, stronger headings, clearer key data. */
body{font-size:16px;line-height:1.6;letter-spacing:-.01em}
.kh-page-title,.kh-detail h1,.hero h1,.sec-h h2,.kh-section-title,.kh-h2,.kh-step-title{color:var(--ink);letter-spacing:-.035em}
.kh-page-title{font-size:clamp(30px,4vw,40px);font-weight:800;line-height:1.2}
.kh-page-desc{max-width:58ch;font-size:16px;font-weight:550;line-height:1.6;color:#566171}
.kh-section-title,.kh-h2{font-size:clamp(23px,2.6vw,30px);font-weight:800;line-height:1.3}
.kh-section-desc{font-size:15px;line-height:1.65;color:#5D6877}
.kh-btn{font-size:15px;font-weight:700;letter-spacing:-.015em}
.kh-btn--lg{font-size:16px}

/* Listings: location first, category headline second, then price. */
.kh-card__where{font-size:13px;font-weight:650;line-height:1.45;color:#667181}
.kh-card__title{font-size:18px;font-weight:750;line-height:1.38;letter-spacing:-.025em;color:var(--ink)}
.kh-card__price span{font-size:13px;font-weight:600;color:#667181}
.kh-card__price strong{font-size:22px;font-weight:800;letter-spacing:-.035em}
.kh-card__tags span,.kh-card__foot{font-size:12px}
.kh-list-head__meta,.kh-list-toolbar{font-size:14px}

/* Buyer requests */
.kh-buyer__budget span,.kh-buyer__row dt{font-size:13px;font-weight:650;color:#667181}
.kh-buyer__budget strong{font-size:25px;font-weight:800;letter-spacing:-.035em}
.kh-buyer__row dd{font-size:15px;font-weight:650}
.bcard h3{font-size:18px;font-weight:750;line-height:1.4}
.bcard-budget{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.bcard-budget span{font-size:13px;font-weight:600;color:#697483}
.bcard-budget strong{font-size:19px;font-weight:800;color:var(--brand);letter-spacing:-.025em}

/* Detail page */
.dt-head h1{font-size:clamp(30px,4.4vw,42px);font-weight:800;line-height:1.18;letter-spacing:-.04em}
.dt-price strong,.side .pr{font-size:clamp(36px,5vw,48px);font-weight:850;letter-spacing:-.045em}
.kstat dt{font-size:13px;font-weight:650;color:#667181}
.kstat dd{font-size:21px;font-weight:800;line-height:1.35;letter-spacing:-.025em}
.dt-sec h2{font-size:clamp(22px,2.5vw,28px);font-weight:800;letter-spacing:-.03em}
.kv dt{font-size:13px;font-weight:650;color:#667181}
.kv dd{font-size:16px;font-weight:700}
.dt-head .notice,.dt-sec .hint{font-size:14px;line-height:1.55}
.side p{font-size:14px;line-height:1.6}
.side .pr{font-size:28px}

/* Forms: strong step title, quiet helper text, readable labels. */
.kh-step-title{font-size:clamp(25px,3.3vw,32px);font-weight:800;line-height:1.25}
.kh-step-desc{max-width:60ch;font-size:15px;line-height:1.6;color:#5D6877}
.kh-field label,.kh-fieldset legend{font-size:15px;font-weight:750;color:var(--ink)}
.kh-field small,.kh-step-privacy{font-size:13px;line-height:1.55;color:#667181}
.kh-form input,.kh-form select,.kh-form textarea{font-size:16px}
.kh-side-process__title{font-size:20px;font-weight:800}
.kh-side-process li strong{font-size:15px;font-weight:750}
.kh-side-process li p{font-size:14px;line-height:1.55}
.kh-consent label{font-size:14px;line-height:1.5}

/* Guide and legal document */
.kh-process-title{font-size:19px;font-weight:800}
.kh-process-desc{font-size:15px;line-height:1.6}
.kh-checklist-grid strong{font-size:16px;font-weight:800}
.kh-checklist-grid span{font-size:15px;line-height:1.6}
.faq summary{font-size:17px;font-weight:750}
.faq .a{font-size:15px;line-height:1.7}
.kh-doc{font-size:16px;line-height:1.8}
.kh-doc h2{font-size:22px;font-weight:800;line-height:1.35;letter-spacing:-.025em}
.kh-doc p,.kh-doc li{font-size:16px;line-height:1.8}

/* Home: fewer words, stronger section rhythm. */
body[data-page="home"] .hero h1{font-size:clamp(36px,4.7vw,52px);font-weight:600;line-height:1.18;letter-spacing:-.04em} /* 2026-10-04 두 줄 슬로건: 너무 굵다는 의견으로 820→600, 자간·행간 살짝 완화 */
body[data-page="home"] .hero-sub{font-size:17px;font-weight:650;line-height:1.55;color:#515C6B}
body[data-page="home"] .sec-h h2{font-size:clamp(24px,2.9vw,31px);font-weight:800;line-height:1.25}
body[data-page="home"] .sec-h p{font-size:14px;font-weight:550;line-height:1.5;color:#667181}
body[data-page="home"] .kh-rail-heading h2{font-size:clamp(22px,2.6vw,28px);font-weight:800}
body[data-page="home"] .pb h3{font-size:clamp(23px,2.6vw,29px);font-weight:800;line-height:1.28;letter-spacing:-.035em}
body[data-page="home"] .pb-eyebrow{font-size:13px;font-weight:750}
body[data-page="home"] .pb-link{font-size:14px;font-weight:750}
body[data-page="home"] .fc b{font-size:18px;font-weight:800}
body[data-page="home"] .fc span{font-size:13px;line-height:1.5}
body[data-page="home"] .step h3{font-size:18px;font-weight:800;line-height:1.35}
body[data-page="home"] .cta h2{font-size:clamp(27px,3.5vw,36px);font-weight:820;line-height:1.25;letter-spacing:-.04em}
body[data-page="home"] .cta p{font-size:15px;font-weight:600}
body[data-page="home"] .faq summary{font-size:17px;font-weight:750}

/* Campaign copy remains vertically centered after removing the redundant eyebrow. */
.kh-campaign__title{margin-top:0}

@media(max-width:767px){
  body{font-size:16px}
  .kh-page-title{font-size:30px}
  .kh-page-desc{font-size:15px}
  .kh-section-title,.kh-h2{font-size:23px}
  .kh-card__title{font-size:18px}
  .kh-card__price strong{font-size:21px}
  .dt-head h1{font-size:30px}
  .kstat dd{font-size:19px}
  .dt-sec h2{font-size:22px}
  .kh-step-title{font-size:25px}
  .kh-doc h2{font-size:21px}
  body[data-page="home"] .hero h1{font-size:36px}
  body[data-page="home"] .hero-sub{font-size:16px}
  body[data-page="home"] .sec-h h2{font-size:24px}
  body[data-page="home"] .kh-rail-heading h2{font-size:22px}
  body[data-page="home"] .pb h3{font-size:23px}
  body[data-page="home"] .cta h2{font-size:27px}
}

@media(max-width:374px){
  body[data-page="home"] .hero h1{font-size:33px}
  .kh-page-title,.kh-detail h1{font-size:28px}
}

/* Form and guide pages had higher-specificity legacy rules; restore the global title hierarchy. */
body[data-form="1"] .kh-page-title,body[data-page="guide"] .kh-page-title{font-size:clamp(30px,4vw,40px);font-weight:800;line-height:1.2}
body[data-form="1"] .kh-step-title{font-size:clamp(25px,3.3vw,32px);font-weight:800;line-height:1.25}
