@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");

:root {
  --g-100: #f8fafd;
  --g-200: #eef0f4;
  --g-300: #e2e6ec;
  --g-400: #d4d9e0;
  --g-500: #c0c5ce;
  --g-600: #999ea5;
  --g-700: #5e616c;
  --g-800: #32373f;
  --g-900: #252a2e;
  --wh: #fff;
  --bl: #000;
  --primary: #eb100c;
  --transition: 0.25s ease;
  --border: var(--g-200);
  --accent: var(--primary);
  --font-base:
    "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont,
    system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo",
    "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji",
    "Segoe UI Symbol", sans-serif;

  /* Typography: 대제목 / 소제목 / 본문 / 세부 */
  --fs-hero: 64px;
  --fs-subtitle: 40px;
  --fs-subtitle-sm: 24px;
  --fs-body: 18px;
  --fs-detail: 16px;

  /* 레이아웃 */
  --header-h: 70px;
  --page-pt: 60px;
  --page-px: 80px;
  --page-pb: 200px;
  --hero-pt: calc(var(--header-h) + var(--page-pt));
}

html {
  background-color: var(--wh);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border: none;
  outline: none;
  box-shadow: none;
  font-family: var(--font-base);
  font-size: var(--fs-body);
  line-height: 1.3;
  color: var(--bl);
  text-decoration: none;
  list-style: none;
  word-break: keep-all;
  overflow-wrap: break-word;
  scrollbar-width: none;
  -ms-overflow-style: none;
  backface-visibility: hidden;
  letter-spacing: -0.5px;
}

a,
button {
  cursor: pointer;
  background: none;
  line-height: 1;
  display: flex;
  align-items: center;
}

button span {
  line-height: 1;
}

header nav .nav-list > li > a,
header nav .nav-list > li > .nav-item__row > a {
  display: inline-block;
}

p {
  font-weight: 400;
  color: var(--g-600);
  line-height: 1.5;
}

body {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--wh);
}

/* Loading overlay — shared across pages */
.loading-overlay {
  position: fixed;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  background-color: var(--primary);
  z-index: 9999;
  transform: translateY(0);
  transition: transform 0.4s cubic-bezier(0.2, 0.3, 0.7, 0.85);
}

.loading-overlay.hide {
  transform: translateY(-100%);
  pointer-events: none;
}

.loading-overlay.loading-overlay--done {
  display: none;
}

.loading-red {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.loading-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}

.loading-inner:nth-child(1) {
  padding-right: 240px;
}

.loading-inner:nth-child(2) {
  padding-left: 120px;
}

.loading-title {
  position: relative;
  color: var(--wh);
  font-size: 24px;
  font-weight: 500;
  text-transform: uppercase;
  white-space: nowrap;
  transform: translateY(140%);
  opacity: 0;
  animation: titleUp 1.4s cubic-bezier(0.87, 0, 0.13, 1);
}

@keyframes titleUp {
  10% {
    transform: translateY(160%);
    opacity: 0;
  }
  30%,
  50% {
    transform: translateY(0%);
    opacity: 1;
  }
  100% {
    transform: translateY(-160%);
    opacity: 1;
  }
}

main {
  width: 100%;
  /* padding-top: 70px; */
}

strong {
  font-weight: 600;
}

.font60 {
  font-size: var(--fs-hero);
}
.font40 {
  font-size: var(--fs-subtitle);
}
.font18 {
  font-size: var(--fs-body);
}
.font-detail {
  font-size: var(--fs-detail);
}
.b {
  font-weight: 600;
}
.gray5 {
  color: var(--g-500);
}
.gray6 {
  color: var(--g-600);
}
.bl {
  color: var(--bl);
}
.wh {
  color: var(--wh);
}
.wh-o {
  color: var(--wh);
  opacity: 0.7;
}

.pc-img {
  display: flex;
  width: 100%;
}

.mo-img {
  display: none;
}

/* PC에서만 표시: .mo-hide / 모바일에서만 표시: .pc-hide */
.pc-hide {
  display: none;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 70px;
  padding: 0 var(--page-px);
  display: flex;
  align-items: center;
  gap: 80px;
  background-color: var(--wh);
  border-bottom: 1px solid var(--g-200);
}

