.contact-form{position:relative;z-index:1;width:min(690px,100%);margin:31px auto 0;padding:24px;border:1px solid #332b40;border-radius:16px;background:linear-gradient(145deg,#171420,#11121c 82%);box-shadow:0 18px 48px #07060c55;text-align:left}
.contact-form-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:19px;border-bottom:1px solid #30283b}
.contact-form-progress{display:flex;align-items:center;gap:10px}
.contact-progress-step{display:flex;align-items:center;gap:7px;color:#8f879c;font-size:10px;white-space:nowrap}
.contact-progress-step b{display:grid;width:25px;height:25px;place-items:center;border:1px solid #45384f;border-radius:50%;font-size:10px;font-weight:600}
.contact-progress-step.is-current{color:#f3e8f6}
.contact-progress-step.is-current b,.contact-progress-step.is-complete b{color:#fff;border-color:#c64eaf;background:linear-gradient(140deg,#df41a5,#9658df);box-shadow:0 0 15px #cf4eaa36}
.contact-progress-line{width:24px;height:1px;background:#40364a}
.contact-step-count{margin:0;color:#a49bad;font-size:9px;white-space:nowrap}
.contact-form-step{min-width:0;margin:0;padding:22px 0 0;border:0}
.contact-form-step[hidden]{display:none}
.contact-form-step legend{padding:0;color:#f1ebf7;font-family:var(--font-display);font-size:19px;font-weight:600;letter-spacing:-.025em}
.contact-step-description{margin:7px 0 16px;color:#aaa4bb;font-size:10px;line-height:1.6}
.contact-reasons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.contact-reason{min-height:64px;padding:10px 11px;display:flex;align-items:center;gap:10px;color:#e8e1ef;text-align:left;cursor:pointer;border:1px solid #342d42;border-radius:10px;background:#ffffff05;transition:transform .18s,border-color .18s,background .18s}
.contact-reason:hover,.contact-reason:focus-visible{transform:translateY(-1px);border-color:#91518b;background:#ffffff0b;outline:none}
.contact-reason-icon{flex:0 0 31px;width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#dc55ad1c;color:#e674c1;font-size:15px}
.contact-reason:nth-child(2) .contact-reason-icon{background:#56c2e51a;color:#70c8e8}
.contact-reason:nth-child(3) .contact-reason-icon{background:#9871e81c;color:#b29ae9}
.contact-reason:nth-child(4) .contact-reason-icon{background:#de55ad1c;color:#e674c1}
.contact-reason:nth-child(5) .contact-reason-icon{background:#56c2e51a;color:#70c8e8}
.contact-reason b,.contact-reason small{display:block}
.contact-reason b{font-size:10px;font-weight:700}
.contact-reason small{margin-top:4px;color:#a59caf;font-size:8px;line-height:1.4}
.contact-reason-arrow{margin-left:auto;color:#d76bb7;font-size:14px}
.contact-fields{display:grid;gap:12px}
.contact-fields label,.contact-message-label{display:grid;gap:7px;color:#d9d2e2;font-size:10px;font-weight:600}
.contact-fields label>span,.contact-message-label>span{color:#ed75be}
.contact-fields label small{margin-left:5px;color:#9e96aa;font-size:9px;font-weight:400}
.contact-fields input,.contact-message-label textarea,.contact-captcha input{width:100%;padding:11px 12px;color:#f2ecf6;font:400 11px var(--font-body);border:1px solid #383043;border-radius:8px;outline:none;background:#0d0c14;transition:border-color .18s,box-shadow .18s}
.contact-fields input:focus,.contact-message-label textarea:focus,.contact-captcha input:focus{border-color:#b653aa;box-shadow:0 0 0 3px #cf4eaa1c}
.contact-fields input::placeholder,.contact-message-label textarea::placeholder{color:#777182}
.contact-fields input:user-invalid,.contact-message-label textarea:user-invalid,.contact-captcha input:user-invalid{border-color:#b95868}
.contact-form-actions{display:flex;justify-content:space-between;gap:12px;margin-top:18px}
.contact-button{min-height:40px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:15px;color:#eee7f4;font:600 10px var(--font-body);cursor:pointer;border:1px solid #40364a;border-radius:8px;background:#ffffff08;transition:transform .18s,border-color .18s,opacity .18s}
.contact-button:hover{transform:translateY(-1px);border-color:#795178}
.contact-button-primary{color:#fff;border:0;background:linear-gradient(110deg,#df41a5,#ad4ddd 57%,#7d92f0);box-shadow:0 6px 17px #d84caa29}
.contact-button-primary:hover{border:0;box-shadow:0 9px 22px #d84caa48}
.contact-button:disabled{cursor:wait;opacity:.65;transform:none}
.contact-message-label textarea{min-height:145px;resize:vertical;line-height:1.65}
.contact-message-label>small{color:#9891a3;font-size:8px;font-weight:400}
.contact-captcha{margin-top:17px;padding:13px;border:1px solid #342d42;border-radius:9px;background:#ffffff04}
.contact-captcha-image-row{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.contact-captcha-image-row img{display:block;width:244px;height:64px;max-width:calc(100% - 48px);border:1px solid #40364a;border-radius:10px;background:#12101a;object-fit:cover}
.contact-captcha-refresh{width:40px;height:40px;display:grid;place-items:center;color:#e6ddec;font-size:21px;cursor:pointer;border:1px solid #40364a;border-radius:9px;background:#ffffff08;transition:transform .18s,border-color .18s,color .18s}
.contact-captcha-refresh:hover{transform:rotate(30deg);color:#f18acb;border-color:#91518b}
.contact-captcha label{display:grid;gap:7px;color:#e0d9e8;font-size:10px}
.contact-captcha label>span{display:inline;color:#ed75be}
.contact-captcha input{max-width:220px;letter-spacing:.16em;text-transform:none}
.contact-captcha p{margin:8px 0 0;color:#9f97a9;font-size:8px}
.contact-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.contact-form-status{min-height:0;margin:0;color:#a9e3c2;font-size:10px;line-height:1.6}
.contact-form-status:not(:empty){margin-top:13px;padding:10px 12px;border:1px solid #4f986b55;border-radius:8px;background:#31764a18}
.contact-form-status.is-error{color:#f1a4ac;border-color:#a34a5855;background:#81323c1c}
.contact-form-privacy{margin:12px 0 0;color:#91899b;font-size:8px;line-height:1.5;text-align:center}
@media(max-width:620px){
  .contact-form{margin-top:24px;padding:17px 14px;border-radius:13px}
  .contact-form-heading{align-items:flex-start;flex-direction:column;gap:9px;padding-bottom:14px}
  .contact-form-progress{width:100%;justify-content:space-between;gap:5px}
  .contact-progress-step{gap:5px;font-size:9px}
  .contact-progress-step b{width:23px;height:23px}
  .contact-progress-line{flex:1;max-width:30px}
  .contact-step-count{align-self:flex-end;font-size:8px}
  .contact-form-step{padding-top:18px}
  .contact-form-step legend{font-size:17px}
  .contact-reasons{grid-template-columns:1fr;gap:7px}
  .contact-reason{min-height:57px;padding:8px 10px}
  .contact-reason small{font-size:8px}
  .contact-button{min-height:39px;padding:0 12px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.contact-reason,.contact-button,.contact-fields input,.contact-message-label textarea,.contact-captcha input{transition:none}}
