/* =========================================================
   2026 겨울학기 랜딩 (winter2026) — 스크롤 스토리(winter2026.css) 외의 모든 섹션
   - Figma 「2026 겨울학기」 › 랜딩 › landing-desktop (6001:232)
   - 길이 단위 --u = Figma 1px.
     · 1024px 이상 : 1920 프레임을 창 폭에 맞춰 비례 축소 (최소 0.56배, 최대 1배)
     · 1024px 미만 : 720 폭 기준 모바일 배치 (Figma 시안 없음 — 새로 잡음)
   - 클래스는 .w26- 접두사. 루트(#w26.w26)의 폰트·색 변수는 winter2026.css에서 온다
   ========================================================= */

.w26 {
    --u: clamp(0.56px, calc(100vw / 1920), 1px);
    --w26-line: #e4e4e4;
    --w26-g800: #5a5a5a;
    --w26-g500: #a9a9a9;
    --w26-black: #1a1a1a;
    --w26-mandarin: #fa671f;
    --w26-font-num: fieldwork, Paperozi, Paperlogy, 'Pretendard Variable', Pretendard, sans-serif;
    --w26-font-noto: 'Noto Sans KR', 'Pretendard Variable', Pretendard, sans-serif;
}
@media (max-width: 1023.98px) {
    .w26 { --u: min(calc(100vw / 720), 1.4px); }
}

