.contact-page-layout .contact-form button[type=submit]{justify-self:start;width:auto;min-width:142px;min-height:48px;padding:13px 24px;gap:30px;font-size:15px;line-height:22px;transition:opacity .18s ease,background .18s ease}
.contact-page-layout .contact-form button[type=submit]:disabled{opacity:.55;cursor:wait}
.contact-page-layout .contact-form button[type=submit]:focus-visible{outline:2px solid #555;outline-offset:4px}
.contact-form-shell{position:relative;isolation:isolate}
.contact-form-shell .contact-form{transition:opacity .18s ease,filter .18s ease}
.contact-form-shell.is-success .contact-form{opacity:0;filter:blur(2px);pointer-events:none}
.contact-form-shell.is-settled .contact-form{visibility:hidden}
.contact-success-stage{position:absolute;inset:0;overflow:hidden;pointer-events:none;display:flex;align-items:center;justify-content:center}
.contact-success-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.contact-success-copy{text-align:center;width:100%;padding:24px 12px;opacity:0;transform:translateY(7px);transition:opacity .25s ease,transform .25s ease;color:#111;outline:none}
.contact-page-layout .contact-success-copy h3{font-size:clamp(27px,2.6vw,38px);line-height:1.15;letter-spacing:-.055em;margin:0 0 14px}
.contact-success-copy p{font-size:16px;line-height:1.5;color:#777;letter-spacing:-.02em;margin:0}
.is-settled .contact-success-copy{opacity:1;transform:none}
@media(max-width:700px){.contact-page-layout .contact-form button[type=submit]{min-width:148px;min-height:50px;padding:14px 24px}}
@media(prefers-reduced-motion:reduce){.contact-form-shell .contact-form,.contact-success-copy{transition:none!important;transform:none!important;filter:none!important}}
