/* /css/sub-banner.css */

/* ===============================
   ✅ 배너 영역
================================*/
.sub-banner {
  position: relative;
  width: 100%;
  height: 350px;
  overflow: hidden;
}

.sub-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;

  /* 🔥 세로 가운데 기준으로 잘림 (센터 크롭) */
  object-position: center center;

  filter: brightness(80%);
}

.sub-banner .banner-text h2 {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 10px;
}


.banner-text {
  position: absolute;

  /* 🔥 수정: 이미지 crop 영향 없이 동일 위치 유지 */
  top: 50%;
  left: 25%;
  transform: translate(-50%, -50%);

  color: #fff;
  text-align: left;
}

/* .banner-text h1 {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 10px;
} */

.banner-text p {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.6;
  margin-top: 12px;
  color: rgba(255, 255, 255, 0.9);
  text-shadow: 0 2px 8px rgba(0,0,0,0.3);
  max-width: 700px;
  letter-spacing: 0.5px;
}


/* ===============================
   ✅ breadcrumb 영역
================================*/
.breadcrumb {
  position: relative; /* 🔹 탭 기준 위치 */
  background: linear-gradient(90deg, #fdfdfd 0%, #f5f6f8 100%);
  border-bottom: 1px solid #dee1e7;
  padding: 14px 8% 14px 16%;
  font-size: 1.05rem;
  color: #555;
  display: flex;
  align-items: center;
  gap: 50px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  border-radius: 0 0 6px 6px;
  transition: background 0.3s ease;
}

/* 구분선 */
.breadcrumb::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #d1d5db, #e4e7ec);
  opacity: 0.7;
  pointer-events: none;
}

/* 링크 및 crumb */
.breadcrumb a {
  text-decoration: none;
  color: #0f2679;
  font-weight: 500;
  transition: color 0.2s ease;
}

.breadcrumb a:hover,
.crumb:hover {
  color: #193aaf;
}

.crumb {
  cursor: pointer;
  color: #0f2679;
  font-weight: 600;
  position: relative;
  transition: color 0.25s ease;
}


/* ===============================
   ✅ 세로 탭 (side-tabs)
================================*/
#side-tabs {
  margin-top: 6px;
  position: absolute;
  top: calc(0 + 8px); 
  left: 20%;          
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  display: none;
  flex-direction: column;
  z-index: 1000;
  animation: fadeIn 0.25s ease forwards;
}

/* 표시 상태 */
#side-tabs.visible {
  display: flex;
}

/* 탭 항목 */
#side-tabs a {
  text-decoration: none;
  color: #333;
  padding: 12px 24px;
  font-size: 0.95rem;
  transition: all 0.25s ease;
  white-space: nowrap;
}

#side-tabs a:hover {
  background: linear-gradient(90deg, #eaf0ff 0%, #f5f7ff 100%);
  color: #0f2679;
  padding-left: 30px;
}

#side-tabs a.active {
  font-weight: 700;
  color: #0f2679;
  background: linear-gradient(90deg, #dee7ff 0%, #f2f5ff 100%);
  border-left: 4px solid #0f2679;
  padding-left: 30px;
}

#side-tabs a + a {
  border-top: 1px solid rgba(0, 0, 0, 0.04);
}

/* 애니메이션 */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}


/* ===============================
   ✅ 상위 메뉴 강조
================================*/
.main-menu > li > a.active {
  color: #0f2679;
  font-weight: 700;
  border-bottom: 2px solid #0f2679;
  transition: all 0.3s ease;
}

.main-menu > li > a:hover {
  color: #0f2679;
}


/* ===============================================
   ✅ Breadcrumb Home Link — FORCE FIX
=============================================== */

.breadcrumb a.breadcrumb-home {
  color: #0f2679;
  font-weight: 600;
  text-decoration: none;
}

.breadcrumb a.breadcrumb-home:hover {
  color: #193aaf;
  text-decoration: underline;
}