.contact-compose{border:0;border-radius:16px;padding:36px;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;background:#f2f0e8;color:#181a1e;box-shadow:0 24px 80px #0006}
.contact-compose:not([open]){display:none}
.contact-compose::backdrop{background:#080d12cc}
.contact-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-20px -20px 8px auto;background:transparent;border:0;border-radius:6px}
.contact-close:hover{background:#deddd4}
.contact-compose form{margin-top:28px}
body:has(#contact-dialog[open]){overflow:hidden}
.contact-compose h2{font-family:Archivo,Jakarta,sans-serif;font-size:clamp(1.75rem,4vw,2.5rem);letter-spacing:-.035em;line-height:1.08}
.contact-compose>div>p{margin-top:24px;max-width:42ch}
.contact-compose form{display:grid;gap:20px;min-width:0;scroll-margin-top:100px}
.contact-compose label{display:grid;gap:8px;font-size:16px;font-weight:700}
.contact-compose input,.contact-compose textarea,.contact-compose select{box-sizing:border-box;width:100%;min-width:0;border:1px solid #686861;border-radius:4px;padding:12px;background:#fffef9;color:#181a1e;font:400 16px/1.5 Jakarta,sans-serif;caret-color:#181a1e}
.contact-compose textarea{resize:vertical;min-height:140px}
.contact-compose textarea::placeholder{color:#62625d}
.contact-compose :is(input,textarea,select,button):focus-visible{outline:3px solid #125951;outline-offset:3px}
.contact-compose button.action{background:#181a1e;color:#fffef9;border:0;justify-content:center;min-height:48px;padding:14px 24px}
.contact-compose button.action:hover:not(:disabled){background:#344840}
[data-contact] button:disabled{opacity:.55;cursor:not-allowed}
[data-contact] [hidden]{display:none!important}
[data-contact] [data-form-status]{font-size:16px;line-height:1.5;overflow-wrap:anywhere;margin:0}
[data-contact] [data-form-status]:empty{display:none}
.contact-note{font-size:14px;line-height:1.6}
.contact-footer-button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
[data-contact] .h-captcha{min-height:144px}
@media(max-width:760px){.contact-compose{padding:24px}.contact-compose h2{font-size:1.75rem}.contact-close{margin:-12px -12px 8px auto}}
dialog [data-contact] label{font-size:14px}
dialog [data-contact] input,dialog [data-contact] textarea{font-size:16px}
dialog [data-contact] .form-note{font-size:14px}
[data-contact] [data-form-status] a{text-decoration:underline;text-underline-offset:3px}
dialog #form-status{font-size:16px}
.site-motion[hidden]{display:none}

/* Homepage dialog: compact field groups and a clear final action. */
.contact-compose{position:fixed;inset:0;margin:auto;width:min(620px,calc(100% - 32px));padding:40px;background:#f5f2e9;scrollbar-color:#99968b #f5f2e9}
.contact-compose .contact-close{position:absolute;top:14px;right:14px;margin:0;background:#e9e6dc;border-radius:50%}
.contact-compose .contact-heading{padding-right:32px}
.contact-compose h2{font-size:clamp(1.65rem,3.5vw,2.25rem);line-height:1.1;letter-spacing:-.03em}
.contact-compose .contact-heading p{margin-top:16px;color:#55564f;font-size:15px;line-height:1.6;max-width:45ch}
.contact-compose form{margin-top:26px;gap:18px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-compose label{gap:7px}
.contact-compose :is(input,textarea,select){border-color:#bbb8ac;border-radius:8px;background:#fffdf7;padding:12px 14px}
.contact-compose :is(input,textarea,select):hover{border-color:#77786d}
.contact-compose :is(input,textarea,select):focus{border-color:#182024}
.contact-compose textarea{min-height:108px}
.contact-send-row{display:grid;grid-template-columns:1fr;align-items:start;gap:18px;padding-top:4px}
.contact-compose .contact-send-row .h-captcha{min-height:144px;justify-self:center}
.contact-compose .contact-send-row button{font-size:15px;justify-content:space-between;min-height:54px;padding:16px 22px}
.contact-compose .contact-note{font-size:13px;color:#55564f;line-height:1.6;text-align:center}
.contact-note a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:520px){.contact-compose{padding:28px 22px}.contact-compose .contact-heading{padding-right:26px}.contact-compose .contact-close{top:10px;right:10px;width:36px;height:36px}.contact-fields{grid-template-columns:1fr;gap:16px}.contact-send-row{grid-template-columns:1fr;gap:16px}.contact-compose .contact-note{text-align:left}}

/* Keep the provider's body-mounted challenge above our popup. */
.contact-backdrop{position:fixed;inset:0;background:#080d12cc;z-index:1000}
.contact-backdrop[hidden]{display:none}
dialog.contact-popup{position:fixed;inset:0;margin:auto;z-index:1001;max-height:calc(100dvh - 32px)}
body.contact-popup-open{overflow:hidden}
.contact-compose .contact-send-row button{justify-self:center;width:auto;min-width:190px;min-height:44px;padding:12px 22px;font-size:14px;gap:24px}

#access-form .h-captcha{align-self:center}
#access-form button[type="submit"]{align-self:center;width:auto;min-width:180px;min-height:44px;padding:12px 22px;font-size:14px;gap:24px}
#access-form .form-note{text-align:center;font-size:13px}
#access-form .form-note a{text-decoration:underline;text-underline-offset:3px}
