@charset "utf-8";

/* Sub Visual */
/* Sub Visual */
#sub_visual {
    position: relative;
    width: 100%;
    height: clamp(400px, 50vw, 700px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    padding: 0 20px;
    box-sizing: border-box;
}

#sub_visual .sub_bg {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}

#sub_visual .sub_bg .bg_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*opacity: 0.4;*/
}

#sub_visual .sub_bg .bg_overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 527px;
    background: linear-gradient(180deg, rgba(12, 15, 21, 0) 0%, #0c0f15 100%);
}

.nav01 {
    background: url('../img/sub/sub_bg_01.jpg') no-repeat center/cover;
}

.nav02 {
    background: url('../img/sub/sub_bg_02.jpg') no-repeat center/cover;
}

.nav02.bg01 {
    background: url('../img/sub/sub_bg_02-01.jpg') no-repeat center/cover;
}

.nav02.bg02 {
    background: url('../img/sub/sub_bg_02-02.jpg') no-repeat center/cover;
}

.nav02.bg03 {
    background: url('../img/sub/sub_bg_02-03.jpg') no-repeat center/cover;
}

.nav02.bg04 {
    background: url('../img/sub/sub_bg_02-04.jpg') no-repeat center/cover;
}

.nav02.bg05 {
    background: url('../img/sub/sub_bg_02-05.jpg') no-repeat center/cover;
}

.nav02.bg06 {
    background: url('../img/sub/sub_bg_02-06.jpg') no-repeat center/cover;
}

.nav03 {
    background: url('../img/sub/sub_bg_03.jpg') no-repeat center/cover;
}

.nav04 {
    background: url('../img/sub/sub_bg_04.jpg') no-repeat center/cover;
}

.nav05 {
    background: url('../img/sub/sub_bg_05.jpg') no-repeat center/cover;
}

#sub_visual::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
}

#sub_visual .visual_txt {
    position: relative;
    margin: 0;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    /* Limit width */
}

#sub_visual .visual_txt .sub_tit {
    margin: clamp(30px, 5vw, 64px) 0;
    color: #00D4FF;
    text-align: center;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.70);
    font-size: clamp(14px, 1.5vw, 18px);
    font-weight: 400;
    letter-spacing: clamp(4px, 1vw, 9px);
    text-transform: uppercase;
}

#sub_visual .visual_txt .main_title {
    color: #FFF;
    text-align: center;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.70);
    font-size: clamp(30px, 5vw, 60px);
    font-weight: 800;
    line-height: 1.2;
    word-break: keep-all;
    /* Prevent breaking in awkward places */
}

#sub_visual .visual_txt .sub_title {
    margin-top: clamp(20px, 3vw, 40px);
    color: #FFF;
    text-align: center;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.70);
    font-size: clamp(18px, 2.5vw, 28px);
    font-weight: 400;
    line-height: 1.4;
    word-break: keep-all;
}

.nav_2ul_wrap {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 50px 0;
}

.nav_2ul_wrap .nav_2ul {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}

.nav_2ul_wrap .nav_2ul li {
    position: relative;
}

.nav_2ul_wrap .nav_2ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 40px;
    border-radius: 8px;
    background: #EEF1F7;
    font-size: 22px;
    font-weight: 500;
    color: #2c3e50;
}

.nav_2ul_wrap .nav_2ul li.active a,
.nav_2ul_wrap .nav_2ul li a:hover {
    background: #1E3155;
    color: #fff;
}

@media (max-width: 768px) {
    .nav_2ul_wrap {
        display: none;
    }
}

/* mobile */
.m-menu {
    display: none;
}

.m-menu .mnav-ul {}

.m-menu .mnav-ul li .mnav-1a {
    display: block;
    background: #1E3155;
    font-size: 15px;
    color: #fff;
    height: 50px;
    line-height: 48px;
    font-weight: 400;
    cursor: pointer;
    padding: 0 25px;
    letter-spacing: 0;
    position: relative;
}

.m-menu .mnav-ul li .mnav-1a>span {
    display: block;
    content: '';
    position: absolute;
    background: url('../img/sub/icon_nav_triangle.png')no-repeat center;
    right: 15px;
    top: 50%;
    width: 16px;
    height: 12px;
    margin-top: -6px;
    transition: all 0.5s;
}

.m-menu .mnav-ul li .mnav-1a .on {
    transform: rotate(180deg);
}

.m-menu .mnav-ul li ul {
    position: relative;
    display: none;
    position: absolute;
    left: -1px;
    z-index: 10;
    width: calc(100% + 2px);
    border: 1px solid #e3e3e3;
    padding: 15px 30px;
    background: #fff;
}

.m-menu .mnav-ul li ul li {
    border-bottom: 0;
    border-right: 0;
    transition: 0.3s;
    background: #fff;
    padding: 3px 0;
}

.m-menu .mnav-ul li ul li a {
    display: block;
    /* line-height: 1; */
    color: #6c6c6c;
    letter-spacing: 0;
    font-size: 14px;
    word-break: keep-all;
    line-height: 25px;
}

.m-menu .mnav-ul li ul li a:hover {
    color: #005ad4;
    font-weight: bold;
    text-decoration: underline;
}

@media (max-width:1650px) {
    #sub_visual .visual__wrap {
        height: 450px;
    }

    #sub_visual .menu-wr li a {
        padding: 23px 0;
    }
}

