/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

/*=== LAYOUT ====*/
/* Omezení šířky celého webu na 2100 px, vycentrováno */
#boxed-wrapper {
    max-width: 2100px;
    margin: 0 auto;
    position: relative;   /* aby se absolutní/transparentní hlavička vztahovala k boxu, ne k viewportu */
    overflow-x: clip;     /* kdyby něco vnitřního přečuhovalo */
}

/* Sticky hlavička (Avada ji při scrollu přepne na position: fixed) – držet ve stejné šířce a ve středu */
.fusion-fullwidth.fusion-sticky-container.fusion-container-stuck {
    left: 0;
    right: 0;
    width: 100%;
    max-width: 2100px;
    margin-left: auto;
    margin-right: auto;
}


/*==================== GLOBAL ============================*/

::selection {
    background-color: var(--awb-color5);
    color: var(--awb-color1);
}

::-moz-selection {
    background-color: var(--awb-color5);
    color: var(--awb-color1);
}

.avada-html-layout-boxed,
.avada-html-layout-boxed body,
.avada-html-layout-boxed body.custom-background,
html:not(.avada-html-layout-boxed):not(.avada-html-layout-framed),
html:not(.avada-html-layout-boxed):not(.avada-html-layout-framed) body {
  background-color: var(--awb-color1) !important;
}

html body.layout-wide-mode #wrapper {
  max-width: 2550px;
  margin: 0 auto;
}

body .p___nomargin,
.post-content .p__nomargin p,
footer .p__nomargin p,
.fusion-page-title-bar.fusion-tb-page-title-bar .p__nomargin p {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-block-start: 0px;
  margin-block-end: 0px;
}

body .a_nodec,
body .a_nodec a {
  text-decoration: none;
}

.col__imgfill .fusion-column-wrapper,
.col__imgfill .fusion-column-wrapper .fusion-image-element,
.col__imgfill .fusion-column-wrapper .fusion-image-element .fusion-imageframe,
.col__imgfill .fusion-column-wrapper .fusion-image-element .fusion-imageframe img {
  width: 100%;
  height: 100%;
}

.col__imgfill .fusion-column-wrapper {
  position: relative;
}

.col__imgfill .fusion-column-wrapper .fusion-image-element .fusion-imageframe img {
  object-fit: cover;
}

