/* 토큰 (래퍼 스코프 CSS 변수) - 시작 */
.ngm-wrap {
  /* 브랜드 컬러 (남구 CI: 주황·파랑·초록) */
  --ngm-orange:      #F26F21;
  --ngm-orange-dark: #DE5E12;
  --ngm-blue:        #1E5FCC;
  --ngm-blue-dark:   #16489C;
  --ngm-green:       #1E9C56;
  --ngm-teal:        #129B96;
  --ngm-indigo:      #3A4B96;

  /* 텍스트 / 중립 */
  --ngm-ink:   #1A1D21;   /* 제목 */
  --ngm-text:  #3D434C;   /* 본문 */
  --ngm-sub:   #6E747E;   /* 보조 */
  --ngm-faint: #9AA0A8;   /* 캡션 */

  /* 면 / 선 */
  --ngm-page:  #F9FAFE;
  --ngm-soft:  #F4F6FA;   /* 섹션 배경 */
  --ngm-card:  #FFFFFF;
  --ngm-line:        rgba(20,28,46,.10);
  --ngm-line-strong: rgba(20,28,46,.16);
  --ngm-line-soft:   rgba(20,28,46,.06);   /* 그림자 프레임 위 아주 옅은 구분선 */

  /* 형태 */
  --ngm-r-sm: 10px;
  --ngm-r:    16px;
  --ngm-r-lg: 22px;
  --ngm-shadow:    0 6px 24px rgba(28,40,66,.07);
  --ngm-shadow-lg: 0 14px 40px rgba(28,40,66,.12);

  /* 레이아웃 — 콘텐츠 실폭 1580px + 좌우 패딩 32px×2 = 1644px */
  --ngm-maxw: 1644px;
  --ngm-gap:  24px;

  /* 폰트: 호스트 폰트 우선 → 한글 시스템 폰트 폴백 (외부 폰트 import 없음) */
  --ngm-font: inherit;

  box-sizing: border-box;
  width: 100%;
  margin: 0;
  color: var(--ngm-text);
  font-family: "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic",
               "맑은 고딕", sans-serif;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
  background: var(--ngm-page);
  /* 한글: 단어(어절) 단위로 줄바꿈 — '남구 를'처럼 한 글자씩 잘리는 현상 방지 */
  word-break: keep-all;
  overflow-wrap: break-word;
}
.ngm-wrap *,
.ngm-wrap *::before,
.ngm-wrap *::after { box-sizing: border-box; }

/* :where() → 명세도 0. 기본 리셋이 .ngm-pi__img 등 단일 클래스 규칙을 덮지 않도록 함 */
:where(.ngm-wrap) img { display: block; max-width: 100%; }
/* :where() → 명세도 0으로 링크 기본색만 초기화(컴포넌트가 자신의 색을 이길 수 있게) */
:where(.ngm-wrap a) { color: inherit; text-decoration: none; }
.ngm-wrap button { font-family: inherit; cursor: pointer; letter-spacing: -0.01em; transition: transform .15s ease, box-shadow .15s ease, background .15s ease, opacity .15s ease; }
.ngm-wrap button:active { transform: scale(0.97); }
.ngm-wrap ul { list-style: none; margin: 0; padding: 0; }
/* 토큰 (래퍼 스코프 CSS 변수) - 끝 */


/* 공통 내부 컨테이너 - 시작 */
.ngm-inner {
  width: 100%;
  max-width: var(--ngm-maxw);
  margin: 0 auto;
}

	/* 미디어쿼리 시작 */
	@media (max-width: 1700px) {
		.ngm-inner{padding: 0 32px;}
	}
	@media (max-width: 1079px) {
		.ngm-inner { padding: 0 24px; }
	}
	@media (max-width: 767px) {
		.ngm-inner { padding: 0 18px; }
	}
	/* 미디어쿼리 끝 */
/* 공통 내부 컨테이너 - 끝 */


/* 공통 섹션 타이틀 - 시작 */
.ngm-sec-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.ngm-sec-title {
  margin: 0;
  font-size: 3.2rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--ngm-ink);
}
.ngm-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 38px;
  padding: 0 18px;
  border: 1px solid var(--ngm-line-strong);
  border-radius: 999px;
  background: #fff;
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--ngm-text);
  transition: background .15s ease, border-color .15s ease;
}
.ngm-more:hover { background: var(--ngm-soft); border-color: var(--ngm-sub); }
.ngm-more svg { width: 15px; height: 15px; }

	/* 미디어쿼리 시작 */
	@media (max-width: 767px) {
		.ngm-sec-title { font-size: 2.7rem; }
	}
	/* 미디어쿼리 끝 */
