/* Contact us — Figma 749:6157. ITG min(rem, vw) against 1920. */

@media (prefers-reduced-motion: no-preference) {
	html:has(body.page-template-page-contact-us),
	html:has(body.page-contact-us),
	html:has(body.page-contact) {
		scroll-behavior: smooth;
	}
}

.kaya-dest-hero--listing:has(+ .kaya-contact-trust) {
	overflow: visible;
}

.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__strip img {
	display: none;
}

.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__strip::after {
	content: "";
	display: block;
	width: 100%;
	height: var(--kaya-dest-hero-strip-leaf-h);
	background-color: var(--kaya-orange-light);
	-webkit-mask-image: url("../assets/travel-cta/top-strip.svg");
	mask-image: url("../assets/travel-cta/top-strip.svg");
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: top;
	mask-position: top;
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
}

@media only screen and (max-width: 999px) {
	/* Figma Mobile Contact 1210:32720 hero.
	   Mask 1210:32722 is 393×394 from y=112. Copy frame 1210:32789
	   starts 140px into that mask with 40px padding, so the heading
	   is 180px from the hero top. Lace 1210:32794 is the 1920×23
	   window at x=-764, painted cream to meet the trust bar. */
	.kaya-dest-hero--listing:has(+ .kaya-contact-trust) {
		min-height: 0;
		background-image: linear-gradient(77.29deg, var(--kaya-brown) 0%, #6d0f12 50%, var(--kaya-orange) 100%);
	}

	.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__bg img {
		left: -1444px;
		top: -418.26px;
		width: 3026px;
		height: 1751.51px;
	}

	.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__inner {
		justify-content: flex-start;
		min-height: 0;
		gap: 20px;
		padding: 180px 20px 63px;
	}

	.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__heading {
		width: 100%;
		font-size: 36px;
		line-height: 36px;
		letter-spacing: -1.08px;
	}

	.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__body {
		width: 100%;
		margin: 0;
		padding: 0;
		font-size: 16px;
		line-height: 24px;
	}

	.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__strip {
		height: 23px;
		overflow: hidden;
	}

	.kaya-dest-hero--listing:has(+ .kaya-contact-trust) .kaya-dest-hero__strip::after {
		width: 1920px;
		height: 23px;
		margin-left: -764px;
		background-color: var(--kaya-orange-light);
		-webkit-mask-size: 1920px 23px;
		mask-size: 1920px 23px;
		-webkit-mask-position: left top;
		mask-position: left top;
	}

	.kaya-dest-hero--listing:has(+ .kaya-contact-trust)::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 4;
		height: 2px;
		background-color: var(--kaya-orange-light);
		pointer-events: none;
	}
}