.col__imgfill.col__imgfill-absolute .fusion-column-wrapper .fusion-image-element {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.d-flex {
  display: flex;
}

.flex-row {
  flex-direction: row;
}

.flex-col {
  flex-direction: column;
}

.wrap-nowrap {
  flex-wrap: nowrap;
}

.align-items-start {
  align-items: flex-start;
}

.align-items-center {
  align-items: center;
}

.align-items-end {
  align-items: flex-end;
}

.justify-content-start {
  justify-content: flex-start;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-end {
  justify-content: flex-end;
}

.justify-content-between {
  justify-content: space-between;
}

.gap-px-8 {
  gap: 8px;
}

.mr-px-4 {
  margin-right: 4px;
}

.mr-px-8 {
  margin-right: 8px;
}

.mr-px-16 {
  margin-right: 16px;
}

.mb-px-12 {margin-bottom: 12px;}
.mb-px-16 {margin-bottom: 16px;}


.w-100 {
  width: 100%;
}

.w-px-150 {width: 150px;}
.w-px-56 {width: 56px;}
.h-px-56 {height: 56px;}

.cont__fw_pr.fusion-fullwidth,
.awb-off-canvas .cont__fw_pr.fusion-fullwidth {
  padding-right: calc((100vw - var(--site_width)) / 2)
}

.cont__fw_pl.fusion-fullwidth,
.awb-off-canvas .cont__fw_pl.fusion-fullwidth,
.col__fw_pl.fusion-layout-column>.fusion-column-wrapper {
  padding-left: calc((100vw - var(--site_width)) / 2) 
}

.col__fw_pr.fusion-layout-column>.fusion-column-wrapper,
.col__fw_pr.fusion-layout-column>.fusion-column-wrapper {
  padding-right: calc((100vw - var(--site_width)) / 2) 
}

.post-content .fusion-title .fusion-title-heading .d-inline.title-subheading {
  display: inline-flex !important;
}

.fill-4 {fill: var(--awb-color4)}

.pe-none {pointer-events: none;}
/*=============== DECS =================*/
.text-line-left {display: inline-flex}
.text-line-left::before {
  content: '';
  position: relative;
  display: inline-flex;
  width: 4px;
  margin-right: 24px;
  height: 100%;
  background: var(--awb-color4);
  border-radius: 4px;
}

.col__grad-cover_dark.fusion-layout-column > .fusion-column-wrapper::before {
    content: '';
    background: radial-gradient(66.57% 50% at 50% 50%, rgba(0, 78, 90, .8) 61.98%, #004e5a 100%);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
}

.col__grad-cover_semidark.fusion-layout-column > .fusion-column-wrapper::before {
    content: '';
    background: radial-gradient(66.57% 50% at 50% 50%, rgba(2, 44, 51, 0.2) 61.98%, rgba(4, 51, 58, 0.4) 100%);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
}

.col__bcg.fusion-layout-column {width: calc(100vw + 64px)}


.color-accent {color:var(--awb-color4)}

/*======= HEADER ========*/
header nav.awb-menu.menu-desktop,
header nav.awb-menu.menu-desktop > .fusion-menu {
  height: 100%;
}

header > .fusion-builder-row,
header .fusion-layout-column,
header .fusion-column-wrapper,
header .fusion-image-element,
header .logo,
header nav.awb-menu.menu-desktop,
header nav.awb-menu.menu-desktop > .fusion-menu,
header nav.awb-menu.menu-desktop > .fusion-menu > li,
header a.i__mobile-menu.fb-icon-element {
  z-index: auto !important;
  isolation: auto !important;
  filter: none !important;
  transform: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  will-change: auto !important;
  backdrop-filter: none !important;
  contain: none !important;
}

header .logo img,
header nav.awb-menu.menu-desktop > .fusion-menu > li > .awb-menu__main-a {
  mix-blend-mode: difference !important;
}
/* header nav.awb-menu > .fusion-menu > li {z-index: 999999 !important;} */
header nav.awb-menu.menu-desktop > .fusion-menu > li::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 4px;
  background: var(--awb-color4);
  bottom: 0px;
  left: 0;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.5s 0.25s;
  z-index: 10;
  border-radius: 4px;
}

header nav.awb-menu.menu-desktop > .fusion-menu > li:hover::after,
header nav.awb-menu.menu-desktop > .fusion-menu > li:active::after,
header nav.awb-menu.menu-desktop > .fusion-menu > li.scroll-active::after {
  transform: scaleX(1);
}

/* Pozadí headeru – animace přes top místo transform,
   aby Safari nevytvářelo kompozitní vrstvu a difference fungoval i během přechodu */
header::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: -100%;
  left: 0;
  right: 0;
  background: var(--awb-color1);
  -webkit-transition: top 0.5s;
  transition: top 0.5s;
  /* border-bottom: var(--awb-color3) 4px solid; */
  z-index: -1;
}

/* Spodní linka – animace přes height místo scaleY */
header::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--awb-color3);
  -webkit-transition: height 0.5s 0s;
  transition: height 0.5s 0s;
  z-index: -1;
}

body header.fusion-sticky-transition::before,
header:hover::before {
  top: 0;
}
body header.fusion-sticky-transition::after,
header:hover::after {
  height: 4px;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}

body header .logo,
body header.fusion-sticky-transition .logo {
  height: 70px;
  max-height: unset;
  transition: all 0.5s;
}
body header .logo a {display: flex; flex-direction: row; justify-content: flex-start; height: 70px;}


