@charset "UTF-8";

/* ============================================================
   CM TECH (씨엠텍) Main Renewal Stylesheet
   Version: 2026-04-24
   Benchmark: Hyundai Mobis (www.mobis.com)
   ============================================================ */

/* =========== CSS Variables =========== */
:root{
    --c-primary: #1D5FE0;
    --c-primary-dark: #0B3FA8;
    --c-accent: #38BDF8;
    --c-ink: #0F1B33;
    --c-blue: #002C5F;
    --c-blue2: #1A3990;
    --c-black: #111;
    --c-gray0: #222;
    --c-gray1: #666;
    --c-gray2: #8E8E8E;
    --c-gray3: #B5B5B5;
    --c-gray4: #DDD;
    --c-gray5: #F0F0F0;
    --c-gray6: #F7F7F7;
    --c-white: #fff;
    --c-light: rgba(255,255,255,.6);
    --font-kr: 'Pretendard', -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
    --font-en: 'Pretendard', 'Inter', -apple-system, sans-serif;
    --hd-height: 90px;
}

/* =========== Reset =========== */
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{width:100%;margin:0;padding:0;overflow-x:hidden;}
html,body{width:100%;margin:0;padding:0;font-family:var(--font-kr);font-size:16px;color:var(--c-black);line-height:1.5;-webkit-text-size-adjust:100%;}
body{overflow-x:hidden;}
body#main, body.main-page{overflow-x:hidden;}
.wrap{width:100%;max-width:100%;overflow-x:hidden;}

/* ===== 기존 레거시 CSS 리셋 (cmtech v3 잔존 방지) ===== */
body.fp-viewing, body.fp-responsive{height:auto !important;overflow:auto !important;}
.fp-tableCell, .fp-slidesContainer, .fp-slides{height:auto !important;}
#fullpage, main#fullpage{height:auto !important;overflow:visible !important;}
#fullpage .section{height:auto !important;position:relative !important;}
.sec_visual, .sec_product, .sec_rnd, .sec_factory, .sec_company{display:none;}
body.hidden{overflow:hidden;}
h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,figure,figcaption,blockquote{margin:0;padding:0;}
ul,ol,li{list-style:none;}
a{color:inherit;text-decoration:none;}
a:hover,a:focus{text-decoration:none;}
button{background:none;border:0;cursor:pointer;font-family:inherit;padding:0;color:inherit;}
img{max-width:100%;vertical-align:middle;border:0;}
input,select,textarea,button{font-family:inherit;font-size:inherit;color:inherit;outline:none;}
address,em,i{font-style:normal;}
table{border-collapse:collapse;border-spacing:0;width:100%;}
video{max-width:100%;}
section{position:relative;}

/* =========== Accessibility =========== */
.blind{position:absolute;overflow:hidden;clip:rect(0,0,0,0);width:1px;height:1px;margin:-1px;padding:0;border:0;}
#skipNav{position:absolute;top:0;left:0;width:100%;z-index:9999;}
#skipNav a{position:absolute;left:50%;top:-100px;transform:translateX(-50%);background:#000;color:#fff;padding:10px 20px;font-size:14px;}
#skipNav a:focus{top:10px;}