@media only screen and (max-width: 999px) {
	/* Figma Mobile Contact carousel 1210:32834.
	   One item centered, 24px above the 8px dots, cream band,
	   white 1920×23 lace at the bottom into the white section. */
	.kaya-contact-trust {
		margin-top: 0;
		padding: 20px 0 49px;
		background-color: var(--kaya-orange-light);
		background-image: none;
	}

	.kaya-contact-trust .kaya-stats__inner {
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		width: 100%;
		height: 73.702px;
		gap: 0;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.kaya-contact-trust .kaya-stats__inner::-webkit-scrollbar {
		display: none;
	}

	.kaya-contact-trust .kaya-stats__item {
		flex: 0 0 100%;
		justify-content: center;
		align-items: center;
		gap: 12px;
		min-width: 0;
		scroll-snap-align: start;
		box-sizing: border-box;
	}

	.kaya-contact-trust .kaya-stats__label {
		font-family: "Raleway", sans-serif;
		font-weight: 900;
		font-size: 16px;
		line-height: normal;
		letter-spacing: -0.48px;
		white-space: nowrap;
	}

	.kaya-contact-trust .kaya-stats__icon--insurance {
		--kaya-stats-blob-w: 72px;
		--kaya-stats-blob-h: 67.191px;
		--kaya-stats-leaf-w: 31.531px;
		--kaya-stats-leaf-h: 40px;
		--kaya-stats-leaf-l: 18px;
		--kaya-stats-leaf-t: 12.74px;
	}

	.kaya-contact-trust .kaya-stats__icon--support247 {
		--kaya-stats-blob-w: 72px;
		--kaya-stats-blob-h: 73.702px;
		--kaya-stats-leaf-w: 40px;
		--kaya-stats-leaf-h: 37.352px;
		--kaya-stats-leaf-l: 15px;
		--kaya-stats-leaf-t: 18px;
	}

	.kaya-contact-trust .kaya-stats__icon--diligence {
		--kaya-stats-blob-w: 72px;
		--kaya-stats-blob-h: 67.191px;
		--kaya-stats-leaf-w: 29.55px;
		--kaya-stats-leaf-h: 40.201px;
		--kaya-stats-leaf-l: 18.99px;
		--kaya-stats-leaf-t: 11.4px;
	}

	.kaya-contact-trust .kaya-stats__icon--risk {
		--kaya-stats-blob-w: 72px;
		--kaya-stats-blob-h: 67.191px;
		--kaya-stats-leaf-w: 40px;
		--kaya-stats-leaf-h: 32.9px;
		--kaya-stats-leaf-l: 12.79px;
		--kaya-stats-leaf-t: 12.99px;
	}

	.kaya-contact-trust .kaya-stats__icon--years {
		--kaya-stats-blob-w: 40px;
		--kaya-stats-blob-h: 37.3px;
		--kaya-stats-leaf-w: 25.1px;
		--kaya-stats-leaf-h: 19.2px;
		--kaya-stats-leaf-l: 6.3px;
		--kaya-stats-leaf-t: 8.7px;
	}

	.kaya-contact-trust .kaya-stats__icon--safeguarding {
		--kaya-stats-blob-w: 40px;
		--kaya-stats-blob-h: 38.6px;
		--kaya-stats-leaf-w: 16.4px;
		--kaya-stats-leaf-h: 22.3px;
		--kaya-stats-leaf-l: 13px;
		--kaya-stats-leaf-t: 7.2px;
	}

	.kaya-contact-trust .kaya-stats__icon--partners {
		--kaya-stats-blob-w: 40px;
		--kaya-stats-blob-h: 40.9px;
		--kaya-stats-leaf-w: 20.8px;
		--kaya-stats-leaf-h: 22.3px;
		--kaya-stats-leaf-l: 8.6px;
		--kaya-stats-leaf-t: 9px;
	}

	.kaya-contact-trust .kaya-stats__icon--destinations {
		--kaya-stats-blob-w: 39.3px;
		--kaya-stats-blob-h: 40px;
		--kaya-stats-leaf-w: 18.3px;
		--kaya-stats-leaf-h: 24.1px;
		--kaya-stats-leaf-l: 10.9px;
		--kaya-stats-leaf-t: 6.7px;
	}

	.kaya-contact-trust .kaya-stats__icon--support {
		--kaya-stats-blob-w: 40px;
		--kaya-stats-blob-h: 36.2px;
		--kaya-stats-leaf-w: 24px;
		--kaya-stats-leaf-h: 15.9px;
		--kaya-stats-leaf-l: 7.3px;
		--kaya-stats-leaf-t: 11.3px;
	}

	/* The row is as tall as the tallest icon. Insurance sits at the top,
	   so 17.49px under the row leaves 24px under that icon. */
	.kaya-contact-trust .kaya-stats__dots {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		margin: 17.49px 0 0;
		padding: 0;
	}

	.kaya-contact-trust .kaya-stats__dot {
		width: 8px;
		height: 8px;
		min-width: 0;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: rgba(53, 19, 26, 0.2);
		cursor: pointer;
	}

	.kaya-contact-trust .kaya-stats__dot.is-active {
		background: var(--kaya-brown);
	}

	.kaya-contact-trust .kaya-stats__strip {
		bottom: 0;
		height: 23px;
		overflow: hidden;
	}

	.kaya-contact-trust .kaya-stats__strip img {
		display: none;
	}

	.kaya-contact-trust .kaya-stats__strip::after {
		content: "";
		display: block;
		width: 1920px;
		height: 23px;
		margin-left: -764px;
		background-color: var(--kaya-white);
		-webkit-mask-image: url("../assets/travel-cta/top-strip.svg");
		mask-image: url("../assets/travel-cta/top-strip.svg");
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: 1920px 23px;
		mask-size: 1920px 23px;
		-webkit-mask-position: left top;
		mask-position: left top;
	}

	.kaya-contact-trust::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 4;
		height: 2px;
		background-color: var(--kaya-white);
		pointer-events: none;
	}

	/* Five homepage stats: same mobile row as .kaya-stats on the homepage. */
	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) {
		--kaya-stats-fs: 12px;
		--kaya-stats-item-gap: 12px;
		padding: 32px 20px 40px;
		background-size: 100% 100%;
	}

	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) .kaya-stats__strip,
	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5))::after {
		display: none;
	}

	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) .kaya-stats__inner {
		align-items: center;
		height: auto;
	}

	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) .kaya-stats__item {
		flex-basis: 50%;
		justify-content: flex-start;
		gap: var(--kaya-stats-item-gap);
	}

	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) .kaya-stats__label {
		font-family: "Montserrat", sans-serif;
		font-weight: 900;
		font-size: var(--kaya-stats-fs);
		line-height: 16px;
		letter-spacing: -0.03em;
		white-space: normal;
	}

	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) .kaya-stats__dots {
		margin-top: 24px;
	}

	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) .kaya-stats__dot {
		background: #d3c6c1;
	}

	.kaya-contact-trust:has(.kaya-stats__item:nth-child(5)) .kaya-stats__dot.is-active {
		background: var(--kaya-brown);
	}
}

