/* 공용 */
.inner{width:100%; max-width:1200px;}
.inner_1400{width:100%; max-width:1400px; margin:0 auto;}
.mo{display: none !important;}
.pc{display: block !important;}
.red{color:#ff0000;}
.sub_text{font-size:16px; font-weight: 300;}
h2{font-size:75px; font-weight: 900;}
h3{font-size:60px; font-weight: 600;}
.title{text-align: center;padding:100px 0 60px 0;}
.btn_large_wrap{text-align: center;margin-top:80px; }
.btn_large_wrap .btn_large_wrap_inner{position: relative; display: inline;}
/* 좌우 애니메이션 커서 움직이기 */
.btn_large_wrap .cursor{
    position: absolute;
    top:0; right:0;
    animation: cursor-move 1s infinite;
    z-index: 1;
}
@keyframes cursor-move {
    0% { transform: translate(0, 0); }
    50% { transform: translate(10px, 10px); }
    100% { transform: translate(0, 0); }
}
.btn_large{border-radius: 99px; background-color:#111;width:100%; max-width:932px;height:120px;color:#fff;font-size:40px;font-weight: 900;}
.evt_wp{overflow: hidden;}

.schedule_table thead th{font-size:25px;}


/* 윙배너 */
.wing_banner{position:fixed;top:40%;right:40px;z-index:1000;}
.wing_banner ul li{background:#111; border:1px solid #333; 
    color:#fff;padding:15px;margin-bottom:5px;width: 100%; cursor: pointer;width: 100%;
}
.wing_banner ul li a{font-size:18px; padding-right:20px; width: 100%;display:block;gap:10px;}
.wing_banner ul li div{display:flex;justify-content: space-between;}



/* 비주얼 배너 */
.visual{
    background: url('https://image.engineerlab.co.kr/data/www/engr/promotion/2026/korail/1/bg.jpg') 
    no-repeat top center / cover;
    padding-bottom:100px;
    width:100%;
}
.visual .top_wrap{padding-top:75px;text-align:center; width:100%;}
.visual .top_wrap .sub_text{color:#c9dce0; }

/* 근거 문구 팝업 */
.evidence-popup-modal{
    position:fixed;
    top:0;
    left:0;
    width:100vw;
    height:100vh;
    background:rgba(0,0,0,0.65);
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:1000;
    display:none;
}
.evidence-popup-modal:target{display:flex;}
.evidence-popup-wrapper{
    position:relative;
    background:#fff;
    border-radius:16px;
    padding:30px;
    box-shadow:0 12px 30px rgba(0,0,0,0.3);
}
.evidence-popup-close{
    position:absolute;
    top:-40px;
    right:0;
    display:flex;
    align-items:center;
    justify-content:center;
    border:0;
    background:transparent;
    font-size:35px;
    line-height:1;
    color:#fff;
    cursor:pointer;
}
.evidence-popup-content{
    text-align:left;
    color:#333;
    font-size:16px;
    line-height:1.6;
}
.evidence-popup-title{
    font-size:24px;
    font-weight:700;
    margin-bottom:12px;
}

/* 메인타이포 */
.main_typo_wrap{text-align: center;padding-top:50px;opacity:0;
animation:mainTitleReveal .5s ease-out .05s forwards;
}
.main_typo_wrap h4{
    font-size:50px;
    font-weight: 600;
    color:#fff;
    padding-bottom:20px;
}
.main_typo{position: relative;}
.main_typo_wrap h1{font-size:140px; font-weight: 900;}
.main_typo_wrap h1.main_typo_1{
    background: linear-gradient(63deg, #63a3ff 0%, #b6dcff 50%, #72beff 100%);
    background-clip: text;
    color: transparent;
    position: relative;
    animation: electricPassSpark 3s linear .2s forwards;
}
.main_typo_wrap h1.main_typo_2{
    color:#fff;
    text-shadow: 0 0 10px rgba(0,140,255,0.45);
}

@keyframes mainTitleReveal{
    from{opacity:0; transform:translateY(10px);}
    to{opacity:1; transform:translateY(0);}
}

@keyframes mainTitleGlow{
    0%,100%{text-shadow:0 0 10px rgba(0,140,255,0.45);}
    50%{text-shadow:0 0 16px rgba(0,173,255,0.6);}
}

@keyframes electricPassSpark{
    0%, 70%, 100%{filter:drop-shadow(0 0 0 rgba(140,223,255,0));}
    72%{filter:drop-shadow(0 0 4px rgba(175,235,255,0.85));}
    76%{filter:drop-shadow(0 0 9px rgba(175,235,255,0.75));}
    80%{filter:drop-shadow(0 0 3px rgba(175,235,255,0.7));}
}

/* 섹션2 */
.section2{
    background: #fff;
    width:100%;
    padding:100px 0;
}


/* 유튜브 플레이어 팝업 */
.yt-popup-modal { 
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
    background: rgba(0,0,0,0.65); display: flex; justify-content: center; align-items: center;
    z-index: 10000;
}
.yt-popup-modal[style*="display:none"] { display: none !important; }
.yt-popup-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.yt-popup-iframe {
    max-width: 90vw;
    max-height: 70vh;
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.6);
    background: #000;
}
.yt-popup-close {
    position: absolute;
    top: -42px;
    right: 0;
    font-size: 36px;
    color: #fff;
    z-index: 10001;
    cursor: pointer;
    font-family: Arial, sans-serif;
    user-select: none;
}



/* 합격후기 */
.review_wrap{
    margin:0 auto;
    position:relative;
    width:100%;
}
.blue{color:#0037ff;}
.review_wrap li{
    width:918px;
    box-sizing: border-box;
    background-color:#f6f6f6;
    padding:50px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    opacity:0.4;
    transition:opacity 0.3s ease;
}
.review_wrap .swiper-slide-active{
    opacity:1;
}
.review_wrap li p.main_typo{
    font-size:40px;
    font-weight:800;
    line-height:1.25;
}
.review_wrap li p.sub_typo{
    font-size:30px;
    font-weight:500;
    padding:20px 0 40px 0;
    line-height:1.3;
}
.review_wrap li p:last-child{
    font-size:24px;
    color:#444;
}
.review_swiper{position: relative;}
.review_swiper_prev,
.review_swiper_next{
    width:64px;
    height:64px;
    border-radius:50%;
    background:#000;
    color:#fff;
    top:50%; transform:translateY(-50%);
}
.review_swiper_prev{left:calc(50% - 490px);}
.review_swiper_next{right:calc(50% - 490px);}
.review_swiper_prev:after,
.review_swiper_next:after{
    font-size:24px;
    font-weight:700;
}

/* 일정공개 */
.section2 .title h2{color:#0037ff;}
.section2 .content{width:100%;}

/* 채용 일정 표 */
.schedule_table_wrap{
    width:100%;
    max-width:900px;
    margin:0 auto;
}
.schedule_highlight{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:linear-gradient(135deg,#eef3ff 0%,#dce8ff 100%);
    border-left:4px solid #0037ff;
    border-radius:0 10px 10px 0;
    padding:16px 28px;
    font-size:22px;
    font-weight:600;
    color:#0d2460;
    margin-bottom:28px;
}
.schedule_highlight .check_icon{
    color:#0037ff;
    font-size:24px;
    font-weight:900;
}
.schedule_highlight strong{
    color:#0037ff;
}
.schedule_table{
    width:100%;
    border-collapse:collapse;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 4px 24px rgba(0,55,255,0.10);
    font-size:20px;
}
.schedule_table thead tr{
    background:linear-gradient(90deg,#0a2a6e 0%,#1a4aae 100%);
}
.schedule_table thead th{
    color:#fff;
    font-weight:700;
    padding:22px 24px;
    text-align:center;
    letter-spacing:0.03em;
    border-right:1px solid rgba(255,255,255,0.25);
}
.schedule_table thead th:last-child{ border-right:none; }
.schedule_table thead th:first-child{ width:26%; }
.schedule_table thead th:nth-child(2){ width:44%; }
.schedule_table thead th:last-child{ width:30%; }
.schedule_table tbody tr{
    border-bottom:1px solid #dde8ff;
    transition:background 0.18s;
}
.schedule_table tbody tr:nth-child(even){
    background:#f0f5ff;
}
.schedule_table tbody tr:nth-child(odd){
    background:#fff;
}
.schedule_table tbody tr:hover{
    background:#dde8ff;
}
.schedule_table tbody tr.final_row{
    background:linear-gradient(90deg,#eef3ff 0%,#f5f0ff 100%);
}
.schedule_table tbody tr.final_row:hover{
    background:#dde8ff;
}
.schedule_table td{
    padding:22px 24px;
    text-align:center;
    vertical-align:middle;
    color:#222;
    line-height:1.6;
    border-right:1px solid #ccdaff;
}
.schedule_table td:last-child{ border-right:none; }
.schedule_table .type_cell{
    font-weight:700;
    color:#0a2a6e;
    font-size:20px;
}
.schedule_table .date_cell strong{
    color:#0037ff;
    font-size:22px;
    font-weight:800;
}
.schedule_table .note_cell{
    color:#555;
    font-size:17px;
    line-height:1.7;
    text-align:left;
}
.schedule_notice{
    margin-top:20px;
    font-size:16px;
    color:#888;
    text-align:center;
    line-height:1.6;
}



/* QNA 걱정해결 섹션 */
.section_qna {
    background: linear-gradient(150deg, #8476f3 0%, #a394f7 100%);
    width: 100%;
    padding: 100px 0;
    text-align: center;
}
.section_qna .title {
    padding: 0 0 60px 0;
}
.section_qna .title h2{
    background: linear-gradient(90deg, #bde1ff 0%, #64eaff 48%, #d4d4ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    font-weight: 900;
    letter-spacing: 0.01em;
}


.section_qna .title{color:#fff;}


.qna_list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.qna_item {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.qna_badge_wrap {
    margin-bottom: 20px;
}
.qna_num_badge {
    display: inline-block;
    background:#f7f7f7;
    border: 2px solid rgba(255,255,255,0.75);
    color: #212121;
    font-size: 18px;
    font-weight: 600;
    padding: 7px 24px;
    border-radius: 99px;
    letter-spacing: 0.04em;
}
.qna_question {
    font-size: 38px;
    font-weight: 800;
    color: #fff;
    line-height: 1.35;
    margin-bottom: 24px;
    text-align: center;
}
.qna_answer {
    background: #fff;
    border-radius: 20px;
    padding: 36px 44px;
    display: flex;
    align-items: flex-start;
    gap: 22px;
    max-width: 900px;
    width: 100%;
    box-sizing: border-box;
    text-align: left;
}
.qna_answer_badge {
    display: inline-block;
    background: #111;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    padding: 7px 16px;
    border-radius: 8px;
    white-space: nowrap;
    margin-top: 3px;
    flex-shrink: 0;
}
.qna_answer p {
    font-size: 22px;
    font-weight: 400;
    color: #333;
    line-height: 1.75;
    margin: 0;
}
.qna_blue {
    color: #0076ff;
    font-weight: 700;
}

/* 섹션3 */
.section3{background:#2d3547; margin-top:-6px; width:100%;padding-bottom:100px;}
.section3 .title h3{color:#fff;}
.section3 .title h2{
    background: linear-gradient(90deg, #bde1ff 0%, #64eaff 48%, #d4d4ff 100%);;
    background-clip:text; color:transparent;
}
.glowing-border {
    position: relative;
    border: 3px solid #ef0a6a;
    border-radius: 16px;
    box-shadow: 0 0 8px #ef0a6a;
    transition: box-shadow 0.4s, border-color 0.4s;
}


/* 좌우 패널 */
.section3 .content{
    display:flex;
    align-items:stretch;
    width:100%;
    margin:0 auto;
    gap:20px;
}
/* 왼쪽 카드 */
.section3 .pass_info_left{
    width:60%;
    padding:30px 24px 0;
    border:3px solid #ff008a;
    background:#fff;
    position:relative;
    display:flex;
    flex-direction:column;
    box-sizing:border-box;
}
/* BEST 배지 */
.section3 .pass_badge{
    position:absolute;
    top:16px; right:16px;
    width:124px; height:124px;
    border-radius:50%;
    background:#ff008a;
    color:#fff;
    font-size:25px; font-weight:900;
    display:flex; align-items:center; justify-content:center;
    flex-direction:column;
    text-align: center;
}
/* 타이틀 */
.section3 .pass_info_left h4{
    font-size:40px; 
    font-weight:900;
    margin-bottom:14px;
}
/* 설명 */
.section3 .pass_info_left p{
    display:flex;
    align-items:flex-start;
    gap:8px;
    font-size:22px; line-height:1.6;
    color:#222; font-weight:400;
    margin:0;
}
.section3 .pass_info_left p::before{content:''; margin-right:0;}
.section3 .pass_info_left p i{
    flex-shrink:0;
    font-size:20px;
    margin-top:7px;
}
.section3 .pass_info_left p span{ display:block; }
.section3 .pass_info_left p.period{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #eee;
    color:#111;
    font-weight:600;
}
.section3 .pass_info_left p.period::before{content:''; margin-right:0;}
.section3 .pass_info_left p.period strong{color:#ff008a;}
/* 가격 박스 */
.section3 .price_wrap{
    display:flex;
    align-items:center;
    border-radius:10px;
    margin-top:64px;
}
/* 쿠폰 박스 */
.section3 .coupon_box{
    flex-shrink:0;
    padding:40px;
    background:#f7f7f7;
    border:1px dashed #d3d3d3;
    border-radius:10px;
    color:#ff008a;
    text-align:center;
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
}
.section3 .coupon_box .coupon_amount{
    font-size:35px; font-weight:900;
}
.section3 .coupon_box .coupon_text{
    font-size:20px; font-weight:900;
}
/* 쿠폰 화살표 */
.section3 .coupon_box::after{
    content:'';
    position:absolute;
    top:50%; right:-13px;
    transform:translateY(-50%);
    border-top:10px solid transparent;
    border-bottom:10px solid transparent;
    border-left:12px solid #aaa;
}
/* 가격 오른쪽 */
.section3 .price_right{
    flex:1;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:6px 8px 6px 22px;
    gap:15px;
}
.section3 .price_row{
    display:flex;
    align-items:baseline;
    font-size:25px;
}
.section3 .price_label{
    font-weight:500;
    color:#888; white-space:nowrap;
}
.section3 .price_dot{
    flex:1;
    border-bottom:1px dashed #ccc;
    margin:0 10px;
    position:relative; top:-4px;
}
.section3 .price_value{
    font-weight:500;
    color:#888; white-space:nowrap;
    text-align:right;
}
.section3 .price_value.discount{color:#ff008a;}
/* 결제 예상 금액 */
.section3 .price_row.total .price_label{
    font-weight:800;
    color:#222;
}
.section3 .price_row.total .price_value{
    margin-left:auto;
    font-size:35px; font-weight:900;
    color:#ff008a; line-height:1;
}
.section3 .price_row.total .won{
    font-size:18px; font-weight:700;
}
/* 수강 신청 버튼 */
.section3 .apply_btn_wrap{
    margin-top:auto;
    position:relative;
    padding-top:24px;
}
.section3 .apply_btn_wrap .cursor_inner{
    position:absolute;
    right:10px;
    bottom:-40px;
    animation: cursor-move 1s infinite;
    z-index: 1;
}
.section3 .apply_btn{
    display:block;
    width:calc(100% + 48px);
    margin-left:-24px;
    padding:30px 0;
    background:#ff008a;
    color:#fff;
    font-size:40px; font-weight:900;
    text-align:center; line-height:1;
}
/* 오른쪽 이미지 */
.section3 .pass_info_right{
    width:50%;
    position:relative;
}
.section3 .pass_info_right .pass_badge{
    background:#fff;
    color:#212121;
    font-size:20px;
}
.section3 .pass_info_right .pass_badge .pass_badge_value{
    font-size:40px;
    font-weight:900;
    color:#ff008a;
    position: relative;

}

.pass_badge_value::after{
    content:'*';
    color:#111;
    font-size:20px;
    font-weight: 600;
    position: absolute;
    top:0; right:-5px;
}

.section3 .pass_info_right .title_wrap{
    position:absolute;
    width:100%;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
}
.section3 .pass_info_right .title_wrap p{
    font-size:40px;
    font-weight:700;
    color:#fff;
    text-align:center;
    line-height:1.3;
}
.section3 .pass_info_right .title_wrap p .yellow{
    color:#fff600;
}
.section3 .pass_info_right img{
    width:100%; height:100%;
    object-fit:cover; display:block;
}
.section3 .pass_info_right .sub_text{color:#ccc;padding-top:10px;}


/* 섹션4 */
.section4{background:#fff;width:100%;padding-bottom:100px;}
.section4 .left_wrap{width:30%; text-align: center; padding-left:30px;}
.section4 .right_wrap{width:70%; padding:50px 0;}
.section4 .coupon_box{counter-reset: benefit-counter;}
.section4 .coupon_box li:nth-child(3) img,
.section4 .coupon_box li:nth-child(4) img{
    width:55%;
    
}
.section4 .coupon_box li{
    background:#f2f2f2;  
    margin-bottom:10px;
    display:flex;
    align-items:center;
    gap:50px;
    border:1px solid #ccc;
    position:relative;
    counter-increment: benefit-counter;
}
.section4 .coupon_box li::before{
    content: "혜택" counter(benefit-counter);
    position:absolute;
    top:0; left:0;
    background:#ef0a6a;
    color:#fff;
    font-size:24px;
    font-weight:700;
    padding:8px 24px;
}
.section4 .coupon_box li.img-bottom{
    align-items:stretch;
    padding-bottom:0;
    overflow:hidden;
}
.section4 .coupon_box li.img-bottom .left_wrap{
    display: flex;
    align-items: flex-end; 
    justify-content: center; 
}
.section4 .coupon_box li.img-bottom .left_wrap img{
    width: auto;      
    max-width: 100%; 
    max-height: 100%;
    position: absolute;
    bottom: -32px;
    left: 100px;
}
.section4 .coupon_box li.img-bottom .right_wrap{align-self:flex-start;}
.section4 .coupon_box p{
    font-size:40px;
    font-weight: 700;
}
.section4 .coupon_box .desc{
    font-size:30px;
    font-weight:400;
    margin-top:14px;
    line-height:1.5;
}
.section4 .coupon_box .pdf_note{
    font-size:22px;
    color:#888;
    margin-top:10px;
}
.section4 .coupon_box .coupon_btn{
    background-color:#111;
    color:#fff;
    font-size:30px;
    font-weight: 900;
    margin-top:20px;
    padding:10px 40px;
    border-radius: 50px;
}


/*  섹션5 */
.section5{background:url('https://image.engineerlab.co.kr/data/www/engr/promotion/2026/kepcoPassed/5/bg_03.jpg')
     no-repeat top center;}

/*  섹션6 */
.section6{background:#e6eef2;width:100%; padding-bottom:100px;}
.section6 .step_grid{
    display:grid;
    grid-template-columns:1fr 70px 1fr;
    row-gap:20px;
}
.section6 .step_item{
    background:#fff;
    border:5px solid #ccc;
    border-radius:8px;
    padding:50px 40px;
    text-align:center;
    position:relative;
    transition:background 0.3s, border 0.3s, transform 0.3s, color 0.3s;
}
.section6 .step_item.active{
    background:#fff;
    border:5px solid #ef0a6a;
    transform:scale(1.02);
}
.section6 .free_badge{
    position:absolute;
    top:-30px; left:-30px;
    width:90px; height:90px;
    background:#333;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    font-weight:700;
    line-height:1.3;
    text-align:center;
}
@keyframes arrowBounce{
    0%,100%{transform:translateX(0);}
    50%{transform:translateX(10px);}
}
.section6 .step_arrow{
    display:flex;
    align-items:center;
    justify-content:center;
    color:#ccc;
    font-size:44px;
    transition:color 0.4s;
}
.section6 .step_arrow.active{
    color:#e84c6d;
    animation:arrowBounce 0.6s ease-in-out infinite;
}
.section6 .step_num{
    font-size:30px;
    font-weight:700;
    color:#555;
    margin-bottom:20px;
}
/* 가운데로 정렬 */
.section6 .step_thumb{
    display:flex;
    align-items:center;
    justify-content:center;
    height:268px;
}
.step_text{margin-top:30px;}
.section6 .step_thumb img{
}
.section6 .step_title{
    font-size:40px;
    font-weight:700;
    margin-bottom:12px;
}
.section6 .step_desc{
    font-size:30px;
    color:#212121;
    font-weight: 400;
    line-height:1.5;
}
.section6 .step_note{
    font-size:22px;
    color:#888;
    margin-top:8px;
}

/* 섹션7 */
.section7{background:#fff;width:100%; padding-bottom:100px;}
.section7 .onfield_flex{display:flex; justify-content: space-between;}
.section7 .onfield_item{border:1px solid #0076ff; position: relative; width:33%;}
.section7 .onfield_header{
    font-size:40px;font-weight: 900;
    position: absolute; top:0; left:0; width:100%; text-align: center;
    background:#0076ff; color:#fff; padding:30px 0;
}
.section7 img{width:100%;}
.section7 .onfield_img{padding:10px; text-align: center;margin-top: 108px;}
.section7 .onfield_text{font-size:30px; font-weight: 500; line-height:1.5; 
    padding:10px 0 40px 0;text-align: center;
}

/* 마지막 섹션 */
.section8{
    background:url('https://image.engineerlab.co.kr/data/www/engr/promotion/2026/kepcoPassed/8/bg_01.jpg')
     no-repeat top center;
    width:auto;
    padding-bottom:100px;
}

.section8 .sub_text{line-height:1.5;}



/* =============================================
   1. 태블릿 (max-width: 1200px)
   ============================================= */
@media (max-width: 1200px) {
    /* 공용 */
    h2{font-size:56px;}
    h3{font-size:44px;}
    .inner{width:100%; max-width:100%; padding:0 30px; box-sizing:border-box;}
    .title{padding:80px 0 50px;}
    .btn_large{font-size:30px; height:96px; max-width:100%;}
    .btn_large_wrap{margin-top:60px;}

    /* 비주얼 */
    .visual{padding-bottom:80px;}
    .visual .top_wrap img{width:100%;}
    .main_typo_wrap{text-align:center; }
    .main_typo{display:inline-block; position:relative;}
    .main_typo_wrap h1{font-size:100px;}
    .main_typo_wrap h4{font-size:38px;}

    /* 섹션2 */
    .section2{padding:80px 0;}
    .section2 .prof_yt_icon{display:block; max-width:800px; margin:0 auto 40px; padding:0 30px;}
    .section2 .prof_yt_icon img{width:100%; display:block;}
    .schedule_table{font-size:17px;}
    .schedule_table thead th{padding:18px 16px;}
    .schedule_table td{padding:18px 16px;}
    .schedule_table .date_cell strong{font-size:18px;}
    .schedule_highlight{font-size:18px;}

    /* 합격후기 */
    .review_wrap{width:100%; padding:0 60px;}
    .review_wrap li{width:75vw; max-width:700px; padding:40px 36px;}
    .review_wrap li p.main_typo{font-size:32px;}
    .review_wrap li p.sub_typo{font-size:24px; padding:16px 0 30px;}
    .review_wrap li p:last-child{font-size:20px;}
    .review_swiper_prev{left:20px;}
    .review_swiper_next{right:20px;}

    /* QNA 걱정해결 섹션 */
    .section_qna{padding:80px 0;}
    .section_qna .qna_sub_title{font-size:30px;}
    .section_qna .qna_main_title{font-size:42px;}
    .qna_question{font-size:30px;}
    .qna_answer{padding:30px 36px; gap:18px;}
    .qna_answer p{font-size:20px;}

    /* 섹션3 */
    .section3{padding-bottom:80px;}
    .section3 .content{flex-direction:column; gap:24px;}
    .section3 .pass_info_left{width:100%; max-width:600px; margin:0 auto; padding:30px 24px 0;}
    .section3 .pass_info_right{width:100%; max-width:600px; margin:0 auto;}
    .section3 .pass_info_right img{height:400px; object-fit:cover;}
    .section3 .pass_info_right .title_wrap p{font-size:32px;}
    .section3 .pass_info_left h4{font-size:34px;}
    .section3 .pass_info_left p{font-size:20px;}
    .section3 .coupon_box .coupon_amount{font-size:28px;}
    .section3 .coupon_box .coupon_text{font-size:16px;}
    .section3 .price_row{font-size:20px;}
    .section3 .price_row.total .price_value{font-size:28px;}
    .section3 .apply_btn{font-size:22px; padding:18px 0;}

    /* 섹션4 */
    .section4{padding-bottom:80px;}
    .section4 .content{width:100%;}
    .section4 .coupon_box li{width:100%; gap:30px;}
    .section4 .left_wrap{width:28%; min-width:120px;}
    .section4 .right_wrap{width:72%; padding:40px 0;}
    .section4 .coupon_box p{font-size:32px;}
    .section4 .coupon_box .desc{font-size:24px;}
    .section4 .coupon_box .coupon_btn{font-size:24px;}





    /* 섹션5 */
    .section5 .inner_1400 img{width:100%; display:block;}

    /* 섹션6 */
    .section6{padding-bottom:80px;}
    .section6 .step_grid{grid-template-columns:1fr 50px 1fr; row-gap:20px;}
    .section6 .step_arrow{font-size:32px;}
    .section6 .step_title{font-size:32px;}
    .section6 .step_desc{font-size:24px;}
    .section6 .step_num{font-size:24px;}
    .section6 .step_thumb{height:200px;}
    .section6 .step_thumb img{max-width:100%; max-height:100%; object-fit:contain;}

    /* 섹션7 */
    .section7{padding-bottom:80px;}
    .section7 .onfield_header{font-size:28px; padding:24px 10px;}
    .section7 .onfield_img{margin-top:100px;}
    .section7 .onfield_text{font-size:24px;}

    /* 섹션8 */
    .section8 .content img{max-width:100%;}
    .evidence-popup-wrapper{max-width:90%; margin:0 20px;}
}
.br_820{display:none;}
.br_821{display:block;}

@media (max-width: 820px) {
    /* 공용 */
    h2{font-size:32px;letter-spacing: -0.1em;}
    h3{font-size:22px;letter-spacing: -0.08em;}
    .inner{width:100%; max-width:100%; padding:0 20px; box-sizing:border-box;}
    .title{padding:50px 0 30px;}
    .btn_large{font-size:18px; height:60px; border-radius:50px; max-width:100%;}
    .btn_large_wrap{margin-top:36px;}
    .btn_large_wrap_inner{width:100%; display:block;}
    .sub_text{font-size:12px;}
    .br_820{display:block;}
    .br_821{display:none;}
    .btn_large_wrap .cursor{width:50px;}

    /* 비주얼 */
    .visual{padding-bottom:100px;}
    .visual .top_wrap{padding-top:30px;}
    .visual .top_wrap img{width:100%;}
    .main_typo_wrap h1{font-size:78px; line-height:1.1;}
    .main_typo_wrap h4{font-size:27px; padding-bottom:5px;}

    .main_typo_1 img{width:90%;}

    /* 섹션2 */
    .section2{padding:50px 0;}
    .section2 .prof_yt_icon{margin:0 auto 30px; padding:0 20px;}
    .section2 .btn_large_wrap .cursor img{width:100%;}
    .schedule_table_wrap{padding:0 16px;}
    .schedule_table{font-size:13px; border-radius:10px;}
    .schedule_table thead th{padding:14px 10px; font-size:13px;}
    .schedule_table td{padding:14px 10px;}
    .schedule_table .type_cell{font-size:13px;}
    .schedule_table .date_cell strong{font-size:14px;}
    .schedule_table .note_cell{font-size:12px;}
    .schedule_highlight{font-size:20px; padding:12px 16px; margin-bottom:18px;flex-direction: column;width: 100%;}
    .schedule_notice{font-size:13px; padding:0 4px;}

    /* 합격후기 */
    .review_wrap{padding:0;}
    .review_wrap li{width:85vw; max-width:400px; padding:28px 24px;height:300px;}
    .review_wrap li p.main_typo{font-size:22px; text-align:center;}
    .review_wrap li p.sub_typo{font-size:16px; padding:10px 0 18px; line-height:1.5;}
    .review_wrap li p:last-child{font-size:14px;}
    .review_swiper_prev,
    .review_swiper_next{width:44px; height:44px;}
    .review_swiper_prev{left:8px;}
    .review_swiper_next{right:8px;}
    .review_swiper_prev:after,
    .review_swiper_next:after{font-size:16px;}

    /* QNA 걱정해결 섹션 */
    .section_qna{padding:60px 0;}
    .section_qna .qna_sub_title{font-size:20px;}
    .section_qna .qna_main_title{font-size:26px; letter-spacing:-0.05em;}
    .section_qna .title{padding:0 0 36px 0;}
    .qna_question{font-size:20px; padding:0 4px;}
    .qna_answer{padding:24px 20px; gap:14px; border-radius:14px;}
    .qna_answer_badge{font-size:13px; padding:5px 12px; border-radius:6px;}
    .qna_answer p{font-size:16px; line-height:1.7;}
    .qna_num_badge{font-size:14px; padding:5px 18px;}
    .qna_list{gap:36px;}

    /* 섹션3 */
    .section3{padding-bottom:50px;}
    .section3 .pass_info_left{width:100%; padding:24px 20px 0;}
    .section3 .pass_info_right{width:100%;}
    .section3 .pass_info_right img{height:240px;}
    .section3 .pass_info_right .title_wrap p{font-size:22px; line-height:1.4;}
    .section3 .pass_info_left h4{font-size:24px; margin-bottom:12px;}
    .section3 .pass_info_left p{font-size:15px;}
    .section3 .pass_badge{width:60px; height:60px; font-size:14px; top:12px; right:12px;}
    .section3 .pass_info_right .pass_badge{font-size:12px;}
    .section3 .pass_info_right .pass_badge .pass_badge_value{font-size:14px;}
    .section3 .price_wrap{flex-direction:column; gap:30px; margin-top:20px;}
    .section3 .coupon_box{
        width:100%;
        flex-direction:row;
        justify-content:center;
        padding:14px 16px;
        gap:8px;
    }
    .section3 .coupon_box::after{display:none;}
    .section3 .coupon_box .coupon_amount{font-size:30px;}
    .section3 .coupon_box .coupon_text{font-size:20px;}
    .section3 .price_right{padding:0; gap:8px;width: 100%;}
    .section3 .price_row{font-size:20px;}
    .section3 .price_row.total .price_value{font-size:25px;}
    .section3 .apply_btn{font-size:25px; padding:25px 0; width:calc(100% + 40px); margin-left:-20px;}
    .section3 .apply_btn_wrap{padding-top:20px;}

    .section3 .apply_btn_wrap .cursor_inner{bottom:0;}
    .section3 .pass_info_left p i{margin-top:2px;}

    /* 섹션4 */
    .section4{padding-bottom:50px;}
    .section4 .content{width:100%;}
    .section4 .coupon_box li{
        width:100%;
        flex-direction:column;
        align-items:center;
        padding:50px 20px 24px;
        gap:16px;
    }
    .section4 .coupon_box li.img-bottom{flex-direction:column; align-items:center;padding-bottom:30px;}
    .section4 .coupon_box li.img-bottom .left_wrap{
        display:flex; align-items:center; justify-content:center;
        min-height:120px; position:relative;
    }
    .section4 .left_wrap{width:100%; text-align:center; padding:0;}
    .section4 .left_wrap img{width:50% !important; max-width:180px;}
    .section4 .coupon_box li.img-bottom .left_wrap img{
        position:static !important;
        width:45% !important; max-width:160px;
    }
    .section4 .right_wrap{width:100%; padding:0; text-align:center;}
    .section4 .coupon_box p{font-size:22px;letter-spacing: -0.05em;}
    .section4 .coupon_box .desc{font-size:16px; margin-top:8px;}
    .section4 .coupon_box .pdf_note{font-size:14px;}
    .section4 .coupon_box .coupon_btn{font-size:18px; padding:10px 28px; margin-top:12px;}
    .section4 .coupon_box li::before{font-size:16px; padding:6px 16px;}

    /* 섹션5 */
    .section5 .inner{padding:0 20px;}
    .section5 .inner img{width:100%; display:block;}
    .section5 .inner_1400 img{width:100%;}

    /* 섹션6 */
    .section6{padding-bottom:50px;}
    .section6 .step_grid{
        grid-template-columns:1fr;
        grid-template-rows:auto;
        row-gap:20px;
    }
    .section6 .step_arrow,
    .section6 .step_arrow2{display:none !important;}
    .section6 .step_item{padding:32px 24px;}
    .section6 .step_thumb{height:160px;}
    .section6 .step_thumb img{max-width:100%; max-height:100%; object-fit:contain;}
    .section6 .step_title{font-size:24px; margin-bottom:8px;}
    .section6 .step_desc{font-size:18px;}
    .section6 .step_note{font-size:14px;}
    .section6 .step_num{font-size:18px; margin-bottom:12px;}
    .section6 .free_badge{width:60px; height:60px; font-size:14px; top:-16px; left:-16px;}

    /* 섹션7 */
    .section7{padding-bottom:50px;}
    .section7 .onfield_flex{flex-direction:column; gap:16px;}
    .section7 .onfield_item{width:100%;}
    .section7 .onfield_header{font-size:22px; padding:16px 12px; position:relative;}
    .section7 .onfield_img{margin-top:0; padding:16px;}
    .section7 .onfield_text{font-size:18px; padding:8px 16px 24px;}
    .section7 img{width:100%;}

    /* 섹션8 */
    .section8{padding-bottom:50px;}
    .section8 .content img{width:100%; display:block;}
    .section8 .sub_text{font-size:12px; line-height:1.7; padding:0 4px;}

    /* 팝업 */
    .evidence-popup-wrapper{max-width:calc(100% - 40px); padding:24px 20px;}
    .evidence-popup-close{top:-36px; font-size:28px;}
    .evidence-popup-content{font-size:14px;}
    .yt-popup-iframe{width:95vw; height:53.4vw; max-height:50vh;}
    .mo{display:block !important;}
    .pc{display: none !important;}
    .section_qna .title h2{letter-spacing: -0.09em;}

    .section3 .apply_btn_wrap .cursor_inner img{width:50px;}

    /* 모바일 바텀배너 */
    .mo-bottom-banner{position: fixed; bottom:0; left:0; width:100%; z-index:1000;text-align: center;}
    .mo-bottom-banner a{padding:20px; font-size:25px; font-weight: 900; 
        color:#fff; background:#0076ff; text-align: center;align-items: center;
        display: flex;justify-content: center;
    }


    .pass_badge_value::after{font-size:12px;}
}

