.map-placeholder[data-astro-cid-fzzeobak]{background:radial-gradient(at 100% 0,#c8dbff,#edf4fc 70%);flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;min-height:320px;padding:32px;display:flex}.map-placeholder[data-astro-cid-fzzeobak][hidden],iframe[data-astro-cid-fzzeobak][hidden]{display:none}.map-placeholder[data-astro-cid-fzzeobak] p[data-astro-cid-fzzeobak],.map-placeholder[data-astro-cid-fzzeobak] h2[data-astro-cid-fzzeobak]{margin:0}.map-placeholder[data-astro-cid-fzzeobak] h2[data-astro-cid-fzzeobak]{font-size:clamp(1.5rem,3vw,2rem)}.map-placeholder[data-astro-cid-fzzeobak] button[data-astro-cid-fzzeobak],.map-placeholder[data-astro-cid-fzzeobak] a[data-astro-cid-fzzeobak]{align-items:center;min-height:44px;display:inline-flex}.map-placeholder[data-astro-cid-fzzeobak] button[data-astro-cid-fzzeobak]{color:#fff;background:var(--color-accent-strong);font:inherit;cursor:pointer;border:0;border-radius:12px;padding:12px 18px}.map-placeholder[data-astro-cid-fzzeobak] a[data-astro-cid-fzzeobak]{color:var(--color-accent-strong)}.contact-page{background:var(--color-paper);padding:24px var(--page-gutter) 32px}.contact-overview{border:1px solid var(--color-line);background:#fff;border-radius:24px;display:grid;overflow:hidden}.contact-card,.contact-directions{min-width:0;padding:24px}.contact-card{background:var(--color-surface)}.contact-eyebrow{color:var(--color-accent-strong);letter-spacing:.05em;text-transform:uppercase;margin:0 0 12px;font-size:.7rem;font-weight:700;line-height:1.5}.contact-card h1{letter-spacing:-.055em;margin:0 0 22px;font-size:clamp(2.4rem,4.8vw,4rem);line-height:1.05}.contact-page svg{flex-shrink:0;width:22px;height:22px}.contact-phone{letter-spacing:-.035em;align-items:center;gap:12px;min-height:48px;font-size:clamp(1.22rem,2.5vw,1.9rem);font-weight:650;text-decoration:none;display:inline-flex}.contact-phone svg{color:var(--color-accent-strong);width:24px}.contact-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:20px;display:grid}.contact-action{border:1px solid var(--color-line);min-height:80px;color:var(--color-ink);background:var(--color-paper);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:12px 6px;font-size:.76rem;font-weight:650;text-decoration:none;display:flex}.contact-action--primary{background:var(--color-accent-strong);border-color:var(--color-accent-strong);color:#fff}.contact-action:not(.contact-action--primary) svg{color:var(--color-accent-strong)}.contact-action:hover{box-shadow:0 5px 18px #10233f16}.contact-email{min-height:44px;color:var(--color-muted);overflow-wrap:anywhere;align-items:center;gap:16px;margin-top:14px;font-size:.88rem;text-decoration:none;display:inline-flex}.contact-email svg{width:15px;height:15px}.contact-email:hover,.contact-phone:hover,.contact-map-link:hover{text-underline-offset:4px;text-decoration:underline}.contact-directions{border-top:1px solid var(--color-line);background:#fff}.contact-location{align-items:flex-start;gap:14px;display:flex}.contact-location>svg{color:var(--color-accent-strong);margin-top:2px}.contact-location h2{letter-spacing:-.025em;margin:0 0 10px;font-size:1.2rem}.contact-location address{color:var(--color-muted);font-size:.91rem;font-style:normal;line-height:1.65}.contact-map-link{min-height:48px;color:var(--color-accent-strong);align-items:center;gap:24px;margin:8px 0 0 36px;font-size:.86rem;font-weight:650;text-decoration:none;display:inline-flex}.contact-map-link svg{width:16px}.contact-hours{border-top:1px solid var(--color-line);margin-top:16px;padding-top:20px}.contact-hours h3{margin:0 0 10px;font-size:.9rem}.contact-hours p{color:var(--color-muted);margin:5px 0;font-size:.87rem;line-height:1.6}.contact-map{min-width:0;margin-top:20px}.map-frame{border:1px solid var(--color-line);background:var(--color-surface);border-radius:24px;overflow:hidden;box-shadow:0 14px 40px #10233f12}.contact-map iframe{border:0;width:100%;height:320px;display:block}@media (width>=760px){.contact-overview{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.contact-card,.contact-directions{padding:28px}.contact-card{padding-right:28px}.contact-directions{border-top:0;border-left:1px solid var(--color-line);padding-left:28px}}@media (width>=1100px){.contact-card,.contact-directions{padding:32px}.contact-action{min-height:84px;font-size:.86rem}.contact-map iframe{height:400px}}
