:root{--accent:#17675c;--soft:#e9f5ef;--outline:#e3ebe8}body{background:#f8fafb;color:#203c39}.catalog-hero{max-width:none;background:linear-gradient(125deg,#eaf6ef,#eef4ff 72%,#f8f0ff);border:1px solid #e2eee9;border-radius:24px;padding:32px!important;margin:12px 0 22px}.catalog-hero .kicker{color:#4d7b6b}.catalog-hero p{color:#57716a}.catalog-hero h1 em{color:#17675c}.care-catalog{padding:22px 0 28px}.care-catalog>.section-head h2{font-size:24px}.colorful-care{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}.colorful-care>a{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;border:1px solid #e7eceb;background:#fff;border-radius:16px;min-height:116px;gap:12px;padding:17px 5px;transition:transform .15s,box-shadow .15s}.colorful-care>a:hover{background:#fff;transform:translateY(-3px);box-shadow:0 7px 22px #1d554b12}.colorful-care .care-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:#e9f4ef;color:#32836b}.colorful-care b{font-size:12px;color:#334d48}.colorful-care .tone-1 .care-icon{background:#eaf1ff;color:#567dd0}.colorful-care .tone-2 .care-icon{background:#f1ebff;color:#8c65bf}.colorful-care .tone-3 .care-icon{background:#fff0e5;color:#ce8c5e}.colorful-care .tone-4 .care-icon{background:#ffedf2;color:#cb7596}.colorful-care .tone-5 .care-icon{background:#e6f5fa;color:#4799ae}.colorful-care>a.selected{border-color:#289983;box-shadow:0 0 0 1px #289983;background:#f2fbf7}.local-discovery{padding:0 0 28px}.local-context{display:flex;align-items:center;gap:9px;background:#eaf4f0;border:1px solid #dcece4;border-radius:12px;padding:15px 18px;margin-bottom:26px;font-size:14px}.location-dot{color:#339d83;font-size:10px}.local-context a{margin-left:auto;font-size:12px;color:#487c6a;padding:5px 0}.local-regions{padding:22px 0 32px;border-top:1px solid #e4ece8}.local-regions .section-head small{font-size:11px;color:#8c9b96}.region-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.region-chips>a{display:flex;align-items:center;justify-content:space-between;gap:7px;border:1px solid #e4eae8;background:#fff;border-radius:10px;padding:14px;color:#486159;text-decoration:none;font-size:13px;min-height:48px}.region-chips>a:hover{border-color:#62aa97;background:#eff9f3}.region-arrow{color:#8eb3a7;font-size:20px}.more-regions{margin-top:12px}.more-regions summary{padding:13px;text-align:center;cursor:pointer;color:#638778;background:#eef4f1;border-radius:9px;font-size:12px}.more-regions .region-chips{margin-top:12px}.province-grid>a.region-card{display:flex;align-items:center;justify-content:space-between;text-decoration:none;background:#fff;border:1px solid #e1e9e5;padding:16px;border-radius:12px;min-height:76px}.province-grid>a.region-card:hover{background:#edf8f2;border-color:#82b9a6}.region-card b{font-size:15px;color:#335b4e}.region-card small{display:block;font-size:11px;color:#90a397;margin-top:3px}.region-card .region-arrow{font-size:24px}.results-heading{display:flex;justify-content:space-between;align-items:center;padding:18px 0}.results-heading h2{font-size:21px}.results-heading>span{font-size:13px;color:#598e7b}.public-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;background:linear-gradient(130deg,#fff,#f1f7f5);border-color:#dfeae5}.public-filter label{font-size:12px;color:#59766b}.public-filter select{min-height:44px;background:#fff}.real-clinic,.hospital-card{border-color:#e2ebe7;box-shadow:0 3px 12px #31594b03}.real-clinic .avatar{background:#ecf4ff;color:#6c87bb}.real-clinic .real-actions{display:block}.real-clinic .real-actions .primary{display:flex;justify-content:center;min-height:44px;align-items:center;background:#e9f5ef;color:#28715b;border:1px solid #d6eade;font-size:13px}.real-clinic .real-actions .primary:hover{background:#dceddf}.map-frame{padding:5px;background:linear-gradient(130deg,#dceee5,#e5effb);border-radius:16px;overflow:hidden}.map-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.map-header h2{margin:0}.map-pill{background:#e8f6ee;color:#4e8c70;padding:5px 9px;border-radius:20px;font-size:10px}.directions .street-address{padding:0 2px;color:#536b61}.copy-address{background:#eff7f3;border-color:#dcebe3;color:#407762}.hospital-photo{background:linear-gradient(120deg,#e7f0e8,#eff2fb)}.sponsor-banner{grid-column:1/-1;border:1px solid #e2e9e5;border-radius:14px;background:#fff;overflow:hidden;margin:18px 0}.sponsor-label{display:block;padding:8px 12px;font-size:10px;color:#8c9993}.sponsor-banner img{display:block;width:100%;height:auto;max-height:250px;object-fit:contain}.intro .eyebrow{color:#7c9c90}.local-discovery+.local-regions{margin-top:0}body:has(.local-discovery)>.intro{padding:20px 0}.care-extra a{background:#f0f4f8;color:#62778a}.all-care summary{color:#5a7d6e}
@media(max-width:1000px){.colorful-care{grid-template-columns:repeat(4,minmax(0,1fr))}.region-chips{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.catalog-hero{padding:23px 18px!important;border-radius:18px;margin-top:8px}.catalog-hero h1{font-size:27px;line-height:1.42}.catalog-hero .search-box{margin-top:19px}.catalog-hero .search-box input{font-size:16px!important}.catalog-hero .search-box input::placeholder{font-size:12px}.catalog-hero .search-box>span{display:none}.catalog-hero .search-box .primary{padding:10px 12px}.catalog-hero p{font-size:12px}.care-catalog{padding:16px 0 26px}.care-catalog>.section-head h2{font-size:21px}.colorful-care{gap:8px}.colorful-care>a{min-height:99px;gap:10px;padding:12px 2px;border-radius:13px}.colorful-care .care-icon{width:39px;height:39px;border-radius:13px}.colorful-care b{font-size:10.5px;line-height:1.45;letter-spacing:-.5px}.colorful-care svg{width:23px;height:23px}.local-context{padding:13px 14px;font-size:13px;gap:8px;margin:5px 0 22px}.local-context strong{word-break:keep-all}.local-context a{white-space:nowrap;min-height:30px;display:inline-flex;align-items:center}.local-discovery h2{font-size:21px;line-height:1.5}.local-discovery{padding-bottom:22px}.region-chips{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.region-chips>a{font-size:12px;padding:11px 10px;min-height:47px;line-height:1.5}.local-regions{padding:20px 0 26px}.local-regions .section-head h2{font-size:19px}.province-grid>a.region-card{padding:14px 12px;min-height:72px}.region-card b{font-size:14px}.region-card small{font-size:10px}.results-heading{padding:16px 0}.results-heading h2{font-size:19px}.public-filter{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.public-filter select{font-size:16px}.real-clinic .real-actions{display:block}.real-clinic .real-actions .primary{font-size:13px!important}.map-frame{margin:0 -2px;border-radius:13px}.map-frame iframe{border-radius:9px!important}.map-header{margin-bottom:15px}.map-pill{font-size:9px}.sponsor-banner{margin:12px 0;border-radius:12px}.intro:has(+.local-discovery){padding:20px 0 14px}.intro:has(+.local-discovery) h1{font-size:23px;margin:9px 0}.sponsor-banner img{max-height:180px}}
@media(prefers-reduced-motion:reduce){.colorful-care>a{transition:none}}

.local-discovery .all-care{margin-top:14px}.local-discovery .all-care summary{padding:12px;text-align:center;background:#eef4f1;border-radius:9px;cursor:pointer;font-size:12px;color:#638778}.local-discovery .all-care .colorful-care{margin-top:12px}

/* premium hospital presentation */
.hospital-intro{background:linear-gradient(125deg,#edf6f2,#f3f6fd);border:1px solid #e2ece6;border-radius:20px;padding:28px;margin:20px 0}.hospital-intro h1{font-size:30px;letter-spacing:-1px}.hospital-facts{display:flex;gap:0;margin-top:22px;border-top:1px solid #dce8e1;padding-top:18px}.hospital-facts:empty{display:none}.hospital-facts>span{font-size:11px;color:#839a8e;padding:0 22px;border-right:1px solid #dfe9e2}.hospital-facts>span:first-child{padding-left:0}.hospital-facts>span:last-child{border:0}.hospital-facts b{font-size:20px;color:#365f4d;display:block}.gallery-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b7d4c6 transparent}.gallery-track>figure{flex:0 0 100%;scroll-snap-align:start}.photo-open{position:relative;display:block;border:0;padding:0;width:100%;cursor:zoom-in;background:#edf3ef}.photo-open>img{display:block;width:100%;aspect-ratio:1.5;object-fit:cover;max-height:420px}.photo-count{position:absolute;right:12px;bottom:12px;background:#153d38b8;color:white;border-radius:20px;padding:6px 11px;font-size:10px;backdrop-filter:blur(8px)}.gallery-hint{font-size:10px;color:#8b9b92;margin:-8px 0 18px}.photo-dialog{padding:18px;border:0;border-radius:16px;max-width:94vw;max-height:92vh;background:#fff}.photo-dialog::backdrop{background:#122c2bbd;backdrop-filter:blur(7px)}.photo-dialog form{display:flex;justify-content:end;margin:0 0 8px}.photo-dialog button{background:#eff4f1;border:0;border-radius:50%;width:40px;height:40px;font-size:24px;color:#49675a;cursor:pointer}.photo-dialog>img{max-height:74vh;max-width:85vw;width:auto;object-fit:contain}.photo-dialog>p{font-size:12px;color:#728c7e;margin:10px 0 0}.hospital-card-image{display:block;margin:-23px -23px 18px;overflow:hidden;border-radius:12px 12px 0 0}.hospital-card-image img{display:block;width:100%;height:180px;object-fit:cover}.hospital-card{transition:box-shadow .15s,transform .15s}.hospital-card:hover{box-shadow:0 8px 25px #285c4210;transform:translateY(-2px)}.hospital-card h2{line-height:1.55}.naver-map-host[hidden]{display:none}.detail-tabs{border:1px solid #e3eae6;border-radius:12px;padding:6px;background:#ffffffed;backdrop-filter:blur(12px)}.detail-tabs a{color:#6f897b;font-weight:500}.detail-tabs a:focus,.detail-tabs a:hover{background:#e9f5ef;color:#2f775b}.results-heading{margin-top:10px}.local-regions{border-top:0;background:#f0f5f3;border-radius:18px;padding:22px;margin-bottom:26px}.region-chips>a{border-color:#e4ece7;box-shadow:0 2px 4px #335e4403}.local-context{background:#fff;border-color:#e3eae6}.local-discovery{padding-top:10px}@media(max-width:650px){.hospital-intro{padding:21px 17px!important;border-radius:16px;margin:16px 0}.hospital-intro h1{font-size:24px}.hospital-facts>span{padding:0 18px;font-size:10px}.hospital-facts b{font-size:19px}.hospital-card-image{margin:-18px -18px 16px}.hospital-card-image img{height:190px}.photo-open>img{aspect-ratio:1.4}.local-regions{padding:18px 12px;border-radius:15px}.local-regions .section-head{padding:0 3px}.region-chips>a{padding:12px 9px}.detail-tabs{border-radius:10px;gap:0}.detail-tabs a{padding:0 10px;font-size:12px}.photo-count{font-size:9px}}

.facility-tabs{display:flex;gap:10px;padding-top:24px}.facility-tabs a{padding:12px 20px;border-radius:14px;background:#e9f1fb;color:#2d5480;text-decoration:none;font-weight:700;font-size:14px}.facility-tabs a.active{background:#236c59;color:white}.facility-tabs a:last-child{background:#f0ebfb;color:#6a4c91}@media(max-width:600px){.facility-tabs a{flex:1;text-align:center;padding:13px 8px}}
#hours table{table-layout:fixed;width:100%}#hours table th:first-child{width:25%;white-space:nowrap}#hours table td{word-break:keep-all;overflow-wrap:anywhere;line-height:1.65}
#hours table td{white-space:normal!important}

.hospital-logo{margin:0 0 20px;padding:12px 16px;background:#fff;border:1px solid #e1e9ec;border-radius:16px;display:table;max-width:100%}.hospital-logo img{display:block;width:auto;height:auto;max-width:240px;max-height:88px;object-fit:contain}.hospital-logo figcaption{font-size:10px;line-height:1.5;color:#72818a;margin-top:8px}.hospital-logo figcaption a{color:inherit}.hospital-logo.compact{margin:14px 0;padding:10px;max-width:180px}.hospital-logo.compact img{max-width:150px;max-height:48px}.hospital-logo-avatar{background:#fff!important;border:1px solid #e1e9ec;padding:5px}.hospital-logo-avatar img{width:100%;height:100%;object-fit:contain}@media(max-width:600px){.hospital-logo img{max-width:200px;max-height:72px}}

.hospital-call-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));z-index:40;display:flex;align-items:center;gap:12px;padding:15px 22px;border-radius:50px;background:#236e5c;color:#fff!important;text-decoration:none;box-shadow:0 8px 28px #174e3940;border:1px solid #ffffff25}.hospital-call-fab span{display:flex;flex-direction:column;gap:3px}.hospital-call-fab b{font-size:14px}.hospital-call-fab small{font-size:11px;opacity:.85}.hospital-call-fab:hover{background:#185744}.hospital-call-fab:focus-visible{outline:3px solid #79baf0;outline-offset:4px}body:has(.hospital-call-fab){padding-bottom:94px}@media(max-width:600px){.hospital-call-fab{right:16px;bottom:calc(18px + env(safe-area-inset-bottom));padding:13px 18px;gap:9px}.hospital-call-fab b{font-size:13px}.hospital-call-fab small{font-size:10px}}

.department-filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.department-filters a{padding:12px 16px;border:1px solid #cbded7;border-radius:24px;color:#245c50;background:#f2f8f5;text-decoration:none;font-size:14px}.department-filters [aria-current=page]{background:#245c50;color:white}.specialist-badge{display:inline-block;padding:6px 10px;background:#e9f3fc;color:#24547b;border-radius:8px;font-size:13px}.breadcrumbs{line-height:2;overflow-wrap:anywhere}

.live-hours{margin:18px 0;padding:15px 17px;border:1px solid #dce6df;border-radius:14px;background:#fff}.live-hours>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.live-hours b{font-size:15px}.live-hours [data-status-clock]{font-size:12px;color:#738177;margin-left:auto}.live-hours small{display:block;font-size:11px;color:#7b897f;margin-top:8px}.status-dot{width:8px;height:8px;border-radius:50%;background:#909b95}.live-hours[data-state=open]{background:#edf9f1;border-color:#b8dfc6}.live-hours[data-state=open] .status-dot{background:#28955b}.live-hours[data-state=break] .status-dot{background:#d39c2f}@media(max-width:480px){.live-hours{padding:12px}.live-hours small{font-size:10px}}

.naver-map-link{display:inline-flex;align-items:center;justify-content:center;background:#e9f7ed!important;color:#16703b!important;border:1px solid #c6e4ce!important;font-weight:700;text-decoration:none;padding:11px 15px;border-radius:10px}.directions .actions{display:flex;gap:10px;flex-wrap:wrap}

.naver-map-host{height:380px;width:100%;border-radius:16px;overflow:hidden;background:linear-gradient(130deg,#e5f1e9,#e9eef7)}.region-map{margin:24px 0}.map-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:15px 0}.map-filters label{display:grid;gap:6px;font-size:12px;color:#5b6e61}.map-filters select{max-width:230px;padding:10px;border:1px solid #cfddd3;border-radius:9px;background:#fff}.map-filters button,.map-retry{padding:11px 17px;border:0;border-radius:10px;background:#276956;color:white}.map-count,.map-note{font-size:12px;color:#708174}.map-cluster{display:grid;place-items:center;width:40px;height:40px;border:2px solid white;border-radius:50%;background:#236f57;color:#fff;font-weight:700;box-shadow:0 2px 7px #0002}.map-popup{padding:16px;max-width:240px;font-size:14px}.map-popup a{display:block;margin-top:9px;color:#236f57}@media(max-width:600px){.naver-map-host{height:330px}.map-filters label{flex:1;min-width:100px}.map-filters select{width:100%;max-width:100%}.map-filters button{width:100%}}

.map-popup small{display:block;color:#68796e;margin:8px 0;font-size:11px}.map-popup{max-height:280px;overflow:auto}.map-results-link{font-size:13px;color:#24664e;font-weight:700}

.map-hospital-panel{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(660px,90vw);max-width:100vw;border:0;padding:0;background:#f7faf8;box-shadow:-8px 0 40px #0002}.map-hospital-panel[open]{display:flex;flex-direction:column}.map-hospital-panel::backdrop{background:#152a2440}.panel-bar{display:flex;align-items:center;gap:12px;padding:15px 18px;background:white;border-bottom:1px solid #dce6df}.panel-bar strong{font-size:15px}.panel-bar a{margin-left:auto;font-size:11px;color:#376d58}.panel-bar button{border:0;background:#edf4ef;border-radius:50%;width:34px;height:34px;font-size:24px}.map-hospital-panel iframe{border:0;width:100%;flex:1;background:#f7faf8}body:has(.map-hospital-panel[open]){overflow:hidden}@media(max-width:650px){.map-hospital-panel{inset:auto 0 0;height:90dvh;width:100vw;border-radius:20px 20px 0 0}.panel-bar{padding:12px 15px}}

.map-hospital-panel{overflow:hidden;overscroll-behavior:contain}.panel-bar{flex-shrink:0;min-height:58px}.panel-bar button{width:44px;height:44px;min-width:44px;touch-action:manipulation}.panel-bar a{min-height:44px;display:flex;align-items:center}.map-hospital-panel iframe{display:block;min-height:0;flex:1 1 0}.embedded-detail{margin:0;overflow-x:hidden}.embedded-detail main{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}.embedded-detail .hospital-call-fab{bottom:calc(12px + env(safe-area-inset-bottom,0px))}.map-filters select,.map-filters button,.map-retry,.directions .actions>a,.copy-address{min-height:44px}@media(max-width:650px){.map-hospital-panel{height:94dvh;max-height:94dvh;max-width:100%;border-radius:18px 18px 0 0}.panel-bar{padding:8px 12px;gap:8px}.panel-bar strong{font-size:14px}.panel-bar a{font-size:10px;white-space:nowrap}.region-map .naver-map-host{height:clamp(260px,44dvh,360px)}.embedded-detail .naver-map-host{height:clamp(220px,36dvh,300px)}.embedded-detail .directions .actions{display:grid;grid-template-columns:1fr}.embedded-detail .directions .actions>*{width:100%;justify-content:center}.embedded-detail .hospital-call-fab{right:12px}.map-filters{gap:8px}.map-filters label{min-width:0;flex:1 1 40%}.map-filters select{min-width:0;width:100%;font-size:16px}.map-note{line-height:1.6}}

@media(max-width:650px){body.embedded-detail:has(.hospital-call-fab){height:100dvh;overflow:hidden;padding:0!important}body.embedded-detail:has(.hospital-call-fab) main{height:calc(100dvh - 88px - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 88px - env(safe-area-inset-bottom,0px));overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-sizing:border-box;margin:0!important;padding:16px 16px 24px;scroll-padding-top:70px}body.embedded-detail .hospital-call-fab{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:50;max-height:64px;box-sizing:border-box}.embedded-detail .directions .actions{margin-bottom:0}.embedded-detail .copy-address{width:100%;min-height:46px}}

.panel-grab{display:none}@media(max-width:650px){.panel-bar{position:relative;padding-top:20px;touch-action:none;user-select:none}.panel-grab{display:block;position:absolute;width:42px;height:5px;top:7px;left:calc(50% - 21px);border-radius:10px;background:#bfcdc5}.map-hospital-panel{will-change:transform}}@media(prefers-reduced-motion:reduce){.map-hospital-panel{transition:none!important}}

/* Neighborhood discovery: list first, optional map. */
.region-map-disclosure{margin:20px 0;border:1px solid #dce9e4;border-radius:16px;background:#fff;overflow:hidden}.region-map-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:14px 18px;cursor:pointer;list-style:none;color:#215c48;font-weight:700}.region-map-disclosure>summary::-webkit-details-marker{display:none}.map-toggle-label{font-size:13px;color:#667d74}.region-map-disclosure[open]>summary{border-bottom:1px solid #e7eeea}.region-map-disclosure[open] .map-toggle-label{font-size:0}.region-map-disclosure[open] .map-toggle-label:after{content:'접기';font-size:13px}.region-map-disclosure>.region-map{border:0;border-radius:0;margin:0;box-shadow:none}.region-map-disclosure>summary:focus-visible{outline:3px solid #73bba6;outline-offset:-3px}
