/* Behaviour styles that replace the WordPress plugin scripts */
[hidden]{display:none!important}
html{scroll-behavior:smooth}

/* slide-out menu animation */
.jet-mobile-menu__instance .jet-mobile-menu-cover{opacity:0;transition:opacity .3s ease}
.jet-mobile-menu__instance .jet-mobile-menu__container{transform:translateX(100%);transition:transform .3s ease}
.jet-mobile-menu__instance.is-open .jet-mobile-menu-cover{opacity:1}
.jet-mobile-menu__instance.is-open .jet-mobile-menu__container{transform:none}
.jet-mobile-menu__toggle,.jet-mobile-menu__back{cursor:pointer}

/* tabs */
.jet-tabs__control{cursor:pointer}

/* floating "back to top" button: solid colour for contrast, and the full-width
   wrapper must not swallow clicks aimed at the content beneath it */
.elementor-fixed{width:auto;pointer-events:none}
body .elementor .elementor-element.elementor-fixed .elementor-button{pointer-events:auto;background-color:#126572;color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.3);
  /* true circle with the arrow centred (the original 9px 9px 9px 14px padding pushed it right) */
  display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:50%}
body .elementor .elementor-element.elementor-fixed .elementor-button-content-wrapper{justify-content:center}
body .elementor .elementor-element.elementor-fixed .elementor-button-icon{display:flex;margin:0}
body .elementor .elementor-element.elementor-fixed .elementor-button:hover,
body .elementor .elementor-element.elementor-fixed .elementor-button:focus-visible{background-color:#0d4f5a;color:#fff}
body .elementor .elementor-element.elementor-fixed .elementor-button:focus-visible{outline:2px solid #126572;outline-offset:3px}

/* long URLs and DOIs in the reference lists must wrap instead of widening the page on phones */
.elementor-widget-text-editor{overflow-wrap:anywhere}

/* touch targets of at least 44px for footer menu and in-page contents links */
@media (max-width:1024px){
  .elementor-icon-list-item>a{display:flex;align-items:center;min-height:44px}
}

/* twemoji images */
img.emoji{display:inline!important;border:none!important;box-shadow:none!important;height:1em!important;width:1em!important;margin:0 .07em!important;vertical-align:-.1em!important;background:none!important;padding:0!important}
html{overflow-anchor:none}

/* skip link and screen-reader-only text */
.osd-skip{position:absolute;left:8px;top:-60px;z-index:100000;padding:10px 16px;border-radius:8px;background:#126572;color:#fff;font-weight:700;text-decoration:none;transition:top .15s}
.osd-skip:focus{top:8px;outline:2px solid #fff;outline-offset:2px}
.osd-sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
main:focus{outline:none}

/* headings promoted from h2 to h1 for SEO keep the look of the kit's h2 */
.elementor-kit-5 h1.osd-was-h2{color:#1AABBA;font-size:36px;font-weight:bold}
@media(max-width:767px){.elementor-kit-5 h1.osd-was-h2{font-size:1.6em}}

/* FAQ page */
.osd-faq{width:100%;max-width:880px;margin:0 auto;padding:48px 0 72px;color:#4D4D4D}
.osd-faq__title{margin:0 0 16px;color:#1AABBA;font-size:40px;line-height:1.15;font-weight:700}
.osd-faq__lead{margin:0 0 28px;font-size:19px;line-height:1.6}
.osd-faq__toc ul{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 8px;padding:0;list-style:none}
.osd-faq__toc a{display:inline-block;padding:9px 18px;border-radius:999px;background:rgba(26,171,186,.12);color:#126572;font-weight:600;text-decoration:none}
.osd-faq__toc a:hover,.osd-faq__toc a:focus-visible{background:#126572;color:#fff}
.osd-faq__group{margin-top:48px;scroll-margin-top:110px}
.osd-faq__group>h2{margin:0 0 8px;color:#1AABBA;font-size:30px;line-height:1.2;font-weight:700}
.osd-faq__item{padding:22px 0;border-top:1px solid #dbe9ec;scroll-margin-top:110px}
.osd-faq__item h3{margin:0 0 8px;color:#126572;font-size:20px;line-height:1.3;font-weight:700}
.osd-faq__item p{margin:0;font-size:17px;line-height:1.65}
.osd-faq a{color:#126572;text-decoration:underline;text-underline-offset:2px}
.osd-faq__toc a{text-decoration:none}
.osd-faq__cta{margin-top:56px;padding:26px 28px;border-radius:16px;background:#EAF6F8;text-align:center}
.osd-faq__cta p{margin:0 0 14px;font-size:18px}
.osd-faq a.osd-btn{display:inline-block;padding:10px 26px;border-radius:999px;background:#126572;color:#fff;font-weight:700;text-decoration:none}
.osd-faq a.osd-btn:hover,.osd-faq a.osd-btn:focus-visible{background:#0d4f5a}
@media(max-width:767px){
  .osd-faq{padding:32px 4px 56px}
  .osd-faq__title{font-size:30px}
  .osd-faq__lead{font-size:17px}
  .osd-faq__group>h2{font-size:25px}
  .osd-faq__item h3{font-size:18px}
  .osd-faq__item p{font-size:16px}
}

/* in-page anchor that lands right on a heading must clear the sticky header */
#st3{scroll-margin-top:120px}

/* FAQ page: white top bar (the header was copied from Poradna, whose bar is cream) */
.osd-faq-page .elementor-1228 .elementor-element.elementor-element-4a05d2f2:not(.elementor-motion-effects-element-type-background){background-color:#fff}
/* FAQ page: floating "back to top" button, position normally comes from the per-page Elementor CSS */
.osd-faq-page .elementor-fixed{position:fixed;right:31px;bottom:4%;z-index:1000}

/* Pro rodiče, weekly training plan on phones: heading, day names, icon rows and texts start on one left edge.
   Icon offsets = empty space on the left inside each 619x156 SVG (measured), so the first icon touches the edge. */
@media (max-width:767px){
  body .elementor-78 .elementor-element.elementor-element-e2673c0>.elementor-widget-container{padding-left:10px}
  #tr .elementor-inner-section .elementor-widget-text-editor>.elementor-widget-container{padding-left:0}
  #tr .elementor-inner-section .elementor-widget-image>.elementor-widget-container{text-align:left}
  #tr .elementor-inner-section .elementor-widget-image img{width:100%;max-width:100%}
  #tr .elementor-element-5bab658 img,#tr .elementor-element-98dfc1a img,#tr .elementor-element-a33f797 img{margin-left:-.73%}
  #tr .elementor-element-a18238c img,#tr .elementor-element-289349a img{margin-left:-7.66%}
  #tr .elementor-element-3f05f1f img{margin-left:-24.76%}
  #tr .elementor-element-426eec4 img{margin-left:-45.24%}
}
