@charset "UTF-8";
@import url("../fonts/fonts.css");
@import url("reset.css");
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-thumb {
  background: #d9d9d9;
  border-radius: 360px;
}

#wrap {
  max-width: 100%;
  overflow-x: clip;
}

:root {
  --footer-h: 24rem;
  /** JS `syncAppViewportCssVars`가 갱신 — 주소창·뷰포트와 맞출 때 calc(var(--app-vh) * 100) 등 */
  --app-viewport-height: 100svh;
  --app-vh: 1vh;
  --safe-area-top: env(safe-area-inset-top, 0px);
  --safe-area-bottom: env(safe-area-inset-bottom, 0px);
  --safe-area-left: env(safe-area-inset-left, 0px);
  --safe-area-right: env(safe-area-inset-right, 0px);
}

/** 모바일 WebKit transform 애니메이션 타이밍 안정화 */
#main {
  position: relative;
  z-index: 3;
  background: #fff;
}

/* Lenis: 관성 스크롤 시 높이 계산 깨짐 방지 */
html.lenis {
  height: auto;
}

html.lenis body {
  min-height: 100%;
}

/** 세로 스크롤바 자리 항상 확보 — section1 잠금(overflow:hidden) 해제 시 스크롤바 생기며 폭이 늘어나 콘텐츠가 옆으로 밀리는 현상 방지 */
html {
  scrollbar-gutter: stable;
}

html.section1-scroll-lock {
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  touch-action: none;
}

html.section1-scroll-lock body {
  height: 100%;
  overflow: hidden;
  touch-action: none;
}

/** 모바일: 이용가이드(팝업) · 인트로가 아닌 월 슬라이드 — 전방향 스크롤 잠금 */
html.section2-scroll-lock--guide .main_container,
html.section2-scroll-lock--month .main_container {
  overflow: hidden;
  overscroll-behavior: none;
  touch-action: none;
}

/** 모바일: 가이드 닫힌 뒤 스와이프 미완료 — 아래로만 막음(JS), 위로는 허용 */
html.section2-scroll-gate-down .main_container {
  overscroll-behavior-y: contain;
}

html.page-intro-active {
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  touch-action: none;
}

html.page-intro-active body {
  height: 100%;
  overflow: hidden;
  touch-action: none;
}

html.page-intro-active .gnb-header,
html.section1-scroll-lock .gnb-header,
html:has(#section1.section1--mobile-intro) .gnb-header {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.container {
  width: 170rem;
  max-width: 95%;
  margin: 0 auto;
}

/* 컨테이너 및 배경 설정 */
.page-intro {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: #000;
  overflow: hidden;
}

.page-intro__layers, .page-intro__layer {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.page-intro__layer {
  object-fit: cover;
  opacity: 0;
  will-change: opacity; /* 렌더링 최적화 */
}

.page-intro__ui {
  position: relative;
  z-index: 10;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 카운터 릴(Reel) 설정 */
.page-intro__reels {
  display: flex;
  gap: 4px;
  font-family: "Archivo_Black", "Pretendard", sans-serif;
  font-size: 12vw;
  color: #fff;
  line-height: 1;
  height: 1em; /* 노출되는 높이를 숫자 한 개 크기로 고정 */
  overflow: hidden;
}

.page-intro__reel {
  height: 1em;
}

.page-intro__reel-inner {
  display: flex;
  flex-direction: column;
  will-change: transform; /* 부드러운 스크롤 핵심 */
}

.page-intro__reel-inner span {
  display: block;
  height: 1em;
  line-height: 1em;
  text-align: center;
}

#logo {
  position: fixed;
  padding: 1% 1%;
  z-index: 100;
  background: var(--backdrop-blur);
  backdrop-filter: blur(25px);
  height: 6rem;
  display: flex;
  align-items: center;
  justify-content: left;
  width: 100vw;
}
#logo a {
  width: 20rem;
  display: block;
}
#logo img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 531px) {
  body:not(:has(#section1 .visu_img.active)) #logo img {
    content: url("../img/logo.svg");
  }
  body:has(#section1 .visu_img.active) #logo:not(.logo--overlap-hover) img {
    content: url("../img/logo.svg");
  }
  body:has(#section1 .visu_img.active) #logo.logo--overlap-hover img {
    content: url("../img/logo_hover.svg");
  }
}
#wrap:has(#section2.journey-guide-active.active) #logo {
  background: none;
  backdrop-filter: none;
  width: auto;
}

@keyframes quickmenu_ani {
  100% {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
  }
}
.gnb-header {
  position: fixed;
  bottom: 2rem;
  left: 50%;
  z-index: 1000;
  transition: all 0.5s ease;
  transform: translateX(-50%);
  animation: quickmenu_ani 0.82s cubic-bezier(0.69, -0.17, 0, 2.02) 1 forwards;
}
.gnb-header .nav-item a {
  /* 기본 스타일 */
}
@media (hover: hover) and (pointer: fine) {
  .gnb-header .nav-item a:hover {
    background-color: rgba(227, 85, 45, 0.3); /* hover 시 색상 */
  }
}
.gnb-header.hide {
  bottom: -10rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  animation: none;
}
.gnb-header .mobile-menu-btn {
  display: none;
}
.gnb-header .nav-list {
  border-radius: 1.2rem;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.gnb-header .nav-list .nav-item a {
  display: block;
  color: #222;
  text-decoration: none;
  font-size: 1.8rem;
  font-weight: 500;
  transition: background-color 0.2s;
  padding: 1.2rem 1.4rem;
  border-radius: 0.6rem;
  white-space: nowrap;
  text-align: center;
}
.gnb-header .nav-list .nav-item.active a {
  background-color: #E3552D;
  color: #fff;
}

@media (prefers-reduced-motion: reduce) {
  .gnb-header {
    transition: none;
  }
  .gnb-header.hide {
    transition: none;
  }
}
@media (max-width: 768px) {
  .gnb-header .nav-list .nav-item a {
    font-size: 1.6rem;
    padding: 0.8rem 1rem;
    text-align: center;
    line-height: 1.2;
    white-space: nowrap;
  }
}
@media (max-width: 620px) {
  .gnb-header {
    width: auto;
    max-width: 42rem;
    bottom: 1rem;
    min-width: 20rem;
  }
  .gnb-header .nav-inner {
    display: flex;
    flex-direction: column-reverse;
    align-items: stretch;
    width: 100%;
    padding: 0;
    background-color: transparent;
    gap: 1rem;
  }
  .gnb-header .mobile-menu-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.2rem;
    width: 100%;
    padding: 0.4rem 0.4rem 0.4rem 1rem;
    color: #222;
    font: inherit;
    text-align: left;
    position: relative;
    cursor: pointer;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    border-radius: 0.6rem;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(25px);
  }
  .gnb-header .mobile-menu-btn .icon-chevron {
    position: static;
    flex-shrink: 0;
    width: 0.9rem;
    height: 0.9rem;
    margin-left: 0.2rem;
    border: none;
    border-right: 0.2rem solid #111;
    border-bottom: 0.2rem solid #111;
    transform: rotate(45deg);
    transition: transform 0.28s ease;
  }
  .gnb-header .mobile-menu-btn .current-menu {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 4.4rem;
    padding: 0.8rem 2rem;
    border-radius: 0.8rem;
    background-color: #e35a31;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -0.02em;
    white-space: nowrap;
  }
  .gnb-header .nav-inner:has(.nav-list.is-open) .mobile-menu-btn .icon-chevron {
    transform: rotate(225deg);
  }
  .gnb-header .nav-list {
    display: none;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 2rem 1rem;
    gap: 1.5rem;
    border-radius: 0.6rem;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(25px);
  }
  .gnb-header .nav-list.is-open {
    display: flex;
  }
  .gnb-header .nav-list .nav-item {
    width: 100%;
    text-align: center;
  }
  .gnb-header .nav-list .nav-item a {
    display: block;
    padding: 0.6rem 0;
    border-radius: 0;
    color: #222;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -0.02em;
    transition: opacity 0.2s ease;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
  }
}
@media (max-width: 620px) and (hover: hover) and (pointer: fine) {
  .gnb-header .nav-list .nav-item a:hover {
    background-color: transparent;
    opacity: 0.85;
  }
}
@media (max-width: 620px) {
  .gnb-header .nav-list .nav-item.active {
    display: none;
  }
}
@media (min-width: 769px) {
  .horizontal-scroll-wrap {
    height: 300vh;
  }
}
.section_tit {
  color: #111111;
  font-family: "vitro", "Pretendard", sans-serif;
  font-size: 6rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.07rem;
  display: flex;
  gap: 3px;
  overflow: hidden;
}

#section1 {
  position: relative;
  height: 100svh;
  overflow: hidden;
  z-index: 10;
  /** ScrollTrigger pin 시에만 — 부모 overflow:hidden이 pin(fixed)과 맞물리지 않게 */
}
#section1.section1-pin-active {
  overflow: visible;
}
#section1 .visu_tit {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  z-index: 2;
  padding: 0 6rem;
  box-sizing: border-box;
}
#section1 .visu_tit__media {
  position: relative;
  display: inline-block;
  width: min(94vw, 72.3rem);
  max-width: min(94vw, 118rem);
  aspect-ratio: 723/332;
  opacity: 0;
  will-change: opacity, transform, filter;
}
#section1 .visu_tit__stack {
  display: block;
  line-height: 0;
}
#section1 .visu_tit__stack--hover {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  will-change: opacity;
}
#section1 .visu_tit__svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
  vertical-align: top;
}
#section1 .scroll_down {
  position: absolute;
  border-radius: 0.6rem;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(10px);
  padding: 0.6rem 1.2rem;
  color: rgba(0, 0, 0, 0.8);
  left: 50%;
  transform: translateX(-50%);
  bottom: clamp(3.2rem, 6vh, 5rem);
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
#section1 .scroll_down::after {
  content: "\ea4c";
  display: inline-block;
  line-height: 1;
  -webkit-animation: scroll-down-arrow 1.2s ease-in-out infinite;
  animation: scroll-down-arrow 1.2s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  color: #222222;
  font-family: "remixicon";
  margin-left: 1rem;
}
#section1:has(.visu_img.active) .scroll_down {
  opacity: 0 !important;
  visibility: hidden !important;
}
#section1 .visu_img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  will-change: transform;
  border-radius: 3rem;
}
#section1 .visu_img picture {
  display: block;
  width: 100%;
  height: 100%;
}
#section1 .visu_img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  will-change: transform, border-radius;
}

#section2 {
  height: 100svh;
  max-width: 100vw;
  overflow: hidden;
  position: relative;
  width: 100%;
  background: #fff;
  color: #103554;
  z-index: 5;
}
#section2 .journey__pin {
  height: 100%;
  overflow: hidden;
  position: relative;
  width: 100%;
}
#section2 .journey__track {
  align-items: stretch;
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: auto;
  will-change: transform;
  z-index: 2;
}
#section2 .journey__line {
  display: block;
  height: auto;
  left: 50%;
  max-width: none;
  pointer-events: none;
  position: absolute;
  top: 8%;
  /** line.svg viewBox 12697×889 — 인트로·6월 겹침 레이아웃 기준 스케일(클론 없음, 끝은 JS tail) */
  width: 1100rem;
  will-change: transform, stroke-dashoffset;
  z-index: 1;
  fill: none;
  -webkit-fill: none;
}
#section2 .journey__line--clone {
  display: none !important;
}
#section2 .journey__line-reveal {
  will-change: stroke-dashoffset;
}
#section2 {
  /** 닫힘: visibility는 보간 불가 → opacity + pointer-events + JS inert */
}
#section2 .journey-guide {
  box-sizing: border-box;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
  position: absolute;
  z-index: 1400;
  width: 100%;
  height: 100%;
}
#section2 .journey-guide__backdrop {
  background: rgba(0, 0, 0, 0.7);
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.36s ease;
  will-change: opacity;
}
#section2 .journey-guide__close {
  align-items: center;
  background: none;
  border: 0;
  cursor: pointer;
  display: flex;
  gap: 0.6rem;
  padding: 0;
  pointer-events: none;
  position: absolute;
  right: 2rem;
  top: 2rem;
  z-index: 2;
  opacity: 0;
  transform: translate3d(0, -1.2rem, 0);
  filter: blur(4px);
  transition: opacity 0.38s cubic-bezier(0.22, 1, 0.36, 1), transform 0.38s cubic-bezier(0.22, 1, 0.36, 1), filter 0.38s ease;
  transition-delay: 0s;
}
#section2 .journey-guide__close .ri-close-line {
  color: #fff;
  font-size: 3rem;
  transition: transform 0.22s ease, color 0.22s ease;
}
#section2 .journey-guide__close:hover {
  transform: translate3d(0, -0.25rem, 0);
  transition-duration: 0.22s;
  transition-delay: 0s;
  transition-timing-function: ease;
}
#section2 .journey-guide__close:hover .ri-close-line {
  color: #E3552D;
  transform: rotate(90deg) scale(1.08);
}
#section2 .journey-guide__close:focus-visible {
  outline: 0.2rem solid rgba(255, 255, 255, 0.7);
  outline-offset: 0.4rem;
}
@media screen and (min-width: 1920px) {
  #section2 .journey-guide__close {
    gap: 1rem;
    right: 2rem;
    top: 2rem;
  }
}
#section2 .journey-guide__close-label {
  color: #ffffff;
  font-family: "Pretendard", sans-serif;
  font-size: clamp(1.6rem, 1.042vw, 2rem);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4;
  white-space: nowrap;
}
#section2 .journey-guide__stage {
  width: 100%;
  height: 100%;
  position: relative;
}
#section2 .journey-guide__stage.mobile {
  display: none;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
#section2 .journey-guide__stage.pc div {
  position: absolute;
  opacity: 0;
  filter: blur(5px);
  transition: opacity 0.38s ease, transform 0.38s ease, filter 0.38s ease;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
