/* 서브탑 */
.sub-top {
    position: relative;
    height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #fff;
    text-align: center;
}
.sub-top .bg-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    z-index: -1;
    /* 애니메이션 설정: 10초 동안 서서히 확대, 부드럽게 무한 반복 */
    animation: zoom-in-effect 10s ease-out infinite alternate;
}
@keyframes zoom-in-effect {
    0% {
        transform: scale(1.0);
    }
    50% {
        transform: scale(1.05); 
    }
    100% {
        transform: scale(1.0); 
    }
}
.sub-top .txt-box {
    text-align: center;
    color: #fff;
}
.sub-top .txt-box .main-title {
    font-size: 5.625rem;
    font-family: var(--font-point2);
}
.sub-top .txt-box .sub-title {
    font-family: var(--font-point);
    font-size: 1.875rem;
    line-height: 45px;
}
.sub-tabs {
    position: -webkit-sticky;
    position: sticky;
    top: 100px; 
    z-index: 900;
    width: 100%;
    transition: top 0.3s ease-in-out;
    background: #262626;
}
body.header-hidden .sub-tabs {
    top: 0; /* 헤더가 없으므로 최상단에 붙음 */
}
.sub-tabs .tabs-inner {
    display: flex;
    justify-content: center;
    gap: 70px;
    padding: 30px 0;
}
.sub-tabs .tabs-inner li.active a {color: #00A2FF;}
.sub-tabs .tabs-inner li a {
    font-size: 1.25rem;
    color: #fff;
    font-family: var(--font-point);
    font-weight: 500;
}
/* 서브탑 */
  
/* sub1_1 */
.sub-page {padding-top: 150px;}
.sub-page .page-title {
    font-size: 5.625rem;
    font-family: var(--font-point2);
    font-weight: 800;
    line-height: 110px;
}
.sub-page .page-desc {
    font-size: 2.813rem;
    font-family: var(--font-point);
    font-weight: 500;
    padding-top: 30px;
    line-height: 60px;
}
.sub-page .main-title {
    font-family: var(--font-point2);
    font-size: 5.313rem;
    font-weight: 800;
    line-height: 110px;
}
.sub-page .sub-title {
    font-size: 2.813rem;
    font-style: italic;
    font-family: var(--font-point2);
    line-height: 60px;
    font-weight: 800;
}
.sub-page .desc {
    font-size: 1.563rem;
    line-height: 35px;
    padding-top: 20px;
    font-weight: 400;
    font-family: var(--font-point);
}
.sub-page .item-title {
    font-size: 1.563rem;
    line-height: 35px;
    font-family: var(--font-point);
    font-weight: 800;
}
.sub-page .item-desc{
    font-size: 1.25rem;
    line-height: 25px;
    padding-top: 10px;
    letter-spacing: -0.25px;
    font-family: var(--font-point);
}
.sub-page .box-title {
    font-size: 1.875rem;
    line-height: 35px;
    font-family: var(--font-point);
    font-weight: 800;
}
.sub-page .brand-title {
    font-size: 3.75rem;
    line-height: 60px;
    font-family: var(--font-point2);
    font-weight: 700;
}
.sub1-1 {
    max-width: 1400px;
    margin: auto;
    padding-bottom: 150px;
}
.sub1-3,
.sub1-4,
.sub1-5,
.sub3-1,
.sub5-1 {padding-bottom: 250px;}

.sub1-1 .intro .img-box,
.sub1-2 .img-box {
    margin-top: 70px;
}
.sub1-1 .intro .img-box {overflow: hidden;
border-radius: 30px;}
.sub1-1 .intro .img-box img {
    transition:  transform 0.3s linear;
    
}
.sub1-1 .intro .img-box:hover img {
    transform: scale(1.03);
   
}
.sub1-1 .top .img-box img {width: 100%;}
.sub1-1 .bot {
    display: flex;
    justify-content: space-between;
    padding-top: 100px;
}
.sub1-1 .bot .desc {
    padding-top: 0;
}
.sub1-1 .bot .desc span {
    display: block;
    margin-top: 20px;
}
.sub1-1 .brand {
    padding: 150px 0;
    display: flex;
    gap: 90px;
}
.sub1-1 .brand .img-box {
overflow: hidden;
border-radius: 50px;
}
.sub1-1 .brand .img-box img {
    transition: transform 0.3s linear;
}
.sub1-1 .brand .img-box:hover img {
    transform: scale(1.03);
}
.sub1-1 .brand .left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.sub1-1 .brand .left .img-box {
    display: flex;
    gap: 70px;
    align-items: center;
}
/* sub1_1 */

/* sub1_2 */
.sub1-2 .intro .top {text-align: center;}
.sub1-2 .intro .bot {
    display: flex;
    justify-content: center;
    overflow: hidden; 
}
.sub1-2 .intro .bot .img-box {
    /* 스크립트에서 제어할 변수 기본값 설정 (초기 너비) */
    width: var(--img-width, 500px); 
    height: 600px; /* 영상 비율에 맞게 높이 고정 (필수) */
    max-width: 1400px; /* 최대 너비 제한 */
    margin: 70px auto 0; /* 중앙 정렬 */
    overflow: hidden; /* 넘치는 부분 자르기 (핵심) */
    border-radius: 30px; /* 모서리 둥글게 (선택사항) */
    position: relative;
    will-change: width; /* 성능 최적화 */
    transition: width 0.1s linear; /* 부드러운 움직임 보정 */
}

/* 2. 영상: 항상 최대 크기로 중앙 정렬 */
.sub1-2 .intro .bot .sub-video {
    width: 1400px; /* 컨테이너가 커질 최대 크기와 동일하게 고정 */
    height: 100%;
    object-fit: cover; /* 비율 유지하며 꽉 채우기 */
    
    /* 정중앙 배치 (컨테이너가 좁아도 영상은 중앙 유지) */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.sub1-2 .intro .bot .img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 30px;
}

.sub1-2 .system {
    background: #262626;
    margin-top: 150px;
    padding: 150px 0 100px;
}
.sub1-2 .system > .txt-box,
.sub1-2 .system .system-item .txt-box {
    text-align: center; 
    color: #fff;
}
.sub1-2 .system .system-inner {
    padding: 120px 0 150px;
}
.sub1-2 .system .system-inner .system-item-box {
    gap: 100px;
    display: flex;
    justify-content: center;
    position: relative;
}
.sub1-2 .system .system-inner .system-item:hover {
    /* transform: scale(1.03); */
}
.sub1-2 .system .system-inner .system-item-box::before {
    content: '';
    border: 1px solid rgb(255 255 255 / 70%);
    width: 890px;
    position: absolute;
    height: 300px;
    border-radius: 200px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 0;
}
.sub1-2 .system .system-inner .system-item {
    background: #00A2FF;
    border-radius: 100px;
    width: 320px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 0;
    z-index: 1;
    position: relative;
    transition: transform 0.3s all;
}
.sub1-2 .system .system-inner .system-item:nth-child(1)::after,
.sub1-2 .system .system-inner .system-item:nth-child(2)::after {
    content: '▶';
    position: absolute;
    top: 50%;
    left: 113%;
    color: #fff;
    transform: translateY(-50%);
}
.sub1-2 .system .system-inner .system-detail {
    display: flex;
    padding: 150px 0 0;
    justify-content: center;
    gap: 20px;
}
.sub1-2 .system .system-detail .system-item-detail {
    background: #fff;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    padding: 50px 0;
    gap: 30px;
    width: 440px;
}
.sub1-2 .system .system-detail .system-item-detail .txt-box {
    text-align: center;
    font-family: var(--font-point);
}
.sub1-2 .system .system-detail .system-item-detail .icon {
    width: 110px;
    height: 100px;
    object-fit: contain;
}
.sub1-2 .system .system-detail .system-item-detail .desc {
    font-weight: 400;   
}
/* sub1_2 */

/* sub1_3 */
.sub1-3 .video {
    text-align: center;
}
.sub1-3 .video .bg-video {
    max-width: 1200px;
    border-radius: 30px;
}
.sub1-3 .video .icon-box {
    padding: 100px 0 50px;  
}
.sub1-3 .video .txt-box .desc {
    font-weight: 400;
}
.sub1-3 .subSwiper {
    overflow: hidden;
    padding-top: 100px;
}
.sub1-3 .subSwiper .nav-wrap {
    padding-top: 30px;
    display: flex;
    justify-content: center;
    gap: 30px;
}
.sub1-3 .subSwiper .nav-wrap .prev-btn,
.sub1-3 .subSwiper .nav-wrap .next-btn {
    width: 50px;
    height: 50px;
    background: #262626;
    border-radius: 50%;
    text-align: center;
    line-height: 50px;
    color: #fff;
    font-size: 1.563rem;
}
/* sub1_3 */

/* sub1_4 */
.sub1-4 .txt-box {text-align: center;}
.sub1-4 .certificated {
    padding-top: 100px;
    max-width: 1600px;
    margin: 0 auto;
}
.sub1-4 .certificated .certificated-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 50px;
}
.sub1-4 .certificated .certificated-inner .item {
    text-align: center; 
}
.sub1-4 .certificated .certificated-inner .item .img-box {
    overflow: hidden;
}
.sub1-4 .certificated .certificated-inner .item img {
    transition: transform 0.3s ease;
}
.sub1-4 .certificated .certificated-inner .item:hover img {
    transform: scale(1.03);
}
.sub1-4 .certificated .certificated-inner .item p {
    font-size: 1.25rem;
    line-height: 30px;
    font-weight: 500;
}
/* sub1_4 */

