#header .header-nav-main.header-nav-main-text-size-4 nav > ul > li > a.dropdown-toggle:after {
    display: none;
}


@media (min-width: 992px) and (min-width: 1200px) {
    #header .header-nav.header-nav-links nav > ul > li > a, #header .header-nav.header-nav-links nav > ul > li:hover > a {
        padding: 0 1.3rem;
    }
}

@media (min-width: 1200px) {
    .container:not(.container-bs):not(.container-xl-custom):not(.container-xxl-custom) {
        max-width: 1400px;
    }
}

@media (min-width: 992px) {
    /*.container2 .row .col-lg-2:nth-child(3) {
        width: calc(16.66666667% - 50px);
    }*/
    #header .header-nav-main.header-nav-main-text-size-4 nav > ul > li > a {
        font-size: 18px;
    }
    #header .header-nav-main nav > ul > li.dropdown-mega {
        margin-left: 0;
        width: calc(100% / 6);
    }
    /*#header .header-nav-main nav > ul > li.dropdown-mega:nth-child(3) {
        width: calc((100% / 6) - 50px);
    }*/
    #header .header-nav-main nav > ul > li.dropdown-mega .dropdown-mega-sub-title {
        font-size: 16px;
    }
    #header .header-nav-main nav > ul > li.dropdown.dropdown-mega .dropdown-mega-sub-title a {
        font-size: 16px;
        color: var(--dark--200);
        display: block;
        font-weight: 600;
        padding: 0;
        text-transform: none;
        letter-spacing: -0.5px;
    }
}

@media (max-width: 991px) {
    .cascading-images-wrapper-cusotom {
        padding-bottom: 0;
    }
    .talent {
        flex-wrap: wrap;
    }
    .talent > div {
        display: block !important;
        width: 100%;
        text-align: center;
    }
    .talent > i {
        margin: 20px 0;
        display: block !important;
        width: 100%;
        text-align: center;
    }
}

.container2 {
    margin: 0 250px 0 345px;
}

.custom-color-01 {
    color: #16447C !important;
}

.custom-color-02 {
    color: #B2D7FF !important;
}

html.sticky-header-active .d-sticky-header-active-none {
    display: flex !important;
}

.philosophy-01 {
    border-radius: 32px;
    overflow: hidden;
}
.philosophy-01:after {
    content: "";
    position: absolute;
    top: -162px;
    right: -108px;
    border-radius: 100%;
    background: #F0F7FF;
    width: 280px;
    height: 280px;
}

.philosophy-02 {
    border-radius: 32px;
    overflow: hidden;
}
.philosophy-02:after {
    content: "";
    position: absolute;
    top: -162px;
    right: -108px;
    border-radius: 100%;
    background: #F5F3FF;
    width: 280px;
    height: 280px;
}

.philosophy-03 {
    border-radius: 32px;
    overflow: hidden;
}
.philosophy-03:after {
    content: "";
    position: absolute;
    top: -162px;
    right: -108px;
    border-radius: 100%;
    background: #ECFEF6;
    width: 280px;
    height: 280px;
}