#section2 .journey-guide__stage.pc div i {
  display: block;
  font-weight: 400;
  font-size: 2.4rem;
}
#section2 .journey-guide__stage.pc div i[class*=ri-arrow][class*=long] {
  -webkit-animation: journeyGuideLongArrowFloat 1.25s ease-in-out infinite;
  animation: journeyGuideLongArrowFloat 1.25s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc div.guide_txt_left {
  left: 3.8rem;
  bottom: 14.4rem;
  text-align: left;
  transform: translate3d(0, 2.2rem, 0);
}
#section2 .journey-guide__stage.pc div.guide_txt_left i {
  margin-top: 1.4rem;
  margin-left: -0.5rem;
}
#section2 .journey-guide__stage.pc div.guide_txt_center {
  left: 50.7%;
  top: 55%;
  transform: translate3d(-50%, calc(-50% + 2.4rem), 0) scale(0.96);
  text-align: center;
  display: flex;
  flex-direction: column;
}
#section2 .journey-guide__stage.pc div.guide_txt_center i {
  margin-bottom: 1.8rem;
}
#section2 .journey-guide__stage.pc div.guide_txt_center p:last-child {
  margin-top: 30%;
}
#section2 .journey-guide__stage.pc div.guide_txt_right {
  left: 71.5%;
  bottom: 6rem;
  width: 30.8rem;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 7rem;
  transform: translate3d(0, 2rem, 0);
}
#section2 .journey-guide__stage.pc div.guide_txt_right .column {
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  gap: 1rem;
}
#section2 .journey-guide__stage.pc div.guide_txt_right .center {
  display: flex;
  justify-content: center;
  flex-direction: column;
  width: 20rem;
  gap: 1rem;
  align-items: center;
}
#section2 .journey-guide__stage.pc.mob i[class*=ri-arrow][class*=long] {
  color: #fff;
}
#section2 .journey-guide__stage.pc.mob .guide_txt_left {
  left: 2rem;
  bottom: 9.4rem;
}
#section2 .journey-guide__stage.pc.mob .guide_txt_center p:last-child {
  margin-top: 0;
  white-space: nowrap;
}
#section2 .journey-guide__stage.pc.mob .guide_txt_center {
  top: 40%;
}
#section2 .journey-guide__stage.pc.mob .guide_txt_right {
  left: 48%;
  bottom: auto;
  top: 70%;
  transform: translateY(-50%) !important;
}
#section2 .journey-guide__stage.pc .journey-guide__motion {
  position: relative;
  width: 15rem;
  height: 14rem;
  margin: 0 auto 1.4rem;
  display: block;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-ring {
  position: absolute;
  border-radius: 50%;
  border: 0.3rem solid rgba(255, 255, 255, 0.22);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-ring--outer {
  width: 4.8rem;
  height: 4.8rem;
  -webkit-animation: journeyGuidePulse 2.1s ease-out infinite;
  animation: journeyGuidePulse 2.1s ease-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-ring--inner {
  width: 4.8rem;
  height: 4.8rem;
  border-color: rgba(227, 85, 45, 0.7);
  -webkit-animation: journeyGuidePulseInner 2.1s ease-out infinite;
  animation: journeyGuidePulseInner 2.1s ease-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-dot {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background: #f4602b;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 0 rgba(244, 96, 43, 0.55);
  -webkit-animation: journeyGuideDot 1.8s ease-out infinite;
  animation: journeyGuideDot 1.8s ease-out infinite;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-arrow-icon {
  position: absolute;
  top: 75%;
  transform: translate3d(0, -50%, 0);
  color: #E3552D;
  font-size: 2.4rem;
  line-height: 1;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-arrow-icon--left {
  left: 3.2rem;
  -webkit-animation: journeyGuideArrowLeft 1.2s ease-in-out infinite;
  animation: journeyGuideArrowLeft 1.2s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-arrow-icon--right {
  right: 3.2rem;
  transform: translate3d(0, -50%, 0) rotate(180deg);
  -webkit-animation: journeyGuideArrowRight 1.2s ease-in-out infinite;
  animation: journeyGuideArrowRight 1.2s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc .journey-guide__motion-mouse {
  position: absolute;
  left: 50%;
  top: 72%;
  width: 2.5rem;
  height: 4rem;
  border-radius: 2.4rem;
  border: 0.2rem solid #fff;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.16);
}
#section2 .journey-guide__stage.pc .journey-guide__motion-wheel {
  position: absolute;
  left: 50%;
  top: 0.7rem;
  width: 0.4rem;
  height: 0.7rem;
  border-radius: 1rem;
  background: #fff;
  transform: translate3d(-50%, 0, 0);
  -webkit-animation: journeyGuideWheel 1.8s ease-in-out infinite;
  animation: journeyGuideWheel 1.8s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc p {
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
#section2 .journey-guide__stage.pc p .journey-guide__accent {
  color: #E3552D;
}
#section2 .journey-guide__stage.pc.mob p {
  font-size: 1.6rem;
  line-height: 1.2;
}
#section2 .journey-guide__stage.pc.mob p .journey-guide__accent {
  color: #E3552D;
}
#section2 .journey-guide__stage.pc.mob .journey-guide__motion {
  position: relative;
  width: 15rem;
  height: 14rem;
  margin: 0 auto 1.2rem;
  display: block;
}
#section2 .journey-guide__stage.pc.mob .journey-guide__motion-arrow-icon {
  position: absolute;
  top: 72%;
  transform: translate3d(0, -50%, 0);
  color: #E3552D;
  font-size: 2.4rem;
  line-height: 1;
}
#section2 .journey-guide__stage.pc.mob .journey-guide__motion-arrow-icon--left {
  left: 1.2rem;
  -webkit-animation: journeyGuideArrowLeft 1.2s ease-in-out infinite;
  animation: journeyGuideArrowLeft 1.2s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc.mob .journey-guide__motion-arrow-icon--right {
  right: 1.2rem;
  transform: translate3d(0, -50%, 0) rotate(180deg);
  -webkit-animation: journeyGuideArrowRight 1.2s ease-in-out infinite;
  animation: journeyGuideArrowRight 1.2s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide__stage.pc.mob .journey-guide__motion-mouse {
  position: absolute;
  left: 50%;
  top: 72%;
  width: 5.6rem;
  height: 5.6rem;
  border: 0;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}
#section2 .journey-guide__stage.pc.mob .journey-guide__motion-mouse img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
#section2 .journey-guide {
  /** 모바일 가이드 가로 슬라이드 (common.js가 슬라이드 너비를 뷰포트 px로 지정) */
}
#section2 .journey-guide.pc.mob {
  width: 100%;
  max-width: none;
  margin: 0 auto;
  opacity: 0;
  transform: translate3d(0, 1rem, 0);
  filter: blur(4px);
  transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.16, 1, 0.3, 1), filter 0.5s ease;
  height: 100%;
}
#section2 .journey-guide.pc.mob.is-reduced .journey-guide-mslider__track {
  transition-duration: 0.01s;
}
#section2 .journey-guide.pc.mob__viewport {
  overflow-x: hidden;
  overflow-y: visible;
  width: 100%;
  height: auto;
}
#section2 .journey-guide.pc.mob__track {
  display: flex;
  width: auto;
  will-change: transform;
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1);
  height: auto;
}
#section2 .journey-guide.pc.mob__slide {
  flex: 0 0 auto;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  height: auto;
  min-height: 0;
  justify-content: center;
}
#section2 .journey-guide.pc.mob__slide-body {
  position: relative;
  width: 100%;
}
#section2 .journey-guide.pc.mob__slide-body p {
  margin: 0;
  color: #fff;
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 1.45;
}
#section2 .journey-guide.pc.mob__slide-body p .journey-guide__accent {
  color: #E3552D;
}
#section2 .journey-guide.pc.mob__slide-body.guide_txt_left {
  text-align: left;
  text-align: left;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 10rem;
  width: calc(100% - 4rem);
}
#section2 .journey-guide.pc.mob__slide-body.guide_txt_left p {
  text-align: left;
}
#section2 .journey-guide.pc.mob__slide-body.pad {
  padding-top: 38rem;
}
#section2 .journey-guide.pc.mob__slide-body .ri-arrow-up-long-line {
  display: block;
  margin-bottom: 1rem;
  font-size: 2.4rem;
  color: #E3552D;
  -webkit-animation: journeyGuideLongArrowFloat 1.25s ease-in-out infinite;
  animation: journeyGuideLongArrowFloat 1.25s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide.pc.mob__arrow-to-rail {
  display: block;
  margin-top: 1rem;
  font-size: 2.8rem;
  color: #E3552D;
  -webkit-animation: journeyGuideLongArrowFloat 1.25s ease-in-out infinite;
  animation: journeyGuideLongArrowFloat 1.25s ease-in-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#section2 .journey-guide.pc.mob__foot {
  text-align: center;
  position: absolute;
  bottom: 4%;
  left: 50%;
  transform: translateX(-50%);
}
#section2 .journey-guide.pc.mob__counter {
  margin: 0 0 0.8rem;
  font-size: 1.5rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.55);
  letter-spacing: 0.04em;
}
#section2 .journey-guide.pc.mob__counter-current {
  color: #E3552D;
}
#section2 .journey-guide.pc.mob__dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
}
#section2 .journey-guide.pc.mob__dot {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  cursor: pointer;
  transition: transform 0.2s ease, background 0.2s ease;
  border: 1px solid #fff;
}
#section2 .journey-guide.pc.mob__dot.is-active {
  background: #E3552D;
  width: 4rem;
  height: 2rem;
  border-color: #E3552D;
  border-radius: 10rem;
}
#section2 .journey-guide.pc.mob__dot:focus-visible {
  outline: 0.2rem solid rgba(255, 255, 255, 0.75);
  outline-offset: 0.25rem;
}
#section2 .journey-guide.pc.mob__rail {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 0 0.4rem 0 2.4rem;
  min-height: 3.6rem;
  border-top: 1px dashed rgba(255, 255, 255, 0.22);
  margin-top: 0.4rem;
}
#section2 .journey-guide.pc.mob__rail-line {
  position: absolute;
  left: 2.2rem;
  right: 0;
  top: 0;
  height: 1px;
  border-top: 1px dotted rgba(227, 85, 45, 0.45);
  pointer-events: none;
}
#section2 .journey-guide.pc.mob__rail-photo {
  position: absolute;
  left: 0.2rem;
  bottom: 1.2rem;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 50%;
  background: linear-gradient(145deg, #444, #222);
  box-shadow: 0 0 0 2px rgba(227, 85, 45, 0.5);
}
#section2 .journey-guide.pc.mob__rail-label {
  font-size: 1.1rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.45);
  padding-bottom: 0.2rem;
}
#section2.journey-guide-active .journey-guide {
  opacity: 1;
  pointer-events: auto;
  /** 래퍼는 짧게 페이드 — 긴 transition-delay는 ‘안 뜨는 것처럼’ 보임 */
  transition: opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1) 0.05s;
}
#section2.journey-guide-active .journey-guide__stage.mobile .journey-guide-mslider {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
  transition-delay: 0.85s;
}
#section2.journey-guide-active .journey-guide__stage.pc > div.guide_txt_center {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(-50%, -50%, 0) scale(1);
  transition-duration: 0.78s;
  transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}
#section2.journey-guide-active .journey-guide__stage.pc > div.guide_txt_left {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
  transition-duration: 0.72s;
  transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}
#section2.journey-guide-active .journey-guide__stage.pc > div.guide_txt_right {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
  transition-duration: 0.72s;
  transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}
#section2.journey-guide-active .journey-guide__close {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
  pointer-events: auto;
  transition-duration: 0.68s;
  transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}
@media (prefers-reduced-motion: reduce) {
  #section2 .journey-guide__backdrop {
    transition: opacity 0.22s ease;
  }
  #section2 .journey-guide__close,
  #section2 .journey-guide__stage.pc > div {
    filter: none;
    transition-duration: 0.22s !important;
    transition-timing-function: ease !important;
  }
  #section2 .journey-guide__stage.pc > div.guide_txt_center {
    transform: translate3d(-50%, calc(-50% + 1rem), 0) scale(0.99);
  }
  #section2.journey-guide-active .journey-guide__stage.pc > div.guide_txt_center {
    transform: translate3d(-50%, -50%, 0) scale(1);
    transition-delay: 0.08s !important;
  }
  #section2.journey-guide-active .journey-guide__stage.pc > div.guide_txt_left {
    transition-delay: 0.12s !important;
  }
  #section2.journey-guide-active .journey-guide__stage.pc > div.guide_txt_right {
    transition-delay: 0.16s !important;
  }
  #section2.journey-guide-active .journey-guide__close {
    transition-delay: 0.2s !important;
  }
  #section2 .journey-guide-mslider {
    transition-duration: 0.2s !important;
    transition-delay: 0.05s !important;
  }
  #section2.journey-guide-active .journey-guide__stage.mobile .journey-guide-mslider {
    transition-delay: 0.08s !important;
  }
}
@-webkit-keyframes journeyGuideWheel {
  0%, 100% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    opacity: 1;
  }
  70% {
    -webkit-transform: translate3d(-50%, 1.3rem, 0);
    transform: translate3d(-50%, 1.3rem, 0);
    opacity: 0.2;
  }
}
@keyframes journeyGuideWheel {
  0%, 100% {
    transform: translate3d(-50%, 0, 0);
    opacity: 1;
  }
  70% {
    transform: translate3d(-50%, 1.3rem, 0);
    opacity: 0.2;
  }
}
@-webkit-keyframes journeyGuideArrowLeft {
  0%, 100% {
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    opacity: 0.45;
  }
  50% {
    -webkit-transform: translate3d(-0.9rem, -50%, 0);
    transform: translate3d(-0.9rem, -50%, 0);
    opacity: 1;
  }
}
@keyframes journeyGuideArrowLeft {
  0%, 100% {
    transform: translate3d(0, -50%, 0);
    opacity: 0.45;
  }
  50% {
    transform: translate3d(-0.9rem, -50%, 0);
    opacity: 1;
  }
}
@-webkit-keyframes journeyGuideArrowRight {
  0%, 100% {
    -webkit-transform: translate3d(0, -50%, 0) rotate(180deg);
    transform: translate3d(0, -50%, 0) rotate(180deg);
    opacity: 0.45;
  }
  50% {
    -webkit-transform: translate3d(0.9rem, -50%, 0) rotate(180deg);
    transform: translate3d(0.9rem, -50%, 0) rotate(180deg);
    opacity: 1;
  }
}
@keyframes journeyGuideArrowRight {
  0%, 100% {
    transform: translate3d(0, -50%, 0) rotate(180deg);
    opacity: 0.45;
  }
  50% {
    transform: translate3d(0.9rem, -50%, 0) rotate(180deg);
    opacity: 1;
  }
}
@-webkit-keyframes journeyGuidePulse {
  0%, 100% {
    -webkit-transform: translate3d(-50%, -50%, 0) scale3d(0.92, 0.92, 1);
    transform: translate3d(-50%, -50%, 0) scale3d(0.92, 0.92, 1);
    opacity: 0.4;
  }
  65% {
    -webkit-transform: translate3d(-50%, -50%, 0) scale3d(1.02, 1.02, 1);
    transform: translate3d(-50%, -50%, 0) scale3d(1.02, 1.02, 1);
    opacity: 1;
  }
}
@keyframes journeyGuidePulse {
  0%, 100% {
    transform: translate3d(-50%, -50%, 0) scale3d(0.92, 0.92, 1);
    opacity: 0.4;
  }
  65% {
    transform: translate3d(-50%, -50%, 0) scale3d(1.02, 1.02, 1);
    opacity: 1;
  }
}
@-webkit-keyframes journeyGuidePulseInner {
  0%, 100% {
    -webkit-transform: translate3d(-50%, -50%, 0) scale3d(1, 1, 1);
    transform: translate3d(-50%, -50%, 0) scale3d(1, 1, 1);
    opacity: 0.7;
  }
  50% {
    -webkit-transform: translate3d(-50%, -50%, 0) scale3d(1.08, 1.08, 1);
    transform: translate3d(-50%, -50%, 0) scale3d(1.08, 1.08, 1);
    opacity: 1;
  }
}
@keyframes journeyGuidePulseInner {
  0%, 100% {
    transform: translate3d(-50%, -50%, 0) scale3d(1, 1, 1);
    opacity: 0.7;
  }
  50% {
    transform: translate3d(-50%, -50%, 0) scale3d(1.08, 1.08, 1);
    opacity: 1;
  }
}
@-webkit-keyframes journeyGuideDot {
  0% {
    box-shadow: 0 0 0 0 rgba(244, 96, 43, 0.55);
  }
  100% {
    box-shadow: 0 0 0 1.8rem rgba(244, 96, 43, 0);
  }
}
@keyframes journeyGuideDot {
  0% {
    box-shadow: 0 0 0 0 rgba(244, 96, 43, 0.55);
  }
  100% {
    box-shadow: 0 0 0 1.8rem rgba(244, 96, 43, 0);
  }
}
@-webkit-keyframes journeyGuideLongArrowFloat {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  50% {
    -webkit-transform: translate3d(0, -0.55rem, 0);
    transform: translate3d(0, -0.55rem, 0);
  }
}
@keyframes journeyGuideLongArrowFloat {
  0%, 100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -0.55rem, 0);
  }
}
#section2 {
  /** 외곽 링 `80vw`·2px 보더 중심선 — `--journey-orbit-outer-r`는 `.journey__orbit-line--outer`에 정의 */
}
@-webkit-keyframes journeyOrbitDot {
  from {
    -webkit-transform: translate3d(-50%, -50%, 0) rotate(0deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
    transform: translate3d(-50%, -50%, 0) rotate(0deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
  }
  to {
    -webkit-transform: translate3d(-50%, -50%, 0) rotate(360deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
    transform: translate3d(-50%, -50%, 0) rotate(360deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
  }
}
@keyframes journeyOrbitDot {
  from {
    transform: translate3d(-50%, -50%, 0) rotate(0deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
  }
  to {
    transform: translate3d(-50%, -50%, 0) rotate(360deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
  }
}
#section2 {
  /** 중간 링 `50vw`·4rem 보더 중심선 — `--journey-orbit-middle-r`는 `.journey__orbit-line--middle`에 정의 */
}
@-webkit-keyframes journeyOrbitDotMiddle {
  from {
    -webkit-transform: translate3d(-50%, -50%, 0) rotate(0deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
    transform: translate3d(-50%, -50%, 0) rotate(0deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
  }
  to {
    -webkit-transform: translate3d(-50%, -50%, 0) rotate(360deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
    transform: translate3d(-50%, -50%, 0) rotate(360deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
  }
}
@keyframes journeyOrbitDotMiddle {
  from {
    transform: translate3d(-50%, -50%, 0) rotate(0deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
  }
  to {
    transform: translate3d(-50%, -50%, 0) rotate(360deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
  }
}
#section2 {
  /** 중간 링 안쪽 은은한 리플 */
}
@-webkit-keyframes journeyMidRipple {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-50%, -50%, 0) scale3d(0.82, 0.82, 1);
    transform: translate3d(-50%, -50%, 0) scale3d(0.82, 0.82, 1);
  }
  18% {
    opacity: 0.38;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-50%, -50%, 0) scale3d(1.05, 1.05, 1);
    transform: translate3d(-50%, -50%, 0) scale3d(1.05, 1.05, 1);
  }
}
@keyframes journeyMidRipple {
  0% {
    opacity: 0;
    transform: translate3d(-50%, -50%, 0) scale3d(0.82, 0.82, 1);
  }
  18% {
    opacity: 0.38;
  }
  100% {
    opacity: 0;
    transform: translate3d(-50%, -50%, 0) scale3d(1.05, 1.05, 1);
  }
}
#section2 .journey__panel {
  flex: 0 0 auto;
  height: 100svh;
  position: relative;
}
#section2 .journey__panel--intro {
  align-items: center;
  display: flex;
  justify-content: center;
  overflow: hidden;
  width: 100vw;
}
@media (prefers-reduced-motion: reduce) {
  #section2 .journey__panel--intro.journey-intro-circles--spread .journey__orbit-line--outer,
  #section2 .journey__panel--intro.journey-intro-circles--spread .journey__orbit-line--middle {
    -webkit-animation: none;
    animation: none;
    transform: translate3d(-50%, -50%, 0);
    opacity: 1;
    filter: none;
  }
  #section2 .journey__panel--intro.journey-intro-circles--spread .journey__circle {
    animation: none;
    transform: none;
    opacity: 1;
    filter: none;
  }
}
#section2 .journey__orbit {
  inset: 0;
  pointer-events: none;
  position: absolute;
}
#section2 .journey__orbit-line {
  border: 2px solid #F3F3F3;
  border-radius: 50%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.8);
  transition: opacity 1.4s cubic-bezier(0.22, 1, 0.36, 1), transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
}
#section2 .journey__orbit-line--outer {
  --journey-orbit-outer-r: calc(80vw / 2 - 1px);
  height: 80vw;
  width: 80vw;
}
#section2 .journey__orbit-line--outer::before, #section2 .journey__orbit-line--outer::after {
  -webkit-animation: journeyOrbitDot 60s linear infinite;
  animation: journeyOrbitDot 60s linear infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  background: #0C2E4D;
  border-radius: 50%;
  content: "";
  height: 1.2rem;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  width: 1.2rem;
  z-index: 2;
}
#section2 .journey__orbit-line--outer::after {
  animation-delay: -20s;
}
#section2 .journey__orbit-line--outer {
  /** 세 번째 점 — 120° 간격이라 위·아래만 보일 때도 옆 구간에 점이 남음 */
}
#section2 .journey__orbit-line--outer .journey__orbit-outer-dot {
  -webkit-animation: journeyOrbitDot 60s linear infinite;
  animation: journeyOrbitDot 60s linear infinite;
  animation-delay: -40s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  background: #0C2E4D;
  border-radius: 50%;
  height: 1.2rem;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  width: 1.2rem;
  z-index: 2;
}
@media (prefers-reduced-motion: reduce) {
  #section2 .journey__orbit-line--outer::before, #section2 .journey__orbit-line--outer::after {
    -webkit-animation: none;
    animation: none;
  }
  #section2 .journey__orbit-line--outer::before {
    transform: translate3d(-50%, -50%, 0) rotate(0deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
  }
  #section2 .journey__orbit-line--outer::after {
    transform: translate3d(-50%, -50%, 0) rotate(120deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
  }
  #section2 .journey__orbit-line--outer .journey__orbit-outer-dot {
    -webkit-animation: none;
    animation: none;
    transform: translate3d(-50%, -50%, 0) rotate(240deg) translate3d(0, calc(-1 * var(--journey-orbit-outer-r)), 0);
  }
}
#section2 .journey__orbit-line--middle {
  --journey-orbit-middle-r: calc(50vw / 2 - 2rem);
  background: #ffffff;
  border: 0;
  height: 50vw;
  width: 50vw;
  border: 4rem solid #F5F7F9;
  z-index: 0;
  /** 작은 궤도 점 2개 — 외곽보다 느리고 반대 방향으로 한 개 */
}
#section2 .journey__orbit-line--middle::before, #section2 .journey__orbit-line--middle::after {
  -webkit-animation: journeyOrbitDotMiddle 52s linear infinite reverse;
  animation: journeyOrbitDotMiddle 52s linear infinite reverse;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  background: rgba(12, 46, 77, 0.38);
  border-radius: 50%;
  content: "";
  height: 0.55rem;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  width: 0.55rem;
  z-index: 1;
}
#section2 .journey__orbit-line--middle::after {
  animation-delay: -19s;
  animation-direction: normal;
  animation-duration: 38s;
  background: rgba(12, 46, 77, 0.22);
  height: 0.45rem;
  width: 0.45rem;
}
@media (prefers-reduced-motion: reduce) {
  #section2 .journey__orbit-line--middle::before, #section2 .journey__orbit-line--middle::after {
    -webkit-animation: none;
    animation: none;
  }
  #section2 .journey__orbit-line--middle::before {
    transform: translate3d(-50%, -50%, 0) rotate(72deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
  }
  #section2 .journey__orbit-line--middle::after {
    transform: translate3d(-50%, -50%, 0) rotate(252deg) translate3d(0, calc(-1 * var(--journey-orbit-middle-r)), 0);
  }
}
#section2 .journey__orbit-line--middle {
  /** 회색 링을 따라가는 얇은 리플 링 2개 */
}
#section2 .journey__orbit-line--middle .journey__orbit-mid-ripple {
  -webkit-animation: journeyMidRipple 6s ease-out infinite;
  animation: journeyMidRipple 6s ease-out infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  border: 1px solid rgba(12, 46, 77, 0.6);
  border-radius: 50%;
  height: 88%;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 88%;
  z-index: 0;
}
#section2 .journey__orbit-line--middle .journey__orbit-mid-ripple--2 {
  animation-delay: -3s;
  border-color: rgba(12, 46, 77, 0.6);
}
@media (prefers-reduced-motion: reduce) {
  #section2 .journey__orbit-line--middle .journey__orbit-mid-ripple,
  #section2 .journey__orbit-line--middle .journey__orbit-mid-ripple--2 {
    -webkit-animation: none;
    animation: none;
    opacity: 0;
  }
}
#section2 .journey__circle {
  align-items: center;
  background: #0C2E4D;
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 36.5vw;
  justify-content: center;
  position: relative;
  text-align: center;
  width: 36.5vw;
  z-index: 2;
  opacity: 0;
  transform: scale(0.85);
  transition: opacity 1.2s cubic-bezier(0.22, 1, 0.36, 1), transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}
