/* ══════════════════════════════════════
   ITCO Header CSS — itco-header.css
   Pretendard 폰트는 head.php에서 로드
══════════════════════════════════════ */

/* ══ ITCO 변수 ══ */
:root {
  --itco-navy: #0d2451;
  --itco-navy2: #122b63;
  --itco-navy3: #1a3a80;
  --itco-gold: #b8952a;
  --itco-gold2: #d4ac3a;
  --itco-gold3: #e8c84e;
  --itco-sub: #4a5472;
  --itco-muted: #8892aa;
  --itco-hd-h: 70px;
}

/* ══ 콘텐츠 상단 여백 — 헤더 높이 ══ */
#container_wr {
  padding-top: var(--itco-hd-h) !important;
}

/* ══ #hd — fixed ══ */
#hd {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 901 !important;
  background: #ffffff !important;
  border-bottom: 3px solid var(--itco-navy) !important;
  box-shadow: 0 2px 16px rgba(13,36,81,.1) !important;
  backdrop-filter: none !important;
}

/* ══ hd_wrapper ══ */
#hd_wrapper {
  position: relative !important;
  max-width: 1400px !important;
  margin: 0 auto !important;
  height: var(--itco-hd-h) !important;
  width: 100% !important;
}

/* ══ 로고 ══ */
#logo {
  position: absolute !important;
  left: 40px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 1 !important;
}
.itco-logo-link {
  display: flex !important;
  align-items: center !important;
  text-decoration: none !important;
}
.itco-logo-img {
  display: block;
  height: 44px;          /* 데스크톱 기본 */
  width: auto;
  max-width: 200px;
  object-fit: contain;
  transition: opacity .2s;
}
.itco-logo-link:hover .itco-logo-img {
  opacity: .85;
}

/* ══ PC 메뉴 — 가운데 ══ */
.pc_menu {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  height: var(--itco-hd-h) !important;
  display: flex !important;
  align-items: center !important;
}
#gnb { display: flex !important; align-items: center !important; }
#gnb h2 { position: absolute !important; font-size: 0 !important; overflow: hidden !important; }
.gnb_wrap { display: block !important; }
#gnb_1dul {
  display: flex !important;
  align-items: center !important;
  list-style: none !important;
  margin: 0 !important; padding: 0 !important;
}
.gnb_1dli {
  position: relative !important;
  margin: 0 4px !important;
  padding: 0 !important;
}
.gnb_1da {
  font-family: 'Pretendard', sans-serif !important;
  font-size: .88rem !important;
  font-weight: 500 !important;
  color: var(--itco-sub) !important;
  line-height: var(--itco-hd-h) !important;
  padding: 0 16px !important;
  display: block !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  border-bottom: 3px solid transparent !important;
  margin-bottom: -3px !important;
  transition: color .2s, border-color .2s !important;
}
.gnb_1da:hover {
  color: var(--itco-navy) !important;
  border-bottom-color: var(--itco-gold2) !important;
}

/* 마지막 메뉴 → CTA */
.gnb_1dli:last-child { margin-left: 16px !important; }
.gnb_1dli:last-child .gnb_1da {
  background: var(--itco-navy) !important;
  color: #fff !important;
  padding: 10px 22px !important;
  line-height: 1.5 !important;
  border-radius: 6px !important;
  border-bottom: none !important;
  margin-bottom: 0 !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  display: inline-flex !important;
  align-items: center !important;
  transition: background .2s, transform .18s !important;
}
.gnb_1dli:last-child .gnb_1da:hover {
  background: var(--itco-navy3) !important;
  transform: translateY(-1px) !important;
  border-bottom-color: transparent !important;
}

/* 2단 드롭다운 */
.gnb_2dul {
  border-top: 2px solid var(--itco-gold2) !important;
  border-radius: 0 0 8px 8px !important;
  box-shadow: 0 8px 24px rgba(13,36,81,.12) !important;
}
.gnb_2da {
  font-family: 'Pretendard', sans-serif !important;
  font-size: .78rem !important; font-weight: 500 !important;
  color: var(--itco-sub) !important;
  padding: 11px 20px !important;
}
.gnb_2da:hover {
  color: var(--itco-navy) !important;
  background: rgba(13,36,81,.04) !important;
}

