:root {
color-scheme: light;
font-family: "Aptos", "Segoe UI", ui-sans-serif, system-ui, sans-serif;
font-synthesis: none;
text-rendering: optimizeLegibility;
--ease-out: cubic-bezier(.23, 1, .32, 1);
}

* {
box-sizing: border-box;
}

html {
scroll-behavior: smooth;
}

body {
margin: 0;
min-width: 320px;
overflow-x: hidden;
background: var(--page);
color: var(--ink);
}

body,
button,
a,
summary {
font: inherit;
}

a {
color: inherit;
}

img {
display: block;
max-width: 100%;
}

button,
summary,
a {
-webkit-tap-highlight-color: transparent;
}

:focus-visible {
outline: 3px solid var(--focus);
outline-offset: 4px;
}

.skip-link {
position: fixed;
left: 16px;
top: 12px;
z-index: 20;
padding: 10px 14px;
transform: translateY(-160%);
background: var(--ink);
color: var(--page);
text-decoration: none;
}

.skip-link:focus {
transform: translateY(0);
}

.shell {
width: min(100% - 48px, 1360px);
margin-inline: auto;
}

.site-header {
position: relative;
z-index: 8;
min-height: 72px;
}

.header-inner {
min-height: 72px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 28px;
}

.brand {
display: inline-flex;
align-items: center;
gap: 10px;
flex: 0 0 auto;
color: inherit;
text-decoration: none;
font-weight: 800;
letter-spacing: -.02em;
}

.brand-mark {
display: grid;
width: 30px;
height: 30px;
place-items: center;
background: var(--brand-mark);
color: var(--brand-mark-ink);
font-size: 22px;
line-height: 1;
}

.desktop-nav {
display: flex;
align-items: center;
justify-content: center;
gap: clamp(15px, 2vw, 30px);
min-width: 0;
}

.desktop-nav a,
.header-phone {
white-space: nowrap;
text-decoration: none;
font-size: 14px;
font-weight: 700;
}

.desktop-nav a {
padding-block: 8px;
border-bottom: 1px solid transparent;
}

.desktop-nav a:hover {
border-color: currentColor;
}

.header-phone {
flex: 0 0 auto;
}

.mobile-nav {
display: none;
position: relative;
}

.mobile-nav summary {
min-width: 48px;
min-height: 48px;
display: grid;
place-items: center;
cursor: pointer;
list-style: none;
border: 1px solid currentColor;
}

.mobile-nav summary::-webkit-details-marker {
display: none;
}

.mobile-nav-panel {
position: absolute;
top: calc(100% + 8px);
right: 0;
width: min(78vw, 310px);
padding: 12px;
background: var(--page);
color: var(--ink);
border: 1px solid var(--line);
box-shadow: 0 18px 48px rgb(17 44 36 / .16);
}

.mobile-nav-panel a {
display: block;
min-height: 48px;
padding: 14px 10px;
border-bottom: 1px solid var(--line);
font-weight: 700;
text-decoration: none;
}

.mobile-nav-panel a:last-child {
border-bottom: 0;
}

.primary-action,
.text-action,
.phone-action {
min-height: 52px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 0 22px;
white-space: nowrap;
font-weight: 800;
text-decoration: none;
transition: transform 140ms var(--ease-out), background-color 180ms var(--ease-out), color 180ms var(--ease-out);
}

.primary-action:active,
.text-action:active,
.phone-action:active {
transform: scale(.97);
}

.hero h1,
.section-title,
.route-title,
.price-title,
.contact-title {
margin: 0;
text-wrap: balance;
}

.hero p,
.section-intro,
.route-copy,
.price-copy,
.contact-copy {
max-width: 68ch;
}

.route-list,
.medical-list,
.proof-list,
.footer-links {
margin: 0;
padding: 0;
list-style: none;
}

.hero-actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 14px 18px;
}

.hero-phone {
min-height: 48px;
display: inline-flex;
align-items: center;
font-weight: 800;
}

.hero-media {
margin: 0;
min-width: 0;
}

.hero-media img,
.support-image img {
width: 100%;
height: 100%;
object-fit: cover;
}

.asset-note {
margin: 9px 0 0;
font-size: 12px;
line-height: 1.35;
opacity: .74;
}

.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
border: 0;
}

.site-footer {
padding: 34px 0 44px;
}

.footer-inner {
display: grid;
grid-template-columns: 1fr auto;
align-items: start;
gap: 28px;
}

.footer-inner p {
margin: 8px 0 0;
max-width: 62ch;
font-size: 13px;
line-height: 1.5;
}

.footer-links {
display: grid;
gap: 8px;
text-align: right;
font-size: 13px;
}

.anchor-target {
display: block;
position: relative;
top: -1px;
scroll-margin-top: 6rem;
}

@media (max-width: 940px) {
.desktop-nav,
.header-phone {
display: none;
}

.mobile-nav {
display: block;
}
}

@media (max-width: 767px) {
.shell {
width: min(100% - 32px, 100%);
}

.site-header,
.header-inner {
min-height: 64px;
}

.hero-actions {
align-items: stretch;
flex-direction: column;
}

.hero-actions > * {
width: 100%;
}

.hero-phone {
justify-content: center;
}

.footer-inner {
grid-template-columns: 1fr;
}

.footer-links {
text-align: left;
}
}

@media (hover: hover) and (pointer: fine) {
.primary-action:hover,
.text-action:hover,
.phone-action:hover {
transform: translateY(-2px);
}
}

@media (prefers-reduced-motion: reduce) {
html {
scroll-behavior: auto;
}

*,
*::before,
*::after {
animation-duration: .01ms !important;
animation-iteration-count: 1 !important;
transition-duration: .01ms !important;
}
}

@media (forced-colors: active) {
.primary-action,
.text-action,
.phone-action,
.brand-mark {
border: 1px solid ButtonText;
}
}
:root {
--page: #f3efe8;
--ink: #241d2b;
--muted: #625d67;
--line: #d3c8be;
--field: #48404f;
--field-dark: #29242f;
--signal: #ef704f;
--focus: #f2b544;
--brand-mark: var(--signal);
--brand-mark-ink: #fff;
}

.site-header {
background: var(--page);
border-bottom: 1px solid var(--line);
}

