/*
Theme Name: Pora na rower
Author: Bestwebdesign
Version: 1.0
Author URI: https://bwd.pl/
*/

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');


.comment-reply-title small a:before,
.comment-reply-link:before {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-family: "Genericons-Neue";
font-size: 16px;
font-style: normal;
font-variant: normal;
font-weight: normal;
line-height: 1;
speak: none;
text-align: center;
text-decoration: inherit;
text-transform: none;
vertical-align: top;
}

/* general */
* {
margin: 0;
padding: 0;
outline: none;
}

html {
background: #FFFFFF;
text-underline-offset: 2px;
}

body {
line-height: 1.5;
margin: 0;
padding: 0;
font-family: "Outfit", sans-serif;
font-optical-sizing: auto;
font-size: 18px;
color: #535353;
-webkit-text-size-adjust: 100%;
image-rendering: -webkit-optimize-contrast;
min-width: 320px;
}

body.rwd-menu-open {
overflow: hidden;
}

h1, h2, h3, h4, h5, h6, b, strong {
font-weight: 600;
}

h1, h2, h3, h4, h5, h6 {
padding-bottom: 30px;
color: #184857;
}

h1 {
font-size: 60px;
line-height: 1.1;
font-weight: 400;
}

h2 {
font-size: 48px;
line-height: 1.2;
font-weight: 400;
}

h3 {
font-size: 36px;
line-height: 1.2;
font-weight: 400;
}

h4 {
font-size: 24px;
}

h5 {
font-size: 20px;
}

h6 {
font-size: 18px;
}

h1, h2, h3, h4, h5, h6 {
word-wrap: normal;
}

a {
color: #184856;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity, box-shadow;
-moz-transition-property: color, background-color, border-color, opacity, box-shadow;
-webkit-transition-property: color, background-color, border-color, opacity, box-shadow;
}

a:hover {
color: #466d78;
}

ul, ol {
padding-left: 25px;
margin-bottom: 25px;
}

p {
margin-bottom: 25px;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child {
padding-bottom: 0;
margin-bottom: 0;
}

img {
border: none;
vertical-align: middle;
}

hr {
border: none;
border-bottom: 1px solid #f3efeb;
margin-bottom: 25px;
}

fieldset {
padding: 25px;
border: 1px solid rgba(0,0,0,0.1);
margin-bottom: 15px;
}

fieldset legend {
padding: 0 15px;
margin-left: -15px;
}

input, button, select, textarea {
font-family: "Outfit", sans-serif;
font-optical-sizing: auto;
font-size: 20px;
color: #535353;
}

input[type=text],
input[type=search],
input[type=phone],
input[type=password],
input[type=email],
input[type=url],
input[type=number],
input[type=tel],
select,
.wpcf7-text {
line-height: 24px;
padding: 17px 30px;
border: 1px solid #dddbd1;
background: none;
color: #535353;
-moz-border-radius: 30px;
-webkit-border-radius: 30px;
border-radius: 30px;
}

input[type=text]:focus,
input[type=search]:focus,
input[type=phone]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=number]:focus,
input[type=tel]:focus,
textarea:focus {
border-color: #184856 !important;
}

::-webkit-input-placeholder {
opacity: 1;
color: #000000;
}

:-moz-placeholder {
opacity: 1;
color: #000000;
}

::-moz-placeholder {
opacity: 1;
color: #000000;
}

:-ms-input-placeholder {  
opacity: 1;
color: #000000;
}

input[type=submit],
input[type=button],
input[type=reset],
button[type=submit],
button[type=reset] {
cursor: pointer;
background: #184857;
-moz-border-radius: 30px;
-webkit-border-radius: 30px;
border-radius: 30px;
line-height: 20px;
padding: 20px 30px;
border: none;
color: #FFFFFF;
font-size: 20px;
text-decoration: none;
box-sizing: border-box;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background, border-color, opacity;
-moz-transition-property: color, background, border-color, opacity;
-webkit-transition-property: color, background, border-color, opacity;
}

input[type=submit]:hover,
input[type=button]:hover,
input[type=reset]:hover,
button[type=submit]:hover,
button[type=reset]:hover {
background: #466d79;
color: #FFFFFF;
outline: none;
}

textarea {
line-height: 24px;
padding: 17px 30px;
border: 1px solid #dddbd1;
background: none;
color: #000000;
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;
resize: none;
}

select {
text-overflow: ellipsis;
height: 60px;
-webkit-appearance: none;
-moz-appearance: none;
-ms-appearance: none;
appearance: none;
background: url(img/select_arrow.png) right center no-repeat #FFFFFF;
background-size: 40px auto;
outline: 0;
padding-right: 60px;
}

select option {
font-size: 16px;
}

select::-ms-expand {
display: none;
}

input[type=checkbox] {
float: left;
position: relative;
top: 3px;
}

input[type=radio] {
float: left;
height: 15px;
}

label {
cursor: default;
}

.clearfix:after {
clear: both;
content: ".";
display: block;
font-size: 0;
height: 0;
line-height: 0;
visibility: hidden;
}

.clearfix {
display: block
}

#PageWrapper {
position: relative;
min-height: 100vh;
display: flex;
flex-flow: column wrap;
}

#PageContainer {
text-align: left;
width: 100%;
flex: 1 0 auto;
}

#PageContent {
position: relative;
z-index: 1;
background: #FFFFFF;
overflow: hidden;
}

/* header */
#Header {
position: absolute;
z-index: 5;
top: 0;
left: 0;
width: 100%;
min-width: 320px;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: background;
-moz-transition-property: background;
-webkit-transition-property: background;
}

.tpl-header-collapsed #Header {
box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.05);
}

#HeaderMiddle .tpl-section-wrapper {
max-width: 1680px;
padding: 0 30px;
margin: 0 auto;
text-align: center;
position: relative;
}

#HeaderMiddle .tpl-logo-wrapper {
display: inline-block;
position: relative;
font-size: 0;
padding: 30px 0;
}

#HeaderMiddle .tpl-header-logo {
display: block;
width: 215px;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

#HeaderMiddle .tpl-header-logo img {
max-width: 100%;
height: auto;
}

#HeaderMiddle .tpl-header-right {
float: right;
}

#MiddleBar {
padding-top: 226px;
background: url(img/header_filter_bg.webp) no-repeat scroll center #806d43;
background-size: cover;
color: #FFFFFF;
position: relative;
}

#MiddleBar:before {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 420px;
background: linear-gradient(180deg, rgb(0,43,58) 0%, rgba(0,43,58,0.50196) 33%, rgba(0,43,58,0.14902) 66%, rgba(0,43,58,0) 100%);
content: '';
z-index: 1;
}

.tpl-middle-bar {
max-width: 960px;
padding: 60px 30px 90px 30px;
margin: 0 auto;
text-align: center;
position: relative;
z-index: 2;
}

.tpl-middle-bar h1 {
font-size: 60px;
padding: 0;
color: #FFFFFF;
}

/* content */
#Content {
position: relative;
z-index: 0;
}

#Content .tpl-section-wrapper {
padding: 60px 30px 90px 30px;
max-width: 960px;
margin: 0 auto;
}

#Content .tpl-section-content.tpl-column-layout {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
}

#Routes {
min-height: 90px;
}

#Routes .tpl-section-wrapper {
padding: 60px 30px 90px 30px;
max-width: 1320px;
margin: 0 auto;
}

#HeaderFilter + #Routes .tpl-section-wrapper {
display: none;
}

#Routes .tpl-section-content {
position: relative;
}

h1.page-title,
h2.page-title {
font-size: 60px;
padding-bottom: 60px;
}

.tpl-form-section:not(.tpl-last-section) {
padding-bottom: 60px;
}

.tpl-form-row {
margin: 0 -5px -10px -5px;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
align-items: flex-start;
}

.tpl-form-row .tpl-form-column {
width: 100%;
padding: 0 5px 10px 5px;
box-sizing: border-box;
}

.tpl-form-row .tpl-form-column.tpl-width-33 {
width: 33.33%;
}

.tpl-form-row .tpl-form-column.tpl-width-50 {
width: 50%;
}

