/* =========================================================================
   MyoMastery e-shop — Elementor obsah ve vzhledu webu
   Globální barvy a písma sady Elementoru se přemapují na tokeny webu.
   Obsah stránek zůstává beze změny, mění se jen vzhled.
   ========================================================================= */

/* --- globální barvy sady: tmavý podklad a žlutá → bílý papír a modř --- */
body.myo[class*="elementor-kit-"] {
  --e-global-color-primary:   var(--ink);      /* nadpisy (dříve krémová na tmavé) */
  --e-global-color-secondary: var(--ink);
  --e-global-color-text:      var(--ink-2);    /* text (dříve světle šedá) */
  --e-global-color-accent:    var(--blue);     /* tlačítka a zvýraznění (dříve žlutá) */
  --e-global-color-1bd57f1c:  var(--paper-2);  /* Gray BG Light */
  --e-global-color-6d097900:  var(--paper);    /* Gray BG Dark (podklad stránky) */
  --e-global-color-49242077:  var(--paper-2);  /* Black BG/Text — v obsahu jen jako podklad sekcí a text tlačítek (tlačítka řeší .elementor-button) */
  --e-global-color-29df007:   var(--rule);     /* rámečky */
  --e-global-color-1f86ceb:   var(--air);      /* ikony sociálních sítí */
  --e-global-color-c1d5e2d:   var(--brand);

  /* písma: Rubik → Poppins, váhy a velikosti podle webu */
  --e-global-typography-primary-font-family: 'Poppins';
  --e-global-typography-primary-font-weight: 600;
  --e-global-typography-primary-font-size: clamp(27px, 1.35rem + 1.9vw, 40px);
  --e-global-typography-primary-line-height: 1.15em;
  --e-global-typography-primary-letter-spacing: -0.025em;
  --e-global-typography-secondary-font-family: 'Poppins';
  --e-global-typography-secondary-font-weight: 600;
  --e-global-typography-secondary-font-size: clamp(19px, 1.05rem + .45vw, 23px);
  --e-global-typography-secondary-line-height: 1.3em;
  --e-global-typography-secondary-letter-spacing: -0.015em;
  --e-global-typography-secondary-text-transform: none;
  --e-global-typography-text-font-family: 'Poppins';
  --e-global-typography-text-font-weight: 400;
  --e-global-typography-text-font-size: 16px;
  --e-global-typography-text-line-height: 1.7em;
  --e-global-typography-accent-font-family: 'Poppins';
  --e-global-typography-accent-font-weight: 500;
  --e-global-typography-accent-font-size: 13px;
  --e-global-typography-1860207-font-family: 'Poppins';
  --e-global-typography-1860207-font-weight: 500;
  --e-global-typography-1860207-text-transform: none;
  --e-global-typography-22c7684-font-family: 'Poppins';
  --e-global-typography-22c7684-font-weight: 600;
  --e-global-typography-22c7684-font-size: clamp(34px, 1.6rem + 2.4vw, 52px);
  --e-global-typography-22c7684-line-height: 1.1em;
  --e-global-typography-22c7684-letter-spacing: -0.028em;
  --e-global-typography-2eb3d06-font-family: 'Poppins';
  --e-global-typography-2eb3d06-font-weight: 600;
  --e-global-typography-2eb3d06-font-size: 15px;
  --e-global-typography-6f09dee-font-family: 'Poppins';
  --e-global-typography-6f09dee-font-weight: 500;
  --e-global-typography-6f09dee-font-size: 18px;
  --e-global-typography-0e7f502-font-family: 'Poppins';
  --e-global-typography-0e7f502-font-weight: 600;
  --e-global-typography-0e7f502-font-size: 12.5px;
  --e-global-typography-0e7f502-letter-spacing: .08em;
  --e-global-typography-e9655fe-font-family: 'Poppins';
  --e-global-typography-e9655fe-font-weight: 600;
  --e-global-typography-e9655fe-font-size: clamp(40px, 2rem + 2.4vw, 64px);
  --e-global-typography-e9655fe-letter-spacing: -0.03em;
  --e-global-typography-66dc469-font-family: 'Poppins';
  --e-global-typography-66dc469-font-weight: 600;
  --e-global-typography-66dc469-font-size: clamp(27px, 1.35rem + 1.9vw, 40px);
  --e-global-typography-66dc469-letter-spacing: -0.025em;
  --e-global-typography-e6caeb2-font-family: 'Poppins';
  --e-global-typography-e6caeb2-font-weight: 600;
  --e-global-typography-e6caeb2-text-transform: none;
  --e-global-typography-e6caeb2-text-decoration: none;
  --e-global-typography-5b4e366-font-family: 'Poppins';
  --e-global-typography-5b4e366-font-weight: 600;
  --e-global-typography-5b4e366-font-size: 13px;
  --e-global-typography-5b4e366-text-transform: none;
  background-color: var(--paper);
}