#section2 .journey__circle p {
  font-size: clamp(2rem, 2.7vw, 4rem);
  font-weight: 800;
  line-height: 1.25;
  font-family: "vitro", "Pretendard", sans-serif;
}
#section2 .journey__circle h2 {
  font-size: clamp(3.4rem, 4.6vw, 7rem);
  font-weight: 900;
  letter-spacing: -0.05em;
  line-height: 1.12;
  margin-top: 0.6rem;
  font-family: "vitro", "Pretendard", sans-serif;
}
#section2 .journey__circle span {
  color: #ffffff;
  font-size: clamp(1.3rem, 1.4vw, 2rem);
  margin-top: 2rem;
}
#section2 .journey__circle > * {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1), transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}
#section2.active .journey__orbit-line--middle {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
  transition-delay: 0.1s;
}
#section2.active .journey__orbit-line--outer {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
  transition-delay: 0.25s;
}
#section2.active .journey__circle {
  opacity: 1;
  transform: scale(1);
  transition-delay: 0.3s;
}
#section2.active .journey__circle p {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.5s;
}
#section2.active .journey__circle h2 {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.65s;
}
#section2.active .journey__circle span {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.8s;
}
#section2.active .journey__circle button {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.95s;
}
@media (prefers-reduced-motion: reduce) {
  #section2 .journey__orbit-line,
  #section2 .journey__circle,
  #section2 .journey__circle > * {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
  #section2 .journey__orbit-line {
    transform: translate(-50%, -50%) !important;
  }
}
#section2 .journey__skip {
  align-items: center;
  color: rgba(255, 255, 255, 0.8);
  display: inline-flex;
  gap: 0.8rem;
  height: 4.4rem;
  justify-content: center;
  margin-top: 3.2rem;
  padding: 0 2rem;
  width: 11rem;
  border-radius: 10rem;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  font-weight: 600;
  overflow: hidden;
  transition: background-color 0.28s ease, border-color 0.28s ease;
}
#section2 .journey__skip i {
  color: #ffffff;
  font-weight: 400;
  font-size: 1.8rem;
  transition: transform 0.34s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
}
#section2 .journey__skip:hover, #section2 .journey__skip:focus-visible {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.28);
}
#section2 .journey__skip:hover i, #section2 .journey__skip:focus-visible i {
  transform: translateX(0.5rem);
}
#section2 .journey__panel--month {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  flex-basis: auto;
  justify-content: center;
  padding: 9.25rem 0;
  width: auto;
  margin-left: 16rem;
}
#section2 .journey__panel--month:last-child {
  margin-right: 5rem;
}
#section2 .journey__panel--month.first {
  margin-left: -18vw;
}
#section2 .journey__panel--month .gradient-circle {
  position: absolute;
  right: -9rem;
  bottom: -37rem;
  border-radius: 57.5rem;
  opacity: 0.2;
  background: var(--main_01, #E3552D);
  filter: blur(157px);
  width: 57.5rem;
  height: 57.5rem;
  z-index: -1;
}
#section2 .journey__panel--month .gradient-circle.ver2 {
  top: -37rem;
  bottom: auto;
}
#section2 .journey__panel--month .gradient-circle.st2 {
  background: #84318E;
  left: -22rem;
  right: auto;
}
#section2 .journey__panel--month .gradient-circle.st3 {
  background: #27C088;
  left: -15rem;
}
#section2 .journey__panel--month .gradient-circle.st4 {
  background: #ED1A3B;
  left: -12rem;
  top: -36rem;
}
#section2 .journey-month {
  align-items: center;
  display: flex;
  gap: 9rem;
  justify-content: center;
}
#section2 .journey-feature {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: center;
  width: 39rem;
}
#section2 .journey-feature--image-first .journey-feature__body {
  order: 3;
}
#section2 .journey-month__head {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
#section2 .journey__badge {
  background: #e3552d;
  border-radius: 0.6rem;
  color: #fff;
  display: inline-flex;
  font-family: "Pretendard", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  padding: 0.4rem 1.2rem;
}
#section2 .journey__panel h3 {
  color: #222222;
  font-family: "vitro", "Pretendard", sans-serif;
  font-size: 4.4rem;
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.5;
}
#section2 .journey-feature__body {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 100%;
}
#section2 .journey-feature__date {
  color: #757575;
  font-family: "Pretendard", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
}
#section2 .journey-feature__title {
  color: #222222;
  display: block;
  font-family: "vitro", "Pretendard", sans-serif;
  font-size: 3rem;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.5;
}
#section2 .journey-feature__title2 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
  color: #222;
}
#section2 .journey-feature__thumb {
  background: linear-gradient(135deg, #273d95 0%, #4f70e8 100%);
  height: 26rem;
  margin: 1.6rem 0 0;
  overflow: hidden;
  position: relative;
  width: 100%;
}
#section2 .journey-feature__thumb img {
  height: 100%;
  inset: 0;
  object-fit: cover;
  position: absolute;
  width: 100%;
  z-index: 0;
}
#section2 .journey-feature__thumb.small {
  height: 18rem;
  margin: 0;
}
#section2 .journey-feature--image-first .journey-feature__thumb {
  margin-top: 0;
}
#section2 .journey-feature__thumb--pink {
  background: linear-gradient(135deg, #f05d7a 0%, #4b4fd7 100%);
}
#section2 .journey-feature__thumb--blue {
  background: linear-gradient(135deg, #1762e7 0%, #6aa3ff 100%);
}
#section2 .journey-feature__thumb--navy {
  background: linear-gradient(135deg, #132c73 0%, #3156c8 100%);
}
#section2 .journey-feature__thumb--green {
  background: linear-gradient(135deg, #143d3b 0%, #2a8e76 100%);
}
#section2 .journey-feature__thumb--gray {
  background: linear-gradient(135deg, #2b3140 0%, #737987 100%);
}
#section2 .journey-add {
  align-items: center;
  background: rgba(0, 0, 0, 0.24);
  bottom: 1rem;
  color: #fff;
  display: flex;
  font-size: 2.4rem;
  height: 2.4rem;
  justify-content: center;
  left: 1rem;
  line-height: 1;
  position: absolute;
  width: 2.4rem;
  z-index: 2;
}
#section2 .journey-events {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  justify-content: center;
  width: 27rem;
}
#section2 .journey-event {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  width: 100%;
}
#section2 .journey-event figure {
  height: 17rem;
  margin-top: 0;
}
#section2 .journey-event time {
  color: #9e9e9e;
  font-family: "Pretendard", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}
#section2 .journey-event time em {
  font-style: normal;
  font-weight: 400;
}
#section2 .journey-event a {
  color: #222222;
  display: flex;
  font-size: 1.8rem;
  font-weight: 600;
  gap: 0.8rem;
  line-height: 1.3;
  word-break: keep-all;
  letter-spacing: -0.04rem;
}
#section2 .journey-event a::before {
  background: rgba(191, 191, 191, 0.5);
  content: "";
  flex: 0 0 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  margin-top: 1.1rem;
  width: 0.4rem;
}
#section2 .journey-date-row {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  width: 100%;
}
#section2 .journey-like {
  align-items: center;
  background: none;
  border: 0;
  color: #D43333;
  cursor: pointer;
  display: inline-flex;
  flex-shrink: 0;
  gap: 0.4rem;
  line-height: 1;
  padding: 0;
}
#section2 .journey-like:focus-visible {
  outline: 0.2rem solid #1762e7;
  outline-offset: 0.2rem;
}
#section2 .journey-like--done, #section2 .journey-like[aria-disabled=true] {
  cursor: default;
}
#section2 .journey-like__icon {
  font-size: 2rem;
  background: #fff;
}
#section2 .journey-like__count {
  color: #222222;
  font-family: "Pretendard", sans-serif;
  font-size: 1.6rem;
  font-weight: 600;
}
#section2 .journey-more {
  align-items: center;
  border: 1px solid #bdbdbd;
  border-radius: 0.6rem;
  color: #222222;
  display: flex;
  font-size: 1.8rem;
  font-weight: 400;
  justify-content: space-between;
  line-height: 1.5;
  padding: 1rem 2rem;
  transition: border-color 0.25s ease, color 0.25s ease;
  width: 100%;
  background: #ffffff;
}
#section2 .journey-more i {
  color: inherit;
  font-size: 2rem;
}
#section2 .journey-more:hover, #section2 .journey-more:focus-visible {
  border-color: #e3552d;
  color: #e3552d;
}
#journey_popup {
  align-items: center;
  display: flex;
  inset: 0;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  transition: opacity 0.25s ease;
  z-index: 2200;
}
#journey_popup.is-open {
  opacity: 1;
  pointer-events: auto;
  overscroll-behavior: contain;
}
#journey_popup .journey_popup_dim {
  background: rgba(0, 0, 0, 0.66);
  inset: 0;
  position: absolute;
}
#journey_popup .journey_popup_inner {
  border-radius: 0.6rem;
  display: flex;
  flex-direction: column;
  max-height: 90vh;
  position: relative;
  width: min(71.2rem, 100vw - 4rem);
  z-index: 1;
  background: #fff;
}
#journey_popup .journey_popup_head {
  align-items: center;
  background: #E3552D;
  border-radius: 0.6rem 0.6rem 0 0;
  color: #fff;
  display: flex;
  justify-content: space-between;
  padding: 2rem 3.2rem;
}
#journey_popup .journey_popup_head h3 {
  color: inherit;
  font-size: 2.8rem;
  font-family: "vitro", "Pretendard", sans-serif;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: -0.03em;
}
#journey_popup .journey_popup_head h3 small {
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  margin-left: 0.5rem;
  font-family: "Pretendard", sans-serif;
}
#journey_popup .journey-popup__close {
  align-items: center;
  background: transparent;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  height: 4rem;
  justify-content: center;
  width: 4rem;
}
#journey_popup .journey-popup__close i {
  font-size: 3.1rem;
}
#journey_popup .journey_popup_nav {
  align-items: center;
  background: #fff;
  display: flex;
  justify-content: space-between;
  padding: 3rem 3rem 1.6rem;
}
#journey_popup .journey-popup__month-btn {
  align-items: center;
  border: 0;
  color: #222;
  cursor: pointer;
  display: inline-flex;
  font-size: 1.8rem;
  gap: 0.8rem;
  line-height: 1.2;
  padding: 0;
}
#journey_popup .journey-popup__month-btn:disabled {
  color: #bdbdbd;
  cursor: default;
}
#journey_popup .journey_popup_content {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
  width: 100%;
  padding-bottom: 3rem;
}
#journey_popup .journey_popup_content::-webkit-scrollbar {
  width: 0.8rem !important;
}
#journey_popup .journey_popup_content {
  /* 스크롤바 막대 설정*/
}
#journey_popup .journey_popup_content::-webkit-scrollbar-thumb {
  background-color: rgba(227, 85, 45, 0.1) !important;
  border-radius: 0.6rem !important;
  border: 0.6rem solid rgba(227, 85, 45, 0.1) !important; /* 스크롤을 적용할 영역 색깔과 border 색상을 똑같이 맞춘다 */
}
#journey_popup .journey_popup_content::-webkit-scrollbar-track {
  background-color: #F2F2F2 !important; /* 스크롤바 뒷 배경을 투명 처리한다 */
}
#journey_popup .journey_popup_content_inner {
  display: flex;
  flex-direction: column;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: 1.8rem 2.4rem;
  border-radius: 0.6rem;
  background: #F4F4F4;
  width: calc(100% - 6.4rem);
  margin: 0 auto;
}
#journey_popup .journey-popup-item {
  padding-top: 2.2rem;
}
#journey_popup .journey-popup-item:first-child {
  padding-top: 0;
}
#journey_popup .journey-popup-item:first-child .journey-popup-item__body::before {
  height: calc(100% - 1.2rem);
  top: 1.2rem;
}
#journey_popup .journey-popup-item:last-child .journey-popup-item__body::before {
  height: calc(100% - 2rem);
}
#journey_popup .journey-popup-item__row {
  display: grid;
  grid-template-columns: 15rem minmax(0, 1fr);
}
#journey_popup .journey-popup-item__date {
  color: #222;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
}
#journey_popup .journey-popup-item__date .is-local-time {
  font-size: 1.6rem;
  font-weight: 400;
  margin-top: 0.4rem;
}
#journey_popup .journey-popup-item__body {
  min-width: 0;
  padding-left: 2.75rem;
  position: relative;
}
#journey_popup .journey-popup-item__body::before {
  content: "";
  position: absolute;
  left: 0;
  top: -2.2rem;
  width: 1px;
  height: calc(100% + 2.2rem);
  background: #D6D6D6;
}
#journey_popup .journey-popup-item__entry:not(:first-child) {
  margin-top: 2.2rem;
}
#journey_popup .journey-popup-item__like-row {
  align-items: center;
  display: flex;
  margin-top: 0.9rem;
}
#journey_popup .journey-like {
  align-items: center;
  background: none;
  border: 0;
  color: #D43333;
  cursor: pointer;
  display: inline-flex;
  flex-shrink: 0;
  gap: 0.4rem;
  line-height: 1;
  padding: 0;
}
#journey_popup .journey-like:focus-visible {
  outline: 0.2rem solid #1762e7;
  outline-offset: 0.2rem;
}
#journey_popup .journey-like--done, #journey_popup .journey-like[aria-disabled=true] {
  cursor: default;
}
#journey_popup .journey-like__icon {
  font-size: 2rem;
}
#journey_popup .journey-like__count {
  color: #222222;
  font-family: "Pretendard", sans-serif;
  font-size: 1.6rem;
  font-weight: 600;
}
#journey_popup .journey-popup-item__title {
  display: block;
  color: #616161;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  word-break: keep-all;
  position: relative;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.4s;
}
#journey_popup .journey-popup-item__title[aria-disabled=true] {
  cursor: default;
}
#journey_popup .journey-popup-item__title:before {
  content: "";
  width: 0.9rem;
  height: 0.9rem;
  border-radius: 50%;
  background: #E3552D;
  position: absolute;
  left: -3.15rem;
  top: 1rem;
}
#journey_popup .journey-popup-item__title:hover {
  color: #000;
}
#journey_popup .journey-popup-item__thumb {
  overflow: hidden;
  width: 30rem;
  height: 20rem;
  margin-top: 1.4rem;
}
#journey_popup .journey-popup-item__thumb img {
  display: block;
  height: auto;
  width: 100%;
}

#section2 .journey__timeline {
  bottom: 1.6rem;
  left: 2rem;
  position: absolute;
  right: 2rem;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  #section2.journey-guide-active .journey__timeline {
    z-index: 1301;
  }
}
#section2 .journey__scroll-down {
  display: none;
}
#section2 .journey__president {
  background: transparent;
  bottom: 100%;
  left: var(--president-x, 0%);
  margin-bottom: 0.8rem;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%);
  height: 9rem;
  z-index: 2;
  transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}
#section2 .journey__president[data-president=hand] {
  transform: translateX(calc(-50% + 3rem));
}
#section2 .journey__president[data-president=hurray] {
  transform: translateX(calc(-50% - 3rem));
}
#section2 .journey__president-sprites {
  display: block;
  height: 9rem;
  position: relative;
  width: 10.8rem;
}
#section2 .journey__president-gif {
  background: transparent;
  background-color: transparent;
  border: 0;
  display: block;
  height: 100%;
  left: 50%;
  max-width: inherit;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  transition: opacity 0.42s cubic-bezier(0.22, 1, 0.36, 1);
  width: auto;
  will-change: opacity;
}
#section2 .journey__president-gif.is-active {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  #section2 .journey__president-gif {
    transition-duration: 0.12s;
  }
  #section2 .journey__president {
    transition-duration: 0.12s;
  }
}
#section2 .journey__president-mob {
  display: none;
}
#section2 .journey__timeline-bar {
  background-image: repeating-linear-gradient(90deg, #D9D9D9 0 1px, transparent 1px 40px), repeating-linear-gradient(90deg, transparent 0 8px, #D9D9D9 8px 9px, transparent 9px 16px, #D9D9D9 16px 17px, transparent 17px 24px, #D9D9D9 24px 25px, transparent 25px 32px, #D9D9D9 32px 33px, transparent 33px 40px);
  background-position: left bottom, left bottom;
  background-repeat: repeat-x, repeat-x;
  background-size: 40px 11px, 40px 6px;
  display: block;
  height: 2.8rem;
  position: relative;
}
#section2 .journey__timeline-bar::before {
  background-image: repeating-linear-gradient(90deg, #E3552D 0 1px, transparent 1px 40px), repeating-linear-gradient(90deg, transparent 0 8px, #E3552D 8px 9px, transparent 9px 16px, #E3552D 16px 17px, transparent 17px 24px, #E3552D 24px 25px, transparent 25px 32px, #E3552D 32px 33px, transparent 33px 40px);
  background-position: left bottom, left bottom;
  background-repeat: repeat-x, repeat-x;
  background-size: 40px 11px, 40px 6px;
  bottom: 0;
  clip-path: inset(0 calc(100% - var(--progress, 0%)) 0 0);
  content: "";
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
#section2 .journey__timeline-bar::after {
  background: #E3552D;
  bottom: -1.5rem;
  content: "";
  height: 0.4rem;
  left: 0;
  position: absolute;
  width: var(--progress, 0%);
}
#section2 .journey__timeline-point {
  cursor: pointer;
  left: var(--x);
  position: absolute;
  top: 0;
}
#section2 .journey__timeline-point::after {
  background: #cfd5dc;
  content: "";
  height: 2.8rem;
  left: 1px;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.2s ease, background-color 0.2s ease;
  width: 2px;
}
#section2 .journey__timeline-point b {
  color: #9E9E9E;
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
  white-space: nowrap;
  margin: -3px 0 0 0.9rem;
}
#section2 .journey__timeline-point b.mob {
  display: none;
}
#section2 .journey__timeline-point.is-active::after {
  background: #e3552d;
  opacity: 1;
}
#section2 .journey__timeline-point:nth-child(4).is-active::after {
  left: 2px;
}
#section2 .journey__timeline-point:nth-child(3).is-active::after {
  left: -1px;
}
#section2 .journey__timeline-point.is-active b {
  color: #e3552d;
}
#section2 .journey__timeline-point:last-child {
  left: auto;
  right: 0;
}
#section2 .journey__timeline-point:last-child b {
  margin: -3px 0.9rem 0 0;
}
#section2 .journey__timeline-point:last-child:after {
  right: 0;
  left: auto;
  opacity: 1;
}