body header .fusion-image-element:has(.logo), 
body header.fusion-sticky-transition .fusion-image-element:has(.logo),
body header .logo, 
body header.fusion-sticky-transition .logo,
body header .logo a, 
body header.fusion-sticky-transition .logo a,
body header .logo img, 
body header.fusion-sticky-transition .logo img {
    transition: all 0.5s;
}

body header .logo img, 
body header.fusion-sticky-transition .logo img { max-height: 100% !important;}

body header .logo img,
body header.fusion-sticky-transition .logo img {
  height: 100%;
  max-height: 100% !important;
}

body header .logo img,
body header.fusion-sticky-transition .logo img {
  width: 114px;
  height: 70px;
  max-width: none;
  object-fit: contain;
  object-position: left center;
}

@media (min-width: 1025px) {
  body header.fusion-sticky-transition .logo img {
    width: 180px;
  }
}

/* ssafari */

/* ===== SAFARI MIX-BLEND-MODE FIX ===== */

/* Header je izolovaný – blend se počítá jen vůči jeho vlastnímu ::before,
   nikdy vůči obsahu stránky pod ním */
header {
  isolation: isolate !important;
  -webkit-isolation: isolate;
  overflow: visible;
}

/* Odstranění vlastností, které mohou bránit blendingu (vnitřní obaly zůstávají průchozí) */
header > .fusion-builder-row,
header .fusion-layout-column,
header .fusion-column-wrapper,
header .fusion-image-element,
header .logo,
header nav.awb-menu.menu-desktop,
header nav.awb-menu.menu-desktop > .fusion-menu,
header nav.awb-menu.menu-desktop > .fusion-menu > li,
header a.i__mobile-menu.fb-icon-element {
  isolation: auto !important;
  mix-blend-mode: normal !important;

  -webkit-filter: none !important;
  filter: none !important;

  -webkit-transform: none !important;
  transform: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  will-change: auto !important;
  contain: none !important;
}

/* Logo a menu – difference */
header .logo img,
header nav.awb-menu.menu-desktop > .fusion-menu > li > .awb-menu__main-a {
  -webkit-mix-blend-mode: difference !important;
  mix-blend-mode: difference !important;

  -webkit-filter: none !important;
  filter: none !important;

  isolation: auto !important;
  position: relative;
  z-index: 2;
}

/* Mobilní hamburger – stejné chování jako logo (bílý, na hover/sticky invertovaný) */
header a.i__mobile-menu.fb-icon-element,
header a.i__mobile-menu.fb-icon-element i {
  -webkit-mix-blend-mode: difference !important;
  mix-blend-mode: difference !important;
  color: #fff !important;
  position: relative;
  z-index: 2;
}




/*=============== BUTTON ========================*/
.fusion-button.button-flat {
  --gt-arrow-size: 1.3em;   /* velikost ikony */
  --gt-arrow-gap: .7em;     /* mezera text ↔ šipka */
  --gt-shift: calc((var(--gt-arrow-size) + var(--gt-arrow-gap)) / 2);
 
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
 
.fusion-button.button-flat .fusion-button-text,
.fusion-button.button-flat .awb-button__draw-arrow {
  transition: transform .45s cubic-bezier(.4, 0, .2, 1), color .3s ease;
}
 
.fusion-button.button-flat .awb-button__draw-arrow {
  flex: 0 0 auto;
  width: var(--gt-arrow-size);
  height: var(--gt-arrow-size);
  margin-left: var(--gt-arrow-gap);
  margin-right: calc(-1 * (var(--gt-arrow-size) + var(--gt-arrow-gap)));
  overflow: visible;
  pointer-events: none;
  color: var(--button_accent_color, currentColor);
}
 
.fusion-button.button-flat .awb-button__draw-arrow path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: var(--gt-arrow-visible, 41.46) var(--gt-arrow-total, 65.91);
  stroke-dashoffset: var(--gt-arrow-visible, 41.46);
  transition: stroke-dashoffset .55s cubic-bezier(.4, 0, .2, 1);
}

