#headerCarousel.carousel {
	height: calc(100vh - 48px);
    min-height: 400px;
    max-height: 500px;
	padding: 0 1em 1em;
}
#headerCarousel.carousel.fixedratio {
	height: auto !important;
    min-height: unset !important;
    max-height: unset !important;
	aspect-ratio: 5 / 7;
}

#headerCarousel .carousel-item-next, .carousel-item-prev, .carousel-item.active {
    display: flex !important;
}

#headerCarousel .carousel-caption {
    right: unset !important;
    left: unset !important;
	bottom: 0 !important;
    padding-top: unset !important;
    padding-bottom: unset !important;
    text-align: left !important;
	color: unset !important;
	max-height: 50%;
    overflow: hidden;
}

#headerCarousel .fw .carousel-caption {
	max-height: 100%;
    width: 100%;
    height: 100%
}

#headerCarousel .carousel-caption .carousel-block {
	margin: 0 2rem 2rem 2rem;
	padding: 0;
}

#headerCarousel.overlap .carousel-caption .carousel-block {
	margin: 0 2rem 4rem 2rem;
}

#headerCarousel .fw .carousel-caption .carousel-block {
	margin: 0;
    padding: 3rem;
    max-width: 700px;
}

#headerCarousel .fw .carousel-caption .align-items-start.justify-content-start .carousel-block {
	border-radius: 0 0 0 6rem;
	margin-left: 3rem;
}
#headerCarousel .fw .carousel-caption .align-items-end.justify-content-start .carousel-block {
	border-radius: 6rem 0 0 0;
    margin-left: 3rem;
}
#headerCarousel .fw .carousel-caption .align-items-start.justify-content-end .carousel-block {
	border-radius: 0 0 6rem 0;
    margin-right: 3rem;
}
#headerCarousel .fw .carousel-caption .align-items-end.justify-content-end .carousel-block {
	border-radius: 0 6rem 0 0;
    margin-right: 3rem;
}
#headerCarousel .fw .carousel-caption .justify-content-center.align-items-end .carousel-block {
	border-radius: 3rem 3rem 0 0;
    margin-top: 3rem;
	margin-right: 3rem;
	margin-left: 3rem;
}
#headerCarousel .fw .carousel-caption .justify-content-center.align-items-start .carousel-block {
	border-radius: 0 0 3rem 3rem;
    margin-right: 3rem;
	margin-left: 3rem;
	margin-bottom: 3rem;
}
#headerCarousel .fw .carousel-caption .justify-content-center.align-items-center .carousel-block {
	border-radius: 3rem;
    margin: 3rem;
}

#headerCarousel .carousel-caption .carousel-content * {
	text-overflow: ellipsis;
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

#headerCarousel .fw .carousel-caption .carousel-content * {
    -webkit-line-clamp: 4;
}

#headerCarousel .carousel-caption h2 {
	font-size: 1.5rem !important;
	font-weight: bold !important;
}

#headerCarousel .carousel-caption p {
	font-size: 1rem !important;
	font-weight: 300 !important;
}

#headerCarousel .carousel-inner {
	height: 100% !important;
	border-radius: 1em;
}

#headerCarousel .carousel-item {
    height: 100% !important;
}

#headerCarousel .carousel-item img {
    object-fit: cover !important;
    height: 50% !important;
	width: 100% !important;
}

#headerCarousel .carousel-item.ltr img {
	object-position: right bottom !important;
}

#headerCarousel .carousel-item.rtl img {
	object-position: left bottom !important;
}

#headerCarousel .carousel-item.fw img {
    height: 100% !important;
    object-position: center center !important;
}

#headerCarousel .carousel-indicators {
	height: calc(100% - 2em);
    right: 1em;    
	left: unset;
	bottom: unset;
	padding: 1em;
    flex-direction: column;
	justify-content: flex-start;
	margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
}

#headerCarousel .carousel-indicators [data-bs-target] {
    width: 5px;
    height: 5px;
}

#headerCarousel .carousel-control-next, .carousel-control-prev {
	width: unset;
    padding: 1em;
}

/* .carousel-indicators {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    justify-content: right !important;
    padding: 0 !important;
    margin-right: unset !important;
	margin-bottom: unset !important;
    width: calc(100% - 100px) !important;
    margin-left: auto !important;
    list-style: none !important;
}

.carousel-indicators [data-bs-target]{
	flex: 1 1 auto !important;
	width: unset !important;
	margin: 0 !important;
	height: 5px !important;
    border-bottom: none !important;
    opacity: .8 !important;
	transition: opacity .6s ease, background-color .6s ease !important;
}

.carousel-indicators .active {
    background-color: #D80A38 !important;
}

.carousel-indicators [data-bs-target]:hover {
    opacity: 1 !important;
} */

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {

	#headerCarousel.carousel.fixedratio {
		height: auto !important;
		aspect-ratio: 16 / 5;
	}
	
	#headerCarousel .carousel-caption h2 {
		font-size: 1.75rem !important;
	}
	
	#headerCarousel .carousel-caption p {
		font-size: 1rem !important;
	}

	#headerCarousel .carousel-item img {
		object-position: left bottom !important;
	}

	#headerCarousel .carousel-control-next, .carousel-control-prev {
		padding: 2em;
	}

	#headerCarousel .carousel-caption .carousel-block {
		margin: 0 3rem 3rem 3rem;
	}
	
	#headerCarousel.overlap .carousel-caption .carousel-block {
		margin: 0 3rem 3rem 3rem;
	}
	#headerCarousel .fw .carousel-caption .carousel-block {
		margin: 0;
	}
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
	#headerCarousel .carousel-caption h2 {
		font-size: 2rem !important;
	}
	
	#headerCarousel .carousel-caption p {
		font-size: 1rem !important;
	}
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	
	#headerCarousel .carousel {
		height: calc(100vh - 180px);
	}

	#headerCarousel .carousel-item img {
		height: 100% !important;
	}

	#headerCarousel .carousel-item.ltr img {
		object-position: right bottom !important;
	}

	#headerCarousel .carousel-item.rtl img {
		object-position: left bottom !important;
	}

	#headerCarousel .carousel-caption {
		position: relative !important;
		right: unset !important;
		bottom: unset !important;
		left: unset !important;
		color: unset !important;
		background: transparent !important;
    	border-radius: 0 !important;
		max-height: 100%;
	}

	#headerCarousel .fw .carousel-caption {
		position: absolute !important;
		width: 100%;
		height: 100%;
	}

	#headerCarousel .carousel-caption h2 {
		font-size: 2.5rem !important;
		color: #0939A3 !important;
	}
	
	#headerCarousel .carousel-caption p {
		font-size: 1.2rem !important;
		color: #414141 !important;
	}

	/* #headerCarousel .carousel-indicators {
		width: calc(50% - 100px) !important;
	} */

	#headerCarousel .fw .carousel-caption .carousel-block {
		padding: 4rem;
	}
}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	#headerCarousel .carousel-caption h2 {
		font-size: 2.75rem !important;
	}
	
	#headerCarousel .carousel-caption p {
		font-size: 1.25rem !important;
	}
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
	#headerCarousel .carousel-caption h2 {
		font-size: 3rem !important;
	}
	
	#headerCarousel .carousel-caption p {
		font-size: 1.5rem !important;
	}
}