#section3 {
  --section3-accent: #E3552D;
  --section3-title: #222222;
  --section3-body: #333333;
  --section3-card-w: 38.4rem;
  --section3-col-gap: 7rem;
  --section3-slide-w: calc(var(--section3-card-w) * 2 + var(--section3-col-gap));
  --section3-viewport-h: 90rem;
  background: #ffffff;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  overflow-x: clip;
  overflow-y: hidden;
  position: relative;
  width: 100vw;
}
#section3:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/gradient_bg.jpg) no-repeat center center;
  background-size: cover;
  z-index: 1;
  pointer-events: none;
  object-fit: cover;
}
#section3.section3--pin-active {
  height: 100dvh;
  max-height: 100dvh;
  min-height: 100dvh;
  overflow: hidden;
}
@media (min-width: 1401px) {
  #section3 {
    height: 100dvh;
    max-height: 100dvh;
    min-height: 100dvh;
    overflow: hidden;
  }
  #section3 .section3__inner {
    height: 100%;
    min-height: 0;
  }
  #section3 .section3_panels {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
  }
  #section3 .section3_panel.is-active {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
  }
  #section3 .section3_media {
    flex: 1 1 auto;
    height: auto;
    max-height: 100%;
    min-height: 0;
  }
  #section3 .section3_viewport,
  #section3 .section3_swiper {
    flex: 1 1 auto;
    height: auto;
    max-height: 100%;
    min-height: 0;
  }
}
#section3 .section3__inner {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 170rem;
  min-height: 0;
  width: 95%;
}
#section3 .section3_head {
  align-self: center;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 7rem;
  padding-bottom: 12rem;
  z-index: 5;
}
#section3 .section3_tit {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3.2rem;
}
#section3 .section3_tit a {
  align-items: center;
  background: #fff;
  border: 1px solid #424242;
  border-radius: 0.3rem;
  color: #424242;
  display: inline-flex;
  font-size: 1.8rem;
  font-weight: 500;
  gap: 0.6rem;
  height: 5.6rem;
  justify-content: center;
  line-height: 1.2;
  padding: 0 2.2rem;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
#section3 .section3_tit a i {
  font-size: 2rem;
  line-height: 1;
}
#section3 .section3_tit a:hover, #section3 .section3_tit a:focus-visible {
  background: #0C2E4D;
  border-color: #0C2E4D;
  color: #fff;
  outline: none;
}
#section3 .section3_desc {
  color: var(--section3-body);
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}
#section3 .section3_tabs {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}
#section3 .section3_tabs__btn + .section3_tabs__btn {
  margin-left: 0;
}
#section3 .section3_tabs__btn {
  background: transparent;
  border: 0;
  border-bottom: 0.3rem solid transparent;
  color: #111111;
  cursor: pointer;
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1.4;
  opacity: 0.3;
  padding: 0;
  transition: opacity 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}
#section3 .section3_tabs__btn.is-active {
  border-bottom-color: #111111;
  opacity: 1;
}
@media (hover: hover) and (pointer: fine) {
  #section3 .section3_tabs__btn:hover {
    opacity: 0.72;
  }
  #section3 .section3_tabs__btn.is-active:hover {
    opacity: 1;
  }
}
#section3 .section3_panels {
  flex: 1 1 auto;
  height: auto;
  min-height: 0;
  position: relative;
  width: auto;
}
#section3 .section3_panel {
  display: none;
  height: 100%;
  min-height: 0;
  width: 100%;
}
#section3 .section3_panel.is-active {
  display: block;
}
#section3 .section3_media {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 4rem;
  height: var(--section3-viewport-h);
  min-height: 0;
  overflow: hidden;
  position: relative;
  justify-content: flex-end;
}
#section3 .section3_viewport {
  flex: 0 0 var(--section3-slide-w);
  height: var(--section3-viewport-h);
  min-height: 0;
  overflow: hidden;
  width: var(--section3-slide-w);
}
#section3 .section3_swiper {
  height: 100%;
  margin: 0;
  max-height: 100%;
  min-height: 0;
  overflow: hidden;
  width: 100%;
}
#section3 .section3_swiper .swiper-slide {
  box-sizing: border-box;
  height: auto !important;
  width: var(--section3-slide-w);
}
#section3 .section3_swiper .swiper-wrapper {
  align-items: stretch;
}
#section3 .section3_row {
  display: flex;
  gap: var(--section3-col-gap);
  width: var(--section3-slide-w);
}
#section3 .section3_row .section3_card:last-child {
  margin-top: 6rem;
}
#section3 .section3_row .section3_card:only-child {
  margin-top: 0;
}
#section3 .section3_card {
  flex: 0 0 var(--section3-card-w);
  width: var(--section3-card-w);
}
#section3 .section3_card__link {
  color: #000000;
  display: flex;
  flex-direction: column;
  gap: 2.1rem;
  text-decoration: none;
  width: 100%;
}
#section3 .section3_card__thumb {
  --thumb-url: none;
  align-items: center;
  background-color: #101010;
  display: flex;
  height: 25rem;
  isolation: isolate;
  justify-content: center;
  overflow: hidden;
  position: relative;
  width: 100%;
}
#section3 .section3_card__thumb::before {
  background-color: #101010;
  background-image: var(--thumb-url);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  filter: blur(2.4rem);
  inset: -12%;
  pointer-events: none;
  position: absolute;
  transform: scale(1.15);
  z-index: 0;
}
#section3 .section3_card__thumb .section3_card__thumb-img {
  display: block;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
  position: relative;
  transform: scale(1);
  transition: transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
  width: 100%;
  z-index: 1;
}
#section3 .section3_card__body {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 100%;
}
#section3 .section3_card__badge {
  align-items: center;
  background: var(--section3-accent);
  color: #ffffff;
  display: inline-flex;
  font-family: "Pretendard", sans-serif;
  font-size: 1.4rem;
  font-weight: 600;
  height: 2.6rem;
  letter-spacing: -0.014rem;
  line-height: 1.28;
  padding: 0 1rem;
  text-transform: uppercase;
  width: fit-content;
  flex-shrink: 0;
}
#section3 .section3_card__tit {
  color: #000000;
  display: -webkit-box;
  font-family: "Pretendard", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: normal;
  margin: 0;
  height: 5.8rem;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  text-overflow: ellipsis;
  word-break: keep-all;
  flex-shrink: 0;
}
#section3 .section3_card__date {
  color: #000000;
  font-family: "Pretendard", sans-serif;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: normal;
}
@media (hover: hover) and (pointer: fine) {
  #section3 .section3_card__link:hover .section3_card__thumb-img {
    transform: scale(1.03);
  }
}
#section3 .section3_controls {
  align-items: center;
  display: flex;
  flex: 0 0 5.7rem;
  flex-direction: column;
  gap: 2.6rem;
  justify-content: center;
  width: 5.7rem;
  z-index: 3;
}
#section3 .section3_btn {
  align-items: center;
  background: transparent;
  border: 0;
  color: #222222;
  cursor: pointer;
  display: inline-flex;
  font-size: 2.4rem;
  height: 2.4rem;
  justify-content: center;
  line-height: 1;
  padding: 0;
  position: relative;
  transition: color 0.2s ease, transform 0.2s ease;
  width: 2.4rem;
}
#section3 .section3_btn .section3_btn__icon {
  font-size: 2.4rem;
  line-height: 1;
}
#section3 .section3_btn .section3_btn__icon--mob {
  display: none;
}
#section3 .section3_btn:hover {
  color: var(--section3-accent);
  transform: translateY(-0.1rem);
}
#section3 .section3_btn.swiper-button-disabled {
  cursor: default;
  opacity: 0.35;
  transform: none;
}
#section3 .section3_scrollbar.swiper-scrollbar {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 0;
  flex: 0 0 32rem;
  height: 32rem;
  left: auto;
  position: relative;
  top: auto;
  width: 0.2rem;
  margin-left: 0.4rem;
}
#section3 .section3_scrollbar.swiper-scrollbar .swiper-scrollbar-drag {
  background: var(--section3-accent);
  border-radius: 0;
  width: 0.2rem;
}
#section3.section3--mobile .section3_head {
  padding-bottom: 0;
}
#section3.section3--mobile .section3_row {
  display: block;
  width: 100%;
}
#section3.section3--mobile .section3_row .section3_card:last-child {
  margin-top: 0;
}
#section3.section3--mobile .section3_card {
  flex: 0 0 auto;
  width: 100%;
}
@media screen and (max-width: 1400px) {
  #section3 {
    height: auto;
    padding: 8rem 0;
  }
  #section3 .section3__inner {
    align-items: center;
    flex-direction: column;
    gap: 3.2rem;
    text-align: center;
  }
  #section3 .section3_card__link {
    gap: 1.4rem;
  }
  #section3 .section3_card__body {
    text-align: center;
    align-items: center;
  }
  #section3 .section3_card__date {
    color: #767676;
  }
  #section3 .section3_head {
    align-items: center;
    gap: 3.2rem;
    padding-bottom: 0;
    position: static;
    width: 100%;
  }
  #section3 .section3_tit {
    align-items: center;
    gap: 1.6rem;
  }
  #section3 .section3_tit br {
    display: none;
  }
  #section3 .section3_tit p br {
    display: block;
  }
  #section3 .section3_tabs {
    gap: 2rem;
    justify-content: center;
  }
  #section3 .section3_panels {
    width: 100%;
  }
  #section3 .section3_media {
    flex-direction: column;
    gap: 2.4rem;
    height: auto;
    padding-top: 0;
  }
  #section3 .section3_media::after {
    display: none;
  }
  #section3 .section3_viewport {
    flex: 0 0 auto;
    max-width: none;
    overflow: visible;
    width: 100%;
    height: auto;
  }
  #section3 .section3_swiper {
    overflow: visible;
    height: auto;
  }
  #section3 .section3_swiper .swiper-slide {
    width: calc(100vw - 8rem);
    max-width: 32rem;
  }
  #section3 .section3_card__thumb {
    height: 20rem;
  }
  #section3 .section3_card__tit {
    font-size: 1.8rem;
    height: auto;
    max-height: none;
  }
  #section3 .section3_controls {
    flex-direction: row;
    gap: 2rem;
    height: auto;
    margin: 0 auto;
    max-width: 90%;
    width: 100%;
    max-height: 3rem;
  }
  #section3 .section3_btn:hover {
    transform: translateX(-0.1rem);
  }
  #section3 .section3_btn.swiper-button-disabled {
    transform: none;
  }
  #section3 .section3_btn__icon--desk {
    transform: rotate(-90deg);
  }
  #section3 .section3_btn__icon--mob {
    display: block;
  }
  #section3 .section3_scrollbar.swiper-scrollbar {
    flex: 1 1 auto;
    height: 0.2rem;
    max-height: none;
    width: auto;
    margin-top: 0.5rem;
  }
  #section3 .section3_scrollbar.swiper-scrollbar .swiper-scrollbar-drag {
    height: 0.2rem;
    width: auto;
  }
}

#wrap:has(.section3--pin-active) #logo {
  background: none;
  backdrop-filter: blur(0);
}

#section4 > img {
  width: 100vw;
}

#inc01 .inc01_panels.pc {
  display: grid;
}

#inc01 .inc01_panels.mob {
  display: none;
}

@media (max-width: 768px) {
  #inc01 .inc01_panels.pc {
    display: none;
  }
  #inc01 .inc01_panels.mob {
    display: grid;
  }
}
#section4 {
  padding: 12rem 0;
}
#section4 .section_tit {
  margin: 0 auto;
  margin-bottom: 2.4rem;
  text-align: center;
  justify-content: center;
}
#section4 .section_tit span {
  display: inline-block;
}

/*카드/한컷 — 가로로 문서 너비가 밀리지 않게 */
#inc01 {
  max-width: 100%;
  position: relative;
}
@media (hover: hover) and (pointer: fine) {
  #inc01.section2-cursor-active .video_swiper .swiper-slide a, #inc01.section2-cursor-active .video_swiper .swiper-slide a * {
    cursor: none !important;
  }
  #inc01 .inc01_panels.inc01-cursor-active .swiper-slide:not(.swiper-slide-active),
  #inc01 .inc01_panels.inc01-cursor-active .swiper-slide:not(.swiper-slide-active) * {
    cursor: none !important;
  }
}
#inc01 .cursor_hover {
  position: fixed;
  width: 2rem;
  height: 2rem;
  background-color: #E3552D;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  z-index: 99999;
  opacity: 0;
  transition: width 0.3s ease, height 0.3s ease, opacity 0.3s ease;
  user-select: none;
  cursor: none;
  will-change: left, top;
}
#inc01 .cursor_hover.is-visible {
  border-radius: 6.4rem;
  background: rgba(238, 76, 39, 0.6);
  backdrop-filter: blur(6px);
  display: inline-block;
  position: fixed;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 1;
  transition: width 0.3s ease, height 0.3s ease, opacity 0.3s ease;
  width: 13rem;
  height: 13rem;
  z-index: 9999;
}
#inc01 .cursor_hover.is-visible:after {
  opacity: 1;
}
#inc01 .cursor_hover:after {
  background: url(../img/drag.png);
  content: "";
  height: 5.7rem;
  width: 10.2rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
#inc01 .inc01_head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.4rem;
  margin: 0 auto 1rem;
  max-width: 78rem;
  position: relative;
  z-index: 5;
  width: 100%;
}
#inc01 .inc01_tabs {
  align-items: center;
  background: #0C2E4D;
  border-radius: 1.2rem;
  display: flex;
  flex-wrap: nowrap;
  gap: 1rem;
  justify-content: center;
  padding: 1rem;
  position: relative;
  width: 100%;
  perspective: 1200px;
  transform-style: preserve-3d;
}
#inc01 .inc01_tabs__thumb {
  background: #fff;
  border-radius: 1.2rem;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transition: transform 0.16s ease-out, width 0.16s ease-out, height 0.16s ease-out;
  z-index: 0;
  will-change: transform;
}
#inc01 .inc01_tabs__dot {
  background: rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  flex-shrink: 0;
  height: 0.6rem;
  width: 0.6rem;
}
#inc01 .inc01_tabs__btn {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 1.2rem;
  color: #fff;
  cursor: pointer;
  display: flex;
  flex: 1 1 0;
  gap: 0.6rem;
  height: 5.4rem;
  justify-content: center;
  line-height: 1.2;
  min-width: 0;
  padding: 0 4rem;
  position: relative;
  white-space: nowrap;
  z-index: 1;
  transition: color 0.38s cubic-bezier(0.34, 1.12, 0.64, 1), transform 0.38s cubic-bezier(0.34, 1.12, 0.64, 1);
}
#inc01 .inc01_tabs__btn:hover, #inc01 .inc01_tabs__btn:focus-visible {
  color: #fff;
  outline: none;
}
#inc01 .inc01_tabs__btn.is-active {
  color: #222;
}
#inc01 .inc01_tabs__label {
  font-size: 2.4rem;
  font-weight: 600;
}
#inc01 .inc01_tabs__count {
  font-size: 1.6rem;
  font-weight: 600;
}
#inc01 .inc01_tabs:has(.inc01_tabs__thumb) .inc01_tabs__btn.is-active {
  background: transparent;
  color: #222;
}
#inc01 .inc01_actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  justify-content: center;
  z-index: 4;
}
#inc01 .inc01_actions__btn {
  align-items: center;
  background: #fff;
  border: 1px solid #424242;
  border-radius: 0.3rem;
  color: #424242;
  display: inline-flex;
  font-size: 1.8rem;
  font-weight: 500;
  gap: 0.6rem;
  height: 5.6rem;
  justify-content: center;
  line-height: 1.2;
  padding: 0 2.2rem;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
#inc01 .inc01_actions__btn i {
  font-size: 2rem;
  line-height: 1;
}
#inc01 .inc01_actions__btn:hover, #inc01 .inc01_actions__btn:focus-visible {
  background: #0C2E4D;
  border-color: #0C2E4D;
  color: #fff;
  outline: none;
}
@media (prefers-reduced-motion: reduce) {
  #inc01 #inc01 .inc01_tabs__thumb {
    transition: none;
  }
  #inc01 #inc01 .inc01_tabs__btn {
    transition: color 0.15s ease, transform 0.15s ease;
  }
}
#inc01 .inc01_panels {
  align-items: start;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  position: relative;
  width: 100%;
  margin-top: 4px;
}
#inc01 .inc01_panels:before {
  content: "";
  position: absolute;
  top: -1px;
  width: 100%;
  height: 5px;
  background: #fff;
  z-index: 3;
  left: 0;
  pointer-events: none;
}
#inc01 .inc01_panels:after {
  content: "";
  position: absolute;
  bottom: -1px;
  width: 100%;
  height: 5px;
  background: #fff;
  z-index: 3;
  left: 0;
  pointer-events: none;
}
#inc01 .inc01_panel {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 1.4rem, 0);
  transition: opacity 0.48s cubic-bezier(0.22, 1, 0.36, 1), transform 0.62s cubic-bezier(0.18, 1, 0.32, 1), visibility 0s linear 0.45s;
  visibility: hidden;
  width: 100%;
  z-index: 1;
}
#inc01 .inc01_panel.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: translate3d(0, 0, 0);
  transition: opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1), transform 0.68s cubic-bezier(0.18, 1, 0.32, 1), visibility 0s;
  visibility: visible;
  z-index: 2;
}
@media (prefers-reduced-motion: reduce) {
  #inc01 #inc01 .inc01_panel {
    transform: none;
    transition: opacity 0.2s ease;
  }
  #inc01 #inc01 .inc01_panel.is-active {
    transform: none;
    transition: opacity 0.2s ease;
  }
}
#inc01 .controls {
  align-items: center;
  display: flex;
  gap: 2.6rem;
  justify-content: center;
  position: relative;
  z-index: 2;
  margin-top: 1rem;
}
#inc01 .controls > .arr {
  -webkit-tap-highlight-color: transparent;
  align-items: center;
  background: transparent;
  border: 0;
  color: #222;
  cursor: pointer;
  display: flex;
  font: inherit;
  font-size: 1.8rem;
  font-weight: 400;
  gap: 0.8rem;
  justify-content: center;
  margin: 0;
  padding: 0;
  touch-action: manipulation;
  transition: 0.2s;
}
#inc01 .controls > .arr i {
  font-size: 2rem;
  font-weight: 500;
}
#inc01 .inc01_paging {
  color: #222;
  font-size: 1.8rem;
  font-weight: 400;
  min-width: 4.4em;
  text-align: center;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}