/* šířka obsahu jako na webu */
body.myo .elementor-section.elementor-section-boxed > .elementor-container { max-width: calc(var(--maxw) - 2 * 32px); }
body.myo .e-con { --container-max-width: calc(var(--maxw) - 2 * 32px); }

/* --- písmo všude Poppins (Rubik, Prompt, Open Sans byly natvrdo ve widgetech) --- */
body.myo .elementor :is(h1, h2, h3, h4, h5, h6, p, li, a, span, div, button, input, select, textarea, label, blockquote, cite, td, th, strong, em, b):not([class*="fa-"]):not([class*="eicon"]):not([class*="icon-"]):not(.elementor-icon) {
  font-family: 'Poppins', system-ui, sans-serif !important;
}
body.myo .elementor .elementor-heading-title { font-weight: 600; letter-spacing: -.02em; color: var(--ink); }
body.myo .elementor h1.elementor-heading-title { font-size: clamp(28px, .9rem + 4.4vw, 52px); line-height: 1.1; letter-spacing: -.028em; }
body.myo .elementor h2.elementor-heading-title { font-size: clamp(24px, 1rem + 2.2vw, 38px); line-height: 1.15; }
body.myo .elementor h3.elementor-heading-title { font-size: clamp(19px, 1.05rem + .45vw, 23px); line-height: 1.3; letter-spacing: -.015em; }
body.myo .elementor :is(h4, h5, h6).elementor-heading-title { font-size: 17px; line-height: 1.4; letter-spacing: -.01em; }

/* text */
body.myo .elementor .elementor-widget-text-editor { color: var(--ink-2); font-size: 16px; line-height: 1.7; font-weight: 400; }
body.myo .elementor .elementor-widget-text-editor :is(p, li, span, div, strong, em) { color: inherit; }
body.myo .elementor .elementor-widget-text-editor strong, body.myo .elementor .elementor-widget-text-editor b { color: var(--ink); font-weight: 600; }
body.myo .elementor .elementor-widget-text-editor a { color: var(--blue); font-weight: 500; }
body.myo .elementor .elementor-widget-text-editor ul { padding-left: 0; list-style: none; }
body.myo .elementor .elementor-widget-text-editor ul > li { position: relative; padding-left: 22px; }
body.myo .elementor .elementor-widget-text-editor ul > li + li { margin-top: 6px; }
body.myo .elementor .elementor-widget-text-editor ul > li::before { content: ''; position: absolute; left: 3px; top: .82em; width: 8px; height: 1px; background: var(--brand); }
body.myo .elementor .elementor-widget-text-editor ol { padding-left: 1.4em; }
body.myo .elementor .elementor-widget-text-editor ol > li::marker { color: var(--blue); font-weight: 600; }

/* --- podklady sekcí: tmavé plochy → papír, vzdušná modrá místo šedé --- */
body.myo .elementor :is(.elementor-section, .e-con, .elementor-column > .elementor-widget-wrap) { --overlay-opacity: 0; }

