/* ============================================================
   01. GOOGLE WEB FONTS | 전체 페이지
============================================================ */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+KR:100,300,400,500,700,900&display=swap&subset=korean');
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/* ============================================================
   02. CSS VARIABLES / GLOBAL | 전체 페이지
============================================================ */
:root {
    --kh-navy: #203D60;
    --kh-blue: #7EA9D6;
    --kh-ice: #EAF3FA;
    --kh-white: #FFFFFF;
    --kh-text: #25374B;
    --kh-muted: #637387;
    --kh-border: #DEE7EF;
    --kh-container: 1240px;
}
html {
    font-size: 18px;
    scroll-behavior: smooth;
}
body {
    margin: 0;
    font-family: 'Poppins', 'Noto Sans KR', sans-serif;
    font-size: 18px;
    line-height: 1.7;
    color: var(--kh-text);
    word-break: keep-all;
}
body.kh-mobile-open {
    overflow: hidden;
}
.kh-header *, .kh-section *, .kh-footer *, .kh-mobile-quick * {
    box-sizing: border-box;
}
.kh-header a, .kh-section a, .kh-footer a, .kh-mobile-quick a {
    text-decoration: none;
}
.kh-header button {
    font-family: inherit;
}
.kh-section h1, .kh-section h2, .kh-section h3 {
    margin: 0;
    font-family: 'Noto Sans KR', sans-serif;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -0.035em;
}
.kh-section h1 {
    font-size: 48px;
}
.kh-section h2 {
    font-size: 38px;
}
.kh-section h3 {
    font-size: 30px;
}
.kh-section h4 {
    font-size: 24px;
}
.kh-section h5 {
    font-size: 20px;
}
.kh-container {
    width: calc(100% - 40px);
    max-width: var(--kh-container);
    margin: 0 auto;
}
.kh-section {
    width: 100%;
    padding: 80px 0;
}
.kh-section-light {
    background: var(--kh-ice);
}
.kh-eyebrow {
    margin: 0 0 18px;
    font-family: 'Poppins', sans-serif;
    color: var(--kh-blue);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
}
.kh-lead {
    max-width: 720px;
    color: var(--kh-muted);
}
.kh-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 54px;
    padding: 12px 25px;
    border: 1px solid var(--kh-navy);
    border-radius: 5px;
    font-size: 16px;
    font-weight: 600;
    transition: background .25s, color .25s, transform .25s;
}
.kh-button:hover {
    transform: translateY(-2px);
}
.kh-button-primary {
    background: var(--kh-navy);
    color: #fff;
}
.kh-button-outline {
    background: transparent;
    color: var(--kh-navy);
}
.kh-button-white {
    background: #fff;
    border-color: #fff;
    color: var(--kh-navy);
}
.kh-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 30px;
}
.kh-skip {
    position: absolute;
    left: 12px;
    top: -60px;
    z-index: 9999;
    padding: 8px 16px;
    background: #fff;
    color: #111;
}
.kh-skip:focus {
    top: 12px;
}

/* ============================================================
   03. HEADER / DESKTOP NAV | 전체 페이지
============================================================ */
.kh-header {
    position: relative;
    z-index: 100;
    background: #EAF3FA;
    transition: background-color .35s ease;
    border-bottom: 1px solid #B9D5EB; /* 접힌 상태의 헤더 하단 구분선 */
}
.kh-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    min-height: 94px;
}
.kh-logo {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 12px;
    color: var(--kh-navy);
    font-size: 16px;
    font-weight: 700;
}
/* 03-1. 로고 우측 법인명 / 센터명 2단 표기 */
.kh-logo-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 2px;
    line-height: 1.3;
    white-space: nowrap;
}
.kh-logo-firm {
    color: #203D60;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: -0.7px;
}
.kh-logo-center {
    color: #3B4D60;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: -0.5px;
}
.kh-logo img {
    display: block;
    width: auto;
    max-width: 190px;
    height: 50px;
    object-fit: contain;
}
.kh-desktop-nav {
    flex: 1;
    max-width: 980px;
}
.kh-nav-list {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    list-style: none;
}
.kh-nav-list li {
    text-align: center;
}
.kh-nav-list a {
    display: block;
    padding: 32px 3px;
    color: var(--kh-navy);
    font-size: 16px;
    font-weight: 600;
    white-space: nowrap;
}
.kh-nav-list a:hover, .kh-nav-list a:focus-visible {
    color: var(--kh-blue);
}

/* ============================================================
   04. PC FULL DROPDOWN | 전체 페이지
   헤더 진입: 모든 하위 메뉴 동시 펼침 / 이탈: 접힘
============================================================ */
/* 참고 사이트처럼 전체 서브메뉴를 한 번에 슬라이드합니다.
   jQuery가 로드되면 custom.js의 slideDown/slideUp을 사용합니다.
   미로드 환경에서는 아래 CSS 전환을 대체 동작으로 사용합니다. */
.kh-mega {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: none;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 18px 30px rgba(24, 45, 67, .09);
}
.kh-mega.kh-mega-visible {
    display: block;
    animation: kh-mega-fallback-in .2s ease-out both;
}
@keyframes kh-mega-fallback-in {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}
/* 헤더의 메뉴 열과 드롭다운의 7개 열을 동일한 너비로 정렬 */
.kh-mega-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    width: min(980px, calc(100% - 260px));
    max-width: 980px;
    margin-left: auto;
    margin-right: max(20px, calc((100vw - 1240px) / 2));
    padding: 25px 0 36px;
}
.kh-mega-column {
    display: flex;
    flex-direction: column;
    gap: 13px;
    text-align: center;
}
.kh-mega-column a {
    padding: 2px;
    color: var(--kh-muted);
    font-size: 14px;
    line-height: 1.55;
}
.kh-mega-column a:hover,
.kh-mega-column a:focus-visible {
    color: var(--kh-navy);
    text-decoration: underline;
}
.kh-header.kh-scrolled {
    box-shadow: 0 5px 18px rgba(24, 45, 67, .07);
}
.kh-mobile-toggle, .kh-mobile-nav {
    display: none;
}


/* ============================================================
   04-1. 대한민국탐정 원본 CSS 기반 열별 풀다운 스타일 | head.php
   - 상단 7개 메뉴와 하단 7개 열을 동일한 그리드에 정렬
   - 마우스 위치의 열 전체를 네이비 배경으로 강조
   - 원본의 흰색 메뉴 배경, 열 경계선, 링크 반전 효과 반영
============================================================ */
@media (min-width: 1025px) {
    .kh-header.kh-menu-open {
        border-bottom-color: transparent; /* 펼쳐진 상태에서는 헤더/서브메뉴 사이 선 숨김 */
        background: #FFFFFF;
        box-shadow: 0 10px 30px rgba(32, 61, 96, .10);
    }
    .kh-header .kh-nav-list > li {
        position: relative;
        border-left: 1px solid transparent;
        transition: background-color .2s ease, border-color .2s ease;
    }
    .kh-header.kh-menu-open .kh-nav-list > li {
        border-left-color: #E6ECF2;
    }
    .kh-header.kh-menu-open .kh-nav-list > li:last-child {
        border-right: 1px solid #E6ECF2;
    }
    .kh-header .kh-nav-list > li > a {
        position: relative;
        transition: color .2s ease;
    }
    .kh-header .kh-nav-list > li > a::after {
        position: absolute;
        bottom: 0;
        left: 25%;
        width: 50%;
        height: 3px;
        background: #FFFFFF;
        content: '';
        transform: scaleX(0);
        transition: transform .5s ease;
    }
    .kh-header .kh-mega {
        background: #FFFFFF;
        border-top: 0;
    }
    .kh-header .kh-mega-grid {
        padding: 0;
        align-items: stretch;
    }
    .kh-header .kh-mega-column {
        min-height: 245px;
        padding: 22px 0 32px;
        gap: 0;
        border-left: 1px solid #E6ECF2;
        transition: background-color .2s ease;
    }
    .kh-header .kh-mega-column:last-child {
        border-right: 1px solid #E6ECF2;
    }
    .kh-header .kh-mega-column a {
        display: block;
        margin: 0;
        padding: 7px 4px;
        color: #3B4D60;
        font-size: 15px;
        font-weight: 500;
        letter-spacing: -1px;
        line-height: 1.5;
        transition: color .2s ease, background-color .2s ease;
    }
    .kh-header .kh-mega-column a:hover,
    .kh-header .kh-mega-column a:focus-visible {
        color: #FFFFFF;
        background: #7EA9D6;
        text-decoration: none;
    }
    /* 04-2. 선택 열이 네이비인 경우에도 개별 링크는 전체 폭 반전 */
    .kh-header[data-kh-active] .kh-mega-column a:hover,
    .kh-header[data-kh-active] .kh-mega-column a:focus-visible {
        color: #203D60;
        background: #FFFFFF;
        outline-offset: -2px;
    }
    /* 비선택 열은 네이비 배경/흰 글자로 반전 */
    .kh-header[data-kh-active] .kh-mega-column:not(:hover):not(:focus-within) a:hover {
        color: #FFFFFF;
        background: #203D60;
    }
    .kh-header[data-kh-active="1"] .kh-nav-list > li:nth-child(1),
    .kh-header[data-kh-active="1"] .kh-mega-column:nth-child(1) {
        background: #203D60;
    }
    .kh-header[data-kh-active="1"] .kh-nav-list > li:nth-child(1) > a,
    .kh-header[data-kh-active="1"] .kh-mega-column:nth-child(1) > a {
        color: #FFFFFF;
    }
    .kh-header[data-kh-active="1"] .kh-nav-list > li:nth-child(1) > a::after {
        transform: scaleX(1);
    }
    .kh-header[data-kh-active="2"] .kh-nav-list > li:nth-child(2),
    .kh-header[data-kh-active="2"] .kh-mega-column:nth-child(2) {
        background: #203D60;
    }
    .kh-header[data-kh-active="2"] .kh-nav-list > li:nth-child(2) > a,
    .kh-header[data-kh-active="2"] .kh-mega-column:nth-child(2) > a {
        color: #FFFFFF;
    }
    .kh-header[data-kh-active="2"] .kh-nav-list > li:nth-child(2) > a::after {
        transform: scaleX(1);
    }
    .kh-header[data-kh-active="3"] .kh-nav-list > li:nth-child(3),
    .kh-header[data-kh-active="3"] .kh-mega-column:nth-child(3) {
        background: #203D60;
    }
    .kh-header[data-kh-active="3"] .kh-nav-list > li:nth-child(3) > a,
    .kh-header[data-kh-active="3"] .kh-mega-column:nth-child(3) > a {
        color: #FFFFFF;
    }
    .kh-header[data-kh-active="3"] .kh-nav-list > li:nth-child(3) > a::after {
        transform: scaleX(1);
    }
    .kh-header[data-kh-active="4"] .kh-nav-list > li:nth-child(4),
    .kh-header[data-kh-active="4"] .kh-mega-column:nth-child(4) {
        background: #203D60;
    }
    .kh-header[data-kh-active="4"] .kh-nav-list > li:nth-child(4) > a,
    .kh-header[data-kh-active="4"] .kh-mega-column:nth-child(4) > a {
        color: #FFFFFF;
    }
    .kh-header[data-kh-active="4"] .kh-nav-list > li:nth-child(4) > a::after {
        transform: scaleX(1);
    }
    .kh-header[data-kh-active="5"] .kh-nav-list > li:nth-child(5),
    .kh-header[data-kh-active="5"] .kh-mega-column:nth-child(5) {
        background: #203D60;
    }
    .kh-header[data-kh-active="5"] .kh-nav-list > li:nth-child(5) > a,
    .kh-header[data-kh-active="5"] .kh-mega-column:nth-child(5) > a {
        color: #FFFFFF;
    }
    .kh-header[data-kh-active="5"] .kh-nav-list > li:nth-child(5) > a::after {
        transform: scaleX(1);
    }
    .kh-header[data-kh-active="6"] .kh-nav-list > li:nth-child(6),
    .kh-header[data-kh-active="6"] .kh-mega-column:nth-child(6) {
        background: #203D60;
    }
    .kh-header[data-kh-active="6"] .kh-nav-list > li:nth-child(6) > a,
    .kh-header[data-kh-active="6"] .kh-mega-column:nth-child(6) > a {
        color: #FFFFFF;
    }
    .kh-header[data-kh-active="6"] .kh-nav-list > li:nth-child(6) > a::after {
        transform: scaleX(1);
    }
}

/* ============================================================
   07. FOOTER / MOBILE QUICK | tail.php
============================================================ */
.kh-footer {
    padding: 58px 0 25px;
    background: #162D49;
    color: #DFEAF5;
}
.kh-footer-inner {
    display: flex;
    justify-content: space-between;
    gap: 32px;
}
.kh-footer-logo {
    color: #fff;
    font-size: 22px;
    font-weight: 700;
}
.kh-footer-logo span {
    font-size: 15px;
    font-weight: 400;
}
.kh-footer-company p {
    font-size: 14px;
}
.kh-footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
}
.kh-footer-links a {
    color: #DFEAF5;
    font-size: 14px;
}
.kh-copyright {
    margin-top: 38px;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.14);
    font-size: 14px;
}
.kh-mobile-quick {
    display: none;
}

/* ============================================================
   08. RESPONSIVE | 1024px 이하
============================================================ */
@media (max-width: 1024px) {
    .kh-header-inner {
        min-height: 76px;
    }
    .kh-desktop-nav, .kh-mega {
        display: none !important;
    }
    .kh-mobile-toggle {
        display: inline-flex;
        justify-content: center;
        align-items: center;
        width: 44px;
        height: 44px;
        border: 0;
        background: transparent;
        color: var(--kh-navy);
        font-size: 25px;
        cursor: pointer;
    }
    .kh-mobile-nav:not([hidden]) {
        display: block;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        max-height: calc(100vh - 76px);
        overflow-y: auto;
        padding: 15px 20px 25px;
        background: #fff;
        box-shadow: 0 15px 20px rgba(0,0,0,.1);
    }
    .kh-mobile-nav details, .kh-mobile-single {
        display: block;
        border-bottom: 1px solid var(--kh-border);
    }
    .kh-mobile-nav summary, .kh-mobile-single {
        padding: 15px 10px;
        color: var(--kh-navy);
        font-size: 17px;
        font-weight: 600;
        cursor: pointer;
    }
    .kh-mobile-nav details a {
        display: block;
        padding: 10px 25px;
        color: var(--kh-muted);
        font-size: 15px;
    }
    .kh-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .kh-about-grid {
        gap: 35px;
    }
}

/* ============================================================
   09. MOBILE TYPOGRAPHY / LAYOUT | 768px 이하
============================================================ */
@media (max-width: 768px) {
    html {
        font-size: 16px;
    }
    body {
        font-size: 16px;
        line-height: 1.65;
    }
    .kh-section {
        padding: 50px 0;
    }
    .kh-section h1 {
        font-size: 32px;
    }
    .kh-section h2 {
        font-size: 28px;
    }
    .kh-section h3 {
        font-size: 24px;
    }
    .kh-section h4 {
        font-size: 20px;
    }
    .kh-section h5 {
        font-size: 18px;
    }
    .kh-eyebrow {
        font-size: 12px;
    }
    .kh-hero {
        min-height: 480px;
    }
    .kh-card-grid, .kh-step-grid, .kh-about-grid {
        grid-template-columns: 1fr;
    }
    .kh-service-card {
        min-height: 0;
    }
    .kh-info-section, .kh-contact-inner, .kh-footer-inner {
        flex-direction: column;
        align-items: flex-start;
    }
    .kh-footer {
        padding-bottom: 90px;
    }
    .kh-copyright, .kh-footer-links a {
        font-size: 12px;
    }
    .kh-mobile-quick {
        display: block;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 200;
        padding: 10px 20px;
        background: var(--kh-navy);
        text-align: center;
    }
    .kh-mobile-quick a {
        display: block;
        color: #fff;
        font-size: 16px;
        font-weight: 600;
    }
}

/* ============================================================
   10. ACCESSIBILITY | 전체 페이지
============================================================ */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* ============================================================
   11. PC 풀다운 v9 수정 | 중앙 애니메이션 블록 복원 + 링크 반전
   - 기존 04-1의 높은 우선순위 선택 열 규칙보다 뒤에 배치
   - 선택 열에서는 흰 배경/네이비 글자, 일반 열에서는 네이비/흰 글자