.tpl-form-row .tpl-form-column.tpl-gdpr {
padding-top: 20px;
text-align: justify;
-moz-text-align-last: center;
text-align-last: center;
font-size: 12px;
line-height: 1.2;
}

.tpl-form-row .tpl-file-upload-info {
font-size: 12px;
text-align: center;
}

.tpl-form-row .tpl-upload-column p {
margin: 0;
}

.tpl-form-row .tpl-form-column .tpl-form-label {
padding-bottom: 10px;
display: inline-block;
}

.tpl-form-row .tpl-form-column.tpl-submit {
text-align: center;
}

.tpl-form-row .tpl-form-column .wpcf7-spinner {
position: absolute;
left: 50%;
top: 50%;
margin: 0;
margin-top: -12px;
margin-left: -12px;
}

.tpl-form-row .tpl-form-column.tpl-submit button {
box-sizing: border-box;
position: relative;
}

.tpl-form-row .tpl-form-column.tpl-submit button:before {
position: absolute;
top: 2px;
left: 2px;
right: 2px;
bottom: 2px;
content: '';
border: 1px solid #FFFFFF;
z-index: 1;
}

.tpl-form-row .tpl-form-column input[type=text],
.tpl-form-row .tpl-form-column input[type=phone],
.tpl-form-row .tpl-form-column input[type=email],
.tpl-form-row .tpl-form-column input[type=url],
.tpl-form-row .tpl-form-column input[type=number],
.tpl-form-row .tpl-form-column input[type=tel],
.tpl-form-row .tpl-form-column textarea,
.tpl-form-row .tpl-form-column select {
width: 100%;
box-sizing: border-box;
}

/* footer */
#Footer {
width: 100%;
overflow: hidden;
color: #184857;
}

.tpl-footer-privacy-policy {
display: inline-block;
}

.tpl-footer-privacy-policy a {
color: inherit;
}

.tpl-footer-privacy-policy a:hover {
opacity: 0.7;
}

#FooterBottom {
padding: 0 30px;
}

.tpl-footer-bottom {
max-width: 1320px;
margin: 0 auto;
padding: 36px 0;
line-height: 18px;
font-size: 14px;
text-align: center;
background: #f8f7f0;
border-radius: 30px 30px 0 0;
}

.tpl-copyright {
display: inline-block;
}

.tpl-footer-spacer {
display: inline-block;
padding: 0 10px;
}

.tpl-copyright a {
color: inherit;
}

.tpl-copyright a:hover {
color: #ffc509;
}

.tpl-footer-author {
display: inline-block;
}

.tpl-footer-author a {
display: inline-block;
line-height: 18px;
margin-left: 6px;
padding-left: 25px;
color: inherit;
font-weight: 700;
text-decoration: none;
background: url(img/bwd.png) no-repeat scroll 0 0px;
background-size: 18px auto;
}

.tpl-footer-author a:hover {
opacity: 0.7;
}

.tpl-contact-layout-row {
margin: 0 -60px;
}

.tpl-contact-layout-column {
width: 50%;
float: left;
padding: 0 60px;
box-sizing: border-box;
}

.tpl-contact-layout-column.tpl-text-column {
padding-top: 60px;
}

.tpl-contact-layout-column.tpl-text-column h1.page-title {
padding-bottom: 60px;
}

.tpl-contact-details-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
margin: -30px;
}

.tpl-contact-details-column {
width: 50%;
padding: 30px;
box-sizing: border-box;
}

.tpl-contact-details-column h3 {
font-size: 24px;
padding-bottom: 15px;
}

.tpl-contact-details-column .tpl-text a {
color: inherit;
}

.tpl-contact-details-column .tpl-text a:hover {
color: #466d78;
}

.tpl-contact-layout-column .tpl-form-wrapper {
padding: 60px;
background: #f3efeb;
}

.tpl-contact-layout-column .tpl-form-wrapper .tpl-title {
padding-bottom: 30px;
font-size: 30px;
}

.tpl-contact-layout-column .tpl-form-row {
margin: 0 -5px;
}

.tpl-contact-layout-column .tpl-form-column {
float: left;
width: 50%;
padding: 5px;
box-sizing: border-box;
}

.tpl-contact-layout-column .tpl-form-column.tpl-message,
.tpl-contact-layout-column .tpl-form-column.tpl-submit,
.tpl-contact-layout-column .tpl-form-column.tpl-gdpr {
width: 100%;
}

.tpl-contact-layout-column .tpl-form-column.tpl-gdpr {
text-align-last: left;
}

.tpl-form-column.tpl-submit {
position: relative;
}

.tpl-contact-layout-column .tpl-form-column input,
.tpl-contact-layout-column .tpl-form-column textarea {
width: 100%;
box-sizing: border-box;
background: #FFFFFF;
}

.tpl-contact-layout-column .tpl-form-column button {
width: 100%;
box-sizing: border-box;
}

.tpl-contact-layout-column .tpl-form-column textarea {
height: 120px;
}

#ContactMap {
height: 560px;
background: #f9f9f9;
}

#ContactMap p,
#ContactMap iframe {
display: block;
width: 100%;
height: 100%;
}

/* wpcf7 */
body .wpcf7-form .form-row {
margin-bottom: 20px;
}

body .wpcf7-form .form-row label {
display: block;
padding-bottom: 5px;
}

body .wpcf7-form-control.wpcf7-acceptance {
display: block;
}

body .wpcf7-list-item {
display: block;
margin: 0 0 10px 0;
}

body .wpcf7-list-item:last-child {
margin: 0;
}

body .wpcf7-list-item label {
display: inline-block;
cursor: pointer;
line-height: 1.2;
position: relative;
}

body .wpcf7-list-item label input[type=checkbox],
body .wpcf7-list-item label input[type=radio] {
opacity: 0;
visibility: hidden;
position: absolute;
top: 0;
left: 0;
}

body .wpcf7-list-item label .wpcf7-list-item-label {
display: inline-block;
position: relative;
display: inline-flex;
align-items: center;
flex-flow: row nowrap;
}

body .wpcf7-list-item label .wpcf7-list-item-label:before {
margin-right: 15px;
width: 30px;
height: 30px;
border: 1px solid #f8f6f4;
background: #f8f6f4;
background-position: center;
background-repeat: no-repeat;
background-size: 100% auto;
content: '';
text-align: center;
}

body .wpcf7-list-item label input[type=checkbox]:checked + .wpcf7-list-item-label:before,
body .wpcf7-list-item label input[type=radio]:checked + .wpcf7-list-item-label:before {
background-image: url(img/check.png);
}

body .wpcf7-list-item label .wpcf7-list-item-label a {
color: inherit;
}

body .wpcf7-list-item label .wpcf7-list-item-label a:hover {
opacity: 0.7;
}

body .wpcf7-list-item label .wpcf7-list-item-label .tpl-more-text {
display: none;
opacity: 0.7;
}

body .wpcf7-list-item label .wpcf7-list-item-label .tpl-more-text.tpl-visible {
display: inline-block;
padding-top: 15px;
}

@-moz-keyframes rotating {
	from{
		-moz-transform: rotate(0deg);
	}
	to{
		-moz-transform: rotate(360deg);
	}
}

@-webkit-keyframes rotating {
	from {
		-webkit-transform: rotate(0deg);
	}
	to{
		-webkit-transform: rotate(360deg);
	}
}