@media (max-width:1400px) {
    #sub_visual .visual__wrap {
        height: 400px;
    }

    #sub_visual .menu-wr li a {
        padding: 15px 0;
        font-size: 15px;
    }

    #sub_visual .top-con {
        margin-top: 140px;
    }

    #sub_visual .nav-top-wr {
        padding: 0 20px;
    }

    #sub_visual .nav-tit {
        top: 52%;
    }

    #sub_visual.nav03 .nav-tit {
        top: 58%;
    }
}

@media (max-width:1300px) {
    #sub_visual .visual__wrap {
        height: 310px;
    }

    #sub_visual .nav-top-wr .home {
        width: 50px;
        height: 50px;
        line-height: 48px;
    }

    #sub_visual .nav-top-wr .nav_ul li {
        height: 50px;
    }

    #sub_visual .nav-top-wr .nav_ul li .nav_1a {
        height: 50px;
        line-height: 50px;

    }
}

@media (max-width:1024px) {
    #sub_visual .visual__wrap {
        height: 300px;
    }

    #sub_visual .menu-wr li a {
        padding: 20px 0;

    }

    #sub_visual .menu-wr li a p:after {
        right: -8px;
    }
}

@media (max-width:960px) {
    #sub_visual .menu-wr li a {
        font-size: 15px;
    }

    #sub_visual .menu-wr li a p.long {
        font-size: 13px;
    }
}

@media (max-width:768px) {
    #sub_visual .top-con {
        display: none;
    }

    #sub_visual .visual__wrap {
        height: 250px;
    }

    #sub_visual .visual__wrap .nav__route {
        bottom: 70px;
        width: 100%;
    }

    #sub_visual .visual__wrap .nav__route ul {
        justify-content: center;
    }

    #sub_visual .visual__wrap .nav__route ul li {
        font-size: 14px;
    }

    .pc-menu {
        display: none
    }

    .m-menu {
        display: block;
    }
}

@media (max-width:500px) {
    #sub_visual .visual__wrap .nav-title {
        font-size: 24px;
    }

    #sub_visual .visual__wrap .nav__route {
        bottom: 80px;
    }
}

/* sub navigation background */
#sub-nav.nav01 {
    background: url(../img/sub/sub_visual_1.jpg)no-repeat center;
    background-size: cover;
}

#sub-nav.nav02 {
    background: url(../img/sub/sub_visual_2.jpg)no-repeat center;
    background-size: cover;
}

#sub-nav.nav03 {
    background: url(../img/sub/sub_visual_3.jpg)no-repeat center;
    background-size: cover;
}

#sub-nav.nav04 {
    background: url(../img/sub/sub_visual_4.jpg)no-repeat center;
    background-size: cover;
}

#sub-nav.nav05 {
    background: url(../img/sub/sub_visual_5.jpg)no-repeat center;
    background-size: cover;
    z-index: 2;
}

#sub-nav.nav06 {
    background: url(../img/sub/sub_visual_2.jpg)no-repeat center;
    background-size: cover;
}

#sub-nav.nav07 {
    background: url(../img/sub/sub_visual_7.jpg)no-repeat center;
    background-size: cover;
}


/* navigation */
#sub-nav {
    position: relative;
    width: 100%;
    margin-top: 80px;
    height: 300px;
    /* border-radius: 25px; */
    /* max-width: 1770px; */
    margin: 0 auto 0;
    z-index: 1;
}

#sub-nav .visual__wrap {
    width: 100%;
    height: 300px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
}

#sub-nav .visual__wrap .nav-title {
    position: absolute;
    color: #fff;
    font-size: 50px;
    font-weight: 800;
    letter-spacing: 4px;
    text-align: left;
    max-width: 1500px;
    width: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

#sub-nav .visual__wrap .nav-route {
    position: absolute;
    left: 30px;
    top: 40px;
    color: #fff;
    font-size: 20px;
}

#sub-nav .visual__wrap .nav-route ul {}

#sub-nav .visual__wrap .nav-route ul li {
    padding: 0 15px;
    position: relative;
    font-size: 20px;
    color: #fff;
}

#sub-nav .visual__wrap .nav-route ul li:after {
    display: block;
    content: '·';
    position: absolute;
    top: 1px;
    right: -3px;
    font-size: 20px;
    font-weight: 700;
}

#sub-nav .visual__wrap .nav-route ul li:last-child:after {
    display: none;
}

#sub-nav .menu-wr {
    text-align: center;
    /* box-shadow: 0 4px 8px -7px #6f6f6f8a; */
    position: absolute;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    bottom: 76px;
    padding: 20px;
}

#sub-nav .menu-wr ul {
    display: inline-flex;
    justify-content: center;
    background: #fff;
    border-radius: 40px;
    width: auto;
    padding: 0 40px;
    flex-wrap: nowrap;
}

#sub-nav .menu-wr ul.eight li {
    flex: 0 0 auto;
    width: auto;
    padding: 0 clamp(20px, 5vw, 40px);
}

#sub-nav .menu-wr ul.seven li {
    flex: 0 0 auto;
    width: auto;
    padding: 0 20px;
}

#sub-nav .menu-wr ul.four li {
    flex: 0 0 auto;
    width: auto;
    padding: 0 20px;
}

#sub-nav .menu-wr ul.five li {
    flex: 0 0 auto;
    width: auto;
    padding: 0 20px;
}

#sub-nav .menu-wr li {
    position: relative;
}

#sub-nav .menu-wr li a {
    position: relative;
    display: block;
    width: 100%;
    padding: 22px 0px;
    font-size: 20px;
    color: #bfbfbf;
    font-weight: 500;
    transition: all 0.3s;
}

