@charset "utf-8";
/**
 * 한의원·자연치유 팔레트 (오버라이드)
 * HTML 구조·이미지 경로 미변경 — 색상만 조정
 */
:root {
  --hanin-primary: #523900;
  --hanin-primary-rgb: 82, 57, 0;
  --hanin-bg: #f7f5f0;
  --hanin-text: #3a2f2a;
  --hanin-muted-bg: #efeae2;
  --hanin-accent: #c8a96a;
  --hanin-link: var(--hanin-primary);
  --hanin-cta: #c8a96a;
  --hanin-border: #e0d8ce;
}

/* 페이지 기본 톤 */
body {
  background: var(--hanin-bg) !important;
  color: var(--hanin-text);
}


#wrapper,
#container_wr,
#container {
  background-color: var(--hanin-bg);
}

a,
a:link,
a:visited {
  color: var(--hanin-link);
}

a:hover,
a:focus,
a:active {
  color: var(--hanin-accent);
}

/* 포커스 링: 블루 제거, 낮은 채도 */
input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  box-shadow: 0 0 5px rgba(var(--hanin-primary-rgb), 0.25) !important;
  border-color: var(--hanin-primary) !important;
}

/* 그누보드 기본 버튼 톤 */
a.btn_b02:hover,
button.btn_b02:hover {
  background: var(--hanin-cta) !important;
  color: var(--hanin-text) !important;
  border-color: var(--hanin-accent) !important;
}

a.btn_b02,
button.btn_b02 {
  background: var(--hanin-primary) !important;
  border-color: var(--hanin-primary) !important;
  color: #fff !important;
}

/* 고정 헤더: 히어로 위(스크롤 전)는 흰 글씨·흰 로고 톤, 시안 바(스크롤 후)는 검정 — 전역 a 링크색보다 우선 */
body:not(.scrolled) #header-wrap #lnb > ul > li > a,
body:not(.scrolled) #header-wrap #login-box a,
body:not(.scrolled) #header-wrap #login-box2 a,
body:not(.scrolled) #header-wrap #login-box3 a {
  color: #fff !important;
}
body:not(.scrolled) #header-wrap #lnb > ul > li > a:hover,
body:not(.scrolled) #header-wrap #login-box a:hover,
body:not(.scrolled) #header-wrap #login-box2 a:hover,
body:not(.scrolled) #header-wrap #login-box3 a:hover {
  color: #fff !important;
  opacity: 1;
}
body:not(.scrolled) #header-wrap .lnb-line #menu-ctl > a,
body:not(.scrolled) #header-wrap .lnb-line #menu-ctl i {
  color: #fff !important;
}
body:not(.scrolled) #header-wrap #lnb > ul > li > .arrow,
body:not(.scrolled) #header-wrap #lnb > ul > li > .arrow i {
  color: #fff !important;
}

body.scrolled #header-wrap #lnb > ul > li > a,
body.scrolled #header-wrap #login-box a,
body.scrolled #header-wrap #login-box2 a,
body.scrolled #header-wrap #login-box3 a {
  color: #fff !important;
}
body.scrolled #header-wrap #lnb > ul > li > a:hover,
body.scrolled #header-wrap #login-box a:hover,
body.scrolled #header-wrap #login-box2 a:hover,
body.scrolled #header-wrap #login-box3 a:hover {
  color: #fff !important;
}
body.scrolled #header-wrap .lnb-line #menu-ctl > a,
body.scrolled #header-wrap .lnb-line #menu-ctl i {
  color: #fff !important;
}
body.scrolled #header-wrap #lnb > ul > li > .arrow,
body.scrolled #header-wrap #lnb > ul > li > .arrow i {
  color: #fff !important;
}

body:not(.scrolled) #header-wrap #btn-menu-m:not(.active) span {
  background-color: #fff !important;
}
body.scrolled #header-wrap #btn-menu-m:not(.active) span {
  background-color: #fff !important;
}

/* 모바일: 햄버거 열림(X) 막대는 항상 검정 */
#btn-menu-m.active span {
  background-color: #1a1a1a !important;
}

/* 모바일 전체 메뉴 패널 — 1뎁스·펼침 화살표 흰색(menu.css와 동일 톤), 하위(어두운 배경) 유지 */
#m-lnb-wrapper #m-lnb > ul > li > a {
  color: #fff !important;
}
#m-lnb-wrapper #m-lnb > ul > li {
  border-bottom-color: rgba(255, 255, 255, 0.22) !important;
}
#m-lnb-wrapper #m-lnb > ul > li > span.arrow {
  background: rgba(255, 255, 255, 0.18) !important;
  border-left-color: rgba(255, 255, 255, 0.45) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08) !important;
}
#m-lnb-wrapper #m-lnb > ul > li > span.arrow::after {
  border-right-color: #fff !important;
  border-bottom-color: #fff !important;
}
#m-lnb-wrapper #m-lnb > ul > li li > a {
  color: #fff !important;
}
#m-lnb-wrapper #m-lnb > ul > li li > span {
  color: #fff !important;
}
#m-lnb-wrapper #m-lnb > ul > li li > span.arrow {
  background: rgba(255, 255, 255, 0.12) !important;
  border-left-color: rgba(255, 255, 255, 0.25) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06) !important;
}
#m-lnb-wrapper #m-lnb > ul > li li > span.arrow::after {
  border-right-color: #fff !important;
  border-bottom-color: #fff !important;
}

/* 헤더 좌측: 스크롤 전 logo.png, 스크롤 후 logo1.png(동일 위치·크기) */
#header-wrap .logo a {
  position: relative;
}
#header-wrap .logo .header-logo {
  display: block;
  max-height: 56px;
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
#header-wrap .logo .header-logo--scroll {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  display: none;
  pointer-events: none;
}
body.scrolled #header-wrap .logo a:has(.header-logo--scroll) .header-logo--top {
  visibility: hidden;
}
body.scrolled #header-wrap .logo a:has(.header-logo--scroll) .header-logo--scroll {
  display: block;
}
@media screen and (max-width: 1200px) {
  #header-wrap .logo .header-logo {
    max-height: 48px;
  }
}

/* 레이어·팝업 닫기(X) — 밝은 배경에서 보이도록 (퀵메뉴 패널과 동일 아이콘) */
.mfp-close:after {
  background-image: url("../img/btn_close.png") !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
}

/* 하단 퀵메뉴(전폭)와 겹치지 않게: 상단이동 버튼을 우측 카카오채널 칸 위에 배치 */
@media screen and (max-width: 1200px) {
  #top_btn {
    z-index: 110;
    /* 퀵 2행·패딩 합 이상 + 여백 (layout.css .quick @1200/768) */
    bottom: calc(env(safe-area-inset-bottom, 0px) + 182px);
    /* 3열 중 우측 1/3(카카오) 중앙 — 버튼 폭 50px 기준 */
    right: max(10px, calc(16.666% - 25px));
    left: auto;
  }
}

/* 모바일 햄버거 메뉴가 열리면 상단이동 버튼은 숨김 (메뉴가 최상단 레이어) */
body.m-lnb-open #top_btn {
  display: none !important;
}