#inc01 .inc01_paging__current {
  color: #E3552D;
  font-weight: 700;
}
#inc01 .inc01_paging__sep, #inc01 .inc01_paging__total {
  color: #222;
}
#inc01 .inc01_slide {
  max-width: 100%;
  isolation: isolate;
  overflow: hidden;
  position: relative;
  touch-action: pan-y pinch-zoom;
  width: 100%;
}
#inc01 .inc01_slide.is-user-dragging > .swiper-wrapper {
  will-change: transform;
  transition-timing-function: linear;
}
#inc01 .inc01_slide.is-user-dragging > .swiper-wrapper > .swiper-slide {
  transition: none !important;
}
#inc01 .inc01_slide.is-user-dragging > .swiper-wrapper > .swiper-slide:before {
  transform: scale(1) !important;
  transition: none !important;
}
#inc01 .inc01_slide:not(.is-user-dragging) > .swiper-wrapper {
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
#inc01 .inc01_slide {
  /* width 지연 전환은 centeredSlides와 충돌 → 트랙 easing + 콘텐츠 fade로 모션 표현 */
}
#inc01 .inc01_slide.is-swipe-animating > .swiper-wrapper > .swiper-slide, #inc01 .inc01_slide:not(.is-user-dragging) > .swiper-wrapper > .swiper-slide {
  transition: width 0s, max-width 0s;
}
#inc01 .inc01_slide:not(.is-user-dragging):not(.is-swipe-animating) > .swiper-wrapper > .swiper-slide:not(.swiper-slide-active) {
  opacity: 0.82;
  transition: opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1), width 0s, max-width 0s;
}
@media (prefers-reduced-motion: reduce) {
  #inc01 .inc01_slide:not(.is-user-dragging) > .swiper-wrapper {
    transition-timing-function: linear;
  }
  #inc01 .inc01_slide:not(.is-user-dragging):not(.is-swipe-animating) > .swiper-wrapper > .swiper-slide:not(.swiper-slide-active) {
    opacity: 1;
    transition: none;
  }
}
#inc01 .inc01_slide {
  /* expand 열림 모션 비활성화
  @keyframes inc01ExpandClipReveal {
      from {
          clip-path: inset(0 13% 0 13%);
      }

      to {
          clip-path: inset(0 0 0 0);
      }
  }
  */
}
@keyframes inc01ExpandClipCollapse {
  from {
    clip-path: inset(0 0 0 0);
  }
  to {
    clip-path: inset(0 13% 0 13%);
  }
}
@keyframes inc01ExpandFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes inc01ExpandFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
#inc01 .inc01_slide {
  /** active 슬라이드 li 배경 — 살짝 커졌다가 멈춤(끝까지 확대 X) */
}
@keyframes inc01SlideBgGrow {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.045);
  }
}
#inc01 .inc01_slide {
  /* expand 열림 모션 비활성화
  @keyframes inc01ExpandOverlayFade {
      from {
          opacity: 0.55;
      }

      to {
          opacity: 1;
      }
  }

  @keyframes inc01ExpandTitleFade {
      from {
          opacity: 0.72;
      }

      to {
          opacity: 1;
      }
  }
  */
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) {
  display: block !important;
  padding: 1rem 0;
  transition: padding 0.26s cubic-bezier(0.22, 1, 0.36, 1);
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand):after {
  animation: none;
  background: rgba(0, 0, 0, 0.3);
  -webkit-backdrop-filter: blur(0.3rem);
  backdrop-filter: blur(0.3rem);
  opacity: 1;
  transition: background 0.26s cubic-bezier(0.22, 1, 0.36, 1), -webkit-backdrop-filter 0.26s cubic-bezier(0.22, 1, 0.36, 1), backdrop-filter 0.26s cubic-bezier(0.22, 1, 0.36, 1);
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
  align-items: center;
  animation: none;
  font-size: 4rem;
  height: 100%;
  justify-content: center;
  line-height: 1.3;
  max-width: none;
  opacity: 1;
  padding: 0 3rem;
  padding-bottom: 0;
  text-align: center;
  transition: font-size 0.26s cubic-bezier(0.22, 1, 0.36, 1), padding 0.26s cubic-bezier(0.22, 1, 0.36, 1), text-align 0.26s cubic-bezier(0.22, 1, 0.36, 1);
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) > .title br {
  display: inline;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
  animation: inc01ExpandFadeOut 0.32s ease both;
  pointer-events: none;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) {
  width: 57rem;
  max-width: 57rem;
  min-width: 0;
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  padding: 0 3rem;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand):after {
  background: rgba(12, 46, 77, 0.7);
  -webkit-backdrop-filter: blur(0.5rem);
  backdrop-filter: blur(0.5rem);
  animation: inc01ExpandFade 0.38s ease both;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
  font-size: 2.5rem;
  height: auto;
  justify-content: center;
  padding: 0;
  padding-bottom: 3.2rem;
  text-align: left;
  width: 100%;
  max-width: 100%;
  line-height: 1.2;
  word-break: break-all;
  box-sizing: border-box;
  animation: inc01ExpandFade 0.36s ease 0.04s both;
  height: 8.5rem;
  text-align: center;
  word-break: keep-all;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title br {
  display: none;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title {
  display: none;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
  box-sizing: border-box;
  display: flex !important;
  gap: 2.6rem;
  height: auto;
  opacity: 1;
  pointer-events: auto;
  touch-action: auto;
  visibility: visible;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  align-items: center;
  z-index: 3;
  position: relative;
  flex-direction: row;
  animation: inc01ExpandFade 0.4s ease 0.06s both;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand.is-single-col .swiper2__head {
  box-sizing: border-box;
  max-width: 24rem;
  width: 24rem;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide:not(.swiper-slide-active):has(.inc01_slide__expand) .inc01_slide__expand {
  display: none !important;
}
@media (prefers-reduced-motion: reduce) {
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    animation: none;
    opacity: 0;
    pointer-events: none;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand):after,
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title,
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    animation: none;
  }
}
#inc01 .inc01_slide {
  /* angle.png 검정 실루엣만 노출 (흰 배경 luminance → XOR 반전) */
  -webkit-mask-image: linear-gradient(#fff, #fff), url("../img/card/angle.png");
  mask-image: linear-gradient(#fff, #fff), url("../img/card/angle.png");
  -webkit-mask-size: 100% 100%, 100% 100%;
  mask-size: 100% 100%, 100% 100%;
  -webkit-mask-position: center, center;
  mask-position: center, center;
  -webkit-mask-repeat: no-repeat, no-repeat;
  mask-repeat: no-repeat, no-repeat;
  -webkit-mask-mode: luminance, luminance;
  mask-mode: luminance, luminance;
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
@media screen and (max-width: 768px) {
  #inc01 .inc01_slide {
    /* 높이 100%로 상·하단 곡선 고정, 가로는 비율 유지(contain) */
    -webkit-mask-size: auto 100%, auto 100%;
    mask-size: auto 100%, auto 100%;
    -webkit-mask-position: center top, center top;
    mask-position: center top, center top;
  }
}
#inc01 .inc01_slide {
  /** 480px 이하: 슬라이드 전환 시 title·expand fade 등 제거 (JS .inc01_slide--instant 동기) */
}
@media screen and (max-width: 480px) {
  #inc01 .inc01_slide:not(.is-user-dragging) > .swiper-wrapper {
    transition-timing-function: linear;
  }
  #inc01 .inc01_slide:not(.is-user-dragging):not(.is-swipe-animating) > .swiper-wrapper > .swiper-slide:not(.swiper-slide-active) {
    opacity: 1;
    transition: none;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide {
    transition: none !important;
    animation: none !important;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide::before, #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide::after {
    transition: inherit;
    animation: inherit;
    transform: scale(1) !important;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide {
    transition: inherit;
    animation: inherit;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active::before {
    animation: none !important;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) {
    transition: none !important;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand)::after {
    transition: inherit;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) > .title,
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    transition: inherit !important;
    animation: inherit !important;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand)::after,
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title,
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    transition: inherit;
    animation: inherit;
  }
}
#inc01 .inc01_slide.inc01_slide--instant:not(.is-user-dragging) > .swiper-wrapper {
  transition-timing-function: linear;
}
#inc01 .inc01_slide.inc01_slide--instant:not(.is-user-dragging):not(.is-swipe-animating) > .swiper-wrapper > .swiper-slide:not(.swiper-slide-active) {
  opacity: 1;
  transition: none;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide {
  transition: none !important;
  animation: none !important;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide::before, #inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide::after {
  transition: inherit;
  animation: inherit;
  transform: scale(1) !important;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide {
  transition: inherit;
  animation: inherit;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active::before {
  animation: none !important;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) {
  transition: none !important;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand)::after {
  transition: inherit;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) > .title,
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
  transition: inherit !important;
  animation: inherit !important;
}
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand)::after,
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title,
#inc01 .inc01_slide.inc01_slide--instant > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
  transition: inherit;
  animation: inherit;
}
#inc01 .inc01_slide.inc01_slide--standard .swiper-wrapper {
  align-items: stretch;
}
#inc01 .inc01_slide > .swiper-wrapper {
  align-items: stretch;
  overflow: visible;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  cursor: grab;
  flex-shrink: 0;
  height: 50rem;
  overflow: hidden;
  position: relative;
  transition: width 0s, max-width 0s;
  width: 35rem;
  max-width: 35rem;
  padding: 1rem 0;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: 100%;
  transform: scale(1);
  transform-origin: center center;
  transition: transform 0.48s cubic-bezier(0.22, 1, 0.36, 1);
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:before {
  animation: inc01SlideBgGrow 0.52s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
@media (prefers-reduced-motion: reduce) {
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide:before {
    transition: none;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:before {
    animation: none;
    transform: scale(1);
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide:hover:before {
    transform: scale(1);
  }
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide:after {
  background: rgba(0, 0, 0, 0.3);
  -webkit-backdrop-filter: blur(0.3rem);
  backdrop-filter: blur(0.3rem);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 0;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide:active {
  cursor: grabbing;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title {
  align-items: center;
  color: #fff;
  display: flex;
  font-size: 3.5rem;
  font-weight: 700;
  height: 100%;
  justify-content: center;
  position: relative;
  text-align: center;
  width: 100%;
  word-break: keep-all;
  z-index: 2;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
  line-height: 1.3;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title sup {
    font-size: 1.2rem;
    vertical-align: super;
    font-weight: 400;
}

#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide .inc01_slide__expand {
  display: none;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active {
  width: 57rem;
  max-width: 57rem;
  z-index: 2;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-detail-closed:has(.inc01_slide__expand) {
  transition: none;
  display: block;
  padding: 1rem 0;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-detail-closed:has(.inc01_slide__expand):after {
  background: rgba(0, 0, 0, 0.3);
  -webkit-backdrop-filter: blur(0.3rem);
  backdrop-filter: blur(0.3rem);
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-detail-closed:has(.inc01_slide__expand) > .title {
  align-items: center;
  display: flex;
  font-size: 4rem;
  font-weight: 700;
  height: 100%;
  justify-content: center;
  line-height: 1.3;
  max-width: none;
  padding: 0 3rem;
  padding-bottom: 0;
  text-align: center;
  word-break: keep-all;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-detail-closed:has(.inc01_slide__expand) .inc01_slide__expand {
  display: none !important;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2-col {
  display: flex;
  flex: 1 1 calc(50% - 0.8rem);
  flex-direction: column;
  gap: 0.8rem;
  min-width: 0;
  overflow: hidden;
  position: relative;
  z-index: 1;
  width: 24rem;
  align-items: center;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__head {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  justify-content: space-between;
  width: 24rem;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .inc01_slide__expand.is-single-col .swiper2-col--card {
  align-items: center;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .inc01_slide__expand.is-single-col .swiper2-col--card .swiper2__head {
  box-sizing: border-box;
  max-width: 24rem;
  width: 24rem;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__label {
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__nav {
  display: flex;
  gap: 2rem;
  position: relative;
  z-index: 5;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__prev,
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__next {
  align-items: center;
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  height: 2.4rem;
  justify-content: center;
  position: relative;
  touch-action: manipulation;
  width: 2.4rem;
  z-index: 5;
  -webkit-tap-highlight-color: transparent;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__prev i,
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__next i {
  font-size: 2.4rem;
  pointer-events: none;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__prev.swiper-button-disabled,
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__next.swiper-button-disabled {
  cursor: default;
  opacity: 0.35;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  touch-action: pan-x pinch-zoom;
  width: 24rem;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 .swiper-slide {
  height: auto;
  width: 100% !important;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 a {
  display: block;
  height: auto;
  overflow: hidden;
  position: relative;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 a::before {
  display: none;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 a img {
  aspect-ratio: 3/2;
  height: 15rem;
  object-fit: cover;
  width: 100%;
  transition: transform 0.3s ease;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 a:hover::before {
  color: #fff;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 a:hover img {
  transform: scale(1.05);
  transition: transform 0.3s ease;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__cap {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #fff;
  display: -webkit-box;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 2rem;
  overflow: hidden;
  word-break: keep-all;
  height: 4.3rem;
  text-align: left;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2-col--video .thumb {
  display: block;
  font-style: normal;
  overflow: hidden;
  position: relative;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2-col--video .thumb img {
  aspect-ratio: 3/2;
  display: block;
  height: 15rem;
  object-fit: cover;
  width: 100%;
}
#inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2-col--video .thumb::before {
  content: "\f008";
  font-family: "remixicon";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 6rem;
  color: rgba(255, 255, 255, 0.8);
  z-index: 1;
}

.video-short .thumb {
  position: relative;
  display: block !important;
}
.video-short .thumb::before {
  content: "\f008";
  font-family: "remixicon";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 6rem;
  color: rgba(255, 255, 255, 0.8);
  z-index: 1;
}

[aria-label="1 / 38"]:before {
  background-image: url("../img/card/result1_1.webp");
}

[aria-label="2 / 38"]:before {
  background-image: url("../img/card/result1_2.webp");
}

[aria-label="3 / 38"]:before {
  background-image: url("../img/card/result1_3.webp");
}

[aria-label="4 / 38"]:before {
  background-image: url("../img/card/result1_4.webp");
}

[aria-label="5 / 38"]:before {
  background-image: url("../img/card/result1_5.webp");
}

[aria-label="6 / 38"]:before {
  background-image: url("../img/card/result1_6.webp");
}

[aria-label="7 / 38"]:before {
  background-image: url("../img/card/result1_7.webp");
}

[aria-label="8 / 38"]:before {
  background-image: url("../img/card/result1_8.webp");
}

[aria-label="9 / 38"]:before {
  background-image: url("../img/card/result1_9.webp");
}

[aria-label="10 / 38"]:before {
  background-image: url("../img/card/result1_10.webp");
}

[aria-label="11 / 38"]:before {
  background-image: url("../img/card/result2_1.webp");
}

[aria-label="12 / 38"]:before {
  background-image: url("../img/card/result2_2.webp");
}

[aria-label="13 / 38"]:before {
  background-image: url("../img/card/result2_3.webp");
}

[aria-label="14 / 38"]:before {
  background-image: url("../img/card/result2_4.webp");
}

[aria-label="15 / 38"]:before {
  background-image: url("../img/card/result2_5.webp");
}

[aria-label="16 / 38"]:before {
  background-image: url("../img/card/result2_6.webp");
}

[aria-label="17 / 38"]:before {
  background-image: url("../img/card/result2_7.webp");
}

[aria-label="18 / 38"]:before {
  background-image: url("../img/card/result2_8.webp");
}

[aria-label="19 / 38"]:before {
  background-image: url("../img/card/result2_9.webp");
}

[aria-label="20 / 38"]:before {
  background-image: url("../img/card/result2_10.webp");
}

[aria-label="21 / 38"]:before {
  background-image: url("../img/card/result2_11.webp");
}

[aria-label="22 / 38"]:before {
  background-image: url("../img/card/result3_1.webp");
}

[aria-label="23 / 38"]:before {
  background-image: url("../img/card/result3_2.webp");
}

[aria-label="24 / 38"]:before {
  background-image: url("../img/card/result3_3.webp");
}

[aria-label="25 / 38"]:before {
  background-image: url("../img/card/result3_4.webp");
}

[aria-label="26 / 38"]:before {
  background-image: url("../img/card/result3_5.webp");
}

[aria-label="27 / 38"]:before {
  background-image: url("../img/card/result3_6.webp");
}

[aria-label="28 / 38"]:before {
  background-image: url("../img/card/result3_7.webp");
}

[aria-label="29 / 38"]:before {
  background-image: url("../img/card/result3_8.webp");
}

[aria-label="30 / 38"]:before {
  background-image: url("../img/card/result4_1.webp");
}

[aria-label="31 / 38"]:before {
  background-image: url("../img/card/result4_2.webp");
}

[aria-label="32 / 38"]:before {
  background-image: url("../img/card/result4_3.webp");
}

[aria-label="33 / 38"]:before {
  background-image: url("../img/card/result4_4.webp");
}

[aria-label="34 / 38"]:before {
  background-image: url("../img/card/result5_1.webp");
}

[aria-label="35 / 38"]:before {
  background-image: url("../img/card/result5_2.webp");
}

[aria-label="36 / 38"]:before {
  background-image: url("../img/card/result5_3.webp");
}

[aria-label="37 / 38"]:before {
  background-image: url("../img/card/result5_4.webp");
}

[aria-label="38 / 38"]:before {
  background-image: url("../img/card/result5_5.webp");
}

@-webkit-keyframes inc01-drag-hint-float {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: translate3d(0, -5px, 0) scale3d(1.035, 1.035, 1);
    transform: translate3d(0, -5px, 0) scale3d(1.035, 1.035, 1);
  }
}
@keyframes inc01-drag-hint-float {
  0%, 100% {
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  }
  50% {
    transform: translate3d(0, -5px, 0) scale3d(1.035, 1.035, 1);
  }
}
@-webkit-keyframes inc01-drag-hint-hand {
  0%, 100% {
    -webkit-transform: translate3d(-5px, 0, 0) scale3d(1, 1, 1);
    transform: translate3d(-5px, 0, 0) scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: translate3d(5px, 0, 0) scale3d(1.07, 1.07, 1);
    transform: translate3d(5px, 0, 0) scale3d(1.07, 1.07, 1);
  }
}
@keyframes inc01-drag-hint-hand {
  0%, 100% {
    transform: translate3d(-5px, 0, 0) scale3d(1, 1, 1);
  }
  50% {
    transform: translate3d(5px, 0, 0) scale3d(1.07, 1.07, 1);
  }
}
@-webkit-keyframes inc01-drag-hint-reduced {
  0%, 100% {
    opacity: 0.82;
  }
  50% {
    opacity: 1;
  }
}
@keyframes inc01-drag-hint-reduced {
  0%, 100% {
    opacity: 0.82;
  }
  50% {
    opacity: 1;
  }
}
@-webkit-keyframes quick-stack-pulse {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  45% {
    -webkit-transform: scale3d(1.06, 1.06, 1);
    transform: scale3d(1.06, 1.06, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes quick-stack-pulse {
  0% {
    transform: scale3d(1, 1, 1);
  }
  45% {
    transform: scale3d(1.06, 1.06, 1);
  }
  100% {
    transform: scale3d(1, 1, 1);
  }
}
@media (prefers-reduced-motion: reduce) {
  #inc01 .drag_touch:not(.is-dismissed) .drag_touch__ring {
    -webkit-animation: inc01-drag-hint-reduced 2.4s ease-in-out infinite;
    animation: inc01-drag-hint-reduced 2.4s ease-in-out infinite;
  }
  #inc01 .drag_touch:not(.is-dismissed) .drag_touch__img {
    -webkit-animation: none;
    animation: none;
  }
  #section1 .scroll_down::after {
    -webkit-animation: none;
    animation: none;
  }
  #section2 .scroll_down.journey__scroll-down::after {
    -webkit-animation: none;
    animation: none;
  }
  #section2 .journey-guide i[class*=ri-arrow][class*=long],
  #section2 .journey-guide .ri-arrow-up-long-line,
  #section2 .journey-guide__arrow-to-rail,
  #section2 .journey-guide__motion-ring--outer,
  #section2 .journey-guide__motion-ring--inner,
  #section2 .journey-guide__motion-dot,
  #section2 .journey-guide__motion-arrow-icon--left,
  #section2 .journey-guide__motion-arrow-icon--right,
  #section2 .journey-guide__motion-wheel {
    -webkit-animation: none;
    animation: none;
  }
  .ani_tit__track {
    -webkit-animation: none;
    animation: none;
  }
  #quick .quick__link:hover .quick__stack {
    -webkit-animation: none;
    animation: none;
  }
  #section2 .video_hover_cursor.is-visible .video_hover_cursor__ring::after {
    -webkit-animation: none;
    animation: none;
  }
}
@-webkit-keyframes scroll-down-arrow {
  0%, 100% {
    -webkit-transform: translate3d(0, -3px, 0);
    transform: translate3d(0, -3px, 0);
  }
  50% {
    -webkit-transform: translate3d(0, 3px, 0);
    transform: translate3d(0, 3px, 0);
  }
}
@keyframes scroll-down-arrow {
  0%, 100% {
    transform: translate3d(0, -3px, 0);
  }
  50% {
    transform: translate3d(0, 3px, 0);
  }
}
.ani_tit {
  overflow: hidden;
  width: 100%;
  background: #fff;
  padding: 6rem 0;
  perspective: 2000px;
}
.ani_tit__track {
  display: flex;
  width: max-content;
  gap: 10rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  -webkit-animation: ani-tit-marquee 40s linear infinite;
  animation: ani-tit-marquee 40s linear infinite;
  opacity: 0;
  filter: blur(20px) brightness(0.5);
  transform: translateY(100px) translateZ(-500px) rotateX(-90deg);
  transition: opacity 1s ease, filter 1s ease, transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
}
.ani_tit__track.is-visible {
  opacity: 1;
  filter: blur(0) brightness(1);
  transform: translateY(0) translateZ(0) rotateX(0deg);
}
.ani_tit__segment img {
  height: 14rem;
  width: auto;
  backface-visibility: hidden;
  /* 이미지 하단에 반사 효과를 주면 훨씬 고급스러움 (선택) */
  -webkit-box-reflect: below -20px linear-gradient(transparent, rgba(0, 0, 0, 0.05));
}

@-webkit-keyframes ani-tit-marquee {
  to {
    -webkit-transform: translate3d(-50%, 0, 0) rotateX(0deg);
    transform: translate3d(-50%, 0, 0) rotateX(0deg);
  }
}
@keyframes ani-tit-marquee {
  to {
    transform: translate3d(-50%, 0, 0) rotateX(0deg);
  }
}
#section5 {
  padding: 8rem 0 0;
  background: #fff;
}
#section5 > .ani_tit {
  position: relative;
  z-index: 2;
}
#section5 .news_head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}
#section5 .news_filter {
  display: flex;
  align-items: center;
  gap: 3rem;
  overflow: hidden;
}
#section5 .news_filter button {
  color: #111111;
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1.5;
  color: #c0c0c0;
  transition: opacity 0.2s ease, color 0.2s ease;
  position: relative;
}
#section5 .news_filter button:before {
  content: "";
  width: 0;
  background: #111;
  height: 0.3rem;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: width 0.3s ease;
}
#section5 .news_filter button.is-active {
  opacity: 1;
  color: #111111;
}
#section5 .news_filter button.is-active:before {
  width: 100%;
}
#section5 .news_list_wrap {
  padding-top: 2rem;
  opacity: 0;
  transform: translateY(1.6rem);
  transition: opacity 0.45s ease, transform 0.45s ease;
  perspective: 1000px;
}
#section5 .news_list_wrap li {
  opacity: 0;
  transform: rotateX(-30deg) translateY(50px) translateZ(-100px);
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: transform, opacity;
}
#section5 .news_list_wrap li.is-visible {
  opacity: 1;
  transform: rotateX(0) translateY(0) translateZ(0);
}
#section5 .news_list_wrap li.is-visible:nth-child(1) {
  transition-delay: 0.8s;
}
#section5 .news_list_wrap li.is-visible:nth-child(2) {
  transition-delay: 0.85s;
}
#section5 .news_list_wrap li.is-visible:nth-child(3) {
  transition-delay: 0.9s;
}
#section5 .news_list_wrap li.is-visible:nth-child(4) {
  transition-delay: 0.95s;
}
#section5 .news_list_wrap li.is-visible:nth-child(n+5) {
  transition-delay: 0s !important;
}
#section5 .news_list_wrap li.is-visible:nth-child(n+5):nth-child(1) {
  transition-delay: calc(0s + 1 * 0.1s);
}
#section5 .news_list_wrap li.is-visible:nth-child(n+5):nth-child(2) {
  transition-delay: calc(0s + 2 * 0.1s);
}
#section5 .news_list_wrap li.is-visible:nth-child(n+5):nth-child(3) {
  transition-delay: calc(0s + 3 * 0.1s);
}
#section5 .news_list_wrap li.is-visible:nth-child(n+5):nth-child(4) {
  transition-delay: calc(0s + 4 * 0.1s);
}
#section5 .news_list_wrap li.is-visible {
  transition: all 0.9s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#section5 .news_item {
  min-height: 15rem;
  opacity: 1;
  transform: none;
  position: relative;
}
#section5 .news_item:before {
  width: 100vw;
  height: 1px;
  background: #E0E0E0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  z-index: -2;
}
#section5 .news_item:last-child::after, #section5 .news_item:only-child::after {
  width: 100vw;
  height: 1px;
  background: #E0E0E0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  z-index: -2;
}
#section5 .news_list > .news_item:nth-last-child(1 of .news_item:not(.is-hidden):not(.news_item--paged-out))::after {
  width: 100vw;
  height: 1px;
  background: #E0E0E0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  z-index: -2;
}
#section5 .news_item_inner {
  min-height: 15rem;
  padding: 2.2rem 0;
  display: flex;
  align-items: center;
  gap: 8rem;
  text-decoration: none;
  color: inherit;
  position: relative;
}
#section5 .news_item_inner:before {
  width: 100vw;
  height: 100%;
  background: #E3552D;
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  clip-path: polygon(0 50%, 100% 50%, 100% 50%, 0 50%);
  transform-origin: center;
  transition: all cubic-bezier(0.1, 0.5, 0.5, 1) 0.7s;
}
#section5 .news_item_inner:hover:before, #section5 .news_item_inner:focus-within:before {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
#section5 .news_item_inner:hover .news_link .news_tit, #section5 .news_item_inner:focus-within .news_link .news_tit {
  color: #fff;
}
#section5 .news_item_inner:hover .news_link .news_source, #section5 .news_item_inner:focus-within .news_link .news_source {
  color: #fff;
}
#section5 .news_item_inner:hover .news_date, #section5 .news_item_inner:hover .news_cate, #section5 .news_item_inner:focus-within .news_date, #section5 .news_item_inner:focus-within .news_cate {
  color: #fff;
}
#section5 .news_item.is-hidden {
  display: none;
}
#section5 .news_item.news_item--paged-out {
  display: none;
}
#section5 .news_cate {
  width: 2.3rem;
  color: #111111;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  writing-mode: vertical-rl;
  text-orientation: upright;
  letter-spacing: -0.02rem;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
}
#section5 .news_link {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  position: relative;
  z-index: 2;
}
#section5 .news_tit {
  color: #222222;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.024rem;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 0;
  transition: color 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}
