/* Remove Safari's default button/input styling */
button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    -webkit-tap-highlight-color: transparent;
}

/* Remove focus/active outlines */
button:focus,
button:focus-visible,
a:focus,
a:focus-visible,
input:focus,
input:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

/* Remove Safari tap highlight */
* {
    -webkit-tap-highlight-color: transparent;
}

/* Prevent Safari from automatically turning phone numbers into links */
a[href^="tel:"] {
    color: inherit;
    text-decoration: none;
}

/* If Safari is auto-detecting numbers that aren't explicitly links */
body {
    -webkit-text-size-adjust: 100%;
}

:root {
  --article-img: url(/files/images/tooop.webp);
  --theme-red: #e81849;
  --theme-blue: #00dbde;
  --theme-light: #f8f8f8;
  --theme-dark: #191d24;

  --bg: #f6f7fb;
  --card-radius: 14px;
  --gap: 18px;
  --font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;

  --col-lite: #fdf2e9;
  /* light peach */
  --col-active: #eef9f1;
  /* light green */
  --col-pro: #eef3ff;
  /* light purple */
  --col-vip: #fff5f8;
  /* light pink */

  --accent-lite: #ff8a00;
  --accent-active: #07b88a;
  --accent-pro: #5b42f6;
  --accent-vip: #ff377f;
  --radius: 16px;
  --gallery-gap: 12px;
}

* {
  scrollbar-color: var(--theme-red) transparent;
  scrollbar-width: thin;
}

::selection {
  background-color: rgba(232, 24, 73, 0.5);
}

/* Poppins Devanagari */

/* Regular */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Italic */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* 300 */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-300.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-300italic.woff2") format("woff2");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

/* 500 */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-500.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-500italic.woff2") format("woff2");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

/* 600 */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-600italic.woff2") format("woff2");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

/* 700 */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-700.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-700italic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* 800 */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-800.woff2") format("woff2");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-800italic.woff2") format("woff2");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

/* 900 */
@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-900.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("/templates/shaper_helixultimate/fonts/poppins/poppins-v24-devanagari_latin-ext-900italic.woff2") format("woff2");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

/* Font Awesome */
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 400;
  src: url('/media/vendor/fontawesome-free/webfonts/fa-regular-400.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 400;
  src: url('/media/vendor/fontawesome-free/webfonts/fa-brands-400.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 400;
  src: url('/media/vendor/fontawesome-free/webfonts/fa-brands-400.woff2?v=cbcf42') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 900;
  src: url('/media/vendor/fontawesome-free/webfonts/fa-solid-900.woff2') format('woff2');
  font-display: swap;
}

body {
  font-family: 'Poppins', sans-serif;
  font-size: 1.15rem;
  font-weight: 400;
  text-decoration: none;
}

h1 {
  font-family: 'Poppins', sans-serif;
  font-size: 3.25rem;
  font-weight: 700;
  text-decoration: none;
  margin-bottom: 1rem;
}

h2 {
  font-family: 'Poppins', sans-serif;
  font-size: 2.5rem;
  font-weight: 900;
  text-decoration: none;
  margin-bottom: 1rem !important;
}

h3 {
  font-family: 'Poppins', sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
}

@media (min-width: 768px) and (max-width:991px) {
  body {
    font-size: 1rem;
  }
  h1 {
    font-size: 2.5rem;
  }
  h2 {
    font-size: 2.1rem;
  }
  h3 {
    font-size: 1.35rem;
  }
}

@media (max-width: 767px) {
  body {
    font-size: 1rem;
  }
  h1 {
    font-size: 2.25rem;
  }
  h2 {
    font-size: 1.8rem;
  }
  h3 {
    font-size: 1.5rem;
  }
}

.sp-megamenu-parent>li>a,
.sp-megamenu-parent>li>span,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a {
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #ffffff;
  text-decoration: none;
}

.menu.nav-pills>li>a,
.menu.nav-pills>li>span,
.menu.nav-pills .sp-dropdown li.sp-menu-item>a {
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #ffffff;
  text-decoration: none;
}

body {
  background: var(--theme-light);
}

#sp-main-body {
  padding: 0;
}

/* img {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
} */

/* Header */
#sp-header {
  position: fixed;
  background: none;
  box-shadow: none;
  transition: background .3s ease-in-out;
}

#sp-header.header-sticky {
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background: rgba(25, 29, 36, .9);
  transition: background .3s ease-in-out;
  animation: bgFade 0.3s ease-in-out forwards;
}

#sp-header.ani-fade-out {
  animation: bgFadeOut 0.3s ease-in-out forwards;
}