.kaya-stats__icon--insurance {
	--kaya-stats-blob-w: min(4.5rem, 3.75vw);
	--kaya-stats-blob-h: min(4.1994375rem, 3.49953125vw);
	--kaya-stats-leaf-w: min(1.9706875rem, 1.6422395833vw);
	--kaya-stats-leaf-h: min(2.5rem, 2.0833333333vw);
	--kaya-stats-leaf-l: min(1.125rem, 0.9375vw);
	--kaya-stats-leaf-t: min(0.79625rem, 0.6635416667vw);
}

.kaya-stats__icon--support247 {
	--kaya-stats-blob-w: min(4.5rem, 3.75vw);
	--kaya-stats-blob-h: min(4.606375rem, 3.8386458333vw);
	--kaya-stats-leaf-w: min(2.5rem, 2.0833333333vw);
	--kaya-stats-leaf-h: min(2.3345rem, 1.9454166667vw);
	--kaya-stats-leaf-l: min(0.9375rem, 0.78125vw);
	--kaya-stats-leaf-t: min(1.125rem, 0.9375vw);
}

.kaya-stats__icon--diligence {
	--kaya-stats-blob-w: min(4.5rem, 3.75vw);
	--kaya-stats-blob-h: min(4.1994375rem, 3.49953125vw);
	--kaya-stats-leaf-w: min(1.846875rem, 1.5390625vw);
	--kaya-stats-leaf-h: min(2.5125625rem, 2.0938020833vw);
	--kaya-stats-leaf-l: min(1.186875rem, 0.9890625vw);
	--kaya-stats-leaf-t: min(0.7125rem, 0.59375vw);
}

.kaya-stats__icon--risk {
	--kaya-stats-blob-w: min(4.5rem, 3.75vw);
	--kaya-stats-blob-h: min(4.1994375rem, 3.49953125vw);
	--kaya-stats-leaf-w: min(2.5rem, 2.0833333333vw);
	--kaya-stats-leaf-h: min(2.05625rem, 1.7135416667vw);
	--kaya-stats-leaf-l: min(0.799375rem, 0.6661458333vw);
	--kaya-stats-leaf-t: min(0.811875rem, 0.6765625vw);
}

.kaya-stats__icon--risk .kaya-stats__icon-leaf {
	transform: rotate(-2deg);
	transform-origin: center center;
}

/* Five single-line labels share one desktop row. Items shrink and the
   label wraps on spaces, at the same icon size and type as the homepage. */
@media only screen and (min-width: 1000px) {
	.kaya-contact-trust .kaya-stats__inner {
		width: 100%;
		max-width: var(--kaya-stats-inner);
		min-width: 0;
	}

	.kaya-contact-trust .kaya-stats__item {
		flex: 1 1 0%;
		min-width: 0;
	}

	.kaya-contact-trust .kaya-stats__label {
		flex: 1 1 auto;
		min-width: 0;
		text-wrap: balance;
	}

	.kaya-contact-trust .kaya-stats__line {
		min-width: 0;
		white-space: normal;
	}
}

