/* Explicit editorial components: independent of the precompiled utilities. */
.clinic-guides { padding: clamp(3rem, 6vw, 5rem) 0; background: #f5f8f9; border-block: 1px solid #d9e4e8; }
.clinic-guides__container { max-width: 1152px; margin-inline: auto; padding-inline: 24px; }
.clinic-guides__heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 32px; }
.clinic-guides__heading h2 { margin: 0; max-width: 22ch; }
.clinic-guides__heading > a { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; min-height: 44px; padding: 10px 16px; border: 1px solid #d9e4e8; border-radius: 12px; font-size: .875rem; line-height: 1.5; white-space: nowrap; text-underline-offset: .25em; }
.clinic-guides__eyebrow { margin: 0 0 12px; }
.clinic-guides__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.clinic-guide { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid #d9e4e8; border-radius: 24px; background: #fff; color: #142c3b; text-decoration: none; }
.clinic-guide:hover { box-shadow: 0 12px 28px rgb(20 44 59 / .08); }
.clinic-guide__image { display: block; width: 100%; aspect-ratio: 16 / 10; height: auto; object-fit: cover; border-bottom: 1px solid #d9e4e8; }
.clinic-guide__body { display: flex; flex: 1; flex-direction: column; align-items: start; padding: 24px; }
.clinic-guide__category { display: block; margin-bottom: 14px; color: #0b7580; font-size: .6875rem; font-weight: 700; letter-spacing: .12em; line-height: 1.6; text-transform: uppercase; }
.clinic-guide h3 { margin: 0 0 14px; font-family: Manrope, system-ui, sans-serif; font-size: 1.25rem; font-weight: 650; letter-spacing: -.025em; line-height: 1.45; }
.clinic-guide__summary { margin: 0 0 24px; color: #4d6573; font-size: .9375rem; line-height: 1.75; }
.clinic-guide__link { margin-top: auto; font-size: .875rem; font-weight: 650; text-decoration: underline; text-underline-offset: .25em; }
.clinic-article { padding-block: clamp(3rem, 6vw, 5rem); }
.clinic-article > div { max-width: 760px; padding-inline: 24px; margin-inline: auto; }
.clinic-article > div > a:first-child { display: inline-block; margin-bottom: 32px; }
.clinic-article > div > .eyebrow { margin: 0 0 16px; font-size: .75rem; line-height: 1.6; }
.clinic-article h1.display { margin: 0 0 24px; line-height: 1.2; }
.clinic-article > div > .lede { margin: 0 0 32px; }
.clinic-article figure { margin: 0 0 40px; }
.clinic-article figure img { display: block; width: 100%; height: auto; }
.clinic-article figcaption { padding: 14px 18px; color: #4d6573; font-size: .8125rem; line-height: 1.6; }
.clinic-article .prose { color: #4d6573; }
.clinic-article .prose h2, .clinic-article .prose h3 { margin: 36px 0 14px; font-family: Manrope, system-ui, sans-serif; color: #142c3b; font-size: clamp(1.25rem, 2.3vw, 1.5rem); font-weight: 650; line-height: 1.45; letter-spacing: -.02em; }
.clinic-article .prose > :first-child { margin-top: 0; }
.clinic-article .prose p { margin: 0 0 22px; font-size: 1rem; line-height: 1.85; }
.clinic-article .prose ul, .clinic-article .prose ol { margin: 0 0 24px; padding-left: 24px; font-size: 1rem; line-height: 1.85; }
.clinic-article .prose ul { list-style: disc; }
.clinic-article .prose ol { list-style: decimal; }
.clinic-article .prose li + li { margin-top: 10px; }
.clinic-article .prose a { color: #0b7580; text-decoration: underline; text-underline-offset: .18em; }
.clinic-article aside { margin-top: 40px; padding: 28px; border: 1px solid #d9e4e8; border-radius: 24px; background: #ebf3f5; }
.clinic-article aside h2 { margin: 0 0 12px; font-family: Manrope, system-ui, sans-serif; font-size: 1.25rem; font-weight: 650; line-height: 1.4; }
.clinic-article aside p { margin: 0 0 18px; line-height: 1.8; }
.clinic-article > div > nav { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 32px; padding-top: 24px; border-top: 1px solid #d9e4e8; font-size: .875rem; line-height: 1.7; }
.clinic-google-badge { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; max-width: 100%; padding: 12px 16px; border: 1px solid #d9e4e8; border-radius: 16px; background: #fff; color: #142c3b; font-size: .8125rem; line-height: 1.6; text-decoration: none; }
.clinic-google-badge strong { font-size: .9375rem; }
.clinic-google-badge__star { color: #0b7580; }
.clinic-google-reviews { padding-block: clamp(3rem, 5vw, 4rem); background: #fff; border-block: 1px solid #d9e4e8; }
.clinic-google-reviews__container { max-width: 1152px; margin-inline: auto; padding-inline: 24px; }
.clinic-google-reviews__intro { display: flex; justify-content: space-between; align-items: end; flex-wrap: wrap; gap: 20px; margin-bottom: 28px; }
.clinic-google-reviews h2 { margin: 0 0 10px; font-size: clamp(1.5rem, 3vw, 2rem); }
.clinic-google-reviews__intro p { margin: 0; color: #4d6573; font-size: .875rem; line-height: 1.7; }
.clinic-google-reviews__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.clinic-google-review { margin: 0; padding: 24px; border: 1px solid #d9e4e8; border-radius: 20px; background: #f5f8f9; }
.clinic-google-review blockquote { margin: 0 0 20px; font-size: 1rem; line-height: 1.8; }
.clinic-google-review figcaption { color: #4d6573; font-size: .8125rem; line-height: 1.7; }
.clinic-google-review a { display: inline-block; margin-top: 10px; color: #0b7580; font-size: .8125rem; text-decoration: underline; text-underline-offset: .2em; }
@media (max-width: 767px) {
  .clinic-guides__heading { align-items: start; flex-direction: column; gap: 16px; }
  .clinic-guides__grid, .clinic-google-reviews__grid { grid-template-columns: 1fr; }
  .clinic-guide__body { padding: 24px; }
  .clinic-article aside { padding: 24px; }
}