/* 공통 섹션 타이틀 - 끝 */


/* 헤더 / GNB - 시작 */
.ngm-header {
  position: relative;
  z-index: 30;
  background: #fff;
  border-bottom: 1px solid var(--ngm-line);
}
.ngm-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100px;
  max-width: var(--ngm-maxw);
  margin: 0 auto;
  padding: 0 32px;
  gap: 20px;
}
.ngm-logo img { height: 53px; width: auto; }

/* 메인 내비게이션 */
.ngm-gnb { display: flex; }
.ngm-gnb__list { display: flex; gap: 4px; }
.ngm-gnb__item { position: relative; }
.ngm-gnb__link {
  display: inline-flex;
  align-items: center;
  height: 100px;
  padding: 0 30px;
  font-size: 2.1rem;
  font-weight: 600;
  white-space: nowrap;
  color: var(--ngm-ink);
  letter-spacing: -0.02em;
  position: relative;
  isolation: isolate;
  transition: color .15s ease;
  padding-top:5px;
}

/* 호버 시 부드러운 파란 톤 알약 배경 (세로 인셋) */
.ngm-gnb__link::before {
  content: "";
  position: absolute;
  left: 8px; right: 8px;
  top: 50%;
  transform: translateY(-50%);
  height: 46px;
  border-radius: 12px;
  background: rgba(30,95,204,.07);
  opacity: 0;
  transition: opacity .15s ease;
  z-index: -1;
}

/* 하단 인디케이터 바 (가운데에서 확장) */
.ngm-gnb__link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 17px;
  width: 0;
  height: 3px;
  border-radius: 3px;
  background: var(--ngm-blue);
  transform: translateX(-50%);
  transition: width .2s ease;
}

/* 아이템 전체 호버/포커스 시(링크+드롭다운 포함) 활성 표시 */
.ngm-gnb__item:hover > .ngm-gnb__link,
.ngm-gnb__item:focus-within > .ngm-gnb__link { color: var(--ngm-blue); }
.ngm-gnb__item:hover > .ngm-gnb__link::before,
.ngm-gnb__item:focus-within > .ngm-gnb__link::before { opacity: 1; }
.ngm-gnb__item:hover > .ngm-gnb__link::after,
.ngm-gnb__item:focus-within > .ngm-gnb__link::after { width: 24px; }