============================================================ */
@media (min-width: 1025px) {
    /* 메인메뉴 중앙의 짧은 애니메이션 블록은 유지합니다.
       전체 폭 경계선과는 별개의 장식입니다. */
    .kh-header .kh-nav-list > li > a::after {
        display: block;
        content: '';
        position: absolute;
        left: 50%;
        bottom: 0;
        width: 32px;
        height: 3px;
        border: 0;
        border-radius: 1px;
        background: #FFFFFF;
        box-shadow: none;
        transform: translateX(-50%) scaleX(0);
        transform-origin: center center;
        transition: transform .5s ease;
        pointer-events: none;
    }
    .kh-header[data-kh-active="1"] .kh-nav-list > li:nth-child(1) > a::after,
    .kh-header[data-kh-active="2"] .kh-nav-list > li:nth-child(2) > a::after,
    .kh-header[data-kh-active="3"] .kh-nav-list > li:nth-child(3) > a::after,
    .kh-header[data-kh-active="4"] .kh-nav-list > li:nth-child(4) > a::after,
    .kh-header[data-kh-active="5"] .kh-nav-list > li:nth-child(5) > a::after,
    .kh-header[data-kh-active="6"] .kh-nav-list > li:nth-child(6) > a::after,

    /* 링크 전체 너비가 반전되도록 열 패딩/간격을 0으로 유지 */
    .kh-header .kh-mega-column {
        padding-left: 0;
        padding-right: 0;
        gap: 0;
    }
    .kh-header .kh-mega-column > a {
        box-sizing: border-box;
        display: block;
        width: 100%;
        margin: 0;
        border-radius: 0;
        text-decoration: none;
    }

    /* 일반 열의 링크: 네이비 배경 + 흰 글씨 */
    .kh-header .kh-mega-column > a:hover,
    .kh-header .kh-mega-column > a:focus-visible,
    .kh-header[data-kh-active] .kh-mega-column:not(:hover):not(:focus-within) > a:hover {
        color: #FFFFFF;
        background-color: #203D60;
        text-decoration: none;
    }

    /* 현재 선택된 열의 링크: 흰 배경 + 네이비 글씨
       이전 nth-child 선택 규칙보다 명시적으로 우선 적용 */
    .kh-header[data-kh-active="1"] .kh-mega-column:nth-child(1) > a:hover,
    .kh-header[data-kh-active="1"] .kh-mega-column:nth-child(1) > a:focus-visible,
    .kh-header[data-kh-active="2"] .kh-mega-column:nth-child(2) > a:hover,
    .kh-header[data-kh-active="2"] .kh-mega-column:nth-child(2) > a:focus-visible,
    .kh-header[data-kh-active="3"] .kh-mega-column:nth-child(3) > a:hover,
    .kh-header[data-kh-active="3"] .kh-mega-column:nth-child(3) > a:focus-visible,
    .kh-header[data-kh-active="4"] .kh-mega-column:nth-child(4) > a:hover,
    .kh-header[data-kh-active="4"] .kh-mega-column:nth-child(4) > a:focus-visible,
    .kh-header[data-kh-active="5"] .kh-mega-column:nth-child(5) > a:hover,
    .kh-header[data-kh-active="5"] .kh-mega-column:nth-child(5) > a:focus-visible,
    .kh-header[data-kh-active="6"] .kh-mega-column:nth-child(6) > a:hover,
    .kh-header[data-kh-active="6"] .kh-mega-column:nth-child(6) > a:focus-visible {
        color: #203D60;
        background-color: #FFFFFF;
        text-decoration: none;
    }
}

/* ============================================================
   12. PC 풀다운 v11 | 전체 수평선 차단, 중앙 블록만 표시
   - 헤더/메인메뉴/드롭다운의 수평 경계선 및 가상요소 제거
   - 메인 메뉴 링크 ::after만 32px 중앙 애니메이션으로 유지
============================================================ */
@media (min-width: 1025px) {
    .kh-header,
    .kh-header.kh-scrolled,
    .kh-header.kh-menu-open,
    .kh-header[data-kh-active],
    .kh-header .kh-header-inner,
    .kh-header .kh-desktop-nav,
    .kh-header .kh-nav-list,
    .kh-header .kh-nav-list > li,
    .kh-header .kh-nav-list > li > a,
    .kh-header .kh-mega,
    .kh-header .kh-mega-grid,
    .kh-header .kh-mega-column {
        border-top: 0 !important;
        border-bottom: 0 !important;
        background-image: none !important;
        box-shadow: none !important;
    }

    /* 기존 테마 또는 추가 CSS의 장식용 가로선 방지 */
    .kh-header::before,
    .kh-header::after,
    .kh-header .kh-header-inner::before,
    .kh-header .kh-header-inner::after,
    .kh-header .kh-desktop-nav::before,
    .kh-header .kh-desktop-nav::after,
    .kh-header .kh-nav-list::before,
    .kh-header .kh-nav-list::after,
    .kh-header .kh-nav-list > li::before,
    .kh-header .kh-nav-list > li::after,
    .kh-header .kh-nav-list > li > a::before,
    .kh-header .kh-mega::before,
    .kh-header .kh-mega::after {
        content: none !important;
        display: none !important;
    }

    /* 오직 선택된 메인메뉴의 가운데 짧은 블록만 남김 */
    .kh-header .kh-nav-list > li > a::after {
        content: '';
        display: block;
        position: absolute;
        left: 50%;
        bottom: 0;
        width: 32px;
        height: 3px;
        border: 0 !important;
        background: #FFFFFF;
        box-shadow: none !important;
        transform: translateX(-50%) scaleX(0);
        transform-origin: center;
        transition: transform .5s ease;
        pointer-events: none;
    }

    .kh-header[data-kh-active="1"] .kh-nav-list > li:nth-child(1) > a::after,
    .kh-header[data-kh-active="2"] .kh-nav-list > li:nth-child(2) > a::after,
    .kh-header[data-kh-active="3"] .kh-nav-list > li:nth-child(3) > a::after,
    .kh-header[data-kh-active="4"] .kh-nav-list > li:nth-child(4) > a::after,
    .kh-header[data-kh-active="5"] .kh-nav-list > li:nth-child(5) > a::after,
    .kh-header[data-kh-active="6"] .kh-nav-list > li:nth-child(6) > a::after,
}

/* ============================================================
   13. PC 풀다운 v12 | 메인/서브 선택 열의 배경 단절 제거
   - 헤더 높이와 메인 링크 높이를 일치시켜 흰 틈 방지
   - JS가 측정한 PC 메뉴의 실제 위치/폭으로 하단 열 정렬
   - 전체 경계선 없음, 중앙 32px 애니메이션만 유지
============================================================ */
@media (min-width: 1025px) {
    .kh-header .kh-header-inner {
        height: 94px;
        min-height: 94px;
        align-items: stretch;
    }
    .kh-header .kh-logo {
        align-self: center;
    }
    .kh-header .kh-desktop-nav,
    .kh-header .kh-nav-list,
    .kh-header .kh-nav-list > li {
        height: 100%;
    }
    .kh-header .kh-nav-list > li > a {
        box-sizing: border-box;
        display: flex;
        height: 100%;
        align-items: center;
        justify-content: center;
        padding: 0 3px;
    }
    .kh-header .kh-mega {
        top: 100%;
        margin-top: 0 !important;
    }
    .kh-header .kh-mega-grid {
        box-sizing: border-box;
        width: var(--kh-nav-width, min(980px, calc(100% - 260px)));
        max-width: none;
        margin-left: var(--kh-nav-left, auto);
        margin-right: var(--kh-nav-right, max(20px, calc((100vw - 1240px) / 2)));
        padding-top: 0;
        border-top: 0 !important;
    }
    .kh-header .kh-mega-column {
        margin-top: 0;
        border-top: 0 !important;
    }
    .kh-header .kh-nav-list > li > a::after {
        bottom: 0;
        transition-duration: .5s;
    }
}

/* ============================================================
   14. PC 풀다운 v13 | 6개 메뉴 및 본문 구분 하단선
   - v12의 메뉴 높이, 정렬, 중앙 32px / 0.5초 효과 유지
   - 드롭다운 최하단에만 전체 폭 1px 경계선 표시
============================================================ */
@media (min-width: 1025px) {
    .kh-header .kh-nav-list,
    .kh-header .kh-mega-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
    .kh-header .kh-mega {
        border-bottom: 1px solid #B9D5EB !important;
        box-sizing: border-box;
    }
}

/* ============================================================
   15. 헤더 배경 전환 | 기본 아이스블루 → PC 풀다운 오픈 시 화이트
   - v12 정렬/중앙 블록 애니메이션 및 v13 풀다운 하단선 유지
============================================================ */
.kh-header {
    background-color: #EAF3FA;
    transition: background-color .35s ease;
}
@media (min-width: 1025px) {
    .kh-header.kh-menu-open,
    .kh-header.kh-menu-open.kh-scrolled {
        background-color: #FFFFFF;
    }
}

/* ============================================================
   16. PC 헤더 접힘 상태 하단 구분선 | v17
   - v11의 border-bottom: 0 !important 일괄 초기화보다 뒤에서 재지정
   - 풀다운이 열린 동안에는 헤더선 숨김, 풀다운 최하단선만 표시
============================================================ */
@media (min-width: 1025px) {
    .kh-header,
    .kh-header.kh-scrolled {
        border-bottom: 1px solid #B9D5EB !important;
    }

    .kh-header.kh-menu-open,
    .kh-header.kh-menu-open.kh-scrolled {
        border-bottom-color: transparent !important;
    }
}


/* ============================================================
   20. 메인페이지 Swiper 및 섹션 | index.php
============================================================ */
/* 01. 메인페이지 전용 기본 설정 */
.kh-home{--kh-h-navy:#203D60;--kh-h-ice:#EAF3FA;--kh-h-blue:#7EA9D6;--kh-h-border:#dfe8f0;color:#203D60;font-family:'Noto Sans KR',sans-serif;overflow:hidden}.kh-home *{box-sizing:border-box}.kh-home a{text-decoration:none}.kh-home-container{width:calc(100% - 48px);max-width:1240px;margin:0 auto}.kh-home-section{padding:116px 0}.kh-home-eyebrow{display:block;margin-bottom:20px;color:#658db5;font:600 13px/1.5 Poppins,sans-serif;letter-spacing:.18em}.kh-home h2{margin:0;font-size:clamp(30px,3.2vw,46px);font-weight:700;line-height:1.42;letter-spacing:-.045em}.kh-home h2 em{font-style:normal;color:#7EA9D6}.kh-home p{word-break:keep-all}.kh-home-section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:42px}.kh-home-section-head>p{margin:0;color:#657487;font-size:16px}.kh-home-textlink{display:inline-flex;gap:28px;align-items:center;margin-top:16px;padding-bottom:9px;border-bottom:1px solid #203D60;color:#203D60;font-weight:600;font-size:15px}.kh-home-textlink span{transition:transform .3s}.kh-home-textlink:hover span{transform:translate(3px,-3px)}
/* 02. Swiper 비주얼 */
.kh-visual,.kh-hero-swiper,.kh-hero-slide{height:clamp(570px,calc(100svh - 95px),840px);min-height:570px}.kh-hero-slide{position:relative;overflow:hidden;background:linear-gradient(120deg,#172e4a,#527a9e)}.kh-hero-photo,.kh-hero-shade{position:absolute;inset:0}.kh-hero-photo{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.09);transition:transform 7.5s linear}.kh-hero-slide.swiper-slide-active .kh-hero-photo{transform:scale(1)}.kh-hero-shade{background:linear-gradient(90deg,rgba(10,31,53,.79) 0%,rgba(19,46,73,.48) 55%,rgba(20,44,67,.16) 100%)}.kh-hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:100%;padding-bottom:35px;color:white}.kh-hero-kicker{display:block;margin-bottom:26px;font:500 13px/1.6 Poppins,'Noto Sans KR',sans-serif;letter-spacing:.16em;opacity:0;transform:translateY(20px)}.kh-hero-dot{margin:0 9px;color:#a8d0ef}.kh-hero-content h1{margin:0 0 24px;color:#fff;font-size:clamp(38px,4.4vw,66px);font-weight:700;line-height:1.35;letter-spacing:-.05em;opacity:0;transform:translateY(28px)}.kh-hero-content p{margin:0 0 39px;color:rgba(255,255,255,.88);font-size:clamp(15px,1.45vw,19px);opacity:0;transform:translateY(28px)}.kh-home-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-width:210px;padding:15px 22px;font-size:15px;font-weight:600;transition:background .3s,color .3s,transform .3s}.kh-home-btn:hover{transform:translateY(-3px)}.kh-home-btn-white{background:white;color:#203D60;opacity:0;transform:translateY(24px)}.kh-home-btn-white:hover{background:#EAF3FA}.swiper-slide-active .kh-hero-kicker,.swiper-slide-active .kh-hero-content h1,.swiper-slide-active .kh-hero-content p,.swiper-slide-active .kh-home-btn-white{animation:kh-hero-enter .9s both}.swiper-slide-active .kh-hero-content h1{animation-delay:.15s}.swiper-slide-active .kh-hero-content p{animation-delay:.3s}.swiper-slide-active .kh-home-btn-white{animation-delay:.45s}@keyframes kh-hero-enter{to{opacity:1;transform:translateY(0)}}.kh-hero-controls{position:absolute;z-index:5;bottom:37px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;align-items:center;pointer-events:none}.kh-hero-controls>*{pointer-events:auto}.kh-hero-pagination{position:static!important;width:auto!important;display:flex;gap:11px;align-items:center}.kh-hero-pagination .swiper-pagination-bullet{width:31px;height:3px;border-radius:0;background:rgba(255,255,255,.55);opacity:1;margin:0!important;transition:width .3s,background .3s}.kh-hero-pagination .swiper-pagination-bullet-active{width:68px;background:#fff}.kh-hero-buttons{display:flex;gap:6px}.kh-hero-buttons button{width:42px;height:42px;border:1px solid rgba(255,255,255,.55);background:rgba(0,0,0,.08);color:#fff;cursor:pointer;font-size:20px;transition:background .3s}.kh-hero-buttons button:hover{background:rgba(255,255,255,.2)}.kh-hero-buttons .kh-hero-pause{font-size:15px}
/* 03. ABOUT THE CENTER | 센터 소개 */
.kh-home .kh-home-intro {
    background: #FFFFFF;
}
.kh-home .kh-about-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.04fr);
    gap: 80px;
    align-items: start;
}
.kh-home .kh-about-heading h2 em {
    color: #7EA9D6;
    font-style: normal;
}
.kh-home .kh-about-statement {
    margin: 30px 0 22px;
    color: #203D60;
    font-weight: 600;
}
.kh-home .kh-about-description {
    margin: 0;
    color: #637387;
}
.kh-home .kh-about-link {
    display: inline-flex;
    align-items: center;
    gap: 22px;
    min-height: 54px;
    margin-top: 32px;
    padding: 0 22px;
    border: 1px solid #203D60;
    border-radius: 5px;
    background: #203D60;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 600;
    transition: background-color .3s, transform .3s;
}
.kh-home .kh-about-link:hover,
.kh-home .kh-about-link:focus-visible {
    background: #345D87;
    transform: translateY(-2px);
}
.kh-home .kh-about-features {
    display: grid;
    gap: 11px;
}
.kh-home .kh-about-feature {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 21px 24px;
    border: 1px solid #DEE7EF;
    border-radius: 8px;
    background: #FFFFFF;
    transition: border-color .3s, box-shadow .3s, transform .3s;
}
.kh-home .kh-about-feature:hover {
    border-color: #B9D5EB;
    box-shadow: 0 16px 32px rgba(32, 61, 96, .07);
    transform: translateY(-3px);
}
.kh-home .kh-about-feature-icon {
    display: flex;
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #EAF3FA;
    color: #203D60;
    font-size: 27px;
}
.kh-home .kh-about-feature-no {
    display: block;
    margin-bottom: 4px;
    color: #7EA9D6;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .08em;
}
.kh-home .kh-about-feature h3 {
    margin: 0 0 4px;
    font-size: 20px;
    line-height: 1.25;
    letter-spacing: -0.035em;
}
.kh-home .kh-about-feature p {
    margin: 0;
    color: #637387;
    font-size: 16px;
    line-height: 1.65;
}
.kh-home .kh-about-bottom {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 44px;
    padding: 24px 30px;
    border-left: 3px solid #7EA9D6;
    background: #F0F2F5;
}
.kh-home .kh-about-bottom-mark {
    color: #203D60;
    font-size: 28px;
}
.kh-home .kh-about-bottom p {
    flex: 1;
    margin: 0;
    color: #203D60;
}
.kh-home .kh-about-bottom-en {
    color: #7EA9D6;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    white-space: nowrap;
}
@media (max-width: 1024px) {
    .kh-home .kh-about-layout { gap: 35px; }
    .kh-home .kh-about-feature { padding: 22px; }
}
@media (max-width: 768px) {
    .kh-home .kh-about-layout { grid-template-columns: 1fr; gap: 35px; }
    .kh-home .kh-about-feature { gap: 14px; padding: 18px; }
    .kh-home .kh-about-feature h3 { font-size: 18px; line-height: 1.3; }
    .kh-home .kh-about-feature p { font-size: 15px; }
    .kh-home .kh-about-feature-icon { flex-basis: 52px; width: 52px; height: 52px; font-size: 23px; }
    .kh-home .kh-about-feature-no { font-size: 11px; }
    .kh-home .kh-about-link { font-size: 15px; }
    .kh-home .kh-about-bottom { align-items: flex-start; flex-wrap: wrap; padding: 20px; }
    .kh-home .kh-about-bottom-en { width: 100%; }
}
/* 06. 고객지원 */
/* 07. 전체 페이지 공통 스크롤 애니메이션 */
.kh-reveal{opacity:1;transform:none}.kh-motion-ready .kh-reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.75,.25,1)}.kh-motion-ready .kh-reveal.kh-visible{opacity:1;transform:translateY(0)}
/* 08. 반응형 */
@media(max-width:700px){.kh-home-container{width:calc(100% - 36px)}.kh-home-section{padding:76px 0}.kh-visual,.kh-hero-swiper,.kh-hero-slide{height:650px;min-height:570px;max-height:85svh}.kh-hero-shade{background:linear-gradient(90deg,rgba(10,31,53,.83),rgba(10,31,53,.37))}.kh-hero-content{padding-bottom:65px}.kh-hero-kicker{font-size:10px;letter-spacing:.08em}.kh-hero-content h1{font-size:clamp(32px,8vw,43px)}.kh-hero-content p{max-width:300px;font-size:15px;line-height:1.8}.kh-hero-controls{bottom:22px}.kh-hero-pagination .swiper-pagination-bullet{width:18px}.kh-hero-pagination .swiper-pagination-bullet-active{width:35px}.kh-hero-buttons button{width:35px;height:35px;font-size:17px}.kh-home-section-head{display:block}.kh-home-section-head>p{margin-top:16px}}@media(max-width:420px){.kh-home-btn{min-width:190px}.kh-hero-content h1{font-size:32px}}@media(prefers-reduced-motion:reduce){.kh-home *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.kh-motion-ready .kh-reveal{opacity:1;transform:none}}




