.iot-hero {
	position: relative;
	min-height: 100svh;
	overflow: clip;
	background: #061321;
	color: var(--iot-white);
}

.iot-hero__media,
.iot-hero__media img,
.iot-hero__shade {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.iot-hero__media img {
	object-fit: cover;
	object-position: center top;
}

.iot-hero__shade {
	background:
		linear-gradient(180deg, rgba(0, 0, 0, 0.34) 0%, rgba(0, 0, 0, 0.04) 38%, rgba(0, 0, 0, 0.82) 100%),
		linear-gradient(90deg, rgba(0, 0, 0, 0.82) 0%, rgba(0, 0, 0, 0.08) 56%, rgba(0, 0, 0, 0.18) 100%);
	pointer-events: none;
}

.iot-hero__content {
	position: relative;
	z-index: 1;
	display: grid;
	align-items: center;
	width: min(var(--iot-page-content-max), calc(100% - var(--iot-page-inline-space)));
	min-height: 100svh;
	margin: 0 auto;
	padding: 0;
}

.iot-hero__copy {
	align-self: center;
	max-width: min(58vw, calc(100% - var(--iot-booking-safe-width)));
}

.iot-hero h1 {
	margin: 0;
	color: var(--iot-white);
	font-family: var(--iot-font-serif);
	font-size: 50px;
	font-weight: 600;
	letter-spacing: -0.035em;
	line-height: 0.98;
	text-shadow: 0 6px 30px rgba(0, 0, 0, 0.42);
}

.iot-hero h1 span {
	color: var(--iot-gold);
}

.iot-hero__copy p {
	max-width: 540px;
	margin: 18px 0 0;
	color: var(--iot-white);
	font-size: 18px;
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.35;
	text-shadow: 0 5px 26px rgba(0, 0, 0, 0.48);
}

.iot-hero__copy strong {
	font-weight: 700;
}

.iot-hero--standalone {
	--iot-booking-safe-width: 0px;
	--iot-booking-overlap: 0px;
	--iot-booking-gap: 0px;
}

.iot-hero--standalone .iot-hero__copy {
	max-width: 58vw;
}

@media (max-width: 1099px) {
	.iot-hero {
		min-height: 100svh;
		overflow: clip;
	}

	.iot-hero__media,
	.iot-hero__shade {
		height: 100%;
	}

	.iot-hero__media img {
		object-position: center top;
	}

	.iot-hero__shade {
		background:
			linear-gradient(180deg, rgba(0, 0, 0, 0.14) 0%, rgba(0, 0, 0, 0.02) 42%, rgba(0, 0, 0, 0.88) 100%),
			linear-gradient(90deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.08));
	}

	.iot-hero__content {
		width: min(100% - 48px, 760px);
		min-height: 100svh;
		align-content: start;
		padding-top: 52svh;
		padding-bottom: calc(var(--iot-booking-overlap) + var(--iot-booking-gap));
		text-align: center;
	}

	.iot-hero__copy {
		max-width: none;
	}

	.iot-hero h1 {
		font-size: clamp(44px, 11.5vw, 58px);
		line-height: 0.95;
	}

	.iot-hero__copy p {
		max-width: 16em;
		margin: 12px auto 0;
		font-size: clamp(17px, 4.4vw, 22px);
		line-height: 1.16;
	}

	.iot-hero--standalone .iot-hero__copy {
		max-width: none;
	}
}

@media (max-width: 430px) {
	.iot-hero__content {
		width: calc(100% - 32px);
		padding-top: 52svh;
	}

	.iot-hero h1 {
		font-size: clamp(38px, 11vw, 47px);
	}

	.iot-hero__copy p {
		font-size: clamp(16px, 4.5vw, 19px);
	}
}
