.contact-form{border-radius:var(--u-h);transform:translateY(0);transition:all .3s;width:100%;max-width:700px;padding:0 var(--u);margin:0 auto;display:flex;flex-direction:column;gap:calc(var(--u) * 1.5)}.contact-hero-line{display:inline-block;white-space:nowrap}.contact-input{transition:all .2s ease-out;font-size:var(--u);width:100%;padding:calc(var(--u) * .7);border-radius:6px;border:1px solid #444;background:#181818;color:#fff;box-sizing:border-box}.contact-input:focus{outline:none;border-color:var(--pdm-purple)!important;background:#222!important;box-shadow:0 0 0 4px rgba(0,122,255,.15)}.contact-input[aria-invalid=true]{border-color:#f55!important;background:#2a1818!important}.contact-submit{--btn-bg:var(--pdm-purple-dark);--btn-hover-bg:var(--pdm-purple);--btn-border:var(--pdm-purple);--btn-hover-border:var(--pdm-purple-light);--btn-color:#fff;margin-top:12px;align-self:center}.contact-message-header{margin-bottom:4px}.contact-message-count{font-size:calc(var(--u) * .95);color:#888}.contact-message-count--desktop{display:none}.contact-message-count--mobile{display:block;margin-top:4px;text-align:right}.contact-row{display:flex;flex-wrap:wrap;gap:calc(var(--u) * 1.25)}.contact-field{flex:1 1 240px;min-width:0}.contact-label{display:block;margin-bottom:4px;font-weight:600}.contact-error{color:#f55;font-size:calc(var(--u) * .95);margin-top:2px}.contact-hidden-field{display:none}.contact-success{background:linear-gradient(135deg,rgba(0,128,64,.1),rgba(0,128,64,.2));color:#0f0;padding:calc(var(--u) * 2);border-radius:var(--u-h);text-align:center;margin-top:calc(var(--u) * 2);box-shadow:0 4px 20px rgba(0,0,0,.15);animation:slideIn .5s ease-out forwards;border:1px solid rgba(0,200,100,.2);max-width:480px;margin-left:auto;margin-right:auto}.contact-successIcon{font-size:calc(var(--u) * 2.5);margin-bottom:calc(var(--u) * .5);color:rgba(0,200,100,.8);animation:pulse 1.5s infinite}.contact-successTitle{margin:calc(var(--u) * .5) 0;color:#fff}.contact-successBody{margin:calc(var(--u) * .5) 0;opacity:.9}.contact-errorCallout{color:#f55;background:rgba(255,85,85,.08);border:1px solid rgba(255,85,85,.3);padding:calc(var(--u) * 1);border-radius:8px}.contact-errorCallout p{margin:0}.contact-errorCallout p+p{margin-top:calc(var(--u) * .5)}.contact-sendError{color:#f55;margin-bottom:8px}@media (min-width:700px){.contact-message-header{display:flex;justify-content:space-between;align-items:center;gap:calc(var(--u) * .75);flex-wrap:wrap}.contact-message-count--desktop{display:inline}.contact-message-count--mobile{display:none}}.submit-spinner{width:24px;height:24px;border-radius:50%;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}to{transform:scale(1);opacity:1}}@media (max-width:699px){.contact-form{padding:var(--u-h)}}