:root {
  --clinic-ink: #153335;
  --clinic-teal: #123e42;
  --clinic-sage: #77938b;
  --clinic-gold: #b89053;
  --clinic-paper: #fbfcfa;
  --clinic-soft: #e9f1f0;
  --clinic-line: #dce5e3;
}

body { color: var(--clinic-ink); background: var(--clinic-paper); }
.clinic-location-bar { position: relative; z-index: 1001; padding: 8px 20px; color: #dce8e6; background: var(--clinic-teal); font: 600 12px/1.4 Arial, sans-serif; letter-spacing: .02em; text-align: center; }
.clinic-location-bar strong { color: #fff; }
.clinic-header { position: relative; z-index: 1000; border-bottom: 1px solid var(--clinic-line); color: var(--clinic-ink); background: rgba(251,252,250,.98); font-family: Arial, sans-serif; }
.clinic-header__inner { display: flex; width: min(calc(100% - 40px), 1240px); min-height: 88px; margin: auto; align-items: center; justify-content: space-between; }
.clinic-brand img { width: 156px; height: auto; }
.clinic-nav { display: flex; gap: clamp(16px,2vw,30px); align-items: center; }
.clinic-nav > a, .clinic-menu summary { color: var(--clinic-ink); font-size: 14px; font-weight: 700; text-decoration: none; }
.clinic-menu { position: relative; }
.clinic-menu summary { display: flex; gap: 8px; align-items: center; padding: 32px 0; cursor: pointer; list-style: none; white-space: nowrap; }
.clinic-menu summary::-webkit-details-marker { display: none; }
.clinic-menu summary::after { width: 7px; height: 7px; margin-top: -4px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; content: ""; transform: rotate(45deg); }
.clinic-menu[open] summary::after { margin-top: 4px; transform: rotate(225deg); }
.clinic-menu__panel { position: absolute; top: calc(100% + 1px); left: 50%; display: grid; width: 285px; padding: 12px; border: 1px solid var(--clinic-line); border-radius: 8px; background: #fff; box-shadow: 0 22px 55px rgba(20,52,54,.14); opacity: 0; pointer-events: none; transform: translate(-50%,-8px); transition: .18s ease; }
.clinic-menu[open] .clinic-menu__panel { opacity: 1; pointer-events: auto; transform: translate(-50%,0); }
.clinic-menu__panel a { padding: 10px 12px; border-radius: 4px; color: #345154; font-size: 13px; font-weight: 600; text-decoration: none; }
.clinic-menu__panel a:hover { color: var(--clinic-teal); background: var(--clinic-soft); }
.clinic-nav__cta { padding: 11px 16px; border: 1px solid var(--clinic-teal); border-radius: 4px; color: #fff !important; background: var(--clinic-teal); }
.clinic-nav-toggle { display: none; width: 48px; height: 48px; border: 0; background: transparent; }
.clinic-nav-toggle span { display: block; width: 25px; height: 2px; margin: 5px auto; background: var(--clinic-teal); }

.mad-breadcrumb { position: relative; padding-top: clamp(70px,10vw,130px) !important; padding-bottom: clamp(70px,10vw,125px) !important; color: var(--clinic-ink) !important; background-color: #eef3f1 !important; }
.mad-breadcrumb::after { position: absolute; inset: auto 0 0; height: 4px; background: linear-gradient(90deg,var(--clinic-teal),var(--clinic-sage),var(--clinic-gold)); content: ""; }
.mad-breadcrumb .mad-page-title { color: var(--clinic-ink) !important; font-family: Georgia, serif !important; font-size: clamp(42px,6vw,76px) !important; font-weight: 500 !important; letter-spacing: -.03em !important; }
.mad-breadcrumb-path, .mad-breadcrumb-path a { color: #526c6d !important; }
.mad-content h2, .mad-content h3, .mad-content h4, .mad-content h5, .mad-content h6 { color: var(--clinic-ink); }
.mad-content p, .mad-content li { color: #3f595b; }
.mad-content .mad-title, .mad-content .mad-entity-title { color: var(--clinic-ink); }
.mad-content img { border-radius: 8px; }
.mad-content .btn, .mad-content button.btn, .mad-footer .btn { border-color: var(--clinic-teal) !important; color: #fff !important; background: var(--clinic-teal) !important; }
.mad-content .btn:hover, .mad-footer .btn:hover { color: var(--clinic-teal) !important; background: transparent !important; }
.mad-text-link, .mad-link { color: var(--clinic-teal) !important; }
.mad-footer { color: #cad8d6 !important; background: #0c292c !important; }
.mad-footer, .mad-footer p, .mad-footer a, .mad-footer .mad-widget-title { color: #cad8d6 !important; }
.mad-footer .mad-widget-title { color: #fff !important; }
.whatsapp-button { width: 58px !important; height: 58px !important; padding: 4px !important; border: 3px solid #fff; }
.whatsapp-button img { width: 46px !important; height: 46px !important; border-radius: 50%; }
.clinic-local-note { margin: 34px 0; padding: 22px 25px; border-left: 3px solid var(--clinic-gold); border-radius: 4px; color: var(--clinic-ink); background: var(--clinic-soft); font: 600 15px/1.6 Arial, sans-serif; }

@media (hover:hover) and (min-width:981px) {
  .clinic-menu:hover .clinic-menu__panel { opacity: 1; pointer-events: auto; transform: translate(-50%,0); }
}
@media (max-width:980px) {
  .clinic-nav-toggle { display: block; }
  .clinic-nav { position: fixed; top: 0; right: 0; z-index: 1002; width: min(86vw,390px); height: 100dvh; flex-direction: column; align-items: stretch; justify-content: center; padding: 70px 30px; background: #fff; box-shadow: -20px 0 50px rgba(20,52,54,.18); opacity: 0; overflow-y: auto; pointer-events: none; transform: translateX(100%); transition: .24s ease; }
  .clinic-nav-open { overflow: hidden; }
  .clinic-nav-open .clinic-nav { opacity: 1; pointer-events: auto; transform: none; }
  .clinic-nav-open .clinic-nav-toggle { position: fixed; top: 45px; right: 15px; z-index: 1003; }
  .clinic-nav > a, .clinic-menu summary { padding: 8px 0; font-size: 17px; }
  .clinic-menu { width: 100%; }
  .clinic-menu summary { justify-content: space-between; }
  .clinic-menu__panel { position: static; width: 100%; max-height: 35vh; padding: 3px 0 8px 8px; border: 0; box-shadow: none; opacity: 1; overflow-y: auto; pointer-events: auto; transform: none; }
  .clinic-nav__cta { text-align: center; }
}
@media (max-width:600px) {
  .clinic-location-bar { font-size: 10px; }
  .clinic-header__inner { width: calc(100% - 28px); min-height: 74px; }
  .clinic-brand img { width: 140px; }
  .mad-breadcrumb { padding-top: 55px !important; padding-bottom: 55px !important; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