.fusion-button.button-flat:hover .fusion-button-text,
.fusion-button.button-flat:hover .awb-button__draw-arrow,
.fusion-button.button-flat:focus-visible .fusion-button-text,
.fusion-button.button-flat:focus-visible .awb-button__draw-arrow {
  transform: translateX(calc(-1 * var(--gt-shift)));
}
 
.fusion-button.button-flat:hover .awb-button__draw-arrow,
.fusion-button.button-flat:focus-visible .awb-button__draw-arrow {
  color: var(--button_accent_hover_color, currentColor);
}
 
.fusion-button.button-flat:hover .awb-button__draw-arrow path,
.fusion-button.button-flat:focus-visible .awb-button__draw-arrow path {
  stroke-dashoffset: calc(var(--gt-arrow-visible, 41.46) - var(--gt-arrow-total, 65.91));
}
 
@media (prefers-reduced-motion: reduce) {
  .fusion-button.button-flat .fusion-button-text,
  .fusion-button.button-flat .awb-button__draw-arrow,
  .fusion-button.button-flat .awb-button__draw-arrow path {
    transition-duration: 0s;
  }
}

/*=========== ELEMENTY ===================*/
/*=== SEPARATOR ===*/
.fusion-body .fusion-separator-border.sep-solid {
  border-radius: 50px;
}

/*=== CHECKLIST ===*/
.list-vertical {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 24px;
	row-gap: 4px;
	margin: 0;
	padding: 0;
	height: auto !important;
	max-height: none !important;
}

.list-vertical.list-vertical-left {justify-content: flex-start;}

.list-vertical > .fusion-li-item {
	position: relative;
	display: flex;
	align-items: center;
	width: auto;
	margin: 0;
	padding: 0;
	white-space: nowrap;
}



.list-vertical > .fusion-li-item > .icon-wrapper {
	display: none;
}

.list-vertical > .fusion-li-item > .fusion-li-item-content {
	margin: 0;
	padding: 0;
}

.list-dot-divider > .fusion-li-item::before {
	content: "";
	position: absolute;
	left: -14px;
	top: 50%;
	width: 4px;
	height: 4px;
	background: var(--awb-color4);
	border-radius: 50%;
	transform: translateY(-50%);
}

.list-dot-divider > .fusion-li-item.row-first::before {
	display: none;
}

/*==== POST CARDS CAROUSEL ===*/
.awb-swiper.awb-carousel .awb-swiper-button {
  --gt-arrow-size: var(--awb-arrow-size, 1.6em);
  --gt-arrow-scale: 1.2;
  --gt-flip: 1;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: var(--awb-arrow-box-width, auto);
  height: var(--awb-arrow-box-height, auto);
  padding: 0;
  overflow: visible;
  color: var(--awb-arrow-color, currentColor);
  background: var(--awb-arrow-bgcolor, transparent);
  cursor: pointer;
  transition: color .3s ease, background-color .3s ease;
}

.awb-swiper.awb-carousel .awb-swiper-button:hover,
.awb-swiper.awb-carousel .awb-swiper-button:focus-visible {
  color: var(--awb-arrow-hover-color, currentColor);
  background: var(--awb-arrow-hover-bgcolor, transparent);
}

.awb-swiper.awb-carousel .awb-swiper-button > i {
  display: none;
}

.awb-swiper.awb-carousel .awb-swiper-button-prev {
  --gt-flip: -1;
}

.awb-swiper.awb-carousel .awb-swiper-button svg {
  display: block;
  flex: 0 0 auto;
  width: var(--gt-arrow-size);
  height: var(--gt-arrow-size);
  overflow: visible;
  pointer-events: none;
  transform: scale(var(--gt-flip), 1);
  transition: transform .45s cubic-bezier(.4, 0, .2, 1);
}