.hero {
min-height: min(760px, calc(100dvh - 72px));
display: grid;
grid-template-columns: minmax(0, .78fr) minmax(520px, 1.22fr);
align-items: center;
gap: clamp(42px, 5vw, 84px);
padding-block: clamp(42px, 6vw, 78px);
}

.hero-copy {
position: relative;
z-index: 1;
}

.place {
margin: 0 0 22px;
color: var(--field);
font-size: 14px;
font-weight: 800;
letter-spacing: .06em;
text-transform: uppercase;
}

.hero h1 {
max-width: 9ch;
font-size: clamp(48px, 5.7vw, 84px);
line-height: .94;
letter-spacing: -.04em;
}

.hero-lead {
margin: 28px 0 30px;
max-width: 42ch;
color: var(--muted);
font-size: 18px;
line-height: 1.55;
}

.primary-action {
background: var(--signal);
color: var(--ink);
border-radius: 12px;
}

.hero-phone {
color: var(--field);
}

.hero-media {
height: clamp(430px, 62vh, 640px);
}

.hero-media picture {
display: block;
width: 100%;
height: 100%;
}

.hero-media img {
object-position: 56% center;
border-radius: 16px 0 0 16px;
}

.asset-note {
color: var(--muted);
}

.route-section {
padding: 104px 0;
background: var(--field);
color: #f8fbf8;
}

.route-layout {
display: grid;
grid-template-columns: minmax(250px, .7fr) minmax(0, 1.3fr);
gap: clamp(48px, 8vw, 140px);
}

.section-title {
max-width: 12ch;
font-size: clamp(38px, 5vw, 72px);
line-height: .98;
letter-spacing: -.035em;
}

.section-intro {
margin: 20px 0 0;
color: currentColor;
font-size: 17px;
line-height: 1.55;
opacity: .78;
}

.route-list li {
border-top: 1px solid rgb(243 239 232 / .34);
}

.route-list li:last-child {
border-bottom: 1px solid rgb(243 239 232 / .34);
}

.route-list a {
min-height: 132px;
display: grid;
grid-template-columns: 1fr 52px;
align-items: center;
gap: 18px;
padding: 16px 0;
text-decoration: none;
}

.route-list strong,
.route-list small {
display: block;
}

.route-list strong {
font-size: clamp(24px, 2.6vw, 38px);
letter-spacing: -.025em;
}

.route-list small {
margin-top: 7px;
color: #ded7e3;
font-size: 14px;
line-height: 1.4;
}

.route-arrow {
display: grid;
width: 48px;
height: 48px;
place-items: center;
border: 1px solid currentColor;
border-radius: 50%;
font-size: 22px;
}

.proof-band {
background: var(--signal);
color: var(--ink);
}

.proof-list {
display: grid;
grid-template-columns: .8fr 1.3fr .9fr;
}

.proof-list li {
min-height: 118px;
display: grid;
align-content: center;
gap: 8px;
padding: 22px 30px;
border-right: 1px solid rgb(36 29 43 / .28);
}

.proof-list li:first-child {
padding-left: 0;
}

.proof-list li:last-child {
padding-right: 0;
border-right: 0;
}

.proof-list span {
font-size: 13px;
font-weight: 700;
}

.proof-list strong,
.proof-list a {
font-size: clamp(18px, 2vw, 25px);
text-decoration: none;
}

.medical-routes {
display: grid;
grid-template-columns: .9fr 1fr;
gap: 0 clamp(60px, 8vw, 128px);
padding-block: 124px;
}

.medical-copy {
align-self: start;
}

.medical-list li {
border-bottom: 1px solid var(--line);
}

.medical-list a {
min-height: 72px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
text-decoration: none;
font-size: 20px;
font-weight: 800;
}

.support-image {
grid-column: 1 / -1;
height: 460px;
margin: 94px 0 0;
}

.support-image img {
object-position: center;
border-radius: 16px;
}

.price-path {
padding: 98px 0;
background: var(--field-dark);
color: #f8fbf8;
}

.price-inner {
display: grid;
grid-template-columns: 1.1fr .8fr auto;
align-items: end;
gap: clamp(32px, 5vw, 80px);
}

.price-title {
max-width: 11ch;
font-size: clamp(42px, 5vw, 72px);
line-height: .98;
letter-spacing: -.04em;
}

.price-copy {
margin: 0;
color: #ded7e3;
line-height: 1.55;
}

.text-action {
background: var(--signal);
color: var(--ink);
border-radius: 12px;
}

.help-section {
display: grid;
grid-template-columns: 120px 1fr auto;
align-items: center;
gap: 38px;
padding-block: 100px;
}

.help-number {
display: grid;
width: 112px;
height: 112px;
place-items: center;
background: var(--signal);
border-radius: 50%;
font-size: 64px;
font-weight: 800;
}

.help-section .section-title {
max-width: 18ch;
font-size: clamp(34px, 4vw, 58px);
}

.phone-action {
background: var(--field);
color: #fff;
border-radius: 12px;
}

.contacts {
padding: 102px 0;
background: #e6ddd2;
}

.contact-layout {
display: grid;
grid-template-columns: .85fr 1.15fr;
gap: 64px;
align-items: stretch;
}

.contact-title {
max-width: 9ch;
font-size: clamp(50px, 7vw, 98px);
line-height: .9;
letter-spacing: -.045em;
}

.contact-copy {
margin: 30px 0 12px;
font-size: 20px;
}

.contact-phone {
font-size: clamp(22px, 3vw, 34px);
font-weight: 800;
}

.address-field {
min-height: 360px;
display: grid;
grid-template-rows: auto 1fr auto;
padding: clamp(28px, 5vw, 68px);
background: var(--field);
color: #f8fbf8;
border-radius: 16px;
}

.address-field span {
font-size: 15px;
font-weight: 700;
}

.address-field strong {
align-self: center;
max-width: 12ch;
font-size: clamp(30px, 4vw, 58px);
line-height: 1;
}

.address-field b {
justify-self: end;
color: var(--signal);
font-size: 82px;
line-height: .8;
}

.site-footer {
background: var(--ink);
color: #f3ebe4;
}

@media (max-width: 980px) {
.hero {
grid-template-columns: minmax(0, .9fr) minmax(390px, 1.1fr);
gap: 36px;
}

.price-inner {
grid-template-columns: 1fr 1fr;
}

.price-inner .text-action {
grid-column: 2;
justify-self: start;
}
}

