/* =========================
   공통 푸터 스타일
========================= */
#ft {
  background: #f9f9f9;
  border-top: 1px solid #e0e0e0;
  font-size: 14px;
  color: #555;
  margin-top: 0;       /* 🔥 위쪽 여백 제거 (PC 푸터 안 보이던 원인) */
  clear: both;         /* 🔥 위 요소와 충돌 방지 */
  position: relative;
  z-index: 10;
}

#ft a {
  color: #333;
  text-decoration: none;
  transition: color 0.2s;
}

#ft a:hover {
  color: #ff6600;
  font-weight: 600;
}

/* =========================
   PC 푸터
========================= */
.ft_top {
  padding: 15px 20px;
  border-bottom: 1px solid #e0e0e0;
}

.ft_links {
  display: flex;
  justify-content: center;
  gap: 20px;
  font-size: 13px;
}

.ft_mid {
  max-width: 1200px;
  margin: 20px auto;
  padding: 0 20px;
  display: flex;
  justify-content: space-between;
  gap: 40px;
}

.ft_company h2 {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 8px;
}

.ft_company p {
  font-size: 13px;
  line-height: 1.6;
  color: #666;
}

.ft_notice {
  flex: 1;
}

.ft_bottom {
  text-align: center;
  padding: 15px 10px;
  border-top: 1px solid #e0e0e0;
  position: relative;
}

#ft_copy {
  font-size: 12px;
  color: #999;
}

#top_btn {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background: #ff6600;
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 38px;
  height: 38px;
  font-size: 16px;
  cursor: pointer;
  transition: background 0.3s;
}

#top_btn:hover {
  background: #e65500;
}

/* =========================
   모바일 하단 네비게이션
========================= */
.nav-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 65px;
  background: #fff;
  border-top: 1px solid #ddd;
  display: flex;
  justify-content: space-around;
  align-items: center;
  z-index: 1000;

  /* ✅ 아이폰 홈바 영역 제거 */
  padding: 0 !important;
  margin: 0 !important;
  padding-bottom: 0 !important;
}

/* nav-bar 아이템 */
.nav-bar a {
  flex: 1;
  text-align: center;
  font-size: 14px;
  color: #555;
  text-decoration: none;
}

.nav-bar a i {
  display: block;
  font-size: 22px;
  margin-bottom: 2px;
}

.nav-bar a span {
  display: block;
  font-size: 13px;
}

.nav-bar a.active {
  color: #ff6600;
  font-weight: bold;
}

/* =========================
   반응형 구분
========================= */
@media (min-width: 769px) {
  /* PC에서는 nav-bar 숨김 */
  .nav-bar { display: none; }
}

@media (max-width: 768px) {
  /* 모바일에서는 PC 푸터 숨김 */
  #ft { display: none; }

  /* ✅ 컨텐츠가 nav-bar랑 겹치지 않게 */
  body {
    padding-bottom: 65px; /* nav-bar 높이만큼 */
  }
}
