/*
Theme Name:   Montanhas Mágicas Child
Theme URI:    https://brainone.pt
Description:  Montanhas Magicas Child
Author:       Brain One
Author URI:   https://brainone.pt
Template:     montanhasmagicas
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
Text Domain:  montanhasmagicas
*/

@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap');

@font-face {
    font-family: 'Zimula';
	src: url('assets/fonts/Zimula-MediumInkTrap.otf');
	src: url('assets/fonts/Zimula-MediumInkTrap.otf') format('otf');
    src: url('assets/fonts/Zimula-MediumInkTrap.woff2');
    src: url('assets/fonts/Zimula-MediumInkTrap.woff2') format('woff2');
    font-weight: 500;
}

@font-face {
    font-family: 'Zimula';
	src: url('assets/fonts/Zimula-SemiBoldInkTrap.otf');
	src: url('assets/fonts/Zimula-SemiBoldInkTrap.otf') format('otf');
    src: url('assets/fonts/Zimula-SemiBoldInkTrap.woff2');
    src: url('assets/fonts/Zimula-SemiBoldInkTrap.woff2') format('woff2');
    font-weight: 600;
}

@font-face {
    font-family: 'Zimula';
	src: url('assets/fonts/Zimula-BoldInkTrap.otf');
    src: url('assets/fonts/Zimula-BoldInkTrap.otf') format('otf');
    src: url('assets/fonts/Zimula-BoldInkTrap.woff2');
    src: url('assets/fonts/Zimula-BoldInkTrap.woff2') format('woff2');
    font-weight: 700;
}

.otgs-development-site-front-end {
    display: none !important;
}

p, label, div, b, em, span {
	font-family: 'Manrope', sans-serif;
}

h1 {
	font-family: 'Zimula', sans-serif;
	font-weight: 700;
}

h2, h3, h4, h5, h6 {
	font-family: 'Zimula', sans-serif;
}

.btn, .button, input[type=submit] {
    background-color: #10493C;
}

.mm-generic-header.grande-rota .breadcrumbs {
    background-color: var(--secondary-color);
    color: #fff;
}

.mm-generic-header.grande-rota .breadcrumbs a,
.mm-generic-header.grande-rota .breadcrumbs span:last-child .current-item {
    color: #fff;
}
.mm-generic-header.grande-rota .breadcrumbs a:hover {
    color: var(--third-color);
}

/* INFO WINDOW */

.leaflet-popup-content-wrapper {
	border-radius: 0;	
	padding: 0;
}

.leaflet-popup-content {
    margin: 0;
    width: 310px;
}

