*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,"Noto Sans KR",sans-serif;background:#f7f9fc;color:#172235;line-height:1.7}a{color:#1455ae}header{background:#0e213e;color:white;padding:16px 0}header a{color:white;text-decoration:none}nav{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.wrap{max-width:1080px;margin:auto;padding:0 22px}.brand{font-size:22px;font-weight:800;margin-right:auto}.hero{background:linear-gradient(115deg,#10294c,#155d86);color:white;padding:75px 0}.hero h1{font-size:clamp(30px,5vw,50px);line-height:1.25}.hero p{max-width:760px}.btn{display:inline-block;background:#ffcb4e;color:#18263b;padding:12px 22px;border-radius:9px;text-decoration:none;font-weight:750}.btn.secondary{background:white}.section{padding:46px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.card{background:white;border:1px solid #e0e7f0;border-radius:14px;padding:22px;box-shadow:0 4px 16px #10294c08}.card h3{margin-top:0}.muted{color:#53647a}.eyebrow{font-size:13px;letter-spacing:1px;font-weight:700;color:#a9d4f9}.crumb{font-size:14px;margin:22px 0;color:#53647a}.crumb a{color:#53647a}footer{background:#0e213e;color:#d8e6f4;padding:32px 0;margin-top:40px}footer a{color:#d8e6f4}.notice{border-left:4px solid #dca632;background:#fff8e5;padding:15px;margin:22px 0}.call{position:fixed;right:16px;bottom:16px;background:#f8bd36;color:#18263b;border-radius:30px;padding:12px 18px;box-shadow:0 5px 20px #0003;text-decoration:none;font-weight:800}.call.hidden{display:none}@media(max-width:600px){nav{gap:10px;font-size:14px}.brand{width:100%}.hero{padding:45px 0}}
.local-details{background:#fff;border:1px solid #dbe5ef;border-radius:16px;padding:22px;margin:24px 0}.local-details h2{margin-top:14px}.tip{background:#edf5fc;border-left:4px solid #2674ae;padding:12px 18px;border-radius:4px}.tip p{margin:4px 0}.call{z-index:100}.card:hover{border-color:#8eb9dc;transform:translateY(-2px);transition:transform .15s ease}a:focus-visible{outline:3px solid #ffbd33;outline-offset:3px}

/* v3: service descriptions and grouped coverage */
.section-intro{margin-bottom:22px}.section-intro h2,.coverage-block h2{margin:4px 0 10px}.section-intro p{color:#52647b;margin:0}.section-kicker{font-size:12px;font-weight:800;letter-spacing:.14em;color:#2c6ca3}.service-list{display:grid;gap:14px}.service-panel{display:flex;align-items:flex-start;gap:20px;background:#fff;border:1px solid #dce5ef;border-radius:16px;padding:25px 27px;box-shadow:0 5px 20px #10294c09}.service-panel h3{margin:0 0 8px;font-size:21px;color:#10294c}.service-panel p{margin:0 0 10px;color:#475b72}.service-icon{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#eaf2fc;font-size:25px}.detail-link{font-weight:700;text-underline-offset:3px}.coverage-block{margin-top:42px;padding:32px;border:1px solid #dce5ef;border-radius:18px;background:#eaf2fa}.coverage-block p{color:#3e536d}.area-chips{display:flex;flex-wrap:wrap;gap:9px;margin:19px 0}.area-chip{background:#fff;border:1px solid #d1dfed;border-radius:30px;padding:7px 15px;font-weight:700;color:#183a62}.coverage-near{margin-top:18px}.area-footnote{font-size:14px}.coverage-secondary{background:#fff;margin-top:18px}.consult-block{margin-top:35px;padding:30px;border-radius:18px;background:#112b4c;color:#fff}.consult-block h2{margin-top:0}.consult-block p{color:#d9e8f5}@media(max-width:600px){.service-panel{padding:19px 17px;gap:12px}.service-panel h3{font-size:19px}.service-icon{flex-basis:39px;width:39px;height:39px;font-size:21px}.coverage-block{padding:23px 18px}.call{font-size:14px;padding:10px 14px;right:12px;bottom:12px}}

/* v5 — comfortable responsive reading and spacing */
html{scroll-behavior:smooth}body{overflow-wrap:break-word;word-break:keep-all}p{line-height:1.85}h1,h2,h3{word-break:keep-all;overflow-wrap:break-word}main.wrap{width:100%}.section-intro{max-width:740px;margin-bottom:32px}.section-intro h2{font-size:clamp(26px,3vw,34px);line-height:1.35;margin:10px 0 16px}.section-intro p{font-size:16px;line-height:1.85}.service-list{gap:22px}.service-panel{padding:32px 36px;gap:24px;align-items:flex-start}.service-panel>div:last-child{min-width:0;flex:1}.service-panel h3{font-size:23px;line-height:1.4;margin:0 0 16px}.service-panel p{font-size:16px;line-height:1.9;margin:0 0 20px}.service-panel .detail-link{display:inline-block;line-height:1.65}.coverage-block{margin-top:56px;padding:40px}.coverage-block h2{margin:10px 0 18px}.coverage-block p{line-height:1.85}.consult-block{margin-top:42px;padding:38px}.consult-block p{max-width:680px}.hero p{font-size:17px;line-height:1.85}.hero h1{margin:18px 0 24px}.section{padding-top:64px;padding-bottom:64px}
@media(max-width:600px){
 .wrap{padding-left:24px;padding-right:24px}
 header{padding:17px 0}nav{column-gap:18px;row-gap:12px;line-height:1.6}.brand{font-size:19px;line-height:1.5}
 .hero{padding:56px 0 60px}.hero h1{font-size:clamp(27px,7vw,34px);line-height:1.4;margin:17px 0 24px}.hero p{font-size:15px;line-height:1.85;margin-bottom:25px}
 .section{padding-top:52px;padding-bottom:56px}.section-intro{margin-bottom:28px}.section-intro h2{font-size:27px;margin:9px 0 15px}.section-intro p{font-size:15px;line-height:1.85}
 .service-list{gap:20px}.service-panel{padding:26px 23px 28px;gap:16px;border-radius:18px}.service-icon{flex:0 0 38px;width:38px;height:38px;font-size:20px;border-radius:11px}.service-panel h3{font-size:19px;line-height:1.45;margin:2px 0 14px}.service-panel p{font-size:15px;line-height:1.9;margin-bottom:19px}.service-panel .detail-link{font-size:14px;line-height:1.65}
 .coverage-block{margin-top:44px;padding:29px 24px;border-radius:18px}.coverage-block h2{font-size:24px;line-height:1.4;margin:9px 0 16px}.coverage-block p{font-size:15px;line-height:1.85}.area-chip{font-size:13px;padding:7px 12px}.consult-block{padding:29px 24px;margin-top:32px}.consult-block h2{font-size:23px;line-height:1.4}.consult-block p{font-size:15px}
 .card,.local-details{padding:25px 23px}.call{font-size:13px;padding:10px 13px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));box-shadow:0 4px 14px #0002}
 footer{padding:34px 0 100px}footer p{font-size:14px}
}
@media(max-width:360px){.wrap{padding-left:19px;padding-right:19px}.service-panel{padding:23px 18px;gap:12px}.service-icon{flex-basis:34px;width:34px;height:34px}.service-panel h3{font-size:18px}.service-panel p{font-size:14px}}
