/* Slider module – uses theme global slider (data-digifox-slider). style-dynamic.css enqueued separately. */

.module-slider {
	border-width: 0 !important;
}

.module-slider .digifox-slider-wrapper {
	position: relative;
	/* Fallback if dynamic CSS not loaded; dynamic CSS overrides with setting value */
	height: 75vh;
	min-height: 75vh;
}

/* Slider content (track + slides) must have a stacking context below arrows/dots */
.module-slider .digifox-slider-wrapper .digifox-slider {
	position: relative;
	z-index: 1;
	height: 100%;
	line-height: 0;
	margin-bottom: 0;
	text-align: center;
	overflow: hidden;
}

.module-slider .digifox-slider-wrapper .digifox-slider-track {
	height: 100%;
}

.module-slider .digifox-slider-wrapper .slider-item {
	height: 100%;
	background-size: cover;
	background-position: center;
	position: relative;
}

/* Arrows and dots above the slides */
.module-slider .digifox-slider-navs {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	height: auto;
	margin-top: 0;
	pointer-events: none;
	z-index: 10;
}
.module-slider .digifox-slider-navs .digifox-slider-prev,
.module-slider .digifox-slider-navs .digifox-slider-next {
	pointer-events: auto;
}
.module-slider .digifox-slider-prev {
	left: 25px;
	z-index: 10;
}
.module-slider .digifox-slider-next {
	right: 25px;
	z-index: 10;
}

.module-slider .digifox-slider-dots {
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	margin-top: 0;
	z-index: 10;
}

.slider-item-container {
	width: 100%;
	height: 100%;
	position: relative;
}

.slider-item-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height: 1;
	padding: 1em;
	min-width: 60%;
}

.module-slider--align-left .slider-item-container {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.module-slider--align-left .slider-item-align {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}

.module-slider--align-left .slider-item-container-inner {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding-left: 10px;
	box-sizing: border-box;
}

.module-slider--align-left .slider-item-content {
	position: relative;
	top: auto;
	left: auto;
	transform: none;
	min-width: 0;
	width: 100%;
	text-align: left;
	padding: 3em 0;
}

.module-slider--align-left .slider-item-content-logo {
	margin-left: 0;
	margin-right: auto;
}

.module-slider--align-left .slider-item-content-buttons.module-buttons {
	justify-content: flex-start;
}

.slider-item-content-title {
	font-size: 3rem;
	font-weight: 300;
	margin-bottom: 0.2em;
}

.module-slider .yellow {
	color: #ffe600;
}

.slider-item-content-intro {
	font-size: 1.8rem;
	font-weight: 300;
	margin-bottom: 0.2em;
}

.slider-item-content-buttons.module-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	justify-content: center;
	margin-top: 0.5em;
}

.slider-item-content-button {
	font-size: 1rem;
	font-weight: 200;
	position: relative;
}

.slider-item-content-logo {
	margin: 1em auto;
	display: block;
	max-width: 100%;
	height: auto;
}

@media (max-width: 767px) {
	.module-slider .digifox-slider-prev,
	.module-slider .digifox-slider-next {
		top: 90%;
	}
	.module-slider .digifox-slider-dots {
		display: none;
	}
}

@media (max-width: 540px) {
	.slider-item-content {
		min-width: 90%;
	}
	.slider-item-content-title {
		font-size: 2.4rem;
	}
	.slider-item-content-intro {
		font-size: 1.4rem;
	}
}

:root {
  --digifox-slide-padding-y: 1.5rem;
  --digifox-slide-content-min: 11rem;
}