.leaflet-container a.leaflet-popup-close-button {
    padding: 0;
    height: 25px !important;
    width: 25px !important;
	border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.info-window-map {
    font-family: 'Zimula', sans-serif;
}

.info-window-map .image_close {
	display: none;
}

.info-window-map .image_out {
	position: relative !important;
	top: 0 !important;
	left: 0 !important;
 	padding: 0;
	height: 180px;
	overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    background-position-x: 50%;
    background-position-y: 50%;
}

.info-window-map .image_out .image {
    height: 100%;
    width: 100%;
    overflow: hidden;
    object-fit: cover;
}

.info-window-map .content-map {
	background-color: #fff;
	padding: 30px;
}

.info-window-map .content-info h2 {
	font-size: 22px;
    line-height: 30px;
    color: var(--secondary-color);
    font-weight: 600;
    margin: 0 0 7.5px 0;
}

.info-window-map .content-info .coordinates {
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    margin: 0;
}

.info-window-map .content-info .coordinates i {
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    margin: 0 0 0 0;
    color: var(--third-color);
}

.info-window-map .content-info .coordinates a {
    color: unset;
	margin-left: 10px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.info-window-map .content-info .coordinates a:hover {
    color: var(--secondary-color);
}

.info-window-map .content-info .info-wrapper .info-ul {
    display: inline-block;
    list-style: none;
    text-decoration: none;
    margin: 0;
    padding: 0;
}

.info-window-map .content-info .info-wrapper .info-ul .info-item {
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    text-transform: none;
    color: var(--fourth-color);
    margin: 0 15px 7.5px 0;
    display: table;
    float: left;
}

.info-window-map .content-info .info-wrapper .info-ul .info-item:last-child {
	margin-right: 0;
}

.info-window-map .content-info .info-wrapper .info-ul .info-item i {
    font-size: 16px;
    line-height: 16px;
    color: var(--third-color);
    border-radius: 100%;
    display: table-cell;
    vertical-align: middle;
}


.info-window-map .content-info .info-wrapper .info-ul .info-item p {
	display: table-cell;
    vertical-align: middle;
    margin: 0;
    padding-left: 12px;
}

.info-window-map .content-button-view-more {
	margin-top: 22.5px;
	display: flex;
	width: 100%;
	position: relative;
}

.info-window-map .content-button-view-more .button-view-more {
	width: 100%;
	font-family: 'Manrope', sans-serif;
    font-size: 14px;
    line-height: 22px;
    color: var(--fourth-color);
    font-weight: 600;
    text-align: center;
    padding: 10px 25px;
    margin: 0;
    display: table;
    min-width: 120px;
    background-color: var(--third-color);
    border: 2px solid var(--third-color);
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.info-window-map .content-button-view-more .item_route_button:focus {
	outline: none;
}

.info-window-map .content-button-view-more .button-view-more:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
    color: var(--third-color);
}

/* END INFO WINDOW */


/* SINGLE ROUTE */

.mm-generic-header.route-step .breadcrumbs {
    background-color: var(--secondary-color);
    color: white;
}

.mm-generic-header.route-step .breadcrumbs a:hover  {
    color: var(--third-color);
}

.mm-generic-header.route-step .breadcrumbs .current-item  {
    font-weight: 600;
}

.mm-generic-header.route-step .top-section .title-wrapper .box-shadow .container {
    align-items: flex-end;
}

.mm-generic-header.route-step .page-title {
    display: flex;
    align-items: flex-end;
}

.mm-generic-header.route-step .page-title svg {
    fill:#fff;
    margin-right: 15px;
    margin-bottom: 10px;
}

.mm-generic-header.route-step .page-title h6 {
    font-size: 18px;
    line-height: 1.3em;
    color: white;
    margin-bottom: 10px
}

.mm-generic-header.route-step .grande-rota-badge {
    margin-bottom: 5px;
}

.mm-generic-header.route-step .breadcrumbs span a,
.mm-generic-header.route-step .breadcrumbs span:last-child .current-item {
    color: white;
}

@media only screen and (max-width: 480px) {
    .mm-generic-header.route-step .top-section .title-wrapper .page-title {
        flex-wrap: wrap;
    }

    .mm-generic-header.route-step .top-section .title-wrapper .page-title > div {
        width: 100%;
    }

    .mm-generic-header.route-step .top-section .title-wrapper .page-title svg {
        margin-bottom: 0;
        margin-right: 0;
        width: 80px;
        height: 80px;
    }

    .mm-generic-header.route-step .top-section .title-wrapper .page-title h6 {
        margin-top: 15px;
    }
}

@media only screen and (max-width: 767px) {
    .mm-generic-header.route-step .top-section .title-wrapper .page-title {
        flex-direction: row;
    }
    .mm-generic-header.route-step .grande-rota-badge {
       display: none;
    }
}

.step-details {
    margin-left: 0;
    margin-right: 0;
}

.step-details > div:first-child {
    background-color: var(--fourth-color);
    padding: 60px 0;
}

.step-details .step-title {
    margin-bottom: 25px;
}

.step-details .step-title h6,
.step-details .sectors-title h6,
.setor-data .sector-data-title h6 {
    font-size: 1.222em;
    font-family: 'Manrope', sans-serif;
    margin-top: 0;
    margin-bottom: 10px;
    color: var(--fifth_color);
}

.step-details .step-title h2 {
    margin: 0;
}

.step-details .step-title h2 span {
    font-size: 1.333em;
    line-height: 1.35em;
    font-family: 'Zimula', sans-serif;
    text-transform: uppercase;
    color: white;
}

.step-details .step-title h2 svg {    
    stroke: var(--fifth_color);
}

.step-details .step-info {
    display: flex;
    margin: 0 -10px;
    flex-wrap: wrap;
}

.step-details .step-info .step-info-item {
    flex-basis: 25%;
    display: flex;
    align-items: center;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 15px;
}

.step-details .step-info .step-info-item svg {
   fill: var(--fifth_color);
   stroke: var(--fifth_color);
   margin-right: 8px;
}

.step-details .sectors-title,
.step-details .sectors-info {
    padding: 0 30px;
}

.step-details .sectors-info .sector-info-item h6,
.step-details .sectors-info .sector-info-item p,
.step-details .step-info .step-info-item b,
.step-details .step-info .step-info-item h6 {
    font-size: 15px;
    font-family: 'Manrope', sans-serif;
    line-height: 1;
    color: white;
    margin-top: 0;
    margin-bottom: 5px;
}

.step-details .step-info .step-info-item b {
    font-size: 1em;
    margin-bottom: 0;
}

.step-details .sectors-info .sector-info-item {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.step-details .sectors-info .sector-info-item:last-child {
    margin-bottom: 0px;
}

.step-details .sectors-info .sector-info-item:hover {
    opacity: 0.7;
}

.step-details .sectors-info .sector-info-item .sector-number {
    font-size: 34px;
    line-height: 1;
    font-weight: 700;
    color: var(--fifth_color);
    width: 50px;
    margin-right: 10px;
}

.step-details .sectors-info .sector-info-item h6 {
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 5px;
}

.step-details .sectors-info .sector-info-item p {
    margin-bottom: 0;
}

.setor-data .sector-data-title h6 {
    margin-bottom: 0;
}

.setor-data .sector-data-title h3 {
    font-size: 30px;
    margin-top: 0;
}

.setor-data .sector-data-title h3 span {
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
}

.setor-data .sector-data-title h3 svg {
    stroke: var(--fifth_color);
    margin-left: 5px;
    margin-right: 5px;
}

.setor-data .mm-accordion .section .section-title .svg-wrapper svg {
    fill: var(--fifth_color);
}

.setor-data .mm-accordion .section.acc_active {
    border-color: var(--fifth_color) !important;
}

.setor-data .mm-accordion .section.acc_active .section-title::after {
    color: var(--fifth_color);
}

.setor-data .mm-accordion .accordion-list .ul-list .list-item::before {
    color: var(--fifth_color);
}

.setor-data .mm-single-row .useful-information-box {
    background-color: #F2F2F2;
}

.setor-data .mm-single-row .useful-information-box .title {
    font-size: 26px;
    color: var(--fourth-color);
}

.setor-data .mm-single-row .useful-information-box .info-list .list.type-lables .list-item span {
    color: var(--fourth-color);
}

.setor-data .mm-single-row .useful-information-box .info-list .list .list-item .svg-wrapper {
    width: 40px;
    font-size: 23px;
    line-height: 23px;
    text-align: center;
    padding-right: 15px;
    display: table-cell;
    vertical-align: middle;
    position: relative;
}

.setor-data .mm-single-row .useful-information-box .info-list .list .list-item svg {
    fill: var(--fifth_color);
    stroke: var(--fifth_color);
}

.setor-data .mm-single-row .useful-information-box .info-list .list .list-item i {
    color: var(--fifth_color);
}

.setor-data .mm-single-row .useful-information-box .info-list .list .list-item {
    color: var(--fourth-color);
    line-height: 1;
}

.setor-data .mm-single-row .info-list .list.type-lables .list-item span.coordinates {
    margin: 0;
}

.setor-data .mm-single-row .info-list .list.type-lables .list-item span.coordinates a {
    color: var(--fifth_color);
}

.setor-data .mm-single-row .map-sidebar-box {
    padding: 45px 30px 40px 30px;
    background-color: var(--secondary-color);
}

.route-step-container .mm-single-row .downloads-sidebar-box .title {
    font-size: 26px;
}

.route-step-container .services-container,
.route-step-container .pagination {
    padding-left: 15px;
    padding-right: 15px;
}

.route-step-container .pagination .nav-container {
    display: flex;
    padding: 30px 0px;
    border-top: 1px solid #ededed;
    border-bottom: 1px solid #ededed;
}

.route-step-container .pagination .nav-container .nav {
    width: calc(50% - 30px);
    display: flex;
}

.route-step-container .pagination .nav-container .nav a {
    display: flex;
}

.route-step-container .pagination .nav-container .nav a div span {
    display: block;
    font-size: 16px;
    line-height: 24px;
    color: #53585c;
}

.route-step-container .pagination .nav-container .nav a div span.title {
    font-weight: 700;
    color: var(--fourth-color);
    margin-bottom: 5px;
}

.route-step-container .pagination .nav-container .nav a:hover div span.title {
    color: var(--secondary-color);
}

.route-step-container .pagination .nav-container .nav a .icon-wrapper {
    width: 40px;
    height: 40px;
    font-size: 20px;
    color: #53585c;
    background-color: #fff;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-box-shadow: 0px 0px 4px #e8e8e8;
    box-shadow: 0px 0px 4px #e8e8e8;
    display: flex;
    align-items: center;
    justify-content: center;
}

.route-step-container .pagination .nav-container .nav.prev-nav a .icon-wrapper {
    margin-right: 25px;
}

.route-step-container .pagination .nav-container .nav.next-nav {
    justify-content: flex-end;
}

.route-step-container .pagination .nav-container .nav.next-nav a div {
    text-align: right;
}

.route-step-container .pagination .nav-container .nav.next-nav a .icon-wrapper {
    margin-left: 25px;
}

.route-step-container .pagination .nav-container .nav.back-nav {
    width: 60px;
    justify-content: center;
    align-items: center;
}

.route-step-container .pagination .nav-container .nav.back-nav a svg {
    fill: #53585c;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
}

.route-step-container .pagination .nav-container .nav.back-nav a:hover svg {
    fill: var(--secondary-color);
}

@media screen and (max-width: 600px) {
    .step-details .step-info .step-info-item {
        flex-basis: 50%;
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 650px) {
    .route-step-container .pagination .nav-container {
        flex-wrap: wrap;
    }
    .route-step-container .pagination .nav-container .nav {
        width: 100%;
        justify-content: center;
    }
    .route-step-container .pagination .nav-container .nav a span {
        text-align: center;
    }
    .route-step-container .pagination .nav-container .nav.back-nav {
        width: 100%;
        margin-top: 30px;
        margin-bottom: 30px;
        padding-top: 30px;
        padding-bottom: 30px;
        align-items: center;
        border-top: 1px solid #ededed;
        border-bottom: 1px solid #ededed;
    }
    .route-step-container .pagination .nav-container .nav a .icon-wrapper  {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .step-details .container > .row {
        margin: 0;
    }
}

@media screen and (min-width: 800px) {
    .route-step-container .pagination,
    .route-step-container .services-container {
        padding-left: 5%;
        padding-right: 5%;
    }
}

@media screen and (max-width: 991px) {
    .step-details .step-info {
        margin-bottom: 25px;
    }
    .step-details .sectors-title,
    .step-details .sectors-info {
        padding: 0;
    }
}
/* END SINGLE ROUTE */

/* REMOVE FIRST SEPARATOR BREADCRUMB */
.remove_first_separator span:nth-child(2){
    display: none;
}

/* ROUTE STEPS */

.mm-route_steps {
    margin-top: 15px;
    margin-bottom: 15px;
}

.route-step-container .lightbox-gallery  {
    width: 100% !important;
}

.route-step-container .gallery-img-video .gallery-wrapper .gallery-tab .gallery-wrapper {
    margin-left: 0;
    margin-right: 0;
}

.route-step-container .gallery-img-video > .gallery-wrapper {
    margin-left: -7.5px;
    margin-right: -7.5px;
}

.route-step #map {
    height: 600px !important;
}

.mm-route_steps .wrapper {
    position: relative;
}

.mm-route_steps .img-holder {
    height: 335px;
    overflow: hidden;
}

.mm-route_steps .img-holder img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
}

.mm-route_steps:hover .img-holder img {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
}

.mm-route_steps .info-wrapper {
    position: absolute;
    padding: 60px 25px 25px 25px;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(33,33,33,0);
    background: -moz-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.17) 14%, rgba(33,33,33,0.75) 61%);
    background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(33,33,33,0)), color-stop(14%, rgba(33,33,33,0.17)), color-stop(61%, rgba(33,33,33,0.75)));
    background: -webkit-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.17) 14%, rgba(33,33,33,0.75) 61%);
    background: -o-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.17) 14%, rgba(33,33,33,0.75) 61%);
    background: -ms-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.17) 14%, rgba(33,33,33,0.75) 61%);
    background: linear-gradient(to bottom, rgba(33,33,33,0) 0%, rgba(33,33,33,0.17) 14%, rgba(33,33,33,0.75) 61%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#212121', endColorstr='#212121', GradientType=0 );
}

