@charset "utf-8";

@media screen and (max-width: 1280px) {
    .inner { padding: 0 3rem; }   
    .slide-ctrl-bar { left: 14rem; }
    .card-box { gap: 2.4rem; }
    .sitemap-cols { grid-template-columns: repeat(3, 1fr); }
    .mega-row-line h4 span { display:block; }
}

@media screen and (max-width: 1024px) {
    /* intro */
    .header-inner {justify-content: center; flex-direction: column; align-items: center; gap:4rem} 
    .util-wrap {flex-direction: row;}
    .intro-content-wrap {padding: 23rem 0 15rem;}
    .intro-inner { padding:0 4.8rem; }  
    .btn-util { width:37.4rem; }
    

    /* main */
    .gnb { display: none; }
    .quick-menu { display: none; }
    .header-main .inner { height: 6rem; flex-direction: row-reverse; justify-content: space-between; }
    .logo { width: 29rem; height: 4rem; }
    .btn-hamburger span { background: #fff; }
    #header.is-scaled-header .header-top { display: none; }
    #header.is-scaled-header .header-main { height: 6rem; }
    #header.is-scaled-header .btn-hamburger .hamburger-line { stroke: var(--bk);}

    .slide-img { background-position: center top; }    
    .slide-ctrl-bar { left: 50%; transform:translateX(-50%); }
    .visual-bottom { height: 12.6rem; background: rgba(0,0,0,.35); overflow: hidden; }
    .visual-bottom .inner { padding: 0 2rem; }  

    .card-box { position: relative; }
    .card-item:not(.date-item) { display: none; }
    .card-item.date-item { width: calc(100% - 13rem); height: auto; padding: 0; }
    .btn-apply-wrap { position: absolute; right: 0; top: 50%; margin-left: 0; padding: 0; transform: translateY(-50%); }
    .card-item.date-item .top-lbl { font-size: 2rem; }
    .card-item.date-item .main-lbl { font-size: 3rem; }
    .btn-apply { width: 20.3rem; height: 6rem; font-size: 2rem; }

    .inner.narrow { margin:0 auto; padding:0 3rem; max-width:100%; }

    /* 학위과정 전공 */
    .section-major { padding: 9rem 0; }
    .section-title { margin-bottom: 6rem; font-size: 3.6rem; }
    .major-panel { display: flex; flex-direction: column; gap: 4.4rem; min-height: auto; background: none; box-shadow: none; border-radius: 0; overflow: visible; }
    .major-panel::before { display: none; }
    .major-row { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: hidden; border-radius: 2rem; background: url(../images/main/m_major_pannel_bg.jpg) no-repeat left -2rem top -19rem / 160%; }
    .major-row-bottom { background: url(../images/main/m_major_pannel_bg.jpg) no-repeat right -2rem top -19rem / 160%; }
    .major-row::before { content: ''; position: absolute; inset: 0; z-index: 0; background: rgba(0,0,0,0); }
    .major-active-box { display: none; }
    .major-item { min-height: 44.5rem; padding: 4.2rem 2rem 4rem; border: 0; border-radius: 0; background: none; overflow: hidden; transform: none; }
    .major-item::after { right: 0; top: 12rem; bottom: auto; height: 27rem; background: rgba(255,255,255,.34); }
    .major-item:nth-child(3n)::after { display: none; }
    .major-title,
    .major-item .major-group,
    .major-item .sub-list { position: relative; z-index: 1; }
    .major-item.active,
    .major-item.is-hover { margin: 0; background-color: transparent; transform: none; }
    .major-title { margin-bottom: 4.8rem; font-size: 2.5rem; }

    .major-name { font-size: 2rem; color: #ff7a00; }
    .major-item.active .major-name,
    .major-item.is-hover .major-name { color: #ff7a00; }
    .major-item dt + dt { margin-top: 2.4rem; }
    .major-item dt + dd { margin: 1rem 0 3rem; }
    .sub-list li a { font-size: 1.6rem; }

    /* 숫자로 증명하는 경쟁력 */
    .section-power { padding: 0; background: #fff; }
    .stats-card { max-width: none; padding: 0; border-radius: 0; background: transparent; box-shadow: none; }
    .stats-card .section-title { margin-bottom: 6rem; font-size: 3.6rem; line-height: 1.35; font-weight: 400; }
    .stats-card .section-title span { font-weight: 800; }
    .stats-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5.8rem 8rem; }
    .stats-item { flex-direction: column; align-items: center; justify-content: flex-start; text-align: center; }
    .stats-icon { flex: 0 0 10.7rem; width: 10.7rem; height: 10.7rem; margin: 0 0 2.4rem; }
    .stats-icon::before { width: 3.7rem; height: 3.7rem; }
    .stats-number-row { justify-content: center; gap: .7rem; min-height: 5.5rem; }
    .stats-number-row strong { font-size: 5.2rem; font-weight: 800; letter-spacing: -0.08rem; }
    .stats-prefix,
    .stats-suffix { font-size: 1.8rem; color: #8a8a8a; }
    .stats-text p { margin-top: .8rem; font-size: 1.8rem; line-height: 1.45; }
    .stats-date { display: none; }

    /* 공지사항 */
    .section-board { padding: 9rem 0; }
    .board-tabs { justify-content:center; gap: 3.8rem; overflow-x: auto; margin-bottom: 3.8rem; padding-bottom: 1.7rem; white-space: nowrap; }
    .board-tabs-indicator { bottom: 0; height: .3rem; }
    .board-tabs button { flex: 0 0 auto; font-size:2.4rem; }
    .board-more { width: 2.8rem; height: 2.8rem; }
    .board-more::after { width: 2.8rem; height: 2.8rem; }
    .notice-row { grid-template-columns: 8.8rem 7rem 1fr; min-height: 11.6rem; column-gap: 1.6rem; }
    .notice-row i { display: none; }
    .notice-row .date { text-align: center; }
    .notice-row .date b { color: #aaa; font-size: 3.8rem; font-weight: 300; }
    .notice-row .date em { color: #aaa; font-size: 1.55rem; }
    .notice-row .tag { padding: .65rem 1.8rem; border-radius: 2rem; font-size: 1.4rem; font-weight: 600; }
    .notice-row strong { font-size: 1.6rem; line-height: 1.45; white-space: normal; }
    .notice-row.no-tag strong,
    .notice-row:not(:has(.tag)) strong { grid-column: 2 / 4; }
    .schedule-box { grid-template-columns: 1fr; border-color: #ccc; border-radius: 2rem; }
    .schedule-date { gap: 0; min-height: 11.8rem; position:relative; }
    .schedule-date a { margin-bottom: 0; position:absolute; left:50%; transform: translateX(-230%); } 
    .schedule-date b { font-size: 5rem; }
    .schedule-date em { align-self: center; margin-top: .5rem; font-size: 1.6rem; }
    .schedule-box ul { grid-template-columns: repeat(2, minmax(0, 1fr));}
    .schedule-box li { margin:5rem 0; }
    .schedule-box li:nth-child(2n) { border-right: 0; }
    .schedule-box li:nth-last-child(-n+2) { border-bottom: 0; }
    .schedule-box li a { padding: 1.4rem 6.4rem; }
    .schedule-box li span { font-size: 2.4rem; }
    .schedule-box li strong { margin-top: 2.1rem; font-size: 2.6rem; }

    /*듀이카선배들의합격수기*/
    .section-review { padding: 9rem 0; background: linear-gradient(120deg, #f47745 0%, #fac524 100%); } 
    .section-review::before { top:-7rem;}   
    .review-list { margin: 0 -.9rem; padding-bottom: 8.8rem; }
    .review-list:not(.slick-initialized) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.8rem; margin: 0; padding-bottom: 0; }
    .review-list .slick-list { overflow: hidden; }
    .review-list .slick-track { align-items: stretch; }
    .review-list .slick-slide { padding: 0 .9rem; }
    .review-list .slick-slide > div { height: auto; }
    .review-list .review-page { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem; }
    .review-slide { height: auto; }
    .review-list .review-page .review-slide { height: 100%; min-width: 0; }
    .review-list .review-page .review-card { height: 100%; }
    .review-slide .review-card { display: block !important; width: 100%; min-height: 38.6rem; height: auto; padding: 4rem 3.6rem; border-radius: 2rem; background: #fff; box-shadow: none; white-space: normal; }
    .review-card strong { display: block; color: #f15a24; font-size: 2.4rem; font-weight: 800; line-height: 1.35; white-space: normal; }
    .review-card p { display: -webkit-box; height: auto; margin-top: 2.2rem; color: #555; font-size: 2rem; line-height: 1.6; white-space: normal; word-break: keep-all; -webkit-line-clamp: 4; -webkit-box-orient: vertical; }
    .review-card::after,
    .review-card-image { right: -5rem; bottom: -4rem; width: 20rem; height: 20rem; opacity: .9; }
    .review-arrow { top: auto; bottom: 0; width: 6rem; height: 3rem; border: 0; transform: none; }
    .review-prev { left: calc(50% - 9rem); background:url(../images/main/m_slider_arrow_right.svg) no-repeat center / 100% auto; }
    .review-next { right: calc(50% - 9rem); background:url(../images/main/m_slider_arrow_left.svg) no-repeat center / 100% auto; }
    
    .section-media { padding: 9rem 0; }    
    .media-grid { grid-template-columns: 1fr 1fr; gap:3rem; }
    .media-main { grid-column: 1 / span 2; }

    .site-footer { height: auto; }
    .footer-links a { font-size: 1.4rem; }
    .footer-links a + a::before { height: 1.4rem; background: #5a5a5a; }
    .footer-agency { font-size: 1.4rem; }
    .footer-logo { width: 30rem; height: 3.7rem; margin-bottom:1rem; }
    .footer-info p { font-size: 1.5rem; line-height: 1.6; }
    .footer-info p span { margin-left: 1.4rem; }
    .family-site { height: 4.5rem; right:3rem; }

    @supports (width: clamp(1rem, 1vw, 2rem)) { 
        /* 인트로 */
        .intro-card .card-title { font-size: clamp(3.2rem, 1.9271vw, 3.7rem); margin-bottom: clamp(2.4rem, 1.5625vw, 3rem); }
        .card-desc-list li { font-size: clamp(1.5rem, 0.9375vw, 1.8rem); }
        .card-inner { padding: clamp(3.2rem, 2.5vw, 4.8rem) clamp(2.4rem, 2.5vw, 4.8rem); }

         /* main */   
        .logo { width: clamp(22rem, 28.3203vw, 29rem); height: clamp(3rem, 3.9063vw, 4rem); } 
        .inner.narrow { padding: 0 clamp(1.5rem, 2.9297vw, 3rem); }

        /* visual */        
        .visual-bottom { height: clamp(10rem, 6.5625vw, 12.6rem); }    
        .card-item.date-item .top-lbl { font-size: clamp(1.4rem, 1.9531vw, 2rem); }
        .card-item.date-item .main-lbl { font-size: clamp(2rem, 2.9297vw, 3rem); }
        .btn-apply { width: clamp(16.5rem, 10.5729vw, 20.3rem); height: clamp(5rem, 3.125vw, 6rem); font-size: clamp(1.6rem, 1.0417vw, 2rem); }
    
        /* 학위과정 전공 */
        .section-major { padding: clamp(5rem, 8.7891vw, 9rem) 0; }
        .section-title, 
        .stats-card .section-title { margin-bottom: clamp(2rem, 2.9297vw, 3rem); font-size: clamp(2.8rem, 3.5156vw, 3.6rem); }
        .major-title { margin-bottom: clamp(3.2rem, 4.6875vw, 4.8rem); font-size: clamp(2rem, 2.4414vw, 2.5rem); }
        .major-name { font-size: clamp(1.6rem, 1.9531vw, 2rem); }
        .sub-list li a { font-size: clamp(1.4rem, 1.5625vw, 1.6rem); }
        .major-item dt + dd { margin: clamp(0.9rem, 0.9766vw, 1rem) 0 clamp(2.4rem, 2.9297vw, 3rem); }
        .major-item::after { top: clamp(10rem, 11.7188vw, 12rem); height: clamp(24rem, 26.3672vw, 27rem); }

        /* 숫자로 증명하는 경쟁력 */
        .stats-number-row strong { font-size: clamp(3.6rem, 5.0781vw, 5.2rem); }
        .stats-icon { flex-basis: clamp(8rem, 10.4492vw, 10.7rem); width: clamp(8rem, 10.4492vw, 10.7rem); height: clamp(8rem, 10.4492vw, 10.7rem); margin: 0 0 clamp(1.5rem, 2.0508vw, 2.1rem); }
        .stats-icon::before { width: clamp(2.8rem, 3.6133vw, 3.7rem); height: clamp(2.8rem, 3.6133vw, 3.7rem); }
        .stats-prefix, .stats-suffix { font-size: clamp(1.5rem, 1.7578vw, 1.8rem); }
        .stats-number-row { gap: clamp(0.3rem, 0.3906vw, 0.4rem); min-height: clamp(4rem, 4.8828vw, 5rem); }
        .stats-text p { font-size: clamp(1.4rem, 3.7vw, 1.8rem); }

        /* 공지사항 */
        .board-tabs button { font-size: clamp(1.8rem, 2.3438vw, 2.4rem); }
        .board-more,
        .board-more::after { width: clamp(2.2rem, 2.7344vw, 2.8rem); height: clamp(2.2rem, 2.7344vw, 2.8rem); }
        .board-tabs { gap: clamp(2.4rem, 2.7344vw, 2.8rem); margin-bottom: clamp(2.8rem, 3.3203vw, 3.4rem); padding-bottom: clamp(1.2rem, 1.3672vw, 1.4rem); }
        .notice-row { grid-template-columns: clamp(7.8rem, 8.5938vw, 8.8rem) clamp(6.2rem, 6.8359vw, 7rem) 1fr; min-height: clamp(10rem, 11.3281vw, 11.6rem); column-gap: clamp(1.4rem, 1.5625vw, 1.6rem); }
        .notice-row .date b { font-size: clamp(3rem, 3.7109vw, 3.8rem); }
        .notice-row .date em { font-size: clamp(1.3rem, 1.5137vw, 1.55rem); }    
        
        /*듀이카 선배들의 합격수기*/
        .review-card::after,
        .review-card-image {  right: clamp(-5rem, -4.8828vw, -3rem); bottom: clamp(-4rem, -3.9063vw, -2.4rem); width: clamp(14rem, 19.5313vw, 20rem); height: clamp(14rem, 19.5313vw, 20rem); }

    } 
}

@media screen and (max-width: 900px) {
    /* 인트로 */
    .util-wrap {flex-direction: column; }
    .intro-content-wrap {padding: 26rem 0 15rem; } 
    .card-grid-wrap { grid-template-columns:repeat(1, 1fr); }
    .card-inner { padding:4.8rem;}
    .intro-card .card-title { font-size: 4rem; }
    .card-desc-list li { font-size: 2rem; }

    /* 메인 */   
    .major-row { background-position: left top; }
    .major-row:last-child { background-position:top right; }
    .family-site { top:4.7rem; right:3rem; }  
}

@media screen and (max-width: 768px) {
    .inner { padding: 0 1.8rem; }    
    .header-top .inner { padding: 0 1.2rem; }
    .top-links li { padding: 0 .6rem; }
    .top-links a { font-size: .95rem; }
    .header-main { height: 5.6rem; }        

    .main-visual { height: 88vh; min-height: 56rem; }
    .main-visual::after { background: linear-gradient(to bottom, rgba(0,0,0,.18), rgba(0,0,0,.02) 45%, rgba(0,0,0,.42)); }
    .slide-img { background-size: auto 100%; background-position: center top; }
    .visual-bottom { height: 6.5rem; }
    .visual-bottom .inner { padding: 0 1.8rem; }

    .section-title { font-size:2.8rem; }

    .section-board { padding: 5rem 0; }

    .stats-card { padding: 0; border-radius: 0; }    
    .stats-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5rem 3.2rem; }
    .stats-item { align-items: center; }

    .section-review { padding: 4.5rem 0; }   
    .section-review::before { top: -17rem; }
    .review-list { margin: 0 -.8rem; padding-bottom: 7.2rem; }
    .review-list:not(.slick-initialized) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.6rem; margin: 0; padding-bottom: 0; }
    .review-list .slick-slide { padding: 0 .8rem; }   
    .review-card { min-height: 34rem; padding: 3.4rem 2.8rem; border-radius: 1.8rem; }
    .review-card strong { font-size: clamp(1.8rem, 4.8vw, 2.4rem); }
    .review-card p { height: auto; font-size: clamp(1.45rem, 3.9vw, 2rem); }   
    .review-arrow { width: 5.4rem; height: 2.8rem; }
    .review-prev { left: calc(50% - 7.4rem); }
    .review-next { right: calc(50% - 7.4rem); }
    .review-prev:hover { transform: translateX(-.5rem); }
    .review-next:hover { transform: translateX(.5rem); }

    .schedule-box li { margin: 2.5rem 0; }

    .section-media { padding: 5rem 0; }
    .media-sns { margin: -1.2rem 0 2.6rem; }
    .media-grid { gap: 2.97rem; }
    .media-grid a.media-main { min-width: 0; }
    .media-grid a { border-radius: .4rem; }
    .media-grid strong { left: 1.4rem; right: 1.4rem; bottom: 1.4rem; font-size: 1.2rem; }    
    .media-main span { width: 4.8rem; height: 4.8rem; }

    .footer-links { gap: .8rem 0; }
    .footer-links a { padding: 0 1.5rem; font-size: 1.3rem; }
    .footer-links a:first-child { padding-left: 0; }
    .footer-logo { width: 28rem; height: 3.5rem; margin-bottom: 2.4rem; }
    .footer-agency { font-size: 1.3rem; margin-bottom: .8rem;}
    .footer-info p { font-size: 1.35rem; }  
    .footer-info p span { display:block; margin-left:0; }

    .sitemap-layer { display: none !important; }
    .mobile-menu-head { height: 8.5rem; }
    .mobile-menu-head h2 { width: 29rem; max-width: calc(100% - 10rem); }
    .mobile-menu-body { grid-template-columns: 32.8vw 1fr; height: calc(100vh - 8.5rem); }
    .mobile-depth1 { padding-top: 3rem; }
    .mobile-depth1 button { padding: 1.65rem 1.7rem; font-size: clamp(1.8rem, 4.3vw, 2.6rem); }
    .m-acc > button { padding: 2.2rem 5rem 2.2rem 2.8rem; font-size: clamp(1.8rem, 4.1vw, 2.4rem); }
    .m-acc > button span { display: block; margin-top: .2rem; font-size: 1.15rem; }
    .m-acc li a { font-size: clamp(1.35rem, 3.6vw, 1.9rem); }

    @supports (width: clamp(1rem, 1vw, 2rem)) {

        .review-list .review-page,
        .media-grid { gap: clamp(2rem, 3.8672vw, 2.97rem); } 
    }
    
}

@media screen and (max-width: 480px) {
    /*인트로*/
    #header.intro-header { padding:4rem 4.8rem; }
    .header-inner {justify-content: center; flex-direction: column; align-items: center; gap:4rem} 
    .logo a.visual { background:url(../images/main/logo_wh.png) no-repeat center / contain; }
    .intro-content-wrap {padding: 26rem 0 5rem;}
    .intro-inner { padding:0 4.8rem; }  
    .util-wrap,
    .btn-util { width:100%; }

    .title-group .sub-title,
    .title-group .main-title { font-size: 4.3rem; }
    .header-inner .logo { width: 100%; height: 5rem; }
    .intro-footer .inner { grid-template-columns: minmax(0, 1fr) auto;  width: 100%; gap:2rem 0; }

    /* 메인 */
    .inner.narrow { padding:0 1.5rem; }

    /* visual */
    .card-box .r-area .card-item,
    .card-item.date-item::before { display:none;  }
    .card-item.date-item .top-lbl { font-size:1.2rem; } 
    .card-item.date-item .main-lbl { font-size:1.5rem; }
    .btn-apply { width:13rem; height:3.4rem; font-size:1.2rem; }

    .stats-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4.6rem 2.4rem; }
    .stats-icon { flex-basis: 8.8rem; width: 8.8rem; height: 8.8rem; margin-bottom: 1.8rem; }
    .stats-icon::before { width: 3.1rem; height: 3.1rem; }
    .stats-number-row strong { font-size: 3.6rem; }
    .stats-prefix,
    .stats-suffix { font-size: 1.25rem; }
    .stats-text p { font-size: 1.25rem; }
   
    
    .section-review .section-title { margin-bottom: 5rem; }
    .review-list { margin: 0 -.6rem; }
    .review-list .slick-slide { padding: 0 .6rem; }
    .review-list .review-page { grid-template-columns: 1fr; }
    .review-card { min-height: 28rem; padding: 2.8rem 2rem; border-radius: 1.6rem; }
    .review-card p { margin-top: 1.6rem; }  

    /*학위과정전공*/
    .major-title { margin-bottom:3rem; font-size:1.8rem; }
    .major-row-bottom .major-item:nth-child(2) .major-title::after, 
    .major-row-bottom .major-item:nth-child(3) .major-title::after { font-size:1.1rem; }
    .major-item { min-height: 30rem; padding: 3rem 1.2rem; }      
    .major-item::after { top:8rem; height:24rem; }

    /*공지사항*/
    .board-tabs { gap: 1.5rem; }
    .board-tabs button { font-size: 1.6rem; }
    .board-more, .board-more::after { width:1.6rem; height:1.6rem; }
    .notice-row { grid-template-columns: 6rem 5rem 1fr; column-gap: .9rem; }
    .notice-row .date b { font-size: 3rem; }
    .notice-row .date em { font-size: 1.05rem; }
    .notice-row .tag { padding: .45rem 1.1rem; font-size: 1.05rem; }
    .notice-row strong { font-size: 1.25rem; }
    .schedule-date { min-height: 8.8rem; }
    .schedule-date b { font-size: 3.8rem; }    
    .schedule-box li a { padding: 1rem 3rem; }
    .schedule-box li span { font-size: 1.55rem; }
    .schedule-box li strong { font-size: 1.7rem; }    

    .footer-links a { padding: 0 1.1rem; font-size: 1.2rem; }
    .footer-logo { width: 24rem; height: 3.1rem; margin-bottom: 2rem; }
    .footer-agency,
    .footer-info p { font-size: 1.2rem; }
    .family-site { width:calc(100% - 3.6rem); top:initial; bottom:0; left:1.8rem;}
    
    .site-footer .inner { padding-bottom:5.5rem; }

    @supports (width: clamp(1rem, 1vw, 2rem)) {
        /*인트로*/
        .title-group .sub-title,
        .title-group .main-title { font-size: clamp(3rem, 8.9583vw, 4.3rem); } 

        /*메인*/

        /*학위과정전공*/
        .major-title { margin-bottom: clamp(2rem, 6.25vw, 3rem); font-size: clamp(1.5rem, 3.75vw, 1.8rem); }
        .major-row-bottom .major-item:nth-child(2) .major-title::after, 
        .major-row-bottom .major-item:nth-child(3) .major-title::after { font-size: clamp(1rem, 2.2917vw, 1.1rem); }
        .major-item { min-height: clamp(24rem, 62.5vw, 30rem); padding: clamp(2rem, 6.25vw, 3rem) clamp(1rem, 2.5vw, 1.2rem); }
        .major-item::after { top: clamp(6rem, 16.6667vw, 8rem); height: clamp(18rem, 50vw, 24rem); }

        /*공지사항*/
        .board-tabs { gap: clamp(1rem, 3.125vw, 1.5rem); }
        .board-tabs button { font-size: clamp(1.4rem, 3.3333vw, 1.6rem); }
        .board-more,
        .board-more::after { width: clamp(1.3rem, 3.3333vw, 1.6rem); height: clamp(1.3rem, 3.3333vw, 1.6rem); }
    }

}

@media screen and (max-width: 420px) {
    /*인트로*/
    #header.intro-header { padding: 4rem 3rem; }
    .header-inner .logo { height: 4.4rem; }
    .intro-inner { padding: 0 3rem; }
    .title-group .sub-title,
    .title-group .main-title { font-size:4rem; }
    .intro-card .card-title { font-size: 3rem; }
    .card-desc-list li { font-size: 1.8rem; }
    .footer-links a { padding: 0 .7rem; font-size: 1.1rem; }

    .main-visual { height: 84vh; min-height: 52rem; }
    .card-item.date-item .main-lbl { font-size: 1.45rem; }
    .btn-apply { width: 11.2rem; font-size: 1rem; }
    .mobile-menu-head { height: 7.4rem; }
    .mobile-menu-body { height: calc(100vh - 7.4rem); }
    .mobile-depth1 button { padding: 1.48rem 1.3rem; }
    .m-acc > button { padding: 1.9rem 4.4rem 1.9rem 2rem; }
    .m-acc ul,
    .m-acc.active ul { padding-left: 2rem; padding-right: 2rem; }  
    
    .stats-icon { flex-basis: 8rem; width: 8rem; height: 8rem; margin-bottom: 1.5rem; }
    .stats-number-row strong { font-size: 3rem; }

    @supports (width: clamp(1rem, 1vw, 2rem)) {
        .title-group .sub-title,
        .title-group .main-title { font-size: clamp(3.2rem, 9.5238vw, 4rem); } 
        .footer-links a { padding: 0 clamp(0.5rem, 0.3646vw, 0.7rem); font-size: clamp(1.05rem, 0.5729vw, 1.1rem); }
        .stats-icon { flex-basis: clamp(6.4rem, 16.6667vw, 8rem); width: clamp(6.4rem, 16.6667vw, 8rem); height: clamp(6.4rem, 16.6667vw, 8rem); margin-bottom: clamp(1rem, 3.125vw, 1.5rem); }
        .stats-number-row strong { font-size: clamp(2.4rem, 7.1429vw, 3rem); }
    }

}

@media screen and (max-width: 419px) {
    .major-title { margin-bottom:2rem; font-size: 1.5rem; }
    .major-name { font-size:1.3rem; }
    .sub-list li a { font-size:1.2rem; }
    .major-row-bottom .major-item:nth-child(2) .major-title::after, 
    .major-row-bottom .major-item:nth-child(3) .major-title::after { font-size:.9rem}
    .major-item { min-height: 20rem; padding: 2rem 1rem; }

    .schedule-box li a { padding: 1rem 2rem; }
    .schedule-box li span { font-size: 1.5rem; }
    .schedule-box li strong { margin-top: 2.1rem; font-size: 2.6rem; }

    /*sns*/
    .media-grid { grid-template-columns: 1fr; gap: 3rem; }
    .media-grid > a,
    .media-grid > .media-main { grid-column: auto; width: 100%; }

    @supports (width: clamp(1rem, 1vw, 2rem)) {
        .schedule-box li span { font-size: clamp(1.2rem, 3.9024vw, 1.5rem); }

        .schedule-box li strong { margin-top: clamp(1.5rem, 3.9024vw, 2.1rem);  font-size: clamp(1.6rem, 3.9024vw, 2.6rem); }
    }
}

/* 전공안내 */
@media screen and (max-width: 1280px) {
    body.major-sub .career-grid { grid-template-columns:repeat(3, 1fr); }
}

@media screen and (max-width: 1024px) {
    body.major-sub .header-main,
    body.major-sub .header-main .inner,
    body.major-sub .gnb-list > li { height:6rem; }
    body.major-sub .content { padding-top:6rem; }
    body.major-sub .major-guide { height:24rem; }
    body.major-sub .intro-block { grid-template-columns:1fr; }
    body.major-sub .intro-copy { text-align:center; }
    body.major-sub .button-row { justify-content:center; }
    body.major-sub .reason-grid { grid-template-columns:repeat(2, 1fr); }
    body.major-sub .license-grid { grid-template-columns:1fr; }
}

@media screen and (max-width: 768px) {
    body.major-sub .header-main .inner,
    body.major-sub .major-inner { padding:0 2rem; }
    body.major-sub .major-guide h2 { font-size:3rem; }
    body.major-sub .major-guide p { font-size:1.6rem; }
    body.major-sub .major-tabs { margin:4.5rem auto; }
    body.major-sub .major-tabs button { font-size:1.55rem; }
    body.major-sub .intro-copy h3,
    body.major-sub .section-title { font-size:2.4rem; }
    body.major-sub .button-row,
    body.major-sub .bottom-actions { flex-direction:column; }
    body.major-sub .line-btn,
    body.major-sub .bottom-actions .line-btn,
    body.major-sub .more-btn { width:100%; min-width:0; height:5.6rem; }
    body.major-sub .section-band,
    body.major-sub .section-white { padding:5rem 0; }
    body.major-sub .reason-grid,
    body.major-sub .career-grid { grid-template-columns:1fr; }
    body.major-sub .reason-card { min-height:auto; }
    body.major-sub .status-table li { grid-template-columns:1fr; gap:.6rem; padding:1.8rem 0; }
    body.major-sub .license-card { padding:2.4rem; }
    body.major-sub .course-section { margin-bottom:6rem; }
    body.major-sub .course-section h3 { font-size:2.4rem; }
    body.major-sub .course-table-wrap { overflow-x:auto; }
    body.major-sub .course-table { min-width:76rem; }
}
