/* css styles */


/***************************************/
/*****      navbar settings        *****/
/***************************************/
/* logo */
.navbar-logo {
    position: relative;
    max-height:60px;
    background-size: contain;
}

/*header text*/
.navbar li.nav-item a.nav-link span {
    font-weight: bold;
  }

/***************************************/
/*****     carousel settings       *****/
/***************************************/
.carousel.card {
    padding-top: 2em;
  }
  .carousel img {
    width: 300px;
    margin-bottom: 110px;
  }
  .carousel-control-prev-icon, .carousel-control-next-icon {
    margin-bottom: 110px;
  }
  .carousel-caption {
    padding-top: 1em;
  }

/***************************************/
/*****     flipcard settings       *****/
/***************************************/
.flip-card {
  background-color: transparent;
  width: 300px;
  height: 300px;
  perspective: 1000px; /* required for 3D effect */
}

/* This container is needed to position the front and back side */
.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
  background-color: #bbb;
  color: black;
}

/* Style the back side */
.flip-card-back {
  background-color: dodgerblue;
  color: white;
  transform: rotateY(180deg);
}

/***************************************/
/*****     container settings      *****/
/***************************************/
.container {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  gap: 30px; /* Adjust the space between the image and the text */
}

.column-container {
  display: flex;
  gap: 30px;
}

.column {
  flex: 1;
  flex-direction: column;
  gap: 10px; /* Adjust the space between the elements inside the columns */
}

/***************************************/
/*****   video wrapper settings    *****/
/***************************************/
.video-wrapper {
  position: relative;
  padding-bottom: 42.857%; /* 100 / (21 / 9) */
  padding-top: 0;
  height: 0;
  overflow: hidden;
}

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

/***************************************/
/*****      timeline settings      *****/
/***************************************/

:root {
  --white: #fff;
  --black: #323135;
  --crystal: #a8dadd;
  --columbia-blue: #cee9e4;
  --midnight-green: #01565b;
  --yellow: #e5f33d;
}


*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.timeline {
  position: relative;
  white-space: nowrap;
  padding: 0 10px;
  margin: 0 auto;
  display: grid;
  grid-gap: 20px;
  background: white; /* TODO: change background color for entire timeline area */
}

.timeline::before,
.timeline::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 30px;
  width: 100px;
  z-index: 2;
}

.timeline ol::-webkit-scrollbar {
  height: 12px;
}

.timeline ol::-webkit-scrollbar-thumb,
.timeline ol::-webkit-scrollbar-track {
  border-radius: 92px;
}

.timeline ol::-webkit-scrollbar-thumb {
  background: var(--midnight-green); /* TODO: change scroll bar color */
}

.timeline ol::-webkit-scrollbar-track {
  background: var(--yellow); /* TODO: change background color for scroll bar */
}

.timeline ol {
  font-size: 0;
  padding: 250px 0;
  transition: all 1s;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
}

.timeline ol li {
  position: relative;
  display: inline-block;
  list-style-type: none;
  width: 160px;
  height: 5px;
  background: green; /* TODO: change color for the timeline itself*/
  scroll-snap-align: start;
}

.timeline ol li:first-child {
  width: 80px; /* the first line-segment is shorter than others*/
}

.timeline ol li:last-child {
  width: 300px; /* the last line-segment is longer than others*/
}

.timeline ol li:not(:first-child) {
  margin-left: 14px;
}

.timeline ol li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(100% + 1px);
  bottom: 0;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  border-radius: 50%;
  background: red; /* TODO: change color for dots on the timeline*/
  z-index: 1;
}

.timeline ol li div {
  position: absolute;
  left: calc(100% + 7px);
  width: 280px;
  padding: 15px;
  font-size: 1rem;
  white-space: normal;
  color: white; /* TODO: change text color for text area*/
  background: blue; /* TODO: change background color for text area*/
  border-radius: 0 10px 10px 10px;
}

.timeline ol li div::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
}

.timeline ol li:nth-child(odd) div {
  top: -16px;
  transform: translateY(-100%);
  border-radius: 10px 10px 10px 0;
}

.timeline ol li:nth-child(odd) div::before {
  top: 100%;
  border-width: 8px 8px 0 0;
  border-color: blue transparent transparent transparent; /* TODO: change arrow color to match background color for text area*/
}

.timeline ol li:nth-child(even) div {
  top: calc(100% + 16px);
}

.timeline ol li:nth-child(even) div::before {
  top: -8px;
  border-width: 8px 0 0 8px;
  border-color: transparent transparent transparent blue; /* TODO: change arrow color to match background color for text area*/
}

.timeline time {
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 8px;
  color: white; /* TODO: change text color for TIME in the text area*/
}

/* GENERAL MEDIA QUERIES
–––––––––––––––––––––––––––––––––––––––––––––––––– */
@media screen and (max-width: 800px) {
  .timeline {
    display: block;
  }

  .timeline::before,
  .timeline::after {
    width: 50px;
  }

  .timeline::before {
    left: 0;
  }

  .timeline .info {
    display: none;
  }
}
