/* Plain HTML/JS enhancements for the Cloudflare Pages edition. */
body.static-lock { overflow: hidden; }

.static-mobile-menu,
.static-artie-overlay {
  position: fixed;
  inset: 0;
  z-index: 80;
  visibility: hidden;
  opacity: 0;
  transition: opacity .25s ease, visibility .25s ease;
}

.static-mobile-menu.open,
.static-artie-overlay.open {
  visibility: visible;
  opacity: 1;
}

.static-mobile-menu {
  display: flex;
  justify-content: flex-end;
  background: #070b304f;
  -webkit-backdrop-filter: blur(14px) saturate(.82);
  backdrop-filter: blur(14px) saturate(.82);
}

.static-mobile-menu-panel {
  width: 75vw;
  min-width: 240px;
  max-width: 390px;
  height: 100dvh;
  display: flex;
  flex-direction: column;
  background: var(--warm, #fcfbf8);
  border-left: 1px solid color-mix(in srgb, var(--line, #dfe3ee) 72%, transparent);
  box-shadow: -28px 0 80px #070b3033;
  transform: translateX(100%);
  transition: transform .36s cubic-bezier(.2,.8,.2,1);
  overflow: hidden;
}

.static-mobile-menu.open .static-mobile-menu-panel { transform: translateX(0); }
.static-menu-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex: 0 0 auto; min-height: 75px; padding: 12px 14px; border-bottom: 1px solid var(--line, #dfe3ee); }
.static-menu-brand { min-width: 0; display: flex; align-items: center; gap: 9px; font-family: Georgia, serif; color: var(--ink, #11173d); font-size: 13px; line-height: 1.2; }
.static-menu-brand span { max-width: 132px; }
.static-menu-brand img { flex: 0 0 auto; width: 43px; height: 43px; object-fit: contain; border-radius: 50%; box-shadow: 0 7px 18px #11173d14; }
.static-menu-close,
.static-artie-close {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid #dfe3ee;
  border-radius: 14px;
  background: white;
  color: #20278f;
  cursor: pointer;
}
.static-menu-close { flex: 0 0 auto; width: 38px; height: 38px; border-color: var(--line, #dfe3ee); background: var(--card, #fff); color: var(--blue, #20278f); }
.static-menu-close svg { width: 17px; height: 17px; }
.static-menu-scroll { min-height: 0; padding: 18px 14px 22px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #aeb4ca transparent; }
.static-menu-kicker,
.static-menu-section-title { display: block; color: var(--muted, #5f6476); letter-spacing: .14em; text-transform: uppercase; font-size: 8px; font-weight: 900; }
.static-menu-links { display: grid; margin-top: 8px; border-top: 1px solid var(--line, #dfe3ee); }
.static-menu-links a { min-height: 47px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 3px; border-bottom: 1px solid var(--line, #dfe3ee); color: var(--ink, #11173d); font-family: Georgia, serif; font-size: 19px; transition: color .2s, padding .2s; }
.static-menu-links a > span { display: flex; align-items: baseline; gap: 10px; }
.static-menu-links a small { color: #969caf; font-family: Arial, sans-serif; font-size: 8px; font-weight: 900; }
.static-menu-links a > svg { width: 14px; height: 14px; color: #9ba1b7; }
.static-menu-links a.active { color: var(--red, #ed1c2e); padding-left: 7px; }
.static-menu-links a.active small,
.static-menu-links a.active > svg { color: var(--red, #ed1c2e); }
.static-menu-actions { display: grid; gap: 8px; margin-top: 16px; }
.static-menu-call,
.static-menu-book { min-height: 51px; display: flex; align-items: center; gap: 10px; border-radius: 15px; padding: 9px 12px; color: white; font-weight: 800; box-shadow: 0 12px 28px #11173d1a; }
.static-menu-call { background: linear-gradient(135deg, #20278f, #11173d); }
.static-menu-book { justify-content: center; background: linear-gradient(135deg, #ed1c2e, #c91022); }
.static-menu-action-icon { flex: 0 0 auto; width: 31px; height: 31px; display: grid; place-items: center; border-radius: 10px; background: #ffffff17; }
.static-menu-action-icon svg { width: 16px; height: 16px; }
.static-menu-call > span:last-child { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.static-menu-call small { color: #cdd1ff; font-size: 8px; font-weight: 700; }
.static-menu-call strong,
.static-menu-book strong { font-size: 11px; line-height: 1.25; }
.static-menu-connect { margin-top: 19px; }
.static-menu-socials { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; margin-top: 10px; }
.static-menu-socials a { min-width: 0; display: grid; justify-items: center; gap: 5px; color: var(--muted, #5f6476); font-size: 8px; font-weight: 800; }
.static-menu-socials a > span { width: 39px; height: 39px; display: grid; place-items: center; border: 1px solid var(--line, #dfe3ee); border-radius: 13px; background: var(--card, #fff); box-shadow: 0 7px 17px #11173d0b; transition: transform .2s, border-color .2s; }
.static-menu-socials a:hover > span,
.static-menu-socials a:focus-visible > span { border-color: currentColor; transform: translateY(-2px); }
.static-menu-socials svg { width: 18px; height: 18px; }
.static-menu-socials .whatsapp { color: #168b52; }
.static-menu-socials .instagram { color: #bd2a72; }
.static-menu-socials .maps { color: #d64135; }
.static-menu-socials .email { color: var(--blue, #20278f); }
.static-menu-theme { display: grid; gap: 10px; margin-top: 18px; padding: 12px; border: 1px solid var(--line, #dfe3ee); border-radius: 16px; background: color-mix(in srgb, var(--card, #fff) 80%, transparent); }
.static-menu-theme > div:first-child { display: flex; flex-direction: column; gap: 3px; }
.static-menu-theme strong { color: var(--ink, #11173d); font-size: 10px; }
.static-menu-theme > div:first-child small { color: var(--muted, #5f6476); font-size: 8px; }
.static-theme-switch { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; padding: 4px; border-radius: 12px; background: var(--blue-soft, #eef2ff); }
.static-theme-switch button { min-width: 0; min-height: 34px; display: flex; align-items: center; justify-content: center; gap: 5px; border: 0; border-radius: 9px; background: transparent; color: var(--muted, #5f6476); cursor: pointer; font-size: 8px; font-weight: 850; }
.static-theme-switch button svg { width: 14px; height: 14px; }
.static-theme-switch button.active { background: var(--card, #fff); color: var(--blue, #20278f); box-shadow: 0 5px 13px #11173d12; }
.static-menu-hours { display: flex; align-items: center; gap: 7px; margin: 13px 0 0; color: var(--muted, #5f6476); font-size: 8px; line-height: 1.4; }
.static-menu-hours > span { flex: 0 0 auto; width: 7px; height: 7px; border-radius: 50%; background: #20b866; box-shadow: 0 0 0 4px #20b8661c; }
.static-mobile-menu :where(a, button):focus-visible { outline: 3px solid #8991ef; outline-offset: 2px; }

.static-artie-overlay { background: #070b303d; backdrop-filter: blur(6px); }
.static-artie-drawer.artie-sheet[data-slot="sheet-content"] {
  position: absolute;
  inset: 0 0 0 auto;
  z-index: 1;
  width: min(460px, 100vw);
  max-width: 460px !important;
  height: 100%;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform .35s cubic-bezier(.2,.8,.2,1);
}
.static-artie-overlay.open .static-artie-drawer { transform: translateX(0); }
.static-artie-close { position: relative; z-index: 2; border-color: #ffffff32; background: #ffffff14; color: white; }
.static-artie-close:hover { background: #ffffff25; }
.static-artie-close svg { width: 18px; height: 18px; }
.static-artie-drawer .artie-chat-log { display: block; }
.static-artie-drawer .artie-suggestions { flex: 0 0 auto; }
.static-artie-drawer .artie-composer { flex: 0 0 auto; }
.static-artie-drawer .artie-disclaimer { flex: 0 0 auto; }
.static-artie-drawer .chat-message-body { overflow-wrap: anywhere; }

.static-chat-action-icon { font-size: 13px; line-height: 1; }
.static-chat-action.whatsapp .static-chat-action-icon { color: #17a65d; }
.static-chat-action.phone .static-chat-action-icon { color: #20278f; }
.static-chat-action.map .static-chat-action-icon { color: #ea4335; }

.reviews-carousel [data-slot="carousel-content"] { scroll-behavior: smooth; }
.reviews-carousel [data-slot="carousel-content"]::-webkit-scrollbar { display: none; }
.review-card.static-hidden { display: none; }

.static-build-note { display: none; }

.error-page {
  min-height: 100svh;
  width: min(760px, calc(100% - 36px));
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 70px 0;
}
.error-page > img { width: 110px; height: 110px; margin-bottom: 32px; border-radius: 50%; box-shadow: 0 18px 42px #11173d1c; }
.error-page h1 { max-width: 700px; margin-bottom: 20px; font-size: clamp(52px, 8vw, 86px); line-height: .94; }
.error-page > p { max-width: 570px; margin-bottom: 30px; color: #5f6476; font-size: 17px; line-height: 1.7; }

@media (max-width: 560px) {
  .static-artie-drawer.artie-sheet[data-slot="sheet-content"] { width: 100vw; max-width: 100vw !important; }
}

@media (prefers-reduced-motion: reduce) {

  .static-mobile-menu,
  .static-mobile-menu-panel,
  .static-artie-overlay,
  .static-artie-drawer { transition-duration: .01ms !important; }
}

/* Premium editorial redesign — September 2026 */
:root {
  --red: #e31b2c;
  --red-dark: #b90d1d;
  --blue: #242b93;
  --blue-dark: #0b1238;
  --blue-soft: #eef0ff;
  --ink: #0d1438;
  --muted: #62687b;
  --warm: #fbfaf7;
  --paper: #ffffff;
  --line: #e1e3eb;
  --aqua: #dceff1;
  --premium-shadow: 0 28px 80px rgba(11, 18, 56, .12);
  --premium-shadow-soft: 0 18px 50px rgba(11, 18, 56, .08);
  --premium-radius: 28px;
}

html {
  scroll-behavior: smooth;
  background: var(--warm);
}

body {
  background: var(--warm);
  color: var(--ink);
  font-family: Arial, Helvetica, sans-serif;
  text-rendering: optimizeLegibility;
}

h1,
h2,
h3,
.brand strong,
.static-menu-links a {
  font-family: Iowan Old Style, Baskerville, Georgia, Times New Roman, serif;
}

::selection {
  color: #fff;
  background: var(--blue);
}

.site-header {
  background: color-mix(in srgb, var(--warm) 90%, transparent);
  border-bottom: 1px solid rgba(13, 20, 56, .08);
  box-shadow: 0 8px 34px rgba(13, 20, 56, .035);
  -webkit-backdrop-filter: blur(22px) saturate(1.2);
  backdrop-filter: blur(22px) saturate(1.2);
}

.nav-shell {
  width: min(1320px, calc(100% - 56px));
  height: 88px;
  gap: 36px;
}

.brand {
  min-width: 310px;
  gap: 14px;
}

.brand img {
  width: 58px;
  height: 58px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(17, 23, 61, .12);
}

.brand strong {
  color: var(--ink);
  font-size: 20px;
  letter-spacing: -.01em;
}

.brand small {
  margin-top: 7px;
  color: var(--red);
  font-size: 10px;
  letter-spacing: .24em;
}

.desktop-nav {
  gap: 6px;
  margin-left: auto;
}

.desktop-nav a {
  position: relative;
  padding: 11px 14px;
  border-radius: 999px;
  color: #42475b;
  font-size: 13px;
  font-weight: 750;
  transition: color .25s ease, background .25s ease;
}

.desktop-nav a::after {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 6px;
  left: 14px;
  height: 2px;
  border-radius: 99px;
  background: var(--red);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .25s ease;
}

.desktop-nav a:hover,
.desktop-nav a.active {
  color: var(--blue);
  background: rgba(36, 43, 147, .055);
}

.desktop-nav a.active::after {
  transform: scaleX(1);
}

.nav-cta,
.primary-button,
.white-button,
.outline-light-button,
.secondary-button {
  min-height: 52px;
  border-radius: 999px;
  padding-right: 22px;
  padding-left: 22px;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.nav-cta,
.primary-button {
  background: linear-gradient(135deg, var(--blue), #151b68);
  box-shadow: 0 14px 28px rgba(32, 39, 143, .22);
}

.nav-cta:hover,
.primary-button:hover,
.white-button:hover,
.outline-light-button:hover,
.secondary-button:hover {
  transform: translateY(-2px);
}

.hero-section {
  min-height: calc(100svh - 88px);
  background:
    radial-gradient(circle at 88% 12%, rgba(227, 27, 44, .12), transparent 23%),
    radial-gradient(circle at 63% 78%, rgba(36, 43, 147, .13), transparent 30%),
    linear-gradient(135deg, #fff 0%, #fbfaf7 46%, #f1f2ff 100%);
}

.hero-section::after {
  content: "SPECIALIST DENTISTRY · HOSUR";
  position: absolute;
  right: -26px;
  bottom: 128px;
  color: rgba(13, 20, 56, .055);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .44em;
  transform: rotate(-90deg);
  transform-origin: right bottom;
}

.hero-orb {
  opacity: .48;
  filter: blur(2px);
}

.hero-grid {
  grid-template-columns: minmax(0, .88fr) minmax(470px, 1.12fr);
  gap: 74px;
  width: min(1320px, calc(100% - 56px));
  padding: 58px 0 76px;
}

.eyebrow {
  color: var(--blue);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .17em;
}

.hero-copy h1 {
  max-width: 760px;
  margin: 20px 0 22px;
  color: var(--red);
  font-size: clamp(72px, 7.35vw, 116px);
  line-height: .78;
  letter-spacing: -.075em;
}

.hero-copy h1 span {
  display: block;
  margin-bottom: 16px;
  color: var(--ink);
  font-size: .55em;
  line-height: .9;
  letter-spacing: -.045em;
}

.hero-copy .hero-specialty {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  max-width: 620px;
  margin: 0 0 18px;
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.hero-specialty i {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--red);
}

.hero-copy > p:not(.hero-specialty) {
  max-width: 610px;
  margin-bottom: 28px;
  color: #565c70;
  font-size: 17px;
  line-height: 1.72;
}

.hero-actions {
  gap: 11px;
}

.hero-proof {
  width: max-content;
  max-width: 100%;
  margin-top: 30px;
  padding: 12px 16px;
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 16px;
  background: rgba(255, 255, 255, .62);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}

.hero-visual {
  min-height: 650px;
}

.hero-photo-frame {
  position: absolute;
  inset: 0 22px 0 0;
  height: 650px;
  border: 8px solid rgba(255, 255, 255, .86);
  border-radius: 320px 320px 40px 40px;
  background: #e9e9ec;
  box-shadow: 0 34px 90px rgba(11, 18, 56, .2);
  overflow: hidden;
}

.hero-photo-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 58%, rgba(8, 13, 44, .15));
  pointer-events: none;
}

.hero-photo-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 47%;
  transform: scale(1.035);
  transition: transform 1.1s cubic-bezier(.2, .75, .2, 1);
}

.hero-visual:hover .hero-photo-frame img {
  transform: scale(1.07);
}

.hero-logo-seal {
  top: 38px;
  right: -8px;
  width: 104px;
  height: 104px;
  border: 8px solid rgba(255, 255, 255, .92);
  background: #fff;
  box-shadow: 0 18px 48px rgba(13, 20, 56, .2);
}

.hero-location-card {
  right: auto;
  bottom: 28px;
  left: -42px;
  max-width: 330px;
  padding: 15px 18px;
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 18px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 20px 50px rgba(13, 20, 56, .16);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.trust-strip {
  position: relative;
  z-index: 4;
  width: min(1120px, calc(100% - 48px));
  margin: -32px auto 0;
  padding: 0;
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 22px;
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--premium-shadow-soft);
  overflow: hidden;
}

.trust-strip .section-shell {
  width: 100%;
}

.trust-grid > div {
  padding: 23px 27px;
}

.home-specialists,
.services-section,
.clinic-gallery,
.doctors-section,
.legal-section,
.treatments-list,
.map-section {
  padding-top: 118px;
  padding-bottom: 118px;
}

.home-specialists {
  background: var(--warm);
}

.home-specialists-grid {
  grid-template-columns: .92fr 1.08fr;
  gap: 96px;
}

.home-specialists-portrait {
  min-height: 620px;
  border: 8px solid #fff;
  border-radius: 34px 190px 34px 34px;
  background: #e7e9ef;
  box-shadow: var(--premium-shadow);
}

.home-specialists-portrait img {
  min-height: 620px;
  object-position: 58% center;
  transition: transform .9s cubic-bezier(.2, .75, .2, 1);
}

.home-specialists-portrait:hover img {
  transform: scale(1.035);
}

.home-specialists-copy h2,
.section-heading h2,
.story-copy h2,
.reviews-intro h2,
.contact-banner h2,
.values-intro h2,
.gallery-intro h2,
.results-intro h2,
.faq-intro h2 {
  color: var(--ink);
  font-size: clamp(44px, 5vw, 70px);
  line-height: .98;
  letter-spacing: -.05em;
}

.home-doctor-list {
  gap: 12px;
  margin: 30px 0 26px;
}

.home-doctor-list article {
  padding: 20px 22px;
  border: 1px solid rgba(36, 43, 147, .1);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(13, 20, 56, .055);
  transition: transform .25s ease, border-color .25s ease;
}

.home-doctor-list article:hover {
  border-color: rgba(36, 43, 147, .24);
  transform: translateX(5px);
}

.home-doctor-list article:first-child {
  border-left: 4px solid var(--blue);
}

.home-doctor-list article:last-child {
  border-left: 4px solid var(--red);
}

.services-section {
  background:
    radial-gradient(circle at 8% 8%, rgba(227, 27, 44, .07), transparent 24%),
    linear-gradient(180deg, #f4f5fb, #fbfaf7);
}

.split-heading {
  align-items: end;
  margin-bottom: 48px;
}

.split-heading > p {
  max-width: 490px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.75;
}

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

.service-card,
.service-card:last-child:nth-child(3n+1) {
  grid-column: span 6;
  min-height: 414px;
  padding: 0 0 82px;
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 14px 40px rgba(13, 20, 56, .055);
  overflow: hidden;
}

.service-card:nth-child(1) { grid-column: span 7; }
.service-card:nth-child(2) { grid-column: span 5; }
.service-card:nth-child(3) { grid-column: span 4; }
.service-card:nth-child(4) { grid-column: span 8; }
.service-card:nth-child(5) { grid-column: span 5; }
.service-card:nth-child(6) { grid-column: span 7; }
.service-card:nth-child(7) { grid-column: span 12; min-height: 330px; padding-left: 55%; }

.service-card::before {
  display: none;
}

.service-card:hover {
  border-color: rgba(36, 43, 147, .22);
  box-shadow: 0 28px 68px rgba(13, 20, 56, .12);
  transform: translateY(-7px);
}

.service-media {
  position: relative;
  height: 235px;
  background: #e9edf2;
  overflow: hidden;
}

.service-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 66%, rgba(11, 18, 56, .16));
}

.service-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2, .75, .2, 1);
}

.service-card:hover .service-media img {
  transform: scale(1.055);
}

.service-card:nth-child(7) .service-media {
  position: absolute;
  inset: 0 50% 0 0;
  height: auto;
}

.service-index {
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 2;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .62);
  border-radius: 14px;
  color: #fff;
  background: rgba(11, 18, 56, .74);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.service-card h3 {
  margin: 24px 72px 10px 25px;
  color: var(--ink);
  font-size: 30px;
  line-height: 1.05;
}

.service-card p {
  max-width: 500px;
  margin: 0 68px 0 25px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}

.service-card > svg {
  right: 25px;
  bottom: 27px;
  width: 42px;
  height: 42px;
  padding: 11px;
  border-radius: 50%;
  color: #fff;
  background: var(--blue);
}

.service-card:nth-child(7) h3 {
  margin-top: 76px;
}

.clinic-story {
  position: relative;
  padding: 126px 0;
  background:
    radial-gradient(circle at 78% 22%, rgba(64, 77, 212, .34), transparent 30%),
    linear-gradient(135deg, #0a1032, #121a50);
}

.clinic-story::before {
  content: "";
  position: absolute;
  top: 0;
  right: 7%;
  width: 1px;
  height: 100%;
  background: rgba(255, 255, 255, .08);
}

.story-grid {
  gap: 92px;
}

.story-photo {
  border: 7px solid rgba(255, 255, 255, .12);
  border-radius: 32px 150px 32px 32px;
  box-shadow: 0 32px 82px rgba(0, 0, 0, .27);
}

.story-photo img {
  transition: transform .9s cubic-bezier(.2, .75, .2, 1);
}

.story-photo:hover img {
  transform: scale(1.035);
}

.story-copy h2,
.contact-banner h2 {
  color: #fff;
}

.story-copy li {
  border-bottom-color: rgba(255, 255, 255, .13);
}

.granite-section {
  background:
    linear-gradient(rgba(251, 250, 247, .88), rgba(251, 250, 247, .9)),
    url(../images/granite.webp) center / cover fixed;
}

.reviews-home,
.full-reviews {
  padding-top: 118px;
  padding-bottom: 118px;
}

.review-card {
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 24px;
  box-shadow: 0 16px 45px rgba(13, 20, 56, .07);
  transition: transform .28s ease, box-shadow .28s ease;
}

.review-card:hover {
  box-shadow: 0 25px 58px rgba(13, 20, 56, .12);
  transform: translateY(-5px);
}

.home-contact {
  padding: 90px 0;
  background: var(--warm);
}

.contact-banner {
  position: relative;
  padding: 58px 62px;
  border-radius: 34px 120px 34px 34px;
  background:
    radial-gradient(circle at 92% 16%, rgba(255, 255, 255, .18), transparent 20%),
    linear-gradient(135deg, var(--red-dark), var(--red));
  box-shadow: 0 30px 80px rgba(185, 13, 29, .22);
  overflow: hidden;
}

.contact-banner::after {
  content: "";
  position: absolute;
  right: 42px;
  bottom: -118px;
  width: 240px;
  height: 240px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 50%;
}

.contact-banner > * {
  position: relative;
  z-index: 1;
}

.site-footer {
  padding-top: 84px;
  background:
    radial-gradient(circle at 85% 8%, rgba(54, 66, 190, .26), transparent 25%),
    #090f30;
}

.footer-brand img {
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .2);
}

.inner-hero,
.legal-hero,
.legal-hero-terms {
  position: relative;
  padding: 112px 0 120px;
  background:
    radial-gradient(circle at 85% 15%, rgba(227, 27, 44, .1), transparent 22%),
    radial-gradient(circle at 10% 80%, rgba(36, 43, 147, .09), transparent 27%),
    linear-gradient(135deg, #fff, #f2f3ff);
}

.inner-hero::after {
  content: "";
  position: absolute;
  right: 7%;
  bottom: -90px;
  width: 250px;
  height: 250px;
  border: 1px solid rgba(36, 43, 147, .08);
  border-radius: 50%;
}

.inner-hero h1 {
  color: var(--ink);
  font-size: clamp(60px, 6.5vw, 94px);
  line-height: .88;
  letter-spacing: -.065em;
}

.inner-hero h1 em {
  color: var(--red);
}

.inner-hero-photo {
  height: 560px;
  border: 7px solid #fff;
  border-radius: 250px 34px 250px 34px;
  box-shadow: var(--premium-shadow);
}

.doctors-grid {
  gap: 24px;
}

.doctor-card {
  border: 1px solid rgba(13, 20, 56, .07);
  border-radius: 30px;
  background: #fff;
  box-shadow: var(--premium-shadow-soft);
  transition: transform .3s ease, box-shadow .3s ease;
}

.doctor-card:hover {
  box-shadow: var(--premium-shadow);
  transform: translateY(-6px);
}

.doctor-portrait {
  height: 630px;
  background: #e7e9ef;
}

.doctor-portrait img {
  transition: transform .9s cubic-bezier(.2, .75, .2, 1);
}

.doctor-card:hover .doctor-portrait img {
  transform: scale(1.025);
}

.doctor-card-body {
  padding: 38px 40px 42px;
}

.doctor-blue,
.doctor-red {
  background: #fff;
}

.doctor-blue .doctor-card-body {
  border-top: 5px solid var(--blue);
}

.doctor-red .doctor-card-body {
  border-top: 5px solid var(--red);
}

.values-grid article {
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 14px 38px rgba(13, 20, 56, .05);
}

.gallery-grid img {
  transition: transform .8s cubic-bezier(.2, .75, .2, 1);
}

.gallery-grid > div:hover img {
  transform: scale(1.035);
}

.treatments-list {
  background: var(--warm);
}

.treatments-list > .section-shell {
  display: grid;
  gap: 18px;
}

.treatment-row,
.treatment-row:first-child {
  grid-template-columns: 70px 1.12fr .88fr;
  gap: 30px;
  padding: 38px;
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 14px 42px rgba(13, 20, 56, .055);
  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.treatment-row:hover {
  border-color: rgba(36, 43, 147, .2);
  box-shadow: 0 22px 58px rgba(13, 20, 56, .1);
  transform: translateY(-4px);
}

.treatment-number {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 15px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), #151b68);
}

.treatment-main h2 {
  font-size: 32px;
  line-height: 1.05;
}

.treatment-more {
  grid-column: 2 / 4;
  border-color: rgba(13, 20, 56, .08);
  border-radius: 16px;
}

.treatment-more-grid > div {
  border-radius: 14px;
  background: #f7f7fb;
}

.results-section,
.faq-section,
.appointment-section {
  padding-top: 110px;
  padding-bottom: 110px;
}

.faq-item,
.legal-nav,
.legal-content,
.appointment-form,
.contact-summary > div {
  border-color: rgba(13, 20, 56, .08);
  box-shadow: 0 16px 48px rgba(13, 20, 56, .06);
}

.appointment-section {
  background:
    radial-gradient(circle at 15% 25%, rgba(227, 27, 44, .1), transparent 26%),
    linear-gradient(135deg, #0a1032, #151d58);
}

.appointment-form {
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 28px 100px 28px 28px;
}

.field-group input,
.field-group select {
  min-height: 52px;
  border-radius: 13px;
}

.full-reviews .reviews-intro {
  margin-bottom: 46px;
}

.review-filters button {
  border-radius: 999px;
}

.review-filters button.active {
  color: #fff;
  background: var(--blue);
  box-shadow: 0 10px 26px rgba(36, 43, 147, .2);
}

.legal-layout {
  align-items: start;
}

.legal-nav,
.legal-content {
  border-radius: 24px;
  background: #fff;
}

.legal-content section {
  scroll-margin-top: 110px;
}

.contact-rail {
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 22px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 18px 46px rgba(13, 20, 56, .12);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}

.assistant-button {
  box-shadow: 0 18px 48px rgba(13, 20, 56, .24);
}

.motion-ready .reveal-item {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .72s cubic-bezier(.2, .7, .2, 1), transform .72s cubic-bezier(.2, .7, .2, 1);
}

.motion-ready .reveal-item.reveal-visible {
  opacity: 1;
  transform: translateY(0);
}

.motion-ready .hero-copy,
.motion-ready .hero-visual {
  animation: hero-enter .9s .08s both cubic-bezier(.2, .75, .2, 1);
}

.motion-ready .hero-visual {
  animation-delay: .2s;
}

@keyframes hero-enter {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1080px) {
  .nav-shell,
  .hero-grid {
    width: min(100% - 40px, 920px);
  }

  .brand {
    min-width: 250px;
  }

  .hero-grid {
    grid-template-columns: 1fr 1fr;
    gap: 44px;
  }

  .hero-copy h1 {
    font-size: clamp(64px, 8vw, 88px);
  }

  .hero-visual,
  .hero-photo-frame {
    min-height: 560px;
    height: 560px;
  }

  .home-specialists-grid,
  .story-grid {
    gap: 56px;
  }
}

/* Final responsive polish — qualifications, visit panel, treatment imagery and loader. */
html,
body {
  max-width: 100%;
  overflow-x: clip;
}

.hero-proof {
  gap: 13px;
  padding: 16px 19px;
  border-color: rgba(36, 43, 147, .16);
  background: rgba(255, 255, 255, .82);
}

.hero-proof svg {
  flex: 0 0 auto;
  width: 25px;
  height: 25px;
  color: var(--red);
}

.hero-proof strong {
  color: var(--ink);
  font-size: 16px;
  line-height: 1.3;
}

.hero-proof small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}

.hero-photo-frame img {
  object-position: center 32%;
}

.home-credentials,
.home-visit {
  position: relative;
  isolation: isolate;
  padding: 118px 0;
  overflow: hidden;
}

.home-credentials {
  background: linear-gradient(155deg, #f1f3fc, #fbfaf7 58%);
}

.home-credentials::before,
.services-section::after,
.treatments-list::before,
.home-visit::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 260px;
  height: 260px;
  background: url("../images/logo-loader-clean.png") center / contain no-repeat;
  opacity: .035;
  pointer-events: none;
  animation: dental-mark-float 12s ease-in-out infinite alternate;
}

.home-credentials::before {
  top: 42px;
  right: 4%;
}

.services-section::after {
  right: -40px;
  bottom: 30px;
}

.treatments-list::before {
  top: 90px;
  left: -55px;
}

.home-visit::before {
  right: 3%;
  bottom: -80px;
}

@keyframes dental-mark-float {
  from { transform: translate3d(0, -8px, 0) rotate(-4deg); }
  to { transform: translate3d(12px, 15px, 0) rotate(4deg); }
}

.credentials-heading {
  margin-bottom: 48px;
}

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

.credential-card {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  min-height: 390px;
  border: 1px solid rgba(13, 20, 56, .08);
  border-radius: 28px;
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--premium-shadow-soft);
  overflow: hidden;
  transition: transform .3s ease, box-shadow .3s ease;
}

.credential-card:hover {
  box-shadow: var(--premium-shadow);
  transform: translateY(-5px);
}

.credential-profile {
  position: relative;
  min-height: 100%;
  background: #e9ebf3;
  overflow: hidden;
}

.credential-profile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.degree-mark {
  position: absolute;
  right: 14px;
  bottom: 14px;
  padding: 9px 12px;
  border: 1px solid rgba(255, 255, 255, .64);
  border-radius: 11px;
  color: #fff;
  background: rgba(13, 20, 56, .86);
  box-shadow: 0 10px 24px rgba(13, 20, 56, .22);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .12em;
}

.credential-copy {
  padding: 34px 30px;
}

.credential-label {
  display: block;
  margin-bottom: 14px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.credential-copy h3 {
  margin-bottom: 9px;
  color: var(--ink);
  font-size: 34px;
  line-height: 1;
  letter-spacing: -.035em;
}

.credential-copy > strong {
  display: block;
  min-height: 48px;
  color: var(--blue);
  font-size: 13px;
  line-height: 1.55;
}

.credential-red .credential-copy > strong {
  color: var(--red-dark);
}

.credential-copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 24px;
}

.credential-copy li {
  padding: 7px 10px;
  border: 1px solid rgba(36, 43, 147, .1);
  border-radius: 999px;
  color: #454b61;
  background: #f7f8fc;
  font-size: 10px;
  font-weight: 800;
}

.credential-blue {
  border-top: 5px solid var(--blue);
}

.credential-red {
  border-top: 5px solid var(--red);
}

.doctor-discipline {
  display: block;
  margin-bottom: 14px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.doctor-speciality {
  display: flex;
  align-items: center;
  min-height: 58px;
  margin: 20px 0 22px;
  padding: 14px 18px;
  border: 1px solid rgba(36, 43, 147, .13);
  border-left: 5px solid var(--blue);
  border-radius: 14px;
  color: var(--ink);
  background: linear-gradient(90deg, #eef0ff, #f8f9ff);
  font-family: Iowan Old Style, Baskerville, Georgia, Times New Roman, serif;
  font-size: 20px;
  line-height: 1.25;
  letter-spacing: -.015em;
}

.doctor-red .doctor-speciality {
  border-color: rgba(227, 27, 44, .14);
  border-left-color: var(--red);
  background: linear-gradient(90deg, #fff0f2, #fff9f9);
}

.treatment-row,
.treatment-row:first-child {
  position: relative;
  grid-template-columns: 250px minmax(0, 1.08fr) minmax(230px, .82fr);
  gap: 30px;
  padding: 0 34px 34px 0;
  align-items: start;
  overflow: hidden;
}

.treatment-media {
  grid-column: 1;
  grid-row: 1 / 4;
  height: 100%;
  min-height: 330px;
  background: #e9ebf3;
  overflow: hidden;
}

.treatment-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2, .75, .2, 1);
}

.treatment-row:hover .treatment-media img {
  transform: scale(1.045);
}

.treatment-number {
  position: absolute;
  z-index: 2;
  top: 17px;
  left: 17px;
  box-shadow: 0 12px 25px rgba(13, 20, 56, .2);
}

.treatment-main {
  grid-column: 2;
  margin-top: 34px;
}

.treatment-row > ul {
  grid-column: 3;
  margin-top: 34px;
}

.treatment-more {
  grid-column: 2 / 4;
}

.home-visit {
  background:
    radial-gradient(circle at 8% 8%, rgba(36, 43, 147, .08), transparent 24%),
    #f3f4fa;
}

.home-visit-grid {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 54px;
  align-items: stretch;
}

.home-visit-copy {
  padding: 12px 0;
}

.home-visit-copy h2 {
  margin: 18px 0 20px;
  color: var(--ink);
  font-family: Iowan Old Style, Baskerville, Georgia, Times New Roman, serif;
  font-size: clamp(42px, 4.5vw, 64px);
  line-height: .98;
  letter-spacing: -.05em;
}

.home-visit-copy > p {
  max-width: 570px;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.7;
}

.visit-hours {
  display: grid;
  gap: 5px;
  margin: 28px 0;
  padding: 21px 22px;
  border-left: 5px solid var(--red);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 14px 38px rgba(13, 20, 56, .07);
}

.visit-hours span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.visit-hours strong {
  color: var(--ink);
  font-size: 20px;
}

.visit-hours small {
  color: var(--blue);
  font-size: 13px;
  font-weight: 800;
}

.visit-actions {
  display: grid;
  gap: 9px;
}

.visit-actions a {
  display: grid;
  gap: 2px;
  padding: 13px 0;
  border-bottom: 1px solid rgba(13, 20, 56, .1);
}

.visit-actions span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.visit-actions strong {
  color: var(--ink);
  font-size: 14px;
  overflow-wrap: anywhere;
}

.visit-book {
  margin-top: 25px;
}

.home-map-frame {
  position: relative;
  min-height: 620px;
  border: 7px solid #fff;
  border-radius: 36px 140px 36px 36px;
  background: #e8eaf1;
  box-shadow: var(--premium-shadow);
  overflow: hidden;
}

.home-map-frame iframe {
  width: 100%;
  height: 100%;
  min-height: 620px;
  border: 0;
  filter: saturate(.76) contrast(1.04);
}

.home-map-frame > a {
  position: absolute;
  right: 20px;
  bottom: 20px;
  padding: 13px 17px;
  border-radius: 12px;
  color: #fff;
  background: var(--blue);
  box-shadow: 0 12px 30px rgba(13, 20, 56, .24);
  font-size: 12px;
  font-weight: 900;
}

.site-footer {
  padding-top: 100px;
}

.footer-grid {
  grid-template-columns: 1.3fr 1fr 1fr .72fr 1.15fr .72fr;
  gap: 50px 28px;
  align-items: start;
}

.footer-specialists a {
  display: grid;
  gap: 3px;
  margin-bottom: 17px;
}

.footer-specialists strong {
  color: #fff;
  font-size: 12px;
}

.footer-specialists span {
  color: rgba(255, 255, 255, .56);
  font-size: 10px;
  line-height: 1.5;
}

.footer-treatments {
  display: flex;
  flex-direction: column;
}

.footer-treatments a {
  margin-bottom: 10px;
}

@media (max-width: 1180px) {
  .credential-card {
    grid-template-columns: 160px minmax(0, 1fr);
  }

  .credential-copy {
    padding: 30px 24px;
  }

  .footer-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 920px) {
  .credentials-grid,
  .home-visit-grid {
    grid-template-columns: 1fr;
  }

  .credential-card {
    min-height: 350px;
  }

  .home-map-frame,
  .home-map-frame iframe {
    min-height: 500px;
  }

  .treatment-row,
  .treatment-row:first-child {
    grid-template-columns: 210px minmax(0, 1fr);
    padding-right: 28px;
  }

  .treatment-row > ul,
  .treatment-more {
    grid-column: 2;
  }

  .treatment-row > ul {
    margin-top: 0;
  }
}

@media (max-width: 820px) {
  .home-credentials,
  .home-visit {
    padding: 86px 0;
  }

  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {

  .hero-photo-frame img {
    object-position: center 27%;
    transform: scale(1.02);
  }

  .hero-proof strong {
    font-size: 15px;
  }

  .home-credentials,
  .home-visit {
    padding: 72px 0;
  }

  .credentials-heading {
    margin-bottom: 34px;
  }

  .credential-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .credential-profile {
    min-height: 330px;
    max-height: 390px;
  }

  .credential-profile img {
    object-position: center 17%;
  }

  .credential-copy {
    padding: 28px 23px 31px;
  }

  .credential-copy > strong {
    min-height: 0;
  }

  .doctor-speciality {
    min-height: 54px;
    padding: 13px 15px;
    font-size: 18px;
  }

  .treatment-row,
  .treatment-row:first-child {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 0 20px 24px;
  }

  .treatment-media {
    grid-column: 1;
    grid-row: 1;
    height: 220px;
    min-height: 220px;
    margin: 0 -20px;
  }

  .treatment-main,
  .treatment-row > ul,
  .treatment-more {
    grid-column: 1;
    margin-top: 0;
  }

  .treatment-main {
    padding-top: 8px;
  }

  .home-map-frame,
  .home-map-frame iframe {
    min-height: 430px;
  }

  .home-map-frame {
    border-width: 5px;
    border-radius: 26px 82px 26px 26px;
  }

  .home-map-frame > a {
    right: 12px;
    bottom: 12px;
    left: 12px;
    text-align: center;
  }

  .visit-hours strong {
    font-size: 17px;
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .footer-brand {
    grid-template-columns: 62px 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {

  .home-credentials::before,
  .services-section::after,
  .treatments-list::before,
  .home-visit::before,
  .treatment-media img,
  .credential-card {
    animation: none;
    transition: none;
  }
}

@media (max-width: 820px) {

  .nav-shell {
    width: calc(100% - 28px);
    height: 76px;
  }

  .brand img {
    width: 50px;
    height: 50px;
  }

  .hero-section {
    min-height: auto;
  }

  .hero-section::after {
    display: none;
  }

  .hero-grid {
    grid-template-columns: 1fr;
    gap: 42px;
    width: min(100% - 34px, 680px);
    padding: 58px 0 82px;
  }

  .hero-copy {
    max-width: 650px;
  }

  .hero-copy h1 {
    font-size: clamp(64px, 15vw, 92px);
  }

  .hero-visual,
  .hero-photo-frame {
    min-height: 600px;
    height: 600px;
  }

  .hero-photo-frame {
    right: 0;
  }

  .hero-location-card {
    left: 18px;
  }

  .trust-strip {
    width: min(100% - 34px, 680px);
  }

  .trust-grid {
    grid-template-columns: 1fr;
  }

  .trust-grid > div + div {
    border-top: 1px solid var(--line);
  }

  .home-specialists,
  .services-section,
  .clinic-gallery,
  .doctors-section,
  .legal-section,
  .treatments-list,
  .map-section,
  .reviews-home,
  .full-reviews {
    padding-top: 86px;
    padding-bottom: 86px;
  }

  .home-specialists-grid,
  .story-grid,
  .inner-hero-grid,
  .contact-hero-grid {
    grid-template-columns: 1fr;
  }

  .home-specialists-portrait,
  .home-specialists-portrait img {
    min-height: 560px;
  }

  .service-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-card,
  .service-card:nth-child(n),
  .service-card:last-child:nth-child(3n+1) {
    grid-column: span 1;
    min-height: 392px;
    padding-left: 0;
  }

  .service-card:nth-child(7) {
    grid-column: span 2;
  }

  .service-card:nth-child(7) .service-media {
    position: relative;
    inset: auto;
    height: 235px;
  }

  .service-card:nth-child(7) h3 {
    margin-top: 24px;
  }

  .contact-banner {
    padding: 48px 42px;
  }

  .inner-hero {
    padding: 80px 0 88px;
  }

  .inner-hero-photo {
    height: 500px;
  }

  .doctor-portrait {
    height: 590px;
  }

  .treatment-row,
  .treatment-row:first-child {
    grid-template-columns: 56px 1fr;
    gap: 22px;
    padding: 30px;
  }

  .treatment-row ul,
  .treatment-more {
    grid-column: 2;
  }
}

@media (max-width: 560px) {
  .nav-shell {
    height: 72px;
  }

  .brand {
    gap: 9px;
  }

  .brand img {
    width: 46px;
    height: 46px;
  }

  .brand strong {
    font-size: 15px;
  }

  .brand small {
    font-size: 8px;
  }

  .hero-grid {
    gap: 34px;
    width: calc(100% - 28px);
    padding: 46px 0 68px;
  }

  .hero-copy h1 {
    margin-top: 17px;
    font-size: clamp(58px, 18vw, 78px);
  }

  .hero-copy h1 span {
    margin-bottom: 12px;
  }

  .hero-copy .hero-specialty {
    gap: 7px;
    font-size: 10px;
    letter-spacing: .08em;
  }

  .hero-copy > p:not(.hero-specialty) {
    font-size: 16px;
  }

  .hero-actions {
    align-items: stretch;
  }

  .hero-actions a {
    justify-content: center;
    width: 100%;
  }

  .hero-proof {
    width: 100%;
  }

  .hero-visual,
  .hero-photo-frame {
    min-height: 470px;
    height: 470px;
  }

  .hero-photo-frame {
    inset: 0;
    border-width: 5px;
    border-radius: 190px 190px 26px 26px;
  }

  .hero-logo-seal {
    top: 18px;
    right: -5px;
    width: 80px;
    height: 80px;
    border-width: 6px;
  }

  .hero-location-card {
    right: 13px;
    bottom: 18px;
    left: 13px;
    max-width: none;
  }

  .trust-strip {
    width: calc(100% - 28px);
    margin-top: -24px;
  }

  .home-specialists,
  .services-section,
  .clinic-gallery,
  .doctors-section,
  .legal-section,
  .treatments-list,
  .map-section,
  .reviews-home,
  .full-reviews {
    padding-top: 72px;
    padding-bottom: 72px;
  }

  .home-specialists-grid {
    gap: 42px;
  }

  .home-specialists-portrait,
  .home-specialists-portrait img {
    min-height: 430px;
  }

  .home-specialists-portrait {
    border-width: 5px;
    border-radius: 24px 90px 24px 24px;
  }

  .home-specialists-copy h2,
  .section-heading h2,
  .story-copy h2,
  .reviews-intro h2,
  .contact-banner h2,
  .values-intro h2,
  .gallery-intro h2,
  .results-intro h2,
  .faq-intro h2 {
    font-size: 42px;
  }

  .split-heading {
    align-items: start;
    margin-bottom: 34px;
  }

  .service-grid {
    grid-template-columns: 1fr;
  }

  .service-card,
  .service-card:nth-child(n),
  .service-card:last-child:nth-child(3n+1) {
    grid-column: 1;
    min-height: 380px;
  }

  .service-media,
  .service-card:nth-child(7) .service-media {
    height: 220px;
  }

  .service-card h3,
  .service-card:nth-child(7) h3 {
    margin-top: 20px;
    font-size: 27px;
  }

  .clinic-story {
    padding: 78px 0;
  }

  .contact-banner {
    padding: 40px 24px;
    border-radius: 26px 70px 26px 26px;
  }

  .inner-hero {
    padding: 62px 0 72px;
  }

  .inner-hero h1 {
    font-size: 54px;
  }

  .inner-hero-photo {
    height: 380px;
    border-width: 5px;
    border-radius: 150px 24px 150px 24px;
  }

  .doctor-portrait {
    height: 520px;
  }

  .doctor-card-body {
    padding: 28px 25px 32px;
  }

  .treatment-row,
  .treatment-row:first-child {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 24px 20px;
  }

  .treatment-row ul,
  .treatment-more {
    grid-column: auto;
  }

  .static-mobile-menu-panel {
    width: 78vw;
  }

  .static-menu-head {
    min-height: 78px;
    padding: 13px 15px;
  }

  .static-menu-brand img {
    width: 48px;
    height: 48px;
    background: #fff;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .motion-ready .reveal-item,
  .motion-ready .hero-copy,
  .motion-ready .hero-visual,
  .hero-photo-frame img,
  .service-media img,
  .story-photo img,
  .doctor-portrait img {
    animation: none;
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Premium interaction revision: clearer specialists, scrollable treatment bento,
   responsive action controls and an expanded patient-information footer. */

.desktop-nav a.active {
  color: var(--blue);
  background: linear-gradient(180deg, #f8f8ff, #f0f1ff);
  box-shadow: inset 0 -3px 0 var(--red), 0 8px 18px rgba(13, 20, 56, .06);
}

.desktop-nav a.active::after {
  width: calc(100% - 22px);
  height: 3px;
  background: var(--red);
}

.nav-cta {
  white-space: nowrap;
}

.hero-proof {
  min-width: min(100%, 430px);
  padding: 19px 22px;
}

.hero-proof strong {
  font-size: 19px;
}

.hero-proof small {
  font-size: 14px;
}

.mobile-doctor-tabs {
  display: none;
}

.credential-card {
  min-height: 430px;
}

.credential-copy {
  padding: 38px 34px;
}

.credential-label {
  margin-bottom: 16px;
  font-size: 14px;
  letter-spacing: .1em;
}

.credential-copy h3 {
  margin-bottom: 12px;
  font-size: clamp(38px, 3.2vw, 50px);
}

.credential-copy > strong {
  min-height: 0;
  font-size: 17px;
  line-height: 1.45;
}

.credential-copy li {
  padding: 9px 12px;
  font-size: 13px;
}

.doctor-card-body h3 {
  margin: 10px 0 8px;
  color: var(--ink);
  font-size: clamp(44px, 4.2vw, 62px);
  line-height: .94;
  letter-spacing: -.05em;
}

.doctor-card-body .qualification {
  display: inline-flex;
  margin: 4px 0 16px;
  padding: 8px 13px;
  border: 1px solid rgba(36, 43, 147, .18);
  border-radius: 999px;
  color: var(--blue);
  background: #eef0ff;
  font-size: 17px;
  font-weight: 950;
  letter-spacing: .12em;
}

.doctor-red .doctor-card-body .qualification {
  border-color: rgba(227, 27, 44, .18);
  color: var(--red-dark);
  background: #fff0f2;
}

.doctor-title {
  max-width: 560px;
  color: #343a55;
  font-size: 19px;
  font-weight: 800;
  line-height: 1.45;
}

.doctor-speciality {
  min-height: 72px;
  margin-top: 24px;
  padding: 17px 20px;
  font-size: 24px;
  box-shadow: 0 12px 30px rgba(13, 20, 56, .06);
}

.values-section {
  position: relative;
  padding: 110px 0;
  background:
    radial-gradient(circle at 18% 18%, rgba(75, 91, 228, .33), transparent 28%),
    linear-gradient(135deg, #080e31, #11194d);
  overflow: hidden;
}

.values-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../images/logo-loader-clean.png") 92% 50% / 300px no-repeat;
  opacity: .035;
  pointer-events: none;
}

.values-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.values-grid article {
  min-height: 310px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 38px;
  border: 1px solid rgba(255, 255, 255, .82);
  border-top: 5px solid var(--red);
  background: linear-gradient(155deg, rgba(255, 255, 255, .98), rgba(245, 247, 255, .94));
  box-shadow: 0 28px 70px rgba(2, 7, 31, .28);
}

.values-grid article:nth-child(2) { border-top-color: #7885ee; }
.values-grid article:nth-child(3) { border-top-color: #37a989; }
.values-grid article svg {
  width: 52px;
  height: 52px;
  margin-bottom: auto;
  padding: 13px;
  border-radius: 16px;
  color: var(--red);
  background: #fff0f2;
}
.values-grid article:nth-child(2) svg { color: var(--blue); background: #eef0ff; }
.values-grid article:nth-child(3) svg { color: #167b61; background: #e7f7f2; }
.values-grid h3 {
  margin: 26px 0 12px;
  color: var(--ink);
  font-size: 29px;
  line-height: 1.05;
}
.values-grid p {
  color: #555d76;
  font-size: 16px;
  line-height: 1.7;
}

.services-section,
.treatment-bento-section {
  position: relative;
  background:
    linear-gradient(rgba(250, 249, 246, .91), rgba(244, 246, 252, .94)),
    url("../images/granite.webp") center / cover fixed;
}

.service-grid {
  max-height: min(900px, 78svh);
  padding: 6px 12px 26px 4px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scroll-snap-type: y proximity;
  scrollbar-gutter: stable;
  scrollbar-color: rgba(36, 43, 147, .35) transparent;
  scrollbar-width: thin;
}

.service-card,
.service-card:nth-child(n),
.service-card:last-child:nth-child(3n+1) {
  grid-column: span 4;
  min-height: 405px;
  padding-left: 0;
  scroll-snap-align: start;
}

.service-card:nth-child(1),
.service-card:nth-child(4),
.service-card:nth-child(7) { grid-column: span 8; }
.service-card:nth-child(12) { grid-column: span 12; }

.service-card:nth-child(7) .service-media,
.service-card:nth-child(12) .service-media,
.service-media {
  position: relative;
  inset: auto;
  height: 230px;
}

.service-card h3,
.service-card:nth-child(7) h3,
.service-card:nth-child(12) h3 {
  margin-top: 22px;
  font-size: 28px;
}

.service-card p {
  font-size: 15px;
}

.legacy-treatment-list {
  display: none !important;
}

.treatment-bento-section {
  padding: 112px 0;
}

.treatment-bento-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .7fr);
  gap: 60px;
  align-items: end;
  margin-bottom: 42px;
}

.treatment-bento-intro h2 {
  max-width: 760px;
  margin-top: 16px;
  color: var(--ink);
  font-size: clamp(44px, 5vw, 70px);
  line-height: .98;
  letter-spacing: -.05em;
}

.treatment-bento-intro > p {
  color: var(--muted);
  font-size: 16px;
  line-height: 1.7;
}

.treatment-bento-scroll {
  max-height: min(900px, 78svh);
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
  padding: 4px 13px 30px 4px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scroll-snap-type: y proximity;
  scrollbar-gutter: stable;
  scrollbar-color: rgba(36, 43, 147, .35) transparent;
  scrollbar-width: thin;
}

.treatment-bento-card {
  position: relative;
  grid-column: span 4;
  min-height: 520px;
  display: grid;
  grid-template-rows: 245px 1fr;
  border: 1px solid rgba(13, 20, 56, .09);
  border-radius: 28px;
  color: inherit;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 50px rgba(13, 20, 56, .08);
  overflow: hidden;
  scroll-margin-top: 100px;
  scroll-snap-align: start;
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.treatment-bento-card.bento-wide { grid-column: span 8; }
.treatment-bento-card:hover,
.treatment-bento-card:focus-visible {
  border-color: rgba(36, 43, 147, .28);
  box-shadow: 0 28px 70px rgba(13, 20, 56, .15);
  transform: translateY(-5px);
}
.treatment-bento-card:focus-visible { outline: 4px solid rgba(36, 43, 147, .2); outline-offset: 3px; }
.treatment-bento-card > img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.75,.2,1); }
.treatment-bento-card:hover > img { transform: scale(1.035); }
.treatment-bento-copy { display: flex; flex-direction: column; padding: 26px 28px 28px; }
.treatment-bento-copy > span { color: var(--blue); font-size: 13px; font-weight: 950; letter-spacing: .11em; text-transform: uppercase; }
.treatment-bento-copy h2 { margin: 11px 0 10px; color: var(--ink); font-size: 31px; line-height: 1; }
.treatment-bento-copy p { color: var(--muted); font-size: 15px; line-height: 1.65; }
.treatment-bento-copy ul { display: flex; flex-wrap: wrap; gap: 7px; margin: 20px 0 24px; }
.treatment-bento-copy li { padding: 7px 10px; border-radius: 999px; color: #41485f; background: #f1f3f8; font-size: 12px; font-weight: 800; }
.treatment-bento-copy strong { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; color: var(--blue); font-size: 15px; }
.treatment-bento-copy strong b { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--blue); font-size: 18px; }

.appointment-form.appointment-prefilled {
  box-shadow: 0 28px 70px rgba(36, 43, 147, .15), inset 0 4px 0 var(--blue);
}
.appointment-prefilled #appointment-concern {
  border-color: var(--blue);
  background: #f5f6ff;
}

.footer-appointment-panel {
  width: min(1240px, calc(100% - 44px));
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto auto;
  gap: 38px;
  align-items: center;
  margin: 0 auto 78px;
  padding: 42px 44px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(54, 66, 190, .24), rgba(255, 255, 255, .07));
  box-shadow: 0 28px 70px rgba(0, 0, 0, .22);
}
.footer-appointment-panel > div:first-child > span { color: #aeb6ff; font-size: 13px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.footer-appointment-panel h2 { max-width: 650px; margin-top: 10px; color: #fff; font-size: clamp(29px, 3vw, 43px); line-height: 1.05; }
.footer-hours-highlight { display: grid; gap: 4px; min-width: 215px; padding-left: 25px; border-left: 1px solid rgba(255, 255, 255, .18); }
.footer-hours-highlight small { color: #aeb6ff; font-size: 12px; font-weight: 850; text-transform: uppercase; }
.footer-hours-highlight strong { color: #fff; font-size: 17px; }
.footer-hours-highlight em { color: rgba(255, 255, 255, .68); font-size: 14px; font-style: normal; }
.footer-appointment-panel > a { min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 20px; border-radius: 15px; color: var(--blue); background: #fff; font-size: 14px; font-weight: 900; }
.footer-appointment-panel > a svg { width: 18px; height: 18px; }

.footer-patient-guide {
  width: min(1240px, calc(100% - 44px));
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 72px auto 0;
  border-top: 1px solid rgba(255, 255, 255, .12);
  border-bottom: 1px solid rgba(255, 255, 255, .12);
}
.footer-patient-guide section { min-height: 210px; display: grid; grid-template-columns: auto 1fr; gap: 18px; padding: 34px 30px; }
.footer-patient-guide section + section { border-left: 1px solid rgba(255, 255, 255, .12); }
.footer-patient-guide section > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: rgba(255, 255, 255, .1); font-size: 12px; font-weight: 900; }
.footer-patient-guide h2 { margin: 4px 0 10px; color: #fff; font-size: 20px; }
.footer-patient-guide p { color: rgba(255, 255, 255, .58); font-size: 14px; line-height: 1.7; }

.mobile-action-dock {
  display: none;
}

@keyframes mobile-call-attention {
  0%, 78%, 100% { transform: translateX(0) scale(1); box-shadow: 0 10px 26px rgba(36, 43, 147, .22); }
  82% { transform: translateX(-2px) rotate(-1deg) scale(1.025); }
  86% { transform: translateX(2px) rotate(1deg) scale(1.025); }
  90% { transform: translateX(-1px) rotate(-.5deg); }
  94% { transform: translateX(1px) rotate(.5deg); }
}

@media (max-width: 920px) {
  .treatment-bento-intro { grid-template-columns: 1fr; gap: 18px; }
  .treatment-bento-card,
  .treatment-bento-card.bento-wide { grid-column: span 6; }
  .footer-appointment-panel { grid-template-columns: 1fr 1fr; }
  .footer-appointment-panel > div:first-child { grid-column: 1 / -1; }
  .footer-patient-guide { grid-template-columns: 1fr; }
  .footer-patient-guide section + section { border-top: 1px solid rgba(255, 255, 255, .12); border-left: 0; }
}

@media (max-width: 820px) {

  .nav-shell { gap: 9px; }
  .nav-cta {
    display: flex !important;
    min-height: 42px;
    margin-left: auto;
    padding: 0 13px;
    border-radius: 13px;
    font-size: 12px;
  }
  .nav-cta svg { width: 16px; height: 16px; }
  .nav-cta-attention { animation: mobile-call-attention 5.2s ease-in-out infinite; }

  .home-credentials { padding-bottom: 94px; }
  .mobile-doctor-tabs {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5px;
    width: min(520px, calc(100% - 28px));
    margin: 0 auto -1px;
    padding: 5px;
    border: 1px solid rgba(13, 20, 56, .1);
    border-bottom: 0;
    border-radius: 18px 18px 0 0;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 -10px 30px rgba(13, 20, 56, .06);
  }
  .mobile-doctor-tabs button {
    min-height: 50px;
    border: 0;
    border-radius: 13px;
    color: var(--muted);
    background: transparent;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
  }
  .mobile-doctor-tabs button.active { color: #fff; background: linear-gradient(135deg, var(--blue), #151b68); box-shadow: 0 9px 22px rgba(36, 43, 147, .22); }
  .credentials-grid { display: block; }
  .credential-card { display: none; border-radius: 0 0 25px 25px; }
  .credential-card.active { display: grid; animation: doctor-card-in .38s ease both; }
  @keyframes doctor-card-in { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: translateY(0); } }

  .values-grid { grid-template-columns: 1fr; }
  .values-grid article { min-height: 265px; }

  .service-grid {
    max-height: 72svh;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    scroll-snap-type: y mandatory;
  }
  .service-card,
  .service-card:nth-child(n),
  .service-card:last-child:nth-child(3n+1) { grid-column: span 1; }
  .service-card:nth-child(12) { grid-column: span 2; }

  .treatment-bento-section { padding: 86px 0; }
  .treatment-bento-scroll {
    max-height: none;
    height: 72svh;
    display: flex;
    flex-direction: column;
    gap: 16px;
    scroll-snap-type: y mandatory;
  }
  .treatment-bento-card,
  .treatment-bento-card.bento-wide {
    flex: 0 0 calc(72svh - 28px);
    min-height: 520px;
    grid-template-rows: minmax(220px, 45%) 1fr;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .site-footer { padding-bottom: 112px; }
  .footer-appointment-panel { grid-template-columns: 1fr; gap: 24px; margin-bottom: 58px; padding: 34px 28px; }
  .footer-appointment-panel > div:first-child { grid-column: auto; }
  .footer-hours-highlight { padding: 18px 0 0; border-top: 1px solid rgba(255, 255, 255, .15); border-left: 0; }

  .contact-rail { display: none !important; }
  .assistant-wrap { bottom: 88px !important; }
  .mobile-action-dock {
    position: fixed;
    z-index: 68;
    right: 12px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 12px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 20px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 18px 48px rgba(13, 20, 56, .24);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
    backdrop-filter: blur(18px) saturate(1.15);
  }
  .mobile-action-dock a { min-height: 54px; display: flex; align-items: center; justify-content: center; gap: 7px; border-radius: 15px; color: var(--ink); font-size: 12px; }
  .mobile-action-dock a > span { width: 24px; height: 24px; display: grid; place-items: center; }
  .mobile-action-dock svg { width: 20px; height: 20px; }
  .mobile-action-dock .dock-call { color: #fff; background: linear-gradient(135deg, var(--blue), #11173d); }
  .mobile-action-dock .dock-whatsapp { color: #0d7641; background: #eaf8f0; }
  .mobile-action-dock .dock-book { color: #fff; background: linear-gradient(135deg, var(--red), #c91123); }
}

@media (max-width: 560px) {
  .brand { min-width: 0; }
  .brand span { min-width: 0; }
  .brand strong { white-space: nowrap; }
  .nav-cta { min-height: 40px; padding: 0 10px; font-size: 11px; }
  .menu-trigger { flex: 0 0 auto; }

  .credentials-heading h2 { font-size: 39px; }
  .credential-card.active { grid-template-columns: 1fr; }
  .credential-profile { height: 300px; min-height: 300px; }
  .credential-copy { padding: 29px 24px 32px; }
  .credential-copy h3 { font-size: 39px; }
  .credential-copy > strong { font-size: 16px; }
  .credential-copy li { font-size: 12px; }

  .doctor-card-body h3 { font-size: 43px; }
  .doctor-title { font-size: 17px; }
  .doctor-speciality { font-size: 22px; }

  .service-grid {
    display: flex;
    flex-direction: column;
    max-height: none;
    height: 70svh;
    gap: 14px;
    scroll-snap-type: y mandatory;
  }
  .service-card,
  .service-card:nth-child(n),
  .service-card:last-child:nth-child(3n+1) {
    flex: 0 0 calc(70svh - 26px);
    min-height: 500px;
    scroll-snap-stop: always;
  }
  .service-media,
  .service-card:nth-child(7) .service-media,
  .service-card:nth-child(12) .service-media { height: 43%; }

  .treatment-bento-intro h2 { font-size: 41px; }
  .treatment-bento-card,
  .treatment-bento-card.bento-wide { min-height: 500px; }
  .treatment-bento-copy { padding: 22px; }
  .treatment-bento-copy h2 { font-size: 28px; }

  .footer-appointment-panel,
  .footer-patient-guide { width: calc(100% - 28px); }
  .footer-patient-guide section { min-height: 0; padding: 28px 4px; }
  .mobile-action-dock { right: 8px; left: 8px; }
  .mobile-action-dock a { gap: 5px; font-size: 11px; }
}

@media (max-width: 390px) {
  .brand strong { font-size: 13px; }
  .brand small { font-size: 7px; }
  .brand img { width: 41px; height: 41px; }
  .nav-cta { padding: 0 8px; }
  .nav-cta span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .nav-cta-attention,
  .credential-card.active { animation: none; }
  .treatment-bento-card,
  .treatment-bento-card > img { transition: none; }
}

/* v4 interaction and layout revision */
.desktop-nav a::after,
.desktop-nav a.active::after {
  display: none !important;
}

.desktop-nav a.active {
  color: var(--blue);
  background: rgba(36, 43, 147, .085);
  box-shadow: 0 8px 20px rgba(13, 20, 56, .07);
}

.legacy-home-service-grid {
  display: none !important;
}

.services-section {
  overflow: visible;
}

.home-treatment-stack {
  max-width: 1120px;
  margin: 50px auto 0;
  padding: 6px 10px 150px;
}

.home-treatment-card,
.home-treatment-more {
  position: sticky;
  top: 104px;
  min-height: 400px;
  margin-bottom: 19vh;
  border: 1px solid rgba(13, 20, 56, .1);
  border-radius: 30px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 28px 75px rgba(13, 20, 56, .18);
}

.home-treatment-card {
  display: grid;
  grid-template-columns: minmax(330px, .88fr) minmax(0, 1.12fr);
  color: inherit;
  overflow: hidden;
  transform-origin: 50% 100%;
  transition: box-shadow .3s ease, border-color .3s ease;
}

.home-treatment-card:hover,
.home-treatment-card:focus-visible {
  border-color: rgba(36, 43, 147, .28);
  box-shadow: 0 34px 90px rgba(13, 20, 56, .24);
}

.home-treatment-card:focus-visible {
  outline: 4px solid rgba(36, 43, 147, .2);
  outline-offset: 4px;
}

.treatment-tilt-one { z-index: 1; transform: rotate(-.85deg); }
.treatment-tilt-two { z-index: 2; top: 112px; transform: rotate(.7deg); }
.treatment-tilt-three { z-index: 3; top: 120px; transform: rotate(-.45deg); }
.treatment-tilt-four { z-index: 4; top: 128px; transform: rotate(.6deg); }

.home-treatment-media {
  min-height: 400px;
  background: #e8eaf0;
  overflow: hidden;
}

.home-treatment-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .75s cubic-bezier(.2, .75, .2, 1);
}

.home-treatment-card:hover .home-treatment-media img {
  transform: scale(1.045);
}

.home-treatment-copy {
  display: flex;
  flex-direction: column;
  padding: 48px 50px 42px;
}

.home-treatment-copy > span,
.home-treatment-more > span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.home-treatment-copy h3,
.home-treatment-more h3 {
  margin: 15px 0 15px;
  color: var(--ink);
  font-family: Iowan Old Style, Baskerville, Georgia, Times New Roman, serif;
  font-size: clamp(40px, 4.1vw, 58px);
  line-height: .95;
  letter-spacing: -.045em;
}

.home-treatment-copy p,
.home-treatment-more p {
  max-width: 610px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.72;
}

.home-treatment-copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 25px 0 32px;
}

.home-treatment-copy li {
  padding: 8px 11px;
  border-radius: 999px;
  color: #3f465f;
  background: #f0f2f8;
  font-size: 11px;
  font-weight: 850;
}

.home-treatment-copy > strong {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: auto;
  color: var(--blue);
  font-size: 15px;
}

.home-treatment-copy > strong b {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--blue);
  font-size: 20px;
}

.home-treatment-more {
  z-index: 5;
  top: 136px;
  min-height: 390px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 58px 64px;
  color: #fff;
  background:
    radial-gradient(circle at 92% 14%, rgba(237, 28, 46, .34), transparent 25%),
    linear-gradient(135deg, #0a123b, #20278f);
}

.home-treatment-more > span,
.home-treatment-more h3,
.home-treatment-more p {
  color: #fff;
}

.home-treatment-more p {
  color: rgba(255, 255, 255, .76);
}

.home-treatment-more > div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.home-treatment-more .primary-button {
  color: var(--blue);
  background: #fff;
}

.home-treatment-more .secondary-button {
  border-color: rgba(255, 255, 255, .38);
  color: #fff;
  background: rgba(255, 255, 255, .1);
}

.reviews-intro .google-reviews-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 20px;
  padding: 13px 18px;
  border: 1px solid rgba(13, 20, 56, .1);
  border-radius: 15px;
  color: var(--ink);
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 12px 34px rgba(13, 20, 56, .08);
  font-size: 22px;
  font-weight: 950;
  letter-spacing: -.01em;
  text-transform: none;
}

.google-reviews-title .google-word {
  font-size: 24px;
  letter-spacing: -.08em;
}

.reviews-carousel {
  overflow: visible;
}

.review-arrow,
.review-arrow:disabled {
  z-index: 7;
  width: 48px !important;
  height: 48px !important;
  border: 1px solid rgba(36, 43, 147, .18) !important;
  color: var(--blue) !important;
  background: #fff !important;
  box-shadow: 0 15px 35px rgba(13, 20, 56, .16) !important;
  cursor: pointer !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.review-prev { left: -24px !important; }
.review-next { right: -24px !important; }

.review-arrow:hover {
  color: #fff !important;
  background: var(--blue) !important;
}

.home-contact-match {
  padding: 118px 0;
  background:
    radial-gradient(circle at 8% 8%, rgba(36, 43, 147, .08), transparent 24%),
    #f3f4fa;
}

.home-contact-match .home-visit-grid {
  grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr);
  gap: 64px;
}

.home-contact-match .home-map-frame {
  min-height: 620px;
  border-radius: 34px 120px 34px 34px;
}

.home-contact-match .home-map-frame iframe {
  min-height: 620px;
}

.home-contact-channels {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.home-contact-channels a {
  min-width: 0;
  min-height: 76px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid rgba(36, 43, 147, .11);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(13, 20, 56, .055);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.home-contact-channels a:hover,
.home-contact-channels a:focus-visible {
  border-color: rgba(36, 43, 147, .3);
  box-shadow: 0 16px 35px rgba(13, 20, 56, .1);
  transform: translateY(-3px);
}

.home-contact-channels a > svg {
  width: 25px;
  height: 25px;
  color: var(--blue);
}

.home-contact-channels a > span {
  min-width: 0;
  display: grid;
  gap: 3px;
  color: inherit;
  font-size: inherit;
  letter-spacing: normal;
  text-transform: none;
}

.home-contact-channels a strong {
  color: var(--ink);
  font-size: 13px;
}

.home-contact-channels a small {
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.credentials-grid,
.doctor-grid {
  align-items: stretch;
}

.credential-card {
  height: 100%;
}

.credential-copy {
  display: flex;
  flex-direction: column;
}

.credential-copy ul {
  margin-top: auto;
  padding-top: 24px;
}

.doctor-grid .doctor-card {
  height: 100%;
  display: grid;
  grid-template-rows: 620px minmax(0, 1fr);
}

.doctor-grid .doctor-card-body {
  display: flex;
  flex-direction: column;
}

.doctor-grid .doctor-focus {
  margin-bottom: 26px;
}

.doctor-grid .doctor-cta {
  margin-top: auto;
}

.footer-appointment-panel {
  display: none !important;
}

.site-footer {
  padding-top: 78px;
}

.footer-grid {
  grid-template-columns: 1.05fr 1.25fr .9fr 1.15fr .85fr;
  gap: 44px 30px;
}

.footer-brand {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 22px;
  align-items: center;
  padding-bottom: 36px;
  border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.footer-brand img {
  width: 88px;
  height: 88px;
  border-radius: 24px;
  object-fit: contain;
}

.footer-brand strong {
  display: block;
  color: #fff;
  font-family: Iowan Old Style, Baskerville, Georgia, Times New Roman, serif;
  font-size: clamp(25px, 3vw, 38px);
  line-height: 1;
}

.footer-brand p {
  max-width: 670px;
  margin-top: 9px;
  color: rgba(255, 255, 255, .64);
  font-size: 13px;
  line-height: 1.65;
}

.footer-grid h2 {
  margin-bottom: 17px;
  color: #fff;
  font-size: 13px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.footer-specialists strong {
  font-size: 13px;
}

.footer-specialists span {
  font-size: 11px;
}

.footer-treatments {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 14px;
}

.footer-treatments h2 {
  grid-column: 1 / -1;
}

@keyframes mobile-call-rhythm {
  0%, 72%, 100% { transform: rotate(0) scale(1); }
  76% { transform: rotate(-8deg) scale(1.06); }
  80% { transform: rotate(8deg) scale(1.08); }
  84% { transform: rotate(-6deg) scale(1.06); }
  88% { transform: rotate(5deg) scale(1.04); }
  92% { transform: rotate(0) scale(1); }
}

@media (max-width: 920px) {
  .home-treatment-card {
    grid-template-columns: minmax(280px, .88fr) minmax(0, 1.12fr);
  }

  .home-treatment-copy {
    padding: 38px 36px;
  }

  .home-contact-match .home-visit-grid {
    grid-template-columns: 1fr;
  }

  .home-contact-match .home-map-frame {
    order: 1;
  }

  .home-contact-match .home-visit-copy {
    order: 2;
  }

  .footer-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .nav-shell {
    gap: 8px;
  }

  .nav-cta,
  .nav-cta-attention {
    position: relative;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    margin-left: auto;
    padding: 0;
    border-radius: 50%;
    color: #fff;
    background: #18a85b;
    box-shadow: 0 10px 25px rgba(24, 168, 91, .34), 0 0 0 0 rgba(24, 168, 91, .24);
    animation: mobile-call-rhythm 4.2s ease-in-out infinite;
  }

  .nav-cta span {
    display: none;
  }

  .nav-cta svg {
    width: 20px;
    height: 20px;
  }

  .menu-trigger {
    margin-left: 0;
  }

  .static-mobile-menu-panel {
    width: min(78vw, 370px);
    min-width: 0;
    height: 100dvh;
  }

  .static-menu-head {
    min-height: 68px;
    padding: 9px 12px;
  }

  .static-menu-scroll {
    display: flex;
    flex-direction: column;
    padding: 11px 12px 13px;
    overflow: hidden;
  }

  .static-menu-links {
    margin-top: 5px;
  }

  .static-menu-links a {
    min-height: 41px;
    padding: 6px 3px;
    font-size: 16px;
  }

  .static-menu-actions {
    gap: 6px;
    margin-top: 10px;
  }

  .static-menu-call,
  .static-menu-book {
    min-height: 46px;
    border-radius: 13px;
    padding: 7px 10px;
  }

  .static-menu-call {
    background: linear-gradient(135deg, #16a85a, #0b8242);
  }

  .static-menu-connect {
    margin-top: 12px;
  }

  .static-menu-socials {
    margin-top: 7px;
  }

  .static-menu-socials a > span {
    width: 37px;
    height: 37px;
    border: 0;
    color: #fff;
  }

  .static-menu-socials .whatsapp > span { background: #19ad61; }
  .static-menu-socials .instagram > span { background: radial-gradient(circle at 30% 105%, #ffd600 0 22%, #ff7a00 30%, #e1306c 52%, #833ab4 76%, #405de6 100%); }
  .static-menu-socials .maps > span { background: #4285f4; }
  .static-menu-socials .email > span { background: var(--blue); }

  .static-menu-theme {
    grid-template-columns: minmax(0, 1fr) 126px;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    padding: 9px;
  }

  .static-menu-hours {
    margin-top: 9px;
  }

  .home-treatment-stack {
    margin-top: 34px;
    padding: 4px 3px 100px;
  }

  .home-treatment-card,
  .home-treatment-more {
    top: 82px;
    min-height: 505px;
    margin-bottom: 38vh;
    border-radius: 24px;
  }

  .home-treatment-card {
    grid-template-columns: 1fr;
    grid-template-rows: 220px minmax(0, 1fr);
  }

  .treatment-tilt-one { transform: rotate(-.45deg); }
  .treatment-tilt-two { top: 87px; transform: rotate(.4deg); }
  .treatment-tilt-three { top: 92px; transform: rotate(-.3deg); }
  .treatment-tilt-four { top: 97px; transform: rotate(.35deg); }

  .home-treatment-media {
    min-height: 220px;
  }

  .home-treatment-copy {
    padding: 28px 27px 26px;
  }

  .home-treatment-copy h3,
  .home-treatment-more h3 {
    font-size: 39px;
  }

  .home-treatment-copy ul {
    margin: 18px 0 22px;
  }

  .home-treatment-more {
    top: 102px;
    min-height: 430px;
    padding: 42px 30px;
  }

  .reviews-home {
    padding-bottom: 128px;
  }

  .review-prev,
  .review-next {
    top: auto !important;
    bottom: -72px;
    transform: none !important;
  }

  .review-prev {
    right: calc(50% + 7px) !important;
    left: auto !important;
  }

  .review-next {
    right: auto !important;
    left: calc(50% + 7px) !important;
  }

  .home-contact-match {
    padding: 86px 0;
  }

  .home-contact-match .home-map-frame,
  .home-contact-match .home-map-frame iframe {
    min-height: 480px;
  }

  .doctor-grid .doctor-card {
    grid-template-rows: 540px minmax(0, 1fr);
  }

  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .footer-brand {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  .footer-brand img {
    width: 72px;
    height: 72px;
  }
}

@media (max-width: 560px) {
  .nav-cta,
  .nav-cta-attention {
    display: grid !important;
    place-items: center;
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
  }

  .home-treatment-card,
  .home-treatment-more {
    min-height: 500px;
    margin-bottom: 34vh;
  }

  .home-treatment-card {
    grid-template-rows: 205px minmax(0, 1fr);
  }

  .home-treatment-copy {
    padding: 24px 22px;
  }

  .home-treatment-copy h3,
  .home-treatment-more h3 {
    font-size: 35px;
  }

  .home-treatment-copy p,
  .home-treatment-more p {
    font-size: 14px;
  }

  .home-treatment-more {
    min-height: 440px;
    padding: 34px 24px;
  }

  .home-treatment-more > div {
    flex-direction: column;
  }

  .home-treatment-more > div a {
    width: 100%;
  }

  .reviews-intro .google-reviews-title {
    padding: 11px 14px;
    font-size: 19px;
  }

  .google-reviews-title .google-word {
    font-size: 21px;
  }

  .home-contact-channels {
    grid-template-columns: 1fr;
  }

  .home-contact-match .home-map-frame,
  .home-contact-match .home-map-frame iframe {
    min-height: 420px;
  }

  .doctor-grid .doctor-card {
    grid-template-rows: 500px minmax(0, 1fr);
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 31px;
  }

  .footer-brand {
    grid-column: auto;
    grid-template-columns: 65px minmax(0, 1fr);
    padding-bottom: 29px;
  }

  .footer-brand img {
    width: 65px;
    height: 65px;
    border-radius: 18px;
  }

  .footer-treatments {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-height: 720px) and (max-width: 820px) {
  .static-menu-head { min-height: 60px; }
  .static-menu-brand img { width: 38px; height: 38px; }
  .static-menu-scroll { padding-top: 7px; padding-bottom: 8px; }
  .static-menu-links a { min-height: 36px; font-size: 15px; }
  .static-menu-actions { margin-top: 7px; }
  .static-menu-call, .static-menu-book { min-height: 41px; }
  .static-menu-connect, .static-menu-theme { margin-top: 8px; }
  .static-menu-socials a > span { width: 32px; height: 32px; }
  .static-menu-hours { margin-top: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  .nav-cta,
  .nav-cta-attention,
  .home-treatment-card,
  .home-treatment-media img {
    animation: none !important;
    transition: none !important;
  }
}

/* v5 hero, treatment-stack and mobile-map refinement */
.home-treatment-stack {
  width: min(100%, 1040px);
  max-width: 1040px;
  margin-inline: auto;
  padding-inline: clamp(18px, 4vw, 44px);
  isolation: isolate;
}

.home-treatment-card,
.home-treatment-more {
  width: 100%;
  margin-right: auto;
  margin-bottom: 15vh;
  margin-left: auto;
  backface-visibility: hidden;
  transform-origin: 50% 100%;
  will-change: transform;
  scroll-margin-top: 130px;
  transition: box-shadow .42s cubic-bezier(.22, .72, .2, 1), border-color .3s ease;
}

.treatment-tilt-one {
  transform: translateZ(0) rotate(-.35deg);
}

.treatment-tilt-two {
  top: 112px;
  transform: translateZ(0) rotate(.28deg);
}

.treatment-tilt-three {
  top: 120px;
  transform: translateZ(0) rotate(-.2deg);
}

.treatment-tilt-four {
  top: 128px;
  transform: translateZ(0) rotate(.24deg);
}

.home-treatment-more {
  transform: translateZ(0);
}

.map-column {
  min-width: 0;
}

.map-below-link {
  display: none;
}

@media (max-width: 920px) {
  .home-contact-match .map-column {
    order: 1;
  }
}

@media (max-width: 820px) {
  .home-treatment-stack {
    width: 100%;
    padding-right: 8px;
    padding-left: 8px;
  }

  .home-treatment-card,
  .home-treatment-more {
    margin-bottom: 28vh;
    scroll-margin-top: 92px;
  }

  .treatment-tilt-one {
    transform: translateZ(0) rotate(-.2deg);
  }

  .treatment-tilt-two {
    top: 87px;
    transform: translateZ(0) rotate(.17deg);
  }

  .treatment-tilt-three {
    top: 92px;
    transform: translateZ(0) rotate(-.12deg);
  }

  .treatment-tilt-four {
    top: 97px;
    transform: translateZ(0) rotate(.15deg);
  }

  .map-below-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 50px;
    margin-top: 13px;
    padding: 13px 18px;
    border: 1px solid rgba(36, 43, 147, .18);
    border-radius: 15px;
    color: #fff;
    background: var(--blue);
    box-shadow: 0 12px 28px rgba(36, 43, 147, .2);
    font-size: 14px;
    font-weight: 900;
    text-align: center;
  }

  .map-below-link svg {
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
  }
}

@media (max-width: 560px) {
  .home-treatment-stack {
    padding-right: 0;
    padding-left: 0;
  }

  .home-treatment-card,
  .home-treatment-more {
    margin-bottom: 25vh;
  }
}

/* v6: polished brand handoff, clearer specialist copy and natural treatment flow */
:root {
  --home-stack-top: clamp(136px, calc((100svh - 430px) / 2), 196px);
}

.site-header .desktop-nav { animation-delay: 1.86s; }
.site-header .nav-cta,
.site-header .menu-trigger { animation-delay: 1.94s; }

.motion-ready body[data-page="home"] .hero-copy,
.motion-ready body[data-page="home"] .hero-visual {
  animation: none;
}

.motion-ready body[data-page="home"] .hero-copy > * {
  opacity: 0;
  transform: translateY(20px);
  animation: hero-text-reveal .68s cubic-bezier(.2, .75, .2, 1) both;
}

.motion-ready body[data-page="home"] .hero-copy > :nth-child(1) { animation-delay: 1.62s; }
.motion-ready body[data-page="home"] .hero-copy > :nth-child(2) { animation-delay: 1.72s; }
.motion-ready body[data-page="home"] .hero-copy > :nth-child(3) { animation-delay: 1.82s; }
.motion-ready body[data-page="home"] .hero-copy > :nth-child(4) { animation-delay: 1.92s; }
.motion-ready body[data-page="home"] .hero-copy > :nth-child(5) { animation-delay: 2.02s; }
.motion-ready body[data-page="home"] .hero-copy > :nth-child(6) { animation-delay: 2.12s; }

.motion-ready body[data-page="home"] .hero-visual {
  animation: hero-photo-reveal .9s 1.7s cubic-bezier(.18, .78, .2, 1) both;
}

@keyframes hero-text-reveal {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes hero-photo-reveal {
  from { opacity: 0; transform: translateY(24px) scale(.975); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.hero-photo-frame img {
  object-position: center center;
}

.home-doctor-list article {
  display: grid;
  grid-template-columns: minmax(210px, .78fr) minmax(0, 1.22fr);
  gap: 24px;
  align-items: center;
  padding: 25px 26px;
}

.home-doctor-list strong {
  color: var(--ink);
  font-family: Iowan Old Style, Baskerville, Georgia, Times New Roman, serif;
  font-size: 22px;
  line-height: 1.12;
}

.home-doctor-list span {
  color: #343a55;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.45;
}

.home-treatment-stack {
  --stack-top: var(--home-stack-top);
  max-width: 1080px;
  padding-top: 28px;
  padding-bottom: 64px;
}

.home-treatment-card,
.home-treatment-more {
  top: var(--stack-top);
  margin-bottom: 16vh;
}

.treatment-tilt-two { top: calc(var(--stack-top) + 8px); }
.treatment-tilt-three { top: calc(var(--stack-top) + 16px); }
.treatment-tilt-four { top: calc(var(--stack-top) + 24px); }

.home-treatment-more {
  top: calc(var(--stack-top) + 32px);
  margin-bottom: 0;
}

body[data-page="treatments"] .treatment-bento-scroll {
  max-height: none;
  height: auto;
  padding: 4px 4px 18px;
  overflow: visible;
  overscroll-behavior: auto;
  scroll-snap-type: none;
  scrollbar-gutter: auto;
}

body[data-page="treatments"] .treatment-bento-card,
body[data-page="treatments"] .treatment-bento-card.bento-wide {
  scroll-snap-align: none;
  scroll-snap-stop: normal;
}

body[data-page="treatments"] .treatment-bento-copy > span {
  font-size: 14px;
}

body[data-page="treatments"] .treatment-bento-copy h2 {
  font-size: clamp(31px, 2.5vw, 39px);
  line-height: 1.05;
}

body[data-page="treatments"] .treatment-bento-copy p {
  color: #50576f;
  font-size: 16px;
  line-height: 1.7;
}

body[data-page="treatments"] .treatment-bento-copy li {
  font-size: 13px;
}

body[data-page="treatments"] .treatment-bento-copy strong {
  font-size: 16px;
}

@media (max-width: 820px) {

  .home-doctor-list article {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 22px 21px;
  }

  .home-doctor-list strong { font-size: 20px; }
  .home-doctor-list span { font-size: 16px; }

  .home-treatment-stack {
    --stack-top: 82px;
    padding-top: 8px;
    padding-bottom: 24px;
  }

  .home-treatment-card {
    margin-bottom: 18svh;
  }

  .home-treatment-more {
    margin-bottom: 0;
  }

  .treatment-tilt-two { top: calc(var(--stack-top) + 5px); }
  .treatment-tilt-three { top: calc(var(--stack-top) + 10px); }
  .treatment-tilt-four { top: calc(var(--stack-top) + 15px); }
  .home-treatment-more { top: calc(var(--stack-top) + 20px); }

  body[data-page="treatments"] .treatment-bento-scroll {
    height: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    overflow: visible;
  }

  body[data-page="treatments"] .treatment-bento-card,
  body[data-page="treatments"] .treatment-bento-card.bento-wide {
    grid-column: auto;
    min-height: 540px;
    display: grid;
    grid-template-rows: 230px minmax(0, 1fr);
  }
}

@media (max-width: 560px) {
  .home-treatment-stack {
    padding-bottom: 0;
  }

  .home-treatment-card {
    margin-bottom: 15svh;
  }

  .home-treatment-more {
    min-height: 390px;
    margin-bottom: 0;
  }

  body[data-page="treatments"] .treatment-bento-scroll {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body[data-page="treatments"] .treatment-bento-card,
  body[data-page="treatments"] .treatment-bento-card.bento-wide {
    min-height: 0;
    grid-template-rows: 225px auto;
  }

  body[data-page="treatments"] .treatment-bento-copy {
    min-height: 310px;
    padding: 25px 23px 26px;
  }

  body[data-page="treatments"] .treatment-bento-copy h2 {
    font-size: 32px;
  }
}

@media (prefers-reduced-motion: reduce) {

  .site-header .brand img,
  .site-header .brand > span,
  .site-header .desktop-nav,
  .site-header .nav-cta,
  .site-header .menu-trigger,
  .motion-ready body[data-page="home"] .hero-copy > *,
  .motion-ready body[data-page="home"] .hero-visual {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}

/* v7 final mobile navigation, action contrast and light-first refinement */
@media (max-width: 820px) {
  .static-mobile-menu-panel {
    width: min(78vw, 390px);
    height: 100dvh;
    max-height: 100dvh;
  }

  .static-menu-head {
    min-height: 72px;
    padding: 10px 15px;
  }

  .static-menu-scroll {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    padding: 14px 16px max(18px, env(safe-area-inset-bottom));
    overflow: hidden;
  }

  .static-menu-kicker,
  .static-menu-section-title {
    font-size: 9px;
  }

  .static-menu-links {
    margin-top: 7px;
  }

  .static-menu-links a {
    min-height: 50px;
    padding: 8px 5px;
    font-size: 19px;
  }

  .static-menu-links a small {
    font-size: 9px;
  }

  .static-menu-links a > svg {
    width: 17px;
    height: 17px;
  }

  .static-menu-actions {
    gap: 8px;
    margin-top: 14px;
  }

  .static-menu-call,
  .static-menu-book {
    min-height: 56px;
    border-radius: 16px;
    padding: 9px 13px;
  }

  .static-menu-action-icon {
    width: 36px;
    height: 36px;
  }

  .static-menu-call small {
    font-size: 9px;
  }

  .static-menu-call strong,
  .static-menu-book strong {
    font-size: 13px;
  }

  .static-menu-connect {
    margin-top: 14px;
  }

  .static-menu-socials {
    gap: 8px;
    margin-top: 9px;
  }

  .static-menu-socials a {
    gap: 6px;
    font-size: 9px;
  }

  .static-menu-socials a > span {
    width: 44px;
    height: 44px;
    border-radius: 14px;
  }

  .static-menu-socials svg {
    width: 21px;
    height: 21px;
  }

  .static-menu-theme {
    grid-template-columns: minmax(0, 1fr) 138px;
    min-height: 58px;
    gap: 10px;
    margin-top: 14px;
    padding: 10px;
  }

  .static-menu-theme strong {
    font-size: 11px;
  }

  .static-theme-switch button {
    min-height: 38px;
    font-size: 9px;
  }

  .static-menu-hours {
    margin-top: auto;
    padding-top: 12px;
    font-size: 9px;
    font-weight: 750;
  }
}

@media (max-height: 720px) and (max-width: 820px) {
  .static-menu-head {
    min-height: 62px;
    padding-block: 7px;
  }

  .static-menu-brand img {
    width: 40px;
    height: 40px;
  }

  .static-menu-scroll {
    padding-top: 8px;
    padding-bottom: max(10px, env(safe-area-inset-bottom));
  }

  .static-menu-links {
    margin-top: 4px;
  }

  .static-menu-links a {
    min-height: 43px;
    padding-block: 5px;
    font-size: 17px;
  }

  .static-menu-actions {
    gap: 6px;
    margin-top: 8px;
  }

  .static-menu-call,
  .static-menu-book {
    min-height: 48px;
    padding-block: 6px;
  }

  .static-menu-connect,
  .static-menu-theme {
    margin-top: 8px;
  }

  .static-menu-socials {
    margin-top: 5px;
  }

  .static-menu-socials a > span {
    width: 36px;
    height: 36px;
  }

  .static-menu-theme {
    min-height: 50px;
    padding: 7px;
  }

  .static-theme-switch button {
    min-height: 32px;
  }

  .static-menu-hours {
    padding-top: 7px;
  }
}
