/* ===========================
   Footer 하단 영역
=========================== */
#footer .ft_wrap {
  width: 100%;
  padding: 52px 0 55px 0;
  border-top: 1px solid #44413c;
  background: #44413c;
}

#footer .ft_wrap .ft_bottom {
  display: flex;
  width: 100%;
  max-width: 1573px;
  margin: 0 auto;
  justify-content: flex-start;
}

#footer .ft_wrap .ft_bottom > h1 {
  width: 351px;
  padding-right: 56px;
}

#footer .ft_wrap .ft_bottom .privacy_wrap {
  flex: 1;
}

#footer .ft_wrap .privacy_top > ul {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

#footer .ft_wrap .privacy_top > ul > li {
  position: relative;
  padding-right: 25px;
}

#footer .ft_wrap .privacy_top > ul > li:after {
  content: '';
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 14px;
  background: #7e8281;
}

#footer .ft_wrap .privacy_top > ul > li:last-child:after {
  display: none;
}

#footer .ft_wrap .privacy_top > ul > li a {
  font-size: 14px;
  color: #fff;
  font-weight: 500;
}

#footer .ft_wrap .copy {
  display: flex;
  align-items: flex-start;
  color: #efece7;
  margin-top: 30px;
  flex-wrap: wrap;
}

#footer .ft_wrap .copy h1 {
  width: 188px;
  margin-right: 40px;
  text-align: left;
  flex: none;
}

#footer .ft_wrap .copy .contact {
  display: flex;
  flex-wrap: wrap;
}

#footer .ft_wrap .copy .contact li {
  font-size: 0.875rem;
  line-height: 1.8;
  padding-right: 2rem;
}

#footer .ft_wrap .copy p {
  width: 100%;
  margin-top: 8px;
  color: #b4b1ac;
  font-size: 13px;
}

#footer .ft_wrap .copy .sns {
  margin-left: auto;
}

#footer .ft_wrap .copy .sns img {
  margin-left: 10px;
}

/* ===========================
   반응형 대응
=========================== */
@media all and (max-width: 1200px) {
  #footer .ft_wrap .ft_bottom {
    flex-direction: column;
    text-align: center;
  }
  #footer .ft_wrap .ft_bottom > h1 {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }
  #footer .ft_wrap .copy {
    flex-direction: column;
    align-items: center;
  }
  #footer .ft_wrap .copy h1 {
    margin-bottom: 20px;
  }
  #footer .ft_wrap .copy .contact {
    justify-content: center;
  }
  #footer .ft_wrap .copy .sns {
    margin: 20px auto 0;
  }
}

@media all and (max-width: 768px) {
  #footer .ft_bn {
    padding: 15px 10px;
  }
  #footer .ft_bn .bt_bn_tit {
    font-size: 1rem;
    padding-right: 15px;
  }
  #footer .ft_bn .bn_list_wrap .bn_list {
    flex-direction: column;
    align-items: center;
  }
  #footer .ft_bn .bn_list_wrap .bn_list > li {
    padding: 8px 0;
  }
  #footer .ft_wrap {
    padding: 30px 15px;
  }
  #footer .ft_wrap .privacy_top > ul {
    justify-content: center;
  }
  #footer .ft_wrap .copy .contact li {
    font-size: 0.8rem;
    padding: 0 10px;
  }
}

/* ========== 공통 ========== */
.menu-toggle-checkbox { display:none; }

/* header 기본 */
#header {
  position: fixed;
  top:0; left:0; width:100%;
  /*background: rgba(255,255,255,0.28);*/
	background:#fff;
  z-index:9999;
  transition: background 0.25s, box-shadow 0.25s, padding 0.25s;
  border-bottom: none;
}
#header.scrolled { background:#fff; box-shadow:0 2px 6px rgba(0,0,0,0.08); }

/* 메뉴 위선 (PC/모바일 공통) */
.gnb {
  width: 100%;
  border-top: 1px solid rgba(209,187,163,0.39);
}

/* 헤더 내부: PC 기본 패딩 */
.hd_inner_wrap {
  max-width:1573px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  padding:23px 16px;        /* PC 기본 패딩 */
  box-sizing:border-box;
}