@keyframes bgFade {
  0% {
    background: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  100% {
    background: rgba(25, 29, 36, .9);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
  }
}

@keyframes bgFadeOut {
  0% {
    background: rgba(25, 29, 36, .9);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
  }
  100% {
    background: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

body.ltr .sp-megamenu-parent>li.sp-has-child>a:after,
body.ltr .sp-megamenu-parent>li.sp-has-child>a:hover:after {
  transition: all .2s ease-in-out;
}

.sp-megamenu-parent.menu-animation-fade-up .sp-has-child:hover>.sp-dropdown {
  animation: spFadeInUp .1s ease-in;
}

.sp-dropdown {
  position: relative;
  background: linear-gradient(45deg, var(--theme-red) 0%, var(--theme-blue) 51%, var(--theme-red) 100%);
  padding: 3px;
  border-radius: 17px;
}

.sp-dropdown-inner {
  border-radius: 14px;
  padding: 10px;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a {
  padding: 14px 0;
}

/* === Animated underline for main menu === */

.sp-megamenu-parent>li {
  margin: 0 5px;
}

/* ----------------- PARENT TOP-LEVEL ITEMS ----------------- */
.sp-megamenu-parent>li {
  position: relative;
  /* needed for ::after */
}

.sp-megamenu-parent>li::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 30px;
  width: 0;
  height: 2px;
  background: linear-gradient(45deg, var(--theme-red) 0%, var(--theme-blue) 100%);
  transition: width 0.3s ease;
}

.sp-megamenu-parent>li:hover::after,
.sp-megamenu-parent>li.active::after {
  width: 100%;
}

.sp-megamenu-parent>li>a,
.sp-megamenu-parent>li:last-child>a {
  padding: 0 10px;
}

/* ----------------- MEGA MENU ITEMS ----------------- */
.sp-megamenu-parent .sp-mega-group>li,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a {
  position: relative;
}

.sp-megamenu-parent .sp-mega-group>li::after,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background: linear-gradient(45deg, var(--theme-red) 0%, var(--theme-blue) 100%);
  transition: width 0.3s ease;
}

.sp-megamenu-parent .sp-mega-group>li:hover::after,
.sp-megamenu-parent .sp-mega-group>li:has(a[aria-current="page"])::after,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item:hover>a::after,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a::after {
  width: 100%;
}

.sp-megamenu-parent .sp-mega-group>li>a {
  text-transform: none;
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 0;
  padding: 10px 0;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a::after {
  bottom: 0;
}

.sp-megamenu-parent .sp-mega-group>li:hover>a,
.sp-megamenu-parent .sp-mega-group>li>a[aria-current="page"] {
  color: var(--theme-blue);
}

.book-icon {
  display: none;
}

.burger-icon>span,
.offcanvas-active .burger-icon>span,
#modal-menu-toggler.active .burger-icon>span {
  background-color: #fff;
}

.offcanvas-menu.border-menu .offcanvas-inner ul.menu ul {
  margin: 0;
}

body.ltr .offcanvas-menu .offcanvas-inner ul.menu>li ul {
  margin-left: 0rem;
}

.offcanvas-menu .offcanvas-inner ul.menu-child>li {
  padding: 6px 30px 6px 15px;
}

.offcanvas-menu .offcanvas-inner ul.menu>li>ul li a {
  font-size: 1.125rem;
}

body.ltr .offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent>a>.menu-toggler {
  right: 0;
  background: #333;
  color: #fff;
  border-radius: 26px;
}

.offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent>a>.menu-toggler:after {
  font-family: "Font Awesome 6 Free";
  content: "+";
}

.offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent.menu-parent-open>a>.menu-toggler {
  color: #fff;
}

.offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent.menu-parent-open>a>.menu-toggler:after {
  font-family: "Font Awesome 6 Free";
  content: "";
}

body.ltr .sp-megamenu-parent>li.sp-has-child.dropdown-open>a:after {
  font-family: "Font Awesome 6 Free";
  content: "";
}

.offcanvas-menu .offcanvas-inner ul.menu>li.active>a .menu-toggler:after,
.offcanvas-menu .offcanvas-inner ul.menu>li a:hover .menu-toggler:after,
.offcanvas-menu .offcanvas-inner ul.menu>li a:focus .menu-toggler:after {
  color: var(--theme-blue);
  transition: .2s ease-in-out;
}

.offcanvas-menu .offcanvas-inner ul.menu>li>a,
.offcanvas-menu .offcanvas-inner ul.menu>li>span {
  opacity: 1 !important;
}

/* 🚨 Helix Offcanvas menu Child Link override */

.offcanvas-menu .offcanvas-inner ul.menu-child li.active a,
.offcanvas-menu .offcanvas-inner ul.menu>li li:hover a {
  color: var(--theme-blue) !important;
}

.offcanvas-menu .offcanvas-inner ul.menu>li li a {
  color: rgba(255, 255, 255, 0.8) !important;
}

/* 🚨 Helix Offcanvas menu Mobile Dynamic Viewport override */

.offcanvas-menu {
  height: calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
  height: 100dvh !important;
  height: 100vh !important;
  min-height: 100dvh !important;
  min-height: 100vh !important;
}

.offcanvas-menu .offcanvas-inner {
  max-height: calc(100svh - 100px);
}

.offcanvas-menu .offcanvas-inner {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: env(safe-area-inset-bottom);
}

/* Upper footer */


#sp-bottom,
#jpb-addon-1758507384747 .jpb-addon-content a {
  background-color: #f8f8f8 !important;
  font-size: 18px;
  color: #00A9BA;
}

/* Button */

.btn.book,
.uk-button,
.jpb-btn-custom,
.rsform #Submit {
  color: #fff;
  border-radius: 12px;
  background: var(--theme-red);
  line-height: 18px;
  padding: 12px 20px;
  align-items: center;
  font-size: 16px;
  text-transform: none;
  border: none;
}