@media (max-width: 767px) {
.hero {
min-height: auto;
grid-template-columns: 1fr;
gap: 28px;
padding-block: 36px 52px;
}

.place {
margin-bottom: 16px;
font-size: 12px;
}

.hero h1 {
max-width: 10ch;
font-size: clamp(44px, 13vw, 58px);
}

.hero-lead {
margin: 20px 0 24px;
font-size: 16px;
}

.hero-media {
height: 340px;
}

.hero-media img {
object-position: 65% center;
border-radius: 14px;
}

.route-section,
.medical-routes,
.price-path,
.help-section,
.contacts {
padding-block: 72px;
}

.route-layout,
.medical-routes,
.price-inner,
.help-section,
.contact-layout {
grid-template-columns: 1fr;
}

.route-layout {
gap: 38px;
}

.section-title,
.price-title {
font-size: 42px;
}

.route-list a {
min-height: 116px;
grid-template-columns: 1fr 42px;
gap: 10px;
}

.route-list strong {
font-size: 22px;
}

.route-arrow {
width: 40px;
height: 40px;
}

.proof-list {
grid-template-columns: 1fr;
}

.proof-list li,
.proof-list li:first-child,
.proof-list li:last-child {
min-height: 96px;
padding: 18px 0;
border-right: 0;
border-bottom: 1px solid rgb(36 29 43 / .24);
}

.proof-list li:last-child {
border-bottom: 0;
}

.medical-routes {
gap: 42px;
}

.support-image {
height: 270px;
margin-top: 28px;
}

.price-inner {
align-items: start;
}

.price-copy {
margin: 0;
}

.price-inner .text-action {
grid-column: auto;
justify-self: stretch;
}

.help-section {
gap: 24px;
}

.help-number {
width: 72px;
height: 72px;
font-size: 42px;
}

.phone-action {
justify-self: stretch;
}

.contact-layout {
gap: 42px;
}

.contact-title {
font-size: 58px;
}

.address-field {
min-height: 290px;
}
}

@media (min-width: 768px) and (max-width: 1100px) {
.shell {
width: min(100% - 40px, 980px);
}
}


:root {
--color-canvas: #f5f7f2;
--color-surface-raised: #fff;
--color-ink: #173d3c;
--color-text-muted: #526967;
--color-divider: #b7c9c5;
--color-field: #0b5c5a;
--color-field-strong: #123f3e;
--color-on-field: #f8fbff;
--color-on-field-muted: #d7e1f5;
--color-action-primary: #b93824;
--color-on-action: #fff;
--color-proof-info: #e8cb6b;
--color-on-proof-info: #173d3c;
--page: var(--color-canvas);
--ink: var(--color-ink);
--muted: var(--color-text-muted);
--line: var(--color-divider);
--field: var(--color-field);
--field-dark: var(--color-field-strong);
--action: var(--color-action-primary);
--info: var(--color-proof-info);
--signal: var(--action);
--focus: var(--action);
--brand-mark: var(--action);
--brand-mark-ink: var(--color-on-action);
}

.place,
.hero-phone {
color: var(--field);
}

.primary-action {
background: var(--action);
color: var(--color-on-action);
}

.secondary-action {
min-height: 52px;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 0 22px;
white-space: nowrap;
color: var(--ink);
border: 2px solid var(--muted);
border-radius: 12px;
font-weight: 800;
text-decoration: none;
transition: transform 140ms var(--ease-out), background-color 180ms var(--ease-out);
}

.secondary-action:hover {
background: var(--color-surface-raised);
}

.secondary-action:active {
transform: scale(.97);
}

.route-section {
padding: clamp(34px, 4vw, 52px) 0;
background: var(--field);
color: var(--color-on-field);
}

.director-note {
margin-top: clamp(20px, 3vw, 36px);
padding: 0 0 clamp(26px, 3vw, 42px);
}

.director-note-inner {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(170px, .3fr);
align-items: end;
gap: clamp(18px, 4vw, 48px);
padding: clamp(18px, 2vw, 26px);
border: 1px solid #cfddd0;
border-radius: 18px;
background: #edf3eb;
}

.director-note-copy {
max-width: 720px;
}

.director-note-kicker,
.footer-location-kicker {
margin: 0 0 14px;
color: var(--field);
font-size: 12px;
font-weight: 850;
letter-spacing: .1em;
text-transform: uppercase;
}

.director-note h2 {
max-width: 28ch;
margin: 0 0 8px;
color: var(--ink);
font-size: clamp(24px, 2.6vw, 36px);
line-height: 1.05;
letter-spacing: -.045em;
}

.director-note-copy > p:last-child {
max-width: 72ch;
margin: 0;
color: var(--muted);
font-size: clamp(14px, 1.1vw, 16px);
line-height: 1.4;
}

.director-note-signature {
margin: 0;
color: var(--muted);
font-size: 14px;
line-height: 1.4;
}

.director-note-signature strong,
.director-note-signature span {
display: block;
color: var(--ink);
}

.director-note-signature strong {
margin-top: 3px;
font-size: 16px;
}

.director-note-signature span {
font-size: 13px;
}

.route-layout {
display: block;
}

.route-heading-wrap {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 24px;
margin-bottom: clamp(18px, 2vw, 26px);
}

.route-section .section-title {
max-width: none;
font-size: clamp(40px, 5vw, 68px);
line-height: .98;
}

.route-heading-wrap > p {
margin: 0;
color: var(--color-on-field-muted);
font-size: 15px;
}

.route-primary-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
}

.route-panel {
min-width: 0;
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
min-height: 112px;
padding: 20px 22px;
border-radius: 14px;
background: rgb(255 255 255 / .1);
color: var(--color-on-field);
text-decoration: none;
transition: background-color 160ms var(--ease-out), transform 160ms var(--ease-out);
}

.route-panel-copy {
display: grid;
gap: 7px;
}

.route-panel-copy strong {
font-size: clamp(22px, 2.2vw, 30px);
line-height: 1.05;
}

.route-panel-copy > span {
color: var(--color-on-field-muted);
font-size: 15px;
line-height: 1.35;
}

.route-panel-arrow {
flex: 0 0 auto;
font-size: 34px;
line-height: 1;
}

.route-help-band {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 8px 16px;
margin-top: 16px;
}

