/* =========================================================
   MCAIT CLEAN UNIFIED MENU v30
   목적:
   - 모든 페이지의 PC/모바일 메뉴를 동일한 구조와 동일한 디자인으로 고정
   - 기존 햄버거 메뉴, 모바일 드롭다운, 하단 상담바가 다시 나타나지 않도록 차단
   - style.css / 이전 패치 CSS의 header 관련 값을 마지막에 덮어쓰기
   ========================================================= */

/* 공통: 앵커 이동 시 fixed 메뉴에 가리지 않도록 */
html {
  scroll-padding-top: 96px;
}

body {
  padding-top: 82px;
  overflow-x: hidden;
}

/* 과거 모바일/상담 레이어 완전 차단 */
.menu-toggle,
#mobileMenu,
.mobile-nav,
#mcaitQuickContact,
.mcait-quick-contact,
.mcait-quick-panel,
.mcait-quick-toggle {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* 모든 페이지 PC 공통 상단 메뉴 */
.site-header,
body .site-header,
header.site-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
  transform: none !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: rgba(255, 255, 255, 0.97) !important;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(12, 55, 118, 0.10) !important;
  box-shadow: 0 10px 26px rgba(7, 26, 58, 0.10) !important;
}

.site-header .nav,
body .site-header .nav,
header .nav {
  width: min(1180px, calc(100% - 40px)) !important;
  max-width: 1180px !important;
  min-height: 82px !important;
  margin: 0 auto !important;
  padding: 10px 0 !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  box-sizing: border-box !important;
}

.site-header .brand,
body .site-header .brand {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  text-decoration: none !important;
}

.site-header .brand img,
body .site-header .brand img {
  display: block !important;
  width: auto !important;
  height: 42px !important;
  max-width: 190px !important;
}

.site-header .desktop-nav,
body .site-header .desktop-nav,
header .desktop-nav,
.desktop-nav {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.site-header .desktop-nav::-webkit-scrollbar,
.desktop-nav::-webkit-scrollbar {
  display: none;
}

.site-header .desktop-nav a,
body .site-header .desktop-nav a,
header .desktop-nav a,
.desktop-nav a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  min-height: 42px !important;
  padding: 0 15px !important;
  border-radius: 999px !important;
  color: #243044 !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  text-decoration: none !important;
  font-family: inherit !important;
  font-size: 0.98rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  letter-spacing: -0.035em !important;
  box-shadow: none !important;
  transform: none !important;
}

.site-header .desktop-nav a:hover,
.site-header .desktop-nav a:focus {
  color: #0b4ecf !important;
  background: rgba(11, 78, 207, 0.07) !important;
  border-color: rgba(11, 78, 207, 0.10) !important;
}

.site-header .desktop-nav a.nav-cta,
body .site-header .desktop-nav a.nav-cta,
.desktop-nav a.nav-cta {
  padding: 0 18px !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #0b7cff 0%, #06b6d4 100%) !important;
  border-color: transparent !important;
  box-shadow: 0 10px 22px rgba(0, 116, 255, 0.20) !important;
}

.site-header .desktop-nav a.nav-cta:hover,
.site-header .desktop-nav a.nav-cta:focus {
  color: #ffffff !important;
  background: linear-gradient(135deg, #086be0 0%, #059ebb 100%) !important;
}

/* 모든 섹션 앵커 이동 보정 */
#prototype,
section[id],
[id] {
  scroll-margin-top: 96px;
}

/* 모바일 공통 메뉴: 같은 구조, 같은 항목, 모바일 전용 색상 */
@media screen and (max-width: 768px) {
  html {
    scroll-padding-top: 74px !important;
  }

  body {
    padding-top: 64px !important;
    padding-bottom: 0 !important;
  }

  .site-header,
  body .site-header,
  header.site-header {
    background: linear-gradient(135deg, rgba(10, 42, 92, 0.98) 0%, rgba(7, 76, 154, 0.98) 58%, rgba(5, 122, 174, 0.98) 100%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 10px 28px rgba(7, 26, 58, 0.26) !important;
  }

  .site-header .nav,
  body .site-header .nav,
  header .nav {
    width: 100% !important;
    max-width: none !important;
    min-height: 64px !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    gap: 8px !important;
  }

  .site-header .brand,
  body .site-header .brand {
    min-height: 42px !important;
    padding: 0 7px !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.10) !important;
  }

  .site-header .brand img,
  body .site-header .brand img {
    height: 27px !important;
    max-width: 88px !important;
  }

  .site-header .desktop-nav,
  body .site-header .desktop-nav,
  header .desktop-nav,
  .desktop-nav {
    gap: 6px !important;
    justify-content: flex-end !important;
  }

  .site-header .desktop-nav a,
  body .site-header .desktop-nav a,
  header .desktop-nav a,
  .desktop-nav a {
    min-height: 38px !important;
    padding: 0 10px !important;
    font-size: 0.86rem !important;
    font-weight: 850 !important;
    color: #eef6ff !important;
    background: rgba(255, 255, 255, 0.11) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: none !important;
  }

  .site-header .desktop-nav a:hover,
  .site-header .desktop-nav a:focus {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.17) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
  }

  .site-header .desktop-nav a.nav-cta,
  body .site-header .desktop-nav a.nav-cta,
  .desktop-nav a.nav-cta {
    min-height: 38px !important;
    padding: 0 12px !important;
    background: #ffffff !important;
    color: #0b4ecf !important;
    border-color: rgba(255, 255, 255, 0.92) !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.14) !important;
  }

  #prototype,
  section[id],
  [id] {
    scroll-margin-top: 74px !important;
  }

  /* 모바일 첫 화면: 너무 높지 않게, 아래 콘텐츠가 보이도록 */
  #top.hero,
  body #top.hero,
  .hero {
    min-height: 420px !important;
    overflow: hidden !important;
  }

  #top.hero .hero-slider,
  body #top.hero .hero-slider,
  .hero-slider {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    z-index: 0 !important;
  }

  #top.hero .hero-track,
  body #top.hero .hero-track,
  .hero-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 400% !important;
    height: 100% !important;
    animation: mcaitMobileHeroSlideV30 22s infinite ease-in-out !important;
    transform: translate3d(0, 0, 0);
    will-change: transform;
  }

  #top.hero .hero-slide,
  body #top.hero .hero-slide,
  .hero-slide {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 25% !important;
    width: 25% !important;
    height: 100% !important;
    min-height: 100% !important;
    overflow: hidden !important;
  }

  #top.hero .hero-slide img,
  body #top.hero .hero-slide img,
  .hero-slide img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    filter: saturate(0.90) contrast(1.03) brightness(0.74) !important;
  }

  #top.hero .hero-content,
  body #top.hero .hero-content,
  .hero-content {
    padding-top: 52px !important;
    padding-bottom: 36px !important;
  }

  #top.hero .slide-caption,
  body #top.hero .slide-caption,
  .slide-caption {
    display: none !important;
  }
}

@media screen and (max-width: 390px) {
  html {
    scroll-padding-top: 70px !important;
  }

  body {
    padding-top: 60px !important;
  }

  .site-header .nav,
  body .site-header .nav,
  header .nav {
    min-height: 60px !important;
    padding: 7px 7px !important;
    gap: 5px !important;
  }

  .site-header .brand,
  body .site-header .brand {
    min-height: 39px !important;
    padding: 0 6px !important;
    border-radius: 13px !important;
  }

  .site-header .brand img,
  body .site-header .brand img {
    height: 24px !important;
    max-width: 74px !important;
  }

  .site-header .desktop-nav,
  body .site-header .desktop-nav,
  .desktop-nav {
    gap: 4px !important;
  }

  .site-header .desktop-nav a,
  body .site-header .desktop-nav a,
  .desktop-nav a {
    min-height: 35px !important;
    padding: 0 8px !important;
    font-size: 0.80rem !important;
  }

  .site-header .desktop-nav a.nav-cta,
  body .site-header .desktop-nav a.nav-cta,
  .desktop-nav a.nav-cta {
    padding: 0 9px !important;
  }

  #prototype,
  section[id],
  [id] {
    scroll-margin-top: 70px !important;
  }

  #top.hero,
  body #top.hero,
  .hero {
    min-height: 390px !important;
  }
}