@media (max-width: 425px) {
  .uk-button-group {
    flex-direction: column;
    padding: 0 15px;
    gap: 10px;
  }

  a:not(.offcanvas-btn).btn.book {
    border-radius: 50%;
    padding: 13px 15px;
  }

  a:not(.offcanvas-btn)>.book-span {
    display: none;
  }

  .book-icon {
    display: block;
    font-size: 22px;
  }

  .offcanvas-btn {
    display: inline-flex;
    align-items: center;
  }

  .offcanvas-btn .book-icon {
    margin-left: 8px;
  }
}

.btn.book,
.uk-button-custom,
.jpb-btn-custom,
.rsform #Submit {
  background-image: linear-gradient(to right, var(--theme-red) 0%, var(--theme-blue) 51%, var(--theme-red) 100%);
}

.btn.book,
.uk-button-custom,
.jpb-btn-custom,
.rsform #Submit {
  transition: 0.5s;
  background-size: 200% auto;
  color: #fff;
}

.btn.book:hover,
.btn.book:focus,
.uk-button-custom:hover,
.uk-button-custom:focus,
.jpb-btn-custom:hover,
.jpb-btn-custom:focus,
.rsform #Submit:hover,
.rsform #Submit:focus {
  background-position: right center;
  color: #fff !important;
  text-decoration: none;
}

/* Body */

.white {
  color: #fff;
}

.uk-button-group {
  gap: 16px;
}

/* Map */

.full-width-map {
  display: block;
  width: 100%;
  height: 285px;
  background-image: url('/files/images/map.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 16px;
}

/* Back to top */

.progress-wrap {
  position: fixed;
  right: 20px;
  bottom: 2rem;
  height: 50px;
  width: 50px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.1);
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(15px);
  transition: all .3s linear;
  background: rgba(0, 0, 0, .4);
}

.progress-wrap.active-progress {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.progress-wrap i {
  position: absolute;
  font-size: 18px;
  color: #fff;
  z-index: 2;
  transition: color .3s linear;
}

.progress-wrap:hover i {
  color: var(--theme-red);
}

.progress-wrap svg {
  overflow: visible
}

.progress-wrap svg path {
  fill: none;
}

.progress-wrap svg.progress-circle path {
  stroke: var(--theme-red);
  stroke-width: 7;
  box-sizing: border-box;
  transition: stroke .6s linear;
}

/* test headings */

#cls_imgs .jpb-addon-single-image .jpb-addon-content {
  position: relative;
}

#cls_imgs .jpb-addon-single-image .jpb-addon-content::before {
  content: '';
  position: absolute;
  inset: -4px;
  background: linear-gradient(45deg, var(--theme-red) 0%, var(--theme-blue) 30%, var(--theme-red) 100%);
  border-radius: 24px;
  z-index: -1;
}

#cls_imgs .jpb-img-responsive {
  border-radius: 20px;
  background: var(--theme-dark);
}

.course-caption-img h3 {
  position: absolute;
  bottom: 6px;
  left: 8px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.1);
  padding: 2px 6px;
  pointer-events: none;
}

#jpagebuilder .jpb-section-title .jpb-title-heading,
#jpagebuilder .jpb-section-title {
  margin-bottom: 5px;
}

/* Courses */

#cls_imgs .jpb-row-column .jpb-addon-image-shape .jpb-addon-content {
  transition: all .2s ease-in-out;
}

/* Course */

.kurz-info {
  background: linear-gradient(135deg, var(--theme-red) 0%, var(--theme-blue) 100%);
  padding: 6px;
}

.kurz-info>.jpb-addon-content {
  padding: 30px;
  background: #fff;
}

.kurz-price {
  background: linear-gradient(135deg, var(--theme-red) 20%, var(--theme-blue) 70%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  font-size: 2.5rem;
  font-weight: 800;
  text-align: start;
  line-height: 1;
  margin-bottom: 0;
}

.kurz-price::selection {
  color: #fff;
}

.course-info ul {
  list-style: none;
  padding-left: 0;
}

.course-info ul li {
  position: relative;
  padding-left: 1.5em;
}

.course-info ul li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  background: url('/files/images/icons/check.svg');
  color: var(--theme-blue);
  width: 1.15em;
  height: 1.15em;
  background-size: contain;
}

.course-info-block .lektori-sideby {
  gap: 10px;
}

