/* SEO 랜딩 공용 스타일 (2026-11-03) — /cost /remarriage /parents. 기존 sub-header/sub-menu 는 inc/sub.min.css 를 그대로 사용. */
/* 머리: 랜딩 H1 은 기존 페이지(1~2줄)보다 길어 글자 크기를 줄이고(PC 52→38px, MO 24→20px) 설명문은 숨김(메타 description 으로 충분). v1.1 */
.sub-header.landing-head .sub-header-txt .header-main-title { font-size: 38px; line-height: 1.35; }
.sub-header.landing-head .sub-header-txt .header-desc { display: none; }
@media (max-width: 767px) {
    .sub-header.landing-head .sub-header-txt .header-main-title { font-size: 20px; line-height: 1.4; }
    .sub-header.landing-head .sub-menu { margin-top: 112pt; }
}
.sub-wrapper.landing { padding: 70px 0 80px; }
.landing .ld-container { max-width: 1040px; margin: 0 auto; padding: 0 20px; }
.landing .ld-lead { font-size: 19px; line-height: 1.9; color: #222; font-family: 'Pretendard-r'; margin: 0 0 36px; word-break: keep-all; }
.landing .ld-summary { background: #f7f6f2; border-left: 4px solid #4b5038; padding: 22px 26px; margin: 0 0 44px; }
.landing .ld-summary p { margin: 0 0 6px; font-size: 16px; line-height: 1.8; color: #333; font-family: 'Pretendard-r'; word-break: keep-all; }
.landing .ld-summary p:last-child { margin-bottom: 0; }
.landing .ld-summary strong { font-family: 'Pretendard-sb'; color: #222; }
.landing h2 { font-size: 30px; line-height: 1.4; color: #222; margin: 56px 0 18px; font-weight: normal; word-break: keep-all; }
.landing h2:first-of-type { margin-top: 0; }
.landing h3 { font-size: 20px; line-height: 1.5; color: #222; margin: 30px 0 10px; font-family: 'Pretendard-sb'; font-weight: normal; word-break: keep-all; }
.landing p { font-size: 17px; line-height: 1.9; color: #333; margin: 0 0 16px; font-family: 'Pretendard-r'; word-break: keep-all; }
.landing ul, .landing ol { padding-left: 22px; margin: 0 0 18px; }
.landing li { font-size: 17px; line-height: 1.9; color: #333; font-family: 'Pretendard-r'; margin-bottom: 6px; word-break: keep-all; }
.landing a { color: #4b5038; text-decoration: underline; text-underline-offset: 3px; }
.landing a:hover { color: #2f3322; }
.landing strong { font-family: 'Pretendard-sb'; font-weight: normal; color: #222; }
.landing .ld-table-wrap { overflow-x: auto; margin: 0 0 22px; -webkit-overflow-scrolling: touch; }
.landing table.ld-table { width: 100%; border-collapse: collapse; font-size: 15.5px; line-height: 1.7; font-family: 'Pretendard-r'; }
.landing table.ld-table th, .landing table.ld-table td { border: 1px solid #ddd; padding: 12px 14px; text-align: left; vertical-align: top; color: #333; word-break: keep-all; }
.landing table.ld-table th { background: #f3f1ea; font-family: 'Pretendard-sb'; color: #222; white-space: nowrap; }
.landing table.ld-table td.num { white-space: nowrap; text-align: right; }
.landing ul.ld-check { list-style: none; padding: 0; }
.landing ul.ld-check li { position: relative; padding-left: 30px; }
.landing ul.ld-check li::before { content: ""; position: absolute; left: 0; top: 8px; width: 16px; height: 16px; border: 1.5px solid #4b5038; border-radius: 3px; }
.landing .ld-cta { background: #4b5038; color: #fff; padding: 30px 28px; margin: 40px 0; text-align: center; }
.landing .ld-cta p { color: #fff; margin: 0 0 14px; font-size: 17px; }
.landing .ld-cta .ld-btn { display: inline-block; margin: 4px 6px; padding: 13px 26px; background: #fff; color: #4b5038; font-family: 'Pretendard-sb'; font-size: 16px; text-decoration: none; border-radius: 3px; }
.landing .ld-cta .ld-btn.ghost { background: transparent; color: #fff; border: 1px solid #fff; }
.landing .ld-cta .ld-tel { font-size: 24px; font-family: 'Pretendard-sb'; color: #fff; letter-spacing: .5px; }
.landing .ld-faq { border-top: 1px solid #ddd; margin-top: 10px; }
.landing .ld-faq .ld-faq-item { border-bottom: 1px solid #ddd; padding: 22px 0; }
.landing .ld-faq h3 { margin: 0 0 10px; font-size: 18.5px; }
.landing .ld-faq h3::before { content: "Q."; color: #4b5038; margin-right: 8px; font-family: 'Pretendard-b'; }
.landing .ld-faq p { margin: 0; font-size: 16.5px; }
.landing .ld-related { background: #faf9f6; padding: 24px 28px; margin-top: 50px; }
.landing .ld-related h2 { font-size: 22px; margin: 0 0 12px; }
.landing .ld-related ul { margin: 0; padding-left: 20px; }
.landing .ld-related li { margin-bottom: 4px; font-size: 16px; }
.landing .ld-foot { margin-top: 40px; font-size: 14px; color: #777; border-top: 1px solid #eee; padding-top: 16px; }
.landing .ld-steps { counter-reset: step; list-style: none; padding: 0; }
.landing .ld-steps li { counter-increment: step; position: relative; padding-left: 46px; margin-bottom: 14px; }
.landing .ld-steps li::before { content: counter(step); position: absolute; left: 0; top: 4px; width: 30px; height: 30px; line-height: 30px; text-align: center; border-radius: 50%; background: #4b5038; color: #fff; font-size: 14px; font-family: 'Pretendard-sb'; }
.landing .ld-steps li strong { display: block; margin-bottom: 2px; }
@media (max-width: 767px) {
    .sub-wrapper.landing { padding: 36px 0 60px; }
    .landing .ld-container { padding: 0 16px; }
    .landing .ld-lead { font-size: 16.5px; margin-bottom: 26px; }
    .landing .ld-summary { padding: 16px 18px; margin-bottom: 30px; }
    .landing .ld-summary p { font-size: 14.5px; }
    .landing h2 { font-size: 23px; margin: 40px 0 14px; }
    .landing h3 { font-size: 17.5px; margin: 24px 0 8px; }
    .landing p, .landing li { font-size: 15.5px; line-height: 1.8; }
    .landing table.ld-table { font-size: 13.5px; }
    .landing table.ld-table th, .landing table.ld-table td { padding: 9px 10px; }
    .landing .ld-cta { padding: 24px 18px; margin: 30px 0; }
    .landing .ld-cta .ld-btn { display: block; margin: 8px 0; }
    .landing .ld-cta .ld-tel { font-size: 22px; }
    .landing .ld-faq h3 { font-size: 16.5px; }
    .landing .ld-faq p { font-size: 15px; }
    .landing .ld-related { padding: 18px 16px; }
}
