



.routeTitle svg{
    height: 15px;
}
.smLocation{
	display: flex;
}



.routeMap{
/*	display: flex;*/
    display: grid;
    grid-template-columns: 1fr 1fr;
	overflow: hidden;
	transition: 1s max-height;
	height: fit-content;
/*	padding-top: calc(var(--outer-margin)/2);*/
}

.closedRoute.routeMap{
    max-height: 0vh;

}
.openRoute.routeMap{
    max-height: 100vh;
}

.routeInfo{
/*	margin-left: calc(var(--outer-margin));*/
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.buttonParentChild svg{
    height: calc(var(--main-font-size));
    margin-right: 5px;
}  
.buttonParentChild p, .locationTitle h2{
	margin: 0;
}
.locationTitle h2{
	font-size: 1.5em;
	line-height: 1.3em;
/*    max-width: 70%;*/
}
.locationTitle p{
    font-size: 1.2em;
    margin: 0;
    line-height: 1.3em;
  
}

.venueAdress{
   display: grid;
    row-gap: 0.1em;
}
/*.locationTitle p a::after{
    bottom: -1px !important;
}*/
.locationTitle{
	line-height: 1.3em;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
    row-gap: var(--newM);
}
.buttonParentChild a{
    font-family: "JL_Impact-2012" !important;
    background: transparent !important;
    border: none !important;
    text-transform: lowercase !important;
    color: var(--highlight-color) !important;
    font-size: 1.2em;
    cursor: pointer !important;
    padding-left: 0px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: auto !important;
    text-decoration: none;
    margin: 0;
}  

.lineRoute{
	height: calc(var(--outer-margin) * 4);
    border-left: 1px solid var(--highlight-color);
}


.mainLocations.mainRoutes{
	grid-column-end: 8;
}
.desktop .location a {
  display: inline-block;
  position: relative;
  white-space: nowrap;
  color: var(--highlight-color);
  text-decoration: none;
  margin-right: var(--outer-margin);
}

.desktop .location a::after {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(1);
  height: 1px;
  bottom: 0px;
  left: 0;
  background-color: var(--highlight-color);
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
}

.desktop .location a:hover::after {
  transform: scaleX(0);
  transform-origin: bottom right;
}

.routeMap iframe{
	filter: grayscale(1);
	margin-top: calc(var(--outer-margin)/2);
}

.read-more{
	position: relative;
    height: calc(var(--outer-margin)/1.5);
    /* right: 0; */
    display: flex;
    width: 100%;
    justify-content: flex-end;
    margin-top: -1em;
    cursor: pointer;
}

@media screen
and (max-width: 820px), (min-width:821px) and (orientation:portrait) {
    .logo_main{
        height: 100%;
    }
    .read-more{
        pointer-events: none;
    }
    .read-more svg{
        pointer-events: all !important;
    }
    .stickToHeader{
        grid-column-start: 1 !important;
        grid-column-end: 5 !important;
        grid-row-start: 1 !important;
        background: var(--div-bg);
        width: 100%;
    }
    .stickyMarker{
        grid-row-start: 1;
    }
    .mainText{
        background: transparent !important;
    }
    .mainLocations{
        grid-column-start: 1;
        grid-column-end: 6;
    }
    .locations{
        grid-template-columns: 1fr;
        display: grid;
    }
    .routeTitle {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        row-gap: calc(var(--outer-margin)/2);
        font-size: 1.2em;
    }

    .routeTitle svg{
        max-height: 15px;
        transform: rotate(90deg);
    }
    .location, .route{
        background: var(--div-bg);
        padding: calc(var(--outer-margin)/1.5);
        margin-bottom: calc(var(--outer-margin)/2);
/*        margin-right: calc(var(--outer-margin)/2);*/
    }
    .location:first-of-type, .route:first-of-type{
        margin-top: calc(var(--outer-margin)/2);
    }
    .smLocation a{
        margin-right:  calc(var(--outer-margin));
    }
    .routeMap{
        flex-direction: column;
    }
    iframe{
        height: 50vh;
        width: auto;
    }
    .locationTitle h2 {
        max-width: 70%;
    }
    .subtitleC{
        display: none;
    }
    .routeMap{
/*        grid-template-rows: 1fr 1fr !important;*/
        grid-template-columns: 1fr !important;
    }
    .mapboxEmbed{
        min-height: 45vh;
    }
    .routeTitle svg{
        width: 15px;
    }
}

@media screen
and (min-width: 821px) and (orientation: landscape) {
    .upper_logo_main {
        margin-top: -328vh;
    }
    .mainLocations{
        grid-column-start: 2;
        grid-column-end: 9;
    }
    .locations{
        grid-template-columns: 1fr 1fr 1fr;
        display: grid;
    }
    /*.upper_logo_main{
        margin-top: -200vh;
    }*/
    .routeTitle{
        display: flex;
        align-items: center;
        column-gap: calc(var(--outer-margin)/2);
    /*  margin-bottom: calc(var(--outer-margin)/2);*/
    }
    .location{
        min-height: 25vh;
        font-size: 0.8em;
    }
    .location, .route{
        background: var(--div-bg);
        padding: calc(var(--outer-margin)/2);
        margin-bottom: calc(var(--outer-margin)/2);
        margin-right: calc(var(--outer-margin)/2);
    }
    .routeInfo{
        margin-left: calc(var(--outer-margin));
    }
    .fromTo p:first-of-type{
        margin-top: 0;
    }
    .routeInfo, .mapboxCont{
        margin-top: calc(var(--outer-margin)*2);
    }
    .mapboxCont{
        display: -webkit-box !important;
    }
    .vertStack:first-of-type {
        padding-top: var(--newM);
    }
    .buttonParentChild{
        z-index: 10;
        position: relative;
    }
}

.mapboxEmbed{
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 99%;
    filter: grayscale(1);
}
.mapboxEmbed .markerMap {
  background-image: url('mapbox-icon.png');
  background-size: cover;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  cursor: pointer;

}
.mapboxgl-ctrl{
    opacity: 0;
}

.buttonParentChild{
    width: fit-content;
}

/*.mapboxgl-canvas-container {

    height: 100vh;

}*/