/* ============================================================
   21. MAIN DESIGN SYSTEM | 확정된 폰트 및 컬러 규칙
   기존 custom(1).css 원문 유지 / 메인페이지 한정 적용
============================================================ */
.kh-home {
    --kh-h-navy: var(--kh-navy);
    --kh-h-ice: var(--kh-ice);
    --kh-h-blue: var(--kh-blue);
    color: var(--kh-text);
    font-family: 'Poppins', 'Noto Sans KR', sans-serif;
    font-size: 18px;
}
.kh-home .kh-home-container { max-width: var(--kh-container); }
.kh-home .kh-home-section { padding: 80px 0; }
.kh-home .kh-home-eyebrow { color: var(--kh-blue); font-size: 14px; }
.kh-home .kh-home-section h2 { color: var(--kh-navy); font-size: 38px; line-height: 1.35; }

.kh-home .kh-home-section p { font-size: 18px; line-height: 1.7; }
.kh-home .kh-home-services { background: var(--kh-ice); }



.kh-home .kh-hero-shade {
    background: linear-gradient(90deg, rgba(12, 32, 54, .94) 0%, rgba(18, 43, 70, .87) 26%, rgba(32, 61, 96, .58) 49%, rgba(32, 61, 96, .05) 79%);
}
.kh-home .kh-hero-content { align-items: flex-start; }
.kh-home .kh-hero-copy {
    width: min(100%, 790px);
    padding: 26px 28px 26px 32px;
    border-left: 2px solid #B9D5EB;
    background: linear-gradient(90deg, rgba(14, 37, 61, .28), rgba(14, 37, 61, 0));
    backdrop-filter: blur(1px);
}
.kh-home .kh-hero-kicker { font-size: 14px; color: #EAF3FA; letter-spacing: .09em; }
.kh-home .kh-hero-kicker-line { display: inline-block; width: 28px; height: 1px; background: var(--kh-blue); vertical-align: middle; margin-right: 10px; }
.kh-home .kh-hero-content h1 {
    max-width: 830px;
    margin-bottom: 24px;
    font-family: 'Noto Sans KR', sans-serif;
    font-size: 48px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -.035em;
    color: #FFFFFF;
    text-shadow: 0 3px 18px rgba(5, 20, 35, .50);
}
.kh-home .kh-hero-content p { max-width: 680px; font-size: 18px; line-height: 1.7; color: #FFFFFF; text-shadow: 0 2px 10px rgba(0, 15, 30, .45); }
.kh-home .kh-hero-title-accent { color: #B9D5EB; }
.kh-home .kh-home-btn { min-height: 54px; font-size: 16px; border-radius: 5px; }
.kh-home .kh-home-btn-white { background: #FFFFFF; color: var(--kh-navy); }
.kh-home .kh-home-textlink i { font-size: .85em; }
.kh-home .kh-home-disclaimer { font-size: 14px; }
.kh-home .kh-hero-pause[hidden] { display: none !important; }
@media (max-width: 768px) {
    .kh-home { font-size: 16px; }
    .kh-home .kh-home-section { padding: 50px 0; }
    .kh-home .kh-home-eyebrow { font-size: 12px; }
    .kh-home .kh-home-section h2 { font-size: 28px; }
    
    .kh-home .kh-home-section p { font-size: 16px; }
    .kh-home .kh-hero-copy { padding: 18px 10px 18px 18px; background: linear-gradient(90deg, rgba(14, 37, 61, .28), transparent); }
    .kh-home .kh-hero-kicker { font-size: 12px; letter-spacing: .04em; }
    .kh-home .kh-hero-content h1 { font-size: 32px; line-height: 1.35; }
    .kh-home .kh-hero-content p { font-size: 16px; line-height: 1.65; }
    .kh-home .kh-hero-shade { background: linear-gradient(90deg, rgba(12,32,54,.96), rgba(22,47,73,.78) 72%, rgba(32,61,96,.50)); }
}
@media (max-width: 480px) {
}
@media (prefers-reduced-motion: reduce) {
    .kh-home .kh-reveal { opacity: 1; transform: none; }
}

/* ============================================================
   22. OUR PRACTICE | 회생·파산 주요 업무
   - 기존 서비스 카드 규칙 대체 / 메인 전용
   - 컬러 및 폰트는 기존 확정 디자인 시스템 준수
============================================================ */
.kh-home .kh-practice-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 36px;
    margin-bottom: 30px;
}
.kh-home .kh-practice-heading h2 em {
    color: var(--kh-blue);
    font-style: normal;
}
.kh-home .kh-practice-lead {
    margin: 16px 0 0;
    color: var(--kh-muted);
}
.kh-home .kh-practice-heading-aside {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-bottom: 6px;
    color: var(--kh-navy);
}
.kh-home .kh-practice-heading-aside i {
    color: var(--kh-blue);
    font-size: 36px;
}
.kh-home .kh-practice-heading-aside span {
    font: 600 12px/1.7 'Poppins', sans-serif;
    letter-spacing: .12em;
}
.kh-home .kh-practice-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.kh-home .kh-practice-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 410px;
    padding: 27px 23px 24px;
    background: #FFFFFF;
    border: 1px solid var(--kh-border);
    border-top: 3px solid var(--kh-navy);
    color: var(--kh-navy);
    text-decoration: none;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.kh-home .kh-practice-card:hover,
.kh-home .kh-practice-card:focus-visible {
    transform: translateY(-6px);
    border-color: var(--kh-blue);
    box-shadow: 0 16px 35px rgba(32, 61, 96, .12);
}
.kh-home .kh-practice-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 24px;
}
.kh-home .kh-practice-index {
    font: 600 21px/1.2 'Poppins', sans-serif;
    color: var(--kh-navy);
}
.kh-home .kh-practice-index small {
    display: block;
    margin-top: 5px;
    font: 600 10px/1.4 'Poppins', sans-serif;
    letter-spacing: .12em;
    color: var(--kh-blue);
}
.kh-home .kh-practice-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    border-radius: 50%;
    background: var(--kh-ice);
    color: var(--kh-navy);
    font-size: 25px;
    transition: background .35s ease, color .35s ease;
}
.kh-home .kh-practice-card:hover .kh-practice-icon,
.kh-home .kh-practice-card:focus-visible .kh-practice-icon {
    background: var(--kh-navy);
    color: #FFFFFF;
}
.kh-home .kh-practice-label {
    display: block;
    margin-bottom: 8px;
    color: var(--kh-blue);
    font: 600 10px/1.5 'Poppins', sans-serif;
    letter-spacing: .08em;
}
.kh-home .kh-practice-card h3 {
    margin: 0 0 13px;
    color: var(--kh-navy);
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.04em;
}
.kh-home .kh-practice-summary {
    margin: 0 0 15px;
    color: var(--kh-navy);
    font-weight: 600;
}
.kh-home .kh-practice-detail {
    margin: 0;
    color: var(--kh-muted);
}
.kh-home .kh-practice-card .kh-practice-summary,
.kh-home .kh-practice-card .kh-practice-detail {
    font-size: 15px;
    line-height: 1.65;
}
.kh-home .kh-practice-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: auto;
    padding-top: 20px;
    color: var(--kh-navy);
    font-size: 14px;
    font-weight: 700;
}
.kh-home .kh-practice-link i {
    color: var(--kh-blue);
    transition: transform .3s ease;
}
.kh-home .kh-practice-card:hover .kh-practice-link i {
    transform: translate(3px, -3px);
}
.kh-home .kh-practice-footnote {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 22px;
    padding: 16px 20px;
    background: #FFFFFF;
    border-left: 3px solid var(--kh-blue);
}
.kh-home .kh-practice-footnote i {
    margin-top: 5px;
    color: var(--kh-blue);
}
.kh-home .kh-practice-footnote p {
    margin: 0;
    color: var(--kh-muted);
}
.kh-home .kh-practice-footnote p {
    font-size: 14px;
    line-height: 1.6;
}
.kh-practice-grid .kh-reveal:nth-child(2) { transition-delay: .09s; }
.kh-practice-grid .kh-reveal:nth-child(3) { transition-delay: .18s; }
.kh-practice-grid .kh-reveal:nth-child(4) { transition-delay: .27s; }

@media (max-width: 1050px) {
    .kh-home .kh-practice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .kh-home .kh-practice-card { min-height: 365px; }
}
@media (max-width: 768px) {
    .kh-home .kh-practice-heading { align-items: flex-start; }
    .kh-home .kh-practice-heading-aside { display: none; }
    .kh-home .kh-practice-card { min-height: 350px; }
    .kh-home .kh-practice-card h3 { font-size: 22px; line-height: 1.3; }
    .kh-home .kh-practice-card .kh-practice-summary,
    .kh-home .kh-practice-card .kh-practice-detail { font-size: 14px; }
    .kh-home .kh-practice-footnote p { font-size: 13px; }
}
@media (max-width: 560px) {
    .kh-home .kh-practice-grid { grid-template-columns: 1fr; gap: 12px; }
    .kh-home .kh-practice-card { min-height: 0; padding: 23px 22px; }
    .kh-home .kh-practice-card-top { margin-bottom: 18px; }
}
@media (prefers-reduced-motion: reduce) {
    .kh-home .kh-practice-card,
    .kh-home .kh-practice-icon,
    .kh-home .kh-practice-link i { transition: none; }
}

/* ============================================================
   23. OUR PROCESS | 상담부터 절차 진행까지 (v13)
   - 기존 4단계 유지, 타임라인 및 전용 타이포그래피 적용
============================================================ */
.kh-home .kh-home-process { background: #FFFFFF; }
.kh-home .kh-process-intro {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 34px;
}
.kh-home .kh-process-intro h2 em { color: var(--kh-blue); font-style: normal; }
.kh-home .kh-process-lead { margin: 14px 0 0; color: var(--kh-muted); }
.kh-home .kh-process-intro-mark {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-bottom: 5px;
    color: var(--kh-navy);
}
.kh-home .kh-process-intro-mark i { font-size: 36px; color: var(--kh-blue); }
.kh-home .kh-process-intro-mark span {
    font: 600 12px/1.7 'Poppins', sans-serif;
    letter-spacing: .12em;
}
.kh-home .kh-process-timeline {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: none;
}
.kh-home .kh-process-item {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 325px;
    padding: 24px 23px 26px;
    background: #F7F9FC;
    border: 1px solid #DFE7EF;
    border-top: 3px solid var(--kh-navy);
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.kh-home .kh-process-item:hover {
    transform: translateY(-5px);
    border-color: var(--kh-blue);
    box-shadow: 0 14px 30px rgba(32, 61, 96, .10);
}
.kh-home .kh-process-item:not(:last-child)::after {
    content: '';
    position: absolute;
    z-index: 1;
    right: -17px;
    top: 61px;
    width: 16px;
    height: 2px;
    background: var(--kh-blue);
}
.kh-home .kh-process-item-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 24px;
}
.kh-home .kh-process-num {
    font: 600 29px/1.2 'Poppins', sans-serif;
    color: var(--kh-blue);
    letter-spacing: -.035em;
}
.kh-home .kh-process-symbol {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--kh-ice);
    color: var(--kh-navy);
    font-size: 24px;
}
.kh-home .kh-process-en {
    display: block;
    margin-bottom: 8px;
    font: 600 10px/1.5 'Poppins', sans-serif;
    letter-spacing: .09em;
    color: var(--kh-blue);
}
.kh-home .kh-process-item h3 {
    margin: 0 0 13px;
    color: var(--kh-navy);
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.045em;
}
.kh-home .kh-process-item .kh-process-summary {
    margin: 0 0 12px;
    color: var(--kh-navy);
    font-size: 15px;
    line-height: 1.55;
    font-weight: 600;
}
.kh-home .kh-process-item .kh-process-desc {
    margin: 0;
    color: var(--kh-muted);
    font-size: 14px;
    line-height: 1.7;
}
.kh-home .kh-process-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 20px;
    padding: 17px 21px;
    background: #F0F2F5;
    border-left: 3px solid var(--kh-blue);
}
.kh-home .kh-process-note-icon { margin-top: 3px; color: var(--kh-blue); }
.kh-home .kh-process-note p {
    margin: 0;
    color: var(--kh-muted);
    font-size: 14px;
    line-height: 1.6;
}
.kh-home .kh-process-note strong { color: var(--kh-navy); }
.kh-process-timeline .kh-reveal:nth-child(2) { transition-delay: .09s; }
.kh-process-timeline .kh-reveal:nth-child(3) { transition-delay: .18s; }
.kh-process-timeline .kh-reveal:nth-child(4) { transition-delay: .27s; }
@media (max-width: 1050px) {
    .kh-home .kh-process-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .kh-home .kh-process-item { min-height: 290px; }
    .kh-home .kh-process-item::after { display: none; }
}
@media (max-width: 768px) {
    .kh-home .kh-process-intro { margin-bottom: 26px; }
    .kh-home .kh-process-intro-mark { display: none; }
    .kh-home .kh-process-item h3 { font-size: 20px; line-height: 1.3; }
    .kh-home .kh-process-item .kh-process-summary { font-size: 14px; }
    .kh-home .kh-process-note p { font-size: 13px; }
}
@media (max-width: 560px) {
    .kh-home .kh-process-timeline { grid-template-columns: 1fr; gap: 12px; }
    .kh-home .kh-process-item { min-height: 0; padding: 22px; }
    .kh-home .kh-process-item-top { margin-bottom: 17px; }
}
@media (prefers-reduced-motion: reduce) {
    .kh-home .kh-process-item { transition: none; }
}


