/*
	README

	Modify this file as much or as little as needed.

	This file is shared across all CCL widgets in the Callout Tiles 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-callout-tiles {
	margin-bottom: var(--widget-margin-bottom);
	padding-top: var(--widget-padding-top);
	padding-bottom: var(--space-20);
}

.core-callout-tiles[data-width="full"] {
	padding: var(--widget-padding-top) 0 var(--space-20);
}

.core-callout-tiles:not([data-width="full"]) .slides {
	margin: 0 auto;
	padding: 0 2.6563rem;
	max-width: 1244px;
	gap: var(--space-4);
}

.core-callout-tiles .widget-header-inner {
	border-bottom: unset;
	gap: var(--space-5);
}

.core-callout-tiles .widget-header {
	--button-color: var(--green);
	padding: 0 2.6563rem;
	max-width: 1244px;
}

.core-callout-tiles .widget-title {
	font-size: var(--text-4xl);
	line-height: var(--leading-none);
	align-self: flex-start;
}

.core-callout-tiles .widget-view-all {
	text-transform: uppercase;
	font-size: var(--text-sm);
	padding: var(--space-4);
	transition: background-color var(--transition-appendix), color var(--transition-appendix);
}

.core-callout-tiles .widget-view-all:hover {
	--button-color: var(--blue-dark);
	color: var(--green);
}

.core-callout-tiles .slide .img-cont {
	border-radius: 8px;
	box-shadow: 7px 5px 12px #00000073;
}

.core-callout-tiles .slide .img-cont::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	background: var(--green);
	opacity: 0.7;
}

.core-callout-tiles .slide img {
	transform-origin: center;
}

.core-callout-tiles .slide .img-cont,
.core-callout-tiles .slide img {
	object-fit: cover;
}

.core-callout-tiles .slide .content-section {
	justify-content: flex-start;
	max-width: 70%;
}

.core-callout-tiles .slide .slide-title {
	font-size: var(--text-2xl-2);
	text-align: left;
	text-transform: uppercase;
	line-height: 1.14;
}

@media (min-width: 40em) {
	.core-callout-tiles .slide .slide-title {
		font-size: min(calc(16px + (28 - 16) * ((100vw - 640px) / (1023 - 640))), 28px);
	}
}
@media (min-width: 64em) {
	.core-callout-tiles .widget-title {
		font-size: var(--text-6xl);
	}
	
	.core-callout-tiles[data-slides-across="1"] .slide .slide-title {
		font-size: var(--text-5xl);
	}
	
	.core-callout-tiles[data-slides-across="2"] .slide .slide-title {
		font-size: var(--text-4xl);
	}
	
	.core-callout-tiles[data-slides-across="3"] .slide .slide-title {
		font-size: var(--text-3xl-1);
		line-height: 1.18;
	}
	
	.core-callout-tiles[data-width="full"][data-slides-across="3"] .slide .slide-title {
		font-size: var(--text-3xl);
	}
	
	.core-callout-tiles[data-slides-across="4"] .slide .slide-title {
		font-size: var(--text-xl);
	}
	
	.core-callout-tiles[data-width="full"][data-slides-across="4"] .slide .slide-title {
		font-size: var(--text-2xl);
	}

	.core-callout-tiles .slide .img-cont,
	.core-callout-tiles .slide img {
		aspect-ratio: 376 / 377;
	}

	.core-callout-tiles .widget-header-inner {
		flex-direction: row;
		align-self: flex-start;
	}

	.core-callout-tiles .widget-view-all {
		position: unset;
		bottom: unset;
	}

}