.awb-swiper.awb-carousel .awb-swiper-button svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 41.46 65.91;
  stroke-dashoffset: -24.45;
}

.awb-swiper.awb-carousel .awb-swiper-button .gt-carousel-label {
  position: absolute;
  top: 100%;
  margin-top: .35em;
  font-size: 13px;
  line-height: 1;
  letter-spacing: .05em;
  text-transform: uppercase;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transform: translateY(-.4em);
  transition: opacity .35s ease, transform .45s cubic-bezier(.4, 0, .2, 1);
}

.awb-swiper.awb-carousel .awb-swiper-button-prev .gt-carousel-label {
  left: 0;
}

.awb-swiper.awb-carousel .awb-swiper-button-next .gt-carousel-label {
  right: 0;
}

.awb-swiper.awb-carousel .awb-swiper-button:hover svg,
.awb-swiper.awb-carousel .awb-swiper-button:focus-visible svg {
  transform: scale(calc(var(--gt-flip) * var(--gt-arrow-scale)), var(--gt-arrow-scale));
}

.awb-swiper.awb-carousel .awb-swiper-button:hover svg path,
.awb-swiper.awb-carousel .awb-swiper-button:focus-visible svg path {
  animation: gt-arrow-sweep .7s cubic-bezier(.4, 0, .2, 1) both;
}

.awb-swiper.awb-carousel .awb-swiper-button:hover .gt-carousel-label,
.awb-swiper.awb-carousel .awb-swiper-button:focus-visible .gt-carousel-label {
  opacity: 1;
  transform: translateY(0);
}

@keyframes gt-arrow-sweep {
  from { stroke-dashoffset: -24.45; }
  to   { stroke-dashoffset: -131.82; }
}

.awb-swiper.awb-carousel .awb-swiper-button.swiper-button-disabled {
  opacity: .35;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .awb-swiper.awb-carousel .awb-swiper-button,
  .awb-swiper.awb-carousel .awb-swiper-button svg,
  .awb-swiper.awb-carousel .awb-swiper-button .gt-carousel-label {
    transition-duration: 0s;
  }
  .awb-swiper.awb-carousel .awb-swiper-button:hover svg path,
  .awb-swiper.awb-carousel .awb-swiper-button:focus-visible svg path {
    animation: none;
  }
}

/*=== layout ===*/
.pc-carousel_custom-layout {
  --gt-arrow-offset: 0px;   /* posun šipek od kraje carouselu (+ dovnitř, - ven) */
}

.pc-carousel_custom-layout .swiper-slide {
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .5s ease, transform .5s ease !important;
}