/* 오른쪽에서 왼쪽으로 이동하는 모바일 슬라이드 */
@keyframes mcaitMobileHeroSlideV30 {
  0%, 18% {
    transform: translate3d(0, 0, 0);
  }
  25%, 43% {
    transform: translate3d(-25%, 0, 0);
  }
  50%, 68% {
    transform: translate3d(-50%, 0, 0);
  }
  75%, 93% {
    transform: translate3d(-75%, 0, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  #top.hero .hero-track,
  body #top.hero .hero-track,
  .hero-track {
    animation: none !important;
  }
}

/* =========================================================
   MCAIT PC MENU UNIFIED v31
   PC 전용 최종 보정: 모든 페이지에서 메뉴 구조/크기/폰트/디자인을 강제 통일
   모바일 규칙은 v30 상태를 유지하고, 여기서는 PC만 보정함
   ========================================================= */

@media screen and (min-width: 769px) {
  html {
    scroll-padding-top: 96px !important;
  }

  body {
    padding-top: 82px !important;
  }

  .site-header,
  body .site-header,
  header.site-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 2147483000 !important;
    transform: none !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: rgba(255, 255, 255, 0.97) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    backdrop-filter: blur(14px) !important;
    border-bottom: 1px solid rgba(12, 55, 118, 0.10) !important;
    box-shadow: 0 10px 26px rgba(7, 26, 58, 0.10) !important;
  }

  .site-header .nav,
  body .site-header .nav,
  header .nav {
    width: min(1180px, calc(100% - 40px)) !important;
    max-width: 1180px !important;
    min-height: 82px !important;
    margin: 0 auto !important;
    padding: 10px 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    box-sizing: border-box !important;
  }

  .site-header .brand,
  body .site-header .brand {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    text-decoration: none !important;
  }

  .site-header .brand img,
  body .site-header .brand img {
    display: block !important;
    width: auto !important;
    height: 42px !important;
    max-width: 190px !important;
  }

  .site-header .desktop-nav,
  body .site-header .desktop-nav,
  header .desktop-nav,
  .desktop-nav {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .site-header .desktop-nav::-webkit-scrollbar,
  .desktop-nav::-webkit-scrollbar {
    display: none !important;
  }

  /* 구버전 HTML이 서버에 일부 남아 있어도 PC에서는 일반 '문의'를 숨기고 상담하기 하나만 보이게 함 */
  .site-header .desktop-nav a[href="contact.html"]:not(.nav-cta),
  body .site-header .desktop-nav a[href="contact.html"]:not(.nav-cta),
  .desktop-nav a[href="contact.html"]:not(.nav-cta) {
    display: none !important;
  }

  .site-header .desktop-nav a,
  body .site-header .desktop-nav a,
  header .desktop-nav a,
  .desktop-nav a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 15px !important;
    border-radius: 999px !important;
    color: #243044 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 0.98rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    letter-spacing: -0.035em !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .site-header .desktop-nav a:hover,
  .site-header .desktop-nav a:focus {
    color: #0b4ecf !important;
    background: rgba(11, 78, 207, 0.07) !important;
    border-color: rgba(11, 78, 207, 0.10) !important;
  }

  .site-header .desktop-nav a.nav-cta,
  body .site-header .desktop-nav a.nav-cta,
  .desktop-nav a.nav-cta {
    display: inline-flex !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 18px !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #0b7cff 0%, #06b6d4 100%) !important;
    border-color: transparent !important;
    box-shadow: 0 10px 22px rgba(0, 116, 255, 0.20) !important;
  }

  .site-header .desktop-nav a.nav-cta:hover,
  .site-header .desktop-nav a.nav-cta:focus {
    color: #ffffff !important;
    background: linear-gradient(135deg, #086be0 0%, #059ebb 100%) !important;
  }

  .menu-toggle,
  body .menu-toggle,
  #mobileMenu,
  body #mobileMenu,
  .mobile-nav,
  body .mobile-nav,
  #mcaitQuickContact,
  body #mcaitQuickContact,
  .mcait-quick-contact,
  body .mcait-quick-contact {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  #prototype,
  body #prototype,
  section[id],
  body section[id],
  [id] {
    scroll-margin-top: 96px !important;
  }
}

/* =========================================================
   MCAIT PC HEADER + HERO STABILITY v32
   PC 전용 보정
   - 메뉴가 클릭/페이지 이동 때 좌우로 미세하게 흔들리는 현상 보정
   - PC 첫 화면 슬라이딩 배너 높이 축소
   - 모바일 규칙은 v31 상태 유지
   ========================================================= */

@media screen and (min-width: 769px) {
  /* 페이지마다 스크롤바 유무가 달라져 중앙 정렬 메뉴가 움직이는 현상 방지 */
  html {
    overflow-y: scroll !important;
    scrollbar-gutter: stable !important;
    scroll-padding-top: 92px !important;
  }

  body {
    padding-top: 82px !important;
    overflow-x: hidden !important;
  }

  .site-header,
  body .site-header,
  header.site-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    z-index: 2147483000 !important;
    transform: translateZ(0) !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: rgba(255, 255, 255, 0.97) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    backdrop-filter: blur(14px) !important;
    border-bottom: 1px solid rgba(12, 55, 118, 0.10) !important;
    box-shadow: 0 10px 26px rgba(7, 26, 58, 0.10) !important;
  }

  .site-header .nav,
  body .site-header .nav,
  header .nav {
    width: 1180px !important;
    max-width: calc(100vw - 40px) !important;
    min-height: 82px !important;
    height: 82px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 10px 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    box-sizing: border-box !important;
  }

  /* 로고 로딩 전후 폭 차이로 메뉴가 밀리는 현상 방지 */
  .site-header .brand,
  body .site-header .brand {
    flex: 0 0 190px !important;
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-decoration: none !important;
  }

  .site-header .brand img,
  body .site-header .brand img {
    display: block !important;
    width: auto !important;
    height: 42px !important;
    max-width: 190px !important;
    object-fit: contain !important;
  }

  .site-header .desktop-nav,
  body .site-header .desktop-nav,
  header .desktop-nav,
  .desktop-nav {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    scrollbar-width: none !important;
  }

  .site-header .desktop-nav::-webkit-scrollbar,
  .desktop-nav::-webkit-scrollbar {
    display: none !important;
  }

  /* 서버에 구버전 HTML 일부가 남아 있어도 PC에서는 일반 문의 링크 숨김 */
  .site-header .desktop-nav a[href="contact.html"]:not(.nav-cta),
  body .site-header .desktop-nav a[href="contact.html"]:not(.nav-cta),
  .desktop-nav a[href="contact.html"]:not(.nav-cta) {
    display: none !important;
  }

  .site-header .desktop-nav a,
  body .site-header .desktop-nav a,
  header .desktop-nav a,
  .desktop-nav a,
  .site-header .desktop-nav a:link,
  .site-header .desktop-nav a:visited,
  .site-header .desktop-nav a:hover,
  .site-header .desktop-nav a:active,
  .site-header .desktop-nav a:focus {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 15px !important;
    box-sizing: border-box !important;
    border-radius: 999px !important;
    color: #243044 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 0.98rem !important;
    font-weight: 850 !important;
    line-height: 42px !important;
    letter-spacing: -0.035em !important;
    box-shadow: none !important;
    transform: none !important;
    transition: background-color .16s ease, color .16s ease, border-color .16s ease !important;
  }

  .site-header .desktop-nav a:hover,
  .site-header .desktop-nav a:focus {
    color: #0b4ecf !important;
    background: rgba(11, 78, 207, 0.07) !important;
    border-color: rgba(11, 78, 207, 0.10) !important;
  }

  .site-header .desktop-nav a.nav-cta,
  body .site-header .desktop-nav a.nav-cta,
  .desktop-nav a.nav-cta,
  .site-header .desktop-nav a.nav-cta:link,
  .site-header .desktop-nav a.nav-cta:visited,
  .site-header .desktop-nav a.nav-cta:hover,
  .site-header .desktop-nav a.nav-cta:active,
  .site-header .desktop-nav a.nav-cta:focus {
    display: inline-flex !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 18px !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #0b7cff 0%, #06b6d4 100%) !important;
    border: 1px solid transparent !important;
    box-shadow: 0 10px 22px rgba(0, 116, 255, 0.20) !important;
    transform: none !important;
  }

  .site-header .desktop-nav a.nav-cta:hover,
  .site-header .desktop-nav a.nav-cta:focus {
    background: linear-gradient(135deg, #086be0 0%, #059ebb 100%) !important;
  }

  .menu-toggle,
  body .menu-toggle,
  #mobileMenu,
  body #mobileMenu,
  .mobile-nav,
  body .mobile-nav,
  #mcaitQuickContact,
  body #mcaitQuickContact,
  .mcait-quick-contact,
  body .mcait-quick-contact {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  #prototype,
  body #prototype,
  section[id],
  body section[id],
  [id] {
    scroll-margin-top: 92px !important;
  }

  /* PC 첫 화면 슬라이딩 배너 높이 축소: 아래쪽 콘텐츠가 보이도록 */
  body #top.hero,
  #top.hero.hero,
  .hero {
    min-height: 620px !important;
    height: calc(100vh - 82px) !important;
    max-height: 680px !important;
    overflow: hidden !important;
  }

  body #top.hero .hero-slider,
  #top.hero .hero-slider,
  .hero-slider {
    height: 100% !important;
  }

  body #top.hero .hero-content,
  #top.hero .hero-content,
  .hero-content {
    padding-top: 72px !important;
    padding-bottom: 58px !important;
  }

  body #top.hero .hero-content h1,
  #top.hero .hero-content h1,
  .hero-content h1 {
    font-size: clamp(3.15rem, 5.4vw, 5.65rem) !important;
    line-height: 1.04 !important;
  }

  body #top.hero .hero-content p,
  #top.hero .hero-content p,
  .hero-content p {
    max-width: 760px !important;
  }
}

/* 노트북처럼 세로 높이가 낮은 PC 화면에서는 더 낮춤 */
@media screen and (min-width: 769px) and (max-height: 820px) {
  body #top.hero,
  #top.hero.hero,
  .hero {
    min-height: 560px !important;
    height: calc(100vh - 82px) !important;
    max-height: 600px !important;
  }

  body #top.hero .hero-content,
  #top.hero .hero-content,
  .hero-content {
    padding-top: 56px !important;
    padding-bottom: 44px !important;
  }

  body #top.hero .hero-content h1,
  #top.hero .hero-content h1,
  .hero-content h1 {
    font-size: clamp(2.85rem, 4.9vw, 4.9rem) !important;
  }
}

/* =========================================================
   MCAIT CONTENT + DESIGN REFINEMENT v33
   반영 범위: 1~5 우선순위
   1. 메뉴 통일 유지
   2. 첫 화면 배너 높이 조정
   3. 제작 예시 대표 6개 정리
   4. 서비스 패키지 구체화
   5. 상담 페이지 단순화
   ========================================================= */

/* PC hero를 조금 더 낮춰 아래 콘텐츠가 보이도록 최종 보정 */
@media screen and (min-width: 769px) {
  body #top.hero,
  #top.hero.hero,
  .hero {
    min-height: 540px !important;
    height: calc(100vh - 82px) !important;
    max-height: 620px !important;
  }

  body #top.hero .hero-content,
  #top.hero .hero-content,
  .hero-content {
    padding-top: 56px !important;
    padding-bottom: 44px !important;
  }

  body #top.hero .hero-content h1,
  #top.hero .hero-content h1,
  .hero-content h1 {
    font-size: clamp(2.9rem, 4.9vw, 5rem) !important;
  }
}

@media screen and (min-width: 769px) and (max-height: 820px) {
  body #top.hero,
  #top.hero.hero,
  .hero {
    min-height: 500px !important;
    max-height: 560px !important;
  }

  body #top.hero .hero-content,
  #top.hero .hero-content,
  .hero-content {
    padding-top: 44px !important;
    padding-bottom: 36px !important;
  }
}

/* 서비스 패키지 카드 */
.mcait-v33-package-grid,
.mcait-v33-service-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.mcait-v33-package-card,
.mcait-v33-service-grid article {
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
  box-shadow: 0 16px 34px rgba(7, 26, 58, 0.07) !important;
  padding: 24px !important;
}

.mcait-v33-package-card h3,
.mcait-v33-service-grid article h3 {
  margin-top: 10px !important;
  margin-bottom: 12px !important;
  color: #071a3a !important;
  letter-spacing: -0.04em !important;
}

.mcait-v33-package-card p,
.mcait-v33-service-grid article p {
  color: #475569 !important;
  line-height: 1.68 !important;
}

.mcait-v33-package-card ul,
.mcait-v33-service-grid article ul {
  margin: 16px 0 0 !important;
  padding-left: 18px !important;
  color: #334155 !important;
  line-height: 1.7 !important;
}

/* 대표 제작 예시 */
.mcait-v33-examples .section-head {
  max-width: 860px !important;
}

.mcait-v33-example-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

.mcait-v33-example-card {
  border-radius: 24px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
  box-shadow: 0 18px 38px rgba(7, 26, 58, 0.08) !important;
}

.mcait-v33-example-card img {
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
}

.mcait-v33-example-card .prototype-mini-text {
  padding: 20px !important;
}

.mcait-v33-example-card .prototype-title-btn {
  text-align: left !important;
  line-height: 1.28 !important;
  letter-spacing: -0.045em !important;
}

.mcait-v33-more-examples {
  margin-top: 28px !important;
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
  border-radius: 22px !important;
  background: #f8fbff !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.mcait-v33-more-examples summary {
  cursor: pointer !important;
  padding: 18px 22px !important;
  font-weight: 850 !important;
  color: #0b4ecf !important;
  list-style: none !important;
}

.mcait-v33-more-examples summary::-webkit-details-marker {
  display: none !important;
}

.mcait-v33-more-examples summary::after {
  content: "＋" !important;
  float: right !important;
}

.mcait-v33-more-examples[open] summary::after {
  content: "－" !important;
}

.mcait-v33-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  padding: 0 22px 22px !important;
}

.mcait-v33-more-grid span {
  display: block !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #334155 !important;
  font-weight: 750 !important;
  font-size: 0.92rem !important;
}

/* contact 단순화 */
.mcait-v33-contact-layout {
  align-items: start !important;
}

.mcait-v33-contact-card {
  position: sticky !important;
  top: 112px !important;
}

.mcait-v33-contact-card h3 {
  margin-top: 22px !important;
  color: #071a3a !important;
  letter-spacing: -0.04em !important;
}

.mcait-v33-contact-phone {
  margin-top: 22px !important;
  padding: 18px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, rgba(11, 124, 255, 0.09), rgba(6, 182, 212, 0.10)) !important;
}

.mcait-v33-contact-phone strong,
.mcait-v33-contact-phone span {
  display: block !important;
}

.mcait-v33-contact-phone a {
  display: inline-block !important;
  margin: 8px 0 4px !important;
  color: #0b4ecf !important;
  font-size: 1.35rem !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.mcait-v33-steps {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.mcait-v33-steps li {
  padding: 24px !important;
  border-radius: 22px !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
  box-shadow: 0 14px 30px rgba(7, 26, 58, 0.06) !important;
}

.mcait-v33-steps strong,
.mcait-v33-steps span {
  display: block !important;
}

.mcait-v33-steps strong {
  color: #0b4ecf !important;
  margin-bottom: 8px !important;
}

.mcait-v33-steps span {
  color: #475569 !important;
  line-height: 1.6 !important;
}

@media screen and (max-width: 1024px) {
  .mcait-v33-package-grid,
  .mcait-v33-service-grid,
  .mcait-v33-example-grid,
  .mcait-v33-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 768px) {
  .mcait-v33-package-grid,
  .mcait-v33-service-grid,
  .mcait-v33-example-grid,
  .mcait-v33-more-grid,
  .mcait-v33-steps {
    grid-template-columns: 1fr !important;
  }

  .mcait-v33-contact-card {
    position: static !important;
  }

  .mcait-v33-package-card,
  .mcait-v33-service-grid article,
  .mcait-v33-steps li {
    padding: 20px !important;
  }
}

/* =========================================================
   MCAIT CONTACT DB FORM v34
   상담문의 DB 저장형 폼 보정
   ========================================================= */

.mcait-consent-box {
  margin: 18px 0 20px !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(15, 48, 122, 0.12) !important;
  border-radius: 16px !important;
  background: #f8fbff !important;
}

.mcait-consent-box label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  color: #334155 !important;
  font-size: 0.94rem !important;
  line-height: 1.55 !important;
  cursor: pointer !important;
}

.mcait-consent-box input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin-top: 3px !important;
  flex: 0 0 auto !important;
}

.mcait-hp-field {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.mcait-form-notice {
  margin-top: 14px !important;
  padding: 14px 16px !important;
  border-radius: 14px !important;
  background: rgba(11, 124, 255, 0.08) !important;
  color: #334155 !important;
  line-height: 1.58 !important;
  font-size: 0.94rem !important;
}

.mcait-result-page {
  min-height: 68vh !important;
  display: flex !important;
  align-items: center !important;
}

.mcait-result-card {
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: 44px !important;
  border-radius: 28px !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
  box-shadow: 0 20px 44px rgba(7, 26, 58, 0.10) !important;
  text-align: center !important;
}

.mcait-result-card h1 {
  margin: 12px 0 16px !important;
  color: #071a3a !important;
  font-size: clamp(2rem, 4vw, 3rem) !important;
  letter-spacing: -0.055em !important;
}

.mcait-result-card p {
  color: #475569 !important;
  line-height: 1.72 !important;
  font-size: 1.05rem !important;
}

.mcait-result-actions {
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 26px !important;
}

@media screen and (max-width: 768px) {
  .mcait-result-card {
    padding: 30px 22px !important;
    border-radius: 22px !important;
  }
}


/* v35: 상담문의 관리자 알림 이메일 기본값을 moonphd@kakao.com으로 반영 */


/* v37: 페이지별 SEO meta, Open Graph, Twitter Card, canonical, JSON-LD 반영 */


/* v38: Naver Search Advisor 콘텐츠 마크업 기준에 맞춘 title/description/OG/Twitter 보정 */


/* =========================================================
   MCAIT PRIVACY POLICY v39
   개인정보처리방침 표/상단 안내문 보정
   ========================================================= */

.legal-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 18px 0 30px !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  box-shadow: 0 0 0 1px rgba(15, 48, 122, 0.10) !important;
}

.legal-table th,
.legal-table td {
  padding: 16px 18px !important;
  border-bottom: 1px solid rgba(15, 48, 122, 0.10) !important;
  text-align: left !important;
  vertical-align: top !important;
  line-height: 1.65 !important;
}

.legal-table th {
  background: #f1f7ff !important;
  color: #071a3a !important;
  font-weight: 900 !important;
}

.legal-table td {
  color: #334155 !important;
  background: #ffffff !important;
}

.legal-table tr:last-child td {
  border-bottom: 0 !important;
}

.legal-updated {
  margin-top: 34px !important;
  padding: 16px 18px !important;
  border-radius: 16px !important;
  background: #f8fbff !important;
  color: #475569 !important;
  font-weight: 750 !important;
}

@media screen and (max-width: 768px) {
  .legal-table,
  .legal-table thead,
  .legal-table tbody,
  .legal-table tr,
  .legal-table th,
  .legal-table td {
    display: block !important;
    width: 100% !important;
  }

  .legal-table thead {
    display: none !important;
  }

  .legal-table tr {
    border-bottom: 1px solid rgba(15, 48, 122, 0.12) !important;
  }

  .legal-table td {
    border-bottom: 0 !important;
  }

  .legal-table td:nth-child(1)::before {
    content: "수집 항목";
    display: block;
    margin-bottom: 6px;
    color: #0b4ecf;
    font-weight: 900;
  }

  .legal-table td:nth-child(2)::before {
    content: "이용 목적";
    display: block;
    margin-bottom: 6px;
    color: #0b4ecf;
    font-weight: 900;
  }

  .legal-table td:nth-child(3)::before {
    content: "보유 기간";
    display: block;
    margin-bottom: 6px;
    color: #0b4ecf;
    font-weight: 900;
  }
}


/* =========================================================
   MCAIT MCF EXAMPLES v40
   제작예시 섹션: AI MCF 개념 설명 추가
   ========================================================= */

.mcait-mcf-section-head {
  max-width: 960px !important;
}

.mcait-mcf-section-head p {
  font-size: 1.05rem !important;
  line-height: 1.76 !important;
}

.mcait-mcf-section-head strong {
  color: #0b4ecf !important;
  font-weight: 900 !important;
}

.mcait-mcf-explainer {
  display: grid !important;
  grid-template-columns: 1.05fr 1.35fr !important;
  gap: 22px !important;
  align-items: stretch !important;
  margin: 0 0 28px !important;
  padding: 24px !important;
  border-radius: 28px !important;
  background: linear-gradient(135deg, rgba(11, 124, 255, 0.10), rgba(6, 182, 212, 0.10)) !important;
  border: 1px solid rgba(11, 124, 255, 0.16) !important;
  box-shadow: 0 18px 38px rgba(7, 26, 58, 0.07) !important;
}

.mcait-mcf-explainer-main {
  padding: 20px !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.72) !important;
}

.mcait-mcf-explainer-main h3 {
  margin: 10px 0 12px !important;
  color: #071a3a !important;
  font-size: clamp(1.45rem, 2.4vw, 2.05rem) !important;
  letter-spacing: -0.055em !important;
  line-height: 1.22 !important;
}

.mcait-mcf-explainer-main p {
  margin: 0 !important;
  color: #475569 !important;
  line-height: 1.72 !important;
}

.mcait-mcf-flow {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.mcait-mcf-flow li {
  padding: 18px !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
}

.mcait-mcf-flow strong,
.mcait-mcf-flow span {
  display: block !important;
}

.mcait-mcf-flow strong {
  margin-bottom: 7px !important;
  color: #0b4ecf !important;
  font-weight: 900 !important;
}

.mcait-mcf-flow span {
  color: #334155 !important;
  line-height: 1.55 !important;
  font-size: 0.95rem !important;
}

.mcait-mcf-note {
  margin: 24px 0 26px !important;
  padding: 20px 22px !important;
  border-radius: 22px !important;
  background: #071a3a !important;
  color: #ffffff !important;
  box-shadow: 0 18px 36px rgba(7, 26, 58, 0.14) !important;
}

.mcait-mcf-note strong {
  display: inline-flex !important;
  margin-bottom: 8px !important;
  color: #7dd3fc !important;
  font-weight: 900 !important;
}

.mcait-mcf-note p {
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  line-height: 1.7 !important;
}

.mcait-mcf-note b {
  color: #ffffff !important;
  font-weight: 900 !important;
}

@media screen and (max-width: 960px) {
  .mcait-mcf-explainer {
    grid-template-columns: 1fr !important;
  }
}

@media screen and (max-width: 640px) {
  .mcait-mcf-explainer {
    padding: 18px !important;
    border-radius: 22px !important;
  }

  .mcait-mcf-flow {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   MCAIT MCF PROTOTYPES v41
   더 많은 제작 예시: 제목 목록이 아니라 25개 프로토타입 갤러리로 확장
   ========================================================= */

.mcait-v41-full-prototypes {
  margin-top: 30px !important;
}

.mcait-v41-full-prototypes summary {
  font-size: 1.02rem !important;
}

.mcait-v41-prototype-intro {
  margin: 0 22px 20px !important;
  padding: 18px 20px !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
}

.mcait-v41-prototype-intro strong {
  display: block !important;
  margin-bottom: 8px !important;
  color: #0b4ecf !important;
  font-weight: 900 !important;
}

.mcait-v41-prototype-intro p {
  margin: 0 !important;
  color: #475569 !important;
  line-height: 1.7 !important;
}

.mcait-v41-more-prototype-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  padding: 0 22px 24px !important;
}

.mcait-v41-more-card {
  display: block !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 48, 122, 0.10) !important;
  box-shadow: 0 14px 30px rgba(7, 26, 58, 0.06) !important;
}

.mcait-v41-more-card img {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
}

.mcait-v41-more-card .prototype-mini-text {
  padding: 18px !important;
}

.mcait-v41-more-card .prototype-title-btn {
  text-align: left !important;
  line-height: 1.28 !important;
}

.mcait-v41-more-card p {
  color: #475569 !important;
  line-height: 1.62 !important;
}

@media screen and (max-width: 1024px) {
  .mcait-v41-more-prototype-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 640px) {
  .mcait-v41-more-prototype-grid {
    grid-template-columns: 1fr !important;
    padding: 0 14px 18px !important;
  }

  .mcait-v41-prototype-intro {
    margin-left: 14px !important;
    margin-right: 14px !important;
  }
}


/* =========================================================
   MCAIT AI MCF 100 DASHBOARD v42
   75개 추가 프로토타입 + 100개 템플릿 대시보드 미리보기
   ========================================================= */

.mcait-v42-dashboard-cta{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;margin:28px 0!important;padding:24px!important;border-radius:26px!important;background:linear-gradient(135deg,#071a3a 0%,#0b4ecf 100%)!important;color:#fff!important;box-shadow:0 20px 44px rgba(7,26,58,.18)!important}
.mcait-v42-dashboard-cta h3{margin:8px 0 10px!important;color:#fff!important;font-size:clamp(1.5rem,2.6vw,2.2rem)!important;letter-spacing:-.055em!important}
.mcait-v42-dashboard-cta p{margin:0!important;color:rgba(255,255,255,.86)!important;line-height:1.7!important}
.mcait-v42-dashboard-cta .mcait-card-label{background:rgba(255,255,255,.14)!important;color:#7dd3fc!important}
.mcait-v42-dashboard-page .page-hero h1{max-width:920px!important}
.mcait-v42-dashboard-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin-bottom:22px!important}
.mcait-v42-dashboard-summary article{padding:24px!important;border-radius:24px!important;background:#fff!important;border:1px solid rgba(15,48,122,.10)!important;box-shadow:0 14px 32px rgba(7,26,58,.07)!important;text-align:center!important}
.mcait-v42-dashboard-summary strong{display:block!important;color:#0b4ecf!important;font-size:clamp(2.2rem,4vw,3.4rem)!important;line-height:1!important;font-weight:950!important}
.mcait-v42-dashboard-summary span{display:block!important;margin-top:10px!important;color:#334155!important;font-weight:850!important}
.mcait-v42-flow{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:0 0 28px!important;padding:18px!important;border-radius:22px!important;background:#f8fbff!important;border:1px solid rgba(15,48,122,.10)!important}
.mcait-v42-flow span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:0 16px!important;border-radius:999px!important;background:#fff!important;color:#0b4ecf!important;font-weight:900!important;border:1px solid rgba(11,124,255,.14)!important}
.mcait-v42-category{margin:22px 0!important;border:1px solid rgba(15,48,122,.10)!important;border-radius:26px!important;background:#f8fbff!important;overflow:hidden!important}
.mcait-v42-category summary{cursor:pointer!important;padding:20px 24px!important;font-weight:950!important;color:#071a3a!important;font-size:1.14rem!important;list-style:none!important}
.mcait-v42-category summary::-webkit-details-marker{display:none!important}
.mcait-v42-category summary span{float:right!important;color:#0b4ecf!important;font-size:.92rem!important}
.mcait-v42-template-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;padding:0 22px 24px!important}
.mcait-v42-template-card{border-radius:24px!important;background:#fff!important;border:1px solid rgba(15,48,122,.10)!important;overflow:hidden!important;box-shadow:0 16px 34px rgba(7,26,58,.07)!important}
.mcait-v42-template-card img{display:block!important;width:100%!important;aspect-ratio:16/10!important;object-fit:cover!important;background:#eaf4ff!important}
.mcait-v42-template-body{padding:20px!important}
.mcait-v42-template-body h3{margin:10px 0!important;color:#071a3a!important;line-height:1.25!important;letter-spacing:-.045em!important}
.mcait-v42-template-body p{color:#475569!important;line-height:1.64!important}
.mcait-v42-template-body dl{margin:16px 0 0!important;display:grid!important;gap:10px!important}
.mcait-v42-template-body dl div{padding:12px!important;border-radius:14px!important;background:#f8fbff!important}
.mcait-v42-template-body dt{margin-bottom:5px!important;color:#0b4ecf!important;font-weight:900!important}
.mcait-v42-template-body dd{margin:0!important;color:#334155!important;line-height:1.55!important;font-size:.93rem!important}
@media screen and (max-width:1080px){.mcait-v42-template-grid,.mcait-v42-dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media screen and (max-width:720px){.mcait-v42-dashboard-cta{display:block!important}.mcait-v42-dashboard-cta .btn{margin-top:18px!important}.mcait-v42-template-grid,.mcait-v42-dashboard-summary{grid-template-columns:1fr!important}.mcait-v42-category summary span{float:none!important;display:block!important;margin-top:6px!important}}



/* =========================================================
   MCAIT v48 unified nav + compact hero + accessibility
   ========================================================= */
:root {
  --mcait-header-height: 76px;
}

.site-header {
  min-height: var(--mcait-header-height);
}

.desktop-nav {
  align-items: center;
}

.desktop-nav a {
  white-space: nowrap;
}

.desktop-nav a:focus-visible,
.nav-cta:focus-visible,
.btn-primary:focus-visible,
.btn-secondary:focus-visible,
.category-link:focus-visible,
.page-nav a:focus-visible {
  outline: 3px solid #ffbf47 !important;
  outline-offset: 3px !important;
}

.mcait-v48-compact-hero,
.hero.mcait-v48-compact-hero {
  padding: 42px 0 34px !important;
  min-height: auto !important;
}

.mcait-v48-compact-hero h1 {
  font-size: clamp(1.9rem, 3.4vw, 3rem) !important;
  line-height: 1.08 !important;
  margin-bottom: 12px !important;
}

.mcait-v48-compact-hero p {
  max-width: 900px !important;
  font-size: 1rem !important;
  line-height: 1.65 !important;
  margin-bottom: 0 !important;
}

.mcait-v48-compact-hero .badge,
.mcait-v48-compact-hero .mcait-sub-hero-badge,
.mcait-v48-compact-hero .kicker {
  margin-bottom: 10px !important;
}

.mcait-v48-first-section,
.section.mcait-v48-first-section {
  padding-top: 32px !important;
}

.mcait-v48-category-list {
  margin-top: 6px !important;
}

@media (max-width: 1024px) {
  .desktop-nav {
    gap: 12px !important;
    font-size: .92rem !important;
  }
}

@media (max-width: 760px) {
  .site-header .nav {
    min-height: auto !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    align-items: flex-start !important;
  }

  .desktop-nav {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    font-size: .88rem !important;
    line-height: 1.2 !important;
  }

  .desktop-nav a {
    padding: 8px 9px !important;
  }

  .nav-cta {
    padding: 8px 10px !important;
  }

  .mcait-v48-compact-hero,
  .hero.mcait-v48-compact-hero {
    padding: 34px 0 28px !important;
  }

  .mcait-v48-first-section,
  .section.mcait-v48-first-section {
    padding-top: 26px !important;
  }
}



/* MCAIT v49 stable menu visual hero */
:root{--mcait-header-h:76px;}
  .mcait-v49-site-header{position:sticky!important;top:0!important;z-index:1000!important;background:#fff!important;border-bottom:1px solid rgba(15,48,122,.12)!important;min-height:var(--mcait-header-h)!important;}
  .mcait-v49-header-inner{height:var(--mcait-header-h)!important;min-height:var(--mcait-header-h)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;box-sizing:border-box!important;}
  .mcait-v49-brand{display:flex!important;align-items:center!important;flex:0 0 190px!important;width:190px!important;height:var(--mcait-header-h)!important;text-decoration:none!important;}
  .mcait-v49-brand img{display:block!important;width:auto!important;max-width:176px!important;height:auto!important;max-height:48px!important;object-fit:contain!important;}
  .mcait-v49-main-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex:0 0 auto!important;margin:0!important;padding:0!important;height:var(--mcait-header-h)!important;white-space:nowrap!important;}
  .mcait-v49-main-nav a{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:40px!important;box-sizing:border-box!important;padding:0 8px!important;margin:0!important;border-radius:999px!important;text-decoration:none!important;color:#071a3a!important;background:transparent!important;font-family:Arial,'Noto Sans KR',sans-serif!important;font-size:15px!important;font-weight:800!important;line-height:1!important;letter-spacing:-.02em!important;white-space:nowrap!important;transform:none!important;transition:background-color .15s ease,color .15s ease!important;}
  .mcait-v49-main-nav a:nth-child(1){width:78px!important;}
  .mcait-v49-main-nav a:nth-child(2){width:62px!important;}
  .mcait-v49-main-nav a:nth-child(3){width:82px!important;}
  .mcait-v49-main-nav a:nth-child(4){width:92px!important;}
  .mcait-v49-main-nav a:nth-child(5){width:122px!important;}
  .mcait-v49-main-nav a:nth-child(6){width:84px!important;}
  .mcait-v49-main-nav a:hover,.mcait-v49-main-nav a[aria-current="page"]{color:#0b4ecf!important;background:#eaf4ff!important;font-size:15px!important;font-weight:800!important;transform:none!important;}
  .mcait-v49-main-nav .nav-cta{background:#0b7cff!important;color:#fff!important;font-size:15px!important;font-weight:800!important;box-shadow:none!important;}
  .mcait-v49-main-nav .nav-cta:hover,.mcait-v49-main-nav .nav-cta[aria-current="page"]{background:#075fd2!important;color:#fff!important;}
  .mcait-v49-main-nav a:focus-visible{outline:3px solid #ffbf47!important;outline-offset:3px!important;}
  .mcait-v49-image-hero{position:relative!important;min-height:230px!important;height:230px!important;display:flex!important;align-items:center!important;overflow:hidden!important;background:#071a3a!important;color:#fff!important;padding:0!important;}
  .mcait-v49-hero-media{position:absolute!important;inset:0!important;z-index:0!important;}
  .mcait-v49-hero-media img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
  .mcait-v49-hero-overlay{position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(7,26,58,.86),rgba(7,26,58,.42))!important;}
  .mcait-v49-hero-content{position:relative!important;z-index:2!important;padding:30px 0 26px!important;}
  .mcait-v49-hero-content .badge{display:inline-flex!important;align-items:center!important;min-height:28px!important;margin:0 8px 10px 0!important;padding:5px 11px!important;border-radius:999px!important;background:rgba(255,255,255,.15)!important;color:#bfdbfe!important;font-size:.88rem!important;font-weight:900!important;line-height:1!important;}
  .mcait-v49-hero-content h1{margin:0 0 10px!important;color:#fff!important;font-size:clamp(1.85rem,3vw,2.75rem)!important;line-height:1.08!important;letter-spacing:-.055em!important;}
  .mcait-v49-hero-content p{max-width:870px!important;margin:0!important;color:rgba(255,255,255,.88)!important;font-size:1rem!important;line-height:1.58!important;}
  .section.mcait-v49-first-section{padding-top:26px!important;}
  @media (max-width:1080px){
    .mcait-v49-brand{flex-basis:160px!important;width:160px!important;}
    .mcait-v49-brand img{max-width:150px!important;}
    .mcait-v49-main-nav{gap:4px!important;}
    .mcait-v49-main-nav a{font-size:13.5px!important;padding:0 5px!important;}
    .mcait-v49-main-nav a:hover,.mcait-v49-main-nav a[aria-current="page"]{font-size:13.5px!important;}
    .mcait-v49-main-nav a:nth-child(1){width:68px!important;}
    .mcait-v49-main-nav a:nth-child(2){width:54px!important;}
    .mcait-v49-main-nav a:nth-child(3){width:72px!important;}
    .mcait-v49-main-nav a:nth-child(4){width:82px!important;}
    .mcait-v49-main-nav a:nth-child(5){width:108px!important;}
    .mcait-v49-main-nav a:nth-child(6){width:74px!important;}
  }
  @media (max-width:820px){
    :root{--mcait-header-h:auto;}
    .mcait-v49-header-inner{height:auto!important;min-height:72px!important;padding:10px 0!important;align-items:flex-start!important;gap:10px!important;}
    .mcait-v49-brand{height:52px!important;flex:0 0 126px!important;width:126px!important;}
    .mcait-v49-brand img{max-width:122px!important;max-height:44px!important;}
    .mcait-v49-main-nav{height:auto!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:6px!important;white-space:normal!important;}
    .mcait-v49-main-nav a{width:auto!important;min-width:auto!important;height:34px!important;padding:0 9px!important;font-size:13px!important;}
    .mcait-v49-main-nav a:hover,.mcait-v49-main-nav a[aria-current="page"]{font-size:13px!important;}
    .mcait-v49-image-hero{height:210px!important;min-height:210px!important;}
    .mcait-v49-hero-content{padding:24px 0 22px!important;}
    .mcait-v49-hero-content h1{font-size:clamp(1.65rem,7vw,2.25rem)!important;}
    .mcait-v49-hero-content p{font-size:.94rem!important;line-height:1.5!important;}
  }


/* MCAIT v50 unified menu and equal sub hero */
:root{--mcait-header-h:76px;--mcait-sub-hero-h:360px;}
  .mcait-v50-site-header{position:sticky!important;top:0!important;z-index:1000!important;background:#fff!important;border-bottom:1px solid rgba(15,48,122,.12)!important;min-height:var(--mcait-header-h)!important;}
  .mcait-v50-header-inner{height:var(--mcait-header-h)!important;min-height:var(--mcait-header-h)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;box-sizing:border-box!important;}
  .mcait-v50-brand{display:flex!important;align-items:center!important;flex:0 0 190px!important;width:190px!important;height:var(--mcait-header-h)!important;text-decoration:none!important;}
  .mcait-v50-brand img{display:block!important;width:auto!important;max-width:176px!important;height:auto!important;max-height:48px!important;object-fit:contain!important;}
  .mcait-v50-main-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex:0 0 auto!important;margin:0!important;padding:0!important;height:var(--mcait-header-h)!important;white-space:nowrap!important;}
  .mcait-v50-main-nav a{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:40px!important;box-sizing:border-box!important;padding:0 8px!important;margin:0!important;border-radius:999px!important;text-decoration:none!important;color:#071a3a!important;background:transparent!important;font-family:Arial,'Noto Sans KR',sans-serif!important;font-size:15px!important;font-weight:800!important;line-height:1!important;letter-spacing:-.02em!important;white-space:nowrap!important;transform:none!important;transition:background-color .15s ease,color .15s ease!important;}
  .mcait-v50-main-nav a:nth-child(1){width:78px!important;}
  .mcait-v50-main-nav a:nth-child(2){width:62px!important;}
  .mcait-v50-main-nav a:nth-child(3){width:82px!important;}
  .mcait-v50-main-nav a:nth-child(4){width:92px!important;}
  .mcait-v50-main-nav a:nth-child(5){width:122px!important;}
  .mcait-v50-main-nav a:nth-child(6){width:84px!important;}
  .mcait-v50-main-nav a:hover{color:#0b4ecf!important;background:#eaf4ff!important;font-size:15px!important;font-weight:800!important;transform:none!important;}
  .mcait-v50-main-nav a[aria-current="page"]{color:#071a3a!important;background:transparent!important;font-size:15px!important;font-weight:800!important;transform:none!important;}
  .mcait-v50-main-nav .nav-cta{background:#0b7cff!important;color:#fff!important;font-size:15px!important;font-weight:800!important;box-shadow:none!important;}
  .mcait-v50-main-nav .nav-cta:hover{background:#075fd2!important;color:#fff!important;}
  .mcait-v50-main-nav .nav-cta[aria-current="page"]{background:#0b7cff!important;color:#fff!important;}
  .mcait-v50-main-nav a:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.category-link:focus-visible{outline:3px solid #ffbf47!important;outline-offset:3px!important;}

  .page-hero.mcait-sub-visual-hero{position:relative!important;height:var(--mcait-sub-hero-h)!important;min-height:var(--mcait-sub-hero-h)!important;display:flex!important;align-items:center!important;overflow:hidden!important;padding:0!important;background:#071a3a!important;color:#fff!important;}
  .page-hero.mcait-sub-visual-hero .mcait-sub-visual-media{position:absolute!important;inset:0!important;z-index:0!important;}
  .page-hero.mcait-sub-visual-hero .mcait-sub-visual-media img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
  .page-hero.mcait-sub-visual-hero .mcait-sub-visual-overlay{position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(7,26,58,.86),rgba(7,26,58,.42))!important;}
  .page-hero.mcait-sub-visual-hero .mcait-sub-visual-content{position:relative!important;z-index:2!important;padding:48px 0 42px!important;}
  .page-hero.mcait-sub-visual-hero .mcait-sub-hero-badge,
  .page-hero.mcait-sub-visual-hero .kicker{display:inline-flex!important;align-items:center!important;min-height:30px!important;margin:0 8px 12px 0!important;padding:6px 12px!important;border-radius:999px!important;background:rgba(255,255,255,.15)!important;color:#bfdbfe!important;font-size:.9rem!important;font-weight:900!important;line-height:1!important;}
  .page-hero.mcait-sub-visual-hero h1{margin:0 0 12px!important;color:#fff!important;font-size:clamp(2rem,3.9vw,3.45rem)!important;line-height:1.08!important;letter-spacing:-.06em!important;max-width:950px!important;}
  .page-hero.mcait-sub-visual-hero p{max-width:900px!important;margin:0!important;color:rgba(255,255,255,.88)!important;font-size:1.04rem!important;line-height:1.62!important;}
  .section.mcait-v50-first-section{padding-top:34px!important;}
  .download-box .notice,.download-box .internal-note,.mcait-public-hidden-note{display:none!important;}

  @media (max-width:1080px){
    .mcait-v50-brand{flex-basis:160px!important;width:160px!important;}
    .mcait-v50-brand img{max-width:150px!important;}
    .mcait-v50-main-nav{gap:4px!important;}
    .mcait-v50-main-nav a{font-size:13.5px!important;padding:0 5px!important;}
    .mcait-v50-main-nav a:hover,.mcait-v50-main-nav a[aria-current="page"]{font-size:13.5px!important;}
    .mcait-v50-main-nav a:nth-child(1){width:68px!important;}
    .mcait-v50-main-nav a:nth-child(2){width:54px!important;}
    .mcait-v50-main-nav a:nth-child(3){width:72px!important;}
    .mcait-v50-main-nav a:nth-child(4){width:82px!important;}
    .mcait-v50-main-nav a:nth-child(5){width:108px!important;}
    .mcait-v50-main-nav a:nth-child(6){width:74px!important;}
  }
  @media (max-width:820px){
    :root{--mcait-header-h:auto;--mcait-sub-hero-h:300px;}
    .mcait-v50-header-inner{height:auto!important;min-height:72px!important;padding:10px 0!important;align-items:flex-start!important;gap:10px!important;}
    .mcait-v50-brand{height:52px!important;flex:0 0 126px!important;width:126px!important;}
    .mcait-v50-brand img{max-width:122px!important;max-height:44px!important;}
    .mcait-v50-main-nav{height:auto!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:6px!important;white-space:normal!important;}
    .mcait-v50-main-nav a{width:auto!important;min-width:auto!important;height:34px!important;padding:0 9px!important;font-size:13px!important;}
    .mcait-v50-main-nav a:hover,.mcait-v50-main-nav a[aria-current="page"]{font-size:13px!important;}
    .page-hero.mcait-sub-visual-hero .mcait-sub-visual-content{padding:34px 0 30px!important;}
    .page-hero.mcait-sub-visual-hero h1{font-size:clamp(1.7rem,7vw,2.35rem)!important;}
    .page-hero.mcait-sub-visual-hero p{font-size:.94rem!important;line-height:1.5!important;}
  }


/* MCAIT v51 top margin unified */
/* MCAIT v51: 모든 페이지 상단 배너 위 여백 통일 */
  html, body {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body > .skip-link,
  .skip-link {
    position: absolute !important;
  }

  .mcait-v50-site-header,
  .site-header {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  main,
  main#main,
  .subpage {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  main > section:first-child,
  main#main > section:first-child,
  .mcait-v51-top-aligned-hero {
    margin-top: 0 !important;
  }

  .hero.mcait-v51-top-aligned-hero,
  .page-hero.mcait-v51-top-aligned-hero,
  .page-hero.mcait-sub-visual-hero.mcait-v51-top-aligned-hero {
    margin-top: 0 !important;
  }

  .mcait-v51-top-spacer-reset {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  @supports (position: sticky) {
    .mcait-v50-site-header,
    .site-header {
      top: 0 !important;
    }
  }


/* MCAIT v52 subpage banner spacing - index untouched */
/* MCAIT v52: 인덱스 제외, 나머지 메뉴 상단 배너 텍스트 위치 조정 */
  @media screen and (min-width: 769px) {
    .page-hero.mcait-sub-visual-hero {
      height: 430px !important;
      min-height: 430px !important;
    }

    .page-hero.mcait-sub-visual-hero .mcait-sub-visual-content {
      padding-top: 104px !important;
      padding-bottom: 52px !important;
      transform: none !important;
    }

    .page-hero.mcait-sub-visual-hero .mcait-sub-hero-badge,
    .page-hero.mcait-sub-visual-hero .kicker {
      margin-bottom: 14px !important;
    }

    .page-hero.mcait-sub-visual-hero h1 {
      margin-top: 0 !important;
      margin-bottom: 16px !important;
    }
  }

  @media screen and (min-width: 769px) and (max-height: 820px) {
    .page-hero.mcait-sub-visual-hero {
      height: 400px !important;
      min-height: 400px !important;
    }

    .page-hero.mcait-sub-visual-hero .mcait-sub-visual-content {
      padding-top: 88px !important;
      padding-bottom: 46px !important;
    }
  }

  @media (max-width: 820px) {
    .page-hero.mcait-sub-visual-hero {
      height: 350px !important;
      min-height: 350px !important;
    }

    .page-hero.mcait-sub-visual-hero .mcait-sub-visual-content {
      padding-top: 58px !important;
      padding-bottom: 38px !important;
    }
  }


/* MCAIT v53: subpage banner vertical balance */
/* MCAIT v53: 서브페이지 배너의 상하 파란 여백 균형 조정 (index 제외) */
  @media screen and (min-width: 769px) {
    .page-hero.mcait-sub-visual-hero {
      height: 460px !important;
      min-height: 460px !important;
    }

    .page-hero.mcait-sub-visual-hero .mcait-sub-visual-content {
      min-height: 100% !important;
      box-sizing: border-box !important;
      display: flex !important;
      flex-direction: column !important;
      justify-content: center !important;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
      transform: none !important;
    }

    .page-hero.mcait-sub-visual-hero .mcait-sub-hero-badge,
    .page-hero.mcait-sub-visual-hero .kicker {
      margin-bottom: 14px !important;
    }

    .page-hero.mcait-sub-visual-hero h1 {
      margin-top: 0 !important;
      margin-bottom: 16px !important;
    }
  }

  @media screen and (min-width: 769px) and (max-height: 820px) {
    .page-hero.mcait-sub-visual-hero {
      height: 430px !important;
      min-height: 430px !important;
    }
  }

  @media (max-width: 820px) {
    .page-hero.mcait-sub-visual-hero {
      height: 360px !important;
      min-height: 360px !important;
    }

    .page-hero.mcait-sub-visual-hero .mcait-sub-visual-content {
      min-height: 100% !important;
      box-sizing: border-box !important;
      display: flex !important;
      flex-direction: column !important;
      justify-content: center !important;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
    }
  }


/* MCAIT v55 mobile menu one line */
/* MCAIT v55: 모바일 상단 메뉴 한 줄 정렬 */
  .mcait-v55-mobile-label {
    display: none;
  }

  @media (max-width: 820px) {
    .mcait-v50-site-header,
    .site-header {
      min-height: 54px !important;
      height: 54px !important;
      overflow: hidden !important;
    }

    .mcait-v50-header-inner,
    .site-header .nav,
    body .site-header .nav,
    header .nav {
      width: min(100% - 16px, 1180px) !important;
      height: 54px !important;
      min-height: 54px !important;
      margin: 0 auto !important;
      padding: 0 !important;
      display: flex !important;
      flex-direction: row !important;
      flex-wrap: nowrap !important;
      align-items: center !important;
      justify-content: flex-start !important;
      gap: 8px !important;
      box-sizing: border-box !important;
    }

    .mcait-v50-brand,
    .site-header .brand,
    body .site-header .brand {
      flex: 0 0 64px !important;
      width: 64px !important;
      min-width: 64px !important;
      max-width: 64px !important;
      height: 54px !important;
      min-height: 54px !important;
      padding: 0 !important;
      margin: 0 !important;
      border-radius: 0 !important;
      background: transparent !important;
      box-shadow: none !important;
      border: 0 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
    }

    .mcait-v50-brand img,
    .site-header .brand img,
    body .site-header .brand img {
      width: 64px !important;
      max-width: 64px !important;
      height: auto !important;
      max-height: 34px !important;
      object-fit: contain !important;
      display: block !important;
    }

    .mcait-v50-main-nav,
    .desktop-nav,
    .site-header .desktop-nav {
      flex: 1 1 auto !important;
      min-width: 0 !important;
      height: 54px !important;
      margin: 0 !important;
      padding: 0 !important;
      display: flex !important;
      flex-direction: row !important;
      flex-wrap: nowrap !important;
      align-items: center !important;
      justify-content: flex-start !important;
      gap: 8px !important;
      white-space: nowrap !important;
      overflow-x: auto !important;
      overflow-y: hidden !important;
      -webkit-overflow-scrolling: touch !important;
      scrollbar-width: none !important;
    }

    .mcait-v50-main-nav::-webkit-scrollbar,
    .desktop-nav::-webkit-scrollbar {
      display: none !important;
    }

    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      flex: 0 0 auto !important;
      width: auto !important;
      min-width: 0 !important;
      height: 54px !important;
      min-height: 54px !important;
      padding: 0 !important;
      margin: 0 !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      border: 0 !important;
      border-radius: 0 !important;
      background: transparent !important;
      box-shadow: none !important;
      color: #071a3a !important;
      font-size: 12px !important;
      font-weight: 900 !important;
      line-height: 1 !important;
      letter-spacing: -0.045em !important;
      text-decoration: none !important;
      white-space: nowrap !important;
      transform: none !important;
    }

    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      color: #0b7cff !important;
      background: transparent !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a[aria-current="page"],
    .desktop-nav .nav-cta:hover,
    .desktop-nav .nav-cta[aria-current="page"] {
      background: transparent !important;
      color: #0b4ecf !important;
      font-size: 12px !important;
      font-weight: 900 !important;
      transform: none !important;
      box-shadow: none !important;
    }

    .mcait-v55-full-label {
      display: none !important;
    }

    .mcait-v55-mobile-label {
      display: inline !important;
    }
  }

  @media (max-width: 390px) {
    .mcait-v50-header-inner,
    .site-header .nav,
    body .site-header .nav,
    header .nav {
      width: min(100% - 12px, 1180px) !important;
      gap: 6px !important;
    }

    .mcait-v50-brand,
    .site-header .brand,
    body .site-header .brand {
      flex-basis: 58px !important;
      width: 58px !important;
      min-width: 58px !important;
      max-width: 58px !important;
    }

    .mcait-v50-brand img,
    .site-header .brand img,
    body .site-header .brand img {
      width: 58px !important;
      max-width: 58px !important;
      max-height: 31px !important;
    }

    .mcait-v50-main-nav,
    .desktop-nav,
    .site-header .desktop-nav {
      gap: 6px !important;
    }

    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      font-size: 11.5px !important;
      letter-spacing: -0.055em !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a[aria-current="page"] {
      font-size: 11.5px !important;
    }
  }


/* MCAIT v56 mobile white navigation */
/* MCAIT v56: 모바일 청색 배경에서 메뉴/로고 가독성 개선 */
  @media (max-width: 820px) {
    .mcait-v50-site-header,
    .site-header {
      background: linear-gradient(90deg, #071a3a 0%, #0b4ecf 100%) !important;
      border-bottom: 1px solid rgba(255,255,255,.18) !important;
    }

    .mcait-v50-brand img,
    .site-header .brand img,
    body .site-header .brand img {
      filter: brightness(0) invert(1) !important;
      opacity: .96 !important;
    }

    .mcait-v50-main-nav,
    .desktop-nav,
    .site-header .desktop-nav {
      gap: 7px !important;
    }

    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta,
    .site-header .desktop-nav a.nav-cta,
    body .site-header .desktop-nav a.nav-cta {
      color: #ffffff !important;
      background: transparent !important;
      border: 0 !important;
      box-shadow: none !important;
      text-shadow: 0 1px 2px rgba(0,0,0,.35) !important;
      font-size: 12px !important;
      font-weight: 900 !important;
      letter-spacing: -0.055em !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a:focus-visible,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a:focus-visible,
    .desktop-nav a[aria-current="page"],
    .desktop-nav .nav-cta:hover,
    .desktop-nav .nav-cta:focus-visible,
    .desktop-nav .nav-cta[aria-current="page"],
    .site-header .desktop-nav a.nav-cta:hover,
    .site-header .desktop-nav a.nav-cta:focus-visible,
    .site-header .desktop-nav a.nav-cta[aria-current="page"] {
      color: #ffffff !important;
      background: transparent !important;
      font-size: 12px !important;
      font-weight: 900 !important;
      transform: none !important;
      box-shadow: none !important;
    }

    .desktop-nav a:focus-visible,
    .mcait-v50-main-nav a:focus-visible {
      outline: 2px solid rgba(255,255,255,.88) !important;
      outline-offset: 2px !important;
      border-radius: 4px !important;
    }
  }

  @media (max-width: 390px) {
    .mcait-v50-main-nav,
    .desktop-nav,
    .site-header .desktop-nav {
      gap: 5px !important;
    }

    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      font-size: 11.2px !important;
      letter-spacing: -0.065em !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a[aria-current="page"] {
      font-size: 11.2px !important;
    }
  }


/* MCAIT v57 mobile menu separators and MCF summary clean */
/* MCAIT v57: 모바일 메뉴 구분선 + MCF 라이브러리 숫자 요약 제거 */
  @media (max-width: 820px) {
    .mcait-v50-main-nav,
    .desktop-nav,
    .site-header .desktop-nav {
      gap: 0 !important;
    }

    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      position: relative !important;
      padding: 0 6px !important;
      font-size: 12px !important;
      letter-spacing: -0.055em !important;
    }

    .mcait-v50-main-nav a:not(:last-child)::after,
    .desktop-nav a:not(:last-child)::after,
    .site-header .desktop-nav a:not(:last-child)::after {
      content: "│" !important;
      display: inline-block !important;
      margin-left: 10px !important;
      color: rgba(255,255,255,.68) !important;
      font-weight: 400 !important;
      text-shadow: none !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a[aria-current="page"],
    .desktop-nav .nav-cta:hover,
    .desktop-nav .nav-cta[aria-current="page"] {
      font-size: 12px !important;
      color: #ffffff !important;
      background: transparent !important;
    }
  }

  @media (max-width: 390px) {
    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      padding: 0 4px !important;
      font-size: 11.2px !important;
      letter-spacing: -0.065em !important;
    }

    .mcait-v50-main-nav a:not(:last-child)::after,
    .desktop-nav a:not(:last-child)::after,
    .site-header .desktop-nav a:not(:last-child)::after {
      margin-left: 7px !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a[aria-current="page"] {
      font-size: 11.2px !important;
    }
  }

  .mcait-v57-hide-summary,
  .summary-grid.mcait-v57-hide-summary {
    display: none !important;
  }


/* MCAIT v58 mobile menu spacing refine */
/* MCAIT v58: 모바일 로고-메뉴 간격 확보, 메뉴 간격 축소, 우측 정렬 보정 */
  @media (max-width: 820px) {
    .mcait-v50-header-inner,
    .site-header .nav,
    body .site-header .nav,
    header .nav {
      gap: 18px !important;
      justify-content: flex-start !important;
      padding-left: 10px !important;
      padding-right: 8px !important;
    }

    .mcait-v50-brand,
    .site-header .brand,
    body .site-header .brand {
      flex: 0 0 72px !important;
      width: 72px !important;
      min-width: 72px !important;
      max-width: 72px !important;
    }

    .mcait-v50-brand img,
    .site-header .brand img,
    body .site-header .brand img {
      width: 72px !important;
      max-width: 72px !important;
      max-height: 34px !important;
    }

    .mcait-v50-main-nav,
    .desktop-nav,
    .site-header .desktop-nav {
      flex: 1 1 auto !important;
      justify-content: flex-start !important;
      gap: 0 !important;
      overflow-x: auto !important;
      padding-left: 0 !important;
    }

    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      padding: 0 3px !important;
      font-size: 12px !important;
      letter-spacing: -0.055em !important;
    }

    .mcait-v50-main-nav a:not(:last-child)::after,
    .desktop-nav a:not(:last-child)::after,
    .site-header .desktop-nav a:not(:last-child)::after {
      content: "│" !important;
      margin-left: 6px !important;
      margin-right: 3px !important;
      color: rgba(255,255,255,.62) !important;
      font-weight: 400 !important;
      text-shadow: none !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a[aria-current="page"],
    .desktop-nav .nav-cta:hover,
    .desktop-nav .nav-cta[aria-current="page"] {
      font-size: 12px !important;
      color: #ffffff !important;
      background: transparent !important;
    }
  }

  @media (max-width: 390px) {
    .mcait-v50-header-inner,
    .site-header .nav,
    body .site-header .nav,
    header .nav {
      gap: 14px !important;
      padding-left: 8px !important;
      padding-right: 6px !important;
    }

    .mcait-v50-brand,
    .site-header .brand,
    body .site-header .brand {
      flex-basis: 64px !important;
      width: 64px !important;
      min-width: 64px !important;
      max-width: 64px !important;
    }

    .mcait-v50-brand img,
    .site-header .brand img,
    body .site-header .brand img {
      width: 64px !important;
      max-width: 64px !important;
      max-height: 31px !important;
    }

    .mcait-v50-main-nav a,
    .desktop-nav a,
    .site-header .desktop-nav a,
    body .site-header .desktop-nav a,
    .mcait-v50-main-nav .nav-cta,
    .desktop-nav .nav-cta {
      padding: 0 2px !important;
      font-size: 11px !important;
      letter-spacing: -0.07em !important;
    }

    .mcait-v50-main-nav a:not(:last-child)::after,
    .desktop-nav a:not(:last-child)::after,
    .site-header .desktop-nav a:not(:last-child)::after {
      margin-left: 5px !important;
      margin-right: 2px !important;
    }

    .mcait-v50-main-nav a:hover,
    .mcait-v50-main-nav a[aria-current="page"],
    .desktop-nav a:hover,
    .desktop-nav a[aria-current="page"] {
      font-size: 11px !important;
    }
  }


/* MCAIT v59 education menu and page */
@media (max-width: 820px) {
    .mcait-v50-header-inner,.site-header .nav,body .site-header .nav,header .nav{gap:9px!important;padding-left:7px!important;padding-right:5px!important;}
    .mcait-v50-brand,.site-header .brand,body .site-header .brand{flex:0 0 56px!important;width:56px!important;min-width:56px!important;max-width:56px!important;}
    .mcait-v50-brand img,.site-header .brand img,body .site-header .brand img{width:56px!important;max-width:56px!important;max-height:28px!important;}
    .mcait-v50-main-nav,.desktop-nav,.site-header .desktop-nav{flex:1 1 auto!important;justify-content:flex-start!important;gap:0!important;overflow-x:auto!important;overflow-y:hidden!important;padding-left:0!important;scrollbar-width:none!important;white-space:nowrap!important;}
    .mcait-v50-main-nav::-webkit-scrollbar,.desktop-nav::-webkit-scrollbar{display:none!important;}
    .mcait-v50-main-nav a,.desktop-nav a,.site-header .desktop-nav a,body .site-header .desktop-nav a,.mcait-v50-main-nav .nav-cta,.desktop-nav .nav-cta{padding:0 1px!important;font-size:10.2px!important;letter-spacing:-0.085em!important;color:#fff!important;background:transparent!important;box-shadow:none!important;border:0!important;white-space:nowrap!important;}
    .mcait-v50-main-nav a:not(:last-child)::after,.desktop-nav a:not(:last-child)::after,.site-header .desktop-nav a:not(:last-child)::after{content:"│"!important;display:inline-block!important;margin-left:3px!important;margin-right:1px!important;color:rgba(255,255,255,.58)!important;font-weight:400!important;text-shadow:none!important;}
    .mcait-v50-main-nav a:hover,.mcait-v50-main-nav a[aria-current="page"],.desktop-nav a:hover,.desktop-nav a[aria-current="page"],.desktop-nav .nav-cta:hover,.desktop-nav .nav-cta[aria-current="page"]{font-size:10.2px!important;color:#fff!important;background:transparent!important;transform:none!important;box-shadow:none!important;}
  }
  @media (max-width: 390px) {
    .mcait-v50-header-inner,.site-header .nav,body .site-header .nav,header .nav{gap:7px!important;padding-left:6px!important;padding-right:4px!important;}
    .mcait-v50-brand,.site-header .brand,body .site-header .brand{flex-basis:52px!important;width:52px!important;min-width:52px!important;max-width:52px!important;}
    .mcait-v50-brand img,.site-header .brand img,body .site-header .brand img{width:52px!important;max-width:52px!important;max-height:26px!important;}
    .mcait-v50-main-nav a,.desktop-nav a,.site-header .desktop-nav a,body .site-header .desktop-nav a,.mcait-v50-main-nav .nav-cta,.desktop-nav .nav-cta{font-size:9.8px!important;letter-spacing:-0.09em!important;}
    .mcait-v50-main-nav a:not(:last-child)::after,.desktop-nav a:not(:last-child)::after,.site-header .desktop-nav a:not(:last-child)::after{margin-left:2px!important;margin-right:1px!important;}
    .mcait-v50-main-nav a:hover,.mcait-v50-main-nav a[aria-current="page"],.desktop-nav a:hover,.desktop-nav a[aria-current="page"]{font-size:9.8px!important;}
  }
  .education-section{padding:76px 0}.education-intro{max-width:940px;margin:0 auto 42px;text-align:center}.education-intro .kicker{color:#0b7cff;font-size:.9rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.education-intro h2{margin:12px 0 16px;color:#071a3a;font-size:clamp(2rem,4vw,3.25rem);line-height:1.15;letter-spacing:-.06em}.education-intro p{color:#475569;font-size:1.06rem;line-height:1.78}.education-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.education-card{padding:28px;border-radius:28px;background:#fff;border:1px solid rgba(15,48,122,.1);box-shadow:0 18px 42px rgba(7,26,58,.08)}.education-card .icon{width:58px;height:58px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:18px;border-radius:20px;background:#eaf4ff;color:#0b7cff;font-size:1.6rem}.education-card h3{margin:0 0 12px;color:#071a3a;font-size:1.35rem;line-height:1.32;letter-spacing:-.045em}.education-card p,.education-card li{color:#475569;line-height:1.72}.education-card ul{margin:12px 0 0;padding-left:1.1em}.education-wide{margin-top:24px;padding:34px;border-radius:30px;background:linear-gradient(135deg,#071a3a,#0b4ecf);color:#fff}.education-wide h3{margin:0 0 12px;color:#fff;font-size:1.55rem;letter-spacing:-.045em}.education-wide p{max-width:920px;color:rgba(255,255,255,.86);line-height:1.75}.education-pill-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.education-pill-list span{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.13);color:#dbeafe;font-weight:850;font-size:.92rem}@media (max-width:980px){.education-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.education-section{padding:54px 0}.education-grid{grid-template-columns:1fr}.education-card{padding:24px;border-radius:24px}.education-wide{padding:26px}}


/* MCAIT v60 education expansion */
/* MCAIT v60: OA, AI, YouTube education expansion */
  @media (min-width: 981px) {
    .education-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
  }

  @media (max-width: 820px) {
    .education-intro h2 {
      font-size: clamp(1.75rem, 8vw, 2.35rem) !important;
    }

    .education-intro p {
      font-size: 1rem !important;
    }
  }


/* MCAIT v61: clean hero visuals + stable 상담 label */
.page-hero .mcait-sub-visual-media svg{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;}
.site-header .desktop-nav a.nav-cta .mcait-v55-full-label,
.site-header .desktop-nav a.nav-cta .mcait-v55-mobile-label,
.desktop-nav a.nav-cta .mcait-v55-full-label,
.desktop-nav a.nav-cta .mcait-v55-mobile-label{display:inline!important;}
@media (max-width: 820px){
  .site-header .desktop-nav a.nav-cta,
  .desktop-nav a.nav-cta{
    min-width:3.1em!important;
    text-align:center!important;
  }
}


/* MCAIT v62: PC 메뉴 글자 굵기/농도 통일 */
/* MCAIT v62: PC 메뉴 글자 굵기/농도 통일 */
  @media (min-width: 821px) {
    .site-header .desktop-nav,
    .desktop-nav,
    .mcait-v50-main-nav {
      align-items: center !important;
      gap: 18px !important;
    }

    .site-header .desktop-nav a,
    .desktop-nav a,
    .mcait-v50-main-nav a,
    .site-header .desktop-nav a:link,
    .site-header .desktop-nav a:visited,
    .site-header .desktop-nav a:hover,
    .site-header .desktop-nav a:active,
    .site-header .desktop-nav a:focus,
    .desktop-nav a[aria-current="page"] {
      color: #071a3a !important;
      opacity: 1 !important;
      filter: none !important;
      text-shadow: none !important;
      font-family: Arial, "Noto Sans KR", sans-serif !important;
      font-size: 16px !important;
      font-weight: 900 !important;
      line-height: 1 !important;
      letter-spacing: -0.025em !important;
      background: transparent !important;
      transform: none !important;
      box-shadow: none !important;
      -webkit-font-smoothing: antialiased !important;
      text-rendering: geometricPrecision !important;
    }

    .site-header .desktop-nav a .mcait-v55-full-label,
    .desktop-nav a .mcait-v55-full-label,
    .mcait-v50-main-nav a .mcait-v55-full-label {
      display: inline !important;
      color: inherit !important;
      opacity: 1 !important;
      font-size: inherit !important;
      font-weight: 900 !important;
      line-height: 1 !important;
      letter-spacing: inherit !important;
    }

    .site-header .desktop-nav a .mcait-v55-mobile-label,
    .desktop-nav a .mcait-v55-mobile-label,
    .mcait-v50-main-nav a .mcait-v55-mobile-label {
      display: none !important;
    }

    .site-header .desktop-nav a:hover,
    .desktop-nav a:hover,
    .mcait-v50-main-nav a:hover,
    .site-header .desktop-nav a[aria-current="page"],
    .desktop-nav a[aria-current="page"],
    .mcait-v50-main-nav a[aria-current="page"] {
      color: #071a3a !important;
      background: transparent !important;
      font-size: 16px !important;
      font-weight: 900 !important;
      opacity: 1 !important;
      transform: none !important;
    }

    .site-header .desktop-nav a.nav-cta,
    .desktop-nav a.nav-cta,
    .mcait-v50-main-nav a.nav-cta,
    .site-header .desktop-nav a.nav-cta:link,
    .site-header .desktop-nav a.nav-cta:visited,
    .site-header .desktop-nav a.nav-cta:hover,
    .site-header .desktop-nav a.nav-cta:active,
    .site-header .desktop-nav a.nav-cta:focus,
    .site-header .desktop-nav a.nav-cta[aria-current="page"] {
      color: #ffffff !important;
      background: #0b7cff !important;
      font-size: 16px !important;
      font-weight: 900 !important;
      opacity: 1 !important;
      box-shadow: none !important;
      text-shadow: none !important;
    }
  }

  @media (max-width: 820px) {
    .site-header .desktop-nav a .mcait-v55-full-label,
    .desktop-nav a .mcait-v55-full-label,
    .mcait-v50-main-nav a .mcait-v55-full-label {
      display: none !important;
    }

    .site-header .desktop-nav a .mcait-v55-mobile-label,
    .desktop-nav a .mcait-v55-mobile-label,
    .mcait-v50-main-nav a .mcait-v55-mobile-label {
      display: inline !important;
    }
  }

/* mcait-v62-pc-menu-font-unified */


/* MCAIT v64: 상담 메뉴 중복 표시 방지 */
/* MCAIT v64: 상담 메뉴 중복 표시 방지 */
  .site-header .desktop-nav a.nav-cta .mcait-v55-full-label,
  .desktop-nav a.nav-cta .mcait-v55-full-label,
  .mcait-v50-main-nav a.nav-cta .mcait-v55-full-label {
    display: inline !important;
  }

  .site-header .desktop-nav a.nav-cta .mcait-v55-mobile-label,
  .desktop-nav a.nav-cta .mcait-v55-mobile-label,
  .mcait-v50-main-nav a.nav-cta .mcait-v55-mobile-label {
    display: none !important;
  }

  @media (max-width: 820px) {
    .site-header .desktop-nav a.nav-cta .mcait-v55-full-label,
    .desktop-nav a.nav-cta .mcait-v55-full-label,
    .mcait-v50-main-nav a.nav-cta .mcait-v55-full-label {
      display: none !important;
    }

    .site-header .desktop-nav a.nav-cta .mcait-v55-mobile-label,
    .desktop-nav a.nav-cta .mcait-v55-mobile-label,
    .mcait-v50-main-nav a.nav-cta .mcait-v55-mobile-label {
      display: inline !important;
    }

    .site-header .desktop-nav a.nav-cta,
    .desktop-nav a.nav-cta,
    .mcait-v50-main-nav a.nav-cta {
      min-width: auto !important;
      width: auto !important;
      white-space: nowrap !important;
    }
  }


/* MCAIT v65: 상담 메뉴 중복 출력 최종 방지 */
/* MCAIT v65: 상담 메뉴 중복 출력 최종 방지 */
  .mcait-consult-fixed {
    position: relative !important;
  }

  .mcait-consult-fixed .mcait-sr-only,
  .mcait-consult-fixed .mcait-v55-full-label,
  .mcait-consult-fixed .mcait-v55-mobile-label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
    display: block !important;
  }

  .mcait-consult-fixed::before {
    content: "상담하기" !important;
    display: inline !important;
  }

  @media (max-width: 820px) {
    .mcait-consult-fixed::before {
      content: "상담" !important;
    }
  }


/* MCAIT v66: 상담하기 메뉴를 실제 텍스트 1개만 표시 */
/* MCAIT v66: 상담하기 메뉴를 실제 텍스트 1개만 표시 */
  .site-header .desktop-nav a.nav-cta::before,
  .site-header .desktop-nav a.nav-cta::after,
  .desktop-nav a.nav-cta::before,
  .desktop-nav a.nav-cta::after,
  .mcait-v50-main-nav a.nav-cta::before,
  .mcait-v50-main-nav a.nav-cta::after {
    content: none !important;
    display: none !important;
  }

  .site-header .desktop-nav a.nav-cta,
  .desktop-nav a.nav-cta,
  .mcait-v50-main-nav a.nav-cta {
    white-space: nowrap !important;
  }