header .logo {
  display: flex;
  align-items: center;
  width: 200px;
  height: 100%;
}

header nav {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  font-size: var(--fs-detail);
  font-weight: 600;
}

header nav .nav-content {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

header nav ul {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 24px;
}

header nav .nav-list {
  justify-content: center;
}

header nav ul li {
  height: 100%;
  display: flex;
  align-items: center;
}

header nav .nav-list > li > a,
header nav .nav-list > li > .nav-item__row > a {
  padding: 0 8px;
}

header nav .lang-selector {
  width: 200px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-left: 80px;
  flex-shrink: 0;
  gap: 0;
}

header nav .lang-selector li:first-child::after {
  content: "|";
  margin: 0 8px;
  color: var(--g-200);
}

.hover-line {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--primary);
  transition:
    left 0.5s cubic-bezier(0.22, 1, 0.36, 1),
    width 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  z-index: 1000;
}

/* 시술 프로그램 GNB 메가 메뉴 (Figma header-open) */
header nav ul li.nav-item--has-mega {
  position: static;
  display: flex;
  align-items: center;
}

.nav-item__row {
  display: flex;
  align-items: center;
  height: 100%;
  gap: 2px;
}

.nav-mega-toggle {
  display: none;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: var(--bl);
}

.nav-mega-toggle::after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--transition);
  margin-top: -4px;
}

.nav-item--open .nav-mega-toggle::after {
  transform: rotate(-135deg);
  margin-top: 4px;
}

.nav-mega {
  position: fixed;
  left: 0;
  right: 0;
  top: 70px;
  z-index: 99;
  background: var(--wh);
  border-bottom: 1px solid var(--g-200);
  box-shadow: 0 12px 24px rgba(37, 42, 46, 0.06);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.2s ease,
    visibility 0.2s ease;
}

.nav-mega__inner {
  display: flex;
  align-items: flex-start;
  gap: 85px;
  padding: 20px var(--page-px) 40px;
  max-width: 100%;
}

.nav-mega__title {
  flex-shrink: 0;
  width: 200px;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.5px;
  text-transform: uppercase;
  color: var(--bl);
}

.nav-mega__title-line {
  display: block;
  flex-shrink: 0;
  width: 200px;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.5px;
  text-transform: uppercase;
  color: var(--bl);
}

.nav-mega__title-line--lower {
  text-transform: none;
  flex-shrink: 0;
  width: 200px;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.5px;
  text-transform: uppercase;
  color: var(--bl);
}

.nav-mega__body {
  display: flex;
  flex: 1 1 0;
  min-width: 0;
  align-items: flex-start;
  gap: 10px;
}

.nav-mega__col {
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1 1 0;
  min-width: 0;
  max-width: 220px;
}

.nav-mega__heading {
  font-size: var(--fs-body);
  font-weight: 700;
  color: var(--bl);
  line-height: 1.5;
  letter-spacing: -0.5px;
}

.nav-mega__list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}

.nav-mega__list li {
  height: auto;
  display: block;
}

.nav-mega__link {
  display: inline-block;
  font-size: var(--fs-body);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.5px;
  color: var(--g-600);
  padding: 0;
}

.nav-mega__link:hover,
.nav-mega__link:focus-visible {
  font-weight: 600;
  color: var(--primary);
}

.nav-mega__link--accent:hover,
.nav-mega__link--accent:focus-visible {
  color: var(--primary);
}

.nav-mega__visual {
  flex-shrink: 0;
  width: 420px;
  max-width: 36vw;
  height: 200px;
  overflow: hidden;
  background: var(--g-200);
}

.nav-mega__visual-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 메디컬 스킨케어 GNB 2-depth 서브메뉴 */
header nav ul li.nav-item--has-submenu {
  position: static;
  display: flex;
  align-items: center;
}

.nav-submenu {
  position: fixed;
  left: 0;
  right: 0;
  top: var(--header-h);
  z-index: 99;
  background: var(--g-100);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.2s ease,
    visibility 0.2s ease;
}

.nav-submenu__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 25px;
  height: 70px;
  padding: 0 var(--page-px);
}

