/* Scoped to the paid /offer landing page; other website forms are unchanged. */
body.offer-landing-page .offer-page { background: #0D192B; }
body.offer-landing-page .offer-page-copy h1 {
  font-family: var(--sans);
  font-weight: 800;
  font-style: normal;
  font-size: clamp(1.75rem,3.2vw,2.9rem);
  letter-spacing: -.02em;
  line-height: 1.15;
  color: #FFFFFF;
}
body.offer-landing-page .offer-page-copy h1 .offer-headline-line { display: block; white-space: nowrap; }
body.offer-landing-page .offer-page-copy h1 .offer-headline-highlight { color: #C5A450; }
@media (max-width:800px) {
  body.offer-landing-page .offer-page-copy h1 { max-width: none; font-size: clamp(1.75rem,8vw,2rem); }
}
.offer-page-form[data-four-step] { background: #fff; color: #0D192B; scroll-margin-top: 100px; }
.offer-page-form[data-four-step] [hidden] { display: none !important; }
[data-four-step] .offer-progress { margin-bottom: 1.35rem; }
[data-four-step] .offer-progress p { display: flex; justify-content: space-between; gap: .75rem; margin: 0 0 .5rem; color: #596576; font: 600 .75rem/1.5 var(--sans); }
[data-four-step] .offer-progress-track { height: 4px; background: #e9edf1; border-radius: 4px; overflow: hidden; }
[data-four-step] [data-progress-fill] { display: block; width: 25%; height: 100%; background: #C5A450; transition: width .2s ease; }
[data-four-step] .offer-flow-heading { margin-bottom: 1.3rem; }
[data-four-step] .offer-flow-step { gap: .9rem; }
[data-four-step] .offer-flow-heading h2 { margin: 0 0 .45rem; font: 700 clamp(1.55rem,2.2vw,2rem)/1.2 var(--serif); color: #0D192B; }
[data-four-step] .offer-flow-heading p { margin: 0; color: #596576; font: 400 .9rem/1.55 var(--sans); }
[data-four-step] .offer-flow-heading .offer-contact-trust { color: #0D192B; font-weight: 600; }
[data-four-step] fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
[data-four-step] legend { margin-bottom: .55rem; padding: 0; color: #0D192B; font: 700 .9rem/1.4 var(--sans); }
[data-four-step] .choice-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
[data-four-step] [data-answer-group="timeline"] .choice-grid,
[data-four-step] [data-answer-group="motivation"] .choice-grid,
[data-four-step] .choice-grid-compact { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: none; }
[data-four-step] .choice-grid button { min-height: 52px; padding: .65rem .4rem; font-size: .8rem; border: 1px solid #c8cfd8; border-radius: 10px; background: #fff; color: #0D192B; touch-action: manipulation; transition: background .15s ease,border-color .15s ease,box-shadow .15s ease; transform: none; }
[data-four-step] .choice-grid button:hover { background: #faf6eb; transform: none; }
[data-four-step] .choice-grid button.selected { background: #f9f2de; border-color: #9d7d31; box-shadow: inset 0 0 0 1px #9d7d31; color: #0D192B; }
[data-four-step] .choice-grid button:active { background: #efe1b9; }
[data-four-step] button:focus-visible, [data-four-step] input:focus-visible, [data-four-step] textarea:focus-visible { outline: 3px solid #94701e; outline-offset: 3px; }
[data-four-step] h2:focus { outline: none; }
[data-four-step] .button { min-height: 52px; background: #C5A450; color: #0D192B; border-color: #C5A450; }
[data-four-step] .button:hover { background: #d5b65e; }
[data-four-step] .button:disabled { opacity: .7; cursor: wait; transform: none; }
[data-four-step] input:not([type="hidden"]):not([type="checkbox"]) { min-height: 52px; font-size: 16px; border-radius: 10px; }
[data-four-step] label { color: #0D192B; font-size: .86rem; }
[data-four-step] label small { display: block; margin: .2rem 0 .35rem; color: #596576; font: 400 .76rem/1.45 var(--sans); text-transform: none; letter-spacing: normal; }
[data-four-step] .offer-extra-fields { display: grid; gap: .9rem; }
[data-four-step] textarea { display: block; width: 100%; min-height: 120px; padding: .85rem; border: 1px solid #c8cfd8; border-radius: 10px; background: #fff; color: #0D192B; font: 400 16px/1.5 var(--sans); resize: vertical; }
[data-four-step] .offer-flow-actions { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .6rem; margin-top: 1.25rem; }
[data-four-step] .back-button { min-height: 48px; padding: .6rem 1rem; font-size: .85rem; color: #596576; }
[data-four-step] .sms-consent { margin-top: .5rem; font: 400 .8rem/1.5 var(--sans); text-transform: none; letter-spacing: normal; }
[data-four-step] .form-privacy-note { margin-top: .8rem; }
[data-four-step] .qualification-error, [data-four-step] .form-submit-error { margin: .8rem 0; color: #a12d27; font-size: .85rem; }
/* A reserved viewport strip, not a popup: form content can scroll above it. */
html:has(body.offer-landing-page.cookie-banner-open) { height: 100%; overflow: hidden; }
body.offer-landing-page.cookie-banner-open { height: calc(100vh - var(--cookie-banner-height,150px)); height: calc(100dvh - var(--cookie-banner-height,150px)); overflow-y: auto; overscroll-behavior-y: contain; }
body.offer-landing-page .cookie-choice { inset: auto 0 0; max-width: none; border-radius: 0; border: 0; border-top: 1px solid #d9dee5; box-shadow: 0 -3px 16px #0d192b0d; padding: .65rem max(1rem,calc((100vw - 1200px)/2)); gap: 1rem; }
body.offer-landing-page .cookie-choice strong { font-size: .85rem; }
body.offer-landing-page .cookie-choice p { font-size: .76rem; line-height: 1.45; }
body.offer-landing-page .cookie-choice-actions button { font-size: .78rem; padding: .55rem .75rem; min-height: 44px; }
body.offer-landing-page .cookie-choice-actions [data-cookie-accept] { background: #C5A450; }
/* Saved choices stay accessible below the white card, outside the form. */
body.offer-landing-page .offer-page { row-gap: .8rem; }
body.offer-landing-page .offer-page-copy { grid-row: 1 / span 2; }
body.offer-landing-page .offer-page-form { grid-column: 2; grid-row: 1; align-self: end; }
body.offer-landing-page .offer-privacy-controls { grid-column: 2; grid-row: 2; width: 100%; max-width: 620px; justify-self: center; align-self: start; padding: .15rem 0 .5rem; background: #0D192B; }
body.offer-landing-page .offer-privacy-controls > p { display: flex; align-items: center; flex-wrap: wrap; gap: .7rem; margin: 0; font: 400 .72rem/1.5 var(--sans); color: #c4cbd4; }
body.offer-landing-page .offer-privacy-controls > p strong { font-weight: 600; color: #fff; }
body.offer-landing-page .offer-cookie-mobile-copy,
body.offer-landing-page .offer-cookie-actions .cookie-action-mobile { display: none; }
body.offer-landing-page .offer-privacy-controls .offer-cookie-explainer { display: block; margin-top: .25rem; }
body.offer-landing-page .offer-privacy-controls .offer-cookie-explainer a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
body.offer-landing-page .offer-cookie-actions { display: flex; gap: .5rem; margin-top: .4rem; }
body.offer-landing-page .offer-cookie-actions button { min-height: 44px; border: 1px solid #9da8b6; border-radius: 8px; padding: .5rem .8rem; background: transparent; color: #fff; font: 600 .75rem/1.4 var(--sans); cursor: pointer; touch-action: manipulation; }
body.offer-landing-page .offer-cookie-actions [data-cookie-accept] { border-color: #C5A450; color: #efd08a; }
body.offer-landing-page .offer-cookie-actions [aria-pressed="true"] { box-shadow: inset 0 0 0 1px currentColor; }
body.offer-landing-page .offer-privacy-controls:not([data-cookie-state="unset"]) .offer-cookie-explainer { display: none; }
body.offer-landing-page .offer-privacy-controls [hidden] { display: none !important; }
body.offer-landing-page .offer-privacy-controls button:focus-visible { outline: 3px solid #C5A450; outline-offset: 3px; }
/* First visit: reserve space for a compact bottom choice so it never covers a form control. */
html:has(body.offer-landing-page.offer-cookie-pending) { height: 100%; overflow: hidden; }
body.offer-landing-page.offer-cookie-pending { height: calc(100vh - var(--offer-cookie-height, 132px)); height: calc(100dvh - var(--offer-cookie-height, 132px)); overflow-y: auto; overscroll-behavior-y: contain; }
body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] { position: fixed; z-index: 110; inset: auto 0 0; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .15rem 1rem; width: 100%; max-width: none; margin: 0; padding: .65rem max(1rem,calc((100vw - 1200px)/2)) calc(.65rem + env(safe-area-inset-bottom)); border-top: 1px solid #d9dee5; background: #fff; box-shadow: 0 -3px 16px #0d192b12; }
body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] > p { color: #465467; }
body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] > p strong { color: #17243a; }
body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-explainer { grid-column: 1; font-size: .75rem; }
body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-actions { grid-column: 2; grid-row: 1 / span 2; align-self: center; margin: 0; }
body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-actions button { border-color: #17243a; color: #17243a; }
body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-actions [data-cookie-accept] { border-color: #C5A450; background: #C5A450; }
@media (max-width:800px) {
  body.offer-landing-page.offer-cookie-pending { background: #0D192B; }
  body.offer-landing-page .offer-page { row-gap: 0; }
  body.offer-landing-page .offer-page-form { grid-column: auto; grid-row: auto; margin-bottom: .6rem; }
  body.offer-landing-page .offer-privacy-controls { grid-column: auto; grid-row: auto; order: 3; margin-bottom: 1rem; }
  /* The initial mobile choice is a quiet single-row strip; consent behavior is unchanged. */
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .3rem;
    margin: 0;
    padding: .2rem .45rem calc(.2rem + env(safe-area-inset-bottom));
    border-top-color: #42516a;
    background: #0D192B;
    box-shadow: none;
  }
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] > p {
    display: block;
    flex: 1 0 100%;
    min-width: 0;
    margin: 0;
    color: #cbd2dc;
    font: 400 clamp(.56rem,2.6vw,.7rem)/1.2 var(--sans);
    text-align: center;
  }
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] > p a { color: #cbd2dc; text-decoration: underline; }
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] > p strong,
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] [data-cookie-summary],
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-explainer,
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .cookie-action-default { display: none; }
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-mobile-copy,
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-actions .cookie-action-mobile { display: inline; }
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: .15rem;
    margin: 0;
  }
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-actions button {
    min-height: 44px;
    padding: .25rem .2rem;
    border: 0;
    border-radius: 3px;
    background: transparent;
    color: #cbd2dc;
    font: 600 clamp(.56rem,2.45vw,.68rem)/1.1 var(--sans);
    text-decoration: underline;
    text-underline-offset: 2px;
    white-space: nowrap;
  }
  body.offer-landing-page .offer-privacy-controls[data-cookie-state="unset"] .offer-cookie-actions [data-cookie-accept] {
    border: 0;
    background: transparent;
    color: #cbd2dc;
  }
}
@media (max-width:700px) {
  .offer-page-form[data-four-step] { padding: 1.1rem; scroll-margin-top: 88px; }
  [data-four-step] .offer-progress { margin-bottom: 1rem; }
  [data-four-step] .offer-progress p { font-size: .7rem; }
  [data-four-step] .offer-flow-heading { margin-bottom: 1.1rem; }
  [data-four-step] .choice-grid button { font-size: .76rem; }
  [data-four-step] .address-submit-row { grid-template-columns: minmax(0,1fr); }
  [data-four-step] .contact-name-fields { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem; }
  [data-four-step] .offer-flow-actions { grid-template-columns: minmax(0,1fr); }
  [data-four-step] .offer-flow-actions .back-button { min-height: 44px; padding: .45rem; }
  body.offer-landing-page .cookie-choice { padding: .6rem 1rem calc(.6rem + env(safe-area-inset-bottom)); gap: .5rem; }
  body.offer-landing-page .cookie-choice-actions { flex-wrap: nowrap; gap: .5rem; }
  body.offer-landing-page .cookie-choice-actions button { flex: 1; }
}
@media (prefers-reduced-motion:reduce) {
  [data-four-step] [data-progress-fill], [data-four-step] .choice-grid button { transition: none; }
}
