:root {
  --primary:#0057FF; --primary-light:#EBF0FF;
  --bg:#F4F6FB; --card:#FFFFFF;
  --text:#1A1D23; --text-sub:#6B7280;
  --border:#E5E9F2; --open:#00C48C;
  --content-max:560px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Noto Sans KR',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;}
header{background:var(--primary);color:#fff;padding:48px clamp(16px,5vw,24px) 40px;text-align:center;position:relative;overflow:hidden;}
header::before{content:'';position:absolute;top:-60px;right:-60px;width:260px;height:260px;background:rgba(255,255,255,0.07);border-radius:50%;}
header::after{content:'';position:absolute;bottom:-80px;left:-40px;width:200px;height:200px;background:rgba(255,255,255,0.05);border-radius:50%;}
.header-inner{max-width:var(--content-max);margin:0 auto;position:relative;z-index:1;}
.header-badge{display:inline-block;background:rgba(255,255,255,0.2);color:#fff;font-size:12px;font-weight:500;padding:4px 12px;border-radius:20px;margin-bottom:14px;}
header h1{font-family:'Montserrat',sans-serif;font-size:clamp(22px,5vw,32px);font-weight:900;line-height:1.25;margin-bottom:10px;}
header p{font-size:14px;opacity:0.85;margin-bottom:24px;line-height:1.5;}
.header-stats{display:flex;justify-content:center;align-items:flex-start;flex-wrap:wrap;gap:20px 24px;}
.stat{text-align:center;min-width:72px;max-width:160px;}
.stat-num{font-family:'Montserrat',sans-serif;font-size:clamp(17px,4.5vw,26px);font-weight:900;line-height:1.2;word-break:keep-all;}
.stat-label{font-size:11px;opacity:0.75;margin-top:4px;line-height:1.3;}
.seo-intro{background:#fff;border-bottom:1px solid var(--border);padding:20px clamp(16px,5vw,24px);}
.seo-intro-inner{max-width:var(--content-max);margin:0 auto;}
.seo-intro h2{font-size:15px;font-weight:700;margin-bottom:8px;}
.seo-intro p{font-size:13px;color:var(--text-sub);line-height:1.8;}
.seo-intro p + p{margin-top:10px;}
main{max-width:var(--content-max);margin:0 auto;padding:24px clamp(16px,5vw,24px) 56px;}
.result-count{font-size:13px;color:var(--text-sub);margin-bottom:16px;}
.result-count strong{color:var(--primary);font-weight:700;}
.hospital-card{background:var(--card);border-radius:16px;border:1px solid var(--border);margin-bottom:16px;overflow:hidden;transition:box-shadow 0.2s,transform 0.2s;}
.hospital-card:hover{box-shadow:0 8px 32px rgba(0,87,255,0.10);transform:translateY(-2px);}
.card-header{padding:20px 18px 14px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;}
.hospital-type{display:inline-block;font-size:11px;font-weight:700;color:var(--primary);background:var(--primary-light);padding:2px 8px;border-radius:4px;margin-bottom:6px;}
.hospital-name{font-size:18px;font-weight:700;line-height:1.3;}
.card-body{padding:0 18px 20px;display:flex;flex-direction:column;gap:12px;}
.info-row{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--text-sub);}
.info-icon{font-size:15px;flex-shrink:0;margin-top:1px;}
.info-text{line-height:1.5;}
.info-text a{color:var(--primary);text-decoration:none;font-weight:500;}
.doctor-info{display:flex;gap:16px;flex-wrap:wrap;}
.doctor-stat{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-sub);}
.doctor-stat strong{color:var(--text);font-weight:700;}
.duty-hours{background:var(--primary-light);border-radius:10px;padding:12px 14px;}
.duty-hours-title{font-size:12px;font-weight:700;color:var(--text);margin-bottom:8px;}
.hours-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;line-height:1.9;}
.hours-day{color:var(--text-sub);}
.hours-time{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;}
.duty-hours-note{margin-top:8px;font-size:11px;color:var(--text-sub);line-height:1.5;}
.equipment-wrap{background:var(--bg);border-radius:10px;padding:12px 14px;}
.equipment-title{font-size:11px;font-weight:700;color:var(--text-sub);letter-spacing:0.5px;margin-bottom:8px;text-transform:uppercase;}
.equipment-list{display:flex;flex-wrap:wrap;gap:6px;}
.equipment-item{display:flex;align-items:center;gap:5px;font-size:12px;background:#fff;border:1px solid var(--border);padding:3px 10px;border-radius:6px;}
.equipment-count{font-weight:700;color:var(--primary);}
.btn-group{display:grid;grid-template-columns:1fr;gap:10px;margin-top:6px;}
.btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-radius:12px;font-size:14px;font-weight:600;text-decoration:none;transition:all 0.15s;border:none;cursor:pointer;}
.detail-link{color:inherit;text-decoration:none;}
.detail-link::after{content:" ›";color:#0057FF;}
.btn-book{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:10px;}
.btn-tel{background:#00C48C;color:#fff;}
.btn-app{background:#fff;color:#0057FF;border:1.5px solid #0057FF;}
.btn-detail{background:#EBF0FF;color:#0057FF;}
.btn-review{background:#03C75A;color:#fff;}
.btn-map{background:#FEE500;color:#3C1E1E;}
footer{text-align:center;padding:24px clamp(16px,5vw,24px);font-size:12px;color:var(--text-sub);border-top:1px solid var(--border);line-height:1.7;}
.footer-inner{max-width:var(--content-max);margin:0 auto;}
@media(max-width:400px){
  .header-stats{gap:16px;}
}
  
