/* LASPNET Contact Info: three cards and a map */
.lsp-contact__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }

.lsp-cc { display: flex; flex-direction: column; align-items: flex-start; padding: 2rem 1.75rem; background: #fff; border: 1px solid var(--lsp-line, #ddd9da); border-top: 5px solid var(--lsp-brand, #8f1d2c); }
.lsp-cc__icon { display: grid; place-items: center; width: 3.25rem; height: 3.25rem; margin-bottom: 1.1rem; border-radius: 50%; color: var(--lsp-brand, #8f1d2c); background: var(--lsp-brand-tint, #f6eaec); }
.lsp-cc__label { margin: 0 0 .4rem; font-family: var(--lsp-font-body, system-ui, sans-serif); font-size: .85rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--lsp-muted, #5f5859); }
.lsp-cc__value { display: block; margin: 0; font-family: var(--lsp-font-display, Georgia, serif); font-style: normal; font-size: 1.3rem; line-height: 1.35; color: var(--lsp-ink, #241a1c); text-decoration: none; overflow-wrap: anywhere; }
a.lsp-cc__value:hover { color: var(--lsp-brand, #8f1d2c); text-decoration: underline; text-underline-offset: .2em; }
.lsp-cc__note { margin: .6rem 0 0; font-size: .95rem; color: var(--lsp-muted, #5f5859); }

/* Urgent card is the highlighted one */
.lsp-cc--urgent { background: var(--lsp-brand-deep, #6b1521); border-color: var(--lsp-brand-deep, #6b1521); border-top-color: var(--lsp-gold, #f4b400); color: #fff; }
.lsp-cc--urgent .lsp-cc__icon { background: var(--lsp-gold, #f4b400); color: #26090f; }
.lsp-cc--urgent .lsp-cc__label { color: rgba(255, 255, 255, .8); }
.lsp-cc--urgent .lsp-cc__value { color: var(--lsp-gold, #f4b400); }
.lsp-cc--urgent .lsp-cc__value--big { font-size: clamp(1.9rem, 3vw, 2.4rem); }
.lsp-cc--urgent a.lsp-cc__value:hover { color: #fff; }
.lsp-cc--urgent .lsp-cc__note { color: #fff; font-weight: 600; }

/* Map */
.lsp-contact__map { position: relative; margin-top: 1.5rem; border: 1px solid var(--lsp-line, #ddd9da); background: var(--lsp-paper, #f3f4f6); }
.lsp-contact__map iframe { display: block; width: 100%; height: var(--lsp-map-h, 400px); border: 0; }
.lsp-contact__directions {
	position: absolute; left: 1rem; bottom: 1rem; padding: .65rem 1.1rem; font-weight: 700; text-decoration: none;
	color: #fff; background: var(--lsp-brand, #8f1d2c); border-radius: 4px; box-shadow: 0 6px 18px rgba(38, 9, 15, .3);
}
.lsp-contact__directions:hover { background: var(--lsp-brand-deep, #6b1521); color: #fff; }
.lsp-contact__directions:focus-visible { outline: 3px solid var(--lsp-gold, #f4b400); outline-offset: 2px; }

@media (max-width: 900px) {
	.lsp-contact__cards { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
}
@media (max-width: 560px) {
	.lsp-contact__map iframe { height: min(var(--lsp-map-h, 400px), 320px); }
	.lsp-contact__directions { position: static; display: block; text-align: center; border-radius: 0; box-shadow: none; }
}
