/* Contact page only; shared DVPS branding, navigation and product styles stay intact. */
.contact-refined{background:#f4f7f9;min-width:0}
.contact-refined .contact-section{padding:56px 0 64px}
.contact-refined .contact-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr);gap:36px;align-items:start}
.contact-refined .contact-card{background:#fff;border:1px solid #d7e3e9;border-radius:8px;padding:32px;min-width:0}
.contact-refined .contact-form-card{box-shadow:0 8px 28px rgba(9,46,71,.035)}
.contact-refined .contact-card h2{font-size:clamp(25px,2.2vw,32px);line-height:1.2;letter-spacing:-.025em;margin:0 0 14px;color:#143448}
.contact-refined .contact-lead{font-size:15px;line-height:1.7;color:#526575;max-width:560px}
.contact-refined .contact-required-note{font-size:12px;line-height:1.6;color:#526575;margin:16px 0 24px}
.contact-refined .pc-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:22px;row-gap:22px}
.contact-refined .pc-field{min-width:0}
.contact-refined .pc-field.full{grid-column:1/-1}
.contact-refined label{display:block;font-size:14px;font-weight:650;line-height:1.5;color:#143448;margin-bottom:8px}
.contact-refined label span{font-size:12px;font-weight:400;color:#526575;margin-left:4px}
.contact-refined input:not([type=hidden]),.contact-refined textarea{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box;border:1px solid #788f9d;border-radius:4px;background:#fff;color:#143448;font:16px/1.5 "Segoe UI",Arial,sans-serif;padding:12px 13px;min-height:48px;box-shadow:none;transition:border-color .15s}
.contact-refined textarea{min-height:136px;resize:vertical}
.contact-refined input::placeholder,.contact-refined textarea::placeholder{color:#5f7280;opacity:1}
.contact-refined input:hover,.contact-refined textarea:hover{border-color:#526f7f}
.contact-refined input:focus-visible,.contact-refined textarea:focus-visible{border-color:#00748f;outline:3px solid #00748f;outline-offset:3px}
.contact-refined [aria-invalid=true]{border-color:#a32b31!important}
.contact-refined .pc-hint{display:block;font-size:12px;line-height:1.6;color:#526575;margin-top:7px}
.contact-refined .pc-error{font-size:13px;line-height:1.5;color:#9c2833;margin:7px 0 0}
.contact-refined .pc-error[hidden],.contact-refined .pc-summary[hidden],.contact-refined .pc-status[hidden]{display:none}
.contact-refined .pc-summary{padding:16px 18px;margin:0 0 24px;background:#fff7f7;border:1px solid #d8a3a9;border-left:3px solid #a32b31;border-radius:4px;font-size:14px}
.contact-refined .pc-summary p{font-weight:650;margin:0 0 8px}
.contact-refined .pc-summary ul{margin:0;padding-left:20px}
.contact-refined .pc-summary a{color:#8b2330;text-decoration:underline;text-underline-offset:3px}
.contact-refined .pc-submit{margin-top:26px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.contact-refined .pc-submit button{min-height:50px;padding:14px 24px;font-size:14px;border-radius:4px}
.contact-refined .pc-submit button:disabled{opacity:.65;cursor:wait}
.contact-refined .pc-privacy{margin-top:18px;font-size:12px;line-height:1.65;color:#526575}
.contact-refined .pc-privacy a{color:#073a5a;text-decoration:underline;text-underline-offset:3px}
.contact-refined .pc-status{padding:14px 16px;margin-top:20px;border:1px solid #a8c9cf;border-radius:4px;background:#edf7f8;font-size:14px;line-height:1.6;color:#143448;overflow-wrap:anywhere}
.contact-refined .pc-status[data-kind=error]{background:#fff7f7;border-color:#d8a3a9;color:#8b2330}
.contact-refined .pc-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-refined .office-card .eyebrow{margin-bottom:12px}
.contact-refined .office-card>p{font-size:14px;line-height:1.7;color:#526575}
.contact-refined .office-detail{border-top:1px solid #d7e3e9;margin-top:24px;padding-top:22px}
.contact-refined .office-detail h3{font-size:13px;line-height:1.5;font-weight:700;letter-spacing:.015em;margin-bottom:9px;color:#143448}
.contact-refined address{font-style:normal;font-size:15px;line-height:1.75;color:#526575;margin:0}
.contact-refined .office-detail a{display:block;font-size:15px;line-height:1.7;color:#073a5a;overflow-wrap:anywhere}
.contact-refined .office-detail a+a{margin-top:7px}
.contact-refined .office-detail .office-map{display:inline-block;margin-top:12px;font-size:12px;font-weight:650;color:#00748f;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px){.contact-refined .contact-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:24px}.contact-refined .contact-card{padding:26px}.contact-refined .pc-fields{column-gap:18px}}
@media(max-width:900px){.contact-refined .contact-layout{grid-template-columns:minmax(0,1fr);gap:26px}.contact-refined .contact-section{padding:36px 0 44px}.contact-refined .office-card{box-shadow:none}}
@media(max-width:600px){.contact-refined .contact-card{padding:22px}.contact-refined .pc-fields{grid-template-columns:minmax(0,1fr);gap:20px}.contact-refined .contact-card h2{font-size:27px}.contact-refined .contact-required-note{margin-bottom:22px}.contact-refined .pc-submit{margin-top:24px}.contact-refined .pc-submit button{width:100%}.contact-refined .contact-lead{font-size:14px}.contact-refined .office-detail{margin-top:20px;padding-top:18px}}
@media(max-width:360px){.contact-refined .contact-card{padding:18px}.contact-refined .contact-card h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.contact-refined input,.contact-refined textarea{transition:none}}