.mm-route_steps h2 {
    font-size: 24px;
    line-height: 34px;
    color: #fff;
    font-weight: 600;
    padding: 0;
    margin: 0;
}

.mm-route_steps .numb_sectors {
    position: absolute;
    top: 25px;
    left: 25px;
    padding: 3px 8px;
    border-radius: 3px;
    display: flex;
    align-items: center;
    background-color: var(--fifth_color);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
}
.mm-route_steps .numb_sectors svg  {
    height: 15px;
    width: 13px;
    margin-right: 6px;
    color: #fff;
}

.mm-route_steps .numb_sectors span  {
    padding: 0;
    margin: 0;
    font-weight: 600;
    color: #fff;
}

.mm-route_steps .step-info {
    padding: 25px 25px 0px 25px;
    border: 1px solid #ededed;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.mm-route_steps .step-info > div {
    display: flex;
    justify-content: flex-start;
    width: 50%;
    margin-bottom: 25px;
}

.mm-route_steps .step-info > div:last-child {
    margin-right: 0px;
}

.mm-route_steps .step-info h6 {
    line-height: 1;
    margin: 0;
}

.mm-route_steps .step-info b {
    line-height: 1;
    margin: 0;
    color: var(--fourth-color);
}

.mm-route_steps .step-info .icon-wrapper {
    height: 29px;
    display: flex;
    align-items: center;
}

