/*  
Theme Name: Template Two
Description: LIGHT / homepage half carousel / 1 column: 1340px (1180px) / header menu children
Author: Template Two
Version: 2023-10
*/

@import url('font-face/font-face.css');
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i&subset=latin-ext');    
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,400i,500,500i,600,600i&subset=latin-ext');

html {font-size: 16px; -webkit-text-size-adjust: 100%;}
body, input, select, textarea, button {font-family: 'Open Sans', sans-serif; font-size: inherit;}
body {font-size: 80%; min-height: 100vh; height: 100%; background: #f4f8fe url('images/bg-body.png') repeat fixed; display: flex; flex-direction: column; overflow-x: hidden;}


/* ************************* reset ************************* */
html, body, form, ul, ol, li, table {margin: 0; padding: 0;}
table {border-collapse: collapse; border-spacing: 0; margin: 0 0 1em 0;}
th, td {padding: 5px;}
p, #content ul, .article ul {margin: 0 0 1em 0; padding: 0;}
body, th, td {text-align: left;}
ul {list-style: none;}
:focus {outline: none;}
::-moz-focus-inner {border: 0;}
img {max-width: 100%; height: auto; border: 0;}
iframe {max-width: 100%; max-height: 100%; border: 0;}
* {box-sizing: border-box;}

.grecaptcha-badge {visibility: hidden!important;}


/* ************************* multiple declaration ************************* */

/* clearfix */
.clearfix::after,
.paging-bottom::after,
#main::after,
#content::after,
.article::after,
.section::after {content: ""; display: table; clear: both;}



/* display: none */
.hide,
.owl-nav.disabled,
.owl-dots.disabled,
h2.screen-reader-text {display: none;}

@media screen and (max-width: 767px) {
  #menu-header #searchform .searchform-icon,
  #menu-header > ul > li > a::after,
  #menu-header ul, #menu-header ul li.page_item_has_children > a::after, 
  #menu-header ul li.page_item_has_children .submenu-button.submenu-opened::after,
  #menu-header > ul > li.page_item::before, 
  #menu-header > ul > li.cat-item::before {display: none;}  
  
  #scrollup {display: none!important;}
}

@media screen and (min-width: 1340px) {
  .table-article tbody td::before {display: none;} 
  a[href^="tel:"] {pointer-events: none; text-decoration: none;} 
}

a[href^="tel:"] {white-space: nowrap;}


/* flex-col (ul li fix) */
.flex-col {margin-bottom: 0;}
.flex-col .col {margin-bottom: 2em!important; padding-left: 0!important; overflow: hidden;}

ul.flex-col li.col::before {display: none!important;}

@media screen and (min-width: 768px) {	
  .flex-col {display: flex; flex-direction: row; flex-wrap: wrap; margin-left: -30px!important;} 
  .flex-col.col2 .col {margin-bottom: 0;}
  
  .flex-col .col,
  .flex-col.col2 .col {width: calc(50% - 30px); margin-left: 30px!important;}  
}


@media screen and (min-width: 1200px) {
  .flex-col.col3 .col {width: calc(100% / 3 - 30px);}
  .flex-col.col4 .col {width: calc(100% / 4 - 30px);}
}


/* ************************* custom CSS ************************* */

#text-zvyrazneno {text-align: center; padding: 10px 0; font-size: 32px; text-transform: uppercase; color: red;}
#text-zvyrazneno p {margin: 0;}


.loga {text-align: center; margin-bottom: 2em;}
.loga img {margin: 20px; vertical-align: middle; max-height: 100px; max-width: 250px; width: auto;}


/* circular image */
.circular-img {display: inline-block; position: relative; width: 120px; height: 120px; overflow: hidden; border-radius: 50%; margin-bottom: 2em;}
.circular-img img {width: 100%; height: 100%; object-position: center center; object-fit: cover;}


/* video player */
.wp-video {margin-bottom: 2em;}


/* animation */
@media screen and (min-width: 1340px) {
  .animation > .slidetop {display: block; opacity: 0; transition: 1s .2s ease-in-out; transform: translateY(100%);}
  .animation.visible > .slidetop {opacity: 1; transform: translateY(0);} 
  
  .animation > .slideright {opacity: 0; transition: 1s .5s ease-in-out; transform: translateX(-100%);}
  .animation > .slideleft {opacity: 0; transition: 1s .8s ease-in-out; transform: translateX(100%);}
  .animation.visible > .slideright, .animation.visible > .slideleft {opacity: 1; transform: translateX(0);}
}




/* ************************* fonts ************************* */

/* Montserrat */
h1, h2, h3, h4,
#header-wrapper #block-header .claim span,
#menu-header ul li a {font-family: 'Montserrat', sans-serif;}


/* FontAwesome */
.ico::before, .ico::after,
.icon::before,
#main ul li::before {font: normal normal normal 16px/1 'FontAwesome'; display: inline-block; text-decoration: none; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}

.ico {white-space: nowrap;}
.ico::before {margin-right: 0.3em;}
#main .ico::before, .textwidget .ico::before {width: 16px; text-align: center;}
.ico::after {margin-left: 0.3em;}
.icon::before {text-align: center; margin: 0;}
.ico::before, .ico::after {font-size: inherit; color: inherit; text-decoration: none;}


/* ico */
.ico.home::before {content: "\f015"; font-weight: 900;}
.ico.mobile::before {content: "\f3cf"; font-weight: 900;}
.ico.phone::before {content: "\f095";}
.ico.email::before {content: "\f0e0";}
.ico.address::before {content: "\f1ad";}
.ico.info::before {content: "\f05a";}
.ico.contact::before {content: "\f003";}

/* ico file */
.ico.pdf::before {content: "\f1c1"; color: #e91209; font-weight: 900;}
.ico.doc::before {content: "\f1c2"; color: #185abd; font-weight: 900;}
.ico.xls::before {content: "\f1c3"; color: #107c41; font-weight: 900;}
.ico.ppt::before {content: "\f1c4"; color: #e91309; font-weight: 900;}
.ico.zip::before {content: "\f1c6"; color: #edaa1d; font-weight: 900;}


/* icon */
.icon.magnify::before {content: "\f002";}

/* icon social */
.icon.facebook::before,
.ico.facebook::before {content: "\f082";}
.icon.facebook:hover::before,
.ico.facebook:hover::before {color: #3b579d;}

.icon.x_twitter::before,
.ico.x_twitter::before {content: "\e61b";}
.icon.x_twitter:hover::before,
.ico.x_twitter:hover::before {color: #000;}

.icon.youtube::before,
.ico.youtube::before {content: "\f167";}
.icon.youtube:hover::before,
.ico.youtube:hover::before {color: #c63127;}

.icon.instagram::before,
.ico.instagram::before {content: "\f16d";}
.icon.instagram:hover::before,
.ico.instagram:hover::before {color: #d32e88;}

.other-icon .icon:hover::before {color: #000;}




/* ************************* colors and borders ************************* */

/******* text color *******/
body,
.ico::before,
a[href^="tel:"] {color: #000;}

.gallery .icon.magnify::before,
#scrollup.icon::before {color: #fff;}

#menu-header #searchform .searchform-input {color: #696969;}

.icon::before,
#header #header-inner #ico .ico.mobile::before,
#menu-header #searchform .searchform-button,
#menu-header #searchform.searchform-open .searchform-button {color: #b2b2b2;}

#copyright a, 
#menu-header > ul > li > a:hover,
#menu-content ul li a:hover {color: #999;}


#blocks .block h2 > a,
#main .perex p:last-of-type strong {color: #040436;}


.date {color: #68686e;}

h1, h2.title,
#menu-header ul li a,
#menu-content ul li a {color: #595252;}

.social-icon a.icon::before,
blockquote cite {color: #636363;}


/* main color */
a,
#main a,
a.underline:hover,
#menu-header ul li[class*="current"] > a,
#menu-content ul li[class*="current"] > a,
#gdpr .ico.lock::before {color: #df0000;}



/******* background-color *******/
#header,
#layout,
#header #menu-header ul ul,
#content,
.owl-carousel .owl-dots .owl-dot {background-color: #fff;}


#menu-header ul ul li > a:hover,
#menu-header ul ul li[class*="current"] > a {background-color: #f3f3f3;}

#blocks .block::before {background-color: #f0f9f2;}

#scrollup {background-color: #3f3f3f;}

.button:disabled,
.button:hover {background-color: #5f5f5f!important;}

#news-block {background-color: #fbfbfb;}


#blocks .block a.thumbnail::after,
.album .album-item > a.thumbnail::after {background-color: rgba(255,255,255,.3);}


/* main color */
.button,
.owl-carousel .owl-dots .owl-dot:hover::before, .owl-carousel .owl-dots .owl-dot.active::before,
a.underline:hover::after,
#menu-header > ul > li > a:hover::after, 
#menu-header > ul > li[class*="current"] > a::after {background-color: #df0000!important;}



/******* border *******/

#menu-subcategory {border-color: #d6d6d6;}

#menu-header #searchform .searchform-input {border-color: #b2b2b2;}

#blocks .block,
#main.home,
#menu-content {border-color: #e3e3e3;}


#menu-header > ul > li + li::before,
#menu-content > ul > li + li::before {border-color: #595252;} 



/* text-transform: uppercase */
#menu-header > ul > li > a,
h2.title {text-transform: uppercase;}


/* font-weight: 400 (normal) */
#menu-header ul li a {font-weight: 400;}


/* font-weight: 500 */
#menu-header > ul > li > a,
h2.title {font-weight: 500;}

/* font-weight: 600 */
h1 {font-weight: 600;}



/* nadpisy */
h1 {text-align: center; font-size: 230%; margin: 0 0 1em 0; padding: 0; line-height: 1.3;}
h2, h3, h4 {margin: 0 0 0.5em 0; padding: 0;}
h2 {font-size: 140%;}
h3 {font-size: 120%;}
h4 {font-size: 110%;}

#main h2, #main h3, #main h4,
 .section .article h2, .section .article h3, .section .article h4 {text-align: left;}




@media screen and (max-width: 479px) {
  h1 {font-size: 160%;}
  h2 {font-size: 120%;}
  h3 {font-size: 110%;}
}



/* button */
.button, a.button {display: inline-block; color: #fff; font-weight: bold; text-shadow: 1px 1px 0 #000; border: 0; padding: 15px 30px; cursor: pointer;}
.button:disabled {pointer-events: none;}


/* links */
a:hover {text-decoration: underline;}

/* text-decoration: none */
a, a.icon, .button, a.button {text-decoration: none;}


/* scroll up */
#scrollup {display: none; position: fixed; bottom: 40px; right: 20px; padding: 2px; text-align: center; text-decoration: none!important; z-index: 9999; box-shadow: 0 0 5px rgba(0,0,0,.8); opacity: .8;}
#scrollup:hover {opacity: 1}
#scrollup.icon::before {width: 30px; height: 30px; font-size: 30px; line-height: 25px; margin: 0; content: "\f106"; border: 1px solid #999;}
#scrollup, #scrollup.icon::before {border-radius: 50%;}


/* fb */
.fb-box {width: 95px; height: 65px;}
.fb-likebox {width: 500px; height: 154px;}
.fb-box, .fb-likebox {border: none; display: block; margin: 0 auto; overflow: hidden;}
.fb-like {margin: 30px 0; float: right;}


/* ************************* layout ************************* */

#layout-outer {background: url('images/bg-layout-outer.png') no-repeat center top; background-size: contain;}

#content {overflow: hidden;}

#main {font-size: 120%; line-height: 1.3;}

#header, 
#copyright {flex: none;}


@media screen and (max-width: 1339px) {
  #blocks,
  #main.home, 
  #news-block,
  #footer,
  #content {padding: 15px;}
  
  #content.home {padding: 30px 0;}
}




@media screen and (min-width: 1340px) {
  #content,
  #blocks,
  #main.home, 
  #news-block,
  #footer {padding: 60px 80px;}
  
  #content.home {position: relative; padding: 60px 0 0 0; margin-top: -60px; z-index: 10;}
  
  #layout,
  #header-inner {width: 1340px; margin: 0 auto;}   
  
  #layout-outer {display: flex;} 
   
  #content,
  #layout-outer {flex-grow: 1;}
  
  #layout {display: flex; flex-direction: column; box-shadow: 0 0 15px rgba(0,0,0,.4);}
}



/* logo */
.logo {display: block; background: url('images/logo.svg') no-repeat center center; background-size: contain;}


/* ************************* header ************************* */

#header {position: relative; width: 100%; box-shadow: 0 0 10px rgba(0,0,0,.5); z-index: 100;}

@media screen and (max-width: 767px) {
  #header #header-inner {padding: 10px 0 0 0;}
  #header #header-inner a.logo {width: 100%; height: 50px; margin: 0 0 20px 0;}

  #header #header-inner #ico {text-align: center; margin: 0 65px 10px 65px;}
}

@media screen and (min-width: 768px) {
  #header #header-inner {position: relative; display: flex; flex-direction: row; align-items: flex-end; flex-wrap: wrap;}  
  #header #header-inner a.logo {width: 280px; height: 90px; margin: 10px 0;}

  #header #header-inner #ico {position: absolute; top: 5px; right: 0;}
}

@media screen and (min-width: 768px) and (max-width: 1339px) {
  #header #header-inner {padding: 0 15px;}
  #header #header-inner #ico {right: 15px;}
}


@media screen and (min-width: 1360px) {
  #header {position: sticky; top: 0;}  
  #header.scroll #header-inner a.logo {transition: height .3s ease-in-out;}
  #header.scroll #header-inner a.logo {height: 60px;}   
}


#header #header-inner #ico .icon::before {border-right: 1px dotted #666; margin-right: 10px; padding-right: 10px; font-size: 18px;}
#header #header-inner #ico .ico.mobile {display: inline-block; position: relative; font-size: 140%; font-weight: bold; white-space: nowrap;}



/* carousel */
/* resp. height (530 / 1340 x 100) */
#carousel .owl-lazy {height: 0; padding-bottom: 39.55%; background-repeat: no-repeat; background-position: center center; background-size: cover; animation: BackgroundZoom 1s ease;}

@media screen and (min-width: 1340px) {
  #carousel .owl-lazy {height: 530px; padding: 0;}
  @keyframes BackgroundZoom {0% {transform: scale(2.5);} 100% {transform: scale(1);}}
}





/* footer map */
#footer-map {line-height: 0; overflow: hidden;}
#footer-map iframe {width: 100%; height: 300px; border: 0;}



/* ************************* footer ************************* */

#footer .block.logo {height: 60px;}  
#footer .block {margin: 0 0 30px 0;}
#footer .block p {font-size: 14px; margin: 0.5em 0;}  

/* icons */
#footer .icons .icon {margin: 10px;}
#footer .icons .icon::before {font-size: 28px;}

/* social icons */
#footer .icons.social .icon {display: inline-block; margin: 20px;}
#footer .icons.social .icon::before {font-size: 46px;}


@media screen and (max-width: 767px) {
  #footer .block {text-align: center;}
}


@media screen and (min-width: 768px) {	
  #footer {display: flex; flex-direction: row; align-items: center; flex-wrap: nowrap;}  
  
  #footer .block {flex-grow: 1; flex-basis: 0; display: flex; align-items: center; margin: 0;}  	
  #footer .block + .block {margin-left: 30px;}	
  #footer .block.logo {width: 140px; min-width: 140px;}  
  
  /* icons */
  #footer .icons {display: flex; justify-content: center; align-items: center;}
  
  /* social icon */
  #footer .icons.social {border-left: 1px dotted #666;}  
}




#copyright {text-align: center; padding: 15px;}



/* ************************* menu header ************************* */

@media screen and (min-width: 768px) {
  #menu-header {margin-left: auto; padding-right: 30px;}
}

#menu-header::after {content: ""; display: table; clear: both;}
#menu-header #menu-button {display: none;} 

#menu-header, #menu-header ul li:not(.search), #menu-header ul li a {position: relative;}
#menu-header ul li a {display: block; text-decoration: none; transition: all .2s ease-in-out;}


/* search */
#menu-header #searchform {z-index: 100; overflow: hidden;}
#menu-header #searchform .searchform-input {font-size: 13px; width: 100%; padding: 10px 40px 10px 8px;}

#menu-header #searchform .searchform-button,
#menu-header #searchform .searchform-icon,
#menu-header #searchform .searchform-button::before {position: absolute; right: 0; top: 0; width: 30px; height: 40px; line-height: 40px; background-color: transparent;}
#menu-header #searchform .searchform-button {border: 0; cursor: pointer; text-shadow: none;}

@media screen and (min-width: 768px) {  
  #menu-header #searchform {position: absolute; right: 0; top: 12px; min-width: 30px; width: 0%; transition: width .3s;} 
  #menu-header #searchform .searchform-icon {cursor: pointer;} 
  #menu-header #searchform .searchform-input {opacity: 0; border-width: 1px; border-style: solid; transition: all .3s;}
  #menu-header #searchform.searchform-open {width: 100%;} 	
  #menu-header #searchform.searchform-open .searchform-input {opacity: 1;}
}


/* parent */
#menu-header > ul > li {float: left;}

#menu-header > ul > li > a.ico::before {color: inherit; font-size: inherit; line-height: 0;}
#menu-header > ul > li > a {font-size: 16px; line-height: 1; padding: 25px 15px;}

@media screen and (min-width: 768px) {
  #menu-header > ul > li > a::after {display: block; position: absolute; left: 0; right: 0; bottom: 0; content: ""; margin: auto; height: 5px; width: 0; background: transparent; transition: all .5s ease;}
  #menu-header > ul > li a:hover::after, #menu-header > ul > li[class*="current"] > a::after {width: 100%;}
}

@media screen and (min-width: 1360px) {
  #header.scroll #menu-header > ul > li > a {font-size: 16px; line-height: 1; padding: 18px 15px;}
}

/* children */
#menu-header ul ul li {width: 250px;}
#menu-header ul ul li a {font-size: 15px; padding: 10px;}


@media screen and (min-width: 768px) {
  /* children ico */
  #menu-header ul ul li.page_item_has_children > a::after {position: absolute; top: 50%; right: 10px; width: 4px; height: 4px; margin-top: -2px; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; content: "";  transform: rotate(-45deg);}  
    
    
  /* children hide  */
  #menu-header ul ul {position: absolute; top: 100%; left: -9999px; z-index: 100; opacity: 0; transition: opacity .4s linear; box-shadow: 5px 5px 5px rgba(0,0,0,.3);} 
  #menu-header ul li:hover > ul {opacity: 1;}
  #menu-header ul ul li > ul {top: 0;}
  
  /* children hide not pull-right  */
  #menu-header > ul > li:not(.pull-right):hover > ul {left: 0; opacity: 1;}
  #menu-header > ul > li:not(.pull-right) ul li:hover > ul {left: 100%;} 
  
  /* children hide pull-right  */
  #menu-header > ul > li.pull-right ul {left: auto; right: -9999px; } 
  #menu-header > ul > li.pull-right:hover > ul {right: 0;}
  #menu-header > ul > li.pull-right ul li:hover > ul {right: 100%;}
}


/* responsive menu */
@media screen and (max-width: 767px) {
  /* menu header */   
  #menu-header::before {display: none;}
   
  #menu-header, 
  #menu-header #menu-button, 
  #menu-header ul li {position: relative;}
  
  #menu-header ul li, 
  #menu-header ul li a, 
  #menu-header ul ul li a {line-height: 1;}
  
  /* search */
  #menu-header #searchform .searchform-input {padding-left: 20px; padding-right: 50px; border: 0; transition-property: none; border-radius: 0;}

  #menu-header #searchform .searchform-button {width: 40px;}
  #menu-header #searchform .searchform-button::before {right: 8px;}
  
  /* menu-button */
  #menu-header #menu-button {display: block; position: absolute; top: -60px; right: 0; width: 60px; height: 50px; font-weight: bold; cursor: pointer;}
  #menu-header #menu-button::before, 
  #menu-header #menu-button::after {display: block; position: absolute; left: 0; content: ""; transition: all .2s ease;}
  #menu-header #menu-button::after {top: 28px; height: 5px; width: 40px; border-width: 5px 0 5px 0; border-style: solid;}
  #menu-header #menu-button::before {top: 18px; height: 5px; width: 40px;}
  #menu-header #menu-button.menu-opened::after {border: 0; height: 5px; transform: rotate(45deg);}
  #menu-header #menu-button.menu-opened::before {transform: rotate(-45deg);}
  #menu-header #menu-button.menu-opened::after, 
  #menu-header #menu-button.menu-opened::before {top: 28px; left: 8px; width: 30px;}  
  

  /* parent */
  #menu-header {position: absolute; left: 0; right: 0; height: auto; width: 100%; margin: 0; padding: 0; border: none; background: transparent; z-index: 1000;}
  #menu-header ul li {float: none; display: block; background: none; border-top-width: 1px; border-top-style: solid;}

  #menu-header ul li a, #menu-header ul ul {background: none!important; border: none;}
  #menu-header > ul > li > a {font-weight: bold;}
  #menu-header ul li a {font-size: 15px!important; padding: 20px!important; line-height: 1!important;}
  
  /* sub ico */
  #menu-header ul li.page_item_has_children .submenu-button {display: block; position: absolute; right: 0; top: 0; height: 52px; width: 52px; cursor: pointer; z-index: 10;}
  #menu-header ul li.page_item_has_children .submenu-button::after {top: 21px; left: 26px; width: 1px; height: 11px;}
  #menu-header ul li.page_item_has_children .submenu-button::before {left: 21px; top: 26px; width: 11px; height: 1px;}
  #menu-header ul li.page_item_has_children .submenu-button::after, 
  #menu-header ul li.page_item_has_children .submenu-button::before {content: ""; display: block; position: absolute; z-index: 99;}
  #menu-header ul li.page_item_has_children > a {padding-right: 58px;}
  #menu-header ul li.page_item_has_children > a::before {content: ""; position: absolute; top: 0; right: 0; width: 52px; height: 100%;}
  
  /* children */
  #menu-header ul ul {opacity: 1; transition-property: none;}

  #menu-header ul ul li a {font-weight: normal; padding-left: 25px!important;}
  #menu-header ul ul ul li a {padding-left: 45px!important;}
  #menu-header ul ul ul li::before {font: normal normal normal 14px/1 'FontAwesome'; display: inline-block; position: absolute; top: 18px; left: 20px; content: "\f00c"; margin-right: 3px;}
  
  /* children hide  */
  #menu-header ul ul {position: relative!important; top: auto!important; left: auto!important; right: auto!important;} 
  #menu-header ul ul li {width: 100%}
  #menu-header ul ul li > a, 
  #menu-header ul li:hover > ul > li > a {width: auto; height: auto;}   

  /* menu-color LIGHT */
  #menu-header #searchform .searchform-input,
  #menu-header #searchform .searchform-button {color: #000;} 
  
  #menu-header ul ul ul li::before {color: #999;}
  
  #menu-header #searchform .searchform-input,
  #menu-header ul li.page_item_has_children > a::before,
  #menu-header #menu-button.menu-opened::after, 
  #menu-header #menu-button.menu-opened::before {background-color: #ebebeb;}

  #menu-header ul li.page_item_has_children .submenu-button::after, 
  #menu-header ul li.page_item_has_children .submenu-button::before {background-color: #000;}  
  
  #menu-header #menu-button.menu-opened::after, 
  #menu-header #menu-button.menu-opened::before,  
  #menu-header #menu-button::before {background-color: #000;}  
  
  #menu-header ul {background-color: #f3f3f3;}
  
  #menu-header ul li {border-color: #ebebeb;}  
  #menu-header #menu-button::after {border-color: #000;}
  
  #menu-header ul li a {color: #000; text-shadow: none;}
}





/* menu-content */
#menu-content {text-align: center; padding: 0 0 20px 0; margin-bottom: 40px; border-width: 0 0 1px 0; border-style: solid;}
#menu-content ul li { position: relative; display: inline-block; font-size: 120%; font-weight: bold; line-height: 1.3; text-transform: uppercase; }
#menu-content ul li a {display: block; padding: 0 20px; text-decoration: none; transition: all .2s ease-in-out;}


#menu-header > ul > li.page_item::before, #menu-header > ul > li.cat-item::before,
#menu-content > ul > li + li::before {border-left-width: 1px; border-left-style: dotted; content: ""; position: absolute; left: 0; width: 1px; height: 8px; top: 50%; transform: translateY(-50%);} 



/* index blocks */
#blocks .block {position: relative; width: 100%; margin-bottom: 6%; text-align: center; border-width: 1px; border-style: solid; overflow: hidden; z-index: 2;}
#blocks .block::before {width: 0%; height: 100%; content: ""; position: absolute; right: 0; bottom: 0; z-index: -1; transition: .5s;}
#blocks .block:hover::before {width: 100%; left: 0; transition: .3s;}

#blocks .block, 
#blocks .block a.thumbnail::after {transition: all .4s ease;}

#blocks .block a.thumbnail {display: block; width: 100%; height: 0; padding-bottom: 50%;  background-repeat: no-repeat!important; background-size: cover!important; background-position: center center!important; overflow: hidden; transition: all .4s ease;}
#blocks .block a.thumbnail:hover {transform: scale(1.06);}
#blocks .block a.thumbnail::after {position: absolute; content: ""; left: 50%; top: 50%; width: 0%; height: 0%;}
#blocks .block a.thumbnail:hover::after {left: 0; top: 0; width: 100%; height: 100%;}
#blocks .block h2 {font-size: 16px; margin: 0; padding: 0;}
#blocks .block h2 > a {display: block; height: 60px; line-height: 60px; overflow: hidden; text-decoration: none;}

@media screen and (min-width: 480px) {
  #blocks {display: flex; flex-direction: row; flex-wrap: wrap;}
  #blocks .block {width: calc(50% - 3%); margin: 0 1.5% 3% 1.5%;}
}

@media screen and (min-width: 1340px) {
  #blocks {flex-wrap: nowrap; padding-top: 0; padding-bottom: 30px;}  
  #blocks .block {width: 100%; flex-grow: 1; flex-basis: 0; margin: 0;}
  #blocks .block + .block {margin-left: 25px;}
  #blocks .block a.thumbnail {height: 150px;}
}


/* home article */
#main.home {border-width: 1px 0 1px 0; border-style: solid;}

h2.title {font-size: 24px; margin: 0 0 1em 0; font-weight: normal;}



/* news block */
@media screen and (max-width: 479px) {
  #news-block .perex-block .perex {width: 100%; padding: 0 0 25px 0;}  
}

@media screen and (min-width: 480px) {
  #news-block .perex-block {display: flex; flex-direction: row; flex-wrap: wrap;}
  #news-block .perex-block .perex {width: calc(50% - 25px); padding: 0 25px 25px 0;}        
}

@media screen and (min-width: 1340px) {
  #news-block .perex-block {flex-wrap: nowrap;}
  #news-block .perex-block .perex  {width: calc(100% / 4); padding: 0 25px 0 0; flex-grow: 1;}
}

#news-block .perex-block .perex {border: 0;}
#news-block .perex-block .perex h3 {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
#news-block .perex-block .perex .date {}




/* link underline */
a.underline { display: inline-block; padding: 0 0 10px 0; position: relative; text-decoration: none; text-transform: uppercase; }
a.underline::after {display: block; position: absolute; left: 0; right: 0; bottom: 0; content: ""; margin: auto; height: 3px; width: 0; background: transparent; transition: all .5s ease;}
a.underline:hover::after {width: 100%;}

.center-text {clear: both; text-align: center; padding: 1em 0 0 0;}




/* clanek */
#main ol, 
.article ol {padding: 0 0 0 2.5em;}
#main ol, .article ol, 
#main ul, .section ul {margin: 0 0 1.5em 0;}
#main ul li, .article ul li {text-align: left; margin: 0 0 0.5em 0; padding-left: 1.3em;}
#main ul li::before, .article ul li::before {display: inline-block; width: 1.5em; margin-left: -1.5em; content: "\f111"; line-height: 1; color: #c6c6c6; font-weight: 900; font-size: 12px;}



blockquote {position: relative; text-align: left; font-size: 135%; font-style: italic; color: #383838; margin: 0.25em 0; padding: 0.25em 20px 0.25em 40px; line-height: 1.45;}
blockquote::before {display: block; position: absolute; left: 0; top: -20px; content: "\201d"; font-size: 80px; font-family: Georgia, "Times New Roman", Times, serif;}
blockquote cite {display: block; font-size: 75%; text-align: right; font-style: italic; margin-top: 0.8em;}
blockquote cite span {font-weight: bold; margin-right: 4px; text-transform: uppercase; font-style: normal;}



/* kontakt */
@media screen and (max-width: 1099px) {
  .contact-wrapper .contact-left {margin-bottom: 3em;}
}

@media screen and (min-width: 1100px) {    
  .contact-wrapper {display: flex; flex-direction: row; flex-wrap: nowrap;} 
  .contact-wrapper .contact-left {flex: 1 0 50%; padding-right: 2em;}
  .contact-wrapper .contact-right {flex: 1 0 50%; padding-left: 2em;}
}




/* perex */
.perex::before, .perex::after {content: ""; display: table;}
.perex::after {clear: both;}

#main .perex {margin-bottom: 2em; border-bottom: 1px dotted #ccc;}
#main .perex a img {margin-bottom: 1em;}

.perex  a img {border: 2px solid #fff;}
.perex  a:hover img {border: 2px solid #ccc;}

.date {font-size: 90%; text-align: right;}
.center {text-align: center;}



/* nav-links */
.nav-links::before, .nav-links::after {content: ""; display: table;}
.nav-links::after {clear: both;}
.nav-links {clear: both; text-align: center; padding: 40px 0 15px 0;}
.nav-links a, .nav-links span.current {margin: 0 2px; padding: 4px 8px; border-radius: 5px; background-color: #e0e0e0; border: 1px solid #b6b6b6; text-decoration: none;} 
.nav-links a:hover, .nav-links span.current {color: #000; background-color: #fff;} 
.nav-links .page-numbers {margin: 0 3px;}


.nav-prevnext {clear: both; padding: 15px 0;}
.nav-prevnext a {text-decoration: none;}
.nav-prevnext a:hover {text-decoration: underline;}
.nav-prevnext .previous {float: left;}
.nav-prevnext .next {float: right;}


/*images */
.centered, .aligncenter {display: block; margin-left: auto; margin-right: auto;}

@media screen and (min-width: 480px) {
  .alignright {margin: 0 0 2px 7px; float: right;}
  .alignleft {margin: 0 7px 2px 0; float: left}
}

@media screen and (max-width: 479px) {
  .alignright, .alignleft {display: block; margin: 0 auto 1em auto;}
}

hr {display: block; margin: 2em 0;  padding: 0; height: 1px; border: 0; border-top: 1px solid #ccc;}



/* ************************* forms (reCaptcha 2.0) ************************* */

.wpcf7-form div.wpcf7-response-output {color: #000; background-color: #fff; margin: 0; padding: 0;}
.wpcf7-form div.wpcf7-mail-sent-ok {border: 2px solid #398f14; background-color: #fff; padding: 5px; box-shadow: 2px 2px 5px #797979;}
.wpcf7-form div.wpcf7-mail-sent-ng {border: 2px solid #ff0000; background-color: #fff; padding: 5px; box-shadow: 2px 2px 5px #797979;}
.wpcf7-form div.wpcf7-spam-blocked {border: 2px solid #ffa500; background-color: #fff; padding: 5px; box-shadow: 2px 2px 5px #797979;}
.wpcf7-form div.wpcf7-validation-errors {border: 2px solid #f7e700; padding: 5px; box-shadow: 2px 2px 5px #797979;}
.wpcf7-form span.wpcf7-not-valid-tip {color: #000; position: absolute; z-index: 100; background: #fff; border: 1px solid #ff0000; font-size: 13px; padding: 5px; box-shadow: 2px 2px 5px #797979;}
.wpcf7-form span.wpcf7-not-valid-tip-no-ajax {color: #f00; font-size: 13px; display: block;}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label {font-size: 80%;}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item,
.wpcf7-form .wpcf7-radio .wpcf7-list-item {display: inline-block; padding: 5px 5px 5px 0;}

#popup {cursor: auto;}
#popup .wpcf7-not-valid-tip {right: 0;}

.table-form {width: 100%;}
.table-form th {text-align: right; padding-top: 0.7em; vertical-align:top;}
.table-form th label {white-space: nowrap;}

@media screen and (max-width: 767px) {
  .table-form th {text-align: left; width: 100%; display: block; padding: 5px 0;}
  .table-form th label {white-space: normal;}
  .table-form td .g-recaptcha * {width: 100%!important;}
}

input[type="text"], input[type="tel"], input[type="email"], input[type="number"], input[type="date"], textarea, select {border: 1px solid #a3a3a3; background-color: #f7f7f7; padding: 4px; transition: border 0.2s, box-shadow 0.2s ease-in-out;}
input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="date"]:focus, textarea:focus {background-color: #fff; box-shadow: 0px 0px 4px #373737;}
input[type="text"]:hover, input[type="tel"]:hover, input[type="email"]:hover, input[type="number"]:hover, input[type="date"]:hover, textarea:hover {box-shadow: 0px 0px 4px #373737;}

.form-submit {text-align: center; margin: 1em 0;}
.form-required {color: #FF0000;}

input[type="text"], input[type="tel"], input[type="email"], input[type="date"], textarea {width: 100%;}
input[type="text"], input[type="email"], input[type="number"], input[type="date"] {padding: 6px 4px;}

input[type="text"].small {width: 10%;}
textarea {height: 7.5em; resize: vertical;}

/* safari type="search" fix */
input[type="search"] {-webkit-appearance: none; border-radius: 0;}
input[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}





/* ************************* table ************************* */

.table th,
.table td {padding: 0 10px 0 0; margin: 0; vertical-align: top;}


/* tabulka clanek */
.table-article {width: 100%; border: 2px solid #dcdcdc;}
.table-article td, .table-article th {padding: 4px; border: 1px solid #dcdcdc;}
.table-article th {text-align: center; background-color: #e8e8e8; padding: 15px;}
.table-article td {text-align: left; background-color: #fff; padding: 8px; vertical-align: top;}

/* table wrap */
@media screen and (max-width: 767px) {
  .table-wrap {overflow: overflow-x: hidden; overflow-y: auto; width: 100%; padding: 2em 0; margin-bottom: 2em;}

  .table th, .table td, .table tr,	
  .table-form th, .table-form td, .table-form tr {display: block;}
 
  .table td,
  .table-form td, .table-form th {padding: 0 0 0.5em 0;}
}


/* responsive iframe video (16:9) */
.iframe-wrapper {position: relative; width: 100%; height: 0; margin-bottom: 2em; padding: 2em 0 56.25% 0;  overflow: hidden; line-height: 0;}
.iframe-wrapper iframe, .iframe-wrapper object, .iframe-wrapper embed {position: absolute; top: 0; left: 0; width: 100%!important; height: 100%!important;} 

@media screen and (min-width: 768px) {
  .iframe-wrapper {width: 500px; height: 281px; padding-bottom: 0;}
}

/* wp-booking-system */

@media screen and (max-width: 767px) {
  .wpbs-calendar-wrapper table th,
  .wpbs-calendar-wrapper table td {display: table-cell;}
  .wpbs-calendar-wrapper table tr {display: table-row;}	
}

/* future days */
.wpbs-main-wrapper .wpbs-date:not(.wpbs-is-bookable) .wpbs-legend-item-icon div:first-of-type {background-color: #efefef;}



/* ************************* gallery + album ************************* */

/* shared */
.gallery,
.album {display: flex; flex-direction: row; flex-wrap: wrap; margin-bottom: 2em; clear: both; line-height: 1;}

.gallery .gallery-item span,
.album .album-item h3 {line-height: 1.3;}

/* gallery (180 x 180px) */
.gallery .gallery-item {text-align: center; overflow: hidden;}
.gallery .gallery-item span {display: block; margin-top: 0.5em;}
.gallery .gallery-item span.caption {font-weight: normal; font-size: 80%;}
.gallery .gallery-item span.description {margin-bottom: 0.5em; font-size: 75%;}

/* album */
.album .album-item {text-decoration: none;}
.album .album-item > a.thumbnail {position: relative; display: block; width: 100%; height: 0; padding-bottom: 100%; background-repeat: no-repeat!important; background-size: cover!important; background-position: center center!important; overflow: hidden; transition: all .4s ease;}
.album .album-item > a.thumbnail:hover {transform: scale(1.06);}
.album .album-item > a.thumbnail::after {position: absolute; content: ""; left: 50%; top: 50%; width: 0%; height: 0%; transition: all .4s ease;}
.album .album-item > a.thumbnail:hover::after {left: 0; top: 0; width: 100%; height: 100%;}
.album .album-item h3 {font-size: 110%; text-align: left; margin: 1.5em 0 0.5em 0; text-transform: uppercase;}


@media screen and (max-width: 479px) {
  .gallery {margin-left: -6%;}
  .gallery .gallery-item {width: calc(100% / 2 - 6%); margin: 0 0 6% 6%;}
  .album .album-item {width: 100%; margin-bottom: 2em;}
}

@media screen and (min-width: 480px) {	
  .gallery {margin-left: -2%;}		
  .gallery .gallery-item {width: calc(100% / 4 - 2%); margin: 0 0 2% 2%;}
  
  .album {margin-left: -3%;}
  .album .album-item {width: calc(100% / 2 - 3%); margin: 0 0 3% 3%;}
}

@media screen and (min-width: 480px) and (max-width: 1199px) {
  .album .album-item h3 {font-size: 2vmin;}
}

@media screen and (min-width: 768px) {
  .gallery .gallery-item {width: calc(100% / 5 - 2%);}
}

@media screen and (min-width: 1200px) {
  .gallery .gallery-item {width: calc(100% / 6 - 2%);}
  .gallery .gallery-item a.icon.magnify {width: 180px; height: 180px; display: flex; justify-content: center; align-items: center;}
  .album .album-item {width: calc(100% / 4 - 3%);}
} 


/* icon.search hover */
.gallery a.icon.magnify {display: block; position: relative; overflow: hidden; line-height: 0;}

.gallery a.icon.magnify::before {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);  font-size: 60px; opacity: 0; z-index: 2; transition: all .2s ease-in-out;} 
.gallery a.icon.magnify:hover::before {font-size: 80px; opacity: .75;}

.gallery a.icon.magnify img {width: 100%; transition: transform .4s ease-in-out;}
.gallery a.icon.magnify:hover img {transform: scale(1.1);}




/* Fancybox 3.5.7 */
body.compensate-for-scrollbar {overflow: hidden;}
.fancybox-active {height: auto;}
.fancybox-is-hidden {position: absolute!important; left: -9999px; top: -9999px; margin: 0; visibility: hidden;}
.fancybox-container {position: fixed;  top: 0; left: 0; width: 100%; height: 100%; outline: none; z-index: 99992; -webkit-backface-visibility: hidden; -webkit-tap-highlight-color: transparent; -ms-touch-action: manipulation; touch-action: manipulation; -webkit-transform: translateZ(0); transform: translateZ(0);}
.fancybox-container * {box-sizing: border-box;}
.fancybox-container button.fancybox-button {background: none;}
.fancybox-outer, .fancybox-inner, .fancybox-bg, .fancybox-stage {position: absolute; bottom: 0; left: 0; right: 0; top: 0; font-family: Arial, Helvetica, sans-serif;}
.fancybox-outer {-webkit-overflow-scrolling: touch; overflow-y: auto;}
.fancybox-bg {background: #1e1e1e; opacity: 0; transition-duration: inherit; transition-property: opacity; transition-timing-function: cubic-bezier(.47,0,.74,.71);}
.fancybox-is-open .fancybox-bg {opacity: .9; transition-timing-function: cubic-bezier(.22,.61,.36,1);}
.fancybox-infobar, .fancybox-toolbar, .fancybox-caption, .fancybox-navigation .fancybox-button {position: absolute; direction: ltr; opacity: 0; transition: opacity .25s, visibility 0s linear .25s; visibility: hidden; z-index: 99997;}
.fancybox-show-infobar .fancybox-infobar, .fancybox-show-toolbar .fancybox-toolbar, .fancybox-show-caption .fancybox-caption, .fancybox-show-nav .fancybox-navigation .fancybox-button {opacity: 1; transition: opacity .25s ease 0s, visibility 0s ease 0s; visibility: visible;}
.fancybox-infobar {top: 0; left: 0; color: #ccc; font-size: 13px; height: 44px; line-height: 44px; min-width: 44px;  padding: 0 10px; pointer-events: none;  mix-blend-mode: difference; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;  -webkit-font-smoothing: subpixel-antialiased;}
.fancybox-toolbar {right: 0; top: 0;}
.fancybox-stage {direction: ltr; overflow: visible; transform: translateZ(0); z-index: 99994;}
.fancybox-is-open .fancybox-stage {overflow: hidden;}
.fancybox-slide {position: absolute; top: 0; left: 0; display: none; width: 100%; height: 100%;  outline: none;padding: 44px; text-align: center;  overflow: auto; white-space: normal;  z-index: 99994; transition-property: transform, opacity; -webkit-backface-visibility: hidden; -webkit-overflow-scrolling: touch;}
.fancybox-slide::before {display: inline-block; content: ""; width: 0; height: 100%; margin-right: -.25em; vertical-align: middle;}
.fancybox-is-sliding .fancybox-slide, .fancybox-slide--previous, .fancybox-slide--current, .fancybox-slide--next {display: block;}
.fancybox-slide--image {overflow: hidden; padding: 44px 0;}
.fancybox-slide--image::before {display: none;}
.fancybox-slide--html {padding: 6px;}
.fancybox-content {background: #fff; display: inline-block; margin: 0; max-width: 100%; overflow: auto; -webkit-overflow-scrolling: touch; padding: 44px; position: relative; text-align: left; vertical-align: middle;}
.fancybox-slide--image .fancybox-content {background: transparent; background-repeat: no-repeat; background-size: 100% 100%; left: 0; max-width: none; overflow: visible; padding: 0; position: absolute; top: 0; -webkit-transform-origin: top left; -ms-transform-origin: top left; transform-origin: top left; transition-property: opacity, -webkit-transform; transition-property: transform, opacity; transition-property: transform, opacity, -webkit-transform; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-animation-timing-function: cubic-bezier(.5,0,.14,1); animation-timing-function: cubic-bezier(.5,0,.14,1); -webkit-backface-visibility: hidden; z-index: 99995;}
.fancybox-can-zoomOut .fancybox-content {cursor: -webkit-zoom-out; cursor: zoom-out;}
.fancybox-can-zoomIn .fancybox-content {cursor: -webkit-zoom-in; cursor: zoom-in;}
.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {cursor: -webkit-grab; cursor: grab;}
.fancybox-is-grabbing .fancybox-content {cursor: -webkit-grabbing; cursor: grabbing;}
.fancybox-container [data-selectable='true'] {cursor: text;}
.fancybox-image,
.fancybox-spaceball {background: transparent; border: 0; height: 100%; left: 0; margin: 0; max-height: none; max-width: none; padding: 0; position: absolute; top: 0; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; width: 100%;}
.fancybox-spaceball {z-index: 1;}
.fancybox-slide--video .fancybox-content, .fancybox-slide--map .fancybox-content, .fancybox-slide--pdf .fancybox-content, .fancybox-slide--iframe .fancybox-content {width: 100%; height: 100%; padding: 0; overflow: visible;}
.fancybox-slide--video .fancybox-content {background: #000;}
.fancybox-slide--map .fancybox-content {background: #e5e3df;}
.fancybox-slide--iframe .fancybox-content {height: calc(100% - 44px); margin-bottom: 44px; padding: 5px; background: #fff;}
.fancybox-video, .fancybox-iframe {width: 100%; height: 100%; border: 0; margin: 0; padding: 0; background: transparent; overflow: hidden; }
.fancybox-iframe {vertical-align: top;}
.fancybox-error {background: #fff; cursor: default; max-width: 400px; padding: 40px; width: 100%;}
.fancybox-error p {color: #444; font-size: 16px; line-height: 20px; margin: 0; padding: 0;}
.fancybox-button {background: rgba(30,30,30,.6); border: 0; border-radius: 0; box-shadow: none; cursor: pointer; display: inline-block; height: 44px; margin: 0; padding: 10px; position: relative; transition: color .2s; vertical-align: top; visibility: inherit; width: 44px;}
.fancybox-button, .fancybox-button:visited, .fancybox-button:link {color: #ccc;}
.fancybox-button:hover {color: #fff;}
.fancybox-slide--html .fancybox-button:hover {color: #999;}
.fancybox-button:focus {outline: none;}
.fancybox-button.fancybox-focus {outline: 1px dotted;}
.fancybox-button[disabled], .fancybox-button[disabled]:hover {color: #888; cursor: default; outline: none;}
.fancybox-button > div {background-color: rgba(0,0,0,.3); height: 100%;}
.fancybox-button svg {display: block; height: 100%; overflow: visible; position: relative; width: 100%;}
.fancybox-button svg path {fill: currentColor; stroke-width: 0;}
.fancybox-button--play svg:nth-child(2), .fancybox-button--fsenter svg:nth-child(2), .fancybox-button--pause svg:nth-child(1), .fancybox-button--fsexit svg:nth-child(1) {display: none;}
.fancybox-progress {background: #ff5268; height: 2px; left: 0; position: absolute; right: 0; top: 0; -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 0; -ms-transform-origin: 0; transform-origin: 0; transition-property: -webkit-transform; transition-property: transform; transition-property: transform, -webkit-transform; transition-timing-function: linear; z-index: 99998;}
.fancybox-close-small {position: absolute; right: 0; top: 0; border: 0; width: 40px; height: 40px; color: #555; background: transparent; cursor: pointer;  margin: 0; padding: 6px;  z-index: 401; border-radius: 0;}
.fancybox-close-small:hover {opacity: .75;}
.fancybox-slide--image .fancybox-close-small, .fancybox-slide--video .fancybox-close-small, .fancybox-slide--iframe .fancybox-close-small {color: #ccc!important; padding: 5px; right: -12px; top: -44px;}
.fancybox-slide--image.fancybox-is-scaling .fancybox-content {overflow: hidden;}
.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {display: none;}
.fancybox-navigation .fancybox-button {position: absolute; top: calc(50% - 50px); width: 70px; height: 100px; background: #262626; background-clip: content-box; opacity: 0;}
.fancybox-navigation .fancybox-button div {padding: 7px;}
.fancybox-navigation .fancybox-button--arrow_left {left: 0; padding: 31px 26px 31px 6px;}
.fancybox-navigation .fancybox-button--arrow_right {padding: 31px 6px 31px 26px; right: 0;}
.fancybox-caption {left: 0; right: 0; bottom: 100px; color: #fff; text-align: left; font-size: 14px; font-weight: normal; padding: 20px; text-shadow: 1px 1px #000; line-height: 1.3;}
@media all and (max-height: 576px) {@supports (padding: max(0px)) {.fancybox-caption {padding-left: max(12px, env(safe-area-inset-left)); padding-right: max(12px, env(safe-area-inset-right));}}}
.fancybox-caption a, .fancybox-caption a:link, .fancybox-caption a:visited {color: #ccc; text-decoration: none;}
.fancybox-caption a:hover {color: #fff; text-decoration: underline;}
.fancybox-loading {animation: fancybox-rotate 1s linear infinite; background: transparent; border: 4px solid #888; border-bottom-color: #fff; border-radius: 50%; height: 50px; left: 50%; margin: -25px 0 0 -25px; opacity: .7; padding: 0; position: absolute; top: 50%; width: 50px; z-index: 99999;}
@keyframes fancybox-rotate {100% {transform: rotate(360deg);}}
.fancybox-animated {transition-timing-function: cubic-bezier(0,0,.25,1);}
.fancybox-fx-fade.fancybox-slide--previous, .fancybox-fx-fade.fancybox-slide--next {opacity: 0; transition-timing-function: cubic-bezier(.19,1,.22,1);}
.fancybox-fx-fade.fancybox-slide--current {opacity: 1;}
.fancybox-thumbs {background: rgba(0,0,0,.3); display: none; margin: 0; padding: 2px 2px 4px 2px; position: absolute; bottom: 0; left: 0; right: 0; width: auto; z-index: 99995; -webkit-tap-highlight-color: transparent; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar;}
.fancybox-show-thumbs .fancybox-thumbs {display: block;}
.fancybox-thumbs__list {position: relative; width: 100%; height: 100%; margin: auto; padding: 0; font-size: 0; white-space: nowrap; list-style: none; overflow:: hidden;}
.fancybox-thumbs-x {overflow-x: auto; overflow-y: hidden;}
.fancybox-thumbs__list a {position: relative; float: left; width: 100px; height: 75px; margin: 3px; outline: none; overflow: hidden; padding: 0; background-position: center center; background-repeat: no-repeat; background-size: cover; cursor: pointer; -webkit-tap-highlight-color: transparent;  -webkit-backface-visibility: hidden; backface-visibility: hidden;}
.fancybox-thumbs__list a::before {border: 3px solid rgba(255,255,255,.8); z-index: 99991;}
.fancybox-thumbs__list a:focus::before {opacity: .5;}
.fancybox-thumbs__list a::after {position: absolute; top: 0; right: 0; bottom: 0; left: 0; content: ""; background-color: rgba(255,255,255,.25);}
.fancybox-thumbs__list a:hover::after {opacity: 1;}
.fancybox-thumbs__list a::before, .fancybox-thumbs__list a::after {position: absolute; top: 0; right: 0; bottom: 0; left: 0; content: ""; opacity: 0; transition: all .2s ease-in;}
.fancybox-thumbs__list a.fancybox-thumbs-active::before {opacity: 1;}
@media screen and (max-width: 479px) {.fancybox-toolbar > *:not(.fancybox-button--close) {display: none!important;}}

/* iframe */
.fancybox-slide--iframe .fancybox-content {max-width: 60%;}

@media screen and (max-width: 767px) {
.fancybox-slide--iframe .fancybox-content {min-width: 100%;}
.fancybox-thumbs__list a {width: 80px; height: 60px;}
}




/* Owl Carousel 2.3.4 */
.owl-carousel,
.owl-carousel .owl-stage,
.owl-carousel .owl-item {position: relative;}

.owl-carousel .owl-stage-outer {width: 100%; overflow: hidden;}
.owl-carousel .owl-item {float: left; overflow: hidden;}

.owl-carousel.owl-grab,
.owl-carousel.owl-grab a {cursor: move; cursor: grab;}

.owl-drag .owl-item {-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}

.owl-carousel .owl-nav {position: absolute; top: 15px; right: 0;}
.owl-carousel .owl-prev {margin-right: 5px}
.owl-carousel button.owl-prev, .owl-carousel button.owl-next {display: inline-block; width: 24px; height: 24px; line-height: 24px; text-align: center; border: 1px solid #e5e5e5; cursor: pointer; transition: background-color .2s ease-in-out;}
.owl-carousel .owl-prev:hover, .owl-carousel .owl-next:hover {background-color: #fff;}
.owl-carousel .owl-prev::before {content: "\f104";} 
.owl-carousel .owl-next::before {content: "\f105";} 


.owl-carousel .owl-dots {position: absolute; left: 0; right: 0; text-align: center;}


@media screen and (max-width: 1339px) {
  .owl-carousel .owl-dots {bottom: 2vh;}
}

@media screen and (min-width: 1340px) {
  .owl-carousel .owl-dots {bottom: 80px;}
}

.owl-carousel .owl-dots button.owl-dot {position: relative; display: inline-block; width: 16px; height: 16px; margin: 5px; box-shadow: 0 0 5px #000; overflow: hidden; box-sizing: border-box;}
.owl-carousel .owl-dots button.owl-dot span {display: none;}
.owl-carousel .owl-dots .owl-dot::before {content: ""; width: 0%; height: 100%; position: absolute; right: 0; bottom: 0; transition: .4s ease-in;}

.owl-carousel .owl-dots button.owl-dot,
.owl-carousel .owl-dots .owl-dot::before {border-radius: 16px;}

.owl-carousel .owl-dots .owl-dot:hover::before,
.owl-carousel .owl-dots .owl-dot.active::before {width: 100%; left: 0;} 

.owl-carousel .owl-dots button.owl-dot,
.owl-carousel button.owl-prev, .owl-carousel button.owl-next {padding: 0!important; border: 0; overflow: hidden; cursor: pointer;}


/* carousel crossfade */
.owl-carousel .animated {animation-duration: 1000ms; animation-fill-mode: both;}
.owl-carousel .owl-animated-in {z-index: 0;}
.owl-carousel .owl-animated-out {z-index: 1;}
.owl-carousel .fadeOut {animation-name: fadeOut;}
@keyframes fadeOut {0% {opacity: 1;} 100% {opacity: 0;}}


/* GDPR */
#gdpr {padding-top: 1em;}
#gdpr .ico.lock::before {font-size: 18px; content: "\f023";}
#gdpr a {font-weight: bold;}


/* cookie popup */
#cookie-popup {position: fixed; left: 0; right: 0; bottom: 0; text-align: center; padding: 20px; color: #ddd; background-color: rgba(0,0,0,.75); text-shadow: 1px 1px #000; z-index: 1000;}
#cookie-popup a {color: #fff;}
#cookie-popup .button-small {margin-left: 10px; padding: 8px 16px; font-weight: bold; background-color: #f3f3f3; border: 0; cursor: pointer; white-space: nowrap;}
#cookie-popup .button-small:hover {background-color: #ccc}