.contact-map{width:100%;margin:2.5rem 0;text-align:left}
.contact-map-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.2rem}
.contact-map-heading h3{margin:0 0 .5rem;color:#fff;font-size:1.35rem}
.contact-map-heading p{margin:0;color:#c8d0d8;line-height:1.6}
.contact-map-heading a{color:#fff;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.contact-map-frame{height:360px;overflow:hidden;border:1px solid #c8d0d833;border-radius:12px;background:#10243a}
.contact-map-frame iframe{display:block;width:100%;height:100%;border:0}
.contact-map-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;padding:1.5rem}
.contact-map-placeholder p{color:#fff;margin:0;font-size:1.25rem}
.contact-map-placeholder button{padding:12px 20px;min-height:44px;border:1px solid #c8d0d8;border-radius:6px;background:#fff;color:#0b1829;font-family:inherit;font-size:16px;font-weight:600;line-height:1.4;cursor:pointer}
.contact-map-placeholder small{color:#c8d0d8;max-width:320px;line-height:1.5}
@media(max-width:640px){.contact-map-heading{align-items:flex-start;flex-direction:column;gap:.8rem}.contact-map-frame{height:300px}}

.contact-reviews{margin:2.5rem 0;text-align:left;padding:clamp(20px,4vw,40px);border:1px solid #c8d0d833;border-radius:12px;background:linear-gradient(135deg,#10243a,#0b1829)}
.contact-reviews .contact-reviews-eyebrow{margin:0 0 .75rem;font-family:var(--display);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#c8d0d8}
.contact-reviews h3{color:#fff;margin:0 0 1rem;font-family:var(--display);font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.15}
.contact-reviews p{color:#c8d0d8;line-height:1.6;overflow-wrap:anywhere}
.contact-reviews-grid:not([hidden]){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.contact-review-card{margin:0;padding:1.5rem;border:1px solid #c8d0d833;border-radius:10px;background:#ffffff08;min-width:0}
.contact-review-card blockquote{margin:0 0 1.5rem}.contact-review-author{display:block;color:#fff;font-weight:600;overflow-wrap:anywhere}
.contact-reviews a{color:#fff;text-underline-offset:4px;overflow-wrap:anywhere}.contact-review-source{display:inline-block;padding:12px 0;font-size:.875rem}
.contact-reviews-link{display:inline-flex;align-items:center;gap:.75rem;min-height:44px;padding:12px 18px;border:1px solid #c8d0d880;border-radius:6px;text-decoration:none;font-weight:600;margin-top:.75rem}
.contact-reviews-link:hover{background:#ffffff12}.contact-reviews a:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(max-width:900px){.contact-reviews-grid:not([hidden]){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.contact-reviews-grid:not([hidden]){grid-template-columns:1fr}}

.contact-review-stars{color:#69b7ff;font-size:1.15rem;letter-spacing:.12em;margin-bottom:1rem}.contact-review-excerpt{display:block;color:#c8d0d8;font-size:.8rem;margin-top:.5rem}