@keyframes rotating {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

body span.wpcf7-not-valid-tip {
font-size: 11px;
padding-top: 5px;
text-align: left;
}

body .wpcf7 form .wpcf7-response-output {
margin-left: 0;
margin-right: 0;
padding: 10px 30px;
font-size: 14px;
margin-top: 30px;
margin-bottom: 0;
}

body .wpcf7-form-control-wrap {
display: block;
}

/* alignments */
.alignleft {
float: left;
margin: 0.375em 50px 50px 0;
}

.alignright {
float: right;
margin: 0.375em 0 50px 50px;
}

.aligncenter {
clear: both;
display: block;
margin: 0 auto 50px;
}

.alignnone {
max-width: 100%;
width: auto;
height: auto;
}

blockquote.alignleft {
margin: 0.3157894737em 1.4736842105em 1.473684211em 0;
}

blockquote.alignright {
margin: 0.3157894737em 0 1.473684211em 1.4736842105em;
}

blockquote.aligncenter {
margin-bottom: 1.473684211em;
}

/* responsive menu */
.responsive-menu-wrapper {
position: fixed;
z-index: 90;
top: 0px;
left: 0;
bottom: 0;
width: 100%;
overflow: auto;
background: #dddbd1;
transition: .2s ease-out;
-moz-transition: .2s ease-out;
-webkit-transition: .2s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.admin-bar .responsive-menu-wrapper {
top: 32px;
}

.responsive-menu-wrapper {
opacity: 0;
visibility: hidden;
margin-left: -100%;
}

.responsive-menu-wrapper.flexnav-show {
opacity: 1;
visibility: visible;
margin-left: 0;
}

.responsive-menu-container {
display: flex;
flex-flow: row wrap;
align-items: center;
height: 100%;
}

.responsive-menu-container > ul {
margin: 0;
padding: 30px;
text-align: center;
width: 100%;
}

.responsive-menu-container > ul li {
list-style: none;
background: none;
margin: 0;
padding: 5px 0;
}

.responsive-menu-container > ul > li:first-child {
border-top: none;
}

.responsive-menu-container > ul li.item-with-ul {
position: relative;
}

.responsive-menu-container > ul li a {
color: #184857;
display: inline-block;
font-size: 60px;
line-height: 1.1;
text-decoration: none;
position: relative;
}

.responsive-menu-container > ul li a:hover {
color: #466d79;
}

.responsive-menu-container > ul li.current-menu-ancestor:not(.tpl-one-page-nav-link) > a,
.responsive-menu-container > ul li.current-menu-item:not(.tpl-one-page-nav-link) > a,
.responsive-menu-container > ul li.current-menu-parent:not(.tpl-one-page-nav-link) > a,
.responsive-menu-container > ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a,
.responsive-menu-container > ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a,
.responsive-menu-container > ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a {
font-weight: 600;
}

.responsive-menu-container > ul li a > span {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row nowrap;
align-items: center;
}

.responsive-menu-container > ul li a > span .tpl-icon {
width: 60px;
flex-grow: 0; 
flex-shrink: 0;
text-align: center;
}

.responsive-menu-container > ul li a > span .tpl-icon img {
max-width: 100%;
max-width: 36px;
max-height: 36px;
}

.responsive-menu-container > ul li a > span .tpl-title {
flex: 1;
}

.responsive-menu-container > ul li.item-with-ul a {
padding-right: 45px;
}

.responsive-menu-container > ul li .touch-button {
position: absolute;
right: 0px;
top: 0px;
width: 50px;
height: 51px;
color: #FFFFFF;
display: block;
background: url(img/responsive_menu_dropdown.png) no-repeat scroll center 23px #f3efeb;
cursor: pointer;
}

.responsive-menu-container > ul li .touch-button.active {
background-position: center -37px;
}

.responsive-menu-container > ul li .touch-button i {
position: absolute;
left: 50%;
top: 50%;
-moz-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
font-size: 10px;
display: none;
}

.responsive-menu-container > ul li ul {
display: none;
padding: 0;
margin: 0;
}

.responsive-menu-container > ul li ul.flexnav-show {
display: block;
}

.responsive-menu-container > ul li li a {
padding-left: 60px;
}

.responsive-menu-container > ul li li li a {
padding-left: 90px;
}

/* responsive menu button */
.responsive-menu-button {
position: absolute;
right: 30px;
top: 55px;
z-index: 91;
text-align: center;
cursor: pointer;
}

.responsive-menu-button span {
display: block;
width: 23px;
height: 2px;
background: #FFFFFF;
margin-bottom: 3px;
transition: 0.3s ease-out;
-moz-transition: 0.3s ease-out;
-webkit-transition: 0.3s ease-out;
transition-property: opacity, transform, background;
-moz-transition-property: opacity, transform, background;
-webkit-transition-property: opacity, transform, background;
}

.responsive-menu-button.active span {
background: #184857;
}

.responsive-menu-button.active .tpl-line-1 {
transform: rotate(-45deg) translate(-3px,3px);
/* -moz-transform: rotate(-45deg) translate(-4px,4px);
-webkit-transform: rotate(-45deg) translate(-4px,4px); */
}

.responsive-menu-button.active .tpl-line-2 {
opacity: 0;
}

.responsive-menu-button.active .tpl-line-3 {
transform: rotate(45deg) translate(-4px,-4px);
/* -moz-transform: rotate(45deg) translate(-4px,-4px);
-webkit-transform: rotate(45deg) translate(-4px,-4px); */
}

.responsive-menu-button .tpl-line-3 {
margin-bottom: 0;
}

.responsive-menu-button .touch-button {
display: none;
}

/* pagination */
.tpl-pagination {
text-align: center;
}

.tpl-pagination .screen-reader-text {
display: none;
}

.tpl-pagination .navigation {
padding-top: 60px;
font-size: 16px;
}

.tpl-pagination .nav-links a,
.tpl-pagination .nav-links span {
display: inline-block;
height: 30px;
width: 30px;
line-height: 30px;
margin: 0 2px 4px 2px;
color: inherit;
text-decoration: none;
text-align: center;
cursor: pointer;
}

.tpl-pagination .nav-links .prev,
.tpl-pagination .nav-links .next {
width: auto;
}

.tpl-pagination .nav-links a:hover {
color: #184856;
}

.tpl-pagination .nav-links span {
background: none;
}

.tpl-pagination .nav-links span.current {
background: #184856;
color: #ffffff;
cursor: default;
font-weight: 500;
}

.tpl-no-posts {
text-align: center;
}

.tpl-posts-row {
margin: 0 -15px -60px -15px;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: stretch;
flex-flow: row wrap;
}

.tpl-posts-row .tpl-post-entry {
padding: 0 15px 60px 15px;
width: 33.33%;
box-sizing: border-box;
}

.tpl-posts-row .tpl-post-entry a {
display: block;
color: inherit;
text-decoration: none;
}

.tpl-posts-row .tpl-post-entry a:hover {
color: #184856;
}

.tpl-posts-row .tpl-post-entry a span {
display: block;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-image {
position: relative;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-image:after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
background: rgba(194,1,80,0.8);
opacity: 0;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background, border-color, opacity;
-moz-transition-property: color, background, border-color, opacity;
-webkit-transition-property: color, background, border-color, opacity;
}

.tpl-posts-row .tpl-post-entry a:hover .tpl-post-entry-image:after {
opacity: 1;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-image img {
display: block;
width: 100%;
height: auto;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-date {
position: absolute;
right: 0;
bottom: 0;
padding: 10px 30px 5px 30px;
background: #184856;
color: #FFFFFF;
font-weight: 600;
line-height: 1;
z-index: 1;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-date .tpl-day {
font-size: 48px;
float: left;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-date .tpl-month-year {
padding-left: 15px;
float: left;
text-transform: uppercase;
padding-top: 3px;
line-height: 20px;
text-align: center;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-title {
font-size: 22px;
padding-top: 30px;
padding-right: 60px;
}

.tpl-video {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}

.tpl-video iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.tpl-post-content .tpl-post-main-image {
margin-bottom: 60px;
position: relative;
}

.tpl-post-content .tpl-post-main-image img {
max-width: 100%;
height: auto;
}

.tpl-post-content .tpl-post-entry-date {
position: absolute;
right: 0;
bottom: 0;
padding: 10px 30px 5px 30px;
background: #184856;
color: #FFFFFF;
font-weight: 600;
line-height: 1;
z-index: 1;
}

.tpl-post-content .tpl-post-entry-date .tpl-day {
font-size: 48px;
float: left;
}

.tpl-post-content .tpl-post-entry-date .tpl-month-year {
padding-left: 15px;
float: left;
text-transform: uppercase;
padding-top: 3px;
line-height: 20px;
text-align: center;
}

.tpl-post-content .tpl-post-entry-date .tpl-month-year span {
display: block;
}

.tpl-post-content .tpl-back-link {
padding-top: 60px;
}

.tpl-post-content .tpl-back-link a {
display: inline-block;
padding: 20px 30px;
background: #184856;
color: #FFFFFF;
text-decoration: none;
font-weight: 600;
min-width: 300px;
box-sizing: border-box;
text-align: center;
}

.tpl-post-content .tpl-back-link a:hover {
background: #006891;
}

.tpl-text ul {
list-style: none;
padding: 0 0 0 10px;
}

.tpl-text ul li {
padding-left: 15px;
margin-bottom: 5px;
position: relative;
}

.tpl-text ul li:before {
position: absolute;
top: 0;
left: 0;
content: '•';
color: #184857;
}

.tpl-text ul li:last-child {
margin-bottom: 0;
}

.tpl-text ol li {
margin-bottom: 5px;
}

.tpl-text ol li:last-child {
margin-bottom: 0;
}

/* content builder */
#PageBuilder {
margin-top: -90px;
margin-bottom: -90px;
}

#PageBuilder + .tpl-section-title {
margin-top: 120px;
}

.tpl-text-image-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
}

.tpl-text-image-row .tpl-text-image-column {
width: 50%;
box-sizing: border-box;
}

.tpl-text-image-row .tpl-text-column {
align-self: center;
padding-right: 120px;
}

.tpl-text-image-row.image_left .tpl-text-column {
order: 2;
padding-left: 120px;
padding-right: 0;
}

.tpl-text-image-row .tpl-text-column .tpl-link {
margin-top: 30px;
display: inline-block;
position: relative;
padding: 15px 30px;
line-height: 20px;
font-size: 18px;
line-height: 20px;
background: #184856;
color: #FFFFFF;
text-decoration: none;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-text-image-row .tpl-text-column .tpl-link:before {
position: absolute;
top: 2px;
left: 2px;
right: 2px;
bottom: 2px;
content: '';
border: 1px solid #FFFFFF;
z-index: 1;
}

.tpl-text-image-row .tpl-text-column .tpl-link:hover {
background: #466d78;
}

.tpl-text-image-row .tpl-image-column img {
max-width: 100%;
height: auto;
}

.tpl-text-image-row .tpl-text-slideshow {
position: relative;
}

.tpl-text-image-row .tpl-text-slideshow .tpl-slide {
display: none;
position: relative;
}

.tpl-text-image-row .tpl-text-slideshow .tpl-slide:before {
position: absolute;
top: 10px;
left: 10px;
right: 10px;
bottom: 10px;
content: '';
border: 1px solid #FFFFFF;
z-index: 1;
}

.tpl-text-image-row .tpl-text-slideshow .slick-slide,
.tpl-text-image-row .tpl-text-slideshow .tpl-slide:first-child {
display: block;
}

.tpl-text-image-row .tpl-text-slideshow .slick-slide img {
width: 100%;
height: 100%;
object-fit: cover;
}

.tpl-text-image-row .tpl-text-slideshow .slick-arrow {
position: absolute;
top: 50%;
right: 30px;
margin-top: -25px;
width: 50px;
height: 50px;
border-radius: 50%;
cursor: pointer;
background: #FFFFFF;
z-index: 1;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-text-image-row .tpl-text-slideshow .slick-arrow:before {
position: absolute;
top: 50%;
left: 50%;
width: 14px;
height: 24px;
margin-top: -12px;
margin-left: -8px;
box-sizing: border-box;
background: none;
border: none;
font-size: 0;
padding: 0;
background: url(img/slideshow_nav_arrow.png) 0 0 no-repeat;
background-size: contain;
content: '';
transform: scale(0.75);
}

.tpl-text-image-row .tpl-text-slideshow .slick-next {
transform: rotate(180deg);
}

.tpl-text-image-row .tpl-text-slideshow .slick-prev {
left: 30px;
right: auto;
}	

.tpl-text-image-row .tpl-text-slideshow .slick-arrow:hover {
background: #f3efeb;
}

.tpl-page-builder-section {
padding-top: 60px;
padding-bottom: 60px;
}

.tpl-page-builder-section.tpl-padding-top-120 {
padding-top: 120px;
}

.tpl-page-builder-section.tpl-padding-top-90 {
padding-top: 90px;
}

.tpl-page-builder-section.tpl-no-padding-top {
padding-top: 0px;
}

.tpl-page-builder-section.tpl-padding-bottom-120 {
padding-bottom: 120px;
}

.tpl-page-builder-section.tpl-padding-bottom-90 {
padding-bottom: 90px;
}

.tpl-page-builder-section.tpl-no-padding-bottom {
padding-bottom: 0px;
}

.tpl-page-builder-section h1:last-child,
.tpl-page-builder-section h2:last-child,
.tpl-page-builder-section h3:last-child,
.tpl-page-builder-section h4:last-child,
.tpl-page-builder-section h5:last-child,
.tpl-page-builder-section h6:last-child {
padding-bottom: 0;
}

.tpl-gallery-section ul {
margin: -10px;
padding: 0;
list-style: none;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
}

.tpl-gallery-section ul li {
width: 20%;
padding: 10px;
box-sizing: border-box;
}

.tpl-gallery-section ul li a {
display: block;
position: relative;
overflow: hidden;
border: 1px solid #f8f6f4;
}

.tpl-gallery-section ul li a img {
width: 100%;
height: auto;
}

.tpl-gallery-section ul li a:after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
opacity: 0;
background: url(img/gallery_zoom.svg) center calc(50% - 10px) no-repeat rgba(194,1,80,0.8);
background-size: 30px auto;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: opacity, background;
-moz-transition-property: opacity, background;
-webkit-transition-property: opacity, background;
}

.tpl-gallery-section ul li a:hover:after {
background-position: center;
opacity: 1;
}

.tpl-page-builder-section .tpl-image-wrapper {
text-align: center;
font-size: 0;
}

.tpl-page-builder-section .tpl-image-wrapper .tpl-image {
display: inline-block;
position: relative;
}

.tpl-page-builder-section .tpl-image-wrapper .tpl-image:before {
position: absolute;
top: 10px;
left: 10px;
right: 10px;
bottom: 10px;
content: '';
border: 1px solid #FFFFFF;
z-index: 1;
}

.tpl-page-builder-section .tpl-image img {
max-width: 100%;
height: auto;
margin: 0;
}

.tpl-page-builder-boxes-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
margin: 0 -10px -20px -10px;
}

.tpl-page-builder-boxes-column {
width: 33.33%;
box-sizing: border-box;
padding: 0 10px 20px 10px;
}

.tpl-page-builder-boxes-column.tpl-column-width-20 {
width: 20%;
}

.tpl-page-builder-boxes-column.tpl-column-width-25 {
width: 25%;
}

.tpl-page-builder-boxes-column.tpl-column-width-33 {
width: 33.33%;
}

.tpl-page-builder-boxes-column.tpl-column-width-50 {
width: 50%;
}

.tpl-page-builder-boxes-column.tpl-column-width-100 {
width: 100%;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: column nowrap;
position: relative;
height: 100%;
box-sizing: border-box;
overflow: hidden;
padding: 45px 30px;
background: #f3efeb;
text-align: center;
color: inherit;
text-decoration: none;
border-bottom: 1px solid transparent;
}

.tpl-page-builder-boxes-column a.tpl-page-builder-box:hover {
background: #f8f6f4;
border-color: #184856;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box > * {
width: 100%;
}

.tpl-page-builder-boxes-column .tpl-image {
overflow: hidden;
position: relative;
margin: -45px -30px 30px -30px;
width: calc(100% + 60px);
}

.tpl-page-builder-boxes-column .tpl-image:before {
position: absolute;
top: 10px;
left: 10px;
right: 10px;
bottom: 10px;
content: '';
border: 1px solid #FFFFFF;
z-index: 1;
}

.tpl-page-builder-boxes-column .tpl-image img {
display: block;
width: 100%;
height: auto;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: transform;
-moz-transition-property: -moz-transform;
-webkit-transition-property: -webkit-transform;
-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0);
}

.tpl-page-builder-boxes-column .tpl-icon {
margin-bottom: 30px;
}

.tpl-page-builder-boxes-column .tpl-icon span {
display: inline-block;
vertical-align: top;
width: 90px;
height: 90px;
line-height: 90px;
font-size: 0;
background: #184856;
}

.tpl-page-builder-boxes-column .tpl-icon img {
max-width: 90px;
max-height: 90px;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box .tpl-readmore {
margin-top: auto;
padding-top: 30px;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box .tpl-readmore span {
display: inline-block;
padding: 15px 30px;
line-height: 20px;
font-size: 16px;
line-height: 20px;
background: #184856;
color: #FFFFFF;
font-weight: 500;
text-decoration: none;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-page-builder-boxes-column a.tpl-page-builder-box:hover .tpl-readmore span {
background: #466d78;
}

.tpl-page-builder-boxes-column .tpl-title {
font-size: 24px;
line-height: 1.1;
display: block;
position: relative;
}

.tpl-page-builder-boxes-column .tpl-title + .tpl-text {
padding-top: 15px;
}

.tpl-faq-section,
.tpl-text-section {
max-width: 860px;
margin-left: auto;
margin-right: auto;
}

.tpl-faq-section .tpl-page-builder-faq-entry {
margin-top: 15px;
}

.tpl-faq-section .tpl-page-builder-faq-entry:first-child {
margin-top: 0;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title {
padding: 14px 30px;
cursor: pointer;
font-size: 24px;
line-height: 1.1;
background: #f3efeb;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
position: relative;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title:before {
position: absolute;
top: 2px;
left: 2px;
right: 2px;
bottom: 2px;
content: '';
border: 1px solid #FFFFFF;
z-index: 1;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title:hover {
background: #f8f6f4;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title span {
position: relative;
display: block;
padding-right: 45px;
word-wrap: break-word;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title span:after {
position: absolute;
right: 0;
top: 50%;
margin-top: -9px;
width: 18px;
height: 18px;
line-height: 14px;
content: '+';
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title.ui-accordion-header-active {
background: #184856;
color: #FFFFFF;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title.ui-accordion-header-active span:after {
content: '-';
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-text > div {
padding: 30px;
border-top: none;
}

.tpl-text-text-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
margin: 0 -60px -60px -60px;
}

.tpl-text-text-row .tpl-text-text-column {
width: 50%;
box-sizing: border-box;
padding: 0 60px 60px 60px;
}

.tpl-page-builder-section.tpl-case-studies-section {
position: relative;
}

.tpl-page-builder-section.tpl-case-studies-section:before {
position: absolute;
left: 50%;
top: 0;
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 100vw;
height: 100%;
content: '';
background: #f0f0f0;
z-index: -1;
}

.tpl-page-builder-section-title {
text-align: center;
padding-bottom: 90px;
}
/* end content builder */

#HeaderFilter {
min-height: 100dvh;
box-sizing: border-box;
display: flex;
height: 100%;
box-sizing: border-box;
flex-flow: row wrap;
align-items: center;
position: relative;
}

#HeaderFilter:before {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 420px;
background: linear-gradient(180deg, rgb(0,43,58) 0%, rgba(0,43,58,0.50196) 33%, rgba(0,43,58,0.14902) 66%, rgba(0,43,58,0) 100%);
content: '';
z-index: 1;
}

#HeaderFilter .tpl-header-filter-background {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: clip;
}

#HeaderFilter .tpl-header-filter-background > div {
height: 100%;
background: url(img/header_filter_bg.webp) no-repeat scroll center #806d43;
background-size: cover;
animation: zoomin 10s ease-out forwards;
}

@keyframes zoomin {
0% {
transform: scale(1);
}
100% {
transform: scale(1.1);
}
}

#HeaderFilter .tpl-section-wrapper {
height: 100%;
width: 100%;
box-sizing: border-box;
flex-flow: row wrap;
position: relative;
z-index: 2;
}

#HeaderFilter .tpl-section-content {
max-width: 880px;
padding: 270px 30px;
margin: 0 auto;
position: relative;
}

#HeaderFilter .tpl-header-filter-title-wrapper {
text-align: center;
padding-bottom: 30px;
color: #FFFFFF;
}

#HeaderFilter .tpl-header-filter-title {
font-size: 60px;
line-height: 1.1;
}

#HeaderFilter .tpl-header-filter-text {
font-size: 16px;
text-transform: uppercase;
padding-top: 5px;
}

#HeaderFilter form > * {
position: relative;
}

#HeaderFilter .tpl-form-row {
justify-content: center;
}

#HeaderFilter .tpl-form-row .tpl-form-column {
width: 25%;
}