.route-help-band p {
margin: 0;
color: var(--color-on-field-muted);
font-size: 14px;
}

.route-help-band > a {
color: var(--color-on-field);
font-size: 14px;
font-weight: 800;
text-underline-offset: 4px;
}

.route-help-band > a span {
margin-left: 5px;
white-space: nowrap;
}

.proof-band {
background: var(--info);
color: var(--color-on-proof-info);
}

.proof-list li {
border-color: rgb(23 61 60 / .28);
}

.doctors-section {
--doctor-card-green: #17634f;
--doctor-card-ink: #173d3c;
--doctor-card-muted: #526967;
--doctor-card-line: #c8d5d1;
padding-block: clamp(88px, 9vw, 128px);
background: #f7faf8;
}

.doctors-heading {
display: grid;
gap: 20px;
max-width: 900px;
}

.doctors-heading .section-title {
max-width: 15ch;
}

.doctors-heading .section-intro {
max-width: 58ch;
margin: 0;
color: var(--muted);
opacity: 1;
}

.doctor-count {
margin: -8px 0 0;
color: var(--field);
font-size: 15px;
font-weight: 800;
}

.doctor-marketplace {
margin-top: clamp(42px, 5vw, 68px);
}

.doctor-marketplace [hidden] {
display: none !important;
}

.doctor-global-proof {
width: fit-content;
display: grid;
grid-template-columns: 32px auto;
grid-template-areas:
"icon value"
"icon context";
align-items: center;
column-gap: 10px;
margin-bottom: 24px;
padding: 11px 14px;
border: 1px solid #c4dace;
border-radius: 6px;
background: #f0f7f3;
color: #155c43;
}

.doctor-global-proof::before {
content: "+";
grid-area: icon;
width: 32px;
height: 32px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 50%;
background: var(--doctor-card-green);
color: #fff;
font-size: 22px;
font-weight: 900;
line-height: 1;
}

.doctor-global-proof strong {
grid-area: value;
font-size: 17px;
line-height: 1.2;
}

.doctor-global-proof span {
grid-area: context;
color: #5c7469;
font-size: 11px;
font-weight: 700;
line-height: 1.3;
}

.doctor-filter-panel {
display: grid;
gap: 14px;
padding-bottom: 30px;
}

.doctor-filter-label {
color: var(--muted);
font-size: 14px;
font-weight: 800;
}

.doctor-filter-options {
display: flex;
flex-wrap: wrap;
gap: 8px;
}

.doctor-filter-button {
min-height: 44px;
padding: 8px 14px;
border: 1px solid #76a598;
border-radius: 999px;
background: #f7fbf9;
color: var(--field);
cursor: pointer;
font-weight: 700;
line-height: 1.2;
transition: border-color 160ms var(--ease-out), color 160ms var(--ease-out);
}

.doctor-filter-button.is-active {
border-color: var(--field);
background: var(--field);
color: var(--color-on-field);
}

.doctor-schedule-disclosure {
max-width: 62ch;
margin: 0 0 22px;
padding: 0;
border: 0;
background: transparent;
color: var(--muted);
font-size: 13px;
line-height: 1.45;
}

.doctor-card-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 18px;
margin: 0;
padding: 0;
list-style: none;
}

.doctor-card {
min-width: 0;
}

.additional-specialists {
margin-top: 24px;
text-align: center;
}

.additional-specialists summary {
width: fit-content;
min-width: min(100%, 320px);
margin-inline: auto;
min-height: 56px;
display: flex;
align-items: center;
justify-content: center;
gap: 20px;
padding: 13px 18px;
border: 1px solid #76a598;
border-radius: 8px;
background: #fff;
color: var(--doctor-card-ink);
cursor: pointer;
font-size: 16px;
font-weight: 850;
line-height: 1.25;
list-style: none;
}

.additional-full-card-grid {
margin-top: 24px;
text-align: left;
}

.additional-specialists summary::-webkit-details-marker {
display: none;
}

.additional-specialists summary::after {
content: "+";
flex: 0 0 auto;
font-size: 26px;
font-weight: 650;
line-height: 1;
}

.additional-specialists[open] summary {
background: #edf6f1;
}

.additional-specialists[open] summary::after {
content: "−";
}

.additional-specialists summary:focus-visible,
.additional-specialist-card a:focus-visible,
.additional-specialists-catalog-link:focus-visible {
outline: 3px solid rgb(23 99 79 / .3);
outline-offset: 3px;
}

.additional-specialists-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
margin: 18px 0 0;
padding: 0;
list-style: none;
}

.additional-specialist-card {
min-width: 0;
}

.additional-specialist-card a {
height: 100%;
display: grid;
grid-template-columns: 88px minmax(0, 1fr);
overflow: hidden;
border: 1px solid var(--doctor-card-line);
border-radius: 8px;
background: #fff;
color: var(--doctor-card-ink);
text-decoration: none;
}

.additional-specialist-card img {
width: 88px;
height: 100%;
min-height: 118px;
display: block;
object-fit: cover;
object-position: center top;
background: #eaf2ee;
}

.additional-specialist-copy {
min-width: 0;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 6px;
padding: 13px 14px;
}

.additional-specialist-copy > span {
color: var(--doctor-card-green);
font-size: 12px;
font-weight: 800;
line-height: 1.25;
}

.additional-specialist-copy strong {
font-size: 15px;
line-height: 1.22;
}

.additional-specialist-copy small {
margin-top: auto;
color: var(--doctor-card-muted);
font-size: 11px;
font-weight: 700;
line-height: 1.25;
}

.additional-specialists-catalog-link {
width: fit-content;
display: inline-block;
margin-top: 18px;
color: var(--doctor-card-green);
font-weight: 800;
text-underline-offset: 5px;
}

.doctor-card-inner {
height: 100%;
display: grid;
grid-template-columns: 220px minmax(0, 1fr);
grid-template-rows: auto auto minmax(0, 1fr) auto;
grid-template-areas:
"media body"
"media review"
"media schedule"
"media actions";
min-height: 508px;
overflow: hidden;
border: 1px solid var(--doctor-card-line);
border-radius: 4px;
background: #fff;
}

.doctor-card-media {
grid-area: media;
margin: 0;
min-height: 100%;
overflow: hidden;
padding: 10px;
background: #f7faf9;
}