.course-info-block .addon-root-button {
  padding-left: 30px;
  padding-right: 30px;
}

@media (max-width: 1199.98px) {
  .course-info-block .addon-root-button {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (max-width: 767.98px) {
  .course-info-block .addon-root-button {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 575.98px) {
  .course-info-block .addon-root-button {
    padding-left: 0;
    padding-right: 0;
  }
}

#section-id-1758507375397 .jpb-row-container {
  padding-left: 0;
  padding-right: 0;
}


@media (min-width: 992px) {

  .jpb-row:has(>#column-wrap-id-1756401125873):has(>#column-wrap-id-1756401126089):has(>#column-wrap-id-1756405212109),
  .jpb-row:has(>#column-wrap-id-QGxe_b5wU4ouVeNdS6eQx):has(>#column-wrap-id-f2f3AerDd6Nz8bCY5g-3g):has(>#column-wrap-id-erfc-iYji8RlCdfau4uk_) {
    display: grid !important;
    grid-template-columns: 65% 35%;
    grid-auto-rows: auto;
    gap: 0;
    align-items: start;
  }

  #column-wrap-id-1756401125873,
  #column-wrap-id-1756401126089,
  #column-wrap-id-1756405212109,
  #column-wrap-id-QGxe_b5wU4ouVeNdS6eQx,
  #column-wrap-id-f2f3AerDd6Nz8bCY5g-3g,
  #column-wrap-id-erfc-iYji8RlCdfau4uk_ {
    max-width: none !important;
    flex-basis: auto !important;
  }

  #column-wrap-id-1756401125873,
  #column-wrap-id-QGxe_b5wU4ouVeNdS6eQx {
    grid-column: 1;
    grid-row: 1;
  }

  #column-wrap-id-1756401126089,
  #column-wrap-id-f2f3AerDd6Nz8bCY5g-3g {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  #column-wrap-id-1756405212109,
  #column-wrap-id-erfc-iYji8RlCdfau4uk_ {
    grid-column: 1;
    grid-row: 2;
  }
}

/* FAQs */

.faq-accordion .jpb-panel-heading .jpb-toggle-direction {
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
  color: #aaa;
}

.faq-accordion .jpb-panel-heading.active .jpb-toggle-direction {
  -webkit-transform: translateY(-50%) rotate(270deg);
  transform: translateY(-50%) rotate(270deg);
}

.faq-accordion .jpb-panel-heading {
  padding: 16px 30px 16px 15px;
}

.faq-accordion button {
  color: #000;
}

.faq-accordion p {
  font-size: 15px;
}

.faq-accordion .jpb-panel-title {
  font-size: 15px;
}

/* Blog */

.layout-blog .blog {
  margin: auto;
}

.layout-blog .blog .article-list>.row {
  justify-content: center;
}

.article-list .article {
  padding: 0;
  border: none;
}

.article-list .article .article-intro-image,
.article-list .article .article-featured-video,
.article-list .article .article-featured-audio,
.article-list .article .article-feature-gallery {
  margin: 0;
  border-bottom: none;
}

.article-list .article .article-intro-image img,
.article-list .article .article-featured-video img,
.article-list .article .article-featured-audio img,
.article-list .article .article-feature-gallery img,
.jpb-article-img-wrap .jpb-img-responsive {
  border-radius: 16px;
  height: 280px;
  width: 100%;
  object-fit: cover;
  margin-bottom: 20px;
}

.jpb-addon-articles .jpb-article-meta>time,
.jpb-addon-articles .jpb-article-meta {
  margin: 0;
}

.article-list .article .article-header h2,
.article-info,
.jpb-addon-articles .jpb-article-meta>time {
  margin-bottom: .5rem;
}

.article-list .article .article-intro-image {
  overflow: visible;
}

.jpb-article-img-wrap .jpb-img-responsive,
.article-intro-image img {
  transition: all .2s ease-in-out;
}

.jpb-addon-article:hover .jpb-article-img-wrap .jpb-img-responsive,
.article:hover .article-intro-image img,
#cls_imgs .jpb-row-column:hover .jpb-addon-image-shape .jpb-addon-content {
  transform: scale(1.05);
  transition: all .2s ease-in-out;
}

/* Article */

#ArticleCustomHeading {
  padding: 200px 0 125px;
  margin: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
  background-position: 50% 50%;
  background-image: url('/files/images/tooop.webp');
}

@media (max-width: 575px) {
  #ArticleCustomHeading {
    padding: 100px 0 75px;
  }

  #ArticleCustomHeading h1 {
    font-size: 1.75rem;
  }

  body:not(.courses) #cls_imgs .jpb-row>.jpb-row-column {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body:not(.courses) #cls_imgs .jpb-row>.jpb-row-column .addon-root-image>div {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .lections-frame {
    min-height: 1400px;
  }
}

#CustomArticleAddon .article-info {
  margin-bottom: 0;
  color: #fff;
}

#CustomArticleAddon .article-info time {
  font-size: 1rem;
  font-weight: 600;
}