#HeaderFilter .tpl-form-row .tpl-form-column input[type=text],
#HeaderFilter .tpl-form-row .tpl-form-column select {
background-color: rgba(255, 255, 255, 0.2);
border-color: rgba(255, 255, 255, 0.4);
color: #FFFFFF;
backdrop-filter: blur(5px);
background-image: url(img/select_arrow_white.png);
}

#HeaderFilter .tpl-form-row .tpl-form-column select[multiple] {
padding-top: 0;
padding-bottom: 0;
line-height: 58px;
height: 60px;
overflow: hidden;
pointer-events: none;
}

#HeaderFilter .tpl-form-row .tpl-form-column select[multiple] option {
font-size: inherit;
height: 60px;
line-height: 60px;
padding: 16px 0;
background: none !important;
color: inherit;
}

#HeaderFilter .tpl-form-row .tpl-form-column button {
background: rgba(0, 53, 70, 0.9);
width: 100%;
text-align: left;
padding-right: 10px;
}

#HeaderFilter .tpl-form-row .tpl-form-column button:disabled {
opacity: 0.5;
pointer-events: none;
}

#HeaderFilter .tpl-form-row .tpl-form-column button:hover {
background: rgba(9, 73, 94, 0.9);
}

#HeaderFilter .tpl-form-row .tpl-form-column button span {
display: block;
padding-right: 60px;
position: relative;
}

