:root { color: #333333; background: #000; font-family: Verdana, Geneva, Arial, sans-serif; font-synthesis: none; --terracotta: #943000; --accent: #ac3901; --rule: #d6ccc6; }
* { box-sizing: border-box; }
body { margin: 0; -webkit-font-smoothing: antialiased; }
button, input, textarea { font: inherit; }
a { color: var(--terracotta); text-underline-offset: 3px; }
a, button { touch-action: manipulation; }
img { max-width: 100%; height: auto; }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #333; outline-offset: 3px; }
.masthead :focus-visible, .site-footer :focus-visible { outline-color: #fff; outline-offset: -4px; }
.site-shell { width: min(100%, 996px); min-height: 100vh; margin-inline: auto; background: white; }
.preview-banner { padding: 8px 16px; display: flex; gap: 10px; align-items: center; color: #fff; background: #333; font: 11px/1.4 Helvetica, Arial, sans-serif; border-bottom: 1px solid #777; }
.preview-banner strong { letter-spacing: 1px; font-size: 15px; }
.preview-watermark { padding: 8px 16px; background: #333; color: white; text-align: right; font: bold 10px/1.3 Helvetica, Arial, sans-serif; letter-spacing: .7px; pointer-events: none; }
.skip-link { position: absolute; left: -10000px; top: 8px; z-index: 30; min-height: 44px; padding: 12px; background: #fff; color: #000; }
.skip-link:focus { left: 8px; }
.masthead { position: relative; background: #000; }
.brand-row { position: relative; height: 76px; }
.logo-strip { display: block; height: 76px; overflow: hidden; width: 100%; }
.logo-strip img { display: block; width: 850px; max-width: none; height: auto; margin-top: 5px; }
.desktop-call { display: none; }
.mobile-nav { min-height: 48px; display: flex; align-items: stretch; justify-content: space-between; background: var(--terracotta); border-top: 1px solid var(--accent); }
.menu-button, .free-call { min-height: 48px; display: inline-flex; align-items: center; border: 0; border-radius: 0; color: #fff; background: transparent; font-family: Helvetica, Arial, sans-serif; font-size: 15px; text-decoration: none; }
.menu-button { min-width: 88px; padding: 0 20px; border-right: 1px solid #ffffff47; cursor: pointer; }
.free-call { padding: 0 16px; margin-left: auto; font-size: 13px; font-weight: 700; }
.main-navigation { display: grid; background: #fff; border-bottom: 4px solid var(--terracotta); }
.main-navigation a { min-height: 46px; display: flex; align-items: center; padding: 10px 20px; border-bottom: 1px solid var(--rule); color: #333; text-decoration: none; font-size: 14px; }
.main-navigation a[aria-current] { color: var(--terracotta); font-weight: bold; border-left: 4px solid var(--terracotta); padding-left: 16px; }
.main-navigation a:hover { background: #f3eeeb; }
.hero { position: relative; height: 204px; overflow: hidden; border-bottom: 5px solid #000; background: #fff; }
.hero > img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: left center; }
.image-watermark { position: absolute; right: 10px; bottom: 10px; color: #333; background: #ffffffc9; padding: 4px 7px; font: bold 10px Arial, sans-serif; letter-spacing: 1px; }
.content { padding: 25px 20px 34px; }
h1, h2, h3 { font-family: Verdana, Geneva, Arial, sans-serif; }
h1 { margin: 0 0 15px; color: var(--terracotta); font-size: 22px; line-height: 1.25; }
h2 { margin: 0; color: var(--terracotta); font-size: 18px; line-height: 1.3; }
h3 { margin: 0; color: #333; font-size: 16px; line-height: 1.4; }
p { margin: 0 0 14px; font-size: 15px; line-height: 1.55; }
li { font-size: 15px; line-height: 1.6; margin-bottom: 6px; }
ul { padding-left: 22px; }
.acc-note { margin: 24px 0 30px; padding: 13px 0 13px 15px; display: grid; gap: 5px; border-left: 4px solid var(--terracotta); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.acc-note strong { color: var(--terracotta); font-size: 15px; line-height: normal; }
.acc-note span { font-size: 13px; line-height: 1.45; }
.section-heading { padding-bottom: 9px; border-bottom: 3px solid var(--terracotta); }
.treatment-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-left: 1px solid var(--rule); }
.treatment-link { min-width: 0; display: block; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); text-decoration: none; }
.treatment-link img { width: 100%; aspect-ratio: 202 / 157; display: block; object-fit: cover; }
.treatment-link span { min-height: 48px; padding: 9px 10px; display: flex; align-items: center; font-size: 13px; font-weight: 700; line-height: 1.3; }
.treatment-link:hover span { text-decoration: underline; }
.clinic-prompt, .practitioners { margin-top: 30px; padding-top: 21px; border-top: 1px solid var(--rule); }
.clinic-prompt p { margin-top: 8px; }
.primary-action, .wide-action { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 10px 16px; border: 1px solid var(--terracotta); border-radius: 0; color: white; background: var(--terracotta); font-size: 14px; font-weight: bold; text-decoration: none; }
.wide-action { width: 100%; }
.primary-action:hover { background: #702400; }
.practitioner-grid { display: grid; gap: 26px; padding-top: 20px; }
.practitioner-grid article { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: start; }
.practitioner-grid img { display: block; width: 96px; }
.practitioner-grid p { margin-top: 7px; font-size: 13px; line-height: 1.5; }
.call-banner { min-height: 58px; margin: 23px 0 27px; padding: 9px 13px; display: flex; gap: 10px; align-items: center; justify-content: space-between; border-top: 3px solid var(--terracotta); border-bottom: 1px solid var(--terracotta); text-decoration: none; }
.call-banner span { color: #666; font-size: 12px; font-weight: bold; text-transform: uppercase; }
.call-banner strong { color: var(--terracotta); font-size: 19px; }
.clinic-group { margin-top: 24px; }
.clinic-group > h2 { padding-bottom: 8px; border-bottom: 3px solid var(--terracotta); font-size: 16px; }
.clinic { padding: 15px 0 17px; border-bottom: 1px solid var(--rule); }
.clinic h3 { line-height: normal; }
.clinic address, .clinic p { margin: 7px 0 0; font-size: 13px; font-style: normal; line-height: 1.35; }
.clinic p { color: var(--terracotta); font-weight: bold; }
.clinic-actions { margin-top: 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.clinic-actions a { min-height: 44px; padding: 7px 5px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--terracotta); font-size: 12px; font-weight: bold; text-align: center; text-decoration: none; }
.clinic-actions a:not(.primary-action):hover { background: #f3eeeb; }
.appointment { margin-top: 32px; padding-top: 20px; border-top: 4px solid #000; }
.appointment form { margin-top: 17px; }
.appointment fieldset { border: 0; margin: 0; padding: 0; display: grid; gap: 13px; min-width: 0; }
.appointment label { display: grid; gap: 6px; font-size: 13px; font-weight: bold; }
.appointment input, .appointment textarea { width: 100%; min-height: 44px; padding: 9px 10px; border: 1px solid #8a8a8a; border-radius: 0; color: #333; background: #fff; font-size: 16px; opacity: 1; }
.appointment textarea { resize: vertical; }
.appointment button { min-height: 46px; padding: 10px 16px; color: #fff; background: var(--terracotta); border: 1px solid var(--terracotta); border-radius: 0; cursor: not-allowed; font-size: 15px; font-weight: bold; opacity: 1; }
.form-notice { margin-top: 14px; padding: 12px 0; border-block: 1px solid var(--rule); font-size: 13px; overflow-wrap: anywhere; }
.form-notice strong { display: block; margin-bottom: 6px; }
.form-notice a { display: inline-flex; align-items: center; min-height: 44px; }
.review-note { margin: 20px 0; padding: 12px 14px; border-left: 3px solid var(--terracotta); background: #f4f0ed; font-size: 13px; line-height: 1.5; }
.text-section { padding: 18px 0; border-bottom: 1px solid var(--rule); scroll-margin-top: 20px; }
.text-section h2 { margin-bottom: 10px; }
.text-section + .primary-action { margin-top: 20px; }
.article-image { margin: 24px 0 0; }
.article-image img { width: min(100%, 240px); display: block; }
.sub-navigation { display: flex; gap: 8px; border-bottom: 1px solid var(--rule); }
.sub-navigation a { padding: 12px; min-height: 44px; display: inline-flex; align-items: center; }
.sub-navigation [aria-current] { font-weight: bold; }
.site-footer { padding: 22px 20px 44px; color: white; background: #000; font-size: 12px; line-height: 1.4; }
.footer-clinics { display: grid; gap: 20px; }
.footer-clinics h2 { color: #df7849; font-size: 15px; margin-bottom: 8px; }
.footer-clinics address { font-style: normal; }
.site-footer a { display: flex; align-items: center; min-height: 44px; color: #fff; overflow-wrap: anywhere; }
.footer-bottom { border-top: 1px solid #666; margin-top: 18px; padding-top: 16px; }
.footer-bottom > span { display: block; color: #ddd; }
.visually-hidden { position: absolute; height: 1px; width: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
/* Original clinic copy remains intact; these rules change presentation only. */
.original-layout { display: grid; gap: 28px; }
.original-body, .original-sidebar, .original-td { min-width: 0; overflow-wrap: normal; word-break: normal; }
.main-navigation a:focus-visible { outline-color: #333; }
.original-body h2, .original-sidebar h2 { margin: 18px 0 12px; }
.original-body h2:first-child, .original-sidebar h2:first-child { margin-top: 0; }
.original-body a, .original-sidebar a, .original-practitioners a { display: inline-flex; min-height: 44px; align-items: center; }
.original-sidebar { border-top: 1px solid var(--rule); padding-top: 24px; font-size: 14px; line-height: 1.55; }
.original-sidebar img { display: block; margin: 12px 0; }
.original-sidebar .original-tr:has(> .original-td > img:not([alt=""])) { display: grid; grid-template-columns: 113px minmax(0, 1fr); gap: 14px; align-items: start; margin-block: 15px; }
.original-sidebar .original-tr:has(> .original-td > img:not([alt=""])) img { margin: 0; }
.original-practitioners { margin-top: 30px; padding-top: 20px; border-top: 1px solid var(--rule); font-size: 14px; }
.original-practitioners .practitioner-grid article { display: block; }
.original-practitioners .practitioner-grid article > p:first-child { float: left; margin: 0 14px 8px 0; }
.original-practitioners .practitioner-grid article > p:nth-child(2) { font-weight: bold; font-size: 16px; }
.original-practitioners .practitioner-grid article::after { content: ''; display: block; clear: both; }
.original-practitioners .practitioner-grid p { font-size: 14px; line-height: 1.6; }
.original-treatment-strip { margin-top: 30px; border-top: 1px solid var(--rule); padding-top: 20px; }
.original-treatment-strip > .original-tr > .original-td > .original-tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.original-treatment-strip a { display: block; min-height: 44px; }
.original-treatment-strip img { display: block; width: 100%; height: auto; }
.original-footer .original-td { font-size: 13px; line-height: 1.5; }
.original-footer > .original-tr:first-of-type > .original-td > .original-tr { display: grid; gap: 22px; }
.original-footer > span { display: block; margin-top: 15px; }
.original-footer a { display: inline-flex; }
.original-footer p { font-size: 13px; margin-bottom: 0; }
.original-contact-layout .appointment { margin: 0; padding: 0; border: 0; }
.original-contact-layout .original-sidebar { font-size: 14px; }
.original-contact-layout .original-sidebar a { max-width: 100%; }
.home-primary { min-width: 0; }
.original-body .acc-note { margin: 24px 0 30px; padding: 13px 0 13px 15px; line-height: 1.45; }
.acc-note > br { display: none; }
.option-a-treatments { padding-top: 0; border-top: 0; }
.home-primary .option-a-treatments { margin-top: 0; }
.option-a-treatments > .original-tr > .original-td > .original-tr { gap: 0; border-left: 1px solid var(--rule); }
.option-a-treatments a { text-decoration: none; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.option-a-treatments img { aspect-ratio: 202 / 157; object-fit: cover; }
.option-a-treatments [data-option-a-label]:not(h2) { min-height: 48px; padding: 9px 10px; display: flex; align-items: center; font-size: 13px; font-weight: bold; line-height: 1.25; }
.option-a-treatments a:hover [data-option-a-label] { text-decoration: underline; }
.contact-intro + .call-banner { max-width: none; }
.content:has(.contact-intro) { padding-top: 27px; }
.contact-layout .clinic-group:first-child { margin-top: 0; }
.contact-original-details { margin-top: 30px; }
@media (max-width: 359px) {
  .content { padding-inline: 16px; }
  .logo-strip img { width: 740px; }
  .free-call { padding-inline: 10px; font-size: 12px; }
  .clinic-actions { gap: 4px; }
}
@media (min-width: 600px) {
  .treatment-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .practitioner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .original-treatment-strip > .original-tr > .original-td > .original-tr { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 1000px) {
  .site-shell { margin-block: 12px; }
  .brand-row { height: 82px; }
  .logo-strip { width: 440px; height: 82px; }
  .logo-strip img { width: 995px; margin-top: 6px; }
  .desktop-call { position: absolute; right: 22px; top: 15px; display: flex; gap: 5px; align-items: center; min-height: 48px; color: #df7849; font: 14px Helvetica, Arial, sans-serif; text-decoration: none; }
  .desktop-call strong { font-size: 19px; }
  .mobile-nav { display: none; }
  .main-navigation { display: flex; justify-content: space-between; border-bottom: 0; background: var(--terracotta); }
  .main-navigation a { flex: 1 1 auto; justify-content: center; text-align: center; min-height: 46px; padding: 10px 9px; color: #fff; border: 0; font: 14px/1.35 Helvetica, Arial, sans-serif; }
  .main-navigation a[aria-current] { border: 0; padding-left: 9px; color: #fff; background: #702400; }
  .main-navigation a:hover { background: #702400; }
  .hero { height: auto; aspect-ratio: 996 / 318; }
  .content { padding: 36px 42px 42px; }
  .introduction { max-width: 680px; }
  h1 { font-size: 24px; }
  .contact-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start; }
  .appointment { margin-top: 24px; }
  .article-layout { display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 36px; }
  .footer-clinics { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  .footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
  .site-footer { padding-inline: 32px; }
  .original-layout { grid-template-columns: minmax(0, 1fr) 240px; gap: 38px; align-items: start; }
  .original-sidebar { border-top: 0; border-left: 1px solid var(--rule); padding-top: 0; padding-left: 22px; }
  .original-contact-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .original-home-layout { grid-template-columns: minmax(0, 1fr) 240px; }
  .original-home-layout .option-a-treatments > .original-tr > .original-td > .original-tr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-layout .appointment { margin-top: 0; }
  .contact-original-details { border-top: 1px solid var(--rule); border-left: 0; padding: 24px 0 0; }
  .original-footer > .original-tr:first-of-type > .original-td > .original-tr { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  /* Desktop retains the original 996px composition. Mobile rules above follow
     the agreed Option A PDF; they must not squeeze the desktop sidebar. */
  .site-shell { margin-block: 8px; }
  .brand-row, .logo-strip { height: 75px; }
  .logo-strip { width: 100%; }
  .logo-strip img { margin-top: 0; }
  .desktop-call { color: var(--accent); }
  .desktop-call strong { font-size: 18px; }
  .main-navigation a { font-size: 16px; }
  .main-navigation a:focus-visible { outline-color: #fff; }
  .hero { border-bottom: 0; }
  .content { padding: 48px 6% 32px; }
  h1, h2 { font-size: 18px; }
  p, li { font-size: 14px; line-height: 20px; }
  .original-layout { grid-template-columns: minmax(0, 54fr) minmax(0, 35fr); gap: 11%; }
  .original-sidebar { position: relative; border: 0; padding: 0; align-self: stretch; line-height: 20px; }
  .original-sidebar::before { content: ''; position: absolute; top: 0; bottom: 0; left: -48px; width: 1px; background: var(--rule); }
  .original-body a, .original-sidebar a, .original-practitioners a { display: inline; min-height: 0; }
  .original-sidebar .original-tr:has(> .original-td > img:not([alt=""])) { grid-template-columns: 113px minmax(0, 1fr); gap: 12px; padding: 14px 12px; margin: 0; background: #f0f0f0; }
  .original-sidebar img[alt=""] { margin: 70px auto 0; }
  .original-sidebar p { font-size: 14px; line-height: 20px; }
  .content:has(> .original-home-layout) { display: grid; grid-template-columns: minmax(0, 54fr) minmax(0, 35fr); column-gap: 11%; }
  .original-home-layout, .original-home-layout > .home-primary { display: contents; }
  .original-home-layout .original-body { grid-column: 1; grid-row: 1; }
  .original-home-layout > .original-sidebar { grid-column: 2; grid-row: 1; }
  .original-home-layout > .original-sidebar > p:last-child { font-family: Georgia, serif; font-style: italic; }
  .original-body .acc-note { display: block; margin: 0 0 14px; padding: 0; border: 0; font-size: 14px; line-height: 20px; }
  .original-body .acc-note strong, .original-body .acc-note span { display: inline; color: inherit; font-size: inherit; line-height: inherit; font-weight: normal; }
  .original-practitioners { grid-column: 1 / -1; grid-row: 2; margin-top: 48px; padding-top: 0; border: 0; }
  .original-practitioners > .original-tr { background: #f8eddd url('able/index01.jpg') center; padding: 12px 26px; }
  .original-practitioners > .original-tr > .original-td > .original-tr > .original-td { display: flex; align-items: baseline; flex-wrap: wrap; gap: 10px 20px; }
  .original-practitioners h2 { margin: 0; }
  .original-practitioners .practitioner-grid { gap: 28px; padding-top: 14px; }
  .original-practitioners .practitioner-grid article { display: grid; grid-template-columns: 150px minmax(0, 1fr); grid-template-rows: 191px auto; gap: 10px 16px; align-content: start; }
  .original-practitioners .practitioner-grid article > p:first-child { float: none; grid-column: 1; grid-row: 1; margin: 0; }
  .original-practitioners .practitioner-grid article > p:nth-child(2) { grid-column: 1; grid-row: 2; margin: 0; text-align: center; font-size: 14px; }
  .original-practitioners .practitioner-grid article > div { grid-column: 2; grid-row: 1 / span 2; }
  .original-practitioners .practitioner-grid article::after { display: none; }
  .original-practitioners .practitioner-grid img { width: auto; max-width: 150px; margin-inline: auto; }
  .original-practitioners .practitioner-grid p { margin-top: 0; font-size: 14px; line-height: 20px; }
  .original-home-layout .option-a-treatments { grid-column: 1 / -1; grid-row: 3; margin-top: 48px; }
  .option-a-treatments { margin-top: 48px; }
  .option-a-treatments > h2, .option-a-treatments [data-option-a-label]:not(h2) { display: none; }
  .option-a-treatments > .original-tr > .original-td > .original-tr,
  .original-home-layout .option-a-treatments > .original-tr > .original-td > .original-tr { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; border: 0; }
  .option-a-treatments a { border: 0; }
  .option-a-treatments img { aspect-ratio: auto; object-fit: contain; }
  .original-footer { background: #f5ebdf url('able/index02.jpg') center / cover; color: #333; padding: 14px 6% 10px; }
  .original-footer > .original-tr:first-of-type > .original-td > .original-tr { grid-template-columns: 27fr 28fr 28fr 17fr; gap: 0; align-items: center; }
  .original-footer .original-td, .original-footer p { font-size: 14px; line-height: 20px; }
  .original-footer a { display: inline; min-height: 0; color: #333; overflow-wrap: normal; white-space: nowrap; }
  .original-footer > .original-tr:first-of-type > .original-td > .original-tr > .original-td:last-child { font-weight: bold; }
  .original-footer a[href="tel:0800222788"] { color: var(--accent); font-size: 18px; text-decoration: none; }
  .original-footer > span { margin-top: 8px; color: #555; text-align: right; font-size: 10px; }
  .site-footer :focus-visible { outline-color: #333; outline-offset: 2px; }
  .footer-base { min-height: 60px; background: #862c01; }
  .preview-watermark { min-height: 60px; display: flex; align-items: center; justify-content: center; background: transparent; }
  .contact-original-details { padding-top: 24px; border-top: 1px solid var(--rule); }
  .contact-original-details::before { display: none; }
  /* The added clinic action groups belong to the phone layout. On desktop the
     original appointment-left / clinic-details-right composition is retained. */
  .content:has(> .contact-intro) { display: grid; grid-template-columns: minmax(0, 54fr) minmax(0, 35fr); gap: 0 11%; padding-top: 48px; }
  .contact-intro { grid-column: 1; grid-row: 1; }
  .contact-intro + .call-banner, .contact-layout > .clinic-list { display: none; }
  .contact-layout { display: contents; }
  .contact-layout > .appointment { grid-column: 1; grid-row: 2; margin: 12px 0 0; padding: 0; border: 0; }
  .contact-layout .appointment > h2 { display: none; }
  .contact-layout .appointment label { grid-template-columns: 128px minmax(0, 1fr); align-items: center; }
  .contact-layout .appointment button { margin-left: 134px; }
  .contact-original-details { grid-column: 2; grid-row: 1 / span 2; margin: 0; padding: 48px 0 0; border: 0; }
  .contact-original-details > .original-tr:first-child > .original-td > p:first-child { color: var(--terracotta); font-size: 18px; font-weight: bold; }
  .content:has(> .contact-intro) > .option-a-treatments { grid-column: 1 / -1; grid-row: 3; }
}
@media print {
  .site-shell { width: 100%; margin: 0; }
  .preview-watermark { position: fixed; color: #333; background: white; border: 1px solid #333; }
  .preview-banner { color: #333; background: #fff; }
  .menu-button { display: none; }
}

/* Mobile footer correction: preserve the original pale strip and terracotta base. */
@media (max-width: 999px) {
  .original-footer { padding: 20px 20px 18px; background: #f5ebdf url('able/index02.jpg') center / cover; color: #333; }
  .original-footer .original-td, .original-footer p { font-size: 14px; line-height: 20px; }
  .original-footer a { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; color: #333; overflow-wrap: normal; }
  .original-footer > .original-tr:first-of-type > .original-td > .original-tr > .original-td:last-child { font-weight: bold; }
  .original-footer a[href="tel:0800222788"] { color: var(--accent); font-size: 18px; }
  .original-footer > span { margin-top: 18px; color: #555; text-align: right; font-size: 10px; }
  .original-footer :focus-visible { outline-color: #333; outline-offset: 2px; }
  .footer-base { min-height: 60px; background: #862c01; }
  .footer-base .preview-watermark { min-height: 60px; display: flex; align-items: center; justify-content: center; background: transparent; }
}

/* Women's Health correction: preserve the original bordered conditions grid. */
.conditions-list { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; margin: 0; padding: 2px; }
.conditions-list > li { min-width: 0; margin: 0; padding: 8px; border: 1px solid #808080; list-style-position: inside; align-content: center; }
.conditions-list > li::marker { color: transparent; font-size: 0; }
@media (min-width: 1000px) {
  .original-layout:has(.conditions-list) { grid-template-columns: minmax(0, 57fr) minmax(0, 35fr); gap: 8%; }
  .original-layout:has(.conditions-list) > .original-sidebar::before { display: none; }
  .conditions-list { grid-template-columns: minmax(0, 26.5fr) minmax(0, 39.5fr) minmax(0, 34fr); }
  .conditions-list > li { padding: 4px; font-size: 14px; line-height: normal; }
  .conditions-list > li:nth-child(-n+3) { min-height: 65px; }
  .conditions-list > li:nth-child(n+4):nth-child(-n+6) { min-height: 56px; }
  .conditions-list > li:nth-child(n+7):nth-child(-n+9) { min-height: 64px; }
  .conditions-list > li:nth-child(n+10):nth-child(-n+12) { min-height: 86px; }
  .conditions-list > li:nth-child(n+13):nth-child(-n+15) { min-height: 76px; }
  .conditions-list > li:nth-child(n+16):nth-child(-n+18) { min-height: 55px; }
  .conditions-list > li:nth-child(n+19):nth-child(-n+21) { min-height: 51px; }
  .conditions-list > li:nth-child(n+22) { min-height: 46px; }
}

/* Footer clinic actions: reuse the Contact Us rectangular controls and colours. */
.original-footer .clinic-actions { margin-top: 10px; gap: 6px; }
.original-footer .clinic-actions a { display: flex; min-height: 44px; padding: 7px 4px; color: var(--terracotta); font-size: 12px; line-height: 18px; font-weight: 700; white-space: nowrap; text-decoration: none; }
.original-footer .clinic-actions a.primary-action { color: #fff; background: var(--terracotta); }
.original-footer .clinic-actions a.primary-action:hover { background: var(--accent); }
.original-footer .clinic-actions a:not(.primary-action) { background: #fff; }
.original-footer .clinic-actions a:not(.primary-action):hover { background: #f3eeeb; }
@media (min-width: 1000px) {
  .original-footer > .original-tr:first-of-type > .original-td > .original-tr { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: start; }
  .original-footer > .original-tr:first-of-type > .original-td > .original-tr > .original-td:last-child { grid-column: 1 / -1; }
}

/* Original poem attribution: preserve the owner's .name typography at every width. */
.original-sidebar p.name,
.original-home-layout > .original-sidebar > p.name {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-style: italic;
  color: #333;
  font-size: 14px;
}

/* Mobile practitioners: original patterned heading and testimonial reading order. */
@media (max-width: 999px) {
  .original-home-layout > .original-practitioners { margin: 0; padding: 0; border: 0; }
  .original-home-layout > .original-practitioners > .original-tr { background: #f8eddd url('able/index01.jpg') center; padding: 12px 14px; }
  .original-home-layout > .original-practitioners > .original-tr > .original-td > .original-tr > .original-td { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
  .original-home-layout > .original-practitioners h2 { margin: 0; }
}

/* Contact typography and Free Call placement, requested alongside the mobile banner. */
.original-footer, .original-footer *, .content:has(> .contact-intro), .content:has(> .contact-intro) * { font-family: Verdana, Geneva, sans-serif; }
.original-footer > .original-tr:first-of-type > .original-td > .original-tr > .original-td:last-child { grid-column: auto; font-weight: normal; }
.original-footer > .original-tr:first-of-type > .original-td > .original-tr > .footer-free-call { grid-column: 1 / -1; font-weight: bold; }

/* Mobile ACC copy: ordinary introductory text, matching the surrounding paragraph. */
@media (max-width: 999px) {
  .original-home-layout .original-body .acc-note { display: block; margin: 0 0 14px; padding: 0; border: 0; font-size: 15px; line-height: 1.55; }
  .original-home-layout .original-body .acc-note strong,
  .original-home-layout .original-body .acc-note span { display: inline; color: inherit; font: inherit; }
}

/* Approved membership-line alignment; no whitespace used as an indent. */
.original-practitioners .membership-line { text-align: left; margin-left: 0; padding-left: 0; }

/* Original text emphasis restored consistently at every width. */
.chinese { font-family: "Microsoft YaHei", "微软雅黑", Verdana, Geneva, sans-serif; font-size: 15px; font-weight: 700; }
.herbal-formula { font-weight: 700; }
.fertility-links { font-size: 18px; line-height: 34px; }
.fertility-links a { color: var(--terracotta); font: inherit; }
.contact-original-details > .original-tr:first-child > .original-td > p:first-child { color: var(--terracotta); font-size: 18px; font-weight: bold; }

/* Keep the added Redwood details with the other clinic text, above the original graphic. */
.contact-original-details { display: flex; flex-direction: column; }
.contact-original-details > .original-tr:first-child { order: 1; }
.contact-original-details > .option-a-contact-redwood { order: 2; }
.contact-original-details > .original-tr + .original-tr { order: 3; }

/* Client-approved service credit: branded, readable and visually subordinate. */
.footer-base { display: flex; align-items: center; justify-content: center; gap: 16px; padding: 8px 20px; color: #fff; }
.site-credit { margin: 0; color: #fff; font: 11px/1.4 Verdana, Geneva, sans-serif; text-align: center; }
.site-credit a { display: inline-flex; align-items: center; min-height: 44px; color: #fff; text-decoration: underline; text-underline-offset: 2px; }
.site-credit a:hover { color: #fff3ea; }
.site-credit a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.footer-base .preview-watermark { margin-left: auto; }
@media (max-width: 999px) {
  .footer-base { flex-direction: column; gap: 0; }
  .footer-base .preview-watermark { margin-left: 0; }
}

/* Homepage testimonial: retain the poem's original Verdana size and line rhythm. */
.original-home-layout > .original-sidebar > .testimonial-poem {
  font-family: Verdana, Geneva, sans-serif;
  font-size: 14px;
  line-height: 20px;
}