.mm-route_steps .step-info svg {
    margin-right: 8px;
    color: var(--fifth_color);
    fill: var(--fifth_color);
    stroke: var(--fifth_color);
}

.downloads-altimetry-container h3 {
    font-size: 30px;
    margin-top: 0;
}

.downloads-altimetry-container .downloads-list {
    display: flex;
    flex-wrap: wrap;
}

.downloads-altimetry-container .downloads-list .item {
    display: flex;
    width: 200px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 25px;
}

.downloads-altimetry-container .downloads-list .item i {
    color: var(--fifth_color);
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
}

.downloads-altimetry-container .downloads-list .item:hover i {
    color: var(--third-color);
}

.downloads-altimetry-container .downloads-list h4 {
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 0;
}

.downloads-altimetry-container .downloads-list .icon_wrapper {
    margin-right: 8px;
}

@media only screen and (max-width: 991px) and (min-width: 767px) {
	.mm-route_steps .img-holder {
	    height: 310px;
	}	
}

@media screen and (min-width:521px) {
    .mm-route_steps .step-info > div {
        width: 25%;
    }
}

@media screen and (min-width:767px) {
    .mm-route_steps .step-info > div {
        width: 50%;
    }
}

@media screen and (min-width:1920px) {
    .mm-route_steps .step-info > div {
        width: 25%;
    }
}

