/* Generated by tools/build-styles.py. Edit tokens.css, review.css or refinement.css, then rebuild. */

/* tokens.css */
/* Generated from Stage 3 design-tokens.csv; all values remain PROPOSED. */
:root {
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  --motion-fast: 120ms;
  --motion-standard: 180ms;
  --motion-slow: 240ms;
  --motion-emphasis: 320ms;
  --ease-standard: cubic-bezier(0.2,0,0,1);
  --ease-exit: cubic-bezier(0.4,0,1,1);
  --ease-linear: linear;
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
}

/* review.css */
/* Quiet Humanist: exact Stage 3 tokens, logical layout, native interactions. */
@font-face { font-family: "IBM Plex Sans"; src: url("../fonts/homc-review-en-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "IBM Plex Sans"; src: url("../fonts/homc-review-en-600.woff2") format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "IBM Plex Sans Arabic"; src: url("../fonts/homc-review-ar-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "IBM Plex Sans Arabic"; src: url("../fonts/homc-review-ar-600.woff2") format("woff2"); font-weight: 600; font-display: swap; }
* { box-sizing: border-box; }
html { scroll-padding-block-start: calc(72px + 1.0rem); }
body { margin: 0; color: #182C28; background: #F8F9F6; font: 400 1.125rem/1.6 "IBM Plex Sans", Arial, sans-serif; overflow-wrap: anywhere; }
[dir="rtl"] :is(h1, h2, h3, h4, h5, h6, p, figcaption, address) { unicode-bidi: plaintext; }
body.has-open-dialog { overflow: hidden; }
body.has-open-dialog .mobile-actions, body:has(input:focus, select:focus, textarea:focus) .mobile-actions { visibility: hidden; pointer-events: none; }
[hidden] { display: none !important; }
img { max-inline-size: 100%; block-size: auto; display: block; }
figure { margin: 0; }
figcaption { font-size: .875rem; color: #596C65; line-height: 1.5; padding-block-start: 0.75rem; }
button, input, select, textarea { font: inherit; }
button, a, input, select, summary { -webkit-tap-highlight-color: transparent; }
button, summary { cursor: pointer; }
button { color: inherit; }
a { color: #155E55; text-underline-offset: 0.22em; text-decoration-thickness: 1px; }
a:hover { color: #104A43; }
a, button { touch-action: manipulation; }
:focus-visible { outline: 3px solid #6F39A6; outline-offset: 2px; box-shadow: 0 0 0 2px #F8F9F6; }
main:focus { outline: none; }
:target { scroll-margin-block-start: calc(72px + 1.0rem); }
h1, h2, h3, h4, p { margin-block: 0 1.5rem; }
h1, h2, h3, h4 { font-weight: 600; }
h1 { font-size: clamp(2.125rem, 1.25rem + 2.5vw, 3.375rem); line-height: 1.15; letter-spacing: -0.015em; }
h2 { font-size: clamp(1.75rem, 1.25rem + 1.2vw, 2.375rem); line-height: 1.2; letter-spacing: -0.01em; }
h3 { font-size: clamp(1.375rem, 1.1rem + .6vw, 1.75rem); line-height: 1.25; }
ol, ul { margin-block: 0 1.5rem; padding-inline-start: 1.5rem; }
address { font-style: normal; }
bdi { unicode-bidi: isolate; }
.container { inline-size: min(calc(100% - 2 * 1.25rem), 1280px); margin-inline: auto; }
.reading { max-inline-size: min(680px, 60ch); }
.section { padding-block: 4.0rem; }
.alternate { background: #EAF0EB; }
.eyebrow { color: #596C65; font-size: .875rem; font-weight: 600; line-height: 1.5; margin-block-end: 1.0rem; }
.lead { font-size: 1.25rem; line-height: 1.6; color: #40554E; }
.small { font-size: 1rem; line-height: 1.6; color: #40554E; }
.actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1.0rem 1.5rem; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; min-block-size: 48px; padding: 0.75rem 1.5rem; border: 1px solid #155E55; border-radius: 8px; color: #F8F9F6; background: #155E55; font-size: 1rem; line-height: 1.5; font-weight: 600; text-decoration: none; text-align: center; transition: background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard); }
.button:hover { background: #104A43; border-color: #104A43; color: #F8F9F6; }
.button:active { background: #0C3A34; }
.button-outline { color: #155E55; background: transparent; }
.button-outline:hover { color: #155E55; background: #DCE9E3; }
.button:disabled { cursor: default; color: #59675E; background: #E3E7E3; border-color: #E3E7E3; }
.text-link { display: inline-flex; align-items: center; gap: 0.5rem; min-block-size: 44px; font-size: 1rem; font-weight: 600; background: none; border: 0; padding: 0; text-decoration: underline; }
.icon { inline-size: 24px; block-size: 24px; flex: 0 0 auto; stroke-width: 2; }
.button .icon, .text-link .icon { inline-size: 20px; block-size: 20px; }
.icon-button { display: inline-flex; align-items: center; justify-content: center; inline-size: 48px; min-inline-size: 48px; block-size: 48px; border: 0; border-radius: 8px; background: transparent; color: #155E55; text-decoration: none; }
.icon-button:hover { background: #DCE9E3; }
.directional { transition: transform var(--motion-fast) var(--ease-standard); }
.text-link:hover .directional, .text-link:focus-visible .directional { transform: translateX(3px); }
.site-header { position: sticky; inset-block-start: 0; z-index: 20; background: #F8F9F6; border-block-end: 1px solid #D3DDD7; }
.header-inner { min-block-size: 72px; display: flex; gap: 1.0rem; align-items: center; justify-content: space-between; }
.wordmark { display: inline-flex; flex-direction: column; color: #155E55; text-decoration: none; line-height: 1.2; font-size: 22px; font-weight: 600; flex-shrink: 0; }
.wordmark small { font-size: 10px; letter-spacing: 0.12em; margin-block-start: 0.25rem; }
.header-actions { display: flex; align-items: center; gap: 0.25rem; }
.desktop-nav, .header-request { display: none; }
.desktop-nav ul, .nojs-nav ul { display: flex; gap: 1.5rem; padding: 0; list-style: none; margin: 0; }
.desktop-nav a { display: inline-flex; min-block-size: 48px; align-items: center; text-decoration: none; font-size: 1rem; font-weight: 600; white-space: nowrap; }
.desktop-nav a:hover { text-decoration: underline; }
/* S6-A01: retain document geometry and text size during compact-header motion. */
[data-motion-approved="true"] .site-header { background: transparent; border-block-end-color: transparent; }
[data-motion-approved="true"] .site-header::before { content: ""; position: absolute; inset: -8px 0 -1px; background: #F8F9F6; border-block-end: 1px solid #D3DDD7; transition: transform var(--motion-standard) var(--ease-standard); pointer-events: none; }
[data-motion-approved="true"] .header-inner { position: relative; transition: transform var(--motion-standard) var(--ease-standard); }
[data-motion-approved="true"] .site-header.is-compact::before { transform: translateY(-8px); }
[data-motion-approved="true"] .site-header.is-compact .header-inner { transform: translateY(-4px); }
[data-motion-approved="true"] :is(.desktop-nav, .drawer-links) a { transition: color var(--motion-standard) var(--ease-standard), text-decoration-color var(--motion-standard) var(--ease-standard); text-decoration: underline; text-decoration-color: transparent; }
[data-motion-approved="true"] :is(.desktop-nav, .drawer-links) a:is(:hover, :focus-visible) { color: #155E55; text-decoration-color: currentcolor; }
.review-note { display: flex; justify-content: center; flex-wrap: wrap; gap: 0.25rem 1.0rem; background: #EDF3F7; color: #245B72; padding: 0.5rem 1.5rem; font-size: .875rem; line-height: 1.5; text-align: center; }
.review-note span:first-child { font-weight: 600; }
.hero { padding-block: 4.0rem 3.0rem; display: grid; gap: 2.5rem; align-items: center; }
.hero h1 { font-size: clamp(2.25rem, 1.4rem + 2.2vw, 3.5rem); line-height: 1.12; letter-spacing: -0.02em; margin-block-end: 1.5rem; }
.hero .lead { max-inline-size: 40ch; }
.hero-copy.align-center { text-align: center; }
.hero-copy.align-center .actions { justify-content: center; }
.hero-frame { position: relative; inline-size: 100%; min-inline-size: 0; aspect-ratio: 4/3; background: #DCE9E3; overflow: hidden; }
.hero-frame::after { content: ""; position: absolute; inset: 0; background: #102620; opacity: var(--hero-overlay, 0); pointer-events: none; }
.hero-poster { inline-size: 100%; block-size: 100%; object-fit: cover; object-position: var(--focal-x, 50%) var(--focal-y, 50%); }
.hero-frame picture { display: contents; }
.hero-video { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: cover; }
.video-toggle { position: absolute; inset-inline-end: 1.0rem; inset-block-end: 1.0rem; z-index: 1; }
.quick-care { border-block: 1px solid #D3DDD7; }
.quick-care ul { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; margin: 0; }
.quick-care li { border-block-end: 1px solid #D3DDD7; }
.quick-care a { display: flex; justify-content: space-between; align-items: center; gap: 0.75rem; min-block-size: 80px; padding: 1.0rem 0.75rem; font-size: 1rem; font-weight: 600; text-decoration: none; }
.quick-care a:hover { background: #EAF0EB; text-decoration: underline; }
.intro, .split-copy { display: grid; gap: 2.0rem; }
.intro h2 { max-inline-size: 21ch; }
.section-head { display: flex; justify-content: space-between; align-items: end; flex-wrap: wrap; gap: 1.5rem; margin-block-end: 2.5rem; }
.section-head h2 { margin-block-end: 0; }
.section-head > p { max-inline-size: 32ch; margin: 0; color: #40554E; }
.department-list { list-style: none; padding: 0; margin: 1.5rem 0 0; border-block-start: 1px solid #79877F; }
.department-list li { border-block-end: 1px solid #79877F; }
.department-row { display: grid; grid-template-columns: 28px minmax(0, 1fr) 32px; align-items: center; gap: 1.0rem; min-block-size: 100px; padding: 1.5rem 0; color: #182C28; text-decoration: none; transition: background-color var(--motion-standard) var(--ease-standard); }
.department-number { color: #A14E36; font-size: .875rem; font-weight: 600; }
.department-name { font-size: clamp(1.375rem, 1.1rem + .6vw, 1.75rem); line-height: 1.25; font-weight: 600; }
.department-arrow { color: #155E55; }
.department-row:hover, .department-row:focus-visible { background: #DCE9E3; color: #155E55; }
.department-row:hover .department-name, .department-row:focus-visible .department-name { text-decoration: underline; text-underline-offset: 0.2em; text-decoration-thickness: 1px; }
.doctor-list { list-style: none; margin: 0; padding: 0; }
.doctor-feature { display: grid; gap: 2.0rem; padding-block: 3.0rem; border-block-end: 1px solid #D3DDD7; align-items: center; }
.doctor-feature:first-child { padding-block-start: 1.0rem; }
.doctor-feature:last-child { border-block-end: 0; }
.doctor-copy h3 { font-size: clamp(1.75rem, 1.25rem + 1.2vw, 2.375rem); line-height: 1.2; max-inline-size: 22ch; }
.doctor-copy h3 a { color: #182C28; text-decoration: none; }
.doctor-copy h3 a:hover { color: #155E55; text-decoration: underline; }
.doctor-copy .eyebrow { max-inline-size: 48ch; }
.doctor-feature .actions { margin-block-start: 2.0rem; }
.specialties { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; list-style: none; padding: 0; }
.specialties li { display: inline-flex; }
.specialties a { font-size: 1rem; }
.portrait { aspect-ratio: 4/5; max-inline-size: 440px; inline-size: 100%; background: #DCE9E3; overflow: hidden; }
.portrait img { inline-size: 100%; block-size: 100%; object-fit: cover; object-position: 50% 0; }
[data-motion-approved="true"] .portrait img { transition: transform var(--motion-slow) var(--ease-standard); }
[data-motion-approved="true"] :is(.doctor-feature, .profile-hero):focus-within .portrait img { transform: scale(1.025); }
@media (hover: hover) {
 [data-motion-approved="true"] :is(.doctor-feature, .profile-hero):hover .portrait img { transform: scale(1.025); }
}
[data-motion-approved="true"] :is(.button, .icon-button):focus-visible { background-color: #104A43; color: #F8F9F6; }
[data-motion-approved="true"] :is(.text-link, .doctor-copy h3 a, .icon-button) { transition: color var(--motion-fast) var(--ease-standard), background-color var(--motion-fast) var(--ease-standard); }
[data-motion-approved="true"] .doctor-copy h3 a:focus-visible { color: #155E55; text-decoration: underline; }
[data-motion-approved="true"] :is(.department-row, .quick-care a, .button):is(:hover, :focus-visible) .directional { transform: translateX(3px); }
[data-motion-approved="true"] .department-row { transition: color var(--motion-standard) var(--ease-standard), background-color var(--motion-standard) var(--ease-standard); }
.motion-reveal { animation: section-enter var(--motion-slow) var(--ease-standard); }
@keyframes section-enter { from { opacity: 0.88; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.results-enter { animation: content-enter var(--motion-fast) var(--ease-standard); }
.why-list { display: grid; gap: 2.0rem; list-style: none; padding: 0; margin-block: 2.5rem 0; }
.why-list li { border-block-start: 1px solid #79877F; padding-block-start: 1.5rem; }
.why-list h3 { margin-block-end: 1.0rem; }
.why-list p { margin: 0; color: #40554E; }
.insurance-strip { padding-block: 3.0rem; border-block: 1px solid #79877F; }
.journal-list { list-style: none; margin: 0; padding: 0; }
.journal-row { display: grid; grid-template-columns: minmax(0, 1fr) 48px; align-items: center; gap: 1.5rem; border-block-start: 1px solid #79877F; padding-block: 2.0rem; }
.journal-row:last-child { border-block-end: 1px solid #79877F; }
.journal-row h3 { max-inline-size: 44ch; margin-block-end: 1.0rem; }
.journal-row h3 a { color: #182C28; text-decoration: none; }
.journal-row h3 a:hover { color: #155E55; text-decoration: underline; }
.journal-row p:last-child { margin: 0; }
.clinic-gallery { display: grid; gap: 2.0rem; }
.clinic-gallery img { aspect-ratio: 3/2; inline-size: 100%; object-fit: cover; }
.location { display: grid; align-items: center; gap: 2.5rem; }
.location img { aspect-ratio: 3/2; object-fit: cover; inline-size: 100%; }
.location address { max-inline-size: 28ch; margin-block-end: 1.5rem; }
.final-cta { background: #173D35; color: #F8F9F6; }
.final-cta h2 { max-inline-size: 22ch; }
.final-cta .eyebrow, .final-cta p { color: #DCE9E3; }
.final-cta .button { border-color: #F8F9F6; background: #F8F9F6; color: #155E55; }
.final-cta :focus-visible, .site-footer :focus-visible { outline-color: #F4D68A; box-shadow: 0 0 0 2px #173D35; }
.site-footer { background: #173D35; color: #DCE9E3; padding-block: 4.0rem calc(2.0rem + 72px + env(safe-area-inset-bottom, 0px)); border-block-start: 1px solid #79877F; }
.site-footer a { color: #F8F9F6; }
.site-footer h2 { font-size: 1.125rem; color: #F8F9F6; }
.site-footer .small { color: #DCE9E3; }
.footer-grid { display: grid; gap: 2.5rem; }
.footer-grid ul { list-style: none; padding: 0; margin: 0; }
.footer-grid li a { display: inline-flex; min-block-size: 44px; align-items: center; font-size: 1rem; }
.footer-wordmark { font-size: clamp(1.375rem, 1.1rem + .6vw, 1.75rem); font-weight: 600; line-height: 1.3; color: #F8F9F6; }
.footer-wordmark span { font-size: 1rem; font-weight: 400; }
.source-logo { inline-size: 128px; block-size: 128px; object-fit: contain; margin-block-start: 1.5rem; }
.footer-bottom { display: flex; flex-wrap: wrap; gap: 1.0rem 2.0rem; border-block-start: 1px solid #79877F; margin-block-start: 3.0rem; padding-block-start: 1.5rem; font-size: .875rem; }
.footer-bottom a { min-block-size: 44px; display: inline-flex; align-items: center; }
.mobile-actions { position: fixed; inset-inline: 0; inset-block-end: 0; z-index: 30; background: #FFFFFF; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block-start: 1px solid #79877F; padding-block-end: env(safe-area-inset-bottom, 0px); }
.mobile-actions a { min-block-size: 72px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.25rem; text-decoration: none; font-size: .875rem; font-weight: 600; }
.mobile-actions a:last-child { background: #155E55; color: #F8F9F6; }
.mobile-actions a:last-child:focus-visible { outline-offset: -5px; outline-color: #F4D68A; }
.page-heading, .article-heading { padding-block: 3.0rem 2.0rem; }
.page-heading > .text-link, .profile-hero > div > .text-link, .article-heading > .text-link { margin-block-end: 2.0rem; }
.page-content { padding-block: 2.0rem 5.0rem; min-block-size: 45vh; }
.page-content > .lead { margin-block-end: 3.0rem; }
.program-link { border: 1px solid #79877F; padding: 2.0rem; margin-block-start: 3.0rem; }
.profile-hero { display: grid; gap: 2.5rem; padding-block: 3.0rem; align-items: center; }
.profile-hero h1 { max-inline-size: 23ch; }
.profile-hero .button { margin-block-start: 1.0rem; }
.profile-body { display: grid; gap: 2.5rem; }
.profile-aside { max-inline-size: 34ch; }
.profile-aside h2 { font-size: 1.375rem; }
.profile-aside p { font-size: 1rem; color: #596C65; }
.prose h2, .prose h3 { margin-block-start: 2.5rem; }
.prose p { margin-block-end: 1.5rem; }
.review-panel, .empty-state { padding: 1.5rem; background: #EDF3F7; border-inline-start: 3px solid #245B72; color: #245B72; }
.review-panel { font-size: 1rem; }
.article-heading h1 { max-inline-size: 28ch; }
.article-review { border-block-start: 1px solid #79877F; margin-block-start: 3.0rem; }
.article-review p { font-size: 1rem; }
.finder-panel { background: #FFFFFF; border: 1px solid #79877F; padding: 1.5rem; }
.search-input { display: flex; gap: 0.75rem; flex-wrap: wrap; }
.search-input input { flex: 1 1 240px; min-inline-size: 0; }
.finder-filters { display: grid; gap: 1.0rem; margin-block: 1.5rem; align-items: end; }
label { display: block; font-size: 1rem; line-height: 1.5; font-weight: 600; margin-block-end: 0.5rem; }
label span { font-weight: 400; }
input, select { inline-size: 100%; min-block-size: 48px; color: #182C28; background: #FFFFFF; border: 1px solid #79877F; border-radius: 8px; padding: 0.75rem 1.0rem; font-size: 1rem; }
select { padding-inline-end: 2.0rem; }
input::placeholder { color: #596C65; opacity: 1; }
.finder-status { margin-block: 1.5rem 1.0rem; }
.finder-browse { display: flex; flex-wrap: wrap; gap: 1.0rem 2.0rem; margin-block-start: 1.5rem; }
.finder-results h3 { font-size: 1.375rem; margin-block: 1.5rem 0.75rem; }
.finder-results ul { list-style: none; padding: 0; }
.finder-results li { border-block-end: 1px solid #D3DDD7; }
.finder-results a { display: block; padding-block: 0.75rem; min-block-size: 48px; }
dialog { color: #182C28; background: #F8F9F6; border: 0; border-radius: 12px; box-shadow: 0 16px 40px rgba(16,38,32,0.16); padding: 1.5rem; max-block-size: calc(100dvh - 2.0rem); inline-size: min(calc(100% - 2.0rem), 760px); overscroll-behavior: contain; }
dialog { contain: layout style paint; }
dialog::backdrop { background: rgb(16 38 32 / 72%); }
dialog[open] { animation: dialog-enter var(--motion-standard) var(--ease-standard); }
@keyframes dialog-enter { from { opacity: 0.88; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
[data-motion-approved="true"] .menu-drawer[open] { animation: drawer-enter var(--motion-slow) var(--ease-standard); }
@keyframes drawer-enter { from { opacity: 0.88; transform: translateX(8px); } to { opacity: 1; transform: none; } }
[dir="rtl"] [data-motion-approved="true"] .menu-drawer[open] { animation-name: drawer-enter-rtl; }
@keyframes drawer-enter-rtl { from { opacity: 0.88; transform: translateX(-8px); } to { opacity: 1; transform: none; } }
.dialog-top, .drawer-top { display: flex; gap: 1.0rem; align-items: center; justify-content: space-between; margin-block-end: 1.5rem; }
.dialog-top .eyebrow, .drawer-top .eyebrow { margin: 0; }
.menu-drawer { margin: 0; margin-inline-start: auto; block-size: 100dvh; max-block-size: 100dvh; inline-size: min(100%, 480px); border-radius: 0; padding: 1.5rem; }
.drawer-links { list-style: none; margin: 0; padding: 0; }
.drawer-links li { border-block-end: 1px solid #D3DDD7; }
.drawer-links a { display: block; padding-block: 1.0rem; text-decoration: none; color: #182C28; font-size: clamp(1.375rem, 1.1rem + .6vw, 1.75rem); font-weight: 600; }
.drawer-links a:hover { text-decoration: underline; color: #155E55; }
.drawer-bottom { margin-block-start: 2.5rem; }
.drawer-bottom .small { margin-block-start: 1.5rem; }
.contact-dialog { max-inline-size: 560px; }
dl { margin: 1.5rem 0; }
dt { font-weight: 600; }
dd { margin-inline-start: 0; margin-block-end: 1.0rem; }
fieldset { border: 0; padding: 0; margin: 0; min-inline-size: 0; }
.form-grid { display: grid; gap: 1.5rem; }
.field .small { margin-block: 0.5rem 0; }
.request-form { margin-block-start: 1.5rem; }
.consent-field { margin-block: 1.5rem; }
.consent-field label { display: flex; align-items: start; gap: 0.75rem; font-weight: 400; }
input[type="checkbox"] { inline-size: 24px; min-inline-size: 24px; block-size: 24px; min-block-size: 24px; margin-block-start: 0.25rem; accent-color: #155E55; }
.error-summary { padding: 1.5rem; border: 2px solid #A12D35; background: #FFF0F0; margin-block-end: 1.5rem; }
.error-summary h3 { font-size: 1.375rem; }
.error-summary ul { margin: 0; }
.error-summary a { color: #A12D35; }
[aria-invalid="true"] { border: 2px solid #A12D35; }
.field-error { font-size: 1rem; color: #A12D35; margin-block: 0.5rem 0; }
.test-options { border-block: 1px solid #79877F; margin-block: 1.5rem; padding-block: 0.75rem; }
summary { min-block-size: 48px; display: list-item; padding: 0.75rem 0.25rem; color: #155E55; font-weight: 600; }
details[open] > :not(summary) { animation: content-enter var(--motion-fast) var(--ease-standard); }
@keyframes content-enter { from { opacity: 0.88; } to { opacity: 1; } }
.request-status:not(:empty) { padding: 1.5rem; background: #EDF3F7; border: 1px solid #245B72; color: #245B72; margin-block: 1.5rem 0; }
.nojs-nav { padding-block: 1.5rem; }
.nojs-nav ul { flex-wrap: wrap; }
.sr-only { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 80; inset-block-start: 0.5rem; inset-inline-start: 0.5rem; padding: 1.0rem; color: #F8F9F6; background: #155E55; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
[dir="rtl"] body { font-family: "IBM Plex Sans Arabic", Arial, sans-serif; line-height: 1.85; }
[dir="rtl"] h1 { line-height: 1.4; letter-spacing: 0; }
[dir="rtl"] h2, [dir="rtl"] .doctor-copy h3 { line-height: 1.45; letter-spacing: 0; }
[dir="rtl"] h3 { line-height: 1.55; letter-spacing: 0; }
[dir="rtl"] .hero h1 { line-height: 1.4; }
[dir="rtl"] .button { line-height: 1.75; }
[dir="rtl"] .directional { transform: scaleX(-1); }
[dir="rtl"] .text-link:hover .directional, [dir="rtl"] .text-link:focus-visible .directional { transform: scaleX(-1) translateX(3px); }
[dir="rtl"] [data-motion-approved="true"] :is(.department-row, .quick-care a, .button):is(:hover, :focus-visible) .directional { transform: scaleX(-1) translateX(3px); }
[dir="rtl"] .prose[dir="ltr"] { text-align: start; }
[dir="rtl"] .wordmark { font-family: Arial, sans-serif; }
@media (min-width: 400px) { .container { inline-size: min(calc(100% - 2 * 1.5rem), 1280px); } }
@media (min-width: 768px) {
 .container { inline-size: min(calc(100% - 2 * 2.0rem), 1280px); }
 .section { padding-block: 5.0rem; }
 .header-inner { min-block-size: 72px; }
 .header-request { display: inline; }
 .header-actions { gap: 0.75rem; }
 .quick-care ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }
 .quick-care li { border: 0; }
 .quick-care li + li { border-inline-start: 1px solid #D3DDD7; }
 .quick-care a { min-block-size: 96px; padding-inline: 1.5rem; }
 .why-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .clinic-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .clinic-gallery figure:first-child { grid-column: 1 / -1; }
 .footer-grid { grid-template-columns: 1fr 1fr; }
 .footer-grid > :first-child { grid-column: 1 / -1; }
 .mobile-actions { display: none; }
 .site-footer { padding-block-end: 2.0rem; }
 .finder-filters { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; }
 .finder-panel { padding: 2.5rem; }
 .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 dialog { padding: 2.5rem; }
 .department-row { min-block-size: 120px; grid-template-columns: 48px minmax(0, 1fr) 48px; gap: 1.5rem; }
 .department-name { font-size: clamp(1.75rem, 1.25rem + 1.2vw, 2.375rem); }
 .hero { padding-block: 5.0rem 4.0rem; }
}
@media (min-width: 1024px) {
 html { scroll-padding-block-start: calc(72px + 1.0rem); }
 .container { inline-size: min(calc(100% - 2 * 3.0rem), 1280px); }
 .hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 3.0rem; }
 .hero-frame { aspect-ratio: 3/2; min-block-size: 450px; }
 .intro { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 5.0rem; }
 .split-copy { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 5.0rem; }
 .doctor-feature { grid-template-columns: minmax(0, 1fr) 380px; gap: 5.0rem; padding-block: 4.0rem; }
 .doctor-feature:nth-child(even) { grid-template-columns: 380px minmax(0, 1fr); }
 .doctor-feature:nth-child(even) .portrait { order: -1; }
 .doctor-feature .portrait { inline-size: 380px; }
 .doctor-copy { max-inline-size: 580px; }
 .doctor-copy h3 { font-size: clamp(2.125rem, 1.25rem + 2.5vw, 3.375rem); line-height: 1.15; }
 .location, .profile-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 5.0rem; }
 .profile-hero .portrait { justify-self: end; }
 .profile-body { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 5.0rem; }
 .footer-grid { grid-template-columns: 1.2fr 0.8fr 1fr; gap: 4.0rem; }
 .footer-grid > :first-child { grid-column: auto; }
 .page-heading, .article-heading { padding-block: 4.0rem 2.5rem; }
}
@media (min-width: 1280px) {
 .section { padding-block: 6.0rem; }
 .hero h1 { font-size: clamp(2.25rem, 1.2rem + 3.2vw, 4rem); line-height: 1.08; }
 .hero-frame { min-block-size: 520px; }
 .section-head { margin-block-end: 3.0rem; }
 .clinic-gallery { grid-template-columns: 1.5fr 1fr; align-items: start; }
 .clinic-gallery figure:first-child { grid-column: 1; grid-row: 1 / 3; }
 .clinic-gallery figure:first-child img { aspect-ratio: 3/4; }
 [dir="rtl"] .hero h1 { line-height: 1.4; }
}
@media (min-width: 1440px) {
 .header-inner { min-block-size: 80px; gap: 2.0rem; }
 .desktop-nav { display: block; }
 .header-request, .menu-toggle { display: none; }
 .wordmark { font-size: 26px; }
 html { scroll-padding-block-start: calc(80px + 1.0rem); }
}
@media (prefers-reduced-motion: reduce) {
 *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
 .text-link:hover .directional, .text-link:focus-visible .directional { transform: none; }
 [dir="rtl"] .text-link:hover .directional, [dir="rtl"] .text-link:focus-visible .directional { transform: scaleX(-1); }
 [data-motion-approved="true"] :is(.portrait img, .header-inner), [data-motion-approved="true"] .site-header::before, .motion-reveal { transform: none !important; opacity: 1 !important; }
 [data-motion-approved="true"] :is(.department-row, .quick-care a, .button):is(:hover, :focus-visible) .directional { transform: none; }
 [dir="rtl"] [data-motion-approved="true"] :is(.department-row, .quick-care a, .button):is(:hover, :focus-visible) .directional { transform: scaleX(-1); }
}
@media print { .site-header, .mobile-actions, dialog, .request-preview, .finder-panel { display: none; } body { color: #000; background: #fff; } .section { padding-block: 24px; } }

/* refinement.css */
/* Stage 7A: owner-authorized visual correction. Original Stage 3 tokens remain preserved. */

h1, h2, h3 { text-wrap: pretty; }
h1[lang="en"], [dir="rtl"] h1[lang="en"] { line-height: 1.14; }
.section { padding-block: 48px; }
.section-head { margin-block-end: 28px; gap: 16px; }
.section-head p { font-size: 16px; }
.eyebrow { margin-block-end: 12px; }
.lead { font-size: 18px; line-height: 1.6; }
.button { min-block-size: 48px; padding: 10px 16px; font-size: 16px; gap: 8px; }
.actions { gap: 12px 16px; }
.text-link { min-block-size: 44px; font-size: 16px; }
.header-inner { min-block-size: 72px; gap: 16px; }
.wordmark { font-size: 22px; }
.header-language { display: none; }
.hero { gap: 28px; padding-block: 40px; }
.hero h1 { max-inline-size: 14ch; margin-block-end: 20px; }
.hero .lead { max-inline-size: 43ch; margin-block-end: 24px; }
.hero-frame { min-block-size: 0; aspect-ratio: 4 / 3; }
.hero-media figcaption { font-size: 13px; padding-block-start: 8px; }
.quick-care a { min-block-size: 68px; padding: 14px 12px; font-size: 16px; }
.intro { gap: 24px; }
.intro h2 { max-inline-size: 24ch; }
.intro .lead { margin-block-end: 12px; }
.intro-values { display: grid; gap: 20px; border-block-start: 1px solid #D3DDD7; padding-block-start: 24px; }
.intro-values h3 { font-size: 18px; line-height: 1.4; margin-block-end: 6px; }
.intro-values p { font-size: 16px; line-height: 1.5; margin: 0; color: #40554E; }
.department-list { margin-block-start: 16px; }
.department-row { min-block-size: 84px; padding-block: 20px; grid-template-columns: 28px minmax(0, 1fr) 24px; gap: 16px; }
.department-name { display: block; font-size: 24px; line-height: 1.25; }
.department-context { display: block; color: #40554E; font-size: 15px; line-height: 1.55; margin-block-start: 12px; }
.department-grid { border: 0; display: grid; gap: 0 32px; }
.department-grid li { border-block-start: 1px solid #79877F; border-block-end: 0; }
.department-grid .department-row { min-block-size: 138px; align-items: start; padding-block: 24px; }
.department-number, .department-arrow { padding-block-start: 4px; }
.department-row:is(:hover,:focus-visible) .department-number { color: #155E55; }
.doctor-list { display: grid; gap: 24px 32px; }
.doctor-feature { --portrait-width: 160px; }
.doctor-feature, .doctor-feature:first-child, .doctor-feature:last-child, .doctor-feature:nth-child(even) { display: grid; grid-template-columns: var(--portrait-width) minmax(0,1fr); align-items: start; gap: 20px 16px; padding: 24px 0; border-block: 1px solid #D3DDD7; background: transparent; transition: background-color var(--motion-standard) var(--ease-standard); }
.doctor-feature:is(:hover,:focus-within) { background: #EAF0EB; }
.doctor-feature .doctor-copy { grid-column: 2; grid-row: 1; min-inline-size: 0; }
.doctor-copy .eyebrow { font-size: 14px; line-height: 1.45; margin-block-end: 12px; color: #40554E; }
.doctor-copy h3, [dir="rtl"] .doctor-copy h3 { font-size: 24px; line-height: 1.2; max-inline-size: none; margin-block-end: 16px; }
.doctor-copy .specialties { display: block; margin: 0; }
.doctor-copy .specialties li { display: block; margin-block: 4px; }
.doctor-copy .specialties a { font-size: 14px; line-height: 1.5; }
.doctor-feature .portrait, .doctor-feature:nth-child(even) .portrait { grid-column: 1; grid-row: 1; order: 0; inline-size: var(--portrait-width); max-inline-size: 100%; aspect-ratio: 4 / 5; }
.portrait img { object-position: 50% 0; }
.doctor-feature .actions { grid-column: 1 / -1; margin: 0; justify-content: space-between; }
.doctor-feature .actions .button { padding-inline: 12px; }
.doctor-feature .actions .text-link { font-size: 15px; }
.split-copy { gap: 24px; }
.split-copy p:last-child { margin-block-end: 0; }
.insurance-strip { padding-block: 48px; background: #EAF0EB; }
.insurance-layout { display: grid; gap: 32px; align-items: center; }
.insurance-layout .lead { max-inline-size: 43ch; margin-block-end: 12px; }
.insurance-artwork > .eyebrow { font-size: 13px; }
.insurance-logos { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.insurance-logo-box { min-block-size: 112px; padding: 20px 12px; border: 1px solid #D3DDD7; background: #F8F9F6; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; }
.insurance-name { font-size: 18px; font-weight: 600; line-height: 1.35; }
.pending-label { font-size: 12px; line-height: 1.5; color: #40554E; }
.insurance-artwork > .small { margin-block: 12px 0; font-size: 14px; }
.insurance-logo-box img { inline-size: 100%; max-inline-size: 180px; max-block-size: 64px; object-fit: contain; }
.insurance-logo-box { color: #182C28; text-decoration: none; transition: background-color var(--motion-standard) var(--ease-standard), border-color var(--motion-standard) var(--ease-standard); }
.insurance-logo-box:is(:hover,:focus-visible) { background: #FFFFFF; border-color: #155E55; }
.insurance-logo-box img { filter: grayscale(1); transition: filter var(--motion-standard) var(--ease-standard); }
.insurance-logo-box:is(:hover,:focus-visible) img { filter: none; }
.finder-panel { padding: 24px 0 0; border: 0; border-block-start: 2px solid #155E55; background: transparent; }
.finder-form .search-field > label { font-size: 18px; margin-block-end: 12px; }
.search-input { gap: 8px; flex-wrap: nowrap; }
.search-input input { flex: 1 1 auto; min-inline-size: 0; padding-inline: 14px; background: #FFFFFF; }
.search-input .button { flex-shrink: 0; }
.finder-filters { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 16px; margin-block: 20px 16px; }
.finder-filters label { font-size: 14px; }
.finder-filters select { font-size: 15px; padding-inline: 10px 26px; }
.finder-filters > button { grid-column: 1 / -1; justify-self: start; min-block-size: 44px; padding: 8px 16px; }
.finder-form > .small { font-size: 14px; line-height: 1.6; max-inline-size: 65ch; margin-block-end: 12px; }
.finder-status { font-size: 14px; margin-block: 16px 8px; }
.finder-browse { gap: 8px 24px; margin-block-start: 12px; }
.finder-results a { padding-block: 10px; }
.journal-list { display: grid; gap: 20px; }
.journal-row, .journal-row:last-child { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 44px; padding: 24px 0; border-block: 1px solid #D3DDD7; align-items: end; gap: 12px; transition: background-color var(--motion-standard) var(--ease-standard); }
.journal-row:first-child { background: #EAF0EB; padding: 24px; }
.journal-row h3 { font-size: 24px; line-height: 1.25; margin-block-end: 16px; }
.journal-row .eyebrow { font-size: 13px; margin-block-end: 16px; }
.journal-row .small { font-size: 13px; }
.journal-row:is(:hover,:focus-within) { background: #EAF0EB; }
.journal-row:is(:hover,:focus-within) .directional { transform: translateX(4px); }
[dir="rtl"] .journal-row:is(:hover,:focus-within) .directional { transform: scaleX(-1) translateX(4px); }
.clinic-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.clinic-gallery figure:first-child { grid-column: 1 / -1; grid-row: auto; }
.clinic-gallery img, .clinic-gallery figure:first-child img { inline-size: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.clinic-gallery figure:last-child img { object-position: 50% 0; }
.clinic-gallery figcaption { font-size: 13px; padding-block-start: 8px; }
.location { gap: 28px; }
.location address { margin-block-end: 16px; }
.location p { margin-block-end: 16px; }
.location img { aspect-ratio: 3 / 2; }
.final-cta .button { transition: background-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard); }
.final-cta .button:is(:hover,:focus-visible) { color: #155E55; background: #DCE9E3; }
.site-footer { padding-block: 40px calc(24px + 72px + env(safe-area-inset-bottom,0px)); }
.footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 20px; }
.footer-grid > :first-child { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0,1fr) 72px; gap: 8px 24px; align-items: start; }
.footer-grid > :first-child > p { grid-column: 1; margin: 0; font-size: 16px; }
.footer-grid > :first-child .footer-wordmark { font-size: 24px; }
.source-logo { grid-column: 2; grid-row: 1 / 3; inline-size: 72px; block-size: 72px; margin: 0; }
.footer-grid h2 { margin-block-end: 12px; }
.footer-grid > div:last-child p { font-size: 15px; line-height: 1.6; margin-block-end: 16px; }
.footer-grid .small { font-size: 13px; }
.footer-grid li a { font-size: 15px; }
.footer-bottom { padding-block-start: 16px; margin-block-start: 24px; gap: 4px 24px; font-size: 13px; }
.page-heading, .article-heading { padding-block: 32px 20px; }
.page-heading > .text-link, .article-heading > .text-link, .profile-hero > div > .text-link { margin-block-end: 16px; }
.page-heading h1 { margin-block-end: 16px; }
.page-content { padding-block: 16px 56px; min-block-size: 35vh; }
.page-content > .lead { margin-block-end: 24px; }
.program-link { padding: 24px; margin-block-start: 28px; background: #EAF0EB; border: 0; border-inline-start: 3px solid #155E55; }
.program-link h2 { font-size: 28px; margin-block-end: 16px; }
.program-link p { max-inline-size: 55ch; margin-block-end: 12px; }
.profile-hero { gap: 28px; padding-block: 32px; }
.profile-hero .portrait { inline-size: min(100%,280px); justify-self: start; }
.profile-hero h1 { max-inline-size: 22ch; }
.profile-body { gap: 28px; }
.review-panel { font-size: 14px; padding: 16px 20px; }
.prose h2, .prose h3 { margin-block-start: 28px; }
.prose p { margin-block-end: 20px; }
.department-content-grid { display: grid; gap: 28px; }
.department-summary { padding: 24px; border-block-start: 2px solid #155E55; background: #EAF0EB; }
.department-summary h2 { font-size: 24px; }
.department-summary p { font-size: 16px; }
.scope-disclosure { border-block-end: 1px solid #D3DDD7; }
.scope-disclosure summary { font-size: 20px; line-height: 1.4; padding-block: 18px; }
.scope-disclosure > div { padding-block-end: 20px; }
.article-heading h1 { max-inline-size: 29ch; }
.article-review { margin-block-start: 32px; }
/* S7B budget simplification: native close removes the painted dialog immediately.
   Keep only the approved entrance; no discrete display/overlay exit transition. */
[dir="rtl"] :is(.hero h1, .article-heading h1, .profile-hero h1)[lang="en"] { line-height: 1.18; }
@media (max-width:359px) { .doctor-feature { --portrait-width: 120px; }  .doctor-copy h3, [dir="rtl"] .doctor-copy h3 { font-size: 22px; } .doctor-feature .actions { justify-content: start; } }
@media (min-width:768px) {
 .section { padding-block: 56px; }
 .header-inner { min-block-size: 72px; }
 .hero { padding-block: 48px; gap: 32px; }
 .hero-frame { aspect-ratio: 16 / 9; }
 .hero-media { max-inline-size: 100%; }
 .hero .actions { flex-wrap: nowrap; }
 .quick-care a { min-block-size: 80px; }
 .intro-values { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
 .department-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .department-grid li:last-child { grid-column: 1 / -1; }
 .department-grid .department-row { min-block-size: 154px; }
 .doctor-feature { --portrait-width: 200px; }
 
 .doctor-copy h3, [dir="rtl"] .doctor-copy h3 { font-size: 30px; }
 .finder-filters { grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto; }
 .finder-filters > button { grid-column: auto; }
 .insurance-layout { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 40px; }
 .journal-list { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); gap: 20px 32px; }
 .journal-row:first-child { grid-row: 1 / 3; }
 .journal-row:first-child h3 { font-size: 30px; }
 .journal-row:not(:first-child) h3 { font-size: 22px; }
 .site-footer { padding-block: 40px 24px; }
 .footer-grid { grid-template-columns: minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1fr); gap: 32px; }
 .footer-grid > :first-child { grid-column: auto; display: block; }
 .footer-grid > :first-child > p { margin-block-end: 16px; }
 .source-logo { margin-block-start: 20px; }
 .profile-hero { grid-template-columns: minmax(0,1.65fr) minmax(0,1fr); gap: 40px; }
 .profile-hero .portrait { inline-size: min(100%,320px); justify-self: end; }
 .location { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 40px; }
 .department-content-grid { grid-template-columns: minmax(200px,.65fr) minmax(0,1.5fr); gap: 40px; align-items: start; }
}
@media (min-width:1024px) {
 .hero { grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr); gap: 48px; }
 .hero-frame { aspect-ratio: 4 / 3; }
 .intro { grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); gap: 24px 64px; }
 .intro-values { grid-column: 1 / -1; }
 .doctor-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 32px; }
 .doctor-feature { --portrait-width: 170px; }
 
 .doctor-copy h3, [dir="rtl"] .doctor-copy h3 { font-size: 28px; }
 .split-copy { gap: 64px; }
 .clinic-gallery { grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); grid-template-rows: repeat(2,minmax(0,1fr)); block-size: 480px; gap: 24px; align-items: stretch; }
 .clinic-gallery figure { display: grid; grid-template-rows: minmax(0,1fr) auto; min-block-size: 0; }
 .clinic-gallery figure:first-child { grid-column: 1; grid-row: 1 / 3; }
 .clinic-gallery img, .clinic-gallery figure:first-child img { block-size: 100%; min-block-size: 0; aspect-ratio: auto; }
 .profile-body { grid-template-columns: minmax(0,1fr) minmax(0,2fr); gap: 56px; }
 .department-summary { position: sticky; inset-block-start: 112px; }
}
@media (min-width:1280px) {
 .section { padding-block: 72px; }
 .hero { padding-block: 48px; }
 .hero h1 { font-size: clamp(2.25rem, 1.2rem + 3.2vw, 4rem); }
 .hero .lead { font-size: 20px; }
 .doctor-feature { --portrait-width: 240px; }
 
 .doctor-copy h3, [dir="rtl"] .doctor-copy h3 { font-size: 30px; }
 .section-head { margin-block-end: 32px; }
 .department-name { font-size: 28px; }
 .clinic-gallery { block-size: 540px; }
 .profile-hero .portrait { inline-size: min(100%,340px); }
 .page-heading, .article-heading { padding-block: 40px 24px; }
}
@media (min-width:1440px) {
 .header-inner { min-block-size: 80px; gap: 24px; }
 .wordmark { font-size: 24px; }
 .header-request { display: inline-flex; }
 .header-request .button { font-size: 14px; padding-inline: 12px; }
 .header-language { display: inline-flex; }
 .header-actions { gap: 8px; }
 .desktop-nav ul { gap: 20px; }
 .desktop-nav a { font-size: 15px; }
}
@media (prefers-reduced-motion:reduce) {
 .journal-row:is(:hover,:focus-within) .directional { transform: none; }
 [dir="rtl"] .journal-row:is(:hover,:focus-within) .directional { transform: scaleX(-1); }
}

/* Stage 7B: editable media retain reserved dimensions and the established motion tokens. */
.portrait img { object-position: var(--portrait-x, 50%) var(--portrait-y, 0%); }
.clinic-gallery img, .clinic-gallery figure:last-child img { object-position: var(--gallery-x, 50%) var(--gallery-y, 50%); }
.clinic-gallery[data-count="1"] { grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); }
.clinic-gallery[data-count="1"] figure:first-child { grid-column: 1; grid-row: 1; }
.clinic-gallery[data-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: minmax(0, 1fr); }
.clinic-gallery[data-count="2"] figure:first-child { grid-column: 1; grid-row: 1; }
.clinic-gallery[data-count="2"] figure:last-child { grid-column: 2; grid-row: 1; }
.clinic-gallery[data-count="0"] { display: none; }
.developer-credit { font-size: 12px; line-height: 1.6; color: #bfc9c4; padding-block: 12px; margin-block: 0; }
.developer-credit a { color: inherit; text-underline-offset: 3px; }
.developer-credit a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.footer-wordmark small { display: block; font-size: 14px; }
.header-logo { inline-size: 120px; block-size: 42px; object-fit: contain; }
.department-preview-media { grid-column: 2; inline-size: 120px; block-size: 80px; object-fit: cover; }
.department-hero-media { inline-size: min(100%, 960px); block-size: clamp(200px, 30vw, 400px); object-fit: cover; }
.finder-result-summary { display: block; font-size: 14px; color: #40554E; }