/* --- tlačítka jako na webu --- */
body.myo .elementor .elementor-button {
  font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600; letter-spacing: -.005em; line-height: 1.2;
  padding: 13px 24px; border-radius: var(--r-s) !important;
  background-color: var(--blue) !important; color: #fff !important; fill: #fff !important;
  border: 1px solid var(--blue) !important;
  text-transform: none; text-decoration: none;
  transition: background-color var(--t) var(--ease), color var(--t) var(--ease), border-color var(--t) var(--ease), transform var(--t) var(--ease);
}
body.myo .elementor .elementor-button:hover, body.myo .elementor .elementor-button:focus { background-color: var(--blue-dk) !important; border-color: var(--blue-dk) !important; color: #fff !important; }
body.myo .elementor .elementor-button:active { transform: translateY(1px); }
body.myo .elementor .elementor-button .elementor-button-text, body.myo .elementor .elementor-button .elementor-button-icon { color: inherit; fill: currentColor; }
body.myo .elementor .elementor-button .elementor-button-icon svg { fill: currentColor; }

/* --- obrázky: rámeček „obrazové tabule“ místo volných fotek --- */
/* nižší specifičnost: vlastní zaoblení obrázku z Elementoru (např. kulaté avatary) má přednost */
body.myo :where(.elementor .elementor-widget-image) img { border-radius: var(--r-s); }

/* --- oddělovače, ikony, počítadla --- */
body.myo .elementor .elementor-divider-separator { border-color: var(--rule) !important; --divider-color: var(--rule); }
body.myo .elementor .elementor-icon { color: var(--blue); fill: var(--blue); }
body.myo .elementor .elementor-icon svg { fill: currentColor; }
body.myo .elementor .elementor-icon-list-icon i, body.myo .elementor .elementor-icon-list-icon svg { color: var(--blue); fill: var(--blue); }
body.myo .elementor .elementor-icon-list-text { color: var(--ink-2); }
body.myo .elementor .elementor-counter-number-wrapper { color: var(--blue); font-weight: 600; letter-spacing: -.03em; }
body.myo .elementor .elementor-counter-title { color: var(--ink-2); font-size: 13.5px; }

/* --- vedlejší tlačítka (dříve bílá / průhledná) obrysově jako .btn--ghost --- */
body.myo .elementor .elementor-element:is(.elementor-element-af58361, .elementor-element-33c6c652, .elementor-element-1d1571b3) .elementor-button {
  background-color: var(--paper) !important; color: var(--ink) !important; border-color: var(--rule) !important;
}
body.myo .elementor .elementor-element:is(.elementor-element-af58361, .elementor-element-33c6c652, .elementor-element-1d1571b3) .elementor-button:hover {
  background-color: var(--paper) !important; color: var(--blue-dk) !important; border-color: var(--brand) !important;
}

/* --- reference (testimonial): karty jako citace na webu --- */
body.myo .elementor .elementor-widget-testimonial .elementor-testimonial-wrapper {
  border: 1px solid var(--rule); border-radius: var(--r-m); padding: var(--sp-3); background: var(--paper); text-align: left;
}
body.myo .elementor .elementor-widget-testimonial .elementor-testimonial-image img { width: 52px !important; height: 52px !important; border-radius: 50% !important; border: 1px solid var(--rule) !important; object-fit: cover; }
body.myo .elementor .elementor-widget-testimonial .elementor-testimonial-content {
  font-family: 'Source Serif 4', Georgia, serif !important; font-size: 16.5px !important; line-height: 1.7 !important; color: var(--ink) !important; font-weight: 400 !important;
}
body.myo .elementor .elementor-widget-testimonial .elementor-testimonial-meta { margin-top: var(--sp-3); padding-top: 13px; border-top: 1px solid var(--rule-2); }
body.myo .elementor .elementor-widget-testimonial .elementor-testimonial-name { font-size: 12px !important; font-weight: 600 !important; letter-spacing: .08em; color: var(--ochre) !important; }
body.myo .elementor .elementor-widget-testimonial .elementor-testimonial-details { padding: 0 !important; }

/* dlouhé odkazy (DOI, URL citací) nesmí roztáhnout stránku na mobilu */
body.myo .elementor .elementor-widget-container :is(p, li, dd, i, em, span, strong) { overflow-wrap: anywhere; }
body.myo .elementor .elementor-widget-container a { overflow-wrap: anywhere; }

/* „Jsem pacient“: dekorační body nad postavou jsou na mobilu mimo postavu a překrývají nadpis */
@media (max-width: 767px) {
  body.myo.elementor-page-1759 .elementor-element.elementor-absolute { display: none; }
}

/* vložený text s natvrdo nastaveným tmavým podkladem (zkopírováno z jiného webu) */
body.myo .elementor .elementor-widget-container :is(p, li, span, div, strong, em, h2, h3, h4)[style*="background"] { background: transparent !important; color: inherit !important; }
body.myo .elementor .elementor-widget-container [style*="background"] :is(span, strong, em) { color: inherit !important; }


/* =========================================================================
   HLAVIČKA — původní šablona Elementoru (logo, menu, „Najděte si svého
   specialistu“, košík) ve vzhledu webu. Obsah a odkazy se nemění.
   ========================================================================= */
body.myo .elementor-location-header { position: relative; z-index: 30; }
body.myo .elementor-location-header .elementor-element-7d5cf1b4 {
  background: var(--paper) !important; /* bez backdrop-filter: jinak by se postranní košík (position: fixed) uzavřel do hlavičky */
  border-bottom: 1px solid var(--rule) !important; min-height: 74px !important;
  padding: 0 var(--gut) !important; margin: 0 !important;
  transition: box-shadow var(--t) var(--ease);
}
body.myo .elementor-location-header .elementor-element-7d5cf1b4.elementor-sticky--effects,
body.myo .elementor-location-header .elementor-element-7d5cf1b4.elementor-sticky--active {
  box-shadow: 0 1px 0 var(--rule), 0 12px 26px -22px rgba(10,61,90,.5);
}
body.myo .elementor-location-header .elementor-element-7d5cf1b4 > .elementor-container { max-width: 1320px !important; min-height: 74px !important; }
body.myo .elementor-location-header .elementor-element-7d5cf1b4 .elementor-widget-wrap { padding: 0 !important; }
body.myo .elementor-location-header .elementor-element-357aeb1 > .elementor-widget-wrap { gap: 0 var(--sp-2); justify-content: flex-end; align-items: center; flex-wrap: nowrap; }

/* logo: kolibřík + původní nápis MyoMastery (tmavě, jako na webu) */
body.myo .elementor-location-header .elementor-element-11d9a79 .elementor-widget-container > a {
  display: inline-flex !important; align-items: center; gap: 11px; text-decoration: none;
}
body.myo .elementor-location-header .elementor-element-11d9a79 .elementor-widget-container > a::before {
  content: ''; flex: none; width: 54px; height: 40px;
  background: url("../img/kolibrik.png") center / contain no-repeat;
  animation: breathe 7s var(--ease) infinite;
}
body.myo .elementor-location-header .elementor-element-11d9a79 img {
  width: auto !important; max-width: none !important; height: 24px !important;
  filter: brightness(0) saturate(100%); opacity: .9;
}

/* hlavní menu */
body.myo .elementor-location-header .elementor-element-2a845e9 { width: auto !important; max-width: none !important; }
body.myo .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu { gap: 2px; flex-wrap: nowrap; }
body.myo .elementor-location-header .elementor-nav-menu--main .elementor-item {
  padding: 9px 11px !important; margin: 0 !important; border-radius: var(--r-s); white-space: nowrap;
  font-family: 'Poppins', sans-serif !important; font-size: 14.5px !important; font-weight: 500 !important; text-transform: none !important; letter-spacing: 0 !important;
  color: var(--ink) !important; fill: var(--ink) !important; background: transparent !important;
  transition: color var(--t) var(--ease), background-color var(--t) var(--ease);
}
body.myo .elementor-location-header .elementor-nav-menu--main .elementor-item::before,
body.myo .elementor-location-header .elementor-nav-menu--main .elementor-item::after { display: none !important; }
body.myo .elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
body.myo .elementor-location-header .elementor-nav-menu--main .elementor-item.highlighted { color: var(--blue) !important; fill: var(--blue) !important; background: var(--air) !important; }
body.myo .elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: var(--blue) !important; fill: var(--blue) !important; font-weight: 600 !important; box-shadow: inset 0 -2px 0 var(--brand); border-radius: 0; background: transparent !important;
}
body.myo .elementor-location-header .elementor-nav-menu .sub-arrow svg { width: 9px; height: 9px; fill: currentColor; }
/* podmenu E-shop */
body.myo .elementor-location-header .elementor-nav-menu--main .sub-menu {
  background: var(--paper) !important; border: 1px solid var(--rule); border-radius: var(--r-m);
  box-shadow: var(--sh-2) !important; padding: 6px !important; min-width: 200px !important; margin-top: 6px !important;
}
body.myo .elementor-location-header .elementor-nav-menu--main .sub-menu .elementor-sub-item {
  padding: 9px 12px !important; border-radius: var(--r-s); border: 0 !important;
  font-family: 'Poppins', sans-serif !important; font-size: 14px !important; font-weight: 500 !important;
  color: var(--ink) !important; background: transparent !important;
}
body.myo .elementor-location-header .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover,
body.myo .elementor-location-header .elementor-nav-menu--main .sub-menu .elementor-sub-item.elementor-item-active { color: var(--blue) !important; background: var(--air) !important; }

