@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap')


html {
    font-family: "Poppins", sans-serif;
    font-style: normal;
}

h1, h2, h3 {
    font-weight: 300;
    color: #011c40;
}

p {
    /*font-size: 1.05rem;*/
}

p, h4, h5 {
    font-weight: 400;
}

hr {
    border: 1px solid #C4C2C2;
}

b {
    font-weight: 600;
}

.navbar-toggler {
    border-color: #e3dbc8;
}

.navbar {
    background-color: #0D3973 !important;
    border-style: solid;
    border-width: 0 0 5px 0;
    border-color: #3391a6;
    padding-top: 0;
    padding-bottom: 0;
}

.navbar ul li:hover > a {
    background-color: #3391a6;
    color: #FFF;
}

.nav-link {
    color: #F2F2F2;
    padding-top: 32px;
    padding-bottom: 32px;
    font-weight: 500;
}

.nav-link:hover {
    color: #fff;
    background-color: #3391A6;

}

.footer-nav {
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 1.6rem;
}

.footer-nav li a {
    font-weight: 500;
    color: #0d3973;
    text-decoration: none;
}

.footer-nav li a:hover {
    text-decoration: underline;
}

.link-leipis {
    color: #0d3973;
    text-decoration: none;
    font-weight: 600;
    border: none;
}

.link-leipis:hover {
    text-decoration: underline;
}

.dropdown-menu {
    border-style: solid;
    border-width: 5px 0 0 0;
    border-color: #3391a6;
    border-radius:0px;
    color: #CFFFFD;
    background-color: #F2F2F2;
}

.dropdown-item {
    color: #000;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

/*
.border-top {
    border-top: 1px solid #dee2e6 !important;
}*/

.dropdown:hover .dropdown-menu {
      display: block;
}

.event {
    border-color:#3391a6;
}
.event .card-body {

}

.next-event {
    
}

.event .card-footer {
  background: transparent;
  border-top: 0px;
}


.event h6 {
    text-transform: uppercase;
}

.event h5 {
    text-transform: uppercase;
}

.event img {
    max-width:150px; /* prevents image taking card width */
    min-height: 150px; /* ref height for card footer */
    object-fit: cover;
}

.btn-event { 
  margin-top: 10px;
  margin-bottom: 10px;
    
  color: #FFFFFF; 
  background-color: #124673; 
  border-color: #124673; 
} 


.btn-event:hover, 
.btn-event:focus, 
.btn-event:active, 
.btn-event.active, 
.open .dropdown-toggle.btn-event { 
  color: #FFFFFF; 
  background-color: #3391A6; 
  border-color: #124673; 
} 
 
.btn-event:active, 
.btn-event.active, 
.open .dropdown-toggle.btn-event { 
  background-image: none; 
} 
 
.btn-event.disabled, 
.btn-event[disabled], 
fieldset[disabled] .btn-event, 
.btn-event.disabled:hover, 
.btn-event[disabled]:hover, 
fieldset[disabled] .btn-event:hover, 
.btn-event.disabled:focus, 
.btn-event[disabled]:focus, 
fieldset[disabled] .btn-event:focus, 
.btn-event.disabled:active, 
.btn-event[disabled]:active, 
fieldset[disabled] .btn-event:active, 
.btn-event.disabled.active, 
.btn-event[disabled].active, 
fieldset[disabled] .btn-event.active { 
  background-color: #124673; 
  border-color: #124673; 
} 
 
.btn-event .badge { 
  color: #124673; 
  background-color: #FFFFFF; 
}

.leaflet-tooltip {
    background-color: #0d3973; /* Background color */
    color: #fff; /* Text color */
    border-radius: 4px; /* Rounded corners */
    padding: 6px 10px; /* Padding */
}

.leaflet-reitti-virtuaalinen {
    background-color: #ca8224;
}

.blue-marker {
    color: #2b82cb;
}

.orange-marker {
    color: #ca8224;
}

.map-menu {
    min-height:40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f2f2f2;"
}


.event-link {
    cursor: pointer;
    color: blue;
    text-decoration: underline;
}


.calendar-event-front-page {
    font-weight: 500; 
    color: black;
}

.calendar-event-front-page a {
    text-decoration: none; 
    color: black;
}

.calendar-event-front-page a:hover {
    text-decoration: underline; 
}

/* Style for the back to top button */
#backToTopBtn {

    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: none;
    z-index: 1000;
}

/* Custom CSS to remove y-axis movement from Bootstrap modal and make fade-in quicker */
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
  transition: transform 0.2s ease-out, opacity 0.2s ease-out; 
}

.modal.fade.show .modal-dialog {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
  opacity: 1;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out; 
}


/* Style for the buttons below the title */
.timeline-buttons {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
}

.timeline {
    display: flex;
    flex-direction: column;
}
.timeline-row {
    display: flex;
}
.timeline-left {
    text-align: right;
    padding-right: 10px;
    flex: 1;
    padding: 10px;
    border-right: 1px solid #0d3973;
}
.timeline-right {
    flex: 2;
    padding: 10px;
}
.timeline-left-item {
    cursor: pointer;
    padding: 5px 10px;
    border-bottom: 1px solid #ddd;
}
.timeline-left-item.active {
    background-color: #f0f8ff;
}
.timeline-right-item {
    padding: 10px;
    /*margin-bottom: 10px;*/
    border: 1px solid #ddd;
    /*border-radius: 5px;*/
    background-color: #f9f9f9;
    box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.25);
}

h3.timelineTitle {
    
    font-weight: 400;
}

.timelineRand {
    /*border: 1px solid #3391a6;*/
    border-top: 1px solid #0d3973;
    padding: 10px;
}

.main-left-pane {
    border-right: 1px solid #0d3973;
}
/* Style for the sticky footer */
.sticky-footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
    padding: 10px 0;
    z-index: 1000;
    padding: 10px 20px;
}

#aikajanaProgress {
    position: fixed;
    bottom: 0px;
    border-radius: 0px;
    /*left: 50%;
    transform: translateX(-50%);*/
    width: 100%;
    z-index: 1000;
}

.progress-bar {
    background: #0d3973;
    width: 0%;
}

.leftText {
    position: fixed;
    bottom: 20px;
    left: 10px;
}
.rightText {
    position: fixed;
    bottom: 20px;
    right: 10px;
}    

@media (max-width:992px) {
    .timeline-buttons {
        flex-wrap: wrap;
    }

    .btn-event {
        margin-top: 0px;
        margin-bottom: 0px;
    }
    .av_logo {
        /*margin-left: auto;
        margin-right: auto;*/
        width: 60%;
        display: block;
        margin-left: auto;
    }
    
    .nav-link {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    
    .navbar ul li:hover > a {
        background:none;
        color: #FFF;
    }
    
    .dropdown-menu {
        border-style: none;
        /*color: #CFFFFD;*/
        background-color: #011c40;
    }
    .dropdown-item {
        color: #fff;
    }
    .map-menu {
        height: auto; /* Change height to auto for smaller screens */
        flex-direction: row; /* Items should be in a row */
        flex-wrap: wrap; /* Allow items to wrap to the next line */
        text-align: center; /* Center text horizontally */
      }
    .leftText {
        display:none;
    }
    .rightText {
        display:none;
    }
    .nextEvent {
        margin-top: 15px;
        border-top: 1px solid #0d3973;
    }
}



/* Hide the dropdown arrow on screens larger than 992px */
@media (min-width: 992.01px) {
    .navbar-nav .dropdown-toggle::after {
        display: none;
    }
}