/* =========== Typography =========== */
.tit01{font-size:72px;line-height:1.15;letter-spacing:-.03em;}
.tit02{font-size:56px;line-height:1.2;letter-spacing:-.03em;}
.tit03{font-size:48px;line-height:1.25;letter-spacing:-.02em;}
.tit04{font-size:36px;line-height:1.3;letter-spacing:-.02em;}
.tit05{font-size:28px;line-height:1.35;letter-spacing:-.02em;}
.tit06{font-size:24px;line-height:1.4;letter-spacing:-.02em;}
.tit07{font-size:20px;line-height:1.45;letter-spacing:-.01em;}
.txt01{font-size:16px;line-height:1.6;letter-spacing:-.01em;}
.txt02{font-size:14px;line-height:1.6;letter-spacing:-.01em;}
.b{font-weight:600;}
.bb{font-weight:700;}
.n{font-weight:400;}
.font-en{font-family:var(--font-en);letter-spacing:0;}
.c-red{color:var(--c-primary);}
.c-white{color:#fff;}
.c-light{color:rgba(255,255,255,.7);}
.c-gray2{color:var(--c-gray2);}
.text-c{text-align:center;}
.text-r{text-align:right;}
.mgt12{margin-top:12px;}
.mgt24{margin-top:24px;}
.mgt36{margin-top:36px;}
.mgt48{margin-top:48px;}
.pdb0{padding-bottom:0 !important;}
.pd0{padding:0 !important;}
.flex{display:flex;}
.flex.space{justify-content:space-between;align-items:center;}

/* =========== Icons =========== */
.ico{display:inline-block;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:contain;}
.ico-h{display:inline-block;width:24px;height:24px;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:contain;}
.ico-plus{position:relative;width:14px;height:14px;display:inline-block;}
.ico-plus:before,.ico-plus:after{content:"";position:absolute;top:50%;left:0;width:100%;height:2px;background:currentColor;transform:translateY(-50%);}
.ico-plus:after{transform:translate(0,-50%) rotate(90deg);}
.ico-plus-g:before,.ico-plus-g:after{background:#aaa;}
.ico-close{position:relative;width:18px;height:18px;display:inline-block;}
.ico-close:before,.ico-close:after{content:"";position:absolute;top:50%;left:0;width:100%;height:2px;background:currentColor;}
.ico-close:before{transform:rotate(45deg);}
.ico-close:after{transform:rotate(-45deg);}
.ico-slider-prev,.ico-slider-next{width:18px;height:18px;display:inline-block;position:relative;}
.ico-slider-prev:before,.ico-slider-next:before{content:"";position:absolute;top:50%;left:50%;width:12px;height:12px;border-top:2px solid currentColor;border-right:2px solid currentColor;}
.ico-slider-prev:before{transform:translate(-40%,-50%) rotate(-135deg);}
.ico-slider-next:before{transform:translate(-60%,-50%) rotate(45deg);}
.ico-play-w,.ico-pause-w{width:14px;height:14px;display:inline-block;position:relative;}
.ico-play-w:before{content:"";position:absolute;left:50%;top:50%;border-left:10px solid #fff;border-top:6px solid transparent;border-bottom:6px solid transparent;transform:translate(-50%,-50%);}
.ico-pause-w:before,.ico-pause-w:after{content:"";position:absolute;top:50%;width:3px;height:12px;background:#fff;transform:translateY(-50%);}
.ico-pause-w:before{left:2px;}
.ico-pause-w:after{right:2px;}
.ico-lang{width:22px;height:22px;border:2px solid currentColor;border-radius:50%;position:relative;}
.ico-lang:before{content:"";position:absolute;top:50%;left:-2px;right:-2px;height:2px;background:currentColor;transform:translateY(-50%);}
.ico-lang:after{content:"";position:absolute;top:-2px;bottom:-2px;left:50%;width:2px;background:currentColor;transform:translateX(-50%);}
.h-ico-search{width:22px;height:22px;position:relative;}
.h-ico-search:before{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border:2px solid currentColor;border-radius:50%;}
.h-ico-search:after{content:"";position:absolute;bottom:2px;right:2px;width:7px;height:2px;background:currentColor;transform:rotate(45deg);transform-origin:right center;}
.ico-search-lg{width:28px;height:28px;position:relative;}
.ico-search-lg:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border:2px solid currentColor;border-radius:50%;}
.ico-search-lg:after{content:"";position:absolute;bottom:3px;right:2px;width:9px;height:2px;background:currentColor;transform:rotate(45deg);transform-origin:right center;}
.ico-input-delete{width:16px;height:16px;border-radius:50%;background:#ccc;position:relative;}
.ico-input-delete:before,.ico-input-delete:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:2px;background:#fff;}
.ico-input-delete:before{transform:translate(-50%,-50%) rotate(45deg);}
.ico-input-delete:after{transform:translate(-50%,-50%) rotate(-45deg);}
.ico-top{width:24px;height:24px;position:relative;}
.ico-top:before{content:"";position:absolute;top:45%;left:50%;width:12px;height:12px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translate(-50%,-50%) rotate(-45deg);}

.arrow-btn{display:inline-flex;justify-content:center;align-items:center;width:48px;height:48px;border:1px solid var(--c-gray3);border-radius:50%;transition:all .3s;}
.arrow-btn .arrow-motion{display:block;width:14px;height:14px;position:relative;}
.arrow-btn .arrow-motion:before{content:"";position:absolute;top:50%;left:0;width:100%;height:2px;background:var(--c-black);transform:translateY(-50%);}
.arrow-btn .arrow-motion:after{content:"";position:absolute;top:50%;right:0;width:8px;height:8px;border-top:2px solid var(--c-black);border-right:2px solid var(--c-black);transform:translateY(-50%) rotate(45deg);}
a:hover .arrow-btn{background:var(--c-primary);border-color:var(--c-primary);}
a:hover .arrow-btn .arrow-motion:before,
a:hover .arrow-btn .arrow-motion:after{border-color:#fff;background:#fff;}
.arrow-btn-circle{display:inline-flex;justify-content:center;align-items:center;width:80px;height:80px;border:1px solid #fff;border-radius:50%;position:relative;transition:all .3s;}
.arrow-btn-circle:before{content:"";width:16px;height:16px;border-top:2px solid #fff;border-right:2px solid #fff;transform:translateX(-4px) rotate(45deg);}
.arrow-btn-circle:hover{background:#fff;}
.arrow-btn-circle:hover:before{border-color:var(--c-black);}

/* =========== Button =========== */
.btn{display:inline-flex;justify-content:center;align-items:center;min-width:180px;height:56px;padding:0 28px;font-size:16px;letter-spacing:-.01em;border-radius:30px;transition:all .3s;font-weight:500;}
.btn-line-w{border:1px solid rgba(255,255,255,.7);color:#fff;}
.btn-line-w:hover{background:#fff;color:var(--c-black);border-color:#fff;}
.btn-line-b{border:1px solid var(--c-black);color:var(--c-black);}
.btn-line-b:hover{background:var(--c-black);color:#fff;}
.btn-border-o{display:inline-flex;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.6);font-size:15px;color:#fff;}

/* =========== Header =========== */
#site-header{position:fixed;top:0;left:0;width:100%;height:var(--hd-height);background:transparent;z-index:100;transition:all .35s;}
#site-header .h-inner{display:flex;align-items:center;height:100%;padding:0 48px;gap:48px;}
#site-header .logo{flex-shrink:0;}
#site-header .logo a{display:flex;align-items:center;height:60px;color:#fff;}
#site-header .logo a .logo-ci{height:56px;width:auto;filter:brightness(0) invert(1);transition:filter .35s;}
body.sub_page #site-header,
#site-header.on{background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.05);}
body.sub_page #site-header .logo a,
#site-header.on .logo a{color:var(--c-black);}
body.sub_page #site-header .logo a .logo-ci,
#site-header.on .logo a .logo-ci{filter:none;}

/* GNB List (1depth) */
#site-header .gnb-wrap{position:relative;display:flex;flex:1;justify-content:center;}
#site-header .gnb-list{display:flex;gap:56px;}
#site-header .gnb-item > .h-depth1{display:inline-block;padding:34px 0;font-size:17px;font-weight:600;color:#fff;transition:color .25s;position:relative;}
#site-header .gnb-item > .h-depth1:after{content:"";position:absolute;left:0;right:0;bottom:24px;height:2px;background:var(--c-primary);transform:scaleX(0);transform-origin:center;transition:transform .3s;}
body.sub_page #site-header .gnb-item > .h-depth1,
#site-header.on .gnb-item > .h-depth1{color:var(--c-black);}
#site-header .gnb-item:hover > .h-depth1{color:var(--c-primary);}
#site-header .gnb-item:hover > .h-depth1:after{transform:scaleX(1);}

/* GNB Mega Menu (Mobis 스타일 통합 드롭다운 + 호버 모션 강화) */
.gnb-mega-menu{position:fixed;top:var(--hd-height);left:0;right:0;width:100%;background:#fff;border-top:1px solid var(--c-gray5);box-shadow:0 8px 30px rgba(0,0,0,.06);padding:50px 48px 60px;visibility:hidden;opacity:0;transform:translateY(-8px);transition:visibility 0s linear .25s, opacity .25s ease, transform .25s ease;z-index:99;}
.gnb-wrap:hover .gnb-mega-menu,
.gnb-mega-menu:hover{visibility:visible;opacity:1;transform:translateY(0);transition-delay:0s;}
.gnb-mega-menu .mega-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr);gap:20px;}

/* 메가 컬럼: 카드형 + staggered 등장 */
.gnb-mega-menu .mega-col{
    position:relative;
    padding:20px 22px 24px;
    border-radius:8px;
    opacity:0;
    transform:translateY(16px);
    transition:opacity .45s ease, transform .45s ease, background .3s ease;
}
.gnb-wrap:hover .gnb-mega-menu .mega-col,
.gnb-mega-menu:hover .mega-col{
    opacity:1;
    transform:translateY(0);
}
.gnb-wrap:hover .gnb-mega-menu .mega-col:nth-child(1),
.gnb-mega-menu:hover .mega-col:nth-child(1){transition-delay:.05s;}
.gnb-wrap:hover .gnb-mega-menu .mega-col:nth-child(2),
.gnb-mega-menu:hover .mega-col:nth-child(2){transition-delay:.10s;}
.gnb-wrap:hover .gnb-mega-menu .mega-col:nth-child(3),
.gnb-mega-menu:hover .mega-col:nth-child(3){transition-delay:.15s;}
.gnb-wrap:hover .gnb-mega-menu .mega-col:nth-child(4),
.gnb-mega-menu:hover .mega-col:nth-child(4){transition-delay:.20s;}
.gnb-wrap:hover .gnb-mega-menu .mega-col:nth-child(5),
.gnb-mega-menu:hover .mega-col:nth-child(5){transition-delay:.25s;}
.gnb-wrap:hover .gnb-mega-menu .mega-col:nth-child(6),
.gnb-mega-menu:hover .mega-col:nth-child(6){transition-delay:.30s;}

/* 메가 컬럼 호버: 옅은 배경 + 살짝 부상 */
.gnb-mega-menu .mega-col:hover{
    background:rgba(0,0,0,.025);
}

/* 카테고리 타이틀 (h3) - 빨간 underline 확장 */
.gnb-mega-menu .mega-col h3{
    position:relative;
    font-size:18px;font-weight:700;
    color:var(--c-black);
    margin-bottom:20px;padding-bottom:14px;
    border-bottom:1px solid var(--c-gray4);
    transition:color .3s;
}
.gnb-mega-menu .mega-col h3:after{
    content:"";
    position:absolute;
    left:0;bottom:-1px;
    width:0;
    height:2px;
    background:var(--c-primary);
    transition:width .35s ease;
}
.gnb-mega-menu .mega-col:hover h3{
    color:var(--c-primary);
}
.gnb-mega-menu .mega-col:hover h3:after{
    width:100%;
}

/* 메뉴 항목 - 호버 시 빨간 화살표 등장 */
.gnb-mega-menu .mega-col ul li{margin-bottom:10px;}
.gnb-mega-menu .mega-col ul li a{
    position:relative;
    display:inline-block;
    padding-left:0;
    font-size:14px;
    color:var(--c-gray1);
    line-height:1.5;
    transition:color .25s ease, padding-left .3s ease;
}
.gnb-mega-menu .mega-col ul li a:before{
    content:"→";
    position:absolute;
    left:-12px;
    top:0;
    color:var(--c-primary);
    font-weight:700;
    opacity:0;
    transition:opacity .25s, left .3s;
}
.gnb-mega-menu .mega-col ul li a:hover{
    padding-left:18px;
    color:var(--c-primary);
}
.gnb-mega-menu .mega-col ul li a:hover:before{
    opacity:1;
    left:0;
}

/* 헤더 우측 영역 (검색/언어 제거됨) */
#site-header .h-inner > .gnb-wrap{margin-right:80px;}

/* =========== Sitemap Btn (햄버거) =========== */
.h-sitemap-btn{position:fixed;top:30px;right:36px;width:32px;height:32px;z-index:110;}
.h-sitemap-btn .hamburger-ico{display:block;width:28px;height:20px;position:relative;margin:0 auto;}
.h-sitemap-btn .hamburger-ico .line{position:absolute;left:0;width:100%;height:2px;background:#fff;transition:all .3s;}
.h-sitemap-btn .hamburger-ico .line1{top:0;}
.h-sitemap-btn .hamburger-ico .line2{top:50%;transform:translateY(-50%);}
.h-sitemap-btn .hamburger-ico .line3{bottom:0;}
body.sub_page .h-sitemap-btn .hamburger-ico .line,
#site-header.on ~ .h-sitemap-btn .hamburger-ico .line{background:var(--c-black);}
/* 사이트맵 열림 시: 햄버거 버튼 숨김 (sitemap-close 버튼만 표시) */
.h-sitemap-btn.active{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .2s, visibility 0s linear .2s;
}

/* =========== Search Box =========== */
.search-box{position:fixed;top:0;left:0;width:100%;height:100vh;background:rgba(0,0,0,.92);z-index:120;display:none;}
.search-box.active{display:block;}
.search-box .search-wrap{max-width:1100px;margin:0 auto;padding:200px 40px 0;}
.search-box .search-lg{border-bottom:2px solid #fff;padding-bottom:10px;}
.search-box .form-inline{display:flex;align-items:center;gap:12px;}
.search-box input.input-lg{flex:1;background:transparent;border:0;color:#fff;font-size:28px;padding:16px 0;font-weight:500;}
.search-box input.input-lg::placeholder{color:rgba(255,255,255,.4);}
.search-box .btn-search2,.search-box .input-delete{color:#fff;flex-shrink:0;}
.search-box .search-hash{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap;}
.search-box .search-hash li a{display:inline-block;padding:10px 22px;border:1px solid rgba(255,255,255,.4);border-radius:30px;color:rgba(255,255,255,.8);font-size:14px;}
.search-box .search-hash li a:hover{background:#fff;color:#000;}
.close-sch-btn{position:fixed;top:36px;right:40px;color:#fff;width:32px;height:32px;}

/* =========== Sitemap 전체메뉴 (풀스크린 v2) =========== */
.sitemap-wrap{
    position:fixed;top:0;left:0;width:100%;height:100vh;
    background:#fff;
    z-index:115;
    visibility:hidden;opacity:0;
    transition:opacity .35s ease, visibility 0s linear .35s;
}
.sitemap-wrap.active{
    visibility:visible;opacity:1;
    transition:opacity .35s ease;
}
.sitemap-inner{
    width:100%;height:100%;
    overflow-y:auto;overflow-x:hidden;
    padding:120px 60px 60px;
    -webkit-overflow-scrolling:touch;
}
.sitemap-content{
    max-width:1440px;margin:0 auto;
    display:grid;grid-template-columns:340px 1fr;gap:80px;
    align-items:start;
}

/* 닫기 버튼 (우측 상단) - 호버 시 90도 회전 + 흑색 fill */
.sitemap-close{
    position:fixed;top:24px;right:36px;
    width:48px;height:48px;
    display:flex;align-items:center;justify-content:center;
    background:#fff;color:var(--c-black);
    border:1px solid var(--c-gray4);border-radius:50%;
    font-size:18px;
    z-index:120;
    transition:background .25s, color .25s, border-color .25s, transform .5s cubic-bezier(.25,1.6,.5,1);
    opacity:0;visibility:hidden;
}
.sitemap-wrap.active ~ .sitemap-close,
.sitemap-close.active{opacity:1;visibility:visible;}
.sitemap-close:hover{
    background:var(--c-black);
    color:#fff;
    border-color:var(--c-black);
    transform:rotate(90deg);
}
.sitemap-close i{line-height:1;}

/* 좌측 브랜드 영역 */
.sitemap-left{
    padding:8px 0;
    border-right:1px solid var(--c-gray5);
    padding-right:40px;
}
.sm-brand{cursor:default;}
.sm-brand .sm-logo-ci{
    display:block;
    height:48px;width:auto;
    transition:transform .35s ease;
}
.sm-brand:hover .sm-logo-ci{
    transform:translateX(6px);
}
.sm-brand .sm-slogan{
    font-size:24px;font-weight:700;
    letter-spacing:-.02em;line-height:1.35;
    color:var(--c-black);
    margin-top:36px;
}
.sm-contact{margin-top:48px;}
.sm-contact .sm-tit{
    font-family:var(--font-en);
    font-size:12px;font-weight:700;
    letter-spacing:.15em;color:var(--c-primary);
    margin-bottom:16px;
}
.sm-contact dl{
    display:flex;gap:14px;
    padding:10px 0;
    border-bottom:1px solid var(--c-gray5);
    font-size:13px;
    transition:padding-left .25s ease, border-bottom-color .25s;
}
.sm-contact dl:last-child{border-bottom:0;}
.sm-contact dl:hover{
    padding-left:8px;
    border-bottom-color:var(--c-black);
}
.sm-contact dt{
    flex:0 0 70px;
    color:var(--c-gray2);font-weight:500;
    transition:color .25s;
}
.sm-contact dl:hover dt{color:var(--c-black);}
.sm-contact dd{
    flex:1;
    color:var(--c-black);font-weight:600;
}
.sm-contact dd a{
    transition:color .25s;
    position:relative;
    display:inline-block;
}
.sm-contact dd a:after{
    content:"";
    position:absolute;
    left:0;bottom:-2px;
    width:0;height:1px;
    background:var(--c-primary);
    transition:width .3s ease;
}
.sm-contact dd a:hover{color:var(--c-primary);}
.sm-contact dd a:hover:after{width:100%;}

/* 우측 메뉴 5컬럼 */
.sitemap-right{padding:8px 0;}
.sitemap-list{
    display:grid;grid-template-columns:repeat(6,1fr);
    gap:28px;
}
/* 하위메뉴 소재지 표기 (공장안내 등) */
.gnb-mega-menu .mega-col ul li a small,
.sitemap-col ul li a small{
    display:block;
    font-size:11px;
    color:#999;
    font-weight:400;
    margin-top:2px;
    line-height:1.3;
}
.sitemap-col{position:relative;}
/* 카테고리 타이틀 - 호버 시 빨간 underline 확장 */
.sitemap-col h2{
    position:relative;
    font-size:18px;font-weight:700;
    color:var(--c-black);
    padding-bottom:14px;margin-bottom:18px;
    border-bottom:1px solid var(--c-gray4);
    letter-spacing:-.02em;
    transition:color .3s;
}
.sitemap-col h2:after{
    content:"";
    position:absolute;
    left:0;bottom:-1px;
    width:30px;
    height:2px;
    background:var(--c-black);
    transition:width .35s ease, background-color .3s;
}
.sitemap-col:hover h2{color:var(--c-primary);}
.sitemap-col:hover h2:after{
    width:100%;
    background:var(--c-primary);
}
.sitemap-col h2 a{
    display:inline-block;
    transition:color .25s;
}
.sitemap-col h2 a:hover{color:var(--c-primary);}

/* 메뉴 항목 - 호버 시 좌측 라인 + 시프트 + 빨간색 */
.sitemap-col ul li{margin-bottom:11px;}
.sitemap-col ul li a{
    position:relative;
    display:inline-block;
    padding-left:0;
    font-size:14px;
    color:var(--c-gray1);
    line-height:1.5;
    transition:padding-left .3s ease, color .25s;
}
.sitemap-col ul li a:before{
    content:"";
    position:absolute;
    left:0;top:50%;
    width:0;height:1px;
    background:var(--c-primary);
    transform:translateY(-50%);
    transition:width .3s ease;
}
.sitemap-col ul li a:hover{
    padding-left:18px;
    color:var(--c-primary);
}
.sitemap-col ul li a:hover:before{width:12px;}

/* 사이트맵 등장 staggered 애니메이션 */
.sitemap-wrap.active .sitemap-left{
    animation:smFadeRight .55s cubic-bezier(.165,.84,.44,1) both;
    animation-delay:.1s;
}
.sitemap-wrap.active .sitemap-col{
    animation:smFadeUp .55s cubic-bezier(.165,.84,.44,1) both;
}
.sitemap-wrap.active .sitemap-col:nth-child(1){animation-delay:.18s;}
.sitemap-wrap.active .sitemap-col:nth-child(2){animation-delay:.24s;}
.sitemap-wrap.active .sitemap-col:nth-child(3){animation-delay:.30s;}
.sitemap-wrap.active .sitemap-col:nth-child(4){animation-delay:.36s;}
.sitemap-wrap.active .sitemap-col:nth-child(5){animation-delay:.42s;}

@keyframes smFadeRight{
    from{opacity:0;transform:translateX(-30px);}
    to{opacity:1;transform:translateX(0);}
}
@keyframes smFadeUp{
    from{opacity:0;transform:translateY(24px);}
    to{opacity:1;transform:translateY(0);}
}

/* body 스크롤 잠금 (전체메뉴 열림 시) */
body.hidden{overflow:hidden !important;height:100vh !important;}

/* 사이트맵 반응형 */
@media (max-width:1280px){
    .sitemap-content{grid-template-columns:280px 1fr;gap:50px;}
    .sitemap-list{gap:24px;}
}
@media (max-width:1024px){
    .sitemap-inner{padding:100px 30px 40px;}
    .sitemap-content{grid-template-columns:1fr;gap:40px;}
    .sitemap-left{
        border-right:0;border-bottom:1px solid var(--c-gray5);
        padding-right:0;padding-bottom:32px;
    }
    .sm-contact{margin-top:32px;}
    .sitemap-list{grid-template-columns:repeat(3,1fr);gap:24px;}
}
@media (max-width:767px){
    .sitemap-inner{padding:90px 20px 30px;}
    .sitemap-close{top:18px;right:18px;width:40px;height:40px;font-size:16px;}
    .sm-brand .sm-logo-ci{height:36px;}
    .sm-brand .sm-slogan{font-size:18px;margin-top:24px;}
    .sitemap-list{grid-template-columns:repeat(2,1fr);gap:20px;}
    .sitemap-col h2{font-size:16px;}
    .sitemap-col ul li a{font-size:13px;}
}

/* =========== Quick Menu (Mobis 스타일 미니멀 박스) =========== */
.quickmenu{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;gap:8px;}
.quickmenu .quick-list{background:rgba(20,20,20,.95);border-radius:6px 0 0 6px;overflow:hidden;box-shadow:-2px 0 12px rgba(0,0,0,.15);}
.quickmenu .quick-list > li{}
.quickmenu .quick-list > li > a{display:flex;flex-direction:column;align-items:center;justify-content:center;width:60px;height:60px;color:rgba(255,255,255,.85);font-size:0;gap:4px;transition:all .2s;border-bottom:1px solid rgba(255,255,255,.06);}
.quickmenu .quick-list > li:last-child > a{border-bottom:0;}
.quickmenu .quick-list > li > a:hover{background:rgba(255,255,255,.08);color:#fff;}
.quickmenu .quick-list > li > a i{font-size:16px;line-height:1;}
.quickmenu .quick-list > li > a span{display:block;font-size:10px;font-weight:500;letter-spacing:-.02em;line-height:1;}

/* 강조 항목 (인재채용 - 빨간색) */
.quickmenu .quick-list > li.quick-accent > a{background:var(--c-primary);color:#fff;}
.quickmenu .quick-list > li.quick-accent > a:hover{background:var(--c-primary-dark);}

/* TOP 버튼 (별도 흰 박스) */
.quickmenu .top-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;width:60px;height:60px;background:#fff;color:var(--c-black);border-radius:6px 0 0 6px;box-shadow:-2px 0 12px rgba(0,0,0,.12);font-size:0;gap:4px;transition:all .2s;}
.quickmenu .top-btn:hover{background:var(--c-black);color:#fff;}
.quickmenu .top-btn i{font-size:14px;line-height:1;}
.quickmenu .top-btn span{display:block;font-size:10px;font-weight:700;letter-spacing:.05em;line-height:1;}

/* 기존 ico-top 사용 안 함 (FontAwesome로 교체) */
.quickmenu .quick-ico{display:none;}

/* =========== Footer =========== */
footer{background:#1b1b1b;color:#fff;padding:70px 0 40px;margin-top:0;}
footer .inner.footer-wrap{max-width:1400px;margin:0 auto;padding:0 48px;}
.ft-top{display:flex;flex-wrap:wrap;align-items:flex-start;gap:32px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.12);}
.ft-slogan{flex:1 1 100%;font-size:38px;line-height:1.25;letter-spacing:-.02em;color:#fff;margin-bottom:20px;}
.ft-util{display:flex;flex-wrap:wrap;gap:0 24px;flex:1 1 auto;}
.ft-util li{position:relative;padding-right:24px;}
.ft-util li:after{content:"";position:absolute;top:50%;right:0;width:1px;height:12px;background:rgba(255,255,255,.2);transform:translateY(-50%);}
.ft-util li:last-child{padding-right:0;}
.ft-util li:last-child:after{display:none;}
.ft-util li a{font-size:13px;color:rgba(255,255,255,.7);}
.ft-util li a.bb{color:#fff;font-weight:700;}
.ft-family{position:relative;flex-shrink:0;min-width:260px;}
.ft-family-dl{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 18px;border:1px solid rgba(255,255,255,.2);font-size:14px;color:#fff;background:transparent;border-radius:2px;}
.ft-family-list{display:none;position:absolute;left:0;bottom:100%;width:100%;background:#2b2b2b;border:1px solid rgba(255,255,255,.2);padding:16px 18px;max-height:320px;overflow-y:auto;}
.ft-family.open .ft-family-list{display:block;}
.ft-family-list > li{margin-bottom:12px;}
.ft-family-list .ft-dt{font-size:12px;color:rgba(255,255,255,.5);margin-bottom:6px;}
.ft-family-list .ft-dd li a{display:flex;justify-content:space-between;font-size:13px;padding:6px 0;}
.ft-family-list .ft-dd li a span{color:rgba(255,255,255,.4);font-size:11px;}
.ft-bt{display:flex;justify-content:space-between;align-items:center;padding-top:24px;flex-wrap:wrap;gap:16px;}
.ft-bt-l{display:flex;flex-direction:column;gap:6px;}
.copyright{font-size:12px;color:rgba(255,255,255,.5);}
.copyright span{margin-left:12px;}
.ft-addr{font-size:12px;color:rgba(255,255,255,.45);}
.ft-tel{font-size:13px;color:rgba(255,255,255,.7);}
.ft-tel .sep{margin:0 8px;opacity:.3;}
.ft-tel a{color:rgba(255,255,255,.7);}

/* ============================================================
   Main Page Sections
   ============================================================ */
.main-content-wrap{overflow:hidden;}
.main-inner{max-width:1400px;margin:0 auto;padding:120px 48px;}
.main-inner02{max-width:1400px;margin:0 auto;padding:120px 48px;}

.title-area{margin-bottom:56px;}
.title-area .txt01{display:block;margin-bottom:12px;}
.title-area .btn-wrap{margin-top:36px;}
.title-area-w .txt01{color:rgba(255,255,255,.6);}
.title-area-w .tit02{color:#fff;}
.title-area.text-c{text-align:center;}

.slick-wrap{position:relative;}
.slick-control{display:flex;align-items:center;gap:14px;margin-top:30px;}
.slick-control button{width:44px;height:44px;border:1px solid var(--c-gray3);border-radius:50%;display:flex;justify-content:center;align-items:center;color:var(--c-black);transition:all .25s;}
.slick-control button:hover{background:var(--c-black);color:#fff;border-color:var(--c-black);}
.slick-control-w .slick-control button{border-color:rgba(255,255,255,.5);color:#fff;}
.slick-control-w .slick-control button:hover{background:#fff;color:var(--c-black);}
.slick-num{font-size:14px;font-weight:600;color:var(--c-black);}
.slick-control-w .slick-num{color:#fff;}
.slick-num.total{color:var(--c-gray2);}
.slick-pagination{flex:1;max-width:200px;height:2px;background:var(--c-gray4);position:relative;border-radius:2px;overflow:hidden;}
.slick-pagination:before{content:"";position:absolute;top:0;left:0;height:100%;width:var(--sp,0%);background:var(--c-black);transition:width .4s;}
.slick-control-w .slick-pagination{background:rgba(255,255,255,.25);}
.slick-control-w .slick-pagination:before{background:#fff;}

/* ===== Slick 초기화 전/실패 시 Fallback (4중 안전망) =====
   슬라이더가 로드되지 않아도 레이아웃이 정상 보이도록 강제 */

/* Hero: 첫 슬라이드만 보이고 높이 고정 */
.main-visual-slider:not(.slick-initialized){position:relative;height:100vh;min-height:640px;max-height:900px;overflow:hidden;}
.main-visual-slider:not(.slick-initialized) > div{position:absolute !important;top:0;left:0;width:100%;height:100%;}
.main-visual-slider:not(.slick-initialized) > div:not(:first-child){opacity:0;pointer-events:none;}

/* News: flex row 3개 (간격 40px) */
.main-news-slider:not(.slick-initialized){display:flex;gap:40px;max-width:100%;overflow:hidden;}
.main-news-slider:not(.slick-initialized) > a{flex:1 1 calc((100% - 80px) / 3);max-width:calc((100% - 80px) / 3);min-width:0;}
.main-news-slider:not(.slick-initialized) > a:nth-child(n+4){display:none;}

/* Media: flex row 3개 (Section 03 안정성 강화) */
.main-live-slider:not(.slick-initialized){display:flex !important;flex-wrap:nowrap;gap:24px;width:100%;max-width:100%;overflow:hidden;}
.main-live-slider:not(.slick-initialized) > div{flex:0 0 calc((100% - 48px) / 3) !important;max-width:calc((100% - 48px) / 3) !important;min-width:0;padding:0 !important;}
.main-live-slider:not(.slick-initialized) > div:nth-child(n+4){display:none !important;}

/* Recruit: flex row 3개 */
.main-recruit-slider:not(.slick-initialized){display:flex;gap:24px;max-width:100%;overflow:hidden;}
.main-recruit-slider:not(.slick-initialized) > div{flex:1 1 33.333%;max-width:33.333%;min-width:0;}
.main-recruit-slider:not(.slick-initialized) > div:nth-child(n+4){display:none;}

/* ===== 슬라이더 이미지 폭주 방지 (콘텐츠 자르지 않음) ===== */
.main-news-slider .img-area{max-height:400px;}
.main-live-slider .img-area{max-height:280px;}
.main-recruit-slider .re-slider-con{max-height:500px;}

/* ===== Section 01 - Hero Visual ===== */
.main-sec01{position:relative;}
.main-sec01 .visual-slider-wrap{position:relative;width:100%;height:100vh;min-height:640px;overflow:hidden;}
.main-visual-slider,
.main-visual-slider > div,
.main-visual-slider .slick-list,
.main-visual-slider .slick-track{height:100%;}
.main-visual-slider > div{position:relative;}
.main-visual-slider .video-wrap{position:absolute;inset:0;z-index:1;background-position:center;background-size:cover;background-repeat:no-repeat;}
.main-visual-slider .video-wrap video{width:100%;height:100%;object-fit:cover;}
.main-visual-slider .video-iframe{overflow:hidden;}
.main-visual-slider .video-iframe iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-width:177.78vh;min-height:100vh;transform:translate(-50%,-50%);border:0;pointer-events:none;}
.main-visual-slider .video-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.15) 40%,rgba(0,0,0,.45) 100%);z-index:1;}
/* 슬로건: 카드 영역(280px) 제외한 상단 영역의 중앙에 위치 */
.main-sec01-slider-txt{position:absolute;top:calc(50% - 140px);left:80px;transform:translateY(-50%);z-index:2;max-width:780px;color:#fff;}
.main-sec01-slider-txt .tit01 span{display:inline-block;color:#fff;opacity:0;transform:translateY(20px);transition:all .8s ease;}
.slick-active .main-sec01-slider-txt .tit01 span{opacity:1;transform:translateY(0);}
.main-sec01-slider-txt .tit06{color:rgba(255,255,255,.85);}
.main-sec01-slider-txt .tit06 span{display:inline-block;opacity:0;transform:translateY(20px);transition:all .8s ease .2s;}
.slick-active .main-sec01-slider-txt .tit06 span{opacity:1;transform:translateY(0);}

.main-visual-control{position:absolute;left:80px;bottom:310px;z-index:5;display:flex;align-items:center;gap:14px;color:#fff;}
.main-visual-control button{width:40px;height:40px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:flex;justify-content:center;align-items:center;color:#fff;transition:all .25s;}
.main-visual-control button:hover{background:#fff;color:var(--c-black);}
.main-visual-pagination{display:flex;gap:10px;margin-right:14px;}
.main-visual-pagination li{cursor:pointer;}
.main-visual-pagination li button{width:auto;height:auto;border:0;padding:0;font-size:0;}
.main-visual-pagination li button:before{content:"";display:block;width:30px;height:2px;background:rgba(255,255,255,.45);transition:all .3s;}
.main-visual-pagination li.slick-active button:before{background:#fff;width:60px;}

/* ===== Hero 안 4분할 카드 (Mobis 스타일 v3 - Hero 위에 absolute) ===== */
.main-sec01-btCon{
    position:absolute;left:0;right:0;bottom:0;
    display:grid;grid-template-columns:repeat(4,1fr);
    z-index:6;
}
.main-sec01-btCon > a,
.main-sec01-btCon .motion-wrap2{
    position:relative;display:block;
    height:280px;padding:40px 32px 36px;
    color:#fff;overflow:hidden;
    text-decoration:none;
    border-right:1px solid rgba(255,255,255,.12);
}
.main-sec01-btCon > a:last-child,
.main-sec01-btCon .motion-wrap2{border-right:0;}

/* 평상시: 약한 반투명 어두운 오버레이 (Hero 영상이 비침) */
.main-sec01-btCon > a:before{
    content:"";position:absolute;inset:0;
    background:rgba(0,0,0,.35);
    z-index:1;
    transition:opacity .35s;
}
.main-sec01-btCon > a:hover:before{opacity:0;}

/* 호버 시 나타날 배경 이미지 (기본 숨김) */
.main-sec01-btCon > a .card-bg{
    position:absolute;top:0;left:0;width:100%;height:100%;
    background-position:center;background-size:cover;background-repeat:no-repeat;
    z-index:2;
    opacity:0;
    transform:scale(1.08);
    transition:opacity .5s ease, transform 1.2s ease;
}
.main-sec01-btCon > a:hover .card-bg{
    opacity:1;
    transform:scale(1);
}

/* 호버 시 어두운 그라데이션 (텍스트 가독성 + 강조) */
.main-sec01-btCon > a .card-dim{
    position:absolute;top:0;left:0;width:100%;height:100%;
    background:linear-gradient(180deg, rgba(0,0,0,.25) 0%, rgba(0,0,0,.5) 60%, rgba(0,0,0,.75) 100%);
    z-index:3;
    opacity:0;
    transition:opacity .35s;
}
.main-sec01-btCon > a:hover .card-dim{opacity:1;}

/* 콘텐츠 (최상위 z-index) */
.main-sec01-btCon .motion{
    position:relative;z-index:4;
    display:flex;flex-direction:column;justify-content:flex-end;
    width:100%;height:100%;
}

/* 타이틀 - 호버 시 살짝 위로 */
.main-sec01-btCon .main-sec01-tit{
    display:block;
    font-size:26px;font-weight:700;
    letter-spacing:-.02em;line-height:1.2;
    color:#fff;margin-bottom:14px;
    transition:transform .35s;
}
.main-sec01-btCon > a:hover .main-sec01-tit{transform:translateY(-4px);}

/* 본문 */
.main-sec01-btCon .main-sec01-txt{
    display:block;
    font-size:14px;font-weight:400;
    line-height:1.6;letter-spacing:-.01em;
    color:rgba(255,255,255,.85);
    margin-bottom:24px;
    transition:transform .35s .05s;
}
.main-sec01-btCon > a:hover .main-sec01-txt{transform:translateY(-4px);}

/* 자세히보기 버튼 */
.main-sec01-btCon .main-sec01-btn{
    display:inline-flex;align-items:center;
    font-size:13px;font-weight:600;
    color:#fff;letter-spacing:.02em;
    padding-right:28px;position:relative;
    transition:padding .3s;
}
.main-sec01-btCon .main-sec01-btn:after{
    content:"";
    position:absolute;right:0;top:50%;
    width:18px;height:1px;
    background:#fff;
    transform:translateY(-50%);
    transition:width .3s;
}
.main-sec01-btCon > a:hover .main-sec01-btn{padding-right:38px;}
.main-sec01-btCon > a:hover .main-sec01-btn:after{width:28px;}

/* ===== 4번째 카드: 빨간 단색 (영상 가림, 호버 시도 빨강 유지) ===== */
.main-sec01-btCon .motion-wrap2{
    background:var(--c-primary);
    transition:background .3s;
}
.main-sec01-btCon .motion-wrap2:hover{background:var(--c-primary-dark);}
.main-sec01-btCon .motion-wrap2:before{display:none;}
.main-sec01-btCon .motion-wrap2 .motion{z-index:1;}
.main-sec01-btCon .motion-wrap2 .main-sec01-tit{color:#fff;margin-bottom:14px;}
.main-sec01-btCon .motion-wrap2 .main-sec01-txt{color:rgba(255,255,255,.9);margin-bottom:24px;}
.main-sec01-btCon .motion-wrap2 .main-sec01-btn02{
    display:inline-flex;align-items:center;
    padding:8px 0;
    border-bottom:1px solid rgba(255,255,255,.7);
    font-size:13px;font-weight:600;color:#fff;
    letter-spacing:.02em;
    padding-right:28px;position:relative;
    transition:padding .3s;
}
.main-sec01-btCon .motion-wrap2 .main-sec01-btn02:after{
    content:"";position:absolute;right:0;top:50%;
    width:18px;height:1px;background:#fff;
    transform:translateY(-50%);
    transition:width .3s;
}
.main-sec01-btCon .motion-wrap2:hover .main-sec01-btn02{padding-right:38px;}
.main-sec01-btCon .motion-wrap2:hover .main-sec01-btn02:after{width:28px;}
.main-sec01-btCon .motion-wrap2:hover .main-sec01-tit{transform:translateY(-4px);}
.main-sec01-btCon .motion-wrap2:hover .main-sec01-txt{transform:translateY(-4px);}

/* ===== Section 02 - News (전면 재스타일 v2) ===== */
.main-sec02{padding:140px 0 120px;background:#fff;}

/* Slick 초기화 후 .slick-slide에 패딩 적용 */
.main-sec02 .main-news-slider .slick-list{margin:0 -20px;}
.main-sec02 .main-news-slider .slick-slide{padding:0 20px;}
.main-sec02 .main-news-slider > a,
.main-sec02 .main-news-slider .slick-slide > a{display:block;outline:none;text-decoration:none;color:inherit;}

/* Slick 초기화 전 fallback */
.main-sec02 .main-news-slider:not(.slick-initialized){display:flex;gap:40px;max-width:100%;overflow:hidden;}
.main-sec02 .main-news-slider:not(.slick-initialized) > a{flex:1 1 calc((100% - 80px) / 3);max-width:calc((100% - 80px) / 3);min-width:0;}
.main-sec02 .main-news-slider:not(.slick-initialized) > a:nth-child(n+4){display:none;}

.main-sec02 .main-news-content{
    position:relative;
    cursor:pointer;
}

/* === 이미지 영역: aspect-ratio 4:3 + 둥근 모서리 + 카테고리 라벨 === */
.main-sec02 .img-area{
    position:relative;
    width:100%;
    aspect-ratio:4/3;
    background:#f4f4f4;
    border-radius:8px;
    overflow:hidden;
}
.main-sec02 .img-cover{
    position:absolute;inset:0;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    transition:transform .9s cubic-bezier(.165,.84,.44,1);
}
.main-sec02 a:hover .img-cover{
    transform:scale(1.06);
}
/* 호버 시 어두운 dim 살짝 */
.main-sec02 .img-area:after{
    content:"";
    position:absolute;inset:0;
    background:rgba(0,0,0,0);
    transition:background .35s;
    pointer-events:none;
}
.main-sec02 a:hover .img-area:after{
    background:rgba(0,0,0,.08);
}

/* 카테고리 라벨 (좌측 상단) */
.main-sec02 .news-cate{
    position:absolute;
    top:16px;left:16px;
    z-index:2;
    display:inline-block;
    padding:6px 14px;
    background:rgba(255,255,255,.95);
    color:var(--c-black);
    font-family:var(--font-en);
    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
    border-radius:30px;
}

/* === 텍스트 영역 === */
.main-sec02 .txt-area{
    padding:28px 4px 0;
}

/* 날짜 */
.main-sec02 .txt-area .txt01{
    display:block;
    color:var(--c-gray2);
    font-family:var(--font-en);
    font-size:13px;
    font-weight:600;
    letter-spacing:.04em;
    margin:0 0 16px;
    transition:color .25s;
}
.main-sec02 a:hover .txt-area .txt01{
    color:var(--c-primary);
}

/* 제목 */
.main-sec02 .txt-area .tit05{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:21px;
    font-weight:700;
    color:var(--c-black);
    line-height:1.4;
    letter-spacing:-.02em;
    min-height:60px;
    margin:0;
    transition:color .25s;
}
.main-sec02 a:hover .txt-area .tit05{
    color:var(--c-primary);
}

/* 자세히 보기 (라인 + 텍스트 + 화살표 라인) */
.main-sec02 .btn-wrap{
    margin-top:28px;
    padding-top:20px;
    border-top:1px solid var(--c-gray4);
    transition:border-color .35s;
}
.main-sec02 a:hover .btn-wrap{
    border-top-color:var(--c-primary);
}
.main-sec02 .btn-wrap span{
    display:inline-flex;
    align-items:center;
    font-size:13px;
    font-weight:600;
    color:var(--c-gray1);
    letter-spacing:.02em;
    padding-right:24px;
    position:relative;
    transition:all .35s;
}
.main-sec02 .btn-wrap span:after{
    content:"";
    position:absolute;
    right:0;top:50%;
    width:16px;height:1px;
    background:var(--c-gray3);
    transform:translateY(-50%);
    transition:width .35s, background .35s;
}
.main-sec02 a:hover .btn-wrap span{
    color:var(--c-primary);
    padding-right:36px;
}
.main-sec02 a:hover .btn-wrap span:after{
    width:28px;
    background:var(--c-primary);
}

/* 슬라이더 컨트롤 영역 */
.main-news-slick-control{margin-top:60px;justify-content:flex-end;max-width:580px;margin-left:auto;}

/* Section 02 슬라이드 카운터 (01 / 05) 숨김 */
.main-sec02 .slick-num{display:none !important;}

/* ===== Section 03 - Media (예술적 디자인 v5 + 상하 컨텐츠) ===== */
.main-sec03{
    position:relative;
    padding:100px 0 110px;
    min-height:100vh;
    color:#fff;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:60px;
}
.main-sec03 .main-live-bg{
    position:absolute;top:0;left:0;width:100%;height:100%;
    background:var(--c-blue);
    z-index:0;
}
.main-sec03 .main-live-bg:before{
    content:"";
    position:absolute;top:0;left:0;width:100%;height:100%;
    background:
        radial-gradient(ellipse 60% 50% at 15% 25%, rgba(50,90,200,.55) 0%, transparent 60%),
        radial-gradient(ellipse 50% 60% at 85% 75%, rgba(0,80,180,.45) 0%, transparent 60%),
        linear-gradient(135deg, #002C5F 0%, #001428 50%, #000a1f 100%);
}
/* 도트 패턴 배경 */
.main-sec03 .main-live-bg:after{
    content:"";
    position:absolute;inset:0;
    background-image:radial-gradient(circle at center, rgba(255,255,255,.07) 1.5px, transparent 1.5px);
    background-size:48px 48px;
    opacity:.55;
}

/* 거대 배경 타이포 (MEDIA) */
.main-sec03 .bg-typo{
    position:absolute;
    top:50%;
    right:-80px;
    transform:translateY(-50%);
    font-family:var(--font-en);
    font-size:340px;
    font-weight:900;
    color:rgba(255,255,255,.038);
    line-height:.85;
    letter-spacing:-.05em;
    z-index:1;
    pointer-events:none;
    user-select:none;
    white-space:nowrap;
}

/* 상단 헤더 (메타 + 큰 헤드라인 + 부제) */
.sec03-header{
    position:relative;z-index:3;
    width:100%;
    padding:0 60px;
}
.sec03-meta-top{
    display:flex;
    align-items:center;
    gap:14px;
    color:rgba(255,255,255,.65);
    font-size:12px;
    font-weight:600;
    letter-spacing:.18em;
    margin-bottom:22px;
}
.sec03-meta-top .dot-mark{
    width:8px;height:8px;
    background:var(--c-primary);
    border-radius:50%;
    box-shadow:0 0 12px rgba(29,95,224,.7);
    animation:secPulse 2s ease-in-out infinite;
}
.sec03-meta-top .separator{
    color:rgba(255,255,255,.2);
    font-weight:300;
}
.sec03-headline{
    display:flex;
    align-items:baseline;
    gap:24px;
    font-size:72px;
    font-weight:800;
    color:#fff;
    letter-spacing:-.03em;
    line-height:1;
    margin:0;
}
.sec03-headline em{
    font-size:32px;
    color:var(--c-primary);
    font-weight:700;
    font-style:normal;
    letter-spacing:.02em;
}
.sec03-subline{
    font-size:17px;
    color:rgba(255,255,255,.7);
    margin:22px 0 0;
    letter-spacing:-.01em;
}

@keyframes secPulse{
    0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 12px rgba(29,95,224,.7);}
    50%{opacity:.5;transform:scale(1.6);box-shadow:0 0 20px rgba(29,95,224,.3);}
}

/* 상단 키워드 라인 */
.sec03-top-line{
    position:relative;z-index:3;
    width:100%;
    padding:0 60px;
    display:flex;
    align-items:center;
    gap:24px;
}
.sec03-top-line .line{
    flex:1;
    height:1px;
    background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.25) 50%, rgba(255,255,255,0) 100%);
}
.sec03-top-line .line:first-child,
.sec03-top-line .line:last-child{
    background:linear-gradient(90deg, rgba(255,255,255,.25) 0%, rgba(255,255,255,0) 100%);
}
.sec03-top-line .line:last-child{
    background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.25) 100%);
}
.sec03-top-line .kw{
    font-family:var(--font-en);
    font-size:13px;
    font-weight:700;
    letter-spacing:.22em;
    color:rgba(255,255,255,.78);
    white-space:nowrap;
}

/* 하단 슬로건 + 메타 */
.sec03-bottom-info{
    position:relative;z-index:3;
    width:100%;
    padding:0 60px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:32px;
    border-top:1px solid rgba(255,255,255,.15);
    padding-top:44px;
}
.sec03-bottom-info .slogan{
    font-family:var(--font-en);
    font-size:30px;
    font-weight:600;
    font-style:italic;
    color:#fff;
    letter-spacing:-.01em;
    line-height:1.3;
    margin:0;
    max-width:580px;
}
.sec03-bottom-info .meta{
    display:flex;
    gap:56px;
    align-items:flex-end;
}
.sec03-bottom-info .meta li{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
}
.sec03-bottom-info .meta li strong{
    font-family:var(--font-en);
    font-size:48px;
    font-weight:800;
    color:#fff;
    line-height:1;
    letter-spacing:-.02em;
}
.sec03-bottom-info .meta li span{
    font-family:var(--font-en);
    font-size:11px;
    font-weight:600;
    letter-spacing:.18em;
    color:rgba(255,255,255,.55);
}

/* 하단 CTA: VIEW ALL 링크 + SNS */
.sec03-cta{
    position:relative;z-index:3;
    width:100%;
    padding:0 60px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:32px;
    flex-wrap:wrap;
}
.view-all-link{
    display:inline-flex;
    align-items:center;
    gap:24px;
    color:#fff;
    text-decoration:none;
    transition:transform .35s ease;
}
.view-all-link:hover{
    transform:translateX(8px);
}
.view-all-link .circle{
    width:78px;height:78px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.4);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    color:#fff;
    transition:all .35s ease;
    flex-shrink:0;
}
.view-all-link:hover .circle{
    background:var(--c-primary);
    border-color:var(--c-primary);
    transform:rotate(-12deg);
}
.view-all-link .txt{
    display:flex;
    flex-direction:column;
    gap:6px;
}
.view-all-link .txt em{
    font-size:18px;
    font-weight:700;
    letter-spacing:.08em;
    color:#fff;
    font-style:normal;
    transition:color .25s;
}
.view-all-link:hover .txt em{
    color:var(--c-primary);
}
.view-all-link .txt span{
    font-size:13px;
    color:rgba(255,255,255,.6);
    letter-spacing:-.01em;
}

/* SNS 아이콘 */
.sec03-tags{
    display:flex;
    align-items:center;
    gap:14px;
}
.sec03-tags .tag-label{
    font-size:11px;
    font-weight:700;
    letter-spacing:.2em;
    color:rgba(255,255,255,.5);
    margin-right:8px;
}
.sec03-tags .sns-link{
    width:42px;height:42px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.25);
    display:flex;
    align-items:center;
    justify-content:center;
    color:rgba(255,255,255,.7);
    font-size:14px;
    transition:all .25s;
    text-decoration:none;
}
.sec03-tags .sns-link:hover{
    background:#fff;
    border-color:#fff;
    color:var(--c-blue);
    transform:translateY(-2px);
}

/* 좌우 레이아웃 (좌:타이틀+컨트롤 / 우:슬라이더 - 화면 우측 끝까지 확장) */
.main-sec03 .main-live-wrap{
    position:relative;z-index:3;
    width:100%;
    max-width:none;
    margin:0;
    padding:0 0 0 60px;
    display:grid;
    grid-template-columns:380px minmax(0,1fr);
    gap:80px;
    align-items:center;
}
.main-sec03 .main-live-wrap .left{
    padding-top:0;
    padding-bottom:0;
    min-width:0;
    position:relative;
}
/* 좌측 장식 라인 */
.main-sec03 .main-live-wrap .left:before{
    content:"";
    position:absolute;
    top:-44px;
    left:0;
    width:64px;
    height:1px;
    background:rgba(255,255,255,.5);
}
.main-sec03 .main-live-wrap .left .title-area{
    margin-bottom:48px;
}
.main-sec03 .main-live-wrap .left .title-area .txt01{
    display:block;
    font-size:13px;
    font-weight:600;
    letter-spacing:.2em;
    color:rgba(255,255,255,.65);
    margin-bottom:24px;
}
.main-sec03 .main-live-wrap .left .title-area .tit02{
    font-size:62px;
    line-height:1.1;
    font-weight:800;
    letter-spacing:-.025em;
    color:#fff;
}
.main-sec03 .main-live-wrap .left .title-area .btn-wrap{
    margin-top:44px;
}
.main-sec03 .main-live-wrap .left .tit02{
    color:#fff;
}
.main-sec03 .main-live-wrap .right{
    min-width:0;
    overflow:hidden;
}

/* 슬라이더 컨테이너 */
.main-sec03 .main-live-slider{width:100%;}
.main-sec03 .main-live-slider .slick-list{
    overflow:hidden;
    margin:0 -14px;
}
.main-sec03 .main-live-slider .slick-slide{padding:0 14px;}
.main-sec03 .main-live-slider > div{padding:0 14px;}
.main-sec03 .main-live-slider > div a{
    display:block;
    color:#fff;
    outline:none;
    text-decoration:none;
}

/* 이미지 영역: aspect-ratio 4:3 (Mobis 비율, 풀폭에서 더 크게) */
.main-sec03 .main-live-slider .img-area{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    height:auto;
    background:#0a1f3d;
    border-radius:6px;
    overflow:hidden;
    position:relative;
}
.main-sec03 .main-live-slider .img-area img{
    display:block;
    width:100%;height:100%;
    object-fit:cover;
    transition:transform .9s cubic-bezier(.165,.84,.44,1);
}
.main-sec03 .main-live-slider a:hover .img-area img{
    transform:scale(1.06);
}
/* 호버 시 이미지 살짝 어둡게 */
.main-sec03 .main-live-slider .img-area:after{
    content:"";
    position:absolute;inset:0;
    background:rgba(0,0,0,0);
    transition:background .35s;
    pointer-events:none;
}
.main-sec03 .main-live-slider a:hover .img-area:after{
    background:rgba(0,0,0,.15);
}

/* 텍스트 영역 */
.main-sec03 .main-live-slider .txt-area{
    display:block;
    padding:22px 0 0;
}

/* 카테고리 라벨 (영문 pill, Mobis와 동일 스타일) */
.main-sec03 .main-live-slider .category{
    display:inline-block;
    padding:6px 14px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.28);
    border-radius:30px;
    font-family:var(--font-en);
    font-size:11px;
    font-weight:600;
    letter-spacing:.1em;
    color:#fff;
    margin-bottom:14px;
}

/* 제목 (Mobis와 동일 사이즈) */
.main-sec03 .main-live-slider .tit06{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    color:#fff;
    line-height:1.45;
    font-size:18px;
    font-weight:600;
    letter-spacing:-.01em;
    margin:0;
    transition:color .25s;
}
.main-sec03 .main-live-slider a:hover .tit06{
    color:rgba(255,255,255,.85);
}

.main-live-pagination-m{display:none;}

/* Section 03 컨트롤 강화 */
.main-sec03 .main-live-slick-control{margin-top:50px;gap:18px;}
.main-sec03 .main-live-slick-control .slick-num{
    font-family:var(--font-en);
    font-size:15px;
    font-weight:700;
    letter-spacing:.05em;
}
.main-sec03 .main-live-slick-control .slick-num.total{color:rgba(255,255,255,.45);}
.main-sec03 .main-live-slick-control .slick-pagination{
    flex:1;
    max-width:200px;
    height:2px;
}
.main-sec03 .main-live-slick-control button{
    width:46px;height:46px;
    border:1px solid rgba(255,255,255,.4);
}
.main-sec03 .main-live-slick-control button:hover{
    background:#fff;
    border-color:#fff;
    color:var(--c-blue);
}

/* ===== Section 04 - Recruit (Magazine Reveal Layout v3) ===== */
.main-sec04{
    position:relative;
    padding:120px 0 130px;
    min-height:100vh;
    background:#fafafa;
    overflow:hidden;
    display:flex;
    align-items:center;
}

.sec04-wrap{
    width:100%;
    max-width:1600px;
    margin:0 auto;
    padding:0 60px;
    display:grid;
    grid-template-columns:minmax(0, 0.92fr) minmax(0, 1fr);
    gap:80px;
    align-items:stretch;
}

/* ===== 좌측 영역 ===== */
.sec04-left{
    display:flex;
    flex-direction:column;
    gap:48px;
}

/* 좌측 헤더 */
.sec04-head .recruit-label{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.22em;
    color:var(--c-primary);
    margin:0 0 24px;
}
.sec04-head .recruit-label .dot{
    width:6px;height:6px;
    background:var(--c-primary);
    border-radius:50%;
    box-shadow:0 0 10px rgba(29,95,224,.6);
    animation:secPulse 2s ease-in-out infinite;
}
.sec04-head .recruit-title{
    font-size:54px;
    font-weight:800;
    color:var(--c-black);
    line-height:1.12;
    letter-spacing:-.025em;
    margin:0 0 20px;
}
.sec04-head .recruit-title em{
    color:var(--c-primary);
    font-style:italic;
    font-weight:800;
}
.sec04-head .recruit-desc{
    font-size:16px;
    color:var(--c-gray1);
    line-height:1.7;
    letter-spacing:-.01em;
    margin:0;
}

/* 인재상 리스트 */
.recruit-list{
    border-top:1px solid rgba(0,0,0,.12);
    list-style:none;
    padding:0;margin:0;
}
.recruit-list li{
    display:flex;
    align-items:center;
    gap:24px;
    padding:22px 0 22px 0;
    border-bottom:1px solid rgba(0,0,0,.12);
    cursor:pointer;
    transition:padding .35s ease, color .25s;
    position:relative;
}
.recruit-list li:before{
    content:"";
    position:absolute;
    left:0;top:0;
    width:0;
    height:100%;
    background:var(--c-primary);
    transition:width .35s ease;
}
.recruit-list li.active:before,
.recruit-list li:hover:before{
    width:3px;
}
.recruit-list li.active,
.recruit-list li:hover{
    padding-left:24px;
}
.recruit-list li .num{
    font-size:13px;
    font-weight:700;
    color:var(--c-gray3);
    letter-spacing:.05em;
    min-width:28px;
    transition:color .25s;
}
.recruit-list li.active .num,
.recruit-list li:hover .num{
    color:var(--c-primary);
}
.recruit-list li .info{flex:1;min-width:0;}
.recruit-list li .info .en{
    font-size:24px;
    font-weight:800;
    letter-spacing:-.02em;
    color:var(--c-black);
    margin:0 0 4px;
    transition:color .25s;
}
.recruit-list li.active .info .en,
.recruit-list li:hover .info .en{
    color:var(--c-primary);
}
.recruit-list li .info .kr{
    font-size:14px;
    color:var(--c-gray1);
    margin:0;
    line-height:1.5;
}
.recruit-list li .arrow{
    width:36px;height:36px;
    border-radius:50%;
    border:1px solid rgba(0,0,0,.15);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--c-gray2);
    font-size:12px;
    transition:all .3s;
    flex-shrink:0;
}
.recruit-list li.active .arrow,
.recruit-list li:hover .arrow{
    background:var(--c-primary);
    border-color:var(--c-primary);
    color:#fff;
    transform:translateX(4px);
}

/* 채용 버튼 */
.recruit-btn{
    align-self:flex-start;
    display:inline-flex;
    align-items:center;
    gap:14px;
    padding:18px 36px;
    background:var(--c-black);
    color:#fff;
    font-size:14px;
    font-weight:600;
    letter-spacing:-.01em;
    border-radius:50px;
    transition:all .3s;
    text-decoration:none;
}
.recruit-btn i{font-size:12px;transition:transform .3s;}
.recruit-btn:hover{
    background:var(--c-primary);
}
.recruit-btn:hover i{
    transform:translateX(6px);
}

/* ===== 우측 영역 (큰 이미지) ===== */
.sec04-right{
    position:relative;
    border-radius:8px;
    overflow:hidden;
    aspect-ratio:4/5;
    background:#0a0a0a;
    align-self:stretch;
}
.recruit-image-wrap{
    position:relative;
    width:100%;
    height:100%;
}
.recruit-image{
    position:absolute;
    inset:0;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    opacity:0;
    transform:scale(1.06);
    transition:opacity .85s ease, transform 1.4s cubic-bezier(.22,1,.36,1);
}
.recruit-image.active{
    opacity:1;
    transform:scale(1);
}
.recruit-image:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.55) 100%);
}

/* 우측 카운터 (좌상단) */
.recruit-counter{
    position:absolute;
    top:36px;left:36px;
    z-index:3;
    display:flex;
    align-items:center;
    gap:18px;
    color:#fff;
}
.recruit-counter .current{
    font-size:54px;
    font-weight:800;
    line-height:1;
    letter-spacing:-.02em;
}
.recruit-counter .line{
    width:60px;
    height:1px;
    background:rgba(255,255,255,.5);
}
.recruit-counter .total{
    font-size:16px;
    font-weight:600;
    color:rgba(255,255,255,.7);
    letter-spacing:.05em;
}

/* 우측 라벨 (좌하단) */
.recruit-overlay{
    position:absolute;
    bottom:48px;left:36px;right:36px;
    z-index:3;
    color:#fff;
}
.recruit-overlay .cat{
    display:inline-block;
    padding:6px 14px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.4);
    border-radius:30px;
    font-size:11px;
    font-weight:600;
    letter-spacing:.18em;
    margin-bottom:18px;
    backdrop-filter:blur(6px);
}
.recruit-overlay .en-name{
    font-size:54px;
    font-weight:800;
    letter-spacing:-.02em;
    line-height:1;
    margin:0;
    color:#fff;
}

/* 진행 인디케이터 (하단) */
.recruit-progress{
    position:absolute;
    left:0;bottom:0;
    width:100%;
    height:3px;
    background:rgba(255,255,255,.18);
    z-index:3;
}
.recruit-progress .bar{
    display:block;
    width:0;
    height:100%;
    background:var(--c-primary);
    transition:width .15s linear;
}

/* (구버전 .sec04-header / .sec04-top-line / .sec04-bottom-info / .sec04-cta / .bg-typo-04 등은 v3에서 제거됨) */
.main-recruit-slider-wrap{position:relative;padding-left:48px;}
.main-recruit-slider .slick-list{overflow:visible;margin:0 -12px;}
.main-recruit-slider > div{padding:0 12px;}
.main-recruit-slider .re-slider-con{position:relative;height:500px;border-radius:8px;overflow:hidden;}
.main-recruit-slider .img-area{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;transition:transform .7s;z-index:0;}
.main-recruit-slider .img-area:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.7) 100%);}
.main-recruit-slider > div:hover .img-area{transform:scale(1.05);}
.main-recruit-slider .tit-area{position:absolute;left:32px;bottom:32px;z-index:2;color:#fff;}
.main-recruit-slider .tit-area .txt01{color:rgba(255,255,255,.8);margin-bottom:10px;}
.main-recruit-slider .tit-area .tit06{color:#fff;}
.mouse-effect{position:absolute;top:0;left:48px;right:0;height:500px;display:flex;z-index:10;pointer-events:none;}
.mouse-prev,.mouse-next{flex:1;height:100%;cursor:none;pointer-events:auto;background:transparent;position:relative;}
.mouse-prev{cursor:w-resize;}
.mouse-next{cursor:e-resize;}
.cursor{position:absolute;width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.95);color:var(--c-black);display:flex;justify-content:center;align-items:center;pointer-events:none;opacity:0;transition:opacity .2s;transform:translate(-50%,-50%);}
.mouse-prev:hover .cursor,
.mouse-next:hover .cursor{opacity:1;}
.cursor-left:before,.cursor-right:before{content:"";width:10px;height:10px;border-top:2px solid var(--c-black);border-right:2px solid var(--c-black);}
.cursor-left:before{transform:rotate(-135deg) translate(-2px,2px);}
.cursor-right:before{transform:rotate(45deg) translate(-2px,2px);}
.scrollbar{margin:40px 48px 0;height:2px;background:var(--c-gray4);border-radius:2px;position:relative;}
.scrollbar:before{content:"";position:absolute;top:0;left:0;width:25%;height:100%;background:var(--c-black);border-radius:2px;transition:all .3s;}
.main-recruit-slick-control{max-width:260px;margin:30px 0 0 48px;display:flex;gap:12px;align-items:center;}

/* ===== Section 05 - Vision (단순 구조, 겹침 트릭 제거) ===== */
.main-sec05{padding:140px 0 0;background:#fff;}
.main-sec05 .title-area{margin-bottom:80px;}
.main-sec05 .main-sus-bg{position:relative;width:100%;height:800px;overflow:hidden;}
.main-sec05 .main-sus-bg .fixed-bg-wrap{position:absolute;inset:0;overflow:hidden;}
.main-sec05 .main-sus-bg .fixed-bg{position:absolute;inset:-10%;background-position:center;background-size:cover;background-repeat:no-repeat;will-change:transform;}
.main-sec05 .main-sus-bg .fixed-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.6) 100%);}
.main-sec05 .main-sus-text{position:absolute;left:0;right:0;bottom:0;z-index:2;}
.main-sec05 .main-sus-text .inner{max-width:1400px;margin:0 auto;padding:0 48px 80px;color:#fff;}
.main-sec05 .main-sus-text .tit01{color:#fff;line-height:1.05;}
.main-sec05 .main-sus-text .tit01 span{display:block;}
.main-sec05 .main-sus-text p{color:rgba(255,255,255,.9);max-width:720px;font-size:16px;line-height:1.7;}
.main-sec05 .arrow-btn-circle{margin-top:40px;}

/* ===== Section 06 - Performance ===== */
.main-sec06{padding:140px 0;background:var(--c-gray6);}
.main-sec06 .title-area{margin-bottom:60px;}
.main06-investors{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;}
.main06-investors > a,
.main06-investors .right > a{position:relative;display:block;background:#fff;border-radius:8px;padding:40px;text-decoration:none;color:var(--c-black);transition:all .3s;box-shadow:0 2px 10px rgba(0,0,0,.04);}
.main06-investors > a:hover,
.main06-investors .right > a:hover{transform:translateY(-4px);box-shadow:0 10px 30px rgba(0,0,0,.08);}
.main06-investors .left{min-height:320px;display:flex;flex-direction:column;justify-content:space-between;}
.main06-investors .left .flex.space{display:flex;justify-content:space-between;align-items:center;}
.main06-investors .left .price{font-size:64px;font-weight:700;letter-spacing:-.03em;color:var(--c-black);line-height:1;}
.main06-investors .left .price-rate{display:flex;gap:40px;flex-wrap:wrap;}
.main06-investors .left .price-rate .txt01{font-size:14px;color:var(--c-gray1);}
.main06-investors .left .price-rate .rate{color:var(--c-black);font-weight:700;margin-left:6px;}
.main06-investors .left .price-rate .rate.up{color:var(--c-primary);}
.main06-investors .right{display:grid;grid-template-rows:1fr 1fr;gap:24px;}
.main06-investors .right > a{padding:32px 32px 28px;display:flex;flex-direction:column;justify-content:center;min-height:0;}
.main06-investors .right .sub-tit{display:block;font-size:14px;color:var(--c-gray1);margin-top:8px;}
.main06-investors .arrow-btn{position:absolute;right:32px;bottom:32px;}

/* ===== Motion ===== */
.main-motion{opacity:0;transform:translateY(40px);transition:all 1s ease;}
.main-motion.on{opacity:1;transform:translateY(0);}
.main-motion-fromLeft{opacity:0;transform:translateX(-40px);transition:all 1s ease;}
.main-motion-fromLeft.on{opacity:1;transform:translateX(0);}
.main-motion-fromRight{opacity:0;transform:translateX(40px);transition:all 1s ease;}
.main-motion-fromRight.on{opacity:1;transform:translateX(0);}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width:1280px){
    .tit01{font-size:58px;}
    .tit02{font-size:44px;}
    #site-header .h-inner{padding:0 30px;gap:32px;}
    #site-header .gnb-wrap{gap:36px;}
    .main-inner, .main-inner02{padding:100px 30px;}
    .main-sec03{padding:90px 0 100px;min-height:100vh;gap:42px;}
    .main-sec03 .bg-typo{font-size:240px;right:-60px;}
    .main-sec03 .main-live-wrap{grid-template-columns:340px minmax(0,1fr);gap:60px;padding:0 0 0 40px;}
    .main-sec03 .main-live-wrap .left .title-area .tit02{font-size:48px;}
    .sec03-header, .sec03-top-line, .sec03-bottom-info, .sec03-cta{padding:0 40px;}
    .sec03-headline{font-size:56px;}
    .sec03-headline em{font-size:26px;}
    .sec03-subline{font-size:15px;}
    .sec03-bottom-info{padding-top:36px;}
    .sec03-bottom-info .slogan{font-size:24px;max-width:420px;}
    .sec03-bottom-info .meta{gap:36px;}
    .sec03-bottom-info .meta li strong{font-size:38px;}
    .view-all-link .circle{width:64px;height:64px;font-size:18px;}
    .view-all-link .txt em{font-size:16px;}
    .main-sec01-slider-txt{left:40px;}
    .main-visual-control{left:40px;bottom:280px;}
}
@media (max-width:1024px){
    :root{--hd-height:72px;}
    .tit01{font-size:44px;}
    .tit02{font-size:36px;}
    .tit05{font-size:22px;}
    .tit06{font-size:20px;}
    #site-header .gnb-wrap{display:none;}
    .ft-slogan{font-size:28px;}
    .ft-top{flex-direction:column;}
    .ft-bt{flex-direction:column;gap:12px;align-items:flex-start;}
    .sitemap-wrap{max-width:100%;padding:100px 30px 40px;}
    .main-inner, .main-inner02{padding:80px 24px;}
    .main-sec01 .visual-slider-wrap{min-height:560px;}
    /* 태블릿: 카드 2x2 grid, Hero 안 absolute 유지 */
    .main-sec01-btCon{grid-template-columns:repeat(2,1fr);}
    .main-sec01-btCon > a,
    .main-sec01-btCon .motion-wrap2{height:200px;padding:30px 24px 26px;}
    .main-sec01-btCon > a:nth-child(1),
    .main-sec01-btCon > a:nth-child(2){border-bottom:1px solid rgba(255,255,255,.12);}
    .main-sec01-btCon > a:nth-child(2){border-right:0;}
    .main-sec01-btCon .main-sec01-tit{font-size:22px;margin-bottom:10px;}
    .main-sec01-btCon .main-sec01-txt{font-size:13px;margin-bottom:18px;}
    .main-sec02{padding:90px 0;}
    .main-sec02 .txt-area .tit05{font-size:18px;min-height:50px;}
    .main-sec02 .txt-area{padding-top:24px;}
    .main-sec03{padding:70px 0 80px;min-height:auto;display:flex;gap:36px;}
    .main-sec03 .bg-typo{font-size:160px;right:-40px;}
    .main-sec03 .main-live-wrap{grid-template-columns:1fr;gap:40px;padding:0 24px;}
    .main-sec03 .main-live-wrap .left{padding-top:0;padding-bottom:0;}
    .main-sec03 .main-live-wrap .left:before{display:none;}
    .main-sec03 .main-live-wrap .left .title-area{margin-bottom:30px;}
    .main-sec03 .main-live-wrap .left .title-area .tit02{font-size:36px;}
    /* 헤더 모바일 */
    .sec03-header{padding:0 24px;}
    .sec03-headline{font-size:38px;flex-wrap:wrap;gap:14px;}
    .sec03-headline em{font-size:22px;}
    .sec03-subline{font-size:14px;}
    /* 키워드 라인 */
    .sec03-top-line{padding:0 24px;gap:14px;flex-wrap:nowrap;overflow:hidden;}
    .sec03-top-line .kw{font-size:11px;letter-spacing:.15em;}
    .sec03-top-line .kw:nth-of-type(n+4){display:none;}
    .sec03-top-line .line:nth-of-type(n+5){display:none;}
    /* 하단 정보 */
    .sec03-bottom-info{padding:28px 24px 0;flex-direction:column;align-items:flex-start;gap:24px;}
    .sec03-bottom-info .slogan{font-size:20px;max-width:none;}
    .sec03-bottom-info .meta{gap:28px;}
    .sec03-bottom-info .meta li strong{font-size:30px;}
    .sec03-bottom-info .meta li span{font-size:10px;}
    /* 하단 CTA */
    .sec03-cta{padding:0 24px;flex-direction:column;align-items:flex-start;gap:24px;}
    .view-all-link .circle{width:56px;height:56px;font-size:16px;}
    .view-all-link .txt em{font-size:14px;}
    .view-all-link .txt span{font-size:12px;}
    .sec03-tags .sns-link{width:36px;height:36px;font-size:13px;}
    /* Section 04 - 태블릿 (Magazine Layout) */
    .main-sec04{padding:90px 0 100px;min-height:auto;}
    .sec04-wrap{padding:0 40px;grid-template-columns:1fr 1fr;gap:50px;}
    .sec04-head .recruit-title{font-size:42px;}
    .sec04-head .recruit-desc{font-size:14px;}
    .recruit-list li{padding:18px 0;gap:18px;}
    .recruit-list li .info .en{font-size:20px;}
    .recruit-list li .info .kr{font-size:13px;}
    .recruit-list li .arrow{width:32px;height:32px;font-size:11px;}
    .recruit-counter .current{font-size:42px;}
    .recruit-overlay .en-name{font-size:42px;}
    .mouse-effect{display:none;}
    .main-sec05{padding:100px 0 0;}
    .main-sec05 .main-sus-bg{height:640px;}
    .main-sec06{padding:100px 0;}
    .main06-investors{grid-template-columns:1fr;}
    .main06-investors .right{grid-template-rows:auto auto;}
    .main06-investors .left .price{font-size:52px;}
}
@media (max-width:767px){
    html,body{font-size:14px;}
    .tit01{font-size:34px;}
    .tit02{font-size:28px;}
    .tit03{font-size:24px;}
    .tit05{font-size:18px;}
    .tit06{font-size:17px;}
    .tit07{font-size:16px;}
    .btn{min-width:150px;height:48px;font-size:14px;}
    .quickmenu{right:10px;bottom:20px;}
    .quickmenu > ul > li > a span{display:none;}
    .sitemap-list{grid-template-columns:1fr;}
    footer{padding:50px 0 30px;}
    footer .inner.footer-wrap{padding:0 20px;}
    .main-inner, .main-inner02{padding:60px 20px;}
    .main-sec01 .visual-slider-wrap{min-height:500px;height:90vh;}
    .main-sec01-slider-txt{left:20px;right:20px;max-width:none;}
    .main-visual-control{left:20px;bottom:240px;gap:8px;}
    .main-visual-control button{width:34px;height:34px;}
    /* 모바일: 카드를 Hero 외부로 빼고 1열 정렬 (가독성) */
    .main-sec01 .visual-slider-wrap{height:80vh;}
    .main-sec01-btCon{
        position:relative;left:auto;right:auto;bottom:auto;
        grid-template-columns:1fr;
    }
    .main-sec01-btCon > a,
    .main-sec01-btCon .motion-wrap2{height:200px;padding:24px 20px;border-right:0;border-bottom:1px solid rgba(0,0,0,.08);}
    .main-sec01-btCon .motion-wrap2{border-bottom:0;}
    /* 모바일에서는 Hero 영상 비침 효과 대신 단색 배경 사용 */
    .main-sec01-btCon > a:before{background:#1a1a1a;}
    .main-sec01-btCon .main-sec01-tit{font-size:22px;}
    .main-sec01-btCon .main-sec01-txt{font-size:13px;margin-bottom:18px;}
    .main-sec02{padding:60px 0;}
    .main-sec02 .txt-area .tit05{font-size:17px;min-height:46px;}
    .main-sec02 .news-cate{top:12px;left:12px;font-size:10px;padding:5px 12px;}
    .main-sec03{padding:60px 0;min-height:auto;}
    .main-sec03 .main-live-wrap{padding:0 20px;}
    .main-sec03 .main-live-wrap .left .title-area .tit02{font-size:28px;}
    .main-sec03 .main-live-slider .tit06{font-size:16px;}
    .main-sec03 .main-live-slider .category{font-size:10px;padding:5px 12px;}
    /* Section 04 - 모바일 (Magazine Layout) */
    .main-sec04{padding:70px 0 80px;}
    .sec04-wrap{padding:0 24px;grid-template-columns:1fr;gap:40px;}
    .sec04-left{gap:32px;}
    .sec04-head .recruit-title{font-size:32px;}
    .sec04-head .recruit-desc{font-size:13px;}
    .sec04-head .recruit-desc br{display:none;}
    .recruit-list li{padding:16px 0;gap:14px;}
    .recruit-list li.active,
    .recruit-list li:hover{padding-left:14px;}
    .recruit-list li .num{font-size:12px;min-width:24px;}
    .recruit-list li .info .en{font-size:17px;}
    .recruit-list li .info .kr{font-size:12px;}
    .recruit-list li .arrow{width:28px;height:28px;font-size:10px;}
    .recruit-btn{padding:14px 24px;font-size:13px;}
    .sec04-right{aspect-ratio:1/1;}
    .recruit-counter{top:20px;left:20px;gap:12px;}
    .recruit-counter .current{font-size:32px;}
    .recruit-counter .line{width:36px;}
    .recruit-counter .total{font-size:13px;}
    .recruit-overlay{bottom:24px;left:20px;right:20px;}
    .recruit-overlay .en-name{font-size:32px;}
    .recruit-overlay .cat{font-size:10px;padding:5px 12px;margin-bottom:12px;}
    .main-sec05{padding:70px 0 0;}
    .main-sec05 .main-sus-bg{height:500px;}
    .main-sec05 .main-sus-text .inner{padding:0 20px 40px;}
    .main-sec06{padding:70px 0;}
    .main06-investors > a,.main06-investors .right > a{padding:28px 24px;}
    .main06-investors .left .price{font-size:40px;}
    .main06-investors .left .price-rate{gap:20px;}
    .ft-tel{font-size:12px;}
}

/* ============================================================
   ▼▼▼ 모바일 최적화 강화 영역 (PC 디자인은 그대로 유지) ▼▼▼
   - 1024px 이하: 헤더/GNB 보강
   - 767px 이하: 메인 섹션 모바일 정리
   - 480px 이하: 초소형 디바이스 (iPhone SE / 갤럭시 폴드 등)
   ============================================================ */

/* ===== [공통] 가로 스크롤 방지 + 이미지 안전망 ===== */
@media (max-width:1024px){
    html, body{overflow-x:hidden; -webkit-text-size-adjust:100%;}
    img, video, iframe{max-width:100%; height:auto;}
    .main-content-wrap, main, footer{max-width:100vw; overflow-x:hidden;}
    /* GNB 메가메뉴 모바일 강제 숨김 (혹시 hover로 떠도 안 보이게) */
    #site-header .gnb-mega,
    #site-header .h-mega-menu,
    #site-header .gnb-wrap{display:none !important;}
    /* 헤더 우측 아이콘 영역 정렬 */
    #site-header .h-util{gap:8px;}
}

/* ===== [헤더] 모바일 전용 보강 (~767px) ===== */
@media (max-width:767px){
    :root{--hd-height:60px;}
    #site-header{height:60px;}
    #site-header .h-inner{padding:0 16px; height:60px;}
    /* 로고 안전 폭 */
    #site-header .h-logo{flex-shrink:0;}
    #site-header .h-logo img{max-width:110px; max-height:32px; width:auto; height:auto;}
    #site-header .h-logo .logo-text,
    #site-header .h-logo strong{font-size:17px; letter-spacing:-.02em;}
    /* 우측 아이콘들 */
    #site-header .h-util{gap:4px;}
    #site-header .h-sitemap-btn,
    #site-header .h-search-btn,
    #site-header .h-lang-btn{width:40px; height:40px; font-size:14px;}
}

/* ===== [Section 01 Hero] 모바일 슬라이더 보강 ===== */
@media (max-width:767px){
    .main-sec01 .visual-slider-wrap{min-height:480px; height:78vh;}
    .main-sec01-slider-txt{
        left:16px; right:16px; bottom:30%;
        max-width:none;
    }
    .main-sec01-slider-txt .tit01{font-size:30px; line-height:1.2; word-break:keep-all;}
    .main-sec01-slider-txt .desc{font-size:13px; line-height:1.6; margin-top:14px;}
    .main-sec01-slider-txt .label{font-size:11px; letter-spacing:.15em; margin-bottom:14px;}
    /* 페이지 인디케이터 / 컨트롤 */
    .main-visual-control{left:16px; bottom:24%; gap:6px;}
    .main-visual-control button{width:32px; height:32px; font-size:11px;}
    .main-visual-control .progress,
    .main-visual-control .pagination{font-size:12px;}
    /* Hero 외부로 빠진 4분할 카드 */
    .main-sec01-btCon > a,
    .main-sec01-btCon .motion-wrap2{
        height:auto; min-height:130px;
        padding:22px 18px;
    }
    .main-sec01-btCon .main-sec01-tit{font-size:18px; margin-bottom:6px;}
    .main-sec01-btCon .main-sec01-txt{font-size:12px; margin-bottom:12px; line-height:1.5;}
    .main-sec01-btCon .main-sec01-arrow{width:30px; height:30px; font-size:11px;}
}

/* ===== [Section 02 News] 모바일 보강 ===== */
@media (max-width:767px){
    .main-sec02 .title-area{margin-bottom:32px;}
    .main-sec02 .title-area .label{font-size:11px;}
    .main-sec02 .news-card{margin:0 6px;}
    .main-sec02 .news-card .img-wrap{aspect-ratio:4/3;}
    .main-sec02 .txt-area{padding:18px 4px 0;}
    .main-sec02 .txt-area .tit05{font-size:16px; min-height:42px; line-height:1.4;}
    .main-sec02 .txt-area .date{font-size:12px; margin-top:10px;}
    .main-sec02 .news-cate{font-size:10px; padding:4px 10px; top:10px; left:10px;}
    /* slick dots / arrows */
    .main-sec02 .slick-dots{bottom:-30px;}
    .main-sec02 .slick-arrow{display:none !important;}
    .main-sec02 .news-counter,
    .main-sec02 .more-link{font-size:13px;}
}

/* ===== [Section 03 Media] 모바일 보강 ===== */
@media (max-width:767px){
    .main-sec03{padding:50px 0 60px;}
    .main-sec03 .bg-typo{font-size:90px; right:-30px; opacity:.05;}
    .main-sec03 .main-live-wrap{padding:0 16px; gap:28px;}
    .main-sec03 .main-live-wrap .left .title-area{margin-bottom:20px;}
    .main-sec03 .main-live-wrap .left .title-area .tit02{font-size:24px; line-height:1.3;}
    .main-sec03 .main-live-slider .tit06{font-size:15px; line-height:1.45;}
    .main-sec03 .main-live-slider .category{font-size:9px; padding:4px 10px;}
    /* 헤드라인 */
    .sec03-header{padding:0 16px; margin-bottom:20px;}
    .sec03-headline{font-size:26px; gap:10px;}
    .sec03-headline em{font-size:16px;}
    .sec03-subline{font-size:12px; line-height:1.6;}
    /* 키워드 라인 */
    .sec03-top-line{padding:0 16px; gap:8px;}
    .sec03-top-line .kw{font-size:10px;}
    .sec03-top-line .kw:nth-of-type(n+3){display:none;}
    .sec03-top-line .line:nth-of-type(n+3){display:none;}
    /* 하단 정보 */
    .sec03-bottom-info{padding:20px 16px 0; gap:18px;}
    .sec03-bottom-info .slogan{font-size:16px; line-height:1.5;}
    .sec03-bottom-info .meta{gap:18px; flex-wrap:wrap;}
    .sec03-bottom-info .meta li strong{font-size:24px;}
    .sec03-bottom-info .meta li span{font-size:9px;}
    /* CTA */
    .sec03-cta{padding:0 16px; gap:18px;}
    .view-all-link{gap:12px;}
    .view-all-link .circle{width:48px; height:48px; font-size:13px;}
    .view-all-link .txt em{font-size:13px;}
    .view-all-link .txt span{font-size:11px;}
    .sec03-tags{flex-wrap:wrap; gap:8px;}
    .sec03-tags .sns-link{width:32px; height:32px; font-size:12px;}
}

/* ===== [Section 04 Recruit] 모바일 추가 보강 ===== */
@media (max-width:767px){
    .sec04-head .recruit-title{font-size:28px; line-height:1.25;}
    .sec04-head .recruit-title br{display:none;}
    .recruit-counter{top:14px; left:14px;}
    .recruit-counter .current{font-size:26px;}
    .recruit-counter .line{width:24px;}
    .recruit-overlay{bottom:18px; left:14px; right:14px;}
    .recruit-overlay .en-name{font-size:24px;}
    .recruit-overlay .cat{font-size:9px; padding:4px 10px; margin-bottom:8px;}
}

/* ===== [Quickmenu] 모바일 위치/크기 ===== */
@media (max-width:1024px){
    .quickmenu{right:0; top:auto; bottom:16px; transform:none;}
    .quickmenu .quick-list{display:flex; flex-direction:row; border-radius:6px 0 0 6px;}
    .quickmenu .quick-list > li > a{width:48px; height:48px; border-bottom:0; border-right:1px solid rgba(255,255,255,.06);}
    .quickmenu .quick-list > li:last-child > a{border-right:0;}
    .quickmenu .top-btn{width:48px; height:48px; border-radius:6px 0 0 6px;}
    .quickmenu .quick-list > li > a span,
    .quickmenu .top-btn span{display:none;}
}
@media (max-width:767px){
    .quickmenu{bottom:12px; gap:6px;}
    .quickmenu .quick-list > li > a,
    .quickmenu .top-btn{width:42px; height:42px;}
    .quickmenu .quick-list > li > a i,
    .quickmenu .top-btn i{font-size:13px;}
}

/* ===== [Footer] 모바일 추가 보강 ===== */
@media (max-width:767px){
    footer{padding:40px 0 24px;}
    footer .inner.footer-wrap{padding:0 16px;}
    .ft-slogan{font-size:22px; line-height:1.3; margin-bottom:14px;}
    .ft-util{gap:0 12px;}
    .ft-util li{padding-right:12px;}
    .ft-util li a{font-size:12px;}
    .ft-family{width:100%; min-width:0;}
    .ft-family-dl{padding:11px 14px; font-size:13px;}
    .ft-bt{padding-top:18px; gap:10px;}
    .copyright{font-size:11px; line-height:1.5;}
    .copyright span{display:block; margin-left:0; margin-top:2px;}
    .ft-addr{font-size:11px; line-height:1.5;}
    .ft-tel{font-size:11px;}
    .ft-tel .sep{margin:0 5px;}
}

/* ===== [480px 이하] 초소형 디바이스 (iPhone SE 1세대, 갤럭시 폴드 등) ===== */
@media (max-width:480px){
    html, body{font-size:13px;}
    .tit01{font-size:26px; letter-spacing:-.02em;}
    .tit02{font-size:22px;}
    .tit03{font-size:20px;}
    .tit05{font-size:15px;}
    .btn{min-width:120px; height:44px; font-size:13px;}
    /* 헤더 */
    #site-header .h-inner{padding:0 12px;}
    #site-header .h-logo img{max-width:96px; max-height:28px;}
    #site-header .h-logo .logo-text,
    #site-header .h-logo strong{font-size:15px;}
    #site-header .h-sitemap-btn,
    #site-header .h-search-btn,
    #site-header .h-lang-btn{width:36px; height:36px; font-size:13px;}
    /* Section 01 Hero */
    .main-sec01 .visual-slider-wrap{min-height:440px; height:74vh;}
    .main-sec01-slider-txt .tit01{font-size:24px;}
    .main-sec01-slider-txt .desc{font-size:12px;}
    .main-sec01-btCon > a,
    .main-sec01-btCon .motion-wrap2{min-height:120px; padding:18px 14px;}
    .main-sec01-btCon .main-sec01-tit{font-size:16px;}
    .main-sec01-btCon .main-sec01-txt{font-size:11px;}
    /* Section 02 News */
    .main-sec02{padding:50px 0;}
    .main-sec02 .txt-area .tit05{font-size:14px; min-height:38px;}
    /* Section 03 Media */
    .main-sec03{padding:40px 0 50px;}
    .main-sec03 .main-live-wrap{padding:0 12px;}
    .main-sec03 .main-live-wrap .left .title-area .tit02{font-size:20px;}
    .sec03-headline{font-size:22px;}
    .sec03-headline em{font-size:14px;}
    .sec03-subline{font-size:11px;}
    .sec03-bottom-info .slogan{font-size:14px;}
    .sec03-bottom-info .meta li strong{font-size:20px;}
    /* Section 04 Recruit */
    .main-sec04{padding:50px 0 60px;}
    .sec04-wrap{padding:0 16px; gap:30px;}
    .sec04-head .recruit-title{font-size:24px;}
    .recruit-list li{padding:12px 0; gap:10px;}
    .recruit-list li .info .en{font-size:15px;}
    .recruit-list li .info .kr{font-size:11px;}
    .recruit-list li .arrow{width:24px; height:24px;}
    .recruit-overlay .en-name{font-size:20px;}
    /* Footer */
    footer{padding:32px 0 20px;}
    .ft-slogan{font-size:18px;}
    .ft-util li a{font-size:11px;}
    /* Quickmenu 더 작게 */
    .quickmenu{bottom:10px;}
    .quickmenu .quick-list > li > a,
    .quickmenu .top-btn{width:38px; height:38px;}
    .quickmenu .quick-list > li > a i,
    .quickmenu .top-btn i{font-size:12px;}
}

/* ===== [터치 디바이스] hover → tap 대응 ===== */
@media (hover:none) and (pointer:coarse){
    /* 호버 의존 요소들이 모바일에서도 기본 노출되도록 */
    .main-sec01-btCon > a:hover .main-sec01-arrow,
    .recruit-list li:hover{transition:none;}
    /* 터치 시 시각적 피드백 */
    a:active, button:active{opacity:.7;}
}

/* ============================================================
   ▼▼▼ 모바일 최적화 2차 강화 (PC 그대로) ▼▼▼
   - 헤더/Hero 겹침 해결
   - Quickmenu 위치 확정 (!important)
   - Section 03 모바일 전면 재디자인
   - Section 04 채용사이트 버튼 디자인
   ============================================================ */

/* ===== [헤더 z-index + Hero 텍스트 겹침 해결] ===== */
@media (max-width:1024px){
    #site-header{
        z-index:200 !important;
        background:rgba(255,255,255,.96);
        backdrop-filter:blur(8px);
        -webkit-backdrop-filter:blur(8px);
        box-shadow:0 1px 0 rgba(0,0,0,.06);
    }
}
@media (max-width:767px){
    /* Hero 슬라이드 영역 위에 그라데이션 오버레이 추가 (가독성↑) */
    .main-sec01 .visual-slider-wrap{
        position:relative;
    }
    .main-sec01 .visual-slider-wrap::after{
        content:"";
        position:absolute;
        inset:0;
        background:linear-gradient(180deg,
            rgba(0,0,0,.55) 0%,
            rgba(0,0,0,.15) 25%,
            rgba(0,0,0,0) 55%,
            rgba(0,0,0,.45) 100%);
        pointer-events:none;
        z-index:1;
    }
    /* Hero 슬라이드 텍스트 위치 재정의 (헤더 겹침 방지) */
    .main-sec01-slider-txt{
        top:auto !important;
        bottom:30% !important;
        left:20px !important;
        right:20px !important;
        transform:none !important;
        max-width:none !important;
        z-index:3 !important;
        text-shadow:0 2px 14px rgba(0,0,0,.4);
    }
    .main-sec01-slider-txt .label,
    .main-sec01-slider-txt .tit01,
    .main-sec01-slider-txt .desc,
    .main-sec01-slider-txt .tit06{
        position:relative;
        z-index:3;
    }
    /* Hero 페이지 컨트롤도 겹침 방지 */
    .main-visual-control,
    .main-visual-pagination{
        z-index:3;
    }
}

/* ===== [Quickmenu] 위치 강제 고정 (우선순위 강화) ===== */
@media (max-width:1024px){
    .quickmenu{
        position:fixed !important;
        right:0 !important;
        left:auto !important;
        top:auto !important;
        bottom:14px !important;
        transform:none !important;
        flex-direction:column !important;
        gap:6px !important;
        z-index:90;
    }
    .quickmenu .quick-list{
        display:flex !important;
        flex-direction:row !important;
        border-radius:8px 0 0 8px;
    }
    .quickmenu .quick-list > li > a{
        width:46px !important;
        height:46px !important;
        border-bottom:0 !important;
        border-right:1px solid rgba(255,255,255,.06);
    }
    .quickmenu .quick-list > li:last-child > a{border-right:0;}
    .quickmenu .top-btn{
        width:46px !important;
        height:46px !important;
        border-radius:8px 0 0 8px;
    }
    .quickmenu .quick-list > li > a span,
    .quickmenu .top-btn span{display:none !important;}
}
@media (max-width:480px){
    .quickmenu .quick-list > li > a,
    .quickmenu .top-btn{
        width:40px !important;
        height:40px !important;
    }
    .quickmenu .quick-list > li > a i,
    .quickmenu .top-btn i{font-size:13px;}
}

/* ============================================================
   ===== [Section 03 Media] 모바일 전면 재디자인 =====
   PC 디자인 완전 무시하고 모바일 전용 레이아웃으로 재구성
   ============================================================ */
@media (max-width:767px){
    /* 1. 섹션 컨테이너 */
    .main-sec03{
        padding:60px 0 70px !important;
        background:linear-gradient(180deg,#0a1e3d 0%,#142a52 100%) !important;
        min-height:auto !important;
        gap:0 !important;
    }
    /* 2. 배경 장식 모두 숨김 (시각 노이즈 제거) */
    .main-sec03 .bg-typo,
    .main-sec03 .main-live-bg,
    .main-sec03 .sec03-top-line{display:none !important;}

    /* 3. 헤더 - 중앙 정렬, 컴팩트화 */
    .main-sec03 .sec03-header{
        text-align:center !important;
        padding:0 20px !important;
        margin-bottom:32px !important;
    }
    .main-sec03 .sec03-meta-top{
        justify-content:center !important;
        font-size:11px !important;
        color:rgba(255,255,255,.5) !important;
        margin-bottom:14px !important;
        gap:8px;
    }
    .main-sec03 .sec03-meta-top .dot-mark{
        width:5px; height:5px;
        background:var(--c-primary, #1D5FE0);
        border-radius:50%;
    }
    .main-sec03 .sec03-headline{
        flex-direction:column !important;
        align-items:center !important;
        text-align:center !important;
        font-size:30px !important;
        gap:6px !important;
        line-height:1 !important;
        margin:0 !important;
    }
    .main-sec03 .sec03-headline span{color:#fff;}
    .main-sec03 .sec03-headline em{
        font-size:13px !important;
        color:#6eb3ff !important;
        font-style:normal;
        margin-top:8px;
        letter-spacing:.15em;
    }
    .main-sec03 .sec03-subline{
        text-align:center !important;
        font-size:13px !important;
        margin-top:12px !important;
        color:rgba(255,255,255,.7) !important;
        line-height:1.6;
    }

    /* 4. main-live-wrap → 세로 스택 */
    .main-sec03 .main-live-wrap{
        display:flex !important;
        flex-direction:column !important;
        grid-template-columns:none !important;
        padding:0 !important;
        gap:0 !important;
    }
    .main-sec03 .main-live-wrap .left,
    .main-sec03 .main-live-wrap .right{
        width:100%;
        padding:0 !important;
    }
    .main-sec03 .main-live-wrap .left:before{display:none !important;}

    /* 5. 좌측: 타이틀 + CTA 영역 */
    .main-sec03 .main-live-wrap .left .title-area{
        text-align:center;
        padding:0 20px;
        margin-bottom:24px !important;
    }
    .main-sec03 .main-live-wrap .left .title-area .txt01{
        font-size:11px !important;
        letter-spacing:.2em !important;
        color:#6eb3ff !important;
        margin-bottom:10px !important;
    }
    .main-sec03 .main-live-wrap .left .title-area .tit02{
        font-size:22px !important;
        line-height:1.35 !important;
        color:#fff !important;
        margin-bottom:18px !important;
    }
    .main-sec03 .main-live-wrap .left .title-area .tit02 br{display:none;}
    .main-sec03 .main-live-wrap .left .btn-wrap{
        display:flex;
        justify-content:center;
    }
    .main-sec03 .main-live-wrap .left .btn-wrap .btn{
        height:46px;
        min-width:200px;
        font-size:13px;
        font-weight:600;
    }

    /* 6. 슬라이더 (모바일은 1슬라이드 표시) */
    .main-sec03 .right{margin-bottom:24px;}
    .main-sec03 .main-live-slider{
        margin:0 !important;
        padding:0 20px;
    }
    .main-sec03 .main-live-slider .slick-list{
        overflow:visible;
        margin:0 -4px;
    }
    .main-sec03 .main-live-slider > div,
    .main-sec03 .main-live-slider .slick-slide{
        padding:0 4px;
    }
    .main-sec03 .main-live-slider a{
        display:block;
        background:rgba(255,255,255,.04);
        border:1px solid rgba(255,255,255,.08);
        border-radius:12px;
        overflow:hidden;
    }
    .main-sec03 .main-live-slider .img-area{
        display:block;
        width:100%;
        aspect-ratio:16/10;
        overflow:hidden;
        background:#0a1e3d;
    }
    .main-sec03 .main-live-slider .img-area img{
        width:100%; height:100%;
        object-fit:cover;
        display:block;
    }
    .main-sec03 .main-live-slider .txt-area{
        display:block;
        padding:14px 16px 18px !important;
    }
    .main-sec03 .main-live-slider .category{
        display:inline-block;
        font-size:9px !important;
        padding:3px 10px !important;
        background:rgba(110,179,255,.15) !important;
        border:1px solid rgba(110,179,255,.3);
        border-radius:30px !important;
        color:#6eb3ff !important;
        margin-bottom:10px;
        letter-spacing:.1em;
        text-transform:uppercase;
    }
    .main-sec03 .main-live-slider .tit06{
        display:block;
        font-size:14px !important;
        line-height:1.45 !important;
        color:#fff !important;
        font-weight:600;
        letter-spacing:-.01em;
    }

    /* 7. 슬라이더 컨트롤 - 중앙 하단 배치 */
    .main-sec03 .main-live-slick-control{
        justify-content:center !important;
        align-items:center;
        gap:10px !important;
        margin:0 0 0 !important;
        padding:14px 20px 0;
    }
    .main-sec03 .main-live-slick-control button{
        width:36px !important;
        height:36px !important;
        background:rgba(255,255,255,.08);
        border:1px solid rgba(255,255,255,.15);
        border-radius:50%;
        color:#fff;
    }
    .main-sec03 .main-live-slick-control .slick-num{
        font-size:13px !important;
        color:#fff;
        font-family:'Poppins','Pretendard',sans-serif;
        font-weight:700;
    }
    .main-sec03 .main-live-slick-control .slick-pagination{
        display:none !important;
    }

    /* 8. 하단 정보 - 카드 레이아웃 */
    .main-sec03 .sec03-bottom-info{
        flex-direction:column !important;
        align-items:stretch !important;
        padding:36px 20px 0 !important;
        gap:18px !important;
        margin-top:30px;
        border-top:1px solid rgba(255,255,255,.1);
    }
    .main-sec03 .sec03-bottom-info .slogan{
        text-align:center !important;
        font-size:14px !important;
        color:rgba(255,255,255,.85) !important;
        line-height:1.5;
        max-width:none !important;
        font-style:italic;
    }
    .main-sec03 .sec03-bottom-info .meta{
        display:grid !important;
        grid-template-columns:repeat(3,1fr) !important;
        gap:8px !important;
        flex-direction:row !important;
    }
    .main-sec03 .sec03-bottom-info .meta li{
        background:rgba(255,255,255,.06) !important;
        border:1px solid rgba(255,255,255,.1);
        border-radius:10px;
        padding:14px 6px !important;
        text-align:center !important;
        display:flex !important;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:4px !important;
    }
    .main-sec03 .sec03-bottom-info .meta li:before,
    .main-sec03 .sec03-bottom-info .meta li:after{display:none !important;}
    .main-sec03 .sec03-bottom-info .meta li strong{
        font-size:24px !important;
        color:#6eb3ff !important;
        font-family:'Poppins','Pretendard',sans-serif;
        font-weight:800;
        line-height:1;
    }
    .main-sec03 .sec03-bottom-info .meta li span{
        font-size:9px !important;
        color:rgba(255,255,255,.55) !important;
        letter-spacing:.1em;
        text-transform:uppercase;
    }

    /* 9. CTA + Social */
    .main-sec03 .sec03-cta{
        flex-direction:column !important;
        align-items:center !important;
        padding:30px 20px 0 !important;
        gap:24px !important;
    }
    .main-sec03 .view-all-link{
        display:flex !important;
        align-items:center;
        justify-content:center;
        background:var(--c-primary, #1D5FE0) !important;
        padding:14px 28px !important;
        border-radius:50px !important;
        width:100%;
        max-width:280px;
        gap:12px !important;
        text-decoration:none;
    }
    .main-sec03 .view-all-link .circle{
        width:30px !important;
        height:30px !important;
        background:rgba(255,255,255,.2) !important;
        border:0 !important;
        border-radius:50% !important;
        font-size:11px !important;
        color:#fff;
        display:flex;
        align-items:center;
        justify-content:center;
        margin:0 !important;
    }
    .main-sec03 .view-all-link .txt{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
    }
    .main-sec03 .view-all-link .txt em{
        font-size:13px !important;
        color:#fff !important;
        font-weight:700;
        letter-spacing:.05em;
        font-style:normal;
        line-height:1.2;
    }
    .main-sec03 .view-all-link .txt span{display:none !important;}

    .main-sec03 .sec03-tags{
        display:flex !important;
        align-items:center;
        gap:10px !important;
        flex-wrap:nowrap !important;
    }
    .main-sec03 .sec03-tags .tag-label{
        font-size:10px !important;
        color:rgba(255,255,255,.5) !important;
        letter-spacing:.15em;
        margin-right:4px;
    }
    .main-sec03 .sec03-tags .sns-link{
        width:36px !important;
        height:36px !important;
        background:rgba(255,255,255,.08) !important;
        border:1px solid rgba(255,255,255,.12);
        border-radius:50%;
        color:#fff !important;
        font-size:13px !important;
        display:flex;
        align-items:center;
        justify-content:center;
        text-decoration:none;
    }
    .main-sec03 .sec03-tags .sns-link:hover,
    .main-sec03 .sec03-tags .sns-link:active{
        background:#6eb3ff !important;
        color:#0a1e3d !important;
    }
}
@media (max-width:480px){
    .main-sec03 .sec03-headline{font-size:26px !important;}
    .main-sec03 .sec03-headline em{font-size:12px !important;}
    .main-sec03 .main-live-wrap .left .title-area .tit02{font-size:20px !important;}
    .main-sec03 .sec03-bottom-info .meta li strong{font-size:20px !important;}
    .main-sec03 .sec03-bottom-info .meta li{padding:12px 4px !important;}
}

/* ===== [Section 04 Recruit] 채용사이트 버튼 모바일 보강 ===== */
@media (max-width:767px){
    .recruit-btn{
        display:inline-flex !important;
        align-items:center;
        justify-content:center;
        gap:10px !important;
        width:100%;
        max-width:280px;
        height:50px;
        background:var(--c-primary, #1D5FE0) !important;
        color:#fff !important;
        border:0 !important;
        border-radius:50px !important;
        font-size:14px !important;
        font-weight:700 !important;
        text-decoration:none !important;
        padding:0 24px !important;
        margin:8px auto 0 !important;
        letter-spacing:-.01em;
        box-shadow:0 6px 18px -8px rgba(29,95,224,.5);
    }
    .recruit-btn span{
        display:inline !important;
        color:#fff !important;
    }
    .recruit-btn i{
        font-size:11px !important;
        color:#fff !important;
        transition:transform .25s;
    }
    .recruit-btn:active{
        background:#c70022 !important;
    }
    .recruit-btn:active i{transform:translateX(3px);}

    /* Recruit list active 상태 명확화 */
    .recruit-list li.active{
        background:rgba(29,95,224,.05);
        padding-left:14px !important;
        border-left:3px solid var(--c-primary, #1D5FE0);
    }
    .recruit-list li.active .info .en{color:var(--c-primary, #1D5FE0);}
    .recruit-list li.active .num{color:var(--c-primary, #1D5FE0); font-weight:700;}
    /* 화살표 터치영역 확보 */
    .recruit-list li .arrow{
        min-width:36px;
        min-height:36px;
        width:36px !important;
        height:36px !important;
    }
}

/* ===== [Section 02 News] 카드 좌우 여백 + dot 정렬 ===== */
@media (max-width:767px){
    .main-sec02 .news-slider{margin:0 -4px;}
    .main-sec02 .news-slider .slick-list{padding:0 12px;}
    .main-sec02 .news-slider > div,
    .main-sec02 .news-slider .slick-slide{padding:0 6px;}
    .main-sec02 .slick-dots{
        position:relative;
        bottom:auto;
        margin-top:24px;
        display:flex !important;
        justify-content:center;
        gap:6px;
    }
    .main-sec02 .slick-dots li{margin:0;}
    .main-sec02 .slick-dots li button{
        width:8px; height:8px;
        background:rgba(0,0,0,.2);
        border-radius:50%;
        font-size:0;
    }
    .main-sec02 .slick-dots li button:before{display:none;}
    .main-sec02 .slick-dots li.slick-active button{
        background:var(--c-primary, #1D5FE0);
        width:24px;
        border-radius:4px;
    }
}

/* ===== [Section 05 Sustainability] CTA 라벨 추가 ===== */
@media (max-width:767px){
    .main-sec05 .main-sus-text{padding:30px 20px 40px;}
    .main-sec05 .main-sus-text .inner{padding:0;}
    .main-sec05 .more-link,
    .main-sec05 .btn-arrow{
        display:inline-flex !important;
        align-items:center;
        gap:10px;
        padding:12px 24px;
        background:#fff;
        color:var(--c-black);
        border-radius:50px;
        font-size:13px;
        font-weight:600;
        text-decoration:none;
    }
}

/* ===== [Section 06 Performance] 카드 화살표 터치영역 ===== */
@media (max-width:767px){
    .main06-investors > a,
    .main06-investors .right > a{
        min-height:120px;
    }
    .main06-investors > a .arrow,
    .main06-investors .right > a .arrow,
    .main06-investors > a .ico-arrow,
    .main06-investors .right > a .ico-arrow{
        min-width:40px;
        min-height:40px;
    }
}
