/* =========================================================
   타이포그래피 v2 — Pretendard (모든 페이지 공통, 가장 마지막에 로드)
   - 제목: Bold~ExtraBold 유지, 자간·행간을 좁혀 밀도 있게
   - 크기: 화면을 압도하지 않도록 한 단계씩 축소
   - 색·배경은 그대로 (블루 포인트 유지)
   ========================================================= */
@import url("assets/fonts/pretendard/pretendardvariable-dynamic-subset.css");

:root{--font:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Apple SD Gothic Neo','Noto Sans KR','Malgun Gothic',sans-serif}
html body{font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
/* 페이지별로 따로 지정돼 있던 글꼴도 Pretendard로 통일 (코드 표기는 제외) */
body :is(h1,h2,h3,h4,h5,h6,p,a,span,li,dt,dd,th,td,strong,em,b,small,label,button,input,textarea,select,blockquote,figcaption,div):not(.code):not(code):not(pre){font-family:var(--font)}

/* ---------- 제목 공통 ---------- */
body :is(h1,h2){letter-spacing:-.045em;line-height:1.24;word-break:keep-all}
body h3{letter-spacing:-.035em;line-height:1.34}
body p{letter-spacing:-.015em}

/* ---------- 메인 ---------- */
/* 히어로: 두 줄이 한 덩어리로 보이게 */
.concept-home .hero .headline{font-size:clamp(32px,3.55vw,52px)!important;font-weight:800!important;line-height:1.22!important;letter-spacing:-.05em!important}
.concept-home .hero .headline .line{padding:.04em 0}
.concept-home .hero .headline .brandtext{font-weight:800!important}
.concept-home .hero .desc{font-size:clamp(15px,1.2vw,18px)!important;line-height:1.65!important;letter-spacing:-.02em!important;font-weight:450;margin-top:22px}
.concept-home .hero .eyebrow{font-size:12px!important;font-weight:700!important;letter-spacing:.24em!important}
.hero-btn{font-weight:700;letter-spacing:-.02em}

/* 섹션 제목 */
.concept-home :is(.cx,.sc,.home-showcase,.hx-ai) h2{font-size:clamp(28px,2.75vw,40px)!important;font-weight:800!important;line-height:1.24!important;letter-spacing:-.05em!important}
.concept-home .hcb h2{font-size:clamp(22px,2vw,28px)!important;font-weight:800!important;letter-spacing:-.045em!important}
.concept-home :is(.cx-lead,.sc-lead,.home-services-desc,.hx-ai-desc){font-size:clamp(15px,1.15vw,17px)!important;line-height:1.7!important;letter-spacing:-.02em!important}
:is(.cx-kk,.home-kicker,.gt-kicker,.hs-kicker,.biz-eyebrow,.cl-eyebrow,.rc-label){letter-spacing:.2em!important;font-weight:700!important}

/* 카드 */
.cxb-card h3{font-size:clamp(19px,1.5vw,22px)!important;font-weight:700;letter-spacing:-.04em;line-height:1.34}
.cxb-card p{font-size:14px;line-height:1.65;letter-spacing:-.015em}
.cxb-nm{font-weight:700}
.cxb-en{letter-spacing:.14em;font-weight:700}
.cxb-no{font-weight:800;letter-spacing:-.05em}
.sc .sc-name{letter-spacing:-.045em}
.sc-cat b{font-weight:700;letter-spacing:-.02em}

/* 헤더 메뉴 */
.sangs-nav-item{font-weight:600!important;letter-spacing:-.02em}
.sangs-inquiry{font-weight:700!important}

/* ---------- 서브 페이지 ---------- */
.gt-hero h1,.hs-hero h1,.location-hero h1,.bz-hero h1,.cl-hero h1,.rc-hero h1,.sp h1{font-weight:800!important;letter-spacing:-.05em!important;line-height:1.24!important}
.sp h1{font-size:clamp(30px,3vw,42px)}
.sp h2{letter-spacing:-.045em}
.abx-item strong,.abx-dir-head h2{letter-spacing:-.045em}
.abx-count{letter-spacing:-.06em}

/* ---------- 푸터 ---------- */
.sf-contact dd{letter-spacing:-.02em}