/* 드롭다운 서브메뉴 패널 */
.ngm-gnb__panel {
  position: absolute;
  top: calc(100% - 14px);
  left: 50%;
  transform: translateX(-50%) translateY(-6px);
  min-width: 200px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  background: #fff;
  border: 1px solid var(--ngm-line);
  border-radius: 16px;
  box-shadow: 0 12px 32px rgba(20,40,80,.12), 0 2px 8px rgba(20,40,80,.06);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .16s ease, transform .16s ease, visibility .16s;
  z-index: 50;
}
.ngm-gnb__item:hover > .ngm-gnb__panel,
.ngm-gnb__item:focus-within > .ngm-gnb__panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.ngm-gnb__sub {
  display: block;
  padding: 8px 16px;
  border-radius: 10px;
  font-size: 1.7rem;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: var(--ngm-text);
  white-space: nowrap;
  transition: background .12s ease, color .12s ease;
}
.ngm-gnb__sub:hover {
  background: var(--ngm-soft);
  color: var(--ngm-blue);
  font-weight: 600;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   메가메뉴 (데스크톱 전용 — 모바일은 기존 아코디언 유지)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (min-width: 1080px) {
  .ngm-header {
    position: relative;
  }
  .ngm-header__inner {
    position: relative;
  }
  .ngm-gnb {
    display: flex;
    height: 100px;
  }
  .ngm-gnb__list {
    display: flex;
    height: 100%;
    position: relative; 
  }
  .ngm-gnb__item {
    position: relative; 
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .ngm-gnb__panel .ngm-gnb__link {
    background: transparent;
    background-color: transparent;
    border-radius: 0;
    padding: 0;
    color: #444;
    text-align: center;
    display: block;
  }
  .ngm-gnb__panel .ngm-gnb__link:hover,
  .ngm-gnb__panel .ngm-gnb__link:focus {
    background: transparent;
    background-color: transparent;
    color: var(--ngm-blue);
  }
  .ngm-header::after {
    content: '';
    position: absolute; 
    left: 0; 
    right: 0; 
    top: 100%;
    height: 220px;
    background: #fff;
    border-top: 3px solid var(--ngm-blue);
    border-bottom: 1px solid var(--ngm-line);
    box-shadow: 0 16px 48px rgba(20,40,80,.12);
    opacity: 0; 
    visibility: hidden; 
    pointer-events: none;
    z-index: 40;
    transition: opacity .18s ease, visibility .18s ease;
  }
  .ngm-header:has(.ngm-gnb.is-mega-open)::after {
    opacity: 1; 
    visibility: visible;
  }
  .ngm-gnb__panel {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    min-width: 140px;
    height: 220px;
    padding: 20px 10px !important;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    border: 0;
    border-right: 1px solid rgba(20,28,46,.09);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 50;
    transform: translateY(-6px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s;
  }
  .ngm-gnb__item:first-child .ngm-gnb__panel {
    border-left: 1px solid rgba(20,28,46,.09);
  }
  .ngm-gnb__sub {
    white-space: normal !important;
    word-break: keep-all;
    text-align: center;
    line-height: 1.4;
    font-size: 1.7rem;
    font-weight: 500;
    padding: 8px 6px !important;
    width: 100%;
    box-sizing: border-box;
    border-radius: 8px;
  }
  .ngm-gnb__sub:hover {
    background: var(--ngm-soft);
    color: var(--ngm-blue);
    font-weight: 500 !important;
  }
  .ngm-gnb__item:hover > .ngm-gnb__panel,
  .ngm-gnb__item:focus-within > .ngm-gnb__panel {
    opacity: 0; 
    visibility: hidden; 
    pointer-events: none;
    transform: translateY(-6px);
  }
  .ngm-gnb.is-mega-open .ngm-gnb__panel {
    opacity: 1; 
    visibility: visible; 
    pointer-events: auto;
    transform: translateY(0);
  }
  .ngm-header:has(.ngm-gnb.is-mega-open) > .ngm-header__inner .ngm-gnb__link {
    color: var(--ngm-blue); 
  }
}

/* 헤더 우측 유틸 */
.ngm-util { display: flex; align-items: center; gap: 8px; }
.ngm-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px; height: 44px;
  border: 1px solid var(--ngm-line-soft);
  border-radius: 50%;
  background: #fff;
  color: var(--ngm-ink);
  box-shadow: var(--ngm-shadow);
  transition: box-shadow .15s ease, transform .15s ease, color .15s ease;
}
.ngm-icon-btn:hover { box-shadow: var(--ngm-shadow-lg); transform: translateY(-1px); color: var(--ngm-blue); }
.ngm-icon-btn svg { width: 22px; height: 22px; }

/* 모바일 햄버거 (기본 숨김) */
.ngm-burger { display: none; }

/* 통합검색 바 (헤더 아래로 펼쳐짐) */
.ngm-search {
  position: absolute;
  left: 0; right: 0;
  top: 100%;
  z-index: 29;
  background: #fff;
  border-bottom: 1px solid var(--ngm-line);
  box-shadow: var(--ngm-shadow);
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s ease;
}
.ngm-search.is-open { max-height: 360px; }
.ngm-search__inner { padding: 28px 32px 40px; }
.ngm-search__form {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 62px;
  padding: 0 8px 0 18px;
  border: 2px solid var(--ngm-blue);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(30,95,204,.12);
}
.ngm-search__icon { display: flex; flex: none; color: var(--ngm-blue); }
.ngm-search__icon svg { width: 24px; height: 24px; }
.ngm-search__input {
  flex: 1;
  min-width: 0;
  height: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: inherit;
  font-size: 1.9rem;
  color: var(--ngm-ink);
}
.ngm-search__input::placeholder { color: var(--ngm-faint); }
.ngm-search__submit {
  flex: none;
  height: 46px;
  padding: 0 26px;
  border: 0;
  border-radius: var(--ngm-r-sm);
  background: var(--ngm-blue);
  color: #fff;
  font-family: inherit;
  font-size: 1.6rem;
  font-weight: 700;
  transition: background .15s ease;
}
.ngm-search__submit:hover { background: var(--ngm-blue-dark); }
.ngm-search__close {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--ngm-sub);
  transition: background .15s ease;
}
.ngm-search__close:hover { background: var(--ngm-soft); }
.ngm-search__close svg { width: 22px; height: 22px; }
.ngm-search__tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
}
.ngm-search__tags-label {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--ngm-sub);
  margin-right: 4px;
}
.ngm-search__tag {
  padding: 7px 14px;
  border-radius: 999px;
  background: var(--ngm-soft);
  border: 1px solid var(--ngm-line);
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--ngm-text);
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.ngm-search__tag:hover { background: #fff; border-color: var(--ngm-blue); color: var(--ngm-blue); }

	/* 미디어쿼리 시작 */
	@media (min-width: 1080px) {
		.ngm-icon-btn{width:50px; height:50px; margin-top:5px;}
	}
	@media (max-width: 1279px) and (min-width: 1181px) {
		.ngm-gnb__link { padding: 5px 22px 0 22px; }
	}
	@media (max-width: 1180px) and (min-width: 1080px) {
		.ngm-gnb__link { padding: 5px 23px 0 23px; font-size: 2rem;}
		.ngm-logo img{height:47px;}
	}
	@media (max-width: 1279px) and (min-width: 1080px) {
		.ngm-gnb__list { gap: 0; }
		/* 좁은 데스크톱: 패널 gap·패딩 축소 */
		.ngm-gnb__panel { gap: 4px; padding: 14px 8px !important; }
	}
	@media (max-width: 1079px) {
		/* GNB → 햄버거 전환 */
		.ngm-header__inner { height: 72px; padding: 0 24px; }
		.ngm-logo img { height: 44px; }
		.ngm-gnb {
			position: absolute;
			top: 72px; left: 0; right: 0;
			flex-direction: column;
			background: #fff;
			border-bottom: 0;
			border-radius: 0 0 18px 18px;
			box-shadow: var(--ngm-shadow-lg);
			max-height: 0;
			overflow: hidden;
			transition: max-height .28s ease;
		}
		.ngm-gnb.is-open { max-height: min(80vh, 640px); overflow-y: auto; }
		.ngm-gnb__list { flex-direction: column; gap: 0; padding: 8px 0; }
		.ngm-gnb__item { border-bottom: 1px solid rgba(20,28,46,.05); }
		.ngm-gnb__item:last-child { border-bottom: 0; }
		.ngm-gnb__link {
			height: 56px;
			padding: 0 24px 1px 24px;
			width: 100%;
			font-size: 1.8rem;
			justify-content: space-between;   /* 라벨 좌 / 캐럿 우 */
		}
		.ngm-gnb__link::before { display: none; }
		/* 하단 인디케이터 → 모바일에선 펼침 캐럿으로 재사용 */
		.ngm-gnb__link::after {
			content: "";
			position: static;
			width: 9px; height: 9px;
			border: 0;
			border-right: 2px solid var(--ngm-sub);
			border-bottom: 2px solid var(--ngm-sub);
			border-radius: 1px;
			background: none;
			transform: rotate(45deg);
			margin-right: 4px;
			transition: transform .2s ease;
		}
		.ngm-gnb__item.is-expanded .ngm-gnb__link { color: var(--ngm-blue); }
		.ngm-gnb__item.is-expanded .ngm-gnb__link::after {
			transform: rotate(-135deg);       /* 펼치면 위쪽 화살표 */
			border-color: var(--ngm-blue);
		}
		/* 데스크톱 호버/포커스 인디케이터(width 확장)가 캐럿을 키우지 않도록 */
		.ngm-gnb__item:hover > .ngm-gnb__link::after,
		.ngm-gnb__item:focus-within > .ngm-gnb__link::after { width: 9px; height: 9px; }
		/* 드롭다운 → 모바일은 아코디언(기본 접힘, 탭하면 펼침) */
		.ngm-gnb__panel {
			position: static;
			transform: none;
			opacity: 1;
			visibility: visible;
			pointer-events: auto;
			min-width: 0;
			padding: 0;
			background: var(--ngm-soft);
			border: 0;
			border-radius: 0;
			box-shadow: none;
			gap: 0;
			max-height: 0;
			overflow: hidden;
			transition: max-height .26s ease;
		}
		.ngm-gnb__item.is-expanded .ngm-gnb__panel { max-height: 320px; }
		/* 데스크톱 hover/focus-within 변형(translateX)이 모바일 정적 패널을 밀지 않도록 무력화 */
		.ngm-gnb__item:hover > .ngm-gnb__panel,
		.ngm-gnb__item:focus-within > .ngm-gnb__panel {
			transform: none;
			visibility: visible;
		}
		.ngm-gnb__sub {
			padding: 13px 24px 13px 40px;
			border-radius: 0;
			font-size: 1.6rem;
			font-weight: 500;
			color: var(--ngm-text);
			position: relative;
		}
		/* 좌측 점 마커로 서브 항목 구분 */
		.ngm-gnb__sub::before {
			content: "";
			position: absolute;
			left: 26px; top: 50%;
			width: 4px; height: 4px;
			border-radius: 50%;
			background: var(--ngm-line-strong);
			transform: translateY(-50%);
		}
		.ngm-gnb__sub:hover,
		.ngm-gnb__sub:active { background: rgba(30,95,204,.06); color: var(--ngm-blue); }
		.ngm-gnb__sub:hover::before,
		.ngm-gnb__sub:active::before { background: var(--ngm-blue); }
		.ngm-gnb__sub:first-child { padding-top: 14px; }
		.ngm-gnb__sub:last-child { padding-bottom: 14px; }
		.ngm-burger {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			width: 44px; height: 44px;
			border: 1px solid var(--ngm-line-soft);
			border-radius: 12px;
			background: #fff;
			color: var(--ngm-ink);
			box-shadow: var(--ngm-shadow);
		}
		.ngm-burger svg { width: 24px; height: 24px; }
	}
	@media (max-width: 767px) {
		/* 통합검색(모바일): 고정 패딩 줄여 입력창 폭 확보 — 찌부 방지 */
		.ngm-logo img{height: 38px;}
		.ngm-search__inner { padding: 18px 18px 26px; }
		.ngm-search__form { height: 52px; gap: 6px; padding: 0 6px 0 12px; border-radius: 12px; }
		.ngm-search__icon svg { width: 20px; height: 20px; }
		.ngm-search__input { font-size: 1.6rem; }
		.ngm-search__submit { height: 38px; padding: 0 14px; font-size: 1.4rem; }
		.ngm-search__close { width: 32px; height: 32px; }
		.ngm-search__close svg { width: 18px; height: 18px; }
		.ngm-search__tags-label { width: 100%; margin-bottom: 2px; }
	}
	/* 미디어쿼리 끝 */
/* 헤더 / GNB - 끝 */


/* 푸터 - 시작 */
.ngm-footer {
  padding: 56px 0;
  background: #fff;
  border-top: 1px solid var(--ngm-line);
}
.ngm-footer--two-row { padding: 0; border-top: 0; }
.ngm-footer__fnb {
  background: #2c3038;
  padding: 14px 0;
}
.ngm-footer__fnb-links {
  display: flex;
  align-items: center;
  gap: 5px 48px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ngm-footer__fnb-links a {
  font-family: 'esamanru';
  font-size: 1.6rem;
  font-weight: 100;
  color: white;
  letter-spacing: -0.01em;
  transition: color .15s ease;
}
.ngm-footer__fnb-links a:hover { color: #fff; }
.ngm-footer__bottom {
  padding: 30px 0 50px 0;
  border-top: 1px solid var(--ngm-line);
}
.ngm-footer__top {
  display: flex;
  align-items: center;
  gap: 36px;
  flex-wrap: wrap;
}
.ngm-footer__logo img { height: 48px; width: auto; }
.ngm-footer__info { flex: 1; min-width: 280px; }
.ngm-footer__addr {
  font-size: 1.6rem;
  color: var(--ngm-text);
  margin: 0 0 6px;
}
.ngm-footer__copy {
  font-size: 1.4rem;
  color: var(--ngm-faint);
  margin: 0;
  letter-spacing: 0.01em;
}
.ngm-footer__select { flex: none; }
.ngm-select {
  height: 48px;
  min-width: 220px;
  padding: 0 16px;
  border: 1px solid var(--ngm-line-strong);
  border-radius: var(--ngm-r-sm);
  background: #fff;
  font-family: inherit;
  font-size: 1.6rem;
  color: var(--ngm-text);
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236E747E' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

	/* 미디어쿼리 시작 */
	@media (max-width: 767px) {
		.ngm-footer { padding: 40px 0; }
		.ngm-footer--two-row { padding: 0; }
		.ngm-footer__fnb-links { gap: 5px 24px; flex-wrap: wrap; }
    .ngm-footer__fnb-links a{font-size:1.5rem;}
		.ngm-footer__bottom { padding: 28px 0 50px 0; }
		.ngm-footer__top { flex-direction: column; gap: 16px; align-items: flex-start; }
		.ngm-footer__select { width: 100%; }
		.ngm-select { width: 100%; }
    .ngm-footer__addr{font-size:1.5rem;}
	}
	/* 미디어쿼리 끝 */
/* 푸터 - 끝 */


/* 모션 최소화 사용자 배려 */
@media (prefers-reduced-motion: reduce) {
  .ngm-wrap * { transition: none !important; }
}
