/*
	README

	Do NOT modify this file directly; a number of widgets depend on this file being as is.
	Use the CSS file that is associated with your widget
	(ie. template: widget_template_custom_my_widget.html, CSS: widget_template_custom_my_widget.css)
	to make any theme-ing or overwrites you need.

	If you need to make significant changes such that overwriting would be complicated
	consider not using a different component from the Core Collection Library or
	not using the Core Component Library altogether.

	If you still feel the need to edit this file, copy/paste this CSS into a different file
	and use that instead.
*/

.core-callout-tiles {
	position: relative;
	margin-bottom: 30px;
}

.core-callout-tiles:not(.full-width) .slides {
	margin: 0 auto;
	padding: 0 15px;
	max-width: 1190px;
}

.core-callout-tiles .slides {
	display: flex;
	flex-wrap: wrap;
}

.core-callout-tiles .slides > * {
	flex: 1 1 calc(100% - 40px);
	margin: 20px;
}

@media (min-width: 640px) {
	.core-callout-tiles:not(.slides-across-1) .slides > * {
		flex: 1 1 calc(50% - 40px);
	}
}

@media (min-width: 1024px) {
	.core-callout-tiles:not(.slides-across-1) .slides > * {
		flex: 1 1 calc(33.33333% - 40px);
	}

	.core-callout-tiles:not(.slides-across-1) .slides > * {
		flex: 1 1 calc(25% - 40px);
	}
}

@supports (display: grid) {
	.core-callout-tiles .slides {
		display: grid;
		gap: 40px;
	}
	
	.core-callout-tiles.full-width .slides {
		gap: 8px;
	}
	
	@media (min-width: 640px) {	
		.core-callout-tiles.slides-across-2 .slides {
			grid-template-columns: repeat(2, 1fr);
		}

		.core-callout-tiles.slides-across-3 .slides {
			grid-template-columns: repeat(3, 1fr);
		}
		
		.core-callout-tiles.slides-across-4 .slides {
			grid-template-columns: repeat(2, 1fr);
		}	
	}
	
	@media (min-width: 1024px) {
		.core-callout-tiles.slides-across-4 .slides {
			grid-template-columns: repeat(4, 1fr);
		}
	}

	.core-callout-tiles .slide { margin: 0; }
}

.core-callout-tiles .slide {
	position: relative;
}

.core-callout-tiles .slide .content-section {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.core-callout-tiles .slide .img-cont {
	position: relative;
	overflow: hidden;
}

.core-callout-tiles .slide .img-cont::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to top, rgba(0,0,0,0.5), transparent);
	pointer-events: none;
}

.core-callout-tiles .slide img {
	display: block;
	width: 100%;
	transform-origin: center;
	transition: transform 300ms ease;
}

@media (hover: hover) {
	.core-callout-tiles .slide:hover .img-cont img {
		transform: scale(1.2);
	}
}

.core-callout-tiles .slide h4 {
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	text-align: center;
}

@media (min-width: 1024px) {
	.core-callout-tiles.slides-across-1 .slide h4 {
		font-size: 40px;
	}
	
	.core-callout-tiles.slides-across-2 .slide h4 {
		font-size: 35px;
	}
	
	.core-callout-tiles.slides-across-3 .slide h4 {
		font-size: 25px;
	}
	
	.core-callout-tiles.full-width.slides-across-3 .slide h4 {
		font-size: 30px;
	}
	
	.core-callout-tiles.slides-across-4 .slide h4 {
		font-size: 20px;
	}
	
	.core-callout-tiles.full-width.slides-across-4 .slide h4 {
		font-size: 25px;
	}
}