.kaya-contact {
	--kaya-contact-pad-x: min(6.25rem, 5.2083333333vw);
	--kaya-contact-pad-y: min(7.5rem, 6.25vw);
	--kaya-contact-inner: min(107.5rem, 89.5833333333vw);
	--kaya-contact-copy-w: min(52.5rem, 43.75vw);
	--kaya-contact-form-w: min(43.3125rem, 36.09375vw);
	--kaya-contact-form-h: 2971px;
	--kaya-contact-form-radius: min(1.25rem, 1.0416666667vw);
	--kaya-contact-gap: min(11.6875rem, 9.7395833333vw);
	--kaya-contact-intro-gap: min(1.75rem, 1.4583333333vw);
	--kaya-contact-title-gap: min(1.25rem, 1.0416666667vw);
	--kaya-contact-copy-gap: min(1rem, 0.8333333333vw);
	--kaya-contact-block-gap: min(5rem, 4.1666666667vw);
	--kaya-contact-columns-gap: min(2.5rem, 2.0833333333vw);
	--kaya-contact-office-gap: min(5rem, 4.1666666667vw);
	--kaya-contact-office-stack: min(1.25rem, 1.0416666667vw);
	--kaya-contact-row-gap: min(0.25rem, 0.2083333333vw);
	--kaya-contact-icon-gap: min(0.5rem, 0.4166666667vw);
	--kaya-contact-value-w: min(14.3125rem, 11.9270833333vw);
	--kaya-contact-heading-fs: min(2.5rem, 2.0833333333vw);
	--kaya-contact-office-fs: min(1.5rem, 1.25vw);
	--kaya-contact-body-fs: min(1rem, 0.8333333333vw);
	--kaya-contact-body-lh: min(1.5rem, 1.25vw);
	--kaya-contact-eyebrow-fs: min(0.75rem, 0.625vw);
	--kaya-contact-eyebrow-py: min(0.5rem, 0.4166666667vw);
	--kaya-contact-eyebrow-px: min(0.75rem, 0.625vw);
	--kaya-contact-eyebrow-radius: min(0.625rem, 0.5208333333vw);
	--kaya-contact-actions-gap: min(0.75rem, 0.625vw);
	--kaya-contact-cta-py: min(1rem, 0.8333333333vw);
	--kaya-contact-cta-px: min(1.25rem, 1.0416666667vw);
	--kaya-contact-cta-gap: min(1rem, 0.8333333333vw);
	--kaya-contact-cta-radius: min(0.625rem, 0.5208333333vw);
	--kaya-contact-cta-fs: min(0.875rem, 0.7291666667vw);
	--kaya-contact-cta-lh: min(1.0625rem, 0.8854166667vw);
	--kaya-contact-cta-border: 1.5px;
	--kaya-contact-cta-icon-w: min(1.25rem, 1.0416666667vw);
	--kaya-contact-cta-icon-h: min(0.875rem, 0.7291666667vw);
	--kaya-contact-cta-leaf-w: min(1.317375rem, 1.0978125vw);
	--kaya-contact-cta-leaf-h: min(0.9423125rem, 0.7852604167vw);
	--kaya-contact-cta-leaf-t: min(0.0336875rem, 0.0280729167vw);
	--kaya-contact-hours-w: min(1.25rem, 1.0416666667vw);
	--kaya-contact-hours-h: min(1.16725rem, 0.9727083333vw);
	--kaya-contact-phone-w: min(1.25rem, 1.0416666667vw);
	--kaya-contact-phone-h: min(1.296375rem, 1.0803125vw);
	--kaya-contact-email-w: min(1.2499375rem, 1.0416145833vw);
	--kaya-contact-email-h: min(0.841375rem, 0.7011458333vw);

	width: 100%;
	box-sizing: border-box;
	padding: var(--kaya-contact-pad-y) var(--kaya-contact-pad-x);
	background-color: var(--kaya-white);
}

.kaya-contact__inner {
	display: block;
	width: var(--kaya-contact-inner);
	max-width: 100%;
	margin: 0 auto;
}

.kaya-contact__copy {
	display: flex;
	flex-direction: column;
	gap: var(--kaya-contact-block-gap);
	width: 100%;
	max-width: 800px;
	margin-right: auto;
	margin-left: auto;
}

.kaya-contact__intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
}