.doctor-card-media picture {
width: 100%;
height: 100%;
display: block;
}

.doctor-card-photo {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 24%;
border-radius: 2px;
}

.doctor-card-body {
grid-area: body;
min-width: 0;
display: flex;
flex-direction: column;
padding: 20px 22px 0;
}

.doctor-card-identity {
min-width: 0;
}

.doctor-card-profile-link {
display: grid;
min-width: 0;
color: inherit;
text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
.doctor-card-profile-link:hover .doctor-card-name {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 4px;
}
}

.doctor-card-specialty {
margin: 0 0 6px;
color: var(--doctor-card-green);
font-size: 14px;
font-weight: 700;
letter-spacing: 0;
line-height: 1.3;
overflow-wrap: normal;
word-break: normal;
hyphens: none;
}

.doctor-card-name {
margin: 0;
color: var(--doctor-card-ink);
font-size: clamp(23px, 1.45vw, 26px);
font-weight: 800;
line-height: 1.12;
letter-spacing: -.02em;
overflow-wrap: normal;
word-break: normal;
hyphens: none;
}

.doctor-commercial-route {
display: grid;
gap: 9px;
margin-top: 16px;
padding-top: 14px;
border-top: 1px solid var(--doctor-card-line);
}

.doctor-commercial-price {
display: flex;
justify-content: space-between;
gap: 14px;
align-items: baseline;
margin: 0;
}

.doctor-commercial-price span {
color: var(--doctor-card-muted);
font-size: 11px;
font-weight: 700;
line-height: 1.3;
}

.doctor-commercial-price strong {
color: var(--doctor-card-ink);
font-size: 16px;
white-space: nowrap;
}

.doctor-commercial-choice {
color: var(--doctor-card-green);
font-size: 13px;
font-weight: 850;
text-underline-offset: 4px;
}

.doctor-commercial-directions {
display: flex;
flex-wrap: wrap;
gap: 7px;
margin: 0;
padding: 0;
list-style: none;
}

.doctor-commercial-direction-chip {
display: block;
max-width: 100%;
padding: 6px 10px;
border: 1px solid #9db9ae;
border-radius: 999px;
background: #f7fbf9;
color: #345044;
font-size: 12px;
font-weight: 700;
line-height: 1.35;
overflow-wrap: normal;
text-decoration: none;
word-break: normal;
hyphens: none;
}

.doctor-evidence-badges {
display: flex;
flex-wrap: wrap;
gap: 6px 12px;
margin: 22px 0 0;
padding: 0;
list-style: none;
}

.doctor-evidence-badge {
padding: 0;
border: 0;
border-radius: 0;
color: var(--doctor-card-green);
font-size: 13px;
font-weight: 700;
}

.doctor-card-schedule {
grid-area: schedule;
margin: 8px 22px 4px;
padding: 15px;
border: 1px solid #c8d9d2;
border-radius: 10px;
background: #f4faf7;
}

.doctor-card-schedule--safe {
display: grid;
gap: 8px;
}

.doctor-card-schedule-note {
max-width: 34ch;
margin: 0;
color: #526960;
font-size: 13px;
line-height: 1.42;
}

.doctor-card-schedule-note--quiet {
color: #71837b;
font-size: 12px;
}

.doctor-card-schedule-nav {
display: grid;
grid-template-columns: auto 1fr auto;
align-items: center;
gap: 8px;
margin-top: 4px;
}

.doctor-card-schedule-month {
overflow: hidden;
color: #496158;
font-size: 12px;
font-weight: 700;
text-align: center;
text-overflow: ellipsis;
white-space: nowrap;
}

.doctor-card-schedule-nav-button,
.doctor-card-schedule-more {
min-height: 34px;
padding: 6px 8px;
border: 0;
background: transparent;
color: #17634f;
font: inherit;
font-size: 12px;
font-weight: 750;
text-decoration: underline;
text-decoration-color: rgb(23 99 79 / .34);
text-underline-offset: 3px;
cursor: pointer;
}

.doctor-card-schedule-nav-button:disabled {
cursor: default;
opacity: .38;
}

.doctor-card-schedule-branches {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 2px;
}

.doctor-card-schedule-branch {
min-height: 38px;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 8px 12px;
border: 1px solid #9cbdb0;
border-radius: 9px;
background: #fff;
color: #174f46;
font: inherit;
font-size: 12px;
font-weight: 750;
line-height: 1.15;
text-decoration: none;
}

button.doctor-card-schedule-branch:disabled {
cursor: not-allowed;
opacity: .62;
}

.doctor-card-schedule-title {
margin: 0 0 12px;
color: #345044;
font-size: 13px;
font-weight: 700;
line-height: 1.25;
}

.doctor-card-schedule-dates {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(76px, 1fr));
gap: 8px;
}

.doctor-card-schedule-date {
min-width: 0;
display: grid;
gap: 4px;
min-height: 58px;
padding: 9px 10px;
border: 1px solid #b7cec4;
border-radius: 8px;
background: #fff;
color: #225b47;
text-align: left;
cursor: pointer;
}

.doctor-card-schedule-date.is-active,
.doctor-card-schedule-time.is-active {
border-color: #17634f;
background: #17634f;
color: #fff;
}

.doctor-card-schedule-date span:first-child {
font-size: 11px;
font-weight: 650;
line-height: 1.1;
}

.doctor-card-schedule-date span:last-child {
font-size: 13px;
font-weight: 800;
line-height: 1.1;
}

.doctor-card-schedule-times {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 12px;
padding-top: 12px;
border-top: 1px solid #c8d9d2;
}

.doctor-card-schedule-time {
min-width: 0;
min-height: 36px;
display: inline-flex;
align-items: center;
padding: 7px 10px;
border: 1px solid #b7cec4;
border-radius: 8px;
background: #fff;
color: #225b47;
font-size: 12px;
font-weight: 750;
line-height: 1.3;
text-align: left;
cursor: pointer;
}

.doctor-card-schedule-confirm {
min-height: 42px;
display: inline-flex;
align-items: center;
justify-content: center;
margin-top: 2px;
padding: 9px 12px;
border-radius: 8px;
background: #17634f;
color: #fff;
font-size: 12px;
font-weight: 800;
line-height: 1.25;
text-align: center;
text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
.doctor-card-schedule-date:hover,
.doctor-card-schedule-time:hover {
border-color: #17634f;
}
}

