.contact-mail{position:relative; overflow:hidden}
.contact-mail::after{content:""; position:absolute; right:-70px; bottom:-70px; width:220px; height:220px; border-radius:50%; border:30px solid rgba(112,200,192,.4); pointer-events:none}
.contact-mail>*{position:relative; z-index:1}
.contact-address{font-family:var(--font-display); font-size:clamp(1.25rem,3.6vw,2.1rem); color:var(--ink); margin:14px 0 12px; overflow-wrap:anywhere; user-select:all; -webkit-user-select:all}
.contact-link{text-decoration:none; display:flex; flex-direction:column; transition:transform .18s ease, box-shadow .18s ease}
.contact-link:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
.contact-link p{flex:1}
.contact-link .go{margin-top:16px; font-weight:700; font-size:.92rem; color:var(--orange-ink); overflow-wrap:anywhere}
@media (max-width:960px){.contact-link .icon-dot{margin-bottom:12px}}
@media (max-width:620px){.contact-mail .btn{width:100%}}
.card-teal{background:var(--teal); border-color:transparent; color:var(--ink)}
.card-teal .eyebrow,.card-teal h2{color:var(--teal-night)}
.contact-mail::after{border-color:rgba(255,255,255,.3)}
.card .contact-address, .card-teal p.contact-address{color:var(--teal-night); opacity:1}

.contact-why{color:var(--ink); margin:0}
.contact-address{user-select:text; -webkit-user-select:text; cursor:text}
.contact-actions{margin-top:18px}
.contact-actions .btn{min-height:48px}
.contact-actions [hidden]{display:none}
.btn.is-copied{background:var(--teal-deep); color:#fff; border-color:var(--teal-deep)}
.copy-status{min-height:1.5em; margin:12px 0 0; color:var(--teal-night); font-weight:700}
.contact-help{margin:8px 0 0; color:var(--ink)}
.card-teal .btn-outline{border-color:var(--teal-night); color:var(--teal-night)}
.card-teal .btn-outline:hover,.card-teal .btn-outline.is-copied{background:var(--teal-night); color:#fff}
.contact-mail p.contact-address{font-size:clamp(1.25rem,5.4vw,2rem); line-height:1.25; margin:14px 0 4px}
.contact-mail p.contact-why{color:var(--ink); margin:10px 0 0}
.contact-mail p.contact-help{color:var(--ink)}

/* Contact form (declutter round): one primary path, quiet alternatives */
.contact-mail::after{display:none}
.contact-main{min-width:0}
.contact-mail{padding:clamp(24px,3.4vw,40px)}
.contact-mail p.contact-why{margin:12px 0 0; font-size:1.02rem}
.contact-form{margin-top:28px; display:grid; gap:22px}
.field label{display:block; font-weight:700; color:var(--teal-night); margin-bottom:8px}
.field input,.field textarea{display:block; width:100%; min-height:48px; padding:12px 16px; font:400 1rem/1.4 var(--font-body); color:var(--ink); background:#fff; border:2px solid var(--teal-night); border-radius:14px}
.field textarea{min-height:140px; resize:vertical}
.field input:focus-visible,.field textarea:focus-visible,.contact-send:focus-visible,.contact-alt .btn:focus-visible,.alt-link:focus-visible{outline:3px solid var(--orange); outline-offset:3px}
.field-hint{margin:6px 0 0; font-size:.92rem; color:var(--teal-night)}
.field-err{margin:6px 0 0; font-size:.95rem; font-weight:700; color:#7a1d12; display:none}
.field-err.on{display:block}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:#7a1d12; box-shadow:0 0 0 2px #fff, 0 0 0 4px #7a1d12}
.hp{position:absolute !important; left:-10000px; width:1px; height:1px; overflow:hidden}
.contact-send{justify-self:center; min-width:200px}
.form-status{margin:0; text-align:center; color:var(--teal-night); font-weight:700; min-height:0}
.form-status:empty{display:none}
.form-status:focus{outline:none}
.contact-alt{margin-top:32px; padding-top:26px; border-top:1px solid rgba(15,61,59,.28)}
.alt-label{margin:0 0 6px; font-weight:700; color:var(--teal-night)}
.contact-mail .contact-alt p.contact-address{font-size:clamp(1.05rem,4.6vw,1.35rem); margin:0 0 18px}
.alt-row{display:flex; flex-wrap:wrap; align-items:center; gap:14px 16px}
.btn-sm{padding:10px 22px; font-size:.92rem}
.alt-link{color:var(--teal-night); font-weight:700; text-underline-offset:3px; padding:14px 6px; min-height:48px; display:inline-flex; align-items:center}
.contact-alt .copy-status{margin:14px 0 0}
.contact-alt .copy-status:empty{display:none}
.contact-side{gap:36px}
.contact-meet-card .prose{margin:10px 0 22px}
.contact-meet-card p:last-child{margin:0}
@media (max-width:620px){.contact-mail .btn{width:auto}.contact-send{width:100%}.contact-alt .btn{flex:1 1 auto}}
.contact-side{align-self:start}
.contact-bbb .prose{margin:14px 0 22px}
.contact-bbb p:last-child{margin:0}
.contact-alt [hidden]{display:none !important}
.contact-alt .alt-row-addr{flex-wrap:nowrap; gap:16px}
.contact-alt .alt-row-addr p.contact-address{margin:0; min-width:0}
.contact-alt .alt-row-addr .btn{flex:0 0 auto}
@media (max-width:420px){.contact-alt .alt-row-addr{flex-wrap:wrap}}