/* ============================================================
   24. CLIENT SUPPORT | 고객지원 전용
   배경: 다음 푸터와 분리되는 밝은 웜 그레이
============================================================ */
.kh-home .kh-home-support {
    background: #EAF3FA;
}
.kh-home .kh-support-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 28px;
}
.kh-home .kh-support-heading h2 {
    color: var(--kh-navy);
}
.kh-home .kh-support-lead {
    margin: 12px 0 0;
    color: var(--kh-navy);
    font-weight: 600;
}
.kh-home .kh-support-heading-copy {
    max-width: 460px;
    margin: 0;
    color: var(--kh-muted);
}
.kh-home .kh-support-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}
.kh-home .kh-support-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 340px;
    padding: 30px 34px;
    background: #FFFFFF;
    border: 1px solid #DCE4EC;
    border-top: 3px solid var(--kh-navy);
    color: var(--kh-navy);
    text-decoration: none;
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.kh-home .kh-support-card-accent {
    border-top-color: var(--kh-blue);
}
.kh-home .kh-support-card:hover,
.kh-home .kh-support-card:focus-visible {
    transform: translateY(-5px);
    border-color: var(--kh-blue);
    box-shadow: 0 15px 32px rgba(32,61,96,.11);
}
.kh-home .kh-support-card-top {
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: 16px;
    margin-bottom: 20px;
}
.kh-home .kh-support-card-number {
    color: var(--kh-navy);
    font: 600 22px/1.2 'Poppins', sans-serif;
}
.kh-home .kh-support-card-number small {
    display: block;
    margin-top: 5px;
    color: var(--kh-blue);
    font: 600 10px/1.4 'Poppins', sans-serif;
    letter-spacing: .1em;
}
.kh-home .kh-support-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    border-radius: 50%;
    background: var(--kh-ice);
    color: var(--kh-navy);
    font-size: 23px;
}
.kh-home .kh-support-card-en {
    margin-bottom: 6px;
    color: var(--kh-blue);
    font: 600 11px/1.5 'Poppins', sans-serif;
    letter-spacing: .1em;
}
.kh-home .kh-support-card h3 {
    margin: 0 0 12px;
    color: var(--kh-navy);
    font-size: 24px;
    line-height: 1.3;
}
.kh-home .kh-support-card .kh-support-card-summary {
    margin: 0 0 9px;
    color: var(--kh-navy);
    font-weight: 600;
    font-size: 16px;
    line-height: 1.55;
}
.kh-home .kh-support-card .kh-support-card-desc {
    margin: 0;
    color: var(--kh-muted);
    font-size: 15px;
    line-height: 1.7;
}
.kh-home .kh-support-card-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 24px;
    color: var(--kh-navy);
    font-size: 14px;
    font-weight: 700;
}
.kh-home .kh-support-card-action i {
    color: var(--kh-blue);
    transition: transform .3s ease;
}
.kh-home .kh-support-card:hover .kh-support-card-action i {
    transform: translate(3px,-3px);
}
.kh-home .kh-support-contact {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
    padding: 22px 28px;
    background: var(--kh-navy);
    color: #FFFFFF;
}
.kh-home .kh-support-contact-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 50%;
    font-size: 23px;
}
.kh-home .kh-support-contact-copy {
    flex: 1;
    min-width: 0;
}
.kh-home .kh-support-contact-copy span {
    display: block;
    margin-bottom: 4px;
    color: #B9D5EB;
    font: 600 10px/1.5 'Poppins', sans-serif;
    letter-spacing: .1em;
}
.kh-home .kh-support-contact-copy strong {
    display: block;
    font-size: 19px;
    line-height: 1.4;
}
.kh-home .kh-support-contact-copy p {
    margin: 4px 0 0;
    color: #DFEAF5;
    font-size: 14px;
}
.kh-home .kh-support-contact-tel {
    display: flex;
    align-items: center;
    gap: 16px;
    color: #FFFFFF;
    font: 600 24px/1.3 'Poppins', sans-serif;
    white-space: nowrap;
}
.kh-home .kh-support-contact-tel i {
    color: #B9D5EB;
    font-size: 16px;
}
.kh-home .kh-support-grid .kh-reveal:nth-child(2) {
    transition-delay: .1s;
}

/* 25. 공통 푸터 | 확정된 사업자 정보 */
.kh-footer .kh-footer-practice {
    margin: 12px 0 18px;
    color: #B9D5EB;
}
.kh-footer .kh-footer-details {
    display: grid;
    gap: 5px;
}
.kh-footer .kh-footer-details p {
    margin: 0;
    color: #DFEAF5;
    font-size: 14px;
    line-height: 1.7;
}
.kh-footer .kh-footer-details strong {
    color: #FFFFFF;
    font-weight: 600;
}
.kh-footer .kh-footer-details a {
    color: #DFEAF5;
}
.kh-footer .kh-footer-separator {
    margin: 0 9px;
    color: rgba(255,255,255,.3);
}
.kh-footer .kh-footer-links a:hover,
.kh-footer .kh-footer-details a:hover {
    color: #B9D5EB;
}
@media (max-width: 900px) {
    .kh-home .kh-support-contact {
        flex-wrap: wrap;
    }
    .kh-home .kh-support-contact-tel {
        margin-left: 74px;
    }
}
@media (max-width: 700px) {
    .kh-home .kh-support-heading {
        display: block;
    }
    .kh-home .kh-support-heading-copy {
        margin-top: 14px;
    }
    .kh-home .kh-support-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .kh-home .kh-support-card {
        min-height: 0;
        padding: 25px 23px;
    }
    .kh-home .kh-support-card h3 {
        font-size: 22px;
        line-height: 1.3;
    }
    .kh-home .kh-support-card .kh-support-card-summary {
        font-size: 15px;
    }
    .kh-home .kh-support-card .kh-support-card-desc {
        font-size: 14px;
    }
    .kh-home .kh-support-contact {
        padding: 22px;
        gap: 14px;
    }
    .kh-home .kh-support-contact-icon {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        font-size: 19px;
    }
    .kh-home .kh-support-contact-copy strong {
        font-size: 17px;
    }
    .kh-home .kh-support-contact-tel {
        width: 100%;
        justify-content: space-between;
        margin: 6px 0 0;
        font-size: 22px;
    }
        .kh-footer .kh-footer-details p {
        font-size: 13px;
    }
    .kh-footer .kh-footer-separator {
        margin: 0 5px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .kh-home .kh-support-card,
    .kh-home .kh-support-card-action i {
        transition: none;
    }
}

/* ============================================================
   26. 고객지원 배경 / 푸터 2열 정보 균형 (v16)
============================================================ */
.kh-footer .kh-footer-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(300px, 1fr);
    align-items: start;
    gap: 60px;
}
.kh-footer .kh-footer-company { min-width: 0; }
.kh-footer .kh-footer-side {
    min-width: 0;
    padding: 4px 0 0 32px;
    border-left: 1px solid rgba(255,255,255,.18);
}
.kh-footer .kh-footer-side-label {
    display: block;
    color: #B9D5EB;
    font: 600 11px/1.5 'Poppins', sans-serif;
    letter-spacing: .12em;
}
.kh-footer .kh-footer-side-title {
    display: block;
    margin-top: 12px;
    color: #FFFFFF;
    font-size: 20px;
    line-height: 1.4;
}
.kh-footer .kh-footer-side-phone {
    display: inline-block;
    margin-top: 10px;
    color: #FFFFFF;
    font: 600 27px/1.3 'Poppins', sans-serif;
    letter-spacing: -.02em;
}
.kh-footer .kh-footer-side-phone:hover { color: #B9D5EB; }
.kh-footer .kh-footer-side-desc {
    margin: 8px 0 22px;
    color: #C5D7E8;
    font-size: 13px;
    line-height: 1.6;
}
.kh-footer .kh-footer-side .kh-footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 17px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.16);
}
@media (max-width: 1024px) {
    .kh-footer .kh-footer-inner { grid-template-columns: 1fr; gap: 27px; }
    .kh-footer .kh-footer-side {
        width: 100%;
        padding: 24px 0 0;
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,.18);
    }
}
@media (max-width: 600px) {
    .kh-footer .kh-footer-side-title { font-size: 18px; }
    .kh-footer .kh-footer-side-phone { font-size: 24px; }
}