/* Step Details */

.details-step h3 {
    margin-top: 0;
    margin-bottom: 20px;
}

.details-step .wrapper {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 25px;
}

.details-step .wrapper .item {
   width: 100%;
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   margin-top: 15px;
   margin-bottom: 15px;
}

.details-step .wrapper .item .icon {
    color: var(--fifth_color);
    width: 35px;
    margin-right: 8px;
}

.details-step .wrapper .item h6 {
    margin-top: 0;
    margin-bottom: 5px;
    font-size: 15px;
    font-family: 'Manrope', sans-serif;
    line-height: 1;
}
.details-step .wrapper .item b {
    margin: 0;
    font-size: 17px;
    line-height: 1;
}

@media screen and (min-width:420px) {
    .details-step .wrapper .item {
        width: 50%;
    }
}

@media screen and (min-width:600px) {
    .details-step .wrapper .item {
        width: 33.333%;
    }
}

@media screen and (min-width:767px) {
    .details-step .wrapper .item {
        width: 25%;
    }
}

@media screen and (min-width:992px) {
    .details-step .wrapper .item {
        width: 50%;
    }
}

@media screen and (min-width:1200px) {
    .details-step .wrapper .item {
        width: 33.333%;
    }
}

/* DOWNLOADS GR */

.downloads-gr {
    background-color: var(--fourth-color);
    padding: 40px 30px;
}

.downloads-gr h3 {
    font-size: 26px;
    margin-top: 0;
    margin-bottom: 30px;
    color: #fff;
}

.downloads-gr .item {
    display: flex;
    align-items: center;
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: 1px solid #fff;
}

.downloads-gr .item:last-child {
    padding-bottom: 0px;
}

.downloads-gr .item .icon {
    width: 25px;
    color: var(--third-color);
}

.downloads-gr .item h6 {
    margin: 0;
    font-size: 1em;
    line-height: 1;
    color: #fff;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
}

.downloads-gr .item:hover h6 {
    color: var(--third-color);
}

.responsible-trails-box {
    background-color: var(--secondary-color);
    padding: 35px;
}

