/* Spacious reading rhythm without changing the established text measure. */
.cheongdam-site .article-body > p,
.cheongdam-site .article-body > section > p,
.cheongdam-site .article-body > div:not([class]) > p { margin-top:0; margin-bottom:52px; }
.cheongdam-site .article-body > p + p,
.cheongdam-site .article-body > section > p + p { margin-top:0; }
.cheongdam-site .article-body > h2 { margin-top:88px; margin-bottom:32px; padding-top:32px; }
.cheongdam-site .article-body h3 { margin-top:52px; margin-bottom:28px; }
.cheongdam-site .article-body > ul,
.cheongdam-site .article-body > ol { margin-top:28px; margin-bottom:52px; }
.cheongdam-site .article-body .reading-illustration { margin:60px 0 76px; overflow:hidden; background:#f6f8f5; border:1px solid #e5ebe2; border-radius:12px; }
.cheongdam-site .article-body .reading-illustration img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.cheongdam-site .article-body .reading-illustration figcaption { padding:18px 24px; color:#586254; font-size:15px; line-height:1.7; letter-spacing:-.015em; background:#f6f8f5; }
.cheongdam-site .article-body .faq-list details { padding-top:8px; padding-bottom:8px; }
.cheongdam-site .article-body .faq-list details > div { padding-bottom:24px; }
.cheongdam-site .article-body .faq-list p { margin-bottom:28px; }
.cheongdam-site .article-body .faq-list p:last-child { margin-bottom:0; }
.cheongdam-site .brand-logo { filter:none; opacity:1; object-fit:contain; }
/* Keep the sticky track independent of expandable questions and references. */
.cheongdam-site .article-layout { row-gap:0; }
.cheongdam-site .toc-track { grid-column:1; grid-row:1; align-self:stretch; min-width:0; }
.cheongdam-site .article-reading { grid-column:2; grid-row:1; }
.cheongdam-site .article-tail { grid-column:2; grid-row:2; }
.cheongdam-site .toc { overflow-anchor:none; }
.cheongdam-site .toc a.is-active,
.cheongdam-site .toc a[aria-current="location"] { font-weight:400; }
.cheongdam-site .article-tail .content-disclaimer { margin:52px 0 0; font-size:14px; line-height:1.9; }
.cheongdam-site .disclaimer-date { white-space:nowrap; }
.cheongdam-site .parking-fees { margin:28px 0 44px; padding:8px 24px; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.cheongdam-site .parking-fees > div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 20px; padding:20px 0; }
.cheongdam-site .parking-fees > div + div { border-top:1px solid var(--line); }
.cheongdam-site .parking-fees dt { color:var(--muted); font-weight:500; }
.cheongdam-site .parking-fees dd { margin:0; color:var(--brand-dark); font-weight:700; }
.cheongdam-site .care-card > a:focus-visible,
.cheongdam-site .article-card > a:focus-visible { outline-offset:-3px; }
.cheongdam-site .menu-toggle { order:3; }
@media (min-width:1025px) {
  .cheongdam-site .toc { --toc-top:104px; top:var(--toc-top); display:flex; flex-direction:column; max-height:calc(100dvh - var(--toc-top) - 24px); }
  .cheongdam-site .toc nav { display:flex; flex-direction:column; min-height:0; }
  .cheongdam-site .toc-label { flex-shrink:0; }
  .cheongdam-site .toc ol,.cheongdam-site .toc ul { max-height:none; min-height:0; overflow-y:auto; scrollbar-gutter:stable; }
  .cheongdam-site .toc .toc-contact { flex-shrink:0; }
  .cheongdam-site.admin-bar .toc { --toc-top:136px; }
}
@media (min-width:1025px) and (max-height:480px) {
  .cheongdam-site .toc .toc-contact { display:none; }
}
@media (max-width:1024px) {
  .cheongdam-site .toc-track,.cheongdam-site .article-reading,.cheongdam-site .article-tail { grid-column:1; grid-row:auto; }
  .cheongdam-site .toc-track { margin-bottom:24px; }
}
.cheongdam-site.admin-bar .site-header { top:32px; }
.cheongdam-site.admin-bar .toc { top:136px; }
@media(max-width:782px) { .cheongdam-site.admin-bar .site-header { top:46px; } }
@media(max-width:600px) { .cheongdam-site.admin-bar .site-header { top:0; } }
@media(max-width:767px) {
  .cheongdam-site .article-body > p,
  .cheongdam-site .article-body > section > p,
  .cheongdam-site .article-body > div:not([class]) > p { margin-bottom:44px; }
  .cheongdam-site .article-body > h2 { margin-top:68px; margin-bottom:28px; padding-top:24px; }
  .cheongdam-site .article-body > ul,.cheongdam-site .article-body > ol { margin-bottom:44px; }
  .cheongdam-site .article-body .reading-illustration { margin:48px 0 60px; border-radius:8px; }
  .cheongdam-site .article-body .reading-illustration figcaption { padding:16px 18px; font-size:14px; }
}
@media print {
  .cheongdam-site .toc-track { display:none!important; }
  .cheongdam-site .article-body > p { margin-bottom:16pt; }
  .cheongdam-site .article-body .reading-illustration { break-inside:avoid; margin:24pt 0; }
}

/* Trailing cues share the approved, unboxed visit-page treatment. */
.cheongdam-site .section-icon { display:inline-flex; align-items:center; justify-content:center; width:1em; height:1em; background:transparent; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:20px; font-weight:400; line-height:1; letter-spacing:0; vertical-align:baseline; }
.cheongdam-site .section-icon img.emoji { display:block; width:1em!important; height:1em!important; margin:0!important; }
/* Keep the existing visit heading and TOC cues. */
.cheongdam-site .article-layout--visit .article-body h2 { display:block; }
.cheongdam-site .article-layout--visit .visit-section-icon { display:inline-flex; align-items:center; justify-content:center; background:transparent; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-weight:400; line-height:1; letter-spacing:0; }
.cheongdam-site .article-layout--visit .article-body h2 .visit-section-icon { width:1em; height:1em; font-size:20px; vertical-align:baseline; }
.cheongdam-site .article-layout--visit .visit-section-icon img.emoji { display:block; width:1em!important; height:1em!important; margin:0!important; }
.cheongdam-site .article-layout--visit .visit-section-label { min-width:0; overflow-wrap:anywhere; }
.cheongdam-site .article-layout--visit .toc ol a { display:flex; align-items:flex-start; gap:9px; }
.cheongdam-site .article-layout--visit .toc .visit-section-icon { flex:0 0 20px; width:20px; height:22px; font-size:16px; }
@media (max-width:767px) {
  .cheongdam-site .section-icon { font-size:18px; }
  .cheongdam-site .article-layout--visit .article-body h2 .visit-section-icon { font-size:18px; }
}

/* Hospital equipment photos retain their complete portrait framing. */
.cheongdam-site .article-body .treatment-photo { max-width:520px; margin:56px auto 64px; background:transparent; border-radius:0; }
.cheongdam-site .article-body .treatment-photo img { display:block; width:100%; height:auto; border-radius:12px; }
.cheongdam-site .article-body .treatment-photo figcaption { margin-top:14px; color:var(--muted); font-size:14px; line-height:1.7; }
.cheongdam-site .page-hero .hero-grid img[src*="sodam-metashape"],
.cheongdam-site .article-card img[src*="sodam-metashape"] { object-position:center 35%; }
@media(max-width:600px) { .cheongdam-site .article-body .treatment-photo { margin-block:40px 48px; } }

/* Source responsibility for the new patient-question guides. */
.cheongdam-site .page-hero .guide-credit { margin:22px 0 0; color:#667067; font-size:13px; line-height:1.9; }
.cheongdam-site .guide-credit span { margin:0 7px; }
.cheongdam-site .guide-credit a { text-decoration:underline; text-underline-offset:3px; }
.cheongdam-site .article-body .guide-links { margin-block:52px; padding:28px 30px; border:1px solid #dce4dc; border-radius:10px; background:#f7f9f7; }
.cheongdam-site .article-body .guide-links p { margin:0; }
.cheongdam-site .article-body .guide-links p+p { margin-top:18px; }
@media(max-width:600px) { .cheongdam-site .article-body .guide-links { padding:22px; } }

/* Library catalogue: keep all article links in server HTML; paginate progressively. */
.catalog-more{display:flex;justify-content:center;margin-top:48px}.catalog-more [hidden]{display:none!important}.catalog-tabs button span{font-size:.78em;opacity:.7}.home-faq-link{border-top:1px solid var(--line,#dbe2df)}.home-faq-link>p{max-width:760px;line-height:1.9;color:var(--muted,#647068)}
