:root {
  --microscopia-navy: #06192a;
  --microscopia-tan: #ad998a;
  --focus-ring: #f3d8c5;
}

html {
  max-width: 100%;
  overflow-x: clip;
  scroll-behavior: smooth;
}

body {
  max-width: 100%;
  overflow-x: clip;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.w-webflow-badge { display: none !important; }

body.microscopia-menu-open { overflow: hidden !important; }

.fullscreen-menu.is-microscopia-open {
  z-index: 9999 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

.fullscreen-menu.is-microscopia-open .fullscreen-menu-bg,
.fullscreen-menu.is-microscopia-open .close-button,
.fullscreen-menu.is-microscopia-open .fullscreen-main-links,
.fullscreen-menu.is-microscopia-open .menu-column-2-contacts {
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

.fullscreen-menu.is-microscopia-open .menu-cover-image {
  opacity: 1 !important;
  transform: scale(1.03) !important;
}

.skip-link {
  position: fixed;
  z-index: 10000;
  top: 12px;
  left: 12px;
  transform: translateY(-160%);
  padding: 12px 18px;
  color: #06192a;
  background: #fff;
  border: 2px solid var(--focus-ring);
  font: 600 14px/1.2 Inter, sans-serif;
  transition: transform .2s ease;
}

.skip-link:focus { transform: translateY(0); }

:where(a, button, input, textarea, select, [tabindex]):focus-visible {
  outline: 3px solid var(--focus-ring) !important;
  outline-offset: 4px !important;
}

input, textarea, select, button { font: inherit; }

.microscopia-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.microscopia-form-status {
  margin: 16px 0 0;
  padding: 14px 16px;
  border: 1px solid rgba(6, 25, 42, .24);
  color: var(--microscopia-navy);
  background: #eef3f6;
  font: 500 14px/1.55 Inter, sans-serif;
}

.microscopia-form-status[data-state="error"] {
  border-color: #8e3d35;
  color: #6b231d;
  background: #fff0ee;
}

main > section:not(:first-child),
main > div:not(:first-child) {
  content-visibility: auto;
  contain-intrinsic-size: auto 900px;
}

/* Official clinic mark: one consistent asset with guaranteed contrast. */
.nav-block-1 {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
}

.nav-block-1::before,
.nav-block-1::after { content: none !important; }

.navbar.navbar11 {
  background: #d9e1e6 !important;
  border-bottom: 1px solid rgba(6, 25, 42, .18);
  box-shadow: 0 6px 22px rgba(6, 25, 42, .12);
}

.navbar.navbar11 .nav-links {
  background: transparent !important;
}

.navbar.navbar11 .menu-link-title,
.navbar.navbar11 .menu-mobile-text,
.navbar.navbar11 .microscopia-submenu-toggle {
  color: var(--microscopia-navy) !important;
}

.navbar.navbar11 .menu-icon {
  filter: brightness(0) saturate(100%) invert(9%) sepia(24%) saturate(1485%) hue-rotate(168deg) brightness(91%) contrast(98%);
}

.brand-link-block {
  position: relative !important;
  z-index: 1;
  isolation: isolate;
  inset: auto !important;
  display: flex !important;
  width: min(250px, 20vw) !important;
  min-width: 190px;
  height: 92px !important;
  padding: 7px 15px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  transform: none !important;
  margin: auto 0 !important;
}

.microscopia-brand-logo {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.logo-image-default,
.brand-name,
.brand-slogan {
  display: none !important;
}

/* Keep both homepage calls to action on the same visual center line. */
.header-5 .header-content-block {
  display: flex !important;
  width: 100% !important;
  justify-content: center !important;
}

.header-5 .buttons-flex-1 {
  position: static !important;
  display: flex !important;
  width: 100% !important;
  margin: 0 auto !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: 18px !important;
  height: auto !important;
  transform: none !important;
}

.header-5 .buttons-flex-1 > *,
.header-5 .buttons-flex-1 > .div-block,
.header-5 .buttons-flex-1 .main-button {
  position: static !important;
  margin: 0 !important;
  transform: none !important;
}

/* Expanded desktop navigation and accessible Treatments flyout. */
.nav-links-height {
  overflow: visible !important;
}

.microscopia-nav-item {
  position: relative;
  display: flex;
  align-items: stretch;
}

.microscopia-treatment-trigger {
  display: flex;
  align-items: stretch;
}

.microscopia-submenu-toggle {
  position: relative;
  z-index: 2;
  display: flex;
  width: 28px;
  min-width: 28px;
  padding: 0 8px 0 0;
  align-items: center;
  justify-content: center;
  border: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
}

.microscopia-submenu-toggle svg {
  width: 12px;
  transition: transform .2s ease;
}

.microscopia-submenu {
  position: absolute;
  z-index: 1000;
  top: calc(100% - 1px);
  left: 50%;
  width: max-content;
  min-width: 250px;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, .16);
  background: rgba(4, 17, 29, .98);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .34);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 10px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.microscopia-has-submenu:hover .microscopia-submenu,
.microscopia-has-submenu:focus-within .microscopia-submenu,
.microscopia-has-submenu.is-open .microscopia-submenu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.microscopia-has-submenu:hover .microscopia-submenu-toggle svg,
.microscopia-has-submenu:focus-within .microscopia-submenu-toggle svg,
.microscopia-has-submenu.is-open .microscopia-submenu-toggle svg {
  transform: rotate(180deg);
}

.microscopia-submenu .microscopia-submenu-link {
  display: flex;
  min-height: 42px;
  padding: 10px 14px !important;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  white-space: nowrap;
}

.microscopia-submenu .microscopia-submenu-link:last-child { border-bottom: 0; }

.microscopia-submenu .microscopia-submenu-link:hover,
.microscopia-submenu .microscopia-submenu-link:focus-visible,
.microscopia-submenu .microscopia-submenu-link.w--current {
  color: #fff;
  background: rgba(173, 153, 138, .2);
}

@media (min-width: 1280px) {
  .navbar-flex,
  .nav-block-1,
  .main-nav,
  .nav-links,
  .nav-links-height {
    height: 128px !important;
    min-height: 128px !important;
  }

  .nav-links-height {
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: clamp(2px, .45vw, 10px) !important;
  }

  .nav-links-height > .nav-link,
  .microscopia-treatment-trigger > .nav-link {
    inset: auto !important;
    z-index: auto !important;
    margin-left: 0 !important;
    padding-right: clamp(7px, .7vw, 14px) !important;
    padding-left: clamp(7px, .7vw, 14px) !important;
  }

  .nav-links-height .menu-link-title {
    font-size: clamp(11px, .72vw, 14px) !important;
    white-space: nowrap;
  }

  .microscopia-treatment-trigger > .nav-link { padding-right: 4px !important; }

  .microscopia-book-nav {
    align-self: center;
    min-height: 42px;
    border: 1px solid rgba(6, 25, 42, .34);
  }
}

@media (max-width: 1279px) {
  .fullscreen-menu.is-microscopia-open {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    background: var(--microscopia-navy) !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-inner {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    width: 100% !important;
    min-height: 100dvh !important;
    padding: 104px clamp(24px, 7vw, 80px) 40px !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--microscopia-navy) !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-menu-column-1 {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: min(100%, 760px) !important;
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-main-links {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-main-link {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    width: 100% !important;
    min-height: 64px !important;
    padding: 14px 18px !important;
    align-items: center !important;
    gap: 14px !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    color: #fff !important;
    background: rgba(255, 255, 255, .06) !important;
    transform: none !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-main-link:hover,
  .fullscreen-menu.is-microscopia-open .fullscreen-main-link:focus-visible,
  .fullscreen-menu.is-microscopia-open .fullscreen-main-link.w--current {
    background: rgba(173, 153, 138, .28) !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-link-text {
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(15px, 2vw, 20px) !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-link-sign {
    position: static !important;
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    transform: none !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-menu-column-3,
  .fullscreen-menu.is-microscopia-open .fullscreen-menu-bg {
    display: none !important;
  }

  .fullscreen-menu.is-microscopia-open .close-button {
    position: fixed !important;
    z-index: 10001 !important;
    top: 22px !important;
    right: 22px !important;
    bottom: auto !important;
    left: auto !important;
    display: flex !important;
    width: 52px !important;
    height: 52px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255, 255, 255, .32) !important;
    border-radius: 50% !important;
    color: #fff !important;
    background: rgba(255, 255, 255, .08) !important;
  }

  .fullscreen-menu.is-microscopia-open .close-text-block,
  .fullscreen-menu.is-microscopia-open .close-text {
    position: static !important;
    margin: 0 !important;
    color: #fff !important;
    transform: none !important;
  }

  .fullscreen-menu.is-microscopia-open .close-text { font-size: 0 !important; }
  .fullscreen-menu.is-microscopia-open .close-text::after {
    content: "×";
    font: 300 32px/1 Inter, sans-serif;
  }

  .fullscreen-menu.is-microscopia-open .close-button-bg { display: none !important; }

  .navbar-flex {
    position: relative !important;
    min-height: 96px;
  }

  .nav-block-1 {
    position: absolute !important;
    z-index: 10;
    top: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    left: 50% !important;
    width: auto !important;
    height: 100% !important;
    min-height: 100% !important;
    transform: translateX(-50%) !important;
  }

  .brand-link-block {
    width: clamp(160px, 32vw, 220px) !important;
    min-width: 0;
    height: 76px !important;
    padding: 5px 10px !important;
  }

  .main-nav {
    position: absolute !important;
    z-index: 4;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    pointer-events: none;
  }

  .nav-links {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    transform: none !important;
    pointer-events: none;
  }

  .mobile-menu-button {
    position: absolute !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    left: 18px !important;
    display: flex !important;
    width: auto !important;
    min-width: 82px;
    height: 48px !important;
    min-height: 48px;
    margin: 0 !important;
    padding: 0 10px !important;
    align-items: center;
    border: 1px solid rgba(6, 25, 42, .22) !important;
    background: transparent !important;
    transform: translateY(-50%) !important;
    pointer-events: auto;
  }

  .menu-mobile-button-flex {
    position: static !important;
    inset: auto !important;
    margin: 0 !important;
    transform: none !important;
    pointer-events: auto;
  }

  .nav-links-height { display: none !important; }
  .mobile-menu-button { display: flex !important; }
}

@media (max-width: 479px) {
  .fullscreen-menu.is-microscopia-open .fullscreen-inner {
    padding: 92px 18px 28px !important;
    align-items: flex-start !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-main-links {
    grid-template-columns: 1fr;
    gap: 8px !important;
  }

  .fullscreen-menu.is-microscopia-open .fullscreen-main-link {
    min-height: 54px !important;
    padding: 10px 14px !important;
  }

  .navbar-flex { min-height: 84px; }

  .brand-link-block {
    width: 180px !important;
    height: 72px !important;
    padding: 4px 8px !important;
  }

  .mobile-menu-button {
    left: 12px !important;
    width: 48px !important;
    min-width: 48px;
    padding: 0 !important;
    justify-content: center;
  }

  .menu-mobile-text { display: none !important; }

  .menu-icon {
    width: 24px !important;
    min-width: 24px !important;
    max-width: none !important;
    height: 24px !important;
    flex: 0 0 24px !important;
  }

}

@media (max-width: 767px) {
  :where(a, button, input[type="submit"], .w-button, .w-nav-button) { min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
  .clinic-feature-video { display: none; }
}

.clinic-video-section {
  width: 100%;
  background: var(--microscopia-navy);
  overflow: hidden;
}

.clinic-feature-video {
  display: block;
  width: min(100%, 1200px);
  height: min(78vh, 820px);
  margin: 0 auto;
  object-fit: cover;
  object-position: center;
}
