/* Base */
:root { --container: 1200px; --fg: #ffffff; --muted: rgba(255, 255, 255, 0.85); --line: rgba(255, 255, 255, 0.18); --btn: #ffffff; --btn-fg: #0c2f55; --hero-gap-kicker-title: 6px; --hero-gap-title-subtitle: 10px; --hero-va-kicker: 0; --hero-va-title: -0.025em; --hero-va-subtitle: -0.025em; --hero-progress-duration: 6000ms; --hero-progress-color: #0082cf; }
* { box-sizing: border-box; }
html, body { height: 100%; }
body.page-main { margin: 0; font-family: Pretendard, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", Arial, "Helvetica Neue", sans-serif; color: #111; background: #0b0f14; overflow-x: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
.container { width: min(var(--container), calc(100% - 48px)); margin: 0 auto; }
/* 1) HERO */
.hero { position: relative; height: 970px; min-height: 970px; overflow: hidden; background: #0b0f14; }
.hero__viewport { position: absolute; inset: 0; overflow: hidden; z-index: 0; }
.page-main .hero__viewport { opacity: 0; transition: opacity 0.5s ease; }
.page-main .hero__viewport.is-ready { opacity: 1; }
.hero__track { display: flex; height: 100%; width: 400%; transform: translate3d(0, 0, 0); transition: transform 650ms cubic-bezier(0.22, 1, 0.36, 1); will-change: transform; }
.hero__slide { flex: 0 0 calc(100% / 4); height: 100%; overflow: hidden; background-color: #0b0f14; background-image: var(--hero-bg); background-repeat: no-repeat; background-size: cover; background-position: center center; }
.hero__slide--2, .hero__slide--3 { background-size: calc(100% + 4px) calc(100% + 4px); background-position: center 46%; }
.hero__content { position: absolute; inset: 0; width: 100%; z-index: 2; min-height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: var(--fg); padding: 48px 24px 72px; cursor: pointer; }
.hero__text { position: relative; top: -5px; width: auto; max-width: min(1200px, calc(100% - 48px)); display: flex; flex-direction: column; align-items: center; }
.hero__text[hidden] { display: none !important; }
.hero__text { width: 100%; max-width: 100%; --hero-gap-kicker-title: 15px; --hero-gap-title-subtitle: 15px; }
.hero__reveal { display: block; width: fit-content; max-width: 100%; margin: 0 auto; overflow: hidden; }
.hero__reveal--line { display: inline-block; width: auto; margin: 0; }
.hero__reveal-inner { display: inline-block; transform: translate3d(0, 120%, 0); opacity: 0.001; }
.hero__text.is-reveal .hero__reveal-inner { animation: heroRevealUp 2200ms cubic-bezier(0.16, 1, 0.3, 1) both; animation-delay: calc(var(--d, 0ms) + 220ms); }
@keyframes heroRevealUp {
  from { transform: translate3d(0, 120%, 0); opacity: 0.001; }
  to { transform: translate3d(0, 0, 0); opacity: 1; }
}
.hero__text > .hero__reveal + .hero__reveal { margin-top: var(--hero-gap-kicker-title); }
.hero__kicker { font-family: Pretendard, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", Arial, "Helvetica Neue", sans-serif; font-weight: 700; letter-spacing: var(--hero-va-kicker); opacity: 0.95; font-size: 56px; line-height: 1.12; }
.hero__title { margin: 0 0 var(--hero-gap-title-subtitle); font-family: Pretendard, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", Arial, "Helvetica Neue", sans-serif; font-size: 56px; font-weight: 300; letter-spacing: var(--hero-va-title); line-height: 1.12; }
.hero__subtitle { margin: 0 auto; max-width: 560px; color: var(--muted); line-height: 1.5; font-size: 20px; letter-spacing: var(--hero-va-subtitle); }
@media (min-width: 769px) {
  .hero__subtitle { max-width: 900px; }
}
.hero__subtitle .hero__reveal-inner { letter-spacing: inherit; }
.hero__subtitle .hero__reveal--line { display: block; margin-top: 0; }
.hero__subtitle .hero__reveal--line:first-child { margin-top: 0; }
.hero__controls { position: absolute; left: 0; right: 0; bottom: 38px; z-index: 3; width: 100%; display: flex; flex-direction: column; align-items: center; gap: 2px; transform: none; pointer-events: auto; }
.hero__controls-row { display: flex; align-items: center; gap: 2px; min-height: 24px; }
.hero__progress { position: relative; width: 200px; height: 2px; background-color: #ffffff; overflow: hidden; }
.hero__progress-fill { display: block; width: 100%; height: 100%; background-color: var(--hero-progress-color); transform: scaleX(0); transform-origin: left center; will-change: transform; }
.hero.is-paused .hero__progress-fill { animation-play-state: paused !important; }
@keyframes heroProgressFill {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
.hero__toggle { position: relative; flex-shrink: 0; width: 24px; height: 24px; padding: 0; border: 0; background: transparent; color: #ffffff; font-size: 13px; line-height: 1; letter-spacing: 0.02em; cursor: pointer; }
.hero__toggle:focus-visible { outline: 2px solid #ffffff; outline-offset: 3px; }
.hero__toggle-icon { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: Pretendard, ui-sans-serif, system-ui, sans-serif; font-size: 13px; line-height: 1; }
.hero__toggle-icon[hidden] { display: none !important; }
.hero__toggle-icon--play { transform: translateX(1px); }
.hero__progress-label { margin: 0; font-size: 14px; font-weight: 400; letter-spacing: 0.04em; color: #ffffff; line-height: 1; white-space: nowrap; }
/* 2) SECTION 2 */
.sec2 { --sec2-active-frame-color: #0382cf; --sec2-active-frame-width: 2px; --sec2-active-frame-mid: #ffffff; --sec2-active-frame-fade: 280px; --sec2-frame-v: linear-gradient(to bottom, var(--sec2-active-frame-color) 0, var(--sec2-active-frame-mid) var(--sec2-active-frame-fade), var(--sec2-active-frame-mid) calc(100% - var(--sec2-active-frame-fade)), var(--sec2-active-frame-color) 100%); --sec2-over-edge-zoom: 14px; --sec2-card-gap: 48px; --sec2-card-w-collapsed: 338px; --sec2-card-w-idle-max: 440px; --sec2-card-duration: 1.28s; --sec2-card-ease: cubic-bezier(0.22, 0.85, 0.32, 1); --sec2-more-offset-bottom: 294px; position: relative; background: #0b0f14 url("/resources/images/main/sec2_all_bg.png") center / cover no-repeat; padding: 100px 0 100px; margin-top: 0; }
.sec2__inner { box-sizing: border-box; width: var(--inner-width, 100%); max-width: var(--inner-outer-max-width, 1448px); margin-left: auto; margin-right: auto; padding-left: var(--inner-padding-x, 24px); padding-right: var(--inner-padding-x, 24px); display: flex; gap: var(--sec2-card-gap); align-items: center; justify-content: flex-start; }
.sec2__inner:not(.is-interacting) .sec2Card { flex: 0 0 calc((100% - 2 * var(--sec2-card-gap)) / 3); width: calc((100% - 2 * var(--sec2-card-gap)) / 3); max-width: var(--sec2-card-w-idle-max); }
.sec2__inner.is-interacting .sec2Card:nth-child(3) { margin-left: auto; }
.sec2Card { position: relative; display: block; box-sizing: border-box; flex: 0 0 var(--sec2-col-w, 33.333%); width: var(--sec2-col-w, 33.333%); min-width: 0; height: 760px; transition: width var(--sec2-card-duration) var(--sec2-card-ease), flex-basis var(--sec2-card-duration) var(--sec2-card-ease); overflow: hidden; box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45); border: 0; padding: 0; background: transparent; color: inherit; text-decoration: none; cursor: pointer; appearance: none; -webkit-tap-highlight-color: transparent; isolation: isolate; }
.sec2Card:nth-child(1) { --sec2-col-w: var(--sec2-col-0); transform-origin: left center; }
.sec2Card:nth-child(2) { --sec2-col-w: var(--sec2-col-1); transform-origin: center center; transition: width var(--sec2-card-duration) var(--sec2-card-ease), flex-basis var(--sec2-card-duration) var(--sec2-card-ease), margin-left var(--sec2-card-duration) var(--sec2-card-ease); }
.sec2Card:nth-child(3) { --sec2-col-w: var(--sec2-col-2); transform-origin: right center; }
.sec2Card__layer { position: absolute; inset: 0; visibility: visible; background-size: auto 100%; background-repeat: no-repeat; transition: opacity 320ms cubic-bezier(0.22, 1, 0.36, 1); }
.sec2Card:nth-child(1) .sec2Card__layer { background-position: left center; }
.sec2Card:nth-child(2) .sec2Card__layer { background-position: center center; }
.sec2Card:nth-child(3) .sec2Card__layer { background-position: right center; }
.sec2Card__layer--normal { background-image: var(--img-normal); opacity: 1; }
.sec2Card__layer--dark { background-image: var(--img-dark); opacity: 0; }
.sec2Card__layer--over { background-image: var(--img-over); opacity: 0; }
.sec2Card__frame { display: none; }
.sec2Card__content { position: absolute; inset: 0; z-index: 4; box-sizing: border-box; display: grid; grid-template-rows: 1fr auto auto auto; justify-items: center; align-items: center; padding-bottom: var(--sec2-more-offset-bottom); text-align: center; color: #ffffff; pointer-events: none; }
.sec2Card__title { grid-row: 2; font-size: 48px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; }
.sec2Card__subtitle { grid-row: 3; margin-top: 10px; font-size: 24px; font-weight: 600; letter-spacing: -0.01em; line-height: 1.2; opacity: 0.92; }
.sec2Card__more { grid-row: 4; display: inline-flex; align-items: center; justify-content: center; margin-top: 24px; box-sizing: border-box; width: 225px; height: 57px; background: #005891; color: #ffffff; font-size: 16px; font-weight: 700; letter-spacing: 0.02em; line-height: 1; opacity: 0; transform: translateY(6px); pointer-events: auto; cursor: pointer; transition: opacity 220ms ease, transform 220ms ease, background-color 0.2s ease; }
.sec2__inner.is-interacting .sec2Card.is-active .sec2Card__more { opacity: 1; transform: translateY(0); }
.sec2Card__more:hover { background-color: var(--btn-primary-hover); }
.sec2__inner.is-interacting .sec2Card { max-width: none; box-shadow: none; transform: none; }
.sec2__inner.is-interacting .sec2Card:not(.is-active) { z-index: 1; }
.sec2__inner.is-interacting .sec2Card.is-active { z-index: 5; box-shadow: none; border: 0; border-top: var(--sec2-active-frame-width) solid var(--sec2-active-frame-color); border-bottom: var(--sec2-active-frame-width) solid var(--sec2-active-frame-color); }
.sec2__inner.is-interacting .sec2Card.is-active::before, .sec2__inner.is-interacting .sec2Card.is-active::after { content: ""; position: absolute; top: 0; bottom: 0; width: var(--sec2-active-frame-width); z-index: 6; pointer-events: none; background: var(--sec2-frame-v); }
.sec2__inner.is-interacting .sec2Card.is-active::before { left: 0; }
.sec2__inner.is-interacting .sec2Card.is-active::after { right: 0; }
.sec2__inner.is-interacting .sec2Card.is-active .sec2Card__frame { display: none; }
.sec2__inner.is-interacting .sec2Card__layer { z-index: 0; inset: 0; background-size: auto 100%; }
.sec2__inner.is-interacting .sec2Card.is-active .sec2Card__layer--over { inset: 0; background-size: calc(100% + var(--sec2-over-edge-zoom)) calc(100% + var(--sec2-over-edge-zoom)); background-position: center center; }
.sec2__inner.is-interacting .sec2Card:nth-child(1).is-active .sec2Card__layer--over { background-position: left center; }
.sec2__inner.is-interacting .sec2Card:nth-child(2).is-active .sec2Card__layer--over { background-position: center center; }
.sec2__inner.is-interacting .sec2Card:nth-child(3).is-active .sec2Card__layer--over { background-position: right center; }
.sec2__inner.is-interacting .sec2Card__layer--normal { opacity: 0; visibility: hidden; transition: none; }
.sec2__inner.is-interacting .sec2Card:not(.is-active) .sec2Card__layer--dark { opacity: 1; visibility: visible; }
.sec2__inner.is-interacting .sec2Card:not(.is-active) .sec2Card__layer--over { opacity: 0; visibility: hidden; transition: none; }
.sec2__inner.is-interacting .sec2Card.is-active .sec2Card__layer--dark { opacity: 0; visibility: hidden; transition: none; }
.sec2__inner.is-interacting .sec2Card.is-active .sec2Card__layer--over { opacity: 1; visibility: visible; }
.sec2Card:focus-visible { outline: 2px solid rgba(255, 255, 255, 0.7); outline-offset: 6px; }
@media (prefers-reduced-motion: reduce) {
  .sec2Card, .sec2Card__layer { transition: none !important; transform: none !important; }
}
/* Buttons */
.btn { appearance: none; border: 1px solid rgba(255, 255, 255, 0.6); background: transparent; color: var(--fg); padding: 10px 18px; font-size: 12px; font-weight: 800; letter-spacing: 0.08em; border-radius: 2px; cursor: pointer; display: inline-flex; align-items: center; gap: 10px; }
.btn--white { border-color: rgba(255, 255, 255, 0.9); background: rgba(255, 255, 255, 0.96); color: var(--btn-fg); }
.btn--img { border: 0; background: transparent; padding: 0; border-radius: 0; line-height: 0; }
.btn--img img { display: block; width: 210px; height: auto; max-width: 100%; }
/* 3) SECTION 3 — latest news */
.sec3 { --sec3-primary: #005891; --sec3-line: #999999; --sec3-thumb-w: 256px; --sec3-thumb-h: 144px; --sec3-thumb-ratio: 256 / 144; --sec3-thumb-border-w: 1px; --sec3-thumb-border-color: #999999; background: #ffffff; padding: 196px 0 160px; }
.sec3__inner { box-sizing: border-box; width: var(--inner-width, 100%); max-width: var(--inner-outer-max-width, 1448px); margin-left: auto; margin-right: auto; padding-left: var(--inner-padding-x, 24px); padding-right: var(--inner-padding-x, 24px); display: flex; align-items: flex-start; gap: 72px 160px; }
.sec3__head { flex: 0 0 320px; min-width: 0; }
.sec3__title { margin: 0; font-family: var(--title-font-family, Pretendard, sans-serif); font-size: 48px; font-weight: 700; line-height: calc(58 / 48); letter-spacing: -0.025em; color: #000000; }
.sec3__lead { margin: 20px 0 0; font-size: var(--fs-20, 20px); font-weight: 400; line-height: calc(30 / 20); letter-spacing: -0.025em; color: #333333; }
.sec3__more { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-width: 200px; height: 57px; margin-top: 34px; padding: 0 28px; font-size: var(--fs-16, 16px); font-weight: 700; letter-spacing: 0.04em; color: #ffffff; text-decoration: none; background-color: var(--sec3-primary); border: 1px solid var(--sec3-primary); transition: background-color 0.2s ease, border-color 0.2s ease; }
.sec3__more:hover, .sec3__more:focus-visible { background-color: var(--btn-primary-hover); border-color: var(--btn-primary-hover); }
.sec3__list { flex: 1 1 0; min-width: 0; margin: 0; padding: 0; list-style: none; }
.sec3__item { margin: 0; border-bottom: 1px solid var(--sec3-line); }
.sec3__item:first-child .sec3-news__link { padding-top: 0; }
.sec3__item:last-child { border-bottom: 0; }
.sec3-news { margin: 0; }
.sec3-news__link { display: flex; align-items: flex-start; gap: 40px; padding: 40px 0; color: inherit; text-decoration: none; }
.sec3-news__thumb { box-sizing: border-box; flex: 0 0 auto; width: var(--sec3-thumb-w); height: var(--sec3-thumb-h); max-width: var(--sec3-thumb-w); max-height: var(--sec3-thumb-h); aspect-ratio: var(--sec3-thumb-ratio); overflow: hidden; background-color: #f5f5f5; border: var(--sec3-thumb-border-w) solid var(--sec3-thumb-border-color); }
.sec3-news__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sec3-news__cate { display: inline-block; box-sizing: border-box; margin: 0; padding: 0 10px; font-size: 16px; font-weight: 600; line-height: 1.4; color: var(--sec3-primary); background-color: transparent; border: 2px solid var(--sec3-primary); }
.sec3-news__title { margin: 10px 0 0; font-size: var(--fs-24, 24px); font-weight: 700; line-height: 1.45; color: #000000; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; line-clamp: 1; overflow: hidden; transition: color 0.2s ease; }
.sec3-news__desc { margin: 10px 0 0; font-size: var(--font-size-body, 16px); font-weight: 400; line-height: calc(26 / 16); color: #333333; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }
.sec3-news__link:hover .sec3-news__title, .sec3-news__link:focus-visible .sec3-news__title { color: var(--sec3-primary); text-decoration: underline; }
.sec3-news__body { flex: 1 1 0; min-width: 0; padding-top: 8px; }
/* 메인(index.jsp) 전용 GNB */
.page-main #content { margin: 0; padding: 0; }
.page-main .hero { margin-top: 0; width: 100vw; margin-left: calc(50% - 50vw); }
.page-main .site-header { position: absolute; top: 0; left: 0; right: 0; z-index: 50; background-color: transparent; transition: none; isolation: isolate; }
.page-main .site-header::after { transition: none; }
.page-main .site-header:not(.mega-open)::after { display: block; background-color: #ffffff; }
.page-main .site-header.mega-open { background-color: var(--light-color); }
.page-main .site-header.mega-open::after { display: block; background-color: #999999; }
.page-main .site-header__mega { transform: none; transition: opacity 0.58s ease-out, visibility 0s linear 0.58s; }
.page-main .site-header:not(.mega-open) .site-header__mega { border-bottom-color: transparent; pointer-events: none; }
.page-main .site-header.mega-open .site-header__mega { transform: none; transition: opacity 0.28s ease, visibility 0s linear 0s; }
.page-main .site-header:not(.mega-open) .site-header__menu-link { color: #ffffff; transition: none; }
.page-main .site-header:not(.mega-open) .site-header__menu-item:hover .site-header__menu-link, .page-main .site-header:not(.mega-open) .site-header__menu-item:focus-within .site-header__menu-link { color: #ffffff; }
.page-main .site-header:not(.mega-open) .site-header__menu a::before, .page-main .site-header:not(.mega-open) .site-header__menu a::after, .page-main .site-header:not(.mega-open) .site-header__menu-link::before, .page-main .site-header:not(.mega-open) .site-header__menu-link::after, .page-main .site-header:not(.mega-open) .site-header__menu a.is-active::after, .page-main .site-header:not(.mega-open) .site-header__menu a[aria-current='page']::after, .page-main .site-header:not(.mega-open) .site-header__menu-link.is-active::after, .page-main .site-header:not(.mega-open) .site-header__menu-link[aria-current='page']::after { opacity: 0 !important; visibility: hidden; transform: scaleX(0) !important; transition: none !important; content: none !important; }
.page-main .site-header:not(.mega-open) .site-header__lang, .page-main .site-header:not(.mega-open) .site-header__lang a { color: rgba(255, 255, 255, 0.85); transition: none; }
.page-main .site-header:not(.mega-open) .site-header__lang a.is-current { color: #ffffff; font-weight: 700; }
.page-main .site-header:not(.mega-open) .site-header__lang a.is-current[lang='ko'] { color: #ffffff; }
.page-main .site-header:not(.mega-open) .site-header__logo-img { content: url("/resources/images/common/logo_white_eng.png"); height: 36px; width: auto; }
.page-main .site-header:not(.mega-open) .site-header__drawer-btn-icon { content: url("/resources/images/common/all_menu_white.png"); width: 22px; height: 17px; }
.page-main .site-header.mega-open .site-header__logo-img { content: none; }
.page-main .site-header.mega-open .site-header__drawer-btn-icon { content: none; }
body.page-main:has(.site-drawer.is-open) { background-color: #ffffff; }
/* Responsive */
@media (max-width: 1480px) {
  .hero__slide { background-size: cover; background-position: center center; }
  .sec2Card__more { opacity: 1; transform: none; transition: none; }
}
@media (max-width: 1024px) {
  .hero__content { left: 0; right: 0; align-items: center; text-align: center; }
  .hero__text { margin-left: auto; margin-right: auto; align-items: center; }
  .hero__controls { left: 0; right: 0; transform: none; align-items: center; }
  .hero__kicker, .hero__title { font-size: 42px; }
  .hero__subtitle { font-size: 18px; }
}
@media (min-width: 769px) {
  .sec2Card__title,
  .sec2__inner.is-interacting .sec2Card .sec2Card__title,
  .sec2__inner.is-interacting .sec2Card.is-active .sec2Card__title { font-size: 48px; }
  .sec2Card__subtitle,
  .sec2__inner.is-interacting .sec2Card .sec2Card__subtitle,
  .sec2__inner.is-interacting .sec2Card.is-active .sec2Card__subtitle { font-size: 24px; }
}
@media (max-width: 768px) {
  .sec2 { --sec2-more-offset-bottom: 278px; }
  .sec2Card__title { font-size: 36px; }
  .sec2Card__subtitle { font-size: 20px; }
}
@media (max-width: 980px) {
  .sec2 { padding: 84px 0 92px; }
  .sec2__inner { --sec2-card-gap: 24px; display: flex; flex-wrap: wrap; justify-content: center; }
  .sec2Card { flex: 0 1 min(360px, 100%); width: min(360px, 100%); max-width: none; transition: none; transform-origin: center center; }
  .sec2Card:nth-child(3) { margin-left: 0; }
  .sec2__inner.is-interacting .sec2Card.is-active { flex: 0 1 min(360px, 100%); width: min(360px, 100%); }
  .sec3 { padding: 80px 0 88px; }
  .sec3__inner { flex-direction: column; gap: 40px; }
  .sec3__head { flex: none; width: 100%; }
  .sec3__title br { display: none; }
  .sec3__more { margin-top: 32px; margin-bottom: 20px; }
  .sec3-news__link { gap: 24px; padding: 28px 0; }
  .sec3 { --sec3-thumb-w: 220px; --sec3-thumb-h: 123.75px; }
}
@media (max-width: 768px) {
  .hero { height: 855px; min-height: 855px; }
  .hero__content { min-height: 855px; padding-left: 16px; padding-right: 16px; }
  .hero__text { width: 100%; max-width: 100%; --hero-gap-kicker-title: 15px; --hero-gap-title-subtitle: 15px; }
  .hero__reveal--title { width: 100%; max-width: none; overflow: visible; }
  .hero__title { display: block; width: 100%; max-width: none; margin-left: auto; margin-right: auto; text-align: center; white-space: normal; }
  .hero__title-fit { display: inline-flex; flex-wrap: nowrap; justify-content: center; align-items: baseline; gap: 0.14em; max-width: 100%; font-size: 42px; font-weight: 300; line-height: 1.12; letter-spacing: 0; white-space: nowrap; transform: scaleX(clamp(0.84, calc((100vw - 32px) / 400), 1)); transform-origin: center center; }
  .hero__title-part { letter-spacing: -0.065em; }
  .hero__title-part--ko { letter-spacing: -0.085em; }
  .page-main .site-header:not(.mega-open) .site-header__logo-img { content: url("/resources/images/common/logo_white_eng.png"); height: 36px; transform: translateY(1px); }
  .page-main .site-header:not(.mega-open) .site-header__drawer-btn-icon { content: url("/resources/images/common/all_menu_white.png"); width: 28px; height: 22px; }
  .sec2 { padding: 66px 0 66px; }
  .sec2__inner { --sec2-card-gap: 22px; --sec2-swipe-card-w: min(78vw, 420px); flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: none; scroll-snap-type: x mandatory; scroll-snap-stop: always; -webkit-overflow-scrolling: touch; padding-bottom: 10px; padding-left: var(--inner-padding-x, 24px); padding-right: var(--inner-padding-x, 24px); scroll-padding-left: var(--inner-padding-x, 24px); scroll-padding-right: var(--inner-padding-x, 24px); scrollbar-width: none; cursor: grab; user-select: none; }
  .sec2__inner::-webkit-scrollbar { display: none; }
  .sec2__inner.is-dragging { cursor: grabbing; }
  .sec2Card { flex: 0 0 var(--sec2-swipe-card-w) !important; width: var(--sec2-swipe-card-w) !important; height: 711px; max-width: none !important; box-shadow: none !important; transition: none !important; scroll-snap-align: center; }
  .sec2Card:first-child { scroll-snap-align: start; }
  .sec2Card:last-child { scroll-snap-align: end; }
  .sec2__inner.is-interacting .sec2Card.is-active { flex: 0 0 var(--sec2-swipe-card-w) !important; width: var(--sec2-swipe-card-w) !important; }
  .sec3__inner { align-items: center; }
  .sec3__head { width: 100%; display: flex; flex-direction: column; align-items: center; text-align: center; margin-left: auto; margin-right: auto; }
  .sec3__lead { margin-left: auto; margin-right: auto; }
  .sec3__more { margin-left: auto; margin-right: auto; }
  .sec3__title { font-size: 42px; }
  .sec3__lead { font-size: var(--fs-18, 18px); margin-top: 20px; }
  .sec3-news__link { flex-direction: column; gap: 20px; padding: 23px 0; }
  .sec3 { --sec3-thumb-w: 70%; --sec3-thumb-h: auto; }
  .sec3-news__thumb { width: 70%; max-width: 70%; height: auto; max-height: none; margin-left: 0; margin-right: auto; }
  .sec3-news__title { font-size: var(--fs-20, 20px); -webkit-line-clamp: 2; line-clamp: 2; margin-top: 15px; }
  .sec3-news__cate { font-size: 16px; }
}
@media (max-width: 480px) {
  .hero__slide--1,
  .hero__slide--1clone,
  .hero__slide--2,
  .hero__slide--3 { background-image: var(--hero-bg-mo, var(--hero-bg)); }
  .sec3__title { font-size: 36px; }
  .sec3 { --sec3-thumb-w: 100%; --sec3-thumb-h: auto; }
  .sec3-news__thumb { width: 100%; max-width: 100%; height: auto; max-height: none; }
  .sec3__item { border-bottom: none;}
  .hero__text { top: -37px; }
  /* 영문 히어로 — 480px 이하 타이틀 잘림·부제목 줄바꿈 */
  .hero__title-fit { font-size: 34px; white-space: normal; flex-wrap: wrap; row-gap: 2px; transform: none; max-width: calc(100vw - 32px); }
  .hero__title-part { letter-spacing: -0.04em; }
  .hero__subtitle { max-width: calc(100vw - 32px); font-size: 16px; line-height: 1.55; text-wrap: pretty; }
  .hero__subtitle .hero__reveal { display: inline; width: auto; max-width: none; overflow: visible; }
  .hero__subtitle .hero__reveal--line { display: inline; }
  .hero__subtitle .hero__reveal-inner { display: inline; }
}