.dg-section {
  will-change: top;
  z-index: 1;
  position: relative;
}

.dg-shape-container {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  z-index: 2;
}

.dg-shape-container.dg-bottom-shape {
  bottom: -1px;
}

.dg-shape-container.dg-bottom-shape svg {
  width: 100%;
  max-width: 100%;
  height: 120px;
  display: block;
  position: relative;
  left: 50%;
  transform: rotateX(180deg) translateX(-50%);
}

.dg-shape-container.dg-bottom-shape>svg path {
  fill: var(--theme-light);
}

.dg-row-overlay {
  mix-blend-mode: normal;
  background-color: rgba(25, 29, 36, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-position: center center;
  background-repeat: repeat;
  z-index: 1;
}

.dg-row-container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.dg-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

#CustomArticleColumnWrap {
  max-width: 100%;
  flex-basis: 100%;
}

.dg-row-column {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

.dg-column {
  width: 100%;
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.dg-column,
.dg-column-addons {
  position: relative;
  z-index: 1;
  width: 100%;
}

.dg-addon-title {
  margin: 0;
  padding: 0;
  color: #fff;
  display: inline-block;
}

.dg-article-body-wrapper {
  margin: auto;
}

.com-content-article__body .jpb-addon-text-block {
  margin-bottom: 3.5rem;
}

.com-content-article__body .jpb-addon-text-block p,
.com-content-article__body .jpb-addon-text-block ul,
.com-content-article__body .jpb-addon-text-block ol {
  margin-bottom: 1.5rem;
}

.com-content-article__body .jpb-addon-text-block strong {
  color: #d3104d;
}

.com-content-article__body .jpb-addon-text-block ul strong {
  color: #4b5563;
}

.com-content-article__body .jpb-addon-text-block strong::selection {
  color: #fff;
}

.question-mark {
  padding-left: 15px;
}

.question-mark>.btn {
  margin-bottom: 1.125rem;
}

.article-edit-button {
  padding-right: 15px;
}

.com-content-article__body li::marker {
  color: var(--theme-red);
}

.com-content-article__body img {
  border-radius: 22px !important;
}

.tip-wrapper {
  background: linear-gradient(135deg, var(--theme-red) 20%, var(--theme-blue) 100%);
  padding: 3px;
  border-radius: 19px;
}

.tip {
  background: #fff;
  padding: 12px 16px;
  border-radius: 16px;
  margin-bottom: 0 !important;
}

/* Breadcrumbs */

.breadcrumb {
  background: none;
  border-radius: 0;
  padding: 0 !important;
  margin-bottom: 4rem;
  font-size: 1rem;
}

@media (max-width: 575px) {
  .breadcrumb {
    margin-bottom: 2rem;
  }
}

.mod-breadcrumbs__divider.float-start {
  display: none;
}

.mod-breadcrumbs__item.breadcrumb-item a {
  color: #6c757d;
}

.mod-breadcrumbs__item.breadcrumb-item a:hover {
  color: var(--theme-blue);
}

/* Contact Form */

.rsform h2 {
  margin-bottom: 2rem;
}

.rsform textarea {
  border-radius: 16px 16px 16px 16px;
}

.rsform input:not([type="checkbox"]),
.rsform textarea {
  padding: 8px 16px;
}

.rsform input,
.rsform select {
  border-radius: 16px;
}

.rsform select {
  padding: 8px 38px 8px 16px;
  height: auto;
}

.rsform .form-check-input:checked {
  background-color: var(--theme-blue);
  border-color: var(--theme-blue);
}

.rsform #Submit {
  padding: 12px 26px;
}

/* Lektori */

.lectors-page .addon-root-image {
  position: relative;
  overflow: visible;
}

.lectors-page .addon-root-image::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scaleX(1);
  width: 150%;
  height: 150%;
  background-image: url('/files/images/mda-m-logo.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
  pointer-events: none;
  opacity: .03;
  filter: brightness(0);
}

.lectors-page .page-content>section:nth-child(even) .addon-root-image::before {
  transform: translate(-50%, -50%) scaleX(-1);
}

.lectors-page .jpb-addon-single-image-container {
  position: relative;
  z-index: 1;
}

.lectors-page .jpb-addon-single-image-container img {
  width: 100% !important;
}

/* About */

#section-id-1756497472108::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scaleX(1);
  z-index: -1;
  width: 100%;
  height: 100%;
  background-image: url('/files/images/mda-m-logo.svg');
  background-repeat: no-repeat;
  background-size: contain;
  background-attachment: scroll;
  background-position: center;
  opacity: .03;
  filter: brightness(0);
}

/* Footer */

#sp-bottom {
  padding: 0;
}

#sp-footer .container-inner {
  border-top: none;
}

#sp-footer,
#footer {
  font-size: 1rem;
  color: #ffffff;
}

.sp-copyright {
  color: #a2a2a2;
}