#sub-nav .menu-wr li:after {
    content: "";
    position: absolute;
    right: -3px;
    top: 50%;
    transform: translateY(-50%);
    background: #003358;
    width: 7px;
    height: 7px;
    border-radius: 50%;
}

#sub-nav .menu-wr li:last-child:after {
    display: none;
}

/* #sub-nav .menu-wr li a:after{position:absolute;display: none;content:'';width: calc(100% - 80px);height: 3px;left: 40px;bottom: 0;background: #fff;} */
#sub-nav .menu-wr li a:hover {
    color: #003358;
    font-weight: 900;
}

/* #sub-nav .menu-wr li a:hover:after {display:block;} */
#sub-nav .menu-wr li a.active {
    color: #003358;
    font-weight: 900;
}

/* #sub-nav .menu-wr li a.active:after{display:block;} */
#sub-nav.nav01 .menu-wr li {}

#sub-nav.nav04 .menu-wr {
    justify-content: center;
}

#sub-nav.nav04 .menu-wr li {}

#sub-nav .fix {
    position: fixed;
    top: 10px;
    width: 100%;
    left: 0;
    z-index: 100;
    padding: 0 20px;
    box-shadow: unset;
}

#sub-nav .fix ul {
    box-shadow: 10px 10px 30px #00000014;
    background-color: rgba(255, 255, 255, .2);
    backdrop-filter: blur(10px);
    padding: 0 1rem;
    height: 70px;
    align-items: center;
    border-radius: 60px;
    gap: 5px;
    max-width: 1500px;
    margin: 0 auto;
}

#sub-nav .menu-wr.fix li a {
    color: #000;
    font-size: clamp(14px, 2vh, 20px);
    padding: 0;
}

#sub-nav .menu-wr.fix li a.active {
    color: #fff;
    background: #003358;
    padding: 10px;
    border-radius: 30px
}

#sub-nav .menu-wr.fix li a.active:hover {
    color: #fff;
    background: #003358;
    padding: 10px;
    border-radius: 30px
}

#sub-nav .menu-wr.fix li a:hover {
    color: #fff;
    background: #00335885;
    padding: 10px;
    border-radius: 30px
}

@media (max-width:1650px) {
    #sub-nav .visual__wrap {
        /* height: 400px; */
    }

    #sub-nav .menu-wr li a {
        padding: 23px 0;
    }
}

@media (max-width:1440px) {
    #sub-nav .visual__wrap {
        /* height: 350px; */
    }

    #sub-nav .visual__wrap .nav-title {
        font-size: 46px;
        text-align: center;
    }

    #sub-nav .menu-wr ul {
        display: inline-flex;
        justify-content: center;
        background: #fff;
        border-radius: 40px;
        width: auto;
        padding: 0 40px;
    }

    #sub-nav .menu-wr ul.eight li,
    #sub-nav .menu-wr ul.seven li,
    #sub-nav .menu-wr ul.four li,
    #sub-nav .menu-wr ul.five li {
        flex: 0 0 auto;
        width: auto;
        padding: 0 clamp(16px, 2vw, 25px);
    }
}

@media (max-width:1300px) {
    #sub-nav .visual__wrap {
        /* height: 260px; */
    }

    #sub-nav .visual__wrap .nav-title {
        font-size: 38px;
    }
}

@media (max-width:1024px) {
    #sub-nav {}

    #sub-nav .visual__wrap {
        height: 300px;
    }

    #sub-nav .visual__wrap .nav-title {
        font-size: clamp(28px, 3.2vw, 42px);
    }

    #sub-nav .menu-wr li a {
        padding: 20px 0;
        font-size: clamp(16px, 2vw, 20px);
    }

    #sub-nav .menu-wr li a p:after {
        right: -8px;
    }

    #sub-nav.nav03 {}
}

@media (max-width:960px) {
    .footer__sub .footer__content {
        padding: 20px;
    }

    #sub-nav .menu-wr li a {}

    #sub-nav .menu-wr li a p.long {
        font-size: 13px;
    }
}

@media (max-width:768px) {
    #sub-nav {
        border-radius: 0
    }

    .pc-menu {
        display: none
    }

    .m-menu {
        display: block;
        position: absolute;
        width: 100%;
        bottom: 0;
    }
}

@media (max-width:500px) {
    #sub-nav {
        height: 400px !important;
    }
}



/* sub_default */
.page_tit {
    text-align: center;
    margin-bottom: 40px;
}

.page_tit h2 {
    font-size: 40px;
    font-weight: 700;
    color: #17223b;
}

.sub {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
}

/* Sub Page Common */
.sub_page {
    position: relative;
    top: -100px;
    padding: 50px 0;
    min-height: 500px;
    background-color: #0c0f15;
}

.sub_page .inner {
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 20px;
    text-align: center;
}



/* Sub 1-1 Page Styles */
#sub1_1 {
    position: relative;
    width: 100%;
    min-height: 100vh;
    overflow: hidden;
    padding-bottom: 200px;
}

/* Background */


/* Content Wrapper */
#sub1_1 .sub_content_wrap {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1512px;
    margin: 0 auto;
    padding-top: 180px;
    /* Approximate padding to push content down */
    text-align: center;
}

/* Header */
#sub1_1 .sub_header {
    margin-bottom: clamp(40px, 8vw, 80px);
    color: #fff;
}

#sub1_1 .sub_header .company_txt {
    font-weight: 500;
    color: #00e0b3;
    /* Guessing color from screenshot */
    margin-bottom: 20px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: clamp(14px, 1.5vw, 16px);
}