/* 좌측 전화 */
.header-left { display:flex; gap:12px; align-items:center; }
.phone-icon { width:50px; height:50px; }
.phone-text-area { display:flex; flex-direction:column; line-height:1.2; }
.phone-title { font-weight:600; font-size:14px; color:#6e6e6d; }
.phone-number { font-weight:600; font-size:25px; color:#000; }

/* 로고 */
h1 { margin:0; flex:0 1 350px; }
.pc-logo { width:247px; height:52px; object-fit:contain; }
.mobile-logo { display:none; width:120px; height:35px; object-fit:contain; }

/* 카톡 상담 */
.header-right .kakao-consult {
  display:block;
  padding: 2px 11px 2px 41px;
  background: url(../images/member_btn_kakao.png) no-repeat 10px 5px;
  font-size:16px; color:#16140e; font-weight:500;
  border:1px #16140e solid; border-radius:10px;
}

/* gnb */
.gnb ul {
  list-style:none; display:flex; justify-content:center;
  gap:20px; margin:0 auto; padding:0; max-width:1708px;
}
.gnb ul li { position:relative; }
.gnb ul li a {
  display:block; 
  padding:14px 32px;
  font-size:19px; font-weight:500; color:#000; text-decoration:none;
  transition: color .25s;
}
.gnb ul li a:hover { color:#ee7910; }

/* 주황 점 (PC 전용) */
.gnb ul li a::after {
  content:''; position:absolute; left:50%; top:2px; width:8px; height:8px;
  background:#ee7910; border-radius:50%;
  transform:translate(-50%, -140%); opacity:0;
  transition:opacity .25s, transform .25s;
}
@media (min-width:1201px) {
  .gnb ul li a:hover::after { opacity:1; transform:translate(-50%, -80%); }
}
@media (max-width:1200px) {
  .gnb ul li a::after { display:none; }
}

/* 서브 메뉴 */
.sub-menu {
  display:none; position:absolute; top:100%; left:0; background:#fff;
  min-width:180px; box-shadow:0 6px 10px rgba(0,0,0,0.06);
  border:1px solid #eee; padding:6px 0; z-index:50;
}
.gnb ul li:hover > .sub-menu { display:block; }
.sub-menu li a { display:block; padding:10px 16px; color:#333; font-size:15px; }

/* ========== 모바일 전용 ========== */
@media (max-width:1200px){

  /* PC 요소 숨김 */
  .header-left, .header-right { display:none; }
  .pc-logo { display:none; }
  .mobile-logo { display:block; max-width:150px; height:auto; }

  /* 헤더 패딩 축소 */
  .hd_inner_wrap { padding:16px 16px; }

  /* 상단 로고 + X 버튼 영역 */
  .mobile-menu-header {
    position:fixed;
    top:0; left:0; right:0;
    display:flex;
    justify-content:center;
    align-items:center;
    height:60px;
    background:#fff;
    z-index:1250;
    padding:0 16px;
    box-sizing:border-box;
    border-bottom:1px solid rgba(0,0,0,0.1);
  }

  /* 햄버거 / X 버튼 */
 .menu-toggle-label {
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  width:26px;       /* 24~26px 적당 */
  height:20px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  cursor:pointer;
  z-index:1300;
}
.menu-toggle-label span {
  display:block;
  height:2px;              /* 선 두께 */
  background:#000;
  border-radius:2px;
  transition:transform .25s ease, opacity .25s ease;
  transform-origin:center; /* 회전 중심 */
}
/* 체크됐을 때 X로 변환 */
.menu-toggle-checkbox:checked ~ .menu-toggle-label span:nth-child(1) {
  transform: rotate(45deg) translateY(12px);
}
.menu-toggle-checkbox:checked ~ .menu-toggle-label span:nth-child(2) {
  opacity: 0;
}
.menu-toggle-checkbox:checked ~ .menu-toggle-label span:nth-child(3) {
  transform: rotate(-45deg) translateY(-12px);
}

  /* 모바일 메뉴 본문 */
  .gnb {
    position:fixed;
    top:0; left:0;
    width:100%;
    height:100vh;
    background:#fff;
    transform:translateX(-100%);
    transition:transform .28s ease;
    z-index:1200;
    display:flex;
    flex-direction:column;
    padding-top:60px; /* 로고/X 높이만큼 */
    overflow-y:auto;
    border-top:1px solid #d1bba363;
  }
  .menu-toggle-checkbox:checked ~ .gnb { transform:translateX(0); }

  /* 메뉴 리스트 */
  .gnb ul {
    flex-direction:column;
    padding:0;
    margin:0;
    width:100%;
    gap:0;
  }
  .gnb ul li { border-bottom:1px solid #eee; }
  .gnb ul li a { padding:10px 18px; font-size:16px; }

  .sub-menu { display:none; background:#f9f9f9; padding-left:10px; }
  .gnb ul li.active > .sub-menu { display:block; }
}

/* PC에서 햄버거 관련 숨김 */
@media (min-width:1201px){
  .menu-toggle-checkbox,
  .menu-toggle-label,
  .mobile-menu-header { display:none !important; }
}