.nav-submenu__link {
  position: relative;
  display: inline-block;
  font-size: var(--fs-detail);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.5px;
  color: var(--g-600);
  white-space: nowrap;
  padding: 0;
  transition: color 0.2s ease;
}

.nav-submenu__link:hover,
.nav-submenu__link:focus-visible {
  color: var(--primary);
}

.nav-submenu__link.is-active,
.nav-submenu__link[aria-current="page"] {
  color: var(--primary);
  font-weight: 600;
}

@media (min-width: 1025px) {
  .nav-item--has-submenu:hover .nav-submenu,
  .nav-item--has-submenu:focus-within .nav-submenu,
  .nav-item--has-submenu.is-hover-open .nav-submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  /* 카테고리 간 즉시 스왑 모드: 페이드 트랜지션 비활성 */
  body.nav-submenus-swap .nav-submenu {
    transition: none !important;
  }
}

@media (min-width: 1025px) {
  .nav-item--has-mega:hover .nav-mega,
  .nav-item--has-mega:focus-within .nav-mega {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .nav-mega__visual {
    position: relative;
  }

  .nav-mega__visual-img {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.2s ease;
  }

  .nav-mega__visual-img:nth-child(1) {
    opacity: 1;
    z-index: 1;
  }

  .nav-mega__col:nth-child(1):hover ~ .nav-mega__visual .nav-mega__visual-img {
    opacity: 0;
  }

  .nav-mega__col:nth-child(1):hover
    ~ .nav-mega__visual
    .nav-mega__visual-img:nth-child(1) {
    opacity: 1;
    z-index: 2;
  }

  .nav-mega__col:nth-child(2):hover ~ .nav-mega__visual .nav-mega__visual-img {
    opacity: 0;
  }

  .nav-mega__col:nth-child(2):hover
    ~ .nav-mega__visual
    .nav-mega__visual-img:nth-child(2) {
    opacity: 1;
    z-index: 2;
  }

  .nav-mega__col:nth-child(3):hover ~ .nav-mega__visual .nav-mega__visual-img {
    opacity: 0;
  }

  .nav-mega__col:nth-child(3):hover
    ~ .nav-mega__visual
    .nav-mega__visual-img:nth-child(3) {
    opacity: 1;
    z-index: 2;
  }

  .nav-mega__col:nth-child(4):hover ~ .nav-mega__visual .nav-mega__visual-img {
    opacity: 0;
  }

  .nav-mega__col:nth-child(4):hover
    ~ .nav-mega__visual
    .nav-mega__visual-img:nth-child(4) {
    opacity: 1;
    z-index: 2;
  }
}

header nav .nav-toggle {
  display: none;
  width: 32px;
  height: 32px;
}

header nav .nav-toggle__bar {
  display: block;
  width: 32px;
  height: 32px;
}

header nav .nav-toggle__bar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Footer */
.site-footer {
  background-color: var(--g-100);
  border-top: 1px solid var(--g-200);
  padding: 80px var(--page-px);
  flex-shrink: 0;
}

.site-footer__inner {
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  gap: 60px;
}

.site-footer__brand {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  gap: 0;
  min-height: 0;
}

.site-footer__brand-inner {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
}

.site-footer__brand-meta {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: flex-start;
  gap: 5px;
  max-width: 100%;
}

.site-footer__logo {
  width: 100%;
  max-width: 560px;
}

.site-footer__logo img {
  max-width: 560px;
  width: 100%;
  height: auto;
  display: block;
}

.site-footer__copyright {
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  color: var(--g-600);
  line-height: 1.5;
  letter-spacing: -0.5px;
  text-transform: uppercase;
}

.site-footer__biz {
  margin: 0;
}

.site-footer__biz-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 20px;
  row-gap: 10px;
}

.site-footer__biz-item {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
  font-size: 16px;
  line-height: 1.5;
  color: var(--g-600);
  letter-spacing: -0.5px;
}

/* 전역 `*`가 모든 요소에 18px·검정을 직접 지정해 span이 상속을 막음 → 라벨/값 명시 */
.site-footer__biz-label,
.site-footer__biz-value {
  font-size: 16px;
  font-family: var(--font-base);
  line-height: 1.5;
  color: var(--g-600);
  letter-spacing: -0.5px;
}