#section5 .news_tit .news_tit__txt {
  flex: 1 1 0;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#section5 .news_tit:before {
  content: "\ea6c";
  font-family: "remixicon";
  font-size: 4rem;
  color: #fff;
  font-weight: 400;
  flex-shrink: 0;
  display: block;
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  margin-right: 0;
  transform: translate3d(-0.45rem, 0, 0) scale(0.93);
  transform-origin: left center;
  will-change: max-width, opacity, transform;
  backface-visibility: hidden;
  transition: max-width 0.7s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.644s cubic-bezier(0.16, 1, 0.3, 1) 0.042s, transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), margin-right 0.595s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}
#section5 .news_item_inner:hover .news_link .news_tit:before,
#section5 .news_item_inner:focus-within .news_link .news_tit:before {
  max-width: 5rem;
  opacity: 1;
  margin-right: 1rem;
  transform: translate3d(0, 0, 0) scale(1);
  transition-delay: 0s, 0s, 0s, 0s;
}
#section5 .news_source {
  color: #757575;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
  position: relative;
}
#section5 .news_date {
  width: 12rem;
  flex-shrink: 0;
  text-align: center;
  color: #222222;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  position: relative;
  z-index: 2;
}
#section5 .news_empty {
  padding: 4rem 0;
  text-align: center;
  color: #757575;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
}
#section5 {
  /** 호버 썸: GSAP 위치/스케일. z는 행의 `:before`보다 크고, `.news_cate`/`.news_link`/`.news_date` 텍스트보다 작음 */
}
#section5 .thumb,
.section5-news-thumb {
  display: block;
  width: 24rem;
  height: 16rem;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1;
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform-origin: left center;
  will-change: transform, opacity;
  box-sizing: border-box;
}

#section5 .thumb img,
.section5-news-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  box-sizing: border-box;
  box-shadow: 0 0.4rem 1.2rem rgba(0, 0, 0, 0.18);
  border-radius: 0.2rem;
  user-select: none;
  -webkit-user-drag: none;
}

@media (prefers-reduced-motion: reduce) {
  #section5 .thumb,
  .section5-news-thumb {
    will-change: auto;
  }
}
#section5 {
  /** 정책뉴스 페이징 — #inc01 .controls 와 동일 레이아웃·타이포.
      현재 필터 기준 노출 건수가 4건 이하일 때는 JS가 hidden 처리 — author `display:flex`가 [hidden]을 이기지 않게 함 */
}
#section5 .controls.news_paging_controls[hidden] {
  display: none !important;
}
#section5 .controls.news_paging_controls {
  align-items: center;
  display: flex;
  gap: 2.6rem;
  justify-content: center;
  position: relative;
  z-index: 2;
  margin-top: 2rem;
}
#section5 .controls.news_paging_controls > span.arr {
  transition: 0.2s;
  color: #222;
  font-size: 1.8rem;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  cursor: pointer;
}
#section5 .controls.news_paging_controls > span.arr i {
  font-size: 2rem;
  font-weight: 500;
}
#section5 .controls.news_paging_controls > span.arr.is-disabled {
  cursor: default;
  opacity: 0.35;
  pointer-events: none;
}
#section5 .controls.news_paging_controls .inc01_paging {
  color: #222;
  font-size: 1.8rem;
  font-weight: 400;
  min-width: 4.4em;
  text-align: center;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}
#section5 .controls.news_paging_controls .inc01_paging__current {
  color: #E3552D;
  font-weight: 700;
}
#section5 .controls.news_paging_controls .inc01_paging__sep, #section5 .controls.news_paging_controls .inc01_paging__total {
  color: #222;
}
#section5.is-visible .news_list_wrap {
  opacity: 1;
  transform: translateY(0);
}
#section5:not(.is-visible) .section5-news-thumb {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

#section6 {
  height: 100svh;
  position: relative;
  overflow: hidden;
  z-index: 5;
}
#section6::before {
  content: "";
  background-image: url("../img/property1.jpg");
  -webkit-clip-path: circle(0%);
  clip-path: circle(0%);
  opacity: 1;
  transition: all 1.5s ease-out;
  width: 100%;
  height: 100%;
  z-index: -1;
  position: absolute;
}
#section6 .txt {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-align: center;
  flex-direction: column;
  gap: 2.4rem;
  overflow: hidden;
  isolation: isolate;
  transition: opacity 0.5s ease-out, visibility 0.5s ease-out, transform 0.5s ease-out;
  padding: 0 2rem;
}
#section6 .txt .txt__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0;
  pointer-events: none;
  transition: opacity 1.1s ease-in-out;
  will-change: opacity;
}
#section6 .txt .txt__bg--2 {
  background-image: url("../img/property2.jpg");
}
#section6 .txt .txt__bg--3 {
  background-image: url("../img/property3.jpg");
}
#section6 .txt .txt__bg--4 {
  background-image: url("../img/property4.jpg");
}
#section6 .txt:has(.ver1.active):not(:has(.ver2.active)) .txt__bg--2 {
  opacity: 1;
}
#section6 .txt:has(.ver2.active):not(:has(.ver3.active)) .txt__bg--3 {
  opacity: 1;
}
#section6 .txt:has(.ver3.active) .txt__bg--4 {
  opacity: 1;
}
#section6 .txt b {
  position: relative;
  z-index: 1;
  display: block;
  font-size: 4.4rem;
  font-weight: 700;
  line-height: 1.4;
  opacity: 0.4;
  color: rgba(255, 255, 255, 0.42);
  transition: color 1s ease-out, opacity 1s ease-out;
}
#section6 .txt b.active {
  color: rgb(255, 255, 255);
  opacity: 1;
}
#section6 .txt b br {
  display: none;
}
#section6 .signature {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  text-align: center;
  bottom: 8rem;
  z-index: 2;
  color: #fff;
  opacity: 0;
  transition: opacity 1s ease-out;
}
#section6 .signature.is-visible {
  opacity: 1;
}
#section6 .signature p {
  display: flex;
  align-items: center;
  font-size: 2rem;
  font-weight: 700;
  justify-content: center;
}
#section6 .signature span {
  display: block;
  font-weight: 300;
  font-size: 1.8rem;
}
#section6.is-inview:before {
  -webkit-clip-path: circle(100%);
  clip-path: circle(100%);
  opacity: 1;
}

.banner {
  width: 100vw;
}
.banner a {
  display: block;
}
.banner a img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.banner .mo {
  display: none;
}

#quick {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
  display: flex;
  flex-direction: column;
  align-items: center;
  /** 패널은 absolute — 접힘 시에도 flex 공간을 차지하지 않아 하단 top 버튼 클릭 방해 없음 */
  width: fit-content;
}
#quick .quick__panel {
  position: absolute;
  right: 0;
  bottom: calc(100% + 1.2rem);
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
  transition: transform 0.48s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.38s ease, visibility 0.38s ease;
  will-change: transform, opacity;
}
#quick.quick--dismissed {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
#quick .quick__toggle {
  flex-shrink: 0;
  border-radius: 10rem;
  transform: translateX(-50%);
  width: 7.2rem;
  text-align: center;
  height: 3.2rem;
  border: none;
  background: #fff;
  box-shadow: 0 0.2rem 1rem rgba(0, 0, 0, 0.14);
  color: #222;
  cursor: pointer;
  margin-right: 0.8rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  transition: box-shadow 0.25s ease, transform 0.2s ease, background-color 0.25s ease, color 0.25s ease;
}
#quick .quick__toggle .quick__toggle-label {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
}
#quick .quick__toggle i {
  font-size: 1.8rem;
  line-height: 1;
  transition: opacity 0.25s ease;
}
#quick .quick__toggle:hover {
  box-shadow: 0 0.3rem 1.2rem rgba(0, 0, 0, 0.18);
}
#quick .quick__toggle:focus-visible {
  outline: 0.2rem solid rgba(227, 85, 45, 0.85);
  outline-offset: 0.2rem;
}
#quick .quick__link {
  display: block;
}
#quick .quick__stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#quick {
  /* tooltip__plan: column, items-end, justify-end */
}
#quick .quick__tooltip-rot {
  transform: rotate(7deg);
  filter: drop-shadow(0 0.2rem 0.6rem rgba(0, 0, 0, 0.15));
  transition: all 0.5s ease-out;
}
#quick .quick__tooltip {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
}
#quick {
  /* con box: row, gap 8px, items-start, px 12 py 4, radius 4, mb -3px */
}
#quick .quick__tooltip-box {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0.8rem;
  max-width: 36rem;
  margin-bottom: -0.3rem;
  padding: 0.4rem 1.2rem;
  border-radius: 0.4rem;
  background: #fff;
  overflow: hidden;
  box-sizing: border-box;
}
#quick .quick__tooltip-text {
  margin: 0;
  flex-shrink: 0;
  font-family: "Pretendard", sans-serif;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: 0;
  color: #222;
  white-space: nowrap;
}
#quick .quick__tooltip-arrow {
  flex-shrink: 0;
  width: 3.8rem;
  height: 0.9rem;
  line-height: 0;
}
#quick .quick__tooltip-arrow img {
  display: block;
  width: 100%;
  height: 100%;
}
#quick .quick__disc {
  position: relative;
  overflow: visible;
}
#quick .quick__disc-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 0;
  width: 14rem;
  height: 14rem;
  margin: -7rem 0 0 -7rem;
  border-radius: 50%;
  pointer-events: none;
  /* #e3552d — 안쪽은 맑게, 바깥으로 갈수록 rgba 0.5→0.1대로 퍼지는 느낌 */
  background: radial-gradient(circle at 50% 50%, rgba(227, 85, 45, 0) 0, rgba(227, 85, 45, 0) calc(6rem - 0.5px), rgba(227, 85, 45, 0.48) 6rem, rgba(227, 85, 45, 0.32) 6.28rem, rgba(227, 85, 45, 0.18) 6.55rem, rgba(227, 85, 45, 0.1) 6.82rem, rgba(227, 85, 45, 0) 7.05rem);
  transform: scale(0.42);
  opacity: 0;
  transform-origin: 50% 50%;
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.38s ease;
  will-change: transform, opacity;
}
#quick .quick__disc-inner {
  width: 12rem;
  height: 12rem;
  border-radius: 62.5rem;
  overflow: hidden;
  background: #2c2c2c;
  transition: background-color 0.28s ease;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1rem 1rem 0;
  position: relative;
  z-index: 1;
}
#quick .quick__quote {
  color: #fff;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.024rem;
  text-align: center;
  white-space: nowrap;
}
#quick .quick__photo {
  position: absolute;
  left: 4.1rem;
  bottom: 0;
  width: 5rem;
}
@media screen and (hover: hover) and (pointer: fine) {
  #quick .quick__link:hover .quick__stack {
    -webkit-animation: quick-stack-pulse 0.65s cubic-bezier(0.45, 0, 0.55, 1) both;
    animation: quick-stack-pulse 0.65s cubic-bezier(0.45, 0, 0.55, 1) both;
  }
  #quick .quick__link:hover .quick__disc-ring {
    transform: scale(1);
    opacity: 1;
  }
  #quick .quick__link:hover .quick__disc-inner {
    background-color: #e3552d;
  }
  #quick .quick__link:hover .quick__tooltip-rot {
    transform: rotate(0deg);
  }
}
#quick .quick__link:focus-visible {
  outline: 0.2rem solid rgba(227, 85, 45, 0.85);
  outline-offset: 0.25rem;
}
@media screen and (prefers-reduced-motion: reduce) {
  #quick .quick__panel {
    transition: opacity 0.15s ease, visibility 0.15s ease;
  }
  #quick.quick--dismissed .quick__panel {
    transform: none;
  }
  #quick .quick__toggle i {
    transition: none;
  }
  #quick .quick__link {
    transition: none;
  }
  #quick .quick__disc-ring {
    transform: scale(1);
    transition: opacity 0.2s ease;
    will-change: auto;
  }
}
@media screen and (prefers-reduced-motion: reduce) and (hover: hover) and (pointer: fine) {
  #quick .quick__link:hover .quick__stack {
    -webkit-animation: none;
    animation: none;
  }
}