.kaya-contact__eyebrow {
	display: inline-flex;
	align-items: center;
	margin: 0 0 var(--kaya-contact-title-gap);
	padding: var(--kaya-contact-eyebrow-py) var(--kaya-contact-eyebrow-px);
	border: 1px solid var(--kaya-orange);
	border-radius: var(--kaya-contact-eyebrow-radius);
	background-color: var(--kaya-orange);
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
	font-size: var(--kaya-contact-eyebrow-fs);
	line-height: var(--kaya-contact-eyebrow-fs);
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--kaya-brown);
}

.kaya-contact__heading {
	margin: 0 0 var(--kaya-contact-copy-gap);
	padding: 0;
	font-family: "Montserrat", sans-serif;
	font-weight: 900;
	font-size: var(--kaya-contact-heading-fs);
	line-height: var(--kaya-contact-heading-fs);
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: var(--kaya-brown);
}

.kaya-contact__columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	width: 100%;
	gap: var(--kaya-contact-columns-gap);
}

.kaya-contact__col {
	min-width: 0;
}

.kaya-contact__body,
.kaya-contact__email,
.kaya-contact__col-text {
	margin: 0 0 var(--kaya-contact-intro-gap);
	padding: 0;
	font-family: "Montserrat", sans-serif;
	font-weight: 500;
	font-size: var(--kaya-contact-body-fs);
	line-height: var(--kaya-contact-body-lh);
	color: var(--kaya-brown);
	font-variant-numeric: lining-nums proportional-nums;
	font-feature-settings: "lnum" 1, "pnum" 1;
}

.kaya-contact__col:first-child .kaya-contact__col-text {
	margin-bottom: 0;
}

.kaya-contact__body p,
.kaya-contact__col-text p {
	margin: 0;
}

.kaya-contact__body p + p,
.kaya-contact__col-text p + p {
	margin-top: var(--kaya-contact-copy-gap);
}

.kaya-contact__email {
	margin: var(--kaya-contact-intro-gap) 0 0;
}

.kaya-contact__email a {
	color: var(--kaya-maroon);
	text-decoration: none;
}

.kaya-contact__email a:hover,
.kaya-contact__email a:focus {
	text-decoration: underline;
}

.kaya-contact__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--kaya-contact-actions-gap);
}

.kaya-contact__btn {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	box-sizing: border-box;
	gap: var(--kaya-contact-cta-gap);
	padding: var(--kaya-contact-cta-py) var(--kaya-contact-cta-px);
	border-radius: var(--kaya-contact-cta-radius);
	text-decoration: none;
}

.kaya-contact__btn--primary {
	background: var(--kaya-maroon);
	border: var(--kaya-contact-cta-border) solid var(--kaya-maroon);
	color: var(--kaya-white);
}

.kaya-contact__btn--secondary {
	background: transparent;
	border: var(--kaya-contact-cta-border) solid var(--kaya-maroon);
	color: var(--kaya-maroon);
}

.kaya-contact__btn-label {
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
	font-size: var(--kaya-contact-cta-fs);
	line-height: var(--kaya-contact-cta-lh);
	letter-spacing: 0;
	text-transform: uppercase;
	white-space: nowrap;
}

.kaya-contact__btn--primary .kaya-contact__btn-label {
	color: var(--kaya-white);
}

.kaya-contact__btn--secondary .kaya-contact__btn-label {
	color: var(--kaya-maroon);
}

.kaya-contact__btn-icon {
	display: block;
	position: relative;
	width: var(--kaya-contact-cta-icon-w);
	height: var(--kaya-contact-cta-icon-h);
	overflow: visible;
	flex: 0 0 var(--kaya-contact-cta-icon-w);
}

.kaya-contact__btn-icon img {
	display: block;
	position: absolute;
	top: calc(-1 * var(--kaya-contact-cta-leaf-t));
	left: 0;
	width: var(--kaya-contact-cta-leaf-w);
	height: var(--kaya-contact-cta-leaf-h);
	max-width: none;
}

.kaya-contact__btn--primary:hover,
.kaya-contact__btn--primary:focus {
	background: var(--kaya-brown);
	border-color: var(--kaya-brown);
	opacity: 1;
	color: var(--kaya-white);
}

.kaya-contact__btn--primary:hover .kaya-contact__btn-label,
.kaya-contact__btn--primary:focus .kaya-contact__btn-label {
	color: var(--kaya-white);
}

