/* =========================================================
   국방전직교육원 AI역량프로그램 - main.css
   Figma : 국방전직교육원 AI역량프로그램 / main 7334:299 (PC 1920) / main_hover 7464:704 / main mob 7487:2628 (384)
   16px = 1rem (PC 1920 기준), 1440 이하 html 80%, 1024 이하 모바일 시안
   ========================================================= */

/* 공통 토큰 (Figma variables) */
:root{
	--main-color:#29A3DB;            /* Primary/Normal */
	--main-dark:#1C8EC4;             /* hover */
	--main-tint:#E3F3FB;             /* Background/Tint */
	--main-tint2:#F2F8FC;
	--c-label:#171719;               /* Label/Normal */
	--c-label2:#292A2D;              /* Neutral/20 */
	--c-alt:#5A5C63;                 /* Label/Alternative */
	--c-assist:#878A93;              /* Label/Assistive */
	--c-line:#E1E2E4;                /* Line/Normal */
	--c-line-strong:#AEB0B6;         /* Line/Strong */
	--bg-alt:#F7F7F8;                /* Background/Normal/Alternative */
	--bg-elev:#F4F4F5;               /* Background/Elevated/Alternative */
	--font-main:'Pretendard','Noto Sans KR',sans-serif;
	--font-en:'Prompt','Pretendard',sans-serif;
	--font-pre:'Pretendard','Noto Sans KR',sans-serif;
	--transition-base:all .3s ease;
	--shadow-card:0 1rem 2.5rem 0 rgba(10,26,59,.06);
	--shadow-card-on:0 1.5rem 3rem 0 rgba(10,26,59,.14);
	--shadow-faq-on:0 .5rem 1.5rem 0 rgba(41,163,219,.16);
	--container:105rem;              /* 1920 = 1600 + 160*2 */
	--container-pad:2.5rem;           /* 160 */
	--header-h:5.625rem;             /* 90 */
}

body *{font-family:var(--font-main);}
body{color:var(--c-label); word-break:keep-all;}
img{vertical-align:top;}
button{border:0; background:none; cursor:pointer; padding:0; color:inherit;}
p, dd{word-break:keep-all !important;}
.pc{display:block !important;}
.pc2{display:block !important;}
.mob{display:none !important;}
.mob2{display:none !important;}
.inner{width:100%; max-width:var(--container); padding:0 var(--container-pad); margin:0 auto; box-sizing:border-box;}
.ta-l{text-align:left;}
.ta-c{text-align:center;}
.ta-r{text-align:right;}
.flex{display:flex; align-items:center;}
.flex-jb{display:flex; align-items:center; justify-content:space-between;}
.flex-jc{display:flex; align-items:center; justify-content:center;}
.flex-je{display:flex; align-items:center; justify-content:flex-end;}
.pt_0{padding-top: 0 !important;}
.pb_0{padding-bottom: 0 !important;}
.mt_0{margin-top: 0 !important;}
.mb_0{margin-bottom: 0 !important;}

/* 아이콘 (Figma icon 컴포넌트 export → mask, 색상은 currentColor) */
.ic{display:inline-block; flex:none; background-color:currentColor; -webkit-mask:no-repeat center / contain; mask:no-repeat center / contain;}
.ic_arrow{width:1.375rem; height:1.375rem; -webkit-mask-image:url("/img/main/ic_arrow.svg"); mask-image:url("/img/main/ic_arrow.svg");}
.ic_plus{width:1.125rem; height:1.125rem; -webkit-mask-image:url("/img/main/ic_plus.svg"); mask-image:url("/img/main/ic_plus.svg");}
.ic_caret{width:1.25rem; height:1.25rem; -webkit-mask-image:url("/img/main/ic_caret.svg"); mask-image:url("/img/main/ic_caret.svg");}
.ic_caret_faq{width:1.25rem; height:1.25rem; -webkit-mask-image:url("/img/main/ic_caret_faq.svg"); mask-image:url("/img/main/ic_caret_faq.svg");}
.ic_login{width:1.125rem; height:1.125rem; -webkit-mask-image:url("/img/main/ic_login.svg"); mask-image:url("/img/main/ic_login.svg");}