#sub1_1 .sub_header .main_title {
    font-family: 'Pretendard';
    font-weight: 800;
    font-size: clamp(32px, 5vw, 60px);
    line-height: 1.2;
    letter-spacing: -1.2px;
    margin-bottom: clamp(20px, 4vw, 40px);
}

#sub1_1 .sub_header .sub_title {
    font-family: 'Pretendard';
    font-weight: 400;
    font-size: clamp(18px, 2.5vw, 28px);
    letter-spacing: -1.12px;
    color: #fff;
}

/* Cards */
#sub1_1 .cards_list {
    display: flex;
    justify-content: center;
    gap: clamp(20px, 4vw, 44px);
    margin-bottom: clamp(60px, 10vw, 120px);
    flex-wrap: wrap;
}

#sub1_1 .cards_list .card_item {
    width: clamp(300px, 30vw, 474px);
    padding: clamp(30px, 5vw, 50px) 0 clamp(40px, 6vw, 60px) 0;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    box-shadow: 0px 8px 32px 0px rgba(0, 0, 0, 0.25);
    display: flex;
    flex-direction: column;
    align-items: center;
}

#sub1_1 .cards_list .card_item .card_icon {
    width: clamp(60px, 8vw, 80px);
    height: clamp(60px, 8vw, 80px);
    border-radius: 16px;
    border: 1px solid rgba(255, 107, 0, 0.25);
    background: linear-gradient(135deg, rgba(255, 107, 0, 0.125) 0%, rgba(255, 107, 0, 0.063) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: clamp(20px, 3vw, 33px);
}

#sub1_1 .cards_list .card_item:nth-child(2) .card_icon {
    border-color: rgba(0, 224, 179, 0.25);
    background: linear-gradient(135deg, rgba(0, 224, 179, 0.125) 0%, rgba(0, 224, 179, 0.063) 100%);
}

#sub1_1 .cards_list .card_item .card_icon img {
    width: clamp(30px, 4vw, 40px);
    height: clamp(30px, 4vw, 40px);
}

#sub1_1 .cards_list .card_item .card_txt {
    font-family: 'Pretendard';
    font-weight: 900;
    font-size: clamp(20px, 2.5vw, 30px);
    line-height: 1.3;
    letter-spacing: -1.38px;
    text-align: center;
    color: #ff6b00;
}

#sub1_1 .cards_list .card_item:nth-child(2) .card_txt {
    color: #00D4FF;
    /* Cyan color */
}

/* Intro Text */
#sub1_1 .intro_text {
    width: 100%;
    max-width: 1042px;
    margin: 0 auto;
    font-family: 'Pretendard';
    font-weight: 300;
    font-size: clamp(16px, 2vw, 22px);
    line-height: clamp(26px, 3.5vw, 36px);
    letter-spacing: -0.88px;
    color: #fff;
    text-align: center;
    text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.7);
    padding: 0 20px;
    box-sizing: border-box;
}

#sub1_1 .intro_text p {
    margin-bottom: 0;
}

@media screen and (max-width: 1200px) {
    #sub1_1 .cards_list {
        gap: 20px;
    }

    #sub1_1 .cards_list .card_item {
        width: 32%;
        /* Scale down */
        padding: 30px 10px;
    }
}

@media screen and (max-width: 768px) {
    #sub1_1 .cards_list {
        flex-direction: column;
        align-items: center;
    }

    #sub1_1 .cards_list .card_item {
        width: 100%;
        /* Full width on mobile */
        max-width: 400px;
    }
}

/* Sub 1-2 Page Styles (History) */
#sub1_2 {
    position: relative;
    width: 100%;
    min-height: 100vh;
    padding-bottom: 150px;
}

#sub1_2 .history_container {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* History Card */
#sub1_2 .history_card {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    min-height: 120px;
    padding: 40px 60px;
    border-radius: 12px;
    background: #121212;
    /* Fallback dark */
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

/* Active Card (2025) */
#sub1_2 .history_card:hover {
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.08) 0%, rgba(0, 212, 255, 0.02) 100%);
    border: 1px solid rgba(0, 212, 255, 0.3);
    box-shadow: 0 0 20px rgba(0, 212, 255, 0.1);
}

/* Year Section */
#sub1_2 .history_card .h_year {
    width: 200px;
    flex-shrink: 0;
    font-size: 40px;
    font-weight: 800;
    color: #fff;
    line-height: 1;
    padding-top: 5px;
    /* Adjust alignment with first text line */
}

/* Content Section */
#sub1_2 .history_card .h_content {
    flex-grow: 1;
}

#sub1_2 .history_card .h_content ul li {
    display: flex;
    align-items: flex-start;
    margin-bottom: 12px;
    line-height: 1.6;
}

#sub1_2 .history_card .h_content ul li:last-child {
    margin-bottom: 0;
}

#sub1_2 .history_card .h_content .month {
    display: inline-block;
    width: 80px;
    flex-shrink: 0;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    position: relative;
    padding-left: 20px;
}

#sub1_2 .history_card .h_content .month::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #fff;
}

#sub1_2 .history_card .h_content .desc {
    font-size: 22px;
    color: #e5e5e5;
    word-break: keep-all;
}

#sub1_2 .history_card .h_content .desc i.sep {
    font-style: normal;
    font-size: 12px;
    color: #666;
    margin: 0 8px;
    vertical-align: middle;
}

/* Responsive */
@media (max-width: 1024px) {
    #sub1_2 .history_card {
        padding: 30px;
    }

    #sub1_2 .history_card .h_year {
        width: 150px;
        font-size: 32px;
    }
}