.pc-carousel_custom-layout .swiper-slide-prev,
.pc-carousel_custom-layout .swiper-slide-active,
.pc-carousel_custom-layout .swiper-slide-next {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.pc-carousel_custom-layout .swiper-slide-prev,
.pc-carousel_custom-layout .swiper-slide-next {
  opacity: .85 !important;
}

/* šipky – bez pozadí, u krajů carouselu */
.pc-carousel_custom-layout .awb-swiper-button {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

.pc-carousel_custom-layout .awb-swiper-button-prev { left: var(--gt-arrow-offset) !important; }
.pc-carousel_custom-layout .awb-swiper-button-next { right: var(--gt-arrow-offset) !important; }

/*==== SERVICE ====*/
.col__service.fusion-layout-column > .fusion-column-wrapper::before {
  content:'';
  position: absolute;
  bottom: 0;
  top: 0;
  bottom: 0;
  left: 20px;
  height: 100%;
  width: 4px;
  border-radius: 160px;
  background: var(--awb-color3);
}

/* ==== FORM LABELS ====*/

.fusion-form .fusion-form-field {
  position: relative;
}

.fusion-form .fusion-form-label-wrapper label,
.fusion-form .fusion-form-textarea-field > label {
  position: absolute;
  left: 15px;
  top: 18px;
  margin: 0;
  z-index: 2;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 14px;
  line-height: 1;
  color: #666;
  pointer-events: none;
  transition: top .2s ease, font-size .2s ease;
}

.fusion-form .fusion-form-input:not([type="checkbox"]) {
  padding: 24px 15px 8px !important;
  min-height: 56px;
}
.fusion-form textarea.fusion-form-input {
  padding-top: 26px;
}

.fusion-form .fusion-form-field:focus-within .fusion-form-label-wrapper label,
.fusion-form .fusion-form-field:focus-within > label,
.fusion-form .fusion-form-field:has(.fusion-form-input:not(:placeholder-shown)) .fusion-form-label-wrapper label,
.fusion-form .fusion-form-field:has(.fusion-form-input:not(:placeholder-shown)) > label {
  top: 8px;
  font-size: 10px;
}

.fusion-form .fusion-form-input::placeholder {
  color: transparent;
}
.fusion-form .fusion-form-consent-field .fusion-form-label-wrapper {
  display: none;
}

.fusion-form textarea.fusion-form-input {
  padding-top: 32px;
  resize: none;
  display: block;
}

.fusion-form .fusion-form-textarea-field > label {
  top: 18px;
  left: 0;
  right: 0;
  padding: 0 15px;
  height: 18px;
}

.fusion-form .fusion-form-textarea-field:focus-within > label,
.fusion-form .fusion-form-textarea-field:has(.fusion-form-input:not(:placeholder-shown)) > label {
  top: 0;
  padding-top: 8px;
  padding-bottom: 6px;
  height: 24px;
  font-size: 10px;
  background: var(--awb-color2); /* stejná barva jako pozadí inputu */
}

/* Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--awb-color5) var(--awb-color2);
}

/* Chrome, Edge, Safari */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: var(--awb-color2);
}

::-webkit-scrollbar-thumb {
  background: var(--awb-color5);
  border-radius: 10px;
  border: 2px solid var(--awb-color2); /* vytvoří mezeru kolem posuvníku */
}

::-webkit-scrollbar-thumb:hover {
  background: var(--awb-color4);
}

::-webkit-scrollbar-corner {
  background: var(--awb-color2);
}

/*====== FORM ======*/
.form-submission-notices {
  position: absolute;
  z-index: 10;
  top: 0;
  right: 30px;
  left: 30px;
  width: calc(100% - 60px);
  transform: translateY(-50%);
}

.fusion-form .form-submission-notices .fusion-alert.alert-success.success {
    --awb-background-color: var(--awb-color2);
    --awb-accent-color: var(--awb-color6);
}

.fusion-form .form-submission-notices .fusion-alert.alert-danger.error {
    --awb-background-color: var(--awb-color2);
    --awb-accent-color: #8d0b0b;
}
form.fusion-form::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  transform: translateY(-50%);
  background: var(--wp--preset--color--awb-color-custom-1);
  opacity: 0;
  pointer-events: none;
}
form.fusion-form:has(.fusion-alert.alert-danger.error[style*="display: block"]) .fusion-form-field,
form.fusion-form:has(.fusion-alert.alert-success.success[style*="display: block"]) .fusion-form-field {
  opacity: 0.2;
  pointer-events: none;
}

.fusion-form .fusion_alert {
    border-color: transparent;
}

.fusion-form .fusion-alert .fusion-alert-content-wrapper {
    flex-direction: column;
    gap: 8px;
}
.fusion-form  .fusion-alert .alert-icon i {font-size: 4rem}
.fusion-form  .fusion-alert.alert-success .alert-icon {color: green;}
.fusion-form  .fusion-alert.alert-danger .alert-icon {color: rgb(85, 13, 13);}
.fusion-form  .fusion-alert .fusion-alert-content { 
  color: var(--awb-color6)
}