/* ============================================================
   26. 메인 섹션 상담문의 CTA | 공통 디자인
   - ABOUT, 주요 업무, 진행 절차에만 추가
   - 고객지원의 기존 상담문의 카드/전화 안내는 유지
============================================================ */
.kh-home .kh-consult-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px 24px;
    margin-top: 22px;
}
.kh-home .kh-consult-actions .kh-about-link {
    margin-top: 0;
}
.kh-home .kh-consult-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 46px;
    padding: 11px 21px;
    border: 1px solid var(--kh-navy);
    color: var(--kh-navy);
    background: #FFFFFF;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    white-space: nowrap;
    text-decoration: none;
    transition: color .25s ease, background .25s ease, border-color .25s ease, transform .25s ease;
}
.kh-home .kh-consult-btn i:last-child {
    font-size: 12px;
    transition: transform .25s ease;
}
.kh-home .kh-consult-btn:hover,
.kh-home .kh-consult-btn:focus-visible {
    color: #FFFFFF;
    background: var(--kh-navy);
    border-color: var(--kh-navy);
}
.kh-home .kh-consult-btn:hover i:last-child,
.kh-home .kh-consult-btn:focus-visible i:last-child {
    transform: translateX(3px);
}
.kh-home .kh-consult-btn-solid {
    color: #FFFFFF;
    background: var(--kh-navy);
}
.kh-home .kh-consult-btn-solid:hover,
.kh-home .kh-consult-btn-solid:focus-visible {
    background: #31557E;
    border-color: #31557E;
}
.kh-home .kh-consult-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-top: 22px;
    padding: 22px 26px;
    border: 1px solid #D9E4ED;
    background: #FFFFFF;
}
.kh-home .kh-consult-cta-label {
    display: block;
    margin-bottom: 6px;
    color: var(--kh-blue);
    font: 600 11px/1.5 'Poppins', sans-serif;
    letter-spacing: .1em;
}
.kh-home .kh-consult-cta p {
    margin: 0;
    color: var(--kh-navy);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.55;
}
.kh-home .kh-consult-cta-process {
    border-left: 3px solid var(--kh-blue);
    background: #F5F7FA;
}
@media (max-width: 700px) {
    .kh-home .kh-consult-cta {
        align-items: stretch;
        flex-direction: column;
        padding: 20px;
        gap: 14px;
    }
    .kh-home .kh-consult-cta p { font-size: 15px; }
    .kh-home .kh-consult-btn { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .kh-home .kh-consult-btn,
    .kh-home .kh-consult-btn i:last-child { transition: none; }
}

/* ============================================================
   26. 상담문의 독립 입력폼 | counsel/index.php
============================================================ */
.kh-consult-page { background: #FFFFFF; color: #203D60; }
.kh-consult-page .kh-consult-container { max-width: 960px; margin: 0 auto; padding: 70px 20px 90px; }
.kh-consult-page .kh-consult-kicker { color: #7EA9D6; font: 600 12px/1.5 Poppins,sans-serif; letter-spacing: .15em; }
.kh-consult-page h1 { margin: 10px 0 12px; font-size: 38px; line-height: 1.3; color: #203D60; }
.kh-consult-page .kh-consult-intro { color: #617187; line-height: 1.75; }
.kh-consult-page .kh-consult-admin { display: inline-flex; gap: 9px; align-items: center; margin: 18px 0; padding: 10px 16px; border: 1px solid #B9D5EB; color: #203D60; background: #EAF3FA; font-size: 14px; }
.kh-consult-page .kh-consult-form { margin-top: 30px; padding: 35px; background: #F7F9FC; border: 1px solid #DFE7EF; }
.kh-consult-page .kh-consult-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.kh-consult-page .kh-consult-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.kh-consult-page .kh-consult-field.full { grid-column: 1 / -1; }
.kh-consult-page .kh-consult-field label, .kh-consult-page .kh-consult-consent strong { color: #203D60; font-size: 15px; font-weight: 700; }
.kh-consult-page .kh-consult-field input, .kh-consult-page .kh-consult-field select, .kh-consult-page .kh-consult-field textarea { width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #CAD6E3; border-radius: 0; background: #FFFFFF; color: #203D60; font: inherit; box-sizing: border-box; }
.kh-consult-page .kh-consult-field textarea { min-height: 170px; resize: vertical; }
.kh-consult-page .kh-consult-field input:focus, .kh-consult-page .kh-consult-field select:focus, .kh-consult-page .kh-consult-field textarea:focus { outline: 2px solid #7EA9D6; outline-offset: 1px; }
.kh-consult-page .kh-consult-consent { margin-top: 24px; padding: 20px; background: #FFFFFF; border: 1px solid #DFE7EF; }
.kh-consult-page .kh-consult-consent p { margin: 10px 0; font-size: 13px; color: #617187; line-height: 1.7; }
.kh-consult-page .kh-consult-consent label { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: #203D60; }
.kh-consult-page .kh-consult-consent input { margin-top: 4px; }
.kh-consult-page .kh-consult-submit { display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; min-height: 56px; margin-top: 22px; border: 0; background: #203D60; color: #FFFFFF; font-size: 17px; font-weight: 700; cursor: pointer; }
.kh-consult-page .kh-consult-submit:hover { background: #315A83; }
.kh-consult-page .kh-consult-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.kh-consult-page .kh-consult-error { padding: 16px; background: #FFF4F3; color: #9A2C20; border: 1px solid #E9B8B3; }
.kh-consult-page .kh-consult-success { padding: 22px; background: #EAF3FA; border-left: 4px solid #203D60; }
@media(max-width: 700px) {
    .kh-consult-page .kh-consult-container { padding: 48px 16px 60px; }
    .kh-consult-page h1 { font-size: 30px; }
    .kh-consult-page .kh-consult-form { padding: 22px 18px; }
    .kh-consult-page .kh-consult-fields { grid-template-columns: 1fr; gap: 16px; }
}

/* 27. 센터 소개 버튼 크기 통일 */
.kh-home .kh-consult-actions .kh-about-link,
.kh-home .kh-consult-actions .kh-consult-btn {
    box-sizing: border-box;
    min-height: 54px;
    min-width: 230px;
    margin: 0;
    padding: 0 20px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 11px;
    font-size: 15px;
    line-height: 1.4;
    border-radius: 5px;
}
@media (max-width: 560px) {
    .kh-home .kh-consult-actions .kh-about-link,
    .kh-home .kh-consult-actions .kh-consult-btn {
        min-width: 0;
        width: 100%;
    }
}


/* ============================================================
   28. 서브페이지 공통 | 메인메뉴 그룹 비주얼 · 경로 · 선택기
   ============================================================ */
.kh-sub-page { color: #203D60; }
.kh-sub-page *, .kh-sub-page *::before, .kh-sub-page *::after { box-sizing: border-box; }
.kh-sub-container { width: min(1240px, calc(100% - 48px)); margin-inline: auto; }
.kh-sub-visual { position: relative; isolation: isolate; height: 350px; display: flex; align-items: center; background-color: #203D60; background-position: center; background-size: cover; }
.kh-sub-visual-center { background-image: url('../images/sub_visual01.jpg'); }
/* 상단 텍스트는 이미지에 포함하지 않고 HTML로 출력 */
.kh-sub-visual-shade { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(9, 32, 62, .82) 0%, rgba(15, 42, 75, .58) 37%, rgba(15, 42, 75, .08) 68%, transparent 100%); }
.kh-sub-visual-inner { display: flex; align-items: center; height: 100%; padding-block: 0; color: #fff; }
.kh-sub-visual-copy { width: min(600px, 100%); text-shadow: 0 2px 12px rgba(5, 22, 43, .18); }
.kh-sub-eyebrow { display: block; margin-bottom: 17px; font-family: Poppins, sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .44em; line-height: 1.4; color: #c9dbea; }
.kh-sub-visual-brand { display: block; margin-bottom: 9px; font-size: 21px; font-weight: 400; letter-spacing: -.035em; line-height: 1.4; color: #f0f4f9; }
.kh-sub-visual h1 { margin: 0; font-size: clamp(42px, 4.1vw, 60px); font-weight: 700; letter-spacing: -.07em; line-height: 1.16; color: #fff; }
.kh-sub-visual-rule { display: block; width: 48px; height: 1px; margin: 22px 0 18px; background: #d7e5f0; }
.kh-sub-visual-description { margin: 0; font-size: 17px; font-weight: 400; letter-spacing: -.03em; line-height: 1.7; color: #e6edf5; word-break: keep-all; }
.kh-sub-breadcrumb { background: #fff; border-bottom: 1px solid #dbe4ec; }
.kh-sub-breadcrumb-inner { min-height: 98px; display: flex; align-items: center; gap: 25px; }
.kh-sub-home { display: inline-flex; align-items: center; gap: 9px; color: #66778b; font-size: 13px; font-weight: 600; text-decoration: none; }
.kh-sub-home:hover { color: #203D60; }
.kh-sub-crumb-arrow { color: #afbfce; font-size: 10px; }
.kh-sub-group { font-size: 15px; font-weight: 500; white-space: nowrap; }
/* 독립형 커스텀 메뉴: 기본 select의 브라우저 팝업/외곽선 미사용 */
.kh-sub-select-wrap { position: relative; min-width: 240px; z-index: 30; }
.kh-sub-select-trigger { display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; height: 50px; padding: 0 17px 0 23px; border: 1px solid #d6e0e9; border-radius: 6px; background: #f9fbfd; color: #203D60; font: inherit; font-size: 16px; font-weight: 700; text-align: left; cursor: pointer; outline: none; box-shadow: 0 3px 14px rgba(32,61,96,.045); transition: background .2s, border-color .2s, box-shadow .2s; }
.kh-sub-select-trigger:hover, .kh-sub-select-wrap.is-open .kh-sub-select-trigger { background: #fff; border-color: #9ab9d4; box-shadow: 0 5px 18px rgba(32,61,96,.09); }
.kh-sub-select-trigger:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(126,169,214,.24); }
.kh-sub-select-icon { display: grid; place-items: center; width: 29px; height: 29px; flex: 0 0 29px; border-radius: 50%; background: #eaf3fa; color: #203D60; font-size: 11px; transition: transform .2s, background .2s; }
.kh-sub-select-wrap.is-open .kh-sub-select-icon { transform: rotate(180deg); background: #d5e8f5; }
.kh-sub-select-panel { position: absolute; left: 0; right: 0; top: calc(100% + 10px); padding: 10px; border: 1px solid #dce5ed; border-radius: 8px; background: #fff; box-shadow: 0 18px 45px rgba(20,48,80,.16); }
.kh-sub-select-panel[hidden] { display: none; }
.kh-sub-select-panel-label { padding: 10px 12px 12px; color: #8ca1b5; font: 600 10px/1.4 Poppins, sans-serif; letter-spacing: .2em; }
.kh-sub-select-option { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 49px; padding: 11px 14px; border-radius: 4px; color: #455b71; font-size: 15px; font-weight: 500; text-decoration: none; transition: background .18s, color .18s; }
.kh-sub-select-option:hover, .kh-sub-select-option:focus-visible { outline: none; background: #eaf3fa; color: #203D60; }
.kh-sub-select-option.is-current { background: #f0f6fb; color: #203D60; font-weight: 700; }
.kh-sub-select-option .fa-check { color: #7ea9d6; font-size: 12px; }
.kh-sub-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.kh-sub-about { padding: 110px 0 120px; background: #fff; }
.kh-sub-section-heading { max-width: 850px; }
.kh-sub-kicker { display: inline-block; margin-bottom: 22px; color: #648bad; font-size: 12px; font-weight: 700; letter-spacing: .2em; }
.kh-sub-section-heading h2 { margin: 0 0 28px; color: #203D60; font-size: clamp(29px, 3.2vw, 43px); line-height: 1.42; letter-spacing: -.055em; }
.kh-sub-section-heading p { margin: 0; font-size: 17px; line-height: 1.95; color: #5a6a7c; word-break: keep-all; }
.kh-sub-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 65px; }
.kh-sub-principles article { position: relative; min-height: 260px; padding: 36px 32px; border: 1px solid #e0e8ef; border-top: 3px solid #7EA9D6; background: #fbfdff; }
.kh-sub-principles article > span { display: block; margin-bottom: 28px; color: #8498ab; font-size: 11px; letter-spacing: .12em; }
.kh-sub-principles article > i { position: absolute; right: 32px; top: 34px; color: #7EA9D6; font-size: 24px; }
.kh-sub-principles h3 { margin: 0 0 15px; font-size: 21px; color: #203D60; }
.kh-sub-principles p { margin: 0; color: #5a6a7c; font-size: 15px; line-height: 1.85; word-break: keep-all; }
.kh-sub-contact { background: #203D60; color: #fff; }
.kh-sub-contact-inner { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding-block: 66px; }
.kh-sub-contact-kicker { color: #b9d5eb; font-size: 12px; letter-spacing: .18em; }
.kh-sub-contact h2 { margin: 12px 0; color: #fff; font-size: clamp(23px, 2.6vw, 32px); line-height: 1.4; letter-spacing: -.04em; }
.kh-sub-contact p { margin: 0; color: #c9d8e7; font-size: 15px; }
.kh-sub-contact-actions { display: flex; flex-direction: column; gap: 12px; min-width: 255px; }
.kh-sub-contact-actions a { min-height: 51px; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 10px 18px; border: 1px solid rgba(255,255,255,.65); border-radius: 3px; color: #fff; font-weight: 600; text-decoration: none; transition: background .2s, color .2s; }
.kh-sub-contact-actions .kh-sub-contact-phone { background: #fff; border-color: #fff; color: #203D60; font-size: 19px; }
.kh-sub-contact-actions a:hover { background: #b9d5eb; color: #203D60; }
@media (max-width: 760px) {
    .kh-sub-container { width: min(100% - 32px, 1240px); }
    .kh-sub-visual { height: 350px; }
    .kh-sub-visual-inner { padding-block: 0; }
    .kh-sub-visual-copy { width: min(100%, 440px); }
    .kh-sub-eyebrow { margin-bottom: 15px; font-size: 10px; letter-spacing: .32em; }
    .kh-sub-visual-brand { font-size: 15px; }
    .kh-sub-visual h1 { font-size: 44px; }
    .kh-sub-visual-rule { margin: 19px 0 16px; }
    .kh-sub-visual-description { font-size: 14px; }
    .kh-sub-visual-shade { background: linear-gradient(90deg, rgba(9, 32, 62, .88), rgba(9, 32, 62, .44) 76%, rgba(9, 32, 62, .2)); }
    .kh-sub-breadcrumb-inner { gap: 10px; min-height: 84px; }
    .kh-sub-home span { display: none; }
    .kh-sub-group { font-size: 13px; }
    .kh-sub-select-wrap { min-width: 0; flex: 1; }
    .kh-sub-select-trigger { height: 50px; padding-left: 15px; font-size: 14px; }
    .kh-sub-select-option { font-size: 14px; }
    .kh-sub-about { padding: 65px 0 75px; }
    .kh-sub-section-heading p { font-size: 15px; }
    .kh-sub-principles { grid-template-columns: 1fr; gap: 15px; margin-top: 40px; }
    .kh-sub-principles article { min-height: 0; }
    .kh-sub-contact-inner { flex-direction: column; align-items: stretch; padding-block: 46px; }
    .kh-sub-contact-actions { min-width: 0; }
}


/* ============================================================
   29. 센터소개 본문 확장 | 메인과 동일한 섹션 간격 80px/50px
   ============================================================ */
.kh-center-intro .kh-center-section { padding: 80px 0; }
.kh-center-intro .kh-center-section h2,
.kh-center-intro .kh-center-section h3 { word-break: keep-all; }
.kh-center-eyebrow { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 26px; color: #648bad; font: 600 12px/1.5 Poppins, 'Noto Sans KR', sans-serif; letter-spacing: .17em; }
.kh-center-eyebrow > span { color: #a5b9ca; font-weight: 400; }
.kh-center-intro-grid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 48px; align-items: end; }
.kh-center-intro-copy h2, .kh-center-section-heading h2 { margin: 0; color: #203D60; font-size: clamp(30px, 3vw, 40px); line-height: 1.48; letter-spacing: -.055em; font-weight: 500; }
.kh-center-intro-copy h2 strong, .kh-center-section-heading h2 strong { font-weight: 750; }
.kh-center-intro-copy .kh-center-lead { margin-top: 32px; color: #203D60; font-size: 19px; font-weight: 600; }
.kh-center-intro-copy p { margin: 19px 0 0; color: #627184; font-size: 16px; line-height: 1.95; word-break: keep-all; }
.kh-center-intro-action { margin-top: 36px; }
.kh-center-intro-action-label { display: block; margin-bottom: 12px; color: #7d91a6; font-size: 13px; font-weight: 500; letter-spacing: -.025em; }
.kh-center-intro-consult { display: inline-flex; align-items: center; gap: 13px; min-width: 228px; min-height: 54px; padding: 9px 18px 9px 10px; background: #203D60; border: 1px solid #203D60; border-radius: 3px; color: #fff; font-size: 16px; font-weight: 700; text-decoration: none; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.kh-center-intro-consult:hover { background: #315d89; border-color: #315d89; color: #fff; transform: translateY(-2px); }
.kh-center-intro-consult:focus-visible { outline: 2px solid #7EA9D6; outline-offset: 3px; }
.kh-center-intro-consult-icon { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 2px; background: rgba(255,255,255,.13); color: #d6e7f5; font-size: 17px; }
.kh-center-intro-consult-arrow { margin-left: auto; color: #d6e7f5; font-size: 13px; }
.kh-center-intro-photo { position: relative; margin: 0; min-width: 0; }
.kh-center-intro-photo img { display: block; width: 100%; height: 460px; object-fit: cover; object-position: 72% center; border-radius: 2px; }

.kh-center-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 42px; }
.kh-center-section-heading > p { margin: 0 0 4px; color: #647588; font-size: 16px; line-height: 1.9; text-align: right; word-break: keep-all; }
.kh-center-services { background: #fff; }
/* 04 업무처리절차: 아이스블루 배경 + 한 톤 진한 카드, 압축형 4열 */
.kh-center-approach { background: linear-gradient(130deg, #eaf3fa 0%, #e2eff8 100%); }
.kh-center-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.kh-center-steps li { position: relative; isolation: isolate; overflow: hidden; min-height: 220px; padding: 24px 22px 21px; background: linear-gradient(145deg,#d4e6f3,#c8deee); border: 1px solid #b7d1e5; border-top: 3px solid #658eb1; border-radius: 3px; box-shadow: 0 8px 22px rgba(32,61,96,.045); }
.kh-center-steps li:nth-child(even) { background: linear-gradient(145deg,#d0e3f1,#bfd8e9); }
.kh-center-steps li::before { content: ''; position: absolute; z-index: 0; width: 145px; height: 145px; right: -52px; top: -65px; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; box-shadow: 0 0 0 20px rgba(255,255,255,.08), 0 0 0 44px rgba(255,255,255,.07); pointer-events: none; }
.kh-center-steps li::after { content: ''; position: absolute; z-index: 0; width: 65px; height: 65px; right: 15px; bottom: 14px; border-right: 1px solid rgba(57,107,149,.22); border-bottom: 1px solid rgba(57,107,149,.22); transform: rotate(-15deg); pointer-events: none; }
.kh-center-steps li > * { position: relative; z-index: 1; }
.kh-center-step-num { display: block; margin-bottom: 18px; color: #52799a; font: 600 11px/1.5 Poppins,sans-serif; letter-spacing: .13em; }
.kh-center-steps li > i { display: grid; place-items: center; width: 45px; height: 45px; margin-bottom: 14px; color: #2e5b7e; font-size: 21px; border: 1px solid rgba(67,113,150,.3); border-radius: 50%; background: rgba(255,255,255,.48); }
.kh-center-steps h3 { margin: 0 0 8px; color: #203D60; font-size: 20px; font-weight: 700; letter-spacing: -.04em; }
.kh-center-steps h3::after { content: ''; display: block; width: 28px; height: 1px; margin-top: 10px; background: #719ab9; }
.kh-center-steps p { margin: 0; color: #47637c; font-size: 13px; line-height: 1.7; word-break: keep-all; }
.kh-center-approach-note { margin: 20px 0 0; color: #7d8fa2; font-size: 13px; line-height: 1.7; }
.kh-center-approach-link { margin-top: 30px; }
.kh-center-approach-link a { display: inline-flex; align-items: center; gap: 14px; padding: 14px 0; border-bottom: 1px solid #203D60; color: #203D60; font-size: 15px; font-weight: 700; text-decoration: none; }
.kh-center-approach-link a:hover { color: #648bad; border-color: #648bad; }
.kh-center-closing { text-align: center; background: #fff; }
.kh-center-closing h2 { margin: 0; color: #203D60; font-size: clamp(28px,3vw,40px); font-weight: 500; line-height: 1.5; letter-spacing: -.055em; }
.kh-center-closing h2 strong { font-weight: 750; }
.kh-center-closing p { margin: 28px 0 0; color: #65768a; font-size: 16px; line-height: 1.95; word-break: keep-all; }
@media (max-width: 900px) {
    .kh-center-intro-grid { gap: 35px; }
    .kh-center-intro-photo img { height: 400px; }
    .kh-center-section-heading { align-items: start; flex-direction: column; }
    .kh-center-section-heading > p { text-align: left; }
    .kh-center-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .kh-center-intro .kh-center-section { padding: 50px 0; }
    .kh-center-intro-grid { grid-template-columns: 1fr; gap: 28px; }
    .kh-center-intro-photo img { height: 270px; }
    .kh-center-intro-copy .kh-center-lead { font-size: 17px; }
    .kh-center-intro-copy p { font-size: 15px; }
    .kh-center-section-heading { gap: 17px; margin-bottom: 30px; }
    .kh-center-section-heading > p { font-size: 14px; }
    .kh-center-service-item { grid-template-columns: 24px 42px minmax(0,1fr) 14px; gap: 10px; min-height: 103px; padding: 16px 2px; }
    .kh-center-service-icon { width: 42px; height: 42px; font-size: 17px; }
    .kh-center-service-copy strong { font-size: 18px; }
    .kh-center-service-copy small { font-size: 13px; }
    .kh-center-steps { grid-template-columns: 1fr; gap: 11px; }
    .kh-center-steps li { min-height: 0; }
    .kh-center-step-num { margin-bottom: 10px; }
    .kh-center-steps li { padding: 18px; }
    .kh-center-steps li > i { margin-bottom: 10px; }
    .kh-center-closing p { font-size: 14px; }
    .kh-center-closing p br { display: none; }
}

/* ============================================================
   30. 센터소개 두 번째 섹션 | 컴팩트 프리미엄 원칙
   ============================================================ */
.kh-center-intro .kh-center-values {
    background:
        radial-gradient(ellipse 44% 80% at 96% 0%, rgba(126,169,214,.18), transparent 70%),
        linear-gradient(115deg, #f6fafd 0%, #eaf3fa 100%);
}
.kh-center-values-heading { display: flex; justify-content: space-between; align-items: end; gap: 35px; margin-bottom: 30px; }
.kh-center-values-heading .kh-center-eyebrow { margin-bottom: 13px; }
.kh-center-values-heading h2 { margin: 0; font-size: clamp(28px,2.8vw,38px); line-height: 1.4; font-weight: 500; color: #203D60; letter-spacing: -.055em; word-break: keep-all; }
.kh-center-values-heading h2 strong { color: #49769e; font-weight: 750; }
.kh-center-values-heading > p { max-width: 500px; margin: 0 0 3px; color: #61758a; font-size: 15px; line-height: 1.75; word-break: keep-all; }
.kh-center-values-list { border-top: 2px solid #203D60; }
.kh-center-values-row { display: grid; grid-template-columns: 120px 54px minmax(0,1fr) 68px; align-items: center; gap: 22px; min-height: 126px; padding: 21px 22px; border-bottom: 1px solid #cbdde9; background: rgba(255,255,255,.38); transition: background .2s; }
.kh-center-values-row:nth-child(2) { background: rgba(255,255,255,.68); }
.kh-center-values-row:hover { background: #fff; }
.kh-center-values-index { display: flex; flex-direction: column; gap: 4px; color: #547ea4; font: 500 28px/1.1 Poppins, sans-serif; }
.kh-center-values-index small { color: #91a9be; font: 600 10px/1.5 Poppins, sans-serif; letter-spacing: .08em; }
.kh-center-values-icon { display: grid; place-items: center; width: 50px; height: 50px; border: 1px solid #c2d6e7; border-radius: 50%; color: #4d7fa8; background: rgba(255,255,255,.65); font-size: 20px; }
.kh-center-values-copy h3 { margin: 0 0 7px; font-size: 20px; font-weight: 700; color: #203D60; letter-spacing: -.04em; }
.kh-center-values-copy p { margin: 0; font-size: 15px; line-height: 1.65; color: #617387; word-break: keep-all; }
.kh-center-values-keyword { color: #7b99b2; font-size: 13px; font-weight: 600; text-align: right; white-space: nowrap; }
@media (max-width: 900px) {
    .kh-center-values-heading { align-items: start; flex-direction: column; gap: 12px; }
    .kh-center-values-heading > p { max-width: none; }
    .kh-center-values-row { grid-template-columns: 85px 50px minmax(0,1fr); gap: 15px; padding-inline: 15px; }
    .kh-center-values-keyword { display: none; }
}
@media (max-width: 760px) {
    .kh-center-values-heading { margin-bottom: 24px; }
    .kh-center-values-heading > p { font-size: 14px; }
    .kh-center-values-heading > p br { display: none; }
    .kh-center-values-row { grid-template-columns: 44px minmax(0,1fr); gap: 10px 14px; min-height: 0; padding: 19px 5px; }
    .kh-center-values-index { grid-column: 1; grid-row: 1; font-size: 24px; }
    .kh-center-values-index small { display: none; }
    .kh-center-values-icon { grid-column: 1; grid-row: 2; width: 38px; height: 38px; font-size: 17px; }
    .kh-center-values-copy { grid-column: 2; grid-row: 1 / span 2; }
    .kh-center-values-copy h3 { font-size: 18px; }
    .kh-center-values-copy p { font-size: 14px; line-height: 1.7; }
}

/* ============================================================
   31. 센터소개 세 번째 섹션 | 프리미엄 컴팩트 카드 4열
   ============================================================ */
.kh-center-intro .kh-center-services { background: #fff; }
.kh-center-services-heading { display: flex; justify-content: space-between; align-items: end; gap: 26px; margin-bottom: 28px; }
.kh-center-services-heading .kh-center-eyebrow { margin-bottom: 12px; }
.kh-center-services-heading h2 { margin: 0; color: #203D60; font-size: clamp(26px,2.6vw,34px); font-weight: 500; line-height: 1.45; letter-spacing: -.055em; word-break: keep-all; }
.kh-center-services-heading h2 strong { font-weight: 750; }
.kh-center-services-heading > p { max-width: 350px; margin: 0 0 3px; color: #647588; font-size: 14px; line-height: 1.75; word-break: keep-all; }
.kh-center-service-cards { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.kh-center-service-card { position: relative; isolation: isolate; display: flex; flex-direction: column; min-height: 256px; padding: 22px 22px 19px; overflow: hidden; border: 1px solid rgba(255,255,255,.09); border-radius: 4px; background: linear-gradient(145deg,#284e75 0%,#203d60 67%,#172f4c 100%); color: #fff; text-decoration: none; transition: transform .2s, box-shadow .2s; }
.kh-center-service-card:nth-child(even) { background: linear-gradient(145deg,#355f84 0%,#274a6c 58%,#1b3552 100%); }
.kh-center-service-card::before {
    content: '';
    position: absolute;
    z-index: 0;
    width: 228px;
    height: 228px;
    right: -104px;
    top: 38px;
    border: 1px solid rgba(185,213,235,.19);
    border-radius: 50%;
    box-shadow: 0 0 0 27px rgba(185,213,235,.035), 0 0 0 55px rgba(185,213,235,.028);
    pointer-events: none;
}
.kh-center-service-card::after {
    content: '';
    position: absolute;
    z-index: 0;
    right: 18px;
    bottom: 24px;
    width: 78px;
    height: 78px;
    border-right: 1px solid rgba(185,213,235,.2);
    border-bottom: 1px solid rgba(185,213,235,.2);
    transform: rotate(-15deg);
    pointer-events: none;
}
.kh-center-service-card:hover { transform: translateY(-4px); box-shadow: 0 14px 26px rgba(32,61,96,.18); color: #fff; }
.kh-center-service-card:focus-visible { outline: 2px solid #7ea9d6; outline-offset: 3px; }
.kh-center-service-card-top { display: flex; justify-content: space-between; gap: 8px; align-items: center; color: #b9d5eb; font: 500 10px/1.4 Poppins,sans-serif; letter-spacing: .1em; }
.kh-center-service-card-top i { font-size: 12px; }
.kh-center-service-card-icon { margin-top: 21px; color: #b9d5eb; font-size: 29px; }
.kh-center-service-card-icon::after {
    content: '';
    display: block;
    width: 35px;
    height: 1px;
    margin-top: 13px;
    background: linear-gradient(90deg, rgba(185,213,235,.75), rgba(185,213,235,0));
}
.kh-center-service-card h3 { margin: 15px 0 8px; color: #fff; font-size: 23px; font-weight: 700; letter-spacing: -.05em; }
.kh-center-service-card p { margin: 0; color: #e1eaf3; font-size: 13px; line-height: 1.65; word-break: keep-all; }
.kh-center-service-card-en { display: block; margin-top: auto; padding-top: 18px; color: #a8c6df; font: 500 10px/1.4 Poppins,sans-serif; letter-spacing: .075em; }
@media (max-width: 900px) {
    .kh-center-services-heading { align-items: start; flex-direction: column; gap: 8px; }
    .kh-center-services-heading > p { max-width: none; }
    .kh-center-service-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .kh-center-services-heading { margin-bottom: 22px; }
    .kh-center-service-cards { gap: 10px; }
    .kh-center-service-card { min-height: 230px; padding: 18px 15px 16px; }
    .kh-center-service-card-icon { font-size: 24px; margin-top: 18px; }
    .kh-center-service-card h3 { font-size: 20px; }
    .kh-center-service-card p { font-size: 12px; }
    .kh-center-service-card p br { display: none; }
    .kh-center-service-card-en { font-size: 9px; letter-spacing: .03em; }
}

/* 장식 레이어가 카드 배경 뒤로 숨지 않도록 콘텐츠를 위로 배치 */
.kh-center-service-card > * { position: relative; z-index: 1; }
.kh-center-service-card::before,
.kh-center-service-card::after { opacity: 1; }

/* 04 섹션 제목: PC 한 줄 / 모바일 두 줄 */
@media (min-width: 901px) {
    .kh-center-approach #kh-center-approach-title { white-space: nowrap; font-size: clamp(28px, 2.65vw, 36px); }
    .kh-center-approach .kh-approach-mobile-break { display: none; }
}
@media (max-width: 900px) {
    .kh-center-approach .kh-approach-mobile-break { display: block; }
}

/* ============================================================
   33. 센터소개 CONTACT | 두 번째 컬러톤 Soft Blue
   기존 공통 상담 섹션에는 영향을 주지 않도록 센터소개에 한정
   ============================================================ */
.kh-sub-page .kh-sub-contact {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(118deg, #7ea9d6 0%, #91b9df 55%, #a9cbe6 100%);
    color: #203d60;
}
.kh-sub-page .kh-sub-contact::before {
    content: '';
    position: absolute;
    z-index: 0;
    top: -165px;
    right: -95px;
    width: 460px;
    height: 460px;
    border: 1px solid rgba(255,255,255,.34);
    border-radius: 50%;
    box-shadow: 0 0 0 46px rgba(255,255,255,.055), 0 0 0 100px rgba(255,255,255,.04);
    pointer-events: none;
}
.kh-sub-page .kh-sub-contact::after {
    content: '';
    position: absolute;
    z-index: 0;
    left: -75px;
    bottom: -110px;
    width: 270px;
    height: 270px;
    border: 1px solid rgba(255,255,255,.24);
    transform: rotate(27deg);
    pointer-events: none;
}
.kh-sub-page .kh-sub-contact-inner { position: relative; z-index: 1; }
.kh-sub-page .kh-sub-contact-kicker { color: #244b70; font-weight: 700; letter-spacing: .19em; }
.kh-sub-page .kh-sub-contact h2 { color: #163a5d; font-weight: 750; }
.kh-sub-page .kh-sub-contact p { color: #2d5578; }
.kh-sub-page .kh-sub-contact-actions a { border-color: rgba(32,61,96,.46); color: #203d60; background: rgba(255,255,255,.14); }
.kh-sub-page .kh-sub-contact-actions .kh-sub-contact-phone { color: #203d60; background: #fff; border-color: #fff; box-shadow: 0 8px 20px rgba(32,61,96,.08); }
.kh-sub-page .kh-sub-contact-actions a:hover { background: #203d60; border-color: #203d60; color: #fff; }
@media (max-width: 760px) {
    .kh-sub-page .kh-sub-contact::before { width: 300px; height: 300px; top: -125px; right: -170px; }
    .kh-sub-page .kh-sub-contact::after { width: 150px; height: 150px; left: -100px; bottom: -75px; }
}


/* ============================================================
   34. 센터소개 > 변호사소개
   ============================================================ */
.kh-center-lawyers .kh-center-section { padding: 80px 0; }
.kh-lawyers-intro { background: #fff; }
.kh-lawyers-intro-grid { display:grid; grid-template-columns: 1.06fr 1fr; gap:70px; align-items:center; }
.kh-lawyers-intro h2,.kh-lawyers-section-head h2 { margin: 15px 0 0; color:#203d60; font-size:clamp(29px,3vw,39px); line-height:1.45; letter-spacing:-.05em; font-weight:500; word-break:keep-all; }
.kh-lawyers-intro h2 strong,.kh-lawyers-section-head h2 strong { color:#49769e; font-weight:750; }
.kh-lawyers-intro-text { border-left:2px solid #a7c9e2; padding-left:30px; }
.kh-lawyers-intro-text p { color:#526a7e; font-size:16px; line-height:1.9; margin:0 0 13px; word-break:keep-all; }
.kh-lawyers-intro-text p:last-child { margin-bottom:0; }
.kh-lawyers-team { background:linear-gradient(135deg,#f3f8fc,#eaf3fa); }
.kh-lawyers-section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:32px; }
.kh-lawyers-section-head>p { color:#71869a; font-size:13px; margin:0 0 4px; }
.kh-lawyers-list { display:grid; gap:22px; }
.kh-lawyer-profile { display:grid; grid-template-columns: 255px minmax(0,1fr); min-height:286px; background:#fff; border:1px solid #d3e1ed; box-shadow:0 10px 32px rgba(32,61,96,.045); overflow:hidden; }
.kh-lawyer-photo { min-height:286px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; background:linear-gradient(145deg,#dceaf4,#afc9de); position:relative; overflow:hidden; }
.kh-lawyer-photo::after { content:''; position:absolute; width:210px; height:210px; border:1px solid rgba(255,255,255,.5); border-radius:50%; top:-90px; right:-100px; box-shadow:0 0 0 42px rgba(255,255,255,.07); }
.kh-lawyer-photo i { color:#6689a5; font-size:56px; opacity:.65; }
.kh-lawyer-photo span { font:600 11px Poppins,sans-serif; letter-spacing:.18em; color:#7795ad; }
.kh-lawyer-details { padding:32px 42px; }
.kh-lawyer-label { font:600 11px Poppins,sans-serif; letter-spacing:.12em; color:#7799b6; }
.kh-lawyer-label em { font-style:normal; margin-left:10px; }
.kh-lawyer-details h3 { font-size:32px; color:#203d60; margin:10px 0 16px; letter-spacing:-.045em; }
.kh-lawyer-details h3 small { font-size:15px; font-weight:500; color:#69849a; margin-left:10px; }
.kh-lawyer-rule { width:45px; height:2px; background:#7ea9d6; margin-bottom:18px; }
.kh-lawyer-message { color:#536c81; font-size:15px; line-height:1.8; margin:0 0 18px; word-break:keep-all; }
.kh-lawyer-fields { display:flex; flex-wrap:wrap; gap:10px 22px; color:#617e95; font-size:13px; }
.kh-lawyer-fields i { color:#7ea9d6; margin-right:5px; }
.kh-lawyers-disclaimer { color:#70869b; font-size:12px; line-height:1.7; margin:18px 0 0; }
.kh-lawyers-standards { background:#fff; }
.kh-lawyers-standards-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.kh-lawyers-standards-grid>div { position:relative; overflow:hidden; padding:28px 28px 26px; background:#eaf3fa; border-top:3px solid #7ea9d6; min-height:190px; }
.kh-lawyers-standards-grid>div::after { content:''; position:absolute; width:130px; height:130px; border:1px solid rgba(126,169,214,.3); border-radius:50%; top:-70px; right:-40px; }
.kh-lawyers-standards-grid span { font:600 12px Poppins,sans-serif; color:#6e95b4; }
.kh-lawyers-standards-grid i { font-size:23px; color:#49769e; margin-left:15px; }
.kh-lawyers-standards-grid h3 { margin:22px 0 8px; color:#203d60; font-size:20px; }
.kh-lawyers-standards-grid p { color:#5d7387; font-size:14px; line-height:1.7; margin:0; word-break:keep-all; }
@media(max-width:900px) {
 .kh-lawyers-intro-grid { grid-template-columns:1fr; gap:25px; }
 .kh-lawyers-section-head { align-items:start; flex-direction:column; gap:10px; }
}
@media(max-width:760px) {
 .kh-center-lawyers .kh-center-section { padding:50px 0; }
 .kh-lawyers-intro-text { padding-left:18px; }
 .kh-lawyers-intro-text p { font-size:14px; }
 .kh-lawyer-profile { grid-template-columns:1fr; }
 .kh-lawyer-photo { min-height:205px; }
 .kh-lawyer-details { padding:25px 22px; }
 .kh-lawyer-details h3 { font-size:28px; }
 .kh-lawyer-message br { display:none; }
 .kh-lawyers-standards-grid { grid-template-columns:1fr; gap:12px; }
 .kh-lawyers-standards-grid>div { min-height:0; padding:22px; }
}

/* 35. 변호사 소개 8인 프로필: 공개 프로필 기반 */
.kh-center-lawyers .kh-lawyers-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns: 190px minmax(0,1fr); min-height:285px; }
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-photo { min-height:285px; background:linear-gradient(145deg,#dceaf4,#aec9de); }
.kh-center-lawyers .kh-lawyer-photo-ready img { display:block; width:100%; height:100%; min-height:285px; object-fit:cover; object-position:center top; position:absolute; inset:0; z-index:1; }
.kh-center-lawyers .kh-lawyer-photo-placeholder { display:none; flex-direction:column; align-items:center; gap:12px; color:#6b8ca7; font:600 10px Poppins,sans-serif; letter-spacing:.14em; }
.kh-center-lawyers .kh-lawyer-photo-missing .kh-lawyer-photo-placeholder { display:flex; }
.kh-center-lawyers .kh-lawyer-photo-placeholder i { font-size:43px; }
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-details { padding:25px 25px 20px; min-width:0; }
.kh-center-lawyers .kh-lawyer-directory-item h3 { font-size:27px; margin:8px 0 4px; }
.kh-center-lawyers .kh-lawyer-specialty { font-size:13px; color:#507c9e; font-weight:600; margin:0 0 12px; word-break:keep-all; }
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-rule { margin-bottom:12px; }
.kh-center-lawyers .kh-lawyer-careers summary { cursor:pointer; list-style:none; color:#203d60; font-size:13px; font-weight:700; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:7px 0; }
.kh-center-lawyers .kh-lawyer-careers summary::-webkit-details-marker { display:none; }
.kh-center-lawyers .kh-lawyer-careers summary i { color:#779ab5; transition:transform .2s; }
.kh-center-lawyers .kh-lawyer-careers[open] summary i { transform:rotate(180deg); }
.kh-center-lawyers .kh-lawyer-careers ul { padding:9px 0 0 15px; margin:0; border-top:1px solid #dbe8f1; }
.kh-center-lawyers .kh-lawyer-careers li { color:#60788c; font-size:12px; line-height:1.65; padding:2px 0; word-break:keep-all; }
.kh-center-lawyers .kh-lawyers-section-head p strong { color:#547ea4; font:600 11px Poppins,sans-serif; margin-left:8px; white-space:nowrap; }
@media(max-width:1100px) { .kh-center-lawyers .kh-lawyers-directory { grid-template-columns:1fr; } .kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns:225px minmax(0,1fr); } }
@media(max-width:760px) { .kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns:135px minmax(0,1fr); min-height:225px; } .kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-photo,.kh-center-lawyers .kh-lawyer-photo-ready img { min-height:225px; } .kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-details { padding:17px 15px; } .kh-center-lawyers .kh-lawyer-directory-item h3 { font-size:23px; } .kh-center-lawyers .kh-lawyer-specialty { font-size:12px; } .kh-center-lawyers .kh-lawyer-careers li { font-size:11px; } }
@media(max-width:430px) { .kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns:110px minmax(0,1fr); } .kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-photo,.kh-center-lawyers .kh-lawyer-photo-ready img { min-height:225px; } .kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-details { padding:15px 12px; } }

/* 36. 변호사 프로필 v23: 좌측 사진/이름/전문분야, 우측 학력·경력 */
.kh-center-lawyers .kh-lawyers-directory { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.kh-center-lawyers .kh-lawyer-directory-item { display:grid; grid-template-columns:minmax(170px,34%) minmax(0,1fr); min-height:0; background:#fff; border:1px solid #d0dfeb; }
.kh-center-lawyers .kh-lawyer-identity { display:flex; flex-direction:column; min-width:0; background:linear-gradient(155deg,#edf5fb,#dceaf4); }
.kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo { height:260px; min-height:260px; flex:0 0 260px; }
.kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo img { display:block; width:100%; height:100%; min-height:0; object-fit:cover; object-position:center 15%; position:absolute; inset:0; z-index:1; }
.kh-center-lawyers .kh-lawyer-identity-caption { padding:18px 18px 20px; border-top:3px solid #7ea9d6; }
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-label { display:block; font-size:11px; color:#6c91ae; }
.kh-center-lawyers .kh-lawyer-identity-caption h3 { margin:8px 0 7px; color:#203d60; font-size:29px; letter-spacing:-.045em; }
.kh-center-lawyers .kh-lawyer-identity-caption h3 small { color:#627e94; font-size:15px; margin-left:8px; }
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-specialty { margin:0; font-size:16px; color:#416e93; line-height:1.55; }
.kh-center-lawyers .kh-lawyer-career-panel { padding:26px 23px 26px; background:radial-gradient(circle at 100% 0%,rgba(126,169,214,.11),transparent 36%),#fff; }
.kh-center-lawyers .kh-lawyer-career-kicker { font:600 12px Poppins,sans-serif; letter-spacing:.13em; color:#789ab5; margin-bottom:13px; }
.kh-center-lawyers .kh-lawyer-careers summary { cursor:default; pointer-events:none; font-size:20px; color:#203d60; padding:0 0 14px; border-bottom:2px solid #d5e5f0; }
.kh-center-lawyers .kh-lawyer-careers summary i { display:none; }
.kh-center-lawyers .kh-lawyer-careers ul { padding:15px 0 0 20px; margin:0; border:0; list-style:disc; }
.kh-center-lawyers .kh-lawyer-careers li { font-size:16px; color:#465f75; line-height:1.75; padding:3px 0; }
.kh-center-lawyers .kh-lawyer-careers li::marker { color:#7ea9d6; }
@media(max-width:1050px) {
 .kh-center-lawyers .kh-lawyers-directory { grid-template-columns:1fr; }
 .kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns:minmax(210px,31%) minmax(0,1fr); }
 .kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo { height:285px; min-height:285px; flex-basis:285px; }
 .kh-center-lawyers .kh-lawyer-career-panel { padding:28px; }
}
@media(max-width:760px) {
 .kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns:1fr; }
 .kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo { height:330px; min-height:330px; flex-basis:330px; }
 .kh-center-lawyers .kh-lawyer-identity-caption { padding:19px 22px; }
 .kh-center-lawyers .kh-lawyer-career-panel { padding:24px 22px; }
 .kh-center-lawyers .kh-lawyer-careers li { font-size:16px; }
}

/* ============================================================
   37. 변호사소개 v25: 실제 사진, 2열 카드, 내부 좌40/우60, 명확한 대비
   ============================================================ */
@media (min-width: 1101px) {
  .kh-center-lawyers .kh-lawyers-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
}
.kh-center-lawyers .kh-lawyer-directory-item {
  display:grid;
  grid-template-columns:minmax(0,40%) minmax(0,60%);
  align-items:stretch;
  min-height:0;
  background:#fff;
  border:1px solid #bfd0df;
  border-top:3px solid #668eaf;
  box-shadow:0 9px 26px rgba(24,51,78,.08);
  overflow:hidden;
}
.kh-center-lawyers .kh-lawyer-identity {
  background:#e4ebf1;
  min-width:0;
}
.kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo {
  position:relative;
  height:330px;
  min-height:330px;
  flex:0 0 330px;
  background:#d2dce6;
}
.kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  object-position:center 20%;
  z-index:2;
}
.kh-center-lawyers .kh-lawyer-identity-caption {
  padding:20px 22px 22px;
  background:#dfe9f2;
  border-top:3px solid #7198b8;
}
.kh-center-lawyers .kh-lawyer-identity-caption h3 { font-size:27px; }
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-specialty { font-size:15px; }
.kh-center-lawyers .kh-lawyer-career-panel {
  min-width:0;
  padding:25px 18px 24px;
  background:#fff;
}
.kh-center-lawyers .kh-lawyer-career-kicker { font-size:10px; letter-spacing:.05em; }
.kh-center-lawyers .kh-lawyer-careers summary { font-size:19px; padding-bottom:13px; }
.kh-center-lawyers .kh-lawyer-careers ul { padding:15px 0 0 19px; }
.kh-center-lawyers .kh-lawyer-careers li {
  font-size:16px;
  line-height:1.65;
  overflow-wrap:anywhere;
}
@media (min-width:761px) and (max-width:1100px) {
 .kh-center-lawyers .kh-lawyers-directory { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns:40% 60%; }
 .kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo { height:290px; min-height:290px; flex-basis:290px; }
}
@media (max-width:760px) {
 .kh-center-lawyers .kh-lawyers-directory { grid-template-columns:1fr; }
 .kh-center-lawyers .kh-lawyer-directory-item { grid-template-columns:40% 60%; }
 .kh-center-lawyers .kh-lawyer-identity .kh-lawyer-photo { height:280px; min-height:280px; flex-basis:280px; }
 .kh-center-lawyers .kh-lawyer-identity-caption { padding:16px 13px; }
 .kh-center-lawyers .kh-lawyer-career-panel { padding:17px 12px; }
 .kh-center-lawyers .kh-lawyer-careers li { font-size:16px; }
}


/* 38. 변호사 프로필 v27: 사진 하단 정보 영역 프리미엄 딥 네이비 */
.kh-center-lawyers .kh-lawyer-identity-caption {
    background: linear-gradient(130deg, #203D60 0%, #2D5577 100%);
    border-top: 3px solid #A8C5DC;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-label {
    color: #B9D5EB;
}
.kh-center-lawyers .kh-lawyer-identity-caption h3 {
    color: #FFFFFF;
}
.kh-center-lawyers .kh-lawyer-identity-caption h3 small {
    color: #D4E4F0;
}
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-specialty {
    color: #E4EFF8;
}


/* 39. 변호사 프로필 v30: 사진 가로:세로 1:1, 사진/타이틀 경계선 제거 */
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-identity .kh-lawyer-photo,
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-photo-ready {
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 1 / 1;
    flex: 0 0 auto;
    overflow: hidden;
}
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-identity .kh-lawyer-photo img,
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-photo-ready img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center 20%;
}
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-identity-caption {
    border-top: 0;
    box-shadow: none;
}

/* 40. 변호사소개 v31: 1:1 이미지 유지 + CONTACT 소프트블루 타이틀 */
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-identity-caption {
    background: #7EA9D6;
    border-top: 0;
    box-shadow: none;
}
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-label {
    color: #254765;
}
.kh-center-lawyers .kh-lawyer-identity-caption h3 {
    color: #163A5D;
}
.kh-center-lawyers .kh-lawyer-identity-caption h3 small {
    color: #244B70;
}
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-specialty {
    color: #244B70;
}


/* 41. 변호사소개 v32: 다크 사진과 조화되는 웜 슬레이트 / 좌43 우57 */
.kh-center-lawyers .kh-lawyer-directory-item {
    grid-template-columns: minmax(0, 43%) minmax(0, 57%);
}
.kh-center-lawyers .kh-lawyer-identity {
    background: #465463;
}
.kh-center-lawyers .kh-lawyer-directory-item .kh-lawyer-identity-caption {
    background: #465463;
    border: 0;
    box-shadow: none;
}
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-label {
    color: #D6E0E8;
}
.kh-center-lawyers .kh-lawyer-identity-caption h3 {
    color: #FFFFFF;
}
.kh-center-lawyers .kh-lawyer-identity-caption h3 small {
    color: #E1E9EF;
}
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-specialty {
    color: #E8EEF3;
}
@media (min-width: 761px) and (max-width: 1100px) {
    .kh-center-lawyers .kh-lawyer-directory-item {
        grid-template-columns: minmax(0, 43%) minmax(0, 57%);
    }
}
@media (max-width: 760px) {
    .kh-center-lawyers .kh-lawyer-directory-item {
        grid-template-columns: minmax(0, 43%) minmax(0, 57%);
    }
}

/* 42. 변호사 프로필 영문 직책/번호 자간 0px */
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-label,
.kh-center-lawyers .kh-lawyer-identity-caption .kh-lawyer-label em {
    letter-spacing: 0px;
}


/* ============================================================
   40. 센터소개 > 업무처리절차 (v34) | 통합 CSS
   ============================================================ */
.kh-center-process .kh-center-section {padding:80px 0;}
.kh-center-process .kh-work-intro {background:#fff;}
.kh-work-intro-grid {display:grid;grid-template-columns:1.1fr .9fr;gap:65px;align-items:center;}
.kh-work-intro-heading h2,.kh-work-section-head h2 {margin:17px 0 0;font-size:clamp(29px,3vw,40px);line-height:1.5;letter-spacing:-.045em;font-weight:500;color:#203D60;word-break:keep-all;}
.kh-work-intro-heading h2 strong,.kh-work-section-head h2 strong {font-weight:750;}
.kh-work-intro-copy {border-left:2px solid #B9D5EB;padding-left:32px;}
.kh-work-intro-copy p {margin:0;color:#52677D;font-size:16px;line-height:1.95;word-break:keep-all;}
.kh-work-intro-copy p+p {margin-top:15px;}
.kh-work-flow {background:#EAF3FA;}
.kh-work-section-head {display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:37px;}
.kh-work-section-head>p {margin:0 0 4px;color:#65778B;font-size:16px;line-height:1.7;word-break:keep-all;}
.kh-work-steps {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:none;}
.kh-work-step {position:relative;min-width:0;min-height:300px;padding:30px 28px 27px;background:#fff;border:1px solid #D8E5EF;box-shadow:0 8px 24px rgba(32,61,96,.045);transition:transform .2s ease,box-shadow .2s ease;}
.kh-work-step:hover {transform:translateY(-4px);box-shadow:0 12px 30px rgba(32,61,96,.10);}
.kh-work-step-no {font-size:12px;letter-spacing:.08em;font-weight:700;color:#7995AE;}
.kh-work-step-no strong {font-size:26px;letter-spacing:0;margin-left:6px;color:#203D60;}
.kh-work-step-icon {width:62px;height:62px;display:flex;align-items:center;justify-content:center;margin:21px 0 20px;border-radius:50%;background:#EAF3FA;color:#517DA5;font-size:24px;}
.kh-work-step h3 {margin:0 0 11px;color:#203D60;font-size:21px;font-weight:750;letter-spacing:-.035em;}
.kh-work-step p {margin:0;color:#53697C;font-size:16px;line-height:1.85;word-break:keep-all;}
.kh-work-step-note {display:flex;align-items:flex-start;gap:9px;margin-top:20px;padding-top:15px;border-top:1px solid #E5EDF4;color:#637D94;font-size:14px;line-height:1.7;word-break:keep-all;}
.kh-work-step-note i {margin-top:5px;color:#7EA9D6;font-size:12px;flex-shrink:0;}
.kh-work-flow-disclaimer {margin:24px 0 0;color:#65778B;font-size:14px;line-height:1.8;word-break:keep-all;}
.kh-work-docs {background:#fff;}
.kh-work-doc-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;}
.kh-work-doc-card {min-width:0;padding:29px 25px 30px;background:#F5F8FB;border:1px solid #E0EAF2;border-top:3px solid #91B4D3;}
.kh-work-doc-icon {font-size:27px;color:#5F8AAF;margin-bottom:20px;}
.kh-work-doc-card h3 {font-size:20px;color:#203D60;font-weight:750;margin:0 0 12px;letter-spacing:-.03em;}
.kh-work-doc-card p {font-size:16px;color:#5A7085;line-height:1.85;margin:0;word-break:keep-all;}
.kh-center-process .kh-work-notice {padding:45px 0;background:#F0F4F8;border-top:1px solid #E1EAF1;}
.kh-work-notice-inner {display:flex;gap:25px;align-items:flex-start;}
.kh-work-notice-mark {font-size:30px;color:#6289AC;line-height:1.2;}
.kh-work-notice-eyebrow {font-size:12px;letter-spacing:.1em;font-weight:700;color:#7B9BB8;}
.kh-work-notice h2 {font-size:22px;margin:7px 0 10px;color:#203D60;font-weight:750;}
.kh-work-notice p {font-size:16px;line-height:1.85;margin:0;color:#5A6F83;word-break:keep-all;}
@media(max-width:1050px){
 .kh-work-steps {grid-template-columns:repeat(2,minmax(0,1fr));}
 .kh-work-doc-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
 .kh-center-process .kh-center-section {padding:50px 0;}
 .kh-work-intro-grid {grid-template-columns:1fr;gap:25px;}
 .kh-work-intro-copy {padding-left:19px;}
 .kh-work-section-head {align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:26px;}
 .kh-work-section-head>p {font-size:14px;}
 .kh-work-steps {grid-template-columns:1fr;gap:15px;}
 .kh-work-step {min-height:0;padding:25px 22px;}
 .kh-work-step-icon {margin:14px 0;}
 .kh-work-doc-grid {grid-template-columns:1fr;gap:14px;}
 .kh-work-doc-card {padding:24px 22px;}
 .kh-center-process .kh-work-notice {padding:35px 0;}
 .kh-work-notice-inner {gap:15px;}
 .kh-work-notice h2 {font-size:20px;}
}


/* ============================================================
   40. 업무처리절차 v35 — 프리미엄 타이포그래피·정교한 라인 카드
   기존 공통 레이아웃, CONTACT 및 타 페이지 CSS 유지
   ============================================================ */
.kh-center-process .kh-work-steps {
    gap: 24px;
    align-items: stretch;
}
.kh-center-process .kh-work-step {
    isolation: isolate;
    overflow: hidden;
    min-height: 345px;
    padding: 35px 30px 29px;
    border: 1px solid #C9D7E3;
    border-top: 0;
    background: linear-gradient(148deg, #FFFFFF 0%, #FFFFFF 68%, #F5F9FC 100%);
    box-shadow: 0 12px 35px rgba(27, 58, 89, .07);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.kh-center-process .kh-work-step::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #203D60 0%, #7EA9D6 55%, #C7DCEB 100%);
    z-index: 3;
}
.kh-center-process .kh-work-step::after {
    content: '';
    position: absolute;
    top: 26px;
    right: 24px;
    width: 44px;
    height: 44px;
    border-top: 1px solid rgba(88, 131, 167, .34);
    border-right: 1px solid rgba(88, 131, 167, .34);
    pointer-events: none;
}
.kh-center-process .kh-work-step:hover {
    transform: translateY(-6px);
    border-color: #9EBAD0;
    box-shadow: 0 19px 43px rgba(27, 58, 89, .14);
}
.kh-center-process .kh-work-step-watermark {
    position: absolute;
    right: 17px;
    top: 40px;
    z-index: -1;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(100px, 10vw, 150px);
    font-weight: 700;
    letter-spacing: -.095em;
    line-height: 1;
    color: rgba(32, 61, 96, .052);
    user-select: none;
    pointer-events: none;
}
.kh-center-process .kh-work-step-topline {
    display: flex;
    align-items: center;
    gap: 7px;
    height: 10px;
    margin-bottom: 18px;
}
.kh-center-process .kh-work-step-topline span:first-child {
    width: 26px;
    height: 2px;
    background: #203D60;
}
.kh-center-process .kh-work-step-topline span:last-child {
    width: 9px;
    height: 2px;
    background: #9BB9CF;
}
.kh-center-process .kh-work-step-no {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: baseline;
    gap: 10px;
    font-size: 11px;
    letter-spacing: .18em;
    color: #6B879F;
}
.kh-center-process .kh-work-step-no strong {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 32px;
    font-weight: 600;
    letter-spacing: -.04em;
    margin-left: 0;
    color: #203D60;
}
.kh-center-process .kh-work-step-icon {
    position: relative;
    z-index: 1;
    width: 58px;
    height: 58px;
    margin: 19px 0 22px;
    border: 1px solid #C6D9E9;
    border-radius: 14px;
    background: #EDF5FB;
    color: #315D80;
    font-size: 22px;
    box-shadow: inset 0 0 0 5px rgba(255,255,255,.68);
}
.kh-center-process .kh-work-step-body { position: relative; z-index: 1; }
.kh-center-process .kh-work-step h3 {
    margin-bottom: 12px;
    font-size: 22px;
    font-weight: 750;
    letter-spacing: -.045em;
    color: #1F3B59;
}
.kh-center-process .kh-work-step p {
    color: #4D6378;
    font-size: 16px;
    line-height: 1.82;
}
.kh-center-process .kh-work-step-note {
    margin-top: 23px;
    padding-top: 16px;
    border-top: 1px solid #CFDCE7;
    font-size: 14px;
    color: #5A758B;
}
.kh-center-process .kh-work-step-note i { color: #416E94; }
@media (max-width: 1100px) {
    .kh-center-process .kh-work-step { min-height: 320px; }
}
@media (max-width: 760px) {
    .kh-center-process .kh-work-steps { gap: 18px; }
    .kh-center-process .kh-work-step { min-height: 0; padding: 28px 24px 26px; }
    .kh-center-process .kh-work-step-watermark { font-size: 115px; }
    .kh-center-process .kh-work-step h3 { font-size: 21px; }
}
@media (prefers-reduced-motion: reduce) {
    .kh-center-process .kh-work-step { transition: none; }
    .kh-center-process .kh-work-step:hover { transform: none; }
}


/* ==========================================================
   41. 센터소개 > 오시는길 v36
   ========================================================== */
.kh-center-location .kh-loc-intro {background:#fff;}
.kh-center-location .kh-loc-intro-grid {display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:end;}
.kh-center-location .kh-loc-intro h2 {font-size:clamp(30px,3vw,43px);line-height:1.38;letter-spacing:-1.4px;color:#203D60;margin:20px 0 0;font-weight:500;}
.kh-center-location .kh-loc-intro h2 strong {font-weight:750;}
.kh-center-location .kh-loc-intro-grid>p {color:#586d80;line-height:1.95;font-size:16px;margin:0;}
.kh-center-location .kh-loc-map-section {background:#eaf3fa;}
.kh-center-location .kh-loc-section-heading {margin-bottom:32px;}
.kh-center-location .kh-loc-section-heading h2 {font-size:clamp(29px,3vw,39px);line-height:1.4;color:#203D60;letter-spacing:-1.2px;margin:14px 0 8px;font-weight:500;}
.kh-center-location .kh-loc-section-heading h2 strong {font-weight:750;}
.kh-center-location .kh-loc-section-heading>p {font-size:16px;color:#62788b;line-height:1.8;margin:0;}
.kh-center-location .kh-loc-map-shell {background:#fff;border:1px solid #c9dbe9;box-shadow:0 20px 45px rgba(26,59,87,.07);overflow:hidden;}
.kh-center-location .kh-loc-kakao-map {height:490px;width:100%;background:#dce8f0;}
.kh-center-location .kh-loc-kakao-map iframe {display:block;width:100%;height:100%;border:0;}
.kh-center-location .kh-loc-map-footer {display:flex;justify-content:space-between;align-items:center;gap:22px;padding:23px 28px;border-top:1px solid #dce6ee;}
.kh-center-location .kh-loc-map-address {display:flex;gap:11px;align-items:center;color:#203D60;font-weight:650;font-size:16px;}
.kh-center-location .kh-loc-map-address i {color:#7ea9d6;font-size:20px;}
.kh-center-location .kh-loc-map-links {display:flex;flex-wrap:wrap;gap:10px;}
.kh-center-location .kh-loc-map-links a {display:inline-flex;gap:8px;align-items:center;padding:11px 15px;background:#203D60;color:#fff;font-size:14px;text-decoration:none;transition:background .2s;}
.kh-center-location .kh-loc-map-links a+a {background:#edf3f8;color:#203D60;}
.kh-center-location .kh-loc-map-links a:hover {background:#527ea4;color:#fff;}
.kh-center-location .kh-loc-info-section {background:#fff;}
.kh-center-location .kh-loc-info-grid {display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.kh-center-location .kh-loc-info-feature {position:relative;overflow:hidden;min-height:355px;padding:48px 42px;background:#203D60;color:#fff;}
.kh-center-location .kh-loc-info-deco {position:absolute;bottom:-24px;right:-9px;font-size:90px;letter-spacing:-7px;font-weight:800;color:rgba(255,255,255,.045);pointer-events:none;white-space:nowrap;}
.kh-center-location .kh-loc-info-tag {font-size:12px;letter-spacing:2px;color:#b9d5eb;}
.kh-center-location .kh-loc-info-feature h3 {font-size:28px;line-height:1.5;letter-spacing:-.7px;margin:27px 0 18px;}
.kh-center-location .kh-loc-info-feature p {font-size:16px;line-height:1.9;color:#d8e7f2;max-width:440px;margin:0;}
.kh-center-location .kh-loc-info-list {margin:0;border-top:2px solid #203D60;}
.kh-center-location .kh-loc-info-list>div {display:grid;grid-template-columns:155px 1fr;gap:15px;align-items:center;border-bottom:1px solid #d8e4ed;padding:25px 22px;min-height:87px;}
.kh-center-location .kh-loc-info-list dt {font-size:16px;font-weight:700;color:#203D60;}
.kh-center-location .kh-loc-info-list dt i {width:28px;color:#7ea9d6;}
.kh-center-location .kh-loc-info-list dd {font-size:16px;color:#53697b;line-height:1.7;margin:0;}
.kh-center-location .kh-loc-info-list dd a {color:#203D60;font-weight:750;text-decoration:none;}
.kh-center-location .kh-loc-guide-section {background:#f5f8fb;}
.kh-center-location .kh-loc-guide-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.kh-center-location .kh-loc-guide-card {position:relative;background:#fff;border:1px solid #d5e1eb;padding:38px 33px 35px;min-height:265px;overflow:hidden;box-shadow:0 10px 27px rgba(24,55,80,.035);}
.kh-center-location .kh-loc-guide-card:before {content:"";position:absolute;top:0;left:0;width:60px;height:3px;background:#7ea9d6;}
.kh-center-location .kh-loc-guide-num {position:absolute;right:22px;top:14px;font-size:61px;font-weight:800;line-height:1;color:#e8eff5;letter-spacing:-4px;}
.kh-center-location .kh-loc-guide-card>i {position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;background:#eaf3fa;color:#203D60;font-size:23px;}
.kh-center-location .kh-loc-guide-card h3 {position:relative;z-index:1;font-size:21px;color:#203D60;margin:23px 0 12px;}
.kh-center-location .kh-loc-guide-card p {position:relative;z-index:1;font-size:16px;color:#617487;line-height:1.85;margin:0;}
@media(max-width:900px) {
 .kh-center-location .kh-loc-intro-grid,.kh-center-location .kh-loc-info-grid {grid-template-columns:1fr;gap:28px;}
 .kh-center-location .kh-loc-map-footer {align-items:flex-start;flex-direction:column;}
 .kh-center-location .kh-loc-guide-grid {grid-template-columns:1fr 1fr;}
}
@media(max-width:640px) {
 .kh-center-location .kh-loc-kakao-map {height:350px;}
 .kh-center-location .kh-loc-map-footer {padding:18px;}
 .kh-center-location .kh-loc-map-links {width:100%;}
 .kh-center-location .kh-loc-map-links a {flex:1;justify-content:center;font-size:13px;padding:11px 7px;}
 .kh-center-location .kh-loc-info-feature {min-height:auto;padding:35px 27px;}
 .kh-center-location .kh-loc-info-feature h3 {font-size:24px;}
 .kh-center-location .kh-loc-info-list>div {grid-template-columns:115px 1fr;padding:18px 8px;gap:7px;}
 .kh-center-location .kh-loc-guide-grid {grid-template-columns:1fr;}
 .kh-center-location .kh-loc-guide-card {min-height:auto;}
}

/* ==========================================================
   42. 개인회생 > 개인회생이란? v37
   ========================================================== */
.kh-rehab-intro .kh-center-section {padding:80px 0;}
.kh-rehab-intro .kh-rehab-kicker {display:inline-flex;align-items:center;gap:11px;font-size:12px;font-weight:750;letter-spacing:1.5px;color:#5e87a8;}
.kh-rehab-intro .kh-rehab-kicker b {display:inline-grid;place-items:center;width:27px;height:27px;background:#203d60;color:#fff;font-size:11px;letter-spacing:0;}
.kh-rehab-intro .kh-rehab-heading {margin-bottom:27px;}
.kh-rehab-intro .kh-rehab-heading h2 {margin:12px 0 7px;font-size:clamp(28px,3vw,38px);letter-spacing:-1.3px;line-height:1.35;color:#203d60;font-weight:450;}
.kh-rehab-intro .kh-rehab-heading h2 strong {font-weight:800;}
.kh-rehab-intro .kh-rehab-heading p {margin:0;color:#62788a;font-size:16px;line-height:1.7;}
.kh-rehab-intro .kh-rehab-lead {background:#fff;}
.kh-rehab-intro .kh-rehab-lead-grid {display:grid;grid-template-columns:1.2fr .8fr;gap:45px;align-items:center;}
.kh-rehab-intro .kh-rehab-lead-copy h2 {font-size:clamp(30px,3.4vw,44px);line-height:1.36;letter-spacing:-1.8px;font-weight:450;color:#203d60;margin:19px 0 19px;}
.kh-rehab-intro .kh-rehab-lead-copy h2 strong {font-weight:800;}
.kh-rehab-intro .kh-rehab-lead-copy>p {max-width:660px;color:#536b80;font-size:17px;line-height:1.85;margin:0;}
.kh-rehab-intro .kh-rehab-lead-note {display:flex;align-items:flex-start;gap:13px;margin-top:25px;padding:16px 18px;border-left:3px solid #7ea9d6;background:#f0f5f9;color:#4d6579;font-size:14px;line-height:1.65;}
.kh-rehab-intro .kh-rehab-lead-note i {font-size:21px;color:#47789e;flex:none;margin-top:2px;}
.kh-rehab-intro .kh-rehab-hero-panel {position:relative;overflow:hidden;min-height:350px;background:linear-gradient(135deg,#203d60,#315d7e);padding:35px 34px;color:#fff;isolation:isolate;}
.kh-rehab-intro .kh-rehab-hero-panel:before {content:"";position:absolute;right:-95px;top:-100px;width:300px;height:300px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 48px rgba(255,255,255,.035),0 0 0 94px rgba(255,255,255,.025);}
.kh-rehab-intro .kh-rehab-panel-label {font-size:11px;letter-spacing:2px;color:#b9d5eb;position:relative;z-index:1;}
.kh-rehab-intro .kh-rehab-panel-number {position:absolute;right:22px;bottom:-63px;font-size:240px;font-weight:900;line-height:1;color:rgba(255,255,255,.045);letter-spacing:-25px;pointer-events:none;}
.kh-rehab-intro .kh-rehab-panel-emblem {display:grid;place-items:center;width:65px;height:65px;border:1px solid rgba(255,255,255,.3);font-size:29px;margin:37px 0 18px;position:relative;z-index:1;}
.kh-rehab-intro .kh-rehab-hero-panel h3 {font-size:37px;line-height:1.12;letter-spacing:-1px;margin:0 0 15px;position:relative;z-index:1;}
.kh-rehab-intro .kh-rehab-hero-panel h3 em {font-style:normal;color:#b9d5eb;}
.kh-rehab-intro .kh-rehab-hero-panel p {font-size:14px;line-height:1.75;color:#d7e5f0;margin:0;position:relative;z-index:1;}
.kh-rehab-intro .kh-rehab-panel-lines {position:absolute;left:0;bottom:0;width:100%;height:5px;background:linear-gradient(90deg,#b9d5eb 0 24%,rgba(255,255,255,.16) 24% 100%);}
.kh-rehab-intro .kh-rehab-feature {background:#eaf3fa;}
.kh-rehab-intro .kh-rehab-feature-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;}
.kh-rehab-intro .kh-rehab-feature-card {position:relative;min-height:252px;background:#fff;border:1px solid #d2e0eb;padding:27px 23px 25px;overflow:hidden;box-shadow:0 9px 24px rgba(32,61,96,.035);}
.kh-rehab-intro .kh-rehab-feature-card:before {content:"";position:absolute;top:0;left:0;width:67px;height:3px;background:#7ea9d6;}
.kh-rehab-intro .kh-rehab-feature-no {position:absolute;right:15px;top:10px;font-size:59px;line-height:1;font-weight:900;letter-spacing:-4px;color:#edf2f6;}
.kh-rehab-intro .kh-rehab-feature-icon {display:grid;place-items:center;width:53px;height:53px;background:#eaf3fa;color:#315d80;font-size:22px;position:relative;}
.kh-rehab-intro .kh-rehab-feature-card h3 {position:relative;color:#203d60;font-size:19px;letter-spacing:-.5px;margin:19px 0 10px;}
.kh-rehab-intro .kh-rehab-feature-card p {position:relative;color:#5e7284;font-size:15px;line-height:1.72;margin:0 0 20px;}
.kh-rehab-intro .kh-rehab-feature-en {position:absolute;left:23px;bottom:13px;font-size:10px;letter-spacing:1.4px;color:#8ca5b8;font-weight:700;}
.kh-rehab-intro .kh-rehab-criteria {background:#fff;}
.kh-rehab-intro .kh-rehab-criteria-layout {display:grid;grid-template-columns:.83fr 1.17fr;gap:22px;}
.kh-rehab-intro .kh-rehab-criteria-highlight {position:relative;overflow:hidden;background:#203d60;padding:32px;color:#fff;min-height:335px;}
.kh-rehab-intro .kh-rehab-small-label {font-size:11px;letter-spacing:1.7px;color:#b9d5eb;}
.kh-rehab-intro .kh-rehab-criteria-highlight>i {display:block;font-size:35px;color:#b9d5eb;margin:22px 0;}
.kh-rehab-intro .kh-rehab-criteria-highlight h3 {font-size:25px;line-height:1.45;letter-spacing:-.8px;margin:0 0 13px;position:relative;z-index:1;}
.kh-rehab-intro .kh-rehab-criteria-highlight p {font-size:15px;line-height:1.8;color:#d6e5f0;margin:0;position:relative;z-index:1;}
.kh-rehab-intro .kh-rehab-criteria-watermark {position:absolute;bottom:-29px;right:-12px;font-size:106px;font-weight:900;color:rgba(255,255,255,.035);letter-spacing:-6px;}
.kh-rehab-intro .kh-rehab-criteria-list {border-top:2px solid #203d60;}
.kh-rehab-intro .kh-rehab-criteria-list article {display:grid;grid-template-columns:38px 1fr 25px;gap:13px;align-items:center;padding:17px 13px;border-bottom:1px solid #d7e3ec;}
.kh-rehab-intro .kh-rehab-criteria-list article>span {font-size:23px;font-weight:800;color:#a5bfd2;}
.kh-rehab-intro .kh-rehab-criteria-list h3 {font-size:18px;color:#203d60;margin:0 0 5px;}
.kh-rehab-intro .kh-rehab-criteria-list p {font-size:15px;line-height:1.65;color:#607588;margin:0;}
.kh-rehab-intro .kh-rehab-criteria-list article>i {font-size:19px;color:#7ea9d6;}
.kh-rehab-intro .kh-rehab-footnote {font-size:13px;color:#708398;margin:16px 0 0;line-height:1.65;}
.kh-rehab-intro .kh-rehab-footnote i {color:#7ea9d6;margin-right:5px;}
.kh-rehab-intro .kh-rehab-compare {background:#f3f7fa;}
.kh-rehab-intro .kh-rehab-compare-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;}
.kh-rehab-intro .kh-rehab-compare-card {background:#fff;border:1px solid #d5e2ec;padding:28px 31px;position:relative;overflow:hidden;}
.kh-rehab-intro .kh-rehab-compare-card:before {content:"";position:absolute;right:-65px;top:-65px;width:170px;height:170px;border:1px solid #e1eaf1;border-radius:50%;box-shadow:0 0 0 35px rgba(126,169,214,.04);}
.kh-rehab-intro .kh-rehab-compare-card.is-rehab {border-top:3px solid #7ea9d6;}
.kh-rehab-intro .kh-rehab-compare-card:not(.is-rehab) {border-top:3px solid #7b8b9a;}
.kh-rehab-intro .kh-rehab-compare-top {display:flex;justify-content:space-between;align-items:center;gap:12px;color:#6c8da6;font-size:11px;letter-spacing:1.2px;font-weight:700;}
.kh-rehab-intro .kh-rehab-compare-top i {font-size:22px;color:#7ea9d6;}
.kh-rehab-intro .kh-rehab-compare-card h3 {font-size:26px;color:#203d60;margin:17px 0 11px;}
.kh-rehab-intro .kh-rehab-compare-card>p {font-size:16px;color:#5d7285;line-height:1.78;min-height:85px;margin:0;}
.kh-rehab-intro .kh-rehab-compare-bottom {border-top:1px solid #dce7ef;margin-top:17px;padding-top:15px;color:#365d7c;font-size:14px;font-weight:700;}
.kh-rehab-intro .kh-rehab-compare-bottom i {margin-right:8px;color:#7ea9d6;}
.kh-rehab-intro .kh-rehab-flow {background:#fff;}
.kh-rehab-intro .kh-rehab-flow-list {list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;margin:0;counter-reset:none;}
.kh-rehab-intro .kh-rehab-flow-list li {position:relative;min-width:0;background:#eaf3fa;border:1px solid #d2e2ee;padding:22px 16px 21px;display:flex;flex-direction:column;align-items:flex-start;}
.kh-rehab-intro .kh-rehab-flow-list li:before {content:"";position:absolute;left:0;top:0;width:43px;height:3px;background:#7ea9d6;}
.kh-rehab-intro .kh-rehab-flow-list li>span {font-size:13px;font-weight:800;color:#7b9eb9;}
.kh-rehab-intro .kh-rehab-flow-list li>i {font-size:26px;color:#203d60;margin:18px 0 16px;}
.kh-rehab-intro .kh-rehab-flow-list li>strong {font-size:16px;line-height:1.45;color:#203d60;}
.kh-rehab-intro .kh-rehab-flow-list li>small {font-size:13px;color:#667e90;line-height:1.6;margin-top:6px;}
@media(max-width:1000px) {
 .kh-rehab-intro .kh-rehab-feature-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .kh-rehab-intro .kh-rehab-flow-list {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px) {
 .kh-rehab-intro .kh-center-section {padding:50px 0;}
 .kh-rehab-intro .kh-rehab-lead-grid,.kh-rehab-intro .kh-rehab-criteria-layout,.kh-rehab-intro .kh-rehab-compare-grid {grid-template-columns:1fr;gap:20px;}
 .kh-rehab-intro .kh-rehab-hero-panel {min-height:295px;padding:27px;}
 .kh-rehab-intro .kh-rehab-feature-grid {gap:12px;}
 .kh-rehab-intro .kh-rehab-feature-card {min-height:240px;padding:21px 16px;}
 .kh-rehab-intro .kh-rehab-feature-card h3 {font-size:17px;}
 .kh-rehab-intro .kh-rehab-flow-list {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:440px) {
 .kh-rehab-intro .kh-rehab-feature-grid,.kh-rehab-intro .kh-rehab-flow-list {grid-template-columns:1fr;}
 .kh-rehab-intro .kh-rehab-feature-card {min-height:210px;}
 .kh-rehab-intro .kh-rehab-criteria-highlight {min-height:auto;}
}

/* 43. 개인회생 그룹 전용 상단 비주얼 이미지 v39 */
.kh-sub-page.kh-rehab-intro .kh-sub-visual.kh-sub-visual-center {
    background-image: url('../images/sub_visual02.jpg');
    background-position: center center;
    background-size: cover;
}