/* 버튼 (Figma btn 컴포넌트 Pill / size 42, 48, 54) */
.btn{display:inline-flex; align-items:center; justify-content:center; gap:.375rem; height:2.625rem; padding:0 1.125rem; border-radius:62.4375rem; font-size:1rem; font-weight:500; line-height:1.5; color:#fff; box-sizing:border-box; transition:var(--transition-base); white-space:nowrap;}
.btn.fill{background:var(--main-color);}
.btn.fill:hover{background:var(--main-dark);}
.btn.line{border:.09375rem solid #fff;}
.btn.white{background:#fff; color:var(--main-color);}
.btn.lg{height:3.375rem; padding:0 1.5rem; gap:.5rem; font-size:1.25rem; line-height:1.45; letter-spacing:-.00625rem;}
.btn_more{display:inline-flex; align-items:center; gap:.375rem; height:2.625rem; padding:0 1.125rem; border-radius:62.4375rem; border:.09375rem solid #fff; font-size:1rem; font-weight:500; line-height:1.5; color:#fff; box-sizing:border-box; transition:var(--transition-base); white-space:nowrap;}
.btn_more.gray{border-color:var(--c-line-strong); color:var(--c-label);}
.btn_more.gray .ic{color:var(--c-label); transition:var(--transition-base);}
/* 마우스 호버 : 배경 컬러 변경 (Figma main_hover btn_more state=Hover : bg #FFF / text #29A3DB) */
.btn_more:hover, a:hover > .item_body > .btn_more, .card:hover .btn_more{background:#fff; border-color:#fff; color:var(--main-color);}
.card:hover .btn_more .ic, .btn_more.gray:hover .ic{color:var(--main-color);}

/* 섹션 공통 헤드 (sec01_head ~ sec05_head) */
.sec_head .label{display:inline-flex; align-items:center; gap:.75rem; font-size:1rem; font-weight:700; line-height:1.5; color:var(--main-color); font-style:normal;}
.sec_head .label i{display:block; width:.5625rem; height:.5625rem; border:.125rem solid var(--main-color); border-radius:50%; box-sizing:border-box;}
.sec_head .tit{margin-top:.75rem; font-size:2.8125rem; font-weight:700; line-height:1.15; letter-spacing:-.05625rem; color:var(--c-label);}
.sec_head .tit em{font-style:normal; color:var(--main-color);}
.sec_head .desc{margin-top:.75rem; font-size:1.125rem; font-weight:400; line-height:1.5; color:var(--c-alt);}
.sec_head.center{text-align:center;}
.sec_head.center .tit{margin-top:.75rem;}
.sec_head.white .label, .sec_head.white .tit, .sec_head.white .desc{color:#fff;}
.sec_head.white .label i{border-color:#fff;}
.sec_head.white .tit{margin-top:1rem;}
.sec_head.white .desc{margin-top:1rem;}
.ghost{position:absolute; left:50%; transform:translateX(-50%); font-family:var(--font-en); font-size:9.375rem; font-weight:900; line-height:.82; letter-spacing:-.09375rem; color:var(--c-line); opacity:.2; white-space:nowrap; pointer-events:none; user-select:none; z-index: -1;}

/* ===== 게시물 없음 ===== */
.no_data{width:100% !important; border-top:1px solid #000; border-bottom:1px solid #000; height:29.375rem !important; display:flex !important; flex-direction:column; align-items:center; justify-content:center; gap:1.75rem; margin:0 !important; aspect-ratio:initial !important;}
.no_data .icon{width:2.375rem;}
.no_data p{font-size:1.125rem; font-weight:500; letter-spacing:-0.02em; color:#6d6d6d; text-align:center;}


/* =========================================================
   HEADER : Figma gnb 7397:1378 (1920x90) / scroll,hover 7464:1046
   ========================================================= */
.header{position:fixed; top:0; left:0; width:100%; height:var(--header-h); z-index:1000; transition:background .3s ease;}
.header .inner{position:relative; z-index:2; max-width:none; height:100%; padding:0 3.75rem; display:flex; align-items:center; justify-content:space-between;}
.header h1{flex:none;}
.header h1 a{display:block;}
.header h1 img{width:11.25rem; display: block;}
.header h1 img.logo_on{display:none !important;}
.header .gnb_wrap{position:absolute; left:50%; top:0; height:100%; transform:translateX(-50%);}
.header .gnb{display:flex; gap:4.6875rem; height:100%;}
.header .gnb > li{position:relative; display:flex; align-items:center; height:100%;}
.header .gnb > li > a{display:block; font-size:1.125rem; font-weight:700; line-height:1.5; color:#fff; transition:color .3s;}
.header .gnb_2depth{position:absolute; top:calc(100% + 1.75rem); left:0; display:none; white-space:nowrap;}
.header .gnb_2depth li + li{margin-top:.25rem;}
.header .gnb_2depth li a{display:block; font-family:var(--font-pre); font-size:1rem; font-weight:400; line-height:1.5; color:#8E8E8E; transition:var(--transition-base);}
.header .gnb_2depth li a:hover{color:var(--main-color); font-weight:700;}
.header .gnb_2depth_bg{position:absolute; top:100%; left:0; z-index:1; width:100%; height:7.375rem; background:#fff; border-top:1px solid rgba(0,0,0,.2); display:none;} /* height 는 sub.js 에서 2depth 최대 높이 + 상하 여백(1.75rem) 으로 자동 계산 */
.header.measure .gnb_2depth{display:block; visibility:hidden;}
.header .head_rt{display:flex; align-items:center; gap:1.25rem;}
.header .member{display:flex; align-items:center; gap:1rem;}
.header .member .btn.line{color:#fff;}
.header .head_mob_btn{display:none;}

/* 호버 / 스크롤(fixed) / 서브(on) : 배경 백 + 텍스트 블랙 */
.header:hover, .header.fixed, .header.on{background:#fff;}
.header:hover h1 img.logo, .header.fixed h1 img.logo, .header.on h1 img.logo{display:none !important;}
.header:hover h1 img.logo_on, .header.fixed h1 img.logo_on, .header.on h1 img.logo_on{display:block !important;}
.header:hover .gnb > li > a, .header.fixed .gnb > li > a, .header.on .gnb > li > a{color:#000;}
.header:hover .member .btn.line, .header.fixed .member .btn.line, .header.on .member .btn.line{border-color:var(--c-line-strong); color:var(--c-label);}
.header:hover .gnb_2depth, .header:hover .gnb_2depth_bg{display:block;}


/* =========================================================
   MOB 전체메뉴 : Figma menu_all 7523:1814
   ========================================================= */
.head_bg{display:none;}


/* =========================================================
   QUICK : Figma quick btn_top 70x70
   ========================================================= */
.quick{position:fixed; right:1.25rem; bottom:2.5rem; z-index:100;}
.quick .top_btn{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.25rem; width:4.375rem; height:4.375rem; border-radius:.3125rem; background:#444; color:#fff;}
.quick .top_btn i{display:block; width:1.25rem; height:1.25rem; background:url("/img/main/ic_top.svg") no-repeat center / contain;}
.quick .top_btn span{font-family:var(--font-pre); font-size:.75rem; font-weight:700; line-height:1.33;}


/* =========================================================
   VISUAL : Figma visual 7334:335 (1920x950)
   ========================================================= */
.visual{position:relative; height:59.375rem; overflow:hidden;}
.visual .vis_slider{height:100%;}
.visual .swiper-slide{position:relative; height:100%; overflow:hidden;}
.visual .vis_img{position:absolute; inset:0;}
.visual .vis_img img{width:100%; height:100%; object-fit:cover; transform:scale(1.2);}
/* 이미지 줌아웃 모션 (슬라이드 전환) */
.visual .swiper-slide-active .vis_img img{transform:scale(1); transition:transform 10s;}
.visual .swiper-slide .inner{position:relative; height:100%;}
.visual .vis_txt{position:absolute; top:18.90625rem; left:0; right: 0; color:#fff;}
.visual .vis_txt .label{display:block; font-family:var(--font-en); font-size:.875rem; font-weight:700; line-height:1.4; letter-spacing:.1225rem; color:rgba(255,255,255,.85); font-style:normal;}
.visual .vis_txt .tit{margin-top:1.25rem; font-size:3.5625rem; font-weight:700; line-height:1.12; letter-spacing:-.0890625rem;}
.visual .vis_txt .desc{width:40rem; max-width:100%; margin-top:1.25rem; font-size:1.25rem; font-weight:400; line-height:1.45; letter-spacing:-.00625rem; color:rgba(255,255,255,.9);} /* opacity 대신 color 알파 : 등장 모션 opacity 와 충돌 방지 */
.visual .vis_txt .cta{margin-top:2.75rem;}
/* 텍스트 등장 모션 (슬라이드 전환) */
.visual .vis_txt > *{opacity:0; transform:translateY(1.875rem); transition:opacity 1.2s ease, transform 1.2s ease;}
.visual .vis_txt .tit em{font-style:normal; color:#BFE9FF;}
.visual .swiper-slide-active .vis_txt > *{opacity:1; transform:none;}
.visual .swiper-slide-active .vis_txt .tit{transition-delay:.2s;}
.visual .swiper-slide-active .vis_txt .desc{transition-delay:.4s;}
.visual .swiper-slide-active .vis_txt .cta{transition-delay:.6s;}
.visual .vis_nav_wrap{position:absolute; left:0; right:0; top:45.34375rem; z-index:10; pointer-events:none;}
.visual .vis_nav{display:flex; align-items:center; gap:1.3125rem; pointer-events:auto; width:max-content;}
.visual .indicator{display:flex; align-items:center; gap:1rem; color:#fff;}
.visual .indicator span{font-family:var(--font-en); font-size:.875rem; font-weight:700; line-height:1.4; letter-spacing:.1225rem;}
.visual .indicator .bar{display:block; position:relative; width:8.75rem; height:.1875rem; background:rgba(255,255,255,.3); overflow:hidden;}
.visual .indicator .bar i{position:absolute; left:0; top:0; height:100%; width:0; background:#fff; transition:width .4s ease;}
.visual .arrows{display:flex; gap:.5rem;}
.visual .arrows button{display:flex; align-items:center; justify-content:center; width:2.75rem; height:2.75rem; border:1px solid rgba(255,255,255,.6); border-radius:50%; color:#fff; transition:var(--transition-base);}
.visual .arrows .prev .ic{transform:rotate(180deg);}
/* 마우스 호버 : 배경 컬러 변경 (Figma main_hover btn_next fill #29A3DB) */
.visual .arrows button:hover{background:var(--main-color); border-color:var(--main-color);}


/* =========================================================
   섹션 공통 여백 : .sec_pad (PC 120 / mob 60)
   값이 다른 부분만 섹션별 지정, 여백 없는 쪽은 .pt_0 / .pb_0 (PC 전용 .pt_0_pc / .pb_0_pc)
   ========================================================= */
.main .sec_pad{padding:7.5rem 0;}
@media screen and (min-width:1025px){
	.pt_0_pc{padding-top:0 !important;}
	.pb_0_pc{padding-bottom:0 !important;}
}


/* =========================================================
   SEC01 : 이용 안내 Figma 7376:4971 (inner gap 40 / list gap 16)
   ========================================================= */
.main .sec01 .list{display:flex; gap:1rem; margin-top:2.5rem;}
.main .sec01 .card{position:relative; display:flex; flex-direction:column; justify-content:space-between; padding:2rem 1.75rem; border-radius:1.5rem; overflow:hidden; box-sizing:border-box;}
.main .sec01 .img_card{width:37.625%; height:36rem; color:#fff;}
.main .sec01 .list_col{flex:1; display:flex; flex-direction:column; gap:1rem;}
.main .sec01 .list_row{display:flex; gap:1rem;}
.main .sec01 .list_row .card{width:calc(50% - .5rem); height:17.5rem;}
.main .sec01 .list_col > .card{height:17.5rem;}
.main .sec01 .item_img{position:absolute; inset:0; z-index:0;}
.main .sec01 .item_img img{width:100%; height:100%; object-fit:cover; transition:transform .6s ease;}
/* 마우스 호버 : 이미지 줌인 (Figma 코멘트) */
.main .sec01 .img_card:hover .item_img img{transform:scale(1.08);}
.main .sec01 .img_card::after{content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(0,0,0,0) 28%, rgba(0,0,0,.85) 100%); opacity:.6; pointer-events:none;}
.main .sec01 .item_top, .main .sec01 .item_body{position:relative; z-index:2;}
.main .sec01 .tag{display:inline-flex; align-items:center; height:1.625rem; padding:0 .75rem; border-radius:.8125rem; background:rgba(255,255,255,.9); font-size:.75rem; font-weight:700; line-height:1.33; color:var(--c-label); box-sizing:border-box;}
.main .sec01 .item_tit{display:block; font-size:2.25rem; font-weight:700; line-height:1.22; letter-spacing:-.03375rem;}
.main .sec01 .item_desc{margin-top:.5rem; font-size:1.125rem; font-weight:400; line-height:1.5;}
.main .sec01 .img_card .item_desc{opacity:.8;}
.main .sec01 .img_card .btn_more{margin-top:1.5rem;}
.main .sec01 .list_col .btn_more{margin-top:1.25rem;}
.main .sec01 .card.blue{background:var(--main-color); color:#fff;}
.main .sec01 .card.blue .tag{background:transparent; border:1px solid rgba(255,255,255,.6); color:#fff;}
.main .sec01 .card.gray{background:var(--bg-elev); color:var(--c-label);}
.main .sec01 .card.tint{background:var(--main-tint); color:var(--c-label);}
.main .sec01 .card.gray .tag, .main .sec01 .card.tint .tag{background:#fff;}
.main .sec01 .card.gray .item_desc, .main .sec01 .card.tint .item_desc{color:var(--c-alt);}
.main .sec01 .card.gray .btn_more, .main .sec01 .card.tint .btn_more{border-color:var(--c-line-strong); color:var(--c-label);}
.main .sec01 .card.gray:hover .btn_more, .main .sec01 .card.tint:hover .btn_more{border-color:#fff; color:var(--main-color);}
.main .sec01 .item_ic{position:absolute; right:2.5rem; width:10rem; z-index:1; pointer-events:none;}
.main .sec01 .card.blue .item_ic{top:3.796875rem;}
.main .sec01 .card.gray .item_ic{top:4.55rem;}
.main .sec01 .item_shape{position:absolute; right:1.625rem; top:1.75rem; width:14.375rem; z-index:1; pointer-events:none;}


/* =========================================================
   SEC02 : 검사 결과를 넘어 Figma 7376:5039 (1920x950, bg F7F7F8)
   스크롤 : 순차적으로 컨텐츠 변경 (worxphere .section-second 참고) - 스텝별 이미지 큐브 회전 + 텍스트 활성화
   ========================================================= */
.main .sec02{position:relative; background:var(--bg-alt);}
.main .sec02 .pin{position:relative; min-height:100vh; display:flex; align-items:center; box-sizing:border-box; overflow:hidden;} /* PC : ScrollTrigger pin */
.main .sec02 .inner{position:relative;}
.main .sec02 .ghost{top:10.3125rem;}
.main .sec02 .flex_head{display:flex; align-items:flex-end; justify-content:space-between;}
.main .sec02 .flex_head .txt{flex:1; min-width:0;}
.main .sec02 .mob_more{display:none;}
.main .sec02 .grid{position:relative; display:flex; align-items:center; justify-content:space-between; gap:5rem; height:30.125rem; margin-top:8.125rem;}
.main .sec02 .list{width:31.875rem; flex:none; position: relative; z-index: 5;}
.main .sec02 .list li{display:flex; align-items:center; gap:.75rem; padding:1.75rem 0; border-top:1px solid var(--c-line); cursor:pointer;}
.main .sec02 .list li:last-child{border-bottom:1px solid var(--c-line);}
.main .sec02 .list .num{width:1.25rem; font-size:.875rem; font-weight:700; line-height:1.43; color:var(--main-color); transition:color .3s;}
.main .sec02 .list .item_tit{flex:none; white-space:nowrap; font-size:1.75rem; font-weight:700; line-height:1.29; letter-spacing:-.0175rem; color:var(--c-label); transition:color .3s;}
.main .sec02 .list .item_desc{font-size:1rem; font-weight:400; line-height:1.5; color:var(--c-alt);}
/* 마우스 스크롤 : 텍스트 컬러 변경 (Figma main_hover list_item state=hover) */
.main .sec02 .list li.on .num{color:var(--main-dark);}
.main .sec02 .list li.on .item_tit{color:var(--main-color);}
.main .sec02 .bigcopy{position:relative; flex:1; text-align:right;}
.main .sec02 .copy{position:absolute; right:0; top:50%; transform:translateY(-50%) translateX(1.5rem); width:100%; font-size:2.8125rem; font-weight:700; line-height:1.15; letter-spacing:-.05625rem; color:var(--c-label); opacity:0; visibility:hidden; transition:opacity .5s ease, transform .5s ease, visibility .5s; z-index: 5;}
.main .sec02 .copy.on{opacity:1; visibility:visible; transform:translateY(-50%) translateX(0);}
.main .sec02 .copy em{font-style:normal; color:var(--main-color);}
.main .sec02 .copy .br_mob{display:none;} /* 1024 이하 전용 줄바꿈 */
.main .sec02 .cube_wrap{position:absolute; left:50%; top:-3.5rem; width:32.5rem; height:32.5rem; margin-left:-16.25rem; perspective:112.5rem; z-index:2; border-radius:50%; overflow:hidden; isolation:isolate; -webkit-mask-image:-webkit-radial-gradient(#fff, #000);}
.main .sec02 .cube{position:relative; width:100%; height:100%; transform-style:preserve-3d; transition:transform .9s cubic-bezier(.65,.05,.36,1); transform:translateZ(-16.25rem) rotateY(0deg);}
.main .sec02 .face{position:absolute; inset:0; overflow:hidden; backface-visibility:hidden; -webkit-backface-visibility:hidden; opacity:0; transition:opacity 1.2s ease-in-out;}
/* 앞/뒤 이미지 전환 시 페이드 (PC 는 gsap 스크럽으로 진행도 기반 제어) */
.main .sec02[data-step="0"] .face[data-step="0"], .main .sec02[data-step="1"] .face[data-step="1"], .main .sec02[data-step="2"] .face[data-step="2"], .main .sec02[data-step="3"] .face[data-step="3"]{opacity:1;}
.main .sec02.is_st .face{transition:none;}
.main .sec02 .face img{width:100%; height:100%; object-fit:cover;}
.main .sec02 .face[data-step="0"]{transform:rotateY(0deg) translateZ(16.25rem);}
.main .sec02 .face[data-step="1"]{transform:rotateY(90deg) translateZ(16.25rem);}
.main .sec02 .face[data-step="2"]{transform:rotateY(180deg) translateZ(16.25rem);}
.main .sec02 .face[data-step="3"]{transform:rotateY(270deg) translateZ(16.25rem);}
.main .sec02[data-step="1"] .cube{transform:translateZ(-16.25rem) rotateY(-90deg);}
.main .sec02[data-step="2"] .cube{transform:translateZ(-16.25rem) rotateY(-180deg);}
.main .sec02[data-step="3"] .cube{transform:translateZ(-16.25rem) rotateY(-270deg);}
.main .sec02.is_st .cube{transition:none;} /* ScrollTrigger scrub 회전 (gsap 제어) */


/* =========================================================
   SEC03 : 실전 중심의 취업특강 Figma 7337:352 (1920x1168)
   페이지 진입 : 순차적으로 올라오는 모션 (pointmobile 참고)
   ========================================================= */
.main .sec03{position:relative; overflow:hidden;}
.main .sec03 .inner{position:relative;}
.main .sec03 .ghost{top:10.9375rem;}
.main .sec03 .body{position:relative; margin-top:8.125rem;}
.main .sec03 .lec_slider{overflow:visible;}
.main .sec03 .swiper-slide{height:auto;}
.main .sec03 .card{display:flex; flex-direction:column; height:100%; background:#fff; border-radius:1.875rem; box-shadow:var(--shadow-card); overflow:hidden; transition:background .3s ease, box-shadow .3s ease, transform .8s ease var(--delay, 0s), opacity .8s ease var(--delay, 0s);}
.main .sec03 .thumb{aspect-ratio:520/293; overflow:hidden;}
.main .sec03 .thumb img{width:100%; height:100%; object-fit:cover;}
.main .sec03 .item_body{padding:2rem 1.75rem;}
.main .sec03 .tag{display:inline-block; padding:.25rem .75rem; border-radius:.875rem; background:var(--main-color); font-size:.75rem; font-weight:700; line-height:1.33; color:#fff; transition:var(--transition-base);}
.main .sec03 .item_tit{display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; height:4rem; margin-top:.75rem; font-size:1.5rem; font-weight:700; line-height:1.33; letter-spacing:-.015rem; color:var(--c-label2); transition:color .3s;}
.main .sec03 .date{display:block; margin-top:.75rem; font-size:1rem; font-weight:400; line-height:1.5; color:var(--c-assist); transition:color .3s;}
/* 마우스 호버 : 배경 및 텍스트 컬러 변경 (Figma main_hover card_item state=hover) */
.main .sec03 .card:hover{background:var(--main-color); box-shadow:var(--shadow-card-on);}
.main .sec03 .card:hover .tag{background:#fff; color:var(--main-color);}
.main .sec03 .card:hover .item_tit, .main .sec03 .card:hover .date{color:#fff;}
.main .sec03 .reveal{opacity:0; transform:translateY(3.75rem);}
.main .sec03 .reveal.on{opacity:1; transform:none;}
.main .sec03 .nav{display:flex; align-items:center; justify-content:center; gap:2rem; margin-top:2.5rem;}
.main .sec03 .indicator{display:flex; align-items:center; gap:.375rem;}
.main .sec03 .indicator .cur{font-size:1.125rem; font-weight:700; line-height:1; color:var(--c-label);}
.main .sec03 .indicator .sep{font-family:var(--font-en); font-size:1rem; font-weight:500; line-height:1.5; letter-spacing:.04rem; color:var(--c-assist);}
.main .sec03 .indicator .total{font-size:1rem; font-weight:700; line-height:1.5; color:var(--c-assist);}
.main .sec03 .bar{position:relative; width:37.5rem; height:.25rem; border-radius:.125rem; background:var(--c-line); overflow:hidden;}
.main .sec03 .bar i{position:absolute; left:0; top:0; height:100%; width:0; border-radius:.125rem; background:var(--main-color); transition:width .4s ease, left .4s ease;}
.main .sec03 .arrows{display:flex; gap:.5rem;}
.main .sec03 .arrows button{display:flex; align-items:center; justify-content:center; width:2.75rem; height:2.75rem; border:1px solid var(--c-line-strong); border-radius:50%; color:var(--c-label); transition:var(--transition-base);}
.main .sec03 .arrows .prev .ic{transform:rotate(180deg);}
/* 마우스 호버 : 배경 및 아이콘 컬러 변경 (Figma main_hover btn_next fill #29A3DB) */
.main .sec03 .arrows button:hover{background:var(--main-color); border-color:var(--main-color); color:#fff;}
.main .sec03 .arrows button.swiper-button-disabled{opacity:.35; pointer-events:none;}
.main .sec03 .cta{display:flex; justify-content:center; margin-top:2.5rem;}
.main .sec03 .cta .btn{font-size:1.375rem; letter-spacing:-.006875rem;}


/* ========================================================= SEC04 : 홍보영상 Figma 7397:1317 (1920x1305, bg #29A3DB)
   스크롤 : 영상이 커지면서 풀로 차는 모션 (mycreatz 참고) --p 0~1
   레이아웃 크기는 최종(100vw x 16:9)으로 고정하고 clip-path/transform 으로만 모션 → 스크롤 중 문서 높이 변화 없음(떨림 방지)
   --gap-x/--gap-y : 최종 크기와 시작 크기(1300x700) 차이의 절반
   ========================================================= */
.main .sec04{position:relative; --p:0; --gap-x:max(0px, (100vw - 81.25rem) / 2); --gap-y:max(0px, (100vw - 81.25rem) * 9 / 16 / 2); /* 시작 박스 1300 x 16:9 → 최종 100vw x 16:9 (영상 1920x1080 비율 유지) */ background:var(--main-color); overflow:hidden;}
.main .sec04 .deco{position:absolute; left:-3.5rem; top:-5.934rem; width:126.9375rem; max-width:none; pointer-events:none;}
.main .sec04 .inner{position:relative;}
.main .sec04 .video{position:relative; left:50%; width:100vw; height:calc(100vw * 9 / 16); margin-top:6.25rem; transform:translate(-50%, calc(var(--gap-y) * (var(--p) - 1)));}
.main .sec04 .video::before{content:''; position:absolute; left:var(--gap-x); right:var(--gap-x); top:var(--gap-y); bottom:var(--gap-y); border-radius:1.25rem; box-shadow:0 2.5rem 5rem 0 rgba(0,0,0,.2); opacity:calc(1 - var(--p)); pointer-events:none;}
.main .sec04 .video .frame{position:absolute; inset:0; overflow:hidden; background:#000; clip-path:inset(calc(var(--gap-y) * (1 - var(--p))) calc(var(--gap-x) * (1 - var(--p))) round calc(1.25rem * (1 - var(--p)))); will-change:clip-path;}
.main .sec04 .video iframe{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:100%; height:100%; border:0; pointer-events:none; opacity:0; transition:opacity .6s ease; -webkit-mask-image: -webkit-radial-gradient(white, black); -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden;}
.main .sec04 .video.playing iframe{opacity:1;}


/* =========================================================
   SEC05 : 자주 묻는 질문 Figma 7337:2644 (1920x1067)
   스크롤 : 왼쪽 고정, 오른쪽 스크롤 (sticky)
   ========================================================= */
.main .sec05{position:relative;}
.main .sec05 .inner{position:relative;}
.main .sec05 .ghost{top:11.5625rem;}
.main .sec05 .body{display:flex; align-items:flex-start; gap:3rem; margin-top:8.25rem;}
.main .sec05 .cta_box{position:sticky; top:7.5rem; flex:none; width:25rem; padding:2.5rem 2.25rem; border-radius:.875rem; background:var(--main-color); color:#fff; box-shadow:var(--shadow-card); box-sizing:border-box;}
.main .sec05 .cta_tit{display:block; font-size:1.75rem; font-weight:700; line-height:1.29; letter-spacing:-.0175rem;}
.main .sec05 .cta_desc{margin-top:.75rem; font-size:1.125rem; font-weight:400; line-height:1.5;}
.main .sec05 .cta_box .btn{width:100%; height:3rem; margin-top:1.75rem; padding:0 1.25rem; gap:.5rem; font-size:1.25rem; line-height:1.45; letter-spacing:-.00625rem;}
.main .sec05 .cta_box .btn .ic{width:1.25rem; height:1.25rem;}
.main .sec05 .faq_list{flex:1; min-width:0;}
.main .sec05 .faq_list li{background:#fff; border:1px solid var(--c-line); border-radius:.875rem; box-shadow:var(--shadow-card); transition:border-color .3s ease, box-shadow .3s ease;}
.main .sec05 .faq_list li + li{margin-top:1.25rem;}
.main .sec05 .faq_list .q{display:flex; align-items:center; width:100%; padding:2rem; text-align:left; box-sizing:border-box;}
.main .sec05 .faq_list .tag{display:inline-block; flex:none; padding:.25rem .75rem; border-radius:.875rem; background:var(--main-color); font-size:1rem; font-weight:700; line-height:1.5; color:#fff;}
.main .sec05 .faq_list .item_tit{flex:1; margin:0 .75rem; font-size:1.375rem; font-weight:700; line-height:1.45; letter-spacing:-.006875rem; color:var(--c-label); transition:color .3s;}
.main .sec05 .faq_list .arrow{color:var(--c-label); transition:transform .3s ease, color .3s ease;}
/* 아코디언 : 텍스트는 고정, .a 높이만 0fr → 1fr 로 늘려 위에서부터 스르르 드러남 (참고 saengsaeng FAQ)
   .q 하단 여백(2rem) 중 1.25rem 을 음수 마진으로 .a 와 겹치고 li 하단 여백으로 보전 → 질문-답변 간격 .75rem, 닫힘 높이 동일 */
.main .sec05 .faq_list li{padding-bottom:1.25rem;}
.main .sec05 .faq_list .q{margin-bottom:-1.25rem;}
.main .sec05 .faq_list .a{display:grid; grid-template-rows:0fr; overflow:hidden; transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1);}
.main .sec05 .faq_list .a_in{min-height:0; overflow:hidden;}
.main .sec05 .faq_list .a p{padding:0 2rem .75rem; font-size:1rem; font-weight:400; line-height:1.5; color:var(--c-alt);}
.main .sec05 .faq_list li.on .a{grid-template-rows:1fr;}
/* 열림 상태 (Figma main_hover faq_item state=hover) */
.main .sec05 .faq_list li.on{border-color:var(--main-color); box-shadow:var(--shadow-faq-on);}
.main .sec05 .faq_list li.on .item_tit{color:var(--main-dark);}
.main .sec05 .faq_list li.on .arrow{transform:rotate(180deg); color:var(--main-color);}


/* =========================================================
   FOOTER : Figma footer 7460:4358 (1920x315, bg #000)
   ========================================================= */
.footer{background:#000; padding:3.5rem 0; color:#fff;}
.footer *{color:#fff;}
.footer .ft_top{display:flex; align-items:flex-end; justify-content:space-between;}
.footer .ft_logo{width:12.5rem;}
.footer .ft_logo img{width:100%;}
.footer .ft_policy{display:flex; gap:1.5rem;}
.footer .ft_policy a{font-size:.875rem; font-weight:400; line-height:1.43; opacity:.8;}
.footer .ft_policy a b{font-weight:700; opacity:1;}
.footer .ft_policy a:first-child{opacity:1;}
.footer .ft_bt{display:flex; align-items:flex-start; justify-content:space-between; margin-top:2.5rem;}
.footer .ft_menu{display:flex; flex-wrap:wrap; gap:1.5rem;}
.footer .ft_menu a{font-size:.875rem; font-weight:700; line-height:1.43;}
.footer .ft_info{margin-top:1.25rem; font-size:.875rem; font-weight:400; line-height:1.43; opacity:.7;}
.footer .ft_copy{margin-top:1.25rem; font-size:.875rem; font-weight:400; line-height:1.43; opacity:.7;}
.footer .ft_right{text-align:right;}
.footer .ft_label{display:block; font-size:1.125rem; font-weight:700; line-height:1.5;}
.footer .ft_tel{margin-top:.75rem; font-family:var(--font-en); font-size:1.75rem; font-weight:700; line-height:1.1; letter-spacing:-.0175rem;}
.footer .ft_tel i{font-family:var(--font-en); font-style:normal; font-weight:200;}
.footer .ft_time{margin-top:.75rem; font-size:.875rem; font-weight:400; line-height:1.43; opacity:.7;}


/* =========================================================
   RESPONSIVE
   ========================================================= */
@media screen and (max-width:1440px){
	html{font-size:80%;}
}

/* 1025~1280 : sec02 큐브와 리스트/카피 겹침 방지
   리스트 | 큐브 | 카피 3열 grid (양쪽 1fr 동일 → 큐브 항상 정가운데) / 큐브·카피는 화면 폭 비례 (--cube) */
@media screen and (min-width:1025px) and (max-width:1280px){
	.main .sec02{--cube:28vw;}
	.main .sec02 .grid{display:grid; grid-template-columns:minmax(0,1fr) var(--cube) minmax(0,1fr); column-gap:2.5rem;}
	.main .sec02 .list{width:auto;}
	/* 리스트 : 숫자 | 제목 / 설명(제목 아래) */
	.main .sec02 .list li{display:grid; grid-template-columns:1.25rem minmax(0,1fr); column-gap:.75rem; row-gap:.375rem; align-items:center;}
	.main .sec02 .list .num{grid-column:1; grid-row:1;}
	.main .sec02 .list .item_tit{grid-column:2; grid-row:1;}
	.main .sec02 .list .item_desc{grid-column:2; grid-row:2;}
	.main .sec02 .cube_wrap{position:relative; left:auto; top:auto; width:var(--cube); height:var(--cube); margin-left:0;}
	.main .sec02 .cube{transform:translateZ(calc(var(--cube) / -2)) rotateY(0deg);}
	.main .sec02 .face[data-step="0"]{transform:rotateY(0deg) translateZ(calc(var(--cube) / 2));}
	.main .sec02 .face[data-step="1"]{transform:rotateY(90deg) translateZ(calc(var(--cube) / 2));}
	.main .sec02 .face[data-step="2"]{transform:rotateY(180deg) translateZ(calc(var(--cube) / 2));}
	.main .sec02 .face[data-step="3"]{transform:rotateY(270deg) translateZ(calc(var(--cube) / 2));}
	.main .sec02[data-step="1"] .cube{transform:translateZ(calc(var(--cube) / -2)) rotateY(-90deg);}
	.main .sec02[data-step="2"] .cube{transform:translateZ(calc(var(--cube) / -2)) rotateY(-180deg);}
	.main .sec02[data-step="3"] .cube{transform:translateZ(calc(var(--cube) / -2)) rotateY(-270deg);}
	.main .sec02 .bigcopy{align-self:stretch;}
	.main .sec02 .copy{font-size:2rem;}
	.ghost{font-size: 6.5rem;}
	.main .sec02 .ghost { top: 13.3125rem; }
	.main .sec03 .ghost { top: 11.9375rem; }
	.main .sec05 .body{margin-top: 7.25rem;}
}

/* 세로 짧은 화면에서 sec02 pin 컨텐츠 오버플로 방지 */
@media screen and (min-width:1025px) and (max-height:1000px){
	.main .sec02 .pin{padding:4rem 0;}
	.main .sec02 .grid{margin-top:5rem;}
}

/* =========================================================
   MOBILE (1024px 이하) : Figma main mob 7487:2628 (384 기준)
   ========================================================= */
@media screen and (max-width:1024px){
	html{font-size:100%;}
	:root{--container:100%; --container-pad:1.25rem; --header-h:3.75rem;}

	/* 공통 */
	.inner{max-width:100%;}
	.pc{display:none !important;}
	.mob{display:block !important;}
	.btn{height:2.625rem; padding:0 1.125rem; gap:.375rem; font-size:1rem;}
	.btn.lg{height:2.625rem; padding:0 1.125rem; gap:.375rem; font-size:1rem; line-height:1.5; letter-spacing:0;}
	.btn.lg .ic_arrow{width:1.125rem; height:1.125rem;}
	.btn_more{height:2rem; padding:0 .75rem; gap:.25rem; border-width:1px; font-size:.875rem; line-height:1.43;}
	.btn_more .ic_plus{width:.875rem; height:.875rem;}
	.sec_head .label{gap:.5rem; font-size:.75rem; line-height:1.33;}
	.sec_head .label i{width:.4375rem; height:.4375rem;}
	.sec_head .tit{margin-top:.75rem; font-size:1.5rem; line-height:1.33; letter-spacing:-.015rem;}
	.sec_head .desc{margin-top:.75rem; font-size:.875rem; line-height:1.43;}
	.sec_head.white .tit, .sec_head.white .desc{margin-top:.75rem;}
	.sec_head.white .desc{opacity:.8;}
	.ghost{font-size:4rem; letter-spacing:-.04rem;}

	/* ===== 게시물 없음 ===== */
	.no_data{height:14.375rem !important; gap:1rem;}
	.no_data .icon{width:1.5rem;}
	.no_data p{font-size:.875rem;}

	/* HEADER : mob gnb 384x60 */
	.header .inner{padding:0 1.25rem;}
	.header h1 img{width:8.75rem;}
	.header .gnb_wrap, .header .gnb_2depth_bg, .header .member{display:none !important;}
	.header .head_mob_btn{display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; width:1.5rem; height:1rem;}
	.header .head_mob_btn span{display:block; width:100%; height:.125rem; background:#fff; transition:background .3s;}
	.header .head_mob_btn span:nth-child(2){width:1.125rem;}
	.header:hover{background:transparent;}
	/* 모바일은 호버 시 배경이 투명하므로 기본 로고 유지 (fixed/on 일 때만 로고 교체) */
	.header:not(.fixed):not(.on):hover h1 img.logo{display:block !important;}
	.header:not(.fixed):not(.on):hover h1 img.logo_on{display:none !important;}
	.header.fixed .head_mob_btn span, .header.on .head_mob_btn span{background:var(--c-label);}

	/* MOB 전체메뉴 : menu_all 384x860 */
	.head_bg{position:fixed; inset:0; z-index:10000; background:#fff; overflow-y:auto;}
	.head_bg.on{display:block;}
	.head_bg .head_bg_inner{padding-top:1.25rem;}
	.head_bg .head_tp{display:flex; align-items:center; justify-content:space-between; height:3.75rem; padding:0 1.25rem;}
	.head_bg .head_bg_logo img{width:8.75rem;}
	.head_bg .head_bg_close{width:1.5rem; height:1.5rem;}
	.head_bg .head_bg_close img{width:100%;}
	.head_bg .accordion{border-top:1px solid var(--c-line);}
	.head_bg .accordion > li{border-bottom:1px solid var(--c-line);}
	.head_bg .accordion .link{position:relative; display:block; padding:1rem 1.25rem; font-size:1.125rem; font-weight:700; line-height:1.5; color:var(--c-label); cursor:pointer; transition:color .3s;}
	.head_bg .accordion .has_sub .link::after{content:""; position:absolute; right:1.25rem; top:50%; width:1.5rem; height:1.5rem; margin-top:-.75rem; background:url("/img/main/ic_caret_menu.svg") no-repeat center / contain; transform:rotate(180deg); transition:all .3s; filter: brightness(0);}
	.head_bg .accordion .has_sub.on .link{color:var(--main-color);}
	.head_bg .accordion .has_sub.on .link::after{transform:rotate(0deg); filter: none;}
	.head_bg .submenu{display:none; padding:.75rem 1.25rem; background:var(--main-tint2);}
	.head_bg .submenu a{display:block; padding:.625rem 0; font-size:1rem; font-weight:500; line-height:1.5; color:var(--c-alt);}
	.head_bg .member{display:flex; gap:.75rem; padding:1.5rem 1.25rem;}
	.head_bg .member .btn.line{border-color:var(--c-line-strong); color:var(--c-label);}

	/* QUICK */
	.quick{right:1.25rem; bottom:1.25rem;}
	.quick .top_btn{width:2.75rem; height:2.75rem; gap:.125rem;}
	.quick .top_btn i{width:.875rem; height:.875rem;}
	.quick .top_btn span{font-size:.5625rem;}

	/* VISUAL : mob 384x548 (pad 200/20/100/20) */
	.visual{height:34.25rem;}
	.visual .vis_txt{top:12.5rem;}
	.visual .vis_txt .label{font-family:var(--font-main); font-size:.75rem; line-height:1.33; letter-spacing:0;}
	.visual .vis_txt .tit{margin-top:.625rem; font-size:1.75rem; line-height:1.29; letter-spacing:-.0175rem;}
	.visual .vis_txt .desc{width:auto; margin-top:.625rem; font-size:.875rem; line-height:1.43; letter-spacing:0;}
	.visual .vis_txt .cta{margin-top:1.25rem;}
	.visual .vis_nav_wrap{top:auto; bottom:1.375rem;}
	.visual .vis_nav{gap:1rem;}
	.visual .indicator{gap:.625rem;}
	.visual .indicator span{font-family:var(--font-main); font-size:.75rem; line-height:1.33; letter-spacing:0;}
	.visual .indicator .bar{width:5rem; height:.125rem;}
	.visual .arrows{gap:.375rem;}
	.visual .arrows button{width:2rem; height:2rem;}
	.visual .arrows .ic{width:1rem; height:1rem;}

	/* 섹션 공통 여백 : mob 60 */
	.main .sec_pad{padding:3.75rem 0;}

	/* SEC01 : mob (pad 60 / inner gap 24 / list gap 12) */
	/* 사이즈만 변경, 세로 쌓임 레이아웃은 768 이하 */
	.main .sec01 .list{gap:.75rem; margin-top:1.5rem;}
	.main .sec01 .card{padding:1.25rem; border-radius:1rem;}
	.main .sec01 .img_card{height:auto;} /* 오른쪽 카드 2단(12.5rem x 2 + gap) 높이 */
	.main .sec01 .img_card::after{background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.1) 40%, rgba(0,0,0,.85) 100%); opacity:.7;}
	.main .sec01 .list_col{gap:.75rem;}
	.main .sec01 .list_row{gap:.75rem; flex-direction: column;}
	.main .sec01 .list_row .card{width:100%;}
	.main .sec01 .list_row .card, .main .sec01 .list_col > .card{height:12.5rem;}
	.main .sec01 .tag{height:auto; padding:.1875rem .625rem; border-radius:.75rem;}
	.main .sec01 .item_tit{font-size:1.375rem; line-height:1.45; letter-spacing:-.006875rem;}
	.main .sec01 .item_desc{margin-top:.25rem; font-size:.875rem; line-height:1.43;}
	.main .sec01 .img_card .item_desc, .main .sec01 .card.blue .item_desc{opacity:.85;}
	.main .sec01 .img_card .btn_more, .main .sec01 .list_col .btn_more{margin-top:1.25rem;}
	.main .sec01 .item_ic{right:1.25rem; width:6.875rem;}
	.main .sec01 .card.blue .item_ic{top:2.875rem;}
	.main .sec01 .card.gray .item_ic{top:3.375rem;}
	.main .sec01 .item_shape{right:.75rem; top:1.375rem; width:7.1875rem;}

	/* SEC02 : mob 384x843 (탭 + 스와이프) */
	.main .sec02 .pin{position:static; min-height:0; display:block;}
	.main .sec02 .ghost{display:none;}
	.main .sec02 .flex_head{display:block;}
	.main .sec02 .flex_head .txt{max-width:none;}
	.main .sec02 .pc_more{display:none;}
	.main .sec02 .mob_more{display:inline-flex; height:2.25rem; padding:0 .875rem; gap:.375rem; margin:1.5rem auto 0; position:relative; left:50%; transform:translateX(-50%);}
	.main .sec02 .mob_more .ic_plus{width:.75rem; height:.75rem;}
	.main .sec02 .grid{display:block; height:auto; margin-top:1.5rem;}
	/* 리스트 → 탭 (Figma tab 7524:1857) */
	.main .sec02 .list{display:flex; width:100%;}
	.main .sec02 .list li{flex:1; justify-content:center; padding:.75rem 0; border-top:0; border-bottom:1px solid var(--c-line); transition:border-color .3s;}
	.main .sec02 .list li:last-child{border-bottom:1px solid var(--c-line);}
	.main .sec02 .list .num, .main .sec02 .list .item_desc{display:none;}
	.main .sec02 .list .item_tit{font-size:1rem; line-height:1.5; letter-spacing:0; color:var(--c-alt);}
	.main .sec02 .list li.on{border-bottom:.125rem solid var(--main-color); margin-bottom:-1px;}
	.main .sec02 .list li.on .item_tit{color:var(--main-color);}
	.main .sec02 .cube_wrap{position:relative; left:0; top:0; width:18.75rem; height:18.75rem; margin:1.5rem auto 0; perspective:62.5rem; touch-action:pan-y; user-select:none; -webkit-user-select:none; cursor:grab;}
	.main .sec02 .face[data-step="0"]{transform:rotateY(0deg) translateZ(9.375rem);}
	.main .sec02 .face[data-step="1"]{transform:rotateY(90deg) translateZ(9.375rem);}
	.main .sec02 .face[data-step="2"]{transform:rotateY(180deg) translateZ(9.375rem);}
	.main .sec02 .face[data-step="3"]{transform:rotateY(270deg) translateZ(9.375rem);}
	.main .sec02 .cube{transform:translateZ(-9.375rem) rotateY(0deg);}
	.main .sec02[data-step="1"] .cube{transform:translateZ(-9.375rem) rotateY(-90deg);}
	.main .sec02[data-step="2"] .cube{transform:translateZ(-9.375rem) rotateY(-180deg);}
	.main .sec02[data-step="3"] .cube{transform:translateZ(-9.375rem) rotateY(-270deg);}
	.main .sec02 .bigcopy{display:grid; margin-top:1.5rem; text-align:center; touch-action:pan-y; user-select:none; -webkit-user-select:none; cursor:grab;}
	.main .sec02 .copy{position:static; grid-area:1/1; transform:none; transition:opacity .5s ease, visibility .5s; width:100%; font-size:1.375rem; line-height:1.45; letter-spacing:-.006875rem;}
	.main .sec02 .copy.on{transform:none;}
	.main .sec02 .copy .br_pc{display:none;}
	.main .sec02 .copy .br_mob{display:inline;}

	/* SEC03 : mob (pad 60 / body gap 28 / card 280) */
	.main .sec03 .ghost{display:none;}
	.main .sec03 .body{margin-top:1.5rem;}
	.main .sec03 .swiper-slide{width:17.5rem;}
	.main .sec03 .card{border-radius:1.25rem;}
	.main .sec03 .thumb{aspect-ratio:280/169;}
	.main .sec03 .item_body{padding:1.09rem;}
	.main .sec03 .tag{padding:.1635rem .545rem; border-radius:.654rem;}
	.main .sec03 .item_tit{height:auto; max-height:6rem; -webkit-line-clamp:4; margin-top:.436rem; font-size:1rem; line-height:1.5; letter-spacing:0; color:var(--c-label);}
	.main .sec03 .date{margin-top:.436rem; font-size:.8125rem; line-height:1.43;}
	.main .sec03 .nav{gap:1rem; margin-top:1.75rem;}
	.main .sec03 .indicator{gap:.25rem;}
	.main .sec03 .indicator .cur, .main .sec03 .indicator .total{font-size:.875rem; line-height:1.43;}
	.main .sec03 .indicator .sep{font-family:var(--font-main); font-size:.875rem; font-weight:400; line-height:1.43; letter-spacing:0;}
	.main .sec03 .bar{width:8.75rem; height:.1875rem;}
	.main .sec03 .arrows{gap:.3636rem;}
	.main .sec03 .arrows button{width:2rem; height:2rem;}
	.main .sec03 .arrows .ic{width:.909rem; height:.909rem;}
	.main .sec03 .cta{margin-top:1.75rem;}
	.main .sec03 .cta .btn{font-size:1rem; letter-spacing:0;}

	/* SEC04 : mob 384x431 */
	.main .sec04 .deco{left:-.365rem; top:-.2856rem; width:24.743rem;}
	.main .sec04 .video{left:0; transform:none; width:100%; height:auto; aspect-ratio:16/9; margin-top:1.5rem; border-radius:1.25rem; overflow:hidden;}
	.main .sec04 .video::before{display:none;}
	.main .sec04 .video .frame{clip-path:none; will-change:auto;}

	/* SEC05 : mob 384x969 (inner gap 40 / body gap 16 / list gap 10) */
	.main .sec05 .ghost{left:1.25rem; transform:none; top:6.5625rem;}
	/* 사이즈만 변경, 세로 쌓임 레이아웃은 768 이하 */
	.main .sec05 .body{gap:1rem; margin-top:2.5rem;}
	.main .sec05 .cta_box{top:5rem; width:18rem; padding:1.5rem 1.25rem; border-radius:1rem; box-shadow:none;}
	.main .sec05 .cta_tit{font-size:1.125rem; line-height:1.5; letter-spacing:0;}
	.main .sec05 .cta_desc{margin-top:.25rem; font-size:.875rem; line-height:1.43; opacity:.85;}
	.main .sec05 .cta_box .btn{height:2.625rem; margin-top:.5rem; padding:0 1.125rem; gap:.375rem; font-size:1rem; line-height:1.5; letter-spacing:0;}
	.main .sec05 .cta_box .btn .ic{width:1.125rem; height:1.125rem;}
	.main .sec05 .faq_list li{border-radius:.75rem; box-shadow:none;}
	.main .sec05 .faq_list li + li{margin-top:.625rem;}
	.main .sec05 .faq_list .q{flex-wrap:wrap; align-items:flex-start; padding:1.125rem;}
	.main .sec05 .faq_list .tag{order:1; padding:.125rem .5rem; border-radius:.625rem; font-size:.75rem; line-height:1.33;}
	.main .sec05 .faq_list .arrow{order:2; width:1rem; height:1rem; margin:.125rem 0 0 auto;}
	.main .sec05 .faq_list .item_tit{order:3; flex:none; width:100%; margin:.375rem 0 0; font-size:1rem; line-height:1.5; letter-spacing:0;}
	.main .sec05 .faq_list li{padding-bottom:.5rem;}
	.main .sec05 .faq_list .q{margin-bottom:-.5rem;}
	.main .sec05 .faq_list .a p{padding:0 1.125rem .625rem; font-size:.875rem; line-height:1.43;}

	/* FOOTER : mob 384x492 (pad 52/20 gap 28) */
	.footer{padding:3.25rem 0;}
	.footer .ft_top{display:block;}
	.footer .ft_logo{width:11.25rem;}
	.footer .ft_policy{display:none;}
	.footer .ft_bt{display:block; margin-top:1.75rem;}
	.footer .ft_menu{gap:.5rem .75rem;}
	.footer .ft_right.mob{margin-top:1.5rem; text-align:left;}
	.footer .ft_label{font-size:.875rem; line-height:1.43;}
	.footer .ft_tel{margin-top:.25rem; font-size:1.125rem; line-height:1.5; letter-spacing:0;}
	.footer .ft_tel i{font-weight:700; margin:0 .25rem;}
	.footer .ft_time{margin-top:.25rem; opacity:.6;}
	.footer .ft_info{margin-top:1.5rem; opacity:.6;}
	.footer .ft_copy{margin-top:1.5rem; font-size:.75rem; line-height:1.33; opacity:.6;}
	.footer .ft_bt::after{content:""; display:block; clear:both;}
	.footer .inner{display:flex; flex-direction:column;}
	.footer .ft_policy.mob_policy{display:flex; gap:.875rem; margin-top:1.75rem;}
	.footer .ft_policy.mob_policy a{opacity:.6;}
	.footer .ft_policy.mob_policy a:first-child{opacity:1;}
}



@media screen and (max-width:768px){
	.pc2{display:none !important;}
	.mob2{display:block !important;}

	/* SEC01 : 세로 쌓임 레이아웃 */
	.main .sec01 .list{flex-direction:column;}
	.main .sec01 .img_card{width:100%; height:16.25rem;}
	.main .sec01 .list_row{flex-direction:column;}
	.main .sec01 .list_row .card{width:100%;}

	/* SEC05 : 세로 쌓임 레이아웃 */
	.main .sec05 .body{display:block;}
	.main .sec05 .cta_box{position:static; width:100%;}
	.main .sec05 .faq_list{margin-top:1rem;}
}