.kaya-contact__btn--secondary:hover,
.kaya-contact__btn--secondary:focus {
	background: var(--kaya-maroon);
	border-color: var(--kaya-maroon);
	opacity: 1;
	color: var(--kaya-white);
}

.kaya-contact__btn--secondary:hover .kaya-contact__btn-label,
.kaya-contact__btn--secondary:focus .kaya-contact__btn-label {
	color: var(--kaya-white);
}

.kaya-contact-offices {
	display: flex;
	align-items: flex-start;
	gap: var(--kaya-contact-office-gap);
	width: 100%;
}

.kaya-contact-offices.kaya-contact-offices--hidden {
	display: none;
}

.kaya-contact-offices__rule {
	flex: 0 0 auto;
	align-self: stretch;
	width: 0;
	border-left: 1px solid var(--kaya-orange);
}

.kaya-contact-office {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--kaya-contact-office-stack);
}

.kaya-contact-office__heading {
	margin: 0;
	padding: 0;
	font-family: "Montserrat", sans-serif;
	font-weight: 900;
	font-size: var(--kaya-contact-office-fs);
	line-height: var(--kaya-contact-office-fs);
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: var(--kaya-brown);
}

.kaya-contact-office__row {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--kaya-contact-row-gap);
}

.kaya-contact-office__label {
	display: flex;
	align-items: center;
	gap: var(--kaya-contact-icon-gap);
	margin: 0;
	padding: 0;
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: var(--kaya-contact-body-fs);
	line-height: normal;
	color: var(--kaya-brown);
}

.kaya-contact-office__icon {
	position: relative;
	display: block;
	flex: 0 0 auto;
	overflow: visible;
}

.kaya-contact-office__icon img {
	display: block;
	max-width: none;
}

.kaya-contact-office__icon--hours {
	width: var(--kaya-contact-hours-w);
	height: var(--kaya-contact-hours-h);
}

.kaya-contact-office__icon--hours img {
	width: var(--kaya-contact-hours-w);
	height: var(--kaya-contact-hours-h);
}

.kaya-contact-office__icon--phone {
	width: var(--kaya-contact-phone-w);
	height: var(--kaya-contact-phone-h);
}

.kaya-contact-office__icon--phone img {
	width: var(--kaya-contact-phone-w);
	height: var(--kaya-contact-phone-h);
}

.kaya-contact-office__icon--email {
	width: var(--kaya-contact-email-w);
	height: var(--kaya-contact-email-h);
}

.kaya-contact-office__icon--email img {
	width: var(--kaya-contact-email-w);
	height: var(--kaya-contact-email-h);
}

.kaya-contact-office__value {
	margin: 0;
	padding: 0;
	width: var(--kaya-contact-value-w);
	max-width: 100%;
	font-family: "Montserrat", sans-serif;
	font-weight: 500;
	font-size: var(--kaya-contact-body-fs);
	line-height: var(--kaya-contact-body-lh);
	color: var(--kaya-brown);
	font-variant-numeric: lining-nums proportional-nums;
	font-feature-settings: "lnum" 1, "pnum" 1;
}

.kaya-contact-office__value a {
	color: var(--kaya-maroon);
	text-decoration: none;
}

.kaya-contact-office__value a:hover,
.kaya-contact-office__value a:focus {
	text-decoration: underline;
}

#group-program-questionnaire,
.kaya-contact-questionnaire {
	box-sizing: border-box;
	width: 100%;
	max-width: 800px;
	margin: var(--kaya-contact-block-gap) auto 0;
	scroll-margin-top: 8.75rem;
}

.kaya-contact-questionnaire .kaya-contact__heading {
	margin-bottom: var(--kaya-contact-copy-gap);
}

.kaya-contact-form {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow: visible;
	background: transparent;
	border-radius: 0;
}

.kaya-contact-form__frame {
	width: 100%;
	overflow: visible;
}

.kaya-contact-form__frame iframe {
	display: block;
	width: 100%;
	border: 0;
	overflow: hidden;
}

