/* 병원 변기막힘 — service/hospital-toilet-blockage/style.css */

:root{
  --h: 130;
  --bg: hsl(var(--h) 14% 95%);
  --surface: hsl(var(--h) 22% 99%);
  --ink: hsl(var(--h) 30% 15%);
  --muted: hsl(var(--h) 10% 42%);
  --accent: hsl(var(--h) 50% 34%);
  --accent-ink: #fff;
  --line: hsl(var(--h) 16% 84%);
}
:root{ --font-title: 'Dongle', 'Pretendard Variable', Pretendard, sans-serif; --font-body: 'Pretendard Variable', Pretendard, 'Noto Sans KR', sans-serif; }

body{ background: var(--bg); color: var(--ink); font-family: var(--font-body); }
h1,h2,h3,.logo{ font-family: var(--font-title); font-weight:700; }
.container{ width:100%; max-width:1080px; margin-inline:auto; padding-inline:1.25rem; }
a{ color: var(--accent); }
main{ padding-block: 2.5rem; }
main section{ margin-bottom: 2.75rem; }
main h2{ font-size: clamp(1.5rem,1.1rem + 1.3vw,2rem); margin-bottom: 1rem; }
main h3{ font-size: 1.2rem; margin-bottom: .5rem; }
main p{ color: var(--ink); }
.lead{ color: var(--muted); }
.check-table{ width:100%; border-collapse:collapse; background:var(--surface); border:1px solid var(--line); }
.check-table th,.check-table td{ text-align:left; padding:.7rem .9rem; border-bottom:1px solid var(--line); font-size:.92rem; }
.check-table th{ color:var(--muted); font-weight:600; width:32%; }
.warn-box{ background:var(--surface); border-left:3px solid var(--accent); padding:1rem 1.1rem; margin-bottom:.9rem; border-radius:4px; font-size:.94rem; color:var(--ink); }
.faq{ background:var(--surface); border:1px solid var(--line); border-radius:6px; padding:.2rem 1.1rem; }
.faq details{ padding:.9rem 0; border-bottom:1px solid var(--line); }
.faq details:last-child{ border-bottom:none; }
.faq summary{ cursor:pointer; font-weight:600; }
.faq p{ margin-top:.6rem; color:var(--muted); font-size:.94rem; }
.related-links{ display:flex; flex-wrap:wrap; gap:.6rem; }
.related-links a{ background:var(--surface); border:1px solid var(--line); padding:.5rem .9rem; border-radius:999px; font-size:.88rem; }
.onsite-photo-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; max-width:900px; margin:0 auto; }
.onsite-photo-grid img{ width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:10px; box-shadow:0 4px 12px rgba(0,0,0,.08); }
@media(max-width:700px){ .onsite-photo-grid{ grid-template-columns:repeat(2,1fr); } }

.btn-tel{ display:inline-block; margin-top:1rem; background:var(--accent); color:var(--accent-ink); padding:.7rem 1.6rem; border-radius:6px; font-weight:700; }

/* v37: 원형 배지 로고 헤더(중앙정렬) + 점선 카드 히어로(중앙정렬) + 리본형 CTA */
.hdr--v37{ background:var(--surface); padding-block:1.1rem; border-bottom:1px solid var(--line); }
.hdr--v37 .hdr__inner{ display:flex; justify-content:center; }
.hdr--v37 .logo{ font-weight:700; font-size:1.4rem; color:var(--ink); display:flex; align-items:center; gap:.5rem; }
.hdr--v37 .logo__badge{ width:1.9rem; height:1.9rem; border-radius:50%; background:var(--accent); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:1rem; }

.hero--v37{ padding-block:3.4rem; background:var(--bg); }
.hero--v37 .hero__inner{ max-width:640px; margin-inline:auto; text-align:center; border:2px dashed var(--line); border-radius:16px; padding:2rem 1.8rem; background:var(--surface); }
.hero--v37 h1{ font-size:clamp(2.1rem,1.5rem + 2.4vw,3rem); margin-block:.6rem .9rem; color:var(--ink); }
.hero--v37 .kicker{ background:var(--accent); color:#fff; padding:.3rem .9rem; border-radius:999px; font-size:.82rem; font-weight:700; }
.hero--v37 .lead{ color:var(--muted); }

.cta--v37{ position:relative; background:var(--accent); padding-block:2.4rem; margin-block:1rem; }
.cta--v37 .container{ display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.cta--v37 h3{ font-family:var(--font-title); font-weight:700; font-size:1.5rem; margin:0 0 .3rem; color:#fff; }
.cta--v37 p{ color:rgba(255,255,255,.85); margin:0; }
.cta--v37 a{ display:inline-block; background:#fff; color:var(--accent); padding:.7rem 1.6rem; border-radius:999px; font-weight:700; white-space:nowrap; }

.ftr--v37{ background:hsl(var(--h) 14% 92%); border-top:1px solid var(--line); }
.ftr--v37 .ftr__inner{ display:flex; justify-content:center; padding-block:1.1rem; }
.ftr--v37 .ftr__biz{ font-size:.78rem; margin:0; text-align:center; }
