@charset "UTF-8";
/* ==========================================================================
   SUB PAGE - VISUAL BANNER & AUTOMATIC TAB COMPONENT (FINAL COMPONENT)
   ========================================================================== */
/* ==========================================================================
   CARBON 2027 BRAND SCSS (Main Color Theme: #2996D6 / Font: Gmarket Sans)
   ========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap");
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css");
@font-face {
  font-family: "GmarketSansBold";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "GmarketSansMedium";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "GmarketSansLight";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansLight.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
/* 폰트 및 핵심 브랜드 컬러셋 바인딩 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "GmarketSansMedium", sans-serif !important;
}

body {
  color: #111625;
  background-color: #ffffff;
  overflow-x: hidden;
}

.container {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px;
}

/* 🖼️ [이미지 영역 1] 헤더 로고 */
.img-area-logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 190px;
  height: 48px;
  text-decoration: none;
  width: -moz-fit-content;
  width: fit-content;
}
.img-area-logo .logo-fallback {
  font-size: 20px;
  font-weight: 700;
  color: #111625;
  letter-spacing: -0.5px;
}

/* ==========================================
   IMAGE_511BDE.PNG 관련 스타일 (HEADER & HERO)
   ========================================== */
.headerSection {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 24px 0;
  z-index: 1000;
  background-color: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(4px);
  border-bottom: 1px solid #121212;
  transition: background-color 0.1s ease;
}
.headerSection::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 270px;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.05);
  border-bottom: 1px solid #121212;
  background: linear-gradient(95deg, #fff 40.56%, rgba(255, 255, 255, 0) 108.16%), url("../image/main/headerbg.png") lightgray 50%/cover no-repeat;
  background-size: 100%;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-30%);
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.25s cubic-bezier(0.25, 1, 0.5, 1), visibility 0.25s;
  z-index: 1;
}
.headerSection.mega-open {
  background-color: #ffffff;
}
.headerSection.mega-open::before {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.headerSection.mega-open .sub-menu-wrapper {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}
.headerSection.mega-open .sub-menu-wrapper .depth-2 {
  gap: 12px;
}
.headerSection .nav-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.headerSection .nav-links {
  width: 100%;
  padding-left: 64px;
}
.headerSection .nav-links .depth-1 {
  display: flex;
  list-style: none;
  width: 100%;
}
.headerSection .nav-links .depth-1 > li {
  min-width: 16.6666666667%;
  max-width: 16.6666666667%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
}
.headerSection .nav-links .depth-1 > li > a {
  text-align: center;
  font-size: 15px;
  font-weight: 500;
  color: #334155;
  text-decoration: none;
  display: block;
  padding: 10px 0 20px;
  transition: color 0.2s ease;
}
.headerSection .nav-links .depth-1 > li:hover > a {
  color: #2996d6;
}
.headerSection .nav-links {
  /* 🌊 🚀 2뎁스 글자가 하얀 배경판 너머 위로 튀는 계층 간섭 쉴딩 처리 */
}
.headerSection .nav-links .sub-menu-wrapper {
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 180px;
  padding: 40px 0 25px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-24px);
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.35s cubic-bezier(0.25, 1, 0.5, 1), visibility 0.35s;
  z-index: 100;
}
.headerSection .nav-links .depth-2 {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.headerSection .nav-links .depth-2 li {
  width: 100%;
}
.headerSection .nav-links .depth-2 li a {
  display: block;
  font-size: 14px;
  font-weight: 400;
  color: #555555;
  text-decoration: none;
  text-align: center;
  transition: color 0.1s ease, transform 0.2s ease;
  white-space: normal !important;
}
.headerSection .nav-links .depth-2 li a:hover {
  color: #2996d6;
}
.headerSection .hamburger {
  display: none;
  width: 24px;
  height: 18px;
  background: transparent;
  border: none;
  cursor: pointer;
}
.headerSection .hamburger span {
  display: block;
  width: 100%;
  height: 2.5px;
  background: #111;
  margin-bottom: 5px;
  transition: 0.3s ease;
}
.headerSection .hamburger.active span:nth-child(1) {
  transform: translateY(7.5px) rotate(45deg);
}
.headerSection .hamburger.active span:nth-child(2) {
  opacity: 0;
}
.headerSection .hamburger.active span:nth-child(3) {
  transform: translateY(-7.5px) rotate(-45deg);
}
.headerSection {
  /* 📱 모바일 반응형 이식 (브레이크 포인트) */
}
@media (max-width: 1199px) {
  .headerSection {
    padding: 16px 0;
  }
  .headerSection::before {
    display: none !important;
  }
  .headerSection .nav-links {
    position: fixed;
    top: 80px;
    left: 100%;
    width: 100%;
    height: calc(100vh - 80px);
    background: #ffffff;
    z-index: 999;
    transition: left 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    overflow-y: auto;
    padding: 24px;
  }
  .headerSection .nav-links.active {
    left: 0;
  }
  .headerSection .nav-links .depth-1 {
    flex-direction: column;
    gap: 0;
  }
  .headerSection .nav-links .depth-1 > li {
    width: 100%;
    border-bottom: 1px solid #f1f5f9;
    position: static;
    max-width: none !important;
    min-width: none !important;
    display: block;
  }
  .headerSection .nav-links .depth-1 > li > a {
    padding: 16px 0;
    font-size: 16px;
    font-weight: 700;
    text-align: left;
  }
  .headerSection .nav-links .sub-menu-wrapper {
    position: static;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    padding: 0 0 16px 12px;
    display: none;
    background: #f8fafc;
  }
  .headerSection .nav-links .depth-2 {
    gap: 8px !important;
  }
  .headerSection .nav-links .depth-2 li a {
    padding: 10px 16px;
    color: #475569;
    text-align: left;
  }
  .headerSection .hamburger {
    display: block;
  }
}

.heroSection {
  position: relative;
  width: 100%;
}
.heroSection .mainHeroSwiper {
  width: 100%;
  aspect-ratio: 1920/760;
  min-height: 480px;
  overflow: hidden;
}
.heroSection .swiper-slide {
  display: flex;
  align-items: center;
  will-change: transform, opacity;
}
.heroSection .swiper-slide .img-area-hero,
.heroSection .swiper-slide .slideTitle-container {
  transition: filter 1.2s cubic-bezier(0.25, 1, 0.5, 1), opacity 1.2s cubic-bezier(0.25, 1, 0.5, 1), transform 1.2s cubic-bezier(0.25, 1, 0.5, 1);
}
.heroSection .swiper-slide .img-area-hero {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.heroSection .swiper-slide .slideTitle-container {
  position: relative;
  z-index: 5;
  width: 100%;
}
.heroSection .swiper-slide .slideTitle h1.splitting-title {
  margin-bottom: 0px;
  display: block;
  overflow: hidden;
}
.heroSection .swiper-slide .slideTitle h1.splitting-title strong {
  color: #001a2d;
  font-family: "GmarketSansBold", sans-serif !important;
  font-size: 71.822px;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  display: inline-block;
  margin-right: 12px;
}
.heroSection .swiper-slide .slideTitle h1.splitting-title strong span.char {
  display: inline-block;
  transform: translateY(100%);
  opacity: 0;
}
.heroSection .swiper-slide .slideTitle h1.splitting-title > span {
  color: #001a2d;
  font-family: "GmarketSansLight", sans-serif !important;
  font-size: 71.825px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  display: inline-block;
}
.heroSection .swiper-slide .slideTitle h1.splitting-title > span span.char {
  display: inline-block;
  transform: translateY(100%);
  opacity: 0;
}
.heroSection .swiper-slide .slideTitle h1.splitting-title > span.char {
  display: inline-block;
  transform: translateY(100%);
  opacity: 0;
}
.heroSection .swiper-slide .slideTitle .hero-venue {
  color: #0d4064;
  font-family: "Gmarket Sans";
  font-size: 16.409px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 22.973px */
}
.heroSection .swiper-slide .slideTitle .hero-date {
  color: #0d4064;
  font-family: "GmarketSansMedium", sans-serif !important;
  font-size: 24px;
  font-weight: 600;
  line-height: normal;
}
.heroSection .swiper-slide {
  /* --------------------------------------------------------
  🎯 Swiper 활성화 시 strong 안의 글자든, span 안의 글자든 일제히 애니메이션 트리거
  -------------------------------------------------------- */
}
.heroSection .swiper-slide .swiper-slide-active .slideTitle h1.splitting-title strong span.char,
.heroSection .swiper-slide .swiper-slide-active .slideTitle h1.splitting-title > span span.char,
.heroSection .swiper-slide .swiper-slide-active .slideTitle h1.splitting-title > span.char {
  animation: letterReveal 0.65s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}
.heroSection .swiper-slide.swiper-slide-next {
  z-index: 1 !important;
  transition: 0.8s;
  opacity: 0.5;
  overflow: hidden;
}
.heroSection .swiper-slide.swiper-slide-next .img-area-hero {
  transform: scale(1.1) translateX(-10%);
}
.heroSection .swiper-slide.swiper-slide-next .img-area-hero {
  filter: blur(0px) brightness(1);
  transform: scale(1);
  opacity: 1;
}
.heroSection .swiper-slide.swiper-slide-next .slideTitle {
  filter: blur(0px);
  opacity: 1;
  transform: translateX(0);
}
.heroSection .swiper-slide {
  /* 포개지는 이전 슬라이드 */
}
.heroSection .swiper-slide.swiper-slide-prev {
  z-index: 1 !important;
  transition: 0.8s;
  opacity: 0.5;
  overflow: hidden;
  filter: blur(42px);
}
.heroSection .swiper-slide.swiper-slide-prev .img-area-hero {
  transform: scale(1.1) translateX(10%);
}
.heroSection .swiper-slide.swiper-slide-prev .slideTitle {
  opacity: 0;
  transform: translateX(0px);
}
.heroSection .swiper-slide.swiper-slide-prev h1.splitting-title span.char {
  animation: letterReveal 0.65s cubic-bezier(0.25, 1, 0.5, 1) forwards;
  opacity: 0;
}
.heroSection .swiper-slide {
  /* 선명하게 튀어나오는 활성 슬라이드 -> 글자 팝업 실행 */
}
.heroSection .swiper-slide.swiper-slide-active {
  z-index: 2 !important;
  transition: 0.4s;
}
.heroSection .swiper-slide.swiper-slide-active .img-area-hero {
  filter: blur(0px) brightness(1);
  transform: scale(1);
  opacity: 1;
}
.heroSection .swiper-slide.swiper-slide-active .slideTitle {
  filter: blur(0px);
  opacity: 1;
  transform: translateX(0);
}
.heroSection .swiper-slide.swiper-slide-active .slideTitle h1.splitting-title span.char {
  animation: letterReveal 0.65s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
.heroSection .swiper-pagination.white-bar .swiper-pagination-bullet-active {
  background-color: #fff !important;
}
.heroSection .swiper-slide.text-white .swiper-pagination-bullet-active {
  background-color: #2996d6 !important;
}
.heroSection .swiper-slide.text-white h1.splitting-title strong {
  color: #fff !important;
}
.heroSection .swiper-slide.text-white h1.splitting-title strong span.char {
  color: #fff !important;
}
.heroSection .swiper-slide.text-white h1.splitting-title span span.char {
  color: #fff !important;
}
.heroSection .swiper-slide.text-white .hero-venue {
  color: #fff !important;
}
.heroSection .swiper-slide.text-white .hero-date {
  color: #fff !important;
}
.heroSection .hero-controls {
  position: absolute;
  top: 50%;
  transform: translateY(110px);
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 50;
  pointer-events: none;
}
.heroSection .hero-controls .controls-inner {
  display: flex;
  align-items: center;
  gap: 24px;
  width: -moz-fit-content;
  width: fit-content;
  pointer-events: auto;
}
.heroSection .hero-controls .swiper-pagination {
  position: relative;
  display: flex;
  gap: 8px;
  bottom: auto;
  left: auto;
  width: auto;
  width: 256px;
}
.heroSection .hero-controls .swiper-pagination .swiper-pagination-bullet {
  width: 72px;
  height: 3px;
  border-radius: 0px;
  background: #b2b2b2;
  opacity: 0.5;
  margin: 0 !important;
  transition: all 0.4s ease;
}
.heroSection .hero-controls .swiper-pagination .swiper-pagination-bullet-active {
  background: #0d4064;
  opacity: 1;
  width: 100%;
  max-width: none;
}
.heroSection .hero-controls .control-btns {
  display: flex;
  align-items: center;
  gap: 12px;
}
.heroSection .hero-controls .control-btns button {
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 14px;
  color: #001a2d;
  padding: 0 2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease;
}
.heroSection .hero-controls .control-btns button:hover {
  color: #2996d6;
}
@media (max-width: 992px) {
  .heroSection .mainHeroSwiper {
    height: 580px;
    aspect-ratio: auto;
  }
  .heroSection .mainHeroSwiper .swiper-slide .splitting-title .char {
    font-size: 36px;
  }
  .heroSection .mainHeroSwiper .swiper-slide .hero-date {
    font-size: 15px;
  }
  .heroSection .mainHeroSwiper .swiper-slide .hero-venue {
    font-size: 13px;
  }
  .heroSection .hero-controls {
    top: auto;
    bottom: 50px;
    transform: translateY(0);
  }
  .heroSection .hero-controls .controls-inner {
    width: 100%;
    justify-content: center;
  }
  .heroSection .hero-controls .swiper-pagination .swiper-pagination-bullet {
    width: 50px;
  }
}

/* 위로 정밀 감속하며 솟구치는 키프레임 */
@keyframes letterReveal {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
/* ==========================================
   IMAGE_511BBF.PNG 관련 스타일 (IMPORTANT DATES)
   ========================================== */
.importantDateSection {
  position: relative;
  margin-top: -3px;
  z-index: 30;
  background-color: #f7fafc;
}
.importantDateSection .container {
  transform: translateY(-50%);
}
@media (max-width: 1024px) {
  .importantDateSection .container {
    transform: none;
    padding-top: 20px;
  }
}
.importantDateSection .cards-grid {
  max-width: 960px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.importantDateSection .cards-grid .card:last-child {
  border-radius: 0 0 64px 0;
}
@media (max-width: 1024px) {
  .importantDateSection .cards-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    background: transparent;
  }
}
@media (max-width: 640px) {
  .importantDateSection .cards-grid {
    grid-template-columns: 1fr;
  }
}
.importantDateSection .card {
  background: #edf8fd;
  padding: 20px 20px;
  min-height: 144px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-radius: 0px;
  border: none;
  transition: background-color 0.2s ease;
  background: rgba(255, 255, 255, 0.53);
  box-shadow: 2px 2px 18.8px 0 rgba(41, 150, 214, 0.31);
  backdrop-filter: blur(12.5812950134px);
}
.importantDateSection .card .card-tag {
  font-size: 14px;
  font-weight: 700;
  color: #2c3e50;
  line-height: 1.35;
  margin-bottom: 16px;
}
.importantDateSection .card .card-date {
  font-size: 24px;
  font-weight: 700;
  color: #222;
}
.importantDateSection .card .card-date .card-year {
  display: block;
  font-weight: 100;
  margin-top: 4px;
  font-size: 24px;
  opacity: 0.5;
}
.importantDateSection .card.active {
  background-color: #2996d6;
}
.importantDateSection .card.active .card-tag {
  color: rgba(255, 255, 255, 0.9);
}
.importantDateSection .card.active .card-date {
  color: #ffffff;
}
.importantDateSection .card.active .card-date .card-year {
  color: rgba(255, 255, 255, 0.65);
}
.importantDateSection .card.active {
  /* 🖼️ [이미지 영역 3] 첫 번째 카드의 느낌표 아이콘 플레이스홀더 */
}
.importantDateSection .card.active .img-area-exclamation {
  position: absolute;
  bottom: -10%;
  right: -5%;
}
.importantDateSection .card.active .img-area-exclamation svg {
  position: absolute;
  bottom: -30%;
  right: -30%;
  transform: rotate(0deg) translate(100%, 0%) scale(-1);
  opacity: 0;
  transition: transform 0.7s cubic-bezier(0.005, 0.02, 0.001, 1), opacity 3s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.importantDateSection .card.active.aos-init.aos-animate .img-area-exclamation svg {
  opacity: 1;
  transform: rotate(0deg) translate(0, 0) scale(1);
}

/* ==========================================
   IMAGE_511BA0.PNG 관련 스타일 (CONTENT ZONE)
   ========================================== */
/* ==========================================
   CONTENT ZONE: 2단 연사+뉴스 / 1단 다운로드
   ========================================== */
.mainContentSection {
  position: relative;
  width: 100%;
  padding: 16px 0 80px;
  background: linear-gradient(180deg, #f7fafc 80.09%, rgba(222, 240, 255, 0.4392156863) 90.99%);
  overflow: hidden;
}
.mainContentSection .container {
  position: relative;
  z-index: 5;
}
.mainContentSection {
  /* 💡 상단 2단 그리드 (연사 / 뉴스) */
}
.mainContentSection .content-grid-top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-bottom: 50px;
}
@media (max-width: 1024px) {
  .mainContentSection .content-grid-top {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.mainContentSection {
  /* 👨‍🏫 연사(Speaker) 구역 스타일 */
}
.mainContentSection .speakerSection {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.mainContentSection .speakerSection .speakerSwiper {
  width: 100%;
  position: relative;
}
.mainContentSection .speakerSection .speakerSwiper .swiper-slide-prev {
  transition: 0.8s cubic-bezier(0.075, 0.82, 0.165, 1) !important;
  opacity: 0;
  transform: scale(0.88);
}
.mainContentSection .speakerSection .speakerSwiper .swiper-slide-next {
  transform: scale(0.88);
  transition: 0.8s cubic-bezier(0.075, 0.82, 0.165, 1) !important;
  opacity: 0;
}
.mainContentSection .speakerSection .speakerSwiper .swiper-slide {
  transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.mainContentSection .speakerSection .speakerSwiper .swiper-slide:active {
  transform: scale(0.96);
}
.mainContentSection .speakerSection .speakerSwiper {
  /* ==========================================
     ✨ 슬라이더 양쪽 그라데이션 가림막 추가
     ========================================== */
}
.mainContentSection .speakerSection .speakerSwiper::before, .mainContentSection .speakerSection .speakerSwiper::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 120px; /* 그라데이션 너비 (필요시 조절) */
  z-index: 10; /* 슬라이드보단 위로 */
  pointer-events: none; /* 🚀 클릭 쉴딩 (드래그나 버튼 클릭 방해 방지) */
}
.mainContentSection .speakerSection .speakerSwiper {
  /* 왼쪽 그라데이션 (왼쪽이 진하고 오른쪽으로 투명해짐) */
}
.mainContentSection .speakerSection .speakerSwiper::before {
  left: 0;
  background: linear-gradient(90deg, #f7fafc 0%, rgba(239, 245, 250, 0) 100%);
}
.mainContentSection .speakerSection .speakerSwiper {
  /* 오른쪽 그라데이션 (오른쪽이 진하고 왼쪽으로 투명해짐) */
}
.mainContentSection .speakerSection .speakerSwiper::after {
  right: 0;
  background: linear-gradient(270deg, #f7fafc 0%, rgba(239, 245, 250, 0) 100%);
}
.mainContentSection .speakerSection .speakerSwiper .swiper-slide {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.mainContentSection .speakerSection .speakerSwiper .speaker-img-wrap {
  max-width: 314px;
  overflow: hidden;
}
.mainContentSection .speakerSection .speakerSwiper .speaker-img-wrap img {
  width: 100%;
  height: 100%;
  border-radius: 0 0 96px 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.mainContentSection .speakerSection .speakerSwiper .speaker-info {
  width: 100%;
  display: flex;
  justify-content: left;
  flex-direction: column;
  max-width: 314px;
}
.mainContentSection .speakerSection .speakerSwiper .speaker-info .speaker-name {
  text-align: left;
  font-family: "GmarketSansBold", sans-serif;
  font-size: 20px;
  color: #0c3b57;
  margin-bottom: 8px;
}
.mainContentSection .speakerSection .speakerSwiper .speaker-info .speaker-desc {
  text-align: left;
  font-size: 14.5px;
  color: #64748b;
  line-height: 1.6;
}
.mainContentSection .speakerSection .speakerSwiper {
  /* 스와이퍼 커스텀 동그란 화살표 */
}
.mainContentSection .speakerSection .speakerSwiper .swiper-button-prev,
.mainContentSection .speakerSection .speakerSwiper .swiper-button-next {
  display: flex;
  width: 64px;
  height: 65px;
  padding: 10px 16px 10px 12px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  transition: 0.2s ease;
  border-radius: 19px;
  opacity: 0.53;
  background: rgba(144, 152, 158, 0.562);
  z-index: 20; /* 🚀 화살표가 그라데이션보다 무조건 위에 오도록 격상 */
}
.mainContentSection .speakerSection .speakerSwiper .swiper-button-prev::after,
.mainContentSection .speakerSection .speakerSwiper .swiper-button-next::after {
  font-size: 24px;
  font-weight: 900;
  color: #fff !important;
}
.mainContentSection .speakerSection .speakerSwiper .swiper-button-prev:hover,
.mainContentSection .speakerSection .speakerSwiper .swiper-button-next:hover {
  background: #2996d6;
  color: #ffffff !important;
}
.mainContentSection .speakerSection .speakerSwiper .swiper-button-prev {
  left: 0 !important;
  padding-left: 16px;
}
.mainContentSection .speakerSection .speakerSwiper .swiper-button-next {
  right: 0 !important;
  padding-left: 20px !important;
}
.mainContentSection {
  /* 📰 뉴스 섹션 및 1단 다운로드 그리드 */
}
.mainContentSection .carbonNewsSection .news-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}
.mainContentSection .carbonNewsSection .news-header .btnWrap-nav button {
  border: 1.25px solid rgba(12, 59, 87, 0.2);
  background: #ffffff;
  width: 40px;
  height: 40px;
  cursor: pointer;
  color: #64748b;
}
.mainContentSection .carbonNewsSection .news-header .btnWrap-nav button:hover {
  background-color: rgba(41, 150, 214, 0.062745098);
  border-color: #2996d6;
}
.mainContentSection .carbonNewsSection .news-header .btnWrap-nav button:hover svg path {
  stroke: #0c4a6e;
}
.mainContentSection .carbonNewsSection .news-list .news-item {
  display: flex;
  justify-content: space-between;
  padding: 24px 16px;
  text-decoration: none;
  font-size: 14.5px;
  color: #334155;
  border-bottom: 1px solid #dde4e9;
  transition: padding-left 0.2s;
}
.mainContentSection .carbonNewsSection .news-list .news-item .news-title {
  color: #0c3b57;
  font-family: "Gmarket Sans";
  font-size: 15px;
  font-weight: 700;
}
.mainContentSection .carbonNewsSection .news-list .news-item .news-date {
  color: #777;
  font-size: 14px;
}
.mainContentSection .carbonNewsSection .news-list .news-item:hover .news-title {
  color: #2996d6;
}
.mainContentSection .carbonNewsSection .news-list .news-item:hover {
  padding-left: 20px;
}
.mainContentSection .downloadGridSection .quick-grid.horizontal-layout {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
@media (max-width: 1024px) {
  .mainContentSection .downloadGridSection .quick-grid.horizontal-layout {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .mainContentSection .downloadGridSection .quick-grid.horizontal-layout {
    grid-template-columns: 1fr;
  }
}
.mainContentSection .downloadGridSection .quick-box {
  position: relative;
  background-color: #ffffff;
  overflow: hidden;
  cursor: pointer;
  padding: 36px 24px;
  box-shadow: 2px 2px 18.8px 0 rgba(41, 150, 214, 0.15);
  transition: 0.3s;
  border: 2px solid #fff;
  border-radius: 0px;
}
.mainContentSection .downloadGridSection .quick-box:hover {
  background: linear-gradient(90deg, rgba(63, 178, 245, 0.0823529412), rgba(63, 178, 245, 0));
  border-color: rgba(41, 150, 214, 0.3764705882);
}
.mainContentSection .downloadGridSection .quick-box:active {
  transform: scale(0.97);
}
.mainContentSection .downloadGridSection .quick-box .img-area-dot-bg {
  position: absolute;
  left: 0px;
  transform: translateX(-40%);
  bottom: 16px;
  width: 144px;
  opacity: 0.3;
}
.mainContentSection .downloadGridSection .quick-box .img-area-dot-bg img {
  width: 100%;
}
.mainContentSection .downloadGridSection .quick-box .box-inner {
  position: relative;
  z-index: 5;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mainContentSection .downloadGridSection .quick-box .box-inner h3 {
  color: #0c3b57;
  font-size: 16px;
  font-weight: 700;
}
.mainContentSection .downloadGridSection .quick-box.tba::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(41, 150, 214, 0.062745098);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  backdrop-filter: blur(4px);
  opacity: 0;
  transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.mainContentSection .downloadGridSection .quick-box.tba .tbaBadge {
  opacity: 0;
  z-index: 6;
  border-radius: 12px;
  transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
  padding: 6px 10px;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  top: 50%;
  left: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  align-items: center;
  transform: translate(-50%, -20%);
}
.mainContentSection .downloadGridSection .quick-box.tba .tbaBadge span {
  padding: 6px 14px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 100;
  color: #2996d6;
}
.mainContentSection .downloadGridSection .quick-box.tba .tbaBadge .dotWrap {
  display: flex;
  align-items: center;
  gap: 4px; /* 점들 사이의 간격 */
  display: none;
}
.mainContentSection .downloadGridSection .quick-box.tba .tbaBadge .dot {
  width: 6px;
  height: 6px;
  background-color: #2996d6;
  border-radius: 50%; /* 완벽한 원형 */
  /* 애니메이션 적용: 무한반복, 부드러운 타이밍(ease-in-out) */
  animation: loadingWave 1.2s ease-in-out infinite;
  /* 점마다 딜레이를 주어 순차적으로 움직이게 설정 */
}
.mainContentSection .downloadGridSection .quick-box.tba .tbaBadge .dot:nth-child(1) {
  animation-delay: 0s;
}
.mainContentSection .downloadGridSection .quick-box.tba .tbaBadge .dot:nth-child(2) {
  animation-delay: 0.15s;
}
.mainContentSection .downloadGridSection .quick-box.tba .tbaBadge .dot:nth-child(3) {
  animation-delay: 0.3s;
}
@keyframes loadingWave {
  0%, 100% {
    opacity: 0.3;
    transform: translateY(0);
  }
  50% {
    opacity: 1;
    transform: translateY(-4px); /* 위로 살짝 통통 튀는 효과 */
  }
}
.mainContentSection .downloadGridSection .quick-box.tba:hover::after {
  opacity: 1;
}
.mainContentSection .downloadGridSection .quick-box.tba:hover .tbaBadge {
  opacity: 1;
  transform: translate(-50%, -50%);
}
.mainContentSection .organic-wave-wrapper {
  position: absolute;
  opacity: 0.8;
  bottom: -70px;
  left: 0;
  width: 100%;
  height: 180px;
  z-index: 2;
  pointer-events: none;
}
.mainContentSection .organic-wave-wrapper canvas {
  width: 100%;
  height: 100%;
  display: block;
}

.h1Title {
  color: #001a2d;
  font-family: "Gmarket Sans";
  font-size: 24px;
  font-style: normal;
  font-weight: 900;
  line-height: 150%; /* 36px */
  display: flex;
  gap: 12px;
  align-items: center;
}
.h1Title::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 20px;
  margin-bottom: 6px;
  border-radius: 4px;
  background-color: #2996d6;
}

/* News Section */
.carbonNewsSection .news-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}
.carbonNewsSection .news-header .btnWrap-nav button {
  border: 1.25px solid rgba(12, 59, 87, 0.4);
  background: #ffffff;
  width: 40px;
  height: 40px;
  transition: 0.2s;
  cursor: pointer;
  color: #64748b;
}
.carbonNewsSection .news-header .btnWrap-nav button svg {
  transition: 0.2s;
}
.carbonNewsSection .news-header .btnWrap-nav button:hover {
  background-color: rgba(41, 150, 214, 0.062745098);
  color: #ffffff;
  border-color: #2996d6;
}
.carbonNewsSection .news-header .btnWrap-nav button:hover svg path {
  stroke: #0c4a6e;
}
.carbonNewsSection .news-list .news-item {
  display: flex;
  justify-content: space-between;
  padding: 24px 16px;
  text-decoration: none;
  font-size: 14.5px;
  color: #334155;
  transition: padding-left 0.2s ease;
  border-bottom: 1px solid #dde4e9;
}
.carbonNewsSection .news-list .news-item .news-title {
  color: #0c3b57;
  font-family: "Gmarket Sans";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.carbonNewsSection .news-list .news-item .news-date {
  color: #777;
  font-family: "Gmarket Sans";
  font-size: 15px;
  font-style: normal;
  font-weight: 100;
  line-height: normal;
}
.carbonNewsSection .news-list .news-item:hover .news-title {
  color: #2996d6;
}
.carbonNewsSection .news-list .news-item:hover {
  padding-left: 4px;
}

/* Download Grid (우상단/좌하단 각각 비대칭 곡률 완벽 반영) */
.downloadGridSection .quick-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.downloadGridSection .quick-box {
  position: relative;
  background-color: #ffffff;
  border: 1px solid #e2e8f0;
  overflow: hidden;
  cursor: pointer;
  padding: 36px 23px;
  box-shadow: 2px 2px 16px rgba(0, 0, 0, 0.03);
  transition: transform 0.2s ease, border-color 0.2s ease;
  border: 2px solid #fff;
  background: #fff;
  box-shadow: 2px 2px 18.8px 0 rgba(41, 150, 214, 0.15);
}
.downloadGridSection .quick-box:first-child {
  border-radius: 64px 0 0 0;
}
.downloadGridSection .quick-box:last-child {
  border-radius: 0 0 61px 0;
}
.downloadGridSection .quick-box {
  transition: 0.3s;
}
.downloadGridSection .quick-box:hover {
  background: linear-gradient(90deg, rgba(63, 178, 245, 0.1254901961), rgba(63, 178, 245, 0));
  border: 2px solid rgba(41, 150, 214, 0.3764705882);
}
.downloadGridSection .quick-box:hover .icon-download {
  color: #2996d6;
}
.downloadGridSection .quick-box:active {
  transition: 0.1s;
  transform: scale(0.96);
}
.downloadGridSection .quick-box {
  /* 🖼️ [이미지 영역 4] 다운로드 박스의 도트 패턴 배경 마킹 */
}
.downloadGridSection .quick-box .img-area-dot-bg {
  position: absolute;
  left: -35px;
  top: 60px;
  width: 64px;
  height: 56px;
  z-index: 1;
  background-size: 7px 7px;
  opacity: 0.4;
}
.downloadGridSection .quick-box .box-inner {
  position: relative;
  z-index: 5;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  gap: 12px;
}
.downloadGridSection .quick-box .box-inner h3 {
  text-align: left;
  width: 100%;
  color: #0c3b57;
  font-family: "Gmarket Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%; /* 24px */
}
.downloadGridSection .quick-box .box-inner .icon-download {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  font-size: 24px;
  color: #cbd5e1;
  display: flex;
  align-items: center;
  transition: color 0.2s;
}

/* ==========================================
   IMAGE_511B7F.PNG 관련 스타일 (ORGANIZER & FOOTER)
   ========================================== */
.organizationSection {
  background-color: #ffffff;
  padding: 26px 0;
  border-top: 1px solid #e2e8f0;
}
.organizationSection .org-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: left;
  gap: 20px;
}
.organizationSection .org-inner .org-group {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (max-width: 768px) {
  .organizationSection .org-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
}
.organizationSection .org-inner h4 {
  font-size: 14px;
  color: #43556e;
  font-weight: 700;
  white-space: nowrap;
  display: flex;
  gap: 8px;
  align-items: center;
}
.organizationSection .org-inner h4::before {
  width: 3px;
  background-color: #2996d6;
  height: 12px;
  content: "";
}
.organizationSection .org-inner .orgList {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.organizationSection .org-inner .orgList .org-item {
  font-size: 13.5px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #475569;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
}
.organizationSection .org-inner .orgList .org-item .org-logo-zone {
  display: flex;
  align-items: center;
  justify-content: center;
}

.footerSection {
  background-color: #0b111e;
  padding: 36px 0;
  color: #64748b;
  font-size: 13px;
}
.footerSection .secretariat {
  text-align: center;
}
.footerSection .secretariat h4 {
  color: #ffffff;
  font-size: 14.5px;
  margin-bottom: 8px;
  font-weight: 700;
}
.footerSection .secretariat p {
  margin-bottom: 4px;
}
.footerSection .secretariat strong {
  color: #94a3b8;
}
.footerSection .secretariat a {
  color: #2996d6;
  text-decoration: none;
}

/* 🔄 기하학 배경 구동 애니메이션 키프레임 */
@keyframes floatingGeometric {
  0% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-12px) rotate(0.5deg);
  }
  100% {
    transform: translateY(0) rotate(0deg);
  }
}
.organic-wave-wrapper {
  position: absolute;
  opacity: 0.7;
  bottom: -70px;
  left: 0;
  width: 100%;
  height: 180px;
  pointer-events: none;
  z-index: 2;
}
.organic-wave-wrapper canvas {
  display: block;
  width: 100%;
  height: 100%;
}

header {
  position: relative !important;
}

body {
  background: linear-gradient(180deg, #ffffff 128px, #f7fafc 80.09%, rgba(222, 240, 255, 0.4392156863) 90.99%);
}

.subCon {
  position: relative;
  overflow: hidden;
}

/* 🖼️ 1. 서브페이지 상단 비주얼 배너 섹션 */
.sub-visual-section {
  position: relative;
  width: 100%;
  height: 400px;
  background-color: #1e293b;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.sub-visual-section .subVisualImgWrap {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}
.sub-visual-section .subVisualImgWrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sub-visual-section .visual-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(41, 150, 214, 0) 60%, rgba(12, 146, 224, 0.3));
  backdrop-filter: blur(2px);
  z-index: 1;
}
.sub-visual-section .visual-inner {
  position: relative;
  z-index: 2;
  text-align: left;
  display: flex;
  width: 100%;
  justify-content: flex-start;
  height: 100%;
  align-items: flex-end;
}
.sub-visual-section .title-tab-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  width: 100%;
}
.sub-visual-section {
  /* ⚛️ 서브타이틀 돔 컨테이너 스펙 */
}
.sub-visual-section .sub-page-title {
  position: relative;
  font-family: "GmarketSans", sans-serif;
  font-size: 56px;
  font-weight: 800;
  color: #083752;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  display: inline-block;
  overflow: hidden;
  line-height: 1.2;
}
.sub-visual-section .sub-page-title span.char {
  display: inline-block !important;
  transform: translateY(100%);
  opacity: 0;
  animation: letterReveal 0.65s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
.sub-visual-section {
  /* 📌 🚀 [자동 탭메뉴 가로 플랫 그리드 - 반응형 모듈 탑재] */
}
.sub-visual-section .sub-tab-container {
  display: flex;
  flex-wrap: nowrap;
  padding: 0;
  margin: 0;
  gap: 0px;
  background-color: #fff;
  border-radius: 12px 12px 0 0;
  margin-top: 24px;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.sub-visual-section .sub-tab-container::-webkit-scrollbar {
  display: none;
}
.sub-visual-section .sub-tab-container {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.sub-visual-section .sub-tab-container::before {
  content: "";
  position: absolute;
  left: 1px;
  bottom: 0;
  background: #fff;
  width: 12px;
  height: 12px;
  clip-path: path("M 12 0 Q 12 12 0 12 L 12 12 Z");
  transform: translateX(-100%);
}
.sub-visual-section .sub-tab-container::after {
  content: "";
  position: absolute;
  bottom: -1px;
  background: linear-gradient(rgba(255, 255, 255, 0.062745098), #f5f8f9 30%);
  right: -12px;
  width: 12px;
  height: 12px;
  clip-path: path("M 0 0 Q 0 12 12 12 L 0 12 Z");
}
.sub-visual-section .sub-tab-container .tab-item:last-child {
  border: none;
  position: relative;
}
.sub-visual-section .sub-tab-container .tab-item:last-child::after {
  display: none;
}
.sub-visual-section .sub-tab-container .tab-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "GmarketSans", sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: rgba(2, 75, 117, 0.4392156863);
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 10px 24px;
  text-decoration: none;
  transition: all 0.25s cubic-bezier(0.25, 1, 0.5, 1);
  border-radius: 0;
  position: relative;
  white-space: nowrap;
}
.sub-visual-section .sub-tab-container .tab-item::after {
  content: "";
  position: absolute;
  height: 30%;
  border-right: 1px solid rgba(2, 75, 117, 0.1882352941);
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.sub-visual-section .sub-tab-container .tab-item:hover {
  color: #083752;
}
.sub-visual-section .sub-tab-container .tab-item.active {
  color: #083752 !important;
  font-weight: 900;
}
.sub-visual-section {
  /* 📱 모바일 / 태블릿 반응형 미디어쿼리 커스텀 단속 */
}
@media (max-width: 991px) {
  .sub-visual-section {
    padding-bottom: 0 !important;
    height: 340px;
  }
  .sub-visual-section .visual-inner {
    justify-content: center;
    padding-bottom: 0px;
  }
  .sub-visual-section .title-tab-group {
    align-items: center;
    gap: 30px;
  }
  .sub-visual-section .sub-page-title {
    font-size: 24px !important;
    text-align: center;
  }
  .sub-visual-section .sub-tab-container {
    width: 100vw;
    justify-content: flex-start;
    padding: 0 20px;
  }
  .sub-visual-section .sub-tab-container::before, .sub-visual-section .sub-tab-container::after {
    display: none !important;
  }
  .sub-visual-section .sub-tab-container .tab-item {
    font-size: 14.5px;
    padding: 12px 20px;
  }
}

@keyframes letterReveal {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
/* 🔮 2. 서브페이지 하단 콘텐츠 대기 영역 (TBA) */
.page-tba-section {
  width: 100%;
  min-height: 450px;
  background-color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 0;
  position: relative;
  overflow: hidden;
}
.page-tba-section .tba-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  text-align: center;
}
.page-tba-section .tba-loading-holder {
  position: relative;
  width: 60px;
  height: 60px;
  animation: tbaRotate 2s linear infinite;
}
.page-tba-section .tba-loading-holder .spinner-dot {
  position: absolute;
  width: 8px;
  height: 8px;
  background-color: #2996d6;
  border-radius: 50%;
  transform-origin: 30px 30px;
}
.page-tba-section .tba-loading-holder .spinner-dot:nth-child(1) {
  transform: rotate(0deg);
  opacity: 1;
  background-color: #2996d6;
}
.page-tba-section .tba-loading-holder .spinner-dot:nth-child(2) {
  transform: rotate(60deg);
  opacity: 0.8;
  background-color: #3fb2f5;
}
.page-tba-section .tba-loading-holder .spinner-dot:nth-child(3) {
  transform: rotate(120deg);
  opacity: 0.6;
  background-color: #64b5f6;
}
.page-tba-section .tba-loading-holder .spinner-dot:nth-child(4) {
  transform: rotate(180deg);
  opacity: 0.4;
  background-color: #90caf9;
}
.page-tba-section .tba-loading-holder .spinner-dot:nth-child(5) {
  transform: rotate(240deg);
  opacity: 0.25;
}
.page-tba-section .tba-loading-holder .spinner-dot:nth-child(6) {
  transform: rotate(300deg);
  opacity: 0.15;
}
.page-tba-section .tba-text-group .tba-main-title {
  font-family: "GmarketSans", sans-serif;
  font-size: 28px;
  font-weight: 300;
  color: #b2bfc9;
  letter-spacing: 2px;
  margin-bottom: 12px;
  text-transform: uppercase;
}
.page-tba-section .tba-text-group .tba-sub-desc {
  font-family: sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #94a3b8;
  letter-spacing: -0.2px;
}

@keyframes tbaRotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media (max-width: 991px) {
  .sub-visual-section {
    height: auto;
    padding-top: 130px;
    padding-bottom: 30px;
  }
  .sub-visual-section .visual-inner {
    padding-bottom: 0;
  }
  .sub-visual-section .title-tab-group {
    gap: 16px;
  }
  .sub-visual-section .sub-page-title {
    font-size: 32px;
    transform: translateY(-36px);
  }
  .sub-visual-section .sub-tab-container {
    gap: 6px;
  }
  .sub-visual-section .sub-tab-container .tab-item {
    font-size: 13px;
    padding: 8px 16px;
  }
  .page-tba-section {
    min-height: 350px;
    padding: 60px 0;
  }
  .page-tba-section .tba-text-group .tba-main-title {
    font-size: 22px;
  }
  .page-tba-section .tba-text-group .tba-sub-desc {
    font-size: 13px;
    padding: 0 16px;
  }
}
/* ==========================================================================
   SUB PAGE - USEFUL INFORMATION CUSTOM DESIGN SYSTEM
   ========================================================================== */
.useful-info-section {
  display: flex;
  flex-direction: column;
  gap: 40px;
  max-width: 1440px;
  margin: 0 auto;
  padding: 60px 20px 100px;
  /* 📦 공통 개별 안내 카드 컴포넌트 */
}
.useful-info-section .useful-box {
  background: #ffffff;
  border: 1px solid rgba(2, 75, 117, 0.08);
  border-radius: 16px;
  padding: 35px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.02);
  display: flex;
  flex-direction: column;
  gap: 24px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.useful-info-section .useful-box:hover {
  transform: translateY(-4px);
  box-shadow: 0 15px 35px rgba(2, 75, 117, 0.06);
}
.useful-info-section {
  /* 🏷️ 카드 헤더 영역 (아이콘 + 헤딩 타이틀) */
}
.useful-info-section .box-header {
  display: flex;
  align-items: center;
  gap: 16px;
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 16px;
}
.useful-info-section .box-header .icon-wrap {
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41, 150, 214, 0.08);
  border-radius: 10px;
  filter: brightness(1.1);
}
.useful-info-section .box-header .icon-wrap img {
  filter: drop-shadow(-4px 0 2px rgba(4, 145, 170, 0.4039215686));
  width: 64px;
  height: 64px;
  -o-object-fit: contain;
     object-fit: contain;
  transform: perspective(800px) rotateX(20deg) rotateY(-15deg);
  /* 부드러운 모션이나 호버 인터랙션을 위한 트랜지션 */
  transition: transform 0.4s ease;
}
.useful-info-section .box-header .icon-wrap img:hover {
  transform: perspective(800px) rotateX(0deg) rotateY(0deg);
}
.useful-info-section .box-header h2 {
  font-family: "GmarketSans", sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #024b75;
  margin: 0;
}
.useful-info-section {
  /* 📝 카드 본문 텍스트 서식 */
}
.useful-info-section .box-content .desc-text {
  font-size: 15px;
  line-height: 1.7;
  color: #475569;
  margin: 0;
}
.useful-info-section .box-content .korea-highlight {
  background-color: rgba(41, 150, 214, 0.1);
  color: #024b75;
  padding: 2px 6px;
  border-radius: 4px;
  font-weight: 700;
}
.useful-info-section {
  /* 📞 리스트 형태 정돈 서식 (Emergency Calls 전용) */
}
.useful-info-section .info-list-style {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.useful-info-section .info-list-style li {
  font-size: 15px;
  color: #334155;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.useful-info-section .info-list-style li strong {
  font-weight: 500;
  min-width: 220px;
}
.useful-info-section .info-list-style li .badge-num {
  background: #f1f5f9;
  color: #024b75;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 6px;
  font-size: 14px;
  border: 1px solid rgba(2, 75, 117, 0.05);
}
.useful-info-section .info-list-style li .lang-tag {
  font-size: 13.5px;
  color: #64748b;
  margin-left: 4px;
}
.useful-info-section {
  /* 💵 화폐/동전 이미지 그리드 레이아웃 (반응형 카드 변형) */
}
.useful-info-section .currency-grid-container {
  margin-top: 24px;
  background: #f8fafc;
  padding: 24px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
}
.useful-info-section .currency-grid-container .currency-group-title {
  font-family: "GmarketSans", sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #475569;
  margin-bottom: 14px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.useful-info-section .currency-grid-container .currency-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.useful-info-section .currency-grid-container .currency-grid.coin-type .img-frame img {
  width: 70px;
  height: 70px;
  -o-object-fit: contain;
     object-fit: contain;
}
.useful-info-section .currency-grid-container .money-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.01);
}
.useful-info-section .currency-grid-container .money-card .img-frame {
  width: 100%;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.useful-info-section .currency-grid-container .money-card .img-frame img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.useful-info-section .currency-grid-container .money-card p {
  font-size: 13.5px;
  font-weight: 600;
  color: #334155;
  margin: 0;
}
.useful-info-section {
  /* 📑 택스 리펀 버튼셋 */
}
.useful-info-section .tax-link-group {
  display: flex;
  gap: 12px;
  margin-top: 20px;
}
.useful-info-section .btn-useful-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  color: #475569;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 500;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.2s ease;
}
.useful-info-section .btn-useful-link i {
  font-size: 12px;
  color: #94a3b8;
}
.useful-info-section .btn-useful-link:hover {
  border-color: #024b75;
  color: #024b75;
  background: rgba(2, 75, 117, 0.02);
}
.useful-info-section .btn-useful-link:hover i {
  color: #024b75;
}
.useful-info-section {
  /* 🌐 유용 사이트 바둑판식 링크 그리드 */
}
.useful-info-section .website-link-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.useful-info-section .website-link-grid a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  padding: 16px 20px;
  border-radius: 8px;
  color: #334155;
  font-size: 14.5px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.2s ease;
}
.useful-info-section .website-link-grid a i {
  color: #94a3b8;
  transition: transform 0.2s ease;
}
.useful-info-section .website-link-grid a:hover {
  background: #ffffff;
  border-color: #2996d6;
  color: #2996d6;
  box-shadow: 0 4px 12px rgba(41, 150, 214, 0.08);
}
.useful-info-section .website-link-grid a:hover i {
  color: #2996d6;
  transform: translateX(3px);
}

/* 📱 모바일 및 태블릿 반응형 단속 브레이크포인트 */
@media (max-width: 991px) {
  .useful-info-section {
    padding: 40px 16px 60px;
    gap: 24px;
  }
  .useful-info-section .useful-box {
    padding: 24px;
    gap: 16px;
  }
  .useful-info-section .box-header h2 {
    font-size: 18px;
  }
  .useful-info-section .info-list-style li strong {
    min-width: 100%;
  }
  .useful-info-section .currency-grid-container {
    padding: 16px;
  }
  .useful-info-section .currency-grid-container .currency-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .useful-info-section .website-link-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
/* ==========================================================================
   SUB PAGE - VISA INFORMATION CUSTOM DESIGN SYSTEM
   ========================================================================== */
.visa-info-section {
  display: flex;
  flex-direction: column;
  max-width: 1440px;
  margin: 0 auto;
  padding: 40px 20px 100px;
}
.visa-info-section .visa-main-heading {
  font-family: "GmarketSans", sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #024b75;
  border-left: 4px solid #2996d6;
  padding-left: 12px;
  margin-bottom: 30px;
}
.visa-info-section {
  /* 📦 정보 홀더 박스 공통 서식 */
}
.visa-info-section .visa-notice-box {
  background: rgba(255, 255, 255, 0.1019607843);
  border: 1px solid rgba(2, 75, 117, 0.08);
  border-radius: 16px;
  padding: 40px;
  margin-bottom: 32px;
  box-shadow: 0 10px 35px rgba(15, 23, 42, 0.048);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.visa-info-section .visa-notice-box:last-child {
  margin-bottom: 0;
}
.visa-info-section {
  /* 🏷️ 박스 상단 헤더 영역 */
}
.visa-info-section .box-header {
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 18px;
}
.visa-info-section .box-header::before {
  content: "";
  width: 12px;
  height: 12px;
  background-color: rgba(41, 151, 214, 0.3764705882);
  border-radius: 24px;
}
.visa-info-section .box-header {
  /* 🎨 [요청] 아이콘 커스텀 정밀 배치 구역 */
}
.visa-info-section .box-header .icon-wrap {
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41, 150, 214, 0.08);
  border-radius: 12px;
  border: 1px solid rgba(41, 150, 214, 0.15);
  color: #024b75;
  font-size: 20px;
}
.visa-info-section .box-header .icon-wrap img {
  width: 24px;
  height: 24px;
  -o-object-fit: contain;
     object-fit: contain;
}
.visa-info-section .box-header h2 {
  font-family: "GmarketSans", sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #024b75;
  margin: 0;
}
.visa-info-section {
  /* 📄 본문 텍스트 기본 공통 서식 */
}
.visa-info-section p {
  font-size: 15px;
  line-height: 1.75;
  color: #475569;
  margin: 0;
}
.visa-info-section {
  /* 쪼개지는 그래픽 + 텍스트 존 정렬 가이드 (Card 01) */
}
.visa-info-section .box-content-split {
  display: flex;
  align-items: center;
  gap: 30px;
}
.visa-info-section .box-content-split .highlight-paragraph {
  background-color: rgba(41, 150, 214, 0.05);
  border-left: 3px solid #2996d6;
  padding: 16px 20px;
  border-radius: 0 12px 12px 0;
  color: #1e293b;
  font-weight: 500;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.visa-info-section .box-content-split .highlight-paragraph i {
  color: #2996d6;
  margin-top: 4px;
}
.visa-info-section .box-content-split .content-img-zone {
  flex-shrink: 0;
  width: 140px;
  border-radius: 12px;
  padding: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.visa-info-section .box-content-split .content-img-zone img {
  max-width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.visa-info-section .box-content-split .content-text-zone {
  flex-grow: 1;
}
.visa-info-section {
  /* 풀 바디 텍스트 구조 서식 (Card 02) */
}
.visa-info-section .box-content-full {
  display: flex;
  flex-direction: column;
  gap: 20px;
  /* 알림/주의사항 강조 패널 문단 */
}
.visa-info-section .box-content-full .highlight-paragraph {
  background-color: rgba(41, 150, 214, 0.05);
  border-left: 3px solid #2996d6;
  padding: 16px 20px;
  border-radius: 0 12px 12px 0;
  color: #1e293b;
  font-weight: 500;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.visa-info-section .box-content-full .highlight-paragraph i {
  color: #2996d6;
  margin-top: 4px;
}
.visa-info-section {
  /* 🔗 하단 단추들을 품는 도킹 패널 구역 */
}
.visa-info-section .box-footer-links {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  border-top: 1px solid #f1f5f9;
  padding-top: 24px;
  margin-top: 10px;
}
.visa-info-section {
  /* ⚛️ 🚀 [하이라이트] 기깔나는 카본전용 3D 대각선 각도 제어 링크 단추 */
}
.visa-info-section .btn-carbon-3d {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 24px;
  font-family: "GmarketSans", sans-serif;
  font-size: 14.5px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 8px;
  backface-visibility: hidden;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease, background-color 0.25s ease;
  transform: perspective(600px) rotateX(12deg) rotateY(-10deg) translateZ(0);
  box-shadow: -5px 8px 20px rgba(15, 23, 42, 0.08);
}
.visa-info-section .btn-carbon-3d .lang-tag {
  font-size: 12.5px;
  opacity: 0.75;
  font-weight: 400;
}
.visa-info-section .btn-carbon-3d i {
  font-size: 12px;
  opacity: 0.7;
}
.visa-info-section .btn-carbon-3d {
  /* 테마 타입 A: 카본 블루 버튼 */
}
.visa-info-section .btn-carbon-3d.primary {
  background-color: #024b75;
  color: #ffffff;
}
.visa-info-section .btn-carbon-3d.primary:hover {
  background-color: #2996d6;
}
.visa-info-section .btn-carbon-3d {
  /* 테마 타입 B: 딥 차콜 버튼 */
}
.visa-info-section .btn-carbon-3d.dark {
  background-color: #373042;
  color: #ffffff;
}
.visa-info-section .btn-carbon-3d.dark:hover {
  background-color: #1e1b26;
}
.visa-info-section .btn-carbon-3d {
  /* 🎯 호버 시 정방향 평면 스펙으로 까딱거리며 돌아오는 모션 반전 연출 */
}
.visa-info-section .btn-carbon-3d:hover {
  transform: perspective(600px) rotateX(0deg) rotateY(0deg) translateY(-3px);
  box-shadow: 0 10px 25px rgba(2, 75, 117, 0.15);
}

/* 📱 완벽한 밸런스의 디바이스 반응형 단속 규칙 */
@media (max-width: 991px) {
  .visa-info-section {
    padding: 30px 16px 60px;
  }
  .visa-info-section .visa-notice-box {
    padding: 24px;
    gap: 12px;
  }
  .visa-info-section .box-header h2 {
    font-size: 18px;
    display: flex;
    gap: 8px;
    align-items: center;
  }
  .visa-info-section .box-content-split {
    flex-direction: column;
    align-items: center;
  }
  .visa-info-section .box-content-split .content-img-zone {
    width: 120px;
  }
  .visa-info-section .box-footer-links {
    flex-direction: column;
    align-items: stretch;
  }
  .visa-info-section .box-footer-links .btn-carbon-3d {
    transform: none !important;
    box-shadow: none;
    justify-content: center;
    text-align: center;
  }
}
/* ==========================================================================
   SUB PAGE - ABOUT DAEJEON INTEGRATED DESIGN SYSTEM
   ========================================================================== */
.daejeon-intro-section {
  max-width: 1440px;
  margin: 0 auto;
  padding: 80px 20px 100px;
  display: flex;
  flex-direction: column;
  gap: 50px;
  /* 🌌 1. 상단 인트로 히어로 레이아웃 블록 */
}
.daejeon-intro-section .daejeon-hero-card {
  background: #ffffff;
  border-radius: 20px;
  box-shadow: 0 10px 35px rgba(15, 23, 42, 0.015);
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  align-items: center;
}
.daejeon-intro-section .daejeon-hero-card .hero-text-content {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.daejeon-intro-section .daejeon-hero-card {
  /* ⚛️ 카본 전용 하이라이트 문단 서식 */
}
.daejeon-intro-section .daejeon-hero-card .carbon-highlight-text {
  font-size: 16.5px;
  line-height: 1.8;
  color: #024b75;
  background-color: rgba(41, 150, 214, 0.06);
  border-left: 4px solid #2996d6;
  padding: 20px;
  border-radius: 0 16px 16px 0;
  font-weight: 400;
}
.daejeon-intro-section .daejeon-hero-card .carbon-highlight-text strong {
  font-weight: 700;
  color: #083752;
}
.daejeon-intro-section .daejeon-hero-card .normal-desc-text {
  font-size: 15px;
  line-height: 1.75;
  color: #475569;
  text-align: justify;
}
.daejeon-intro-section {
  /* 🖼️ 이미지 플레이스홀더 범용 공통 서식 */
}
.daejeon-intro-section .img-placeholder {
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: #94a3b8;
  overflow: hidden;
  text-align: center;
}
.daejeon-intro-section .img-placeholder img {
  width: 100%;
  overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
}
.daejeon-intro-section .img-placeholder i {
  font-size: 32px;
  color: #cbd5e1;
}
.daejeon-intro-section .img-placeholder span {
  font-size: 13px;
  font-family: monospace;
  color: #64748b;
}
.daejeon-intro-section .img-placeholder {
  /* 상단 비주얼 전용 와이드 폼 */
}
.daejeon-intro-section .img-placeholder.main-view {
  height: 340px;
  background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
  border: 1px solid #cbd5e1;
}
.daejeon-intro-section .img-placeholder.main-view i {
  color: #94a3b8;
}
.daejeon-intro-section {
  /* 🔗 2. 중앙 정렬 단추 홀더 */
}
.daejeon-intro-section .btn-container-center {
  display: flex;
  justify-content: center;
  margin: 10px 0;
}
.daejeon-intro-section .btn-carbon-3d {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 24px;
  font-family: "GmarketSans", sans-serif;
  font-size: 14.5px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 8px;
  backface-visibility: hidden;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease, background-color 0.25s ease;
  transform: perspective(600px) rotateX(12deg) rotateY(-10deg) translateZ(0);
  box-shadow: -5px 8px 20px rgba(15, 23, 42, 0.08);
}
.daejeon-intro-section .btn-carbon-3d .lang-tag {
  font-size: 12.5px;
  opacity: 0.75;
  font-weight: 400;
}
.daejeon-intro-section .btn-carbon-3d i {
  font-size: 12px;
  opacity: 0.7;
}
.daejeon-intro-section .btn-carbon-3d {
  /* 테마 타입 A: 카본 블루 버튼 */
}
.daejeon-intro-section .btn-carbon-3d.primary {
  background-color: #024b75;
  color: #ffffff;
}
.daejeon-intro-section .btn-carbon-3d.primary:hover {
  background-color: #2996d6;
}
.daejeon-intro-section .btn-carbon-3d {
  /* 테마 타입 B: 딥 차콜 버튼 */
}
.daejeon-intro-section .btn-carbon-3d.dark {
  background-color: #373042;
  color: #ffffff;
}
.daejeon-intro-section .btn-carbon-3d.dark:hover {
  background-color: #1e1b26;
}
.daejeon-intro-section .btn-carbon-3d {
  /* 🎯 호버 시 정방향 평면 스펙으로 까딱거리며 돌아오는 모션 반전 연출 */
}
.daejeon-intro-section .btn-carbon-3d:hover {
  transform: perspective(600px) rotateX(0deg) rotateY(0deg) translateY(-3px);
  box-shadow: 0 10px 25px rgba(2, 75, 117, 0.15);
}
@media (max-width: 991px) {
  .daejeon-intro-section .btn-carbon-3d {
    transform: none !important;
    box-shadow: none;
    justify-content: center;
    text-align: center;
  }
}
.daejeon-intro-section {
  /* 🗺️ 3. 랜드마크 4카 바둑판 그리드 체제 */
}
.daejeon-intro-section .landmark-grid-system {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
}
.daejeon-intro-section .landmark-grid-system .landmark-card {
  background: #ffffff;
  border: 2px solid rgba(2, 75, 117, 0.06);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.01);
  display: flex;
  flex-direction: column;
  backface-visibility: hidden;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease;
  transform: perspective(800px) rotateX(8deg) rotateY(-5deg);
}
.daejeon-intro-section .landmark-grid-system .landmark-card .card-img-zone {
  padding: 16px 16px 0 16px;
}
.daejeon-intro-section .landmark-grid-system .landmark-card .card-info-zone {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.daejeon-intro-section .landmark-grid-system .landmark-card .card-info-zone h2 {
  font-family: "GmarketSans", sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #024b75;
  margin: 0;
}
.daejeon-intro-section .landmark-grid-system .landmark-card .card-info-zone p {
  font-size: 14.5px;
  line-height: 1.7;
  color: #64748b;
  margin: 0;
  text-align: justify;
}
.daejeon-intro-section .landmark-grid-system .landmark-card {
  /* 마우스 올리면 정방향 평면으로 부상하며 그림자 투하 */
}
.daejeon-intro-section .landmark-grid-system .landmark-card:hover {
  transform: perspective(800px) rotateX(0deg) rotateY(0deg) translateY(-5px);
  box-shadow: 0 15px 35px rgba(2, 75, 117, 0.08);
}
.daejeon-intro-section .landmark-grid-system .landmark-card:hover .card-info-zone h2 {
  color: #2996d6;
}

/* 📱 완벽한 밸런스의 디바이스 반응형 단속 브레이크포인트 */
@media (max-width: 991px) {
  .daejeon-intro-section {
    padding: 30px 16px 60px;
    gap: 32px;
  }
  .daejeon-intro-section .daejeon-hero-card {
    grid-template-columns: 1fr;
    padding: 24px;
    gap: 24px;
  }
  .daejeon-intro-section .daejeon-hero-card .carbon-highlight-text {
    font-size: 15px;
    padding: 16px;
  }
  .daejeon-intro-section .img-placeholder.main-view {
    height: -moz-fit-content;
    height: fit-content;
  }
  .daejeon-intro-section .img-placeholder.main-view img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .daejeon-intro-section .landmark-grid-system {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .daejeon-intro-section .landmark-grid-system .landmark-card {
    transform: none !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
  }
  .daejeon-intro-section .landmark-grid-system .landmark-card:hover {
    transform: translateY(-3px) !important;
  }
}
/* ==========================================================================
   SUB PAGE - VENUE (DCC) CUSTOM DESIGN SYSTEM
   ========================================================================== */
.venue-info-section {
  display: flex;
  flex-direction: column;
  max-width: 1440px;
  margin: 0 auto;
  padding: 80px 20px 100px;
  gap: 35px;
  /* 🌌 1. DCC 소개 상단 블록 (그리드 스플릿) */
}
.venue-info-section .venue-hero-block {
  background: #ffffff;
  border-radius: 20px;
  display: flex;
  flex-direction: column-reverse;
  flex-wrap: wrap;
  gap: 40px;
  align-items: center;
}
.venue-info-section .venue-hero-block .venue-text-zone {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.venue-info-section .venue-hero-block .carbon-lead-paragraph {
  font-size: 16px;
  line-height: 1.8;
  color: #024b75;
  background-color: rgba(41, 150, 214, 0.06);
  border-left: 4px solid #2996d6;
  padding: 20px;
  border-radius: 0 16px 16px 0;
  margin: 0;
}
.venue-info-section .venue-hero-block .venue-sub-paragraph {
  font-size: 15px;
  line-height: 1.75;
  color: #475569;
  text-align: justify;
  margin: 0;
}
.venue-info-section {
  /* 🖼️ 이미지 플레이스홀더 프레임 */
}
.venue-info-section .img-placeholder.venue-main-view {
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: #475569;
  overflow: hidden;
  max-width: 440px;
  min-width: 360px;
}
.venue-info-section .img-placeholder.venue-main-view img {
  width: 100%;
}
.venue-info-section .img-placeholder.venue-main-view i {
  font-size: 36px;
  color: #94a3b8;
}
.venue-info-section .img-placeholder.venue-main-view span {
  font-size: 13px;
  font-family: monospace;
  color: #64748b;
}
.venue-info-section {
  /* 📇 2. 상세 주소 및 연락처 카드 보드 */
}
.venue-info-section .venue-details-card {
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.01);
  display: flex;
  align-items: center;
  gap: 12px !important;
}
@media (max-width: 960px) {
  .venue-info-section .venue-details-card {
    flex-direction: column;
  }
}
.venue-info-section .venue-details-card .details-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
.venue-info-section .venue-details-card .detail-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  border-radius: 16px;
  background-color: rgba(232, 240, 241, 0.5215686275);
  padding: 12px;
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 24px;
  font-family: "GmarketSans", sans-serif;
  font-size: 14.5px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 8px;
  backface-visibility: hidden;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease, background-color 0.25s ease;
  box-shadow: -5px 8px 20px rgba(15, 23, 42, 0.08);
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d .lang-tag {
  font-size: 12.5px;
  opacity: 0.75;
  font-weight: 400;
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d i {
  font-size: 12px;
  opacity: 0.7;
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d {
  /* 테마 타입 A: 카본 블루 버튼 */
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d.primary {
  background-color: #024b75;
  color: #ffffff;
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d.primary:hover {
  background-color: #2996d6;
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d {
  /* 테마 타입 B: 딥 차콜 버튼 */
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d.dark {
  background-color: #373042;
  color: #ffffff;
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d.dark:hover {
  background-color: #1e1b26;
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d {
  /* 🎯 호버 시 정방향 평면 스펙으로 까딱거리며 돌아오는 모션 반전 연출 */
}
.venue-info-section .venue-details-card .detail-item .btn-carbon-3d:hover {
  transform: perspective(600px) rotateX(0deg) rotateY(0deg) translateY(-3px);
  box-shadow: 0 10px 25px rgba(2, 75, 117, 0.15);
}
.venue-info-section .venue-details-card .detail-item .icon-indicator {
  width: 42px;
  height: 42px;
  background: rgba(41, 150, 214, 0.08);
  border: 1px solid rgba(41, 150, 214, 0.15);
  color: #024b75;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 16px;
}
.venue-info-section .venue-details-card .detail-item .item-text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.venue-info-section .venue-details-card .detail-item .item-text h3 {
  font-family: "GmarketSans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #024b75;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.venue-info-section .venue-details-card .detail-item .item-text p {
  font-size: 14.5px;
  color: #334155;
  line-height: 1.5;
  margin: 0;
}
.venue-info-section .venue-details-card .detail-item .item-text .kr-sub-text {
  font-size: 13px;
  color: #64748b;
}
.venue-info-section .venue-details-card .detail-item .item-text .lang-support {
  font-size: 12.5px;
  opacity: 0.8;
  font-weight: 400;
  margin-left: 2px;
}
.venue-info-section .venue-details-card {
  /* 연락처 서브 내장 리스트 */
}
.venue-info-section .venue-details-card .nested-inquiry-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.venue-info-section .venue-details-card .nested-inquiry-list li {
  font-size: 14px;
  color: #475569;
  line-height: 1.4;
}
.venue-info-section .venue-details-card .nested-inquiry-list li strong {
  color: #1e293b;
  font-weight: 500;
}
.venue-info-section {
  /* ⚛️ 소형 컴팩트 인라인형 3D 트랜스폼 단추 커스텀 */
}
.venue-info-section .btn-carbon-3d.small-inline {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 600;
  margin-top: 4px;
  width: -moz-fit-content;
  width: fit-content;
}
.venue-info-section .btn-carbon-3d.small-inline:hover {
  transform: perspective(400px) rotateX(0deg) rotateY(0deg) translateY(-2px);
}
.venue-info-section {
  /* 🗺️ 3. 구글 맵 래퍼 브릿지 (모바일 가로 찢어짐 원천 차단) */
}
.venue-info-section .venue-map-wrapper {
  width: 100%;
  background: #ffffff;
  border: 1px solid rgba(2, 75, 117, 0.08);
  border-radius: 16px;
  padding: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.015);
}
.venue-info-section .venue-map-wrapper .map-container-inner {
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
  display: block;
}
.venue-info-section .venue-map-wrapper .map-container-inner iframe {
  display: block;
  vertical-align: middle;
}

/* 📱 완벽한 밸런스의 디바이스 반응형 단속 브레이크포인트 */
@media (max-width: 991px) {
  .venue-info-section {
    padding: 30px 16px 60px;
    gap: 24px;
  }
  .venue-info-section .venue-hero-block {
    grid-template-columns: 1fr;
    padding: 24px;
    gap: 24px;
  }
  .venue-info-section .venue-hero-block .carbon-lead-paragraph {
    font-size: 14.5px;
    padding: 16px;
  }
  .venue-info-section .img-placeholder.venue-main-view {
    height: 200px;
  }
  .venue-info-section .venue-details-card {
    padding: 24px;
  }
  .venue-info-section .venue-details-card .details-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .venue-info-section .venue-details-card .detail-item .icon-indicator {
    width: 36px;
    height: 36px;
    font-size: 14px;
  }
  .venue-info-section .btn-carbon-3d.small-inline {
    transform: none !important;
    box-shadow: none;
  }
  .venue-info-section .venue-map-wrapper {
    padding: 6px;
  }
  .venue-info-section .venue-map-wrapper iframe {
    height: 320px;
  }
}
/* ==========================================================================
   SUB PAGE - TRANSPORTATION COMPACT DESIGN SYSTEM (ACCORDION FIXED)
   ========================================================================== */
/* ==========================================================================
   CARBON 2027 CONFERENCE - TRANSPORTATION COMPACT STYLE (BASE 16PX)
   ========================================================================== */
.transportation-page-section {
  overflow: visible;
  font-size: 16px; /* 🚀 기준 폰트 16px 글로벌 선언 */
  color: #334155;
  line-height: 1.65;
  display: flex;
  flex-direction: column;
  gap: 25px; /* 🎯 컴포넌트 간 여백 콤팩트 다이어트 */
  max-width: 1440px;
  margin: 0 auto;
  padding: 80px 20px 70px;
  /* 🖼️ 상단 메인 이미지 뷰 래퍼 */
}
.transportation-page-section .transport-main-banner {
  width: 100%;
  border: none !important;
}
.transportation-page-section .transport-main-banner .img-placeholder.transport-hero-view {
  background: linear-gradient(135deg, #024b75 0%, #2996d6 100%);
  background: url(../image/sub/transportation/daejeon.jpg.png);
  background-size: 100%;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1440/360 !important;
  gap: 10px;
  color: #ffffff;
  border: none !important;
  border-radius: 96px 12px 12px 12px;
}
@media (max-width: 960px) {
  .transportation-page-section .transport-main-banner .img-placeholder.transport-hero-view {
    background-size: cover;
    background-position: center;
    aspect-ratio: 1440/440 !important;
    border-radius: 32px 12px 12px 12px;
  }
}
.transportation-page-section .transport-main-banner .img-placeholder.transport-hero-view i {
  color: rgba(255, 255, 255, 0.35);
  font-size: 44px;
}
.transportation-page-section .transport-main-banner .img-placeholder.transport-hero-view span {
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
  font-weight: 300;
}
.transportation-page-section {
  /* 🎛️ LEVEL 1: 대메뉴 메인 탭 래퍼 (.tabs.mt50 대응) */
}
.transportation-page-section.subCon > .tabs,
.transportation-page-section .tabs-main-wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  width: 100%;
  margin-top: 40px !important; /* 여백 조금씩 축소 */
  margin-bottom: 20px;
}
.transportation-page-section.subCon > .tabs .tab,
.transportation-page-section .tabs-main-wrapper .tab {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  padding: 14px 8px;
  text-align: center;
  font-family: "GmarketSans", sans-serif;
  font-size: 16px; /* 16px 유지 */
  font-weight: 500;
  color: #64748b;
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.2s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
}
.transportation-page-section.subCon > .tabs .tab:hover,
.transportation-page-section .tabs-main-wrapper .tab:hover {
  background: #f1f5f9;
  color: #024b75;
  border-color: #024b75;
}
.transportation-page-section.subCon > .tabs .tab.active,
.transportation-page-section .tabs-main-wrapper .tab.active {
  background: #024b75;
  color: #ffffff;
  border-color: #024b75;
  font-weight: 700;
  box-shadow: 0 4px 12px rgba(2, 75, 117, 0.15);
}
.transportation-page-section {
  /* 📂 1단 대메뉴 탭 컨텐츠 컨테이너 */
}
.transportation-page-section .tab-content {
  display: none;
  width: 100%;
}
.transportation-page-section .tab-content.active {
  display: block;
  animation: fadeInSub 0.35s ease-in-out;
}
.transportation-page-section {
  /* 🎚️ LEVEL 2: 내부 서브 탭 칩셋 래퍼 (.sub-tabs) */
}
.transportation-page-section .sub-tabs {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-bottom: 25px;
  width: 100%;
}
.transportation-page-section .sub-tabs .sub-tab {
  background: #ffffff;
  border: 1px solid #cbd5e1;
  padding: 7px 22px;
  border-radius: 30px; /* 라운드 칩 보드 스타일 */
  font-size: 14.5px;
  font-weight: 500;
  color: #475569;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: center;
}
.transportation-page-section .sub-tabs .sub-tab.w50 {
  width: 140px;
}
.transportation-page-section .sub-tabs .sub-tab {
  /* 청주공항 Route 5,6 전용 크기 */
}
.transportation-page-section .sub-tabs .sub-tab:hover, .transportation-page-section .sub-tabs .sub-tab.active {
  background: #2996d6;
  color: #ffffff;
  border-color: #2996d6;
  font-weight: 700;
}
.transportation-page-section {
  /* 📄 2단 서브 노선 탭 본문 컨테이너 (.sub-tab-content) */
}
.transportation-page-section .sub-tab-content {
  display: none;
}
.transportation-page-section .sub-tab-content.active {
  display: block;
}
.transportation-page-section .routeH1 {
  font-size: 28px;
  text-align: center;
  padding: 18px 0px;
  color: #121212;
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: center;
  letter-spacing: -3%;
  background: rgba(251, 252, 251, 0.4392156863);
  backdrop-filter: blur(4px);
  border-radius: 16px 16px 0 0;
  margin-bottom: 24px;
  /* 🚀 [교정 구역] sticky 기동 엔진 정상화 */
  position: sticky;
  top: 0; /* 📌 상단 고정 헤더가 있다면 헤더 높이만큼 값 부여 (예: 80px) */
  z-index: 10; /* 스크롤 시 아래 컨텐츠가 글자 위로 덮이지 않도록 방어 격상 */
}
.transportation-page-section .routeH1 strong {
  color: #1297e4;
  font-size: 24px;
  background-color: #1297e4;
  border: 2px solid #1297e4;
  padding: 5px 24px;
  color: #fff;
  border-radius: 90px;
}
@media (max-width: 1280px) {
  .transportation-page-section .routeH1 {
    padding: 8px 0px;
    flex-direction: column;
  }
  .transportation-page-section .routeH1 strong {
    white-space: nowrap;
  }
}
@media (max-width: 960px) {
  .transportation-page-section .routeH1 {
    padding: 8px 0px;
    flex-direction: column;
    font-size: 16px;
  }
  .transportation-page-section .routeH1 strong {
    font-size: 14px;
    padding: 3px 10px;
    white-space: nowrap;
  }
}
.transportation-page-section {
  /* 📦 카본 정보 카드 보드 프레임 (패딩 다이어트 적용) */
}
.transportation-page-section .transport-card-board {
  background: #ffffff;
  border: 1px solid rgba(2, 75, 117, 0.08);
  border-radius: 12px;
  padding: 24px; /* 기존 30px/40px에서 24px로 콤팩트 축소 */
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.015);
  margin-bottom: 20px;
  /* 상단 장식 헤드라인 바 */
}
.transportation-page-section .transport-card-board .card-headline-bar {
  font-family: "GmarketSans", sans-serif;
  font-size: 24px;
  font-weight: 900;
  display: flex;
  align-items: center;
  padding-top: 8px;
  border-radius: 16px 16px 16px 16px;
  color: #1e293b;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 10px;
  margin-bottom: 18px;
  width: -moz-fit-content;
  width: fit-content;
}
.transportation-page-section .transport-card-board .card-headline-bar svg:first-child {
  background-color: rgb(167, 19, 63) !important;
  border-radius: 12px;
  width: 28px;
  height: 28px;
  padding: 10px;
  fill: #fff;
  stroke: #fff;
  color: #fff !important;
}
.transportation-page-section .transport-card-board .card-headline-bar.dark-ver {
  color: #334155;
  border-color: #475569;
}
.transportation-page-section .transport-card-board .card-headline-bar.core-ver {
  color: #2996d6;
  border-color: #2996d6;
}
.transportation-page-section {
  /* 📊 카본 공통 리스폰시브 데이터 테이블 서식 */
}
.transportation-page-section .table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 12px 0;
}
.transportation-page-section .carbon-data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
}
.transportation-page-section .carbon-data-table th,
.transportation-page-section .carbon-data-table td {
  border: 1px solid #e2e8f0;
  padding: 10px 14px; /* 테이블 내부 패딩 소폭 축소 */
  text-align: left;
  vertical-align: middle;
}
.transportation-page-section .carbon-data-table th {
  background: #f8fafc;
  color: #1e293b;
  font-weight: 600;
}
.transportation-page-section .carbon-data-table td {
  color: #334155;
}
.transportation-page-section .carbon-data-table.center-type th,
.transportation-page-section .carbon-data-table.center-type td {
  text-align: center;
}
.transportation-page-section {
  /* 📝 인라인 타이틀 및 텍스트 스펙 정돈 */
}
.transportation-page-section .info-inline-sub-title,
.transportation-page-section h4.info-inline-sub-title {
  font-family: "GmarketSans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #1e293b;
  margin: 20px 0 10px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.transportation-page-section .info-inline-sub-title i,
.transportation-page-section h4.info-inline-sub-title i {
  color: #2996d6;
  font-size: 18px;
}
.transportation-page-section .info-context-p {
  font-size: 15px;
  color: #475569;
  line-height: 1.6;
  margin: 0 0 10px;
}
.transportation-page-section .info-context-p.font-weight-accent {
  font-weight: 600;
  color: #024b75;
}
.transportation-page-section .stop-loc-sub {
  font-size: 15px;
  color: #1e293b;
  margin-top: 12px;
  font-weight: 500;
}
.transportation-page-section .stop-loc-sub strong {
  color: #2996d6;
  font-weight: 700;
}
.transportation-page-section {
  /* 🔔 알림/주의사항 배너 하이라이트 박스 (.notiBox, .impor_box 대체 통합형) */
}
.transportation-page-section .carbon-notice-banner-box {
  background: #fff7f0;
  border: 1px solid #fdcdba;
  border-radius: 8px;
  padding: 16px 20px;
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin: 15px 0;
  align-items: center;
}
.transportation-page-section .carbon-notice-banner-box .notice-icon-zone {
  flex-shrink: 0;
  width: 128px;
  margin-top: 2px;
}
.transportation-page-section .carbon-notice-banner-box .notice-icon-zone img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.transportation-page-section .carbon-notice-banner-box .notice-text-zone {
  flex: 1;
}
.transportation-page-section {
  /* 🧼 기본 도트 리스트 정돈 서식 */
}
.transportation-page-section .clean-bullet-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.transportation-page-section .clean-bullet-list li {
  position: relative;
  padding-left: 12px;
  font-size: 14.5px;
  color: #475569;
}
.transportation-page-section .clean-bullet-list li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 8px;
  width: 4px;
  height: 4px;
  background: #2996d6;
  border-radius: 50%;
}
.transportation-page-section .clean-bullet-list.inline-type {
  flex-direction: row;
  flex-wrap: wrap;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 5px;
}
.transportation-page-section {
  /* 🚕 택시 문구 경고 전용 핑크 배너 */
}
.transportation-page-section .taxi-msg-alert-banner {
  background: #fff1f2;
  border: 1px solid #fecdd3;
  padding: 10px 16px;
  border-radius: 6px;
  margin: 12px 0;
}
.transportation-page-section .taxi-msg-alert-banner p {
  font-size: 14.5px;
  color: #be123c;
  font-weight: 600;
  margin: 0;
}
.transportation-page-section {
  /* 🔗 본문 내 내장형 웹사이트 바로가기 단추 (.venueBtn, .a_link02 규격 통합) */
}
.transportation-page-section .btn-useful-link.inline-form {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  font-size: 12.5px;
  font-weight: 700;
  background: #024b75;
  color: #ffffff !important;
  border-radius: 4px;
  text-decoration: none !important;
  margin-left: 6px;
  vertical-align: middle;
}
.transportation-page-section .btn-useful-link.inline-form i {
  color: #ffffff;
  font-size: 11px;
}
.transportation-page-section .btn-useful-link.inline-form:hover {
  background: #2996d6;
}
.transportation-page-section {
  /* ==========================================
     🚌 📌 대형 아코디언 드롭박스 내부 전용 정밀 인프라 서식 (밑줄 버그 차단)
     ========================================== */
}
.transportation-page-section .city-bus-brand-panel {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
}
.transportation-page-section .city-bus-brand-panel h2 {
  font-family: "GmarketSans", sans-serif;
  font-size: 17px;
  color: #1e293b;
  margin-bottom: 15px;
  font-weight: 700;
}
.transportation-page-section .city-bus-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.transportation-page-section .city-bus-stat-grid .stat-item {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  padding: 12px;
  text-align: center;
}
.transportation-page-section .city-bus-stat-grid .stat-item .num {
  font-family: "GmarketSans", sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #024b75;
  margin: 0;
}
.transportation-page-section .city-bus-stat-grid .stat-item .lbl {
  font-size: 11px;
  color: #64748b;
  font-weight: 500;
  margin-top: 2px;
  text-transform: uppercase;
}
.transportation-page-section .drop-accordion-system {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  margin-top: 15px;
}
.transportation-page-section .drop-accordion-system .accordion-item-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.2s ease;
}
.transportation-page-section .drop-accordion-system .accordion-item-box.direct-link-type {
  background: #ffffff;
  border: 1px solid #024b75;
}
.transportation-page-section .drop-accordion-system .accordion-item-box.direct-link-type .direct-link-anchor {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  text-decoration: none !important;
  color: #024b75;
  font-weight: 600;
}
.transportation-page-section .drop-accordion-system .accordion-item-box.direct-link-type .direct-link-anchor .view-details-hover {
  font-size: 13.5px;
  color: #2996d6;
  display: flex;
  align-items: center;
  gap: 4px;
}
.transportation-page-section .drop-accordion-system .accordion-item-box.direct-link-type:hover {
  box-shadow: 0 4px 12px rgba(2, 75, 117, 0.08);
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 16px 45px 16px 20px;
  text-decoration: none !important; /* 밑줄 전면 박멸 */
  position: relative;
  background: #f8fafc;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap h2 {
  font-family: "GmarketSans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #024b75;
  margin: 0;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap p {
  font-size: 13.5px;
  color: #64748b;
  margin: 4px 0 0 0;
  text-align: left;
  line-height: 1.4;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap .left-title-pack {
  font-family: "GmarketSans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #024b75;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon {
  position: absolute;
  right: 20px;
  top: 22px;
  width: 14px;
  height: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::before, .transportation-page-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::after {
  content: "";
  position: absolute;
  background: #024b75;
  transition: transform 0.2s ease;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::before {
  width: 12px;
  height: 2px;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::after {
  width: 2px;
  height: 12px;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap:hover {
  background: #f1f5f9;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap.active {
  background: #ffffff;
  border-bottom: 1px solid #e2e8f0;
}
.transportation-page-section .drop-accordion-system .dropBoxBtnWrap.active .chevron-icon::after {
  transform: rotate(90deg);
  opacity: 0;
}
.transportation-page-section .drop-accordion-system .dropBoxContent {
  max-height: 0;
  overflow: hidden;
  background: #ffffff;
  transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), padding 0.3s ease;
  padding: 0 20px;
}
.transportation-page-section .drop-accordion-system .dropBoxContent.active {
  max-height: 3000px;
  padding: 20px;
}
.transportation-page-section .drop-accordion-system .dropBoxContent p {
  font-size: 14.5px;
  color: #475569;
  margin: 0 0 14px 0;
}
.transportation-page-section .drop-accordion-system .accordion-inner-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.transportation-page-section .drop-accordion-system {
  /* 아코디언 오픈 판넬 바둑판 내장 카드 스킨 */
}
.transportation-page-section .drop-accordion-system .bus-category-card,
.transportation-page-section .drop-accordion-system .cardItem {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  border-top: 4px solid #cbd5e1;
}
.transportation-page-section .drop-accordion-system .bus-category-card h2,
.transportation-page-section .drop-accordion-system .bus-category-card h3,
.transportation-page-section .drop-accordion-system .cardItem h2,
.transportation-page-section .drop-accordion-system .cardItem h3 {
  font-family: "GmarketSans", sans-serif;
  font-size: 15.5px;
  font-weight: 700;
  margin: 0;
  color: #1e293b;
}
.transportation-page-section .drop-accordion-system .bus-category-card h3,
.transportation-page-section .drop-accordion-system .cardItem h3 {
  font-size: 13px;
  color: #94a3b8;
  font-weight: 500;
  margin-top: -2px;
}
.transportation-page-section .drop-accordion-system .bus-category-card p,
.transportation-page-section .drop-accordion-system .cardItem p {
  font-size: 14px;
  color: #475569;
  margin: 2px 0 8px 0 !important;
  line-height: 1.45;
}
.transportation-page-section .drop-accordion-system .bus-category-card .route-badge,
.transportation-page-section .drop-accordion-system .bus-category-card .accentA,
.transportation-page-section .drop-accordion-system .cardItem .route-badge,
.transportation-page-section .drop-accordion-system .cardItem .accentA {
  font-size: 12.5px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 4px;
  width: -moz-fit-content;
  width: fit-content;
  background: rgba(100, 116, 139, 0.08);
  color: #475569;
}
.transportation-page-section .drop-accordion-system .bus-category-card.blue,
.transportation-page-section .drop-accordion-system .cardItem.blue {
  border-top-color: #2996d6;
}
.transportation-page-section .drop-accordion-system .bus-category-card.blue .route-badge,
.transportation-page-section .drop-accordion-system .cardItem.blue .route-badge {
  background: rgba(41, 150, 214, 0.08);
  color: #2996d6;
}
.transportation-page-section .drop-accordion-system .bus-category-card.orange,
.transportation-page-section .drop-accordion-system .cardItem.orange {
  border-top-color: #ea580c;
}
.transportation-page-section .drop-accordion-system .bus-category-card.orange .route-badge,
.transportation-page-section .drop-accordion-system .cardItem.orange .route-badge {
  background: rgba(234, 88, 12, 0.08);
  color: #ea580c;
}
.transportation-page-section .drop-accordion-system .bus-category-card.green,
.transportation-page-section .drop-accordion-system .cardItem.green {
  border-top-color: #16a34a;
}
.transportation-page-section .drop-accordion-system .bus-category-card.green .route-badge,
.transportation-page-section .drop-accordion-system .cardItem.green .route-badge {
  background: rgba(22, 163, 74, 0.08);
  color: #16a34a;
}
.transportation-page-section .drop-accordion-system .bus-category-card.purple,
.transportation-page-section .drop-accordion-system .cardItem.purple {
  border-top-color: #9333ea;
}
.transportation-page-section .drop-accordion-system .bus-category-card.purple .route-badge,
.transportation-page-section .drop-accordion-system .cardItem.purple .route-badge {
  background: rgba(147, 51, 234, 0.08);
  color: #9333ea;
}
.transportation-page-section .drop-accordion-system .bus-category-card.red,
.transportation-page-section .drop-accordion-system .cardItem.red {
  border-top-color: #dc2626;
}
.transportation-page-section .drop-accordion-system .bus-category-card.red .route-badge,
.transportation-page-section .drop-accordion-system .cardItem.red .route-badge {
  background: rgba(220, 38, 38, 0.08);
  color: #dc2626;
}
.transportation-page-section {
  /* 🖼️ 이미지 다운그레이드 방지용 플레이스홀더 공통 규격 */
}
.transportation-page-section .img-placeholder {
  width: 100%;
  background: #f1f5f9;
  border: 1px dashed #cbd5e1;
  border-radius: 6px;
  padding: 15px;
  text-align: center;
  font-size: 13.5px;
  color: #64748b;
  font-family: monospace;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.transportation-page-section .img-placeholder img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* 📥 애니메이션 페이드인 가이드 효과 */
@keyframes fadeInSub {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* 📱 완벽 단속 모바일 미디어쿼리 브레이크포인트 */
@media (max-width: 991px) {
  .transportation-page-section {
    padding: 20px 14px 50px;
    gap: 18px;
  }
  .transportation-page-section .tabs-main-wrapper, .transportation-page-section.subCon > .tabs {
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
  }
  .transportation-page-section .tabs-main-wrapper .tab, .transportation-page-section.subCon > .tabs .tab {
    font-size: 14.5px;
    padding: 11px 4px;
  }
  .transportation-page-section .transport-card-board {
    padding: 16px;
  }
  .transportation-page-section .city-bus-stat-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .transportation-page-section .drop-accordion-system .accordion-inner-grid {
    grid-template-columns: 1fr;
  }
  .transportation-page-section .drop-accordion-system .dropBoxBtnWrap {
    padding: 14px 40px 14px 16px;
  }
}
.cfp-section {
  font-size: 16px; /* 🚀 기준 폰트 16px 글로벌 선언 */
  color: #334155;
  line-height: 1.65;
  display: flex;
  flex-direction: column;
  gap: 25px; /* 🎯 컴포넌트 간 여백 콤팩트 다이어트 */
  max-width: 1440px;
  margin: 0 auto;
  padding: 80px 20px 70px;
}
.cfp-section .drop-accordion-system {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  margin-top: 15px;
}
.cfp-section .drop-accordion-system .accordion-item-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.2s ease;
}
.cfp-section .drop-accordion-system .accordion-item-box.direct-link-type {
  background: #ffffff;
  border: 1px solid #024b75;
}
.cfp-section .drop-accordion-system .accordion-item-box.direct-link-type .direct-link-anchor {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  text-decoration: none !important;
  color: #024b75;
  font-weight: 600;
}
.cfp-section .drop-accordion-system .accordion-item-box.direct-link-type .direct-link-anchor .view-details-hover {
  font-size: 13.5px;
  color: #2996d6;
  display: flex;
  align-items: center;
  gap: 4px;
}
.cfp-section .drop-accordion-system .accordion-item-box.direct-link-type:hover {
  box-shadow: 0 4px 12px rgba(2, 75, 117, 0.08);
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 16px 45px 16px 20px;
  text-decoration: none !important; /* 밑줄 전면 박멸 */
  position: relative;
  background: #f8fafc;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap h2 {
  font-family: "GmarketSans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #024b75;
  margin: 0;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap p {
  font-size: 13.5px;
  color: #64748b;
  margin: 4px 0 0 0;
  text-align: left;
  line-height: 1.4;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap .left-title-pack {
  font-family: "GmarketSans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #024b75;
  display: flex;
  justify-content: flex-start;
  gap: 10px;
  align-items: center;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap .left-title-pack strong {
  padding: 4px;
  border-radius: 8px;
  background-color: rgba(139, 203, 243, 0.568627451);
  color: #1675ac;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  aspect-ratio: 1/1;
  width: 32px;
  height: 32px;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon {
  position: absolute;
  right: 20px;
  top: 22px;
  width: 14px;
  height: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::before, .cfp-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::after {
  content: "";
  position: absolute;
  background: #024b75;
  transition: transform 0.2s ease;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::before {
  width: 12px;
  height: 2px;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap .chevron-icon::after {
  width: 2px;
  height: 12px;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap:hover {
  background: #f1f5f9;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap.active {
  background: #ffffff;
  border-bottom: 1px solid #e2e8f0;
}
.cfp-section .drop-accordion-system .dropBoxBtnWrap.active .chevron-icon::after {
  transform: rotate(90deg);
  opacity: 0;
}
.cfp-section .drop-accordion-system .dropBoxContent {
  max-height: 0;
  overflow: hidden;
  background: #ffffff;
  transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), padding 0.3s ease;
  padding: 0 20px;
}
.cfp-section .drop-accordion-system .dropBoxContent .keyword {
  background-color: rgba(41, 150, 214, 0.062745098);
  border-radius: 8px;
  padding: 12px;
}
.cfp-section .drop-accordion-system .dropBoxContent .keyword span strong {
  padding: 8px 12px;
  border-radius: 4px;
  color: #2996d6;
  background-color: rgba(41, 150, 214, 0.1254901961);
}
.cfp-section .drop-accordion-system .dropBoxContent .keyword span span {
  color: #083752;
}
.cfp-section .drop-accordion-system .dropBoxContent.active {
  max-height: 3000px;
  padding: 20px;
}
.cfp-section .drop-accordion-system .dropBoxContent p {
  font-size: 14.5px;
  color: #475569;
  margin: 0 0 14px 0;
}
.cfp-section .drop-accordion-system .accordion-inner-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.cfp-section .drop-accordion-system {
  /* 아코디언 오픈 판넬 바둑판 내장 카드 스킨 */
}
.cfp-section .drop-accordion-system .bus-category-card,
.cfp-section .drop-accordion-system .cardItem {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  border-top: 4px solid #cbd5e1;
}
.cfp-section .drop-accordion-system .bus-category-card h2,
.cfp-section .drop-accordion-system .bus-category-card h3,
.cfp-section .drop-accordion-system .cardItem h2,
.cfp-section .drop-accordion-system .cardItem h3 {
  font-family: "GmarketSans", sans-serif;
  font-size: 15.5px;
  font-weight: 700;
  margin: 0;
  color: #1e293b;
}
.cfp-section .drop-accordion-system .bus-category-card h3,
.cfp-section .drop-accordion-system .cardItem h3 {
  font-size: 13px;
  color: #94a3b8;
  font-weight: 500;
  margin-top: -2px;
}
.cfp-section .drop-accordion-system .bus-category-card p,
.cfp-section .drop-accordion-system .cardItem p {
  font-size: 14px;
  color: #475569;
  margin: 2px 0 8px 0 !important;
  line-height: 1.45;
}
.cfp-section .drop-accordion-system .bus-category-card .route-badge,
.cfp-section .drop-accordion-system .bus-category-card .accentA,
.cfp-section .drop-accordion-system .cardItem .route-badge,
.cfp-section .drop-accordion-system .cardItem .accentA {
  font-size: 12.5px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 4px;
  width: -moz-fit-content;
  width: fit-content;
  background: rgba(100, 116, 139, 0.08);
  color: #475569;
}
.cfp-section .drop-accordion-system .bus-category-card.blue,
.cfp-section .drop-accordion-system .cardItem.blue {
  border-top-color: #2996d6;
}
.cfp-section .drop-accordion-system .bus-category-card.blue .route-badge,
.cfp-section .drop-accordion-system .cardItem.blue .route-badge {
  background: rgba(41, 150, 214, 0.08);
  color: #2996d6;
}
.cfp-section .drop-accordion-system .bus-category-card.orange,
.cfp-section .drop-accordion-system .cardItem.orange {
  border-top-color: #ea580c;
}
.cfp-section .drop-accordion-system .bus-category-card.orange .route-badge,
.cfp-section .drop-accordion-system .cardItem.orange .route-badge {
  background: rgba(234, 88, 12, 0.08);
  color: #ea580c;
}
.cfp-section .drop-accordion-system .bus-category-card.green,
.cfp-section .drop-accordion-system .cardItem.green {
  border-top-color: #16a34a;
}
.cfp-section .drop-accordion-system .bus-category-card.green .route-badge,
.cfp-section .drop-accordion-system .cardItem.green .route-badge {
  background: rgba(22, 163, 74, 0.08);
  color: #16a34a;
}
.cfp-section .drop-accordion-system .bus-category-card.purple,
.cfp-section .drop-accordion-system .cardItem.purple {
  border-top-color: #9333ea;
}
.cfp-section .drop-accordion-system .bus-category-card.purple .route-badge,
.cfp-section .drop-accordion-system .cardItem.purple .route-badge {
  background: rgba(147, 51, 234, 0.08);
  color: #9333ea;
}
.cfp-section .drop-accordion-system .bus-category-card.red,
.cfp-section .drop-accordion-system .cardItem.red {
  border-top-color: #dc2626;
}
.cfp-section .drop-accordion-system .bus-category-card.red .route-badge,
.cfp-section .drop-accordion-system .cardItem.red .route-badge {
  background: rgba(220, 38, 38, 0.08);
  color: #dc2626;
}

/* 📥 애니메이션 페이드인 가이드 효과 */
@keyframes fadeInSub {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 991px) {
  .cfp-section {
    padding: 20px 14px 50px;
    gap: 18px;
  }
  .cfp-section .drop-accordion-system .accordion-inner-grid {
    grid-template-columns: 1fr;
  }
  .cfp-section .drop-accordion-system .dropBoxBtnWrap {
    padding: 14px 40px 14px 16px;
  }
}
.committeesSection {
  font-size: 16px; /* 🚀 기준 폰트 16px 글로벌 선언 */
  color: #334155;
  line-height: 1.65;
  display: flex;
  flex-direction: column;
  gap: 25px; /* 🎯 컴포넌트 간 여백 콤팩트 다이어트 */
  max-width: 1440px;
  margin: 0 auto;
  padding: 80px 20px 70px;
}
.committeesSection .custom-tab-container {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}
.committeesSection .tab-nav-wrapper {
  width: 100%;
  overflow-x: auto;
  padding-left: 20px;
  padding-right: 20px;
}
.committeesSection .tab-nav-wrapper::-webkit-scrollbar {
  display: none;
}
.committeesSection .tab-nav-wrapper {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.committeesSection .tab-nav {
  width: 100%;
  position: relative;
  display: inline-flex;
  border-radius: 12px;
  padding: 4px;
  min-width: -moz-max-content;
  min-width: max-content;
  gap: 4px;
  border-radius: 56px;
  /* 👇 그라디언트가 둥근 모서리 밖으로 삐져나가지 않게 차단 */
  overflow: hidden;
  /* 👇 스포트라이트 그라디언트 효과 */
}
.committeesSection .tab-nav .tab-glow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 160px;
  background: radial-gradient(circle, rgba(0, 61, 84, 0.15) 0%, rgba(41, 150, 214, 0) 70%);
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  z-index: 0;
  opacity: 1;
}
.committeesSection .tab-nav .tab-glow.smooth-return {
  transition: left 0.4s cubic-bezier(0.25, 1, 0.5, 1), top 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.committeesSection .tab-bg-slider {
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 0;
  border-radius: 44px;
  background-color: #003d54;
  z-index: 1;
  transition: left 0.4s cubic-bezier(0.25, 1, 0.5, 1), width 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.committeesSection .tab-bg-slider .notch-overlay {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 56px;
  height: 14px;
  background-color: rgba(255, 255, 255, 0.9333333333);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 14'%3E%3Cpath d='M0,0 C14,0 18,14 28,14 C38,14 42,0 56,0 Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 14'%3E%3Cpath d='M0,0 C14,0 18,14 28,14 C38,14 42,0 56,0 Z'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  z-index: 1;
  /* 👇 이동 중엔 평평하게(스케일 0), 위쪽 모서리 기준으로 변화 */
  transform-origin: top center;
  transform: translateX(-50%) scaleY(0);
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  /* 👇 점이 떨어질 때 파이는 상태 */
}
.committeesSection .tab-bg-slider .notch-overlay.carve {
  transform: translateX(-50%) scaleY(0.7);
}
.committeesSection .tab-bg-slider .tab-dot {
  position: absolute;
  top: 0;
  left: 50%;
  width: 8px;
  height: 8px;
  background-color: #003d54;
  border-radius: 50%;
  z-index: 2;
  transform: translateX(-50%) translateY(-20px);
  opacity: 0;
}
.committeesSection .tab-bg-slider .tab-dot.drop {
  animation: dotDrop 0.3s forwards cubic-bezier(0.34, 1.56, 0.64, 1);
}
@keyframes dotDrop {
  0% {
    transform: translateX(-50%) translateY(-20px);
    opacity: 0;
  }
  100% {
    transform: translateX(-50%) translateY(-50%);
    opacity: 1;
  }
}
.committeesSection .tab-btn {
  width: 100%;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  border-radius: 44px;
  color: #003d54;
  font-weight: 400;
  cursor: pointer;
  transition: 0.3s ease;
  white-space: nowrap;
  min-width: 256px;
  font-size: 18px;
  display: flex;
  flex-direction: column;
  padding: 16px 8px;
  opacity: 0.5;
  gap: 0px;
}
.committeesSection .tab-btn .dot {
  left: 0;
  width: 6px;
  height: 6px;
  background-color: #003d54;
  opacity: 0.5;
  border-radius: 24px;
  transition: 0.7s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.committeesSection .tab-btn:hover .dot {
  opacity: 1 !important;
}
.committeesSection .tab-btn.active {
  color: #ffffff;
  padding-top: 4px;
  padding-bottom: 20px;
  opacity: 1;
  font-weight: 900;
}
.committeesSection .tab-btn.active .dot {
  opacity: 0;
  transform: translateY(-32px);
}
@media (max-width: 768px) {
  .committeesSection .tab-btn {
    min-width: 128px;
    font-size: 16px;
    padding: 12px 16px;
  }
}
.committeesSection .tab-content-wrapper {
  margin-top: 40px;
  padding: 0 20px;
}
.committeesSection .tab-pane {
  display: none;
  opacity: 0;
  transform: translateY(15px);
}
.committeesSection .tab-pane.active {
  display: block;
  animation: fadeInContent 0.5s forwards ease-out;
}
.committeesSection .tab-pane .pane-title {
  font-size: 24px;
  color: #003d54;
  margin-bottom: 16px;
  padding-left: 14px;
  font-weight: 800;
  position: relative;
}
.committeesSection .tab-pane .pane-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  bottom: 2px;
  width: 4px;
  background-color: #003d54;
  border-radius: 4px;
}
.committeesSection .tab-pane .pane-desc {
  font-size: 16px;
  line-height: 1.6;
  color: #4a5568;
}
.committeesSection .committee-table-wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 40px;
  background-color: #ffffff;
  border-radius: 12px;
  border: 1px solid #eef0f2;
  box-shadow: 0 8px 24px rgba(0, 61, 84, 0.04);
  overflow: hidden;
}
.committeesSection .committee-table-wrap .committee-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}
.committeesSection .committee-table-wrap .committee-table tr {
  transition: background-color 0.2s ease;
}
.committeesSection .committee-table-wrap .committee-table tr:hover td {
  background-color: rgba(248, 250, 252, 0.4);
}
.committeesSection .committee-table-wrap .committee-table tr:last-child th,
.committeesSection .committee-table-wrap .committee-table tr:last-child td {
  border-bottom: none;
}
.committeesSection .committee-table-wrap .committee-table th {
  width: 28%;
  padding: 28px 32px;
  background-color: #f8fafc;
  color: #003d54;
  font-size: 16px;
  font-weight: 700;
  vertical-align: top;
  border-bottom: 1px solid #eef0f2;
  border-right: 1px solid #eef0f2;
  line-height: 1.4;
}
.committeesSection .committee-table-wrap .committee-table td {
  padding: 24px 32px;
  background-color: #ffffff;
  vertical-align: top;
  border-bottom: 1px solid #eef0f2;
  transition: background-color 0.2s ease;
}
.committeesSection .committee-table-wrap .committee-table td ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.committeesSection .committee-table-wrap .committee-table td ul li {
  position: relative;
  padding-left: 18px;
  color: #64748b;
  font-size: 16px;
  line-height: 1.5;
}
.committeesSection .committee-table-wrap .committee-table td ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  background-color: #0bc5d6;
  border-radius: 50%;
}
.committeesSection .committee-table-wrap .committee-table td ul li strong {
  color: #333333;
  font-weight: 600;
}
@media (max-width: 768px) {
  .committeesSection .committee-table-wrap .committee-table tr {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid #eef0f2;
  }
  .committeesSection .committee-table-wrap .committee-table tr:last-child {
    border-bottom: none;
  }
  .committeesSection .committee-table-wrap .committee-table th,
  .committeesSection .committee-table-wrap .committee-table td {
    display: block;
    width: 100%;
    border-bottom: none;
    border-right: none;
  }
  .committeesSection .committee-table-wrap .committee-table th {
    padding: 20px 24px 12px;
    font-size: 16px;
  }
  .committeesSection .committee-table-wrap .committee-table td {
    padding: 0 24px 20px;
    background-color: #f8fafc;
  }
  .committeesSection .committee-table-wrap .committee-table td ul li {
    font-size: 15px;
  }
  .committeesSection .committee-table-wrap .committee-table tr:hover td {
    background-color: #f8fafc;
  }
}
.committeesSection .scientific-accordion-wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.committeesSection .scientific-accordion-wrap .accordion-item {
  width: 100%;
  background-color: #ffffff;
  border: 1px solid #eef0f2;
  border-radius: 50px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
  overflow: hidden;
  transition: border-radius 0.3s ease, box-shadow 0.3s ease;
}
.committeesSection .scientific-accordion-wrap .accordion-item.active {
  border-radius: 24px;
  box-shadow: 0 8px 24px rgba(0, 61, 84, 0.06);
}
.committeesSection .scientific-accordion-wrap .accordion-item.active .accordion-header .icon-chevron {
  transform: rotate(225deg);
}
.committeesSection .scientific-accordion-wrap .accordion-item.active .accordion-content-wrapper {
  grid-template-rows: 1fr;
}
.committeesSection .scientific-accordion-wrap .accordion-header {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 32px;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  transition: background-color 0.3s ease;
}
.committeesSection .scientific-accordion-wrap .accordion-header:hover {
  background-color: rgba(248, 250, 252, 0.5);
}
.committeesSection .scientific-accordion-wrap .accordion-header .header-left {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 1;
  padding-right: 24px;
}
.committeesSection .scientific-accordion-wrap .accordion-header .badge {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border: 2px solid #0bc5d6;
  border-radius: 50%;
  color: #0bc5d6;
  font-size: 16px;
  font-weight: 800;
  background-color: #ffffff;
}
.committeesSection .scientific-accordion-wrap .accordion-header .title {
  font-size: 16px;
  font-weight: 700;
  color: #003d54;
  line-height: 1.4;
  margin: 0;
}
.committeesSection .scientific-accordion-wrap .accordion-header .icon-chevron {
  position: relative;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  margin-right: 4px;
  border-right: 2px solid #003d54;
  border-bottom: 2px solid #003d54;
  transform: rotate(45deg);
  transition: transform 0.3s ease;
  border-bottom-right-radius: 2px;
}
.committeesSection .scientific-accordion-wrap .accordion-content-wrapper {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.committeesSection .scientific-accordion-wrap .accordion-content-wrapper .accordion-content {
  overflow: hidden;
}
.committeesSection .scientific-accordion-wrap .member-list {
  list-style: none;
  padding: 0 32px 32px 84px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.committeesSection .scientific-accordion-wrap .member-list li {
  position: relative;
  padding-left: 16px;
  color: #64748b;
  font-size: 16px;
  line-height: 1.5;
}
.committeesSection .scientific-accordion-wrap .member-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  background-color: #0bc5d6;
  border-radius: 50%;
}
.committeesSection .scientific-accordion-wrap .member-list li strong {
  color: #333333;
  font-weight: 600;
}
@media (max-width: 768px) {
  .committeesSection .scientific-accordion-wrap .accordion-item {
    border-radius: 24px;
  }
  .committeesSection .scientific-accordion-wrap .accordion-header {
    padding: 12px 16px;
  }
  .committeesSection .scientific-accordion-wrap .accordion-header .badge {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }
  .committeesSection .scientific-accordion-wrap .accordion-header .title {
    font-size: 15px;
  }
  .committeesSection .scientific-accordion-wrap .member-list {
    padding: 0 20px 24px 20px;
  }
  .committeesSection .scientific-accordion-wrap .member-list li {
    font-size: 15px;
  }
}
@keyframes fadeInContent {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.welcomeSection {
  font-size: 16px; /* 🚀 기준 폰트 16px 글로벌 선언 */
  color: #334155;
  line-height: 1.65;
  display: flex;
  flex-direction: column;
  gap: 25px; /* 🎯 컴포넌트 간 여백 콤팩트 다이어트 */
  max-width: 1440px;
  margin: 0 auto;
  padding: 80px 20px 70px;
  position: relative;
  overflow: hidden;
}
.welcomeSection .visa-main-heading {
  font-family: "GmarketSans", sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #024b75;
  border-left: 4px solid #2996d6;
  padding-left: 12px;
  margin-bottom: 30px;
}
.welcomeSection .profWrap {
  margin-top: 56px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  border-top: 2px solid #024b75;
}
.welcomeSection .profWrap .profItem {
  padding-top: 20px;
  padding-bottom: 20px;
  border-top: 1px solid rgba(2, 75, 117, 0.1882352941);
  border-bottom: 1px solid rgba(2, 75, 117, 0.1882352941);
  display: flex;
  flex-direction: column;
  padding-left: 16px;
  padding-right: 16px;
  gap: 0px;
  position: relative;
}
.welcomeSection .profWrap .profItem::before {
  content: "";
  width: 1px;
  top: 50%;
  transform: translateY(-50%);
  height: 60%;
  position: absolute;
  right: 8px;
  border-right: 1px dashed rgba(0, 61, 84, 0.1882352941);
}
.welcomeSection .profWrap .profItem:last-child {
  border-right: none;
}
.welcomeSection .profWrap .profItem:last-child::before {
  display: none;
}
.welcomeSection .profWrap .profItem .name {
  font-size: 18px;
  font-weight: 900;
  color: #024b75;
  position: relative;
  padding-left: 10px;
}
.welcomeSection .profWrap .profItem .name::before {
  content: "";
  width: 3px;
  top: 40%;
  transform: translateY(-50%);
  height: 60%;
  position: absolute;
  left: 0;
  background-color: rgba(2, 75, 117, 0.3137254902);
}
.welcomeSection .profWrap .profItem .grade {
  margin-bottom: 12px;
  color: #555;
}
.welcomeSection .profWrap .profItem .infoWrap {
  color: #555;
}

@media (max-width: 991px) {
  .profWrap {
    grid-template-columns: 1fr 1fr !important;
  }
  .profWrap .profItem:nth-child(2)::before {
    display: none;
  }
}
@media (max-width: 640px) {
  .profWrap {
    grid-template-columns: 1fr !important;
  }
  .profWrap .profItem::before {
    display: none;
  }
}
/* ==========================================================================
   SPONSORSHIP PAGE STYLES (Carbon 2027 Theme)
   ========================================================================== */
.sponsors-section {
  overflow: hidden;
  max-width: 1440px;
  padding: 80px 20px 100px;
  margin: 0 auto;
  position: relative;
  /* 📝 인트로 설명글 */
}
.sponsors-section .sponsorship-intro-box {
  margin-bottom: 30px;
}
.sponsors-section .sponsorship-intro-box .intro-main-text {
  font-size: 15.5px;
  color: #334155;
  line-height: 1.7;
  margin-bottom: 12px;
}
.sponsors-section .sponsorship-intro-box .intro-sub-notice {
  font-size: 15px;
  color: #0c3b57;
}
.sponsors-section .sponsorship-intro-box .intro-sub-notice strong {
  color: #0c3b57;
  font-weight: 700;
}
.sponsors-section {
  /* 📥 다운로드 버튼 4개 그리드 */
}
.sponsors-section .sponsorship-btn-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 45px;
}
.sponsors-section .sponsorship-btn-grid .sp-btn-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 10px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none !important;
  transition: all 0.25s ease;
  text-align: center;
  min-height: 52px;
  /* 활성 버튼 (Prospectus, Application Form) */
}
.sponsors-section .sponsorship-btn-grid .sp-btn-item.active {
  background: #2996d6;
  color: #ffffff;
  border: 1px solid #2996d6;
  box-shadow: 0 4px 12px rgba(41, 150, 214, 0.2);
}
.sponsors-section .sponsorship-btn-grid .sp-btn-item.active:hover {
  background: #024b75;
  border-color: #024b75;
  transform: translateY(-2px);
}
.sponsors-section .sponsorship-btn-grid .sp-btn-item {
  /* 준비중/TBA 버튼 */
}
.sponsors-section .sponsorship-btn-grid .sp-btn-item.tba {
  background: #f1f5f9;
  color: #64748b;
  border: 1px solid #cbd5e1;
  cursor: default;
}
@media (max-width: 992px) {
  .sponsors-section .sponsorship-btn-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 576px) {
  .sponsors-section .sponsorship-btn-grid {
    grid-template-columns: 1fr;
  }
}
.sponsors-section {
  /* 📄 섹션별 공통 블록 */
}
.sponsors-section .sp-content-block {
  margin-bottom: 40px;
}
.sponsors-section .sp-content-block .sp-section-title {
  font-size: 19px;
  font-weight: 700;
  color: #0c3b57;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.sponsors-section .sp-content-block .sp-section-title::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 18px;
  background-color: #2996d6;
  border-radius: 2px;
}
.sponsors-section {
  /* 🔗 2. 중앙 정렬 단추 홀더 */
}
.sponsors-section .btn-container-center {
  display: flex;
  display: grid;
  justify-content: center;
  margin: 10px 0;
  align-self: center;
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
  gap: 16px;
  margin-top: 56px !important;
  justify-content: center;
  border-radius: 24px;
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 992px) {
  .sponsors-section .btn-container-center {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 576px) {
  .sponsors-section .btn-container-center {
    grid-template-columns: 1fr;
  }
}
.sponsors-section .btn-carbon-3d {
  max-width: 320px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 24px;
  font-family: "GmarketSans", sans-serif;
  font-size: 14.5px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 8px;
  justify-content: center;
  display: flex;
  justify-content: center;
  backface-visibility: hidden;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease, background-color 0.25s ease;
  box-shadow: -5px 8px 20px rgba(15, 23, 42, 0.08);
}
.sponsors-section .btn-carbon-3d .lang-tag {
  font-size: 12.5px;
  opacity: 0.75;
  font-weight: 400;
}
.sponsors-section .btn-carbon-3d i {
  font-size: 12px;
  opacity: 0.7;
}
.sponsors-section .btn-carbon-3d {
  /* 테마 타입 A: 카본 블루 버튼 */
}
.sponsors-section .btn-carbon-3d.primary {
  background-color: #024b75;
  color: #ffffff;
}
.sponsors-section .btn-carbon-3d.primary:hover {
  background-color: #2996d6;
}
.sponsors-section .btn-carbon-3d {
  /* 테마 타입 B: 딥 차콜 버튼 */
}
.sponsors-section .btn-carbon-3d.dark {
  background-color: #373042;
  color: #ffffff;
}
.sponsors-section .btn-carbon-3d.dark:hover {
  background-color: #1e1b26;
}
.sponsors-section .btn-carbon-3d {
  /* 🎯 호버 시 정방향 평면 스펙으로 까딱거리며 돌아오는 모션 반전 연출 */
}
.sponsors-section .btn-carbon-3d:hover {
  transform: perspective(600px) rotateX(0deg) rotateY(0deg) translateY(-3px);
  box-shadow: 0 10px 25px rgba(2, 75, 117, 0.15);
}
@media (max-width: 991px) {
  .sponsors-section .btn-carbon-3d {
    transform: none !important;
    box-shadow: none;
    justify-content: center;
    text-align: center;
  }
}
.sponsors-section {
  /* 🧼 리스트 스타일 */
}
.sponsors-section .sp-bullet-list {
  list-style: none;
  padding-left: 16px;
  margin: 0;
}
.sponsors-section .sp-bullet-list li {
  position: relative;
  font-size: 16px;
  color: #475569;
  line-height: 1.7;
  margin-bottom: 8px;
  padding-left: 16px;
}
.sponsors-section .sp-bullet-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  background-color: #2996d6;
  border-radius: 50%;
}
.sponsors-section .sp-bullet-list li a {
  color: #2996d6;
  text-decoration: underline;
}
.sponsors-section .sp-bullet-list li a:hover {
  color: #024b75;
}
.sponsors-section {
  /* 📊 스폰서십 혜택 테이블 스펙 */
}
.sponsors-section .sp-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.05);
  background: #ffffff;
  margin-top: 10px;
}
.sponsors-section .visa-main-heading {
  margin-top: 56px;
  font-family: "GmarketSans", sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #024b75;
  border-left: 4px solid #2996d6;
  padding-left: 12px;
  margin-bottom: 20px;
}
.sponsors-section .sp-benefits-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 900px; /* 테이블 가로 스크롤 방어폭 */
}
.sponsors-section .sp-benefits-table th,
.sponsors-section .sp-benefits-table td {
  border: 1px solid #e2e8f0;
  padding: 10px 8px;
  font-size: 15px;
  vertical-align: middle;
  text-align: center;
}
.sponsors-section .sp-benefits-table thead {
  /* Benefits 메인 헤더 */
}
.sponsors-section .sp-benefits-table thead .th-main-benefit {
  background: #024b75;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
}
.sponsors-section .sp-benefits-table thead {
  /* 등급별 상단 타이틀 헤더 */
}
.sponsors-section .sp-benefits-table thead .th-platinum {
  background: #fecdd3;
  color: #881337;
  font-weight: 700;
  font-size: 14.5px;
}
.sponsors-section .sp-benefits-table thead .th-diamond {
  background: #d1fae5;
  color: #065f46;
  font-weight: 700;
  font-size: 14.5px;
}
.sponsors-section .sp-benefits-table thead .th-gold {
  background: #fed7aa;
  color: #7c2d12;
  font-weight: 700;
  font-size: 14.5px;
}
.sponsors-section .sp-benefits-table thead .th-silver {
  background: #e0f2fe;
  color: #0369a1;
  font-weight: 700;
  font-size: 14.5px;
}
.sponsors-section .sp-benefits-table thead .th-bronze {
  background: #fef08a;
  color: #713f12;
  font-weight: 700;
  font-size: 14.5px;
}
.sponsors-section .sp-benefits-table thead .th-supporter {
  background: #e2e8f0;
  color: #334155;
  font-weight: 700;
  font-size: 14.5px;
}
.sponsors-section .sp-benefits-table thead {
  /* 가격 로우 */
}
.sponsors-section .sp-benefits-table thead .tr-price-row th {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  padding: 8px 4px;
}
.sponsors-section .sp-benefits-table thead .tr-price-row .th-platinum-price {
  background: #ffe4e6;
  color: #881337;
}
.sponsors-section .sp-benefits-table thead .tr-price-row .th-diamond-price {
  background: #ecfdf5;
  color: #065f46;
}
.sponsors-section .sp-benefits-table thead .tr-price-row .th-gold-price {
  background: #ffedd5;
  color: #7c2d12;
}
.sponsors-section .sp-benefits-table thead .tr-price-row .th-silver-price {
  background: #f0f9ff;
  color: #0369a1;
}
.sponsors-section .sp-benefits-table thead .tr-price-row .th-bronze-price {
  background: #fefce8;
  color: #713f12;
}
.sponsors-section .sp-benefits-table thead .tr-price-row .th-supporter-price {
  background: #f8fafc;
  color: #334155;
}
.sponsors-section .sp-benefits-table tbody tr:hover {
  background-color: #f8fafc;
}
.sponsors-section .sp-benefits-table tbody .td-title {
  text-align: left;
  padding-left: 14px;
  font-weight: 600;
  color: #1e293b;
}
.sponsors-section .sp-benefits-table tbody .td-group-title {
  font-weight: 700;
  color: #0c3b57;
  background: #f8fafc;
  line-height: 1.4;
}
.sponsors-section .sp-benefits-table tbody .td-sub-title {
  text-align: left;
  padding-left: 12px;
  color: #334155;
}
.sponsors-section .sp-benefits-table tbody {
  /* 혜택 동그라미(O) 강조 */
}
.sponsors-section .sp-benefits-table tbody td {
  color: #475569;
  font-weight: 500;
}

/* ==========================================================================
   EXHIBITION PAGE STYLES (Carbon 2027 Theme)
   ========================================================================== */
.exhibition-page-section {
  overflow: hidden;
  max-width: 1440px;
  padding: 80px 20px 100px;
  margin: 0 auto;
  position: relative;
  z-index: 5;
  /* 📝 인트로 설명글 */
}
.exhibition-page-section .exhibition-intro-box {
  margin-bottom: 32px;
}
.exhibition-page-section .exhibition-intro-box .intro-main-text {
  font-size: 16px;
  color: #334155;
  line-height: 1.75;
  margin-bottom: 12px;
}
.exhibition-page-section .exhibition-intro-box .intro-sub-notice {
  font-size: 15.5px;
  color: #0c3b57;
}
.exhibition-page-section .exhibition-intro-box .intro-sub-notice strong {
  color: #0c3b57;
  font-weight: 700;
}
.exhibition-page-section {
  /* 📥 3D 버튼 래퍼 */
}
.exhibition-page-section .exhibition-btn-wrap {
  display: flex;
  gap: 16px;
  margin-bottom: 40px;
  flex-wrap: wrap;
  margin: 0 auto;
  justify-content: center;
}
@media (max-width: 768px) {
  .exhibition-page-section .exhibition-btn-wrap {
    flex-direction: column;
  }
  .exhibition-page-section .exhibition-btn-wrap .btn-carbon-3d {
    max-width: 100%;
    width: 100%;
  }
}
.exhibition-page-section {
  /* 💡 3D 버튼 스펙 고도화 이식 */
}
.exhibition-page-section .btn-carbon-3d {
  max-width: 320px;
  min-width: 200px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 24px;
  font-family: "GmarketSansMedium", "GmarketSans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 8px;
  backface-visibility: hidden;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease, background-color 0.25s ease;
  box-shadow: -5px 8px 20px rgba(15, 23, 42, 0.08);
}
.exhibition-page-section .btn-carbon-3d .lang-tag {
  font-size: 12.5px;
  opacity: 0.75;
  font-weight: 400;
}
.exhibition-page-section .btn-carbon-3d i {
  font-size: 14px;
  opacity: 0.85;
  transition: transform 0.2s ease;
}
.exhibition-page-section .btn-carbon-3d.primary {
  background-color: #024b75;
  color: #ffffff;
}
.exhibition-page-section .btn-carbon-3d.primary:hover {
  background-color: #2996d6;
}
.exhibition-page-section .btn-carbon-3d.primary:hover i {
  transform: translateY(2px);
}
.exhibition-page-section .btn-carbon-3d.dark {
  background-color: #373042;
  color: #ffffff;
}
.exhibition-page-section .btn-carbon-3d.dark:hover {
  background-color: #1e1b26;
}
.exhibition-page-section .btn-carbon-3d:hover {
  transform: perspective(600px) rotateX(0deg) rotateY(0deg) translateY(-3px);
  box-shadow: 0 10px 25px rgba(2, 75, 117, 0.15);
}
@media (max-width: 991px) {
  .exhibition-page-section .btn-carbon-3d {
    transform: none !important;
    box-shadow: none;
    justify-content: center;
    text-align: center;
  }
}
.exhibition-page-section {
  /* 🏷️ 카본 시그니처 바 메인 헤딩 */
}
.exhibition-page-section .visa-main-heading {
  margin-top: 56px;
  font-family: "GmarketSansBold", "GmarketSans", sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #024b75;
  border-left: 4px solid #2996d6;
  padding-left: 12px;
  margin-bottom: 20px;
  line-height: 1.3;
}
.exhibition-page-section {
  /* 🧼 리스트 스타일 */
}
.exhibition-page-section .sp-bullet-list {
  list-style: none;
  padding-left: 16px;
  margin: 0;
}
.exhibition-page-section .sp-bullet-list li {
  position: relative;
  font-size: 16px;
  color: #475569;
  line-height: 1.7;
  margin-bottom: 8px;
  padding-left: 16px;
}
.exhibition-page-section .sp-bullet-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  background-color: #2996d6;
  border-radius: 50%;
}
.exhibition-page-section .sp-bullet-list li a {
  color: #2996d6;
  text-decoration: underline;
}
.exhibition-page-section .sp-bullet-list li a:hover {
  color: #024b75;
}
.exhibition-page-section {
  /* 📊 전시 부스 테이블 전용 서식 (15px 이상 고정) */
}
.exhibition-page-section .ex-table-wrap {
  width: 100%;
  overflow-x: auto;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.05);
  background: #ffffff;
  margin-top: 15px;
}
.exhibition-page-section .carbon-exhibition-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 700px;
  font-size: 15.5px; /* 15px 이상 유지 */
}
.exhibition-page-section .carbon-exhibition-table th,
.exhibition-page-section .carbon-exhibition-table td {
  border: 1px solid #e2e8f0;
  vertical-align: middle;
}
.exhibition-page-section .carbon-exhibition-table thead tr:first-child th {
  background: #024b75;
  color: #ffffff;
  font-size: 17px;
  font-weight: 700;
  padding: 14px 16px;
  text-align: center;
}
.exhibition-page-section .carbon-exhibition-table thead .tr-sub-header td {
  padding: 14px 20px;
  font-weight: 700;
  font-size: 16px;
  text-align: center;
  background: #f8fafc;
}
.exhibition-page-section .carbon-exhibition-table thead .td-category-val {
  color: #0c3b57;
}
.exhibition-page-section .carbon-exhibition-table thead .td-fee-val {
  color: #2996d6;
}
.exhibition-page-section .carbon-exhibition-table tbody td {
  padding: 24px;
  vertical-align: top;
}
.exhibition-page-section .carbon-exhibition-table tbody .td-details-content {
  background: #ffffff;
}
.exhibition-page-section .carbon-exhibition-table tbody .booth-spec-group.mt-20 {
  margin-top: 24px;
}
.exhibition-page-section .carbon-exhibition-table tbody .booth-spec-group .spec-title {
  font-family: "GmarketSansBold", "GmarketSans", sans-serif;
  font-size: 15.5px;
  font-weight: 700;
  color: #0c3b57;
  margin-bottom: 10px;
}
.exhibition-page-section .carbon-exhibition-table tbody .booth-spec-group .inner-bullet-list {
  list-style: none;
  padding-left: 14px;
  margin: 0;
}
.exhibition-page-section .carbon-exhibition-table tbody .booth-spec-group .inner-bullet-list li {
  position: relative;
  font-size: 15px;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 6px;
  padding-left: 14px;
}
.exhibition-page-section .carbon-exhibition-table tbody .booth-spec-group .inner-bullet-list li::before {
  content: "•";
  position: absolute;
  left: 0;
  color: #2996d6;
  font-weight: bold;
}
.exhibition-page-section .carbon-exhibition-table tbody .booth-spec-group .inner-bullet-list li .sub-desc {
  color: #64748b;
  font-size: 14.5px;
  padding-left: 4px;
}
.exhibition-page-section .carbon-exhibition-table tbody {
  /* 부스 이미지 구역 */
}
.exhibition-page-section .carbon-exhibition-table tbody .td-booth-preview {
  background: #fafcff;
  text-align: center;
  vertical-align: middle;
}
.exhibition-page-section .carbon-exhibition-table tbody .td-booth-preview .booth-img-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px;
}
.exhibition-page-section .carbon-exhibition-table tbody .td-booth-preview .booth-img-box img {
  max-width: 100%;
  height: auto;
  max-height: 240px;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  margin-bottom: 12px;
}
.exhibition-page-section .carbon-exhibition-table tbody .td-booth-preview .booth-img-box .booth-caption {
  font-family: "GmarketSansBold", "GmarketSans", sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #024b75;
  letter-spacing: 0.5px;
}

/*abstract*/
.stepCardWrap {
  display: flex;
  gap: 8px;
}

.stepCardWrap .stepCard {
  height: 220px;
  flex: 1;
  border: 1px solid #d9d9d9;
  padding: 16px;
  position: relative;
  overflow: hidden;
}

.stepCardWrap .stepCard .stepLabel {
  border: 1px solid #2996d6;
  background: #2996d6;
  border-radius: 4px 16px 16px 4px;
  width: -moz-fit-content;
  width: fit-content;
}

.stepCardWrap .stepCard .stepLabel h2 {
  font-size: 15px;
  color: #fff;
  background: #2996d6;
  z-index: 999;
  position: relative;
  padding: 0 12px;
  border-radius: 16px;
  height: 32px;
  display: flex;
  align-items: center;
}

.stepCardWrap .stepCard .stepContent p {
  list-style: circle;
  text-align: left;
  font-size: 15.5px;
  line-height: 24px;
}

.stepCardWrap svg {
  margin-top: 18px;
  width: 32px;
  padding: 8px;
  margin-left: -20px;
  margin-right: -17px;
  background: #fff;
  aspect-ratio: 1;
  height: 32px;
  fill: #2996d6;
  border-radius: 4px;
  position: relative !important;
  stroke-width: 0.5;
  z-index: 999;
  border: 1px solid #2996d6;
}

.mt20 {
  margin-top: 20px !important;
}

.link {
  color: #2996d6;
  text-decoration: underline;
}

.link:hover {
  color: #024b75;
}

.dateBox {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}

.dateBox .detail-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  border-radius: 16px;
  background-color: rgba(232, 240, 241, 0.5215686275);
  padding: 12px;
}

.dateBox .detail-item .item-text {
  display: flex;
  flex-direction: column;
  gap: 1px;
  text-align: center;
}

.dateBox .detail-item .item-text h3 {
  color: #75025b;
  font-size: 22px;
  font-weight: 700;
  margin: 0;
}/*# sourceMappingURL=subpage.css.map */