.site-header{display:grid;grid-template-columns:240px 1fr 240px;/* PC 기본 */
  grid-template-areas:"brand search quick";align-items:center;padding:1rem 0;}
.nav-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:#fff;border-bottom:0.0625rem solid var(--line);transition:box-shadow .2s ease, transform .2s ease;}
.nav-header.is-stuck{box-shadow:var(--shadow);}
.clinic-hero{background:var(--bg-soft);padding: 0;overflow:hidden;padding-top: 1rem; padding-bottom: 0.75rem;}
.clinic-hero__grid{display:grid;grid-template-columns:1.6fr .9fr;gap:1.5rem;}
.clinic-hero__brand{display:flex;gap:1.125rem;align-items:flex-start;}
.clinic-name{margin:0 0 0.125rem;font-size:1.75rem;font-weight:900;}
.clinic-sub{margin:0;color:var(--muted);margin-top:-4px;}
.chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.375rem;margin:0.125rem 0 0;padding:0;list-style:none;}
.badges{display:flex;flex-wrap:wrap;gap:0.625rem;padding:0;list-style:none;}
.badges .badge{display:inline-flex;align-items:center;gap:0.5rem;padding:.5rem .8rem;border: 1px solid var(--line); border-radius:62.4375rem;background:#fff;font-weight:700;color:#111827;}
.badge .check{display:inline-block;place-items:center;width:auto;height:auto;border-radius:0;background:transparent;color:var(--brand);font-size:0.875rem;line-height:1;padding:0;}
.info20 .clinic-name{font-size:clamp(1.25rem, 2.2vw, 1.875rem);display:block;flex-wrap:wrap;align-items:center;gap:0.75rem;margin:0;font-weight:900;letter-spacing:-.0.125rem;justify-content:space-between;}
.info20 .clinic-name .name-sub{font-weight:800;color:var(--muted);}
.info20 .clinic-sub{margin:0.125rem 0 0.375rem;color:var(--muted);display:flex;align-items:center;gap:0.625rem;}
.info20 .clinic-sub::before{content:"";display:inline-block;width:0;height:0;}
.chips .chip{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:0;padding:.38rem .6rem;font-weight:700;font-size:0.75rem;color:#111827;}
.info20 .clinic-addr{margin:0;color:var(--ink);}
.info20 .clinic-rating{margin:4px 0 6px 0;color:var(--muted);font-weight:700;}
.info20 .clinic-kor{font-size:clamp(1rem, 1.6vw, 1.375rem);font-weight:500;margin:0 0 0.125rem;color:var(--muted);/* remove bold */}
.clinic-hero .container{position:relative;}
.book026__head .head-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--brand-sub);}
.book026__head .head-text{font-weight:900;}
.booking__head{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.5rem;margin:0.6rem 0 0.375rem;justify-content:space-between;padding:0.75rem 1.5rem;min-height:52px;position:relative;}
.booking__head .head-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--brand-sub);}
.booking__head .head-text{font-weight:900;color:#111827;font-size:1rem;}
.treat-chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.5rem;position:relative;align-items:center;}
.treat-chips.collapsed{max-height:60px;overflow:hidden;}
.treat-chips.collapsed::after{content:"";position:absolute;bottom:0;left:0;right:0;height:24px;background:linear-gradient(to bottom, rgba(255,255,255,0), #fff);}
.treat-chips:empty{display:none;margin-top:0;}
.right21 .badges{display:flex;flex-wrap:wrap;gap:0.375rem;}
.right21 .badges > *{flex:0 0 auto;}
.clinic-hero .hero21{display:grid;grid-template-columns:1fr 1fr;gap:2rem;}
.clinic-hero .right21{display:flex;flex-direction:column;gap: 0;}
.clinic-hero .right21 .booking{position:sticky;top: 0;}
.nav-header--fixed{position:fixed;top:0;left:0;right:0;background:#fff;box-shadow:var(--shadow);z-index:1000;}
.nav-header--fixed .containers{width:min(1200px, 100% - 32px);margin-inline:auto;}
.nav-header--fixed .subnav-edge{position:absolute;}
.booking .booking__head{position:relative;}
.price-head{width:100%;display:flex;align-items:center;gap:0.625rem;padding:0.875rem 1rem;background:#fff;color:#10223a;border:0;cursor:pointer;}
.price-head .ico{width:10px;height:10px;border-radius:50%;background:var(--deep,#31527E);}
.price-head .title{font-weight:700;font-size:1rem;}
.price-head .chev{margin-left:auto;inline-size:10px;block-size:10px;border:2px solid currentColor;border-left:0;border-top:0;transform:rotate(45deg);transition:transform .25s ease;}
.price-head[aria-expanded="true"] .chev{transform:rotate(225deg);}
#prices .price-row--head{background:transparent;}
#prices .price-head{border-bottom:0.0625rem solid #EEF2F7;}
@media (max-width:1024px){.site-header{grid-template-columns:1fr 1fr;grid-template-areas:"brand quick" "search search";padding:1.25rem 0;}}
@media (max-width:768px){.treat-chips.collapsed{max-height:54px;}.clinic-hero .hero21{grid-template-columns:1fr;gap:1.5rem;}.clinic-hero .hero21{grid-template-columns:1fr;gap:1.5rem;}.booking .booking__head{position:relative;}.clinic-hero .media21{order:1;}.clinic-hero .media21{display:block;}.clinic-hero .right21{order:2;width:100%;max-width:100%;gap: 0;}.clinic-hero .thumbs21-wrap{margin-top:0.5rem;}.right21 .info20, .right21 .badges, .right21 .booking{width:100%;max-width:100%;}.site-header .quick .btn{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0.375rem 0.625rem;border:1px solid #e6e6e6;border-radius:62.4375rem;font-size:0.75rem;line-height:1;background:#fff;white-space:nowrap;}.clinic-hero .right21 .info20,
  .clinic-hero .right21 .badges,
  .clinic-hero .right21 .booking{width:100%;max-width:100%;}.booking__head{justify-content:center;}.clinic-hero .right21 .booking{position:static;top: 0;}.info20 .addr{font-size:0.75rem;color:#6b7280;margin:.2rem 0 0;}.right21 .badges{display:flex;flex-wrap:wrap;gap:0.375rem;}.right21 .badges > *{flex:0 0 auto;}}
@media (max-width:480px){.site-header .search{border-width:2px !important;}.site-header{grid-template-columns:1fr auto;grid-template-areas:"brand quick" "search search";padding:1rem 0 0.875rem;}}
@media (min-width:1025px){.site-header{grid-template-columns:1fr 2fr 1fr;}.site-header .brand .logo{max-height:56px;}.site-header .search{max-width:700px;height:46px;border-width:2px;padding:0 1.125rem 0 2.625rem;}.site-header .search .search-icon{left:1rem;}.site-header .search .search-icon img{width:20px;height:20px;}.site-header .search input{line-height:2.875rem;padding:0;font-size:1rem;}}
@media (min-width:481px){.site-header .search{border-width:3px !important;}}
@media (min-width: 480px) and (max-width: 1024px){.site-header .brand{min-width:0;}.site-header .brand picture{display:flex;align-items:center;}.site-header .brand .logo{height:auto !important;width:auto !important;max-height:24px;/* 필요하면 32~44px 사이에서 조절 */
    object-fit:contain;display:block;}}
@media (max-width: 1024px){.clinic-hero__grid{grid-template-columns:1fr;}}
@media (max-width: 768px){.clinic-hero{padding: 0;}.chips{gap:0.375rem;}.clinic-name{font-size:1.5rem;}}
@media (max-width: 480px){.clinic-name{font-size:1.375rem;}}
@media (max-width: 600px){.nav-header .container{width:100%;padding-left:0;padding-right:0;}}
@media (max-width:1200px){.clinic-hero .hero21{grid-template-columns:1fr;gap:1rem;}.clinic-hero .media21{order:1;}.clinic-hero .right21{order:2;width:100%;max-width:100%;gap: 0;}.right21 .badges{order:2;}.clinic-hero .right21 .info20,
  .clinic-hero .right21 .badges,
  .clinic-hero .right21 .booking{width:100%;max-width:100%;position:static;top: 0;}}
@media (min-width:769px) and (max-width:1200px){.clinic-hero .hero21{display:grid;grid-template-columns:1fr 1fr;gap:2rem;}.clinic-hero .media21{display:flex;flex-direction:column;}.clinic-hero .hero21{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:2rem;}.clinic-hero .hero21{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:2rem;}.clinic-hero .media21{order:initial;}.clinic-hero .media21, .clinic-hero .right21{display:flex;flex-direction:column;}.clinic-hero .media21, .clinic-hero .right21{display:flex;flex-direction:column;align-items:stretch;}.clinic-hero .right21{order:initial;width:auto;max-width:none;}.clinic-hero .right21 .info20,
  .clinic-hero .right21 .badges,
  .clinic-hero .right21 .booking{width:auto;max-width:unset;}.clinic-hero .right21 .booking{position:sticky;top: 0;}.clinic-hero .thumbs21-wrap{margin-top:var(--thumbs-gap);}.clinic-hero .thumbs21-wrap{flex:0 0 var(--thumbs-h);margin-top:var(--thumbs-gap);}.clinic-hero .thumbs21-wrap{flex:0 0 var(--thumbs-h);margin-top:var(--thumbs-gap);}.clinic-hero .right21 .booking{margin-top: 0;position:static;top:auto;}.clinic-hero .right21 .booking{margin-top: 0;position:static;top:auto;}}
@media (min-width:769px){.clinic-hero .hero21{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:2rem;}.clinic-hero .media21,
  .clinic-hero .right21{display:flex;flex-direction:column;min-height:100%;}.clinic-hero .thumbs21-wrap{flex:0 0 var(--thumbs-h);margin-top:var(--thumbs-gap);}.clinic-hero .thumbs21{height:100%;}.clinic-hero .right21 .booking{margin-top: 0;}}
@media (min-width:1201px){.clinic-hero .media21 .stage21{max-height:var(--stage-max-h-desktop);}.clinic-hero .hero21{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:2rem;}.clinic-hero .hero21{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:2rem;}.clinic-hero .media21, .clinic-hero .right21{display:flex;flex-direction:column;}.clinic-hero .media21, .clinic-hero .right21{display:flex;flex-direction:column;align-items:stretch;}.clinic-hero .thumbs21-wrap{flex:0 0 var(--thumbs-h);margin-top:var(--thumbs-gap);}.clinic-hero .thumbs21-wrap{flex:0 0 var(--thumbs-h);margin-top:var(--thumbs-gap);}.clinic-hero .right21 .booking{margin-top: 0;}.clinic-hero .right21 .booking{margin-top: 0;}}


/* v0.383: section nav sticky pin under site header */
.nav-header{
  position: sticky;
  top: 64px;         /* match site header height */
  z-index: 1000;     /* above content */
  background: #fff;  /* avoid bleed-through */
}


/* v0.419 — safety check color to brand-sub */
#safety .badge .check{ color: var(--brand-sub,#31527E); }


/* star-only color for intro rating */
.intro-star{ color:#F5C518; }

/* v0.459 spacing overrides */
.clinic-hero .hero21{align-items:start;}
.clinic-hero .right21 .booking{margin-top:1rem; margin-bottom: 0.75rem;}

/* v0.460 — Square stage (1:1), responsive, no letterbox; images fill square (cover) */
.clinic-hero .media21 { display: grid; }
.clinic-hero .media21 .stage21 {
  width: 100%;
  aspect-ratio: 1 / 1;
  display: grid;
  place-items: center;
  background: #fff;          /* frame color (kept) */
  border-radius: 12px;       /* was present visually */
  overflow: hidden;          /* hide cropped edges */
}
.clinic-hero .media21 .stage21 img {
  width: 100%;
  height: 100%;
  object-fit: cover;         /* fill square; allow crop */
  display: block;
}
/* v0.460.1 — booking head subtext */
.booking__head .head-sub{
  margin-left: .5rem;
  font-size: .875rem;
  color: var(--muted);
  font-weight: 600;
}
@media (max-width: 480px){
  .booking__head{ flex-wrap: wrap; }
  .booking__head .head-sub{ flex-basis: 100%; margin-left: 1.5rem; margin-top: .25rem; }
}