/* tlačítko „Najděte si svého specialistu“ = obrysové tlačítko z hlavičky webu */
body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 9px 14px !important; border-radius: var(--r-s) !important;
  background: var(--paper) !important; border: 1px solid var(--rule) !important; color: var(--blue) !important;
  font-family: 'Poppins', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; text-transform: none !important; white-space: nowrap;
}
body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button:hover { background: var(--air) !important; border-color: var(--brand) !important; color: var(--blue-dk) !important; }
body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button-content-wrapper { flex-direction: row-reverse; gap: 8px; }
body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button-icon svg { width: 13px; height: auto; fill: currentColor; }
body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button-icon svg * { fill: currentColor; }

/* košík v hlavičce (cena + ikona + počet) */
body.myo .elementor-location-header .elementor-menu-cart__toggle_button {
  display: inline-flex !important; align-items: center; gap: 8px;
  padding: 8px 6px 8px 10px !important; border-radius: var(--r-s) !important;
  background: transparent !important; border: 0 !important; color: var(--ink) !important;
  font-family: 'Poppins', sans-serif !important; font-size: 14px !important; font-weight: 600 !important;
}
body.myo .elementor-location-header .elementor-menu-cart__toggle_button:hover { background: var(--air) !important; color: var(--blue) !important; }
body.myo .elementor-location-header .elementor-menu-cart__toggle_button .elementor-button-text { color: inherit !important; font-variant-numeric: tabular-nums; }
body.myo .elementor-location-header .elementor-menu-cart__toggle_button .elementor-button-icon { color: inherit !important; position: relative; }
body.myo .elementor-location-header .elementor-menu-cart__toggle_button .elementor-button-icon svg { fill: currentColor !important; width: 22px; height: 22px; }
body.myo .elementor-location-header .elementor-menu-cart__toggle_button .elementor-button-icon-qty {
  background: var(--blue) !important; color: #fff !important; font-family: 'Poppins', sans-serif !important; font-size: 10.5px !important; font-weight: 600;
  min-width: 18px; height: 18px; line-height: 18px; border-radius: 9px; top: -7px; inset-inline-end: -9px;
}
/* postranní košík */
body.myo .elementor-menu-cart__main { background: var(--paper) !important; border-left: 1px solid var(--rule); box-shadow: var(--sh-2); font-family: 'Poppins', sans-serif; }
body.myo .elementor-menu-cart__main :is(a, span, strong, div) { font-family: 'Poppins', sans-serif !important; }
body.myo .elementor-menu-cart__product { border-color: var(--rule-2) !important; }
body.myo .elementor-menu-cart__product-name a { color: var(--ink) !important; font-weight: 600; font-size: 14px; text-decoration: none; }
body.myo .elementor-menu-cart__product-price { color: var(--ink-2) !important; font-size: 13.5px; }
body.myo .elementor-menu-cart__product-image img { border: 1px solid var(--rule); border-radius: var(--r-s); background: var(--paper); }
body.myo .elementor-menu-cart__subtotal { color: var(--ink) !important; border-color: var(--rule) !important; font-size: 15px; }
body.myo .elementor-menu-cart__footer-buttons .elementor-button { border-radius: var(--r-s) !important; font-size: 14.5px !important; padding: 13px 18px !important; }
body.myo .elementor-menu-cart__footer-buttons .elementor-button--view-cart { background: var(--paper) !important; color: var(--blue) !important; border: 1px solid var(--rule) !important; }
body.myo .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover { border-color: var(--brand) !important; color: var(--blue-dk) !important; }
body.myo .elementor-menu-cart__close-button, body.myo .elementor-menu-cart__close-button::before, body.myo .elementor-menu-cart__close-button::after { color: var(--ink) !important; background-color: var(--ink); }