.doctor-card-schedule-date:focus-visible,
.doctor-card-schedule-time:focus-visible,
.doctor-card-schedule-nav-button:focus-visible,
.doctor-card-schedule-more:focus-visible,
.doctor-card-schedule-confirm:focus-visible {
outline: 3px solid rgb(200 138 20 / .55);
outline-offset: 2px;
}

.doctor-card-schedule-date:active,
.doctor-card-schedule-time:active,
.doctor-card-schedule-confirm:active {
transform: scale(.98);
}

.doctor-price {
margin: 22px 0 0;
}

.doctor-experience {
min-height: 44px;
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 3px 10px;
margin: 8px 0 0;
padding: 0;
border: 0;
border-radius: 0;
background: transparent;
color: #355044;
font-size: 13px;
font-weight: 700;
line-height: 1.25;
}

.doctor-experience-source {
min-height: 44px;
display: inline-flex;
align-items: center;
color: var(--doctor-card-green);
font-size: 12px;
font-weight: 650;
text-decoration: underline;
text-decoration-color: rgb(23 99 79 / .38);
text-underline-offset: 3px;
}

.doctor-price {
display: grid;
gap: 4px;
}

.doctor-price-label {
color: var(--muted);
font-size: 13px;
font-weight: 800;
}

.doctor-price-value {
font-size: 22px;
}

.doctor-card-review {
grid-area: review;
align-self: start;
margin: 10px 22px 0;
padding: 10px 0 0;
border: 0;
border-top: 1px solid var(--doctor-card-line);
border-radius: 0;
background: transparent;
}

.doctor-card-review-heading {
margin: 0 0 8px;
color: var(--doctor-card-green);
font-size: 11px;
font-weight: 850;
letter-spacing: .06em;
text-transform: uppercase;
}

.doctor-card-review-icon {
display: inline-block;
flex: 0 0 auto;
width: 16px;
height: 16px;
object-fit: contain;
vertical-align: middle;
}

.doctor-card-review-icon--rating {
color: #c88a14;
}

.doctor-card-review-quote,
.doctor-card-review-empty {
margin: 0 0 10px;
color: #4f625b;
font-size: 12px;
font-weight: 400;
line-height: 1.45;
}

.doctor-card-review-quote {
font-style: normal;
}

.doctor-card-clinic-proof {
display: inline-flex;
align-items: center;
align-self: flex-start;
margin: 10px 0 0;
padding: 6px 9px;
border: 0;
border-radius: 4px;
background: #f0f7f3;
color: #155c43;
}

.doctor-card-clinic-proof strong {
font-size: 13px;
line-height: 1.3;
}

.doctor-card-review-source-row {
min-height: 38px;
display: flex;
align-items: center;
gap: 10px;
margin: 0;
}

.doctor-card-review-metrics {
min-height: 38px;
display: inline-flex;
align-items: center;
flex-wrap: wrap;
gap: 5px 8px;
color: var(--doctor-card-ink);
font-size: 14px;
font-weight: 600;
letter-spacing: -.01em;
text-decoration: none;
}

.doctor-card-review-rating {
display: inline-flex;
align-items: center;
gap: 5px;
color: #264f48;
font-size: 15px;
font-weight: 600;
letter-spacing: 0;
}

.doctor-card-review-count {
color: #5c6e68;
font-weight: 600;
}

.doctor-card-review-patients {
display: inline-flex;
align-items: center;
gap: 6px;
color: #245d4c;
font-weight: 600;
}

.doctor-card-review-icon--patient {
width: 18px;
height: 18px;
color: #245d4c;
}

.homepage-articles {
padding: clamp(78px, 9vw, 126px) 0;
border-bottom: 1px solid var(--line);
background: #fff;
}

.homepage-articles-layout {
display: grid;
grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
gap: clamp(42px, 8vw, 116px);
}

.homepage-articles-heading {
align-self: start;
}

.homepage-articles-label {
margin: 0 0 16px;
color: var(--field);
font-size: 13px;
font-weight: 850;
letter-spacing: .08em;
text-transform: uppercase;
}

.homepage-articles-heading h2 {
max-width: 10ch;
margin: 0;
font-size: clamp(42px, 5.5vw, 76px);
line-height: .98;
letter-spacing: -.05em;
}

.homepage-articles-heading > p:not(.homepage-articles-label) {
max-width: 38ch;
margin: 24px 0 26px;
color: var(--muted);
font-size: 17px;
line-height: 1.55;
}

.homepage-article-list {
margin: 0;
padding: 0;
border-top: 1px solid var(--line);
list-style: none;
}

.homepage-article-list li {
border-bottom: 1px solid var(--line);
}

.homepage-article-list a {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 7px 24px;
min-height: 138px;
padding: 28px 0;
color: inherit;
text-decoration: none;
}

.homepage-article-list span {
grid-column: 1 / -1;
color: var(--field);
font-size: 12px;
font-weight: 850;
letter-spacing: .06em;
text-transform: uppercase;
}

.homepage-article-list strong {
font-size: clamp(24px, 3vw, 38px);
line-height: 1.08;
letter-spacing: -.035em;
}

.homepage-article-list small {
align-self: end;
color: var(--muted);
}

@media (max-width: 767px) {
.homepage-articles-layout {
grid-template-columns: 1fr;
}

.homepage-article-list a {
min-height: 120px;
}
}

.doctor-card-actions {
grid-area: actions;
display: grid;
grid-template-columns: 1fr;
align-items: end;
gap: 8px;
padding: 8px 14px 18px;
}

.doctor-card-action {
height: 48px;
min-height: 48px;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 10px 4px;
border: 1px solid var(--doctor-card-line);
border-radius: 4px;
font-size: 13px;
font-weight: 800;
line-height: 1.2;
white-space: nowrap;
text-align: center;
text-decoration: none;
transition: transform 140ms var(--ease-out), background-color 160ms var(--ease-out), color 160ms var(--ease-out);
}

.doctor-card-action.is-primary {
border-color: var(--action);
background: var(--action);
color: var(--color-on-action);
}

.doctor-card-action.is-secondary {
background: #f7faf9;
color: var(--doctor-card-ink);
}

.doctor-card-action:active {
transform: scale(.97);
}