.responsible-trails-box h3 {
    margin-top: 0;
    color: var(--third-color);
}

.responsible-trails-box p {
    color: white;
}

.responsible-trails-box a {
    font-size: 14px;
    line-height: 22px;
    color: var(--fourth-color);
    background-color: var(--third-color);
    font-weight: 600;
    padding: 15px 30px;
    width: 100%;
    box-shadow: none;
    border: none;
    border-radius: 0;
    cursor: pointer;
    height: auto;
    text-transform: none;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.responsible-trails-box i {
    margin-right: 12px;
}

.responsible-trails-box a:hover {
    background-color: var(--fourth-color);
    color: var(--third-color);
}

/* MAIN MENU */

.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu {
    position: absolute;
    display: flex;
    opacity: 0;
    visibility: hidden;
    background-color: #EDEDED;
    padding: 15px;
}

.main-menu-wrap ul li.menu-item-has-children:hover .mm-dropdown-menu,
.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu:hover {
    opacity: 1;
    visibility: visible;
    z-index: 99;
}

.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 250px;
}

.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu li {
    display: block;
    padding-bottom: 10;
    margin-bottom: 10;
    margin-right: 0;
    margin-left: 0;
    border-bottom: 1px solid #dedede;
}

.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu > li:last-child {
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0;
}

.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu > li a {
   text-transform: none;
   line-height: 1.2;
}

.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu li.current-menu-item a::before,
.main-menu-wrap ul li.menu-item-has-children.current-menu-item ul.mm-dropdown-menu a::before,
.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu > li:hover a::before,
.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu > li a::after {
    display: none;
}

.main-menu-wrap ul li.menu-item-has-children.current-menu-item ul.mm-dropdown-menu a {
    color: var(--fourth-color);
}

.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu li.current-menu-item a {
    font-weight: 700;
}

.main-menu-wrap ul li.menu-item-has-children.current-menu-item ul.mm-dropdown-menu li:hover a,
.main-menu-wrap ul li.menu-item-has-children ul.mm-dropdown-menu > li:hover a {
    color: var(--primary-color);
}

/* INTERACTIVE MAP */

.mm-interative-map {
    position: relative;
    height: calc(100vh - 135px);
}

.mm-interative-map .map-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: #ededed;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
}

.mm-interative-map .map  {
    display: flex;
    width: 100vw;
    height: 100vh;
    position: absolute;
}

.mm-interative-map .map:hover  {
    cursor:grab;
}

.mm-interative-map .header h2 {
    margin-top: 0;
}

.mm-interative-map .filter-btn {
    position: absolute;
    top: 25px;
    left: 25px;
    width: 50px;
    height: 50px;
    background-color: white;
    appearance: none;
    border: none;
    -webkit-box-shadow: 0 0px 8px rgb(0 0 0 / 7%);
    box-shadow: 0 0px 8px rgb(0 0 0 / 7%);
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    z-index: 9999;
}

.mm-interative-map .filter-btn:hover {
    cursor: pointer;
    color: var(--secondary-color);
}

.mm-interative-map .map-filters {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -350px;
    width: 350px;
    padding: 25px;
    z-index: 99;
    background-color: white;
    -webkit-box-shadow: 0 0px 8px rgb(0 0 0 / 7%);
    box-shadow: 0 0px 8px rgb(0 0 0 / 7%);
    -webkit-transition: 300ms left cubic-bezier(0.77, 0, 0.175, 1);
    -o-transition: 300ms left cubic-bezier(0.77, 0, 0.175, 1);
    transition: 300ms left cubic-bezier(0.77, 0, 0.175, 1);
    z-index: 99999;
}

.mm-interative-map .map-filters.open {
    left: 0;
}

.mm-interative-map .map-filters .header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #eee;
    margin-bottom: 25px;
}