@media (max-width: 768px) {
    #sub1_2 .history_card {
        flex-direction: column;
        padding: 25px 20px;
    }

    #sub1_2 .history_card .h_year {
        width: 100%;
        margin-bottom: 20px;
        padding-top: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        padding-bottom: 15px;
    }

    #sub1_2 .history_card .h_content .month {
        width: 60px;
        padding-left: 15px;

    }

    #sub1_2 .history_card .h_content .desc {
        font-size: 15px;
    }
}

/* Sub 1-3 Page Styles (Organization) */
#sub1_3 {
    position: relative;
    width: 100%;
    min-height: 100vh;
    padding-bottom: 150px;
    background-color: #0c0f15;
    /* Ensure dark bg matches mockup */
}

#sub1_3 .org_chart_wrap {
    position: relative;
    width: 100%;
    max-width: 1500px;
    /* Wider to fit 5 columns */
    margin: 0 auto;
    padding-top: 50px;
}

/* 1. Header (CEO) */
#sub1_3 .org_header {
    display: flex;
    justify-content: center;
    margin-bottom: 40px;
}

#sub1_3 .ceo_box {
    position: relative;
    width: 380px;
    height: 140px;
    padding: 30px 40px;
    border-radius: 12px;
    /* Dark teal gradient */
    background: linear-gradient(135deg, rgba(0, 30, 40, 1) 0%, rgba(0, 15, 20, 1) 100%);
    border: 1px solid rgba(0, 212, 255, 0.3);
    /* Cyan border glow */
    box-shadow: 0 0 30px rgba(0, 212, 255, 0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 10;
}

#sub1_3 .ceo_box .txt_wrap h3 {
    font-family: 'Pretendard';
    font-size: 32px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 10px;
    line-height: 1;
}

#sub1_3 .ceo_box .txt_wrap .name {
    font-family: 'Pretendard';
    font-size: 18px;
    font-weight: 500;
    color: #a0c0c0;
    margin: 0;
}

#sub1_3 .ceo_box .icon_area {
    width: 60px;
    height: 60px;
    /* Placeholder for CEO icon */
    background: url('../img/sub/sub1_3-icon_01.svg') no-repeat center/contain;
}

/* 2. Connectors */
#sub1_3 .org_connector_lines {
    position: relative;
    height: 60px;
    margin-top: -40px;
    /* Pull up to connect to CEO box border */
    margin-bottom: 0px;
    z-index: 1;
}

/* Vertical line from CEO */
#sub1_3 .org_connector_lines .line_main {
    position: absolute;
    top: 0;
    /* Start below CEO middle */
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 60px;
    background: #444;
}



/* Vertical branches to sections - layout handled via flex in body, visual lines here */
/* Instead of complex absolute positioning, let's use a cleaner approach for branches */


/* 3. Body (Divisions) */
#sub1_3 .org_body {
    position: relative;
    padding-top: 30px;
    /* Space for lines */
}

#sub1_3 .div_list {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    margin-top: 0;
}

#sub1_3 .div_list>li {
    flex: 1;
    position: relative;
}

/* Vertical line from horizontal connector to each box */
#sub1_3 .div_list>li::before {
    content: '';
    position: absolute;
    top: -30px;
    /* Height of branch */
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 30px;
    background: #444;
}

/* Fix connector width logic: Horizontal line should span from center of first to center of last */
#sub1_3 .org_connector_lines .line_horizontal {
    position: absolute;
    top: 60px;
    left: 9.5%;
    right: 9.5%;
    width: auto;
    height: 1px;
    background: #444;
}

/* Individual Boxes */
#sub1_3 .div_box {
    position: relative;
    height: 350px;
    /* Fixed height for uniformity */
    padding: 30px;
    border-radius: 12px;
    background: #1a1a1a;
    background: linear-gradient(180deg, rgba(40, 40, 40, 0.8) 0%, rgba(20, 20, 20, 0.9) 100%);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Title */
#sub1_3 .div_box h3 {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* List */
#sub1_3 .div_box .team_list {
    list-style: none;
    padding: 0;
    margin: 0;
}

#sub1_3 .div_box .team_list li {
    font-size: 22px;
    color: #ccc;
    margin-bottom: 10px;
    padding-left: 0;
    text-align: left;
}

#sub1_3 .div_box .team_list li:last-child {
    margin-bottom: 0;
}

/* Icon Bottom Right */
#sub1_3 .div_box .icon_bottom {
    display: flex;
    justify-content: flex-end;
    margin-top: auto;
}

#sub1_3 .div_box .icon_bottom .icon_placeholder {
    display: block;
    width: 40px;
    height: 40px;
}

/* Specific Icons (Semantic Naming) */
#sub1_3 .icon_ceo {
    background-image: url('../img/sub/sub1_3-icon_01.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sub1_3 .icon_mgt {
    background-image: url('../img/sub/sub1_3-icon_02.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sub1_3 .icon_sales {
    background-image: url('../img/sub/sub1_3-icon_03.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sub1_3 .icon_rnd {
    background-image: url('../img/sub/sub1_3-icon_04.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sub1_3 .icon_prod {
    background-image: url('../img/sub/sub1_3-icon_05.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sub1_3 .icon_as {
    background-image: url('../img/sub/sub1_3-icon_06.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}


/* Responsive */
@media (max-width: 1280px) {
    #sub1_3 .div_box h3 {
        font-size: 18px;
    }
}

@media (max-width: 1024px) {
    #sub1_3 .div_list {
        flex-wrap: wrap;
        justify-content: center;
    }

    #sub1_3 .div_list>li {
        flex: 0 0 45%;
        /* 2 per row */
        margin-bottom: 30px;
    }

    /* Hide connectors in tablet/mobile grid for cleaner look */
    #sub1_3 .org_connector_lines,
    #sub1_3 .div_list>li::before {
        display: none;
    }

    #sub1_3 .div_box {
        height: auto;
        min-height: 250px;
    }
}

@media (max-width: 768px) {
    #sub1_3 .ceo_box {
        width: 100%;
        height: auto;
        flex-direction: row;
        text-align: left;
    }

    #sub1_3 .div_list>li {
        flex: 0 0 100%;
        margin-bottom: 20px;
    }
}