.jpb-icons-group-list {
  display: flex;
  /* justify-content: space-between; */
  gap: 20px;
  padding-right: 15px;
}

.jpb-icons-group-list li a {
  padding: 0 !important;
  width: unset !important;
  height: unset !important;
}

.foo-contacts {
  display: flex;
  gap: 25px;
  padding-left: 0;
}

.foo-contacts li {
  list-style: none;
}

.foo-contacts-new li i,
.foo-contacts li i {
  margin-right: 10px;
  color: #ffffff;
  transition: color 400ms, background-color 400ms;
}

.foo-contacts-new li a,
.foo-contacts li a {
  color: #ffffff !important;
  display: flex !important;
  align-items: baseline;
}

.foo-contacts-new li a:hover,
.foo-contacts-new li a:hover i {
  color: var(--theme-blue) !important;
}

.foo-contacts-new {
  padding-left: 0;
}

.foo-contacts-new li {
  list-style: none;
  display: flex !important;
  align-items: baseline;
}

/* foo-menu fix */
.foo-menu {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.foo-menu p {
  margin: 0;
}

.foo-menu-link {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  color: #fff;
  text-decoration: none;
  line-height: 1.4;
}

.icon {
  flex-shrink: 0;
  width: 14px;
  text-align: center;
}

.link-text {
  display: inline-block;
}


/* end of fix */

.foo-menu p,
.foo-contacts-new li {
  margin-bottom: 1.5rem !important;
}

.foo-menu p>a:before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f054";
  margin-right: 10px;
}

.foo-menu-link {
  color: #fff !important;
}

.foo-menu-link:hover,
.foo-menu-link:focus {
  color: var(--theme-blue) !important;
}

#sp-footer .container-inner {
  padding: 20px 0;
}

.foo-legal {
  display: flex;
  gap: 25px;
  justify-content: end;
}

.foo-legal p,
#sp-bottom .sp-module {
  margin-bottom: 0;
}

@media (min-width: 576px) {

  #sp-footer .container,
  .dg-row-container,
  .dg-article-body-wrapper {
    max-width: 540px;
  }
}

@media (min-width: 768px) {

  #sp-footer .container,
  .layout-blog .blog,
  .dg-row-container,
  .dg-article-body-wrapper {
    max-width: 720px;
  }

  #sp-footer1,
  #sp-footer2 {
    flex: 0 0 auto;
    width: 50%;
  }
}

@media (min-width: 992px) {

  #sp-footer .container,
  .layout-blog .blog,
  .dg-row-container,
  .dg-article-body-wrapper {
    max-width: 960px;
  }

  .dg-addon-title {
    max-width: 70%;
  }
}

@media (min-width: 1200px) {

  #sp-footer .container,
  .layout-blog .blog,
  .dg-row-container,
  .dg-article-body-wrapper {
    max-width: 1140px;
  }
}

@media (min-width: 1400px) {

  #sp-footer .container,
  .layout-blog .blog,
  .dg-row-container {
    max-width: 1320px;
  }
}

@media (min-width: 1200px) and (max-width: 1400px) {
  .course-info-block .addon-root-image>.clearfix {
    margin-bottom: 20px;
  }

  .course-info-block .addon-root-image>.clearfix,
  .course-info-block .addon-root-text-block>.clearfix {
    padding: 0 !important;
  }

  .course-info-block .addon-root-button {
    padding-left: 0;
    padding-right: 0;
  }
}

#sp-header.full-header-center #offcanvas-toggler.mega {
  display: none !important;
}

@media (max-width: 1256px) {
  .sp-megamenu-parent {
    display: none !important;
  }

  #sp-header.full-header-center #offcanvas-toggler.mega {
    display: flex !important;
  }
}

@media (max-width: 767px) {
  .foo-menu {
    margin-bottom: 2.75rem;
  }

  .foo-contacts-new {
    margin-bottom: 2.75rem !important;
  }

  #sp-footer .container-inner {
    padding: 16px 0 30px;
  }

  #sp-footer1 {
    order: 2;
  }

  #sp-footer2 {
    order: 1;
  }

  .sp-copyright {
    display: flex;
    justify-content: center;
  }

  .foo-legal {
    justify-content: center;
    margin-bottom: 1rem;
  }

  .breadcrumb {
    font-size: .925rem;
  }
}

.benefit-card strong {
  color: #0078d4;
}

/* JPB */

#jpagebuilder .jpagebuilder-page-edit {
  top: 120px;
}

.builder-row-settings {
  position: relative;
}

/* Pricing Table */

.mda-pricing-section {
  max-width: 800px;
  margin: 0 auto;
  padding: 40px 20px;
  text-align: left; /* zarovnanie doľava */
  font-family: "Inter", sans-serif;
}

.mda-pricing-section h2 {
  font-size: 2rem;
  margin-bottom: 30px;
  font-weight: 600;
  color: #111;
  text-align: left; /* nadpis vľavo */
}

.mda-pricing-table-wrapper {
  overflow-x: auto;
}

