/* Generated by intake-form/build-hero-embed.py. Do not edit by hand. */
/* Scoped under .bfx-intake so nothing leaks into, or is broken by, Elementor. */
.bfx-intake {
  --navy:#102C57;
  --navy-deep:#0B1F3D;
  --accent:#3F78CF;
  --accent-ink:#2F5FA8;
  --ink:#20201F;
  --body:#333333;
  --muted:#69727D;
  --hair:#E5E5E5;
  --panel:#F3F3F4;
  --panel-2:#EFEFEF;
  --white:#fff;
  --shell:920px;
}
.bfx-intake * {box-sizing:border-box}
.bfx-intake /* The hidden attribute must beat any display rule we set. Without this, .bfx-intake .btn and .input (both inline-block) keep rendering while hidden. */
[hidden] {display:none !important}
.bfx-intake {-webkit-text-size-adjust:100%}
.bfx-intake {
  margin:0;
  background:var(--white);
  color:var(--body);
  font-family:"Poppins",system-ui,sans-serif;
  font-size:16px;
  line-height:1.6;
}
.bfx-intake h1, .bfx-intake h2, .bfx-intake h3, .bfx-intake legend, .bfx-intake .btn, .bfx-intake .progress__num, .bfx-intake .decoded__vehicle, .bfx-intake .done__title {
  font-family:"Barlow",system-ui,sans-serif;
}
.bfx-intake /* ---------- masthead ---------- */
.masthead {background:var(--navy);color:var(--white);padding:64px 24px 56px}
.bfx-intake .masthead__inner {max-width:var(--shell);margin:0 auto}
.bfx-intake .masthead__kicker {
  font-family:"Barlow",sans-serif;font-weight:800;font-style:italic;
  letter-spacing:.14em;text-transform:uppercase;font-size:12px;
  margin:0 0 14px;color:#9DB6DE;
}
.bfx-intake .masthead__title {font-size:clamp(38px,6vw,64px);font-weight:800;line-height:1;margin:0 0 16px;letter-spacing:-.01em}
.bfx-intake .masthead__sub {margin:0;max-width:56ch;color:#D3DDEC;font-size:17px}
.bfx-intake /* ---------- progress rail ---------- */
.progress {border-bottom:1px solid var(--hair);background:var(--white);position:sticky;top:0;z-index:20}
.bfx-intake .progress__list {
  max-width:var(--shell);margin:0 auto;padding:0 24px;list-style:none;
  display:flex;gap:0;overflow-x:auto;scrollbar-width:none;
}
.bfx-intake .progress__list::-webkit-scrollbar {display:none}
.bfx-intake .progress__step {
  display:flex;align-items:baseline;gap:8px;padding:16px 20px 14px;
  border-bottom:3px solid transparent;white-space:nowrap;
  color:var(--muted);transition:color .18s ease,border-color .18s ease;
}
.bfx-intake .progress__step:first-child {padding-left:0}
.bfx-intake .progress__num {font-weight:800;font-size:12px;letter-spacing:.1em}
.bfx-intake .progress__label {font-size:13px;font-weight:500}
.bfx-intake .progress__step.is-active {color:var(--navy);border-bottom-color:var(--navy)}
.bfx-intake .progress__step.is-done {color:var(--accent-ink)}
.bfx-intake .progress__step.is-done .progress__num::after {content:"";}
.bfx-intake /* ---------- shell ---------- */
.shell {max-width:var(--shell);margin:0 auto;padding:48px 24px 96px}
.bfx-intake .step {display:none;animation:rise .28s ease both}
.bfx-intake .step.is-active {display:block}

@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce) {
.bfx-intake .step {animation:none}
}
.bfx-intake .step__title {font-size:clamp(26px,3.6vw,36px);font-weight:800;color:var(--navy);margin:0 0 12px;line-height:1.1}
.bfx-intake .step__lede {margin:0 0 36px;max-width:62ch;color:var(--muted)}
.bfx-intake /* ---------- fields ---------- */
.field {margin:0 0 32px;border:0;padding:0;min-width:0}
.bfx-intake .field__label {
  display:block;font-family:"Barlow",sans-serif;font-weight:700;
  font-size:13px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--navy);margin:0 0 10px;padding:0;
}
.bfx-intake .req {color:var(--accent-ink)}
.bfx-intake .field__note {margin:8px 0 0;font-size:13px;color:var(--muted);max-width:62ch}
.bfx-intake .field__error {margin:8px 0 0;font-size:13px;color:#B3261E;font-weight:500}
.bfx-intake .input {
  width:100%;padding:14px 16px;border:1px solid var(--hair);border-radius:0;
  background:var(--white);color:var(--ink);font-family:inherit;font-size:16px;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.bfx-intake .input:focus {outline:none;border-color:var(--navy);box-shadow:inset 0 -3px 0 var(--navy)}
.bfx-intake .input::placeholder {color:#A8AEB6}
.bfx-intake .input--area {resize:vertical;line-height:1.55}
.bfx-intake .input--vin {text-transform:uppercase;letter-spacing:.14em;font-weight:500}
.bfx-intake select.input {appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--navy) 50%),linear-gradient(135deg,var(--navy) 50%,transparent 50%);background-position:calc(100% - 21px) 22px,calc(100% - 15px) 22px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:46px}
.bfx-intake .grid {display:grid;gap:0 24px}
.bfx-intake .grid--2 {grid-template-columns:1fr 1fr}
.bfx-intake .grid--3 {grid-template-columns:repeat(3,1fr)}
@media (max-width:640px) {
.bfx-intake .grid--2, .bfx-intake .grid--3 {grid-template-columns:1fr}
}
.bfx-intake .vinrow {display:flex;gap:0}
.bfx-intake .vinrow .input {flex:1}
.bfx-intake .vinrow .btn {flex:0 0 auto;margin-left:-1px}
.bfx-intake /* ---------- choices ---------- */
.choices {display:flex;gap:0;flex-wrap:wrap}
.bfx-intake .choices--wrap {gap:0}
.bfx-intake .choice {position:relative;display:inline-flex;margin:0 -1px -1px 0}
.bfx-intake .choice input {position:absolute;opacity:0;width:0;height:0}
.bfx-intake .choice span {
  display:inline-block;padding:12px 20px;border:1px solid var(--hair);
  font-size:14px;font-weight:500;color:var(--body);cursor:pointer;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
  user-select:none;background:var(--white);
}
.bfx-intake .choice span:hover {border-color:var(--navy);color:var(--navy);z-index:2;position:relative}
.bfx-intake .choice input:checked + span {background:var(--navy);border-color:var(--navy);color:var(--white);z-index:3;position:relative}
.bfx-intake .choice input:focus-visible + span {outline:2px solid var(--accent);outline-offset:2px;z-index:4}
.bfx-intake .reveal {
  margin-top:20px;padding:22px 0 2px 22px;
  border-left:2px solid var(--navy);
  animation:rise .22s ease both;
}
@media (prefers-reduced-motion:reduce) {
.bfx-intake .reveal {animation:none}
}
.bfx-intake .reveal .field:last-child {margin-bottom:0}
.bfx-intake /* ---------- decoded panel ---------- */
.decoded {border:1px solid var(--hair);border-top:3px solid var(--navy);padding:26px 24px;margin:0 0 32px;background:var(--panel)}
.bfx-intake .decoded__eyebrow {margin:0 0 4px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.bfx-intake .decoded__vehicle {margin:0 0 20px;font-size:clamp(21px,3vw,28px);font-weight:800;color:var(--navy);line-height:1.15}
.bfx-intake .decoded__grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px 24px;margin:0 0 18px}
.bfx-intake .decoded__grid div {min-width:0}
.bfx-intake .decoded__grid dt {font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:2px}
.bfx-intake .decoded__grid dd {margin:0;font-size:15px;color:var(--ink);font-weight:500;overflow-wrap:anywhere}
.bfx-intake .decoded__confirm {margin:0;padding-top:16px;border-top:1px solid var(--hair);font-size:13px;color:var(--muted)}
.bfx-intake .linkbtn {background:none;border:0;padding:0;font:inherit;font-size:13px;color:var(--accent-ink);text-decoration:underline;cursor:pointer}
.bfx-intake .linkbtn:hover {color:var(--navy)}
.bfx-intake .manual {border-left:2px solid var(--navy);padding:2px 0 2px 22px;margin:0 0 32px}
.bfx-intake .manual__head {font-family:"Barlow",sans-serif;font-weight:700;font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:var(--navy);margin:0 0 18px}
.bfx-intake /* ---------- photo drop ---------- */
.drop {position:relative;border:1px dashed #C4CBD4;padding:44px 24px;text-align:center;background:var(--panel);transition:border-color .16s ease,background .16s ease}
.bfx-intake .drop.is-over, .bfx-intake .drop:hover {border-color:var(--navy);background:var(--panel-2)}
.bfx-intake .drop__input {position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.bfx-intake .drop__icon {width:34px;height:26px;color:var(--navy);margin-bottom:12px}
.bfx-intake .drop__title {margin:0 0 6px;font-weight:600;color:var(--navy)}
.bfx-intake .drop__hint {margin:0 auto;max-width:52ch;font-size:13px;color:var(--muted)}
.bfx-intake .thumbs {display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-top:8px}
.bfx-intake .thumbs figure {margin:0;position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--panel)}
.bfx-intake .thumbs img {width:100%;height:100%;object-fit:cover;display:block}
.bfx-intake .thumbs figcaption {position:absolute;left:0;bottom:0;right:0;background:rgba(16,44,87,.86);color:#fff;font-size:10px;padding:4px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bfx-intake /* ---------- consent + summary ---------- */
.consent {display:flex;gap:12px;align-items:flex-start;padding:20px;border:1px solid var(--hair);background:var(--panel);margin:0 0 28px;cursor:pointer}
.bfx-intake .consent input {margin:3px 0 0;flex:0 0 auto;width:17px;height:17px;accent-color:var(--navy)}
.bfx-intake .consent span {font-size:13px;color:var(--muted);line-height:1.55}
.bfx-intake .summary {border-top:1px solid var(--hair);padding-top:24px}
.bfx-intake .summary h3 {font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:var(--navy);margin:0 0 14px;font-weight:700}
.bfx-intake .summary dl {display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px 24px;margin:0}
.bfx-intake .summary dt {font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}
.bfx-intake .summary dd {margin:0;font-size:14px;color:var(--ink);overflow-wrap:anywhere}
.bfx-intake /* ---------- buttons + nav ---------- */
.btn {
  display:inline-block;padding:15px 34px;border-radius:0;border:1px solid var(--navy);
  font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;
  cursor:pointer;transition:background .16s ease,color .16s ease;
}
.bfx-intake .btn--solid {background:var(--navy);color:var(--white)}
.bfx-intake .btn--solid:hover {background:var(--navy-deep);border-color:var(--navy-deep)}
.bfx-intake .btn--ghost {background:var(--white);color:var(--navy)}
.bfx-intake .btn--ghost:hover {background:var(--navy);color:var(--white)}
.bfx-intake .btn:focus-visible {outline:2px solid var(--accent);outline-offset:2px}
.bfx-intake .btn[disabled] {opacity:.5;cursor:not-allowed}
.bfx-intake .nav {display:flex;gap:12px;justify-content:space-between;margin-top:44px;padding-top:28px;border-top:1px solid var(--hair)}
.bfx-intake .nav .btn--solid {margin-left:auto}
.bfx-intake .formerror {margin-top:28px;padding:16px 20px;border-left:3px solid #B3261E;background:#FDF3F2;color:#8C1D18;font-size:14px}
.bfx-intake /* ---------- done ---------- */
.done {max-width:var(--shell);margin:0 auto;padding:16px 0 40px}
.bfx-intake .done__eyebrow {margin:0 0 8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);font-weight:600}
.bfx-intake .done__title {font-size:clamp(30px,5vw,46px);font-weight:800;color:var(--navy);margin:0 0 14px;line-height:1.05}
.bfx-intake .done__body {margin:0 0 28px;max-width:56ch;color:var(--muted)}
.bfx-intake .done__payload {background:var(--navy);color:#C9D8EF;padding:22px;overflow:auto;font-size:12px;line-height:1.6;max-height:420px;white-space:pre-wrap;overflow-wrap:anywhere}
.bfx-intake .foot {border-top:1px solid var(--hair);padding:24px;text-align:center}
.bfx-intake .foot p {margin:0;font-size:12px;color:var(--muted);letter-spacing:.04em}
@media (max-width:640px) {
.bfx-intake .masthead {padding:44px 20px 40px}
.bfx-intake .shell {padding:32px 20px 72px}
.bfx-intake .vinrow {flex-direction:column}
.bfx-intake .vinrow .btn {margin-left:0;margin-top:-1px;width:100%}
.bfx-intake .nav {flex-direction:column-reverse}
.bfx-intake .nav .btn {width:100%;margin-left:0}
}
.bfx-intake /* ---------- entry mode tabs ---------- */
.entry {display:flex;gap:0;margin:0 0 32px;border-bottom:1px solid var(--hair)}
.bfx-intake .entry__tab {
  appearance:none;background:none;border:0;border-bottom:3px solid transparent;
  padding:12px 26px 13px;margin-bottom:-1px;cursor:pointer;
  font-family:"Barlow",sans-serif;font-weight:700;font-size:14px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
  transition:color .16s ease,border-color .16s ease;
}
.bfx-intake .entry__tab:first-child {padding-left:0}
.bfx-intake .entry__tab:hover {color:var(--navy)}
.bfx-intake .entry__tab.is-on {color:var(--navy);border-bottom-color:var(--navy)}
.bfx-intake .entry__tab:focus-visible {outline:2px solid var(--accent);outline-offset:2px}
.bfx-intake .pane {display:none}
.bfx-intake .pane.is-on {display:block}
@media (max-width:640px) {
.bfx-intake .entry__tab {padding:12px 16px 13px;font-size:13px;flex:1;text-align:center}
.bfx-intake .entry__tab:first-child {padding-left:16px}
}
.bfx-intake /* ---------- optional markers ---------- */
.step__opt {
  font-family:"Poppins",sans-serif;font-weight:500;font-size:14px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
  vertical-align:middle;margin-left:10px;
}
.bfx-intake /* ---------- deploy-only elements ----------
   These classes exist only on the deployed /sell/ route (added by
   sync-to-site.py), .bfx-intake not in this source build. The rules live here anyway so a
   sync cannot overwrite them, .bfx-intake which is exactly what happened once. */
.masthead__flag {
  margin:18px 0 0;padding:12px 16px;max-width:62ch;
  border-left:3px solid var(--accent);background:rgba(255,255,255,.07);
  color:#D3DDEC;font-size:13px;line-height:1.5;
}
.bfx-intake .done__again {margin:22px 0 0;font-size:14px;color:var(--muted)}
.bfx-intake .done__again a {color:var(--accent-ink)}
.bfx-intake .foot a {color:var(--accent-ink)}
.bfx-intake .thumbs figure.is-failed {outline:2px solid #B3261E;outline-offset:-2px}
.bfx-intake .thumbs figure.is-failed figcaption {background:rgba(179,38,30,.9)}
.bfx-intake .consent a {color:var(--accent-ink)}
/* ---------- hero-only adjustments (not in the /sell/ stylesheet) ---------- */
/* The hero column is roughly 630px against the /sell/ page's wider shell, so the
   six-step rail does not fit at the source's 20px step padding. The source
   scrolls it behind a hidden scrollbar, which on the standalone page never
   triggers but in the hero left step 06 off the right edge with no affordance.
   Tighten the padding instead so all six sit on ONE row, and only fall back to
   wrapping at the widths where one row genuinely cannot fit. */
.bfx-intake .progress__list{flex-wrap:nowrap;overflow-x:visible}
.bfx-intake .progress__step{padding:12px 12px 10px}
.bfx-intake .progress__step:first-child{padding-left:0}
.bfx-intake .progress__step:last-child{padding-right:0}
/* Between 1025 and 1279 the hero is still two-column but the panel is at its
   narrowest (510px at 1100), where the rail needs 567px and clips a step.
   Measured, not guessed. Tighten type and padding just in that band so one row
   still holds. */
@media (min-width:1025px) and (max-width:1279px){
  .bfx-intake .progress__step{padding:12px 7px 10px}
  .bfx-intake .progress__label{font-size:11px}
  .bfx-intake .progress__num{font-size:10px;letter-spacing:.04em}
}
/* .shell drops to 20px here while .progress__list stays at 24px, which left the
   rail 4px right of the step heading. Same mismatch exists on /sell/. */
@media (max-width:640px){
  .bfx-intake .progress__list{padding-left:20px;padding-right:20px;flex-wrap:wrap}
}
