/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
/* CookieHub, Webrun Core -- START */
body,
html {
  overflow-x: hidden;
  /*max-width: 100% !important;*/
}
a,
a:active,
a:hover {
  color: inherit;
}
.ch2-dialog-branding,
.ch2-settings-actions p {
  display: none;
}
/* CookieHub, Webrun Core -- END */

/* Hide current language GTranslate -- START */
a.gt-current-lang{display:none; visibility:none;}
a.glink img {
	border:none!important;
	border:0;
	width: 32px; 
	aspect-ratio: 1 / 1;
	border-radius: 50%;	
	object-fit: cover; /* Zabranuje rozpadnuti pokud neni img presny ctverec */
}
/* Hide current language GTranslate -- END */

.elementor-button {
align-self: center;
}

#form-field-gdprform {
font-weight:400!important;
font-size:0.9em!important
}

a.podtrzeni {
	text-decoration:underline;
	text-decoration-color: #0046D7!important;
	text-decoration-thickness: 2px;
	text-underline-offset: 10px;
}

/* sticky header -- START */
 
.sticky-header.elementor-sticky--effects .elementor-nav-menu .elementor-item.elementor-item:hover {
	color:#99caff!important;
	fill:#99caff!important;
}

.sticky-header.elementor-sticky--effects .elementor-nav-menu .elementor-item {
	color:#ffffff!important;
}

.sticky-header.elementor-sticky--effects .elementor-nav-menu .elementor-item.elementor-item-active {
	color:#99caff!important;
	fill:#99caff!important;
}


.sticky-header {
    padding-top:0.9rem;
	padding-bottom:0.9rem;

}
	 
.sticky-header.elementor-sticky--effects {
    padding-top:0rem;
	padding-bottom:0rem;
	background-color:#0046D7!important;
}

.sticky-header .white-logo {
 display: none;
}

.sticky-header.elementor-sticky--effects .white-logo {
 display: inline-block;
}

.sticky-header.elementor-sticky--effects .dark-logo {
 display: none;
}

.menusipka .elementor-nav-menu .sub-arrow {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    margin-left: 0px;
    font-size: 20px;
}

.sticky-header.elementor-sticky--effects .menusipka span.sub-arrow svg {
fill: white;
}
/*sticky header END*/


/*menufix*/

.elementor-nav-menu--dropdown .elementor-sub-item {
    line-height:1.2em!important;
}

.elementor-nav-menu--dropdown {
    padding-top: 10px;
	padding-bottom:10px;
	text-align:center;
}


/* --- otevřený stav (SmartMenus přidává třídu .sm-open) --- */
.menusipka .elementor-nav-menu li.sm-open > .sub-menu {
    display: block !important;
}

/* --- přepínací šipky --- */
.menusipka .elementor-nav-menu .sub-arrow {
    cursor: pointer;                
    display: inline-flex;
    align-items: center;
    margin-left: 0px;               /* Mezera od textu */
    font-size: 20px;
}

/* --- zavřený stav: šipka ukazuje VPRAVO --- */
.menusipka .elementor-nav-menu .sub-arrow svg {
    transition: transform 0.25s ease;
    transform-origin: 50% 50%;
    transform: rotate(-90deg);
}

/* --- otevřený stav: šipka ukazuje DOLŮ --- */
.menusipka .elementor-nav-menu
a.has-submenu.highlighted > .sub-arrow svg {
    transform: rotate(0deg); 
}

/* --- volitelné: zajištění, aby SVG neblokovalo kliknutí --- */
.menusipka .elementor-nav-menu a .sub-arrow svg {
    pointer-events: none;
}



/*vertikalni menu fix -- START */
.elementor-nav-menu--layout-vertical .elementor-nav-menu .sub-menu {
    position: static !important;  
    display: none;    
	text-align:right!important;
    padding-left: 0px;   
    margin: 0px !important;
    animation: menuSlide 0.25s ease;
    overflow: hidden;
}

/* --- položky parent seznamu --- */
.elementor-nav-menu--layout-vertical .elementor-nav-menu li {
    position: static !important;
}


/* --- zarovnání položek submenu --- */
.elementor-nav-menu--layout-vertical .elementor-nav-menu--dropdown .elementor-sub-item {
    display: block;
    text-align: right;
    width: 100%;
}

