/* Contact consent and verification: shared by the help and contact pages. */
#main .pso-v1-contact-form .pso-contact-consent { margin: 4px 0 20px; }
#main .pso-v1-contact-form .pso-contact-consent-inner { margin: 0; padding: 0; width: 100%; }
#main .pso-v1-contact-form .pso-contact-consent .gdpr_consent,
#main .pso-v1-contact-form .pso-contact-consent .custom-checkbox { display: block; margin: 0; padding: 0; }
#main .pso-v1-contact-form .pso-contact-consent label.psgdpr_consent_message { display: flex; align-items: flex-start; gap: 10px; float: none; width: 100%; max-width: none; height: auto; margin: 0; padding: 0; background: transparent; color: var(--pso-ink); font-family: inherit; font-size: 14px; font-weight: 400; line-height: 1.5; text-align: left; cursor: pointer; }
#main .pso-v1-contact-form .pso-contact-consent input[type=checkbox] { appearance: auto; -webkit-appearance: checkbox; position: static; opacity: 1; flex: 0 0 18px; width: 18px; min-width: 18px; height: 18px; margin: 2px 0 0; transform: none; accent-color: var(--pso-blue); cursor: pointer; }
#main .pso-v1-contact-form .pso-contact-consent label > input + span { display: none; }
#main .pso-v1-contact-form .pso-contact-consent label > span:last-child { display: block; flex: 1; min-width: 0; width: auto; height: auto; margin: 0; padding: 0; border: 0; background: none; font-size: inherit; line-height: inherit; }
#main .pso-v1-contact-form .pso-contact-captcha { margin: 0 0 20px; padding: 16px; border: 1px solid var(--pso-line); border-radius: 8px; background: var(--pso-soft); }
#main .pso-v1-contact-form .pso-contact-captcha > label { margin-bottom: 5px; color: var(--pso-ink); }
body:is(#cms,#contact) #main #content .pso-v1-contact-form .pso-contact-captcha-hint { margin: 0 0 12px; color: var(--pso-muted); font-family: inherit; font-size: 13px !important; line-height: 1.5; }
#main .pso-v1-contact-form .pso-contact-captcha-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 12px; }
#main .pso-v1-contact-form .pso-contact-captcha-image { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; padding: 8px 10px; border: 1px solid var(--pso-line); border-radius: 6px; background: #fff; }
#main .pso-v1-contact-form #pso-contact-code-image { display: block; width: 150px !important; min-width: 150px !important; max-width: 150px !important; height: 35px !important; margin: 0; object-fit: contain; }
#main .pso-v1-contact-form .pso-contact-captcha-refresh { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 10px 12px; border: 1px solid #b9cdd8; border-radius: 7px; background: #fff; color: var(--pso-blue); font-family: inherit; font-size: 13px; font-weight: 700; line-height: 1.3; text-decoration: none; cursor: pointer; }
#main .pso-v1-contact-form .pso-contact-captcha-refresh:hover { background: var(--pso-blue); border-color: var(--pso-blue); color: #fff; }
#main .pso-v1-contact-form .pso-contact-captcha-refresh svg { width: 16px; height: 16px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; }
#main .pso-v1-contact-form #pso-contact-captcha { width: 100%; max-width: 320px; min-width: 0; margin: 0; background: #fff; font-size: 16px; }
#main .pso-v1-contact-form .pso-contact-captcha-refresh:focus-visible,
#main .pso-v1-contact-form #pso-contact-captcha:focus-visible,
#main .pso-v1-contact-form .pso-contact-consent input:focus-visible { outline: 2px solid var(--pso-blue); outline-offset: 3px; }
@media (max-width: 480px) {
  #main .pso-v1-contact-form .pso-contact-captcha { padding: 12px; }
  #main .pso-v1-contact-form .pso-contact-captcha-refresh { padding: 9px 10px; }
  #main .pso-v1-contact-form .pso-contact-captcha-refresh svg { display: none; }
}

/* Turnstile keeps the contact form's typography and responsive spacing. */
#main .pso-v1-contact-form .pso-contact-turnstile > .form-control-label { display:block; float:none; width:100%; margin:0 0 8px; padding:0; color:var(--pso-ink); font-family:inherit; font-size:14px; font-weight:600; line-height:1.5; text-align:left; }
#main .pso-v1-contact-form .pso-contact-turnstile > .col-md-6 { float:none; width:100%; padding:0; }
#main .pso-v1-contact-form .pso-contact-turnstile .cf-turnstile { max-width:100%; }