.doctor-filter-button:focus-visible,
.doctor-card-profile-link:focus-visible,
.doctor-commercial-direction-chip:focus-visible,
.doctor-commercial-choice:focus-visible,
.doctor-card-action:focus-visible {
outline: 3px solid var(--action);
outline-offset: 3px;
}

.doctor-fallback {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 14px;
margin: 0;
padding: 0;
list-style: none;
}

.doctor-fallback li {
display: grid;
gap: 8px;
padding: 22px;
border: 1px solid #9eb8b3;
border-radius: 4px;
background: var(--color-surface-raised);
}

.doctor-fallback a {
display: grid;
gap: 8px;
color: inherit;
text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
.doctor-fallback a:hover strong {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 4px;
}
}

.doctor-fallback strong {
font-size: 21px;
line-height: 1.15;
}

.doctor-fallback span {
color: var(--muted);
line-height: 1.4;
}

.route-panel:focus-visible,
.route-help-band > a:focus-visible,
.hero-phone:focus-visible,
.contact-phone:focus-visible {
outline-color: var(--action);
}

.price-path,
.site-footer {
background: var(--field-dark);
color: var(--color-on-field);
}

.home-page .site-footer {
background: var(--field-dark);
color: var(--color-on-field);
border-top: 0;
}

.home-page .site-footer a,
.home-page .site-footer strong {
color: var(--color-on-field);
}

.home-page .footer-location-kicker {
color: var(--color-on-field-muted);
}

.home-page .site-footer .footer-inner p,
.home-page .site-footer .footer-links {
color: var(--color-on-field-muted);
}

.price-copy,
.site-footer {
color: var(--color-on-field-muted);
}

.text-action {
background: var(--color-surface-raised);
color: var(--ink);
border: 2px solid var(--color-surface-raised);
}

.contacts {
background: var(--page);
border-top: 1px solid var(--line);
}

.footer-location {
display: grid;
grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr);
gap: clamp(28px, 6vw, 88px);
padding-top: clamp(38px, 5vw, 66px);
padding-bottom: clamp(34px, 4vw, 52px);
border-bottom: 1px solid rgb(248 251 255 / .2);
}

.footer-location-copy {
align-self: center;
}

.footer-location h2 {
max-width: 10ch;
margin: 0 0 18px;
color: var(--color-on-field);
font-size: clamp(38px, 5vw, 68px);
line-height: .94;
letter-spacing: -.05em;
}

.footer-location-copy > p:not(.footer-location-kicker) {
margin: 0 0 24px;
color: var(--color-on-field-muted);
font-size: 16px;
line-height: 1.5;
}

.footer-location-link {
color: var(--color-on-field);
font-weight: 800;
text-underline-offset: 5px;
}

.footer-location-link span {
display: inline-block;
margin-left: 7px;
font-size: 20px;
line-height: .8;
}

.footer-map {
min-height: 300px;
overflow: hidden;
border: 1px solid rgb(248 251 255 / .24);
border-radius: 16px;
background: #d9e0d8;
}

.footer-map iframe {
display: block;
width: 100%;
min-height: 300px;
height: 100%;
border: 0;
}

.address-field {
background: var(--field);
color: var(--color-on-field);
font-style: normal;
}

.address-field b {
color: var(--info);
}

.route-section :focus-visible,
.price-path :focus-visible,
.address-field :focus-visible,
.site-footer :focus-visible,
.primary-action:focus-visible {
outline-color: var(--info);
}

.price-path .primary-action,
.route-section .primary-action {
border: 2px solid var(--color-on-action);
}

#doctors,
#directions,
#diagnostics,
#prices,
#contacts {
scroll-margin-top: 24px;
}

.home-page .hero h1 {
max-width: 17ch;
text-wrap: balance;
}

.home-page .hero-lead {
max-width: 48ch;
}

.hero-reassurance {
margin: 2px 0 0;
color: var(--muted);
font-size: 14px;
line-height: 1.45;
}

.home-page .hero-media img.home-hero-original {
object-fit: contain;
object-position: center;
background: #dfe9df;
}

.home-mobile-cta {
display: none;
}

@media (hover: hover) and (pointer: fine) {
.route-panel:hover {
background: rgb(255 255 255 / .16);
transform: translateY(-2px);
}

.doctor-filter-button:not(.is-active):hover {
border-color: var(--field);
background: #eaf4ef;
color: var(--field);
}

.doctor-card-action.is-primary:hover {
border-color: #972d1e;
background: #972d1e;
}

.doctor-card-action.is-secondary:hover {
background: #e5eeeb;
}
}

@media (min-width: 768px) and (max-width: 1100px) {
.additional-specialists-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}

.doctor-card-grid {
gap: 14px;
}

.doctor-card-inner {
height: auto;
grid-template-columns: 116px minmax(0, 1fr);
grid-template-rows: minmax(210px, auto) auto auto auto;
grid-template-areas:
"media body"
"review review"
"schedule schedule"
"actions actions";
align-self: start;
min-height: 0;
}

.doctor-card-media {
min-height: 210px;
padding: 7px;
}

.doctor-card-body {
padding: 14px 12px 8px;
}

.doctor-card-name {
font-size: 19px;
}

.doctor-card-specialty {
font-size: 12px;
}

.doctor-card-review,
.doctor-card-schedule {
margin-inline: 12px;
}

.doctor-card-actions {
padding-inline: 12px;
}
}

@media (max-width: 767px) {
.home-page {
padding-bottom: calc(68px + env(safe-area-inset-bottom));
}

.home-page .hero h1 {
max-width: 15ch;
font-size: clamp(36px, 9.5vw, 48px);
line-height: 1.08;
}

.home-page .hero-lead {
max-width: 36ch;
}

.hero-reassurance {
font-size: 13px;
}

.home-page .hero-media img.home-hero-original {
object-fit: contain;
object-position: center;
}

.home-mobile-cta {
position: fixed;
right: 0;
bottom: 0;
left: 0;
z-index: 20;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 8px;
min-height: 68px;
padding: 8px 16px calc(8px + env(safe-area-inset-bottom));
background: rgb(255 255 255 / .96);
border-top: 1px solid var(--line);
box-shadow: 0 -8px 24px rgb(23 61 60 / .1);
}

.home-mobile-cta a {
min-height: 44px;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 10px 14px;
border-radius: 9px;
font-size: 14px;
font-weight: 800;
line-height: 1.2;
text-decoration: none;
}

.home-mobile-cta-call {
background: var(--action);
color: var(--color-on-action);
}

.home-mobile-cta-price {
min-width: 74px;
border: 1px solid var(--line);
background: var(--color-surface-raised);
color: var(--ink);
}

.home-mobile-cta a:focus-visible {
outline: 3px solid var(--action);
outline-offset: 2px;
}
.doctors-section > .shell {
width: min(100% - 40px, 100%);
}

.doctor-card-grid,
.doctor-fallback {
grid-template-columns: 1fr;
}
}

