.evt_wp{overflow: hidden;}
.sub_text{font-size:16px; font-weight: 300; color:#808080;text-align: left; line-height:1.5;}
.inner{max-width: 1200px; margin: 0 auto;}


h2{font-size:50px;font-weight: 700;text-align: center;padding-bottom:40px;}
h3{font-size:38px;font-weight: 700;text-align: center;padding-top:40px;}
.green{color:#00bf48;}
.red{color:#dc1d00;}

.header-wrap.fix{position: relative;}
/* 윙배너 */
.wing_banner { position: fixed; bottom: 20%; right: 0; z-index: 1000; }
.wing_banner_inner { display: flex; flex-direction: column; gap: 6px; align-items: flex-end; }

.wing_banner_item_1 {
    background: #1ae163;
    text-align: center;
    color: #00216a;
    width: 200px;
    border-radius: 12px 0 0 12px;
    padding: 30px;
}
.wing_banner_item_1 .wing_date {
    font-size: 25px;
    font-weight: 500;
    line-height: 1.4;
    margin: 0 0 4px;
    opacity: 0.9;
}
.wing_banner_item_1 .wing_dday {
    font-size: 40px;
    font-weight: 900;
    margin: 0;
    letter-spacing: -0.5px;
}

.wing_banner a {
    width: 200px;
    display: block;
    background: #1e2d54;
    border-radius: 12px 0 0 12px;
    padding: 30px;
    text-align: center;
    color: #fff;
    text-decoration: none;
    transition: background 0.2s;
}
.wing_banner a:hover { background: #2d3f70; }
.wing_banner a p {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    color: rgba(255,255,255,0.85);
}
.wing_banner a p strong {
    display: block;
    font-size: 26px;
    font-weight: 800;
    color: #fff;
    margin-top: 2px;
}

/* 비주얼배너 */
.visual{
    background: url('https://image.engineerlab.co.kr/data/www/engr/promotion/2026/exam_archive/1/bg_02.jpg') 
    no-repeat center center / cover;
}


/* 탭 placeholder - 레이아웃 밀림 방지 */
#tab-placeholder { height: 0; display: block; }

/* 탭5개 */
.tab_wrap {
    background: #2d59ed;
    width: 100%;
    padding: 0;
    z-index: 900;
}
.tab_wrap.is-sticky {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
}
.tab_wrap .tab_list {
    display: flex;
    justify-content: stretch;
    list-style: none;
    margin: 0;
    padding: 0;
}
.tab_list_mo { display: none !important; }
.tab_list_pc { display: flex !important; }
.tab_wrap .tab_list .tab_item {
    flex: 1;
    position: relative;
    cursor: pointer;
    transition: background 0.2s;
}
.tab_wrap .tab_list .tab_item + .tab_item::before {
    content: '';
    position: absolute;
    left: 0; top: 50%;
    transform: translateY(-50%);
    width: 1px; height: 50%;
    background: rgba(255,255,255,0.25);
}
.tab_wrap .tab_list .tab_item a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px 10px;
    text-decoration: none;
    width: 100%;
    height: 100%;
}
.tab_wrap .tab_list .tab_item p {
    text-align: center;
    color: rgba(255,255,255,0.65);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
    margin: 0;
    transition: color 0.2s;
}
.tab_wrap .tab_list .tab_item p strong {
    display: block;
    font-size: 30px;
    font-weight: 900;
    color: rgba(255,255,255,0.65);
    transition: color 0.2s;
    line-height: 1.2;
}
.tab_wrap .tab_list .tab_item:hover p,
.tab_wrap .tab_list .tab_item:hover p strong {
    color: #fff;
}
.tab_wrap .tab_list .tab_item.active {
    background: #fff;
}
.tab_wrap .tab_list .tab_item.active p,
.tab_wrap .tab_list .tab_item.active p strong {
    color: #212121;
}

/* 탭 패널 */
.tab_panels { background: #fff; }
.tab_panel { display: block; padding: 100px 0; }
#section-1, #section-3 { background: #f3f6fa; }
.tab_wrap .tab_item[data-section="section-1"].active,
.tab_wrap .tab_item[data-section="section-3"].active { background: #f3f6fa; }
.tab_wrap .tab_item[data-section="section-1"].active p,
.tab_wrap .tab_item[data-section="section-1"].active p strong,
.tab_wrap .tab_item[data-section="section-3"].active p,
.tab_wrap .tab_item[data-section="section-3"].active p strong { color: #212121; }

/* 탭1 섹션*/
.tab_panel .img_box{
    display: flex;
    justify-content: center;
}

/* 표만들기 */
.info_table{width:100%;margin-top:25px;}
.info_table tr{display:grid; grid-template-columns: 30% auto;gap:10px;padding: 5px;}
.info_table td{font-size:28px;font-weight: 400;text-align: left;padding:22px 0;border:2px solid #111;}
.info_table td a{font-size:28px; color:#2d59ed;}
.info_table td:first-child{background:#f5f8fb;text-align: center;}
.info_table td:last-child{background:#fff;padding-left:80px;}
.info_table label{font-size:28px;}
.info_table input{width:100%;border:0;border-radius:5px;font-size:28px;}
.info_table input[type="radio"]{width:20px;height:20px;}
.info_table input[type="radio"]:checked{background:#2d59ed;}
.info_table input[type="radio"]:not(:checked){background:#ccc;}
.info_table input[type="radio"]:not(:checked):hover{background:#2d59ed;}
.info_table input[type="radio"]:not(:checked):hover{background:#2d59ed;}


/* 상품 팝업 */
.item-popup {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.7);
    z-index: 9999;
    align-items: center;
    justify-content: center;
}
.item-popup.is-open { display: flex; }
.item-popup-inner {
    position: relative;
    width: 940px;
    max-width: 95vw;
    max-height: 85vh;
    background: #fff;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
}
.item-popup-close {
    position: absolute;
    top: 10px; right: 14px;
    font-size: 32px; line-height: 1;
    cursor: pointer;
    z-index: 1;
    top: -36px;
    color:#fff;
}
.item-popup-close:hover { color: #fff; }
.item-popup-body {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding: 40px 30px 30px;
}
.scroll-hint-mo { display: none; }
.item-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    white-space: nowrap;
    table-layout: auto;
}
.item-table thead tr:first-child th {
    background: #eef1f7;
    font-weight: 700;
    font-size: 15px;
    padding: 10px 8px;
    border: 1px solid #c8d0dc;
    text-align: center;
}
.item-table thead tr:last-child th {
    background: #f7f9fc;
    font-weight: 600;
    padding: 8px;
    border: 1px solid #c8d0dc;
    text-align: center;
}
.item-table tbody td {
    padding: 8px;
    border: 1px solid #d8dde6;
    text-align: center;
    vertical-align: middle;
    color: #333;
}
.item-table tbody td.no-coupon {
    color: #999;
    font-size: 13px;
}

/* 개인정보 수집 동의 */
.agree_wrap{margin-top:25px;background:#f7f9fc;border:1px solid #d2d2d7;padding:40px;}
.agree_wrap .sub_text{padding-bottom:20px;}
.agree_wrap .agree label{display:block;padding:3px 0;}


/* 버튼 */
.btn_wrap{display: flex; justify-content: center; margin-top:70px;}
.btn_wrap a{ 
    background: #09c654;
    display: flex;
    padding:20px 80px;
    text-align: center;
    align-items: center;
    background: #09c654;
    border-radius: 90px;
    color: #fff;
    gap:20px;
    position: relative;
    box-shadow: 0 3px 10px rgba(9,198,84,0.10);
}
.btn_wrap a .sub_text{
    font-size:24px;
    font-weight: 700;
    color:#00bc3f;
    background:#fff;
    padding:5px 20px;
    border-radius: 99px;;
}

.btn_wrap a .typo{
    font-size:34px;
    font-weight: 400;
}
.cursor_wrap{
    position: absolute;
    right:20px;
}
.cursor_wrap i{font-size:25px;}
.cursor_wrap img{
    bottom:-35px;
    right:-25px;
    position: absolute;
    animation: cursor-move 1s infinite;
}
@keyframes cursor-move {
    0% { transform: translate(0, 0); }
    50% { transform: translate(10px, 10px); }
    100% { transform: translate(0, 0); }
}

.agree_wrap_2{margin-top:80px;}

.item_panel_4{margin-top:-5px;}
/* 안내 섹션 */
.notice_wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.notice_title {
    font-size: 17px;
    font-weight: 600;
    color: #111;
    padding-bottom:5px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.notice_badge {
    display: inline-block;
    background: #111;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 3px;
    white-space: nowrap;
}
.notice_list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}
.notice_list li {
    font-size: 16px;
    color: #222;
    padding-left: 12px;
    position: relative;
    line-height: 1.6;
    font-weight: 300;
}
.notice_list li::before {
    content: '-';
    position: absolute;
    left: 0;
}


.notice_list li a {
    color: #2d59ed;
    text-decoration: none;
    font-weight: 600;
}
.notice_list li a:hover { text-decoration: underline; }
.notice_benefit {
    display: flex;
    flex-direction: column;
}
.benefit_sub_title {
    font-size: 17px;
    font-weight: 700;
    color: #111;
    padding-top:5px;
}

/* 탭2 섹션*/
.item_panel_2 .item_list ul{
    display: flex; flex-wrap: wrap; gap:10px;justify-content: center;
}
.item_panel_2 .item_list li{
    background:#fff;border:1px solid #111;display:flex;align-items: center;justify-content: center;
    flex-direction: column;
    height:290px; width:48%; text-align: center;
}
.item_panel_2 .item_list li h4{font-size:28px;font-weight: 700;color:#111;}
.item_panel_2 .item_list li p{font-size:22px;color:#808080;padding:22px 0;}
.item_panel_2 .item_list li .btn_wrap{margin-top:0;}

/* 탭3 섹션 - 복원 라이브 */
.item_panel_3{padding-bottom:0;}
.item_panel_3 .live_box {
    display: flex;
    align-items: center;
    justify-content: center;
}
.item_panel_3 .live_img { flex: 0 0 auto; }
.item_panel_3 .live_img img { width: auto; }
.item_panel_3 .live_info { display: flex; flex-direction: column; gap: 20px;margin-top:-147px;margin-left:-100px;}
.item_panel_3 .live_info .sub_text{font-size:22px;font-weight: 400;color:#808080;line-height:1.5;}
.item_panel_3 .live_desc { 
    font-size: 38px; font-weight: 700; color: #212121; line-height: 1.3; margin: 0; }

/* 탭4 섹션 - 복원 참여 이벤트 */
.live_btn_group {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-top: 20px;
}
.live_btn_group .btn_wrap { margin-top: 0; }

/* 탭5 섹션 - 후기 이벤트 */
.item_panel_5 .s5_desc {
    text-align: center;
    font-size: 22px;
    color: #666;
    line-height: 1.7;
    margin: 0 auto 20px;
}

/* 롤링 리뷰 */
.roll_review { overflow: hidden; width: 100%; padding: 50px 0; }
.review_track { overflow: hidden; }
.review_wrap {
    display: flex;
    gap: 20px;
    width: max-content;
    animation: reviewScroll 28s linear infinite;
}
.review_wrap:hover { animation-play-state: paused; }
.rv-item { flex: 0 0 auto; cursor: pointer; width: 340px; }
.rv-item img { width: 100%; display: block; border-radius: 10px; transition: opacity 0.2s; }
.rv-item:hover img { opacity: 0.82; }
@keyframes reviewScroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* 합격률 통계 섹션 */
.stat_section {
    background: #111;
    padding: 90px 0;
}
.stat_inner {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 60px;
}
.stat_left { flex: 1; min-width: 0; }
.stat_headline {
    font-size: 32px;
    font-weight: 700;
    color: #fff;
    line-height: 1.55;
    margin-bottom: 36px;
}
.stat_grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.stat_row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}
.stat_item {
    background: #00bf88;
    padding: 20px 12px;
    border-radius: 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}
.stat_label {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.4;
}
.stat_num {
    font-size: 34px;
    font-weight: 900;
    color: #fff;
    line-height: 1;
}
.stat_num sup { font-size: 16px; font-weight: 400; vertical-align: super; }
.stat_right { flex: 0 0 280px; }
.stat_right img { width: 100%; display: block; }

/* YouTube 팝업 */
.yt-popup {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.88);
    z-index: 9999;
    align-items: center;
    justify-content: center;
}
.yt-popup.is-open { display: flex; }
.yt-popup-inner {
    position: relative;
    width: 860px;
    max-width: 92vw;
}
.yt-popup-close {
    position: absolute;
    top: -48px;
    right: 0;
    background: none;
    border: none;
    font-size: 44px;
    line-height: 1;
    color: #fff;
    cursor: pointer;
    padding: 0;
}
.yt-popup-close:hover { color: #ccc; }
.yt-popup-video {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    background: #000;
    border-radius: 6px;
    overflow: hidden;
}
.yt-popup-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}


/* 마지막 */
.item_panel_6{
    background:url('https://image.engineerlab.co.kr/data/www/engr/promotion/2026/exam_archive/7/bg.jpg') 
    no-repeat center center / cover;
    padding:100px 0;
}
.item_panel_6 .typo h2{color:#fff;}
.item_panel_6 .img_box{width: 964px;margin: 0 auto;}
.item_panel_6 .img_box .sub_text{padding-top:20px;}

.br_1200_721, .mo{display: none !important;}
.pc{display:block;}

/* 미디어쿼리 1200px ~ 721px */
@media screen and (max-width: 1200px) and (min-width: 721px) {
    .br_1200_721{display: block !important;}
    .visual img{width:100%;}
    .inner{padding:0 20px;}
    .item_panel_6 .img_box{width:100%;}
    .item_panel_6 .img_box img{width:100%;}
    .btn_wrap a{padding:10px 20px;}
}

/* 모바일 */
@media screen and (max-width: 720px) {
    .mo { display: flex !important; }
    .pc { display: none !important; }
    .bottom_banner{position: fixed;bottom:0;left:0;width:100%;z-index: 10;}
    .bottom_banner a{background-color:#00bc3f;width:100%;padding:20px 0;text-align: center;font-size:20px;font-weight: 700;color:#fff;}
    .wing_banner { display: none; }
    .visual {
        background: url('https://image.engineerlab.co.kr/data/www/engr/promotion/2026/exam_archive/m/bg.jpg')
            no-repeat center center / cover;
        aspect-ratio: 720/836;
    }

    /* 공통 */
    h2 { font-size: 22px; padding-bottom: 18px; word-break: keep-all; }
    h3 { font-size: 18px; padding-top: 18px; word-break: keep-all; }
    .inner { padding: 0 16px; }
    .sub_text { font-size: 13px; }
    .tab_panel { padding: 40px 0; }
    .img_box img { width: 100%; }

    /* 모바일 탭 전환 */
    .tab_list_pc { display: none !important; }
    .tab_list_mo { display: flex !important; }
    .tab_wrap .tab_list .tab_item p { font-size: 12px; line-height: 1.3; }
    .tab_wrap .tab_list .tab_item p strong { font-size: 13px; }
    .tab_wrap .tab_list .tab_item a { padding: 12px 4px; }

    /* 탭1 - 사전신청 폼 */
    .info_table { margin-top: 16px; }
    .info_table tr { grid-template-columns: 30% auto; gap: 4px; padding: 2px 0; }
    .info_table td { font-size: 14px; padding: 12px 0; border-width: 1px; }
    .info_table td:first-child{display:flex;justify-content: center;align-items: center;}
    .youtobe_wrap{flex-direction: column;}
    .youtube_sub_wrap{display:flex;gap:7px;}
    .info_table td:last-child {padding-left: 12px; display:flex;gap:5px;}
    .info_table td .icon_ch{width:10%;}
    .youtube_sub a.red{color:#dc1d00;}
    .info_table td a { 
        font-size: 14px; display: flex;
        gap: 3px;
        align-items: center;
    }
    .info_table label { font-size: 14px; display:flex;align-items: center; gap:2px;}
    .info_table input[type="radio"] { width: 16px; height: 16px; }
    .info_table input { font-size: 14px; }

    /* 버튼 */
    .btn_wrap { margin-top: 28px; }
    .btn_wrap a { padding: 14px 20px; gap: 8px; 
        border-radius: 60px; width: 100%;
        display: flex;
        justify-content: center;
        font-weight: 700;
    }
    .btn_wrap a .sub_text { font-size: 12px; padding: 4px 8px; color: #00bc3f; background: #fff; }
    .btn_wrap a .typo { font-size: 16px; font-weight: 700; }
    .cursor_wrap { right: 9px; }
    .cursor_wrap i { font-size: 20px; }
    .cursor_wrap img { width: 26px; bottom: -22px; right: -14px; }

    /* 개인정보 동의 */
    .agree_wrap { padding: 16px; margin-top: 18px; }
    .agree_wrap .agree label { font-size: 13px; }
    .agree_wrap_2 { margin-top: 30px; }

    /* 공지 섹션 */
    .notice_title { font-size: 14px; flex-wrap: wrap; gap: 6px; }
    .notice_badge { font-size: 12px; padding: 2px 8px; }
    .notice_list li { font-size: 13px;  }
    .notice_list li::before { margin-left: 2px;}
    .notice_list_2 li { font-size: 13px; }
    .benefit_sub_title { font-size: 14px; padding-top: 5px; }

    /* 탭2 - 기출 목록 (2열 유지) */
    .item_panel_2 .item_list ul { gap: 8px; }
    .item_panel_2 .item_list li {
        width: calc(50% - 4px);
        padding: 20px 0;
        height: auto;
    }
    .item_panel_2 .item_list li h4 { font-size: 15px; line-height: 1.4; }
    .item_panel_2 .item_list li p { font-size: 13px; padding: 10px 0; }
    .item_panel_2 .item_list li .btn_wrap {width:90%;}
    .item_panel_2 .item_list li .btn_wrap a { 
        padding: 10px 14px; border-radius: 40px; 
        display:flex;
        justify-content: center;
    }
    .item_panel_2 .item_list li .btn_wrap a .typo { font-size: 15px;font-weight: 700; }

    /* 탭3 - 복원 라이브 (좌우 유지, 비율만 조정) */
    .item_panel_3 { padding-bottom: 0; }
    .item_panel_3 .live_box {
        align-items: center; justify-content: space-between;
        margin-top: 20px;
    }
    .item_panel_3 .live_img { width: 75%; }
    .item_panel_3 .live_img img { width: 100%; }
    .item_panel_3 .live_info { margin-left: -57px; margin-top: -44px; gap: 10px; }
    .item_panel_3 .live_info .live_badge_red img { width: 90%; }
    .item_panel_3 .live_info .sub_text { font-size: 13px; line-height: 1.3; }
    .item_panel_3 .live_desc { font-size: 16px; line-height: 1.3; letter-spacing: -0.05em; }

    /* 탭4 - 복원 참여 버튼 그룹 */
    .item_panel_4 { margin-top: 0; }
    .live_btn_group { flex-direction: column; align-items: center; gap: 10px; }
    .live_btn_group .btn_wrap { width: 100%; margin-top: 0; }
    .live_btn_group .btn_wrap a { justify-content: center; padding: 14px 20px; width: 100%; }

    /* 탭5 - 롤링 리뷰 */
    .roll_review { padding: 30px 0; }
    .rv-item { width: 200px; }

    /* 마지막 섹션 */
    .item_panel_6 { padding: 40px 0; }
    .item_panel_6 .img_box { width: 100%; }
    .item_panel_6 .img_box img { width: 100%; }
    .item_panel_6 .img_box .sub_text { font-size: 12px; line-height: 1.6; }

    /* 상품 팝업 스크롤 */
    .item-popup-inner { width: 95vw; max-height: 80vh; }
    .item-popup-body {
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        padding: 16px 14px 20px;
    }
    .item-popup-body .item-table { min-width: 560px; }
    .scroll-hint-mo {
        display: block;
        text-align: center;
        font-size: 12px;
        color: #888;
        margin-bottom: 10px;
        padding: 5px 0;
        border-top: 1px solid #eee;
        border-bottom: 1px solid #eee;
    }
}