/* CONTACT-CLARITY-001: shared, optional contact and callback. */
.ds-contact-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:36px;border:1px solid #d6d8dc;border-radius:20px;background:#fbfaf7;color:#1b2028;font:400 15px/1.5 Arial,sans-serif;box-shadow:0 24px 100px #0005;overflow:auto;overscroll-behavior:contain}
.ds-contact-dialog *{box-sizing:border-box}
.ds-contact-dialog [hidden]{display:none!important}
.ds-contact-dialog::backdrop{background:#060a12a8;backdrop-filter:blur(5px)}
.ds-contact-dialog:not([open]){display:none}
.ds-contact-dialog a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.ds-contact-dialog button,.ds-contact-dialog input,.ds-contact-dialog textarea{font:inherit}
.ds-contact-dialog :focus-visible{outline:2px solid #bf2429;outline-offset:4px}
.ds-contact-dialog h2{max-width:90%;margin:0 0 12px;font:700 clamp(25px,5.5vw,32px)/1.15 Arial,sans-serif;letter-spacing:-.7px;color:#181d25}
.ds-contact-dialog .ds-contact-close{position:absolute;right:14px;top:12px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#59616b;font:300 28px/1 Arial,sans-serif;cursor:pointer}
.ds-contact-close:hover{background:#e7e8e8}
.ds-contact-eyebrow{margin:0 0 14px;padding-right:24px;color:#757b82;font-size:10px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase}
.ds-contact-intro{margin:0 0 24px;color:#606872;line-height:1.55}
.ds-contact-cards{display:grid;gap:22px}
.ds-contact-card+.ds-contact-card{padding-top:22px;border-top:1px solid #dedfdd}
.ds-contact-card h3{margin:0 0 5px;font-size:19px;line-height:1.25;color:#1b2028}
.ds-contact-card p{margin:0 0 14px;color:#747b83;font-size:13px}
.ds-contact-channels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}
.ds-contact-channels a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 6px;border:1px solid #d7d9d8;border-radius:10px;background:#fff9;text-decoration:none;font-size:13px;font-weight:700;color:#29323c}
.ds-contact-channels a:hover{border-color:#8695a2;background:#fff}
.ds-contact-phone{font-size:14px;font-weight:700}
.ds-contact-footer{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:25px;padding-top:20px;border-top:1px solid #e3e2de;color:#58616b;font-size:13px}
.ds-contact-status{margin:12px 0 0;color:#5a636e;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.ds-contact-status:empty{display:none}
.ds-contact-status[data-error]{color:#a42930}
.ds-callback-form{margin:0}
.ds-callback-topic{margin:0 0 20px;padding-left:12px;border-left:2px solid #d6d9db;color:#59616a;font-size:13px}
.ds-callback-receptions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:0;border:0;min-width:0}
.ds-callback-receptions legend{margin-bottom:8px;color:#727a83;font-size:12px}
.ds-callback-receptions label{position:relative;display:flex;flex:1;min-width:150px;margin:0;cursor:pointer}
.ds-callback-receptions input{position:absolute;top:50%;left:12px;width:16px;height:16px;margin:-8px 0 0;accent-color:#424d5b}
.ds-callback-receptions span{display:block;width:100%;padding:11px 12px 11px 35px;border:1px solid #d8d9d9;border-radius:10px;font-size:12px;color:#68727c}
.ds-callback-receptions input:checked+span{border-color:#8d969e;background:#edf0f0;color:#26313c}
.ds-callback-field{display:flex;flex-direction:column;gap:7px;margin:0 0 16px;color:#353e48;font-size:13px}
.ds-contact-dialog .ds-callback-field input,.ds-contact-dialog .ds-callback-field textarea{width:100%;min-height:50px;padding:13px 14px;border:1px solid #cdd0d1;border-radius:10px;background:#fff;color:#1b2028;box-shadow:none;line-height:1.4}
.ds-callback-field input::placeholder,.ds-callback-field textarea::placeholder{color:#92989e;opacity:1}
.ds-contact-dialog input[aria-invalid=true],.ds-contact-dialog textarea[aria-invalid=true]{border-color:#b32930}
.ds-callback-field textarea{resize:vertical;max-height:180px}
.ds-callback-optional{margin:3px 0 20px}
.ds-callback-optional summary{min-height:32px;margin-bottom:8px;color:#59636f;font-size:12px;cursor:pointer}
.ds-callback-optional summary span{color:#939a9f;margin-left:5px}
.ds-callback-optional .ds-callback-field{margin:12px 0}
.ds-contact-consent{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;font-size:11px;line-height:1.5;color:#737b83}
.ds-contact-consent input{width:18px;height:18px;min-width:18px;margin:0;accent-color:#b42830}
.ds-contact-submit{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:14px 18px;border:0;border-radius:10px;background:#db252b;color:#fff;font-size:14px;font-weight:700;cursor:pointer}
.ds-contact-submit:hover{background:#c91e25}
.ds-contact-submit:disabled{opacity:.6;cursor:wait}
.ds-callback-mode{margin:10px 0 0;color:#858b92;font-size:11px;line-height:1.45}
.ds-contact-honeypot{position:absolute!important;clip-path:inset(50%)!important;width:1px!important;height:1px!important;overflow:hidden!important;white-space:nowrap!important}
.ds-contact-nojs{padding:16px;text-align:center;font-size:14px}
.ds-context-topic{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;margin:4px 0 8px;padding:7px 12px;border-left:2px solid #94b8c4;color:#afbec8;font-size:12px;line-height:1.4;max-height:96px;overflow:auto}
.ds-context-topic button{padding:3px 0;border:0;background:transparent;color:#d7e9f0;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ds-context-topic button:disabled{opacity:.45;cursor:default}
@media(max-width:480px){.ds-contact-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:28px 22px;border-radius:18px}.ds-contact-dialog h2{font-size:27px}.ds-contact-intro{font-size:14px}.ds-contact-close{right:8px!important;top:6px!important}.ds-callback-receptions label{min-width:130px}.ds-contact-footer{gap:14px}.ds-context-topic{font-size:11px}}
@media(prefers-reduced-motion:reduce){.ds-contact-dialog{scroll-behavior:auto}}