#HeaderFilter .tpl-form-row .tpl-form-column button span:after {
position: absolute;
right: 0;
top: 50%;
margin-top: -20px;
width: 40px;
height: 40px;
border-radius: 50%;
content: '';
background: url(img/more_arrow.png) center no-repeat #ffe175;
background-size: auto 11px;
}

.routes-preloader {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
inset: 0;
background: rgba(0, 53, 70, 0.7);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
pointer-events: none;
transition: opacity .2s ease;
z-index: 10;
}

.routes-preloader.is-active {
opacity: 1;
pointer-events: all;
}

.routes-preloader .spinner {
width: 40px;
height: 40px;
border: 4px solid #FFFFFF;
border-top-color: #ffe175;
border-radius: 50%;
animation: spin 0.8s linear infinite;
}

@keyframes spin {
to { transform: rotate(360deg); }
}

.tpl-routes-row .tpl-route-entry:not(:last-child) {
margin-bottom: 30px;
}

.tpl-routes-row .tpl-route-entry a {
display: flex;
flex-flow: row wrap;
color: inherit;
text-decoration: none;
}

.tpl-routes-row .tpl-route-entry .tpl-route-entry-image {
width: 25%;
margin-right: 30px;
min-height: 250px;
position: relative;
border-radius: 30px;
overflow: hidden;
}

.tpl-routes-row .tpl-route-entry .tpl-route-entry-image:after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
background: rgba(0, 53, 70, 0.5);
opacity: 0;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
}

.tpl-routes-row .tpl-route-entry a:hover .tpl-route-entry-image:after {
opacity: 1;
}

.tpl-routes-row .tpl-route-entry .tpl-route-entry-image img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

.tpl-routes-row .tpl-route-entry .tpl-route-entry-content {
flex: 1;
background: #f8f7f0;
padding: 30px;
border-radius: 30px;
}

.tpl-routes-row .tpl-route-entry .tpl-route-title {
padding-bottom: 0;
}

.tpl-route-course {
list-style: none;
margin: 0 0 -5px 0;
padding: 0;
font-size: 0;
}