.mda-pricing-table {
  width: 100%;
  border-collapse: collapse;
  border-radius: 12px;
  overflow: hidden;
  background-color: #fff;
}

.mda-pricing-table thead {
  background-color: #f8f8f8;
}

.mda-pricing-table th {
  padding: 16px;
  text-align: left;
  font-size: 1rem;
  font-weight: 600;
  color: #333;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.mda-pricing-table td {
  padding: 16px;
  border-bottom: 1px solid #eee;
  color: #444;
  font-size: 1rem;
  text-align: left;
}

.mda-pricing-table tr:last-child td {
  border-bottom: none;
}

.mda-pricing-table tbody tr:hover {
  background-color: #f9fafb;
  transition: background 0.2s ease;
}

@media (max-width: 600px) {
  .mda-pricing-table th,
  .mda-pricing-table td {
    padding: 12px;
    font-size: 0.9rem;
  }
  .mda-pricing-section h2 {
    font-size: 1.6rem;
  }
}




.price-table.table-container {
  width: 100%;
  overflow-x: auto;
  margin: 20px 0;
  border-radius: 12px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.price-table table {
  width: 100%;
  border-collapse: collapse;
  font-family: "Segoe UI", Tahoma, sans-serif;
  font-size: 14px;
  min-width: 900px;
}

.price-table thead {
  background: #00a9ba;
  color: #fff;
  text-align: left;
}

.price-table thead th {
  padding: 12px;
  font-weight: 600;
}

.price-table tbody tr {
  border-bottom: 1px solid #e0e0e0;
}

.price-table tbody tr:nth-child(even) {
  background: #f9f9f9;
}

.price-table tbody td {
  padding: 10px 12px;
}

.price-table tbody tr:hover {
  background: #eaf3fc;
  transition: 0.2s;
}

/* Pricing Page */

.credit-packs {
  font-family: var(--font-sans);
  padding: 28px;
  border-radius: 12px;
}

.cp-title {
  margin: 0 0 12px 8px;
  font-size: 22px;
}

.cp-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  column-gap: var(--gap);
  row-gap: var(--gap);
  justify-content: start;
}

/* At max width 1199px — force exactly 2 columns */
@media (max-width: 1199px) {
  .cp-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Optional: at very small screens, stack them in 1 column */
@media (max-width: 768px) {
  .cp-grid {
    grid-template-columns: 1fr;
  }
}


.cp-card {
  background: #fff;
  border-radius: var(--card-radius);
  padding: 16px;
  box-shadow: 0 6px 18px rgba(12, 20, 40, 0.06);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform .18s ease, box-shadow .18s ease;
  position: relative;
  overflow: hidden;
}

.cp-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(12, 20, 40, 0.12);
}

.cp-card header h3 {
  margin: 0;
}

.cp-sub {
  margin: 6px 0 0;
  color: #657089;
  font-size: 13px;
}

.cp-body {
  margin: 12px 0;
}

.cp-price {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 8px;
}

.cp-features {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 14px;
  color: #24324a;
}

.cp-features li {
  padding: 6px 0;
}

.cp-btn {
  display: block;
  text-align: center;
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-weight: 700;
  background: rgba(36, 50, 74, 0.06);
}

.cp-btn:hover {
  filter: brightness(0.98);
}

.cp-cta {
  background: linear-gradient(90deg, var(--accent-pro), var(--accent-vip));
  color: #fff;
}

.cp-card>header>h3::selection,
.cp-sub::selection,
.cp-price::selection,
.cp-btn::selection {
  color: #fff;
}

/* Tooltip */

.price-tooltip {
  position: relative;
  align-items: center;
  width: 100%;
}

.price-tooltip-icon {
  display: inline-block;
  width: 18px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  border-radius: 50%;
  background-color: #333;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  cursor: help;
  user-select: none;
  margin-left: 2px;
}

.price-tooltip-text {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  bottom: 120%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 8px 10px;
  border-radius: 6px;
  width: max-content;
  max-width: 220px;
  z-index: 10;
  font-size: 0.85rem;
  line-height: 1.3;
  white-space: normal;

  transition: opacity 0.2s ease-in-out;
  pointer-events: none;
}

/* Small arrow under tooltip */
.price-tooltip-text::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
}

.price-tooltip-icon:hover+.price-tooltip-text {
  visibility: visible;
  opacity: 1;
}