.site-footer__biz-label {
  font-weight: 600;
}

.site-footer__biz-value {
  font-weight: 400;
}

.site-footer__biz-divider {
  width: 1px;
  height: 14px;
  background-color: var(--g-600);
  opacity: 0.5;
  flex-shrink: 0;
}

.site-footer__contact {
  max-width: 740px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 60px;
}

.site-footer__contact-block h4 {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 40px;
  color: var(--g-600);
  text-transform: uppercase;
  letter-spacing: -0.5px;
}

.site-footer__contact-block dl {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.site-footer__contact-block dt {
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  color: var(--g-600);
  letter-spacing: -0.5px;
}

.site-footer__contact-block dd {
  font-size: 16px;
  margin-left: 0;
  color: var(--g-600);
  line-height: 1.5;
  letter-spacing: -0.5px;
}

.site-footer__sns {
  display: flex;
  gap: 15px;
}

.site-footer__sns button {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

.site-footer__sns img {
  width: 100%;
  height: 100%;
}

/* 뷰포트 기준 전역 FAB — 모든 페이지 공통 */
.floating-sns {
  position: fixed;
  inset: auto calc(40px + env(safe-area-inset-right))
    calc(60px + env(safe-area-inset-bottom)) auto;
  width: 60px;
  height: 60px;
  margin: 0;
  padding: 0;
  border-radius: 999px;
  background-color: var(--wh);
  box-shadow:
    0 4px 12px rgba(37, 42, 46, 0.12),
    0 2px 4px rgba(37, 42, 46, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 500;
  transition:
    box-shadow var(--transition),
    transform var(--transition);
}

.floating-sns:hover {
  box-shadow:
    0 8px 20px rgba(37, 42, 46, 0.14),
    0 3px 6px rgba(37, 42, 46, 0.08);
  transform: translateY(-2px);
}

.floating-sns:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 3px;
}

.floating-sns img {
  width: 32px;
  height: 32px;
}

@media (max-width: 1024px) {
  :root {
    --fs-hero: 32px;
    --fs-subtitle: 24px;
    --fs-subtitle-sm: 18px;
    --fs-body: 15px;
    --fs-detail: 14px;
    --header-h: 60px;
    --page-pt: 40px;
    --page-px: 20px;
    --page-pb: 80px;
  }

  header {
    height: 60px;
    padding: 0 var(--page-px);
    gap: 0px;
    display: flex;
    justify-content: space-between;
  }

  header .logo {
    max-width: 260px;
    width: 100%;
  }

  header .logo a {
    width: 100%;
  }

  header .logo a img {
    width: 100%;
  }

  header nav {
    justify-content: flex-end;
  }

  header nav .nav-toggle {
    display: inline-flex;
  }

  header nav .nav-content {
    display: none;
    position: fixed;
    top: 56px;
    left: 0;
    right: 0;
    height: calc(100vh - 56px);
    padding: 20px 16px 24px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 18px;
    overflow: auto;
    background: var(--wh);
    border-top: 1px solid var(--g-200);
    z-index: 200;
  }

  header.nav-open nav .nav-content {
    display: flex;
  }

  header nav .nav-content .nav-list {
    width: 100%;
    height: auto;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  header nav .nav-content .nav-list > li > a,
  header nav .nav-content .nav-list > li > .nav-item__row > a {
    padding: 10px 6px;
    font-size: var(--fs-subtitle-sm);
  }

  header nav ul li.nav-item--has-mega,
  header nav ul li.nav-item--has-submenu {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    height: auto;
  }

  .nav-item__row {
    width: 100%;
    justify-content: space-between;
    min-height: 44px;
  }

  .nav-item__row .nav-gnb-link {
    flex: 1;
  }

  .nav-mega-toggle {
    display: inline-flex;
  }

  .nav-mega {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    z-index: auto;
    box-shadow: none;
    border: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: none;
    display: none;
    width: 100%;
    padding: 0 6px 8px;
    margin-top: -4px;
  }

  .nav-item--open .nav-mega {
    display: block;
  }

  .nav-mega__inner {
    flex-direction: column;
    gap: 10px;
    padding: 0 0 12px;
  }

  .nav-mega__title {
    width: 100%;
    font-size: var(--fs-subtitle-sm);
  }

  .nav-mega__body {
    flex-direction: column;
    gap: 20px;
  }

  .nav-mega__col {
    max-width: none;
  }

  .nav-mega__visual {
    width: 100%;
    max-width: none;
    height: min(200px, 48vw);
  }

  .nav-mega__visual-img {
    position: static !important;
    opacity: 1 !important;
  }

  .nav-mega__visual-img:not(:first-of-type) {
    display: none !important;
  }

  /* 메디컬 스킨케어 서브메뉴 (모바일 아코디언) */
  .nav-submenu {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    z-index: auto;
    background: transparent;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: none;
    display: none;
    width: 100%;
    padding: 0;
    margin-top: -4px;
  }

  .nav-item--open .nav-submenu {
    display: block;
  }

  .nav-submenu__inner {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    height: 50px;
    gap: 20px;
    padding: 0 6px;
    -webkit-overflow-scrolling: touch;
  }

  .nav-submenu__link {
    padding: 0;
    flex-shrink: 0;
  }

  header nav .lang-selector {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    margin-left: 0;
    gap: 12px;
    padding-top: 6px;
  }

  header nav .lang-selector li:first-child::after {
    display: none;
    content: "";
  }

  .hover-line {
    display: none;
  }

  main {
    padding: 0;
  }

  .pc-img {
    display: none;
  }

  .mo-img {
    display: flex;
    width: 100%;
  }

  br.mo-hide {
    display: none;
  }

  .mo-hide {
    display: none;
  }

  .pc-hide {
    display: block;
  }

  .site-footer {
    padding: 48px var(--page-px);
  }

  .site-footer__inner {
    flex-direction: column;
    gap: 40px;
  }

  .site-footer__brand {
    justify-content: flex-start;
    gap: 32px;
  }

  .site-footer__logo {
    max-width: 280px;
  }

  .site-footer__logo img {
    max-width: 280px;
  }

  .site-footer__copyright {
    font-size: 16px;
  }

  .site-footer__biz-item {
    font-size: 16px;
  }

  .site-footer__biz-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }

  .site-footer__biz-divider {
    display: none;
  }

  .site-footer__contact {
    max-width: 100%;
    gap: 40px;
  }

  .site-footer__contact-block h4 {
    margin-bottom: 24px;
  }

  dt,
  dd {
    font-size: var(--fs-body);
  }

  .site-footer .site-footer__contact-block dt,
  .site-footer .site-footer__contact-block dd {
    font-size: 16px;
  }

  .floating-sns {
    inset: auto calc(20px + env(safe-area-inset-right))
      calc(10px + env(safe-area-inset-bottom)) auto;
    width: 54px;
    height: 54px;
  }

  .loading-overlay {
    padding: env(safe-area-inset-top, 0) env(safe-area-inset-right, 0)
      env(safe-area-inset-bottom, 0) env(safe-area-inset-left, 0);
    box-sizing: border-box;
  }

  .loading-red {
    padding: 0 clamp(16px, 5vw, 28px);
    justify-content: center;
    align-items: center;
  }

  .loading-inner:nth-child(1),
  .loading-inner:nth-child(2) {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    max-width: min(100%, 22rem);
    align-items: center;
  }

  .loading-title {
    font-size: clamp(15px, 3.8vw, 18px);
    white-space: normal;
    text-align: center;
    line-height: 1.35;
    word-break: keep-all;
  }
}

/* =========================================================
   [TEMP] Programs 페이지 임시 숨김 처리
   - GNB(모든 페이지 공통)의 "시술 프로그램" 메가 메뉴를 숨김.
   - 메인의 program-section 섹션 자체는 유지하되,
     리스트 항목의 링크(href)만 index.html에서 제거해 둠.
   - 복원 시 이 블록 전체 삭제 + index.html의 TEMP 주석 참고해
     list-item href 원복할 것.
   ========================================================= */
.nav-item--has-mega {
  display: none !important;
}
/* =========================================================
   [TEMP] END
   ========================================================= */

