/* Final responsive safeguards. Loaded last so Design controls remain editable
   without allowing desktop values to make smaller screens uncomfortable. */
html,
body,
.wp-site-blocks {
	max-width: 100%;
	overflow-x: clip;
}

img,
video,
iframe {
	max-width: 100%;
	height: auto;
}

.as-hero-copy,
.as-heading,
.as-founder-strip,
.as-partnership-copy,
.as-eligibility-inner {
	min-width: 0;
}

@media (max-width: 900px) {
	.as-section {
		padding-top: min(var(--as-section-space, 128px), 104px);
		padding-bottom: min(var(--as-section-space, 128px), 104px);
	}

	.as-quote {
		background-attachment: scroll;
	}

	.as-map-wrap {
		min-height: 480px;
	}
}

@media (max-width: 700px) {
	.as-section {
		padding-top: min(var(--as-section-space, 128px), 78px);
		padding-bottom: min(var(--as-section-space, 128px), 78px);
	}

	.as-hero-copy {
		width: 100%;
		padding-inline: 1.1rem;
	}

	.as-hero h1 {
		font-size: clamp(2.15rem, 11vw, 3.4rem);
		line-height: .98;
		overflow-wrap: anywhere;
		text-wrap: balance;
	}

	.as-hero-copy p,
	.as-heading p,
	.as-founder-strip p,
	.as-partnership-copy p {
		overflow-wrap: anywhere;
	}

	.as-hero-actions,
	.as-hero-actions .as-button {
		width: min(100%, 22rem);
	}

	.as-map-wrap {
		min-height: 420px;
	}

	.as-map-modal {
		padding: 5rem 1.25rem 2rem;
	}

	.as-quote,
	.as-founder-strip,
	.as-partnership-copy,
	.as-eligibility-inner {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}

	.as-partnership-portrait,
	.as-partnership-portrait img {
		min-height: 400px;
	}

	.as-concierge-launcher {
		max-width: calc(100vw - 6.5rem);
	}

	.as-whatsapp-float {
		right: 1rem;
		bottom: 1rem;
	}

	.as-back-home,
	.as-back-top {
		right: 1rem;
	}
}

@media (max-width: 380px) {
	.as-hero h1 {
		font-size: 2.05rem;
	}

	.as-map-wrap {
		min-height: 380px;
	}

	.as-partnership-portrait,
	.as-partnership-portrait img {
		min-height: 350px;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}