@media only screen and (max-width: 999px) {
	/* Figma Mobile Contact 1210:32865. 60px under the lace, 353px column. */
	.kaya-contact {
		padding: 60px 20px 0;
	}

	.kaya-contact__inner {
		width: 100%;
	}

	.kaya-contact__copy,
	.kaya-contact-form,
	.kaya-contact-questionnaire {
		width: 100%;
		max-width: 100%;
	}

	#group-program-questionnaire,
	.kaya-contact-questionnaire {
		margin-top: 60px;
		scroll-margin-top: 6.5rem;
	}

	.kaya-contact__eyebrow {
		margin: 0 0 20px;
		padding: 6px 10px;
		border-radius: 7px;
		font-size: 10px;
		line-height: 10px;
	}

	.kaya-contact__heading {
		margin: 0 0 16px;
		width: 100%;
		font-size: 28px;
		line-height: 28px;
		letter-spacing: -0.84px;
	}

	.kaya-contact__columns {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.kaya-contact__body,
	.kaya-contact__email,
	.kaya-contact__col-text {
		margin: 0 0 28px;
		width: 100%;
		font-size: 16px;
		line-height: 24px;
	}

	.kaya-contact__col:first-child .kaya-contact__col-text {
		margin-bottom: 0;
	}

	.kaya-contact__body p + p,
	.kaya-contact__col-text p + p {
		margin-top: 16px;
	}

	.kaya-contact__email {
		margin: 28px 0 0;
	}

	.kaya-contact__actions {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.kaya-contact__btn {
		height: 49px;
		padding: 14px 18px;
		gap: 12px;
		border-radius: 10px;
	}

	.kaya-contact__btn-label {
		font-size: 12px;
		line-height: 15px;
		white-space: nowrap;
	}

	.kaya-contact__btn-icon {
		width: 18px;
		height: 12px;
		flex-basis: 18px;
	}

	.kaya-contact__btn-icon img {
		top: 0;
		width: 18px;
		height: 12px;
	}

	.kaya-contact-offices {
		flex-direction: column;
		gap: 40px;
	}

	.kaya-contact-offices__rule {
		width: 100%;
		height: 0;
		border-left: 0;
		border-top: 1px solid var(--kaya-orange);
	}

	.kaya-contact-office {
		gap: 20px;
	}

	.kaya-contact-office__heading {
		font-size: 18px;
		line-height: 18px;
		letter-spacing: -0.54px;
	}

	.kaya-contact-office__row {
		gap: 4px;
	}

	.kaya-contact-office__label {
		gap: 8px;
		font-size: 16px;
		line-height: normal;
	}

	.kaya-contact-office__value {
		width: auto;
		font-size: 16px;
		line-height: 24px;
	}

	.kaya-contact-office__icon--hours {
		width: 20px;
		height: 18.676px;
	}

	.kaya-contact-office__icon--hours img {
		width: 20px;
		height: 18.676px;
	}

	.kaya-contact-office__icon--phone {
		width: 20px;
		height: 20.742px;
	}

	.kaya-contact-office__icon--phone img {
		width: 20px;
		height: 20.742px;
	}

	.kaya-contact-office__icon--email {
		width: 20px;
		height: 13.462px;
	}

	.kaya-contact-office__icon--email img {
		width: 20px;
		height: 13.462px;
	}

	.kaya-contact-form__frame,
	.kaya-contact-form__frame iframe {
		height: auto;
		min-height: 0;
		overflow: hidden;
	}
}

/* How it works — Figma strip 8 at card midpoint, cream below into the footer. */
.kaya-howitworks--contact {
	--kaya-hiw-strip-leaf-h: min(2.1875rem, 1.8229166667vw);
	--kaya-hiw-card-mid: min(8.90625rem, 7.421875vw);
	--kaya-hiw-lace: calc(var(--kaya-hiw-heading-fs) + var(--kaya-hiw-gap) + var(--kaya-hiw-card-mid));
	padding-top: 0;
	overflow: visible;
}

.kaya-howitworks--contact::before {
	top: var(--kaya-hiw-lace);
	bottom: 0;
	height: auto;
	background-color: var(--kaya-orange-light);
}

.kaya-howitworks--contact::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: var(--kaya-hiw-lace);
	z-index: 0;
	height: var(--kaya-hiw-strip-leaf-h);
	background-color: var(--kaya-orange-light);
	-webkit-mask-image: url("../assets/travel-cta/top-strip.svg");
	mask-image: url("../assets/travel-cta/top-strip.svg");
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: top;
	mask-position: top;
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	transform: translateY(-100%);
	pointer-events: none;
}

@media only screen and (max-width: 999px) {
	.kaya-howitworks--contact {
		--kaya-hiw-lace: 50%;
		padding-top: 60px;
	}
}
