/**
 * Rotating Banner Slider Styles
 * For use with [sphm_new_rotating_masthead] shortcode (homepage)
 */

/* Homepage Title */
.homepage_title,
.homepage_title p {
	color: #000;
	text-align: center;
	max-width: 536px;
	margin: 0 auto;
	font-family: var(--styles-font-family-font-primary, Montserrat);
	font-size: var(--font-size-title-xl, 32px);
	font-style: normal;
	font-weight: 600;
	line-height: var(--line-height-title-xl, 38px);
}

/* Homepage Description */
.homepage_description,
.homepage_description p {
	color: #000;
	text-align: center;
	max-width: 680px;
	margin: 0 auto;
	padding-top: 8px;
	font-family: var(--font-family-font-secondary, Montserrat);
	font-size: var(--font-size-body-md, 16px);
	font-style: normal;
	font-weight: 500;
	line-height: var(--line-height-body-md, 24px);
}

/* Homepage Publications Listing */
.homepage_listing_publications {
	max-width: 1440px;
	margin: 0 auto;
	padding-top: 32px;
	padding-bottom: 32px;
}

body.home .homepage_listing_publications .publication-single {
	margin-bottom: 15px;
}

@media (max-width: 767.99px) {
	body.home .homepage_listing_publications .row > [class*="col-"]:last-child .publication-single {
		margin-bottom: 17px;
	}
}

@media (min-width: 768px) and (max-width: 991.99px) {
	body.home .homepage_listing_publications .row > .col-md-6:nth-last-child(-n + 2) .publication-single {
		margin-bottom: 17px;
	}
}

@media (min-width: 992px) and (max-width: 1199.99px) {
	body.home .homepage_listing_publications .row > .col-lg-4:nth-last-child(-n + 3) .publication-single {
		margin-bottom: 17px;
	}
}

@media (min-width: 1200px) {
	body.home .homepage_listing_publications .row > .col-xl-3:nth-last-child(-n + 4) .publication-single {
		margin-bottom: 17px;
	}
}

body.home .homepage_listing_publications.vc_row {
	margin-bottom: 0;
}

/* Slider Container */
.homepage_slider {
	max-width: 1216px;
	width: 100%;
	margin: 0 auto;
	padding-top: 32px;
	padding-bottom: 41px;
	position: relative;
}

/* Show only the first eligible banner before Slick initializes */
.homepage_slider:not(.slick-initialized) {
	overflow: hidden;
}

.homepage_slider:not(.slick-initialized) > .d-none {
	display: none !important;
}

.homepage_slider:not(.slick-initialized) > *:not(.d-none) ~ *:not(.d-none) {
	display: none !important;
}

.homepage_slider .slick-list {
	border-radius: 11.586px;
}

.homepage_slider .slick-dots {
	margin-top: -2.8em !important;
}

.homepage_slider .slick-arrow {
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: #0e3aa8;
	box-shadow: 0 0 25px rgba(0, 0, 0, 0.4);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px 20px;
	z-index: 2;
}

.homepage_slider .slick-arrow:before {
	content: none;
}

.homepage_slider .slick-arrow:focus {
	outline: none;
}

.homepage_slider .slick-prev {
	left: 16px;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20fill%3D%22%23F9F9F9%22%20d%3D%22M13.95.47a.75.75%2C0%2C0%2C1%2C1.05.07.74.74%2C0%2C0%2C1%2C.07%2C1.05L6.56%2C10l8.44%2C8.47a.75.75%2C0%2C0%2C1-.54%2C1.28.74.74%2C0%2C0%2C1-1.05-.07l-9-9a.75.75%2C0%2C0%2C1%2C0-1.06Z%22%2F%3E%3C%2Fsvg%3E");
}

.homepage_slider .slick-next {
	right: 16px;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20fill%3D%22%23F9F9F9%22%20d%3D%22M6.05.47A.75.75%2C0%2C0%2C0%2C5%2C.47.74.74%2C0%2C0%2C0%2C5%2C1.53L13.44%2C10%2C5%2C18.47a.75.75%2C0%2C0%2C0%2C.54%2C1.28A.74.74%2C0%2C0%2C0%2C6%2C19.53l9-9a.75.75%2C0%2C0%2C0%2C0-1.06Z%22%2F%3E%3C%2Fsvg%3E");
}

.homepage_slider img {
	width: 100%;
	border-radius: 10px;
}

/* Desktop/Mobile Image Toggle */
.homepage_slider .desktop_image {
	display: block;
}

.homepage_slider .mobile_image {
	display: none;
}

/* Slick Dots */
.homepage_slider .slick-dots {
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
	z-index: 10;
}

.homepage_slider .slick-dots li {
	margin: 0 5.022px;
	position: relative;
	display: inline-block;
	cursor: pointer;
	z-index: 11;
}

.homepage_slider .slick-dots li button {
	background: #d8d8da;
	border-radius: var(--border-border-radius-xl, 18.529px);
	width: 32.426px;
	height: 9.265px;
	filter: drop-shadow(2px 4px 8px rgba(50, 50, 58, 0.2));
	opacity: 1;
	cursor: pointer;
	border: 0;
	padding: 0;
	outline: none;
	position: relative;
	z-index: 12;
}

.homepage_slider .slick-dots li button:hover {
	opacity: 0.8;
}

.homepage_slider .slick-dots li button:before {
	content: "";
}

.homepage_slider .slick-dots .slick-active button {
	background: #0e3aa8;
	border-radius: var(--border-border-radius-xl, 18.529px);
	filter: none;
	box-shadow: 2px 4px 8px 0 rgba(50, 50, 58, 0.2);
	opacity: 1;
}

/* Responsive Styles */
@media (max-width: 767.99px) {
	.homepage_slider .desktop_image {
		display: none;
	}

	.homepage_slider .mobile_image {
		display: block;
	}
}

@media (max-width: 600px) {
	.homepage_slider .slick-dots li button {
		width: 28px;
		height: 8px;
	}

	.homepage_slider .slick-arrow {
		width: 32px;
		height: 32px;
		background-size: 16px 16px;
	}

	.homepage_slider .slick-prev {
		left: 16px;
	}

	.homepage_slider .slick-next {
		right: 16px;
	}
}