/* Sub 1-4 Page Styles (Location) */
#sub1_4 {
    position: relative;
    width: 100%;
    min-height: 100vh;
    padding-bottom: 150px;
    background-color: #0c0f15;
}

#sub1_4 .location_container {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding-top: 50px;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    /* Equal height */
    gap: 40px;
}

/* Map Area (Left) */
#sub1_4 .map_area {
    flex: 1;
    min-height: 500px;
    /* Ensure map has height */
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    background: #222;
}

#sub1_4 .map_area iframe {
    display: block;
    /* Remove inline-block spacing */
}

/* Info Area (Right) */
#sub1_4 .info_area {
    width: 600px;
    flex-shrink: 0;
}

#sub1_4 .location_info_box {
    width: 100%;
    padding: 32px;
    border-radius: 16px;
    margin-bottom: 24px;
    /* Default: Factory/Branch style */
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.01) 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
    cursor: pointer;
    transition: all 0.3s ease;
}

#sub1_4 .location_info_box:hover {
    border: 1px solid rgba(0, 212, 255, 0.3);
}

#sub1_4 .location_info_box:last-child {
    margin-bottom: 0;
}

/* Main Box (HQ) */
#sub1_4 .location_info_box.main {
    background: linear-gradient(90deg, rgba(0, 212, 255, 0.16) 0%, rgba(0, 212, 255, 0.08) 100%);
    border: 1px solid rgba(0, 212, 255, 0.2);
    box-shadow: 0px 4px 20px 0px rgba(0, 212, 255, 0.2);
}

#sub1_4 .location_info_box h3 {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 8px;
    line-height: 36px;
    text-align: left;
}

#sub1_4 .location_info_box .info_list {
    list-style: disc;
    padding-left: 24px;
    margin: 0;
}

#sub1_4 .location_info_box .info_list li {
    line-height: 1.6;
    text-align: left;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 0;
}


/* Responsive */
@media (max-width: 1280px) {
    #sub1_4 .info_area {
        width: 450px;
    }

    #sub1_4 .location_info_box {
        padding: 40px;
    }
}

@media (max-width: 1024px) {
    #sub1_4 .location_container {
        flex-direction: column;
        align-items: center;
    }

    #sub1_4 .map_area {
        width: 100%;
        height: 400px;
        /* Fixed height on tablet */
        min-height: auto;
    }

    #sub1_4 .info_area {
        width: 100%;
    }

    #sub1_4 .location_info_box {
        min-height: auto;
    }
}

@media (max-width: 768px) {
    #sub1_4 .location_info_box h3 {
        font-size: 20px;
    }

    #sub1_4 .location_info_box .info_list li {
        font-size: 14px;
    }
}


/* Sub 2-1 Page Styles (Floor Signal) */
/*
#sub2_1 {
    background-color: #0c0f15;
    padding-bottom: 200px;
}
*/
.sub_page .sub2_content {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    color: #fff;
    padding-top: 50px;
}

/* 1. Intro */
.sub_page .intro_text {
    max-width: 900px;
    margin: 0 auto 150px;
    font-size: 22px;
    font-weight: 300;
    line-height: 1.6;
    color: #fff;
    word-break: keep-all;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.7);
}

/* Section Common */
.sub_page .section_wrap {
    margin-bottom: 180px;
}

.sub_page .section_tit {
    margin-bottom: 60px;
}

.sub_page .section_tit h3 {
    font-size: 48px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 24px;
}

.sub_page .section_tit p {
    font-size: 20px;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.5;
    word-break: keep-all;
}

/* 2. Features */
.sub_page .feature_box {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 50px;
    text-align: left;
}

.sub_page .feature_img {
    width: 100%;
    max-width: 720px;
    height: 100%;
    border-radius: 16px;
    overflow: hidden;
    flex-shrink: 0;
}

#sub2_1 .feature_img {
    max-height: 900px;
}

#sub2_2 .feature_img,
#sub2_3 .feature_img,
#sub2_5 .feature_img {
    max-height: 630px;
}


.sub_page .feature_img .placeholder_box {
    width: 100%;
    height: 100%;
    background: #2a2a2a;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.sub_page .feature_img .placeholder_box img {
    border-radius: 16px;
    object-fit: cover;
}