.fusion-form .fusion-alert.awb-alert-close-boxed .close {
    border-color: transparent;
    background: var(--awb-color8);
    color: var(--awb-color1);
    top: 4px;
    right: 4px;
    font-size: 20px
}

.fusion-form .fusion-alert.awb-alert-close-boxed .close:hover {
    background: var(--awb-color4);
} 

/*====== FUSION TEXT - TITLES ======*/
.post-content .fusion-text h2 {font-size: 32px !important;margin-bottom: 16px;}


/*========== PTB empty ===========*/
body:has(section.fusion-page-title-bar:has(.empty)) header {
background-color: var(--awb-color4) !important
}

/*===== MOBILE MENU =========*/
.offc-mobile-menu .awb-off-canvas .awb-off-canvas-inner .off-canvas-content {
  display: flex;
  align-items: center;
  justify-content: center;
}
.offc-mobile-menu .awb-off-canvas .awb-off-canvas-inner .off-canvas-content .fusion-fullwidth,
.offc-mobile-menu .awb-off-canvas .awb-off-canvas-inner .off-canvas-content .fusion-builder-row,
.offc-mobile-menu .awb-off-canvas .awb-off-canvas-inner .off-canvas-content .fusion-builder-row > .fusion-layout-column,
.offc-mobile-menu .awb-off-canvas .awb-off-canvas-inner .off-canvas-content .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper {
  width: 100%;
}

.offc-mobile-menu .fusion-menu li::after {
  content: '';
  position: absolute;
  height: 4px;
  width: 100%;
  background: var(--awb-color4);
  bottom: 0;
  left: 0;
  z-index: 1;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s;
}

/* hover jen tam, kde existuje (myš) */
@media (hover: hover) and (pointer: fine) {
  .offc-mobile-menu .fusion-menu li:hover::after {
    transform: scaleX(1);
  }}
.offc-mobile-menu .fusion-menu li:active::after,
.offc-mobile-menu .fusion-menu li.scroll-active::after,
.offc-mobile-menu .fusion-menu li.current-menu-item::after,
.offc-mobile-menu .fusion-menu li.current_page_item::after {
  transform: scaleX(1);
}


header a.i__mobile-menu.fb-icon-element {
  margin-right: 0px !important;
}
header a.i__mobile-menu.fb-icon-element::before {
  content: '';
    display: block;
    background: url(/wp-content/uploads/2026/10/menu_white_ver2.svg) center center / contain no-repeat;
    width: 44px;
    height: 40px;
}

/* close */
.offc-mobile-menu.awb-off-canvas-wrap .awb-off-canvas {
  top: 0 !important;
  bottom: auto !important;
  height: 100vh !important;
  height: 100dvh !important;
  transform: none !important; /* jen pokud Avada panel centruje přes translateY */
}

.offc-mobile-menu.awb-off-canvas-wrap .awb-off-canvas .off-canvas-close {
  top: 0px !important;
  right: 0px !important;
}

/* offcanvas scroll */
body.offc-scroll-lock {
  position: fixed;
  width: 100%;
  overflow: hidden;
}

/* ===== CONTACT FORM GRID ===== */
.contact-form-grid > .fusion-column-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 20px !important;
  align-items: start;
}

.contact-form-grid > .fusion-column-wrapper > .fusion-form-field {
  width: 100%;
  margin: 0 !important; 
  min-width: 0;
}

/* === COOKIES ===*/
.fworks_consent_button_settings {text-decoration: none !important;}
.fworks_consent_button_settings:hover {text-decoration: underline !important;}

.fworks_consent_modal_header h2 {font-size: 24px;}
.fworks_consent_description h3 {font-size: 20px;}

.fworks_consent_modal_header {padding-top: 40px !important}


