/* ---------------------------------------------------------------------------------------------------------------------
   이호석한의원 홈 전용 — test2.noszip.com index.html 페이지 <style> 그대로 (script/convert-test2-home.py 생성)
   user/home.html 만 로드한다. 헤더 관련(#hdr-*, #bar-*, #drawer)은 우리 틀에 없어 무해하게 남는다.
--------------------------------------------------------------------------------------------------------------------- */
*{ box-sizing:border-box; }
body{ margin:0; background:var(--bg); color:var(--ink); font-family:var(--font-body, Pretendard, -apple-system, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif); -webkit-font-smoothing:antialiased; letter-spacing:-0.01em; }
h1,h2,h3,h4{ font-family:var(--font-heading, "Noto Serif KR", serif); font-weight:600; margin:0; letter-spacing:-0.025em; }
p{ margin:0; text-wrap:pretty; }
a{ color:var(--accent); text-decoration:none; }
a:hover{ color:var(--gold); }
ul,ol{ margin:0; padding:0; list-style:none; }
summary::-webkit-details-marker{ display:none; }
@keyframes riseIn{ from{ opacity:0; transform:translateY(16px);}
to{ opacity:1; transform:none;}
}
  @media (max-width:1160px){ #hdr-logo{ height:40px !important }
}
  @media (max-width:1100px){ #hdr-cta{ display:none !important }
}
  @media (max-width:1220px){ #hdr-nav,#bar-nav{ display:none !important }
}
  @media (min-width:1221px){ #hdr-burger,#bar-burger,#drawer{ display:none !important }
}
  @media (max-width:1100px){ #areas-grid{ grid-template-columns:repeat(2,1fr) !important }
}
  @media (max-width:620px){ #areas-grid{ grid-template-columns:1fr !important }
}
  @media (max-width:1280px){ #brand-en{ display:none }
}
  @media (max-width:1000px){ #why-grid{ grid-template-columns:repeat(2,1fr) !important; row-gap:52px }
#why-grid span[aria-hidden].m-left50, #why-grid span[aria-hidden].m-left50{ display:none }
}
  @media (max-width:520px){ #why-grid{ grid-template-columns:1fr !important }
}

@media (max-width:1100px){.sig-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }
.rev-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }
.col-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }}
@media (max-width:560px){.sig-grid{ grid-template-columns:1fr !important }
.rev-grid{ grid-template-columns:1fr !important }
.col-grid{ grid-template-columns:1fr !important }}
.dir-btn:hover .dir-ico{ color:#2E733B !important }
@media (max-width:900px){.ft-grid{ grid-template-columns:1fr !important; gap:40px !important }}
  .m-br{ display:none }
  @media (max-width:640px){ .m-br{ display:inline } }
  @media (max-width:900px){ #stat-strip dl{ grid-template-columns:repeat(2,minmax(0,1fr)) !important } }
@media (max-width:1000px){ #hero-title + p{ font-size:17px !important; line-height:1.5 !important } }   /* 히어로 부제, 모바일 메뉴 구간 (2026-10-16) */
/* mobile-polish */
  @media (max-width:640px){
    .m-fs4:not([aria-hidden]), .m-fs4:not([aria-hidden]){ font-size:32px !important; letter-spacing:-0.04em !important; line-height:1.4 !important }
.m-fs3:not([aria-hidden]), .m-fs3:not([aria-hidden]){ font-size:25px !important; letter-spacing:-0.035em !important; line-height:1.45 !important }
h1{ font-size:clamp(30px,9vw,37px) !important; letter-spacing:-0.04em !important }   /* 히어로 슬라이드 제목, 모바일 한 단계 키움 (2026-10-16) */
h2{ font-size:clamp(26px,8vw,32px) !important; line-height:1.4 !important }
figure{ max-width:100% !important; box-sizing:border-box !important; padding-left:22px !important; padding-right:22px !important }
#reviews blockquote{ font-size:17px !important }
    #reviews figure p.m-fs22px, #reviews figure p.m-fs22px{ font-size:24px !important }
[role="img"][aria-label*="약도"]{ aspect-ratio:auto !important; min-height:240px !important }
}
  @media (max-width:1000px){ h1, h2, h3, h4, dt, dd, blockquote, figcaption{ word-break:keep-all; overflow-wrap:anywhere; text-wrap:balance } }
  @media (max-width:640px){
p, li{ word-break:keep-all; overflow-wrap:anywhere }
img, video, iframe{ max-width:100% }
#hero-title + p{ font-size:17px !important; line-height:1.5 !important; margin-top:12px !important }   /* 히어로 부제 행간 (2026-10-16) */
    #stat-strip{ height:auto !important; min-height:280px }
    #stat-strip dl{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }

  }
/* 원본 유지: 메인페이지 본문은 브라우저 기본 metric */
body{ font-size:16px; line-height:normal }
/* hover 상태 — 원본 style-hover 속성에서 변환 */
.hv-1:hover{ background:#2E733B !important; color:#fff !important }
.hv-2:hover{ background:#2E733B !important; color:#fff !important; border-color:#2E733B !important }
.hv-3:hover{ color:#20291f !important }
.hv-4:hover{ color:#fff !important }
.hv-5:hover{ color:#2E733B !important }
.hv-6:hover{ background:#fff !important; color:#2E733B !important }
.hv-7:hover{ border-color:var(--accent) !important; color:var(--accent) !important }

/* 공통 post-content.css 의 전역 blockquote(왼쪽 선·배경·여백 — 빌더 인용 블록용)를 되돌린다. 0,0,1 · 뒤에 로드되어 이기고 원본 클래스에는 진다 */
:where(body[data-home]) blockquote{ margin:0; padding:0; border:0; border-radius:0; background:none; }
/* 공통 site.css 의 전역 th·td(테두리·여백)를 브라우저 기본으로 — 진료시간 표 (원본 클래스 .th-17 의 여백은 그대로 이긴다) */
:where(body[data-home]) :is(th, td){ border:0; padding:1px; }
/* 약도 — 지도가 원본 자리(div-bg-5)를 꽉 채우고, 길찾기 버튼은 지도 위에 */
.jy-map__canvas{ position:absolute; inset:0; z-index:0; }
.jy-map > a{ z-index:1; }
/* 한 단 배치(≤900px)에서는 격자 높이가 없어 지도가 0 높이가 된다 — 원본 [role=img][aria-label*=약도] 최소 높이를 클래스로 */
@media (max-width:900px){ .jy-map{ min-height:320px; } }
@media (max-width:640px){ .jy-map{ min-height:260px; } }
