.deal-registration { background: #080808; color: var(--wp--preset--color--type-white-primary, #fff); }
.deal-registration__container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.deal-registration__hero { position: relative; display: flex; align-items: center; background: radial-gradient(circle at 85% 20%, rgba(69, 93, 236, .38), transparent 42%), #111; border-bottom: 1px solid rgba(255,255,255,.14); }
.q-deal-registration-header, .q-partner-registration-header { background-size: cover; background-repeat: no-repeat; background-position: center; }
.deal-registration__hero .deal-registration__container { width: min(1180px, calc(100% - 48px)); }
.deal-registration__eyebrow { color: var(--wp--preset--color--brand-orange, #f07362); font: 500 14px/1.4 Inter, sans-serif; letter-spacing: .12em; }
.deal-registration__hero h1 { max-width: 900px; margin: 12px 0 20px; padding-inline: 0; font-size: clamp(44px, 7vw, 84px); font-weight: 400; line-height: 1.04; }
.deal-registration__intro { max-width: 680px; color: rgba(255,255,255,.72); font-size: clamp(17px, 2vw, 21px); }
.deal-registration__required-note { max-width: 680px; margin-top: 10px; color: rgba(255,255,255,.5); font-size: 14px; font-weight: 400; line-height: 1.5; letter-spacing: .01em; }
.deal-registration__body { padding-block: clamp(48px, 8vw, 100px); }
.deal-form { width: 100%; }
.deal-form fieldset { margin: 0 0 56px; padding: 0 0 56px; border: 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.deal-form fieldset:last-of-type { margin-bottom: 40px; padding-bottom: 0; border-bottom: 0; }
/* The partner form's consent block is its own bare fieldset, so the fieldset
   before it would otherwise draw a divider directly above the consent box. */
.deal-form fieldset:has(+ fieldset .deal-form__consent) { margin-bottom: 40px; padding-bottom: 0; border-bottom: 0; }
.deal-form legend { width: 100%; margin-bottom: 34px; padding-inline: 0; color: var(--wp--preset--color--brand-blue, #455dec); font-size: clamp(25px, 3vw, 34px); font-weight: 500; }
.deal-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; }
.deal-form__field { min-width: 0; }
.deal-form__field--full { grid-column: 1 / -1; }
.deal-form label, .deal-form__label { display: block; margin-bottom: 9px; color: rgba(255,255,255,.82); font-size: 14px; font-weight: 500; }
.deal-form label > span[aria-hidden="true"], .deal-form__label > span { margin-left: 4px; color: var(--wp--preset--color--brand-orange, #f07362); }
.deal-form input:not([type="checkbox"]):not([type="radio"]), .deal-form select, .deal-form textarea { box-sizing: border-box; width: 100%; min-height: 52px; padding: 13px 15px; border: 1px solid rgba(255,255,255,.28); border-radius: 5px; outline: 0; background: #171717; color: #fff; font: inherit; transition: border-color .2s, box-shadow .2s; }
.deal-form textarea { resize: vertical; }
.deal-form__phone, .deal-form__phone-errors { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 10px; }
.deal-form input:focus, .deal-form select:focus, .deal-form textarea:focus { border-color: #7687f4; box-shadow: 0 0 0 3px rgba(69,93,236,.22); }
.deal-form [aria-invalid="true"] { border-color: var(--wp--preset--color--brand-orange, #f07362) !important; }
.deal-form.is-validated input:not([type="checkbox"]):not([type="radio"]):invalid,
.deal-form.is-validated select:invalid,
.deal-form.is-validated textarea:invalid { border-color: var(--wp--preset--color--brand-orange, #f07362); box-shadow: 0 0 0 3px rgba(240,115,98,.16); }
.deal-form.is-validated .deal-form__radios:has(input:invalid) label { border-color: var(--wp--preset--color--brand-orange, #f07362); background: rgba(240,115,98,.08); }
.deal-form .deal-form__choices:has(input[aria-invalid="true"]) label,
.deal-form .deal-form__radios:has(input[aria-invalid="true"]) label,
.deal-form .deal-form__consent:has(input[aria-invalid="true"]) label { border-color: var(--wp--preset--color--brand-orange, #f07362); background: rgba(240,115,98,.08); box-shadow: 0 0 0 3px rgba(240,115,98,.12); }
.deal-form__field-error { display: block; min-height: 18px; margin-top: 6px; color: #ff9a8d; font-size: 13px; }
.deal-form__hint { display: block; margin-top: 6px; color: rgba(255,255,255,.58); font-size: 13px; }
.deal-form__choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.deal-form__choices label, .deal-form__radios label { display: flex; align-items: center; gap: 10px; margin: 0; padding: 14px; border: 1px solid rgba(255,255,255,.2); border-radius: 5px; cursor: pointer; }
.deal-form__choices label span, .deal-form__radios label span { color: #fff; }
.deal-form__choices input, .deal-form__radios input { width: 18px; height: 18px; margin: 0; accent-color: var(--wp--preset--color--brand-blue, #455dec); }
.deal-form__radios { display: flex; gap: 12px; }
.deal-form__radios label { min-width: 100px; }
.deal-form__consent label { display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 18px; border: 1px solid rgba(255,255,255,.2); border-radius: 5px; cursor: pointer; }
.deal-form__consent input { flex: 0 0 auto; width: 19px; height: 19px; margin-top: 2px; accent-color: var(--wp--preset--color--brand-blue, #455dec); }
.deal-form__consent label span { color: rgba(255,255,255,.82); line-height: 1.55; }
.deal-form__status { display: none; margin-bottom: 24px; padding: 16px 18px; border-radius: 5px; }
.deal-form__status.is-error, .deal-form__status.is-success { display: block; }
.deal-form__status.is-error { border: 1px solid #f07362; background: rgba(240,115,98,.12); }
.deal-form__status.is-success { border: 1px solid #62d39b; background: rgba(98,211,155,.12); }
.deal-form__actions { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 32px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; background: linear-gradient(135deg, rgba(69,93,236,.14), rgba(240,115,98,.06)); }
.deal-form__actions p { max-width: 570px; margin: 0; color: rgba(255,255,255,.7); font-size: 15px; line-height: 1.55; }
.deal-form__actions button[type="submit"] { display: inline-flex; align-items: center; justify-content: center; padding: 18px 44px; border: 0; border-radius: 6px; font-size: 17px; font-weight: 600; cursor: pointer !important; white-space: nowrap; }
/* q-custom-style.css reveals a '❯' on hover using a fixed `top`, which assumes
   the default button height and sits too high on this larger CTA. Center it on
   the text instead, and keep the hover padding stable so the button cannot shift. */
.deal-form__actions button[type="submit"]:after { position: static; top: auto; margin-left: 8px; font-size: 13px; line-height: 1; }
.deal-form__actions button[type="submit"]:hover { padding: 18px 44px; }
.deal-form__actions button[type="submit"]:hover:after { margin-left: 8px; }
.deal-form__actions button[type="submit"]:disabled { pointer-events: none; cursor: not-allowed !important; opacity: .55; }
.deal-form__honeypot { position: absolute !important; overflow: hidden; width: 1px; height: 1px; clip: rect(0, 0, 0, 0); }
@media (max-width: 760px) {
    .deal-registration__container { width: min(100% - 32px, 1180px); }
    .deal-registration__hero .deal-registration__container { width: min(100% - 32px, 1180px); }
    .deal-form__grid { grid-template-columns: 1fr; gap: 20px; }
    .deal-form__field--full { grid-column: auto; }
    .deal-form__choices { grid-template-columns: 1fr; }
    .deal-form__phone, .deal-form__phone-errors { grid-template-columns: 1fr; }
    .deal-form__actions { align-items: stretch; flex-direction: column; gap: 20px; padding: 24px 20px; }
    .deal-form__actions button { width: 100%; }
}