/* 공통 CSS `.page-landing .main > section { width: 123.2rem; margin: 0 auto }`를 모든 섹션에서 푼다 */
#w26 > section { width: auto; margin-left: 0; margin-right: 0; }
.w26 :where(ul, ol) { margin: 0; padding: 0; list-style: none; }
.w26 :where(button) { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
.w26 :where(img) { display: block; max-width: 100%; height: auto; }
.w26 a { color: inherit; text-decoration: none; }

.w26-sec { position: relative; overflow: hidden; }
.w26-wrap { position: relative; width: calc(1440 * var(--u)); margin: 0 auto; }
.w26-hl { font-family: var(--w26-font-heading); font-weight: 800; }
.w26-or { color: var(--w26-orange); }
.w26-tex { background: #f6f6f6 url('img/winter2026_dots.png') 0 0 / calc(1920 * var(--u)) auto repeat; }
.w26-tex-dark { background: var(--w26-black) url('img/winter2026_dots.png') 0 0 / calc(1920 * var(--u)) auto repeat; background-blend-mode: overlay; }
.w26-mob { display: none; }
.w26 .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* 섹션 번호 (01 · 1–2년 차) */
.w26-no { display: flex; align-items: baseline; gap: calc(12 * var(--u)); line-height: 1.4; }
.w26-no b { font-family: var(--w26-font-heading); font-weight: 800; font-size: calc(24 * var(--u)); color: var(--w26-orange); }
.w26-no span { font-weight: 700; font-size: calc(15 * var(--u)); color: var(--w26-g500); }

/* 동그라미 화살표 (Phosphor ArrowCircleRight를 아래로 돌린 것) */
.w26-down { display: inline-block; width: calc(50 * var(--u)); height: calc(50 * var(--u)); color: inherit; }
.w26-down svg { display: block; width: 100%; height: 100%; transition: transform .3s ease; }
.w26-down:hover svg { transform: translateY(calc(6 * var(--u))); }

/* 영상: 포스터 + 가운데 재생 버튼. 누르면 재생하고 기본 컨트롤을 보인다 (누르기 전엔 영상을 받지 않음, winter2026_page.js) */
.w26-video { position: relative; overflow: hidden; background: #000; aspect-ratio: 16 / 9; }
.w26-video-el { display: block; width: 100%; height: 100%; object-fit: contain; background: #000; }
.w26-video-btn { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; width: 100%; cursor: pointer; }
.w26-video-btn svg { width: calc(76 * var(--u)); height: calc(76 * var(--u)); transition: transform .2s ease; }
.w26-video-btn:hover svg { transform: scale(1.06); }
.w26-video-btn:focus-visible { outline: 2px solid var(--w26-orange); outline-offset: -4px; }
.w26-video.is-started .w26-video-btn { display: none; }

/* =========================================================
   1. 히어로
   ========================================================= */
.w26-hero {
    height: calc(956 * var(--u));
    background: var(--w26-bg) url('img/winter2026_hero_bg.jpg') 0 0 / calc(1920 * var(--u)) auto no-repeat;
    color: var(--w26-white);
}
.w26-hero-in { position: absolute; left: calc(237 * var(--u)); top: calc(152 * var(--u)); }
.w26-hero-tag {
    display: inline-block; padding: 0 calc(6 * var(--u));
    background: var(--w26-white); color: var(--w26-black);
    font-weight: 700; font-size: calc(22 * var(--u)); line-height: calc(27 * var(--u)); letter-spacing: .02em;
    margin-top: calc(2 * var(--u));
}
.w26-hero-title { margin-top: calc(30 * var(--u)); font-size: calc(72 * var(--u)); line-height: 1.4; letter-spacing: .02em; }
.w26-hero-sub { margin-top: calc(32 * var(--u)); font-size: calc(36 * var(--u)); line-height: 1.6; letter-spacing: .02em; }
.w26-hero-sub b { font-weight: 700; }
.w26-hero-desc { margin-top: calc(158 * var(--u)); font-size: calc(24 * var(--u)); line-height: 1.6; letter-spacing: .02em; }
.w26-hero .w26-down { margin-top: calc(16 * var(--u)); }

/* 하단 고정 신청 바 (Figma fall2026_desktop_floating 자리) */
.w26-float {
    position: fixed; left: 50%; bottom: calc(20 * var(--u)); z-index: 90;
    display: flex; align-items: center;
    width: auto; height: calc(64 * var(--u));
    padding: 0 calc(15 * var(--u)) 0 calc(27 * var(--u));
    background: #fff; border: 1px solid var(--w26-orange); border-radius: calc(25 * var(--u));
    box-shadow: 5px 5px 20px rgba(0, 0, 0, .1);
    font-family: var(--w26-font-noto); color: #000; white-space: nowrap;
    transform: translateX(-50%);
    transition: opacity .3s ease, transform .3s ease, visibility .3s;
}
.w26-float.is-hidden { opacity: 0; visibility: hidden; transform: translate(-50%, 30%); }
.w26-float dl { display: flex; align-items: center; margin: 0; }
.w26-float dt { font-weight: 700; font-size: calc(20 * var(--u)); line-height: 1.5; color: #222; }
.w26-float dd { margin: 0 0 0 calc(12 * var(--u)); font-weight: 500; font-size: calc(17 * var(--u)); }
.w26-float dd + dt { margin-left: calc(16 * var(--u)); }
.w26-float-cta {
    display: flex; align-items: center; justify-content: space-between;
    width: calc(156 * var(--u)); height: calc(40 * var(--u)); margin-left: calc(40 * var(--u));
    padding: 0 calc(16 * var(--u)) 0 calc(20 * var(--u));
    background: var(--w26-orange); border-radius: calc(10 * var(--u));
    font-weight: 500; font-size: calc(17 * var(--u)); color: #fff;
}
.w26 .w26-float-cta, .w26 .w26-float-cta:hover { color: #fff; }
.w26-float-cta svg { width: calc(23 * var(--u)); height: calc(23 * var(--u)); transition: transform .3s ease; }
.w26-float-cta:hover svg { transform: translateX(3px); }

/* =========================================================
   2. 파레토 스크롤 스토리 → winter2026.css · winter2026.js
   ========================================================= */

/* 스토리 중간에서 오래 멈춰 있으면 뜨는 스크롤 안내 (화면 px — 무대 배율과 무관) */
.w26-guide {
    position: absolute; right: 24px; bottom: 24px; bottom: calc(24px + env(safe-area-inset-bottom)); z-index: 5;
    display: flex; align-items: center; gap: 10px;
    padding: 10px 12px 10px 18px; border-radius: 999px;
    background: rgba(26, 26, 26, .72); border: 1px solid rgba(255, 255, 255, .25);   /* 주황 원 위에서도 읽히게 어두운 바탕 */
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
    font-weight: 600; font-size: 15px; line-height: 1.4; color: #fff;
    opacity: 0; transform: translateY(10px); pointer-events: none;
    transition: opacity .4s ease, transform .4s ease;
}
.w26-guide.is-on { opacity: 1; transform: none; }
.w26-guide svg { width: 26px; height: 26px; animation: w26-bob 1.8s ease-in-out infinite; }

/* =========================================================
   3. 디랩은 이미 세상을 이끄는 20%를 (성과 캐러셀) — 스토리 끝 화살표가 여기로 온다
   ========================================================= */
/* 카드 크기 단위 --cu: PC에서는 페이지 단위(--u)의 2/3 (261023: Figma 그대로는 보통 UI보다 1.5배쯤 커 보인다는 의견).
   작은 노트북에서 글자가 너무 작아지지 않게 0.5px 아래로는 줄이지 않는다. 모바일은 --u 그대로 */
.w26-ach { --cu: max(calc(var(--u) * 2 / 3), 0.5px); padding: calc(153 * var(--u)) 0 calc(159 * var(--u)); background: #fff; color: var(--w26-black); }
.w26-ach-title { font-size: calc(60 * var(--u)); line-height: 1.4; text-align: center; }
.w26-ach-stage {
    position: relative; display: grid; justify-items: center;
    margin-top: calc(103 * var(--u));
    touch-action: pan-y;
}
.w26-card {
    grid-area: 1 / 1;
    width: calc(720 * var(--cu)); min-height: calc(830 * var(--cu));
    padding-bottom: calc(60 * var(--cu));
    background: #fff; border: calc(2 * var(--cu)) solid var(--w26-line);
    transition: transform .6s cubic-bezier(.4, 0, .2, 1), opacity .6s ease, visibility 0s linear 0s;
    z-index: 1;
}
.w26-card.is-on { z-index: 3; }
.w26-card.is-prev, .w26-card.is-next { opacity: .5; cursor: pointer; z-index: 2; }
.w26-card.is-prev { transform: translateX(calc(-582 * var(--cu))) scale(.7727); }
.w26-card.is-next { transform: translateX(calc(582 * var(--cu))) scale(.7727); }
/* 가운데·양옆이 아닌 카드(4장 이상일 때): 자기 쪽 바깥으로 밀려나며 흐려지고, 다 밀려난 뒤에만 숨긴다.
   다시 들어올 카드는 JS가 들어올 쪽 바깥에 먼저(애니메이션 없이) 갖다 놓는다 → 가운데를 가로지르지 않는다 */
.w26-card.is-far-left, .w26-card.is-far-right {
    opacity: 0; visibility: hidden; z-index: 0; pointer-events: none;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1), opacity .6s ease, visibility 0s linear .6s;
}
.w26-card.is-far-left  { transform: translateX(calc(-1100 * var(--cu))) scale(.6); }
.w26-card.is-far-right { transform: translateX(calc(1100 * var(--cu))) scale(.6); }
.w26-card.is-instant { transition: none !important; }
.w26-card-media { position: relative; height: calc(225 * var(--cu)); overflow: hidden; }
.w26-card-media img { width: 100%; height: 100%; object-fit: cover; }
.w26-card-media.is-logo { display: flex; justify-content: center; padding-top: calc(83 * var(--cu)); }
.w26-card-media.is-logo img { width: calc(278 * var(--cu)); height: calc(92 * var(--cu)); object-fit: contain; }
.w26-card-media.is-wms { padding-top: calc(68 * var(--cu)); }
.w26-card-media.is-wms img { width: calc(224 * var(--cu)); height: calc(115 * var(--cu)); }
.w26-card-body { padding: calc(25 * var(--cu)) calc(37 * var(--cu)) 0 calc(41 * var(--cu)); }
.w26-card-title { font-size: calc(40 * var(--cu)); line-height: 1.4; white-space: nowrap; }
.w26-card-title.is-num { font-family: var(--w26-font-num); font-weight: 700; font-size: calc(48 * var(--cu)); line-height: 1.15; }
.w26-card-desc { margin-top: calc(20 * var(--cu)); font-size: calc(26 * var(--cu)); line-height: 1.6; color: var(--w26-g800); }
.w26-card-num { margin-top: calc(34 * var(--cu)); line-height: 1; color: var(--w26-orange); white-space: nowrap; }
.w26-card-num b { font-family: var(--w26-font-num); font-weight: 700; font-size: calc(96 * var(--cu)); }
.w26-card-num span { font-family: var(--w26-font-heading); font-weight: 700; font-size: calc(48 * var(--cu)); }
.w26-card-num + .w26-card-desc { margin-top: calc(33 * var(--cu)); }
.w26-card-stat { margin-top: calc(36 * var(--cu)); font-weight: 700; font-size: calc(26 * var(--cu)); line-height: 1.6; }
.w26-card-stat-num + .w26-card-stat { margin-top: calc(39 * var(--cu)); }
.w26-card-stat-num { margin-top: calc(10 * var(--cu)); font-weight: 700; font-size: calc(26 * var(--cu)); line-height: 1; color: var(--w26-g500); }
.w26-card-stat + .w26-card-stat-num + .w26-card-stat + .w26-card-stat-num { margin-top: calc(6 * var(--cu)); }
.w26-card-stat-num b { display: inline-block; line-height: 1; font-family: var(--w26-font-heading); font-weight: 800; font-size: calc(72 * var(--cu)); color: var(--w26-orange); }
.w26-card-src { margin-top: calc(35 * var(--cu)); font-size: calc(26 * var(--cu)); line-height: 1.6; color: var(--w26-g500); }
.w26-steps { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: calc(83 * var(--cu)); text-align: center; }
.w26-steps i {
    display: flex; align-items: center; justify-content: center;
    width: calc(50 * var(--cu)); height: calc(50 * var(--cu)); margin: 0 auto;
    border-radius: 50%; background: var(--w26-orange);
    font-style: normal; font-family: var(--w26-font-num); font-weight: 700; font-size: calc(30 * var(--cu)); line-height: 1; color: #fff;
}
.w26-steps p { margin-top: calc(16 * var(--cu)); font-weight: 700; font-size: calc(26 * var(--cu)); line-height: 1.6; white-space: nowrap; }
.w26-card-foot { margin-top: calc(80 * var(--cu)); font-size: calc(26 * var(--cu)); line-height: 1.6; color: var(--w26-g800); }

.w26-dots { display: flex; justify-content: center; gap: calc(10 * var(--u)); margin-top: calc(42 * var(--u)); }
.w26-dots button { position: relative; width: calc(20 * var(--u)); height: 24px; transition: width .3s ease; }
.w26-dots button::before { content: ''; position: absolute; left: 0; right: 0; top: 50%; height: 4px; margin-top: -2px; background: var(--w26-line); transition: background .3s ease; }
.w26-dots button.is-on { width: calc(40 * var(--u)); }
.w26-dots button.is-on::before { background: var(--w26-orange); }
.w26-dots button:focus-visible { outline: 2px solid var(--w26-orange); outline-offset: 2px; }

/* =========================================================
   4. 디랩의 AI 철학
   ========================================================= */
.w26-phil { padding: calc(180 * var(--u)) 0; color: var(--w26-black); text-align: center; }
.w26-eyebrow { font-weight: 700; font-size: calc(22 * var(--u)); line-height: 1.4; color: var(--w26-orange); }
.w26-phil-title { margin-top: calc(28 * var(--u)); font-size: calc(54 * var(--u)); line-height: 1.4; }
.w26-phil-note { margin-top: calc(10 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.4; color: var(--w26-g500); }
.w26-phil-duo { display: flex; justify-content: center; gap: calc(60 * var(--u)); margin-top: calc(70 * var(--u)); }
.w26-phil-c {
    display: flex; flex-direction: column; align-items: center;
    width: calc(540 * var(--u)); height: calc(540 * var(--u)); border-radius: 50%;
}
.w26-phil-c.is-white { padding-top: calc(99 * var(--u)); background: #fff; color: var(--w26-g800); }
.w26-phil-c.is-orange { padding-top: calc(89 * var(--u)); background: var(--w26-orange); color: #fff; }
.w26-phil-c .lead { font-weight: 500; font-size: calc(30 * var(--u)); line-height: 1.4; }
.w26-phil-c .ttak { margin-top: calc(44 * var(--u)); font-family: var(--w26-font-heading); font-weight: 800; font-size: calc(96 * var(--u)); line-height: 1.1; color: #c9c9c9; }
.w26-phil-c .ttak + .lead { margin-top: calc(44 * var(--u)); }
.w26-phil-c h3 { margin-top: calc(24 * var(--u)); font-size: calc(48 * var(--u)); line-height: 1.25; }
.w26-phil-c .body { margin-top: calc(27 * var(--u)); font-size: calc(26 * var(--u)); line-height: 1.65; }
.w26-phil-c .body b { font-weight: 800; }
.w26-phil-next { margin-top: calc(100 * var(--u)); font-weight: 600; font-size: calc(32 * var(--u)); line-height: 1.4; }
.w26-phil-next b { font-weight: 700; }
.w26-phil .w26-down { margin-top: calc(20 * var(--u)); color: var(--w26-black); }

/* =========================================================
   5. AI STUDIO 소개 · 3년 지도
   ========================================================= */
.w26-studio { padding: calc(180 * var(--u)) 0; background: var(--w26-black); color: #fff; text-align: center; }
.w26-studio .w26-eyebrow { font-family: var(--w26-font-heading); font-weight: 800; letter-spacing: .06em; }
.w26-studio-title { margin-top: calc(24 * var(--u)); font-size: calc(68 * var(--u)); line-height: 1.3; }
.w26-studio-sub { margin-top: calc(28 * var(--u)); font-size: calc(28 * var(--u)); line-height: 1.6; color: #bdbdbd; }
.w26-years {
    display: grid; grid-template-columns: 440fr 440fr 500fr; column-gap: calc(30 * var(--u)); row-gap: calc(32 * var(--u));
    align-items: end; margin-top: calc(130 * var(--u)); text-align: left;
}
.w26-year { padding: calc(36 * var(--u)); }
.w26-year:nth-child(1) { height: calc(230 * var(--u)); background: #2a2a2a; }
.w26-year:nth-child(2) { height: calc(300 * var(--u)); background: #3a3a3a; }
.w26-year:nth-child(3) { height: calc(380 * var(--u)); background: linear-gradient(180deg, #fa4616, #fa671f); }
.w26-year small { display: block; font-weight: 700; font-size: calc(22 * var(--u)); line-height: 1.4; color: var(--w26-g500); }
.w26-year:nth-child(3) small { color: #ffd9cc; }
.w26-year h3 { margin-top: calc(10 * var(--u)); font-size: calc(36 * var(--u)); line-height: 1.25; white-space: nowrap; }
.w26-year:nth-child(3) h3 { font-size: calc(44 * var(--u)); }
.w26-year p { margin-top: calc(14 * var(--u)); font-weight: 500; font-size: calc(20 * var(--u)); line-height: 1.5; color: #cfcfcf; }
.w26-year:nth-child(3) p { color: #fff; }
.w26-power { display: flex; align-items: center; gap: calc(18 * var(--u)); font-weight: 600; font-size: calc(26 * var(--u)); line-height: 1.4; white-space: nowrap; }
.w26-power.is-2 { margin-left: calc(-10 * var(--u)); }
.w26-power.is-3 { font-weight: 700; }
.w26-power::after {
    content: ''; flex: 1; height: calc(11 * var(--u));
    background: no-repeat right center / auto 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='11' viewBox='0 0 25 11' fill='none'%3E%3Cpath d='M18.7 1l4.8 4.5-4.8 4.5' stroke='white' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),
                linear-gradient(#fff, #fff) no-repeat left center / calc(100% - 2px) 1px;
}

/* =========================================================
   6. D.LAB AI STUDIO 교육은 네 가지가 다릅니다
   ========================================================= */
.w26-four { padding: calc(101 * var(--u)) 0; background: #f6f6f6; color: var(--w26-black); text-align: center; }
.w26-four h2 { font-family: var(--w26-font-heading); font-weight: 700; font-size: calc(40 * var(--u)); line-height: 1.25; }
.w26-four h2 b { font-family: var(--w26-font-num); font-weight: 700; font-size: calc(46 * var(--u)); }

/* 주제 공통 */
.w26-topic { padding: calc(180 * var(--u)) 0; color: var(--w26-black); }
.w26-topic-title { margin-top: calc(32 * var(--u)); font-size: calc(64 * var(--u)); line-height: 1.25; }

/* 6-1. 끊임없는 대화 */
.w26-t1 { background: #fff; }
.w26-t1-head { display: flex; justify-content: space-between; }
.w26-t1-head > p { width: calc(500 * var(--u)); padding-top: calc(64 * var(--u)); font-size: calc(24 * var(--u)); line-height: 1.65; color: var(--w26-g800); white-space: nowrap; }
.w26-t1-body { display: flex; justify-content: space-between; margin-top: calc(95 * var(--u)); }
.w26-chat { width: calc(520 * var(--u)); }
.w26-chat-cap { font-weight: 700; font-size: calc(13 * var(--u)); line-height: 1.4; letter-spacing: .04em; color: var(--w26-g500); }
.w26-chat-cap + .w26-msg { margin-top: calc(14 * var(--u)); }
.w26-msg { display: flex; flex-direction: column; align-items: flex-start; }
.w26-msg + .w26-msg { margin-top: calc(22 * var(--u)); }
.w26-msg.is-kid { align-items: flex-end; }
.w26-msg small { font-weight: 700; font-size: calc(16 * var(--u)); line-height: 1.4; color: var(--w26-g800); }
.w26-msg.is-kid small { color: var(--w26-black); }
.w26-msg p { margin-top: calc(8 * var(--u)); padding: calc(16 * var(--u)) calc(24 * var(--u)); background: #efefef; font-weight: 500; font-size: calc(21 * var(--u)); line-height: 1.5; white-space: nowrap; }
.w26-msg.is-kid p { background: var(--w26-black); color: #fff; font-weight: 600; }
.w26-t1 .w26-video { width: calc(860 * var(--u)); height: calc(484 * var(--u)); aspect-ratio: auto; }

/* 6-2. 배우면서 만들고 */
.w26-t2 { padding-bottom: calc(171 * var(--u)); text-align: center; }
.w26-t2 .w26-no { justify-content: center; gap: calc(22 * var(--u)); }
.w26-t2 .w26-topic-title { margin-top: calc(32 * var(--u)); }
.w26-t2-sub { margin-top: calc(24 * var(--u)); font-weight: 500; font-size: calc(28 * var(--u)); line-height: 1.4; color: var(--w26-g800); }
.w26-steps4 { display: flex; justify-content: space-between; margin-top: calc(80 * var(--cu)); text-align: left; }
.w26-step { position: relative; width: calc(330 * var(--u)); min-height: calc(560 * var(--u)); padding: calc(28 * var(--u)); background: #fff; }
.w26-step + .w26-step::before {
    content: ''; position: absolute; left: calc(-32 * var(--u)); top: calc(66 * var(--u));
    width: calc(25 * var(--u)); height: calc(11 * var(--u));
    background: no-repeat center / 100% 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='11' viewBox='0 0 25 11' fill='none'%3E%3Cpath d='M0 5.5h24M19.2 1l4.8 4.5-4.8 4.5' stroke='%235A5A5A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.w26-step.is-last { background: var(--w26-orange); color: #fff; }
.w26-step-no { font-family: var(--w26-font-heading); font-weight: 800; font-size: calc(18 * var(--u)); line-height: 1.4; color: var(--w26-orange); }
.w26-step.is-last .w26-step-no { color: #ffd9cc; }
.w26-step h3 { margin-top: calc(6 * var(--u)); font-size: calc(32 * var(--u)); line-height: 1.4; }
.w26-step-in { margin-top: calc(24 * var(--u)); }
.w26-monet figure { position: relative; height: calc(72 * var(--u)); margin: 0; overflow: hidden; }
.w26-monet figure + figure { margin-top: calc(6 * var(--u)); }
.w26-monet img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; }
.w26-monet figcaption { position: absolute; left: calc(8 * var(--u)); bottom: calc(5 * var(--u)); font-weight: 700; font-size: calc(12 * var(--u)); line-height: 1.4; color: #fff; text-shadow: 0 1px 3px rgba(0, 0, 0, .55); }
.w26-step-q { margin-top: calc(24 * var(--u)); font-weight: 600; font-size: calc(22 * var(--u)); line-height: 1.55; }
.w26-step-credit { margin-top: calc(14 * var(--u)); font-size: calc(11 * var(--u)); line-height: 1.45; color: var(--w26-g500); }
.w26-step-p { font-size: calc(21 * var(--u)); line-height: 1.55; color: var(--w26-g800); }
.w26-step.is-last .w26-step-p { color: #fff; }
.w26-step-list { margin-top: calc(29 * var(--u)); }
.w26-step-list li {
    display: flex; align-items: center; gap: calc(14 * var(--u));
    height: calc(56 * var(--u)); padding-left: calc(18 * var(--u));
    background: #f6f6f6; font-weight: 600; font-size: calc(18 * var(--u)); line-height: 1.4;
}
.w26-step-list li + li { margin-top: calc(12 * var(--u)); }
.w26-step-list li::before { content: ''; flex: none; width: calc(8 * var(--u)); height: calc(8 * var(--u)); border-radius: 50%; background: var(--w26-orange); }
/* 아이 작품 5장: 같은 자리에 겹쳐 두고 하나씩 서서히 바뀐다 */
.w26-step-work { position: relative; height: calc(190 * var(--u)); overflow: hidden; background: #d9d9d9; }
.w26-step-work img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 1.2s ease; }
.w26-step-work img.is-on { opacity: 1; }
.w26-step-work + .w26-step-p { margin-top: calc(24 * var(--u)); font-size: calc(20 * var(--u)); }
.w26-step-eg { margin-top: calc(14 * var(--u)); font-weight: 700; font-size: calc(18 * var(--u)); line-height: 1.4; color: var(--w26-orange); }
.w26-t2 .w26-video { width: calc(860 * var(--u)); margin: calc(80 * var(--u)) auto 0; }
.w26-t2-close { margin-top: calc(80 * var(--u)); font-size: calc(36 * var(--u)); line-height: 1.35; }

/* 6-2'. 프로슈머 */
.w26-pro { padding: calc(72 * var(--u)) 0 calc(66 * var(--u)); color: #fff; text-align: center; }
.w26-pro img { width: calc(180 * var(--u)); height: calc(180 * var(--u)); margin: 0 auto; border-radius: 50%; }
.w26-pro-term { margin-top: calc(30 * var(--u)); font-weight: 700; font-size: calc(20 * var(--u)); line-height: 1.5; }
.w26-pro-term span { margin-left: .5em; font-weight: 500; }
.w26-pro-desc { margin-top: calc(30 * var(--u)); font-size: calc(16 * var(--u)); line-height: 1.5; }

/* 6-3. 학생, AI, 선생님 */
.w26-t3 { padding-bottom: calc(261 * var(--u)); background: #fff; }
.w26-t3 .w26-no { gap: calc(20 * var(--u)); }
.w26-t3-body { display: flex; align-items: center; justify-content: space-between; margin-top: calc(77 * var(--u)); }
.w26-tri { position: relative; flex: none; width: calc(603 * var(--u)); height: calc(507 * var(--u)); }
.w26-tri > * { position: absolute; }
.w26-tri-c {
    display: flex; align-items: center; justify-content: center;
    width: calc(131 * var(--u)); height: calc(131 * var(--u)); border-radius: 50%;
    font-family: var(--w26-font-heading); font-weight: 800; font-size: calc(30 * var(--u)); line-height: 1.4;
}
.w26-tri-c.is-kid { left: calc(236 * var(--u)); top: 0; background: var(--w26-orange); color: #fff; }
.w26-tri-c.is-ai { left: 0; top: calc(376 * var(--u)); background: var(--w26-black); color: #fff; }
.w26-tri-c.is-teacher { left: calc(472 * var(--u)); top: calc(376 * var(--u)); border: calc(1.3 * var(--u)) solid var(--w26-black); background: #fff; color: var(--w26-black); }
.w26-tri-line { display: block; }
.w26-tri-line.is-ai { left: calc(104 * var(--u)); top: calc(131 * var(--u)); width: calc(158 * var(--u)); height: calc(246 * var(--u)); }
.w26-tri-line.is-teacher { left: calc(340 * var(--u)); top: calc(131 * var(--u)); width: calc(158 * var(--u)); height: calc(246 * var(--u)); }
.w26-tri-line.is-base { left: calc(143.3 * var(--u)); top: calc(440.7 * var(--u)); width: calc(316.4 * var(--u)); height: calc(1.31 * var(--u)); }
.w26-tri-mask { left: calc(80 * var(--u)); top: calc(211 * var(--u)); width: calc(462 * var(--u)); height: calc(74 * var(--u)); background: #fff; }
.w26-tri-t { top: calc(221 * var(--u)); width: calc(300 * var(--u)); margin-left: calc(-150 * var(--u)); font-weight: 600; font-size: calc(20 * var(--u)); line-height: 1.55; text-align: center; white-space: nowrap; }
.w26-tri-t.is-ai { left: calc(166 * var(--u)); color: var(--w26-orange); }
.w26-tri-t.is-teacher { left: calc(466 * var(--u)); }
.w26-t3 .w26-video { width: calc(740 * var(--u)); height: calc(416 * var(--u)); aspect-ratio: auto; }

/* 6-4. 담대한 비전과 도전 */
/* 점 무늬를 overlay로 섞으면 바탕이 밝아지므로, 더 어두운 바탕(#0f0f0f)에서 섞어 Figma의 #1f1f1f 톤에 맞춘다 */
.w26-t4 { padding: calc(220 * var(--u)) 0 calc(160 * var(--u)); background-color: #0f0f0f; color: #fff; }
.w26-t4 .w26-no { gap: calc(20 * var(--u)); }
.w26-t4 .w26-no span { color: var(--w26-orange); }
.w26-t4-kicker { margin-top: calc(32 * var(--u)); font-size: calc(44 * var(--u)); line-height: 1.4; }
.w26-t4-title { margin: calc(72 * var(--u)) 0 0 calc(-6 * var(--u)); font-size: calc(86 * var(--u)); line-height: 1.22; }
.w26-t4-lead { margin-top: calc(106 * var(--u)); font-size: calc(44 * var(--u)); line-height: 1.4; }
.w26-t4-p { margin-top: calc(17 * var(--u)); font-size: calc(28 * var(--u)); line-height: 1.6; color: #e4e4e4; }
.w26-t4-mid { margin-top: calc(120 * var(--u)); font-weight: 600; font-size: calc(24 * var(--u)); line-height: 1.5; color: #bdbdbd; text-align: center; }
.w26-t4-mid b { font-weight: 700; color: #fff; }
.w26-tech {
    display: grid; grid-template-columns: repeat(3, 1fr); align-items: center;
    margin-top: calc(65 * var(--u)); padding: calc(64 * var(--u)) 0;
    border-top: 1px solid #3a3a3a; border-bottom: 1px solid #3a3a3a;
}
.w26-tech li { position: relative; font-family: var(--w26-font-heading); font-weight: 800; font-size: calc(76 * var(--u)); line-height: 1.15; text-align: center; white-space: nowrap; }
.w26-tech li:last-child { font-size: calc(70 * var(--u)); }
.w26-tech li + li::before { content: ''; position: absolute; left: 0; top: 50%; width: 1px; height: calc(84 * var(--u)); margin-top: calc(-42 * var(--u)); background: #3a3a3a; }
.w26-loop { position: relative; width: max-content; margin: calc(97 * var(--u)) auto 0; padding-bottom: calc(41 * var(--u)); }
.w26-loop ol { display: flex; justify-content: center; align-items: center; gap: calc(12 * var(--u)); }
.w26-loop li {
    padding: calc(14.4 * var(--u)) calc(28.7 * var(--u));
    border: calc(1.8 * var(--u)) solid var(--w26-g800); border-radius: 999px;
    font-weight: 600; font-size: calc(26.3 * var(--u)); line-height: 1.4; white-space: nowrap;
}
.w26-loop li.is-last { border-color: var(--w26-orange); color: var(--w26-orange); }
.w26-loop li.w26-loop-arrow { width: calc(43 * var(--u)); height: calc(13 * var(--u)); padding: 0; border: 0; border-radius: 0; }
.w26-loop li.w26-loop-arrow svg { display: block; width: 100%; height: 100%; }
.w26-loop-back { position: absolute; left: calc(84.3 * var(--u)); top: calc(78.9 * var(--u)); width: calc(1130.3 * var(--u)); height: calc(32 * var(--u)); }

/* =========================================================
   7. 맺음 — AI STUDIO 체험
   ========================================================= */
.w26-cta {
    padding: calc(129 * var(--u)) 0 calc(157 * var(--u));
    background: linear-gradient(rgba(0, 0, 0, .7), rgba(0, 0, 0, .7)), var(--w26-bg) url('img/winter2026_hero_bg.jpg') center / cover no-repeat;
    color: #fff; text-align: center;
}
.w26-cta h2 { font-size: calc(56 * var(--u)); line-height: 1.4; }
.w26-cta p { margin-top: calc(41 * var(--u)); font-size: calc(20 * var(--u)); line-height: 1.4; }
.w26-cta-btn {
    display: inline-flex; align-items: center; gap: calc(33 * var(--u));
    height: calc(96 * var(--u)); margin-top: calc(42 * var(--u)); padding: 0 calc(27 * var(--u)) 0 calc(33 * var(--u));
    background: #fff; border: 2px solid var(--w26-black);
    font-weight: 700; font-size: calc(26 * var(--u)); line-height: 1.4;
    transition: background .2s ease;
}
.w26 .w26-cta-btn, .w26 .w26-cta-btn:hover { color: var(--w26-black); }
.w26-cta-btn:hover { background: #f6f6f6; }
.w26-cta-btn svg { width: calc(40 * var(--u)); height: calc(40 * var(--u)); }
.w26 .w26-cta-note { margin-top: calc(16 * var(--u)); font-size: max(calc(16 * var(--u)), 13px); line-height: 1.4; color: rgba(255, 255, 255, .7); }

/* =========================================================
   8. 궁금하실 거에요 (FAQ)
   ========================================================= */
.w26-faq { padding: calc(130 * var(--u)) 0 calc(102 * var(--u)); color: var(--w26-black); }
.w26-faq h2 { font-size: calc(36 * var(--u)); line-height: 1.4; text-align: center; }
.w26-faq-list { width: calc(900 * var(--u)); margin: calc(40 * var(--u)) auto 0; }
.w26-faq-item { background: #fff; border: calc(1.25 * var(--u)) solid var(--w26-line); }
.w26-faq-item + .w26-faq-item { margin-top: calc(-1.25 * var(--u)); }
.w26-faq-q {
    display: flex; align-items: center; gap: calc(12.5 * var(--u));
    width: 100%; padding: calc(23.75 * var(--u)) calc(25 * var(--u));
    font-weight: 700; font-size: calc(25 * var(--u)); line-height: 1.6; text-align: left; color: var(--w26-black);
}
.w26-faq-q span { flex: 1; }
.w26-faq-q svg { flex: none; width: calc(25 * var(--u)); height: calc(25 * var(--u)); transition: transform .25s ease; }
.w26-faq-item.is-open .w26-faq-q svg { transform: rotate(90deg); }
.w26-faq-q:focus-visible { outline: 2px solid var(--w26-orange); outline-offset: -2px; }
.w26-faq-a { padding: calc(2 * var(--u)) calc(25 * var(--u)) calc(25 * var(--u)); }
.w26-faq-a[hidden] { display: none; }
.w26-faq-a p { max-width: calc(600 * var(--u)); font-size: calc(17.5 * var(--u)); line-height: 1.6; color: #000; }

/* =========================================================
   9. 체험설명회 · 상시 입반 · 캠퍼스 신청
   ========================================================= */
.w26-apply { padding: calc(170 * var(--u)) 0 calc(200 * var(--u)); background: #fff; color: var(--w26-black); text-align: center; }
.w26-apply-tag { display: inline-block; padding: calc(16 * var(--u)) calc(24 * var(--u)); background: var(--w26-black); font-family: var(--w26-font-heading); font-weight: 600; font-size: calc(36 * var(--u)); line-height: 1.5; color: #fff; }
.w26-apply-lead { margin-top: calc(40 * var(--u)); font-weight: 600; font-size: calc(24 * var(--u)); line-height: 1.5; color: #000; }
.w26-benefit { width: calc(632 * var(--u)); margin: calc(93 * var(--u)) auto 0; }
.w26-banner {
    position: relative; z-index: 1;
    width: calc(880 * var(--u)); margin: calc(-64 * var(--u)) auto 0; padding: calc(35 * var(--u)) 0 calc(33 * var(--u));
    background: linear-gradient(180deg, #fa4616, #fa671f); border: 2px solid #000; box-shadow: 4px 4px 0 var(--w26-black);
    color: #fff;
}
.w26-banner h2 { font-family: var(--w26-font-heading); font-weight: 700; font-size: calc(36 * var(--u)); line-height: 1.5; }
.w26-banner p { margin-top: calc(16 * var(--u)); font-family: var(--w26-font-noto); font-size: calc(22 * var(--u)); line-height: 1.7; letter-spacing: -.02em; }
.w26-banner p span { display: inline-block; margin: 0 calc(6 * var(--u)); padding: 0 calc(12 * var(--u)) 2px; border: calc(2.5 * var(--u)) solid #fff; border-radius: 2px; font-weight: 700; font-size: calc(18 * var(--u)); line-height: 1.7; letter-spacing: -.02em; vertical-align: 1px; }
.w26-banner p span:first-child { margin-left: 0; }
.w26-banner p span.is-kakao { padding: 0 calc(10 * var(--u)) 2px; border-color: #ffe600; color: #ffe600; }

/* 캠퍼스 목록: campuses.js가 #enroll 안에 .campus-container 카드를 넣는다.
   스크립트 기본 색(파랑·노랑)을 Figma 카드(만다린·회색)로 덮는다. 헤더에도 .campus-name이 있으니 반드시 #enroll 아래로만 쓴다 */
.w26 #enroll {
    display: grid; grid-template-columns: repeat(3, calc(279.3 * var(--u)));
    justify-content: center; column-gap: calc(21 * var(--u)); row-gap: calc(25 * var(--u));
    margin-top: calc(41 * var(--u)); text-align: left;
}
.w26 #enroll .campus-container { display: flex; flex-direction: column; position: relative; min-width: 0; }
.w26 #enroll .campus-name {
    position: relative; display: flex; flex-direction: column;
    height: calc(140 * var(--u)); padding: calc(29 * var(--u)) 0 0 calc(27 * var(--u));
    background: #fff; border: calc(2 * var(--u)) solid #000;
}
.w26 #enroll .campus-name p { font-family: var(--w26-font-noto); font-weight: 700; font-size: calc(28 * var(--u)); line-height: 1.7; letter-spacing: -.02em; color: #000; white-space: nowrap; }
.w26 #enroll .campus-call-container { display: flex; align-items: center; gap: calc(8 * var(--u)); }
.w26 #enroll .campus-callnum { font-family: var(--w26-font-noto); font-weight: 500; font-size: calc(20 * var(--u)); line-height: 1.7; letter-spacing: -.02em; color: #000; }
.w26 #enroll .campus-call-icon { font-family: var(--w26-font-noto); font-size: calc(18 * var(--u)); line-height: 1.7; color: #a7a7a7; }
.w26 #enroll .new-sticker {
    position: absolute; left: calc(-2 * var(--u)); top: calc(-2 * var(--u));
    width: calc(79.3 * var(--u)); height: calc(33 * var(--u)); padding-left: calc(14.5 * var(--u));
    background: #f14e1c; border: calc(2 * var(--u)) solid #000;
    font-family: var(--w26-font-noto); font-weight: 700; font-size: calc(17 * var(--u)); line-height: calc(29 * var(--u)); letter-spacing: .1em; color: #fff;
}
.w26 #enroll .campus-enroll-link,
.w26 #enroll .campus-kakaotalk-link {
    display: flex; align-items: center; justify-content: space-between;
    margin-top: calc(-4 * var(--u)); padding: 0 calc(19 * var(--u)) 0 calc(14.5 * var(--u));
    border: calc(2 * var(--u)) solid #000;
    transition: filter .2s ease;
}
.w26 #enroll .campus-enroll-link { height: calc(74.2 * var(--u)); background: var(--w26-mandarin); }
.w26 #enroll .campus-kakaotalk-link { margin-top: calc(-3 * var(--u)); height: calc(70.1 * var(--u)); background: var(--w26-line); }
.w26 #enroll .campus-enroll-link:hover,
.w26 #enroll .campus-kakaotalk-link:hover { filter: brightness(.95); }
.w26 #enroll .campus-enroll-link span { font-family: var(--w26-font-noto); font-weight: 700; font-size: calc(19 * var(--u)); line-height: 1.3; letter-spacing: -.02em; color: #fff; }
.w26 #enroll .campus-kakaotalk-link span { font-family: var(--w26-font-noto); font-weight: 700; font-size: calc(20 * var(--u)); line-height: 1.7; letter-spacing: .02em; color: #333; }
.w26 #enroll .campus-enroll-link svg,
.w26 #enroll .campus-kakaotalk-link svg { flex: none; width: calc(33 * var(--u)); height: calc(33 * var(--u)); }
.w26 #enroll .campus-kakaotalk-link svg path,
.w26 #enroll .campus-kakaotalk-link svg circle { stroke: #1a1a1a; stroke-width: 2; }
.w26 #enroll .campus-enroll-link svg path,
.w26 #enroll .campus-enroll-link svg circle { stroke-width: 2; }

/* =========================================================
   모바일 (1024px 미만) — 720 폭 기준
   ========================================================= */
@media (max-width: 1023.98px) {
    .w26-desk { display: none; }
    .w26-mob { display: inline; }
    .w26-wrap { width: auto; margin: 0 calc(40 * var(--u)); }
    .w26-no b { font-size: calc(26 * var(--u)); }
    .w26-no span { font-size: calc(20 * var(--u)); }
    .w26-down { width: calc(60 * var(--u)); height: calc(60 * var(--u)); }
    .w26-video-btn svg { width: calc(96 * var(--u)); height: calc(96 * var(--u)); }

    /* 1. 히어로: 모바일 전용 세로 이미지(1000×1900, 위 1/3이 검정 #080808)를 쓴다.
       글자는 전부 위쪽 검은 영역에 쌓고, 이미지를 235u 내려 조각상 머리(이미지의 461u 지점)가 화살표 아래에서 시작하게 한다.
       글자 크기·여백을 바꾸면 이 내림값(235)과 높이(1535)도 다시 맞춘다 */
    .w26-hero {
        height: calc(1535 * var(--u)); padding-top: calc(64 * var(--u));
        background: #080808 url('img/winter2026_hero_bg_mob.jpg') 50% calc(235 * var(--u)) / 100% auto no-repeat;
    }
    .w26-hero-in { position: static; padding: 0 calc(40 * var(--u)); }
    .w26-hero-tag { font-size: calc(24 * var(--u)); line-height: calc(32 * var(--u)); }
    .w26-hero-title { margin-top: calc(32 * var(--u)); font-size: calc(60 * var(--u)); line-height: 1.35; }
    .w26-hero-sub { margin-top: calc(24 * var(--u)); font-size: calc(32 * var(--u)); }
    .w26-hero-desc { margin-top: calc(40 * var(--u)); font-size: calc(27 * var(--u)); }
    .w26-hero .w26-down { margin-top: calc(24 * var(--u)); }

    .w26-guide { right: 16px; bottom: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); padding: 8px 10px 8px 14px; font-size: 13px; }
    .w26-guide svg { width: 22px; height: 22px; }

    .w26-float {
        left: 12px; right: 12px; bottom: 12px; bottom: calc(12px + env(safe-area-inset-bottom));
        width: auto; height: auto; padding: 10px 10px 10px 16px; border-radius: 16px;
        transform: none;
    }
    .w26-float.is-hidden { transform: translateY(30%); }
    .w26-float dl { display: grid; grid-template-columns: auto 1fr; column-gap: 8px; row-gap: 2px; }
    .w26-float dt { font-size: 13px; line-height: 1.5; }
    .w26-float dd { margin: 0; font-size: 12.5px; line-height: 1.5; }
    .w26-float dd + dt { margin-left: 0; }
    .w26-float-cta { width: auto; height: 40px; margin-left: auto; gap: 8px; padding: 0 12px 0 16px; border-radius: 10px; font-size: 15px; }
    .w26-float-cta svg { width: 20px; height: 20px; }

    /* 3. 성과 캐러셀 */
    .w26-ach { --cu: var(--u); padding: calc(130 * var(--u)) 0 calc(130 * var(--u)); }
    .w26-ach-title { font-size: calc(48 * var(--u)); }
    .w26-ach-stage { margin-top: calc(70 * var(--u)); }
    .w26-card { width: calc(580 * var(--cu)); min-height: 0; padding-bottom: calc(48 * var(--cu)); }
    .w26-card.is-prev { transform: translateX(calc(-540 * var(--cu))) scale(.85); }
    .w26-card.is-next { transform: translateX(calc(540 * var(--cu))) scale(.85); }
    .w26-card.is-far-left  { transform: translateX(calc(-1000 * var(--cu))) scale(.7); }
    .w26-card.is-far-right { transform: translateX(calc(1000 * var(--cu))) scale(.7); }
    .w26-card-media { height: calc(200 * var(--cu)); }
    .w26-card-media.is-logo { padding-top: calc(66 * var(--cu)); }
    .w26-card-media.is-logo img { width: calc(230 * var(--cu)); height: calc(76 * var(--cu)); }
    .w26-card-body { padding: calc(28 * var(--cu)) calc(32 * var(--cu)) 0; }
    .w26-card-title { font-size: calc(34 * var(--cu)); white-space: normal; }
    .w26-card-title.is-num { font-size: calc(38 * var(--cu)); }
    .w26-card-desc, .w26-card-foot, .w26-card-src { font-size: calc(24 * var(--cu)); }
    .w26-card-num b { font-size: calc(76 * var(--cu)); }
    .w26-card-num span { font-size: calc(38 * var(--cu)); }
    .w26-card-media.is-wms { padding-top: calc(52 * var(--cu)); }
    .w26-card-media.is-wms img { width: calc(186 * var(--cu)); height: calc(96 * var(--cu)); }
    .w26-card-stat { margin-top: calc(30 * var(--cu)); font-size: calc(23 * var(--cu)); }
    .w26-card-stat-num { font-size: calc(22 * var(--cu)); line-height: 1.2; }
    .w26-card-stat-num b { font-size: calc(58 * var(--cu)); }
    .w26-steps { margin-top: calc(48 * var(--cu)); }
    .w26-steps i { width: calc(48 * var(--cu)); height: calc(48 * var(--cu)); font-size: calc(26 * var(--cu)); }
    .w26-steps p { font-size: calc(21 * var(--cu)); white-space: normal; }
    .w26-card-foot { margin-top: calc(48 * var(--cu)); }
    .w26-dots { margin-top: calc(40 * var(--u)); }
    .w26-dots button { width: calc(28 * var(--u)); }
    .w26-dots button.is-on { width: calc(56 * var(--u)); }

    /* 4. AI 철학: 원 두 개를 겹쳐 세로로 */
    .w26-phil { padding: calc(130 * var(--u)) 0; }
    .w26-eyebrow { font-size: calc(24 * var(--u)); }
    .w26-phil-title { margin-top: calc(20 * var(--u)); font-size: calc(44 * var(--u)); }
    .w26-phil-note { font-size: calc(18 * var(--u)); }
    .w26-phil-duo { flex-direction: column; align-items: center; gap: 0; margin-top: calc(56 * var(--u)); }
    .w26-phil-c { width: calc(500 * var(--u)); height: calc(500 * var(--u)); }
    .w26-phil-c.is-white { padding-top: calc(88 * var(--u)); }
    .w26-phil-c.is-orange { margin-top: calc(-40 * var(--u)); padding-top: calc(80 * var(--u)); }
    .w26-phil-c .lead { font-size: calc(28 * var(--u)); }
    .w26-phil-c .ttak { margin-top: calc(36 * var(--u)); font-size: calc(90 * var(--u)); }
    .w26-phil-c .ttak + .lead { margin-top: calc(36 * var(--u)); }
    .w26-phil-c h3 { margin-top: calc(18 * var(--u)); font-size: calc(46 * var(--u)); }
    .w26-phil-c .body { margin-top: calc(20 * var(--u)); font-size: calc(24 * var(--u)); }
    .w26-phil-next { margin-top: calc(72 * var(--u)); font-size: calc(30 * var(--u)); }

    /* 5. AI STUDIO: 계단을 세로로 */
    .w26-studio { padding: calc(130 * var(--u)) 0; }
    .w26-studio-title { font-size: calc(52 * var(--u)); }
    .w26-studio-sub { margin-top: calc(24 * var(--u)); font-size: calc(26 * var(--u)); }
    .w26-years { grid-template-columns: 1fr; grid-auto-flow: row; row-gap: 0; margin-top: calc(72 * var(--u)); }
    .w26-year { order: var(--o); height: auto !important; }
    .w26-year:nth-child(1) { --o: 1; min-height: calc(200 * var(--u)); }
    .w26-year:nth-child(2) { --o: 3; min-height: calc(220 * var(--u)); }
    .w26-year:nth-child(3) { --o: 5; min-height: calc(240 * var(--u)); }
    .w26-power { margin: calc(16 * var(--u)) 0 calc(32 * var(--u)) !important; font-size: calc(26 * var(--u)); }
    .w26-power.is-1 { order: 2; }
    .w26-power.is-2 { order: 4; }
    .w26-power.is-3 { order: 6; margin-bottom: 0 !important; }
    .w26-year small { font-size: calc(22 * var(--u)); }
    .w26-year h3 { font-size: calc(40 * var(--u)); }
    .w26-year:nth-child(3) h3 { font-size: calc(44 * var(--u)); }
    .w26-year p { font-size: calc(22 * var(--u)); }

    .w26-four { padding: calc(80 * var(--u)) calc(40 * var(--u)); }
    .w26-four h2 { font-size: calc(40 * var(--u)); line-height: 1.35; }
    .w26-four h2 b { font-size: calc(44 * var(--u)); }

    .w26-topic { padding: calc(130 * var(--u)) 0; }
    .w26-topic-title { margin-top: calc(24 * var(--u)); font-size: calc(54 * var(--u)); }

    .w26-t1-head { display: block; }
    .w26-t1-head > p { width: auto; padding-top: calc(32 * var(--u)); font-size: calc(26 * var(--u)); white-space: normal; }
    .w26-t1-body { flex-direction: column; margin-top: calc(64 * var(--u)); }
    .w26-chat { width: auto; }
    .w26-chat-cap { font-size: calc(18 * var(--u)); }
    .w26-msg small { font-size: calc(20 * var(--u)); }
    .w26-msg p { font-size: calc(26 * var(--u)); }
    .w26-t1 .w26-video { width: 100%; height: auto; aspect-ratio: 16 / 9; margin-top: calc(56 * var(--u)); }

    .w26-t2 { padding-bottom: calc(130 * var(--u)); }
    .w26-t2-sub { font-size: calc(26 * var(--u)); }
    .w26-steps4 { flex-direction: column; gap: calc(40 * var(--cu)); margin-top: calc(56 * var(--cu)); }
    .w26-step { width: auto; min-height: 0; padding: calc(36 * var(--u)); }
    .w26-step + .w26-step::before { left: 50%; top: calc(-28 * var(--u)); width: calc(30 * var(--u)); height: calc(14 * var(--u)); margin-left: calc(-15 * var(--u)); transform: rotate(90deg); }
    .w26-step-no { font-size: calc(22 * var(--u)); }
    .w26-step h3 { font-size: calc(38 * var(--u)); }
    .w26-monet figure { height: calc(110 * var(--u)); }
    .w26-monet figcaption { font-size: calc(18 * var(--u)); }
    .w26-step-q { font-size: calc(28 * var(--u)); }
    .w26-step-credit { font-size: calc(16 * var(--u)); }
    .w26-step-p, .w26-step-work + .w26-step-p { font-size: calc(26 * var(--u)); }
    .w26-step-list li { height: calc(68 * var(--u)); font-size: calc(24 * var(--u)); }
    .w26-step-list li::before { width: calc(10 * var(--u)); height: calc(10 * var(--u)); }
    .w26-step-work { height: auto; aspect-ratio: 4 / 3; }   /* 모바일은 그림 전체가 보이게 */
    .w26-step-eg { font-size: calc(24 * var(--u)); }
    .w26-t2 .w26-video { width: 100%; margin-top: calc(64 * var(--u)); }
    .w26-t2-close { margin-top: calc(64 * var(--u)); font-size: calc(40 * var(--u)); }

    .w26-pro { padding: calc(80 * var(--u)) calc(40 * var(--u)); }
    .w26-pro-term { font-size: calc(26 * var(--u)); }
    .w26-pro-term span { display: block; margin: 0; }
    .w26-pro-desc { font-size: calc(22 * var(--u)); line-height: 1.6; }

    .w26-t3 { padding-bottom: calc(130 * var(--u)); }
    .w26-t3-body { flex-direction: column; margin-top: calc(64 * var(--u)); }
    .w26-tri { margin: 0 auto; }
    .w26-t3 .w26-video { width: 100%; height: auto; aspect-ratio: 16 / 9; margin-top: calc(72 * var(--u)); }

    .w26-t4 { padding: calc(130 * var(--u)) 0; }
    .w26-t4-kicker { font-size: calc(40 * var(--u)); }
    .w26-t4-title { margin: calc(48 * var(--u)) 0 0; font-size: calc(60 * var(--u)); }
    .w26-t4-lead { margin-top: calc(72 * var(--u)); font-size: calc(38 * var(--u)); }
    .w26-t4-p { font-size: calc(26 * var(--u)); }
    .w26-t4-mid { margin-top: calc(80 * var(--u)); font-size: calc(26 * var(--u)); }
    .w26-tech { grid-template-columns: 1fr; margin-top: calc(48 * var(--u)); padding: 0; }
    .w26-tech li, .w26-tech li:last-child { padding: calc(28 * var(--u)) 0; font-size: calc(56 * var(--u)); }
    .w26-tech li + li::before { left: 50%; top: 0; width: calc(120 * var(--u)); height: 1px; margin: 0 0 0 calc(-60 * var(--u)); }
    .w26-loop { width: auto; margin-top: calc(64 * var(--u)); padding: 0; text-align: center; }
    .w26-loop ol { flex-direction: column; gap: calc(10 * var(--u)); }
    .w26-loop li { font-size: calc(26 * var(--u)); }
    .w26-loop li.w26-loop-arrow { width: calc(30 * var(--u)); height: calc(10 * var(--u)); transform: rotate(90deg); margin: calc(10 * var(--u)) 0; }
    .w26-loop-back { display: none; }
    .w26-loop::after { content: '↺'; display: block; margin-top: calc(8 * var(--u)); font-size: calc(36 * var(--u)); line-height: 1; color: var(--w26-orange); }

    .w26-cta { padding: calc(110 * var(--u)) calc(40 * var(--u)) calc(120 * var(--u)); }
    .w26-cta h2 { font-size: calc(46 * var(--u)); }
    .w26-cta p { margin-top: calc(32 * var(--u)); font-size: calc(24 * var(--u)); }
    .w26-cta-btn { height: calc(100 * var(--u)); margin-top: calc(40 * var(--u)); font-size: calc(28 * var(--u)); }
    .w26 .w26-cta-note { margin-top: calc(18 * var(--u)); font-size: calc(22 * var(--u)); }

    .w26-faq { padding: calc(110 * var(--u)) 0; }
    .w26-faq h2 { font-size: calc(42 * var(--u)); }
    .w26-faq-list { width: auto; margin: calc(40 * var(--u)) calc(40 * var(--u)) 0; }
    .w26-faq-q { padding: calc(28 * var(--u)); font-size: calc(28 * var(--u)); }
    .w26-faq-q svg { width: calc(30 * var(--u)); height: calc(30 * var(--u)); }
    .w26-faq-a { padding: 0 calc(28 * var(--u)) calc(28 * var(--u)); }
    .w26-faq-a p { max-width: none; font-size: calc(24 * var(--u)); }

    .w26-apply { padding: calc(120 * var(--u)) 0 calc(200 * var(--u)); }
    .w26-apply-tag { font-size: calc(40 * var(--u)); }
    .w26-apply-lead { margin: calc(32 * var(--u)) calc(40 * var(--u)) 0; font-size: calc(26 * var(--u)); }
    .w26-benefit { width: calc(600 * var(--u)); margin-top: calc(64 * var(--u)); }
    .w26-banner { width: auto; margin: calc(-60 * var(--u)) calc(30 * var(--u)) 0; padding: calc(32 * var(--u)) calc(20 * var(--u)); }
    .w26-banner h2 { font-size: calc(36 * var(--u)); }
    .w26-banner p { font-size: calc(24 * var(--u)); line-height: 2; }
    .w26-banner p span { font-size: calc(22 * var(--u)); }

    .w26 #enroll {
        grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: calc(16 * var(--u)); row-gap: calc(20 * var(--u));
        margin: calc(40 * var(--u)) calc(30 * var(--u)) 0;
    }
    .w26 #enroll .campus-name { height: calc(150 * var(--u)); padding: calc(32 * var(--u)) 0 0 calc(24 * var(--u)); }
    .w26 #enroll .campus-name p { font-size: calc(30 * var(--u)); }
    .w26 #enroll .campus-callnum { font-size: calc(23 * var(--u)); }
    .w26 #enroll .campus-call-icon { font-size: calc(20 * var(--u)); }
    .w26 #enroll .new-sticker { width: calc(86 * var(--u)); height: calc(36 * var(--u)); padding-left: calc(14 * var(--u)); font-size: calc(19 * var(--u)); line-height: calc(32 * var(--u)); }
    .w26 #enroll .campus-enroll-link, .w26 #enroll .campus-kakaotalk-link { height: calc(76 * var(--u)); padding: 0 calc(16 * var(--u)) 0 calc(20 * var(--u)); }
    .w26 #enroll .campus-enroll-link span, .w26 #enroll .campus-kakaotalk-link span { font-size: calc(23 * var(--u)); }
    .w26 #enroll .campus-enroll-link svg, .w26 #enroll .campus-kakaotalk-link svg { width: calc(36 * var(--u)); height: calc(36 * var(--u)); }
}

@media (prefers-reduced-motion: reduce) {
    .w26-card, .w26-float, .w26-down svg, .w26-guide, .w26-step-work img { transition: none; }
    .w26-guide svg { animation: none; }
}
