/*  
Theme Name: Template One
Description: DARK / homepage fullpage carousel / one page paralax / 1 column: 1200px / header menu children / mobile-first responsive 
Author: Template One
Version: 2019-09
*/

@import url('font-face/font-face.css');
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%; display: flex; flex-direction: column; overflow-x: hidden;}

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 {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;}

/* clearfix */
.clearfix::after,
.paging-bottom::after,
.article::after,
.section::after {content: ""; display: table; clear: both;}


/* multiple declaration */
.owl-nav.disabled,
.owl-dots.disabled,
h2.screen-reader-text {display: none;}

@media screen and (max-width: 479px) {    
  #blocks .block .back,
  #header-wrapper #block-header-outer #block-header .logo, #header-wrapper #block-header-outer #block-header .block-header-anchor,
  #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 {display: none;}
  
  #scrollup {display: none!important;}
}

@media screen and (min-width: 1200px) {
  .table-article tbody td::before {display: none;} 
  a[href^="tel:"] {pointer-events: none; text-decoration: none;} 
}

a[href^="tel:"] {white-space: nowrap;}

button,
.button {-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;} 


/* flex-col */
.flex-col,
.flex-col .col {margin-bottom: 4em;}

@media screen and (min-width: 768px) {	
  .flex-col {display: flex; flex-direction: row; flex-wrap: wrap;}

  .flex-col .col {width: 50%;}   
  .flex-col .col:nth-of-type(odd) {padding-right: 20px;} 
  .flex-col .col:nth-of-type(even) {padding-left: 20px; padding-right: 0;}  
}

@media screen and (min-width: 1200px) {	
  .flex-col.col3 .col,
  .flex-col.col4 .col {padding-right: 40px; padding-left: 0;}	
	
  .flex-col.col3 .col {width: calc(100% / 3);}
  .flex-col.col4 .col {width: calc(100% / 4);}
}






/* video player */
.wp-video {margin-bottom: 2em;}



/* custom CSS */
.loga {text-align: center; margin-bottom: 2em;}
.loga img {margin: 10px; vertical-align: middle; max-height: 50px; max-width: 120px; width: auto;}






/* Montserrat */
h1, h2, h3, h4,
#header-wrapper #block-header p.claim,
#header-wrapper #block-header-outer #block-header .mobile,
#menu-header ul li a,
#blocks .block h2 {font-family: 'Montserrat', sans-serif;}


/* FontAwesome */
.ico::before, .ico::after,
.icon::before,
.owl-prev::before, .owl-next::before,
#main ul li::before, .article ul li::before,
.section-inner 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.address::before {content: "\f1ad";}
.ico.mobile::before {content: "\f3cd"; font-weight: 900;}
.ico.phone::before {content: "\f095";}
.ico.fax::before {content: "\f1ac";}
.ico.email::before {content: "\f0e0";}
.ico.angle-right::before {content: "\f105";}
.ico.info::before {content: "\f05a";}
.ico.contact::before {content: "\f0e0";}

/* icon */
.icon.magnify::before {content: "\f002";}
.icon.link-anchor::before {content: "\f078";}


/* crossroads icons */
#blocks .block .front .icon.ico1::before {content: "\f085";}
#blocks .block .front .icon.ico2::before {content: "\f15c";}
#blocks .block .front .icon.ico3::before {content: "\f302";}
#blocks .block .front .icon.ico4::before {content: "\f53a";}