@media (max-width: 767px) {
.hero {
gap: 18px;
padding-block: 24px 30px;
}

.place {
margin-bottom: 12px;
}

.hero h1 {
max-width: 11ch;
font-size: clamp(40px, 11.5vw, 50px);
line-height: .96;
}

.hero-lead {
margin: 16px 0 18px;
font-size: 15px;
line-height: 1.45;
}

.hero-actions {
display: grid;
grid-template-columns: 1fr;
gap: 10px;
}

.primary-action,
.secondary-action {
width: 100%;
min-height: 56px;
padding: 12px 18px;
line-height: 1.25;
white-space: normal;
text-align: center;
}

.hero-phone {
grid-column: 1 / -1;
min-height: 44px;
justify-content: flex-start;
}

.hero-media {
height: 238px;
}

.hero-media img {
object-position: 50% 58%;
}

.route-section {
padding-block: 34px;
}

.director-note {
margin-top: 20px;
padding-bottom: 28px;
}

.director-note-inner {
grid-template-columns: 1fr;
gap: 10px;
padding: 16px 18px;
border-radius: 14px;
}

.director-note h2 {
max-width: none;
margin-bottom: 8px;
font-size: 24px;
}

.director-note-copy > p:last-child {
font-size: 14px;
line-height: 1.4;
}

.footer-location {
grid-template-columns: 1fr;
gap: 28px;
padding-top: 40px;
padding-bottom: 34px;
}

.footer-location h2 {
font-size: 46px;
}

.footer-map,
.footer-map iframe {
min-height: 230px;
}

.route-heading-wrap {
display: grid;
gap: 6px;
margin-bottom: 16px;
}

.route-section .section-title {
font-size: 36px;
}

.route-heading-wrap > p {
font-size: 14px;
}

.route-primary-grid {
grid-template-columns: 1fr;
gap: 10px;
}

.route-panel,
.route-panel + .route-panel {
min-height: 88px;
padding: 16px;
border: 0;
}

.route-panel-copy strong {
font-size: 22px;
}

.route-panel-copy > span {
font-size: 14px;
}

.route-panel-arrow {
font-size: 28px;
}

.route-help-band {
display: grid;
gap: 5px;
margin-top: 14px;
padding-top: 0;
}

.route-help-band > a {
width: fit-content;
min-height: 44px;
display: inline-flex;
align-items: center;
padding: 0;
white-space: normal;
text-align: left;
}

.proof-list li,
.proof-list li:first-child,
.proof-list li:last-child {
border-color: rgb(23 61 60 / .24);
}

}

@media (max-width: 639px) {

.additional-specialists summary {
min-height: 52px;
padding: 12px 14px;
font-size: 15px;
}

.additional-specialists-grid {
grid-template-columns: 1fr;
gap: 10px;
}

.additional-specialist-card a {
grid-template-columns: 82px minmax(0, 1fr);
}

.additional-specialist-card img {
width: 82px;
min-height: 108px;
}

.additional-specialist-copy {
padding: 11px 12px;
}

.doctors-section {
padding-block: 72px;
}

.doctors-heading {
gap: 16px;
}

.doctors-heading .section-title {
font-size: 42px;
}

.doctor-marketplace {
margin-top: 36px;
}

.doctor-filter-panel {
padding-bottom: 24px;
}

.doctor-filter-options {
gap: 8px;
}

.doctor-filter-button {
padding-inline: 13px;
font-size: 14px;
}

.doctor-schedule-disclosure {
margin-bottom: 16px;
font-size: 12px;
}

.doctor-card-grid {
gap: 16px;
}

.doctor-card-inner {
height: auto;
grid-template-columns: 124px minmax(0, 1fr);
grid-template-rows: minmax(220px, auto) auto auto auto;
grid-template-areas:
"media body"
"review review"
"schedule schedule"
"actions actions";
align-self: start;
min-height: 0;
}

.doctor-card-media {
min-height: 220px;
padding: 8px;
}

.doctor-card-body {
padding: 15px 12px 10px;
}

.doctor-card-schedule {
margin: 8px 14px 0;
padding: 13px;
}

.doctor-card-name {
font-size: 20px;
line-height: 1.1;
}

.doctor-card-specialty {
font-size: 12px;
line-height: 1.3;
}

.doctor-commercial-route {
margin-top: 11px;
padding-top: 10px;
}

.doctor-commercial-price {
display: grid;
gap: 2px;
}

.doctor-commercial-price strong {
font-size: 14px;
}

.doctor-commercial-directions {
gap: 5px;
}

.doctor-experience {
min-height: 44px;
padding: 0;
font-size: 12px;
}

.doctor-experience {
margin-top: 8px;
}

.doctor-commercial-direction-chip {
padding: 6px 9px;
font-size: 11.5px;
line-height: 1.3;
}

.doctor-card-review {
margin: 0 14px;
padding: 0;
}

.doctor-card-schedule-date {
min-height: 60px;
padding: 9px 7px;
}

.doctor-card-review-metrics {
min-height: 42px;
font-size: 13px;
}

.doctor-card-review-source-row {
min-height: 42px;
}

.doctor-card-actions {
grid-template-columns: 1fr;
gap: 8px;
padding: 10px 14px 14px;
}

.doctor-card-action {
width: 100%;
min-height: 48px;
padding: 10px 14px;
font-size: 13.5px;
line-height: 1.2;
white-space: nowrap;
}

.doctor-fallback li {
padding: 20px;
}

}

@media (prefers-reduced-motion: reduce) {
html {
scroll-behavior: auto;
}

*,
*::before,
*::after {
scroll-behavior: auto !important;
transition-duration: .01ms !important;
animation-duration: .01ms !important;
animation-iteration-count: 1 !important;
}
}