/* Mobile: keep 4:3 / 16:9 ratio but grow slide when content + padding need more height. */
@media screen and (max-width: 767px) {
	.module-slider[data-slider-crop="16-9"] .digifox-slider-wrapper,
	.module-slider[data-slider-crop="4-3"] .digifox-slider-wrapper,
	.module-slider[data-slider-crop="16-9"] .digifox-slider-wrapper .digifox-slider,
	.module-slider[data-slider-crop="4-3"] .digifox-slider-wrapper .digifox-slider,
	.module-slider[data-slider-crop="16-9"] .digifox-slider-wrapper .digifox-slider-track,
	.module-slider[data-slider-crop="4-3"] .digifox-slider-wrapper .digifox-slider-track {
		height: auto !important;
		min-height: 0;
	}

	.module-slider[data-slider-crop="16-9"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item,
	.module-slider[data-slider-crop="4-3"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item {
		width: 100%;
		height: auto !important;
		min-height: calc(
			var(--digifox-slide-content-min, 11rem) +
			(2 * var(--digifox-slide-padding-y))
		);
	}

	.module-slider[data-slider-crop="16-9"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item {
		aspect-ratio: 16 / 9;
	}

	.module-slider[data-slider-crop="4-3"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item {
		aspect-ratio: 4 / 3;
	}

	.module-slider[data-slider-crop="16-9"][data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item,
	.module-slider[data-slider-crop="4-3"][data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item {
		width: 100%;
		height: auto !important;
		min-height: calc(
			var(--digifox-header-offset, var(--digifox-header-large, 120px)) +
			var(--digifox-slide-content-min, 11rem) +
			(2 * var(--digifox-slide-padding-y))
		);
	}

	.module-slider[data-slider-crop="16-9"][data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item {
		aspect-ratio: 16 / 9;
	}

	.module-slider[data-slider-crop="4-3"][data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item {
		aspect-ratio: 4 / 3;
	}

	.module-slider[data-slider-crop="16-9"] .slider-item-container,
	.module-slider[data-slider-crop="4-3"] .slider-item-container {
		display: flex;
		flex-direction: column;
		box-sizing: border-box;
		height: 100%;
		min-height: 100%;
		padding-bottom: var(--digifox-slide-padding-y);
	}

	.module-slider[data-slider-crop="16-9"][data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item-container,
	.module-slider[data-slider-crop="4-3"][data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item-container {
		padding-bottom: 0;
	}

	.module-slider[data-slider-crop="16-9"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item-container,
	.module-slider[data-slider-crop="4-3"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item-container {
		padding-top: var(--digifox-slide-padding-y);
	}

	.module-slider[data-slider-crop="16-9"] .slider-item-content,
	.module-slider[data-slider-crop="4-3"] .slider-item-content {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		transform: none !important;
		flex: 1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		min-height: 0;
	}

	.module-slider--align-left[data-slider-crop="16-9"] .slider-item-align,
	.module-slider--align-left[data-slider-crop="4-3"] .slider-item-align,
	.module-slider--align-left[data-slider-crop="16-9"] .slider-item-container-inner,
	.module-slider--align-left[data-slider-crop="4-3"] .slider-item-container-inner {
		flex: 1;
		display: flex;
		align-items: center !important;
		justify-content: flex-start;
		width: 100%;
		min-height: 0;
	}

	.module-slider[data-slider-crop="16-9"] .slider-item-content-title,
	.module-slider[data-slider-crop="4-3"] .slider-item-content-title {
		font-size: clamp(1.35rem, 5.5vw, 2.2rem);
		line-height: 1.15;
	}

	.module-slider[data-slider-crop="16-9"] .slider-item-content-intro,
	.module-slider[data-slider-crop="4-3"] .slider-item-content-intro {
		font-size: clamp(0.95rem, 3.8vw, 1.35rem);
		line-height: 1.35;
	}

	.module-slider[data-slider-crop="natural"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item-container {
		display: flex;
		flex-direction: column;
		padding-top: var(--digifox-slide-padding-y);
		padding-bottom: var(--digifox-slide-padding-y);
		height: 100%;
		min-height: 100%;
	}

	.module-slider[data-slider-crop="natural"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item-content {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		transform: none !important;
		flex: 1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		min-height: 0;
	}

	.module-slider--align-left[data-slider-crop="natural"][data-slideshow-viewport="yes"]:not([data-slideshow-header-delay="yes"]) .slider-item-align {
		flex: 1;
		display: flex;
		align-items: center !important;
		justify-content: flex-start;
		width: 100%;
		min-height: 0;
	}

	/* Full screen + header from start: centre in space below header, not full slide height. */
	.module-slider[data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item-container {
		display: grid !important;
		grid-template-rows: var(--digifox-header-offset, var(--digifox-header-large, 120px)) minmax(0, 1fr);
		grid-template-columns: 1fr;
		align-items: stretch;
		box-sizing: border-box;
		height: 100%;
		min-height: 100%;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.module-slider--align-left[data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item-container {
		align-items: stretch !important;
		justify-content: stretch !important;
	}

	.module-slider--align-left[data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item-align {
		grid-row: 2;
		grid-column: 1;
		height: auto !important;
		flex: 1;
		display: flex;
		align-items: center !important;
		justify-content: flex-start;
		width: 100%;
		min-height: 0;
	}

	.module-slider:not(.module-slider--align-left)[data-slideshow-viewport="no"]:not([data-slideshow-header-delay="yes"]) .slider-item-content {
		grid-row: 2;
		grid-column: 1;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		transform: none !important;
		flex: 1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		min-height: 0;
		align-self: stretch;
	}

	/* Delay header: full viewport, content centred in entire slide (header hidden off-screen). */
	.module-slider[data-slideshow-header-delay="yes"][data-slider-height="100"] .digifox-slider-wrapper,
	.module-slider[data-slideshow-header-delay="yes"][data-slider-height="100"] .digifox-slider-wrapper .digifox-slider,
	.module-slider[data-slideshow-header-delay="yes"][data-slider-height="100"] .digifox-slider-wrapper .digifox-slider-track {
		height: 100% !important;
		min-height: 100%;
	}

	.module-slider[data-slideshow-header-delay="yes"][data-slider-height="100"] .slider-item {
		width: 100%;
		height: 100% !important;
		min-height: 100%;
		aspect-ratio: auto !important;
	}

	.module-slider[data-slideshow-header-delay="yes"] .slider-item-container {
		display: grid !important;
		grid-template-rows: minmax(0, 1fr);
		grid-template-columns: 1fr;
		align-items: stretch;
		box-sizing: border-box;
		height: 100%;
		min-height: 100%;
		padding: 0 !important;
	}

	.module-slider--align-left[data-slideshow-header-delay="yes"] .slider-item-container {
		align-items: stretch !important;
		justify-content: stretch !important;
	}

	.module-slider--align-left[data-slideshow-header-delay="yes"] .slider-item-align {
		grid-row: 1;
		grid-column: 1;
		height: auto !important;
		display: flex;
		align-items: center !important;
		justify-content: flex-start;
		width: 100%;
		min-height: 0;
	}

	.module-slider:not(.module-slider--align-left)[data-slideshow-header-delay="yes"] .slider-item-content {
		grid-row: 1;
		grid-column: 1;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		transform: none !important;
		align-self: center;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		min-height: 0;
	}

	.module-slider[data-slideshow-header-delay="yes"] .slider-item-content-title {
		font-size: clamp(1.35rem, 5.5vw, 2.2rem);
		line-height: 1.15;
	}

	.module-slider[data-slideshow-header-delay="yes"] .slider-item-content-intro {
		font-size: clamp(0.95rem, 3.8vw, 1.35rem);
		line-height: 1.35;
	}
}
