.home main#wp--skip-link--target {
	margin-top: var(--wp--preset--spacing--30) !important;
}

.home main#wp--skip-link--target > .wp-block-group:first-child {
	padding-top: 0 !important;
}

.kw-hero-slider {
	position: relative;
	isolation: isolate;
	height: clamp(560px, 82vh, 920px);
	overflow: hidden;
}

.kw-hero-slider > .wp-block-cover {
	position: absolute;
	inset: 0;
	height: 100%;
	margin: 0 !important;
	min-height: 0 !important;
	opacity: 0;
	visibility: hidden;
	z-index: 0;
	transition: opacity .9s ease, visibility 0s linear .9s;
}

.kw-hero-slider:not(.kw-ready) > .wp-block-cover:first-child,
.kw-hero-slider > .wp-block-cover.is-active {
	opacity: 1;
	visibility: visible;
	z-index: 1;
	transition: opacity .9s ease;
}

.kw-hero-slider .wp-block-cover__inner-container {
	max-width: 900px;
	margin-inline: auto;
	padding-inline: clamp(1.25rem, 5vw, 3rem);
	text-align: center;
}

.kw-hero-slider .wp-block-heading {
	margin: 0 0 1rem;
	font-size: clamp(2rem, 4.6vw, 3.5rem);
	line-height: 1.08;
	letter-spacing: -.02em;
	text-wrap: balance;
	text-shadow: 0 2px 24px rgba(0, 0, 0, .45);
}

.kw-hero-slider .wp-block-cover__inner-container > p {
	margin: 0 auto 1.75rem;
	max-width: 58ch;
	font-size: clamp(1rem, 1.5vw, 1.2rem);
	line-height: 1.6;
	opacity: .92;
	text-shadow: 0 1px 12px rgba(0, 0, 0, .5);
}

.kw-hero-slider .wp-block-buttons {
	gap: .9rem;
}

.kw-hero-slider .wp-block-button__link {
	padding: .8rem 1.6rem;
	font-weight: 600;
}

.kw-hero-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, .32);
	border-radius: 50%;
	background: rgba(255, 255, 255, .12);
	color: #fff;
	cursor: pointer;
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	transition: background .25s ease, border-color .25s ease, transform .25s ease;
}

.kw-hero-arrow:hover,
.kw-hero-arrow:focus-visible {
	background: rgba(255, 255, 255, .12);
	border-color: rgba(255, 255, 255, .32);
	outline: none;
}

.kw-hero-arrow:focus-visible {
	box-shadow: 0 0 0 3px rgba(255, 255, 255, .55);
}

.kw-hero-prev {
	left: clamp(.75rem, 2.5vw, 2rem);
}

.kw-hero-next {
	right: clamp(.75rem, 2.5vw, 2rem);
}

.kw-hero-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: clamp(1rem, 3vh, 2rem);
	z-index: 5;
	display: flex;
	gap: .5rem;
	justify-content: center;
	align-items: center;
}

.kw-hero-dot {
	width: 9px;
	height: 9px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, .45);
	cursor: pointer;
	transition: width .3s ease, background .3s ease;
}

.kw-hero-dot[aria-current="true"] {
	width: 24px;
	background: #E94560;
}

.kw-hero-dot:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}

@media (max-width: 640px) {
	.kw-hero-slider {
		height: clamp(520px, 76vh, 680px);
	}

	.kw-hero-slider .wp-block-heading {
		font-size: clamp(1.75rem, 7vw, 2.4rem);
	}

	.kw-hero-arrow {
		width: 38px;
		height: 38px;
	}

	.kw-hero-dots {
		bottom: .9rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.kw-hero-dot,
	.kw-hero-arrow {
		transition: none;
	}
}