.tpl-routes-row .tpl-route-entry .tpl-route-course {
padding-top: 15px;
}

.tpl-route-course li {
display: inline-block;
background: #dddbd1;
font-weight: 600;
font-size: 18px;
color: #184857;
padding: 4px 10px;
line-height: 1.2;
border-radius: 15px;
margin-right: 30px;
margin-bottom: 5px;
position: relative;
}

.tpl-route-course li:after {
position: absolute;
right: -25px;
top: 5px;
width: 20px;
height: 20px;
border-radius: 50%;
background: url(img/more_arrow.png) center no-repeat #ffe175;
background-size: auto 8px;
content: '';
}

.tpl-route-course li:last-child {
margin-right: 0;
}

.tpl-route-course li:last-child:after {
display: none;
}

.tpl-routes-row .tpl-route-entry .tpl-route-description {
padding: 15px 0 0 0;
}

.tpl-routes-row .tpl-route-entry .tpl-route-bottom {
display: flex;
flex-flow: row nowrap;
align-items: center;
padding-top: 15px;
}

.tpl-routes-row .tpl-route-entry .tpl-route-features {
margin-bottom: -10px;
display: flex;
flex-flow: row wrap;
}

.tpl-routes-row .tpl-route-entry .tpl-route-feature {
margin-right: 30px;
margin-bottom: 10px;
display: flex;
flex-flow: row nowrap;
align-items: center;
}

.tpl-routes-row .tpl-route-entry .tpl-route-feature:last-child {
margin-right: 0;
}

.tpl-route-feature .tpl-feature-label {
font-size: 16px;
}

.tpl-route-feature .tpl-feature-value {
font-weight: 600;
}

.tpl-route-feature .tpl-feature-icon {
width: 50px;
height: 50px;
box-shadow: inset 0px 0px 0px 1px #dddbd1;
border-radius: 50%;
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}

.tpl-difficulty .tpl-feature-icon {
background-image: url(img/difficulty_icon.png);
}

.tpl-distance .tpl-feature-icon {
background-image: url(img/distance_icon.png);
}

.tpl-time .tpl-feature-icon {
background-image: url(img/time_icon.png);
}

.tpl-elevation .tpl-feature-icon {
background-image: url(img/elevation_icon.png);
}

.tpl-type .tpl-feature-icon {
background-image: url(img/type_icon.png);
}

.tpl-surface .tpl-feature-icon {
background-image: url(img/surface_icon.png);
}

.tpl-purpose .tpl-feature-icon {
background-image: url(img/purpose_icon.png);
}

.tpl-routes-row .tpl-route-entry .tpl-route-bottom .tpl-feature-icon {
margin-right: 5px;
}

.tpl-routes-row .tpl-route-entry .tpl-route-bottom .tpl-readmore {
margin-left: auto;
border-radius: 30px;
line-height: 20px;
padding: 20px 10px 20px 30px;
color: #FFFFFF;
font-size: 20px;
background: #184857;
border-radius: 30px;
white-space: nowrap;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
}

.tpl-routes-row .tpl-route-entry a:hover .tpl-route-bottom .tpl-readmore {
background: #466d79;
}

.tpl-routes-row .tpl-route-entry .tpl-route-bottom .tpl-readmore span {
display: block;
padding-right: 60px;
position: relative;
}

.tpl-routes-row .tpl-route-entry .tpl-route-bottom .tpl-readmore span:after {
position: absolute;
right: 0;
top: 50%;
margin-top: -20px;
width: 40px;
height: 40px;
border-radius: 50%;
content: '';
background: url(img/more_arrow.png) center no-repeat #ffe175;
background-size: auto 11px;
}

.tpl-all-routes {
position: absolute;
right: 0;
top: 8px;
display: inline-block;
border-radius: 30px;
line-height: 20px;
padding: 20px 10px 20px 30px;
color: #184857;
text-decoration: none;
font-size: 20px;
background: #ffe175;
border-radius: 30px;
}

.tpl-all-routes:hover {
background: #fff0ba;
color: #184857;
}

.tpl-all-routes span {
display: block;
padding-right: 60px;
position: relative;
}

.tpl-all-routes span:after {
position: absolute;
right: 0;
top: 50%;
margin-top: -20px;
width: 40px;
height: 40px;
border-radius: 50%;
content: '';
background: url(img/more_arrow_yellow.png) center no-repeat #184857;
background-size: auto 11px;
}

.grecaptcha-badge {
visibility: hidden;
}

/* multi select */
.multi-select-container {
display: block;
position: relative;
}

.multi-select-menu {
position: absolute;
left: 0;
top: 65px;
z-index: 1;
float: left;
min-width: 100%;
box-sizing: border-box;
background: #FFFFFF;
border: 1px solid #dddbd1;
border-radius: 30px;
display: none;
padding: 20px 15px 20px 30px;
}

.multi-select-menuitems-wrapper {
max-height: 204px !important;
overflow: auto;
padding-right: 15px;
}

.multi-select-menuitem {
display: block;
padding-left: 20px;
padding-top: 2px;
padding-bottom: 2px;
line-height: 1.2;
white-space: nowrap;
position: relative;
}

.multi-select-menuitem:first-child {
display: none;
}

.multi-select-menuitem input {
position: absolute;
left: 0;
top: 5px;
}

.multi-select-button {
display: block;
cursor: pointer;
border: 1px solid #dddbd1;
border-radius: 30px;
font-size: 20px;
padding-left: 30px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 58px;
line-height: 58px;
background: url(img/select_arrow.png) right center no-repeat #FFFFFF;
background-size: 40px auto;
padding-right: 60px;
}

.multi-select-container--open .multi-select-menu {
display: block;
}

.multi-select-container--positioned .multi-select-menu {
box-sizing: border-box;
}

.multi-select-container--positioned .multi-select-menu label {
white-space: normal;
}

#HeaderFilter .multi-select-button {
background-color: rgba(255, 255, 255, 0.2);
border-color: rgba(255, 255, 255, 0.4);
color: #FFFFFF;
backdrop-filter: blur(5px);
background-image: url(img/select_arrow_white.png);
}

#HeaderFilter .multi-select-menu {
 background-color: rgba(255, 255, 255, 0.2);
border-color: rgba(255, 255, 255, 0.4);
color: #FFFFFF;
backdrop-filter: blur(5px);
}

.tpl-route-details-header.tpl-custom-background {
background-color: #191919 !important;
background-image: none !important;
}

.tpl-route-details-header .tpl-middle-bar {
padding-top: 120px;
padding-bottom: 120px;
}

.tpl-route-details-header .tpl-route-background {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-size: cover;
background-repeat: no-repeat;
background-position: center;
opacity: 0.6;
}

.tpl-route-details-header .tpl-route-description a {
color: inherit;
}

.tpl-route-details-header .tpl-route-main-features {
display: flex;
flex-flow: row wrap;
margin: 0 -15px -30px -15px;
padding-top: 30px;
justify-content: center;
}

.tpl-route-details-header .tpl-route-main-features .tpl-route-feature {
width: 20%;
padding: 0 15px 30px 15px;
box-sizing: border-box;
text-align: center;
line-height: 1.2;
}

.tpl-route-details-header .tpl-route-main-features .tpl-route-feature .tpl-feature-icon {
margin-left: auto;
margin-right: auto;
margin-bottom: 10px;
}

.tpl-route-details-header .tpl-route-main-features .tpl-route-feature .tpl-feature-icon {
box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.6);
filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(1%) hue-rotate(24deg) brightness(105%) contrast(101%);
}

.tpl-route-details-header .tpl-route-header-buttons {
padding-top: 45px;
text-align: center;
margin-bottom: -10px;
}

.tpl-route-details-header .tpl-route-header-buttons a {
display: inline-block;
text-decoration: none;
text-align: left;
border-radius: 30px;
margin: 0 5px;
margin-bottom: 10px;
min-width: 240px;
box-sizing: border-box;
line-height: 20px;
padding: 20px 10px 20px 30px;
color: #FFFFFF;
font-size: 20px;
background: rgba(0, 53, 70, 0.9);
border-radius: 30px;
white-space: nowrap;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
}