/*인재상*/
.talent-button {
    width: 256px;
    height: 256px;
    border-radius: 100%;
    background: #FFF;
    /* 흰 원이 연한 배경 위에 떠 있어 경계가 안 보이던 문제 - 테두리로 눌리는 요소임을 드러낸다 */
    border: 2px solid #DCEBF4;
    padding: 0;
    fill: #FFF;
    filter: drop-shadow(0 4px 24px rgba(0, 101, 142, 0.08));
    color: #000;
    font-size: 24px;
    font-weight: 800;
    cursor: pointer;
    transition: background-color .25s, color .25s, border-color .25s, transform .25s, filter .25s;
}
/* 영문 부제 (Create / Challenge / Global) - 아래 안내 라벨은 제외한다 */
.talent-button span:not(.talent-button-hint) {
    color: #777;
    font-size: 20px;
    font-weight: 600;
    transition: color .25s;
}
/* 마우스를 올리기 전에도 누를 수 있는 요소임을 알려주는 라벨 */
.talent-button .talent-button-hint {
    display: table;
    margin: 14px auto 0;
    padding: 3px 14px;
    border-radius: 999px;
    background: #099FDC;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.7;
    letter-spacing: -0.3px;
    transition: background-color .25s, color .25s;
}
.talent-button:hover,
.talent-button:focus-visible {
    border-color: #099FDC;
    color: #099FDC;
    transform: translateY(-6px);
    filter: drop-shadow(0 12px 28px rgba(0, 101, 142, 0.22));
}
.talent-button:hover span:not(.talent-button-hint),
.talent-button:focus-visible span:not(.talent-button-hint) {
    color: #099FDC;
}
.talent-button:hover .talent-button-hint,
.talent-button:focus-visible .talent-button-hint {
    background: #0B8CC3;
}
.talent-button:focus-visible {
    outline: 3px solid rgba(9, 159, 220, 0.35);
    outline-offset: 4px;
}
.talent-button:active {
    transform: translateY(-2px);
}
.talent-button.active {
    background: #099FDC;
    border-color: #099FDC;
    color: #fff;
}
.talent-button.active span:not(.talent-button-hint) {
    color: rgba(255, 255, 255, 0.80);
}
/* 선택된 원은 파란 배경이라 라벨 색을 뒤집는다 */
.talent-button.active .talent-button-hint {
    background: #fff;
    color: #099FDC;
}
.talent-button.active:hover {
    background: #0B8CC3;
    border-color: #0B8CC3;
    color: #fff;
}
.talent-button.active:hover .talent-button-hint {
    background: #fff;
    color: #0B8CC3;
}

/* 원 아래 안내 문구 */
.talent-guide {
    color: #099FDC;
    font-weight: 600;
}

@media (max-width: 500px) {
    .talent-button {
        width: 170px;
        height: 170px;
        font-size: 20px;
    }
    .talent-button span:not(.talent-button-hint) {
        font-size: 16px;
    }
    .talent-button .talent-button-hint {
        margin-top: 10px;
        padding: 2px 11px;
        font-size: 12px;
    }
}

.esg-area > div {
    display: none;
}
.esg-area > div.active {
    display: block;
}


html body .tabs.tabs-simple .nav-tabs > li .nav-link.active, html body .tabs.tabs-simple .nav-tabs > li .nav-link.active:focus, html body .tabs.tabs-simple .nav-tabs > li .nav-link:hover, html body .tabs.tabs-simple .nav-tabs > li .nav-link.active:hover, html.dark body .tabs.tabs-simple .nav-tabs > li .nav-link.active, html.dark body .tabs.tabs-simple .nav-tabs > li .nav-link.active:focus, html.dark body .tabs.tabs-simple .nav-tabs > li .nav-link:hover, html.dark body .tabs.tabs-simple .nav-tabs > li .nav-link.active:hover {
    color: #16447C;
    border-bottom-color: #16447C;
}

.tabs.tabs-simple.introduce-tabs .nav-tabs > li .nav-link, .tabs.tabs-simple.introduce-tabs .nav-tabs > li .nav-link:hover, .tabs.tabs-simple.introduce-tabs .nav-tabs > li .nav-link:focus {
    padding: 15px 20px;
}



.owl-carousel.nav-arrows-thin .owl-nav .owl-prev:before, .owl-carousel.nav-arrows-thin .owl-nav .owl-next:before {
    color: #fff;
}
.owl-carousel.h-md-800px {
    height: 250px !important; /* 모바일 기본 높이 */
}
@media (min-width: 768px) { /* md 사이즈 이상 (PC) */
    .owl-carousel.h-md-800px {
        height: 800px !important; /* PC 높이 */
    }
}

.bottom-60 {
    bottom: 60px !important;
}


/* 제품 상세 - 클릭 가능한 상단 대표 이미지 */
html body .btn.product-hero-trigger,
html body .btn.product-hero-trigger:hover,
html body .btn.product-hero-trigger:focus,
html body .btn.product-hero-trigger:active,
html body .btn.product-hero-trigger:focus-visible {
    background-color: transparent;
    background-image: none;
    border: 0;
    box-shadow: none;
}
.product-hero-trigger {
    cursor: pointer;
    transition: opacity .2s ease;
}
.product-hero-trigger:hover {
    opacity: .85;
}

