/* 변기막힘 공휴일 긴급출동 — service/public-holiday-emergency-dispatch/style.css */

:root{
  --h: 260;
  --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% 38%);
  --accent-ink: #fff;
  --line: hsl(var(--h) 16% 84%);
}
:root{ --font-title: 'East Sea Dokdo', '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:400; }
.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.4rem,1.05rem + 1.2vw,1.85rem); margin-bottom: 1rem; }
main h3{ font-size: 1.1rem; 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; }

/* v33: 박스 테두리 로고 헤더(중앙) + 수평 이중톤 히어로 + 다크 CTA */
.hdr--v33{ background:var(--surface); padding-block:1rem; border-bottom:1px solid var(--line); }
.hdr--v33 .hdr__inner{ display:flex; justify-content:center; }
.hdr--v33 .logo{ font-weight:400; font-size:1.4rem; color:var(--ink); border:1.5px solid var(--ink); padding:.3rem 1.2rem; }

.hero--v33{ padding-block:3.4rem 0; background:linear-gradient(180deg, var(--accent) 0 55%, var(--bg) 55% 100%); }
.hero--v33 .hero__inner{ max-width:680px; margin-inline:auto; text-align:center; padding-bottom:2.4rem; }
.hero--v33 h1{ font-size:clamp(2.1rem,1.4rem + 2.8vw,3.2rem); margin-block:.6rem .9rem; color:#fff; }
.hero--v33 .kicker{ background:rgba(255,255,255,.2); color:#fff; padding:.3rem .8rem; border-radius:4px; font-size:.82rem; font-weight:700; }
.hero--v33 .lead{ color:rgba(255,255,255,.92); max-width:540px; margin-inline:auto; }
.hero--v33 .btn-tel{ background:#fff; color:var(--accent); }

.cta--v33{ background:var(--ink); border-radius:0; padding-block:2.2rem; margin-block:1rem; text-align:center; }
.cta--v33 h3{ font-family:var(--font-title); font-weight:400; font-size:1.4rem; margin:0 0 .3rem; color:#fff; }
.cta--v33 p{ color:rgba(255,255,255,.7); margin:0 0 1rem; }
.cta--v33 a{ display:inline-block; background:var(--accent); color:#fff; padding:.7rem 1.6rem; border-radius:6px; font-weight:700; }

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