/* ══ 우측 영역 ══ */
.hd_right_area {
  position: absolute !important;
  top: 0 !important;
  right: 40px !important;
  height: var(--itco-hd-h) !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
#tnb { display: flex !important; align-items: center !important; }
#tnb ul {
  display: flex !important; list-style: none !important;
  margin: 0 !important; padding: 0 !important; gap: 6px !important;
}
#tnb li { display: inline-block !important; margin: 0 !important; }
#tnb a {
  font-family: 'Pretendard', sans-serif !important;
  font-size: .72rem !important; font-weight: 500 !important;
  color: var(--itco-sub) !important;
  border: 1px solid #d0d5e8 !important;
  border-radius: 5px !important;
  line-height: 30px !important;
  padding: 0 13px !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all .2s !important;
}
#tnb a:hover {
  background: rgba(13,36,81,.05) !important;
  border-color: rgba(13,36,81,.2) !important;
  color: var(--itco-navy) !important;
}
#tnb a.login {
  background: var(--itco-navy) !important;
  color: #fff !important;
  border-color: var(--itco-navy) !important;
  font-weight: 700 !important;
}
#tnb a.login:hover {
  background: var(--itco-navy3) !important;
  border-color: var(--itco-navy3) !important;
}

/* 검색 버튼 */
#sch_op {
  background: none !important; border: 0 !important;
  width: 34px !important; height: 34px !important;
  font-size: 1rem !important; color: var(--itco-sub) !important;
  cursor: pointer !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  border-radius: 5px !important;
  padding: 0 !important; margin: 0 !important;
  transition: color .2s, background .2s !important;
}
#sch_op:hover { color: var(--itco-navy) !important; background: rgba(13,36,81,.06) !important; }

/* ══ 검색 레이어 ══ */
.hd_sch_wr .bg { background: rgba(13,36,81,.55) !important; backdrop-filter: blur(4px) !important; }
#hd_sch {
  border-radius: 12px !important;
  box-shadow: 0 20px 60px rgba(13,36,81,.2) !important;
  padding: 32px !important;
  width: 90% !important; max-width: 540px !important;
}
#hd_sch legend { font-size: 0 !important; line-height: 0 !important; overflow: hidden !important; }
#sch_stx {
  font-family: 'Pretendard', sans-serif !important;
  border: 1.5px solid #dde2ef !important;
  border-radius: 7px !important; height: 50px !important; font-size: .9rem !important;
  padding: 0 100px 0 18px !important;
}
#sch_stx:focus { border-color: var(--itco-navy) !important; outline: none !important; }
#sch_submit {
  background: var(--itco-navy) !important;
  border-radius: 7px !important; height: 38px !important;
  font-family: 'Pretendard', sans-serif !important; width: 74px !important;
}
#sch_submit:hover { background: var(--itco-navy3) !important; }

/* ══ 모바일 햄버거 버튼 ══ */
.gnb_menu_btn {
  position: absolute !important;
  right: 16px !important; top: 50% !important;
  transform: translateY(-50%) !important;
  color: var(--itco-navy) !important; font-size: 1.2rem !important;
}

/* ══ 관리자 바 ══ */
.hd-admin {
  position: relative !important;
  z-index: 899 !important;
  background: #0a1a3a;
  padding: 4px 16px;
  display: flex;
  justify-content: flex-end;
}
.hd-admin a {
  font-size: .68rem; font-weight: 600;
  color: rgba(255,255,255,.45);
  text-decoration: none;
  display: flex; align-items: center; gap: 5px;
  font-family: 'Pretendard', sans-serif;
}
.hd-admin a:hover { color: #fff; }

/* ══ 반응형 ══ */
@media (max-width: 1024px) {
  #logo { left: 24px !important; }
  .hd_right_area { right: 20px !important; }
  .itco-logo-img { height: 38px; }
}
@media (max-width: 768px) {
  :root { --itco-hd-h: 60px; }
  #logo { left: 16px !important; }
  .itco-logo-img { height: 30px; }
  .hd_right_area {
    position: absolute !important;
    top: 0 !important;
    right: 56px !important;
    height: var(--itco-hd-h) !important;
  }
  .gnb_menu_btn { right: 14px !important; }
}
@media (max-width: 480px) {
  .itco-logo-img { height: 26px; }
}