/* ===================== RESPONSIVITY ================*/
@media only screen and (min-width: 2100px) {
  .cont__fw_pr.fusion-fullwidth,
.awb-off-canvas .cont__fw_pr.fusion-fullwidth {
  padding-right: calc((2100px - var(--site_width)) / 2)
}

.cont__fw_pl.fusion-fullwidth,
.awb-off-canvas .cont__fw_pl.fusion-fullwidth,
.col__fw_pl.fusion-layout-column>.fusion-column-wrapper {
  padding-left: calc((2100px - var(--site_width)) / 2) 
}

.col__fw_pr.fusion-layout-column>.fusion-column-wrapper,
.col__fw_pr.fusion-layout-column>.fusion-column-wrapper {
  padding-right: calc((2100px - var(--site_width)) / 2) 
}
}
@media only screen and (max-width: 1450px) {
.col__fw_pl.fusion-layout-column>.fusion-column-wrapper {
  padding-left: 32px
}

.col__fw_pr.fusion-layout-column>.fusion-column-wrapper {
  padding-right: 32px
}
} 

@media only screen and (max-width: 1024px) {
  .t__bcg-right.fusion-layout-column img {object-position: top right}
}


@media only screen and (max-width: 640px) {
  body header.fusion-sticky-transition .logo,
  body header.fusion-sticky-transition .logo img {
    height: 50px !important;
  }

  body header .logo a {display: flex; flex-direction: row; justify-content: flex-start; height: 70px;}


  .m__fs-24px {font-size: 24px !important;}
  .m__position-relative, .m__position-relative.fusion-layout-column {position: relative; top: unset; right: unset; bottom: unset; left: unset}
  .m__bcg-bottom.fusion-layout-column img {object-position: bottom center}

  .col__imgfill.col__imgfill-absolute.m__position-relative .fusion-column-wrapper .fusion-image-element {
    position: relative;
    top: unset;
    left: unset;
    right: unset;
    bottom: unset;
}

  .m__bcg-right.fusion-layout-column img {object-position: top right}

    /* carousel - arrros outside */
  .pc-carousel_custom-layout {
    position: relative;
    overflow: visible !important;      
    margin: 0 auto;
  }

  .pc-carousel_custom-layout .swiper-slide:not(.swiper-slide-active) {
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s;
  }

  .fusion-column-wrapper:has(> .pc-carousel_custom-layout) {
    padding-left: 50px !important;     
    padding-right: 50px !important;
    overflow: visible;
  }

  .pc-carousel_custom-layout .awb-swiper-button {
    position: absolute;
    top: 50% !important;               
    bottom: auto !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
    z-index: 10;
  }
  .pc-carousel_custom-layout .awb-swiper-button-prev {
    left: -50px !important;
    right: auto !important;
  }
  .pc-carousel_custom-layout .awb-swiper-button-next {
    right: -50px !important;
    left: auto !important;
  }

  .pc-carousel_custom-layout .swiper-pagination {
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
  }
    .pc-carousel_custom-layout .swiper-slide:not(.swiper-slide-active) {
    opacity: .35 !important;        
    pointer-events: none;
    transition: opacity .3s;
  }
  .pc-carousel_custom-layout .swiper-slide-active {
    opacity: 1 !important;
  }

  /* form */
  .fusion-form-form-wrapper .fusion-form-field .fusion-form-checkbox label:before,
  .fusion-form-form-wrapper .fusion-form-field .fusion-form-checkbox input:checked + label::after {
    top: 14px !important;
}

.m_menu__align-left .awb-menu__main-ul_column li .awb-menu__main-a {justify-content: flex-start !important;}

.m__col__justify-start.fusion-layout-column > .fusion-column-wrapper {justify-content: start !important;}

}

@media (min-width: 641px) and (max-width: 1024px) {
  .contact-form-grid > .fusion-column-wrapper {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 400px) {
  .contact-form-grid > .fusion-column-wrapper {
    grid-template-columns: minmax(0, 1fr);
  }
}