/*
	README

	Modify this file as much or as little as needed.

	This file is shared across all CCL widgets in the Slider Preview family. This enables the ability to
	a family of widgets in a single update without touching the structure of the widget and without needing
	to duplicate efforts across several widget-specific CSS files.
*/

.core-preview-slider {
	position: relative;
	padding-top: 0;
	padding-bottom: 44px;
	margin-bottom: 58px;
}

.core-preview-slider:after {
	content: '';
	position: absolute;
	width: 100%;
	height: 254px;
	background-color: var(--grey-light);
	left: 0;
	bottom: 42px;
	z-index: -1;
}

.core-preview-slider .slick-list {
	padding: 0 0 !important;
}

.core-preview-slider .slide .featured {
	position: absolute;
	z-index: 2;
	top: 20px;
	padding: 7px 26px;
}

.core-preview-slider .arrow-cont {
	position: static;
	justify-content: center;
	gap: 14px;
}

.core-preview-slider .arrow-cont .custom-arrow {
	height: 60px;
	width: 60px;
}

.core-preview-slider .widget-header {
	margin: 0 14px;
	margin-bottom: 25px;
	padding: 0 0;
}

.core-preview-slider .widget-header-inner {
	padding-bottom: 6px;
	border-bottom: 1px solid var(--grey-alt-1);
}

.core-preview-slider .widget-title {
	font-family: var(--georgia);
	font-weight: normal;
	font-size: 35px;
	line-height: 1.55;
	color: var(--grey-alt-2)
}

.core-preview-slider .featured {
	font-weight: 700;
	font-family: var(--sofia);
}

.core-preview-slider .widget-view-all {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(calc(-50% - 22.5px));
}

.core-preview-slider .slide {
	margin-bottom: 18px;
}

.core-preview-slider .slide .content-section  {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	padding: 15px 13px;
}

.core-preview-slider .slide .content-section > .inner {
	gap: 6px;
}

.core-preview-slider .slide .content-section .slide-title {
	color: var(--white);
	font-size: 26px;
	line-height: 1.24;
}

.core-preview-slider .slide .content-section .slide-title a:hover {
	text-decoration: none;
}

.core-preview-slider .slide .content-section .description {
	color: var(--white);
	font-size: 13px;
	line-height: 1.24;
}

.core-preview-slider .slide.overlap-image .img-cont {
	border-radius: 5px;
}

.core-preview-slider .slide.overlap-image .img-cont::after {
	background-image: linear-gradient(to bottom, rgba(0,0,0,.1) 0%, rgba(0,0,0,0.5) 100%);
}

.core-preview-slider .slick-dots {
	display: none !important;
	background-color: var(--grey-alt-1);
	flex-wrap: nowrap;
	align-items: center;
	width: auto;
	border-radius:  8px;
}

.core-preview-slider .slick-dots li {
	width: 100%;
	height: 7px;
	margin: 0;
}

.core-preview-slider .slick-dots li button {
	height: 7px;
	width: 100%;
	flex-grow:  1;
	border-radius: 8px;
	margin: 0;
	padding:  0 0 !important;
}

.core-preview-slider .slick-dots li button::before {
	display: none;
}

.core-preview-slider.slick-dots li.slick-active button {
	width: 100%;
}

.core-preview-slider .slick-dots li:first-child button {
	background-color: var(--blue);
	transition: transform .4s ease;
}

@media (min-width: 40em) {
	.core-preview-slider .slick-list {
		overflow: unset;
		overflow-x: clip;
	}

	.core-preview-slider .slide {
		padding: 0 0;
		margin-left: 12px;
		margin-right: 12px;
		transition: transform .4s ease;
	}

	.core-preview-slider .slide .img-cont {
		transition: box-shadow .4s ease;
	}

	.core-preview-slider .slide:hover {
		transform: translateY(-17px);
	}

	.core-preview-slider .slide:hover .img-cont {
		box-shadow: 1px 8px 15px 11px rgba(0,0,0,0.14);
	}

	.core-preview-slider .slide.overlap-image  .content-section {
		padding: 38px 22px;
	}

	.core-preview-slider .widget-view-all {
		position: static;
		transform: translateX(-54px);
	}

	.core-preview-slider .arrow-cont {
		justify-content: flex-end;
		padding-right: 53px;
	}

	.core-preview-slider .slick-dots {
		width: 320px;
		display: flex !important;
		left: 9px;
		bottom: -33px;
	}

	.core-preview-slider:after {
		width: 60vw;
	}
}

@media (min-width: 64em) {
	.core-preview-slider:after {
		width: 700px
	}

	.core-preview-slider .slick-list {
		padding: 0 151px !important;
	}

	.core-preview-slider .slide {
		padding: 0 0px;
		margin-bottom: 66px;
	}

	.core-preview-slider .widget-title {
		font-size: 55px;
		line-height: 1;
	}

	.core-preview-slider .widget-view-all {
		align-self: flex-end;
		margin-bottom: 10px;
	}

	.core-preview-slider .widget-view-all:after {
		background-size: 24px;
		right: -52px;
	}
	
	.core-preview-slider .slide .content-section .slide-title {
		font-size: 24px;
	}

	.core-preview-slider .slide .content-section .description {
		font-size: 17px;
		line-height: 1.36;
	}

	.core-preview-slider .widget-header {
		margin: 0 auto;
		margin-bottom: var(--space-6);
		width: 100%;
		min-width: 100%;
		padding: 0 0;
		padding-right: 50px;
		padding-left: 46px;
		}

	.core-preview-slider .widget-header-inner {
		padding-bottom: 29px;
		margin-bottom: 88px;
	}

	.core-preview-slider .slide .featured {
		top: 36px;
	}

	.core-preview-slider .slick-dots {
		width: 514px;
		left: 48px;
	}
}

@media (min-width: 80em) {

	.core-preview-slider .slide {
		margin-left: 25px;
		margin-right: 25px;
	}

	.core-preview-slider .slick-list {
		padding: 0 249px 0 243px !important;
	}

	.core-preview-slider:after {
		width: 956px
	}

	.core-preview-slider .slide .content-section > .inner {
		gap: 14px;
	}
	
	.core-preview-slider .slide .content-section .slide-title {
		font-size: 32px;
	}
	
	.core-preview-slider .slide .content-section .description {
		font-size: 17px;
		line-height: 1.36;
	}
}