@charset "utf-8";

/* 서브 공통 */
.sub_con { padding: clamp(60px, 8vw, 100px) clamp(40px, 10vw, 400px); overflow: hidden; position: relative; z-index: 1; margin-top: clamp(20px, 5.2vw, 90px); margin: 0 auto; }
@media screen and (max-width:1480px) {
.sub_con { padding: clamp(60px, 8vw, 135px) 40px; }
}
@media screen and (max-width:768px) {
.sub_con { padding: clamp(20px, 8vw, 135px) 20px clamp(60px, 8vw, 135px); }
}
.top_menu.mobile-menu>div { justify-content: space-between; align-items: center; }
.mobile-menu .active-item img { transition: transform 0.3s ease; 

/* 부드러운 회전 효과 */
 }
.mobile-menu .active-item img.active { transform: rotate(180deg); 

/* 180도 회전 */
 }

/* 이미지 모달창 */
#modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, .6); }
#modal__content { display: flex; flex-wrap: wrap; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); margin: 0 auto; padding: 60px; background: #FFF; box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5); gap: 30px; }
.modal__exit { position: absolute; width: 60px; height: 60px; top: 0px; right: 0px; font-size: 30px; font-weight: 300; background: #000; color: #FFF; text-align: center; }
.modal__exit span { width: 30px; height: 3px; background: #FFF; display: block; margin: 0 auto; }
.modal__exit span:nth-child(1) { margin: 0px auto 5px; transform: rotate(45deg); position: absolute; top: 50%; left: 15px; }
.modal__exit span:nth-child(2) { margin: 0px auto 5px; transform: rotate(-45deg); top: 50%; position: absolute; left: 15px; }
.modal__img { flex: 0 1 100%; text-align: center; }
.modal__img img { width: 100%; max-width: 400px; }
.modal__ttl { flex: 0 1 100%; text-align: center; font-size: clamp(18px, 2vw, 22px); font-weight: 700; }
@media screen and (max-width: 768px) {
#modal__content { padding: 50px 20px; width: 80%; }
.modal__exit { width: 50px; height: 50px; }
.modal__exit span { width: 25px; height: 3px; }
.modal__exit span:nth-child(1) { left: 13px; }
.modal__exit span:nth-child(2) { left: 13px; }
}
.overlay { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5) !important; z-index: 20; cursor: pointer; }
.overlay__message { display: block; width: 100%; font-size: 18px; line-height: 28px; color: #fff; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
@media screen and (max-width: 500px) {
.overlay__message { font-size: 16px; line-height: 26px; }
}
.bg_img { height: 356px !important; position: relative; overflow: hidden; margin: clamp(20px, 4.8vw, 80px) 0; background-position: center; background-size: cover; background-repeat: no-repeat; }
@media screen and (min-width: 1200px) {
.bg_img { background-attachment: fixed; }
}
@media screen and (max-width: 768px) {
.bg_img { height: 200px !important; }
}

/* sub header */
#hd.sub #hd_wrapper { background: #fff; }
#hd.sub #hd_wrapper img { display: none; }
#hd.sub #hd_wrapper img.sub { display: block; }

/* sub navigation background */
/* #sub-nav.nav01{background: url(../img/sub/sub_visual01.jpg)no-repeat center;background-size: cover;}
#sub-nav.nav02{background: url(../img/sub/sub_visual02.jpg)no-repeat center;background-size: cover;}
#sub-nav.nav03{background: url(../img/sub/sub_visual03.jpg)no-repeat center;background-size: cover;}
#sub-nav.nav04{background: url(../img/sub/sub_visual04.jpg)no-repeat center;background-size: cover;}
#sub-nav.nav05{background: url(../img/sub/sub_visual05.jpg)no-repeat center;background-size: cover;}
#sub-nav.nav06{background: url(../img/sub/sub_visual06.jpg)no-repeat center;background-size: cover;} */

/* navigation */
#sub-nav { padding: clamp(40px, 4.8vw, 100px) 20px; }
#sub-nav .visual__wrap { text-align: center; }
#sub-nav .visual__wrap .nav-title { font-size: clamp(24px, 3.2vw, 50px); font-weight: 800; padding: 0 0 clamp(20px, 2vw, 30px); color: #004652; }
#sub-nav .visual__wrap .navi { padding: 0 0 clamp(20px, 3.8vw, 58px); }
#sub-nav .visual__wrap .navi .df { align-items: center; justify-content: center; gap: 10px; color: #5B5B5B; }
#sub-nav .visual__wrap .navi .df .df { gap: 4px; }
#sub-nav .visual__wrap .navi .df .icon { display: flex; align-items: center; justify-content: center; }
#sub-nav .menu-wr {}
#sub-nav .menu-wr .df { gap: 14px; align-items: center; justify-content: center; }
#sub-nav .menu-wr li { border: 1px solid #D1D1D1; border-radius: 30px; transition: all 0.3s; }
#sub-nav .menu-wr li:hover { border: 1px solid #004652; }
#sub-nav .menu-wr li.active { border: 1px solid #004652; }
#sub-nav .menu-wr li a { color: #676767; padding: 18px 36px; }
#sub-nav .menu-wr li:hover a { color: #004652; }
#sub-nav .menu-wr li.active a { color: #004652; }

/* mobile */
.m-menu-wr { display: none; position: relative; gap: 20px; max-width: 578px; margin: 0 auto; }
.m-menu-wr .mnav-ul { position: relative; }
.m-menu-wr .mnav-ul.top-con li .mnav-1a { background: #fff; color: #000; border: 1px solid #D1D1D1; box-shadow: 0 0 15px #d1d1d160; }
.m-menu-wr .mnav-ul li .mnav-1a { display: flex; background: #202329; font-size: 18px; color: #fff; height: 50px; line-height: 48px; font-weight: 400; cursor: pointer; padding: 0 25px; letter-spacing: -2px; position: relative; border-radius: 100px; text-align: center; gap: 20px; align-items: center; justify-content: center; }
.m-menu-wr .mnav-ul li .mnav-1a>span {}
.m-menu-wr .mnav-ul li .mnav-1a .on { transform: rotate(180deg); }
.m-menu-wr .mnav-ul li ul { position: relative; display: none; position: absolute; top: 50px; left: -1px; z-index: 10; width: calc(100% + 0px); border-radius: 20px; border: 1px solid #e3e3e3; padding: 15px 30px; background: #fff; }
.m-menu-wr .mnav-ul li ul li { border-bottom: 0; border-right: 0; transition: 0.3s; background: #fff; padding: 3px 0; }
.m-menu-wr .mnav-ul li ul li a { display: block; 

/* line-height: 1; */
 color: #6c6c6c; letter-spacing: -1px; font-size: 16px; word-break: keep-all; line-height: 25px; }
.m-menu-wr .mnav-ul li ul li a:hover { color: #003358; font-weight: bold; text-decoration: underline; }
.m-menu { display: none; 

/* padding-top: 10px; */
 }
.m-menu .mnav-ul {}
.m-menu .mnav-ul li .mnav-1a { display: block; background: #202329; font-size: 18px; color: #fff; height: 50px; line-height: 48px; font-weight: 400; cursor: pointer; padding: 0 25px; letter-spacing: -2px; position: relative; }
.m-menu .mnav-ul li .mnav-1a>span { display: block; content: ''; position: absolute; background: url('../img/sub/nav-plus.png')no-repeat center; background-size: contain; right: 15px; top: 50%; width: 14px; 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; top: 50px; 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: -1px; font-size: 16px; word-break: keep-all; line-height: 25px; }
.m-menu .mnav-ul li ul li a:hover { color: #003358; font-weight: bold; text-decoration: underline; }
@media (max-width:768px) {
.pc-menu { display: none }
.m-menu-wr { display: flex; flex-direction: column; }
.m-menu { display: block; position: absolute; width: 100%; bottom: 0; }
}

/* common sub */
.bg_img { height: 280px; position: relative; overflow: hidden; margin: clamp(20px, 2.8vw, 46px) 0; background-position: center; background-size: cover; background-repeat: no-repeat; }
@media screen and (min-width: 1200px) {
.bg_img { background-attachment: fixed; }
}

/* 서브페이지 네비게이션 */
#sub__nav { position: relative; padding: 80px 0 0; }
#sub__nav .visual__wrap { width: 100%; height: 400px; background-size: cover; background-repeat: no-repeat; background-position: center; position: relative; display: flex; flex-direction: column; align-items: center; }
#sub__nav .visual__wrap::before { content: ''; position: absolute; inset: 0; background-color: rgba(0, 0, 0, 0.2); z-index: 1; }
#sub__nav.nav01 .visual__wrap { background-image: url('../img/sub/img_navigation_visual01.jpg'); position: relative; z-index: 1; }
#sub__nav.nav02 .visual__wrap { background-image: url('../img/sub/img_navigation_visual02.jpg'); position: relative; z-index: 1; }
#sub__nav.nav03 .visual__wrap { background-image: url('../img/sub/img_navigation_visual03.jpg'); position: relative; z-index: 1; }
#sub__nav.nav04 .visual__wrap { background-image: url('../img/sub/img_navigation_visual04.jpg'); position: relative; z-index: 1; }
#sub__nav.nav05 .visual__wrap { background-image: url('../img/sub/img_navigation_visual05.jpg'); position: relative; z-index: 1; }
#sub__nav.nav06 .visual__wrap { background-image: url('../img/sub/img_navigation_visual06.jpg'); position: relative; z-index: 1; }
#sub__nav.nav07 .visual__wrap { background-image: url('../img/sub/img_navigation_visual07.jpg'); position: relative; z-index: 1; }
#sub__nav .visual__wrap .nav-text { position: relative; z-index: 2; text-align: center; display: flex; flex-direction: column; align-items: center; padding-top: 144px; 

/* 피그마 top 144px 기준 */
 box-sizing: border-box; height: 100%; }
#sub__nav .visual__wrap .nav-text .nav-tit { font-family: 'Pretendard', sans-serif; font-size: 50px; font-weight: 900; color: #ffffff; letter-spacing: -2px; text-shadow: 1px 3px 12px rgba(0, 0, 0, 0.3); line-height: 1.2; margin: 0 0 28px 0; 

/* 피그마 타이틀(top 144) - 경로(top 228) 간격 반영 */
 }
#sub__nav .visual__wrap .nav-text .nav-wr { font-family: 'Pretendard', sans-serif; font-size: 17px; font-weight: 400; color: #ffffff; letter-spacing: -0.68px; text-shadow: 1px 3px 12px rgba(0, 0, 0, 0.3); display: flex; align-items: center; }
#sub__nav .top-con { position: relative; width: 100%; height: 70px; background-color: #ffffff; border-bottom: 1px solid #ebebeb; z-index: 10; }
#sub__nav .top-con.fixed { position: fixed; top: 80px; left: 0; z-index: 100; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05); }
#sub__nav .top-con .nav_2ul { display: flex; justify-content: center; align-items: center; height: 100%; margin: 0; padding: 0; list-style: none; gap: clamp(20px, 4vw, 80px); 

/* 화면 크기에 따라 유동적으로 변하는 넉넉한 탭 간격 */
 }
#sub__nav .top-con .nav_2ul li { position: relative; height: 100%; display: flex; align-items: center; justify-content: center; }
#sub__nav .top-con .nav_2ul li a { font-family: 'Pretendard', sans-serif; font-size: 20px; font-weight: 500; color: #bababa; letter-spacing: -0.8px; text-decoration: none; height: 100%; display: flex; align-items: center; padding: 0 25px; 

/* 탭 텍스트 좌우 여유 패딩 */
 position: relative; transition: color 0.2s ease; }
#sub__nav .top-con .nav_2ul li.active a { color: #121f3e; font-weight: 700; }
#sub__nav .top-con .nav_2ul li.active a::after { content: ''; position: absolute; bottom: 0; left: 10px; 

/* 인디케이터 바가 텍스트보다 살짝 좌우로 나오게 세팅 */
 right: 10px; height: 3px; background-color: #121f3e; }
#sub__nav .top-con .nav_2ul li a:hover { color: #121f3e; }
#sub__nav .nav-top-wr { margin: 0 auto; background: #ffffff; border-bottom: 1px solid #e5e5e5; }
#sub__nav .nav-top-wr .wr-1400 { display: flex; flex-wrap: wrap; }
#sub__nav .nav-top-wr .home { display: flex; justify-content: center; align-items: center; width: 80px; height: 60px; border-left: 1px solid #e5e5e5; border-right: 1px solid #e5e5e5; font-size: 25px; text-align: center; color: #fff; }
#sub__nav .nav-top-wr .nav_ul { position: relative; }
#sub__nav .nav-top-wr .nav_ul:after { display: block; content: ''; width: 100%; height: 2px; position: absolute; bottom: -1px; left: 0; background: #005ad4; }
#sub__nav .nav-top-wr .nav_ul li { position: relative; float: left; min-width: 230px; padding: 0 25px; height: 60px; border-right: 1px solid #e5e5e5; cursor: pointer; }
#sub__nav .nav-top-wr .nav_ul li .nav_1a { display: block; font-size: 17px; color: rgba(75, 75, 75, 0.6); height: 60px; line-height: 60px; font-weight: 400; }
#sub__nav .nav-top-wr .nav_ul li .nav_1a::after { content: ''; display: block; position: absolute; top: 23px; right: 15px; width: 12px; height: 12px; background: url('../img/sub/icon_sub_arrow--grey.png')no-repeat center; }
#sub__nav .nav-top-wr .nav_ul li ul { position: relative; display: none; position: absolute; top: 60px; left: -1px; border-top: 1px solid #e3e3e3; border-left: 1px solid #e3e3e3; z-index: 10; }
#sub__nav .nav-top-wr .nav_ul li ul li { border-bottom: 1px solid #e3e3e3; border-right: 1px solid #e3e3e3; transition: 0.3s; background: #fff; 

/* line-height: 60px; */
 height: 50px; }
#sub__nav .nav-top-wr .nav_ul li ul li:hover { background: #f5f5f5 }
#sub__nav .nav-top-wr .nav_ul li ul li a { display: block; height: 50px; line-height: 50px; color: #000; }

/* mobile */
.m-menu { display: none; 

/* padding-top: 10px; */
 }
.m-menu .mnav-ul {}
.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: -1px; 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__nav .visual__wrap { height: 400px; }
#sub__nav .menu-wr li a { padding: 23px 0; }
}
@media (max-width:1480px) {
#sub__nav .nav-text { padding: clamp(40px, 8.2vw, 120px) 40px; }
#sub__nav .visual__wrap { height: 350px; }
#sub__nav .menu-wr li a { padding: 15px 0; font-size: 15px; }
	#sub__nav .top-con {}
#sub__nav .nav-top-wr { padding: 0 20px; }
#sub__nav .nav-tit { top: 52%; }
#sub__nav.nav03 .nav-tit { top: 58%; }
}
@media (max-width:1300px) {
#sub__nav .visual__wrap { height: 260px; }
#sub__nav .nav-top-wr .home { width: 50px; height: 50px; line-height: 48px; }
#sub__nav .nav-top-wr .nav_ul li { height: 50px; }
#sub__nav .nav-top-wr .nav_ul li .nav_1a { height: 50px; line-height: 50px; font-size: 16px; }
}
@media (max-width:1024px) {
#sub__nav .visual__wrap { height: 250px; }
#sub__nav .menu-wr li a { padding: 20px 0; font-size: 16px; }
#sub__nav .menu-wr li a p:after { right: -8px; }
}
@media (max-width:960px) {
#sub__nav .menu-wr li a { font-size: 15px; }
#sub__nav .menu-wr li a p.long { font-size: 13px; }
}
@media (max-width:768px) {
#sub__nav .nav-text { padding: clamp(40px, 8.2vw, 120px) 20px; }
#sub__nav .top-con { display: none; }
#sub__nav .visual__wrap { height: 250px; }
#sub__nav .visual__wrap .nav__route { bottom: 70px; width: 100%; }
#sub__nav .visual__wrap .nav__route ul { justify-content: center; }
#sub__nav .visual__wrap .nav__route ul li { font-size: 14px; }
.pc-menu { display: none }
.m-menu { display: block; z-index: 2; }
}
@media (max-width:500px) {
#sub__nav .visual__wrap .nav-title { font-size: 24px; }
#sub__nav .visual__wrap .nav__route { bottom: 80px; }
}

/* 준비중 */
.ready { width: 100%; text-align: center; padding: 20px 60px; }
.sub1_1 {}
.sub1_1>div>.tit { position: relative; font-size: clamp(24px, 2vw, 40px); font-weight: 700; color: var(--main-color2-bg); padding: clamp(20px, 2vw, 40px) 0; }
.sub1_1>div>.tit:before { content: ''; position: absolute; top: 0; left: 0; width: 40px; height: 3px; background-color: var(--main-color2-bg); }
.sub1_1 .sec01 {}
.sub1_1 .sec01 .content_wr { gap: 20px 60px; margin: 0 0 clamp(40px, 5.4vw, 100px); height: 100%; }
.sub1_1 .sec01 .full { position: relative; }
.sub1_1 .sec01 .full img { width: 100%; position: relative; top: -180px; z-index: 0; }
.sub1_1 .sec01 .full .text_wr { position: relative; z-index: 1; }
.sub1_1 .sec01 .full .text_wr .tit { font-size: clamp(28px, 2vw, 40px); font-weight: 700; padding: 0 0 clamp(24px, 2.4vw, 54px); color: var(--main-color2-text); }
.sub1_1 .sec01 .full .text_wr .txt { font-size: clamp(18px, 2vw, 20px); font-weight: 500; line-height: 1.6em; }
.sub1_1 .sec01 .content_wr>div { flex: 0 1 calc(100% / 2 - 30px); }
.sub1_1 .sec01 .content_wr>div { flex-direction: column; border-top: 2px solid var(--main-color2-bg); justify-content: space-between; }
.sub1_1 .sec01 .content_wr>div .text { gap: 8px 20px; padding: 14px 20px; border-bottom: 1px solid var(--main-color3-bg); font-size: 18px; font-weight: 400; line-height: 2em; }
.sub1_1 .sec01 .content_wr>div .text .tit { font-weight: 700; flex: 0; min-width: 130px; word-break: break-word; }
.sub1_1 .sec01 .content_wr>div .text .txt { flex: 1; }
.sub1_1 .sec01 .content_wr>div .text .txt li { position: relative; padding: 0 0 0 8px; list-style: disc; }
.sub1_1 .sec01 .content_wr>div .text .txt li::marker { font-size: 14px; content: "•"; }
.sub1_1 .sec01 .content_wr .right_con { height: auto; }
.sub1_1 .sec01 .content_wr .right_con img { object-fit: cover; width: 100%; height: 100%; }
.sub1_1 .sec02 {}
.sub1_1 .sec02 .content_wr { display: grid; gap: 32px; grid-template-columns: repeat(4, 1fr); }
.sub1_1 .sec02 .content_wr .four { text-align: center; display: flex; align-items: center; justify-content: center; border: 1px solid var(--main-color3-bg); height: 130px; padding: 12px clamp(24px, 2.4vw, 50px); }
.sub1_1 .sec02 .content_wr .four img { height: 100%; width: 100%; object-fit: contain; }
@media screen and (max-width:1680px) {
.sub1_1 .sec01 .full img { top: -100px; }
}
@media screen and (max-width:1400px) {
.sub1_1 .sec01 .content_wr { gap: 20px; }
.sub1_1 .sec01 .content_wr>div { flex: 0 1 calc(100% / 2 - 10px); }
.sub1_1 .sec02 .content_wr { gap: 20px; }
}
@media screen and (max-width:1024px) {
.sub1_1 .sec01 .content_wr>div { flex: 100%; }
.sub1_1 .sec02 .content_wr .four { height: 100px; }
}
@media screen and (max-width:768px) {
.sub1_1 .sec01 .full img { top: -40px; }
.sub1_1 .sec01 .full .text_wr .txt .pc_only { display: none; }
.sub1_1 .sec02 .content_wr { grid-template-columns: repeat(3, 1fr); gap: 20px 12px; }
.sub1_1 .sec02 .content_wr .four { height: 80px; }
}
@media screen and (max-width:520px) {
.sub1_1 .sec01 .content_wr>div .text { flex-direction: column; }
.sub1_1 .sec02 .content_wr { grid-template-columns: repeat(2, 1fr); gap: 12px; }
}
.sub1_2 img { margin: 0 auto; }
.sub1_2 .pc_only { display: block; }
.sub1_2 .mo_only { display: none; }
@media screen and (max-width:768px) {
.sub1_2 .pc_only { display: none; }
.sub1_2 .mo_only { display: block; }
}
.sub1_4 { padding: clamp(60px, 8vw, 100px) 0; }
.sub1_4 .sec01 { background: url(../img/sub/sub1_4_bg01.png) no-repeat right; background-size: contain; padding: clamp(32px, 4.2vw, 72px) clamp(40px, 10vw, 400px); text-align: center; font-size: clamp(24px, 2.4vw, 42px); font-weight: 700; line-height: 1.4em; margin: 0 0 clamp(30px, 3.4vw, 60px); text-align: left; }
.sub1_4 .sec01 span { color: var(--main-color1-text); }
.sub1_4 .sec02 { padding: 0 clamp(40px, 10vw, 400px); gap: 20px; }
.sub1_4 .sec02>div { flex: 0 1 calc(50% - 10px); position: relative; }
.sub1_4 .sec02 .progress_nav.fixed { position: fixed; top: 100px; z-index: 100; }
.sub1_4 .sec02 .progress_nav.absolute { position: absolute; }
.sub1_4 .sec02 .left-con .progress_nav { flex-direction: column; gap: 50px; }
.sub1_4 .sec02 .left-con .progress_nav .img { width: 100%; }
.sub1_4 .sec02 .left-con .progress_nav .img img { padding: clamp(20px, 5.6vw, 100px) 0 0; }
.sub1_4 .sec02 .left-con .progress_nav a { font-size: clamp(20px, 2vw, 30px); font-weight: 500; color: #A7A7A7; position: relative; padding: 0 0 0 clamp(38px, 3.4vw, 64px); }
.sub1_4 .sec02 .left-con .progress_nav a.on { font-weight: 700; color: var(--main-color2-text); }
.sub1_4 .sec02 .left-con .progress_nav a:before { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 27px; height: 2px; background: #B6B6B6; transition: all 0.3s ease; }
.sub1_4 .sec02 .left-con .progress_nav a.on::before { background: var(--main-color2-text); transform: translateY(-50%) rotate(-45deg); }
.sub1_4 .history-con { position: relative; padding-left: 50px; }
.sub1_4 .history-con::before { content: ''; position: absolute; left: 20px; top: 10px; bottom: 10px; width: 3px; background: #e0e0e0; }
.sub1_4 .history-con .timeline { position: relative; }
.sub1_4 .history-con .timeline>div { padding: 0 0 clamp(40px, 4.2vw, 60px); }
.sub1_4 .history-con .timeline>div:last-child { padding: 0; }
.sub1_4 .history-con .history ul { list-style: none; padding: 0; margin: 0; line-height: 52px; }
.sub1_4 .history-con .history ul li { position: relative; transition: all 0.3s ease; color: #000; font-weight: 500; align-items: baseline; font-size: clamp(18px, 2vw, 20px); }
.sub1_4 .history-con .history ul li b { color: var(--main-color1-text); font-weight: 500; }
.sub1_4 .history-con .history ul li::before { content: ''; position: absolute; left: -35px; top: 18px; width: 12px; height: 12px; background: #B9B9B9; border-radius: 50%; transition: all 0.3s ease; z-index: 1; }
.sub1_4 .history-con .history ul li.active {}
.sub1_4 .history-con .history ul li.active::before { box-shadow: 0 0 0 9px #01478F1A; border-radius: 100%; background: #01478F; }
.sub1_4 .history-con .history ul li .tit { flex: 0 1 60px; }
.sub1_4 .history-con .history ul li .txt { line-height: 1.4em; flex: 1; fkex':'; fkex': 1'; }
@-webkit-keyframes history {
	0%,
100% { opacity: 1; transform: scale(0) }
50% { opacity: 1; transform: scale(2) }
70% { opacity: 0; transform: scale(3) }
}
@keyframes history {
	0%,
100% { opacity: 1; transform: scale(0) }
50% { opacity: 1; transform: scale(2) }
70% { opacity: 0; transform: scale(3) }
}
@media screen and (max-width: 1480px) {
.sub1_4 .sec01 { padding: clamp(32px, 4.2vw, 72px) 40px; }
.sub1_4 .sec02 { padding: 0 40px; }
}
@media screen and (max-width: 768px) {
.sub1_4 .sec01 { padding: clamp(32px, 4.2vw, 72px) 20px; }
.sub1_4 .sec02 { padding: 0 20px; }
.sub1_4 .sec02>div { flex: 100% !important; }
.sub1_4 .sec02 .left-con .progress_nav { position: relative !important; top: auto !important; gap: 20px; left: 0 !important; }
}
.sub1_5 {}
.sub1_5 .content_wr { display: flex; flex-wrap: wrap; gap: clamp(24px, 4.2vw, 74px) 56px; }
.sub1_5 .content_wr>.df { flex-direction: column; justify-content: center; align-items: center; flex: 100%; gap: 24px; }
.sub1_5 .content_wr .three { flex: 0 1 calc(100% / 3 - 38px); }
.sub1_5 .content_wr>.df .tit { background-color: var(--main-color2-bg); color: #fff; width: 100%; text-align: center; padding: 14px; border-radius: 28px; max-width: 552px; font-size: clamp(16px, 2vw, 20px); font-weight: 500; }
@media screen and (max-width:1024px) {
.sub1_5 .content_wr { gap: 20px; }
.sub1_5 .content_wr .three { flex: 0 1 calc(100% / 3 - 14px); }
}
@media screen and (max-width:768px) {
.sub1_5 .content_wr { gap: 12px; justify-content: center; }
.sub1_5 .content_wr .three { flex: 0 1 calc(100% / 2 - 6px); }
}
@media screen and (max-width:520px) {
.sub1_5 .content_wr .three { flex: 0 1 100%; }
}
.sub1_6 {}
.sub1_6 .content_wr {}
.sub1_6 .content_wr .df { gap: 20px; }
.sub1_6 .content_wr .df .left_con { flex: 0 1 calc(100% / 2 - 10px); flex-direction: column; max-width: 720px; justify-content: space-around; }
.sub1_6 .content_wr .df .right_con { flex: 1; text-align: right; }
.sub1_6 .content_wr .df .left_con .top_con { text-align: center; }
.sub1_6 .content_wr .df .left_con .btm_con { flex-direction: column; gap: 0; border-top: 2px solid var(--main-color2-bg); }
.sub1_6 .content_wr .df .left_con .btm_con .text { display: flex; align-items: center; font-size: clamp(16px, 2vw, 18px); font-weight: 400; gap: 80px; border-bottom: 1px solid var(--main-color3-bg); padding: clamp(12px, 2vw, 20px); }
.sub1_6 .content_wr .df .left_con .btm_con .text .tit { flex: 34px; font-weight: 700; }
.sub1_6 .content_wr .df .left_con .btm_con .text .txt { flex: 0 1 calc(100% - 32px); }
.sub1_6 .content_wr .df .left_con .btm_con .text .txt a { font-weight: 400; }
.sub1_6 .content_wr .map_con {}
.sub1_6 .content_wr .map_con>div { width: 100%; }
.sub1_6 .content_wr .map_con>div .hide { display: none !important; }
.sub1_6 .content_wr .map_con>div .cont { display: none !important; }
.sub1_6 .content_wr .map_con>div .wrap_map { height: 700px !important; }
@media screen and (max-width:1440px) {
.sub1_6 .content_wr .map_con>div .wrap_map { height: 500px !important; }
}
@media screen and (max-width:1024px) {
.sub1_6 .content_wr .map_con>div .wrap_map { height: 420px !important; }
}
@media screen and (max-width:768px) {
.sub1_6 .content_wr .map_con>div .wrap_map { height: 320px !important; }
}
@media screen and (max-width:520px) {
.sub1_6 .content_wr .map_con>div .wrap_map { height: 240px !important; }
}


.sub_con.sub2_2 {}
.sub2_2 {}
.sub2_2 .content_wr { gap: 56px 32px; }
.sub2_2 .content_wr .half { flex: 0 1 calc(100% / 2 - 16px); border-top: 2px solid var(--main-color2-bg); }
.sub2_2 .content_wr .half:nth-child(1) .text_wr { background: url(../img/sub/sub2_2_icon_01.png) no-repeat right bottom; background-size: clamp(60px, 8vw, 100px) auto; background-position: right clamp(20px, 2.2vw, 46px) bottom 40px; }
.sub2_2 .content_wr .half:nth-child(2) .text_wr { background: url(../img/sub/sub2_2_icon_02.png) no-repeat right bottom; background-size: clamp(60px, 8vw, 100px) auto; background-position: right clamp(20px, 2.2vw, 46px) bottom 40px; }
.sub2_2 .content_wr .half:nth-child(3) .text_wr { background: url(../img/sub/sub2_2_icon_03.png) no-repeat right bottom; background-size: clamp(60px, 8vw, 100px) auto; background-position: right clamp(20px, 2.2vw, 46px) bottom 40px; }
.sub2_2 .content_wr .half:nth-child(4) .text_wr { background: url(../img/sub/sub2_2_icon_04.png) no-repeat right bottom; background-size: clamp(60px, 8vw, 100px) auto; background-position: right clamp(20px, 2.2vw, 46px) bottom 40px; }
.sub2_2 .content_wr .half a { height: 100%; display: flex; flex-wrap: wrap; flex-direction: column; }
.sub2_2 .content_wr .half .text_wr { padding: clamp(24px, 2.8vw, 52px) clamp(20px, 2.2vw, 46px); border-top: 0; width: 100%; flex: 1; border-bottom-right-radius: 40px; border-bottom-left-radius: 40px; background: #fff; }
.sub2_2 .content_wr .half .text_wr .top_con { display: flex; justify-content: space-between; align-items: center; font-size: clamp(24px, 2.4vw, 42px); font-weight: 700; color: #010E55; }
.sub2_2 .content_wr .half:first-child a .img img { padding: 50px 30px; object-fit: contain }
.sub2_2 .content_wr .half .text_wr .btm_con { padding: clamp(20px, 2vw, 30px) 0 0; margin: clamp(20px, 2vw, 30px) 0 0; position: relative; }
.sub2_2 .content_wr .half .text_wr .btm_con:before { content: ''; position: absolute; top: 0; left: 0; width: 40px; height: 3px; background: var(--main-color2-bg); }
.sub2_2 .content_wr .half .text_wr .btm_con .tit { padding: 0 0 clamp(18px, 2vw, 32px); font-size: clamp(24px, 2.4vw, 42px); font-weight: 700; color: #010E55; }
.sub2_2 .content_wr .half .text_wr .btm_con .text { line-height: 1.6em; }
.sub2_2 .content_wr .half .text_wr .btm_con .text .txt { list-style: disc; margin: 0 0 0 16px; }
@media screen and (max-width:1024px) {
.sub2_2 .content_wr { gap: 32px 20px; }
.sub2_2 .content_wr .half { flex: 0 1 calc(100% / 2 - 10px); }
}
@media screen and (max-width:768px) {
.sub2_2 .content_wr { gap: 32px 20px; }
.sub2_2 .content_wr .half { flex: 100%; }
.sub2_2 .content_wr .half:nth-child(1) .text_wr { background-size: auto; }
.sub2_2 .content_wr .half:nth-child(2) .text_wr { background-size: auto; }
.sub2_2 .content_wr .half:nth-child(3) .text_wr { background-size: auto; }
.sub2_2 .content_wr .half:nth-child(4) .text_wr { background-size: auto; }
}
.sub2_4 {}
.sub2_4 .sec01 { padding: 0 0 clamp(40px, 4.8vw, 80px); }
.sub2_4 .sec01>.tit { position: relative; padding: clamp(20px, 2vw, 30px) 0 clamp(20px, 2vw, 34px); font-size: clamp(24px, 2.4vw, 30px); font-weight: 700; color: #010E55; }
.sub2_4 .sec01>.tit:before { content: ''; position: absolute; top: 0; left: 0; width: 40px; height: 3px; background: var(--main-color2-bg); }
.sub2_4 .sec01 .content_wr { gap: 0 24px; align-items: flex-start; }
.sub2_4 .sec01 .content_wr:nth-child(2) { padding: 0 0 clamp(20px, 2vw, 40px) }
.sub2_4 .sec01 .content_wr>.tit { flex: 100%; font-size: clamp(20px, 2vw, 25px); font-weight: 700; color: var(--main-color2-text); position: relative; padding: 0 20px; margin: 0 0 10px; }
.sub2_4 .sec01 .content_wr>.tit:before { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 7px; height: 7px; background: var(--main-color2-bg); }
.sub2_4 .sec01 .content_wr .three { flex: 0 1 calc(100% / 3 - 16px); text-align: center; }
.sub2_4 .sec01 .content_wr .three .img {}
.sub2_4 .sec01 .content_wr .three .img img { width: 100%; object-fit: cover; max-height: 416px; }
.sub2_4 .sec01 .content_wr .three .tit { padding: 14px 12px; font-size: clamp(16px, 2vw, 18px); font-weight: 500; background: #010E55; color: #fff; width: 100%; }
.sub2_4 .sec01 .content_wr .three.df { flex: 1; gap: 0 24px; }
.sub2_4 .sec01 .content_wr .three.df .half { flex: 0 1 calc(100% / 2 - 12px); }
.sub2_4 .sec02 {}
.sub2_4 .sec02>.tit { position: relative; padding: clamp(20px, 2vw, 30px) 0 clamp(20px, 2vw, 34px); font-size: clamp(24px, 2.4vw, 30px); font-weight: 700; color: #010E55; }
.sub2_4 .sec02>.tit:before { content: ''; position: absolute; top: 0; left: 0; width: 40px; height: 3px; background: var(--main-color2-bg); }
.sub2_4 .sec02 .content_wr { gap: 36px 34px; display: grid !important; grid-template-columns: 1fr 1fr 1fr; }
.sub2_4 .sec02 .content_wr .three { flex-direction: column; }
.sub2_4 .sec02 .content_wr .three>div { text-align: center; }
.sub2_4 .sec02 .content_wr .three>.img { border-top: 1px solid #DBDBDB; border-left: 1px solid #DBDBDB; border-right: 1px solid #DBDBDB; height: 260px; display: flex; align-items: center; justify-content: center; padding: 12px; }
.sub2_4 .sec02 .content_wr .three>.tit { padding: 14px; background: #444444; color: #fff; font-size: clamp(16px, 2vw, 18px); font-weight: 700; margin: 0 0 clamp(8px, 2vw, 16px); }
.sub2_4 .sec02 .content_wr .three .table { flex-direction: column; border-top: 2px solid var(--main-color2-bg); }
.sub2_4 .sec02 .content_wr .three .table .text { padding: 14px 0; border-bottom: 1px solid var(--main-color3-bg); align-items: center; font-size: clamp(14px, 2vw, 16px); }
.sub2_4 .sec02 .content_wr .three .table .text:first-child { background: #FBFBFB; font-weight: 700; }
.sub2_4 .sec02 .content_wr .three .table .text>div { flex: 0 1 calc(100% / 2); height: auto; word-break: break-all; }
.sub2_4 .sec02 .content_wr .three .table .text .tit { font-weight: 700; }
@media screen and (max-width:1024px) {
.sub2_4 .sec01 .content_wr { gap: 0 20px; }
.sub2_4 .sec01 .content_wr .three { flex: 0 1 calc(100% / 3 - 14px); }
.sub2_4 .sec01 .content_wr .three.df { gap: 0 20px; }
.sub2_4 .sec01 .content_wr .three.df .half { flex: 0 1 calc(100% / 2 - 10px); }
.sub2_4 .sec02 .content_wr { gap: 20px; grid-template-columns: 1fr 1fr; }
.sub2_4 .sec02 .content_wr .three>.img { height: auto; }
}
@media screen and (max-width:520px) {
.sub2_4 .sec01 .content_wr { gap: 12px 20px; }
.sub2_4 .sec01 .content_wr .three { flex: 100%; }
.sub2_4 .sec01 .content_wr .three.df .half { flex: 100%; }
.sub2_4 .sec02 .content_wr { grid-template-columns: 1fr; }
}



/* =================================================================
   인사말 (sub1_1) 콘텐츠 스타일링
================================================================= */
#ceo_greeting { width: 100%; padding: 120px 0; background-color: #ffffff; display: flex; justify-content: center; align-items: center; }
#ceo_greeting .inner_con { max-width: 1400px; margin: 0 auto; display: flex; align-items: center; gap: 80px; }
#ceo_greeting .inner_con .txt_area { flex: 0 0 587px; max-width: 587px; display: flex; flex-direction: column; }
#ceo_greeting .inner_con .txt_area .main_text { font-family: 'Pretendard', sans-serif; font-size: 24px; font-weight: 400; color: #000000; line-height: 36px; letter-spacing: -0.96px; }
#ceo_greeting .inner_con .txt_area .main_text p { margin: 0; }
#ceo_greeting .inner_con .txt_area .main_text .space_div { height: 36px; }
#ceo_greeting .inner_con .txt_area .sign_area { display: flex; align-items: center; gap: 24px; margin-top: 40px; }
#ceo_greeting .inner_con .txt_area .sign_area .ceo_title { font-family: 'Pretendard', sans-serif; font-size: 24px; font-weight: 700; color: #000000; letter-spacing: -0.96px; white-space: nowrap; }
#ceo_greeting .inner_con .txt_area .sign_area .signature_img { width: 164px; height: 84px; }
#ceo_greeting .inner_con .txt_area .sign_area .signature_img img { width: 100%; height: 100%; object-fit: contain; }
#ceo_greeting .inner_con .visual_img_area { flex: 0 0 733px; max-width: 733px; height: 504px; overflow: hidden; }
#ceo_greeting .inner_con .visual_img_area img { width: 100%; height: 100%; object-fit: cover; }

/* 반응형 대응 */
@media screen and (max-width: 1440px) {
#ceo_greeting .inner_con { max-width: 100%; padding: 0 30px; gap: 40px; }
#ceo_greeting .inner_con .visual_img_area { flex: 1; height: auto; }
}
@media screen and (max-width: 1024px) {
#ceo_greeting .inner_con { flex-direction: column-reverse; gap: 50px; }
#ceo_greeting .inner_con .txt_area { flex: 1; max-width: 100%; text-align: center; align-items: center; }
#ceo_greeting .inner_con .txt_area .sign_area { justify-content: center; }
#ceo_greeting .inner_con .visual_img_area { width: 100%; max-width: 733px; height: auto; }
}
@media screen and (max-width: 768px) {
#ceo_greeting { padding: 60px 0; }
#ceo_greeting .inner_con .txt_area .main_text { font-size: 18px; line-height: 28px; }
#ceo_greeting .inner_con .txt_area .main_text .space_div { height: 28px; }
#ceo_greeting .inner_con .txt_area .sign_area .ceo_title { font-size: 18px; }
#ceo_greeting .inner_con .txt_area .sign_area .signature_img { width: 120px; height: 60px; }
}

/* =================================================================
   연혁 (sub1_2) - 준비 중 페이지 스타일링
================================================================= */
.sub-ready-wrap { display: flex; justify-content: center; align-items: center; min-height: 600px; padding: 50px 0; background-color: #fff; box-sizing: border-box; }
.sub-ready-wrap .ready-img-box { max-width: 1200px; width: 100%; text-align: center; animation: fadeInUp 1s ease-out; }
.sub-ready-wrap .ready-img-box img { max-width: 100%; height: auto; display: inline-block; }
@keyframes fadeInUp {
0% { opacity: 0; transform: translateY(30px); }
100% { opacity: 1; transform: translateY(0); }
}

/* =================================================================
   인증,특허 (sub1_3) 콘텐츠 스타일링
================================================================= */
.cert-page-wrap { width: 100%; margin: 0 auto; padding: 60px 0 0 0; box-sizing: border-box; background-color: #fff; overflow: hidden; }
.cert-page-wrap .cert-inner { max-width: 1560px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
.cert-page-wrap .cert-section { margin-bottom: 120px; position: relative; }
.cert-page-wrap .cert-sec-title { display: flex; align-items: center; gap: 20px; margin-bottom: 40px; }
.cert-page-wrap .cert-sec-title .title-bullet { width: 13px; height: 13px; background-color: #121f3e; border-radius: 5px; flex-shrink: 0; }
.cert-page-wrap .cert-sec-title .title-txt { font-size: 40px; font-weight: 800; color: #000; letter-spacing: -1.6px; line-height: 1; margin: 0; }
.cert-page-wrap .cert-grid { display: flex; flex-wrap: wrap; gap: 77px 43px; }
.cert-page-wrap .cert-item { width: 346px; display: flex; flex-direction: column; gap: 18px; transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); }
.cert-page-wrap .cert-item:hover { transform: translateY(-12px); }
.cert-page-wrap .cert-item .img-box { background: #fff; border: 0.565px solid #d1d1d1; height: 505px; padding: 27px 13px; border-radius: 11px; box-shadow: 0px 0px 5.648px rgba(0, 70, 82, 0.15); display: flex; align-items: center; justify-content: center; box-sizing: border-box; transition: box-shadow 0.4s ease; }
.cert-page-wrap .cert-item:hover .img-box { box-shadow: 0px 15px 30px rgba(0, 70, 82, 0.25); }
.cert-page-wrap .cert-item .img-box img { max-height: 100%; max-width: 100%; object-fit: contain; display: block; }
.cert-page-wrap .cert-item .label-box { height: 68px; background-color: #2f3441; border-radius: 7px; display: flex; align-items: center; justify-content: center; padding: 10px 20px; box-sizing: border-box; text-align: center; transition: background-color 0.3s ease; }
.cert-page-wrap .cert-item:hover .label-box { background-color: #121f3e; }
.cert-page-wrap .cert-item .label-box .label-txt { color: #fff; font-size: 20px; font-weight: 500; letter-spacing: -0.8px; line-height: 1.3; margin: 0; }
.cert-page-wrap .cert-item .label-box.is-small .label-txt { font-size: 16px; letter-spacing: -0.6px; }

/* 상표권 섹션 특수 디자인 및 배경 */
.cert-page-wrap .brand-wrap { position: relative; width: 100%; padding: 80px 0 120px 0; margin-top: 40px; }
.cert-page-wrap .brand-wrap .brand-bg-img { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 1920px; height: 100%; background: url('../img/sub/sub1_3_bg.png') no-repeat center bottom; background-size: cover; z-index: 1; pointer-events: none; }
.cert-page-wrap .brand-wrap .brand-bg-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, #ffffff 0%, rgba(255, 255, 255, 0.7) 30%, rgba(255, 255, 255, 0) 100%); z-index: 2; pointer-events: none; }
.cert-page-wrap .brand-wrap .cert-inner { position: relative; z-index: 3; }
.cert-page-wrap .brand-flex-box { display: flex; align-items: center; justify-content: space-between; gap: 60px; }
.cert-page-wrap .brand-grid { display: flex; gap: 43px; flex-shrink: 0; }
.cert-page-wrap .brand-slogan { flex: 1; text-align: center; font-size: 36px; font-weight: 500; color: #000; line-height: 1.5; letter-spacing: -1.44px; word-break: keep-all; }

/* 반응형 미디어 쿼리 */
@media (max-width: 1560px) {
.cert-page-wrap .cert-grid { justify-content: center; }
.cert-page-wrap .brand-flex-box { flex-direction: column; align-items: center; text-align: center; }
.cert-page-wrap .brand-grid { justify-content: center; }
.cert-page-wrap .brand-slogan { order: -1; margin-bottom: 30px; }
}
@media (max-width: 768px) {
.cert-page-wrap { padding: 40px 0 0 0; }
.cert-page-wrap .cert-section { margin-bottom: 80px; }
.cert-page-wrap .cert-sec-title { margin-bottom: 30px; gap: 12px; }
.cert-page-wrap .cert-sec-title .title-txt { font-size: 28px; letter-spacing: -1px; }
.cert-page-wrap .cert-grid { gap: 40px 20px; }
.cert-page-wrap .cert-item { width: calc(50% - 10px); gap: 12px; }
.cert-page-wrap .cert-item .img-box { height: auto; aspect-ratio: 346/505; padding: 15px 8px; }
.cert-page-wrap .cert-item .label-box { height: auto; min-height: 50px; padding: 8px 10px; }
.cert-page-wrap .cert-item .label-box .label-txt { font-size: 15px; }
.cert-page-wrap .cert-item .label-box.is-small .label-txt { font-size: 13px; }
.cert-page-wrap .brand-slogan { font-size: 24px; letter-spacing: -0.8px; }
}
@media (max-width: 480px) {
.cert-page-wrap .cert-item { width: 100%; max-width: 346px; }
.cert-page-wrap .brand-grid { flex-direction: column; align-items: center; width: 100%; }
.cert-page-wrap .brand-grid .cert-item { width: 100%; }
}
.location-wrap.sub1_4 { max-width: 1500px; margin: 0 auto; padding: 60px 20px 100px; display: flex; flex-direction: column; gap: 100px; }
.location-wrap.sub1_4 .location-item { display: flex; flex-direction: column; gap: 30px; }
.location-wrap.sub1_4 .location-title { color: #000; font-size: 30px; font-weight: 700; position: relative; padding-left: 20px; }
.location-wrap.sub1_4 .location-title::before { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 8px; height: 8px; background: #1f448e; border-radius: 50%; }
.location-wrap.sub1_4 .location-info { display: flex; align-items: center; background: #fff; border: 1px solid #e1e1e1; border-radius: 16px; padding: 20px 40px; gap: 40px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03); }
.location-wrap.sub1_4 .location-info .info-group { display: flex; align-items: center; gap: 22px; flex: 1; }
.location-wrap.sub1_4 .info-icon { width: 80px; height: 80px; background-color: #f0f4fa; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #1f448e; }
.location-wrap.sub1_4 .info-icon.icon-address { background: #f0f4fa url('../img/sub/sub1_4_icon_01.png') no-repeat center; }
.location-wrap.sub1_4 .info-icon.icon-phone { background: #f0f4fa url('../img/sub/sub1_4_icon_02.png') no-repeat center; }
.location-wrap.sub1_4 .info-label { font-weight: 700; color: #000; font-size: 18px; }
.location-wrap.sub1_4 .info-value { color: #333; font-size: 18px; }
.location-wrap.sub1_4 .info-divider { width: 1px; height: 20px; background: #e1e1e1; }
.location-wrap.sub1_4 .location-visual { display: grid; grid-template-columns: 1fr auto; }
.location-wrap.sub1_4 .visual-map, .location-wrap.sub1_4 .visual-photo { height: 617px; overflow: hidden; background: #f5f5f5; }
.root_daum_roughmap .wrap_map { height: 617px; }
@media (max-width: 1024px) {
.location-wrap.sub1_4 .location-info { flex-direction: column; align-items: flex-start; gap: 20px; }
.location-wrap.sub1_4 .location-visual { grid-template-columns: 1fr; }
}

/* =================================================================
   제품소개 (sub2_1) 콘텐츠 스타일링
================================================================= */
.prod-intro-wrap.sub2_1 { max-width: 1560px; margin: 0 auto; padding: 60px 20px 120px; box-sizing: border-box; background-color: #fff; }
.prod-intro-wrap.sub2_1 .prod-container { display: flex; align-items: center; gap: 55px; }
.prod-intro-wrap.sub2_1 .prod-visual { flex: 0 0 468px; max-width: 468px; position: relative; }
@keyframes sub21FadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
.prod-intro-wrap.sub2_1 .prod-visual .visual-inner { position: relative; width: 100%; opacity: 0; transform: translateY(20px); animation: sub21FadeIn 1.8s 0.3s ease-out forwards; }
.prod-intro-wrap.sub2_1 .prod-visual .prod-img { width: 100%; height: auto; display: block; position: relative; z-index: 2; }
.prod-intro-wrap.sub2_1 .prod-visual .prod-shadow { width: 85%; height: 25px; background: rgba(0, 0, 0, 0.12); filter: blur(8px); border-radius: 50%; margin: -20px auto 0; position: relative; z-index: 1; }
.prod-intro-wrap.sub2_1 .prod-detail { flex: 1; display: flex; flex-direction: column; gap: 50px; }
.prod-intro-wrap.sub2_1 .prod-detail .summary-box { background-color: #f9f9f9; border: 1px solid #d1d1d1; border-radius: 5px; padding: 25px 30px; text-align: center; box-shadow: 0px 2px 4px rgba(0,0,0,0.02); }
.prod-intro-wrap.sub2_1 .prod-detail .summary-txt { font-size: 22px; font-weight: 400; color: #000; line-height: 1.6; letter-spacing: -0.88px; margin: 0; word-break: keep-all; }
.prod-intro-wrap.sub2_1 .prod-detail .summary-txt .highlight { font-weight: 700; color: #111; }
.prod-intro-wrap.sub2_1 .prod-detail .card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item { display: flex; flex-direction: column; align-items: center; transition: transform 0.4s ease; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item:hover { transform: translateY(-8px); }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .icon-box { height: 120px; display: flex; align-items: center; justify-content: center; margin-bottom: 10px; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .icon-img { max-height: 95px; max-width: 100%; object-fit: contain; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .photo-box { width: 100%; height: 450px; overflow: hidden; position: relative; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .photo-img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item:hover .photo-img { transform: scale(1.05); }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .label-box { width: 100%; height: 188px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: #fff; padding: 20px; box-sizing: border-box; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item.item-01 .label-box { background-color: #2f3441; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item.item-02 .label-box { background-color: #2b4a7d; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item.item-03 .label-box { background-color: #6c9aa2; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .label-tit { font-size: 28px; font-weight: 800; letter-spacing: -1.12px; line-height: 1.3; margin: 0 0 15px; color: #fff; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .label-sub { font-size: 24px; font-weight: 500; letter-spacing: -0.96px; line-height: 1.2; margin: 0; opacity: 0.9; }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid .info-text-box { background-color: #f9f9f9; border: 1px solid #bababa; border-radius: 10px; padding: 44px 25px; text-align: center; box-sizing: border-box; box-shadow: 0px 2px 6px rgba(0,0,0,0.01); }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid .info-txt { font-size: 24px; font-weight: 500; color: #000; line-height: 1.5; letter-spacing: -0.96px; margin: 0; word-break: keep-all; }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid .info-txt strong { font-weight: 700; }

/* =================================================================
   반응형 대응
================================================================= */
@media (max-width: 1400px) {
.prod-intro-wrap.sub2_1 .prod-container { gap: 40px; }
.prod-intro-wrap.sub2_1 .prod-visual { flex: 0 0 380px; max-width: 380px; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .label-tit { font-size: 24px; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .label-sub { font-size: 20px; }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid .info-txt { font-size: 21px; }
}
@media (max-width: 1200px) {
.prod-intro-wrap.sub2_1 .prod-container { flex-direction: column; align-items: center; }
.prod-intro-wrap.sub2_1 .prod-visual { flex: none; width: 100%; max-width: 468px; margin-bottom: 40px; }
.prod-intro-wrap.sub2_1 .prod-detail { width: 100%; }
}
@media (max-width: 768px) {
.prod-intro-wrap.sub2_1 { padding: 40px 20px 80px; }
.prod-intro-wrap.sub2_1 .prod-detail .summary-txt { font-size: 18px; line-height: 1.5; }
.prod-intro-wrap.sub2_1 .prod-detail .card-grid { grid-template-columns: 1fr; max-width: 500px; margin: 0 auto; width: 100%; gap: 30px; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .icon-box { height: 100px; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .photo-box { height: auto; aspect-ratio: 332/380; }
.prod-intro-wrap.sub2_1 .prod-detail .card-item .label-box { height: 140px; }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid { grid-template-columns: 1fr; }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid .info-text-box { padding: 30px 20px; }
.prod-intro-wrap.sub2_1 .prod-detail .bottom-text-grid .info-txt { font-size: 19px; }
}

/* =================================================================
   기술 특징/장점 (sub2_2) 콘텐츠 스타일링
================================================================= */
.prod-spec-wrap.sub2_2 { width: 100%; font-family: 'Pretendard', sans-serif; word-break: keep-all; }
.prod-spec-wrap.sub2_2 .spec-grid-sec { background-color: #f2f8fc; padding: 100px 20px; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .inner-con { max-width: 1500px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .spec-card { background: #fff; border-radius: 10px; box-shadow: 0 4px 20px rgba(0,0,0,0.04); display: flex; flex-direction: column; align-items: center; justify-content: center; height: 353px; text-align: center; padding: 40px; box-sizing: border-box; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .card-icon-box { height: 130px; display: flex; align-items: center; justify-content: center; margin-bottom: 26px; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .card-icon-box img { max-height: 100%; max-width: 100%; object-fit: contain; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .card-txt { color: #000; font-size: 28px; font-weight: 500; line-height: 1.3; letter-spacing: -1.12px; margin: 0; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .card-txt strong { font-weight: 700; }
.prod-spec-wrap.sub2_2 .spec-desc-sec { background-color: #f9f9f9; padding: 0px 20px 120px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .inner-con { max-width: 1500px; margin: 0 auto; display: flex; flex-direction: column; gap: 80px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-img-row { display: grid; grid-template-columns: repeat(3, 1fr); width: 100%; background: #fff; box-shadow: 0 4px 20px rgba(0,0,0,0.03); }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-img-row .img-box { width: 100%; height: 382px; overflow: hidden; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-img-row .img-box img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-img-row .img-box img:hover { transform: scale(1.03); }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-info-row { display: flex; align-items: flex-start; justify-content: space-between; padding: 0 80px; gap: 50px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col { flex: 1; display: flex; flex-direction: column; gap: 40px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .num-txt { font-family: 'The Jamsil', 'Pretendard', sans-serif; font-size: 64px; font-weight: 500; color: #bac6d9; line-height: 1; letter-spacing: -2.56px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .title-txt { color: #000; font-size: 40px; font-weight: 700; line-height: 1.2; letter-spacing: -1.6px; margin: 0; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .body-txt { color: #000; font-size: 24px; font-weight: 400; line-height: 1.5; letter-spacing: -0.96px; margin: 0; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .body-txt strong { font-weight: 600; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .divider-line { width: 1px; height: 422px; background: #bac6d9; opacity: 0.4; align-self: center; }

@media (max-width: 1400px) {
.prod-spec-wrap.sub2_2 .spec-grid-sec .spec-card { padding: 30px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-info-row { padding: 0; }
}
@media (max-width: 1200px) {
.prod-spec-wrap.sub2_2 .spec-grid-sec .card-txt { font-size: 24px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .title-txt { font-size: 32px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .body-txt { font-size: 20px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .divider-line { height: 350px; }
}
@media (max-width: 1024px) {
.prod-spec-wrap.sub2_2 .spec-grid-sec { padding: 60px 20px; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .inner-con { grid-template-columns: 1fr; max-width: 738px; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .spec-card { height: 280px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-img-row { grid-template-columns: 1fr; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-img-row .img-box { height: 300px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .spec-info-row { flex-direction: column; align-items: center; gap: 60px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col { width: 100%; text-align: center; align-items: center; gap: 20px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .divider-line { width: 100%; height: 1px; }
}
@media (max-width: 768px) {
.prod-spec-wrap.sub2_2 .spec-grid-sec .card-txt { font-size: 20px; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .card-icon-box { height: 100px; }
.prod-spec-wrap.sub2_2 .spec-grid-sec .spec-card { height: auto; padding: 40px 20px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .title-txt { font-size: 28px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .body-txt { font-size: 18px; }
.prod-spec-wrap.sub2_2 .spec-desc-sec .info-col .num-txt { font-size: 48px; }
}
/* 서브 2-3 제품 상세도 */
.prod-detail-wrap.sub2_3 .inner-con { max-width: 1500px; margin: 0 auto; }
.prod-detail-wrap.sub2_3 .sec-bg-gray { background-color: #f2f8fc; }
.prod-detail-wrap.sub2_3 .sec-bg-white { background-color: #fff; }
.prod-detail-wrap.sub2_3 .sec-padding { padding: 120px 0; }

.prod-detail-wrap.sub2_3 .sec-title { display: flex; align-items: center; gap: 20px; margin-bottom: 40px; }
.prod-detail-wrap.sub2_3 .sec-title .dot { display: block; width: 13px; height: 13px; background-color: var(--color-2, #1f448e); border-radius: 5px; }
.prod-detail-wrap.sub2_3 .sec-title h3 { font-size: 40px; font-weight: 800; color: #000; letter-spacing: -1.6px; margin: 0; }

/* 1. 제품 외형 섹션 */
.prod-detail-wrap.sub2_3 .product-exterior { display: flex; justify-content: center; align-items: center; gap: 120px; }
.prod-detail-wrap.sub2_3 .product-exterior .left-img { width: 765px; height: 1035px; }
.prod-detail-wrap.sub2_3 .product-exterior .left-img img { width: 100%; height: 100%; object-fit: cover; }
.prod-detail-wrap.sub2_3 .product-exterior .right-cards { display: flex; gap: 24px; }
.prod-detail-wrap.sub2_3 .product-exterior .ext-card { width: 276px; border: 2px solid #121f3e; box-sizing: border-box; display: flex; flex-direction: column; background: #fff; }
.prod-detail-wrap.sub2_3 .product-exterior .ext-card .img-box { height: 720px; }
.prod-detail-wrap.sub2_3 .product-exterior .ext-card .img-box img { width: 100%; height: 100%; object-fit: cover; }
.prod-detail-wrap.sub2_3 .product-exterior .ext-card .txt-box { background-color: #121f3e; height: 80px; display: flex; align-items: center; justify-content: center; margin-top: auto; }
.prod-detail-wrap.sub2_3 .product-exterior .ext-card .txt-box p { font-size: 26px; font-weight: 600; color: #fff; margin: 0; letter-spacing: -1.04px; }

/* 2. 수리 요령 영상 섹션 */
.prod-detail-wrap.sub2_3 .repair-video-sec .inner-con { display: flex; gap: 20px; justify-content: center; }
.prod-detail-wrap.sub2_3 .repair-video-sec .video-col { width: 740px; }
.prod-detail-wrap.sub2_3 .video-list { display: flex; gap: 20px; width: 100%; }
.prod-detail-wrap.sub2_3 .video-item { flex: 1; display: flex; flex-direction: column; gap: 16px; align-items: center; }
.prod-detail-wrap.sub2_3 .video-box { position: relative; width: 100%; cursor: pointer; overflow: hidden; border-radius: 10px; aspect-ratio: 16 / 9; }
.prod-detail-wrap.sub2_3 .video-box::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.1); pointer-events: none; }
.prod-detail-wrap.sub2_3 .video-box.has-iframe { cursor: default; }
.prod-detail-wrap.sub2_3 .video-box.has-iframe::after { display: none; }
.prod-detail-wrap.sub2_3 .video-box.has-iframe iframe { width: 100%; height: 100%; border: none; display: block; }
.prod-detail-wrap.sub2_3 .video-box img.thumb { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s; }
.prod-detail-wrap.sub2_3 .video-box:hover img.thumb { transform: scale(1.05); }
.prod-detail-wrap.sub2_3 .video-box .play-btn { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 72px; height: 72px; z-index: 2; pointer-events: none; }
.prod-detail-wrap.sub2_3 .video-caption { font-size: 24px; font-weight: 500; color: #000; text-align: center; margin: 0; }

/* 3. 노즐기능 섹션 */
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-row { margin-bottom: 160px; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-list { display: flex; gap: 20px; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item { width: 360px; display: flex; flex-direction: column; gap: 16px; align-items: center; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item .img-box { width: 100%; height: 300px; border-radius: 10px; overflow: hidden; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item .img-box img { width: 100%; height: 100%; object-fit: cover; display: block; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item .caption { font-size: 24px; font-weight: 500; color: #000; text-align: center; margin: 0; }
.prod-detail-wrap.sub2_3 .nozzle-video-sec .video-list { justify-content: center; }
.prod-detail-wrap.sub2_3 .nozzle-video-sec .video-item { width: 100%; }
.prod-detail-wrap.sub2_3 .nozzle-video-sec .video-box .play-btn { width: 80px; height: 80px; }

/* 4. 여과기 세척 섹션 */
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-list { display: flex; gap: 20px; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item { width: 487px; display: flex; flex-direction: column; gap: 16px; align-items: center; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item .img-box { width: 100%; height: 300px; background: #fff; border-radius: 10px; overflow: hidden; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item .img-box img { width: 100%; height: 100%; object-fit: cover; display: block; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item .caption { font-size: 24px; font-weight: 500; color: #000; text-align: center; margin: 0; }

/* 5. 제품 사양 섹션 */
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table { width: 1200px; border-top: 3px solid #000; border-bottom: 3px solid #000; border-collapse: collapse; }
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table th,
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table td { height: 50px; padding: 0 40px; border-bottom: 1px solid #121f3e; text-align: left; vertical-align: middle; }
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table tr:last-child th,
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table tr:last-child td { border-bottom: none; }
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table th { background-color: #f2f8fc; font-size: 24px; font-weight: 700; color: #000; width: 430px; box-sizing: border-box; }
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table td { background-color: #fff; font-size: 20px; font-weight: 400; color: #000; box-sizing: border-box; }

/* 반응형 */
@media (max-width: 1500px) {
.prod-detail-wrap.sub2_3 .inner-con { padding: 0 20px; }
.prod-detail-wrap.sub2_3 .product-exterior { gap: 60px; flex-direction: column; }
.prod-detail-wrap.sub2_3 .product-exterior .left-img { width: 100%; max-width: 765px; height: auto; aspect-ratio: 765 / 1035; }
.prod-detail-wrap.sub2_3 .repair-video-sec .inner-con { flex-direction: column; gap: 60px; align-items: center; }
.prod-detail-wrap.sub2_3 .repair-video-sec .video-col { width: 100%; max-width: 740px; }
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table { width: 100%; max-width: 1200px; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-list { flex-wrap: wrap; justify-content: flex-start; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item { width: calc(33.333% - 14px); }
}
@media (max-width: 1024px) {
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-list { flex-wrap: wrap; justify-content: center; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item { width: calc(50% - 10px); }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item .img-box { height: 250px; }
.prod-detail-wrap.sub2_3 .video-list { flex-direction: column; }
.prod-detail-wrap.sub2_3 .repair-video-sec .video-box { height: 400px; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .video-box { height: 300px; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item { width: calc(50% - 10px); }
}
@media (max-width: 768px) {
.prod-detail-wrap.sub2_3 .sec-padding { padding: 60px 0; }
.prod-detail-wrap.sub2_3 .product-exterior .right-cards { flex-direction: column; width: 100%; align-items: center; }
.prod-detail-wrap.sub2_3 .sec-title h3 { font-size: 28px; }
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item { width: 100%; }
.prod-detail-wrap.sub2_3 .video-caption,
.prod-detail-wrap.sub2_3 .nozzle-feature-sec .feature-item .caption,
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item .caption { font-size: 20px; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item { width: 100%; }
.prod-detail-wrap.sub2_3 .filter-clean-sec .feature-item .img-box { height: 250px; }
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table th { width: 120px; font-size: 16px; padding: 0 15px; }
.prod-detail-wrap.sub2_3 .product-spec-sec .spec-table td { font-size: 15px; padding: 0 15px; }
}

/* =================================================================
   컨트롤러 상세도 (sub2_4) 콘텐츠 스타일링
================================================================= */
.prod-controller-wrap.sub2_4 { width: 100%; font-family: 'Pretendard', sans-serif; word-break: keep-all; }
.prod-controller-wrap.sub2_4 .controller-img-sec { padding: 90px 20px; text-align: center; }
.prod-controller-wrap.sub2_4 .controller-img-sec .inner-con { max-width: 1500px; margin: 0 auto; }
.prod-controller-wrap.sub2_4 .controller-img-sec img { max-width: 100%; height: auto; }
.prod-controller-wrap.sub2_4 .work-order-sec { background-color: #f2f8fc; padding: 70px 20px 100px; overflow: hidden; }
.prod-controller-wrap.sub2_4 .work-order-sec .inner-con { max-width: 1446px; margin: 0 auto; }
.prod-controller-wrap.sub2_4 .sec-title { display: flex; align-items: center; gap: 20px; margin-bottom: 40px; }
.prod-controller-wrap.sub2_4 .sec-title .dot { width: 13px; height: 13px; background-color: #121f3e; border-radius: 5px; }
.prod-controller-wrap.sub2_4 .sec-title h3 { font-size: 40px; font-weight: 800; color: #000; margin: 0; letter-spacing: -1.6px; }
.prod-controller-wrap.sub2_4 .order-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px 48px; }
.prod-controller-wrap.sub2_4 .order-card { background: #fff; border: 1px solid #aeaeae; border-radius: 10px; height: 222px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; padding: 20px; box-sizing: border-box; text-align: center; }
.prod-controller-wrap.sub2_4 .order-card .step-num { font-family: 'The Jamsil', 'Pretendard', sans-serif; font-size: 32px; font-weight: 700; color: #0b3b87; margin-bottom: 25px; }
.prod-controller-wrap.sub2_4 .order-card .step-desc { font-size: 23px; color: #000; line-height: 1.3; letter-spacing: -0.92px; margin: 0; }
.prod-controller-wrap.sub2_4 .arrow-icon { position: absolute; top: 50%; right: -26px; transform: translateY(-50%); width: 52px; height: 52px; background: #e2e8f0 url('../img/sub/iconamoon_arrow-right-2-bold.svg') no-repeat center; background-size: auto; border-radius: 50%; z-index: 10; }

@media (max-width: 1400px) {
.prod-controller-wrap.sub2_4 .order-grid { gap: 20px; }
.prod-controller-wrap.sub2_4 .arrow-icon { right: -20px; width: 40px; height: 40px; }
}
@media (max-width: 1024px) {
.prod-controller-wrap.sub2_4 .order-grid { grid-template-columns: repeat(2, 1fr); }
.prod-controller-wrap.sub2_4 .arrow-icon { display: none; }
.prod-controller-wrap.sub2_4 .order-card { height: 180px; }
.prod-controller-wrap.sub2_4 .order-card .step-num { font-size: 26px; margin-bottom: 15px; }
.prod-controller-wrap.sub2_4 .order-card .step-desc { font-size: 18px; }
.prod-controller-wrap.sub2_4 .sec-title h3 { font-size: 30px; }
}
@media (max-width: 768px) {
.prod-controller-wrap.sub2_4 .order-grid { grid-template-columns: 1fr; }
.prod-controller-wrap.sub2_4 .order-card { height: auto; padding: 30px 20px; }
.prod-controller-wrap.sub2_4 .controller-img-sec { padding: 50px 20px; }
.prod-controller-wrap.sub2_4 .work-order-sec { padding: 50px 20px; }
}

/* =================================================================
   경제적/파급효과 (sub2_5) 콘텐츠 스타일링
================================================================= */
.prod-effect-wrap.sub2_5 { width: 100%; font-family: 'Pretendard', sans-serif; word-break: keep-all; }
.prod-effect-wrap.sub2_5 .inner-con { max-width: 1500px; margin: 0 auto; }
.prod-effect-wrap.sub2_5 .sec-title-wrap { display: flex; align-items: flex-end; gap: 20px; margin-bottom: 50px; }
.prod-effect-wrap.sub2_5 .sec-title { display: flex; align-items: center; gap: 15px; }
.prod-effect-wrap.sub2_5 .sec-title .dot { width: 13px; height: 13px; background-color: #121f3e; border-radius: 5px; }
.prod-effect-wrap.sub2_5 .sec-title h3 { font-size: 40px; font-weight: 800; color: #000; margin: 0; letter-spacing: -1.6px; }
.prod-effect-wrap.sub2_5 .sec-desc { font-size: 22px; color: #333; margin: 0 0 5px 0; letter-spacing: -0.88px; }
.prod-effect-wrap.sub2_5 .effect-analysis-sec { background-color: #f4f7f9; padding: 100px 20px 120px; }
.prod-effect-wrap.sub2_5 .analysis-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.prod-effect-wrap.sub2_5 .analysis-card { background: #fff; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.05); }
.prod-effect-wrap.sub2_5 .analysis-card .card-head { height: 160px; display: flex; align-items: center; justify-content: center; font-size: 32px; font-weight: 700; color: #fff; }
.prod-effect-wrap.sub2_5 .analysis-card.type-blue .card-head { background-color: #5583b4; }
.prod-effect-wrap.sub2_5 .analysis-card.type-green .card-head { background-color: #489b8a; }
.prod-effect-wrap.sub2_5 .analysis-card .card-body { height: 540px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px; box-sizing: border-box; }
.prod-effect-wrap.sub2_5 .analysis-card .icon-box { margin-bottom: 50px; text-align: center; }
.prod-effect-wrap.sub2_5 .analysis-card .icon-box img { max-width: 100%; height: auto; }
.prod-effect-wrap.sub2_5 .analysis-card .result-txt { display: flex; align-items: center; gap: 15px; }
.prod-effect-wrap.sub2_5 .analysis-card .result-txt .num { font-size: 60px; font-weight: 800; color: #000; letter-spacing: -2px; }
.prod-effect-wrap.sub2_5 .analysis-card .result-txt .highlight { font-size: 32px; font-weight: 700; color: #e51d1d; margin-top: 15px; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt { text-align: center; display: flex; flex-direction: column; align-items: center; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .old-time { font-size: 32px; font-weight: 700; color: #000; margin: 0 0 20px; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .arrow-down { display: block; width: 40px; height: 20px; margin: 0 auto 20px; position: relative; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .arrow-down::after { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%) rotate(45deg); width: 14px; height: 14px; border-bottom: 4px solid #a3a3a3; border-right: 4px solid #a3a3a3; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .new-time { font-size: 32px; font-weight: 700; color: #000; margin: 0; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .new-time .highlight { font-size: 60px; color: #e51d1d; letter-spacing: -2px; margin-right: 10px; }

.prod-effect-wrap.sub2_5 .ripple-effect-sec { padding: 120px 20px; background-color: #fff; }
.prod-effect-wrap.sub2_5 .ripple-effect-sec .sec-title { margin-bottom: 50px; }
.prod-effect-wrap.sub2_5 .effect-list { display: flex; flex-direction: column; gap: 20px; margin-bottom: 30px; }
.prod-effect-wrap.sub2_5 .effect-item { border: 1px solid #d5d5d5; border-radius: 8px; padding: 40px; text-align: center; }
.prod-effect-wrap.sub2_5 .effect-item p { font-size: 32px; font-weight: 700; color: #000; margin: 0; letter-spacing: -1.28px; }
.prod-effect-wrap.sub2_5 .effect-item p .highlight { color: #e51d1d; }
.prod-effect-wrap.sub2_5 .flow-arrow { text-align: center; margin-bottom: 30px; }
.prod-effect-wrap.sub2_5 .effect-conclusion { background-color: #38807d; padding: 60px 40px; text-align: center; }
.prod-effect-wrap.sub2_5 .effect-conclusion p { font-size: 36px; font-weight: 700; color: #fff; line-height: 1.5; margin: 0; letter-spacing: -1.44px; }

.prod-effect-wrap.sub2_5 .bottom-bg-sec { width: 100%; }
.prod-effect-wrap.sub2_5 .bottom-bg-sec .bg-img { width: 100%; height: 670px; background-size: cover; background-position: center; background-repeat: no-repeat; }

@media (max-width: 1400px) {
.prod-effect-wrap.sub2_5 .sec-title-wrap { flex-direction: column; align-items: flex-start; gap: 15px; }
.prod-effect-wrap.sub2_5 .analysis-card .result-txt .num { font-size: 50px; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .new-time .highlight { font-size: 50px; }
.prod-effect-wrap.sub2_5 .effect-item p { font-size: 26px; }
.prod-effect-wrap.sub2_5 .effect-conclusion p { font-size: 30px; }
}
@media (max-width: 1024px) {
.prod-effect-wrap.sub2_5 .analysis-grid { grid-template-columns: 1fr; }
.prod-effect-wrap.sub2_5 .analysis-card .card-head { height: 100px; font-size: 26px; }
.prod-effect-wrap.sub2_5 .analysis-card .card-body { height: auto; padding: 50px 20px; }
.prod-effect-wrap.sub2_5 .bottom-bg-sec .bg-img { height: 400px; }
}
@media (max-width: 768px) {
.prod-effect-wrap.sub2_5 .effect-analysis-sec { padding: 60px 20px; }
.prod-effect-wrap.sub2_5 .ripple-effect-sec { padding: 60px 20px; }
.prod-effect-wrap.sub2_5 .sec-title h3 { font-size: 30px; }
.prod-effect-wrap.sub2_5 .sec-desc { font-size: 18px; }
.prod-effect-wrap.sub2_5 .effect-item p { font-size: 20px; line-height: 1.4; }
.prod-effect-wrap.sub2_5 .effect-conclusion p { font-size: 22px; }
.prod-effect-wrap.sub2_5 .effect-conclusion { padding: 40px 20px; }
.prod-effect-wrap.sub2_5 .analysis-card .result-txt .num { font-size: 40px; }
.prod-effect-wrap.sub2_5 .analysis-card .result-txt .highlight { font-size: 24px; margin-top: 10px; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .old-time { font-size: 24px; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .new-time { font-size: 24px; }
.prod-effect-wrap.sub2_5 .analysis-card .time-result-txt .new-time .highlight { font-size: 40px; }
}

/* =================================================================
   효과/검증 (sub2_6) 콘텐츠 스타일링
================================================================= */
.prod-verify-wrap.sub2_6 { width: 100%; font-family: 'Pretendard', sans-serif; word-break: keep-all; }
.prod-verify-wrap.sub2_6 .inner-con { max-width: 1483px; margin: 0 auto; }
.prod-verify-wrap.sub2_6 .compare-sec { padding: 100px 20px; background-color: #fff; }
.prod-verify-wrap.sub2_6 .compare-grid { display: flex; gap: 80px; justify-content: center; }
.prod-verify-wrap.sub2_6 .image-col { width: 653px; display: flex; flex-direction: column; gap: 25px; }
.prod-verify-wrap.sub2_6 .img-box { border: 3px solid #2f3441; border-radius: 10px; height: 400px; position: relative; }
.prod-verify-wrap.sub2_6 .img-box .label { background: #2f3441; color: #fff; position: absolute; top: 0; left: 0; font-size: 32px; font-weight: 700; padding: 10px 44px; border-radius: 6px 0 10px 0; }
.prod-verify-wrap.sub2_6 .img-box img { width: 100%; height: 100%; object-fit: cover; border-radius: 7px; }
.prod-verify-wrap.sub2_6 .info-col { width: 443px; display: flex; flex-direction: column; justify-content: center; gap: 60px; }
.prod-verify-wrap.sub2_6 .info-item { display: flex; flex-direction: column; gap: 20px; }
.prod-verify-wrap.sub2_6 .badge { background: #2f3441; color: #fff; width: 100px; height: 43px; display: flex; align-items: center; justify-content: center; border-radius: 10px; font-size: 25px; font-weight: 700; }
.prod-verify-wrap.sub2_6 .desc { font-size: 20px; color: #000; line-height: 1.5; margin: 0; letter-spacing: -0.8px; }
.prod-verify-wrap.sub2_6 .legend-box { background: #f9f9f9; border-radius: 10px; display: flex; gap: 48px; padding: 15px 30px; align-items: center; margin-top: 20px; }
.prod-verify-wrap.sub2_6 .legend-item { display: flex; align-items: center; gap: 20px; font-size: 24px; font-weight: 500; color: #000; }
.prod-verify-wrap.sub2_6 .color-circle { width: 40px; height: 40px; border-radius: 50%; }
.prod-verify-wrap.sub2_6 .color-circle.purple { background-color: #690088; }
.prod-verify-wrap.sub2_6 .color-circle.yellow { background-color: #ffcc00; }
.prod-verify-wrap.sub2_6 .verify-data-sec { background-color: #f7f7f7; padding: 75px 20px 100px; }
.prod-verify-wrap.sub2_6 .verify-data-sec.bg-white { background-color: #fff; }
.prod-verify-wrap.sub2_6 .sec-title { display: flex; align-items: center; gap: 20px; margin-bottom: 80px; }
.prod-verify-wrap.sub2_6 .sec-title .dot { width: 13px; height: 13px; background-color: #121f3e; border-radius: 5px; }
.prod-verify-wrap.sub2_6 .sec-title h3 { font-size: 40px; font-weight: 800; color: #000; margin: 0; letter-spacing: -1.6px; }
.prod-verify-wrap.sub2_6 .data-grid-top { display: grid; grid-template-columns: 1fr 1fr; gap: 47px; margin-bottom: 47px; }
.prod-verify-wrap.sub2_6 .info-part { display: flex; flex-direction: column; gap: 55px; }
.prod-verify-wrap.sub2_6 .info-group { display: flex; flex-direction: column; gap: 24px; }
.prod-verify-wrap.sub2_6 .blue-badge { background: #4177ad; color: #fff; height: 56px; display: flex; align-items: center; justify-content: center; font-size: 28px; font-weight: 700; border-radius: 10px; width: fit-content; padding: 0 30px; }
.prod-verify-wrap.sub2_6 .info-group p { font-size: 26px; font-weight: 500; color: #000; margin: 0; }
.prod-verify-wrap.sub2_6 .chart-box { background: #fff; border: 1px solid #2f3441; border-radius: 10px; position: relative; padding: 80px 20px 40px; display: flex; align-items: center; justify-content: center; height: 320px; box-sizing: border-box; margin-top: 27px; }
.prod-verify-wrap.sub2_6 .chart-head { position: absolute; top: 0; left: -5px; right: -5px; transform: translateY(-50%); display: flex; justify-content: space-between; align-items: center; padding: 0; box-sizing: border-box; }
.prod-verify-wrap.sub2_6 .chart-head .title { background: #2f3441; color: #fff; font-size: 24px; font-weight: 600; height: 55px; display: flex; align-items: center; padding: 0 32px; border-radius: 8px; }
.prod-verify-wrap.sub2_6 .chart-head .unit { background: #2f3441; color: #fff; font-size: 18px; font-weight: 500; height: 43px; display: flex; align-items: center; padding: 0 35px; border-radius: 21.5px; }
.prod-verify-wrap.sub2_6 .expect-box { background: #fff; padding: 25px 20px; border-radius: 10px; text-align: center; margin-bottom: 45px; font-size: 22px; font-weight: 500; color: #000; line-height: 1.5; position: relative; }
.prod-verify-wrap.sub2_6 .expect-box .arrow-down { position: absolute; bottom: -20px; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 12px solid transparent; border-right: 12px solid transparent; border-top: 15px solid #2f3441; }
.prod-verify-wrap.sub2_6 .data-grid-bottom { display: grid; grid-template-columns: 1fr 1fr; gap: 47px; }
.prod-verify-wrap.sub2_6 .chart-body img { max-width: 100%; max-height: 200px; display: block; margin: 0 auto; }

@media (max-width: 1400px) {
.prod-verify-wrap.sub2_6 .compare-grid { gap: 40px; }
.prod-verify-wrap.sub2_6 .image-col { width: 500px; }
.prod-verify-wrap.sub2_6 .img-box { height: 300px; }
.prod-verify-wrap.sub2_6 .info-col { flex: 1; }
.prod-verify-wrap.sub2_6 .chart-box { height: auto; padding: 80px 20px 40px; }
}
@media (max-width: 1024px) {
.prod-verify-wrap.sub2_6 .compare-grid { flex-direction: column; align-items: center; }
.prod-verify-wrap.sub2_6 .image-col { width: 100%; max-width: 653px; }
.prod-verify-wrap.sub2_6 .info-col { width: 100%; max-width: 653px; }
.prod-verify-wrap.sub2_6 .data-grid-top { grid-template-columns: 1fr; gap: 40px; }
.prod-verify-wrap.sub2_6 .data-grid-bottom { grid-template-columns: 1fr; gap: 40px; margin-top: 40px; }
.prod-verify-wrap.sub2_6 .info-part { flex-direction: row; gap: 20px; }
.prod-verify-wrap.sub2_6 .info-group { flex: 1; }
}
@media (max-width: 768px) {
.prod-verify-wrap.sub2_6 .compare-sec { padding: 50px 20px; }
.prod-verify-wrap.sub2_6 .verify-data-sec { padding: 50px 20px; }
.prod-verify-wrap.sub2_6 .img-box { height: 250px; }
.prod-verify-wrap.sub2_6 .img-box .label { font-size: 24px; padding: 10px 20px; }
.prod-verify-wrap.sub2_6 .sec-title { margin-bottom: 40px; }
.prod-verify-wrap.sub2_6 .sec-title h3 { font-size: 30px; }
.prod-verify-wrap.sub2_6 .info-part { flex-direction: column; }
.prod-verify-wrap.sub2_6 .blue-badge { font-size: 20px; height: 40px; }
.prod-verify-wrap.sub2_6 .info-group p { font-size: 20px; }
.prod-verify-wrap.sub2_6 .chart-head .title { font-size: 20px; height: 45px; }
}



/* --------------------------------------------------
   문의하기 (sub4_3) - 피그마 시안 완벽 대응 스타일
-------------------------------------------------- */
.sub_con .sub4_3 {
  width: 100%;
  max-width: 1487px;
  margin: 0 auto;
  padding: 50px 0;
  font-family: 'Pretendard', sans-serif;
}

.sub_con .sub4_3 .df {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* 상단 2열 컨테이너 */
.sub_con .sub4_3 .contact-row {
  display: flex;
  gap: 24px;
  align-items: stretch;
  width: 100%;
}

/* 왼쪽: 문의 폼 필드 그룹 */
.sub_con .sub4_3 .form-inputs {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 36px;
  max-width: 723px;
}

.sub_con .sub4_3 .form-group {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  padding: 20px 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.sub_con .sub4_3 .form-group:focus-within {
  border-color: #1f448e;
  box-shadow: 0 8px 30px rgba(31, 68, 142, 0.08);
}

.sub_con .sub4_3 .form-group .form-label {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  line-height: 36px;
  letter-spacing: 0.07px;
}

.sub_con .sub4_3 .form-group .form-label .required-star {
  color: #ff3b3b;
  font-weight: 700;
}

.sub_con .sub4_3 .form-group .input-wrap {
  border-bottom: 0.5px solid #aaa;
  padding-bottom: 10px;
  width: 100%;
}

.sub_con .sub4_3 .form-group .input-wrap input {
  width: 100%;
  border: none !important;
  background: transparent !important;
  font-size: 18px;
  font-weight: 400;
  color: #000;
  line-height: 36px;
  letter-spacing: 0.07px;
  padding: 0;
  box-shadow: none !important;
  outline: none;
}

.sub_con .sub4_3 .form-group .input-wrap input::placeholder {
  color: #000;
  opacity: 0.4;
}

/* 문의 내용 텍스트에리어 그룹 */
.sub_con .sub4_3 .form-group .textarea-wrap {
  border-bottom: 0.5px solid #aaa;
  padding-bottom: 10px;
  height: 180px;
}

.sub_con .sub4_3 .form-group .textarea-wrap textarea {
  width: 100%;
  height: 100%;
  border: none !important;
  background: transparent !important;
  font-size: 18px;
  font-weight: 400;
  color: #000;
  line-height: 36px;
  letter-spacing: 0.07px;
  padding: 0;
  box-shadow: none !important;
  outline: none;
  resize: none;
}

.sub_con .sub4_3 .form-group .textarea-wrap textarea::placeholder {
  color: #000;
  opacity: 0.4;
}

/* 오른쪽: 빠른 문의 카드 */
.sub_con .sub4_3 .fast-contact {
  flex: 1;
  max-width: 740px;
  height: 794px;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.sub_con .sub4_3 .fast-contact .bg-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  z-index: 1;
  transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.sub_con .sub4_3 .fast-contact:hover .bg-img {
  transform: scale(1.06);
}

.sub_con .sub4_3 .fast-contact .bg-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.35);
  z-index: 2;
}

.sub_con .sub4_3 .fast-contact .fast-contact-content {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  text-align: center;
  color: #fff;
  padding: 20px;
}

.sub_con .sub4_3 .fast-contact .fast-contact-content .badge {
  background: rgba(255, 255, 255, 0.34);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 14px 32px;
  border-radius: 100px;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  letter-spacing: -0.15px;
}

.sub_con .sub4_3 .fast-contact .fast-contact-content .phone {
  font-size: 60px;
  font-weight: 800;
  color: #fff;
  line-height: 1.1;
  letter-spacing: -1.2px;
}

.sub_con .sub4_3 .fast-contact .fast-contact-content .desc {
  font-size: 24px;
  font-weight: 500;
  color: #fff;
  line-height: 1.5;
  letter-spacing: -0.48px;
}

/* 하단: 개인정보 수집 및 동의 영역 */
.sub_con .sub4_3 .privacy-sec {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  margin-top: 40px;
}

.sub_con .sub4_3 .privacy-sec .privacy-box {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  padding: 30px 50px;
  height: 252px;
  overflow-y: auto;
  font-size: 18px;
  line-height: 36px;
  color: #000;
  letter-spacing: 0.07px;
}

.sub_con .sub4_3 .privacy-sec .agree-wrap {
  display: flex;
  align-items: center;
  padding-left: 5px;
}

.sub_con .sub4_3 .privacy-sec .agree-wrap label {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 22.5px;
  font-weight: 700;
  color: #000;
  cursor: pointer;
  user-select: none;
}

.sub_con .sub4_3 .privacy-sec .agree-wrap input[type="checkbox"] {
  width: 24px;
  height: 24px;
  accent-color: #1f448e;
  cursor: pointer;
}

.sub_con .sub4_3 .privacy-sec .agree-wrap .required-star {
  color: #ff3b3b;
  font-weight: 700;
}

/* 하단 제출 버튼 */
.sub_con .sub4_3 .btn-submit-wrap {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 30px;
}

.sub_con .sub4_3 .btn-submit-wrap .submit-btn {
  background: #1f448e;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 15px rgba(31, 68, 142, 0.25);
  border-radius: 100px;
  width: 306px;
  height: 85px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  outline: none;
}

.sub_con .sub4_3 .btn-submit-wrap .submit-btn:hover {
  background: #15326d;
  box-shadow: 0 8px 25px rgba(31, 68, 142, 0.4);
  transform: translateY(-2px);
}

/* 반응형 미디어 쿼리 */
@media screen and (max-width: 1200px) {
  .sub_con .sub4_3 .contact-row {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }
  
  .sub_con .sub4_3 .form-inputs {
    max-width: 100%;
    width: 100%;
  }
  
  .sub_con .sub4_3 .fast-contact {
    max-width: 100%;
    width: 100%;
    height: 500px;
  }
}

@media screen and (max-width: 768px) {
  .sub_con .sub4_3 .form-group {
    padding: 15px 20px;
  }
  
  .sub_con .sub4_3 .form-group .form-label {
    font-size: 20px;
    line-height: 28px;
  }
  
  .sub_con .sub4_3 .form-group .input-wrap input,
  .sub_con .sub4_3 .form-group .textarea-wrap textarea {
    font-size: 16px;
    line-height: 28px;
  }
  
  .sub_con .sub4_3 .fast-contact {
    height: 400px;
  }
  
  .sub_con .sub4_3 .fast-contact .fast-contact-content .phone {
    font-size: 40px;
  }
  
  .sub_con .sub4_3 .fast-contact .fast-contact-content .desc {
    font-size: 18px;
  }
  
  .sub_con .sub4_3 .privacy-sec .privacy-box {
    padding: 20px;
    font-size: 15px;
    line-height: 28px;
    height: 200px;
  }
  
  .sub_con .sub4_3 .privacy-sec .agree-wrap label {
    font-size: 18px;
  }
  
  .sub_con .sub4_3 .btn-submit-wrap .submit-btn {
    width: 100%;
    max-width: 280px;
    height: 70px;
    font-size: 18px;
  }
}

/* --------------------------------------------------
   자주 묻는 질문 (sub4_2) - 피그마 시안 완벽 대응 스타일
-------------------------------------------------- */
.sub_con .sub4_2 {
  width: 100%;
  max-width: 1216px;
  margin: 0 auto;
  padding: 20px 0;
  font-family: 'Pretendard', sans-serif;
  display: flex;
  flex-direction: column;
  gap: 47px;
  align-items: center;
}

.sub_con .sub4_2 .sub4_2-title {
  font-size: 40px;
  font-weight: 800;
  color: #101828;
  line-height: 40px;
  text-align: center;
  letter-spacing: -1.2px;
  margin: 0;
}

.sub_con .sub4_2 .sub4_2-faq-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: stretch;
}

.sub_con .sub4_2 .sub4_2-faq-item {
  background: transparent;
  border: none;
  box-shadow: none;
  overflow: visible;
  display: flex;
  flex-direction: column;
  transition: none;
}

.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question {
  width: 100%;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #ffffff;
  border: 1px solid #f3f4f6;
  border-radius: 14px;
  box-shadow: 0px 4px 6px -1px rgba(0, 0, 0, 0.1), 0px 2px 4px -2px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  outline: none;
  text-align: left;
  gap: 20px;
  transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

.sub_con .sub4_2 .sub4_2-faq-item:hover .sub4_2-faq-question {
  border-color: #e5e7eb;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1), 0px 4px 6px -4px rgba(0, 0, 0, 0.1);
}

.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question .q-prefix {
  font-size: 18px;
  font-weight: 800;
  color: #0b3b87;
  line-height: 24px;
  flex-shrink: 0;
}

.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question .q-text {
  font-size: 18px;
  font-weight: 600;
  color: #101828;
  line-height: 24px;
  letter-spacing: -0.54px;
  flex-grow: 1;
  transition: color 0.2s ease;
}

.sub_con .sub4_2 .sub4_2-faq-item:hover .sub4_2-faq-question .q-text {
  color: #0b3b87;
}

.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question .q-icon {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

/* 화살표 아이콘 커스텀 CSS 그리기 */
.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question .q-icon .arrow-down {
  width: 10px;
  height: 10px;
  border-right: 2px solid #ea580c;
  border-bottom: 2px solid #ea580c;
  transform: rotate(45deg);
  margin-top: -4px;
  transition: border-color 0.2s ease;
}

.sub_con .sub4_2 .sub4_2-faq-item:hover .sub4_2-faq-question .q-icon .arrow-down {
  border-color: #c2410c;
}

/* 답변 영역 스타일 - 독립된 별도 카드 형태 */
.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-answer {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  background: #ffffff;
  border: 0px solid transparent;
  border-radius: 14px;
  box-shadow: none;
  margin-top: 0;
  transition: max-height 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s ease, border-width 0s 0.4s, border-color 0.3s ease, box-shadow 0.3s ease, margin-top 0.3s ease;
}

.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-answer .answer-inner {
  padding: 20px 24px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-answer .a-prefix {
  font-size: 18px;
  font-weight: 800;
  color: #f22626;
  line-height: 27px;
  flex-shrink: 0;
}

.sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-answer .a-text {
  font-size: 18px;
  font-weight: 400;
  color: #4a5565;
  line-height: 27px;
  letter-spacing: -0.4px;
}

/* 활성화 상태 (Accordion Open) */
.sub_con .sub4_2 .sub4_2-faq-item.active .sub4_2-faq-question {
  border-color: #d1d5db;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1), 0px 4px 6px -4px rgba(0, 0, 0, 0.1);
}

.sub_con .sub4_2 .sub4_2-faq-item.active .sub4_2-faq-question .q-icon {
  transform: rotate(180deg);
}

.sub_con .sub4_2 .sub4_2-faq-item.active .sub4_2-faq-question .q-icon .arrow-down {
  border-color: #9a3412;
}

.sub_con .sub4_2 .sub4_2-faq-item.active .sub4_2-faq-answer {
  opacity: 1;
  margin-top: 10px;
  border: 1px solid #f3f4f6;
  box-shadow: 0px 4px 6px -1px rgba(0, 0, 0, 0.1), 0px 2px 4px -2px rgba(0, 0, 0, 0.1);
  transition: max-height 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s ease, border-width 0s, border-color 0.3s ease, box-shadow 0.3s ease, margin-top 0.3s ease;
}

/* 반응형 모바일 뷰 */
@media screen and (max-width: 768px) {
  .sub_con .sub4_2 {
    padding: 30px 15px;
    gap: 30px;
  }
  
  .sub_con .sub4_2 .sub4_2-title {
    font-size: 28px;
    line-height: 28px;
  }
  
  .sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question {
    padding: 16px 20px;
  }
  
  .sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question .q-prefix,
  .sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-question .q-text {
    font-size: 16px;
    line-height: 22px;
  }
  
  .sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-answer .answer-inner {
    padding: 0 20px 20px 20px;
    padding-top: 16px;
  }
  
  .sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-answer .a-prefix,
  .sub_con .sub4_2 .sub4_2-faq-item .sub4_2-faq-answer .a-text {
    font-size: 16px;
    line-height: 24px;
  }
}