:root {
  --navy: #073b6d;
  --blue: #0b5f9e;
  --aqua: #1c9aa0;
  --ink: #142332;
  --muted: #617080;
  --surface: #ffffff;
  --line: #e5ebf0;
  --shadow: 0 14px 35px rgba(7, 59, 109, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fff; font-family: Arial, Helvetica, sans-serif; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.site-container { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: -5rem; left: 1rem; z-index: 100; padding: .75rem 1rem; color: #fff; background: var(--navy); border-radius: .3rem; }
.skip-link:focus { top: 1rem; }

.site-header { position: sticky; top: 0; z-index: 50; background: var(--surface); box-shadow: 0 1px 0 var(--line); }
.header-topbar { background: var(--navy); color: #fff; font-size: .82rem; }
.header-topbar__content { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.header-topbar__message { margin: 0; opacity: .9; }
.header-topbar__contacts { display: flex; align-items: center; gap: 1.25rem; font-weight: 600; }
.header-topbar__contacts a:hover, .header-topbar__contacts a:focus-visible { color: #b8f0f0; }

.header-main { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.site-logo { display: inline-flex; flex: 0 0 auto; }
.site-logo img { display: block; width: 190px; max-height: 64px; object-fit: contain; }
.primary-nav { margin-left: auto; }
.primary-nav__list { display: flex; align-items: center; margin: 0; padding: 0; list-style: none; gap: .1rem; }
.primary-nav li { position: relative; }
.primary-nav a, .nav-dropdown__toggle { min-height: 50px; display: inline-flex; align-items: center; gap: .45rem; padding: .7rem .85rem; border: 0; color: var(--ink); background: transparent; font-size: .95rem; font-weight: 650; cursor: pointer; transition: color .2s ease, background .2s ease; }
.primary-nav a:hover, .primary-nav a:focus-visible, .nav-dropdown__toggle:hover, .nav-dropdown__toggle:focus-visible, .primary-nav .is-active { color: var(--aqua); }
.nav-chevron { width: .5rem; height: .5rem; border-right: 1.8px solid currentColor; border-bottom: 1.8px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .2s ease; }
.nav-dropdown__toggle[aria-expanded="true"] .nav-chevron { transform: rotate(225deg) translate(-2px, -2px); }
.nav-dropdown__menu { position: absolute; top: calc(100% - 2px); left: 0; z-index: 2; width: 255px; margin: 0; padding: .5rem; list-style: none; background: #fff; border: 1px solid var(--line); border-radius: 0 0 .6rem .6rem; box-shadow: var(--shadow); opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
.nav-dropdown.is-open > .nav-dropdown__menu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-dropdown__menu a { display: flex; min-height: auto; padding: .7rem .75rem; border-radius: .35rem; font-size: .88rem; line-height: 1.3; }
.nav-dropdown__menu a:hover, .nav-dropdown__menu a:focus-visible { background: #edfafa; }
.primary-nav__appointment a { min-height: 44px; margin-left: .5rem; padding-inline: 1rem; color: #fff; background: var(--aqua); border-radius: .35rem; box-shadow: 0 6px 13px rgba(28, 154, 160, .22); }
.primary-nav__appointment a:hover, .primary-nav__appointment a:focus-visible { color: #fff; background: var(--navy); }
.menu-toggle { display: none; width: 46px; height: 44px; padding: 10px; border: 1px solid var(--line); border-radius: .35rem; background: #fff; cursor: pointer; }
.menu-toggle span:not(.sr-only) { display: block; height: 2px; margin: 4px 0; background: var(--navy); transition: transform .2s ease, opacity .2s ease; }
.menu-toggle[aria-expanded="true"] span:nth-child(2) { transform: translateY(6px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(3) { opacity: 0; }
.menu-toggle[aria-expanded="true"] span:nth-child(4) { transform: translateY(-6px) rotate(-45deg); }

.site-footer { color: #e7f2f7; background: #062e54; }
.footer-main { padding-block: 4.5rem 3.5rem; }
.footer-grid { display: grid; grid-template-columns: 1.35fr .85fr 1.1fr 1.35fr; gap: 2.5rem; }
.footer-logo { display: inline-flex; margin-bottom: 1.1rem; padding: .4rem .55rem; background: #fff; border-radius: .4rem; }
.footer-logo img { display: block; width: 175px; height: 58px; object-fit: contain; }
.footer-about p { max-width: 290px; margin: 0 0 1.5rem; color: #b8cfdd; font-size: .94rem; line-height: 1.7; }
.footer-call { display: inline-flex; align-items: center; gap: .7rem; color: #fff; font-weight: 500; }
.footer-call:hover, .footer-call:focus-visible { color: #a9ede8; }
.footer-call small { display: block; margin-bottom: .18rem; color: #a8c4d7; font-size: 12px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.footer-icon { display: grid; width: 38px; height: 38px; place-items: center; color: #baf4ee; border: 1px solid rgba(186,244,238,.45); border-radius: 50%; }
.footer-icon { font-size: 0; }
.footer-icon::before { display: none; }
.footer-icon img { width: 21px; height: 21px; filter: invert(91%) sepia(18%) saturate(576%) hue-rotate(125deg) brightness(98%) contrast(94%); }
.footer-links h2, .footer-contact h2 { margin: .35rem 0 1.2rem; color: #fff; font-size: 1rem; letter-spacing: .02em; }
.footer-links ul { display: grid; gap: .75rem; margin: 0; padding: 0; list-style: none; }
.footer-links a { display: inline-flex; align-items: center; gap: .5rem; color: #b8cfdd; font-size: .9rem; line-height: 1.35; }
.footer-links a::before { content: '›'; color: #6edbd4; font-size: 1.25rem; line-height: .7; }
.footer-links a:hover, .footer-links a:focus-visible, .footer-contact a:hover, .footer-contact a:focus-visible { color: #87ebe4; }
.footer-contact { font-style: normal; }
.footer-contact p { max-width: 300px; margin: 0 0 1.1rem; color: #b8cfdd; font-size: .92rem; font-style: normal; line-height: 1.7; }
.footer-contact > a { display: flex; align-items: center; gap: .5rem; margin-bottom: 1rem; color: #e7f2f7; font-size: .9rem; font-style: normal; }
.footer-bottom { border-top: 1px solid rgba(196,223,237,.15); background: #052746; }
.footer-bottom__content { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 68px; color: #a8c4d7; font-size: .8rem; }
.footer-bottom p { margin: 0; }
.footer-bottom a:hover, .footer-bottom a:focus-visible { color: #fff; }

/* Refined shared header */
.site-header { background: rgba(255,255,255,.97); box-shadow: 0 1px 0 rgba(7,59,109,.1); backdrop-filter: blur(12px); }
.header-topbar { background: #072f55; border-bottom: 1px solid rgba(255,255,255,.1); font-size: 12px; font-weight:400; letter-spacing: .02em; }
.header-topbar__content { min-height: 34px;}
.header-topbar__message { color: #c3d7e4; }
.header-topbar__doctor { color: #82e4de; font-weight: 600; }
.header-topbar__contacts { gap: 1rem; font-size: .72rem; font-weight: 600; }
.header-topbar__contacts a { display: inline-flex; align-items: center; gap: .3rem; color: #dcebf3; }
.header-topbar__contacts a:first-child > span { display: inline-grid; width: 14px; height: 14px; font-size: 0; }
.header-topbar__contacts a:first-child > span::before { width: 14px; height: 14px; content: ''; background: #82e4de; -webkit-mask: url('../icons/phone.svg') center / contain no-repeat; mask: url('../icons/phone.svg') center / contain no-repeat; }
.header-topbar__contacts a:first-child > span { display: none; }
.header-phone-icon { width: 14px; height: 14px; filter: invert(84%) sepia(32%) saturate(658%) hue-rotate(126deg) brightness(94%) contrast(87%); }
.header-main { min-height: 88px; gap: 1.25rem; }
.site-logo { position: relative; z-index: 1; }
.site-logo img { width: 202px; max-height: 66px; }
.primary-nav { margin-left: auto; }
.primary-nav__list { gap: .15rem; }
.primary-nav a, .nav-dropdown__toggle { position: relative; min-height: 54px; padding: .72rem .78rem; color: #243342; font-size: .88rem; font-weight: 700; letter-spacing: .015em; }
.primary-nav > .primary-nav__list > li:not(.primary-nav__appointment) > a::after, .nav-dropdown__toggle::after { position: absolute; right: .78rem; bottom: 7px; left: .78rem; height: 2px; content: ''; background: #1b9b9f; border-radius: 2px; transform: scaleX(0); transform-origin: right; transition: transform .22s ease; }
.primary-nav > .primary-nav__list > li:not(.primary-nav__appointment) > a:hover::after, .primary-nav > .primary-nav__list > li:not(.primary-nav__appointment) > a.is-active::after, .nav-dropdown__toggle:hover::after, .nav-dropdown__toggle.is-active::after { transform: scaleX(1); transform-origin: left; }
.primary-nav a:hover, .primary-nav a:focus-visible, .nav-dropdown__toggle:hover, .nav-dropdown__toggle:focus-visible, .primary-nav .is-active { color: #08757d; }
.nav-chevron { width: .42rem; height: .42rem; margin-left: .15rem; border-width: 1.5px; }
.nav-dropdown__menu { top: calc(100% + 5px); width: 270px; padding: .55rem; border: 1px solid #e2eaee; border-radius: .55rem; box-shadow: 0 16px 35px rgba(12,51,79,.16); }
.nav-dropdown__menu::before { position: absolute; top: -6px; left: 24px; width: 10px; height: 10px; content: ''; background: #fff; border-top: 1px solid #e2eaee; border-left: 1px solid #e2eaee; transform: rotate(45deg); }
.nav-dropdown__menu a { position: relative; z-index: 1; padding: .72rem .78rem; font-size: .84rem; }
.primary-nav__appointment a { min-height: 46px; margin-left: .65rem; padding: .72rem 1rem .72rem 1.15rem; color: #fff; background: #0b7f88; border: 1px solid #0b7f88; border-radius: 999px; box-shadow: none; }
.primary-nav__appointment a b { display: grid; width: 21px; height: 21px; place-items: center; color: #0b7f88; background: #fff; border-radius: 50%; font-size: .95rem; line-height: 1; transition: transform .2s ease; }
.primary-nav__appointment a:hover, .primary-nav__appointment a:focus-visible { color: #0b7f88; background: #fff; border-color: #0b7f88; }
.primary-nav__appointment a:hover b, .primary-nav__appointment a:focus-visible b { color: #fff; background: #0b7f88; transform: translateX(2px); }
.menu-toggle { width: 44px; height: 42px; border-color: #cbd8df; border-radius: .5rem; }

/* Header consultation CTA */
.primary-nav__appointment a {
  min-height: 48px;
  margin-left: .85rem;
  padding: .72rem .78rem .72rem 1.05rem;
  color: #fff;
  background: #073b6d;
  border: 1px solid #073b6d;
  border-radius: .35rem;
  box-shadow: 0 7px 15px rgba(7,59,109,.17);
}
.primary-nav__appointment a::before {
  width: 3px;
  align-self: stretch;
  margin: -.72rem .1rem -.72rem -1.05rem;
  content: '';
  background: #65d8d0;
  border-radius: .35rem 0 0 .35rem;
}
.primary-nav__appointment a b {
  width: 26px;
  height: 26px;
  color: #65d8d0;
  background: transparent;
  border: 1px solid rgba(101,216,208,.55);
  border-radius: .2rem;
  font-size: 1.05rem;
}
.primary-nav__appointment a:hover, .primary-nav__appointment a:focus-visible {
  color: #fff;
  background: #0a566f;
  border-color: #0a566f;
  box-shadow: 0 9px 19px rgba(7,59,109,.23);
  transform: translateY(-1px);
}

/* Home hero */
.home-hero { overflow: hidden; padding-block: clamp(4rem, 7vw, 6.75rem); background: linear-gradient(115deg, #f4fbfc 0%, #eef8fb 54%, #f7fbfc 100%); }
.home-hero__grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(380px, .85fr); align-items: center; gap: clamp(3rem, 7vw, 7.5rem); }
.home-hero__content { position: relative; z-index: 1; }
.home-hero__eyebrow { display: flex; align-items: center; gap: .65rem; margin: 0 0 1.15rem; color: #08757d; font-size: .76rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.home-hero__eyebrow::before { width: 32px; height: 2px; content: ''; background: #20a8a8; }
.home-hero h1 { max-width: 650px; margin: 0; color: #092e50; font-size: clamp(2.55rem, 5vw, 4.55rem); letter-spacing: -.055em; line-height: 1.04; }
.home-hero h1 span { color: #0b7782; }
.home-hero__intro { max-width: 570px; margin: 1.5rem 0 0; color: #52687a; font-size: clamp(1rem, 1.5vw, 1.11rem); line-height: 1.75; }
.home-hero__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1.25rem; margin-top: 2rem; }
.hero-button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; font-size: .92rem; font-weight: 800; transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
.hero-button--primary { padding: .85rem 1.3rem; color: #fff; background: #0b5f9e; border: 1px solid #0b5f9e; border-radius: .35rem; box-shadow: 0 9px 18px rgba(11,95,158,.17); }
.hero-button--primary:hover, .hero-button--primary:focus-visible { background: #073b6d; border-color: #073b6d; transform: translateY(-2px); }
.hero-button--text { gap: .55rem; color: #075f6d; border-bottom: 1px solid #48aeb2; }
.hero-button--text span { font-size: 1.15rem; transition: transform .2s ease; }
.hero-button--text:hover, .hero-button--text:focus-visible { color: #073b6d; }
.hero-button--text:hover span, .hero-button--text:focus-visible span { transform: translateX(4px); }
.home-hero__stats { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 600px; gap: 0; margin: 3.4rem 0 0; padding: 0; list-style: none; border-top: 1px solid #c8e2e5; }
.home-hero__stats li { display: grid; gap: .35rem; padding: 1.15rem 1rem 0 0; }
.home-hero__stats li + li { padding-left: 1rem; border-left: 1px solid #c8e2e5; }
.home-hero__stats strong { color: #083d6d; font-size: clamp(1.65rem, 2.5vw, 2.15rem); line-height: 1; }
.hero-stat__value { color: inherit; font: inherit; }
.home-hero__stats strong span { color: #159b9d; }
.home-hero__stats li > span { color: #5b7382; font-size: .76rem; font-weight: 700; line-height: 1.35; text-transform: uppercase; }
/* Immersive home-hero variation */
.home-hero--immersive { position: relative; min-height: min(690px, calc(100vh - 122px)); display: grid; overflow: hidden; color: #fff; background: #092e50; }
.home-hero--immersive .home-hero__background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.8) contrast(1.05); }
.home-hero--immersive .home-hero__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,30,54,.97) 0%, rgba(4,41,69,.91) 34%, rgba(4,41,69,.45) 62%, rgba(4,41,69,.1) 100%); }
.home-hero--immersive .home-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr auto; grid-template-rows: 1fr auto; gap: 2rem; width: min(1180px, calc(100% - 40px)); min-height: inherit; padding-block: clamp(4rem, 8vw, 7rem) 2rem; }
.home-hero--immersive .home-hero__content { align-self: center; max-width: 655px; }
.home-hero--immersive .home-hero__eyebrow { margin-bottom: 1.4rem; color: #85e4df; font-size: .77rem; letter-spacing: .17em; }
.home-hero--immersive .home-hero__eyebrow::before { width: 22px; background: #85e4df; }
.home-hero--immersive h1 { max-width: none; color: #fff; font-size: clamp(3.2rem, 6vw, 5.9rem); letter-spacing: -.065em; line-height: .94; }
.home-hero--immersive h1 em { color: #8be6df; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.home-hero--immersive .home-hero__intro { max-width: 505px; color: #d7e8ed; font-size: 1.07rem; line-height: 1.75; }
.home-hero--immersive .home-hero__actions { margin-top: 2.1rem; }
.home-hero--immersive .hero-button--primary { padding-inline: 1.35rem; background: #fff; border-color: #fff; border-radius: 0; color: #073b6d; box-shadow: none; }
.home-hero--immersive .hero-button--primary:hover, .home-hero--immersive .hero-button--primary:focus-visible { background: #7de1da; border-color: #7de1da; color: #06365b; }
.home-hero--immersive .hero-button--text { color: #fff; border-color: #8be6df; }
.home-hero--immersive .hero-button--text:hover, .home-hero--immersive .hero-button--text:focus-visible { color: #8be6df; }
.home-hero__doctor-note { align-self: end; justify-self: end; display: grid; gap: .28rem; padding: .8rem 0 .8rem 1rem; border-left: 2px solid #82e4de; text-align: right; }
.home-hero__doctor-note span { color: #d9eaed; font-size: .8rem; }
.home-hero__doctor-note strong { color: #fff; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.home-hero--immersive .home-hero__stats { grid-column: 1 / -1; max-width: 700px; grid-template-columns: repeat(3, 1fr); margin: 0; border-top: 1px solid rgba(201,239,238,.45); }
.home-hero--immersive .home-hero__stats li { padding: 1.2rem 1.5rem 0 0; }
.home-hero--immersive .home-hero__stats li + li { padding-left: 1.5rem; border-color: rgba(201,239,238,.45); }
.home-hero--immersive .home-hero__stats strong { color: #fff; }
.home-hero--immersive .home-hero__stats strong span { color: #82e4de; }
.home-hero--immersive .home-hero__stats li > span { color: #c1d8df; }

/* Compact immersive hero */
.home-hero--immersive { min-height: min(535px, calc(100vh - 122px)); }
.home-hero--immersive .home-hero__grid { padding-block: clamp(3rem, 5vw, 4.5rem) 1.5rem; }

/* Keep only the main navigation sticky; the information bar scrolls away. */
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.97); box-shadow: 0 2px 12px rgba(7,59,109,.08); backdrop-filter: blur(12px); }
.header-navigation { position: static; box-shadow: none; backdrop-filter: none; }

/* Treatment overview */
.treatment-overview { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #f5f9fa; }
.treatment-overview__heading { display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.section-kicker { margin: 0 0 .75rem; color: #0a8a91; font-size: .74rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.treatment-overview h2 { margin: 0; color: #09365f; font-size: clamp(2.15rem, 4vw, 3.6rem); letter-spacing: -.05em; line-height: 1.07; }
.treatment-overview__heading > p { max-width: 480px; margin: 0 0 .3rem auto; color: #5b7181; font-size: 1rem; line-height: 1.75; }
.treatment-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.treatment-card { display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid #e1ebed; transition: box-shadow .25s ease, transform .25s ease; }
.treatment-card:hover { box-shadow: 0 18px 35px rgba(7,59,109,.12); transform: translateY(-5px); }
.treatment-card__image { position: relative; display: block; aspect-ratio: 1.65 / 1; overflow: hidden; background: #d9e8ec; }
.treatment-card__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(180deg, transparent 55%, rgba(5,42,71,.26)); }
.treatment-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.treatment-card:hover .treatment-card__image img { transform: scale(1.06); }
.treatment-card__image span { position: absolute; z-index: 1; top: 0; left: 0; padding: .55rem .7rem; color: #fff; background: #0b7f88; font-size: .72rem; font-weight: 800; }
.treatment-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.35rem 1.35rem 1.25rem; }
.treatment-card h3 { margin: 0; color: #09365f; font-size: clamp(1.15rem, 1.7vw, 1.4rem); line-height: 1.18; }
.treatment-card h3 a:hover, .treatment-card h3 a:focus-visible { color: #0b858b; }
.treatment-card p { margin: .75rem 0 1.15rem; color: #607787; font-size: .88rem; line-height: 1.65; }
.treatment-card__link { display: inline-flex; align-items: center; gap: .45rem; margin-top: auto; color: #08727a; border-bottom: 1px solid #8fc7ca; font-size: .78rem; font-weight: 800; }
.treatment-card__link span { font-size: 1.05rem; transition: transform .2s ease; }
.treatment-card__link:hover span, .treatment-card__link:focus-visible span { transform: translateX(3px); }

/* Patient stories */
.patient-stories { overflow: hidden; padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #eaf5f5; }
.patient-stories__grid { display: grid; grid-template-columns: .78fr 1.22fr; align-items: start; gap: clamp(2.5rem, 7vw, 7rem); }
.patient-stories__intro { position: sticky; top: 130px; }
.patient-stories h2 { margin: 0; color: #083b6d; font-size: clamp(2.15rem, 4vw, 3.6rem); letter-spacing: -.055em; line-height: 1.05; }
.patient-stories__intro > p:not(.section-kicker) { max-width: 345px; margin: 1.3rem 0 1.75rem; color: #5c7481; font-size: .98rem; line-height: 1.75; }
.patient-stories__cta { display: inline-flex; align-items: center; gap: .6rem; color: #08767d; border-bottom: 1px solid #55afb1; font-size: .83rem; font-weight: 800; }
.patient-stories__cta span { font-size: 1.1rem; transition: transform .2s ease; }
.patient-stories__cta:hover span, .patient-stories__cta:focus-visible span { transform: translateX(4px); }
.patient-stories__reviews { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.15rem; }
.review-card { position: relative; min-height: 235px; display: flex; flex-direction: column; justify-content: space-between; padding: 1.6rem; background: #fff; border-top: 3px solid #a5ddd8; box-shadow: 0 12px 28px rgba(10,68,87,.08); }
.review-card::before { position: absolute; top: 1.15rem; right: 1.35rem; color: #c2e6e2; content: '“'; font-family: Georgia, 'Times New Roman', serif; font-size: 5rem; line-height: .6; }
.review-card--featured { grid-column: 1 / -1; min-height: 260px; padding: clamp(1.75rem, 3vw, 2.5rem); color: #fff; background: #083b6d; border-color: #083b6d; }
.review-card--featured::before { color: rgba(141,230,221,.24); font-size: 7rem; }
.review-card__quote { position: relative; z-index: 1; max-width: 610px; margin: 0; color: #24485e; font-size: 1rem; line-height: 1.75; }
.review-card--featured .review-card__quote { color: #f2fbfc; font-size: clamp(1.1rem, 1.9vw, 1.35rem); line-height: 1.65; }
.review-card footer { position: relative; z-index: 1; display: grid; gap: .2rem; margin-top: 1.5rem; }
.review-card footer strong { color: #0a747c; font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }
.review-card footer span { color: #78909d; font-size: .76rem; }
.review-card--featured footer strong { color: #8de6dd; }
.review-card--featured footer span { color: #c5e1e4; }

/* Visiting surgeon schedule */
.visiting-surgeon { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #fff; }
.visiting-surgeon__layout { display: grid; grid-template-columns: .76fr 1.24fr; gap: clamp(2.5rem, 7vw, 7rem); align-items: start; }
.visiting-surgeon__intro { position: sticky; top: 108px; padding: clamp(2rem, 4vw, 3.25rem); color: #fff; background: #083b6d; }
.visiting-surgeon__intro .section-kicker { color: #86e4dd; }
.visiting-surgeon h2 { margin: 0; color: #fff; font-size: clamp(2.3rem, 4.2vw, 3.8rem); letter-spacing: -.06em; line-height: 1; }
.visiting-surgeon__intro > p:not(.section-kicker) { margin: 1.35rem 0 1.75rem; color: #d1e4e9; font-size: .94rem; line-height: 1.75; }
.visiting-surgeon__cta { display: inline-flex; align-items: center; gap: .55rem; padding-bottom: .25rem; color: #91e7e1; border-bottom: 1px solid #91e7e1; font-size: .8rem; font-weight: 800; }
.visiting-surgeon__cta span { font-size: 1.1rem; transition: transform .2s ease; }
.visiting-surgeon__cta:hover span, .visiting-surgeon__cta:focus-visible span { transform: translateX(4px); }
.visiting-surgeon__schedule { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #dce8eb; border-left: 1px solid #dce8eb; }
.schedule-item { min-height: 138px; padding: 1.3rem 1.35rem; border-right: 1px solid #dce8eb; border-bottom: 1px solid #dce8eb; }
.schedule-item h3 { margin: 0; color: #093b62; font-size: 1rem; line-height: 1.35; }
.schedule-item h3 span { display: inline-block; margin-left: .2rem; color: #0a8b90; font-size: .73rem; font-weight: 700; }
.schedule-item p { margin: .5rem 0 .6rem; color: #5c7481; font-size: .82rem; line-height: 1.45; }
.schedule-item p b { display: block; margin-top: .12rem; color: #183f59; font-size: .72rem; letter-spacing: .04em; text-transform: uppercase; }
.schedule-item a { display: inline-flex; align-items: center; gap: .4rem; color: #08767e; font-size: .8rem; font-weight: 800; }
.schedule-item a:hover, .schedule-item a:focus-visible { color: #083b6d; }
.schedule-item a img { width: 14px; height: 14px; filter: invert(36%) sepia(62%) saturate(654%) hue-rotate(137deg) brightness(87%) contrast(94%); }

/* Knowledge center */
.knowledge-center { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #f4f9fa; }
.knowledge-center__heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 3rem; }
.knowledge-center h2 { margin: 0; color: #083b6d; font-size: clamp(2.3rem, 4vw, 3.8rem); letter-spacing: -.06em; line-height: .98; }
.knowledge-center__heading > p { max-width: 400px; margin: 0 0 .2rem; color: #5b7483; font-size: .96rem; line-height: 1.7; }
.featured-article { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(330px, .97fr); background: #fff; box-shadow: 0 18px 42px rgba(10,65,84,.1); }
.featured-article__image { position: relative; min-height: 405px; overflow: hidden; background: #d9e9eb; }
.featured-article__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(90deg, rgba(3,50,81,.05), rgba(3,50,81,.26)); }
.featured-article__image img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .6s ease; }
.featured-article:hover .featured-article__image img { transform: scale(1.04); }
.featured-article__image span { position: absolute; z-index: 1; top: 1.25rem; left: 1.25rem; padding: .5rem .7rem; color: #fff; background: #0a7f87; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.featured-article__content { display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem, 5vw, 4.5rem); }
.featured-article__number { margin: 0 0 1.4rem; color: #09838a; font-size: .78rem; font-weight: 800; letter-spacing: .08em; }
.featured-article__number span { margin-left: .4rem; color: #8aa1ac; font-weight: 700; }
.featured-article h3 { max-width: 480px; margin: 0; color: #093b62; font-size: clamp(1.75rem, 3vw, 2.65rem); letter-spacing: -.045em; line-height: 1.12; }
.featured-article h3 a:hover, .featured-article h3 a:focus-visible { color: #087982; }
.featured-article__content > p:not(.featured-article__number) { max-width: 500px; margin: 1.25rem 0 1.65rem; color: #607987; font-size: .93rem; line-height: 1.75; }
.featured-article__link { display: inline-flex; align-items: center; gap: .55rem; align-self: flex-start; color: #08747c; border-bottom: 1px solid #86c6c6; font-size: .82rem; font-weight: 800; }
.featured-article__link span { font-size: 1.1rem; transition: transform .2s ease; }
.featured-article__link:hover span, .featured-article__link:focus-visible span { transform: translateX(4px); }

/* Treatment-page hero */
.treatment-page-hero { position: relative; min-height: 390px; display: grid; align-items: center; overflow: hidden; color: #fff; background: #082f54; }
.treatment-page-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 48%; }
.treatment-page-hero--micro .treatment-page-hero__image { object-position: center 55%; }
.treatment-page-hero--surgery .treatment-page-hero__image { object-position: center 52%; }
.treatment-page-hero--trauma .treatment-page-hero__image { object-position: center 50%; }
.treatment-page-hero--disc .treatment-page-hero__image { object-position: center 50%; }
.treatment-page-hero--sciatica .treatment-page-hero__image { object-position: center 50%; }
.treatment-page-hero--about .treatment-page-hero__image { object-position: center 38%; }
.treatment-page-hero--gallery .treatment-page-hero__image { object-position: center 50%; }
.treatment-page-hero--blogs .treatment-page-hero__image { object-position: center 50%; }
.treatment-page-hero--contact .treatment-page-hero__image, .treatment-page-hero--video .treatment-page-hero__image { object-position: center 50%; }

/* Contact page */
.contact-appointment { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #fff; }
.contact-appointment__grid { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); align-items: start; gap: clamp(2.5rem, 8vw, 8rem); }
.contact-appointment__intro { position: sticky; top: 120px; }
.contact-appointment h2 { margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.contact-appointment h2 em, .contact-visit h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.contact-appointment__intro > p:not(.section-kicker) { max-width: 360px; margin: 1.35rem 0 0; color: #557281; font-size: .97rem; line-height: 1.8; }
.contact-appointment__direct { display: grid; gap: .8rem; margin-top: 2rem; }
.contact-appointment__direct a { display: grid; gap: .18rem; color: #083b6d; }
.contact-appointment__direct span { color: #07848a; font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.contact-appointment__direct strong { font-size: .95rem; }
.appointment-form { padding: clamp(1.4rem, 3vw, 2.45rem); background: #f4f9fa; border-top: 4px solid #07848a; box-shadow: 0 15px 34px rgba(7,58,82,.09); }
.appointment-form__status { margin: 0 0 1.25rem; padding: .8rem 1rem; font-size: .88rem; font-weight: 700; line-height: 1.55; }
.appointment-form__status--success { color: #096b59; background: #dff5ec; border-left: 3px solid #098a73; }
.appointment-form__status--error { color: #9e2c2c; background: #fff0f0; border-left: 3px solid #ca4343; }
.appointment-form__honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; }
.appointment-form__captcha { margin: 1.35rem 0 0; overflow: hidden; }
.appointment-form__captcha-note { margin: 1.35rem 0 0; padding: .75rem .9rem; color: #7b4b16; background: #fff6df; border-left: 3px solid #d39219; font-size: .82rem; line-height: 1.5; }
.appointment-form__heading { display: flex; justify-content: space-between; gap: 1rem; margin-bottom: 1.8rem; color: #083b6d; font-size: 1.08rem; font-weight: 800; }
.appointment-form__heading small { color: #708994; font-size: .7rem; font-weight: 700; }
.appointment-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; }
.appointment-form > div:not(.appointment-form__heading) { margin-top: 1.15rem; }
.appointment-form label { display: block; margin-bottom: .45rem; color: #31566b; font-size: .75rem; font-weight: 800; }
.appointment-form input, .appointment-form select, .appointment-form textarea { width: 100%; padding: .75rem 0; color: #083b6d; border: 0; border-bottom: 1px solid #a9c6ca; border-radius: 0; outline: 0; background: transparent; font: inherit; font-size: .92rem; }
.appointment-form input::placeholder, .appointment-form textarea::placeholder { color: #7a97a4; opacity: 1; }
.appointment-form textarea { min-height: 90px; resize: vertical; }
.appointment-form input:focus, .appointment-form select:focus, .appointment-form textarea:focus { border-color: #07848a; box-shadow: 0 1px 0 #07848a; }
.appointment-form button { display: inline-flex; align-items: center; gap: 1rem; margin-top: 1.6rem; padding: .85rem 1.1rem; color: #fff; border: 0; background: #083b6d; cursor: pointer; font: inherit; font-size: .86rem; font-weight: 800; transition: background .2s ease, transform .2s ease; }
.appointment-form button:hover { background: #07848a; transform: translateY(-2px); }
.appointment-form button span { color: #8de4dd; font-size: 1.1rem; }
.appointment-form__notice { margin: 1rem 0 0; color: #708994; font-size: .72rem; line-height: 1.6; }
.contact-visit { padding-block: clamp(3.5rem, 6vw, 5.5rem); color: #fff; background: #083b6d; }
.contact-visit__grid { display: grid; grid-template-columns: .8fr 1.15fr .8fr; gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.contact-visit .section-kicker { color: #8de4dd; }
.contact-visit h2 { margin: 0; color: #fff; font-size: clamp(2.1rem, 3.8vw, 3.6rem); letter-spacing: -.065em; line-height: 1.05; }
.contact-visit address { padding-left: 1.5rem; border-left: 1px solid rgba(170,225,224,.35); font-style: normal; }
.contact-visit address > span, .contact-visit__note > span { color: #8de4dd; font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.contact-visit address p { margin: .7rem 0 1rem; color: #fff; font-size: .97rem; line-height: 1.75; }
.contact-visit address a { color: #8de4dd; border-bottom: 1px solid #8de4dd; font-size: .83rem; font-weight: 800; }
.contact-visit address b { margin-left: .4rem; font-size: 1rem; }
.contact-visit__note { padding: 1.1rem 1.2rem; background: rgba(137,221,217,.1); }
.contact-visit__note p { margin: .55rem 0 0; color: #d4e7eb; font-size: .85rem; line-height: 1.7; }

/* Gallery link plus video dropdown */
.nav-dropdown--gallery { display: flex; align-items: center; }
.nav-dropdown--gallery > a { padding-right: .22rem; }
.nav-dropdown--gallery > .nav-dropdown__toggle { min-width: 28px; padding-right: .55rem; padding-left: .2rem; }
.nav-dropdown--gallery > .nav-dropdown__toggle::after { right: .55rem; left: .2rem; }
.nav-dropdown--gallery > .nav-dropdown__menu { right: 0; left: auto; }
.nav-dropdown--gallery > .nav-dropdown__menu::before { right: 19px; left: auto; }

/* About page */
.doctor-profile { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #fff; }
.doctor-profile__grid { display: grid; grid-template-columns: minmax(330px, .93fr) minmax(0, 1.07fr); align-items: center; gap: clamp(2.5rem, 7vw, 7.5rem); }
.doctor-profile__visual { position: relative; margin: 0; padding: 1.2rem 1.2rem 0 0; }
.doctor-profile__visual::before { position: absolute; top: 0; right: 0; bottom: 15%; left: 15%; content: ''; background: #dcefee; }
.doctor-profile__image { position: relative; z-index: 1; overflow: hidden; aspect-ratio: .96 / 1; box-shadow: 17px 17px 0 #0c7179; }
.doctor-profile__image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.doctor-profile__visual figcaption { position: relative; z-index: 2; display: grid; gap: .25rem; width: min(82%, 315px); margin: -1.75rem 0 0 auto; padding: .9rem 1.1rem; color: #fff; background: #083b6d; }
.doctor-profile__visual figcaption span { color: #8de4dd; font-size: .67rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.doctor-profile__visual figcaption strong { font-size: .84rem; }
.doctor-profile__content { max-width: 640px; }
.doctor-profile h2 { margin: 0; color: #083b6d; font-size: clamp(2.5rem, 4.5vw, 4.3rem); letter-spacing: -.07em; line-height: .98; }
.doctor-profile h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.doctor-profile__role { display: inline-block; margin: 1.1rem 0 0; padding-bottom: .5rem; color: #0a7179; border-bottom: 2px solid #9cdbd8; font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.doctor-profile__content > p:not(.section-kicker):not(.doctor-profile__role) { margin: 1rem 0 0; color: #506d7d; font-size: .98rem; line-height: 1.82; }
.doctor-profile__signature { display: grid; gap: .25rem; margin-top: 2rem; padding-left: 1rem; border-left: 3px solid #07848a; }
.doctor-profile__signature span { color: #07848a; font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.doctor-profile__signature strong { color: #164863; font-size: .9rem; }
.care-philosophy { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #eaf5f5; }
.care-philosophy__heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.care-philosophy h2 { max-width: 720px; margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.04; }
.care-philosophy h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.care-philosophy__heading > p { max-width: 390px; margin: 0 0 .2rem auto; color: #547281; font-size: .96rem; line-height: 1.75; }
.care-philosophy__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.care-philosophy__card { position: relative; padding: clamp(1.7rem, 3vw, 2.65rem); background: #fff; }
.care-philosophy__number { display: block; margin-bottom: 2.8rem; color: #07878d; font-size: .72rem; font-weight: 800; letter-spacing: .1em; }
.care-philosophy__card h3 { margin: 0; color: #083b6d; font-size: clamp(1.75rem, 3vw, 2.5rem); letter-spacing: -.055em; line-height: 1.05; }
.care-philosophy__card p { max-width: 480px; margin: 1.2rem 0 0; color: #55717f; font-size: .96rem; line-height: 1.8; }
.care-philosophy__card--philosophy img { display: block; width: 100%; height: clamp(205px, 23vw, 290px); margin-top: 2rem; object-fit: cover; }
.care-philosophy__card--approach { color: #fff; background: #083b6d; }
.care-philosophy__card--approach .care-philosophy__number { color: #8de4dd; }
.care-philosophy__card--approach h3 { color: #fff; }
.care-philosophy__card--approach p { color: #c8e0e5; }
.care-philosophy__card ul { display: grid; gap: .15rem; margin: 2rem 0 0; padding: 0; list-style: none; }
.care-philosophy__card li { padding: .85rem 0 .85rem 1.5rem; color: #fff; border-top: 1px solid rgba(174,224,223,.27); font-size: .9rem; font-weight: 700; line-height: 1.45; }
.care-philosophy__card li::before { position: absolute; margin-left: -1.5rem; color: #8de4dd; content: '→'; }

/* Blog journal */
.blog-journal { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #f4f9fa; }
.blog-journal__heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 3rem; margin-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.blog-journal h2 { max-width: 720px; margin: 0; color: #083b6d; font-size: clamp(2.6rem, 5vw, 5rem); letter-spacing: -.07em; line-height: .98; }
.blog-journal h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.blog-journal__heading > p { max-width: 410px; margin: 0 0 .2rem auto; color: #547180; font-size: .97rem; line-height: 1.8; }
.blog-journal__layout { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(370px, .92fr); gap: clamp(1.25rem, 4vw, 4rem); align-items: start; }
.blog-featured { background: #fff; box-shadow: 0 15px 35px rgba(6,57,81,.08); }
.blog-featured__image { display: block; overflow: hidden; aspect-ratio: 1.36 / .9; background: #d5e8ea; }
.blog-featured__image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.blog-featured:hover .blog-featured__image img { transform: scale(1.045); }
.blog-featured__body { padding: clamp(1.4rem, 3vw, 2.25rem); }
.blog-meta { display: flex; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; color: #087d83; font-size: .69rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.blog-meta time { color: #78909b; }
.blog-featured h2 { max-width: 640px; margin: 0; color: #083b6d; font-size: clamp(1.6rem, 2.8vw, 2.55rem); letter-spacing: -.045em; line-height: 1.12; }
.blog-featured p { max-width: 610px; margin: 1rem 0 0; color: #5b7582; font-size: .94rem; line-height: 1.75; }
.blog-read-link { display: inline-flex; align-items: center; gap: .75rem; margin-top: 1.45rem; color: #083b6d; border-bottom: 1px solid #80c9c8; font-size: .83rem; font-weight: 800; line-height: 1.7; }
.blog-read-link span { color: #07848a; font-size: 1.1rem; transition: transform .2s ease; }
.blog-read-link:hover span { transform: translateX(4px); }
.blog-list { display: grid; border-top: 1px solid #c6dfe1; }
.blog-list__item { display: grid; grid-template-columns: 125px 1fr; gap: 1.15rem; align-items: start; padding: 1.25rem 0; border-bottom: 1px solid #c6dfe1; }
.blog-list__image { display: block; overflow: hidden; aspect-ratio: 1 / 1; background: #d9eaeb; }
.blog-list__image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.blog-list__item:hover .blog-list__image img { transform: scale(1.06); }
.blog-list__item > div > span { color: #07848a; font-size: .66rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.blog-list__item h2 { margin: .45rem 0 0; color: #083b6d; font-size: clamp(1.02rem, 1.7vw, 1.22rem); line-height: 1.35; }
.blog-list__item h2 a:hover { color: #07848a; }
.blog-list__item .blog-read-link { margin-top: .5rem; font-size: .72rem; }

/* Clinic gallery */
.clinic-gallery { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #f4f9fa; }
.clinic-gallery__heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 3rem; margin-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.clinic-gallery h1 { max-width: 700px; margin: 0; color: #083b6d; font-size: clamp(2.6rem, 5vw, 5rem); letter-spacing: -.07em; line-height: .98; }
.clinic-gallery h1 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.clinic-gallery__heading > p { max-width: 410px; margin: 0 0 .2rem auto; color: #557281; font-size: .97rem; line-height: 1.8; }
.clinic-gallery__grid { display: grid; grid-template-columns: repeat(12, 1fr); grid-auto-rows: 105px; gap: 1rem; }
.clinic-gallery__item { position: relative; display: block; min-width: 0; padding: 0; overflow: hidden; color: #fff; border: 0; background: #d8eaeb; cursor: pointer; text-align: left; }
.clinic-gallery__item:nth-child(1) { grid-column: span 4; grid-row: span 5; }
.clinic-gallery__item:nth-child(2) { grid-column: span 5; grid-row: span 3; }
.clinic-gallery__item:nth-child(3) { grid-column: span 3; grid-row: span 3; }
.clinic-gallery__item:nth-child(4) { grid-column: span 3; grid-row: span 3; }
.clinic-gallery__item:nth-child(5) { grid-column: span 5; grid-row: span 4; }
.clinic-gallery__item:nth-child(6) { grid-column: span 4; grid-row: span 4; }
.clinic-gallery__item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.clinic-gallery__item::after { position: absolute; inset: 0; content: ''; background: linear-gradient(180deg, transparent 48%, rgba(3,43,70,.82)); transition: background .25s ease; }
.clinic-gallery__item span { position: absolute; z-index: 1; right: 1.15rem; bottom: 1rem; left: 1.15rem; display: flex; align-items: center; justify-content: space-between; gap: .75rem; color: #fff; font-size: .83rem; font-weight: 800; opacity: .96; transform: translateY(3px); transition: transform .25s ease; }
.clinic-gallery__item i { display: grid; place-items: center; width: 25px; height: 25px; color: #073b64; background: #8de4dd; border-radius: 50%; font-size: .92rem; font-style: normal; }
.clinic-gallery__item:hover img, .clinic-gallery__item:focus-visible img { transform: scale(1.055); }
.clinic-gallery__item:hover::after, .clinic-gallery__item:focus-visible::after { background: linear-gradient(180deg, rgba(3,43,70,.08), rgba(3,43,70,.9)); }
.clinic-gallery__item:hover span, .clinic-gallery__item:focus-visible span { transform: translateY(0); }
.clinic-gallery__item:focus-visible { outline: 3px solid #07848a; outline-offset: 3px; }
.gallery-lightbox { width: min(900px, calc(100% - 2rem)); max-height: min(860px, calc(100dvh - 2rem)); padding: 1rem; color: #fff; border: 0; background: #062f50; box-shadow: 0 20px 70px rgba(0,0,0,.45); }
.gallery-lightbox::backdrop { background: rgba(0,26,45,.78); backdrop-filter: blur(4px); }
.gallery-lightbox img { display: block; width: 100%; max-height: calc(100dvh - 9rem); object-fit: contain; }
.gallery-lightbox p { margin: .8rem .25rem .15rem; color: #d8eeee; font-size: .86rem; font-weight: 700; }
.gallery-lightbox__close { position: absolute; z-index: 1; top: .3rem; right: .4rem; display: grid; place-items: center; width: 34px; height: 34px; color: #073b64; border: 0; border-radius: 50%; background: #fff; cursor: pointer; font-size: 1.55rem; line-height: 1; }

/* Sciatica page */
.sciatica-intro { padding-block: clamp(4.5rem, 8vw, 7.5rem); overflow: hidden; background: #fff; }
.sciatica-intro__grid { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(340px, .97fr); align-items: center; gap: clamp(2.5rem, 7vw, 7.5rem); }
.sciatica-intro__content { max-width: 630px; }
.sciatica-intro h2 { margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.sciatica-intro h2 em, .sciatica-causes h2 em, .sciatica-treatment h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.sciatica-intro__content > p:not(.section-kicker) { margin: 1.25rem 0 0; color: #4d6d7d; font-size: 1rem; line-height: 1.82; }
.sciatica-intro__symptoms { margin-top: 2rem; padding: 1.05rem 1.2rem; border-left: 3px solid #06848a; background: #eaf7f6; }
.sciatica-intro__symptoms span { color: #07848a; font-size: .69rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.sciatica-intro__symptoms p { margin: .4rem 0 0; color: #174b66; font-size: .86rem; font-weight: 700; line-height: 1.6; }
.sciatica-intro__visual { position: relative; margin: 0; padding: 1.15rem 0 1.15rem 1.15rem; }
.sciatica-intro__visual::before { position: absolute; top: 0; right: -8vw; bottom: 0; left: 23%; content: ''; background: #dcefee; }
.sciatica-intro__image { position: relative; z-index: 1; overflow: hidden; aspect-ratio: .98 / 1; border-radius: 0 3.75rem 0 3.75rem; box-shadow: -16px 17px 0 #0b4d76; }
.sciatica-intro__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(145deg, rgba(5,47,77,.03), rgba(5,47,77,.29)); }
.sciatica-intro__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sciatica-intro__visual figcaption { position: relative; z-index: 2; display: grid; gap: .3rem; width: min(84%, 335px); margin: -2rem 0 0 auto; padding: 1.05rem 1.15rem; color: #fff; background: #083b6d; }
.sciatica-intro__visual figcaption span { color: #8de4dd; font-size: .67rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.sciatica-intro__visual figcaption strong { font-size: .84rem; line-height: 1.5; }
.sciatica-causes { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #eaf5f5; }
.sciatica-causes__grid { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); align-items: start; gap: clamp(2.5rem, 8vw, 8rem); }
.sciatica-causes__intro { position: sticky; top: 120px; }
.sciatica-causes h2 { margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.sciatica-causes__intro > p:not(.section-kicker) { max-width: 370px; margin: 1.35rem 0 0; color: #587482; font-size: .97rem; line-height: 1.8; }
.sciatica-cause-list { border-top: 1px solid #bcdde0; }
.sciatica-cause-list details { border-bottom: 1px solid #bcdde0; }
.sciatica-cause-list summary, .sciatica-treatment__grid summary { display: grid; grid-template-columns: 45px 1fr 28px; align-items: center; gap: .85rem; cursor: pointer; list-style: none; }
.sciatica-cause-list summary { padding: 1.32rem .15rem; color: #093b62; }
.sciatica-cause-list summary::-webkit-details-marker, .sciatica-treatment__grid summary::-webkit-details-marker { display: none; }
.sciatica-cause-list summary > span, .sciatica-treatment__grid summary > span { color: #07868c; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.sciatica-cause-list summary strong, .sciatica-treatment__grid summary strong { font-size: clamp(1rem, 1.75vw, 1.2rem); line-height: 1.3; }
.sciatica-cause-list summary i, .sciatica-treatment__grid summary i { position: relative; width: 27px; height: 27px; border: 1px solid #99c8cb; border-radius: 50%; }
.sciatica-cause-list summary i::before, .sciatica-cause-list summary i::after, .sciatica-treatment__grid summary i::before, .sciatica-treatment__grid summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #087c82; transform: translate(-50%, -50%); transition: transform .2s ease; }
.sciatica-cause-list summary i::after, .sciatica-treatment__grid summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.sciatica-cause-list details[open] summary { color: #087b82; }
.sciatica-cause-list details[open] summary i, .sciatica-treatment__grid details[open] summary i { background: #087c82; border-color: #087c82; }
.sciatica-cause-list details[open] summary i::before, .sciatica-treatment__grid details[open] summary i::before { background: #fff; }
.sciatica-cause-list details[open] summary i::after, .sciatica-treatment__grid details[open] summary i::after { background: #fff; transform: translate(-50%, -50%) rotate(0); }
.sciatica-cause-list details > div { padding: 0 3.7rem 1.55rem; }
.sciatica-cause-list p { max-width: 650px; margin: 0; color: #526f7f; font-size: .94rem; line-height: 1.78; }
.sciatica-treatment { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #083b6d; }
.sciatica-treatment__heading { display: grid; grid-template-columns: 1.05fr .95fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.sciatica-treatment .section-kicker { color: #8de4dd; }
.sciatica-treatment h2 { margin: 0; color: #fff; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.sciatica-treatment__heading > p { max-width: 420px; margin: 0 0 .2rem auto; color: #c7dce5; font-size: .96rem; line-height: 1.75; }
.sciatica-treatment__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; border: 1px solid rgba(161,221,220,.4); background: rgba(161,221,220,.4); }
.sciatica-treatment__grid details { min-height: 112px; background: #fff; }
.sciatica-treatment__grid summary { padding: 1.28rem 1.35rem; color: #093b62; }
.sciatica-treatment__grid details[open] { background: #eaf7f6; }
.sciatica-treatment__grid details > div { padding: 0 1.35rem 1.35rem 5.1rem; }
.sciatica-treatment__grid p { margin: 0; color: #52707e; font-size: .9rem; line-height: 1.75; }

/* Disc replacement introduction */
.disc-intro { overflow: hidden; padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #fff; }
.disc-intro__grid { display: grid; grid-template-columns: minmax(340px, .94fr) minmax(0, 1.06fr); align-items: center; gap: clamp(2.5rem, 7vw, 7.5rem); }
.disc-intro__visual { position: relative; margin: 0; padding: 1.5rem 0 1.5rem 1.5rem; }
.disc-intro__visual::before { position: absolute; top: 0; right: 18%; bottom: 0; left: 0; content: ''; background: #dff1f0; }
.disc-intro__image { position: relative; z-index: 1; overflow: hidden; aspect-ratio: 1.04 / 1; border-radius: 4rem 0 4rem 0; box-shadow: -14px 17px 0 #0d7178; }
.disc-intro__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(145deg, rgba(4,43,69,.02), rgba(4,43,69,.3)); }
.disc-intro__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.disc-intro__visual figcaption { position: relative; z-index: 2; display: grid; gap: .25rem; width: min(85%, 340px); margin: -2.15rem 0 0 auto; padding: 1.05rem 1.2rem; color: #fff; background: #083b6d; }
.disc-intro__visual figcaption span { color: #8de4dd; font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.disc-intro__visual figcaption strong { font-size: .85rem; line-height: 1.5; }
.disc-intro__content { max-width: 640px; }
.disc-intro h2 { margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.disc-intro h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.disc-intro__content > p:not(.section-kicker) { margin: 1.25rem 0 0; color: #506f7e; font-size: 1rem; line-height: 1.82; }
.disc-intro__outcomes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 2.35rem; border-top: 1px solid #c8e1e1; border-bottom: 1px solid #c8e1e1; }
.disc-intro__outcomes > div { padding: 1.05rem 1rem 1.1rem 0; border-right: 1px solid #c8e1e1; }
.disc-intro__outcomes > div + div { padding-left: 1rem; }
.disc-intro__outcomes > div:last-child { border-right: 0; }
.disc-intro__outcomes span { display: block; margin-bottom: .55rem; color: #08868c; font-size: .7rem; font-weight: 800; letter-spacing: .08em; }
.disc-intro__outcomes strong { display: block; color: #083b6d; font-size: .92rem; }
.disc-intro__outcomes p { margin: .35rem 0 0; color: #66808c; font-size: .76rem; line-height: 1.55; }

/* Disc replacement procedure journey */
.disc-process { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #eaf5f5; }
.disc-process__heading { display: grid; grid-template-columns: 1.05fr .95fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.disc-process h2 { margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.disc-process h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.disc-process__heading > p { max-width: 420px; margin: 0 0 .25rem auto; color: #557381; font-size: .96rem; line-height: 1.75; }
.disc-process__list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; border: 1px solid #c5dfe0; background: #c5dfe0; }
.disc-process__list details { background: #fff; }
.disc-process__list details:first-child { grid-row: span 2; }
.disc-process__list summary { display: grid; grid-template-columns: 45px 1fr 28px; align-items: center; gap: .85rem; padding: 1.3rem 1.35rem; color: #093b62; cursor: pointer; list-style: none; }
.disc-process__list summary::-webkit-details-marker { display: none; }
.disc-process__list summary > span { color: #08888e; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.disc-process__list summary strong { font-size: clamp(1rem, 1.75vw, 1.18rem); line-height: 1.3; }
.disc-process__list summary i { position: relative; width: 27px; height: 27px; border: 1px solid #9ecbcd; border-radius: 50%; }
.disc-process__list summary i::before, .disc-process__list summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #087d83; transform: translate(-50%, -50%); transition: transform .2s ease; }
.disc-process__list summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.disc-process__list details[open] { background: #073b64; }
.disc-process__list details[open] summary { color: #fff; }
.disc-process__list details[open] summary > span { color: #8de4dd; }
.disc-process__list details[open] summary i { background: #8de4dd; border-color: #8de4dd; }
.disc-process__list details[open] summary i::before { background: #073b64; }
.disc-process__list details[open] summary i::after { background: #073b64; transform: translate(-50%, -50%) rotate(0); }
.disc-process__list details > div { padding: 0 1.35rem 1.4rem 5.1rem; }
.disc-process__list details p { margin: 0; color: #587582; font-size: .9rem; line-height: 1.75; }
.disc-process__list details[open] p { color: #cce3e6; }

/* Disc replacement treatment pathway */
.disc-treatment { padding-block: clamp(4.5rem, 8vw, 7.5rem); color: #fff; background: #073b64; }
.disc-treatment__grid { display: grid; grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr); align-items: start; gap: clamp(2.5rem, 8vw, 8rem); }
.disc-treatment__intro { position: sticky; top: 120px; }
.disc-treatment .section-kicker { color: #8de4dd; }
.disc-treatment h2 { margin: 0; color: #fff; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.disc-treatment h2 em { color: #8de4dd; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.disc-treatment__intro > p:not(.section-kicker) { max-width: 370px; margin: 1.4rem 0 0; color: #c4dce4; font-size: .97rem; line-height: 1.8; }
.disc-treatment__steps { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(179,223,224,.32); }
.disc-treatment__steps li { display: grid; grid-template-columns: 64px 1fr; gap: 1.1rem; padding: 1.35rem 0; border-bottom: 1px solid rgba(179,223,224,.32); }
.disc-treatment__steps li > span { color: #8de4dd; font-size: .73rem; font-weight: 800; letter-spacing: .08em; }
.disc-treatment__steps li > div { display: grid; grid-template-columns: minmax(155px, .72fr) 1.28fr; gap: 1.25rem; }
.disc-treatment__steps strong { color: #fff; font-size: clamp(1rem, 1.7vw, 1.18rem); line-height: 1.35; }
.disc-treatment__steps p { margin: 0; color: #c1d9e1; font-size: .88rem; line-height: 1.75; }

/* Spine trauma introduction */
.trauma-intro { overflow: hidden; padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #f4f9fa; }
.trauma-intro__grid { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(340px, .97fr); align-items: center; gap: clamp(2.5rem, 7vw, 7.5rem); }
.trauma-intro__content { max-width: 630px; }
.trauma-intro h2 { max-width: 560px; margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.15vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.trauma-intro h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.trauma-intro__content > p:not(.section-kicker) { margin: 1.2rem 0 0; color: #4c697a; font-size: 1rem; line-height: 1.85; }
.trauma-intro__alert { display: grid; grid-template-columns: 38px 1fr; gap: .9rem; margin: 2rem 0 0; padding: 1.1rem 1.2rem; border: 1px solid #f0cfb8; border-left: 4px solid #d66a35; background: #fff8f4; }
.trauma-intro__alert > span { display: grid; place-items: center; width: 30px; height: 30px; color: #fff; background: #c95123; border-radius: 50%; font-size: 1rem; font-weight: 800; }
.trauma-intro__alert p { margin: 0; color: #74462e; font-size: .87rem; line-height: 1.68; }
.trauma-intro__visual { position: relative; margin: 0; padding: 1.2rem 1.2rem 3.5rem 0; }
.trauma-intro__visual::before { position: absolute; top: 0; right: -9vw; bottom: 0; left: 22%; content: ''; background: #dbeeee; }
.trauma-intro__image { position: relative; z-index: 1; overflow: hidden; aspect-ratio: .98 / 1; box-shadow: 18px 18px 0 #0b4d76; }
.trauma-intro__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(145deg, rgba(4,44,75,.08), rgba(4,44,75,.32)); }
.trauma-intro__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.trauma-intro__visual figcaption { position: relative; z-index: 2; display: grid; gap: .25rem; width: min(83%, 350px); margin: -2rem -1.2rem 0 auto; padding: 1rem 1.15rem; color: #fff; background: #083b6d; }
.trauma-intro__visual figcaption span { color: #8de4dd; font-size: .67rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.trauma-intro__visual figcaption strong { font-size: .85rem; line-height: 1.45; }
.trauma-intro__markers { position: relative; z-index: 2; display: flex; gap: 1.1rem; margin-top: 1.2rem; color: #0b6871; font-size: .7rem; font-weight: 800; letter-spacing: .05em; }
.trauma-intro__markers span { display: grid; gap: .2rem; }
.trauma-intro__markers b { color: #31586c; font-size: .76rem; letter-spacing: 0; }

/* Common spine trauma */
.trauma-conditions { padding-block: clamp(4.5rem, 8vw, 7.5rem); color: #fff; background: #083b6d; }
.trauma-conditions__grid { display: grid; grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr); align-items: start; gap: clamp(2.5rem, 8vw, 8rem); }
.trauma-conditions__intro { position: sticky; top: 120px; }
.trauma-conditions .section-kicker { color: #8de4dd; }
.trauma-conditions h2 { margin: 0; color: #fff; font-size: clamp(2.35rem, 4.2vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.trauma-conditions h2 em { color: #8de4dd; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.trauma-conditions__intro > p:not(.section-kicker) { max-width: 365px; margin: 1.4rem 0 0; color: #c8dde5; font-size: .97rem; line-height: 1.8; }
.trauma-conditions__footnote { max-width: 370px; margin-top: 2.25rem; padding-top: 1.2rem; border-top: 1px solid rgba(152,226,222,.35); }
.trauma-conditions__footnote span { color: #8de4dd; font-size: .68rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.trauma-conditions__footnote p { margin: .45rem 0 0; color: #f3fbfc; font-size: .84rem; font-weight: 700; line-height: 1.65; }
.trauma-condition-list { border-top: 1px solid rgba(183,224,226,.3); }
.trauma-condition-list details { border-bottom: 1px solid rgba(183,224,226,.3); }
.trauma-condition-list summary { display: grid; grid-template-columns: 46px 1fr 30px; align-items: center; gap: 1rem; padding: 1.4rem .15rem; color: #fff; cursor: pointer; list-style: none; }
.trauma-condition-list summary::-webkit-details-marker { display: none; }
.trauma-condition-list summary > span { color: #8de4dd; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.trauma-condition-list summary strong { font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.25; }
.trauma-condition-list summary i { position: relative; width: 28px; height: 28px; border: 1px solid #7ebbc2; border-radius: 50%; }
.trauma-condition-list summary i::before, .trauma-condition-list summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #9aece7; transform: translate(-50%, -50%); transition: transform .2s ease; }
.trauma-condition-list summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.trauma-condition-list details[open] summary { color: #8de4dd; }
.trauma-condition-list details[open] summary i { background: #8de4dd; border-color: #8de4dd; }
.trauma-condition-list details[open] summary i::before { background: #083b6d; }
.trauma-condition-list details[open] summary i::after { background: #083b6d; transform: translate(-50%, -50%) rotate(0); }
.trauma-condition-list details > div { padding: 0 4.8rem 1.65rem; }
.trauma-condition-list details p { max-width: 680px; margin: 0; color: #c9dfe6; font-size: .94rem; line-height: 1.8; }

/* Spine trauma treatment */
.trauma-treatment { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #fff; }
.trauma-treatment__grid { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); align-items: start; gap: clamp(2.5rem, 8vw, 8rem); }
.trauma-treatment__intro { position: sticky; top: 120px; }
.trauma-treatment h2 { margin: 0; color: #083b6d; font-size: clamp(2.35rem, 4.2vw, 4rem); letter-spacing: -.065em; line-height: 1.03; }
.trauma-treatment h2 em { color: #bd592c; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.trauma-treatment__intro > p:not(.section-kicker) { max-width: 375px; margin: 1.4rem 0 0; color: #526f7e; font-size: .97rem; line-height: 1.8; }
.trauma-treatment__line { max-width: 370px; margin-top: 2.15rem; padding-left: .9rem; color: #8b4d2f; border-left: 3px solid #d66a35; font-size: .82rem; font-weight: 800; line-height: 1.6; }
.trauma-treatment__list { border-top: 1px solid #c8dfe1; }
.trauma-treatment__list details { border-bottom: 1px solid #c8dfe1; }
.trauma-treatment__list summary { display: grid; grid-template-columns: 46px 1fr 30px; align-items: center; gap: 1rem; padding: 1.4rem .15rem; color: #093b62; cursor: pointer; list-style: none; }
.trauma-treatment__list summary::-webkit-details-marker { display: none; }
.trauma-treatment__list summary > span { color: #c35a2c; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.trauma-treatment__list summary strong { font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.25; }
.trauma-treatment__list summary i { position: relative; width: 28px; height: 28px; border: 1px solid #d7a68e; border-radius: 50%; }
.trauma-treatment__list summary i::before, .trauma-treatment__list summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #bb562b; transform: translate(-50%, -50%); transition: transform .2s ease; }
.trauma-treatment__list summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.trauma-treatment__list details[open] summary { color: #a34925; }
.trauma-treatment__list details[open] summary i { background: #bf572a; border-color: #bf572a; }
.trauma-treatment__list details[open] summary i::before { background: #fff; }
.trauma-treatment__list details[open] summary i::after { background: #fff; transform: translate(-50%, -50%) rotate(0); }
.trauma-treatment__detail { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0 0 1.5rem; background: #e5d0c5; }
.trauma-treatment__detail > div { padding: 1.15rem 1.2rem; background: #fff8f5; }
.trauma-treatment__detail b { display: block; margin-bottom: .35rem; color: #a44b26; font-size: .71rem; letter-spacing: .08em; text-transform: uppercase; }
.trauma-treatment__detail p { margin: 0; color: #5b6e78; font-size: .88rem; line-height: 1.75; }
.trauma-treatment__detail--single { display: block; padding: 0 0 1.45rem 4rem; margin: 0; background: transparent; }
.treatment-page-hero__overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,40,70,.97) 0%, rgba(5,55,92,.84) 42%, rgba(5,55,92,.38) 74%, rgba(5,55,92,.28) 100%); }
.treatment-page-hero__content { position: relative; z-index: 1; padding-block: 3rem; }
.treatment-breadcrumb { display: flex; flex-wrap: wrap; gap: .55rem; margin-bottom: 3.3rem; color: #b9d2dc; font-size: .77rem; font-weight: 700; }
.treatment-breadcrumb a:hover, .treatment-breadcrumb a:focus-visible { color: #8ee5df; }
.treatment-breadcrumb span[aria-current="page"] { color: #86e4de; }
.treatment-page-hero__kicker { margin: 0 0 .75rem; color: #86e4de; font-size: .75rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.treatment-page-hero h1 { max-width: 620px; margin: 0; color: #fff; font-size: clamp(3rem, 6vw, 5.4rem); letter-spacing: -.07em; line-height: .88; }
.treatment-page-hero h1 em { color: #92e9e1; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.treatment-page-hero__content > p:last-child { max-width: 450px; margin: 1.25rem 0 0; color: #d7e9ed; font-size: 1rem; line-height: 1.7; }

/* Condition introduction */
.condition-intro { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #fff; }
.condition-intro__grid { display: grid; grid-template-columns: minmax(330px, .96fr) minmax(0, 1.04fr); align-items: center; gap: clamp(2.5rem, 7vw, 7rem); }
.condition-intro__visual { position: relative; margin: 0; }
.condition-intro__visual::before { position: absolute; top: -18px; left: -18px; width: 70%; height: 70%; content: ''; background: #d9f0ef; }
.condition-intro__image { position: relative; overflow: hidden; aspect-ratio: 1.08 / 1; border-radius: 0 4rem 0 4rem; box-shadow: 18px 18px 0 #e5f2f2; }
.condition-intro__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.condition-intro__visual figcaption { position: relative; max-width: 300px; margin: -1.45rem 0 0 auto; padding: 1rem 1.1rem; color: #093b62; background: #fff; border-left: 3px solid #0a8a90; box-shadow: 0 10px 24px rgba(7,59,109,.1); font-size: .78rem; font-weight: 700; line-height: 1.5; }
.condition-intro__content { max-width: 610px; }
.condition-intro h2 { margin: 0; color: #093b62; font-size: clamp(2.2rem, 4vw, 3.7rem); letter-spacing: -.06em; line-height: 1.05; }
.condition-intro h2 em { color: #0a878d; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.condition-intro__content > p:not(.section-kicker) { margin: 1.25rem 0 0; color: #5c7483; font-size: 1rem; line-height: 1.8; }
.condition-intro__note { display: grid; grid-template-columns: 132px 1fr; gap: 1.25rem; margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid #c9e2e4; }
.condition-intro__note span { color: #087a81; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.condition-intro__note p { margin: 0; color: #214c65; font-size: .88rem; font-weight: 700; line-height: 1.65; }

/* Microscopy procedure introduction */
.procedure-intro { padding-block: clamp(4.5rem, 8vw, 7.5rem); overflow: hidden; background: #f4f9fa; }
.procedure-intro__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: center; }
.procedure-intro__content { max-width: 630px; }
.procedure-intro h2 { margin: 0; color: #083b6d; font-size: clamp(2.2rem, 4vw, 3.7rem); letter-spacing: -.06em; line-height: 1.05; }
.procedure-intro h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.procedure-intro__content > p:not(.section-kicker) { margin: 1.25rem 0 0; color: #5c7483; font-size: 1rem; line-height: 1.8; }
.procedure-intro__suitability { display: grid; grid-template-columns: 90px 1fr; gap: 1rem; margin-top: 2rem; padding: 1rem 1.15rem; background: #e1f2f1; border-left: 3px solid #07858b; }
.procedure-intro__suitability span { color: #08767d; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.procedure-intro__suitability p { margin: 0; color: #254f63; font-size: .84rem; font-weight: 700; line-height: 1.6; }
.procedure-intro__visual { position: relative; margin: 0; }
.procedure-intro__visual::after { position: absolute; top: -26px; right: -26px; width: 80%; height: 84%; content: ''; border: 1px solid #8fd2d0; }
.procedure-intro__image { position: relative; z-index: 1; overflow: hidden; aspect-ratio: .95 / 1; background: #dce9ec; }
.procedure-intro__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(135deg, rgba(5,53,86,.05), rgba(5,53,86,.27)); }
.procedure-intro__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.procedure-intro__visual figcaption { position: relative; z-index: 2; display: grid; gap: .3rem; width: min(86%, 310px); margin: -2rem 0 0 -1.6rem; padding: 1rem 1.2rem; color: #fff; background: #083b6d; }
.procedure-intro__visual figcaption span { color: #8de4dd; font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.procedure-intro__visual figcaption strong { font-size: .84rem; line-height: 1.45; }

/* Spine surgery introduction */
.surgery-intro { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #fff; }
.surgery-intro__grid { display: grid; grid-template-columns: minmax(330px, .92fr) minmax(0, 1.08fr); gap: 0; align-items: stretch; }
.surgery-intro__visual { position: relative; margin: 0; min-height: 545px; }
.surgery-intro__image { position: absolute; inset: 0; overflow: hidden; background: #dce9ec; }
.surgery-intro__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(180deg, transparent 40%, rgba(5,44,74,.4)); }
.surgery-intro__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.surgery-intro__visual figcaption { position: absolute; z-index: 1; right: 1.5rem; bottom: 1.5rem; display: grid; gap: .25rem; padding: .85rem 1rem; color: #fff; border-left: 3px solid #86e4dd; background: rgba(3,40,69,.78); backdrop-filter: blur(5px); }
.surgery-intro__visual figcaption span { color: #8de4dd; font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.surgery-intro__visual figcaption strong { font-size: .82rem; }
.surgery-intro__content { display: flex; flex-direction: column; justify-content: center; padding: clamp(2.25rem, 5vw, 5rem); color: #fff; background: #083b6d; }
.surgery-intro__content .section-kicker { color: #8de4dd; }
.surgery-intro h2 { margin: 0; color: #fff; font-size: clamp(2.2rem, 4vw, 3.7rem); letter-spacing: -.06em; line-height: 1.05; }
.surgery-intro h2 em { color: #8de4dd; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.surgery-intro__content > p:not(.section-kicker) { margin: 1.4rem 0 0; color: #cce0e7; font-size: .98rem; line-height: 1.8; }
.surgery-intro__steps { display: grid; gap: 1rem; margin-top: 2rem; }
.surgery-intro__steps > div { display: grid; grid-template-columns: 35px 1fr; gap: .85rem; padding-top: 1rem; border-top: 1px solid rgba(183,227,229,.28); }
.surgery-intro__steps span { color: #8de4dd; font-size: .74rem; font-weight: 800; letter-spacing: .08em; }
.surgery-intro__steps p { margin: 0; color: #edf8f9; font-size: .86rem; font-weight: 700; line-height: 1.65; }

/* Common spine surgery procedures */
.surgery-procedures { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #eaf5f5; }
.surgery-procedures__heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.surgery-procedures h2 { margin: 0; color: #083b6d; font-size: clamp(2.2rem, 4vw, 3.7rem); letter-spacing: -.06em; line-height: 1.05; }
.surgery-procedures h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.surgery-procedures__heading > p { max-width: 420px; margin: 0 0 .25rem auto; color: #5c7483; font-size: .96rem; line-height: 1.75; }
.surgery-procedure-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.15rem; }
.surgery-procedure { min-height: 240px; display: flex; flex-direction: column; padding: 1.55rem; background: #fff; border-top: 3px solid #a0d8d4; box-shadow: 0 10px 24px rgba(8,62,81,.07); transition: transform .2s ease, box-shadow .2s ease; }
.surgery-procedure:hover { box-shadow: 0 17px 32px rgba(8,62,81,.13); transform: translateY(-4px); }
.surgery-procedure--featured { grid-column: span 2; min-height: 260px; color: #fff; background: #083b6d; border-color: #083b6d; }
.surgery-procedure__number { color: #0a888e; font-size: .73rem; font-weight: 800; letter-spacing: .1em; }
.surgery-procedure--featured .surgery-procedure__number { color: #8de4dd; }
.surgery-procedure h3 { margin: .9rem 0 .7rem; color: #093b62; font-size: clamp(1.2rem, 2vw, 1.5rem); line-height: 1.15; }
.surgery-procedure--featured h3 { color: #fff; font-size: clamp(1.45rem, 2.6vw, 2.1rem); }
.surgery-procedure p { margin: 0; color: #5a7483; font-size: .88rem; line-height: 1.7; }
.surgery-procedure--featured p { max-width: 690px; color: #d2e6eb; font-size: .96rem; }

/* Detailed procedure guide */
.procedure-guide { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #f4f9fa; }
.procedure-guide__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2.5rem, 7vw, 7rem); align-items: start; }
.procedure-guide__intro { position: sticky; top: 120px; }
.procedure-guide h2 { margin: 0; color: #083b6d; font-size: clamp(2.2rem, 4vw, 3.65rem); letter-spacing: -.06em; line-height: 1.04; }
.procedure-guide h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.procedure-guide__intro > p:not(.section-kicker) { max-width: 360px; margin: 1.35rem 0 0; color: #5c7483; font-size: .96rem; line-height: 1.75; }
.procedure-guide__list { border-top: 1px solid #bedcdf; }
.procedure-guide__list details { border-bottom: 1px solid #bedcdf; background: #fff; }
.procedure-guide__list summary { display: grid; grid-template-columns: 45px 1fr 30px; align-items: center; gap: .8rem; padding: 1.25rem 1.35rem; color: #093b62; cursor: pointer; list-style: none; }
.procedure-guide__list summary::-webkit-details-marker { display: none; }
.procedure-guide__list summary > span { color: #0a8b90; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.procedure-guide__list summary strong { font-size: clamp(1rem, 1.7vw, 1.2rem); line-height: 1.3; }
.procedure-guide__list summary i { position: relative; width: 27px; height: 27px; border: 1px solid #9cc9ca; border-radius: 50%; }
.procedure-guide__list summary i::before, .procedure-guide__list summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #087c82; transform: translate(-50%, -50%); transition: transform .2s ease; }
.procedure-guide__list summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.procedure-guide__list details[open] summary { background: #eaf7f6; color: #087980; }
.procedure-guide__list details[open] summary i { background: #087c82; border-color: #087c82; }
.procedure-guide__list details[open] summary i::before { background: #fff; }
.procedure-guide__list details[open] summary i::after { background: #fff; transform: translate(-50%, -50%) rotate(0); }
.procedure-guide__detail { padding: 0 1.35rem 1.5rem; background: #eaf7f6; }
.procedure-guide__detail > p { margin: 0; color: #4e6e7e; font-size: .93rem; line-height: 1.75; }
.procedure-guide__detail dl { display: grid; grid-template-columns: repeat(2, 1fr); gap: .85rem 1rem; margin: 0; }
.procedure-guide__detail dl > div { padding: .9rem 1rem; background: #fff; }
.procedure-guide__detail dl > div:last-child { grid-column: 1 / -1; }
.procedure-guide__detail dt { margin-bottom: .35rem; color: #087980; font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.procedure-guide__detail dd { margin: 0; color: #4d6d7c; font-size: .82rem; line-height: 1.65; }

/* Microscopy feature accordion */
.microscopy-features { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #eaf5f5; }
.microscopy-features__heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.microscopy-features h2 { max-width: 720px; margin: 0; color: #083b6d; font-size: clamp(2.2rem, 4vw, 3.7rem); letter-spacing: -.06em; line-height: 1.05; }
.microscopy-features h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.microscopy-features__heading > p { max-width: 420px; margin: 0 0 .25rem auto; color: #5c7483; font-size: .96rem; line-height: 1.75; }
.microscopy-feature-list { border-top: 1px solid #c2dfe1; }
.microscopy-feature-list details { border-bottom: 1px solid #c2dfe1; background: transparent; transition: background .2s ease; }
.microscopy-feature-list details[open] { background: #fff; }
.microscopy-feature-list summary { display: grid; grid-template-columns: 78px 1fr 36px; align-items: center; gap: 1rem; padding: 1.45rem 1.65rem; color: #093b62; cursor: pointer; list-style: none; }
.microscopy-feature-list summary::-webkit-details-marker { display: none; }
.microscopy-feature-list summary > span { color: #0a8a90; font-size: .76rem; font-weight: 800; letter-spacing: .1em; }
.microscopy-feature-list summary strong { font-size: clamp(1.08rem, 2vw, 1.35rem); }
.microscopy-feature-list summary i { position: relative; width: 30px; height: 30px; border: 1px solid #8fcacc; border-radius: 50%; }
.microscopy-feature-list summary i::before, .microscopy-feature-list summary i::after { position: absolute; top: 50%; left: 50%; width: 12px; height: 1.5px; content: ''; background: #087d83; transform: translate(-50%, -50%); transition: transform .2s ease; }
.microscopy-feature-list summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.microscopy-feature-list details[open] summary i { background: #087d83; border-color: #087d83; }
.microscopy-feature-list details[open] summary i::before { background: #fff; }
.microscopy-feature-list details[open] summary i::after { background: #fff; transform: translate(-50%, -50%) rotate(0); }
.microscopy-feature-list details > div { padding: 0 4.9rem 1.5rem 6.55rem; }
.microscopy-feature-list details > div p { max-width: 750px; margin: 0; color: #506f7e; font-size: .96rem; line-height: 1.8; }

/* Microscopy treatment cards */
.microscopy-treatments { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #093b62; }
.microscopy-treatments__heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.microscopy-treatments .section-kicker { color: #8de4dd; }
.microscopy-treatments h2 { max-width: 730px; margin: 0; color: #fff; font-size: clamp(2.2rem, 4vw, 3.7rem); letter-spacing: -.06em; line-height: 1.05; }
.microscopy-treatments h2 em { color: #8de4dd; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.microscopy-treatments__heading > p { max-width: 420px; margin: 0 0 .25rem auto; color: #c5dce4; font-size: .96rem; line-height: 1.75; }
.microscopy-treatment-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: rgba(174,222,222,.28); border: 1px solid rgba(174,222,222,.28); }
.microscopy-treatment-grid details { min-height: 118px; background: #fff; }
.microscopy-treatment-grid summary { display: grid; grid-template-columns: 42px 1fr 28px; align-items: center; gap: .75rem; padding: 1.25rem 1.35rem; color: #093b62; cursor: pointer; list-style: none; }
.microscopy-treatment-grid summary::-webkit-details-marker { display: none; }
.microscopy-treatment-grid summary > span { color: #0a8a90; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.microscopy-treatment-grid summary strong { font-size: clamp(1rem, 1.7vw, 1.18rem); line-height: 1.3; }
.microscopy-treatment-grid summary i { position: relative; width: 26px; height: 26px; border: 1px solid #9bc8c9; border-radius: 50%; }
.microscopy-treatment-grid summary i::before, .microscopy-treatment-grid summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #087b82; transform: translate(-50%, -50%); transition: transform .2s ease; }
.microscopy-treatment-grid summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.microscopy-treatment-grid details[open] { background: #f1fbfa; }
.microscopy-treatment-grid details[open] summary { background: #f1fbfa; }
.microscopy-treatment-grid details[open] summary i { background: #087b82; border-color: #087b82; }
.microscopy-treatment-grid details[open] summary i::before { background: #fff; }
.microscopy-treatment-grid details[open] summary i::after { background: #fff; transform: translate(-50%, -50%) rotate(0); }
.microscopy-treatment-grid details > div { padding: 0 1.35rem 1.35rem 5.1rem; background: #f1fbfa; }
.microscopy-treatment-grid details > div p { margin: 0; color: #4e6f7e; font-size: .91rem; line-height: 1.75; }

/* Common deformity accordion */
.deformity-types { padding-block: clamp(4.5rem, 8vw, 7.5rem); background: #eaf5f5; }
.deformity-types__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2.5rem, 7vw, 7rem); align-items: start; }
.deformity-types__intro { position: sticky; top: 120px; }
.deformity-types h2 { margin: 0; color: #083b6d; font-size: clamp(2.2rem, 4vw, 3.7rem); letter-spacing: -.06em; line-height: 1.05; }
.deformity-types h2 em { color: #07848a; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.deformity-types__intro > p:not(.section-kicker) { max-width: 360px; margin: 1.25rem 0 0; color: #5c7483; font-size: .96rem; line-height: 1.75; }
.deformity-accordion { border-top: 1px solid #bcdcdf; }
.deformity-accordion details { border-bottom: 1px solid #bcdcdf; }
.deformity-accordion summary { display: grid; grid-template-columns: 50px 1fr 28px; align-items: center; gap: .85rem; padding: 1.28rem 0; color: #083b6d; cursor: pointer; font-size: clamp(1.08rem, 2vw, 1.35rem); font-weight: 800; list-style: none; }
.deformity-accordion summary::-webkit-details-marker { display: none; }
.deformity-accordion__number { color: #0b8d91; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.deformity-accordion summary i { position: relative; width: 24px; height: 24px; border: 1px solid #77bfc0; border-radius: 50%; }
.deformity-accordion summary i::before, .deformity-accordion summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #087b82; transform: translate(-50%, -50%); transition: transform .2s ease; }
.deformity-accordion summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.deformity-accordion details[open] summary { color: #087b82; }
.deformity-accordion details[open] summary i { background: #087b82; border-color: #087b82; }
.deformity-accordion details[open] summary i::before { background: #fff; }
.deformity-accordion details[open] summary i::after { background: #fff; transform: translate(-50%, -50%) rotate(0); }
.deformity-accordion__content { padding: 0 3.7rem 1.6rem; }
.deformity-accordion__content p { max-width: 650px; margin: 0; color: #466574; font-size: .96rem; line-height: 1.8; }

/* Treatment options */
.treatment-options { padding-block: clamp(4.5rem, 8vw, 7.5rem); color: #fff; background: #07365f; }
.treatment-options__grid { display: grid; width: min(1180px, 100%); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2.5rem, 5vw, 5rem); align-items: start; margin-inline: auto; }
.treatment-options__intro { position: sticky; top: 110px; align-self: start; }
.treatment-options__intro .section-kicker { color: #8de4dd; }
.treatment-options h2 { margin: 0; color: #fff; font-size: clamp(2.2rem, 4vw, 3.65rem); letter-spacing: -.06em; line-height: 1.04; }
.treatment-options h2 em { color: #8de4dd; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.treatment-options__intro > p:not(.section-kicker) { max-width: 370px; margin: 1.35rem 0 0; color: #c8dce5; font-size: .96rem; line-height: 1.75; }
.treatment-options__list { background: #fff; }

/* Desktop layout: treatment list left, introduction right. */
.treatment-options__list { grid-column: 1; grid-row: 1; }
.treatment-options__intro { grid-column: 2; grid-row: 1; }
.treatment-options__list details { border-bottom: 1px solid #d9e6e9; }
.treatment-options__list details:last-child { border-bottom: 0; }
.treatment-options__list summary { display: grid; grid-template-columns: 45px 1fr 30px; align-items: center; gap: .8rem; padding: 1.22rem 1.35rem; color: #0a3b61; cursor: pointer; list-style: none; }
.treatment-options__list summary::-webkit-details-marker { display: none; }
.treatment-options__list summary > span { color: #159296; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.treatment-options__list summary strong { font-size: clamp(1rem, 1.7vw, 1.2rem); line-height: 1.3; }
.treatment-options__list summary i { position: relative; width: 28px; height: 28px; border: 1px solid #afced1; border-radius: 50%; }
.treatment-options__list summary i::before, .treatment-options__list summary i::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 1.5px; content: ''; background: #0a7c83; transform: translate(-50%, -50%); transition: transform .2s ease; }
.treatment-options__list summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.treatment-options__list details[open] summary { color: #087b82; background: #f2fbfb; }
.treatment-options__list details[open] summary i { background: #087b82; border-color: #087b82; }
.treatment-options__list details[open] summary i::before { background: #fff; }
.treatment-options__list details[open] summary i::after { background: #fff; transform: translate(-50%, -50%) rotate(0); }
.treatment-options__list details > div { padding: 0 4.2rem 1.45rem; background: #f2fbfb; }
.treatment-options__list details > div p { max-width: 650px; margin: 0; color: #4e6d7c; font-size: .93rem; line-height: 1.75; }

/* Final sticky-header rule: top bar scrolls; main navigation stays pinned. */
.site-header { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.98); box-shadow: 0 2px 12px rgba(7,59,109,.08); backdrop-filter: blur(12px); }
.header-navigation { position: static; top: auto; z-index: auto; box-shadow: none; backdrop-filter: none; }
.primary-nav__appointment a:hover b, .primary-nav__appointment a:focus-visible b {
  color: #073b6d;
  background: #65d8d0;
  border-color: #65d8d0;
  transform: translateX(2px);
}

/* Desktop dropdown hover and navigation-only sticky header */
.nav-dropdown:hover > .nav-dropdown__menu, .nav-dropdown:focus-within > .nav-dropdown__menu { opacity: 1; visibility: visible; transform: translateY(0); }
.primary-nav__appointment a b { font-size: 0; }
.primary-nav__appointment a b::after { content: '→'; font-size: 1.05rem; }

/* Clean, understated appointment button */
.primary-nav__appointment a {
  min-height: 45px;
  margin-left: 1rem;
  padding: .72rem 1.1rem;
  color: #fff;
  background: #0b5f9e;
  border: 1px solid #0b5f9e;
  border-radius: .35rem;
  box-shadow: 0 5px 12px rgba(11,95,158,.16);
  font-weight: 700;
}
.primary-nav__appointment a::before, .primary-nav__appointment a b { display: none; }
.primary-nav__appointment a:hover, .primary-nav__appointment a:focus-visible {
  color: #fff;
  background: #073b6d;
  border-color: #073b6d;
  box-shadow: 0 7px 16px rgba(7,59,109,.22);
  transform: translateY(-1px);
}