/* mobilní menu (hamburger Elementoru) */
body.myo .elementor-location-header .elementor-menu-toggle {
  background: transparent !important; color: var(--ink) !important; fill: var(--ink) !important; border-radius: var(--r-s); padding: 8px !important;
}
body.myo .elementor-location-header .elementor-menu-toggle svg { fill: currentColor !important; width: 22px; height: 22px; }
body.myo .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
  background: var(--paper) !important; border-bottom: 1px solid var(--rule); box-shadow: 0 18px 30px -24px rgba(10,61,90,.45);
  margin-top: 0 !important; padding: 8px var(--gut) var(--sp-3);
}
body.myo .elementor-location-header .elementor-nav-menu--dropdown .elementor-item,
body.myo .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item {
  justify-content: flex-start !important; text-align: left !important;
  padding: 12px 0 !important; border-bottom: 1px solid var(--rule-2) !important;
  font-family: 'Poppins', sans-serif !important; font-size: 18px !important; font-weight: 600 !important; letter-spacing: -.02em !important;
  color: var(--ink) !important; background: transparent !important;
}
body.myo .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item { font-size: 15px !important; font-weight: 500 !important; padding-left: 16px !important; color: var(--ink-2) !important; }
body.myo .elementor-location-header .elementor-nav-menu--dropdown .elementor-item-active { color: var(--blue) !important; }
body.myo .elementor-location-header .elementor-nav-menu--dropdown .sub-menu { border: 0 !important; background: transparent !important; }


@media (max-width: 620px) {
  body.myo .elementor-location-header .elementor-element-11d9a79 .elementor-widget-container > a::before { width: 44px; height: 34px; }
  body.myo .elementor-location-header .elementor-element-11d9a79 img { height: 19px !important; }
  body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button { padding: 7px 10px !important; font-size: 12.5px !important; }
  body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button-icon { display: none; }
  body.myo .elementor-location-header .elementor-menu-cart__toggle_button .elementor-button-text { display: none; }
}

/* =========================================================================
   PATIČKA — původní šablona Elementoru ve vzhledu patičky webu
   ========================================================================= */
