/* Shared contact dialog: the same soft blue surfaces and navy actions as the site. */
.maiva-site .contact-dialog{width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:30px 34px 24px;border:1px solid #fff;border-radius:24px;background:linear-gradient(135deg,#f2f8ff,#fff 65%);color:var(--ink);box-shadow:0 25px 100px #06183240;overflow:auto;overscroll-behavior:contain}
.contact-dialog::backdrop{background:#071b3866;backdrop-filter:blur(6px)}
html:has(.contact-dialog[open]){overflow:hidden;scrollbar-gutter:stable}
.maiva-site .contact-close{position:absolute;right:17px;top:17px;width:35px;height:35px;border:1px solid #dce8f8;border-radius:50%;background:#ffffffd9;color:#24446b;font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center}
.contact-heading{padding-right:20px;margin-bottom:23px}.contact-emblem{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:#e4f1ff;margin-bottom:12px}
.maiva-site .contact-heading .eyebrow{font-size:9px;margin:0 0 8px;color:#0872ff;letter-spacing:.16em}
.maiva-site .contact-heading h2{font-size:30px;line-height:1.08;letter-spacing:-.045em;margin:0 0 10px;max-width:460px}
.maiva-site .contact-heading>p:last-child{font-size:14px;line-height:1.45;margin:0;max-width:460px}
.contact-fields{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px}
.contact-fields>label{display:block;font-size:12px;font-weight:600;color:#213857}.contact-wide{grid-column:1/-1}.field-optional{font-weight:400;color:#647c9f;font-size:11px}
.maiva-site .contact-fields input:not([type=checkbox]),.maiva-site .contact-fields select,.maiva-site .contact-fields textarea{display:block;width:100%;min-width:0;margin-top:6px;border:1px solid #d4e2f4;border-radius:10px;padding:10px 12px;background:#fff;color:#142b4b;font:inherit;font-size:14px;font-weight:400;min-height:42px;box-shadow:0 2px 5px #c3d5ed0f}
.maiva-site .contact-fields textarea{resize:vertical;min-height:85px;max-height:230px;line-height:1.4}.contact-fields textarea::placeholder{color:#7487a1;font-size:12px}
.contact-fields :is(input,select,textarea):focus-visible{outline:3px solid #b3d7ff;outline-offset:1px;border-color:#0872ff}
.maiva-site .contact-fields .contact-consent{display:flex;align-items:flex-start;gap:9px;font-size:11px;font-weight:400;line-height:1.45;color:#52678e}.contact-consent input{width:17px;height:17px;flex:0 0 17px;margin:1px 0 0;accent-color:#0872ff}
.contact-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.maiva-site .contact-form-footer p{font-size:11px;margin:0}.maiva-site .contact-submit{border:0;cursor:pointer;font-size:13px;padding:11px 21px;min-height:43px;gap:22px}
.contact-dialog button:disabled{cursor:wait;opacity:.65;transform:none!important}.contact-fields:disabled{opacity:.65}
.maiva-site .contact-status{font-size:12px;line-height:1.4;margin:14px 0 0;color:#49668e}.contact-status:empty{display:none}.maiva-site .contact-status[data-error=true]{background:#fff4f0;border:1px solid #f1d6ce;border-radius:10px;padding:11px;color:#8b3829}.maiva-site .contact-email-fallback{font-size:12px;margin:10px 0 0}.contact-email-fallback a{color:#0866d9;text-decoration:underline}
.contact-success{text-align:center;padding:8px 15px 18px}.contact-success-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 17px;background:#e5f4ff;color:#0872ff;font-size:31px;border-radius:50%}.contact-success h3{font-size:24px;margin:0 0 11px;line-height:1.15}.maiva-site .contact-success p{font-size:14px;line-height:1.5;margin:0 auto 22px;max-width:400px}.contact-success button{cursor:pointer}
@media(max-width:700px){.maiva-site .contact-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:23px 20px 20px;border-radius:20px}.maiva-site .contact-heading h2{font-size:25px}.contact-heading{margin-bottom:18px;padding-right:16px}.maiva-site .contact-heading>p:last-child{font-size:13px}.contact-emblem{width:37px;height:37px;margin-bottom:9px}.contact-fields{gap:13px}.maiva-site .contact-fields input:not([type=checkbox]),.maiva-site .contact-fields select,.maiva-site .contact-fields textarea{font-size:16px}.contact-form-footer{gap:12px;flex-wrap:wrap}.maiva-site .contact-submit{flex:1;justify-content:center}.maiva-site .contact-close{right:13px;top:13px}}
@media(max-width:480px){.contact-fields{grid-template-columns:1fr}.contact-wide{grid-column:auto}.contact-form-footer{flex-direction:column;align-items:stretch}.maiva-site .contact-form-footer p{text-align:center;order:2}.contact-dialog .contact-success{padding-left:0;padding-right:0}}