#wrap:has(.pin-spacer-section1-visual) #quick {
  opacity: 1;
  visibility: visible;
}

/** section2 가로 여정 + 가로 종료 후 약 2vh 추가 스크롤까지 퀵메뉴 숨김(역스크롤 동일) */
#wrap:has(.pin-spacer-section1-visual) #quick.quick--section2-horizontal {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/** PC: section2 가로 스크롤(핀) 구간 GNB 숨김 */
.gnb-header.gnb--section2-horizontal {
  bottom: -10rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  animation: none;
}

#footer {
  position: sticky;
  left: auto;
  bottom: 0;
  z-index: 1;
  background: #fff;
}
#footer .inner {
  width: 180rem;
  margin: 0 auto;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  padding: 7.5rem 0;
  z-index: 2;
}
#footer .left address {
  color: #616161;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 4rem;
}
#footer .right {
  padding-left: 8rem;
  border-left: 1px solid #DADADA;
  display: flex;
  gap: 5rem;
}
#footer .right .footer-top {
  border-radius: 0.5rem;
  background: #232323;
  display: flex;
  width: 6rem;
  height: 6rem;
  padding: 1rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  color: #fff;
}
#footer .right .footer-top i {
  font-size: 2.8rem;
  font-weight: 400;
}
#footer .right ul {
  padding-right: 9.8rem;
}
#footer .right ul li {
  display: flex;
  gap: 1.7rem;
  align-items: flex-start;
}
#footer .right ul li + li {
  margin-top: 2rem;
}
#footer .right ul li strong {
  display: inline-block;
  color: #fff;
  width: 8.8rem;
  line-height: 3.6rem;
  text-align: center;
  font-size: 1.7rem;
  font-weight: 500;
  background: #232323;
  border-radius: 0.3rem;
}
#footer .right ul li p {
  padding-top: 5px;
  font-size: 1.8rem;
}