/* --- otevřený stav (SmartMenus přidává třídu .sm-open) --- */
.elementor-nav-menu--layout-vertical .elementor-nav-menu li.sm-open > .sub-menu {
    display: block !important;
}

/* --- přepínací šipky --- */
.elementor-nav-menu--layout-vertical .sub-arrow {
    cursor: pointer;                
    display: inline-flex;
    align-items: center;
    margin-left: 2px;               /* Mezera od textu */
    font-size: 20px;
}

/* --- zavřený stav: šipka ukazuje VPRAVO --- */
.elementor-nav-menu--layout-vertical .sub-arrow svg {
    transition: transform 0.25s ease;
    transform-origin: 50% 50%;
    transform: rotate(-90deg);
}

/* --- otevřený stav: šipka ukazuje DOLŮ --- */
.elementor-nav-menu--layout-vertical 
a.has-submenu.highlighted > .sub-arrow svg {
    transform: rotate(0deg); 
}

/* --- volitelné: zajištění, aby SVG neblokovalo kliknutí --- */
.elementor-nav-menu--layout-vertical a .sub-arrow svg {
    pointer-events: none;
}

/* --- animace vysunutí --- */
@keyframes menuSlide {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}




/* Cities search style -- START */
 :root {
            /* Dimensions */
            --wbrn-container-max-width: 550px;
            --wbrn-input-height: 87px;
            --wbrn-radius: 8px;
	 		--wbrn-padding-result: 1rem;

            /* Colors */ 
            --wbrn-gps-color: #0046D7
            --wbrn-divider-color: #eeeeee;
	 		--wbrn-bg-main: #ffffff;

            /* Error State Colors */
            --wbrn-error-text: #d9534f;
            --wbrn-error-bg: #fff0f0;

            /* Typography */
            --wbrn-font-size-link: 13px;
            --wbrn-font-size-error: 16px;

            /* Effects */
            --wbrn-shadow: 0 13px 23px rgba(0, 0, 0, 0.12);
        }

        /* Main Container */
        .wbrn-container {
            max-width: var(--wbrn-container-max-width);
            margin: auto;
            position: relative;
        }

        /* Input & GPS Button Wrapper */
        .wbrn-input-wrapper {
            position: relative;
            display: flex;
            align-items: center;
        }

        .wbrn-search-input {
            width: 100%;
            height: var(--wbrn-input-height);
            padding: 0 50px 0 15px;
            border-radius: var(--wbrn-radius)!important;
            background-color: var(--wbrn-bg-main);
            box-sizing: border-box;
			color:#5F6671!important;
			font-size:1.3em;
			box-shadow: var(--wbrn-shadow);
			border: 2px white solid!important;
        }

        .wbrn-search-input:focus {
            outline: none;
			box-shadow: none!important;
			border: 2px #0046D7 solid!important;
        }

        .wbrn-gps-btn {
            position: absolute;
            right: 15px;
            top: 50%;
            transform: translateY(-50%);
            background: none;
            border: none;
            cursor: pointer;
            padding: 8px;
            font-size: 1rem;
            color: var(--wbrn-gps-color);
            display: flex;
            align-items: center;
            justify-content: center;
            width: 50px;
            height: 50px;
			border-radius: var(--wbrn-radius)!important;
        }

        /* Results Dropdown */
        .wbrn-results-list {
            position: absolute;
            top: 100%;
            left: 0;
            right: 0;
            border-top: none;
            list-style: none;
            margin: -5px 0 0 0;
            padding: 0;
            z-index: 1000;
            display: none;
            box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
            border-radius: 0 0 var(--wbrn-radius) var(--wbrn-radius)!important;
			background-color: var(--wbrn-bg-main);
			
        }

        .wbrn-result-item {
            padding: var(--wbrn-padding-result);
            display: flex;
            justify-content: space-between;
            align-items: center;
			font-size: 1.2em;
			text-transform:uppercase;
			color: #0046D7;
			font-weight:800;
        }

        .wbrn-result-item:last-child {
            border-bottom: none;
        }

        /* Link/Action Text */
        .wbrn-link-text {
            font-size: var(--wbrn-font-size-link);
            cursor: pointer;
        }

        /* Error Messages */
        .wbrn-error-msg {
			padding: var(--wbrn-padding-result);
            color: var(--wbrn-error-text);
            font-size: var(--wbrn-font-size-error);
            background-color: var(--wbrn-error-bg);
            border-radius: 0 0 var(--wbrn-radius) var(--wbrn-radius);
        }