/* 제품 상세 - 모달 내 Thumbs gallery (Swiper) */
.product-gallery .product-gallery-main {
    border-radius: .5rem;
    overflow: hidden;
    background-color: #f5f7fa;
}
.product-gallery .product-gallery-main .swiper-slide img,
.product-gallery .product-gallery-thumbs .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.product-gallery .product-gallery-main .swiper-slide {
    aspect-ratio: 4 / 3;
    max-height: 55vh;
}
.product-gallery .product-gallery-thumbs {
    margin-top: 10px;
}
.product-gallery .product-gallery-thumbs .swiper-slide {
    width: 120px;
    aspect-ratio: 4 / 3;
    cursor: pointer;
    opacity: .4;
    border-radius: .25rem;
    overflow: hidden;
    background-color: #f5f7fa;
    transition: opacity .2s ease;
}
.product-gallery .product-gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
    outline: 2px solid #16447C;
    outline-offset: -2px;
}
.product-gallery .swiper-button-prev,
.product-gallery .swiper-button-next {
    color: #16447C;
}
.product-gallery .swiper-button-prev:after,
.product-gallery .swiper-button-next:after {
    font-size: 24px;
}

/*경영이념*/
.philosophy-intro {
    color: #52575e;
    font-size: clamp(16px, 1.55vw, 25px);
    line-height: 1.6;
}

.philosophy-title {
    display: inline-block;
    width: 100%;
    max-width: 580px;
    margin-bottom: 0;
    padding-bottom: 46px;
    border-bottom: 1px solid #023a8e;
    color: #023a8e;
    font-size: clamp(28px, 3.2vw, 50px);
    font-weight: 800;
    line-height: 1.2;
}

/*경영이념 > 기업철학*/
.philosophy-value {
    aspect-ratio: 1600 / 700;
    background-repeat: no-repeat;
    background-size: auto 100%;
}
.philosophy-value + .philosophy-value {
    margin-top: clamp(40px, 7vw, 140px);
}
.philosophy-value-01 {
    background-image: url(/images/company/philosophy/philosophy-value-01.png);
    background-position: 0 0;
}
.philosophy-value-02 {
    background-image: url(/images/company/philosophy/philosophy-value-02.png);
    background-position: 100% 0;
}
.philosophy-value-03 {
    background-image: url(/images/company/philosophy/philosophy-value-03.png);
    background-position: 0 0;
}
.philosophy-value-body {
    width: 25%;
}
.philosophy-value-body dt {
    margin-bottom: 40px;
    color: #52575e;
    font-size: clamp(20px, 1.9vw, 30px);
    font-weight: 700;
}
.philosophy-value-body li {
    position: relative;
    padding-left: 10px;
    color: #52575e;
    font-size: clamp(15px, 1.28vw, 20px);
    line-height: 1.4;
}
.philosophy-value-body li:before {
    content: "\00b7";
    position: absolute;
    top: 0;
    left: 0;
}
.philosophy-value-body li + li {
    margin-top: 10px;
}

/*경영이념 > 경영방침*/
.philosophy-policy {
    background-repeat: no-repeat;
    background-position: 100% 100%;
}
.philosophy-policy + .philosophy-policy {
    margin-top: clamp(48px, 5vw, 96px);
}
.philosophy-policy-01 { background-image: url(/images/company/philosophy/philosophy-policy-bg-01.png); }
.philosophy-policy-02 { background-image: url(/images/company/philosophy/philosophy-policy-bg-02.png); }
.philosophy-policy-03 { background-image: url(/images/company/philosophy/philosophy-policy-bg-03.png); }
.philosophy-policy-04 { background-image: url(/images/company/philosophy/philosophy-policy-bg-04.png); }
.philosophy-policy-05 { background-image: url(/images/company/philosophy/philosophy-policy-bg-05.png); }
.philosophy-policy-06 { background-image: url(/images/company/philosophy/philosophy-policy-bg-06.png); }

