.header__top__widget-lang .header__lang-globe-icon {
            color: #ffffff;
            font-size: 16px;
            line-height: 1;
            vertical-align: middle;
        }

        .header__top__widget-lang {
            display: flex;
            flex-wrap: nowrap;
            align-items: center;
            gap: 6px;
        }

        .header__lang-details {
            position: relative;
        }

        .header__lang-details summary {
            list-style: none;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 4px 10px;
            margin: 0;
            border: 0;
            border-radius: 0;
            background: transparent;
            color: #ffffff;
            font-size: 14px;
            font-weight: 600;
            line-height: 1.2;
            user-select: none;
            box-shadow: none;
        }

        .header__lang-details summary::-webkit-details-marker {
            display: none;
        }

        .header__lang-details summary:focus,
        .header__lang-details summary:focus-visible {
            outline: none;
            box-shadow: none;
        }

        .header__lang-summary-indicator {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 12px;
            height: 12px;
            margin-left: 1px;
            font-size: 12px;
            line-height: 1;
            opacity: 0.95;
        }

        .header__lang-summary-indicator .header__lang-caret-up {
            display: none;
        }

        .header__lang-details[open] .header__lang-summary-indicator .header__lang-caret-down {
            display: none;
        }

        .header__lang-details[open] .header__lang-summary-indicator .header__lang-caret-up {
            display: inline-block;
        }

        .header__lang-panel {
            position: absolute;
            left: 0;
            top: calc(100% + 6px);
            min-width: 11rem;
            padding: 6px 0;
            margin: 0;
            background: #ffffff;
            border: 1px solid #dee2e6;
            border-radius: 4px;
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
            z-index: 1080;
        }

        .header__lang-option {
            display: block;
            width: 100%;
            padding: 8px 14px;
            border: 0;
            background: transparent;
            text-align: left;
            font-size: 14px;
            color: #323232;
            cursor: pointer;
            line-height: 1.3;
        }

        .header__lang-option:hover,
        .header__lang-option:focus {
            background: #f1f3f5;
            outline: none;
        }

        .header__lang-option--active {
            background: #fff9e6;
            font-weight: 700;
            color: #1a1a1a;
        }

        /* 상단 바: 언어·메일(좌) + 전화·SNS(우) 한 줄 */
        ul.header__top__widget {
            display: flex;
            flex-wrap: nowrap;
            align-items: center;
            column-gap: clamp(8px, 1.8vw, 22px);
            margin: 0;
            padding: 10px 0 12px;
        }

        ul.header__top__widget > li {
            margin-right: 0 !important;
        }

        ul.header__top__widget > li:last-child {
            flex: 0 1 auto;
            min-width: 0;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .header__top__right {
            display: flex;
            flex-wrap: nowrap;
            align-items: center;
            justify-content: flex-end;
            column-gap: clamp(6px, 1.2vw, 16px);
            min-width: 0;
        }

        .header__top__phone {
            margin-right: 0 !important;
        }

        #google_translate_element {
            display: none;
            visibility: hidden;
            height: 0;
            overflow: hidden;
        }

        .goog-te-banner-frame.skiptranslate {
            display: none !important;
        }

        .skiptranslate iframe,
        .goog-te-gadget-icon,
        .goog-te-gadget-simple img {
            display: none !important;
        }

        html.translated-ltr,
        html.translated-rtl,
        body {
            top: 0 !important;
        }

        /* 상단 바 SNS: a/span 모두 동일 간격(테마는 a에만 margin → span 겹침 방지) */
        .header__top__social {
            display: inline-flex;
            flex-wrap: nowrap;
            align-items: center;
            gap: 0 clamp(8px, 1.2vw, 14px);
            vertical-align: middle;
        }

        .header__top__social a.header__sns-item {
            margin-right: 0 !important;
        }

        /* 상단 바(#323232) 위 SNS — 더 선명한 흰색 */
        .header__top__social .header__sns-item {
            color: #ffffff;
            line-height: 1;
        }

        .header__top__social .header__sns-item .fa {
            color: #ffffff;
            font-size: 17px;
            line-height: 1;
            text-shadow: 0 0 1px rgba(255, 255, 255, 0.35);
        }

        .header__top__social .header__sns-icon,
        .offcanvas__social .header__sns-icon {
            width: 17px;
            height: 17px;
            vertical-align: middle;
            object-fit: contain;
        }

        .header__top__social .header__sns-icon {
            filter: brightness(0) invert(1)
                drop-shadow(0 0 0.6px rgba(255, 255, 255, 0.9));
        }

        .header__top__social .header__sns-fallback,
        .offcanvas__social .header__sns-fallback {
            font-size: 11px;
            line-height: 1;
            vertical-align: middle;
            color: #ffffff;
        }

        .header__top__social a.header__sns-item--inactive,
        .offcanvas__social a.header__sns-item--inactive {
            pointer-events: none;
            cursor: default;
        }

        /* 오프캔버스(밝은 배경)용 — 어두운 아이콘 유지, SVG는 원색에 가깝게 */
        .offcanvas__social .header__sns-item {
            color: #353535;
        }

        .offcanvas__social .header__sns-item .fa {
            color: #353535;
        }

        .offcanvas__social .header__sns-fallback {
            color: #353535;
        }

        .offcanvas__social {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 0 12px;
            row-gap: 8px;
        }

        .offcanvas__social a.header__sns-item {
            margin-right: 0 !important;
        }

        .offcanvas__social .header__sns-item .fa {
            font-size: 16px;
        }

        /* 공개 헤더·오프캔버스 로고: 원본 세로 100px 기준 표시 높이 절반(50px), 비율 유지 */
        .header__logo img,
        .offcanvas__logo img {
            height: 50px;
            width: auto;
            max-width: 100%;
            object-fit: contain;
            vertical-align: middle;
        }

        /* 상단 바(모바일): 좌·우 컬럼이 세로로 쌓이지 않도록 한 줄 */
        @media (max-width: 767.98px) {
            .header__top .row {
                flex-wrap: nowrap;
                align-items: center;
            }

            .header__top .row > div[class*="col-"] {
                width: auto;
                max-width: none;
                flex: 0 1 auto;
                min-width: 0;
            }

            .header__top .row > div[class*="col-"]:first-child {
                flex: 1 1 0;
            }

            .header__top .row > div[class*="col-"]:last-child {
                flex: 0 0 auto;
            }

            .header__top__phone span {
                font-size: 13px;
            }
        }

        /* 메인 헤더(lg+): 로고는 좌측 열, GNB+로그인은 우측으로 한 덩어리 정렬 */
        @media (min-width: 992px) {
            .header__nav {
                display: flex;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: flex-end;
                column-gap: clamp(14px, 1.8vw, 28px);
            }

            .header__menu {
                display: flex;
                flex: 0 1 auto;
                min-width: 0;
                justify-content: flex-end;
            }

            .header__menu > ul {
                display: flex;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: flex-start;
                margin: 0;
                padding: 0;
                list-style: none;
                column-gap: clamp(20px, 2.4vw, 40px);
            }

            .header__menu > ul > li {
                margin-right: 0 !important;
            }

            .header__nav__widget {
                display: flex;
                flex: 0 0 auto;
                align-items: center;
            }
        }

        @media (min-width: 992px) and (max-width: 1199px) {
            .header__menu ul li a {
                font-size: 14px;
            }
        }

        .header__member-details {
            position: relative;
            display: inline-block;
        }

        .header__member-details summary {
            list-style: none;
            cursor: pointer;
            user-select: none;
        }

        .header__member-details summary::-webkit-details-marker {
            display: none;
        }

        .header__member-details summary:focus,
        .header__member-details summary:focus-visible {
            outline: none;
        }

        .header__member-summary-indicator {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 12px;
            height: 12px;
            margin-left: 4px;
            font-size: 12px;
            line-height: 1;
            opacity: 0.95;
        }

        .header__member-summary-indicator .header__member-caret-up {
            display: none;
        }

        .header__member-details[open] .header__member-summary-indicator .header__member-caret-down {
            display: none;
        }

        .header__member-details[open] .header__member-summary-indicator .header__member-caret-up {
            display: inline-block;
        }

        .header__member-panel {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            min-width: 11.5rem;
            padding: 6px 0;
            margin: 0;
            background: #ffffff;
            border: 1px solid #dee2e6;
            border-radius: 4px;
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
            z-index: 1080;
        }

        .header__member-option {
            display: flex;
            align-items: center;
            gap: 8px;
            width: 100%;
            padding: 9px 14px;
            border: 0;
            background: transparent;
            text-align: left;
            font-size: 14px;
            font-weight: 600;
            color: #323232;
            text-decoration: none;
            line-height: 1.3;
            white-space: nowrap;
        }

        .header__member-option:hover,
        .header__member-option:focus {
            background: #f1f3f5;
            color: #1a1a1a;
            outline: none;
            text-decoration: none;
        }

        .header__member-option .bi {
            flex-shrink: 0;
            font-size: 1em;
            line-height: 1;
        }