/* sub1_5 */
.sub1-5 .img-box {
    text-align: center;
}
.sub1-5 .map {
    max-width: 1400px;
    margin: 0 auto;
}
.sub1-5 .map .map-inner {
    padding: 100px 0 50px;
    position: relative;
}
.sub1-5 .map .map-inner iframe {
    border-radius: 30px;
}
.sub1-5 .map .map-inner .map-btn {
    background: #5F94FF;
    width: fit-content;
    padding: 20px;
    border-radius: 10px;
    position: absolute;
    right: 50px;
    top: 70px;
    font-size: 1.25rem;
    color: #fff;
    font-weight: 800;
    font-family: var(--font-point);
    transition: background 0.1s linear;
}
.sub1-5 .map .map-inner .map-btn:hover {
    background: #262626;

}
.sub1-5 .map .info {
    display: flex;
    justify-content: center;
    text-align: center;
}
.sub1-5 .map .info .txt-box {
    width: 50%;
}
.sub1-5 .map .info .txt-box .item-title {
    font-weight: 900;
}
.sub1-5 .map .info .txt-box .desc {
    font-weight: 400;
}
/* sub1_5 */

/* sub2_1 */
.sub2-1 .intro {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.sub2-1 .intro .desc {padding: 0 50px 0 0;}
.sub2-1 .process {
        margin-top: 100px;
    background: #f5f5f5;
    padding: 100px 0;
}
.sub2-1 .process .process-inner {
        max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.sub2-1 .process .process-inner .item {
    width: 20%;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.sub2-1 .process .process-inner .item:nth-child(1) {z-index: 4;}
.sub2-1 .process .process-inner .item:nth-child(2) {z-index: 3;}
.sub2-1 .process .process-inner .item:nth-child(3) {z-index: 2;}
.sub2-1 .process .process-inner .item:nth-child(4) {z-index: 1;}

.sub2-1 .process .process-inner .item:nth-child(2):after,
.sub2-1 .process .process-inner .item:nth-child(3):after,
.sub2-1 .process .process-inner .item:nth-child(4):after,
.sub2-1 .process .process-inner .item:nth-child(5):after {
    content: '';
    position: absolute;
    left: -95px;
    top: -10px;
    width: 120px;
    height: 120px;
    background: #f5f5f5;
    border-radius: 50%;
}
.sub2-1 .process .process-inner .item .label {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100px;
    border-radius: 0 50px 50px 0;
    width: 105%;
}
.sub2-1 .process .process-inner .item:nth-child(1) .label {background: #00A2FF;}
.sub2-1 .process .process-inner .item:nth-child(2) .label {background: #0084E3;}
.sub2-1 .process .process-inner .item:nth-child(3) .label {background: #0067C8;}
.sub2-1 .process .process-inner .item:nth-child(4) .label {background: #004AAC;}
.sub2-1 .process .process-inner .item:nth-child(5) .label {background: #002C90;}
.sub2-1 .process .item .label .item-title {
        color: #fff;
}
.sub2-1 .process .item .step  {
    padding-left: 30px;
}
.sub2-1 .process .item .step .step-title {
        color: #B2B2B2 !important;
    padding: 0 !important;
}
.sub2-1 .process .item .step .item-desc {
    font-weight: 500;
}
.sub2-1 .manufacturing {
    max-width: 1400px;
    margin: 0 auto;
    padding: 150px 0;
}
.sub2-1 .manufacturing .img-box {
    overflow: hidden;
    border-radius: 30px;
}
.sub2-1 .manufacturing .img-box img {width: 100%; transition: transform 0.3s linear;}
.sub2-1 .manufacturing .img-box:hover img {transform: scale(1.03);}
.sub2-1 .manufacturing .txt-box {
        padding-top: 70px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.sub2-1 .manufacturing .txt-box .desc {
    margin-left: auto;
    padding-right: 70px;
}
.sub2-1 .control {
    background: #262626;
    padding: 150px 0 250px;
}
.sub2-1 .control .control-inner {
    max-width: 1400px;
    margin: 0 auto;
}
.sub2-1 .control .control-inner .block {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}
.sub2-1 .control .control-inner .block .item {
    background: #fff;
    border-radius: 20px;
    border: 2px solid #00A2FF;
    display: flex;
    align-items: center;
    width: 32.3%;
    justify-content: center;
    padding: 20px 0;
}.sub2-1 .control .control-inner .block .item:hover .item-title {
    transform: scale(1.01);
}
.sub2-1 .control .block .item .item-title {
    font-weight: 500;
    transition: transform 0.2s linear;
}
.sub2-1 .control .control-inner .production {
        padding-top: 100px;
}
.sub2-1 .control .control-inner .production .main-title {
    color: #00A2FF;
    text-align: center;
}
.sub2-1 .control .production .production-inner {
        padding-top: 50px;
    display: flex;
    justify-content: space-between;
}
.sub2-1 .control .production .production-inner .item {
    text-align: center;
    color: #fff;
    width: 25%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}
.sub2-1 .control .production .production-inner .item:hover .label {transform: scale(1.02);}
.sub2-1 .control .production .production-inner .item:nth-child(1)  .label::after,
.sub2-1 .control .production .production-inner .item:nth-child(2)  .label::after,
.sub2-1 .control .production .production-inner .item:nth-child(3)  .label::after {
    content: "";
    position: absolute;
    top: 50%;
    background: url(../images/sub/arrow-right.png) no-repeat center / contain;
    width: 15px;
    height: 15px;
    left: 118%;
    transform: translateY(-50%);
}
.sub2-1 .control .production .production-inner .item .label {
    width: 250px;
    height: 250px;
    border: 1px solid #00A2FF;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: transform 0.2s linear;
}
.sub2-1 .control .production .item .label .item-title {
    font-weight: 500;
}
.sub2-1 .control .production .item .item-desc {
    opacity: 0.7;
}
/* sub2_1 */

/* sub3_1 */
.sub3-1 > .txt-box {text-align: center;}
.sub3-1 .story {
    padding-top: 100px;
    max-width: 1400px;
    margin: 0 auto;
}
.sub3-1 .story .story-inner { 
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 50px;
}
.sub3-1 .story .story-inner .story-item { 
    width: 46%;
    border-radius: 40px;
    display: flex;
    flex-direction: column;
    padding: 20px 20px 40px;
    gap: 30px;
  
}
.sub3-1 .story .story-inner .story-item .img-box {overflow: hidden;
border-radius: 20px;}
.sub3-1 .story .story-inner .story-item .img-box img {
    transition: transform 0.3s linear;
}

.sub3-1 .story .story-inner .story-item:hover .img-box img {
    transform: scale(1.03);
}
.sub3-1 .story .story-inner .story-item.blue {background: #00A2FF;}
.sub3-1 .story .story-inner .story-item.orange {background: #FF8200;}
.sub3-1 .story .story-inner .story-item.yellow {background: #FFD633;}
.sub3-1 .story .story-inner .story-item.green {background: #4DCB34;}

.sub3-1 .story .story-inner .story-item img {width: 100%;}
.sub3-1 .story .story-inner .story-item .txt-box {    
    padding-left: 30px;
    color: #fff;
}
.sub3-1 .story .story-item .txt-box .box-title {
    font-weight: 600;
}
/* sub3_1 */

/* sub3_2 */
.sub3-2 > .txt-box {text-align: center;}
.sub3-2 .tech {
    padding-top: 100px;
    position: relative;
}
.sub3-2 .tech .img-box {
    text-align: center;
}
.sub3-2 .tech .tech-inner {
    
}
.sub3-2 .tech .tech-item {
    position: absolute;
}
.sub3-2 .tech .tech-item:nth-child(1) {
    left: 26%;
    top: 14.5%;
    text-align: right;
}
.sub3-2 .tech .tech-item:nth-child(2) {
    top: 28%;
    left: 62%;
}
.sub3-2 .tech .tech-item:nth-child(3) {
    top: 49%;
    left: 22%;
    text-align: right;
}
.sub3-2 .tech .tech-item .icon-box {
    display: none;
}
.sub3-2 .tech .tech-item .txt-box .item-desc {
    font-weight: 400;
    padding-top: 20px;
}
.sub3-2 .tech .deliver {
    background: #262626;
    padding: 100px 0 200px;
    z-index: -1;
    position: relative;
}
.sub3-2 .tech .deliver .desc {
    color: #fff;
    text-align: center;
    font-size: 2.1rem;
    line-height: 50px;
}
.sub3-2 .tech .deliver .desc::before {
    content: '';
    position: absolute;
    width: 13px;
    height: 13px;
    background: #00A2FF;
    border-radius: 50%;
    left: 50%;
    transform: translateX(-50%);
    top: 65px;
}
/* sub3_2 */

/* sub4_1 */
.sub4-1 {
    width: 100%;
    position: relative;
   padding: 0 0 250px 0;
}
.sub4-1 .full-sec {
    height: 100vh; 
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    position: relative;
}
.sub4-1 .page-title {
    color: #00A2FF;
    line-height: 110px;
}
/* 기본 상태 */
.sub4-1 .sec2 .bg-blur {
    position: absolute;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgb(0 162 255 / 60%) 0%, rgba(255, 255, 255, 0) 70%);
    z-index: -1;
    filter: blur(40px);
    
    opacity: 0;
    transform: scale(0.3); 
    transition: all 2s cubic-bezier(0.25, 1, 0.5, 1);
}

.sub4-1 .sec2 .bg-blur:first-child { top: 10%; left: 15%; }
.sub4-1 .sec2 .bg-blur.sec { top: 35%; left: 60%; transition-delay: 0.8s; } 

.sub4-1 .sec2.active .bg-blur {
    opacity: 0.8;
    transform: scale(1.2);
    animation: breathing 5s ease-in-out 1s infinite;
}

.sub4-1 .sec2.active .bg-blur.sec {
    transform: scale(1.2);
    animation: breathing 6s ease-in-out 1.6s infinite reverse;
}

@keyframes breathing {
    0%,100% {
        opacity: 0.8;
        transform: scale(1.2) translate(0, 0);
    }
    50% {
        opacity: 0.4; 
        transform: scale(1.3) translate(20px, -20px); /* 커지면서 대각선 이동 */
    }
}
.sub4-1 .product-brand {
    max-width: 1400px;
    margin: 0 auto;
    text-align: center;
    padding-top: 50px;
}
.sub4-1 .product-brand .page-desc {padding-top: 10px;}
.sub4-1 .product-brand .brand-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-top: 100px;
    gap: 100px;
}
.sub4-1 .brand-box .item .img-box {
    overflow: hidden;
    width: 400px;
    border-radius: 30px;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sub4-1 .brand-box .item:nth-child(1) .img-box {background: #00A2FF;}
.sub4-1 .brand-box .item:nth-child(2) .img-box {background: #FFD633;}
.sub4-1 .brand-box .item:nth-child(3) .img-box {background: #FF8200;}
.sub4-1 .brand-box .item:nth-child(4) .img-box {background: #4DCB34;} 
.sub4-1 .brand-box .item:nth-child(5) .img-box {background: #262626;}
.sub4-1 .brand-box .item .img-box img {
    transition: transform 0.2s linear;
}
.sub4-1 .brand-box .item:hover .img-box img {
    transform: scale(1.05);
}
.sub4-1 .brand-box .item .box-title {
    padding-top: 30px;
    font-weight: 700;
}

/* sub4_2 */
.brand-detail {
        background: rgb(1 58 114 / 10%);
    padding: 100px 0;
}
.brand-detail .sub-inner {
        /* max-width: 1400px; */
    margin: 150px auto;
    overflow: hidden;
    border-radius: 60px;
    
}
.brand-visual,
.brand-intro,
.product-list,
.brand-logo {
    max-width: 1400px;
    margin: 0 auto;
    overflow: hidden;
}
.product-list, .brand-intro {background: #fff;}
.brand-logo {
border-radius: 0 0 50px 50px;
}
.product-slide {margin-left: 253px;
overflow: hidden;}
.brand-detail .swiper-pagination {bottom: 25px !important;}
.brand-detail .swiper-pagination-bullet {    
    background: #fff !important;
    opacity: 0.5 !important;
}
.brand-detail .swiper-pagination-bullet-active {background: #fff !important; opacity: 1 !important;}
.brand-detail .brand-intro {
        display: flex;
    justify-content: center;
    gap: 100px;
    padding: 150px;
}
.brand-detail .brand-intro .img-box {
        background: #00A2FF;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 30px;
    width: 50%;
    height: 500px;
}
.brand-detail .brand-intro .txt-box {
    width: 50%;
}
.brand-detail .brand-intro .txt-box .desc {
        padding-top: 50px;
}
.brand-detail .brand-intro .txt-box .brand-title {
    padding-top: 10px;
}
.brand-detail .brand-intro .txt-box .item-desc {
        padding-top: 30px;
        line-height: 30px;
}
.brand-detail .product-slide { 
    background: #00A2FF;
    padding: 150px;
}
.brand-detail .product-slide .list-title {
    font-family: var(--font-point2);
    color: #fff;
    font-size: 3.125rem;
    font-weight: 800;
}
.brand-detail .product-slide .product-list-Swiper {
    padding-top: 50px;
}
.brand-detail .product-slide .product-list-Swiper .img-box {
    background: rgb(255 255 255 / 40%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 100px 0;
    border-radius: 30px;
     transition: transform 0.3s linear;
}
.brand-detail .product-slide .product-list-Swiper .img-box img {
    transition: transform 0.3s linear;
}
.brand-detail .product-slide .product-list-Swiper .img-box:hover {background: rgb(255 255 255 / 80%);}
.brand-detail .product-slide .product-list-Swiper .img-box:hover img {
    transform: scale(1.03);
}
.brand-detail .product-slide .product-list-Swiper .box-title {
    color: #fff;
    font-weight: 500;
    padding-top: 20px;
}

.brand-detail .product-list {
    padding: 150px;
}
.brand-detail .product-list .list-inner {
        display: flex;
    flex-direction: column;
    gap: 50px;
}
.brand-detail .product-list .list-inner .item {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.brand-detail .product-list .list-inner .item .info .item-desc {
    font-family: var(--font-point2);
    color: #666666;
    line-height: 30px;
    padding: 0;
    padding-top: 30px;
}
.brand-detail .product-list .list-inner .item .info .item-desc:first-child {
    color: #00A2FF;
    font-weight: 500;
}
.brand-detail .product-list .list-inner .item .info .sub-title {
    font-style: unset;
    font-weight: 600;
    padding-top: 10px;
    line-height: 54px;
}
.brand-detail .product-list .list-inner .item .btn {
    margin-top: 50px;
    background: #262626;
    width: fit-content;
    border-radius: 50px;
    transition: background 0.3s linear;
    width: 150px;
    height: 50px;
}
.brand-detail .product-list .list-inner .item .btn a {
    font-family: var(--font-point);
    color: #fff;
    font-weight: 900;
    display: flex;
    align-items: center;
        justify-content: center;
        line-height: 50PX;
}
.brand-detail .product-list .list-inner .item .btn img {
    padding-left: 10px;
    transition: transform 0.3s linear;
}
.brand-detail .product-list .list-inner .item .btn:hover {background: #00A2FF;}
.brand-detail .product-list .list-inner .item .btn:hover img {transform: translate(2px, -2px);}
.brand-detail .product-list .list-inner .item .img-box {
background: rgb(245 245 245 / 80%);
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 530px;
    border-radius: 30px;
}
.brand-detail .product-list .list-inner .item .img-box img {
    transition: transform 0.3s linear;
}
.brand-detail .product-list .list-inner .item .img-box:hover img {
    transform: scale(1.03);
}
.brand-detail .brand-logo  {
    display: flex;
}
.brand-detail .brand-logo .img-box {
    width: 50%;
    background: #FFD633;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px;
}
.brand-detail .brand-logo .img-box:first-child {
background: #262626;
}
.brand-detail .brand-logo .img-box img {
    transition: transform 0.3s linear; 
}
.brand-detail .brand-logo .img-box:hover img {
    transform: scale(1.03);
}

/* sub4_3 */
.sub4-3.brand-detail {background: rgb(255 214 51 / 10%);}
.sub4-3.brand-detail .brand-intro .img-box {
    background: #FFD633;}
.sub4-3.brand-detail .product-slide {
    background: #FFD633;}
.sub4-3.brand-detail .product-list .list-inner .item .info .item-desc:first-child {
    color: #FFD633;
}
.sub4-3.brand-detail .product-list .list-inner .item .btn:hover {
    background: #FFD633;
}
.sub4-3.brand-detail .brand-logo .img-box {
    background: #FF8200;}
.sub4-3.brand-detail .brand-logo .img-box:first-child {
    background: #00A2FF;
}

/* sub4_4 */
.sub4-4.brand-detail {background: rgb(255 177 100 / 10%);}
.sub4-4.brand-detail .brand-intro .img-box {
    background: #FF8200;}
.sub4-4.brand-detail .product-slide {
    background: #FF8200;}
.sub4-4.brand-detail .product-list .list-inner .item .info .item-desc:first-child {
    color: #FF8200;
}
.sub4-4.brand-detail .product-list .list-inner .item .btn:hover {
    background: #FF8200;
}
.sub4-4.brand-detail .brand-logo .img-box {
    background: #4DCB34;}
.sub4-4.brand-detail .brand-logo .img-box:first-child {
    background: #FFD633;
}

/* sub4_5 */
.sub4-5.brand-detail {background: rgb(77 203 52 / 10%);}
.sub4-5.brand-detail .brand-intro .img-box {
    background: #4DCB34;}
.sub4-5.brand-detail .product-slide {
    background: #4DCB34;}
.sub4-5.brand-detail .product-list .list-inner .item .info .item-desc:first-child {
    color: #4DCB34;
}
.sub4-5.brand-detail .product-list .list-inner .item .btn:hover {
    background: #4DCB34;
}
.sub4-5.brand-detail .brand-logo .img-box {
    background: #262626;}
.sub4-5.brand-detail .brand-logo .img-box:first-child {
    background: #FF8200;
}

/* sub4_6 */
.sub4-6.brand-detail {background: rgb(38 38 38 / 10%);}
.sub4-6.brand-detail .brand-intro .img-box {
    background: #262626;}
.sub4-6.brand-detail .product-slide {
    background: #262626;}
.sub4-6.brand-detail .product-list .list-inner .item .info .item-desc:first-child {
    color: #262626;
}
.sub4-6.brand-detail .product-list .list-inner .item .btn:hover {
    background: rgb(38 38 38 / 50%);;
}
.sub4-6.brand-detail .brand-logo .img-box {
    background: #00A2FF;}
.sub4-6.brand-detail .brand-logo .img-box:first-child {
    background: #4DCB34;
}






/* 모달 공통 */
body.modal-open { overflow: hidden; }
.custom-modal { 
    display: none; 
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    z-index: 9999; 
}
.custom-modal.active { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
}
.modal-overlay { 
    position: absolute; 
    width: 100%; 
    height: 100%; 
    background: rgba(0,0,0,0.8); 
}
.modal-inner { 
    position: relative;
    width: 100%;
    max-width: 1200px;
    height: 90vh;
    border-radius: 30px;
    background: #fff;

    overflow-y: auto; 
    
    -ms-overflow-style: none; 
    scrollbar-width: none;
}
.modal-content::-webkit-scrollbar {
    display: none; 
}
.modal-content {
    height: 100%;
    padding: 100px;
}
.modal-close { 
    position: fixed; 
top: 65px;
    right: 380px;
    width: 40px; 
    height: 40px; 
    border-radius: 50%; 
    background: #262626; 
    color: #fff; 
    border: none; 
    cursor: pointer; 
    font-size: 1rem; 
    z-index: 10; 
}
.modal-visual .img-box {text-align: center;}
.modal-intro {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.modal-intro .txt-box {
    display: flex;
}
.modal-intro .txt-box .right {
    display: flex;
    flex-direction: column;
    gap: 40px;
    width: 50%;
}
.modal-sub-title {
    color: #999999;
    font-family: var(--font-point2);
    font-size: 1.25rem;
}
.modal-main-title {
    width: 50%;
    font-size: 2.813rem;
    font-family: var(--font-point2);
    font-weight: 700;
}
.modal-desc {
    color: #666666;
    font-family: var(--font-point);
    font-size: 1.25rem;
    line-height: 30px;
    letter-spacing: -0.25px;
}
.cont-title {
    font-size: 1.563rem;
    font-family: var(--font-point2);
    font-weight: 700;
}
.modal-intro .tag {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.modal-intro .tag .point {
    color: #fff;
    font-family: var(--font-point);
    font-size: 1.25rem;
    padding: 10px 20px;
    border-radius: 50px;
    font-weight: 500;
}
.feature {padding-top: 100px;}
.feature .feature-inner {
    display: flex;
    justify-content: space-between;
    padding-top: 50px;
}
.feature .feature-inner .item {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.feature .feature-inner .item .img-box {
   
}
.feature .feature-inner .item .img-box img {
 height: 60px;
}
.routine {padding: 100px 0;}
.routine .routine-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: center;
    padding-top: 50px;
}
.routine .routine-inner .item {
    width: 48%;
    position: relative;
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 15px 0;
    text-align: center;
}
.routine .routine-inner .item img {
position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
}

.sub4-2-modal.brand-grade-01 .modal-content { background: linear-gradient(rgb(193 218 128 / 50%) 0%, #fff 70%);}
.sub4-2-modal.brand-grade-01 .modal-content .tag .point { 
        background: #C1DA80;
}
.sub4-2-modal.brand-grade-02 .modal-content { background: linear-gradient(rgb(76 186 212 / 50%) 0%, #fff 70%);}
.sub4-2-modal.brand-grade-02 .modal-content .tag .point { 
        background: #4CBAD4;
}
.sub4-2-modal.brand-grade-03 .modal-content { background: linear-gradient(rgb(158 216 245 / 50%) 0%, #fff 70%);}
.sub4-2-modal.brand-grade-03 .modal-content .tag .point { 
        background: #9ED8F5;
}
.sub4-2-modal.brand-grade-04 .modal-content { background: linear-gradient(rgb(122 176 75 / 50%) 0%, #fff 70%);}
.sub4-2-modal.brand-grade-04 .modal-content .tag .point { 
        background: #7AB04B;
}
.sub4-2-modal.brand-grade-05 .modal-content { background: linear-gradient(rgb(232 129 32 / 50%) 0%, #fff 70%);}
.sub4-2-modal.brand-grade-05 .modal-content .tag .point { 
        background: #E88120;
}
.sub4-2-modal.brand-grade-06 .modal-content { background: linear-gradient(rgb(246 218 47 / 50%) 0%, #fff 70%);}
.sub4-2-modal.brand-grade-06 .modal-content .tag .point { 
        background: #F6DA2F;
}
.sub4-2-modal.brand-grade-07 .modal-content { background: linear-gradient(rgb(237 201 137 / 50%) 0%, #fff 70%);}
.sub4-2-modal.brand-grade-07 .modal-content .tag .point { 
        background: #EDC989;
}

.sub4-3-modal.brand-grade-01 .modal-content { background: linear-gradient(rgb(255 180 27 / 50%) 0%, #fff 70%);}
.sub4-3-modal.brand-grade-01 .modal-content .tag .point { 
        background: #FFB41B;
}

.sub4-3-modal.brand-grade-02 .modal-content { background: linear-gradient(rgb(150 210 47 / 50%) 0%, #fff 70%);}
.sub4-3-modal.brand-grade-02 .modal-content .tag .point { 
        background: #96D22F;
}

.sub4-3-modal.brand-grade-03 .modal-content { background: linear-gradient(rgb(219 20 70 / 50%) 0%, #fff 70%);}
.sub4-3-modal.brand-grade-03 .modal-content .tag .point { 
        background: #DB1446;
}

.sub4-4-modal.brand-grade-01 .modal-content { background: linear-gradient(rgb(250 173 105 / 50%) 0%, #fff 70%);}
.sub4-4-modal.brand-grade-01 .modal-content .tag .point { 
        background: #FAAD69;
}

.sub4-4-modal.brand-grade-02 .modal-content { background: linear-gradient(rgb(219 74 68 / 50%) 0%, #fff 70%);}
.sub4-4-modal.brand-grade-02 .modal-content .tag .point { 
        background: #DB4A44;
}

.sub4-4-modal.brand-grade-03 .modal-content { background: linear-gradient(rgb(193 218 128 / 50%) 0%, #fff 70%);}
.sub4-4-modal.brand-grade-03 .modal-content .tag .point { 
        background: #C1DA80;
}

.sub4-5-modal.brand-grade-01 .modal-content { background: linear-gradient(rgb(150 210 47 / 50%) 0%, #fff 60%);}
.sub4-5-modal.brand-grade-01 .modal-content .tag .point { 
        background: #96D22F;
}

.sub4-5-modal.brand-grade-02 .modal-content { background: linear-gradient(rgb(219 20 70 / 50%) 0%, #fff 60%);}
.sub4-5-modal.brand-grade-02 .modal-content .tag .point { 
        background: #DB1446;
}

.sub4-5-modal.brand-grade-03 .modal-content { background: linear-gradient(rgb(89 81 164 / 50%) 0%, #fff 60%);}
.sub4-5-modal.brand-grade-03 .modal-content .tag .point { 
        background: #5951A4;
}

.sub4-5-modal.brand-grade-04 .modal-content { background: linear-gradient(rgb(204 183 150 / 50%) 0%, #fff 60%);}
.sub4-5-modal.brand-grade-04 .modal-content .tag .point { 
        background: #CCB796;
}

.sub4-6-modal.brand-grade-01 .modal-content { background: linear-gradient(rgb(150 87 47 / 50%) 0%, #fff 70%);}
.sub4-6-modal.brand-grade-01 .modal-content .tag .point { 
        background: #96572F;
}

.sub4-6-modal.brand-grade-02 .modal-content { background: linear-gradient(rgb(95 49 0 / 50%) 0%, #fff 60%);}
.sub4-6-modal.brand-grade-02 .modal-content .tag .point { 
        background: #5F3100;
}

.sub4-6-modal.brand-grade-03 .modal-content { background: linear-gradient(rgb(140 41 34 / 50%) 0%, #fff 60%);}
.sub4-6-modal.brand-grade-03 .modal-content .tag .point { 
        background: #8C2922;
}

.sub4-6-modal.brand-grade-04 .modal-content { background: linear-gradient(rgb(159 123 75 / 50%) 0%, #fff 60%);}
.sub4-6-modal.brand-grade-04 .modal-content .tag .point { 
        background: #9F7B4B;
}



















/* sub5_1 */
.sub5-1 .sub-inquiry {
    border-top: 2px solid #262626;
    max-width: 1400px;
    margin: 0 auto;
}
.sub5-1 .inquiry-inner {
    padding-top: 50px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.sub5-1 .inquiry-inner .inquiry-item {
display: flex;
align-items: center;
}
.sub5-1 .inquiry-inner .inquiry-item.textarea,
.sub5-1 .inquiry-inner .inquiry-item.file {
    align-items: flex-start;
}
.sub5-1 .inquiry-inner .inquiry-item.textarea .title,
.sub5-1 .inquiry-inner .inquiry-item.file .title {
    padding-top: 10px;
}
.sub5-1 .inquiry-inner .inquiry-item .title {
width: 220px;
    font-size: 1.563rem;
    font-family: var(--font-point);
}
.sub5-1 .inquiry-inner .inquiry-item .req {
    color: #00A2FF;
}
.sub5-1 .inquiry-inner .inquiry-item input {
font-size: 1.25rem;
    padding: 10px;
    border-radius: 10px;
    border: 1px solid #B2B2B2;
    width: 40%;
    font-family: var(--font-point);
    height: 50px;
}
.sub5-1 .inquiry-inner .inquiry-item textarea {
    width: 84%;
    border: 1px solid #b2b2b2;
    border-radius: 10px;
    padding: 10px;
    font-size: 1.25rem;
    font-family: var(--font-point);
}
.sub5-1 .inquiry-inner .inquiry-item input::placeholder,
.sub5-1 .inquiry-inner .inquiry-item textarea::placeholder {
    color: #E5E5E5;
}
.sub5-1 .inquiry-inner .inquiry-item input:focus,
.sub5-1 .inquiry-inner .inquiry-item textarea:focus {
    outline: none;
    border: 1px solid #00A2FF;
}
.sub5-1 .attached .file input {
    display: none;
}
.sub5-1 .inquiry-inner .inquiry-item.file .attached {width: 40%;}
.sub5-1 .inquiry-inner .inquiry-item.file .file {
        display: flex;
    border: 1px solid #B2B2B2;
    border-radius: 10px;
    align-items: center;
}
.sub5-1 .inquiry-inner .inquiry-item.file .plus {
    padding-left: 10px;
}
.sub5-1 .inquiry-inner .inquiry-item.file .file-name {
width: 100%;
    font-size: 1.25rem;
    color: #4d4d4d;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    height: 50px;
    display: inline-flex;
    align-items: center;
    padding-left: 10px;
    font-family: var(--font-point);
}
.sub5-1 .inquiry-inner .inquiry-item.file .file-btn {
background: #262626;
    color: #fff;
    display: inline-flex;
    height: 50px;
    padding: 0 30px;
    font-size: 18px;
    border-radius: 10px;
    cursor: pointer;
    white-space: nowrap;
    align-items: center;
}
.sub5-1 .inquiry-inner .inquiry-item.file .desc {
    font-size: 1.1em;
    color: #666;
    padding-top: 10px;
}
.sub5-1 .inquiry-inner .inquiry-item.captcha .captcha-wrap {
    display: flex;
    gap: 20px;
}
.sub5-1 .inquiry-inner .inquiry-item.captcha .input-area {
    display: flex;
    gap: 20px;
    align-items: center;
}
.sub5-1 .inquiry-inner .inquiry-item.captcha .captcha-desc {
    font-size: 1.3rem;
    color: #666;
    white-space: nowrap;
    font-family: var(--font-point);
}
.sub5-1 .btn {
margin: 100px auto 0;
    width: 200px;
    height: 70px;
    background: #00A2FF;
    text-align: center;
    border-radius: 50px;
}
.sub5-1 .btn button {
    font-size: 1.875rem;
    line-height: 70px;
    color: #fff;
    font-family: var(--font-point);
}





















/* sub5_1 */