@media screen and (max-width: 2200px) {
  #footer .right .footer-top {
    position: absolute;
    top: 1rem;
    right: 1rem;
  }
}
@media screen and (max-width: 1800px) {
  #section2 .journey__timeline-point::after {
    width: 2px !important;
  }
}
@media screen and (min-width: 1401px) and (max-width: 1800px) and (max-height: 935px) {
  #section3 {
    --section3-viewport-h: 85rem;
  }
  #section3 .section3_card__thumb {
    height: 22rem;
  }
  #section3 .section3_card__tit {
    height: 5rem;
    font-size: 2.1rem;
  }
  #section3 .section3_row .section3_card:last-child {
    margin-top: 5.5rem;
  }
}
@media screen and (min-width: 1401px) and (max-width: 1800px) and (max-height: 850px) {
  #section3 {
    --section3-viewport-h: 72rem;
  }
  #section3 .section3_card__thumb {
    height: 20rem;
  }
  #section3 .section3_card__tit {
    height: 5rem;
    font-size: 2.1rem;
  }
  #section3 .section3_row .section3_card:last-child {
    margin-top: 3.5rem;
  }
}
@media screen and (max-width: 1200px) {
  #section1 .visu_tit__media {
    max-width: min(94vw, 90rem);
  }
  #section2 .journey__circle {
    width: 50rem;
    height: 50rem;
  }
  #section2 .journey__orbit-line--outer {
    height: 90rem;
    width: 90rem;
    --journey-orbit-outer-r: calc(90rem / 2 - 1px);
  }
  #section2 .journey__orbit-line--middle {
    width: 70rem;
    height: 70rem;
    --journey-orbit-middle-r: calc(70rem / 2 - 2rem);
  }
  #section2 .journey__circle h2 {
    font-size: 6rem;
  }
  #section2 .journey__circle p {
    font-size: 4rem;
  }
  #section2 .journey__circle span {
    font-size: 2.4rem;
  }
  #section2 .journey__skip {
    width: 13rem;
    font-size: 2rem;
  }
  #section2 .journey__panel--month.first {
    margin-left: -10rem;
  }
  #section2 .journey-guide__stage.pc div.guide_txt_right {
    left: 68.5%;
  }
  #footer .right ul {
    padding-right: 1rem;
  }
  #footer .right {
    border-left: 0;
    padding-left: 2rem;
    margin-top: 2rem;
  }
  #section2 .journey-event figure {
    height: 14rem;
  }
  #section2 .journey-feature__thumb {
    height: 23rem;
  }
  #section2 .journey__panel--month {
    margin-left: 12rem;
  }
  #section2 .journey-month {
    gap: 6rem;
  }
  #section2 .journey-feature__title {
    font-size: 2.6rem;
  }
  #section2 .journey__panel h3 {
    font-size: 3.8rem;
  }
  #section2 .journey-event a {
    font-size: 1.7rem;
  }
  #section2 .journey-event time {
    font-size: 1.6rem;
  }
  #section2 .journey-feature {
    width: 35rem;
  }
}
@media screen and (max-width: 1024px) {
  #section2 .journey__circle {
    width: 46rem;
    height: 46rem;
  }
  #inc01 .inc01_head {
    max-width: 95%;
  }
  #inc01 .inc01_tabs__thumb {
    transition: transform 0.08s linear, width 0.08s linear, height 0.08s linear;
  }
  #inc01 .inc01_tabs__btn {
    width: 100%;
    flex: 1;
    padding: 0 0.6rem;
  }
  #inc01 .inc01_tabs {
    gap: 0.5rem;
  }
  #inc01 .inc01_tabs__dot {
    display: none;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title {
    font-size: 2.7rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide {
    width: 25rem;
    max-width: 25rem;
    height: 40rem;
  }
  #quick .quick__toggle {
    margin-right: 0;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide:has(.inc01_slide__expand) > .title {
    font-size: 2.7rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide .swiper.swiper2 a img {
    height: 12rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
    height: 7.1rem;
    line-height: 1.3;
    padding-bottom: 1.5rem;
    align-items: flex-start;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide .swiper2__prev i, #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide .swiper2__next i {
    font-size: 2.1rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__cap {
    margin-top: 1.5rem;
    font-size: 1.6rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__label {
    font-size: 1.8rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 a img {
    height: 10rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand),
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active {
    width: 45rem;
    max-width: 45rem;
  }
  .section_tit {
    font-size: 5rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    gap: 1rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__head,
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 {
    width: 19rem;
    max-width: 19rem;
  }
  #section2 .journey-guide__stage.pc div.guide_txt_right .column {
    display: none;
  }
  #footer .inner {
    padding: 4rem 0;
    flex-direction: column;
  }
  #footer .left address {
    margin-top: 2rem;
  }
  #footer .right {
    border-left: 0;
    padding-left: 0;
    justify-content: space-between;
    margin-top: 4rem;
    gap: 2rem;
  }
  #footer .right ul li p br {
    display: none;
  }
  #footer .right ul {
    padding-right: 0;
  }
  #quick {
    right: 1%;
    bottom: 1%;
  }
  #quick .quick__tooltip-box {
    padding: 0.4rem 0.7rem;
  }
  #quick .quick__disc-inner {
    width: 11rem;
    height: 11rem;
    padding: 0.8rem 0.8rem 0;
  }
  #quick .quick__tooltip-text {
    font-size: 1.3rem;
  }
  #quick .quick__arc {
    width: 8rem;
  }
  #quick .quick__photo {
    width: 5rem;
    left: 3.5rem;
  }
  #quick .quick__quote {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 1024px) {
  #section2 .journey__timeline {
    bottom: 0;
    left: 1.4rem;
    right: 1.4rem;
    padding-bottom: 4.6rem;
    width: calc(100% - 7rem);
  }
  #section2 .journey__timeline-bar {
    border-radius: 999px;
    background: #d8d8de;
    background-image: none;
    height: 1.4rem;
    overflow: hidden;
    width: calc(100% + 4rem);
  }
  #section2 .journey__timeline-bar::before {
    border-radius: inherit;
    background: #E3552D;
    background-image: none;
    clip-path: inset(0 calc(100% - var(--progress, 0%)) 0 0);
  }
  #section2 .journey__timeline-bar::after {
    display: none;
  }
  #section2 .journey__timeline-point {
    top: auto;
    bottom: 2rem;
    margin-left: -1.3rem;
  }
  #section2 .journey__timeline-point::after {
    display: none;
  }
  #section2 .journey__timeline-point b {
    font-size: 1.6rem;
    margin: 0;
    white-space: nowrap;
    letter-spacing: -1px;
  }
  #section2 .journey__timeline-point.first b {
    display: none;
  }
  #section2 .journey__timeline-point.first b.mob {
    display: block;
  }
  #section2 .journey__timeline-point.first {
    margin-left: 0;
  }
  #section2 .journey__timeline-point:last-child {
    right: -4.5rem;
  }
  #section2 .journey__timeline-point:last-child b {
    margin: 0;
  }
  #section2 .journey__president {
    bottom: 100%;
    top: auto;
    height: 60px;
    margin-bottom: 2.2rem;
    pointer-events: none;
    transition: left 0.22s ease-out, transform 0.22s ease-out;
    transform: translate(calc(-50% + 2rem), 3rem) !important;
    width: 50px;
  }
  #section2 .journey__president.journey__president--dragging {
    transition: none;
  }
  #section2 .journey__president-sprites {
    display: none !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden;
    position: absolute;
    visibility: hidden;
    pointer-events: none;
  }
  #section2 .journey__president-gif {
    display: none !important;
  }
  #section2 .journey__timeline-bar::before {
    transition: clip-path 0.22s ease-out;
  }
  #section2 .journey__president-mob {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 65px;
    padding: 0;
    border: none;
    box-sizing: border-box;
    cursor: grab;
    touch-action: none;
    pointer-events: auto;
    -webkit-tap-highlight-color: transparent;
  }
  #section2 .journey__president-mob img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: auto;
    max-width: inherit;
  }
  #section2 .journey-guide__close {
    border-radius: 0.6rem;
    background: #E3552D;
    width: 18rem;
    height: 4.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    right: auto;
    top: auto;
    bottom: 2rem;
    gap: 0;
    left: 50%;
    transform: translateX(-50%) !important;
  }
  #section2 .journey-guide__close i {
    display: none;
  }
  #section2 .journey-event figure {
    display: none;
  }
  #section2 .journey-feature__title {
    text-align: center;
    font-size: 2.8rem;
  }
  #section2 .journey-feature__body:has(.journey-feature__title2) {
    display: none;
  }
  #section2 .journey-date-row {
    justify-content: center;
  }
  #section2 .journey-month__head {
    align-items: center;
  }
  #section2 .journey-feature__thumb {
    margin-top: 0;
  }
  #section2:not(.journey--mobile-swiper) .journey-month {
    flex-direction: column;
    gap: 1.6rem;
    width: 100%;
  }
  #section2:not(.journey--mobile-swiper) .journey-feature {
    width: 85%;
  }
  #section2 .journey__line {
    display: none !important;
  }
  #section2 .journey__panel--month .gradient-circle {
    display: none;
  }
  #section2.journey--mobile-swiper {
    /** 주소창 영향 최소 — JS `--app-viewport-height`와 동기 */
    min-height: 100svh;
    min-height: 100dvh;
    min-height: var(--app-viewport-height, 100dvh);
    height: 100svh;
    height: 100dvh;
    height: var(--app-viewport-height, 100dvh);
    overflow: hidden;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }
  #section2.journey--mobile-swiper.journey--viewport-full .journey__pin {
    height: 100%;
    min-height: 0;
  }
  #section2.journey--mobile-swiper .journey__pin {
    width: 100%;
    height: auto;
    min-height: 0;
    overflow: visible;
    position: static;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
  }
  #section2.journey--mobile-swiper .journey__panel--intro {
    width: 100% !important;
    height: 54rem !important;
  }
  #section2.journey--mobile-swiper .journey__orbit-line--outer {
    display: none;
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__orbit-line--middle {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    transition-delay: 0.1s;
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__orbit-line--outer {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    transition-delay: 0.25s;
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle {
    opacity: 1;
    transform: scale(1);
    transition-delay: 0.3s;
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle p, #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle h2, #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle span, #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle button {
    opacity: 1;
    transform: translateY(0);
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle p {
    transition-delay: 0.5s;
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle h2 {
    transition-delay: 0.65s;
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle span {
    transition-delay: 0.8s;
  }
  #section2.journey--mobile-swiper .journey__panel--intro.journey-intro-circles--spread .journey__circle button {
    transition-delay: 0.95s;
  }
  #section2.journey--mobile-swiper .journey__line {
    display: none !important;
  }
  #section2.journey--mobile-swiper .journey__track.journey__swiper {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: auto;
    will-change: auto;
  }
  #section2.journey--mobile-swiper .journey__panel {
    height: auto;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
    padding: 0;
    overflow: visible;
  }
  #section2.journey--mobile-swiper .journey__panel.first {
    margin-left: 0 !important;
  }
  #section2.journey--mobile-swiper .journey__panel--month,
  #section2.journey--mobile-swiper .journey__panel--month.swiper-slide {
    align-items: flex-start;
    justify-content: center;
    padding-top: 5rem;
    padding-bottom: 2rem;
  }
  #section2.journey--mobile-swiper .journey__swiper-pagination {
    opacity: 0;
    visibility: hidden;
    display: none;
  }
  #section2.journey--mobile-swiper .journey-month {
    flex-direction: column;
    gap: 0;
    width: 100%;
    max-width: 50rem;
    align-items: center;
    flex-shrink: 0;
  }
  #section2.journey--mobile-swiper .journey-month__head {
    width: 100%;
    align-items: center;
    padding: 0 0.8rem 2rem;
    flex: 0 0 auto;
    flex-shrink: 0;
    margin: 0;
    position: relative;
    z-index: 2;
    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }
  #section2.journey--mobile-swiper .journey-month__steps-viewport {
    width: 100%;
    max-width: 50rem;
    overflow-x: hidden;
    overflow-y: visible;
    position: relative;
    flex: 0 0 auto;
    flex-shrink: 0;
  }
  #section2.journey--mobile-swiper .journey-month__steps-track {
    display: flex;
    width: 200%;
    height: auto;
    will-change: transform;
    align-items: flex-start;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transition: transform 0.48s cubic-bezier(0.33, 1, 0.68, 1);
  }
  #section2.journey--mobile-swiper .journey-month__step {
    flex: 0 0 50%;
    width: 50%;
    height: auto;
    box-sizing: border-box;
    align-self: flex-start;
  }
  #section2.journey--mobile-swiper .journey-month__step--feature.journey-feature,
  #section2.journey--mobile-swiper .journey-month__step--events.journey-events {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
  }
  #section2.journey--mobile-swiper .journey-feature--image-first {
    flex-direction: column-reverse !important;
    justify-content: flex-end !important;
  }
  #section2.journey--mobile-swiper .journey-month__step--events.journey-events {
    gap: 3rem;
    justify-content: flex-start;
  }
  #section2.journey--mobile-swiper .journey-month--outer-advance-next .journey-month__step--feature {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
  #section2.journey--mobile-swiper .journey-month--outer-advance-next .journey-month__step--events {
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
  }
  #section2.journey--mobile-swiper .journey-month--outer-advance-prev.journey-month--step-feature .journey-month__step--feature {
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
  }
  #section2.journey--mobile-swiper .journey-month--outer-advance-prev.journey-month--step-feature .journey-month__step--events {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
  #section2.journey--mobile-swiper .journey-month__steps-pagination {
    display: flex;
    justify-content: center;
    gap: 0.7rem;
    margin-top: 1.4rem;
    width: 100%;
    flex: 0 0 auto;
    flex-shrink: 0;
    display: none;
  }
  #section2.journey--mobile-swiper .journey-month__steps-bullet {
    width: 0.6rem;
    height: 0.6rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(12, 46, 77, 0.22);
    cursor: pointer;
  }
  #section2.journey--mobile-swiper .journey-month__steps-bullet.is-active {
    background: #E3552D;
  }
  #section2.journey--mobile-swiper .journey-month__step--feature.journey-feature {
    width: 100%;
    max-width: none;
    margin: 0 auto;
    justify-content: flex-start;
  }
  #section2.journey--mobile-swiper .journey-month__step--feature.journey-feature .journey-feature {
    width: 100%;
  }
  #section2.journey--mobile-swiper .journey-month__step--events.journey-events {
    width: 100%;
    max-width: 100%;
    margin: 0;
  }
  #section2.journey--mobile-swiper .journey__panel--month:last-child {
    margin-right: 0 !important;
  }
  #section2 .journey__circle h2 {
    font-size: 5rem;
  }
  #section2 .journey__circle p {
    font-size: 3rem;
  }
  #section2 .journey__circle {
    width: 40rem;
    height: 40rem;
  }
  #section2 .journey__orbit-line--middle {
    width: 54rem;
    height: 54rem;
    --journey-orbit-middle-r: calc(54rem / 2 - 2rem);
    border-width: 3rem;
  }
  #section2 .journey-event {
    gap: 1rem;
  }
  #section2 .journey-event .journey-date-row {
    justify-content: space-between;
  }
  #section2 .journey-event a {
    font-size: 2.1rem;
  }
  #section2.journey--mobile-swiper .journey__panel--month.first {
    margin-left: 0 !important;
  }
  #section2.journey--mobile-swiper.journey--outer-sliding .journey__pin {
    overflow: hidden;
  }
  #section2.journey--mobile-swiper.journey--outer-sliding .journey__track.journey__swiper {
    overflow: hidden !important;
  }
  #section2.journey--mobile-swiper .journey__track.journey__swiper {
    overflow: hidden;
  }
  #section2.journey--mobile-swiper .scroll_down.journey__scroll-down {
    position: fixed;
    left: 50%;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 9.6rem);
    transform: translateX(-50%);
    z-index: 25;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.32s ease, visibility 0.32s ease;
    border-radius: 0.6rem;
    background: rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
    padding: 0.6rem 1.2rem;
    color: rgba(0, 0, 0, 0.8);
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
  }
  #section2.journey--mobile-swiper .scroll_down.journey__scroll-down::after {
    content: "\ea4c";
    display: inline-block;
    line-height: 1;
    -webkit-animation: scroll-down-arrow 1.2s ease-in-out infinite;
    animation: scroll-down-arrow 1.2s ease-in-out infinite;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform;
    color: #222222;
    font-family: "remixicon";
    margin-left: 1rem;
  }
  #section2.journey--mobile-swiper.journey--scroll-hint .scroll_down.journey__scroll-down {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    display: block;
  }
  #section2 .journey__panel--month.first {
    margin-left: 5rem;
  }
  #section2 .journey__panel--intro {
    overflow: visible;
  }
  #section2 .journey-guide__stage.pc {
    display: none !important;
  }
  #section2 .journey-guide__stage.mobile {
    display: none;
  }
  #section2 .journey-guide__stage.mob {
    display: block !important;
  }
  #section2 .journey-guide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-height: 100%;
  }
  #section2.journey-guide-active .journey-guide {
    overflow: hidden;
    touch-action: none;
  }
  #section2 .journey-guide .journey-guide-mslider,
  #section2 .journey-guide .journey-guide-mslider__track,
  #section2 .journey-guide .journey-guide-mslider__viewport {
    height: 100%;
  }
  #journey_popup .journey-popup-item__row {
    display: flex;
    flex-direction: column;
  }
  #journey_popup .journey-popup-item__date {
    padding-left: 2.75rem;
    position: relative;
    margin-bottom: 0.4rem;
  }
  #journey_popup .journey-popup-item__date:before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #E3552D;
    position: absolute;
    left: -4px;
    top: 1rem;
    z-index: 1;
  }
  #journey_popup .journey-popup-item__title {
    line-height: 1.3;
  }
  #journey_popup .journey-popup-item__title:before {
    display: none;
  }
  #journey_popup .journey-popup-item__body::before,
  #journey_popup .journey-popup-item:first-child .journey-popup-item__body::before {
    height: calc(100% + 5.2rem);
  }
  #journey_popup .journey-popup-item:first-child .journey-popup-item__body::before {
    top: -2.2rem;
  }
  #journey_popup .journey-popup-item__like-row {
    margin-top: 0.5rem;
  }
  #section2.journey--mobile-swiper .journey-month__head {
    align-items: center;
    flex-direction: row;
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__label {
    margin-bottom: 1rem;
    display: block;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__cap {
    height: 4rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__head {
    position: absolute;
    top: 0;
    right: -3rem;
  }
  #section5 .news_filter {
    gap: 2rem;
  }
  #quick.quick--section1-visu-visible {
    opacity: 1;
    visibility: visible;
  }
  #quick .quick__toggle i {
    font-size: 2rem;
  }
  .ani_tit__track {
    gap: 4rem;
  }
  #section5 .news_list_wrap {
    opacity: 1;
    transform: none;
    transition: none;
  }
  #section5 .news_list_wrap li {
    opacity: 1;
    transform: none;
    transition: none;
    will-change: auto;
  }
  #section5 .news_list_wrap li.is-visible {
    opacity: 1;
    transform: none;
    transition: none;
  }
  #section5 .news_list_wrap li.is-visible:nth-child(1), #section5 .news_list_wrap li.is-visible:nth-child(2), #section5 .news_list_wrap li.is-visible:nth-child(3), #section5 .news_list_wrap li.is-visible:nth-child(4), #section5 .news_list_wrap li.is-visible:nth-child(5), #section5 .news_list_wrap li.is-visible:nth-child(n+6) {
    transition-delay: 0s !important;
  }
  #section5 .news_list_wrap {
    opacity: 0;
  }
  #section5.is-visible .news_list_wrap {
    opacity: 1;
    transform: none;
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-delay: 0.8s;
  }
  html.scroll-root-container {
    height: 100svh;
    overflow: hidden;
  }
  html.scroll-root-container body {
    height: 100%;
    overflow: hidden;
  }
  .main_container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
  }
  #section1.section1--mobile-input-lock {
    pointer-events: none;
    user-select: none;
    touch-action: none;
  }
  #section1.section1--mobile-input-lock,
  #section1.section1--mobile-input-lock * {
    pointer-events: none !important;
  }
  #section1.section1--mobile-intro,
  #section1.section1--mobile-done {
    display: flex;
    flex-direction: column;
  }
  #section1.section1--mobile-intro .visu_tit,
  #section1.section1--mobile-done .visu_tit {
    height: auto;
    flex: 1 1 auto;
    min-height: 0;
    padding-top: clamp(3.2rem, 10vh, 6rem);
    padding-bottom: 0.8rem;
  }
  #section1.section1--mobile-intro .scroll_down,
  #section1.section1--mobile-done .scroll_down {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
    align-self: center;
    margin-bottom: 1rem;
    z-index: 3;
    flex-shrink: 0;
    pointer-events: auto;
    visibility: visible;
  }
  #section1.section1--mobile-intro .visu_img,
  #section1.section1--mobile-done .visu_img {
    z-index: 1;
  }
  .section_tit {
    font-size: 4rem;
  }
  #inc01 .inc01_tabs__btn {
    height: 4.4rem;
  }
  #inc01 .inc01_tabs__label {
    font-size: 2.1rem;
  }
  #inc01 .inc01_tabs__count {
    font-size: 1.5rem;
  }
  #inc01 .swiper-slide > .title {
    font-size: 1.8rem;
  }
  #inc01 .swiper2-col {
    flex: 1 1 auto;
    max-width: 100%;
    width: 100%;
  }
  .banner .pc {
    display: none;
  }
  .banner .mo {
    display: block;
  }
  #section1 .visu_tit__media {
    max-width: min(80vw, 60rem);
  }
  .ani_tit__track .ani_tit__segment {
    height: 8rem;
  }
  .ani_tit__track .ani_tit__segment img {
    height: 100%;
  }
  #section5 .news_item {
    min-height: inherit;
  }
  #section5 .news_item_inner {
    gap: 3rem;
    min-height: 11rem;
    padding: 0;
  }
  #section5 .news_tit:before {
    font-size: 2.2rem;
  }
  #section5 .news_item_inner:hover .news_link .news_tit:before, #section5 .news_item_inner:focus-within .news_link .news_tit:before {
    margin-right: 0.4rem;
  }
  #section5 .news_tit {
    font-size: 2.1rem;
  }
  #section6 .txt b {
    font-size: 3.7rem;
  }
  #section6 .txt {
    padding: 0 3rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title {
    font-size: 2.3rem;
  }
  #section4 .section_tit b {
    gap: 0;
  }
  #section4 .section_tit {
    gap: 0;
  }
  #section5 .thumb, .section5-news-thumb {
    display: none !important;
  }
  .page-intro__reel-inner span {
    height: 16rem;
    line-height: 16rem;
  }
  .page-intro__reel,
  .page-intro__reels {
    height: 16rem;
  }
  .page-intro__reels {
    font-size: 16rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 680px) {
  .page-intro__reel-inner span {
    height: 11rem;
    line-height: 11rem;
  }
  .page-intro__reel,
  .page-intro__reels {
    height: 11rem;
  }
  .page-intro__reels {
    font-size: 11rem;
  }
  #section5 .news_head {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
  #section5 .news_head .section_tit {
    display: flex;
    justify-content: center;
    gap: 0;
    width: 100%;
  }
  #section5 .news_filter {
    padding: 2rem 0;
    justify-content: center;
    width: 100%;
  }
  #section5 .news_filter li {
    flex: auto;
    text-align: center;
  }
  #section5 .news_list_wrap {
    padding-top: 0;
  }
}
@media screen and (max-width: 580px) {
  #section2 .journey-event a {
    font-size: 1.9rem;
  }
  #section2.journey--mobile-swiper .journey-month--step-events .journey-month__step--events.journey-events {
    gap: 2rem;
    min-height: auto;
    height: auto;
  }
  #section2.journey--mobile-swiper .journey-month__steps-viewport {
    max-width: 90%;
  }
  #section2.journey--mobile-swiper .journey-feature {
    max-width: 100%;
  }
  #section1 .visu_tit__media {
    max-width: 100%;
    width: 100%;
  }
  #section5 .news_date {
    display: none;
  }
  #section6 {
    gap: 7rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  #section6 .txt {
    padding: 0 1rem;
    position: static;
    height: auto;
    gap: 3rem;
  }
  #section6 .txt b {
    font-size: 2.6rem;
  }
  #section6 .txt b br {
    display: block;
  }
  #section6 .signature {
    position: static;
    left: auto;
    transform: none;
  }
  #footer .right ul li p br {
    display: block;
  }
  #footer .right ul li + li {
    margin-top: 1rem;
  }
  #footer .right ul li:first-child p {
    padding-top: 0;
  }
  #footer .left address {
    font-size: 1.6rem;
  }
  #footer .right ul li p {
    font-size: 1.6rem;
  }
  #footer .right ul li strong {
    font-size: 1.6rem;
  }
  #footer .right .footer-top i {
    font-size: 2.2rem;
  }
  #footer .right .footer-top {
    width: 4.6rem;
    height: 4.6rem;
  }
  #quick .quick__tooltip-text {
    font-size: 0.9rem;
  }
  #quick .quick__disc-inner {
    width: 9rem;
    height: 9rem;
    padding: 0.5rem 0.6rem 0;
  }
  #quick .quick__photo {
    width: 4rem;
    left: 2.8rem;
  }
  #quick .quick__toggle {
    width: 6.2rem;
    padding: 0;
    height: 2.7rem;
    font-size: 1.2rem;
    gap: 0;
    transform: none;
    margin-right: 1.8rem;
  }
  #inc01 .inc01_tabs__btn {
    padding: 0;
    gap: 0.3rem;
  }
  #inc01 .inc01_tabs__label {
    font-size: 1.7rem;
  }
  #inc01 .inc01_tabs__count {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 480px) {
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__head {
    right: 0;
    width: auto;
  }
  #section2 .journey-guide__stage.pc.mob .guide_txt_right {
    top: 64%;
  }
  #section6 .signature p {
    flex-direction: column;
  }
  #section5 .news_filter {
    gap: 1rem;
  }
  #journey_popup .journey-popup-item__thumb {
    width: 100%;
    height: auto;
  }
  #section3 .section3_desc {
    font-size: 1.8rem;
  }
  #section3 .section3_tabs__btn {
    font-size: 2rem;
  }
  #section2 .journey__panel h3 {
    font-size: 3.8rem;
  }
  #section2 .journey-feature__title {
    font-size: 2.5rem;
  }
  #section2.journey--mobile-swiper .journey-feature {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }
  #section2:not(.journey--mobile-swiper) .journey-feature {
    width: 33rem;
    text-align: center;
  }
  #section2 .journey-feature__thumb {
    height: 22rem;
  }
  #section2 .journey__timeline-point {
    margin-left: -0.9rem;
  }
  #section2 .journey-date-row {
    justify-content: center;
  }
  #section1 .visu_tit__media {
    max-width: min(80vw, 50rem);
  }
  #section2 .journey__circle {
    width: 30rem;
    height: 30rem;
  }
  #section2 .journey__circle h2 {
    font-size: 3.5rem;
  }
  #section2.active .journey__circle span {
    display: none;
  }
  #section2.active .journey__circle p {
    font-size: 2.4rem;
  }
  #section2 .journey__orbit-line--outer {
    display: none;
  }
  #section2 .journey__orbit-line--middle {
    width: 50rem;
    height: 50rem;
    --journey-orbit-middle-r: calc(50rem / 2 - 2rem);
  }
  #section2 .journey-guide .journey-guide-mslider__slide-body.pad {
    padding-top: 28rem;
  }
  #journey_popup .journey_popup_head {
    padding: 1rem 2rem;
  }
  #journey_popup .journey_popup_nav {
    padding: 2rem;
  }
  #journey_popup .journey_popup_content_inner {
    width: calc(100% - 4rem);
    padding: 1.5rem;
  }
  #section2 .journey__timeline-point b {
    font-size: 1.4rem;
    letter-spacing: -1.4px;
  }
  #journey_popup .journey-popup-item:first-child .journey-popup-item__body::before {
    top: -1.6rem;
  }
  .section_tit {
    font-size: 3.5rem;
  }
  #inc01 .inc01_tabs__label {
    font-size: 1.8rem;
  }
  #inc01 .inc01_tabs__count {
    font-size: 1.4rem;
  }
  #inc01 .inc01_actions__btn {
    font-size: 1.6rem;
    height: 5rem;
    padding: 0 1.6rem;
  }
  #inc01 .controls {
    margin-top: 0;
    z-index: 6;
  }
  #inc01 .inc01_head {
    margin-bottom: 0;
    gap: 1.2rem;
  }
  /* 확장 슬라이드 — 480px 이하: 2열 → 세로 스택, 썸네일+제목 가로 카드 */
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title,
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-detail-closed:has(.inc01_slide__expand) > .title {
    font-size: 2.8rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title br {
    display: none;
  }
  /* expand 닫기 — title 위→아래 점프 방지 */
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) {
    height: 40rem;
    min-height: 40rem;
    padding: 1rem 0;
    position: relative;
    transition: none;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0;
    overflow: hidden;
    animation: inc01ExpandFadeOut 0.28s ease both;
    pointer-events: none;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto;
    min-height: 0 !important;
    font-size: 3rem;
    line-height: 1.5;
    padding: 0 3rem !important;
    padding-bottom: 0 !important;
    text-align: center;
    word-break: keep-all;
    transition: inherit;
    animation: inherit;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) > .title br {
    display: inline;
  }
  #inc01 .inc01_slide.is-expand-ready > .swiper-wrapper > .swiper-slide.swiper-slide-active.is-expand-collapse:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
    min-height: 0 !important;
    align-items: center !important;
    padding-bottom: 0 !important;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__label {
    font-size: 1.8rem;
    white-space: nowrap;
    margin-bottom: 0.6rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) {
    padding: 0 2rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
    font-size: 1.9rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    height: 20rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2-col {
    max-width: 23rem !important;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand.is-mobile-col-switchable {
    position: relative;
    display: grid !important;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    align-items: stretch;
    justify-items: center;
    justify-content: center;
    align-content: center;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand.is-mobile-col-switchable > .swiper2-col {
    grid-area: 1/1;
    width: 100%;
    max-width: 100%;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(0.6rem);
    transition: opacity 0.24s ease, transform 0.24s ease, visibility 0.24s ease;
    z-index: 1;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand.is-mobile-col-switchable > .swiper2-col .swiper2__nav {
    width: 100%;
    display: flex;
    justify-content: flex-end;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand.is-mobile-col-switchable > .swiper2-col.is-mobile-col-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    z-index: 2;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    height: 20rem;
  }
  /* active li가 뷰포트보다 넓으면 centeredSlides 중앙이 어긋남 */
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand), #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active {
    width: 34rem;
    max-width: 34rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 {
    width: 100%;
    max-width: 100%;
  }
  #inc01 .inc01_slide.is-expand-ready > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) > .title {
    line-height: 1.4;
    height: 6.8rem;
    justify-content: center;
    align-items: center;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title {
    padding: 1.5rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide > .title br {
    display: none;
  }
  #footer .left address {
    word-break: break-all;
  }
  #footer .left address br {
    display: none;
  }
  #footer .right ul li strong {
    width: 7.7rem;
    flex-shrink: 0;
  }
  #footer .right ul li {
    gap: 1rem;
  }
  #footer .right .footer-top {
    width: 5rem;
    height: 5rem;
  }
  #section1 .visu_tit {
    padding: 0 4rem;
  }
  #section2 .journey-guide .journey-guide-mslider__slide-body p {
    font-size: 2rem;
  }
  #section5 .news_filter {
    padding: 2rem 0;
  }
  #section5 .news_filter button {
    font-size: 2rem;
    font-weight: 700;
  }
  #section5 .news_filter li {
    text-align: center;
  }
  #section2 .journey-feature--image-first .journey-feature__body {
    order: inherit;
  }
  #section2 .journey-feature--image-first .journey-feature__thumb {
    order: 4;
  }
  #section2 .journey__panel--month:last-child {
    margin-right: 4rem;
  }
  #section2.journey--mobile-swiper .journey__panel--month:last-child {
    margin-right: 0 !important;
  }
  #logo {
    padding: 1% 2%;
  }
  #logo a {
    width: 18rem;
    display: block;
  }
  #footer .left p {
    width: 18rem;
  }
  #journey_popup .journey-popup-item__title {
    font-size: 1.7rem;
  }
  #section2 .journey-feature {
    gap: 1rem;
  }
  #section2 .journey-feature__title {
    font-size: 2rem;
  }
  #section2 .journey-feature__thumb {
    margin-top: 0;
  }
  #section2 .journey__panel h3 {
    font-size: 3rem;
  }
  #section2 .journey-feature__title2 {
    font-size: 1.8rem;
  }
  #journey_popup .journey_popup_head h3 {
    font-weight: 700;
    font-family: "pretendard", sans-serif;
    font-size: 2rem;
  }
  #section5 {
    padding: 0rem 0 8rem;
  }
  .ani_tit {
    padding: 0;
  }
  #section5 .news_tit {
    font-size: 1.9rem;
  }
  #section5 .news_source {
    font-size: 1.7rem;
  }
  #section5 .news_item_inner {
    min-height: 9rem;
  }
  #section2 .journey-month__head {
    flex-direction: row;
    justify-content: center;
  }
  #section2 .journey__circle h2 {
    font-size: 4rem;
  }
  #section2 .journey__circle {
    width: 30rem;
    height: 30rem;
  }
  #section2 .journey__orbit-line--middle {
    width: 45rem;
    height: 45rem;
    --journey-orbit-middle-r: calc(45rem / 2);
  }
  #section2.journey--mobile-swiper .journey__panel--month, #section2.journey--mobile-swiper .journey__panel--month.swiper-slide {
    display: flex;
    align-items: flex-start;
    flex-basis: auto;
    justify-content: center;
  }
  #section5 .news_filter button {
    font-size: 1.8rem;
    line-height: 1.3;
  }
  #section5 .news_filter {
    gap: 1rem;
  }
  #section2.journey--mobile-swiper .journey__panel {
    height: 100%;
  }
  #inc01 .inc01_tabs {
    flex-wrap: wrap;
    padding: 0.7rem;
    gap: 0;
  }
  #inc01 .inc01_tabs__btn {
    height: 3.8rem;
  }
  #inc01 .inc01_tabs__btn {
    flex: auto;
    width: auto;
    min-width: 32%;
  }
  #inc01 .inc01_actions__btn {
    height: 4.5rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__cap {
    margin-top: 1rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper2__cap {
    font-size: 1.6rem;
    font-weight: 400;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .swiper.swiper2 a img {
    height: 12rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active .inc01_slide__expand.is-single-col .swiper2-col--card {
    width: 20.5rem;
    max-width: 20.5rem;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand) .inc01_slide__expand {
    align-items: center;
    justify-content: center;
  }
  #inc01 .inc01_slide {
    -webkit-mask-image: linear-gradient(#fff, #fff), url("../img/angle_m.png");
    mask-image: linear-gradient(#fff, #fff), url("../img/angle_m.png");
    -webkit-mask-size: 100% 100%, 100% 100%;
    mask-size: 100% 100%, 100% 100%;
  }
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide {
    height: 37rem;
  }
}
@media screen and (max-width: 400px) {
  #section1 .visu_tit__media {
    max-width: min(94vw, 42rem);
  }
}
@media screen and (max-width: 380px) {
  #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active:not(.is-detail-closed):has(.inc01_slide__expand), #inc01 .inc01_slide > .swiper-wrapper > .swiper-slide.swiper-slide-active {
    width: 32rem;
    max-width: 32rem;
  }
}/*# sourceMappingURL=style.css.map */