.sub_page .feature_info_list {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.sub_page .feature_item {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.01) 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 32px;
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.sub_page .feature_item .icon_box {
    width: 64px;
    height: 64px;
    flex-shrink: 0;
    border-radius: 14px;
    border: 1px solid rgba(0, 212, 255, 0.19);
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.08) 0%, rgba(0, 212, 255, 0.02) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sub_page .feature_item .icon_box .placeholder_icon {
    width: 32px;
    height: 32px;
    /*background: rgba(0, 212, 255, 0.5);*/
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sub_page .feature_item .txt_box h4 {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 8px;
}

.sub_page .feature_item .txt_box .sub_d {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #ff6b00;
    margin-bottom: 12px;
}

.sub_page .feature_item .txt_box p {

    color: rgba(255, 255, 255, 0.7);
    line-height: 1.6;
    word-break: keep-all;
}

/* 2-1. main function */
.sub_page .function_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 70px;
}

.sub_page .function_item {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.01) 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 32px;
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.sub_page .function_item .icon_box {
    width: 64px;
    height: 64px;
    flex-shrink: 0;
    border-radius: 14px;
    border: 1px solid rgba(0, 212, 255, 0.19);
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.08) 0%, rgba(0, 212, 255, 0.02) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sub_page .function_item .icon_box .placeholder_icon {
    width: 32px;
    height: 32px;
    /*background: rgba(0, 212, 255, 0.5);*/
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sub_page .function_item .txt_box {
    text-align: left;
}

.sub_page .function_item .txt_box h4 {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 8px;
}

.sub_page .function_item .txt_box .sub_d {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #ff6b00;
    margin-bottom: 12px;
}

.sub_page .function_item .txt_box p {
    color: rgba(255, 255, 255, 0.7);
    line-height: 1.6;
    word-break: keep-all;
}

/* 3. Efficiency */
.sub_page .efficiency_list {
    display: flex;
    justify-content: center;
    gap: 44px;
    margin-top: 60px;
}

.sub_page .efficiency_list li {
    width: 470px;
    padding: 34px 50px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: linear-gradient(124deg, rgba(255, 255, 255, 0.05) 5%, rgba(255, 255, 255, 0.02) 95%);
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 33px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
}

.sub_page .efficiency_list .top_icon {
    width: 80px;
    height: 80px;
    border-radius: 16px;
    border: 1px solid rgba(255, 107, 0, 0.25);
    background: linear-gradient(135deg, rgba(255, 107, 0, 0.125) 0%, rgba(255, 107, 0, 0.063) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sub_page .efficiency_list li:nth-child(2) .top_icon {
    border-color: rgba(0, 212, 255, 0.19);
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.13) 0%, rgba(0, 212, 255, 0.06) 100%);
}

.sub_page .efficiency_list .placeholder_icon.circle {
    width: 40px;
    height: 40px;
    /*background: rgba(255, 255, 255, 0.2);*/
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sub_page .efficiency_list h4 {
    font-size: 30px;
    font-weight: 900;
    color: #ff6b00;
    margin-bottom: 12px;
}

.sub_page .efficiency_list h4.blue {
    color: #00d4ff;
}

.sub_page .efficiency_list h4.orange {
    color: #ff6b00;
}

.sub_page .efficiency_list p {

    color: rgba(255, 255, 255, 0.7);
    line-height: 1.6;
    word-break: keep-all;
}

/* 4. Applications */
.sub_page .app_list {
    display: flex;
    justify-content: center;
    gap: 34px;
}

.sub_page .app_list li {
    width: 350px;
    height: 320px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: linear-gradient(138deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.01) 100%);
    position: relative;
    padding: 40px 20px 0;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.sub_page .app_list .icon_area {
    width: 80px;
    height: 80px;
    margin-bottom: 24px;
    border-radius: 50%;
    border: 2px solid rgba(0, 212, 255, 0.31);
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.14) 0%, rgba(0, 212, 255, 0.06) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sub_page .app_list li:nth-child(2) .icon_area,
.sub_page .app_list li:nth-child(4) .icon_area {
    border-color: rgba(255, 107, 0, 0.31);
    background: linear-gradient(135deg, rgba(255, 107, 0, 0.14) 0%, rgba(255, 107, 0, 0.06) 100%);
}

.sub_page .app_list .icon_area .placeholder_icon {
    width: 36px;
    height: 36px;
    /*background: rgba(255, 255, 255, 0.3);*/
}

.sub_page .app_list h4 {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 12px;
}

.sub_page .app_list .en {
    display: block;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0;
    color: #00d4ff;
    margin-bottom: 12px;
}

.sub_page .app_list li:nth-child(2) .en,
.sub_page .app_list li:nth-child(4) .en {
    color: #ff6b00;
}

.sub_page .app_list p {

    color: rgba(255, 255, 255, 0.6);
    line-height: 1.5;
    word-break: keep-all;
}

.sub_page .app_list .bar {
    width: 64px;
    height: 4px;
    border-radius: 2px;
    background-color: #00d4ff;
    margin-top: auto;
}

.sub_page .app_list li:nth-child(2) .bar,
.sub_page .app_list li:nth-child(4) .bar {
    background-color: #ff6b00;
}

/* 5. G2B Banner */
.sub_page .g2b_banner {
    position: relative;
    width: 100%;
    max-width: 1514px;
    height: 300px;
    border-radius: 24px;
    overflow: hidden;
    margin: 0 auto 180px;
    background: linear-gradient(169deg, #005eff 0%, #1f91d4 22%, #00d4ff 100%);
    text-align: left;
}

.sub_page .g2b_banner .bg_placeholder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.1);
    font-size: 100px;
    font-weight: 900;
    pointer-events: none;
}

.sub_page .g2b_banner .content {
    position: relative;
    padding: 60px 70px;
    height: 100%;
}

.sub_page .g2b_banner .label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    letter-spacing: 0;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 12px;
}

.sub_page .g2b_banner .label .icon_dot {
    width: 32px;
    height: 32px;
    /*background: rgba(255, 255, 255, 0.2);*/
    border-radius: 50%;
}

.sub_page .g2b_banner h2 {
    font-size: 42px;
    font-weight: 900;
    color: #fff;
    margin-bottom: 24px;
}

.sub_page .g2b_banner p {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.6;
}

.sub_page .btn_g2b {
    position: absolute;
    bottom: 60px;
    right: 70px;
    width: 339px;
    height: 82px;
    border-radius: 41px;
    background: rgba(11, 14, 20, 0.95);
    border: 2px solid rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 800;
    color: #fff;
    gap: 12px;
}

.sub_page .btn_g2b .icon_arr {
    width: 24px;
    height: 24px;
    border-radius: 50%;
}


/* Responsive */
@media (max-width: 1280px) {
    .sub_page .feature_box {
        flex-direction: column;
        align-items: center;
    }

    .sub_page .feature_img {
        width: 100%;
        height: auto;
        aspect-ratio: 729/911;
    }

    .sub_page .feature_info_list {
        width: 100%;
    }

    .sub_page .efficiency_list {
        flex-wrap: wrap;
    }

    .sub_page .efficiency_list li {
        width: 100%;
        max-width: 600px;
    }

    .sub_page .app_list {
        flex-wrap: wrap;
    }

    .sub_page .g2b_banner {
        width: 100%;
        height: auto;
        min-height: 300px;
    }

    .sub_page .g2b_banner .content {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
        padding: 40px;
    }

    .sub_page .btn_g2b {
        position: relative;
        bottom: auto;
        right: auto;
        margin-top: 20px;
        width: 100%;
        max-width: 350px;
    }
}

/* Responsive */
@media (max-width: 1024px) {
    .sub_page .function_list {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .sub_page .function_item {
        padding: 24px;
    }

    .sub_page .function_item .icon_box {
        margin-bottom: 10px;
    }

    .sub_page .function_item .txt_box h4 {
        font-size: 20px;
    }
}




/* Sub2_7 Certification Status */
#sub2_7 .inner {
    max-width: 1500px;
    width: 100%;
}






/* Sub5_1 Contact */
#sub5_1 .inner {
    width: 100%;
    max-width: 1500px;
}

