/* Based on https://hugocodex.org/add-ons/slider-carousel/
            https://discourse.gohugo.io/t/how-to-add-a-carousel-to-the-creative-portfolio-theme/42356/5
*/

.carousel {
  position: relative;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.carousel ul {overflow: auto; display: flex; flex-wrap: nowrap; scroll-snap-type: x mandatory; scroll-snap-points-y: repeat(100%); scroll-behavior: smooth; background: transparent; -ms-overflow-style: none; scrollbar-width: none; margin: 0; padding: 0;}
.carousel ul::-webkit-scrollbar {display: none; /* Hide scrollbar for Chrome, Safari and Opera */}
.carousel ul li {position: relative; min-width: 100%; list-style: none; background: url() center center / cover no-repeat; scroll-snap-align: start;}
.carousel ul li > * {position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.carousel ul li > div {display: flex; flex-direction: row; align-items: center;}
.carousel-text {display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 0 50px 0 50px; width: 66.7%; min-width: 40rem;}
.carousel-headline {font-weight: 400; font-size: 2.2rem; position: relative; text-decoration: underline;}
.carousel-text-body {font-weight: normal; font-size: 1.5rem; position: relative;}
.carousel ol {position: absolute; bottom: 15px; display: flex; justify-content: center; left: 50%; transform: translateX(-50%); z-index: 9;}
.carousel ol li {list-style: none; padding: 0 5px;}
.carousel ol li a {display: block; height: 10px; width: 10px; border: 2px solid white; background: transparent; border-radius: 100%;}
.carousel ol li.selected a {background: white;}
.carousel .prev, .carousel .next {display: none; user-select:none; cursor: pointer; font-size: 50px; position: absolute; left: 0; padding: 15px 15px 30px; top: 50%; transform: translateY(-50%); z-index: 9; line-height: 0;}
.carousel .next {left: auto; right: 0;}