body.myo .elementor-location-footer { background: var(--blue-dk); color: color-mix(in srgb, #fff 86%, var(--brand)); position: relative; overflow: hidden; }
body.myo .elementor-location-footer .elementor-element-44d10ef1 {
  background: transparent !important; padding: clamp(48px, 6vw, 84px) var(--gut) var(--sp-5) !important; margin: 0 !important; min-height: 0 !important;
}
body.myo .elementor-location-footer .elementor-element-44d10ef1 > .elementor-container { max-width: calc(var(--maxw) - 2 * var(--gut)) !important; gap: clamp(24px, 3vw, 48px); }
body.myo .elementor-location-footer .elementor-element-44d10ef1 .elementor-widget-wrap { padding: 0 !important; align-content: flex-start; }
body.myo .elementor-location-footer .elementor-element-689a93c { background: transparent !important; }
body.myo .elementor-location-footer :is(p, span, div, li, a, h5, strong) { font-family: 'Poppins', sans-serif !important; }
/* logo (bílý nápis) */
body.myo .elementor-location-footer .elementor-element-4e590dc5 img { width: auto !important; height: 22px !important; max-width: none !important; opacity: .95; }
/* texty */
body.myo .elementor-location-footer .elementor-widget-text-editor,
body.myo .elementor-location-footer .elementor-widget-text-editor :is(p, span, strong) {
  color: color-mix(in srgb, #fff 66%, var(--brand)) !important; font-size: 13.5px !important; line-height: 1.65 !important; font-weight: 400 !important;
}
body.myo .elementor-location-footer .elementor-widget-text-editor strong { color: color-mix(in srgb, #fff 88%, var(--brand)) !important; font-weight: 600 !important; }
body.myo .elementor-location-footer .elementor-element-3733ddb4 { margin-top: var(--sp-2) !important; }
body.myo .elementor-location-footer .elementor-element-60f34ff { margin-top: var(--sp-3) !important; padding-top: var(--sp-2); border-top: 1px solid color-mix(in srgb, #fff 16%, transparent); }
body.myo .elementor-location-footer .elementor-element-3f149c8d .elementor-heading-title {
  margin-top: 10px !important; font-size: 12.5px !important; font-weight: 400 !important; letter-spacing: 0 !important; color: color-mix(in srgb, #fff 55%, var(--brand)) !important;
}
/* nadpisy sloupců */
body.myo .elementor-location-footer h5.elementor-heading-title {
  margin: 0 0 var(--sp-2) !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .1em !important; text-transform: uppercase !important;
  color: color-mix(in srgb, #fff 55%, var(--brand)) !important; line-height: 1.3 !important;
}
/* menu v patičce */
body.myo .elementor-location-footer .elementor-nav-menu--main .elementor-item,
body.myo .elementor-location-footer .elementor-nav-menu--main .elementor-sub-item {
  padding: 5px 0 !important; font-size: 14.5px !important; font-weight: 400 !important; text-transform: none !important; letter-spacing: 0 !important;
  color: color-mix(in srgb, #fff 90%, var(--brand)) !important; fill: currentColor !important; background: transparent !important; border: 0 !important;
}
body.myo .elementor-location-footer .elementor-nav-menu--main .elementor-item:hover,
body.myo .elementor-location-footer .elementor-nav-menu--main .elementor-sub-item:hover { color: #fff !important; text-decoration: underline; text-underline-offset: .2em; }
body.myo .elementor-location-footer .elementor-nav-menu--main .elementor-item-active { color: #fff !important; }
body.myo .elementor-location-footer .elementor-nav-menu--main .sub-menu {
  background: var(--blue-dk) !important; border: 1px solid color-mix(in srgb, #fff 16%, transparent) !important; border-radius: var(--r-s);
  box-shadow: 0 18px 30px -18px rgba(0,0,0,.5) !important; padding: 4px 12px !important;
}
body.myo .elementor-location-footer .elementor-nav-menu--main .sub-menu .elementor-sub-item { font-size: 13.5px !important; color: color-mix(in srgb, #fff 80%, var(--brand)) !important; padding: 6px 0 !important; }
body.myo .elementor-location-footer .elementor-nav-menu .sub-arrow svg { fill: currentColor; width: 9px; height: 9px; }
body.myo .elementor-location-footer .elementor-element-bb7cd14 { margin-top: var(--sp-2) !important; padding-top: var(--sp-2); border-top: 1px solid color-mix(in srgb, #fff 16%, transparent); }
/* kontakty */
body.myo .elementor-location-footer .elementor-icon-list-item,
body.myo .elementor-location-footer .elementor-icon-list-item :is(a, .elementor-icon-list-text) {
  color: color-mix(in srgb, #fff 90%, var(--brand)) !important; font-size: 14.5px !important; line-height: 1.7 !important; font-weight: 400 !important;
}
body.myo .elementor-location-footer .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #fff !important; text-decoration: underline; }
body.myo .elementor-location-footer .elementor-icon-list-items { display: grid; gap: 8px; }
body.myo .elementor-location-footer .elementor-icon-list-item:has(.elementor-icon-list-text:empty) { display: none; }
/* sociální sítě */
body.myo .elementor-location-footer .elementor-social-icons-wrapper { margin-top: var(--sp-3); gap: 8px !important; }
body.myo .elementor-location-footer .elementor-social-icon {
  background: color-mix(in srgb, #fff 10%, transparent) !important; color: #fff !important; fill: #fff !important;
  border: 1px solid color-mix(in srgb, #fff 18%, transparent) !important; width: 38px; height: 38px; font-size: 15px !important; padding: 0 !important;
  display: grid !important; place-items: center; transition: background-color var(--t) var(--ease), border-color var(--t) var(--ease);
}
body.myo .elementor-location-footer .elementor-social-icon svg { fill: #fff !important; width: 15px !important; height: 15px !important; }
body.myo .elementor-location-footer .elementor-social-icon svg * { fill: #fff !important; }
body.myo .elementor-location-footer .elementor-social-icon:hover { background: var(--blue) !important; border-color: var(--brand) !important; }
/* mapa */
body.myo .elementor-location-footer .elementor-widget-osm-map-elementor .osm-map-container {
  border-radius: var(--r-m); overflow: hidden; border: 1px solid color-mix(in srgb, #fff 16%, transparent);
}

/* rozvržení hlavičky: logo vlevo, menu + tlačítko + košík vpravo (sloupce Elementoru podle obsahu) */
body.myo .elementor-location-header .elementor-element-7d5cf1b4 > .elementor-container { display: flex; flex-wrap: nowrap; align-items: center; gap: var(--sp-3); }
body.myo .elementor-location-header .elementor-element-3cbe958e { width: auto !important; flex: none !important; }
body.myo .elementor-location-header .elementor-element-357aeb1 { width: auto !important; flex: 1 1 auto !important; min-width: 0; }
body.myo .elementor-location-header .elementor-element-2a845e9,
body.myo .elementor-location-header .elementor-element-2a2dac6,
body.myo .elementor-location-header .elementor-element-f3e881e { flex: none; margin: 0 !important; }
body.myo .elementor-location-header .elementor-element-2a845e9 { margin-right: auto !important; margin-left: auto !important; }
body.myo .elementor-location-header .elementor-menu-cart__toggle_button .elementor-button-text { white-space: nowrap; }

/* patička: kolibřík nad logem jako na webu (původní obrázek, jen jiné umístění v rámci patičky) */
body.myo .elementor-location-footer { display: flex; flex-direction: column; }
body.myo .elementor-location-footer .elementor-element-689a93c {
  order: -1; position: static !important; inset: auto !important; transform: none !important;
  width: 100% !important; max-width: none !important; margin: 0 !important;
  padding: clamp(40px, 5vw, 64px) var(--gut) 0 !important;
}
body.myo .elementor-location-footer .elementor-element-689a93c > .elementor-container { max-width: calc(var(--maxw) - 2 * var(--gut)) !important; justify-content: flex-start; }
body.myo .elementor-location-footer .elementor-element-689a93c .elementor-widget-wrap { padding: 0 !important; justify-content: flex-start; }
body.myo .elementor-location-footer .elementor-element-d236196 { width: auto !important; position: static !important; margin: 0 !important; }
body.myo .elementor-location-footer .elementor-element-d236196 img { width: auto !important; height: 46px !important; max-width: none !important; }
body.myo .elementor-location-footer .elementor-element-44d10ef1 { padding-top: 14px !important; }
body.myo .elementor-location-footer .elementor-element-3733ddb4 { margin-top: 12px !important; }
body.myo .elementor-location-footer .elementor-nav-menu li, body.myo .elementor-location-footer .elementor-nav-menu .sub-menu li { border: 0 !important; }
body.myo .elementor-location-footer .elementor-nav-menu .sub-menu .elementor-sub-item { border: 0 !important; }


/* hlavička do 1320 px: menu pod tlačítkem „hamburger“ (stejné položky, jen sbalené), od 620 px tlačítko specialisty na vlastním řádku */
@media (max-width: 1320px) {
  body.myo .elementor-location-header .elementor-element-7d5cf1b4 > .elementor-container { flex-wrap: wrap !important; gap: 0 12px; padding-block: 10px; }
  body.myo .elementor-location-header .elementor-element-357aeb1,
  body.myo .elementor-location-header .elementor-element-357aeb1 > .elementor-widget-wrap { display: contents !important; }
  body.myo .elementor-location-header .elementor-element-3cbe958e { flex: 1 1 auto !important; order: 0; }
  body.myo .elementor-location-header .elementor-element-2a2dac6 { order: 1; }
  body.myo .elementor-location-header .elementor-element-f3e881e { order: 2; }
  body.myo .elementor-location-header .elementor-element-2a845e9 { order: 3; margin: 0 !important; width: auto !important; position: static !important; }
  body.myo .elementor-location-header .elementor-element-2a845e9 .elementor-nav-menu--main { display: none !important; }
  body.myo .elementor-location-header .elementor-element-2a845e9 .elementor-menu-toggle { display: flex !important; }
  body.myo .elementor-location-header .elementor-element-2a845e9 .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    display: block !important; position: absolute !important; left: 0 !important; right: 0 !important; top: 100% !important; width: auto !important;
  }
  body.myo .elementor-location-header .elementor-element-2a845e9 .elementor-menu-toggle:not(.elementor-active) + .elementor-nav-menu__container {
    transform: scaleY(0); max-height: 0; overflow: hidden; padding-block: 0; border: 0; box-shadow: none;
  }
  body.myo .elementor-location-header .elementor-element-2a845e9 .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
    transform: scaleY(1); max-height: 100vh; overflow: auto;
  }
  body.myo .elementor-location-header .elementor-element-7d5cf1b4 { position: relative; }
  body.myo .elementor-location-header .elementor-nav-menu--dropdown .sub-menu { display: block !important; position: static !important; width: auto !important; }
}
@media (max-width: 620px) {
  body.myo .elementor-location-header .elementor-element-2a2dac6 { order: 4; flex: 1 1 100% !important; margin: 8px 0 2px !important; }
  body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button-wrapper { text-align: left; }
  body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button { width: 100%; justify-content: center; font-size: 13.5px !important; padding: 9px 12px !important; }
  body.myo .elementor-location-header .elementor-element-2a2dac6 .elementor-button-icon { display: inline-flex; }
}

/* patička: dlouhé texty a zarovnání */
body.myo .elementor-location-footer .elementor-element-60f34ff { width: auto !important; max-width: 100% !important; }
body.myo .elementor-location-footer :is(p, li, a, span) { overflow-wrap: normal !important; }
@media (max-width: 1024px) {
  body.myo .elementor-location-footer .elementor-element-44d10ef1 > .elementor-container { flex-wrap: wrap; }
  body.myo .elementor-location-footer .elementor-widget-wrap { justify-content: flex-start !important; text-align: left !important; }
  body.myo .elementor-location-footer :is(.elementor-widget-text-editor, .elementor-heading-title, .elementor-widget-theme-site-logo) { text-align: left !important; }
  body.myo .elementor-location-footer .elementor-widget-theme-site-logo { width: 100% !important; }
  body.myo .elementor-location-footer .elementor-social-icons-wrapper { justify-content: flex-start !important; }
}
@media (max-width: 1024px) {
  body.myo .elementor-location-footer .elementor-element-61505e06 .elementor-social-icons-wrapper { display: flex !important; justify-content: flex-start !important; }
}

/* Dlouhá česká slova v nadpisech na mobilu – dělit slabikami, ne lámat uprostřed */
body.myo .elementor .elementor-heading-title { overflow-wrap: normal; word-break: normal; -webkit-hyphens: auto; hyphens: auto; }
@media (max-width: 480px) {
  body.myo .elementor h1.elementor-heading-title { font-size: clamp(25px, 7.3vw, 31px) !important; }
}

/* patička nesmí na mobilu vytvořit vodorovný posuv (dlaždice mapy při načítání) */
body.myo .elementor-location-footer, body.myo .elementor-location-footer .elementor-widget-osm-map-elementor { overflow-x: clip; }

/* citace na modrém (accent) pozadí – bílý text kvůli čitelnosti (původně světlé pozadí) */
body.myo .elementor-widget-blockquote .elementor-blockquote[style], body.myo .elementor-element-65504dd .elementor-blockquote { color: #fff; }
body.myo .elementor-element-65504dd .elementor-blockquote :is(p, cite, footer, a, span) { color: #fff !important; }

/* text s ručně vloženou bílou barvou (z původního tmavého webu) – na světlém podkladu by zmizel */
body.myo :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-container :is(p, li, span, strong, b, em, a)[style*="color:white" i],
body.myo :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-container :is(p, li, span, strong, b, em, a)[style*="color: white" i],
body.myo :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-container :is(p, li, span, strong, b, em, a)[style*="color:#fff" i],
body.myo :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-container :is(p, li, span, strong, b, em, a)[style*="color: #fff" i],
body.myo :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-container :is(p, li, span, strong, b, em, a)[style*="rgb(255, 255, 255)" i] { color: var(--ink) !important; }

/* tabulky v textu (např. dotazník příznaků) – na mobilu dělit slova slabikami, ne po písmenech */
body.myo .elementor .elementor-widget-container :is(td, th) { overflow-wrap: normal; word-break: normal; -webkit-hyphens: auto; hyphens: auto; }
@media (max-width: 767px) { body.myo .elementor .elementor-widget-container :is(td, th) { font-size: 13px; padding: 6px 5px; } }
body.myo .elementor .elementor-widget-container :is(td, th) :is(p, span, strong, em) { overflow-wrap: normal; }