.tpl-route-details-header .tpl-route-header-buttons a:hover {
background: rgba(9, 73, 94, 0.9);
}

.tpl-route-details-header .tpl-route-header-buttons a span {
display: block;
padding-right: 60px;
position: relative;
}

.tpl-route-details-header .tpl-route-header-buttons a span:after {
position: absolute;
right: 0;
top: 50%;
margin-top: -20px;
width: 40px;
height: 40px;
border-radius: 50%;
content: '';
background: url(img/more_arrow.png) center no-repeat #ffe175;
background-size: auto 11px;
}

.tpl-route-details-header .tpl-route-header-buttons a.tpl-download-button span:after {
background-image: url(img/download.png);
background-size: auto 20px;
}

.tpl-route-details-header .tpl-route-header-buttons a.tpl-map-button {
background: none;
box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.6);
color: #ffe175;
}

.tpl-route-details-header .tpl-route-header-buttons a.tpl-map-button:hover {
background: rgba(255, 255, 255, 0.1);
color: #FFFFFF;
}

.tpl-route-details-header .tpl-route-header-buttons a.tpl-map-button span:after {
background-image: url(img/map.png);
background-size: auto 22px;
}

.tpl-route-details-section:not(:last-child) {
padding-bottom: 60px;
}

.tpl-route-details-section .tpl-route-details-section-title {
text-align: center;
font-size: 30px;
}

.tpl-route-details-section .tpl-route-map img {
display: block;
width: 100%;
height: auto;
border-radius: 30px;
}

.tpl-route-details-section .tpl-qr-code-box {
max-width: 250px;
margin: 0 auto;
padding: 45px;
border: 1px solid #dddbd1;
border-radius: 30px;
}

.tpl-route-details-section .tpl-qr-code-box img {
display: block;
width: 100%;
height: auto;
}

.tpl-route-details-section .tpl-route-course {
text-align: center;
}

.tpl-route-details-section .tpl-route-features-box {
background: #f8f7f0;
padding: 60px;
border-radius: 30px;
}

.tpl-route-details-section .tpl-route-features {
display: flex;
flex-flow: row wrap;
margin: 0 -15px -30px -15px;
justify-content: center;
}

.tpl-route-details-section .tpl-route-features .tpl-route-feature {
width: 25%;
padding: 0 15px 30px 15px;
box-sizing: border-box;
text-align: center;
line-height: 1.2;
}

.tpl-route-details-section .tpl-route-features .tpl-route-feature .tpl-feature-icon {
margin-left: auto;
margin-right: auto;
margin-bottom: 10px;
background-color: #ffe175;
box-shadow: none;
}

.tpl-route-details-section .tpl-gpx-file-box {
padding: 30px 60px;
background: #184857;
border-radius: 30px;
display: flex;
flex-flow: row nowrap;
align-items: center;
}

.tpl-route-details-section .tpl-gpx-file-box .tpl-route-details-section-title {
text-align: left;
padding: 0;
color: #FFFFFF;
margin-right: 60px;
}

.tpl-route-details-section .tpl-gpx-file-box .tpl-download-button {
margin-left: auto;
display: inline-block;
text-decoration: none;
text-align: left;
border-radius: 30px;
min-width: 240px;
box-sizing: border-box;
line-height: 20px;
padding: 20px 10px 20px 30px;
color: #184857;
font-size: 20px;
background: #ffe175;
border-radius: 30px;
white-space: nowrap;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
}

.tpl-route-details-section .tpl-gpx-file-box .tpl-download-button:hover {
background: #fff0ba;
color: #184857;
}

.tpl-route-details-section .tpl-gpx-file-box .tpl-download-button span {
display: block;
padding-right: 60px;
position: relative;
}

.tpl-route-details-section .tpl-gpx-file-box .tpl-download-button span:after {
position: absolute;
right: 0;
top: 50%;
margin-top: -20px;
width: 40px;
height: 40px;
border-radius: 50%;
content: '';
background: url(img/download_yellow.png) center no-repeat #184857;
background-size: auto 20px;
}

.tpl-route-details-section .tpl-route-places-box {
padding: 60px;
background: #f8f7f0;
border-radius: 30px;
}

.tpl-route-details-section .tpl-route-place {
display: flex;
flex-flow: row nowrap;
padding-bottom: 55px;
margin-bottom: 5px;
overflow: hidden;
position: relative;
}

.tpl-route-details-section .tpl-route-place:after {
position: absolute;
top: 58px;
bottom: 0;
left: 24px;
width: 2px;
background: url(img/route_place_dash.png) center repeat-y;
background-size: 100% auto;
content: '';
}

.tpl-route-details-section .tpl-route-place:last-child:after {
display: none;
}

.tpl-route-details-section .tpl-route-place:last-child {
padding-bottom: 0;
margin-bottom: 0;
}

.tpl-route-details-section .tpl-route-place-content {
flex: 1;
align-self: center;
}

.tpl-route-details-section .tpl-route-place .tpl-place-icon {
width: 50px;
height: 50px;
background: url(img/route_place_icon.png) center no-repeat #184857;
background-size: contain;
border-radius: 50%;
margin-right: 30px;
}

.tpl-route-details-section .tpl-route-place .tpl-place-name {
font-size: 24px;
padding: 0;
font-weight: 600;
margin-top: -3px;
}

.tpl-route-details-section .tpl-route-best-moments-row {
margin: 0 -15px -30px -15px;
position: relative;
}

.tpl-route-details-section .tpl-route-best-moments-row:not(.slick-slider) {
display: flex;
flex-flow: row wrap;
justify-content: center;
}

.tpl-route-details-section .tpl-route-best-moments-column {
width: 33.33%;
box-sizing: border-box;
padding: 0 15px 30px 15px;
}

.tpl-route-details-section .tpl-route-best-moment {
height: 100%;
background: #f8f7f0;
border-radius: 30px;
overflow: hidden;
}

.tpl-route-details-section .tpl-route-best-moment .tpl-best-moment-image img {
display: block;
width: 100%;
aspect-ratio: 4/3;
object-fit: cover;
}

.tpl-route-details-section .tpl-route-best-moment .tpl-best-moment-content {
padding: 30px;
}

.tpl-route-details-section .tpl-best-moment-content .tpl-best-moment-name {
font-size: 24px;
font-weight: 600;
padding: 0;
}