#sub5_1 .contact_form_wrap {
    margin-top: 50px;
    margin-bottom: 200px;
}

#sub5_1 .form_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin-bottom: 50px;
}

#sub5_1 .input_group {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 30px 50px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#sub5_1 .input_group.full_width {
    grid-column: 1 / -1;
}

#sub5_1 .input_group label {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    text-align: left;
    margin: 0;
}

#sub5_1 .input_group .required {
    color: #00d4ff;
    font-size: 24px;
    line-height: 1;
}

#sub5_1 .input_area {
    border-bottom: 0.5px solid #fff;
    padding-bottom: 10px;
    position: relative;
    width: 600px;
    max-width: 100%;
}

#sub5_1 .input_group.full_width .input_area {
    width: 100%;
}

#sub5_1 .input_area input,
#sub5_1 .input_area select,
#sub5_1 .input_area textarea {
    background: transparent;
    border: none;
    width: 100%;
    color: #fff;
    font-size: 18px;
    font-family: 'Pretendard', sans-serif;
    outline: none;
    opacity: 0.8;
}

#sub5_1 .input_area input::placeholder,
#sub5_1 .input_area textarea::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

#sub5_1 .input_area select {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 20px;
}

#sub5_1 .input_area option {
    background: #333;
    color: #fff;
}

#sub5_1 .input_area textarea {
    height: 200px;
    resize: none;
}

#sub5_1 .form_bottom {
    display: flex;
    flex-direction: column;
}

#sub5_1 .form_bottom_info textarea {
    width: 100%;
    height: 200px;
    padding: 15px;
    margin: 5px 0;
    border: 1px solid #dadada;
    background: #fff;
}

#sub5_1 .form_bottom_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 50px;
}

#sub5_1 .privacy_check {
    color: #fff;
    font-size: 18px;
    display: flex;
    align-items: center;
}

#sub5_1 .privacy_check input[type="checkbox"] {
    margin-right: 10px;
    width: 20px;
    height: 20px;
    accent-color: #ff6b00;
}

#sub5_1 .btn_submit {
    background: #ff6b00;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    padding: 14px 32px;
    border-radius: 100px;
    border: none;
    cursor: pointer;
    transition: all 0.3s;
}

#sub5_1 .btn_submit:hover {
    background: #ff8c33;
    transform: translateY(-2px);
}

/* Quick Contact */
#sub5_1 .quick_contact {
    position: relative;
    margin-top: 150px;
    margin-bottom: 100px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 380px;
}

#sub5_1 .quick_contact .bg_placeholder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    border-radius: 16px;
    overflow: hidden;
}

#sub5_1 .quick_contact .placeholder_box {
    width: 100%;
    height: 100%;
    background: #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #333;
}

#sub5_1 .qc_content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

#sub5_1 .qc_content .badge {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 100px;
    padding: 14px 32px;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
}

#sub5_1 .qc_content .phone {
    font-size: 60px;
    font-weight: 800;
    color: #00d4ff;
    text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.7);
    line-height: 1;
}

#sub5_1 .qc_content .desc {
    font-size: 24px;
    font-weight: 500;
    color: #fff;
    text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.7);
    line-height: 1.4;
}

/* Responsive */
@media (max-width: 1024px) {
    #sub5_1 .form_grid {
        grid-template-columns: 1fr;
    }

    #sub5_1 .form_bottom {
        flex-direction: column;
        gap: 30px;
    }

    #sub5_1 .input_area {
        width: 100%;
    }
}