.philosophy-policy-title {
    display: flex;
    align-items: center;
    min-height: 65px;
    margin-bottom: 30px;
    padding-left: 78px;
    color: #52575e;
    font-size: clamp(20px, 1.9vw, 30px);
    font-weight: 700;
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 57px auto;
}
.philosophy-policy-01 .philosophy-policy-title { background-image: url(/images/company/philosophy/philosophy-policy-icon-01.png); }
.philosophy-policy-02 .philosophy-policy-title { background-image: url(/images/company/philosophy/philosophy-policy-icon-02.png); }
.philosophy-policy-03 .philosophy-policy-title { background-image: url(/images/company/philosophy/philosophy-policy-icon-03.png); }
.philosophy-policy-04 .philosophy-policy-title { background-image: url(/images/company/philosophy/philosophy-policy-icon-04.png); }
.philosophy-policy-05 .philosophy-policy-title { background-image: url(/images/company/philosophy/philosophy-policy-icon-05.png); }
.philosophy-policy-06 .philosophy-policy-title { background-image: url(/images/company/philosophy/philosophy-policy-icon-06.png); }

.philosophy-policy-item {
    position: relative;
    padding-left: 10px;
}
.philosophy-policy-item:before {
    content: "\00b7";
    position: absolute;
    top: 0;
    left: 0;
    color: #52575e;
}
.philosophy-policy-item + .philosophy-policy-item {
    margin-top: 30px;
}
.philosophy-policy-item p {
    color: #52575e;
    font-size: clamp(15px, 1.28vw, 20px);
    line-height: 1.4;
}
.philosophy-policy-item p:first-child {
    font-weight: 700;
}

/*경영이념 > 마무리 문구*/
.philosophy-note {
    display: inline-flex;
    align-items: center;
    min-height: 162px;
    max-width: 100%;
    margin-bottom: 0;
    padding: 24px clamp(24px, 6vw, 100px);
    border-radius: 11px;
    background-color: #f4f4f4;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    color: #52575e;
    font-size: clamp(15px, 1.28vw, 20px);
    line-height: 1.6;
    text-align: left;
}

@media (max-width: 991px) {
    .philosophy-value {
        aspect-ratio: auto;
        background-image: none !important;
    }
    .philosophy-value:before {
        content: "";
        display: block;
        width: 100%;
        padding-top: 50%;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
    }
    .philosophy-value-01:before { background-image: url(/images/company/philosophy/philosophy-value-01.png); }
    .philosophy-value-02:before { background-image: url(/images/company/philosophy/philosophy-value-02.png); }
    .philosophy-value-03:before { background-image: url(/images/company/philosophy/philosophy-value-03.png); }
    .philosophy-value-body {
        width: 100%;
        padding-top: 24px;
        text-align: center;
    }
    .philosophy-value-body dt {
        margin-bottom: 20px;
    }
    .philosophy-value-body ul {
        display: inline-block;
        text-align: left;
    }
    .philosophy-policy {
        background-size: 100% auto;
    }
    .philosophy-policy-title {
        min-height: 48px;
        margin-bottom: 20px;
        padding-left: 56px;
        background-size: 40px auto;
    }
    .philosophy-policy-item + .philosophy-policy-item {
        margin-top: 20px;
    }
    .philosophy-note {
        min-height: 0;
        padding: 24px;
    }
}

/* ---------------------------------------------------------------
   영문 로케일 상단 메뉴 간격
   2뎁스(메가메뉴)는 .container2(좌 345px / 우 250px) 안에서 6등분되고,
   1뎁스도 li.dropdown-mega 가 6등분(= calc(100% / 6))이라, 두 그리드의
   폭이 같을 때만 1뎁스와 2뎁스의 세로 위치가 맞는다.
   한때 영문만 양쪽 그리드를 120px 좁혔었는데, 6등분이라 열마다 20px 씩
   왼쪽으로 밀려 마지막 메뉴에서 한글 대비 약 100px 차이가 났다.
   (검수 의견: "한국어에 비해 붙어있는 느낌")
   지금은 영문도 한글과 같은 그리드를 쓰므로 별도 규칙을 두지 않는다.
   간격을 다시 조정해야 하면 ul#mainNav 의 padding-right 와
   .container2 의 margin-right 를 반드시 같은 값만큼 함께 움직일 것.
--------------------------------------------------------------- */

/* ---------------------------------------------------------------
   Our Locations (Front/partials/locations.php)
   메인 · 대동하이렉스 소개 등 여러 페이지에서 공용으로 쓰므로 전역 CSS 에 둔다.
   탭은 career/introduce 와 동일한 Porto 버튼(btn-rounded btn-primary /
   비활성은 btn-outline)을 그대로 쓰므로 별도 스타일이 없다.
   공장명만 <button> 으로 바꾸면서 기존 제목 모양을 유지하도록 초기화한다.
--------------------------------------------------------------- */
.location-name {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: none;
    text-align: left;
    cursor: pointer;
    transition: color .2s ease;
}