.mm-interative-map .map-filters .close-filters {
    appearance: none;
    border: none;
    margin-bottom: 0.5em;
    background-color: transparent;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.mm-interative-map .map-filters .close-filters:hover {
    cursor: pointer;
    color: var(--secondary-color);
}

.mm-interative-map .map-filters .close-filters svg {
	width: 25px;
}

.mm-interative-map .map-filters .filter-container {
    align-items: center;
    margin-left: -5px;
    margin-right: -5px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.mm-interative-map .map-filters .filter-container .filter {
	width: 33.333333%;
	padding: 5px;
}

.mm-interative-map .map-filters .filter-container input[type="checkbox"] {
    visibility: hidden;
    opacity: 0;
    width: 0;
    height: 0;
    border: none;
    appearance: none;
    padding: 0;
    margin: 0;
}

.mm-interative-map .map-filters .filter-container input[type="checkbox"]:checked ~ label{
    background-color: var(--primary-color);
}
.mm-interative-map .map-filters .filter-container input[type="checkbox"]:checked ~ label svg{
    fill: var(--primary-color);
}

.mm-interative-map .map-filters .filter-container label {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px 12px;
    background-color: #999999;
    color: #fff;
	-webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.mm-interative-map .map-filters .filter-container .filter label {
	min-height: 80px;
}

.mm-interative-map .map-filters .filter-container label:hover {
    cursor: pointer;
    background-color: var(--primary-color);
}

.mm-interative-map .map-filters .filter-container label svg {
    width: 22px;
    height: auto;
    margin-right: 10px;
}

.mm-interative-map .map-filters .filter-container .filter label .svg-wrapper {
    height: 45px;
    width: 45px;
    border-radius: 100%;
    background-color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.mm-interative-map .map-filters .filter-container .filter label svg {
	width: 35px;
	fill: #999999;
    margin-right: 0;	
}

.mm-interative-map .map-filters .filter-container.routes {
    flex-direction: column;
}

.mm-interative-map .map-filters .filter-container.routes > div {
    width: 100%;
    padding: 5px;
}

.mm-interative-map .map-filters .filter-container label.active {
    background-color: var(--primary-color);
}

.mm-interative-map .map-filters .filter-container .filter label.active .svg-wrapper svg {
    fill: var(--primary-color);
}

.mm-interative-map .map-filters .filter-container .filter label:hover .svg-wrapper svg {
    fill: var(--primary-color);
}

.map-each-line .tabs-list .tab-item {
    margin-right: 5px;
	display: inline-block;
}

.map-each-line .tabs-list .tab-item:last-child {
	margin-right: 0;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] {
    position: absolute;
    left: -9999px;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label {
	cursor: pointer;
    border: 1px solid var(--primary-color);
    border-radius: 100px;
    margin-right: 5px;
    padding: 6.5px 18px;
    display: inline-block;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label i {
	font-size: 14px;
	line-height: 22px;
    color: var(--primary-color);
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label .label-name {
	font-size: 14px;
	line-height: 22px;
    color: var(--primary-color);	
	margin-left: 12;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label:hover {
	background-color: var(--fourth-color);
	border-color: var(--fourth-color);
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label:hover i,
.map-each-line .tabs-list .tab-item input[type="checkbox"] + label:hover .label-name {
	color: #fff;	
}

.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label {
	border-color: var(--fourth-color);
}

.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label i,
.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label .label-name {
    color: var(--fourth-color);
}


.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label:hover i,
.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label:hover .label-name {
	color: #fff;	
}
.map-each-line .tabs-list .tab-item:last-child {
	margin-right: 0;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] {
    position: absolute;
    left: -9999px;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label {
	cursor: pointer;
    border: 1px solid var(--primary-color);
    border-radius: 100px;
    margin-right: 5px;
    padding: 6.5px 18px;
    display: inline-block;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label i {
	font-size: 14px;
	line-height: 22px;
    color: var(--primary-color);
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label .label-name {
	font-size: 14px;
	line-height: 22px;
    color: var(--primary-color);	
	margin-left: 12;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label:hover {
	background-color: var(--fourth-color);
	border-color: var(--fourth-color);
}

.map-each-line .tabs-list .tab-item input[type="checkbox"] + label:hover i,
.map-each-line .tabs-list .tab-item input[type="checkbox"] + label:hover .label-name {
	color: #fff;	
}

.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label {
	border-color: var(--fourth-color);
}

.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label i,
.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label .label-name {
    color: var(--fourth-color);
}


.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label:hover i,
.map-each-line .tabs-list .tab-item input[type="checkbox"]:checked + label:hover .label-name {
	color: #fff;	
}

/* PASSPORT GR FORM & SUBMIT PARTNER REQUEST */

.passport-partners-form,
.request-passport-form {
    background-color: #2b2b2b;
    padding: 30px;
}

.passport-partners-form .form-column,
.request-passport-form .form-column {
    margin-bottom: 30px;
}

.passport-partners-form .form-row label,
.request-passport-form .form-row label {
    font-size: 14px;
    line-height: 22px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 15px;
    display: block;
}

.passport-partners-form .form-row .form-column .input-radio-wrapper,
.request-passport-form .form-row .form-column .input-radio-wrapper {
    display: flex;
    justify-content: flex-start;
}

.passport-partners-form .form-row .form-column .input-radio,
.request-passport-form .form-row .form-column .input-radio {
    margin-bottom: 0;
    display: flex;
    margin-right: 15px;
}

.passport-partners-form .form-row .form-column input[type="radio"],
.request-passport-form .form-row .form-column input[type="radio"] {
    background-color: #fff;
    margin: 0;
    font: inherit;
    color: currentColor;
    width: 24px;
    height: 24px;
    border: 1px solid currentColor;
    border-radius: 50%;
    margin-right: 8px;
}

.passport-partners-form .form-row .form-column .input-wrapper label,
.request-passport-form .form-row .form-column .input-wrapper label {
    margin-bottom: 0;
    margin-left: 10px;
}

.passport-partners-form .form-row .form-column .input-wrapper .chosen-container,
.request-passport-form .form-row .form-column .input-wrapper .chosen-container {
    width: 100% !important;
}

.passport-partners-form .form-row .form-column .submit-input,
.request-passport-form .form-row .form-column .submit-input {
    font-size: 14px;
    line-height: 22px;
    color: #fff;
    background-color: #497c62;
    font-weight: 600;
    padding: 15px 30px;
    width: 100%;
    min-height: 52px;
    box-shadow: none;
    border: none;
    border-radius: 0;
    cursor: pointer;
    height: auto;
    text-transform: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.passport-partners-form .form-row .form-column .input-wrapper .container-checkbox,
.request-passport-form .form-row .form-column .input-wrapper .container-checkbox {
    display: block;
    margin-bottom: 15px !important; 
}

.passport-partners-form .form-row .form-column .input-wrapper .container-checkbox span,
.request-passport-form .form-row .form-column .input-wrapper .container-checkbox span {
    margin-left: 10px;
}

.passport-partners-form .input-wrapper label.input-error,
.request-passport-form .input-wrapper label.input-error {
    padding: 10px 15px;
    background-color: #e30613;
    margin: 15px 0px 0px 0px !important;
    text-align: center;
    display: block;
    position: relative;
}

.passport-partners-form .input-wrapper label.input-error::before,
.request-passport-form .input-wrapper label.input-error::before {
    content: "\f0de";
    display: block;
    font: normal normal normal 12px/1 FontAwesome;
    font-size: 18px;
    color: #e30613;
    position: absolute;
    top: -6px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.passport-partners-form .input-wrapper input.input-error:not([type=submit]):not([type=checkbox]),
.request-passport-form .input-wrapper input.input-error:not([type=submit]):not([type=checkbox]) {
    background-color: #fff;
    text-align: left;
    border-color: #e30613;
}

.passport-partners-form .message-success,
.request-passport-form .message-success {
    padding: 10px 15px;
    background-color: #3bb543;
    margin: 15px 0 0 0;
    text-align: center;
    display: block;
    position: relative;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.passport-partners-form .message-success::before,
.request-passport-form .message-success::before {
    content: "\f0de";
    display: block;
    font: normal normal normal 12px/1 FontAwesome;
    font-size: 18px;
    color: #3bb543;
    position: absolute;
    top: -6px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.passport-partners-form .message-success p,
.request-passport-form .message-success p {
    font-size: 14px;
    line-height: 22px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 0px;
}

.passport-partners-form .message-success::before,
.request-passport-form .message-success::before {
    content: "\f0de";
    display: block;
    font: normal normal normal 12px/1 FontAwesome;
    font-size: 18px;
    color: #3bb543;
    position: absolute;
    top: -6px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.passport-partners-form .message-error,
.request-passport-form .message-error {
    padding: 10px 15px;
    background-color: #e30613;
    margin: 15px 0 0 0;
    text-align: center;
    display: block;
    position: relative;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.passport-partners-form .message-error::before,
.request-passport-form .message-error::before {
    content: "\f0de";
    display: block;
    font: normal normal normal 12px/1 FontAwesome;
    font-size: 18px;
    color: #e30613;
    position: absolute;
    top: -6px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.passport-partners-form .message-error p,
.request-passport-form .message-error p {
    font-size: 14px;
    line-height: 22px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 0px;
}

.passport-partners-form .form-column.submit,
.request-passport-form .form-column.submit {
    margin-bottom: 0;
}
