.contact-preview-page main { overflow: hidden; background: #027f48; }
.contact-preview-hero { min-height: calc(100vh - 124px); display: flex; align-items: center; color: #fff; background: #027f48; }
.contact-preview-hero-inner { min-height: min(760px, calc(100vh - 124px)); display: flex; flex-direction: column; justify-content: center; padding-block: 90px 62px; }
.contact-preview-hero h1 { max-width: 1000px; margin: auto 0; color: #fff; font-size: clamp(72px, 10vw, 154px); font-weight: 800; letter-spacing: -.025em; line-height: .82; }
.contact-preview-links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 24px 30px; margin-top: 60px; }
.contact-preview-links a { color: #00ca64; font-family: "adapt-variable", "Adapt Compact", sans-serif; font-size: clamp(27px, 3.2vw, 50px); font-variation-settings: "wdth" 55, "wght" 800; font-weight: 800; line-height: 1; text-decoration: none; text-transform: uppercase; }
.contact-preview-links a:hover { color: #fff; }
.contact-preview-content { padding: 0 0 90px; background: #027f48; }
.contact-preview-box { padding: clamp(24px, 5vw, 72px); border-radius: 34px; background: #fff; }
.contact-preview-page .contact-faq { margin: 0; }
.contact-preview-page .contact-faq-nav > a span { font-size: 12px; }
.contact-preview-page .contact-faq-help a i { flex: 0 0 auto; font-size: 17px; }
.contact-preview-map { display: grid; grid-template-columns: minmax(240px, .45fr) minmax(0, 1fr); gap: clamp(42px, 7vw, 105px); align-items: center; margin-top: 100px; padding: 85px clamp(24px, 5vw, 72px); border-top: 1px solid #d9e0df; }
.contact-preview-map-copy > span { display: block; margin-bottom: 14px; color: #027f48; font-family: "adapt-variable", "Adapt Compact", sans-serif; font-size: 13px; font-variation-settings: "wdth" 55, "wght" 800; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.contact-preview-map h2 { margin: 0; color: #2b2b2b; font-size: clamp(46px, 5vw, 76px); line-height: .9; }
.contact-preview-map > img { width: 100%; }
.contact-preview-legend { display: flex; align-items: flex-start; gap: 13px; margin-top: 36px; color: #00d2b2; }
.contact-preview-legend i { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 2px; border-radius: 50%; background: #00d2b2; }
.contact-preview-legend p { margin: 0; font-weight: 750; line-height: 1.25; }

@media (max-width: 900px) {
	.contact-preview-hero { min-height: 700px; }
	.contact-preview-hero-inner { min-height: 700px; }
	.contact-preview-links { align-items: flex-start; flex-direction: column; }
	.contact-preview-map { grid-template-columns: 1fr; }
	.contact-preview-map-copy { max-width: 560px; }
}

@media (max-width: 650px) {
	.contact-preview-hero, .contact-preview-hero-inner { min-height: 610px; }
	.contact-preview-hero-inner { padding-block: 65px 45px; }
	.contact-preview-hero h1 { font-size: clamp(65px, 21vw, 94px); }
	.contact-preview-links { gap: 19px; margin-top: 45px; }
	.contact-preview-links a { font-size: 25px; overflow-wrap: anywhere; }
	.contact-preview-content { padding-bottom: 45px; }
	.contact-preview-box { width: min(calc(100% - 24px), var(--shell)); padding: 12px; border-radius: 25px; }
	.contact-preview-page .contact-faq { margin: 0; }
	.contact-preview-map { gap: 38px; margin-top: 45px; padding: 56px 15px 35px; }
}