.location-name:hover {
    color: #16447c;
    text-decoration: underline;
}

.location-name.is-active {
    color: #16447c;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* ---------------------------------------------------------------
   Our Locations 지도 폭
   파샬 기본값은 .container(= 본문 폭)에 col-12 라서 지도 폭이
   아래 사업장 목록과 정확히 같다. 메인 페이지만 기존의 넓은
   레이아웃(전체 폭 + lg 에서 10칸)을 유지하도록 .locations-wide 로 되돌린다.
--------------------------------------------------------------- */
.locations-wide .location-map-wrap {
    max-width: none;
}

@media (min-width: 992px) {
    .locations-wide .location-map-col {
        width: 83.33333333%;
    }
}

/* ---------------------------------------------------------------
   Global HI-Lex Group 요약 블록 (글로벌네트워크 · 대동하이렉스그룹 공용)
   두 페이지에서 함께 쓰므로 전역 CSS 에 둔다.
--------------------------------------------------------------- */
.gn-intro {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
}

.gn-intro-eyebrow {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .18em;
    color: #077cab;
}

.gn-intro-title {
    margin: 14px 0 0;
    font-size: 44px;
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: -.01em;
    color: #262c36;
}

.gn-intro-desc {
    margin: 14px 0 0;
    font-size: 17px;
    line-height: 1.6;
    color: #52575e;
}

.gn-intro-meta {
    flex-shrink: 0;
    text-align: right;
}

.gn-intro-meta-label {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .14em;
    color: #52575e;
}

.gn-intro-meta-value {
    margin-top: 8px;
    font-size: 20px;
    font-weight: 600;
    color: #16447c;
}

.gn-divider {
    height: 1px;
    margin-top: 36px;
    background: #eaeaea;
}

.gn-stat {
    padding: 0 32px;
    border-left: 1px solid #eaeaea;
}

.gn-stat:first-child {
    padding-left: 0;
    border-left: 0;
}

.gn-stat:last-child {
    padding-right: 0;
}

.gn-stat-figure {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.gn-stat-value {
    font-size: 46px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: -.02em;
    color: #043988;
}

.gn-stat-unit {
    font-size: 16px;
    font-weight: 500;
    color: #52575e;
}

.gn-stat-label {
    margin-top: 14px;
    font-size: 13px;
    color: #52575e;
}

@media (max-width: 1199.98px) {
    .gn-intro-title {
        font-size: 38px;
    }

    .gn-stat {
        padding: 0 24px;
    }

    .gn-stat-value {
        font-size: 40px;
    }
}

@media (max-width: 991.98px) {
    .gn-intro-title {
        font-size: 34px;
    }

    .gn-intro-desc {
        font-size: 16px;
    }

    .gn-stat {
        padding: 0;
        border-left: 0;
    }

    .gn-stat-value {
        font-size: 38px;
    }
}

@media (max-width: 767.98px) {
    .gn-intro {
        flex-direction: column;
        align-items: flex-start;
        gap: 18px;
    }

    .gn-intro-meta {
        text-align: left;
    }

    .gn-intro-title {
        font-size: 30px;
    }

    .gn-intro-desc {
        font-size: 15px;
    }

    .gn-divider {
        margin-top: 24px;
    }

    .gn-stat-value {
        font-size: 34px;
    }

    .gn-stat-label {
        margin-top: 10px;
    }
}

@media (max-width: 575.98px) {
    .gn-intro-title {
        font-size: 26px;
    }

    .gn-stat-value {
        font-size: 30px;
    }
}

/* ---------------------------------------------------------------
   Global HI-Lex Group 요약 블록 — 지표 그리드
   (위 블록과 같은 컴포넌트)
--------------------------------------------------------------- */
.gn-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 34px;
}

@media (max-width: 991.98px) {
    .gn-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 20px;
    }
}

@media (max-width: 767.98px) {
    .gn-stats {
        gap: 20px 16px;
        margin-top: 24px;
    }
}
