/* Local Guide page (Figma 3495:560). Classes prefixed tm-localguide-. */
.tm-localguide-pin svg { display: block; width: 36px; height: 36px; }
.tm-localguide-label .elementor-heading-title { white-space: nowrap; }
.tm-localguide-card .elementor-widget-image img { display: block; }

/* Stay connected form (UI only until a mailing-list provider is chosen) */
.tm-localguide-subwrap { width: 544px; max-width: 100%; }
.tm-localguide-sub { display: flex; flex-direction: column; align-items: center; margin: 0; }
.tm-localguide-sub input {
	box-sizing: border-box; width: 100%; height: 65px; margin: 0; padding: 0 16px;
	background: #E8DED3; border: 1px solid #9E917F; border-radius: 0; outline: 0;
	font: 300 20px/1.22 Montserrat, sans-serif; color: #3A3129; text-align: center;
}
.tm-localguide-sub input::placeholder { color: #3A3129; opacity: 1; }
.tm-localguide-sub input:focus { border-color: #3A3129; }
.tm-localguide-sub button {
	box-sizing: border-box; width: 196px; height: 51px; margin: 52px 0 0; padding: 0; border: 0; border-radius: 25.5px;
	background: #A4988B; color: #fff; font: 900 20px/1.12 Montserrat, sans-serif; text-transform: uppercase; cursor: pointer;
	transition: background-color .2s;
}
.tm-localguide-sub button:hover { background: #8E8277; }
@media (max-width: 767px) {
	.tm-localguide-sub input { height: 52px; font-size: 16px; }
	.tm-localguide-sub button { margin-top: 24px; width: 180px; height: 46px; font-size: 16px; }
}
@media (max-width: 767px) {
	.tm-localguide-stay .elementor-widget { max-width: calc(100% - 40px) !important; }
}
/* Tablet/mobile: images are cropped differently, so give the white labels a soft shade for legibility */
@media (max-width: 1024px) {
	.tm-localguide-card .elementor-widget-image { position: relative; }
	.tm-localguide-card .elementor-widget-image::after {
		content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 50%;
		background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, .38)); pointer-events: none;
	}
}