.tpl-route-details-section .tpl-route-best-moments-row .slick-arrow {
position: absolute;
top: 50%;
margin-top: -40px;
left: -70px;
width: 50px;
height: 50px;
background: url(img/slideshow_nav_arrow.png) center no-repeat #dddbd1;
background-size: contain;
border-radius: 50%;
cursor: pointer;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-route-details-section .tpl-route-best-moments-row .slick-next {
right: -70px;
left: auto;
transform: rotate(180deg);
}

.tpl-route-details-section .tpl-route-best-moments-row .slick-arrow:hover {
background-color: #184857;
}

@media screen and (max-width: 1280px) {
	.tpl-route-details-section .tpl-route-best-moments-row.slick-slider {
	padding-left: 70px;
	padding-right: 70px;
	}
	
	.tpl-route-details-section .tpl-route-best-moments-row .slick-arrow {
	left: 15px;
	}
	
	.tpl-route-details-section .tpl-route-best-moments-row .slick-next {
	left: auto;
	right: 15px;
	}
	
	.tpl-contact-layout-column .tpl-form-row .tpl-form-column.tpl-width-50 {
	width: 100%;
	}
	
	/* content builder */
	.tpl-page-builder-boxes-column,
	.tpl-page-builder-boxes-column.tpl-column-width-20,
	.tpl-page-builder-boxes-column.tpl-column-width-25 {
	width: 33.33%;
	}
	
	.tpl-text-image-row .tpl-text-column {
	padding-right: 60px;
	}

	.tpl-text-image-row.image_left .tpl-text-column {
	padding-left: 60px;
	}
	
	.tpl-text-text-row {
	margin-left: -30px;
	margin-right: -30px;
	}

	.tpl-text-text-row .tpl-text-text-column {
	padding-left: 30px;
	padding-right: 30px;
	}
	/* end content builder */
}

@media screen and (max-width: 1080px) {
	#Header {
	height: 90px;
	}

	#HeaderMiddle .tpl-header-logo {
	width: 120px;
	}
	
	#HeaderFilter .tpl-section-content {
	padding-top: 180px;
	padding-bottom: 90px;
	}
	
	#HeaderFilter .tpl-header-filter-title {
	font-size: 48px;
	}
	
	#MiddleBar {
	padding-top: 150px;
	}
	
	.tpl-route-details-header .tpl-middle-bar {
	padding-top: 60px;
	padding-bottom: 90px;
	}
	
	.tpl-route-details-section .tpl-route-best-moments-column {
	width: 50%;
	}
	
	.responsive-menu-button {
	display: block;
	}
	
	.responsive-menu-wrapper {
	position: fixed;
	z-index: 90;
	}
	
	.responsive-menu-container > ul li a {
	font-size: 48px;
	}
	
	h1,
	h1.page-title,
	h2.page-title,
	.tpl-middle-bar h1 {
	font-size: 48px;
	}
	
	h2 {
	font-size: 36px;
	}
	
	h3 {
	font-size: 30px;
	}
	
	.tpl-all-routes {
	position: static;
	margin-top: 60px;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-entry-image {
	margin-right: 0;
	width: 33.33%;
	border-radius: 30px 0 0 30px;
	}

	.tpl-routes-row .tpl-route-entry .tpl-route-entry-content {
	border-radius: 0 30px 30px 0;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-bottom {
	flex-flow: row wrap;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-features {
	width: 100%;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-bottom .tpl-readmore {
	margin-top: 30px;
	white-space: normal;
	}

	.tpl-posts-row .tpl-post-entry {
	width: 50%;
	}

	.tpl-contact-layout-column {
	width: 100%;
	}
	
	.tpl-contact-layout-column.tpl-text-column {
	padding-top: 0;
	padding-bottom: 90px;
	}
	
	.tpl-contact-layout-column.tpl-form-column {
	margin-bottom: -90px;
	}
	
	.tpl-contact-layout-column .tpl-form-wrapper {
	padding: 90px 30px;
	margin: 0 -30px;
	border-radius: 0;
	}

	/* content builder */
	.tpl-text-image-row .tpl-text-image-column {
	width: 100%;
	padding-right: 0;
	}
	
	.tpl-text-image-row.image_left .tpl-text-column {
	order: 0;
	padding-left: 0;
	}
	
	.tpl-text-image-row .tpl-text-column {
	padding-bottom: 60px;
	}
	
	.tpl-text-text-row .tpl-text-text-column {
	width: 100%;
	}
	
	.tpl-gallery-section ul li {
	width: 33.33%;
	}
	
	.tpl-page-builder-boxes-column,
	.tpl-page-builder-boxes-column.tpl-column-width-20,
	.tpl-page-builder-boxes-column.tpl-column-width-25,
	.tpl-page-builder-boxes-column.tpl-column-width-33, 
	.tpl-page-builder-boxes-column.tpl-column-width-50,
	.tpl-page-builder-boxes-column.tpl-column-width-100 {
	width: 50%;
	}
	
	.tpl-page-builder-boxes-column .tpl-page-builder-box {
	padding: 30px;
	}
	/* end content builder */
}

@media screen and (max-width: 880px) {
	#HeaderFilter .tpl-form-row .tpl-form-column {
	width: 50%;
	}
	
	.tpl-route-details-header .tpl-route-main-features .tpl-route-feature {
	width: 25%;
	}

	#FooterBottom {
	padding: 0;
	}
	
	.tpl-footer-bottom {
	line-height: 1.5;
	padding-top: 30px;
	padding-bottom: 30px;
	border-radius: 0;
	}
	
	.tpl-copyright,
	.tpl-footer-author {
	display: block;
	}
	
	.tpl-footer-spacer {
	display: none;
	}
	
	.tpl-footer-author {
	padding-top: 5px;
	}
}

@media screen and (max-width: 680px) {
	#HeaderMiddle .tpl-section-wrapper,
	.responsive-menu-container > ul,
	.tpl-middle-bar,
	#HeaderFilter .tpl-section-content,
	#Content .tpl-section-wrapper,
	#Routes .tpl-section-wrapper {
	padding-left: 15px;
	padding-right: 15px;
	}
	
	.responsive-menu-button {
	right: 15px;
	}
	
	.tpl-form-row .tpl-form-column.tpl-width-50,
	.tpl-form-row .tpl-form-column.tpl-width-33 {
	width: 100%;
	}
	
	.tpl-posts-row .tpl-post-entry {
	width: 100%;
	}
	
	body .fancybox-content {
	padding-left: 30px;
	padding-right: 30px;
	}
	
	.responsive-menu-container > ul li a {
	font-size: 36px;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-entry-image {
	width: 100%;
	margin-right: 0;
	min-height: 0;
	border-radius: 30px 30px 0 0;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-entry-image img {
	aspect-ratio: 4/3;
	height: auto;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-entry-content {
	flex: 0 1 auto;
	width: 100%;
	border-radius: 0 0 30px 30px;
	}
	
	.tpl-route-details-section .tpl-route-places-box {
	padding: 30px;
	}
	
	.tpl-route-details-section .tpl-route-features-box {
	padding: 30px;
	}
	
	.tpl-route-details-section .tpl-gpx-file-box {
	padding: 30px;
	flex-flow: row wrap;
	}
	
	.tpl-route-details-section .tpl-gpx-file-box .tpl-route-details-section-title {
	margin-right: 0;
	width: 100%;
	text-align: center;
	padding-bottom: 30px;
	}
	
	.tpl-route-details-section .tpl-gpx-file-box .tpl-download-button {
	margin: 0 auto;
	}
}

@media screen and (max-width: 580px) {
	#HeaderFilter .tpl-form-row .tpl-form-column {
	width: 100%;
	}
	
	.tpl-route-details-header .tpl-route-main-features {
	margin-left: 0;
	margin-right: 0;
	}
	
	.tpl-route-details-header .tpl-route-main-features .tpl-route-feature {
	width: 50%;
	}
	
	.tpl-route-details-section .tpl-route-best-moments-column {
	width: 100%;
	}
	
	.tpl-route-details-section .tpl-route-best-moments-row.slick-slider {
	padding-left: 65px;
	padding-right: 65px;
	}
	
	.tpl-route-details-section .tpl-route-features .tpl-route-feature {
	width: 33.33%;
	}
	
	/* content builder */
	.tpl-gallery-section ul li {
	width: 50%;
	}
	
	.tpl-page-builder-boxes-column,
	.tpl-page-builder-boxes-column.tpl-column-width-20,
	.tpl-page-builder-boxes-column.tpl-column-width-25,
	.tpl-page-builder-boxes-column.tpl-column-width-33, 
	.tpl-page-builder-boxes-column.tpl-column-width-50,
	.tpl-page-builder-boxes-column.tpl-column-width-100 {
	width: 100%;
	}
	
	.tpl-page-builder-boxes-column .tpl-page-builder-box {
	padding: 30px;
	}
	/* end content builder */
}

@media screen and (max-width: 480px) {
	.tpl-contact-details-column {
	width: 100%;
	}
	
	.tpl-route-details-section .tpl-route-place {
	flex-flow: row wrap;
	}
	
	.tpl-route-details-section .tpl-route-place:after {
	top: auto;
	bottom: 0px;
	height: 50px;
	}
	
	.tpl-route-details-section .tpl-route-place .tpl-place-icon {
	margin-right: 0;
	margin-bottom: 15px;
	}
	
	.tpl-route-details-section .tpl-route-place-content {
	flex: 0 1 auto;
	width: 100%;
	}
	
	.tpl-route-details-section .tpl-route-features .tpl-route-feature {
	width: 50%;
	}
	
	.tpl-routes-row .tpl-route-entry .tpl-route-bottom .tpl-readmore {
	width: 100%;
	box-sizing: border-box;
	}
}