/* icon social */
.icon.facebook::before, .ico.facebook::before {content: "\f082";}
.icon.facebook:hover::before, .ico.facebook:hover::before {color: #3b579d;}

.icon.twitter::before {content: "\f099";}
.icon.twitter:hover::before  {color: #1da1f2;}

.icon.youtube::before {content: "\f167";}
.icon.youtube:hover::before {color: #c63127;}

.icon.instagram::before {content: "\f16d";}
.icon.instagram:hover::before  {color: #d32e88;}

.icon.rss::before {content: "\f09e"; font-weight: bold;}
.icon.rss:hover::before {color: #ff6600;}

/* ico bitmap */
a.ico.pdf::before, a.ico.doc::before, a.ico.xls::before, a.ico.ppt::before {width: 16px; height: 16px; content: ""; background-repeat: no-repeat; background-position: left center;}
a.ico.pdf::before {background-image: url('images/ico/ico-pdf.gif');}
a.ico.doc::before {background-image: url('images/ico/ico-doc.gif');}
a.ico.xls::before {background-image: url('images/ico/ico-xls.gif');}
a.ico.ppt::before {background-image: url('images/ico/ico-ppt.gif');}









/* colors */
body,
.ico::before,
a[href^="tel:"],
.center-text a,
#blocks .block .front h2,
#menu-header #searchform.searchform-open .searchform-button {color: #000;}


#header-wrapper #block-header-outer #block-header .mobile,
#header-wrapper #block-header-outer #block-header .mobile::before,
#menu-header ul li a,
#menu-header #searchform .searchform-button,
#header-wrapper #block-header p.claim,
#blocks .block .front .icon::before,
.section-wrapper.dark, .section-wrapper.dark a[href^="tel:"],
.section-wrapper.image .section .section-inner,
.section-wrapper.image h4,
#footer, #footer a,
.section h2.ico::before,
.gallery .icon.magnify::before,
#scrollup.icon::before {color: #fff;}


.section-wrapper.dark strong,
.section-wrapper.dark a,
#menu-header ul li a:hover {color: #ccc;}

#blocks .block h2 > a {color: #333;}


blockquote cite {color: #636363;}


a,
#main a,
#news-block .perex .date,
.gallery .gallery-item span.description,
.social-icon a.icon::before,
h2.strike,
.section h2.description {color: #666;}


/* main color */
.center-text a,
#menu-header > ul > li[class*="current"] > a, 
.section .contact-us-left h3,
.section-wrapper.image .section .section-inner ul li::before,
#counters .count strong,
#header-wrapper #block-header .link-anchor::before,
a.underline:hover,
#gdpr .ico.lock::before {color: #e1251b;}







/* background-color */
#header-wrapper {background-color: #000;}

body,
#menu-header #searchform .searchform-input,
#header-wrapper #carousel .owl-dots .owl-dot.active::before,
.owl-carousel .owl-prev:hover, .owl-carousel .owl-next:hover {background-color: #fff;}


#header,
body#home #header.scroll,
#header #menu-header ul ul, 
body#home #header.scroll #menu-header ul ul,
#footer,
.section-wrapper.dark {background-color: #1a1a1a;}


body#home #header,
body#home #header #menu-header ul ul {background-color: rgba(34,32,32,.75);}


@media screen and (max-width: 479px) {
  body#home #header.scroll {background-color: rgba(26,26,26,.75);}
}


.section-wrapper.light {background-color: #f7f7f7;}



#scrollup,
.section-wrapper.darker {background-color: #3f3f3f;}


.button:disabled,
.button:hover {background-color: #5f5f5f;}




#blocks .block .front {background-color: #f0f0f0;}

#blocks .block .back {background-color: #191818;}



#blocks .block a.thumbnail::after,
.gallery .album > a.thumbnail::after {background-color: rgba(255,255,255,.3);}


/* main color */
#blocks .block .front .icon::before,
.button, .button.anchor:hover::before,
a.underline:hover::after,
ul.underline > li > a:hover::after, ul.underline > li[class*="current"] > a::after,
ul.underline > li > span.filter:hover::after, ul.underline > li > span.filter.active::after {background-color: #e1251b;}



/* border-color */
h2.strike::before, h2.strike::after {border-color: #d6d6d6;}

#menu-header #searchform .searchform-input {border-color: #000;}

#gallery.section-wrapper .gallery .gallery-item a {border-color:  #f0f0f0;}



/* text-shadow */
.button, a.button,
#menu-header ul ul li a,
#header-wrapper #block-header p.claim,
#header-wrapper #block-header-outer #block-header .mobile,
#info-block.section-wrapper.image .section .section-inner ul li {text-shadow: 1px 1px 0 #000;}


#blocks .block .front h2 {text-shadow: 1px 1px 0 #fff;}






/* border-radius */
.button, a.button,
.button.anchor::before,
#menu-header #searchform .searchform-input,
input[type="text"], input[type="tel"], input[type="email"], input[type="number"], input[type="date"], textarea, select {border-radius: 0;}


#blocks .block .front, #blocks .block .back {border-radius: 10px;}



/* text-transform: uppercase */
.button.anchor,
#header-wrapper #block-header-outer #block-header p.claim,
#menu-header > ul > li > a,
a.underline,
.section h2,
.contact-us-left h3 {text-transform: uppercase;}


/* font-weight: 400 (normal) */
#header-wrapper #block-header-outer #block-header p.claim,
#menu-header ul li a {font-weight: 400;}


/* font-weight: 500 (medium) */
.section h2,
#header-wrapper #block-header p.claim,
#header-wrapper #block-header-outer #block-header .mobile {font-weight: 500;}


/* font-weight: 600 (semi-bold) */
h1 {font-weight: 600;}


/* heading */
h1 {text-align: center; font-size: 220%; margin: 0 0 1em 0; line-height: 1.3;}
h1, h2, .section .article h2, h3, h4 {padding: 0;}
h2, h3, h4 {margin: 0 0 0.5em 0;}
h2, .section .article h2 {font-size: 140%;}
h3 {font-size: 120%;}
h4 {font-size: 100%;}

#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%;}
}


/* section heading */
.section h2 {text-align: center; font-size: 190%; margin: 0 0 1.5em 0;}
.section h2.description {font-size: 140%; text-transform: none;}
.section h2.description::first-letter {text-transform: uppercase;}

.section h1, .section h2, .section h3, .section h4 {line-height: 1.3;}
.section .article h2 {margin: 2em 0 0.5em 0; text-transform: none;}

.section h2.strike {font-size: 180%; margin: 0 0 1em 0; padding: 0;}

@media screen and (max-width: 479px) {
  .section h1, .section h2 {font-size: 180%;}
}






/* heading strike */
.strike {display: flex; align-items: center;}
.strike a {flex-grow: 0;}
.strike::before, .strike::after {min-width: 10%; border-top-width: 1px; border-top-style: solid; content: ""; flex-grow: 1;}
.strike::before {margin-right: 2.5%;}
.strike::after {margin-left: 2.5%;}


/* links */
a:hover {text-decoration: underline;}
a, a.icon, .button, a.button {text-decoration: none;}

.button, a.button, .section a::before {transition: all .2s ease-in-out;}

/* button */
.button, a.button {display: inline-block; color: #fff; font-weight: bold; border: 0; padding: 15px 30px; cursor: pointer; white-space: nowrap;}
.button:disabled {pointer-events: none;}

/* button anchor */
.button.anchor {position: relative; font-size: 18px; background: rgba(0,0,0,.6); border: 1px solid #fff; z-index: 2;}
.button.anchor::before {content: ""; width: 0; height: 100%; position: absolute; left: 0; top: 0; transition: .4s ease-in; z-index: -1;}
.button.anchor:hover::before {width: 100%; left: 0; right: auto;}

.center-button {clear: both; text-align: center; margin: 50px 0 1em 0; padding: 0;}


/* 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%;}



/* facebook */
.fb-like-button {width: 95px; height: 30px;}
.fb-page {width: 500px; height: 154px;}

@media screen and (max-width: 479px) {    
 .fb-page {width: 100%;}
}

.fb-like-button, .fb-page  {display: block; margin: 0 auto; border: 0; overflow: hidden;}
.fb-like {margin: 30px 0; float: right;}





/* filter alpha */
#header #header-inner .languageswitch a:hover img, #header #header-inner .languageswitch a.current-lang img  {opacity: .7;}





/* layout */
@media screen and (min-width: 1200px) {
  #header-inner,
  #content,
  .section {width: 1200px; margin: 0 auto;} 
}

#header, #footer {flex: none;}

.section,
#main {font-size: 120%; line-height: 1.3;}






/* header */
.logo {display: block; background: url('images/logo.svg') no-repeat center center; background-size: contain;}

#header {position: relative; width: 100%; transition: background .3s ease-in-out; z-index: 100;}

@media screen and (max-width: 479px) {
  #header #header-inner {padding: 10px 0 0 0;}
  #header #header-inner a.logo {height: 50px; margin: 0 68px 0 10px;}
  
  /* language */
  #header #header-inner .languageswitch {margin: 0 68px 0 10px;}
}


@media screen and (min-width: 480px) {
  #header #header-inner {position: relative; display: flex; flex-direction: row; align-items: flex-end; flex-wrap: wrap;}  
    
  #header #header-inner a.logo {width: 210px; height: 80px; margin: 10px 0; transition: height .2s ease-in-out;}
  #header #header-inner a.logo {height: 60px;}

  body#home #header #header-inner a.logo {opacity: 0;}
  body#home #header.scroll #header-inner a.logo {opacity: 1; transition: opacity 1s .2s ease-in-out;}    
  
  /* language */
  #header #header-inner .languageswitch {position: absolute; top: 10px; right: 0; z-index: 100;}
}

@media screen and (min-width: 480px) and (max-width: 1199px) {
  #header #header-inner {padding: 0 15px;}
}

@media screen and (min-width: 1200px) {
  #header {position: fixed; z-index: 100;}
}




/* language */
#header #header-inner .languageswitch {flex: none; z-index: 100;}
#header #header-inner .languageswitch a img {width: 24px; height: auto; margin-right: 10px;}
#header #header-inner .languageswitch a:hover img,
#header #header-inner .languageswitch a.current-lang img {opacity: .75;}



/* header-wrapper + carousel */
#header-wrapper {position: relative;}

/* carousel */
#header-wrapper #carousel {position: absolute; top: 0; left: 0; right: 0; bottom: 0;}
#header-wrapper #carousel .owl-lazy {background-repeat: no-repeat; background-position: center center; background-size: cover; transition: 0s linear; transition-property: background-position;} 
#header-wrapper #carousel .owl-stage {opacity: .5;}

/* block-header  */
#header-wrapper #block-header-outer {display: flex; justify-content: center; align-items: center; flex-flow: column wrap; text-align: center;}
#header-wrapper #block-header-outer #block-header {display: inline-block; position: relative; max-width: 100%; max-height: 100%; padding: 0 15px; overflow: hidden; z-index: 2;}
#header-wrapper #block-header-outer #block-header p.claim,
#header-wrapper #block-header-outer #block-header .mobile {display: inline-block; letter-spacing: 0.05em; line-height: 1.3;}
#header-wrapper #block-header-outer #block-header .center-button .button.anchor {margin: 5px;}

@media screen and (max-width: 479px) {
  /* responsive carousel */ 
  #header-wrapper,
  #header-wrapper #carousel .owl-lazy  {width: 100%; height: 0; padding-bottom: 100%; }  
  
  #header-wrapper #block-header-outer #block-header {position: absolute; top: 50%; transform: translateY(-50%);}
  #header-wrapper .owl-carousel .owl-dots {bottom: 15px;} 
    
  /* block-header */
  #header-wrapper #block-header-outer #block-header p.claim,
  #header-wrapper #block-header-outer #block-header .mobile {margin: 0 0 0.5em 0; font-size: 5vmin;}      
  #header-wrapper #block-header-outer #block-header {padding: 10px;}
  #header-wrapper #block-header-outer #block-header .center-button {margin: 10px 0;}
  #header-wrapper #block-header-outer #block-header .center-button .button.anchor {font-size: 12px; padding: 10px 20px;}
}

@media screen and (min-width: 480px) {
  /* carousel */  
  #header-wrapper, 
  #header-wrapper #carousel .owl-lazy {width: 100%; height: 100vh;}   

  #header-wrapper #carousel .owl-lazy {animation: BackgroundZoom 24s 2s ease infinite;}   
  @keyframes BackgroundZoom {0% {transform: scale(1);} 45%,55% {transform: scale(1.1);}  90%,100% {transform: scale(1);}}    
    
  /* block-header */  
  #header-wrapper #block-header-outer {height: calc(100vh - 100px); margin-top: 100px;}
  #header-wrapper #block-header-outer #block-header .logo {width: 100%; height: 10vmin; margin-bottom: 2vmin; background-position: center center;}
  #header-wrapper #block-header-outer #block-header p.claim,
  #header-wrapper #block-header-outer #block-header .mobile {font-size: 2.3vmin;}
  
  #header-wrapper #block-header-outer #block-header .block-header-anchor {margin-top: 60px;}
  #header-wrapper #block-header-outer #block-header .block-header-anchor .link-anchor {width: 100px; height: 90px;}
  #header-wrapper #block-header-outer #block-header .block-header-anchor .link-anchor::before {font-size: 80px; animation: MoveUpDown 4s linear infinite;}
  @keyframes MoveUpDown {0% {transform: translateY(0);} 50% {transform: translateY(-15px);} 100% {transform: translateY(0);}}
}

@media screen and (min-width: 480px) and (max-width: 1199px) {
  #header-wrapper #block-header-outer {height: calc(100vh - 150px); margin-top: 150px;}
  #header-wrapper #block-header-outer #block-header .center-button .button.anchor {font-size: 14px;}
}











/* content */
#content {padding: 40px 0; overflow: hidden; flex: 1 0 auto;}

@media screen and (max-width: 1199px) {
  #content {padding: 30px 15px;}
}

@media screen and (max-width: 479px), (min-width: 1200px) {
    #content {margin-top: 80px;}
}






/* footer */
#footer-map {line-height: 0;}
#footer-map iframe {width: 100%; height: 400px;}

#footer {text-align: center; padding: 25px;}





/* menu header */  
@media screen and (min-width: 480px) {
  #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.page_item_has_children, #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: 480px) {  
  #menu-header #searchform {position: absolute; right: 0; top: 18px; 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.search {float: none;}
#menu-header > ul > li > a,
body#home #header.scroll #menu-header > ul > li > a {font-size: 16px; line-height: 60px; padding: 5px 10px;}
#menu-header > ul > li > a.ico::before {color: inherit; font-size: inherit; line-height: 0;}

@media screen and (min-width: 1200px) {
  body#home #menu-header > ul > li > a {font-size: 18px; padding: 10px;}
}

/* children */
#menu-header ul ul li {width: 250px;}
#menu-header ul ul li a {font-size: 15px; padding: 10px;}

#menu-header ul ul li > a:hover,
#menu-header ul ul li[class*="current"] > a {background: rgba(255,255,255,.2);}



@media screen and (min-width: 480px) {
    /* 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;} 
  #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: 479px) {
  /* menu header */ 
  #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: 19px; content: ""; transition: all .2s ease;}
  #menu-header #menu-button::after {top: 24px; height: 4px; width: 22px; border-width: 2px 0 2px 0; border-style: solid;}
  #menu-header #menu-button::before {top: 18px; height: 2px; width: 22px;}
  #menu-header #menu-button.menu-opened::after {border: 0; height: 2px; 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: 24px; left: 23px; width: 15px;}  
  
  /* parent */
  #menu-header {height: auto; margin: 10px 0 0 0; padding: 0; border: none; background: transparent; z-index: 1000;}
  #menu-header > ul {position: absolute; left: 0; right: 0; width: 100%; 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: 12px!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 DARK */
  #menu-header #searchform .searchform-input,
  #menu-header #searchform .searchform-button {color: #fff;} 
  #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: #000;}
  
  #menu-header #menu-button.menu-opened::after, 
  #menu-header #menu-button.menu-opened::before,  
  #menu-header #menu-button::before,
  #menu-header ul li.page_item_has_children .submenu-button::after, 
  #menu-header ul li.page_item_has_children .submenu-button::before {background-color: #fff;}
  
  #menu-header ul {background-color: #1a1a1a;}
  
  #menu-header ul li {border-color: #000;}
  #menu-header #menu-button::after {border-color: #fff;}
  
  #menu-header ul li a {text-shadow: 1px 1px 0 #000;}
}




/* menu underline */
ul.underline > li > a::after,
ul.underline > li > span.filter::after {display: block; position: absolute; left: 0; right: 0; content: ""; margin: auto; height: 1px; width: 0; background: transparent; transition: all .5s ease;}
ul.underline > li > a:hover::after, ul.underline > li[class*="current"] > a::after,
ul.underline > li > span.filter:hover::after, ul.underline > li > span.filter.active::after {width: 100%;}







/* breadcrumb */
#breadcrumb {font-size: 90%; margin-bottom: 2em;}
#breadcrumb ul li {display: inline; border-left: 1px solid #ccc; margin: 0 8px 0.5em 0; padding-left: 9px; line-height: 1.3;}
#breadcrumb ul li:first-child {border: 0; padding-left: 0;}
#breadcrumb ul li:first-child::before {content: "» ";}



/* link underline */
a.underline { display: inline-block; padding: 0 0 10px 0; position: relative; text-decoration: none;}
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%;}








/*********** homepage ***********/

/* homepage section */
.section-wrapper.image {background-repeat: no-repeat; background-position: center center; background-size: cover;}
.section-wrapper.dark {background-image: url('images/bg-section-wrapper-dark.png');}


/* section-wrapper */
@media screen and (max-width: 1199px) {
  .section-wrapper {padding: 20px;}
}




/* section */
@media screen and (min-width: 1200px) {
  .section {padding: 70px 0;}
}




/* section owl-carousel */
.section .owl-carousel .owl-nav {position: absolute; top: -80px; right: 0;}



/* news-block */
#news-block {clear: both; padding-top: 2em;}
#news-block .perex {display: block; font-size: 80%; padding: 0 10px;}
#news-block .perex h3 {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}



.center-text {clear: both; text-align: center; padding: 1em 0 0 0;}











/* crossroads */
#crossroads {}

/* crossroads blocks */
#blocks .block {display: block; margin-bottom: 6%; text-decoration: none;}

@media screen and (min-width: 480px) {
  #blocks {display: flex; flex-direction: row; flex-wrap: wrap;}
  #blocks .block {display: flex; width: calc(50% - 3%); margin: 0 1.5% 3% 1.5%;}
} 

@media screen and (min-width: 1200px) {
  #blocks {flex-wrap: nowrap;}  
  #blocks .block {width: 100%; width: 100%; flex-grow: 1; flex-basis: 0; margin: 0;}
  #blocks .block + .block {margin-left: 3%;}
}

#blocks .block .front,
#blocks .block .back {width: 100%; height: 100%; overflow: hidden;}


/* block front */
#blocks .block .front {position: relative; padding: 50px 20px;}
#blocks .block .front .icon {padding: 0 0 20px 0;}
#blocks .block .front .icon::before {display: block; text-align: center; font-size: 40px; line-height: 80px; width: 80px; height: 80px; margin: 0 auto; padding: 0; border-radius: 50%;}
#blocks .block .front h2 {text-align: center; font-size: 22px; line-height: 1.3; text-transform: none; margin: 0; padding: 0;}
  


@media screen and (min-width: 480px) {
  /* .block back */
  #blocks .block .back {display: flex; justify-content: center; align-items: center; background-repeat: no-repeat!important; background-size: cover!important; background-position: center center!important; transition: all .4s ease;}
  #blocks .block .back::after {position: absolute; content: ""; left: 50%; top: 50%; width: 0%; height: 0%; background: rgba(255,255,255,.2); transition: all .4s ease;}
  #blocks .block .back:hover::after {left: 0; top: 0; width: 100%; height: 100%;}
  #blocks .block .back:hover {transform: scale(1.1); transition: all .4s ease;}  
  #blocks .block .back .button {z-index: 100;}

  /* block animation */
  .flip-container {perspective: 1000; transform: perspective(1000px); transform-style: preserve-3d;}
  .flip-container:hover .back {transform: rotateY(0deg);}
  .flip-container:hover .front {transform: rotateY(180deg)}
  .flipper {position: relative; transition: 0.6s; transition-property: transform; transform-style: preserve-3d; flex-grow: 1; flex-basis: 0;}
  .front, .back {position: absolute; top: 0; left: 0; backface-visibility: hidden; transition: 0.6s; transition-property: transform; transform-style: preserve-3d;}
  .front {z-index: 2; transform: rotateY(0deg);}
  .back {transform: rotateY(-180deg);}
}












/* kontaktujte nas */
#contact-us.section-wrapper.image {background-image: url('images/bg-section-wrapper-image-contact-us.jpg');}
#contact-us .contact-us-left h4 {font-weight: normal;}
#contact-us .right-button {text-align: center;}


@media screen and (max-width: 479px) {
  #contact-us .contact-us-left {margin-bottom: 2em;}
  #contact-us .contact-us-left h3 {text-align: center; font-size: 160%;}
  #contact-us .contact-us-left h4 {text-align: center; font-size: 100%;}
}

@media screen and (min-width: 480px) {
  #contact-us .contact-us-left {float: left; width: 60%;}
  #contact-us .right-button {float: right; width: 40%;}
}


@media screen and (min-width: 480px) and (max-width: 1199px) {
  #contact-us .contact-us-left h3 {font-size: 180%;}
  #contact-us .contact-us-left h4 {font-size: 120%;}
}

@media screen and (min-width: 1200px) {
  #contact-us .contact-us-left h3 {font-size: 240%;}
  #contact-us .contact-us-left h4 {font-size: 150%;}
}







/* proc my */
#info-block.section-wrapper.image {background-image: url('images/bg-section-wrapper-image-info_block.jpg'); background-attachment: fixed;}
#info-block.section-wrapper.image .section .section-inner {padding: 60px 40px; background: rgba(0,0,0,.6);}

#info-block.section-wrapper.image .section .section-inner ul li {position: relative; margin: 0 0 2em 0; padding: 0 10px 0 45px; font-size: 140%; line-height: 1.3;}

@media screen and (max-width: 479px) {
  #info-block.section-wrapper.image .section .section-inner {padding: 30px 20px;}
  #info-block.section-wrapper.image .section .section-inner ul li {font-size: 120%;}
}

@media screen and (min-width: 480px) {
  #info-block.section-wrapper.image .section .section-inner ul {display: flex; flex-direction: row; flex-wrap: wrap; padding: 2em 0;}
  #info-block.section-wrapper.image .section .section-inner ul li {width: 50%;}
}

#info-block.section-wrapper.image .section .section-inner ul li::before {position: absolute; top: 50%; transform: translateY(-50%); left: 0; content: "\f058"; font-size: 40px;}
#info-block.section-wrapper.image .section .section-inner p {text-align: center; padding-top: 30px;}









/* gallery */
#gallery.section-wrapper .gallery .gallery-item a {border-width: 4px; border-style: solid;}






/* counters */
#counters {text-align: center;}
#counters .counter  {display: inline-block;}


@media screen and (max-width: 479px) {
  #counters .counter  {margin-bottom: 40px;}
}

@media screen and (min-width: 480px) {
  #counters .counter  {margin: 0 40px;}
}

#counters .counter h2 {font-size: 110%;}

#counters .count,
#counters .count strong  {display: inline-block; width: 120px; height: 120px;}

#counters .count {position: relative;}
#counters .count canvas {vertical-align: top;} 
#counters .count strong {position: absolute; top: 0; left: 0; font-size: 30px; line-height: 120px; background-repeat: no-repeat; background-position: center 14px;} 









/* kontakt */
@media screen and (max-width: 1199px) {
  .contact-wrapper .contact-left {margin-bottom: 3em;}
}

@media screen and (min-width: 1200px) {    
  .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;}
}

#contact strong {font-size: 110%}
#contact .ico::before {color: inherit;}





/* social icon */
.section.social-icon {padding: 35px 0; text-align: center;}
.section.social-icon a.icon {display: inline-block; margin: 20px;}
.section.social-icon a.icon::before {font-size: 46px;}




/* clanek */
#main ol, .article ol {padding: 0 0 0 1em;}
#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: 1em;}
#main ul li::before, .article ul li::before {width: 1em; display: inline-block; margin-left: -1em; content: "\25cf"; font-size: 100%; line-height: 1; color: #c6c6c6;}



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;}



/* 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 (max-width: 479px) {
  .alignright, .alignleft {display: block; margin: 0 auto 1em auto;}
}

@media screen and (min-width: 480px) {
  .alignright {margin: 0 0 2px 7px; float: right;}
  .alignleft {margin: 0 7px 2px 0; float: left}
}


hr {display: block; margin: 2em 0;  padding: 0; height: 1px; border: 0; border-top: 1px solid #ccc;}


/* formulare */
.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-radio .wpcf7-list-item {display: inline-block; padding: 5px 5px 5px 0;}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label {font-size: 80%;}

.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: 479px) {
  .table-form th {text-align: left; width: 100%; display: block; padding: 5px 0;}
  .form-table th label {white-space: normal;}
  .form-table td .g-recaptcha > div {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;}





/* tabulka */
.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;}
.table-article td {text-align: left; background-color: #fff; padding: 8px; vertical-align: top;}
.table-article tr:nth-child(even) td {background: #f2f2f2}


@media screen and (max-width: 479px) {
  table th, table td, table tr {display: block;}
 .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;}
}





/*********** gallery + album ***********/
/* gallery */
.gallery {display: flex; flex-direction: row; flex-wrap: wrap; margin-bottom: 2em; clear: both; line-height: 1;}
.gallery .gallery-item {text-align: center; padding: 0 3% 3% 0; 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 */
.gallery .album {text-decoration: none; padding: 0 0 10% 0;}
.gallery .album > a.thumbnail {display: block; width: 100%; height: 0; padding-bottom: 70%; background-repeat: no-repeat!important; background-size: cover!important; background-position: center center!important; overflow: hidden; transition: all .4s ease;}
.gallery .album > a.thumbnail:hover {transform: scale(1.06);}
.gallery .album > a.thumbnail::after { position: absolute; content: ""; left: 50%; top: 50%; width: 0%; height: 0%; transition: all .4s ease;}
.gallery .album > a.thumbnail:hover::after {left: 0; top: 0; width: 100%; height: 100%;}
.gallery .album h3 {font-size: 110%; text-align: left; margin: 1.5em 0 0.5em 0; text-transform: uppercase;}

/* shared */
.gallery .gallery-item span,
.gallery .album h3 {line-height: 1.3;}

@media screen and (max-width: 479px) {
  .gallery .gallery-item {width: calc(100% / 2);}
  .gallery .album {width: 100%;}
}

@media screen and (min-width: 480px) {
  .gallery .gallery-item {width: calc(100% / 4); padding: 0 1.5% 1.5% 0;}
  .gallery .album {width: calc(100% / 2); padding: 0 1.5% 3% 1.5%;}
}

@media screen and (min-width: 480px) and (max-width: 1199px) {
  .gallery .album h3 {font-size: 2vmin;}
}

@media screen and (min-width: 768px) {
  .gallery .gallery-item {width: calc(100% / 5);}
}

@media screen and (min-width: 1200px) {
  .gallery .gallery-item {width: calc(100% / 6 - 2px);}
  .gallery .album {width: calc(100% / 4);}
} 


/* icon.search hover */
.gallery .icon.magnify {display: block; position: relative; overflow: hidden; line-height: 0;}

.gallery .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 .icon.magnify:hover::before {font-size: 80px; opacity: .75;}

.gallery .icon.magnify img {width: 100%; transition: transform .4s ease-in-out;}
.gallery .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 button span {display: none;}

/* carousel owl-nav */
.owl-carousel .owl-prev::before {content: "\f104";} 
.owl-carousel .owl-next::before {content: "\f105";} 

/* section owl-nav */
.section .owl-carousel .owl-nav {position: absolute; top: -80px; right: 0;}
.section .owl-carousel .owl-prev {margin-right: 5px}
.section .owl-carousel button.owl-prev, .section .owl-carousel button.owl-next {display: inline-block; width: 24px; height: 24px; line-height: 23px; text-align: center; border: 1px solid #e5e5e5; cursor: pointer; transition: background-color .2s ease-in-out;}


.owl-carousel .owl-dots {position: absolute; bottom: 30px; left: 0; right: 0; z-index: 2;}
.owl-carousel .owl-dots {text-align: center;}
.owl-carousel .owl-dots button.owl-dot {position: relative; display: inline-block; width: 14px; height: 14px; margin: 5px; border: 1px solid #fff; box-shadow: 0 0 5px #000; border-radius: 0;}
.owl-carousel .owl-dots button.owl-dot span {display: none;}
.owl-carousel .owl-dots .owl-dot::before {content: ""; width: 100%; height: 0; position: absolute; left: 0; bottom: 0; transition: .4s ease-in;}
.owl-carousel .owl-dots .owl-dot.active::before {height: 100%; top: auto; bottom: 0;}

.owl-carousel .owl-dots button.owl-dot,
.owl-carousel button.owl-prev, .owl-carousel button.owl-next {padding: 0!important; background: none; overflow: hidden; cursor: pointer; box-sizing: border-box;}

/* 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"; font-weight: bold;}
#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}


/* media print */
@media print {
body > *:not(#content):not(#homepage) {display: none;}
h1 {font-size: 24pt;}
.section, #header-inner, #content {width: 100%;}
}