/* Per-card color accents */
.cp-lite {
  background: linear-gradient(180deg, var(--col-lite), #fff);
  border: 1px solid rgba(255, 138, 0, 0.06);
}

.cp-lite .cp-price {
  color: var(--accent-lite);
}

.cp-lite .cp-btn {
  background: rgba(255, 138, 0, 0.08);
  color: var(--accent-lite);
  transition: background .2s ease-in;
}

.cp-lite .cp-btn:hover {
  background: rgba(255, 138, 0, 0.16);
}

.cp-active {
  background: linear-gradient(180deg, var(--col-active), #fff);
  border: 1px solid rgba(7, 184, 138, 0.06);
}

.cp-active .cp-price {
  color: var(--accent-active);
}

.cp-active .cp-btn {
  background: rgba(7, 184, 138, 0.08);
  color: var(--accent-active);
  transition: background .2s ease-in;
}

.cp-active .cp-btn:hover {
  background: rgba(7, 184, 138, 0.16);
}

.cp-pro {
  background: linear-gradient(180deg, var(--col-pro), #fff);
  border: 1px solid rgba(91, 66, 246, 0.06);
}

.cp-pro .cp-price {
  color: var(--accent-pro);
}

.cp-pro .cp-btn {
  background: rgba(91, 66, 246, 0.08);
  color: var(--accent-pro);
  transition: background .2s ease-in;
}

.cp-pro .cp-btn:hover {
  background: rgba(91, 66, 246, 0.16);
}

.cp-vip {
  background: linear-gradient(180deg, var(--col-vip), #fff);
  border: 1px solid rgba(255, 55, 127, 0.06);
}

.cp-vip .cp-price {
  color: var(--accent-vip);
}

.cp-vip .cp-btn {
  background: rgba(255, 55, 127, 0.08);
  color: var(--accent-vip);
  transition: background .2s ease-in;
}

.cp-vip .cp-btn:hover {
  background: rgba(255, 55, 127, 0.16);
}

/* responsive tweaks */
@media (max-width:700px) {
  .cp-price {
    font-size: 22px;
  }
}

/* Cookie Consent */

.cc-trigger.cc-trigger-icon.cc-trigger-bottom {
  bottom: 2rem !important;
}

.cc_div .b-tg .c-tg {
  background: linear-gradient(135deg, var(--theme-red) 20%, var(--theme-blue) 100%) !important;
}

.cc_div .off-i::after,
.cc_div .off-i::before,
.cc_div .off-i::after,
.cc_div .off-i::before {
  background: #fff !important;
}

#s-bns {
  display: flex;
}

#s-cnt button+button {
  margin-right: 1em;
}

#s-sv-bn {
  order: 1;
  margin-left: 0 !important;
}

#s-rall-bn {
  order: 2;
  margin-left: 2em !important;
}

#s-all-bn {
  order: 3;
}

@media screen and (max-width: 688px) {
  #s-cnt button+button {
    margin-top: 0 !important;
  }

  .bns-t #s-bns {
    height: 4.75em !important;
  }
}

@media (max-width: 576px) {
  .bns-t #s-bns {
    height: 10.5em !important;
  }

  #s-bns {
    flex-direction: column;
    justify-content: center;
  }

  #c-bns button+button,
  #s-cnt button+button {
    margin-top: .625em !important;
  }

  #s-cnt button+button {
    margin-right: 0;
  }

  #s-rall-bn {
    margin-left: 0 !important;
  }

  #s-all-bn {
    margin-top: .625em;
  }
}

/* calendiari override */

#booking-embedded-body .caret {
  margin-left: 5px !important;
}

#booking-embedded-body #booking-user-wrap a {
  display: inline-flex !important;
  align-items: center !important;
}

/* Calendar */

.calendar-wrap {
  margin-bottom: 2rem;
}

/* Error */

.error-logo {
  max-width: 300px;
  width: 100%;
}

/* Gallery */

.gallery {
  column-count: 4;
  column-gap: 16px;
}

.gallery-item {
  margin-bottom: 16px;
  width: 100%;
  transition: .2s ease-in;
}

.gallery-item .img-wrapper {
  overflow: visible;
  display: block;
}

.gallery-item img {
  width: 100%;
  display: block;
  border-radius: 8px;
}

/* .gallery-item:hover {
  transform: scale(1.03);
} */

@media (max-width: 1199px) {
  .gallery {
    column-count: 3;
  }
}

@media (max-width: 991px) {
  .gallery {
    column-count: 2;
  }
}

@media (max-width: 425px) {
  .gallery {
    column-count: 1;
  }
  
  .kurz-price {
    font-size: 2.2rem;
  }

  /* .gallery-item:hover {
    transform: scale(1.05);
  } */
}

img.jpb-element-lazy {
  -webkit-filter: blur(20px);
  will-change: filter;
  transform: translateZ(0);
}

img.jpb-element-lazy.jpb-element-loaded {
  animation-duration: .2s;
  transition: filter 0.2s ease, -webkit-filter 0.2s ease;
}

@media (min-width: 992px) and (max-width: 1199px) {
  .kurz-price span {
      vertical-align: top;
  }
}

@media (max-width: 366px) {
  .kurz-price span {
      vertical-align: middle;
  }
}

.loginhome {
  margin-top: 120px;
}

@media (max-width:767px) {
    .layout-blog .blog {
      max-width: 540px;
    }
}

@media (max-width: 580px) {
    .layout-blog .blog {
      padding: 0 20px;
    }
}

.view-login #sp-main-body {
  padding-top: 150px;
}