.wbrn-debug-controls {
			margin-bottom:50px;
        }


/* Cities search style -- END */


/* Filter city -- START */

.checkbox-group {
}

.filter-title {
    font-size:0.9em;
	color:#555555!important;
	font-weight:600!important;
	margin-top: 30px;
        }

.custom-cb-round {
    display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
    align-items: center;
    gap: 12px;
	margin-left:-12px;
	margin-bottom: 10px;
	color:#555555!important;
	font-weight:400!important;
	font-size:0.9em!important;
}

/* Filter city -- END */

/* Image marquee -- START */
/* Wrapper */

.wrapSlide {
	width: 102vw;
    margin-left: -1vw !important;
    margin-right: -1vw !important;
    max-width: none !important;
}
/* Container */
.marquee-track {
    display: flex;
    width: max-content;
    animation: marquee-infinite 60s linear infinite;
	overflow: hidden;
}

/* Animation */
@keyframes marquee-infinite {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}
/* Image marquee -- END */

/* Swiper links -- START */
#goto-links p {
	cursor: pointer;
}
#goto-links p:hover{
	text-decoration:underline;
	text-decoration-color: #ffffff!important;
	text-decoration-thickness: 2px;

}

.odkaz-slide.active {
	text-decoration:underline;
	text-decoration-color: #ffffff!important;
	text-decoration-thickness: 2px;
}

/* Swiper links -- END */

/* Footer style -- START */
.paticka a {
	text-decoration:underline;
	display:block;
	font-weight:400!important;
	color: #ffffff;
	text-decoration-color: #ffffff!important;
	text-decoration-thickness: 1px;
	padding-bottom:4px;
}

.paticka a:hover {
	text-decoration-color: #EED75B!important;
}

/* Footer style -- END */

.faq .e-n-tabs-heading {
	background-color: #0046D7;
	 margin-left: auto;
  margin-right: auto;
	padding: 20px 40px 20px 40px;
	border-radius:8px;
}

.faq .e-n-accordion-item-title 
{
justify-content:space-between!important;
}

.faq .e-n-accordion-item:hover {
box-shadow: 0 8px 15px rgba(0, 0, 0, 0.05);
	border-radius:8px;
}

.faq .e-n-tab-icon svg {

width:120px!important;
}


/* boxy cenik style -- START */
 .wrapcenik {
   box-shadow: 0 8px 15px rgba(0, 0, 0, 0.05);
}
@media only screen and (max-width: 600px) {
  .wrapcenik {
   box-shadow: 0 0px 0px rgba(0, 0, 0, 0);
  }
}

/* boxy cenik style -- END */
	


/* timeline tecka -- START */

.tecka1:before {
    content: "";
    position: absolute;
    left:-61px;
    top:49% ;
    width: 19px;
    height: 19px;
    border-radius: 100%;
    background-color: #0046D7;
    z-index: 1;
    
}


@media screen and (max-width: 768px) {
    
.tecka1:before {
 left: -41px!important;
}

}

.tecka2:before {
    content: "";
    position: absolute;
    right:-61px;
    top:49% ;
    width: 19px;
    height: 19px;
    border-radius: 100%;
    background-color: #0046D7;
    z-index: 1;
    
}


@media screen and (max-width: 768px) {
    
.tecka2:before {
 left: -41px!important;
}

}


/* timeline tecka -- END */




.boxbg {
    backface-visibility: hidden;
    -webkit-font-smoothing: subpixel-antialiased;
}

.box:hover .boxbg  {
    backface-visibility: hidden;
    -webkit-font-smoothing: subpixel-antialiased;
}

.box:hover .nozoom {
    transform: scale(0.99)!important;
    /* Pokud by text stále mírně "cukal" kvůli renderování prohlížeče: */
    backface-visibility: hidden;
    -webkit-font-smoothing: subpixel-antialiased;
}

/* BENEFIT LOGOS - SINGLE CITY */
.wbrn-benefity-loga {
    display: flex;
    gap: 15px;
}

.wbrn-benefit-logo {
    max-height: 40px;
    width: auto;
}

.wbrn-celorocni-icon {
	max-height: 40px !important;
}