/* =========================================================
   DBD QUOTE BUILDER - PHASE 2.1 REDESIGN
   Load this AFTER qbp-frontend.css
========================================================= */

/* =========================================================
   QBP BASE FOUNDATION
   Layout/reset only. No visual design.
========================================================= */

.qbp-root {
  max-width: none;
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.10), transparent 34%),
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.045), transparent 26%),
    linear-gradient(180deg,#030606 0%,#000 48%,#020202 100%);
  padding: 14px 42px 40px;
  border-radius: 0 0 22px 22px;
}

.qbp-root *,
.qbp-root *::before,
.qbp-root *::after {
  box-sizing: border-box;
}

.qbp-root .qbp-card,
.qbp-root .qbp-app {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  display: block;
  box-sizing: border-box;
}

/* Divi width fixes */
.et_pb_row:has(.qbp-root),
.et_pb_column:has(.qbp-root),
.et_pb_module:has(.qbp-root) {
  width: 100% !important;
  max-width: 1500px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Form foundation */
.qbp-root select,
.qbp-root input,
.qbp-root textarea,
.qbp-root button {
  box-sizing: border-box;
  font-family: inherit;
}

.qbp-root select,
.qbp-root input,
.qbp-root textarea {
  max-width: 100%;
}

/* Holder foundation */
.qbp-holder,
.qbp-step {
  width: 100%;
  min-width: 0;
}

.qbp-results-holder,
.qbp-square-slot-picker {
  width: 100%;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
}

/* =========================================================
   1. PHASE 2.1 PAGE SHELL
========================================================= */

.qbp-root {
  max-width: none;
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.10), transparent 34%),
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.045), transparent 26%),
    linear-gradient(180deg,#030606 0%,#000 48%,#020202 100%);
  padding: 14px 42px 40px;
  border-radius: 0 0 22px 22px;
}

.qbp-root .qbp-card{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding-top:0 !important;
}

.qbp-root .qbp-card > h2,
.qbp-root .qbp-card > .qbp-title {
  display: none !important;
}

.qbp-vehicle-shell {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0;
  color: #fff;
}

/* =========================================================
   2. TOP PROGRESS STEPPER
========================================================= */

.qbp-flow-stepper {
  display: grid;
  grid-template-columns: auto 150px auto 150px auto;
  align-items: center;
  justify-content: center;
  column-gap: 18px;
  margin: 0 auto 16px;
  max-width: 1120px;
}

.qbp-flow-step {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #777;
  min-width: 0;
  text-align: left;
}

.qbp-flow-step[role="button"]{
  cursor:pointer;
}

.qbp-flow-step > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.qbp-flow-step span {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;

  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.32);

  display: grid;
  place-items: center;

  font-size: 19px;
  font-weight: 700;
  line-height: 1;
}

.qbp-flow-step strong {
  display: block;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  white-space: nowrap;
  margin-top: 1px;
}

.qbp-flow-edit{
  display:none;
  margin:4px 0 0;
  color:#9dff00;
  font-size:11px;
  font-style:normal;
  font-weight:800;
  text-transform:uppercase;
}

.qbp-flow-step.is-complete .qbp-flow-edit{
  display:inline-flex;
}

.qbp-flow-step small {
  display: block;
  color: #9a9a9a;
  font-size: 11px;
  font-weight: 400;
  white-space: nowrap;
  margin-top: -1px;
}

.qbp-flow-step.is-active {
  color: #9dff00;
}

.qbp-flow-step.is-active span {
  background: #6fb800;
  color: #ffffff;
  border-color: #9dff00;
  box-shadow: none;
}

.qbp-flow-line {
  height: 1px;
  background: linear-gradient(90deg, #9dff00, rgba(255,255,255,.22));
}

.qbp-flow-line.is-complete{
  height:2px;
  background:#9dff00 !important;
  box-shadow:0 0 14px rgba(157,255,0,.45);
}

/* =========================================================
   3. PAGE 1 - VEHICLE LAYOUT
========================================================= */

.qbp-vehicle-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 24px;
}

.qbp-vehicle-main-card,
.qbp-vehicle-side-card {
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.07), transparent 34%),
    linear-gradient(180deg, rgba(14,18,17,.82), rgba(2,3,3,.74));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 18px 46px rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(8px);
}

.qbp-vehicle-main-card {
  padding: 36px 42px 36px;
  min-height: 520px;
}

.qbp-vehicle-main-card h2 {
  color: #ffffff;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 4px;
  text-align: left;
}

.qbp-vehicle-main-card > p {
  color: #c8c8c8;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0 0 24px;
  text-align: left;
}

.qbp-vehicle-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px 36px;
}

.qbp-vehicle-fields .qbp-holder,
.qbp-vehicle-fields .qbp-step {
  max-width: none;
  margin: 0;
}

.qbp-vehicle-fields .qbp-step label,
.qbp-vehicle-fields .qbp-holder label {
  display: block;
  width: 100%;
  color: #cfcfcf;
  font-size: 14px;
  font-weight: 700;
  text-align: left !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: 8px;
  padding-left: 2px;
}

.qbp-vehicle-fields .qbp-step strong {
  display: block;
  width: 100%;
  text-align: left !important;
}

.qbp-required-star {
  color: #ff0000;
  margin-left: 3px;
}

.qbp-vehicle-fields select,
.qbp-vehicle-fields .qbp-custom-select-trigger {
  min-height: 52px;
  width: 100% !important;
  border-radius: 7px !important;

  background-color: #040404 !important;

  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.24) !important;

  font-size: 18px !important;
  font-weight: 400 !important;

  padding: 12px 46px 12px 16px !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.035),
    0 8px 16px rgba(0, 0, 0, 0.22) !important;

  text-align: left !important;

  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;

  position: relative;
}

.qbp-vehicle-fields select:focus {
  border-color: #9dff00 !important;
  box-shadow: 0 0 0 3px rgba(157, 255, 0, 0.14) !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger {
  position: relative;
}

.qbp-vehicle-fields .qbp-custom-select-trigger::after {
  content: "";
  position: absolute;
  right: 18px;
  top: 50%;
  width: 12px;
  height: 12px;

  border-right: 3px solid #9dff00;
  border-bottom: 3px solid #9dff00;

  transform: translateY(-65%) rotate(45deg);

  pointer-events: none;
}

.qbp-vehicle-fields .qbp-custom-select.is-open .qbp-custom-select-trigger::after {
  transform: translateY(-35%) rotate(-135deg);
}

.qbp-vehicle-fields .qbp-holder-disabled {
  opacity: 0.38;
  pointer-events: none;
  filter: grayscale(0.35);
}

.qbp-vehicle-fields select:disabled,
.qbp-vehicle-fields .qbp-select-disabled {
  cursor: not-allowed;
}

.qbp-vehicle-fields .qbp-holder-loading-options select,
.qbp-vehicle-fields .qbp-holder-loading-options .qbp-custom-select-trigger {
  cursor: wait;
}

.qbp-vehicle-fields .qbp-holder-updating select,
.qbp-vehicle-fields .qbp-holder-updating .qbp-custom-select-trigger {
  cursor: wait;
}

/* =========================================================
   4. PAGE 1 - SIDE CARD
========================================================= */

.qbp-vehicle-side-card {
  min-height: 520px;
  padding: 32px 38px 30px;
  text-align: center;
}

.qbp-side-icon {
  width: 96px;
  height: 110px;
  margin: 0 auto 18px;

  background-image: url("data:image/svg+xml,%3Csvg width='96' height='110' viewBox='0 0 96 110' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M48 9 C58 18 70 19 80 18 V47 C80 72 66 91 48 102 C30 91 16 72 16 47 V18 C26 19 38 18 48 9 Z' stroke='%2384d400' stroke-width='5' fill='none'/%3E%3Cpath d='M31 55 L43 67 L67 40' stroke='%2384d400' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.qbp-vehicle-side-card h3 {
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 0px;
}

.qbp-vehicle-side-card p {
  color: #c7c7c7;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.7;
  margin: 0;
}

.qbp-side-tagline {
  max-width: 200px;
  margin: 22px auto 0;
  padding-top: 16px;
  border-top: 1px solid rgba(157,255,0,.8);
  color: #9dff00;
  font-size: 18px;
  font-weight: 500;
  font-style: italic;
  line-height: 1.5;
}

/* =========================================================
   5. MOBILE RESPONSIVE
========================================================= */

@media (max-width: 900px) {
  .qbp-flow-stepper {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .qbp-flow-line {
    display: none;
  }

  .qbp-vehicle-layout {
    grid-template-columns: 1fr;
  }

  .qbp-vehicle-fields {
    grid-template-columns: 1fr;
  }

  .qbp-vehicle-main-card {
    padding: 30px 24px;
  }

  .qbp-vehicle-main-card h2 {
    font-size: 32px;
  }

  .qbp-vehicle-main-card > p {
    font-size: 17px;
  }

  .qbp-vehicle-side-card {
    padding: 34px 24px;
  }
}

/* =========================================================
   REFRESH / CHOICE CARD LAYOUT
   ---------------------------------------------------------
   Makes the refresh section span the full width row
   underneath the Model + Dually row.
========================================================= */

.qbp-refresh-full-width {
  grid-column: 1 / -1;
}

/* =========================================================
   GENERIC CHOICE PANEL
   ---------------------------------------------------------
   Shared card container used for:
   - Dually cards
   - Refresh cards
========================================================= */

.qbp-choice-panel {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: #050505;
  padding: 10px 12px;
}

/* =========================================================
   PANEL TITLE
   ---------------------------------------------------------
   The heading/question shown above the options.
========================================================= */

.qbp-choice-title {
  text-align: left;
  color: #d8d8d8;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

/* =========================================================
   TWO-COLUMN OPTION LAYOUT
   ---------------------------------------------------------
   Used for Yes/No style card selections.
========================================================= */

.qbp-choice-options-two {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* =========================================================
   INDIVIDUAL OPTION CARD
   ---------------------------------------------------------
   The clickable selection cards themselves.
========================================================= */

.qbp-choice-option {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 14px;

  min-height: 68px;
  padding: 8px 10px;

  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);

  background: #070707;
  color: #fff;

  cursor: pointer;
  transition: .18s ease;

  text-align: left;
}

/* Main option heading */
.qbp-choice-option strong {
  display: block;
  font-size: 15px;
  margin-bottom: 3px;
}

/* Supporting subtext */
.qbp-choice-option small {
  display: block;
  color: #9a9a9a;
  font-size: 12px;
  line-height: 1.25;
  text-align: left;
}

/* =========================================================
   RADIO INDICATOR
   ---------------------------------------------------------
   Circular selection indicator on the left side.
========================================================= */

.qbp-choice-radio {
  width: 22px;
  height: 22px;

  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.45);

  flex: 0 0 22px;
}

/* =========================================================
   SELECTED STATE
   ---------------------------------------------------------
   Visual styling when a card is selected.
========================================================= */

.qbp-choice-option.is-selected {
  border-color: #9dff00;
  box-shadow: 0 0 0 1px rgba(157,255,0,.15);
}

/* Filled radio state */
.qbp-choice-option.is-selected .qbp-choice-radio {
  border-color: #9dff00;
  background: #9dff00;
  box-shadow: inset 0 0 0 4px #050505;
}

/* =========================================================
   DUALLY PANEL TUNING
   ---------------------------------------------------------
   Makes the Dually card group fit neatly in the right-side
   field slot beside Model.
========================================================= */

.qbp-dually-choice-panel {
  padding: 10px 12px;
  min-height: 100%;
}

.qbp-dually-choice-panel .qbp-choice-title {
  font-size: 13px;
  margin-bottom: 8px;
  text-align: left;
}

/* Keep the two choices side-by-side inside the dually panel */
.qbp-dually-choice-panel .qbp-choice-options-two {
  gap: 12px;
}

/* Dually option card layout:
   Row 1: radio + Yes/No
   Row 2: description starts under the radio */
.qbp-dually-choice-panel .qbp-choice-option {
  min-height: 58px;
  padding: 8px 10px;

  display: grid !important;
  grid-template-columns: 22px 1fr;
  grid-template-rows: auto auto;
  column-gap: 10px;
  row-gap: 6px;
  align-items: center;

  text-align: left !important;
}

/* Radio circle */
.qbp-dually-choice-panel .qbp-choice-radio {
  grid-column: 1;
  grid-row: 1;
  margin: 0 !important;
}

/* Allow the nested text span to participate in the grid */
.qbp-dually-choice-panel .qbp-choice-option > span:last-child {
  display: contents !important;
}

/* Yes / No label */
.qbp-dually-choice-panel .qbp-choice-option strong {
  grid-column: 2;
  grid-row: 1;

  display: block;
  margin: 0 !important;

  font-size: 15px;
  line-height: 1.1;
  text-align: left !important;
}

/* Description underneath */
.qbp-dually-choice-panel .qbp-choice-option small {
  grid-column: 1 / -1;
  grid-row: 2;

  display: block;
  margin: 0 !important;

  font-size: 12px;
  line-height: 1.25;
  text-align: left !important;
}

/* =========================================================
   PAGE 1 SUBMIT AREA
========================================================= */

.qbp-vehicle-submit {
  grid-column: 1 / -1;
  margin-top: 6px;
}

.qbp-vehicle-error {
  display:none;
  text-align: center;
  color: #ff2a2a;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 16px;
  margin-top: 16px;
}

.qbp-vehicle-error.is-visible{
  display:block;
}

/* Main CTA button */
.qbp-vehicle-submit-btn {
  width: 100%;
  min-height: 58px;
  
  position: relative;
  justify-content: center;
  padding-right: 72px;

  border: 1px solid rgba(132,212,0,.85);
  border-radius: 7px;

  cursor: pointer;

  background: linear-gradient(180deg, #7cc800 0%, #4f8f00 100%);

  color: #ffffff;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;

  font-size: 20px;
  font-weight: 750;
  letter-spacing: 0.025em;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 8px 18px rgba(0,0,0,.25);

  transition: .18s ease;
}

.qbp-vehicle-submit-btn:hover:not(:disabled) {
  filter: brightness(1.05);
}

.qbp-vehicle-submit-btn:disabled {
  opacity: .72;
  cursor: not-allowed;
  filter: grayscale(.25);
}

.qbp-vehicle-submit-btn.is-incomplete{
  opacity:.9;
}

.qbp-submit-arrow {
  position: absolute;
  right: 26px;
  top: 50%;
  transform: translateY(-52%);

  font-size: 22px;
  font-weight: 800;
  line-height: 1;
}

/* =========================================================
   STEP 2 - FLUID FILM FINISH SELECTOR
========================================================= */

.qbp-finish-selector{
  max-width: 900px;
  margin: 34px auto 34px;
  padding: 24px 28px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background:
    radial-gradient(circle at top left, rgba(157,255,0,.035), transparent 30%),
    linear-gradient(180deg, rgba(12,12,12,.98), rgba(3,3,3,.98));
}

.qbp-finish-title{
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 18px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
  text-align: center;
  margin-bottom: 18px;
}

.qbp-finish-title span{
  height: 1px;
  background: rgba(255,255,255,.28);
}

.qbp-finish-options{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  max-width: 700px;
  margin: 0 auto;
}

.qbp-finish-option{
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 64px;
  padding: 12px 22px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 10px;
  background: #090909;
  color: #ffffff;
  text-align: left;
  cursor: pointer;
}

.qbp-finish-option.is-selected{
  border-color: #9dff00;
  box-shadow: 0 0 0 1px rgba(157,255,0,.12);
}

.qbp-finish-radio{
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  border-radius: 999px;
  border: 3px solid rgba(255,255,255,.55);
}

.qbp-finish-option.is-selected .qbp-finish-radio{
  border-color: #9dff00;
  box-shadow: inset 0 0 0 5px #090909;
  background: #9dff00;
}

.qbp-finish-option strong{
  display: block;
  color: #ffffff;
  font-size: 17px;
  line-height: 1.15;
  text-transform: uppercase;
}

.qbp-finish-option small{
  display: block;
  color: #cfcfcf;
  font-size: 14px;
  margin-top: 3px;
}

.qbp-finish-note{
  margin: 16px 0 0;
  color: #d8d8d8;
  font-size: 15px;
  line-height: 1.45;
  text-align: center;
}

@media (max-width: 700px){
  .qbp-finish-options{
    grid-template-columns: 1fr;
  }

  .qbp-finish-title{
    grid-template-columns: 1fr;
  }

  .qbp-finish-title span{
    display: none;
  }
}
/* =========================================================
   STEP 2 - TITLE AREA
========================================================= */

.qbp-results{
  max-width: 1100px;
  margin: 18px auto 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.qbp-results::before{
  display: none !important;
}

.qbp-results-intro{
  position:relative;
  text-align: center !important;
  margin-bottom: 18px !important;
}

.qbp-share-quote-btn{
  position:absolute;
  top:0;
  right:0;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:999px;
  border:1px solid rgba(157,255,0,.52);
  background:rgba(157,255,0,.08);
  color:#9dff00;
  font-size:22px;
  font-weight:900;
  cursor:pointer;
  pointer-events:auto;
  z-index:50;
  box-shadow:0 0 18px rgba(157,255,0,.14);
}

.qbp-share-quote-btn:hover{
  background:linear-gradient(180deg,#9dff00,#62bd00);
  color:#fff;
}

.qbp-share-quote-btn-global{
  top:8px;
  right:8px;
  z-index:60;
}

.qbp-results-title{
  color: #ffffff !important;
  font-size: 44px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  margin: 0 0 8px !important;
}

.qbp-vehicle-meta{
  color: #ffffff !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  margin-bottom: 0 !important;
}
/* STEP 2 - PACKAGE GRID */
.qbp-package-grid{
  display:grid;
  grid-template-columns:1fr 1.15fr 1fr;
  gap:22px;
  max-width:1100px;
  margin:34px auto;
  align-items:stretch;
}

.qbp-package-grid > .qbp-service-card,
.qbp-package-placeholder{
  min-height:auto;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(18,18,18,.96),rgba(5,5,5,.98));
  box-shadow:0 18px 38px rgba(0,0,0,.28);
  padding:32px 24px;
  text-align:center;
}

.qbp-package-grid{
  align-items:start;
}

.qbp-package-grid > .qbp-service-card{
  border-color:#9dff00 !important;
}

.qbp-package-placeholder h3,
.qbp-package-grid .qbp-service-name{
  color:#fff !important;
  font-size:19px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}

.qbp-package-placeholder-price,
.qbp-package-grid .qbp-service-price{
  color:#fff !important;
  font-size:38px !important;
  font-weight:900 !important;
  margin:18px 0 !important;
}

.qbp-package-placeholder button{
  width:100%;
  padding:12px;
  border:1px solid #9dff00;
  border-radius:6px;
  background:transparent;
  color:#9dff00;
  font-weight:900;
  text-transform:uppercase;
}

@media(max-width:900px){
  .qbp-package-grid{grid-template-columns:1fr;}
}

/* TEMPORARY - HIDE STEAM CARD */
.qbp-steam-card{
  display: none !important;
}

/* FIX CENTER RECOMMENDED PACKAGE CARD */
.qbp-package-grid > .qbp-service-card{
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.qbp-package-grid > .qbp-service-card .qbp-service-head{
  width: 100% !important;
  display: block !important;
}

.qbp-package-grid > .qbp-service-card .qbp-service-name,
.qbp-package-grid > .qbp-service-card .qbp-service-price,
.qbp-package-grid > .qbp-service-card .qbp-service-desc{
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* STEP 2 - HELP BOX + BENEFITS ROW */

.qbp-package-help{
  max-width: 1100px;
  margin: 18px auto 24px;
  padding: 18px 22px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background: linear-gradient(180deg, rgba(18,18,18,.96), rgba(5,5,5,.98));
  display: grid;
  grid-template-columns: 58px 1fr auto;
  gap: 18px;
  align-items: center;
}

.qbp-package-help-icon{
  width: 58px;
  height: 58px;
  border-radius: 999px;
  border: 3px solid #9dff00;
  color: #9dff00;
  display: grid;
  place-items: center;
  font-size: 34px;
  font-weight: 900;
}

.qbp-package-help-copy h3{
  margin: 0 0 5px;
  color: #fff;
  font-size: 20px;
}

.qbp-package-help-copy p{
  margin: 0;
  color: #d8d8d8;
  font-size: 15px;
  line-height: 1.45;
}

.qbp-process-btn{
  padding: 14px 24px;
  border: 1px solid rgba(255,255,255,.75);
  border-radius: 6px;
  background: transparent;
  color: #fff;
  text-transform: uppercase;
  font-weight: 900;
  cursor: pointer;
}

.qbp-benefits-row{
  max-width: 1100px;
  margin: 0 auto 22px;
  padding-top: 18px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  border-top: 1px solid rgba(157,255,0,.18);
}

.qbp-benefit{
  display: grid;
  grid-template-columns: 54px 1fr;
  column-gap: 12px;
  align-items: center;
  color: #fff;
}

.qbp-benefit span{
  grid-row: span 2;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.35);
  color: #9dff00;
  display: grid;
  place-items: center;
  font-size: 24px;
}

.qbp-benefit strong{
  display: block;
  font-size: 16px;
  line-height: 1.25;
}

.qbp-benefit small{
  display: block;
  color: #d0d0d0;
  font-size: 14px;
}

@media(max-width:900px){
  .qbp-package-help{
    grid-template-columns: 1fr;
    text-align: center;
  }

  .qbp-package-help-icon{
    margin: 0 auto;
  }

  .qbp-benefits-row{
    grid-template-columns: 1fr 1fr;
  }
}

/* CENTER CARD - MOST POPULAR */

.qbp-package-grid > .qbp-service-card{
    position: relative;
    overflow: hidden;
}

.qbp-package-grid > .qbp-service-card::before{
    content: "MOST POPULAR";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;

    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: linear-gradient(
        180deg,
        #9dff00 0%,
        #7bc300 100%
    );

    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: .04em;
}

.qbp-package-grid > .qbp-service-card{
    padding-top: 60px !important;
}

.qbp-service-subtitle{
  color: #cfcfcf;
  font-size: 15px;
  margin-top: 6px;
  text-align: center;
}

/* DEFAULT SELECTED PACKAGE */

.qbp-package-grid > .qbp-service-card{
    border: 2px solid #9dff00 !important;
    box-shadow: 0 0 25px rgba(157,255,0,.15);
}

.qbp-package-grid > .qbp-service-card button{
    background: linear-gradient(
        180deg,
        #9dff00 0%,
        #7bc300 100%
    );
}

/* STEP 2 - CLICKABLE PACKAGE CARDS */

.qbp-package-option{
  cursor: pointer;
  transition: .18s ease;
}

.qbp-package-option:hover{
  transform: translateY(-3px);
  border-color: rgba(157,255,0,.7) !important;
}

.qbp-package-option.is-selected{
  border: 2px solid #9dff00 !important;
  box-shadow:
    0 0 0 1px rgba(157,255,0,.35),
    0 18px 38px rgba(0,0,0,.32),
    0 0 28px rgba(157,255,0,.16) !important;
}

.qbp-package-option.is-selected::after{
  content: "SELECTED";
  display: block;
  margin-top: 18px;
  color: #9dff00;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.qbp-package-subtitle{
    color:#d8d8d8;
    text-align:center;
    margin-bottom:18px;
}

.qbp-package-description{
    color:#d8d8d8;
    text-align:center;
    line-height:1.5;
    margin:18px 0;
    font-size:15px;
}

.qbp-package-includes{
    margin-top:18px;
    text-align:left;
    color:#e8e8e8;
    line-height:1.8;
    font-size:15px;
}

.qbp-package-includes div{
    margin-bottom:6px;
}

.qbp-package-grid .qbp-service-subtitle{
  display:none !important;
}

/* tighten package card spacing */
.qbp-package-grid > .qbp-service-card,
.qbp-package-placeholder{
  justify-content: flex-start !important;
}

.qbp-package-grid .qbp-package-description,
.qbp-package-grid .qbp-service-desc{
  margin: 16px 0 !important;
}

.qbp-package-grid .qbp-package-includes{
  margin-top: 12px !important;
}

.qbp-package-option.is-selected::after{
  margin-top: 18px !important;
}

/* tighten recommended card internals */
.qbp-package-grid > .qbp-service-card .qbp-service-price{
  margin: 14px 0 10px !important;
}

.qbp-package-grid > .qbp-service-card .qbp-package-subtitle{
  margin: 0 0 12px !important;
}

.qbp-package-grid > .qbp-service-card .qbp-package-description{
  margin: 12px 0 14px !important;
}

.qbp-package-grid > .qbp-service-card .qbp-package-includes{
  margin-top: 10px !important;
}

.qbp-package-grid > .qbp-service-card .qbp-package-includes div{
  margin-bottom: 4px !important;
}

/* STEP 2 - REDESIGNED PACKAGE CARDS */
.qbp-package-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:26px !important;
  max-width:1180px !important;
  padding:24px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.08), transparent 30%),
    linear-gradient(180deg, rgba(24,24,24,.96), rgba(8,8,8,.98));
}

.qbp-package-card{
  position:relative;
  min-height:460px;
  padding:30px 28px 28px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:8px;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.04), transparent 36%),
    linear-gradient(180deg, rgba(18,18,18,.98), rgba(6,6,6,.99));
  color:#fff;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  box-shadow:0 18px 38px rgba(0,0,0,.35);
  overflow:hidden;
}

.qbp-package-card:hover{
  transform:translateY(-3px);
  border-color:rgba(157,255,0,.65) !important;
}

.qbp-package-card:focus-visible{
  outline:2px solid #9dff00;
  outline-offset:4px;
}

.qbp-package-card.is-selected{
  border:2px solid #9dff00 !important;
  box-shadow:
    0 0 0 1px rgba(157,255,0,.55),
    0 0 28px rgba(157,255,0,.45),
    inset 0 0 34px rgba(157,255,0,.09) !important;
}

.qbp-package-card.is-selected::after{
  content:none !important;
}

.qbp-package-ribbon{
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#9dff00;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  background:rgba(157,255,0,.08);
  border-bottom:1px solid rgba(157,255,0,.2);
}

.qbp-package-selected-label{
  display:none !important;
}

.qbp-package-card.is-selected .qbp-package-selected-label{
  display:none !important;
}

.qbp-package-card.is-selected .qbp-package-ribbon{
  display:flex;
}

.qbp-package-card h3{
  margin:4px 0 8px;
  color:#fff !important;
  font-size:18px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}

.qbp-package-card .qbp-package-subtitle{
  min-height:20px;
  margin:0 0 22px !important;
  color:#d8d8d8;
  font-size:14px;
}

.qbp-package-price{
  color:#fff;
  font-size:34px;
  font-weight:900;
  line-height:1.1;
  margin:0 0 24px;
}

.qbp-package-card .qbp-package-description{
  min-height:76px;
  margin:0 0 20px !important;
  color:#dcdcdc;
  font-size:14px;
  line-height:1.55;
}

.qbp-package-card .qbp-package-includes{
  margin:0 0 26px !important;
  color:#f1f1f1;
  font-size:14px;
  line-height:1.55;
  text-align:left;
}

.qbp-package-card .qbp-package-includes div{
  margin-bottom:10px !important;
}

.qbp-package-select-btn{
  margin-top:auto;
  width:100%;
  min-height:54px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,.28);
  background:transparent;
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.qbp-package-card.is-selected .qbp-package-select-btn{
  border-color:#9dff00;
  background:linear-gradient(180deg,#b7ff1a 0%,#86ef00 100%);
  color:#0a0a0a;
}

.qbp-package-card .qbp-selected-text{
  display:none;
}

.qbp-package-card.is-selected .qbp-select-text{
  display:none;
}

.qbp-package-card.is-selected .qbp-selected-text{
  display:inline;
}

@media(max-width:900px){
  .qbp-package-grid{
    grid-template-columns:1fr !important;
    padding:16px;
  }

  .qbp-package-card{
    min-height:auto;
  }
}

/* STEP 3 - BOOKING MODAL POLISH */
.qbp-modal-title{
  color:#fff !important;
  font-size:34px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  text-align:center !important;
}

.qbp-modal-subtitle,
.qbp-modal-time,
.qbp-booking-help{
  color:#d8d8d8 !important;
  text-align:center !important;
}

.qbp-required{
  color:#ff3b3b;
  font-weight:900;
}

.qbp-booking-form-label{
  color:#fff !important;
  font-weight:800 !important;
}

.qbp-booking-input{
  background:#080808 !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:8px !important;
}

.qbp-booking-input:focus{
  border-color:#9dff00 !important;
  outline:none !important;
}

.qbp-btn-confirm{
  background:linear-gradient(180deg,#9dff00,#72bd00) !important;
  color:#fff !important;
  border:0 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}

.qbp-btn-cancel{
  background:transparent !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.35) !important;
}

.qbp-lift-notice-actions{
  align-items:stretch;
  flex-wrap:wrap;
}

.qbp-lift-notice-actions .qbp-btn-confirm,
.qbp-lift-notice-actions .qbp-btn-cancel{
  white-space:normal !important;
  line-height:1.25 !important;
  min-height:48px;
}

@media (max-width:640px){
  .qbp-lift-notice-actions{
    flex-direction:column;
  }
}

.qbp-step3-page-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.35fr) minmax(300px, .8fr);
  gap:28px;
  align-items:start;
}

.qbp-step3-calendar-side,
.qbp-step3-summary{
  background:linear-gradient(180deg,rgba(18,18,18,.96),rgba(5,5,5,.98));
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  padding:24px;
  box-shadow:0 18px 38px rgba(0,0,0,.28);
}

.qbp-step3-summary{
  color:#fff;
  position:sticky;
  top:20px;
}

.qbp-step3-summary h4{
  margin:0 0 18px;
  font-size:22px;
  font-weight:900;
  text-transform:uppercase;
}

.qbp-step3-summary-row,
.qbp-step3-price{
  border-top:1px solid rgba(255,255,255,.12);
  padding:14px 0;
}

.qbp-step3-summary span{
  display:block;
  color:#bdbdbd;
  font-size:13px;
  text-transform:uppercase;
  margin-bottom:4px;
}

.qbp-step3-summary strong{
  color:#fff;
}

.qbp-step3-includes{
  border-top:1px solid rgba(255,255,255,.12);
  padding:14px 0;
  max-height:180px;
  overflow:auto;
}

.qbp-step3-includes ul{
  margin:8px 0 0;
  padding-left:18px;
}

@media(max-width:900px){
  .qbp-step3-page-layout{
    grid-template-columns:1fr;
  }

  .qbp-step3-summary{
    position:static;
  }
}

.qbp-step3-page-layout{
  display:grid !important;
  grid-template-columns:minmax(0, 1.35fr) minmax(320px, .8fr) !important;
  gap:28px !important;
  align-items:start !important;
}

.qbp-step3-page-layout > .qbp-square-slot-picker{
  width:100% !important;
  margin-top:0 !important;
}

.qbp-step3-summary-side{
  width:100% !important;
}

.qbp-step3-summary{
  background:linear-gradient(180deg,rgba(18,18,18,.96),rgba(5,5,5,.98));
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  padding:24px;
  color:#fff;
  position:sticky;
  top:20px;
}

@media(max-width:900px){
  .qbp-step3-page-layout{
    grid-template-columns:1fr !important;
  }

  .qbp-step3-summary{
    position:static;
  }
}

/* FLOW WINDOW + STEP 3 REDESIGN */
.qbp-vehicle-shell{
  position:relative;
  overflow:hidden;
}

.qbp-step-panel{
  transition:opacity .28s ease, transform .28s ease, max-height .32s ease, visibility .28s ease;
  will-change:opacity, transform;
}

.qbp-flow-at-step-1 .qbp-step-panel-package{
  opacity:0;
  transform:translateY(20px);
  visibility:hidden;
  max-height:0;
  overflow:hidden;
  pointer-events:none;
}

.qbp-flow-at-step-2 .qbp-step-panel-vehicle,
.qbp-flow-at-step-3 .qbp-step-panel-vehicle{
  opacity:0;
  transform:translateY(-20px);
  visibility:hidden;
  max-height:0;
  overflow:hidden;
  pointer-events:none;
}

.qbp-flow-at-step-3 .qbp-results-holder > .qbp-results{
  opacity:0;
  transform:translateY(-20px);
  visibility:hidden;
  max-height:0;
  overflow:hidden;
  pointer-events:none;
}

.qbp-flow-at-step-2 .qbp-results-holder,
.qbp-flow-at-step-3 .qbp-results-holder{
  opacity:1;
  transform:translateY(0);
  visibility:visible;
  max-height:5000px;
}

.qbp-flow-step{
  opacity:.72;
}

.qbp-flow-step.is-complete,
.qbp-flow-step.is-active{
  opacity:1;
}

.qbp-flow-step.is-complete span{
  font-size:0 !important;
  border-color:#9dff00;
}

.qbp-flow-step.is-complete span::before{
  content:"✓";
  font-size:28px;
  color:#fff;
}

.qbp-flow-step.is-active span{
  background:linear-gradient(180deg,#9dff00,#5fb600);
  color:#fff !important;
  box-shadow:0 0 22px rgba(157,255,0,.55);
}

.qbp-flow-step.is-complete .qbp-flow-edit{
  display:inline-flex;
}

.qbp-flow-line.is-complete{
  height:2px;
  background:#9dff00 !important;
  box-shadow:0 0 14px rgba(157,255,0,.45);
}

.qbp-step3-intro{
  grid-column:1 / -1;
  text-align:center;
  margin:8px 0 0;
}

.qbp-step3-intro h2{
  margin:0 0 8px;
  color:#fff;
  font-size:40px;
  font-weight:500;
}

.qbp-step3-intro p{
  margin:0;
  color:#d7d7d7;
  font-size:17px;
}

.qbp-step3-page-layout{
  max-width:1180px;
  margin:24px auto 0;
  grid-template-columns:minmax(0, 1.6fr) minmax(320px, .75fr) !important;
}

.qbp-step3-page-layout > .qbp-square-slot-picker{
  background:radial-gradient(circle at top, rgba(255,255,255,.05), transparent 45%), linear-gradient(180deg,rgba(12,17,17,.98),rgba(4,6,6,.98)) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:10px !important;
  box-shadow:0 18px 46px rgba(0,0,0,.36) !important;
  padding:26px !important;
}

.qbp-step3-section-title,
.qbp-cal-times-title{
  display:flex !important;
  align-items:center;
  gap:14px;
  color:#fff !important;
  text-align:left !important;
  font-size:18px !important;
  font-weight:800 !important;
  text-transform:uppercase;
  margin:0 0 14px !important;
}

.qbp-step3-section-title span,
.qbp-step3-section-number,
.qbp-step3-number{
  width:38px;
  height:38px;
  border-radius:999px;
  border:2px solid #9dff00;
  color:#9dff00;
  display:inline-grid;
  place-items:center;
  font-size:22px;
  font-weight:800;
  flex:0 0 auto;
}

.qbp-cal-header{
  margin:0 0 16px !important;
}

.qbp-cal-title{
  color:#fff !important;
  font-size:21px !important;
  font-weight:800 !important;
}

.qbp-cal-weekday{
  color:#dcdcdc !important;
  font-size:13px !important;
}

.qbp-cal-day{
  min-height:48px;
  border-radius:5px !important;
  background:rgba(255,255,255,.03) !important;
  border:1px solid rgba(255,255,255,.15) !important;
  color:#f7f7f7 !important;
  font-size:18px !important;
  font-weight:500 !important;
}

.qbp-cal-day.is-available{
  background:rgba(255,255,255,.085) !important;
  border-color:rgba(255,255,255,.28) !important;
  color:#fff !important;
}

.qbp-cal-day.is-unavailable{
  color:rgba(255,255,255,.35) !important;
}

.qbp-cal-day.is-available:hover{
  background:rgba(157,255,0,.13) !important;
}

.qbp-cal-day.is-today:not(.is-selected){
  background:rgba(157,255,0,.055) !important;
  border-color:rgba(157,255,0,.72) !important;
  color:#fff !important;
  box-shadow:inset 0 0 0 1px rgba(157,255,0,.22);
}

.qbp-cal-day .qbp-day-inner{
  display:grid;
  gap:2px;
  place-items:center;
}

.qbp-cal-day .qbp-day-label{
  color:#9dff00;
  font-size:10px;
  font-weight:900;
  line-height:1;
  text-transform:uppercase;
}

.qbp-cal-day .qbp-day-number{
  line-height:1;
}

.qbp-cal-day.is-selected{
  background:linear-gradient(180deg,#9dff00,#62bd00) !important;
  border-color:#9dff00 !important;
  color:#fff !important;
  box-shadow:0 0 18px rgba(157,255,0,.45) !important;
}

.qbp-cal-times-title{
  margin-top:28px !important;
  flex-wrap:wrap;
}

.qbp-cal-times-date{
  flex-basis:100%;
  margin-left:52px;
  color:#fff;
  font-size:16px;
  font-weight:500;
  text-transform:none;
}

.qbp-cal-times-grid{
  max-width:none !important;
  grid-template-columns:repeat(2, minmax(150px, 1fr)) !important;
  gap:10px !important;
}

.qbp-square-slot-btn{
  background:rgba(255,255,255,.02) !important;
  color:#f5f5f5 !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:7px !important;
  font-size:18px !important;
  font-weight:500 !important;
}

.qbp-square-slot-btn:hover{
  border-color:rgba(157,255,0,.7) !important;
}

.qbp-square-slot-btn.is-selected{
  background:linear-gradient(180deg,#9dff00,#62bd00) !important;
  color:#fff !important;
  border-color:#9dff00 !important;
  box-shadow:0 0 18px rgba(157,255,0,.45);
}

.qbp-step3-info-title{
  margin-top:28px !important;
}

.qbp-step3-info-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 18px;
  padding-top:8px;
}

.qbp-step3-info-form .qbp-booking-form-field-full{
  grid-column:1 / -1;
}

.qbp-step3-info-form .qbp-booking-input{
  min-height:48px;
  padding:12px 16px;
  font-size:16px;
  background:rgba(0,0,0,.35) !important;
}

.qbp-step3-summary{
  border-radius:10px !important;
  background:radial-gradient(circle at top, rgba(255,255,255,.05), transparent 45%), linear-gradient(180deg,rgba(12,17,17,.98),rgba(4,6,6,.98)) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.36) !important;
}

.qbp-step3-number{
  margin-bottom:12px;
}

.qbp-step3-summary h4{
  color:#bdbdbd;
  font-size:18px !important;
  letter-spacing:.02em;
}

.qbp-step3-summary-row small{
  display:block;
  margin-top:4px;
  color:#d7d7d7;
}

.qbp-step3-package-name,
.qbp-step3-summary-row:nth-of-type(2) strong{
  color:#9dff00 !important;
}

.qbp-step3-includes li{
  margin-bottom:12px;
}

.qbp-step3-includes li::marker{
  color:#9dff00;
}

.qbp-step3-price strong{
  color:#fff !important;
  font-size:40px;
  font-weight:500;
}

.qbp-step3-confirm{
  width:100%;
  min-height:58px;
  border:0;
  border-radius:7px;
  background:linear-gradient(180deg,#9dff00,#62bd00);
  color:#fff;
  font-size:18px;
  font-weight:800;
  text-transform:uppercase;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
}

.qbp-step3-confirm:disabled{
  opacity:.48;
  cursor:not-allowed;
}

.qbp-step3-booking-message{
  margin-top:14px;
  text-align:left !important;
}

.qbp-step3-confirmation{
  grid-column:1 / -1;
  max-width:760px;
  margin:34px auto 0;
  padding:44px 34px;
  text-align:center;
  border:1px solid rgba(157,255,0,.38);
  border-radius:10px;
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.14), transparent 42%),
    linear-gradient(180deg,rgba(12,17,17,.98),rgba(4,6,6,.98));
  box-shadow:0 18px 46px rgba(0,0,0,.36),0 0 34px rgba(157,255,0,.16);
}

.qbp-step3-confirmation-icon{
  width:54px;
  height:54px;
  margin:0 auto 18px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(180deg,#9dff00,#62bd00);
  color:#fff;
  font-size:34px;
  font-weight:900;
}

.qbp-step3-confirmation h2{
  margin:0 0 12px;
  color:#fff;
  font-size:34px;
  font-weight:700;
}

.qbp-step3-confirmation p{
  margin:0 auto 24px;
  max-width:560px;
  color:#dcdcdc;
  font-size:17px;
  line-height:1.55;
}

.qbp-step3-confirmation p strong{
  color:#fff;
}

.qbp-step3-confirmation-details{
  display:grid;
  gap:8px;
  color:#9dff00;
  font-weight:700;
}

.qbp-quote-save-overlay{
  position:fixed;
  inset:0;
  z-index:999999;
  display:grid;
  place-items:center;
  padding:22px;
  background:rgba(0,0,0,.74);
  backdrop-filter:blur(8px);
}

.qbp-quote-save-modal{
  position:relative;
  width:min(620px, 100%);
  color:#fff;
  padding:34px;
  border-radius:12px;
  border:1px solid rgba(157,255,0,.38);
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.18), transparent 36%),
    linear-gradient(180deg,rgba(15,20,20,.98),rgba(3,4,4,.98));
  box-shadow:0 24px 72px rgba(0,0,0,.58),0 0 34px rgba(157,255,0,.14);
}

.qbp-quote-save-close{
  position:absolute;
  top:14px;
  right:14px;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}

.qbp-quote-save-kicker{
  color:#9dff00;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:8px;
}

.qbp-quote-save-modal h3{
  margin:0 38px 10px 0;
  color:#fff;
  font-size:34px;
  font-weight:800;
  line-height:1.08;
}

.qbp-quote-save-modal p{
  margin:0 0 22px;
  color:#d8d8d8;
  font-size:16px;
  line-height:1.5;
}

.qbp-quote-save-card{
  display:grid;
  gap:6px;
  padding:18px;
  margin-bottom:18px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.34);
}

.qbp-quote-save-card strong{
  color:#fff;
  font-size:20px;
}

.qbp-quote-save-card span{
  color:#d8d8d8;
}

.qbp-quote-save-card b{
  color:#9dff00;
  font-size:28px;
}

.qbp-quote-save-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-bottom:14px;
}

.qbp-quote-save-actions button,
.qbp-quote-save-form button{
  min-height:48px;
  border-radius:7px;
  border:1px solid rgba(157,255,0,.4);
  background:rgba(157,255,0,.08);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.qbp-quote-save-form button{
  background:linear-gradient(180deg,#9dff00,#62bd00);
  color:#081008;
}

.qbp-quote-save-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.qbp-quote-save-form input{
  min-height:48px;
  border-radius:7px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(0,0,0,.44);
  color:#fff;
  padding:12px 14px;
}

.qbp-quote-save-form [name="quote_email"],
.qbp-quote-save-form button,
.qbp-quote-save-status{
  grid-column:1 / -1;
}

.qbp-quote-save-form [name="quote_website"]{
  position:absolute;
  left:-9999px;
  opacity:0;
}

.qbp-quote-save-status{
  min-height:22px;
  margin-top:12px;
  color:#d8d8d8;
  font-weight:700;
}

.qbp-quote-save-status.is-success{
  color:#9dff00;
}

.qbp-quote-save-status.is-error{
  color:#ff6969;
}

.qbp-cal-cancel{
  display:none !important;
}

@media(max-width:760px){
  .qbp-flow-stepper{
    grid-template-columns:1fr 1fr 1fr !important;
    gap:0 !important;
  }

  .qbp-flow-line{
    display:none !important;
  }

  .qbp-flow-step{
    flex-direction:column;
    text-align:center;
  }

  .qbp-flow-step strong{
    font-size:14px !important;
  }

  .qbp-flow-step small{
    font-size:12px !important;
  }

  .qbp-step3-intro h2{
    font-size:32px;
  }

  .qbp-step3-page-layout{
    grid-template-columns:1fr !important;
  }

  .qbp-cal-times-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }

  .qbp-step3-info-form{
    grid-template-columns:1fr;
  }

  .qbp-share-quote-btn{
    position:static;
    margin:0 auto 12px;
  }

  .qbp-quote-save-modal{
    padding:28px 22px;
  }

  .qbp-quote-save-modal h3{
    font-size:28px;
  }

  .qbp-quote-save-actions,
  .qbp-quote-save-form{
    grid-template-columns:1fr;
  }
}

/* Mobile final alignment: centered CTAs and no calendar left spill */
@media(max-width:760px){
  .qbp-vehicle-submit,
  .qbp-quote-action-row,
  .qbp-flow-at-step-2 .qbp-action-summary,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
  }

  .qbp-vehicle-submit-btn,
  .qbp-flow-at-step-1 .qbp-vehicle-submit-btn,
  .qbp-flow-at-step-2 .qbp-schedule-now,
  .qbp-flow-at-step-2 button.qbp-schedule-now,
  .qbp-flow-at-step-3 .qbp-step3-confirm{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    justify-content:center !important;
    text-align:center !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout,
  .qbp-flow-at-step-3 .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-schedule-grid,
  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
    overflow:hidden;
  }

  .qbp-flow-at-step-3 .qbp-square-slot-picker{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-weekdays,
  .qbp-flow-at-step-3 .qbp-cal-grid{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    gap:4px !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-blank,
  .qbp-flow-at-step-3 .qbp-cal-day,
  .qbp-flow-at-step-3 .qbp-cal-weekday{
    min-width:0 !important;
    width:100% !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day{
    min-height:36px !important;
    padding:0 !important;
    font-size:15px !important;
  }
}

@media(max-width:390px){
  .qbp-flow-at-step-3 .qbp-square-slot-picker{
    padding-left:8px !important;
    padding-right:8px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-weekdays,
  .qbp-flow-at-step-3 .qbp-cal-grid{
    gap:3px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day{
    min-height:34px !important;
    font-size:14px !important;
  }
}

/* Final shell consistency pass: desktop same frame, mobile progress + readable cards */
.qbp-vehicle-shell{
  width:min(1440px, calc(100vw - 36px)) !important;
  max-width:1440px !important;
  min-height:720px;
  margin-left:auto !important;
  margin-right:auto !important;
  padding:12px 14px 14px !important;
  border:1px solid rgba(157,255,0,.26);
  border-radius:12px;
  background:
    radial-gradient(circle at 18% 0%, rgba(157,255,0,.055), transparent 34%),
    linear-gradient(180deg, rgba(4,6,6,.42), rgba(0,0,0,.14));
  box-sizing:border-box !important;
  overflow:visible;
}

.qbp-flow-stepper{
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto 14px !important;
  padding:0 6px !important;
}

.qbp-flow-at-step-1 .qbp-flow-stepper,
.qbp-flow-at-step-2 .qbp-flow-stepper,
.qbp-flow-at-step-3 .qbp-flow-stepper{
  max-width:1320px !important;
}

.qbp-flow-at-step-2 .qbp-results,
.qbp-flow-at-step-3 .qbp-step3-page-layout{
  width:100% !important;
  max-width:1320px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
}

.qbp-duration-note{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:8px;
  color:#cfcfcf;
  font-size:13px;
  font-weight:800;
  line-height:1.25;
}

.qbp-duration-note::before{
  content:"";
  width:17px;
  height:17px;
  flex:0 0 17px;
  background:#9dff00;
  -webkit-mask:url("qbp-icon-timer.png") center / contain no-repeat;
  mask:url("qbp-icon-timer.png") center / contain no-repeat;
}

.qbp-step3-duration-row strong{
  color:#9dff00 !important;
}

@media(max-width:760px){
  .qbp-vehicle-shell{
    width:100% !important;
    min-height:0 !important;
    padding:12px 10px 16px !important;
    overflow:hidden;
  }

  .qbp-flow-stepper{
    grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr) !important;
    column-gap:0 !important;
    max-width:100% !important;
    padding:8px 4px 14px !important;
    border-bottom:1px solid rgba(255,255,255,.12);
  }

  .qbp-flow-line{
    display:block !important;
    width:100% !important;
    height:2px !important;
    align-self:start !important;
    margin-top:19px !important;
    background:rgba(255,255,255,.26) !important;
  }

  .qbp-flow-line.is-active{
    background:linear-gradient(90deg,#9dff00,rgba(255,255,255,.24)) !important;
  }

  .qbp-flow-line.is-complete{
    background:#9dff00 !important;
    box-shadow:0 0 12px rgba(157,255,0,.36) !important;
  }

  .qbp-flow-step{
    min-width:0 !important;
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:6px !important;
    text-align:center !important;
  }

  .qbp-flow-step > span{
    width:40px !important;
    height:40px !important;
    flex:0 0 40px !important;
    margin:0 auto !important;
  }

  .qbp-flow-step.is-complete > span{
    font-size:0 !important;
    background:rgba(157,255,0,.18) !important;
    border-color:#9dff00 !important;
  }

  .qbp-flow-step.is-complete > span::before{
    content:"✓";
    color:#9dff00;
    font-size:23px;
    font-weight:950;
    line-height:1;
  }

  .qbp-flow-step > div{
    width:100% !important;
    align-items:center !important;
  }

  .qbp-flow-step strong{
    max-width:92px !important;
    min-height:28px !important;
    font-size:0 !important;
    line-height:1.08 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .qbp-flow-step[data-step="1"] strong::after{ content:"Your Vehicle"; font-size:12px; }
  .qbp-flow-step[data-step="2"] strong::after{ content:"Package"; font-size:12px; }
  .qbp-flow-step[data-step="3"] strong::after{ content:"Schedule"; font-size:12px; }

  .qbp-flow-at-step-2 .qbp-results-intro{
    margin-bottom:12px !important;
  }

  .qbp-flow-at-step-2 .qbp-finish-selector{
    order:0;
    margin:0 0 12px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card{
    grid-template-columns:64px minmax(0,1fr) auto !important;
    grid-template-areas:
      "icon title price"
      "icon subtitle price"
      "icon desc choice"
      "includes includes includes"
      "button button button" !important;
    gap:5px 12px !important;
    padding:16px 14px !important;
    min-height:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card::before{
    content:"";
    grid-area:icon;
    width:48px;
    height:48px;
    align-self:start;
    border:1px solid rgba(157,255,0,.45);
    border-radius:50%;
    background:rgba(157,255,0,.08);
  }

  .qbp-flow-at-step-2 .qbp-package-card h3{
    grid-area:title;
    font-size:18px !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle{
    grid-area:subtitle;
    text-align:left !important;
  }

  .qbp-flow-at-step-2 .qbp-package-price{
    grid-area:price;
    margin:0 !important;
    font-size:20px !important;
    text-align:right !important;
    white-space:nowrap;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description{
    grid-area:desc;
    text-align:left !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
    grid-area:includes;
    padding:10px 0 0 !important;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,.12);
  }

  .qbp-flow-at-step-2 .qbp-package-select-btn{
    grid-area:button;
  }

  .qbp-flow-at-step-2 .qbp-action-summary{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .qbp-duration-note{
    font-size:13px !important;
    margin-top:6px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    padding:16px 14px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-times-grid{
    grid-template-columns:1fr !important;
  }

  .qbp-flow-at-step-3 .qbp-square-slot-btn{
    min-height:40px !important;
    font-size:15px !important;
  }

  .qbp-flow-at-step-3 .qbp-booking-input,
  .qbp-flow-at-step-3 .qbp-booking-toggle-row > span{
    font-size:14px !important;
  }
}

/* Final layout polish: stepper containment, icon cleanup, and independent hover states */
.qbp-vehicle-shell{
  position:relative;
}

.qbp-flow-stepper{
  box-sizing:border-box;
}

.qbp-flow-line.is-inactive{
  height:1px !important;
  background:rgba(255,255,255,.22) !important;
  box-shadow:none !important;
}

.qbp-flow-line.is-active{
  height:1px !important;
  background:linear-gradient(90deg, #9dff00, rgba(255,255,255,.22)) !important;
  box-shadow:none !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-shell{
  padding:12px 14px 14px !important;
  border:1px solid rgba(157,255,0,.26);
  border-radius:12px;
  background:
    radial-gradient(circle at 18% 0%, rgba(157,255,0,.06), transparent 34%),
    linear-gradient(180deg, rgba(4,6,6,.42), rgba(0,0,0,.14));
}

.qbp-flow-at-step-1 .qbp-flow-stepper{
  max-width:100% !important;
  margin:0 auto 12px !important;
  padding:0 4px !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-layout{
  align-items:stretch;
}

.qbp-vehicle-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.qbp-vehicle-head-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}

.qbp-share-quote-btn-vehicle{
  position:static !important;
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  border-radius:999px !important;
}

.qbp-flow-at-step-1 .qbp-share-quote-btn-global{
  display:none !important;
}

.qbp-side-icon{
  display:grid !important;
  place-items:center !important;
  background:none !important;
  background-image:none !important;
}

.qbp-side-icon::after{
  content:none !important;
}

.qbp-vehicle-fields select,
.qbp-root select{
  background-image:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
}

.qbp-root select::-ms-expand{
  display:none;
}

.qbp-finish-option{
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
}

.qbp-finish-option:hover,
.qbp-finish-option:focus-visible{
  border-color:#9dff00 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.13), transparent 42%),
    #090909 !important;
  box-shadow:0 0 20px rgba(157,255,0,.24), inset 0 0 0 1px rgba(157,255,0,.12) !important;
}

.qbp-package-select-btn{
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}

.qbp-package-select-btn:hover,
.qbp-package-select-btn:focus-visible{
  border-color:#9dff00 !important;
  box-shadow:0 0 18px rgba(157,255,0,.28), inset 0 0 0 1px rgba(157,255,0,.12) !important;
  background:rgba(157,255,0,.08) !important;
  color:#fff !important;
}

.qbp-package-card.is-selected .qbp-package-select-btn:hover,
.qbp-package-card.is-selected .qbp-package-select-btn:focus-visible{
  background:linear-gradient(180deg,#c6ff28 0%,#8df400 100%) !important;
  color:#080808 !important;
  box-shadow:0 0 22px rgba(157,255,0,.38) !important;
}

@media(max-width:900px){
  .qbp-flow-at-step-1 .qbp-vehicle-shell{
    padding:10px 10px 14px !important;
  }

  .qbp-vehicle-card-head{
    gap:12px;
  }

  .qbp-vehicle-head-actions{
    align-items:flex-end;
    flex-direction:column;
  }
}

@media(max-width:760px){
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-stepper{
    justify-content:center !important;
    justify-items:center !important;
  }

  .qbp-vehicle-card-head{
    align-items:flex-start;
  }

  .qbp-share-quote-btn-vehicle{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
  }
}

@media(max-width:520px){
  .qbp-vehicle-card-head{
    display:grid;
    grid-template-columns:1fr auto;
  }

  .qbp-vehicle-time-pill{
    display:none !important;
  }
}

/* PAGE 1 MOCKUP PASS */
.qbp-flow-at-step-1 .qbp-vehicle-shell{
  max-width:1440px;
}

.qbp-flow-at-step-1 .qbp-flow-stepper{
  max-width:1360px;
  margin-bottom:16px;
  grid-template-columns:auto minmax(120px, 1fr) auto minmax(120px, 1fr) auto;
}

.qbp-flow-at-step-1 .qbp-vehicle-layout{
  grid-template-columns:minmax(0, 2.25fr) minmax(320px, .95fr);
  gap:14px;
}

.qbp-flow-at-step-1 .qbp-vehicle-main-card,
.qbp-flow-at-step-1 .qbp-vehicle-side-card{
  border-radius:12px;
  border-color:rgba(157,255,0,.46);
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.06), transparent 32%),
    radial-gradient(circle at 50% 80%, rgba(157,255,0,.055), transparent 42%),
    linear-gradient(180deg, rgba(17,19,18,.92), rgba(4,5,5,.96));
  box-shadow:0 28px 70px rgba(0,0,0,.42), inset 0 0 0 1px rgba(157,255,0,.08);
}

.qbp-flow-at-step-1 .qbp-vehicle-main-card{
  min-height:auto;
  padding:34px 48px 32px;
}

.qbp-vehicle-card-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:24px;
}

.qbp-vehicle-card-head h2{
  margin:0 0 10px !important;
  font-size:44px !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  line-height:1.04 !important;
}

.qbp-vehicle-card-head h2 span{
  color:#9dff00;
}

.qbp-vehicle-card-head p{
  margin:0 !important;
  color:#d4d4d4 !important;
  font-size:18px !important;
}

.qbp-vehicle-time-pill{
  flex:0 0 auto;
  margin-bottom:4px;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  color:#d8d8d8;
  font-size:13px;
  background:rgba(0,0,0,.25);
}

.qbp-flow-at-step-1 .qbp-vehicle-fields{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px 24px;
}

.qbp-flow-at-step-1 .qbp-dually-holder,
.qbp-flow-at-step-1 .qbp-refresh-full-width{
  grid-column:1 / -1;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-step label,
.qbp-flow-at-step-1 .qbp-choice-title{
  color:#f1f1f1 !important;
  font-size:14px !important;
  font-weight:900 !important;
  letter-spacing:.06em !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-custom-select-trigger{
  min-height:58px !important;
  padding-left:54px !important;
  font-size:20px !important;
  font-weight:800 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.055), transparent 54%),
    linear-gradient(180deg,rgba(21,22,22,.95),rgba(7,8,8,.96)) !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-step{
  position:relative;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-step::after{
  position:absolute;
  left:18px;
  bottom:17px;
  color:#9dff00;
  font-size:22px;
  font-weight:900;
  line-height:1;
  pointer-events:none;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-holder:nth-child(1) .qbp-step::after{
  content:none;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-holder:nth-child(2) .qbp-step::after,
.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-holder:nth-child(3) .qbp-step::after{
  content:none;
}

.qbp-flow-at-step-1 .qbp-dually-choice-panel,
.qbp-flow-at-step-1 .qbp-refresh-choice-panel{
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.qbp-flow-at-step-1 .qbp-dually-choice-panel .qbp-choice-options-two,
.qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-options-two{
  gap:18px;
}

.qbp-flow-at-step-1 .qbp-choice-option{
  min-height:84px;
  border-radius:8px !important;
  background:
    radial-gradient(circle at 80% 50%, rgba(255,255,255,.065), transparent 28%),
    linear-gradient(180deg,rgba(15,16,16,.94),rgba(3,4,4,.96)) !important;
  border-color:rgba(255,255,255,.26) !important;
}

.qbp-flow-at-step-1 .qbp-choice-option.is-selected{
  border-color:#9dff00 !important;
  box-shadow:inset 0 0 0 1px rgba(157,255,0,.55),0 0 18px rgba(157,255,0,.16);
  background:
    radial-gradient(circle at 80% 50%, rgba(157,255,0,.12), transparent 32%),
    linear-gradient(180deg,rgba(20,32,14,.86),rgba(4,7,4,.94)) !important;
}

.qbp-flow-at-step-1 .qbp-choice-radio{
  width:28px !important;
  height:28px !important;
}

.qbp-flow-at-step-1 .qbp-choice-option strong{
  font-size:22px !important;
}

.qbp-flow-at-step-1 .qbp-choice-option small{
  font-size:15px !important;
}

.qbp-dually-not-needed .qbp-choice-title{
  margin-bottom:10px !important;
}

.qbp-dually-holder.qbp-holder-disabled.qbp-dually-not-needed-holder{
  opacity:1 !important;
  filter:none !important;
}

.qbp-dually-not-needed-message{
  min-height:58px;
  display:grid;
  align-content:center;
  padding:14px 18px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.22));
  color:#fff;
  text-align:left;
  position:relative;
}

.qbp-dually-not-needed-message::before{
  content:none !important;
  display:none !important;
}

.qbp-dually-not-needed-message strong{
  font-size:15px;
  line-height:1.2;
}

.qbp-dually-not-needed-message small{
  margin-top:3px;
  color:#cfcfcf;
  font-size:12px;
}

.qbp-vehicle-trust-row{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:18px;
  margin:22px 0 20px;
  padding-top:10px;
}

.qbp-vehicle-trust-row div{
  position:relative;
  min-height:42px;
  padding-left:46px;
  color:#fff;
}

.qbp-vehicle-trust-row span{
  position:absolute;
  left:0;
  top:2px;
  width:30px;
  height:30px;
  border:2px solid #9dff00;
  border-radius:7px;
}

.qbp-vehicle-trust-row span::after{
  content:"✓";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#9dff00;
  font-weight:900;
}

.qbp-vehicle-trust-row strong{
  display:block;
  font-size:14px;
  line-height:1.2;
}

.qbp-vehicle-trust-row small{
  display:block;
  margin-top:4px;
  color:#bdbdbd;
  font-size:12px;
  line-height:1.25;
}

.qbp-flow-at-step-1 .qbp-vehicle-submit-btn{
  min-height:64px;
  border-radius:7px;
  font-size:28px !important;
  letter-spacing:.06em;
}

.qbp-flow-at-step-1 .qbp-vehicle-side-card{
  min-height:auto;
  padding:34px 42px;
}

.qbp-flow-at-step-1 .qbp-side-icon{
  width:88px;
  height:98px;
}

.qbp-flow-at-step-1 .qbp-side-tagline{
  max-width:none;
  margin-top:22px;
  padding:18px 0;
  border-top:1px solid rgba(157,255,0,.55);
  border-bottom:1px solid rgba(157,255,0,.55);
  color:#9dff00;
  font-size:18px;
  font-style:normal;
  text-align:left;
}

.qbp-flow-at-step-1 .qbp-side-tagline div{
  position:relative;
  padding-left:40px;
  margin:12px 0;
  font-weight:900;
}

.qbp-flow-at-step-1 .qbp-side-tagline div::before{
  content:"✓";
  position:absolute;
  left:0;
  top:-2px;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border:2px solid #9dff00;
  border-radius:999px;
  font-size:14px;
}

.qbp-side-next{
  margin-top:20px;
  text-align:left;
}

.qbp-side-next h4{
  margin:0 0 14px;
  color:#e8e8e8;
  font-size:18px;
  text-align:center;
}

.qbp-side-next div{
  position:relative;
  min-height:54px;
  padding-left:54px;
  margin:12px 0;
}

.qbp-side-next div span{
  position:absolute;
  left:0;
  top:2px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(180deg,#b7ff1a,#70c900);
  color:#081008;
  font-weight:900;
}

.qbp-side-next div strong{
  display:block;
  color:#fff;
  font-size:15px;
}

.qbp-side-next div small{
  display:block;
  margin-top:3px;
  color:#cfcfcf;
  font-size:13px;
  line-height:1.35;
}

/* STEP 3 DESKTOP CALENDAR/TIME COLUMNS */
.qbp-step3-schedule-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(240px, .85fr);
  gap:28px;
  align-items:start;
}

.qbp-step3-time-panel{
  border-left:1px solid rgba(255,255,255,.12);
  padding-left:28px;
}

.qbp-step3-time-panel .qbp-cal-times-title{
  margin-top:0 !important;
}

.qbp-step3-time-panel .qbp-cal-times-grid{
  grid-template-columns:1fr !important;
}

@media(max-width:900px){
  .qbp-flow-at-step-1 .qbp-vehicle-layout,
  .qbp-flow-at-step-1 .qbp-vehicle-fields,
  .qbp-vehicle-trust-row,
  .qbp-step3-schedule-grid{
    grid-template-columns:1fr;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-main-card{
    padding:28px 22px;
  }

  .qbp-vehicle-card-head{
    display:block;
  }

  .qbp-vehicle-card-head h2{
    font-size:34px !important;
  }

  .qbp-vehicle-time-pill{
    display:inline-flex;
    margin-top:12px;
  }

  .qbp-step3-time-panel{
    border-left:0;
    padding-left:0;
  }

  .qbp-step3-time-panel .qbp-cal-times-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

/* STEP 2 WORDING/SPACING PASS */
.qbp-flow-at-step-2 .qbp-vehicle-shell{
  max-width:1280px;
}

.qbp-flow-at-step-2 .qbp-results,
.qbp-flow-at-step-2 .qbp-results-holder{
  max-width:1280px !important;
}

.qbp-flow-at-step-2 .qbp-results{
  margin-top:10px !important;
}

.qbp-flow-at-step-2 .qbp-results-title{
  font-size:38px !important;
  margin-bottom:4px !important;
}

.qbp-flow-at-step-2 .qbp-vehicle-meta{
  font-size:13px !important;
}

.qbp-flow-at-step-2 .qbp-finish-selector{
  max-width:760px !important;
  margin:16px auto 14px !important;
  padding:14px 22px !important;
  border-radius:8px !important;
}

.qbp-flow-at-step-2 .qbp-finish-title{
  margin-bottom:10px !important;
  font-size:12px !important;
}

.qbp-flow-at-step-2 .qbp-finish-options{
  max-width:560px !important;
  gap:12px !important;
}

.qbp-flow-at-step-2 .qbp-finish-option{
  min-height:48px !important;
  padding:8px 16px !important;
  border-radius:7px !important;
}

.qbp-flow-at-step-2 .qbp-finish-option strong{
  font-size:13px !important;
}

.qbp-flow-at-step-2 .qbp-finish-option small,
.qbp-flow-at-step-2 .qbp-finish-note{
  font-size:11px !important;
}

.qbp-flow-at-step-2 .qbp-package-grid{
  max-width:1240px !important;
  margin:16px auto !important;
  padding:0 !important;
  gap:12px !important;
  border:0 !important;
  background:transparent !important;
}

.qbp-flow-at-step-2 .qbp-package-card{
  min-height:360px !important;
  padding:24px 20px 18px !important;
}

.qbp-flow-at-step-2 .qbp-package-ribbon{
  height:22px !important;
  font-size:10px !important;
}

.qbp-flow-at-step-2 .qbp-package-card h3{
  font-size:15px !important;
  margin-top:10px !important;
  margin-bottom:5px !important;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle{
  min-height:16px !important;
  margin-bottom:10px !important;
  font-size:11px !important;
}

.qbp-flow-at-step-2 .qbp-package-price{
  margin-bottom:12px !important;
  font-size:30px !important;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-description{
  min-height:44px !important;
  margin-bottom:12px !important;
  font-size:11px !important;
  line-height:1.35 !important;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
  margin-bottom:14px !important;
  font-size:11px !important;
  line-height:1.35 !important;
}

.qbp-flow-at-step-2 .qbp-package-includes-intro{
  margin:0 0 7px !important;
  color:#fff;
  font-size:10px;
  font-weight:900;
  line-height:1.3;
  text-transform:uppercase;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes div{
  margin-bottom:5px !important;
}

.qbp-flow-at-step-2 .qbp-package-select-btn{
  min-height:38px !important;
  font-size:11px !important;
}

.qbp-flow-at-step-2 .qbp-package-help{
  max-width:1240px !important;
  margin:0 !important;
  padding:14px 18px !important;
  border-radius:8px !important;
  grid-template-columns:48px 1fr auto !important;
}

.qbp-flow-at-step-2 .qbp-quote-action-row{
  max-width:1240px;
  margin:12px auto;
  display:grid;
  grid-template-columns:minmax(0, 1fr) 260px;
  gap:14px;
  align-items:stretch;
}

.qbp-flow-at-step-2 .qbp-action-summary{
  display:grid;
  align-content:stretch;
  gap:8px;
}

.qbp-flow-at-step-2 .qbp-package-help-icon{
  width:42px !important;
  height:42px !important;
  font-size:25px !important;
}

.qbp-flow-at-step-2 .qbp-package-help-copy h3{
  font-size:15px !important;
}

.qbp-flow-at-step-2 .qbp-package-help-copy p{
  font-size:12px !important;
}

.qbp-flow-at-step-2 .qbp-process-btn{
  min-height:38px !important;
  padding:8px 18px !important;
  font-size:10px !important;
}

.qbp-flow-at-step-2 .qbp-benefits-row{
  max-width:1240px !important;
  margin:0 auto 10px !important;
  padding-top:10px !important;
}

.qbp-flow-at-step-2 .qbp-benefit{
  grid-template-columns:34px 1fr !important;
}

.qbp-flow-at-step-2 .qbp-benefit span{
  width:28px !important;
  height:28px !important;
  font-size:15px !important;
}

.qbp-flow-at-step-2 .qbp-benefit strong{
  font-size:12px !important;
}

.qbp-flow-at-step-2 .qbp-benefit small{
  font-size:10px !important;
}

.qbp-flow-at-step-2 .qbp-total{
  max-width:none !important;
  margin:0 !important;
  padding:10px 0 0 !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  align-items:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.qbp-flow-at-step-2 .qbp-total-label{
  font-size:11px !important;
  text-align:left !important;
}

.qbp-flow-at-step-2 .qbp-total-value{
  font-size:24px !important;
  color:#9dff00 !important;
}

.qbp-flow-at-step-2 .qbp-schedule-now,
.qbp-flow-at-step-2 button.qbp-schedule-now{
  width:100% !important;
  min-height:48px !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:12px !important;
}

@media(max-width:900px){
  .qbp-flow-at-step-2 .qbp-package-help{
    grid-template-columns:1fr !important;
  }

  .qbp-flow-at-step-2 .qbp-quote-action-row{
    grid-template-columns:1fr !important;
  }

  .qbp-flow-at-step-2 .qbp-total{
    grid-template-columns:1fr !important;
  }
}

/* STEP 3 FOUR-PANEL DESKTOP LAYOUT */
.qbp-flow-at-step-3 .qbp-vehicle-shell,
.qbp-flow-at-step-3 .qbp-results-holder{
  max-width:1280px !important;
}

.qbp-flow-at-step-3 .qbp-step3-page-layout{
  max-width:1280px !important;
  grid-template-columns:minmax(0, 1fr) minmax(250px, .28fr) !important;
  gap:12px !important;
}

.qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker,
.qbp-flow-at-step-3 .qbp-step3-summary{
  padding:18px !important;
  border-radius:8px !important;
}

.qbp-flow-at-step-3 .qbp-step3-schedule-grid{
  grid-template-columns:minmax(220px, .9fr) minmax(170px, .58fr) minmax(230px, .82fr);
  gap:12px;
}

.qbp-flow-at-step-3 .qbp-step3-time-panel,
.qbp-flow-at-step-3 .qbp-step3-info-panel{
  border-left:1px solid rgba(255,255,255,.12);
  padding-left:12px;
}

.qbp-flow-at-step-3 .qbp-step3-section-title,
.qbp-flow-at-step-3 .qbp-cal-times-title{
  gap:8px;
  font-size:12px !important;
  margin-bottom:10px !important;
}

.qbp-flow-at-step-3 .qbp-step3-section-title span,
.qbp-flow-at-step-3 .qbp-step3-section-number,
.qbp-flow-at-step-3 .qbp-step3-number{
  width:28px;
  height:28px;
  font-size:15px;
}

.qbp-flow-at-step-3 .qbp-cal-day{
  min-height:34px !important;
  padding:6px 4px !important;
  font-size:12px !important;
}

.qbp-flow-at-step-3 .qbp-cal-title{
  font-size:15px !important;
}

.qbp-flow-at-step-3 .qbp-cal-weekday{
  font-size:10px !important;
}

.qbp-flow-at-step-3 .qbp-square-slot-btn{
  min-height:34px !important;
  font-size:12px !important;
  padding:7px 8px !important;
}

.qbp-flow-at-step-3 .qbp-step3-info-form{
  grid-template-columns:1fr !important;
  gap:8px !important;
}

.qbp-flow-at-step-3 .qbp-step3-info-form .qbp-booking-input{
  min-height:38px;
  padding:9px 11px;
  font-size:12px;
}

.qbp-flow-at-step-3 .qbp-step3-info-form textarea.qbp-booking-input{
  min-height:130px;
}

.qbp-flow-at-step-3 .qbp-step3-summary{
  height:100%;
  align-self:stretch;
}

.qbp-flow-at-step-3 .qbp-step3-summary h4{
  font-size:12px !important;
  margin-bottom:12px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary-row,
.qbp-flow-at-step-3 .qbp-step3-price,
.qbp-flow-at-step-3 .qbp-step3-includes{
  padding:8px 0 !important;
  margin:0 !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary span,
.qbp-flow-at-step-3 .qbp-step3-includes span{
  font-size:9px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary strong{
  font-size:11px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary-row small,
.qbp-flow-at-step-3 .qbp-step3-includes li{
  font-size:10px !important;
  line-height:1.35 !important;
}

.qbp-flow-at-step-3 .qbp-step3-includes ul{
  max-height:none !important;
  padding-left:14px !important;
}

.qbp-flow-at-step-3 .qbp-step3-includes li{
  margin-bottom:6px !important;
}

.qbp-flow-at-step-3 .qbp-step3-price strong{
  font-size:25px !important;
}

.qbp-flow-at-step-3 .qbp-step3-confirm{
  min-height:38px;
  font-size:10px;
}

@media(max-width:900px){
  .qbp-flow-at-step-3 .qbp-step3-page-layout,
  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    grid-template-columns:1fr !important;
  }

.qbp-flow-at-step-3 .qbp-step3-time-panel,
.qbp-flow-at-step-3 .qbp-step3-info-panel{
    border-left:0;
    padding-left:0;
  }
}

/* June spacing/pricing QA pass */
.qbp-choice-radio,
.qbp-finish-radio{
  box-sizing:border-box !important;
  aspect-ratio:1 / 1 !important;
  min-width:var(--qbp-radio-size, 24px) !important;
  width:var(--qbp-radio-size, 24px) !important;
  height:var(--qbp-radio-size, 24px) !important;
  flex:0 0 var(--qbp-radio-size, 24px) !important;
  border-radius:50% !important;
  background:transparent !important;
}

.qbp-choice-radio{ --qbp-radio-size:28px; }
.qbp-finish-radio{ --qbp-radio-size:24px; }

.qbp-choice-option.is-selected .qbp-choice-radio,
.qbp-finish-option.is-selected .qbp-finish-radio{
  border-color:#9dff00 !important;
  background:radial-gradient(circle, #9dff00 0 36%, transparent 39%) !important;
  box-shadow:none !important;
}

.qbp-dually-not-needed-message::before{
  content:"" !important;
  border-radius:50% !important;
  background:radial-gradient(circle, #9dff00 0 34%, transparent 37%) !important;
  box-shadow:none !important;
}

.qbp-flow-at-step-2 .qbp-results-intro,
.qbp-flow-at-step-3 .qbp-step3-intro{
  display:none !important;
}

.qbp-flow-at-step-2 .qbp-results{
  margin-top:0 !important;
  padding-top:8px !important;
}

.qbp-flow-at-step-2 .qbp-finish-selector{
  margin:8px auto 18px !important;
  max-width:860px !important;
}

.qbp-flow-at-step-2 .qbp-package-grid{
  gap:18px !important;
}

.qbp-flow-at-step-2 .qbp-package-card{
  min-height:390px !important;
  padding:28px 24px 20px !important;
}

.qbp-flow-at-step-2 .qbp-package-card h3{
  font-size:17px !important;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle{
  font-size:12px !important;
}

.qbp-flow-at-step-2 .qbp-package-price{
  font-size:34px !important;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-description,
.qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
  font-size:12px !important;
}

.qbp-flow-at-step-2 .qbp-package-includes-intro{
  font-size:11px !important;
}

.qbp-flow-at-step-3 .qbp-step3-page-layout{
  margin-top:10px !important;
}

.qbp-flow-at-step-3 .qbp-step3-section-title,
.qbp-flow-at-step-3 .qbp-cal-times-title{
  font-size:14px !important;
}

.qbp-flow-at-step-3 .qbp-cal-title{
  font-size:17px !important;
}

.qbp-flow-at-step-3 .qbp-cal-day,
.qbp-flow-at-step-3 .qbp-square-slot-btn,
.qbp-flow-at-step-3 .qbp-step3-info-form .qbp-booking-input{
  font-size:13px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary h4{
  font-size:14px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary strong{
  font-size:12px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary-row small,
.qbp-flow-at-step-3 .qbp-step3-includes li{
  font-size:11px !important;
}

.qbp-booking-toggle-group{
  display:grid;
  gap:8px;
}

.qbp-booking-toggle-row{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:10px;
  align-items:center;
  min-height:38px;
  padding:7px 8px 7px 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:7px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.22));
}

.qbp-booking-toggle-row > span{
  color:#f3f3f3;
  font-size:12px;
  font-weight:800;
  line-height:1.25;
}

.qbp-booking-toggle-buttons{
  display:inline-grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
  width:116px;
}

.qbp-booking-toggle{
  min-height:28px;
  padding:5px 10px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:6px;
  background:rgba(0,0,0,.28);
  color:#d8d8d8;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  cursor:pointer;
}

.qbp-booking-toggle.is-selected{
  border-color:#9dff00;
  background:linear-gradient(180deg,#b6ff18,#65b900);
  color:#061000;
  box-shadow:0 0 12px rgba(157,255,0,.18);
}

@media(max-width:520px){
  .qbp-booking-toggle-row{
    grid-template-columns:1fr;
  }

  .qbp-booking-toggle-buttons{
    width:100%;
  }
}

/* Final desktop readability + popup polish */
.qbp-flow-at-step-2 .qbp-package-card h3{
  font-size:20px !important;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle{
  font-size:14px !important;
}

.qbp-flow-at-step-2 .qbp-package-card .qbp-package-description,
.qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
  font-size:14px !important;
  line-height:1.48 !important;
}

.qbp-flow-at-step-2 .qbp-package-includes-intro{
  font-size:12px !important;
}

.qbp-flow-at-step-2 .qbp-package-select-btn,
.qbp-flow-at-step-2 .qbp-schedule-now,
.qbp-flow-at-step-2 button.qbp-schedule-now{
  font-size:13px !important;
}

.qbp-flow-at-step-2 .qbp-finish-option strong,
.qbp-flow-at-step-2 .qbp-package-help-copy h3{
  font-size:16px !important;
}

.qbp-flow-at-step-2 .qbp-finish-option small,
.qbp-flow-at-step-2 .qbp-finish-note,
.qbp-flow-at-step-2 .qbp-package-help-copy p,
.qbp-flow-at-step-2 .qbp-benefit strong{
  font-size:13px !important;
}

.qbp-flow-at-step-3 .qbp-step3-section-title,
.qbp-flow-at-step-3 .qbp-cal-times-title{
  font-size:16px !important;
}

.qbp-flow-at-step-3 .qbp-cal-title{
  font-size:19px !important;
}

.qbp-flow-at-step-3 .qbp-cal-weekday{
  font-size:12px !important;
}

.qbp-flow-at-step-3 .qbp-cal-day,
.qbp-flow-at-step-3 .qbp-square-slot-btn,
.qbp-flow-at-step-3 .qbp-step3-info-form .qbp-booking-input,
.qbp-booking-toggle-row > span{
  font-size:14px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary h4{
  font-size:16px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary span,
.qbp-flow-at-step-3 .qbp-step3-includes span{
  font-size:11px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary strong{
  font-size:14px !important;
}

.qbp-flow-at-step-3 .qbp-step3-summary-row small,
.qbp-flow-at-step-3 .qbp-step3-includes li{
  font-size:12px !important;
}

.qbp-flow-at-step-3 .qbp-step3-confirm{
  min-height:44px !important;
  font-size:12px !important;
  opacity:.62;
  filter:saturate(.7);
}

.qbp-flow-at-step-3 .qbp-step3-confirm.is-ready{
  opacity:1;
  filter:none;
  box-shadow:0 0 20px rgba(157,255,0,.28);
}

.qbp-booking-input.is-invalid{
  border-color:#ff4c4c !important;
  box-shadow:0 0 0 1px rgba(255,76,76,.44), 0 0 14px rgba(255,76,76,.18) !important;
}

.qbp-quote-save-modal{
  width:min(520px, 100%) !important;
  padding:26px 28px 22px !important;
  border-color:rgba(157,255,0,.72) !important;
  box-shadow:0 24px 72px rgba(0,0,0,.72),0 0 28px rgba(157,255,0,.26) !important;
}

.qbp-quote-save-modal h3{
  font-size:28px !important;
  line-height:1.05 !important;
}

.qbp-quote-save-modal p{
  margin-bottom:16px !important;
  font-size:13px !important;
}

.qbp-quote-save-card{
  grid-template-columns:58px minmax(0, 1fr) auto;
  align-items:center;
  gap:12px !important;
  padding:14px !important;
}

.qbp-quote-save-card-icon{
  width:48px;
  height:48px;
  display:grid !important;
  place-items:center;
  border:1px solid rgba(157,255,0,.44);
  border-radius:50%;
  color:#9dff00;
  background:radial-gradient(circle,rgba(157,255,0,.16),rgba(0,0,0,.35));
}

.qbp-quote-save-card strong{
  font-size:14px !important;
}

.qbp-quote-save-card span,
.qbp-quote-save-card em{
  display:block;
  color:#bdbdbd;
  font-size:11px;
  font-style:normal;
}

.qbp-quote-save-card b{
  color:#9dff00;
  font-size:26px !important;
  white-space:nowrap;
}

.qbp-quote-save-card b small{
  color:#fff;
  font-size:12px;
  font-weight:700;
}

.qbp-quote-save-form label{
  grid-column:1 / -1;
  display:grid;
  gap:2px;
  color:#fff;
  font-size:13px;
  font-weight:900;
}

.qbp-quote-save-form label small,
.qbp-quote-save-footnote{
  color:#a9a9a9;
  font-size:11px;
  font-weight:600;
}

.qbp-quote-save-footnote{
  margin-top:10px;
  text-align:center;
}

/* Final pre-mobile polish */
.qbp-share-icon,
.qbp-link-icon{
  position:relative;
  display:inline-block;
  width:18px;
  height:18px;
  color:currentColor;
}

.qbp-share-icon::before{
  content:"";
  position:absolute;
  inset:3px;
  border:2px solid currentColor;
  border-radius:4px;
}

.qbp-share-icon::after{
  content:"";
  position:absolute;
  right:0;
  top:0;
  width:10px;
  height:10px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  transform:rotate(45deg);
}

.qbp-link-icon::before,
.qbp-link-icon::after{
  content:"";
  position:absolute;
  width:10px;
  height:6px;
  top:5px;
  border:2px solid currentColor;
  border-radius:999px;
  transform:rotate(-38deg);
}

.qbp-link-icon::before{ left:1px; }
.qbp-link-icon::after{ right:1px; }

.qbp-flow-at-step-2 .qbp-share-quote-btn-global{
  position:absolute !important;
  top:112px !important;
  right:calc(50% - 610px) !important;
  width:42px !important;
  height:42px !important;
  display:grid !important;
  place-items:center !important;
  pointer-events:auto !important;
  z-index:80 !important;
  border-color:rgba(157,255,0,.66) !important;
  color:#9dff00 !important;
  background:rgba(0,0,0,.48) !important;
  box-shadow:0 0 18px rgba(157,255,0,.22) !important;
}

.qbp-flow-at-step-1 .qbp-share-quote-btn-global,
.qbp-flow-at-step-3 .qbp-share-quote-btn-global{
  top:8px !important;
}

.qbp-flow-at-step-2 .qbp-finish-selector{
  margin-top:-4px !important;
  margin-bottom:10px !important;
}

.qbp-flow-at-step-2 .qbp-package-grid{
  margin-top:8px !important;
}

.qbp-flow-at-step-2 .qbp-package-includes div,
.qbp-flow-at-step-3 .qbp-step3-includes li{
  color:#e9e9e9;
}

.qbp-flow-at-step-2 .qbp-package-includes div::first-letter{
  color:#9dff00;
}

.qbp-flow-at-step-2 .qbp-total,
.qbp-flow-at-step-2 .qbp-schedule-now{
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.qbp-flow-at-step-2 .qbp-action-summary:hover .qbp-total,
.qbp-flow-at-step-2 .qbp-action-summary:hover .qbp-schedule-now{
  border-color:rgba(157,255,0,.72) !important;
  box-shadow:0 0 22px rgba(157,255,0,.24) !important;
}

.qbp-flow-at-step-3 .qbp-step3-page-layout{
  margin-top:0 !important;
}

.qbp-flow-at-step-3 .qbp-square-slot-picker,
.qbp-flow-at-step-3 .qbp-step3-summary{
  min-height:auto !important;
}

.qbp-flow-at-step-3 .qbp-step3-schedule-grid{
  grid-template-columns:minmax(210px,.72fr) minmax(170px,.54fr) minmax(240px,.78fr) !important;
}

.qbp-flow-at-step-3 .qbp-cal-grid{
  align-items:stretch !important;
}

.qbp-flow-at-step-3 .qbp-cal-day{
  aspect-ratio:1 / .82 !important;
  min-height:42px !important;
  height:auto !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
}

.qbp-flow-at-step-3 .qbp-cal-times-title{
  margin-top:0 !important;
}

.qbp-booking-discount-field{
  position:relative;
}

.qbp-booking-discount-field .qbp-booking-input{
  padding-right:72px !important;
}

.qbp-discount-apply{
  position:absolute;
  right:6px;
  top:50%;
  transform:translateY(-50%);
  min-height:26px;
  padding:4px 10px;
  border:1px solid rgba(157,255,0,.5);
  border-radius:5px;
  background:rgba(157,255,0,.12);
  color:#9dff00;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}

.qbp-quote-save-overlay{
  background:rgba(0,0,0,.78) !important;
}

.qbp-quote-save-card{
  grid-template-columns:54px minmax(0,1fr) !important;
}

.qbp-quote-save-card-icon::before{
  content:"";
  width:24px;
  height:24px;
  display:block;
  background:#9dff00;
  -webkit-mask:url("qbp-share-vehicle-icon.png") center / contain no-repeat;
  mask:url("qbp-share-vehicle-icon.png") center / contain no-repeat;
}

.qbp-quote-save-card-icon::after{
  content:none;
}

.qbp-quote-save-card-icon{
  font-size:0 !important;
  position:relative;
  place-items:center !important;
}

.qbp-quote-save-card em{
  margin-top:7px;
}

.qbp-quote-save-card em b{
  display:inline;
  margin-left:8px;
  font-size:18px !important;
}

.qbp-quote-save-actions button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.qbp-benefit span{
  font-size:0 !important;
  position:relative;
}

.qbp-benefit span::before{
  content:"";
  width:18px;
  height:18px;
  display:block;
  border:2px solid #9dff00;
  border-radius:50%;
  box-shadow:0 0 10px rgba(157,255,0,.18);
}

.qbp-benefit:nth-child(1) span::after,
.qbp-benefit:nth-child(2) span::after,
.qbp-benefit:nth-child(3) span::after,
.qbp-benefit:nth-child(4) span::after{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  transform:translate(-50%,-50%);
  color:#9dff00;
  font-size:12px;
  font-weight:900;
}

.qbp-benefit:nth-child(1) span::after{ content:"✓"; }
.qbp-benefit:nth-child(2) span::after{ content:"◷"; }
.qbp-benefit:nth-child(3) span::after{ content:"◆"; font-size:10px; }
.qbp-benefit:nth-child(4) span::after{ content:"…"; font-size:15px; line-height:.7; }

.qbp-cal-nav{
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid rgba(157,255,0,.44) !important;
  border-radius:6px !important;
  color:#9dff00 !important;
  font-size:22px !important;
  line-height:1 !important;
  background:rgba(157,255,0,.07) !important;
}

/* Asset icon cleanup + non-overlapping Step 3 columns */
.qbp-share-icon,
.qbp-link-icon{
  position:relative;
  display:inline-block;
  background:#9dff00 !important;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
}

.qbp-share-icon::before,
.qbp-share-icon::after,
.qbp-link-icon::before,
.qbp-link-icon::after{
  content:none !important;
}

.qbp-share-icon{
  width:22px !important;
  height:22px !important;
  -webkit-mask-image:url("qbp-icon-share.png");
  mask-image:url("qbp-icon-share.png");
}

.qbp-link-icon{
  width:18px !important;
  height:18px !important;
  margin-right:4px;
  vertical-align:-3px;
  -webkit-mask-image:url("qbp-icon-link.png");
  mask-image:url("qbp-icon-link.png");
}

.qbp-quote-copy-link{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
}

.qbp-quote-save-card-icon::before{
  width:28px !important;
  height:28px !important;
  background:#9dff00 !important;
  -webkit-mask:url("qbp-icon-shield.png") center / contain no-repeat !important;
  mask:url("qbp-icon-shield.png") center / contain no-repeat !important;
}

.qbp-side-icon{
  color:transparent !important;
}

.qbp-side-icon::before{
  content:"";
  width:76px;
  height:76px;
  display:block;
  background:#9dff00;
  -webkit-mask:url("qbp-icon-shield.png") center / contain no-repeat;
  mask:url("qbp-icon-shield.png") center / contain no-repeat;
}

.qbp-vehicle-time-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.qbp-vehicle-time-pill::before{
  content:"";
  width:18px;
  height:18px;
  display:inline-block;
  background:#9dff00;
  -webkit-mask:url("qbp-icon-timer.png") center / contain no-repeat;
  mask:url("qbp-icon-timer.png") center / contain no-repeat;
}

.qbp-benefit span.qbp-benefit-icon{
  border-color:rgba(157,255,0,.5) !important;
  background:rgba(157,255,0,.07) !important;
}

.qbp-benefit span.qbp-benefit-icon::before{
  width:25px !important;
  height:25px !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:#9dff00;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
}

.qbp-benefit span.qbp-benefit-icon::after{
  content:none !important;
}

.qbp-benefit-icon-shield::before{
  -webkit-mask-image:url("qbp-icon-shield.png");
  mask-image:url("qbp-icon-shield.png");
}

.qbp-benefit-icon-timer::before{
  -webkit-mask-image:url("qbp-icon-timer.png");
  mask-image:url("qbp-icon-timer.png");
}

.qbp-benefit-icon-water::before{
  -webkit-mask-image:url("qbp-icon-water.png");
  mask-image:url("qbp-icon-water.png");
}

.qbp-benefit-icon-chat::before{
  -webkit-mask-image:url("qbp-icon-chat.png");
  mask-image:url("qbp-icon-chat.png");
}

.qbp-package-help-icon{
  font-size:0 !important;
}

.qbp-package-help-icon::before{
  content:"?";
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:2px solid #9dff00;
  border-radius:50%;
  color:#9dff00;
  font-size:28px;
  font-weight:900;
  line-height:1;
}

.qbp-flow-at-step-3 .qbp-step3-schedule-grid{
  grid-template-columns:minmax(320px, 1fr) minmax(210px, .58fr) minmax(300px, .82fr) !important;
  gap:18px !important;
  width:100%;
}

.qbp-flow-at-step-3 .qbp-step3-calendar-panel,
.qbp-flow-at-step-3 .qbp-step3-time-panel,
.qbp-flow-at-step-3 .qbp-step3-info-panel{
  min-width:0;
  position:relative;
}

.qbp-flow-at-step-3 .qbp-step3-time-panel{
  padding-left:18px !important;
  overflow:visible;
  z-index:1;
}

.qbp-flow-at-step-3 .qbp-cal-grid,
.qbp-flow-at-step-3 .qbp-cal-times-grid{
  width:100% !important;
  min-width:0;
}

@media(max-width:1180px){
  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    grid-template-columns:minmax(320px, 1fr) minmax(210px, .62fr) !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    grid-column:1 / -1;
  }
}

@media(max-width:760px){
  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    grid-template-columns:1fr !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-time-panel{
    border-left:0 !important;
    padding-left:0 !important;
  }
}

/* Mobile Step 2/3 app layout */
@media(max-width:760px){
  .qbp-root{
    padding:0 14px 28px !important;
    border-radius:0 !important;
  }

  .qbp-root .qbp-card,
  .qbp-root .qbp-app,
  .qbp-vehicle-shell,
  .qbp-results-holder,
  .qbp-square-slot-picker{
    max-width:100% !important;
  }

  .qbp-flow-stepper{
    grid-template-columns:1fr 54px 1fr 54px 1fr !important;
    column-gap:6px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 20px !important;
    padding:18px 6px 16px !important;
    border-bottom:1px solid rgba(255,255,255,.12);
  }

  .qbp-flow-step{
    align-items:center !important;
    gap:7px !important;
    text-align:center !important;
  }

  .qbp-flow-step > div{
    align-items:center !important;
  }

  .qbp-flow-step span{
    width:38px !important;
    height:38px !important;
    flex-basis:38px !important;
    font-size:18px !important;
  }

  .qbp-flow-step strong{
    max-width:86px;
    white-space:normal !important;
    font-size:12px !important;
    line-height:1.15 !important;
    text-transform:none !important;
  }

  .qbp-flow-step small{
    display:none !important;
  }

  .qbp-flow-edit{
    display:none !important;
  }

  .qbp-flow-line{
    width:100%;
    min-width:0;
  }

  .qbp-share-quote-btn-global{
    top:8px !important;
    right:8px !important;
    width:38px !important;
    height:38px !important;
  }

  .qbp-flow-at-step-2 .qbp-results{
    margin-top:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-results-intro{
    margin:0 0 18px !important;
    padding:0 8px;
  }

  .qbp-flow-at-step-2 .qbp-results-title{
    font-size:32px !important;
    line-height:1.08 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
  }

  .qbp-flow-at-step-2 .qbp-vehicle-meta{
    font-size:15px !important;
    line-height:1.45 !important;
  }

  .qbp-flow-at-step-2 .qbp-finish-selector{
    margin:0 0 16px !important;
    padding:14px !important;
    border-radius:8px !important;
  }

  .qbp-flow-at-step-2 .qbp-finish-options{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card{
    min-height:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0, .92fr) minmax(0, 1fr);
    grid-template-areas:
      "ribbon ribbon"
      "title includes"
      "subtitle includes"
      "price includes"
      "desc includes"
      "button button";
    gap:8px 18px;
    padding:24px 20px 16px !important;
    text-align:left !important;
    border-radius:8px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(255,255,255,.055), transparent 36%),
      linear-gradient(180deg, rgba(22,23,23,.96), rgba(8,9,9,.98)) !important;
  }

  .qbp-flow-at-step-2 .qbp-package-ribbon{
    grid-area:ribbon;
    position:static !important;
    height:30px !important;
    margin:-24px -20px 10px !important;
    font-size:13px !important;
    color:#fff !important;
    background:linear-gradient(180deg,#9dff00,#5fba00) !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card:not(.is-selected) .qbp-package-ribbon{
    display:none !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3{
    grid-area:title;
    margin:0 !important;
    font-size:18px !important;
    line-height:1.18 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle{
    grid-area:subtitle;
    min-height:0 !important;
    margin:0 !important;
    text-align:left !important;
    font-size:14px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-price{
    grid-area:price;
    margin:8px 0 6px !important;
    font-size:38px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description{
    grid-area:desc;
    min-height:0 !important;
    margin:0 !important;
    text-align:left !important;
    font-size:14px !important;
    line-height:1.48 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
    grid-area:includes;
    margin:0 !important;
    padding-left:18px;
    border-left:1px solid rgba(255,255,255,.16);
    font-size:14px !important;
    line-height:1.35 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes div{
    margin-bottom:10px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-select-btn{
    grid-area:button;
    min-height:44px !important;
    margin-top:8px !important;
    font-size:14px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help{
    grid-template-columns:54px 1fr auto !important;
    gap:12px !important;
    padding:16px !important;
    text-align:left !important;
    border-radius:8px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-icon{
    width:54px !important;
    height:54px !important;
    margin:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-copy h3{
    font-size:16px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-copy p{
    font-size:13px !important;
  }

  .qbp-flow-at-step-2 .qbp-process-btn{
    width:34px;
    height:44px;
    padding:0 !important;
    color:transparent !important;
    position:relative;
  }

  .qbp-flow-at-step-2 .qbp-process-btn::after{
    content:"›";
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    color:#fff;
    font-size:34px;
    line-height:1;
  }

  .qbp-flow-at-step-2 .qbp-action-summary,
  .qbp-flow-at-step-2 .qbp-benefits-row{
    display:none !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-intro{
    margin:0 0 18px !important;
    text-align:center !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-intro h2{
    font-size:32px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-intro p{
    font-size:17px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    display:block !important;
  }

  .qbp-flow-at-step-3 .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary,
  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    width:100% !important;
    max-width:100% !important;
    border-radius:8px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    padding:18px 16px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(255,255,255,.045), transparent 34%),
      linear-gradient(180deg, rgba(22,23,23,.94), rgba(7,8,8,.98)) !important;
    border:1px solid rgba(255,255,255,.18) !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-time-panel{
    border-left:1px solid rgba(255,255,255,.18) !important;
    padding-left:16px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-section-title,
  .qbp-flow-at-step-3 .qbp-cal-times-title{
    font-size:19px !important;
    margin-bottom:12px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-title{
    font-size:21px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-weekday{
    font-size:13px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-grid{
    gap:4px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day{
    min-height:42px !important;
    aspect-ratio:1 / 1 !important;
    border-color:transparent !important;
    background:transparent !important;
    font-size:19px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day.is-selected,
  .qbp-flow-at-step-3 .qbp-cal-day.is-today{
    background:linear-gradient(180deg,#b7ff1a,#65c400) !important;
    border-color:#9dff00 !important;
    color:#fff !important;
    box-shadow:0 0 18px rgba(157,255,0,.28) !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-times-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:8px !important;
  }

  .qbp-flow-at-step-3 .qbp-square-slot-btn{
    min-height:46px !important;
    font-size:17px !important;
    border-radius:6px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-info-form{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-info-form .qbp-booking-input{
    min-height:48px !important;
    font-size:15px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary{
    margin-top:12px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary h4{
    font-size:19px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary-row,
  .qbp-flow-at-step-3 .qbp-step3-price,
  .qbp-flow-at-step-3 .qbp-step3-includes{
    padding:12px 0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary span,
  .qbp-flow-at-step-3 .qbp-step3-includes span{
    font-size:12px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary strong{
    font-size:17px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-price strong{
    font-size:30px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-confirm{
    min-height:58px !important;
    width:100% !important;
    font-size:18px !important;
    border-radius:8px !important;
  }
}

@media(max-width:480px){
  .qbp-flow-stepper{
    grid-template-columns:1fr 34px 1fr 34px 1fr !important;
  }

  .qbp-flow-step strong{
    font-size:11px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card{
    grid-template-columns:1fr;
    grid-template-areas:
      "ribbon"
      "title"
      "subtitle"
      "price"
      "desc"
      "includes"
      "button";
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
    padding-left:0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.16);
    padding-top:12px;
  }
}

/* Zero-overlap responsive guardrails */
@media(max-width:1320px){
  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    display:block !important;
    grid-template-columns:1fr !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    grid-template-columns:1fr !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    border-left:0 !important;
    padding-left:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    margin-top:12px !important;
  }
}

@media(max-width:760px){
  .qbp-flow-stepper{
    justify-content:center !important;
    justify-items:center !important;
    align-items:start !important;
    grid-template-columns:minmax(72px,1fr) minmax(28px,42px) minmax(72px,1fr) minmax(28px,42px) minmax(72px,1fr) !important;
  }

  .qbp-flow-step{
    width:100%;
    justify-content:center !important;
  }

  .qbp-flow-line{
    align-self:start !important;
    margin-top:19px !important;
  }

  .qbp-flow-at-step-2 .qbp-quote-action-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    margin:14px auto 18px !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary{
    display:grid !important;
    order:-1;
    gap:8px !important;
    padding:14px !important;
    border:1px solid rgba(157,255,0,.34);
    border-radius:8px;
    background:
      radial-gradient(circle at 50% 0%, rgba(157,255,0,.08), transparent 38%),
      linear-gradient(180deg, rgba(18,19,19,.96), rgba(5,6,6,.98));
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-total{
    display:grid !important;
    padding:0 !important;
    margin:0 !important;
    text-align:center !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-total-label{
    text-align:center !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-total-value{
    font-size:26px !important;
    text-align:center !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-schedule-now{
    display:flex !important;
    width:100% !important;
    min-height:54px !important;
    margin-top:4px !important;
    font-size:16px !important;
  }
}

/* True-last polish overrides for the current redesign pass */
.qbp-flow-line.is-inactive{
  height:1px !important;
  background:rgba(255,255,255,.22) !important;
  box-shadow:none !important;
}

.qbp-flow-line.is-active{
  height:1px !important;
  background:linear-gradient(90deg, #9dff00, rgba(255,255,255,.22)) !important;
  box-shadow:none !important;
}

.qbp-flow-at-step-1 .qbp-share-quote-btn-global{
  display:none !important;
}

.qbp-share-quote-btn-vehicle{
  display:grid !important;
  place-items:center !important;
  position:static !important;
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  border-radius:999px !important;
}

.qbp-side-icon{
  display:grid !important;
  place-items:center !important;
  background:none !important;
  background-image:none !important;
}

.qbp-side-icon::after{
  content:none !important;
}

.qbp-vehicle-fields select,
.qbp-root select{
  background-image:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
}

.qbp-finish-option:hover,
.qbp-finish-option:focus-visible{
  border-color:#9dff00 !important;
  box-shadow:0 0 20px rgba(157,255,0,.24), inset 0 0 0 1px rgba(157,255,0,.12) !important;
}

.qbp-package-select-btn:hover,
.qbp-package-select-btn:focus-visible{
  border-color:#9dff00 !important;
  box-shadow:0 0 18px rgba(157,255,0,.28), inset 0 0 0 1px rgba(157,255,0,.12) !important;
}

@media(max-width:760px){
  .qbp-flow-stepper{
    justify-content:center !important;
    justify-items:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* Current polish pass: bigger raw icons, ready CTAs, Step 3 alignment */
@keyframes qbpReadyCtaSweep{
  0%{ background-position:0% 50%; box-shadow:0 0 18px rgba(157,255,0,.22), inset 0 1px 0 rgba(255,255,255,.22); }
  50%{ background-position:100% 50%; box-shadow:0 0 34px rgba(157,255,0,.52), inset 0 1px 0 rgba(255,255,255,.34); }
  100%{ background-position:0% 50%; box-shadow:0 0 18px rgba(157,255,0,.22), inset 0 1px 0 rgba(255,255,255,.22); }
}

.qbp-vehicle-submit-btn.is-ready,
.qbp-flow-at-step-2 .qbp-schedule-now:not(:disabled):not(.qbp-schedule-disabled),
.qbp-step3-confirm.is-ready{
  background:linear-gradient(110deg,#5db900 0%,#9dff00 24%,#d8ff5a 42%,#76d600 58%,#9dff00 78%,#4f9c00 100%) !important;
  background-size:240% 240% !important;
  color:#080808 !important;
  border-color:#9dff00 !important;
  animation:qbpReadyCtaSweep 2.8s ease-in-out infinite;
}

.qbp-vehicle-submit-btn.is-incomplete,
.qbp-step3-confirm:not(.is-ready),
.qbp-flow-at-step-2 .qbp-schedule-now:disabled,
.qbp-flow-at-step-2 .qbp-schedule-now.qbp-schedule-disabled{
  animation:none !important;
}

.qbp-benefits-row .qbp-benefit span.qbp-benefit-icon{
  width:48px !important;
  height:48px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.qbp-benefits-row .qbp-benefit span.qbp-benefit-icon::before{
  width:44px !important;
  height:44px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#9dff00 !important;
  box-shadow:none !important;
}

.qbp-benefits-row .qbp-benefit span.qbp-benefit-icon::after{
  content:none !important;
}

.qbp-flow-at-step-2 .qbp-total{
  border:1px solid rgba(157,255,0,.68) !important;
  border-radius:8px !important;
  box-shadow:0 0 18px rgba(157,255,0,.16), inset 0 0 0 1px rgba(157,255,0,.08) !important;
}

.qbp-flow-at-step-2 .qbp-total-value small,
.qbp-step3-price small{
  font-size:.48em !important;
  font-weight:800 !important;
  color:#fff !important;
}

.qbp-process-btn{
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease !important;
}

.qbp-process-btn:hover,
.qbp-process-btn:focus-visible{
  border-color:#9dff00 !important;
  color:#fff !important;
  background:rgba(157,255,0,.08) !important;
  box-shadow:0 0 18px rgba(157,255,0,.28), inset 0 0 0 1px rgba(157,255,0,.12) !important;
}

.qbp-custom-select-trigger::before,
.qbp-custom-select-value::before,
.qbp-custom-select-value::after{
  content:none !important;
  display:none !important;
}

.qbp-custom-select-trigger{
  background-image:none !important;
}

.qbp-flow-at-step-3 .qbp-step3-schedule-grid{
  align-items:start !important;
  grid-template-columns:minmax(330px,.9fr) minmax(190px,.55fr) minmax(300px,.85fr) !important;
  gap:14px !important;
}

.qbp-flow-at-step-3 .qbp-flow-stepper{
  margin-bottom:8px !important;
}

.qbp-flow-at-step-3 .qbp-step3-page-layout,
.qbp-flow-at-step-3 .qbp-square-slot-picker{
  margin-top:0 !important;
}

.qbp-flow-at-step-3 .qbp-step3-calendar-panel,
.qbp-flow-at-step-3 .qbp-step3-time-panel,
.qbp-flow-at-step-3 .qbp-step3-info-panel,
.qbp-flow-at-step-3 .qbp-step3-summary{
  align-self:start !important;
}

.qbp-flow-at-step-3 .qbp-step3-time-panel{
  padding-left:14px !important;
  border-left:1px solid rgba(255,255,255,.14) !important;
}

.qbp-flow-at-step-3 .qbp-cal-grid,
.qbp-flow-at-step-3 .qbp-cal-weekdays,
.qbp-flow-at-step-3 .qbp-cal-times-grid{
  gap:6px !important;
}

.qbp-flow-at-step-3 .qbp-cal-day{
  min-height:38px !important;
  aspect-ratio:1 / .82 !important;
}

.qbp-booking-discount-field.is-invalid .qbp-booking-input{
  border-color:#ff3f3f !important;
  box-shadow:0 0 0 2px rgba(255,63,63,.18) !important;
}

.qbp-booking-discount-field.is-valid .qbp-booking-input{
  border-color:#9dff00 !important;
}

.qbp-discount-apply{
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease !important;
}

.qbp-discount-apply:hover,
.qbp-discount-apply:focus-visible{
  border-color:#9dff00 !important;
  background:rgba(157,255,0,.18) !important;
  box-shadow:0 0 14px rgba(157,255,0,.26) !important;
}

.qbp-discount-apply.is-applied{
  min-width:34px !important;
  border-color:#9dff00 !important;
  background:linear-gradient(180deg,#b7ff1a,#67c400) !important;
  color:#070707 !important;
  font-size:15px !important;
}

.qbp-step3-price-before{
  display:inline-block;
  margin-right:6px;
  color:#8d8d8d;
  font-size:.72em;
  text-decoration:line-through;
}

.qbp-step3-discount-line{
  display:block;
  margin-top:5px;
  color:#9dff00;
  font-size:12px;
  font-style:normal;
  font-weight:800;
}

.qbp-booking-toggle-row{
  align-items:center !important;
}

.qbp-booking-toggle-row > span{
  line-height:1.15 !important;
}

@media(max-width:1080px){
  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    grid-template-columns:1fr !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-time-panel{
    border-left:0 !important;
    padding-left:0 !important;
  }
}

/* Mobile Step 1 cleanup: no decorative select icons, centered tracker */
.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-step::after{
  content:none !important;
  display:none !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-custom-select-trigger{
  padding-left:46px !important;
  padding-right:46px !important;
  text-align:center !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-custom-select-value{
  width:100% !important;
  display:block !important;
  text-align:center !important;
}

@media(max-width:760px){
  .qbp-flow-stepper{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    column-gap:0 !important;
    width:100% !important;
    max-width:100% !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:start !important;
    padding:12px 8px 14px !important;
  }

  .qbp-flow-line{
    display:none !important;
  }

  .qbp-flow-step{
    width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:7px !important;
    text-align:center !important;
  }

  .qbp-flow-step > div{
    width:100% !important;
    display:flex !important;
    align-items:center !important;
  }

  .qbp-flow-step strong{
    max-width:78px !important;
    min-height:30px !important;
    margin:0 auto !important;
    color:inherit !important;
    font-size:0 !important;
    line-height:1.12 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .qbp-flow-step[data-step="1"] strong::after{
    content:"Your Vehicle";
    font-size:12px;
  }

  .qbp-flow-step[data-step="2"] strong::after{
    content:"Package";
    font-size:12px;
  }

  .qbp-flow-step[data-step="3"] strong::after{
    content:"Schedule";
    font-size:12px;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-main-card{
    position:relative;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-head-actions{
    position:absolute !important;
    top:14px !important;
    right:14px !important;
    flex-direction:row !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-time-pill{
    display:none !important;
  }
}

/* True-last mobile progress fix: keep bars visible with completed checkmarks */
@media(max-width:760px){
  .qbp-flow-stepper{
    grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr) !important;
    column-gap:0 !important;
  }

  .qbp-flow-line{
    display:block !important;
    height:2px !important;
    width:100% !important;
    align-self:start !important;
    margin-top:19px !important;
    background:rgba(255,255,255,.26) !important;
  }

  .qbp-flow-line.is-active{
    background:linear-gradient(90deg,#9dff00,rgba(255,255,255,.24)) !important;
  }

  .qbp-flow-line.is-complete{
    background:#9dff00 !important;
    box-shadow:0 0 12px rgba(157,255,0,.36) !important;
  }

  .qbp-flow-step.is-complete > span{
    font-size:0 !important;
  }

  .qbp-flow-step.is-complete > span::before{
    content:"✓";
    color:#9dff00;
    font-size:23px;
    font-weight:950;
    line-height:1;
  }
}

/* True-last mobile refresh choice text fix */
@media(max-width:760px){
  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-option{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:12px !important;
    color:#fff !important;
    font-size:16px !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-option > span:not(.qbp-choice-radio),
  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-option strong,
  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-option small{
    display:block !important;
    color:inherit !important;
    font-size:inherit !important;
    line-height:1.15 !important;
    visibility:visible !important;
    opacity:1 !important;
    text-indent:0 !important;
    width:auto !important;
    height:auto !important;
    overflow:visible !important;
  }

  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-option strong{
    color:#fff !important;
    font-weight:900 !important;
  }

  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-option small{
    margin-top:4px !important;
    color:#bfbfbf !important;
    font-size:12px !important;
  }

  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-radio{
    flex:0 0 28px !important;
  }
}

/* True-last package help icon cleanup */
.qbp-package-help-icon{
  display:grid !important;
  place-items:center !important;
  width:58px !important;
  height:58px !important;
  border:3px solid #9dff00 !important;
  border-radius:50% !important;
  color:#9dff00 !important;
  font-size:34px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

.qbp-package-help-icon::before,
.qbp-package-help-icon::after{
  content:none !important;
}

@media(max-width:760px){
  .qbp-flow-at-step-2 .qbp-package-help-icon{
    width:54px !important;
    height:54px !important;
    margin:0 !important;
    font-size:31px !important;
  }
}

/* True-last share modal copy/card spacing */
.qbp-quote-save-card > div:not(.qbp-quote-save-card-icon){
  display:grid !important;
  gap:3px !important;
}

.qbp-quote-save-card strong,
.qbp-quote-save-card span,
.qbp-quote-save-card em{
  line-height:1.25 !important;
}

.qbp-quote-save-card em{
  margin-top:2px !important;
}

/* New app Not Listed dialog */
.qbp-not-listed-overlay{
  position:fixed;
  inset:0;
  z-index:999999;
  display:grid;
  place-items:center;
  padding:22px;
  background:rgba(0,0,0,.78);
  backdrop-filter:blur(8px);
}

.qbp-not-listed-modal{
  position:relative;
  width:min(560px, 100%);
  max-height:calc(100vh - 44px);
  overflow:auto;
  padding:28px;
  border:1px solid rgba(157,255,0,.62);
  border-radius:10px;
  background:
    radial-gradient(circle at 78% 8%, rgba(157,255,0,.18), transparent 34%),
    linear-gradient(180deg,rgba(15,20,20,.98),rgba(3,4,4,.98));
  box-shadow:0 24px 72px rgba(0,0,0,.72),0 0 30px rgba(157,255,0,.22);
  color:#fff;
}

.qbp-not-listed-close{
  position:absolute;
  top:12px;
  right:12px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  background:rgba(255,255,255,.05);
  color:#fff;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}

.qbp-not-listed-modal .qbp-contact-card > div{
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.qbp-not-listed-modal .qbp-contact-field,
.qbp-not-listed-modal .qbp-contact-vehicle{
  margin-bottom:14px;
}

.qbp-not-listed-modal .qbp-contact-vehicle{
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  background:rgba(0,0,0,.3);
  color:#d8d8d8;
}

.qbp-not-listed-modal label{
  display:block;
  margin-bottom:5px;
  color:#fff;
  font-size:13px;
  font-weight:800;
}

.qbp-not-listed-modal input,
.qbp-not-listed-modal textarea{
  width:100%;
  min-height:46px;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.18);
  border-radius:7px;
  background:rgba(0,0,0,.44);
  color:#fff;
  padding:12px 14px;
  font:inherit;
}

.qbp-not-listed-modal textarea{
  min-height:110px;
  resize:vertical;
}

.qbp-not-listed-modal .qbp-cf-send{
  width:100%;
  min-height:50px;
  border:0;
  border-radius:7px;
  background:linear-gradient(180deg,#9dff00,#62bd00);
  color:#081008;
  font-weight:950;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 0 20px rgba(157,255,0,.2);
}

.qbp-not-listed-modal .qbp-cf-send:hover,
.qbp-not-listed-modal .qbp-cf-send:focus-visible{
  box-shadow:0 0 26px rgba(157,255,0,.4);
}

.qbp-not-listed-modal .qbp-muted,
.qbp-not-listed-modal .qbp-contact-help{
  color:#bdbdbd;
  font-size:12px;
}

@media(max-width:760px){
  .qbp-not-listed-overlay{
    align-items:start;
    padding:14px;
  }

  .qbp-not-listed-modal{
    max-height:calc(100vh - 28px);
    padding:24px 18px 20px;
  }
}

/* True-last Step 3 desktop frame alignment */
@media(min-width:1081px){
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    width:min(1320px, calc(100vw - 72px)) !important;
    max-width:1320px !important;
    min-height:0 !important;
    padding:10px 14px 14px !important;
    overflow:hidden !important;
  }

  .qbp-flow-at-step-3 .qbp-flow-stepper{
    width:100% !important;
    max-width:none !important;
    margin:0 auto 12px !important;
    padding:0 4px !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-3 .qbp-results-holder{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    grid-template-columns:minmax(0, 1fr) 270px !important;
    gap:12px !important;
    align-items:stretch !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    margin:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    min-height:560px !important;
  }
}

/* True-last launch layout cleanup: shared frame, mobile cards, calm CTAs */
@keyframes qbpReadyCtaSweepOnce{
  0%{ background-position:-140% 50%; }
  100%{ background-position:160% 50%; }
}

.qbp-vehicle-submit-btn.is-ready,
.qbp-flow-at-step-2 .qbp-schedule-now:not(:disabled):not(.qbp-schedule-disabled),
.qbp-step3-confirm.is-ready,
.qbp-quote-save-form button{
  background:
    linear-gradient(105deg, transparent 0%, transparent 34%, rgba(255,255,255,.55) 46%, transparent 58%, transparent 100%),
    linear-gradient(180deg,#9dff00 0%,#73d500 100%) !important;
  background-size:220% 100%, 100% 100% !important;
  color:#080808 !important;
  border-color:#9dff00 !important;
  box-shadow:none !important;
  animation:qbpReadyCtaSweepOnce .95s ease-out 1 !important;
}

.qbp-vehicle-submit-btn.is-ready:hover,
.qbp-vehicle-submit-btn.is-ready:focus-visible,
.qbp-flow-at-step-2 .qbp-schedule-now:not(:disabled):not(.qbp-schedule-disabled):hover,
.qbp-flow-at-step-2 .qbp-schedule-now:not(:disabled):not(.qbp-schedule-disabled):focus-visible,
.qbp-step3-confirm.is-ready:hover,
.qbp-step3-confirm.is-ready:focus-visible,
.qbp-quote-save-form button:hover,
.qbp-quote-save-form button:focus-visible{
  box-shadow:0 0 24px rgba(157,255,0,.44), inset 0 1px 0 rgba(255,255,255,.28) !important;
}

.qbp-flow-at-step-2 .qbp-total,
.qbp-flow-at-step-2 .qbp-schedule-now{
  border:1px solid rgba(157,255,0,.72) !important;
  border-radius:8px !important;
}

.qbp-flow-at-step-2 .qbp-total{
  box-shadow:0 0 14px rgba(157,255,0,.12), inset 0 0 0 1px rgba(157,255,0,.08) !important;
}

.qbp-package-help-icon{
  width:86px !important;
  height:86px !important;
  min-width:86px !important;
  font-size:50px !important;
  border-width:4px !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger::before,
.qbp-vehicle-fields .qbp-custom-select-value::before,
.qbp-vehicle-fields .qbp-custom-select-value::after{
  content:none !important;
  display:none !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger{
  background-image:none !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger::after{
  content:"" !important;
  right:18px !important;
  top:50% !important;
  width:12px !important;
  height:12px !important;
  border:0 !important;
  border-right:3px solid #9dff00 !important;
  border-bottom:3px solid #9dff00 !important;
  transform:translateY(-65%) rotate(45deg) !important;
  background:transparent !important;
  box-shadow:none !important;
}

.qbp-vehicle-fields .qbp-custom-select.is-open .qbp-custom-select-trigger::after{
  transform:translateY(-35%) rotate(-135deg) !important;
}

@media(min-width:901px){
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    width:min(1320px, calc(100vw - 72px)) !important;
    max-width:1320px !important;
    min-height:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    width:100% !important;
    max-width:none !important;
    margin:0 auto 12px !important;
    padding:0 4px !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-2 .qbp-results-holder,
  .qbp-flow-at-step-3 .qbp-results-holder,
  .qbp-flow-at-step-2 .qbp-results,
  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-2 .qbp-results{
    padding-top:0 !important;
  }
}

@media(max-width:900px){
  .qbp-root{
    padding-left:12px !important;
    padding-right:12px !important;
    overflow:hidden !important;
  }

  .qbp-vehicle-shell{
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:10px !important;
    overflow:hidden !important;
  }

  .qbp-flow-at-step-2 .qbp-results,
  .qbp-flow-at-step-2 .qbp-results-holder{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding-top:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-2 .qbp-finish-selector{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 12px !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    width:100% !important;
    max-width:100% !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    overflow:hidden !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-areas:
      "ribbon"
      "title"
      "subtitle"
      "price"
      "desc"
      "includes"
      "button" !important;
    gap:8px !important;
    padding:22px 18px 16px !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle,
  .qbp-flow-at-step-2 .qbp-package-price,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3{
    font-size:20px !important;
    line-height:1.15 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-price{
    font-size:38px !important;
    line-height:1 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
    padding-left:0 !important;
    padding-top:12px !important;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,.16) !important;
  }

  .qbp-flow-at-step-2 .qbp-package-ribbon{
    margin:-22px -18px 10px !important;
  }

  .qbp-flow-at-step-2 .qbp-quote-action-row{
    width:100% !important;
    max-width:100% !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help{
    grid-template-columns:86px minmax(0,1fr) 42px !important;
    align-items:center !important;
  }
}

@media(max-width:560px){
  .qbp-flow-at-step-2 .qbp-package-help{
    grid-template-columns:1fr !important;
    justify-items:center !important;
    text-align:center !important;
  }

  .qbp-package-help-icon{
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    font-size:46px !important;
  }
}

/* True-last shell cleanup: remove duplicate outer ring */
.qbp-vehicle-shell,
.qbp-flow-at-step-1 .qbp-vehicle-shell,
.qbp-flow-at-step-2 .qbp-vehicle-shell,
.qbp-flow-at-step-3 .qbp-vehicle-shell{
  border-color:transparent !important;
  box-shadow:none !important;
  background:transparent !important;
}

/* True-last help icon shape lock */
.qbp-package-help-icon,
.qbp-flow-at-step-2 .qbp-package-help-icon{
  width:86px !important;
  height:86px !important;
  min-width:86px !important;
  max-width:86px !important;
  flex:0 0 86px !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
}

@media(max-width:560px){
  .qbp-package-help-icon,
  .qbp-flow-at-step-2 .qbp-package-help-icon{
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    max-width:78px !important;
    flex-basis:78px !important;
  }
}

/* True-last Step 2 action tile: one shared border around total + CTA */
.qbp-flow-at-step-2 .qbp-action-summary{
  display:grid !important;
  gap:12px !important;
  padding:18px !important;
  border:1px solid rgba(157,255,0,.72) !important;
  border-radius:8px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(157,255,0,.10), transparent 40%),
    linear-gradient(180deg, rgba(16,18,18,.98), rgba(4,5,5,.98)) !important;
  box-shadow:0 0 18px rgba(157,255,0,.16), inset 0 0 0 1px rgba(157,255,0,.08) !important;
}

.qbp-flow-at-step-2 .qbp-action-summary .qbp-total{
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
}

.qbp-flow-at-step-2 .qbp-action-summary .qbp-schedule-now{
  width:100% !important;
  max-width:100% !important;
  min-height:54px !important;
  margin:0 !important;
  border-radius:7px !important;
  border:0 !important;
}

.qbp-flow-at-step-2 .qbp-action-summary:hover,
.qbp-flow-at-step-2 .qbp-action-summary:focus-within{
  box-shadow:0 0 24px rgba(157,255,0,.28), inset 0 0 0 1px rgba(157,255,0,.12) !important;
}

/* True-last desktop step baseline alignment */
@media(min-width:901px){
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell{
    padding-top:26px !important;
  }

  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper{
    margin-top:0 !important;
    margin-bottom:18px !important;
  }
}

/* True-last Step 3 section heading alignment */
@media(min-width:901px){
  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    padding-top:18px !important;
    align-self:start !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-section-title,
  .qbp-flow-at-step-3 .qbp-cal-times-title,
  .qbp-flow-at-step-3 .qbp-step3-summary h4{
    min-height:32px !important;
    margin-top:0 !important;
    margin-bottom:10px !important;
    display:flex !important;
    align-items:center !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-info-panel .qbp-step3-section-title{
    transform:translateY(-2px);
  }
}

/* True-last progress, select, and share popup fixes */
.qbp-flow-stepper{
  grid-template-columns:minmax(0,1fr) minmax(96px,150px) minmax(0,1fr) minmax(96px,150px) minmax(0,1fr) !important;
  align-items:start !important;
}

.qbp-flow-step{
  align-items:flex-start !important;
  min-height:54px !important;
}

.qbp-flow-step > span{
  flex:0 0 auto !important;
}

.qbp-flow-line{
  align-self:start !important;
  margin-top:24px !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger{
  position:relative !important;
  padding-right:52px !important;
  background-image:none !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger::before,
.qbp-vehicle-fields .qbp-custom-select-value::before,
.qbp-vehicle-fields .qbp-custom-select-value::after{
  content:none !important;
  display:none !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger::after{
  content:"" !important;
  position:absolute !important;
  right:22px !important;
  top:50% !important;
  width:13px !important;
  height:13px !important;
  display:block !important;
  border:0 !important;
  border-right:4px solid #9dff00 !important;
  border-bottom:4px solid #9dff00 !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:translateY(-65%) rotate(45deg) !important;
}

.qbp-vehicle-fields .qbp-custom-select.is-open .qbp-custom-select-trigger::after{
  transform:translateY(-35%) rotate(-135deg) !important;
}

.qbp-vehicle-fields .qbp-custom-select-value{
  display:block !important;
  padding-right:0 !important;
  background:none !important;
}

.qbp-quote-save-form input,
.qbp-quote-save-form input[type="email"],
.qbp-quote-save-form input[type="tel"],
.qbp-quote-save-form input[type="text"]{
  min-height:48px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:7px !important;
  background:rgba(0,0,0,.58) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04) !important;
}

.qbp-quote-save-form input::placeholder{
  color:#a9a9a9 !important;
  -webkit-text-fill-color:#a9a9a9 !important;
  opacity:1 !important;
}

.qbp-quote-save-card-icon::before{
  -webkit-mask:url("qbp-share-vehicle-icon.png") center / contain no-repeat !important;
  mask:url("qbp-share-vehicle-icon.png") center / contain no-repeat !important;
}

/* True-last single dropdown chevron */
.qbp-vehicle-fields .qbp-custom-select-trigger::before,
.qbp-vehicle-fields .qbp-custom-select-value::before,
.qbp-vehicle-fields .qbp-custom-select-value::after,
.qbp-custom-select-trigger::before,
.qbp-custom-select-value::before,
.qbp-custom-select-value::after{
  content:none !important;
  display:none !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger::after,
.qbp-custom-select-trigger::after{
  content:"⌄" !important;
  position:absolute !important;
  right:18px !important;
  top:50% !important;
  width:auto !important;
  height:auto !important;
  display:block !important;
  border:0 !important;
  background:transparent !important;
  color:#9dff00 !important;
  box-shadow:none !important;
  font-size:30px !important;
  font-weight:900 !important;
  line-height:1 !important;
  transform:translateY(-54%) !important;
  pointer-events:none !important;
}

.qbp-vehicle-fields .qbp-custom-select.is-open .qbp-custom-select-trigger::after,
.qbp-custom-select.is-open .qbp-custom-select-trigger::after{
  transform:translateY(-46%) rotate(180deg) !important;
}

/* True-last dropdown arrow: use one background icon, no pseudo duplicates */
.qbp-vehicle-fields .qbp-custom-select-trigger,
.qbp-custom-select-trigger{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cpath d='M4 6.5 9 11.5 14 6.5' fill='none' stroke='%239dff00' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 18px center !important;
  background-size:18px 18px !important;
  padding-right:52px !important;
}

.qbp-vehicle-fields .qbp-custom-select-trigger::before,
.qbp-vehicle-fields .qbp-custom-select-trigger::after,
.qbp-vehicle-fields .qbp-custom-select-value::before,
.qbp-vehicle-fields .qbp-custom-select-value::after,
.qbp-custom-select-trigger::before,
.qbp-custom-select-trigger::after,
.qbp-custom-select-value::before,
.qbp-custom-select-value::after{
  content:none !important;
  display:none !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
}

/* True-last desktop help icon size */
@media(min-width:901px){
  .qbp-package-help-icon,
  .qbp-flow-at-step-2 .qbp-package-help-icon{
    width:104px !important;
    height:104px !important;
    min-width:104px !important;
    max-width:104px !important;
    flex-basis:104px !important;
    font-size:60px !important;
  }
}

/* True-last progress line fill + popup form refinements */
.qbp-flow-edit,
.qbp-flow-step.is-complete .qbp-flow-edit{
  display:none !important;
}

.qbp-flow-stepper{
  grid-template-columns:max-content minmax(160px,1fr) max-content minmax(160px,1fr) max-content !important;
  column-gap:16px !important;
}

.qbp-flow-line{
  width:100% !important;
  justify-self:stretch !important;
}

.qbp-flow-step > div{
  display:grid !important;
  gap:3px !important;
  align-content:start !important;
}

.qbp-flow-step strong,
.qbp-flow-step small{
  margin-top:0 !important;
}

.qbp-quote-save-form [name="quote_phone"]{
  grid-column:1 / -1 !important;
  width:100% !important;
}

.qbp-quote-save-card{
  grid-template-columns:62px minmax(0,1fr) !important;
  align-items:center !important;
}

.qbp-quote-save-card-icon{
  width:54px !important;
  height:54px !important;
  align-self:center !important;
}

.qbp-quote-save-card-icon::before{
  width:34px !important;
  height:34px !important;
}

/* True-last Step 3 dead-space removal */
.qbp-flow-at-step-3 .qbp-vehicle-shell{
  min-height:0 !important;
  padding-top:10px !important;
  padding-bottom:14px !important;
}

.qbp-flow-at-step-3 .qbp-flow-stepper{
  margin-bottom:8px !important;
}

.qbp-flow-at-step-3 .qbp-results-holder,
.qbp-flow-at-step-3 .qbp-step3-page-layout,
.qbp-flow-at-step-3 .qbp-square-slot-picker,
.qbp-flow-at-step-3 .qbp-step3-schedule-grid,
.qbp-flow-at-step-3 .qbp-step3-calendar-panel,
.qbp-flow-at-step-3 .qbp-step3-time-panel,
.qbp-flow-at-step-3 .qbp-step3-info-panel,
.qbp-flow-at-step-3 .qbp-step3-summary-side{
  margin-top:0 !important;
  padding-top:0 !important;
}

.qbp-flow-at-step-3 .qbp-results-holder{
  min-height:0 !important;
  align-items:start !important;
}

.qbp-flow-at-step-3 .qbp-step3-page-layout{
  align-items:start !important;
  align-content:start !important;
}

.qbp-flow-at-step-3 .qbp-step3-schedule-grid{
  min-height:0 !important;
  align-items:start !important;
  align-content:start !important;
}

.qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker,
.qbp-flow-at-step-3 .qbp-step3-summary{
  align-self:start !important;
}

/* True-last Step 2 dead-space removal */
.qbp-flow-at-step-2 .qbp-vehicle-shell{
  padding-top:10px !important;
}

.qbp-flow-at-step-2 .qbp-flow-stepper{
  margin-bottom:8px !important;
}

.qbp-flow-at-step-2 .qbp-results-holder,
.qbp-flow-at-step-2 .qbp-results,
.qbp-flow-at-step-2 .qbp-finish-selector,
.qbp-flow-at-step-2 .qbp-package-grid,
.qbp-flow-at-step-2 .qbp-quote-action-row{
  margin-top:0 !important;
}

.qbp-flow-at-step-2 .qbp-results-holder,
.qbp-flow-at-step-2 .qbp-results{
  padding-top:0 !important;
  min-height:0 !important;
  align-items:start !important;
  align-content:start !important;
}

.qbp-flow-at-step-2 .qbp-finish-selector{
  margin-bottom:8px !important;
}

.qbp-flow-at-step-2 .qbp-package-grid{
  margin-bottom:10px !important;
  align-items:stretch !important;
}

.qbp-flow-at-step-2 .qbp-package-help,
.qbp-flow-at-step-2 .qbp-action-summary{
  margin-top:0 !important;
}

/* True-last desktop flow alignment: stable tracker + no phantom top gap */
@media(min-width:901px){
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    display:grid !important;
    grid-template-rows:auto auto !important;
    align-content:start !important;
    row-gap:10px !important;
    padding-top:10px !important;
  }

  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    width:100% !important;
    max-width:none !important;
    min-height:64px !important;
    margin:0 !important;
    padding:0 48px !important;
    display:grid !important;
    grid-template-columns:minmax(210px,1fr) minmax(170px,1fr) minmax(210px,1fr) minmax(170px,1fr) minmax(210px,1fr) !important;
    column-gap:18px !important;
    align-items:start !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-stepper .qbp-flow-step{
    min-height:58px !important;
    height:58px !important;
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) !important;
    column-gap:12px !important;
    align-items:start !important;
    justify-items:start !important;
    align-self:start !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
  }

  .qbp-flow-stepper .qbp-flow-step > span{
    grid-column:1 !important;
    grid-row:1 !important;
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    flex-basis:44px !important;
    align-self:start !important;
    margin:0 !important;
  }

  .qbp-flow-stepper .qbp-flow-step > div{
    grid-column:2 !important;
    grid-row:1 !important;
    height:58px !important;
    display:grid !important;
    grid-template-rows:auto auto !important;
    gap:6px !important;
    align-content:start !important;
    align-items:start !important;
    justify-items:start !important;
    margin:0 !important;
    padding-top:4px !important;
  }

  .qbp-flow-stepper .qbp-flow-step strong,
  .qbp-flow-stepper .qbp-flow-step small{
    display:block !important;
    line-height:1.15 !important;
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
  }

  .qbp-flow-stepper .qbp-flow-line{
    width:100% !important;
    height:2px !important;
    align-self:start !important;
    justify-self:stretch !important;
    margin:21px 0 0 !important;
  }

  .qbp-flow-at-step-1 .qbp-step-panel-vehicle,
  .qbp-flow-at-step-2 .qbp-results-holder,
  .qbp-flow-at-step-3 .qbp-results-holder{
    grid-row:2 !important;
    margin-top:0 !important;
    padding-top:0 !important;
    align-self:start !important;
  }

  .qbp-flow-at-step-2 .qbp-results,
  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:0 !important;
    transform:none !important;
  }
}

/* True-last Step 3 panel lift: collapse hidden intro row and use the empty band */
@media(min-width:901px){
  .qbp-flow-at-step-3 .qbp-step3-intro{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    grid-template-rows:auto !important;
    row-gap:0 !important;
    margin-top:-96px !important;
    transform:none !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary-side{
    grid-row:1 !important;
    margin-top:0 !important;
    align-self:start !important;
  }
}

/* True-last launch polish: share corner, calmer mobile, compact cards */
.qbp-share-quote-btn-vehicle{
  display:none !important;
}

.qbp-share-quote-btn-global,
.qbp-flow-at-step-1 .qbp-share-quote-btn-global,
.qbp-flow-at-step-2 .qbp-share-quote-btn-global,
.qbp-flow-at-step-3 .qbp-share-quote-btn-global{
  position:absolute !important;
  top:12px !important;
  right:16px !important;
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  z-index:120 !important;
  border:1px solid rgba(157,255,0,.72) !important;
  background:rgba(4,8,5,.56) !important;
  color:#9dff00 !important;
  box-shadow:0 0 16px rgba(157,255,0,.18) !important;
}

.qbp-share-quote-btn-global:hover,
.qbp-share-quote-btn-global:focus-visible{
  background:linear-gradient(180deg,#9dff00,#62bd00) !important;
  color:#071006 !important;
  box-shadow:0 0 24px rgba(157,255,0,.38) !important;
}

.qbp-quote-save-card-icon{
  width:72px !important;
  height:72px !important;
}

.qbp-quote-save-card-icon::before{
  width:50px !important;
  height:50px !important;
}

.qbp-package-help-icon,
.qbp-flow-at-step-2 .qbp-package-help-icon{
  width:76px !important;
  height:76px !important;
  min-width:76px !important;
  max-width:76px !important;
  flex-basis:76px !important;
  font-size:48px !important;
}

.qbp-cal-day.is-selected,
.qbp-cal-day.is-selected *,
.qbp-square-slot-btn.is-selected,
.qbp-square-slot-btn.is-selected *,
.qbp-flow-at-step-3 .qbp-cal-day.is-selected,
.qbp-flow-at-step-3 .qbp-cal-day.is-selected *,
.qbp-flow-at-step-3 .qbp-square-slot-btn.is-selected,
.qbp-flow-at-step-3 .qbp-square-slot-btn.is-selected *{
  color:#071006 !important;
  -webkit-text-fill-color:#071006 !important;
}

.qbp-cal-day.is-today:not(.is-selected){
  color:#9dff00 !important;
  -webkit-text-fill-color:#9dff00 !important;
}

@media(min-width:901px){
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    padding-top:18px !important;
    row-gap:14px !important;
  }

  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    padding-right:82px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:-72px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help{
    min-height:0 !important;
    padding:12px 16px !important;
    align-items:center !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-copy p{
    margin:0 !important;
  }
}

@media(max-width:900px){
  .qbp-root{
    background:
      radial-gradient(circle at 50% 0%, rgba(157,255,0,.045), transparent 28%),
      linear-gradient(180deg,#030606 0%,#000 56%,#020202 100%) !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }

  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    background:
      radial-gradient(circle at 50% 0%, rgba(157,255,0,.05), transparent 32%),
      linear-gradient(180deg, rgba(6,8,8,.76), rgba(0,0,0,.90)) !important;
    padding-top:14px !important;
  }

  .qbp-share-quote-btn-global,
  .qbp-flow-at-step-1 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-2 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-3 .qbp-share-quote-btn-global{
    top:12px !important;
    right:12px !important;
    width:36px !important;
    height:36px !important;
  }

  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr) 42px minmax(0,1fr) !important;
    gap:0 !important;
    padding:6px 46px 8px 8px !important;
    margin-bottom:10px !important;
    align-items:start !important;
  }

  .qbp-flow-step{
    min-height:46px !important;
    gap:5px !important;
    align-items:center !important;
    justify-items:center !important;
    text-align:center !important;
  }

  .qbp-flow-step > span{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    flex-basis:32px !important;
    font-size:15px !important;
  }

  .qbp-flow-step strong{
    font-size:11px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-line{
    margin-top:16px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-main-card{
    padding:24px 16px 18px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-fields{
    gap:10px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-holder,
  .qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-step{
    margin-bottom:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-fields .qbp-custom-select-trigger{
    min-height:50px !important;
  }

  .qbp-flow-at-step-2 .qbp-finish-selector{
    margin-bottom:10px !important;
    padding:10px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    gap:10px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card{
    display:grid !important;
    grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr) !important;
    grid-template-areas:
      "ribbon ribbon"
      "title includes"
      "subtitle includes"
      "price includes"
      "desc includes"
      "button button" !important;
    gap:6px 12px !important;
    min-height:0 !important;
    padding:16px 14px 14px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3{
    grid-area:title !important;
    font-size:20px !important;
    line-height:1.05 !important;
    margin:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle{
    grid-area:subtitle !important;
    font-size:12px !important;
    margin:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-price{
    grid-area:price !important;
    font-size:34px !important;
    line-height:1 !important;
    margin:2px 0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description{
    grid-area:desc !important;
    font-size:12px !important;
    line-height:1.25 !important;
    margin:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
    grid-area:includes !important;
    border-top:0 !important;
    border-left:1px solid rgba(255,255,255,.16) !important;
    padding:0 0 0 10px !important;
    margin:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes div{
    font-size:11px !important;
    line-height:1.25 !important;
    margin-bottom:5px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-select-btn{
    grid-area:button !important;
    min-height:40px !important;
    margin-top:4px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help{
    padding:12px !important;
    min-height:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    padding:10px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    gap:8px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    padding:10px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-info-form{
    gap:8px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-info-form .qbp-booking-input{
    width:100% !important;
    min-height:44px !important;
    box-sizing:border-box !important;
  }
}

@media(max-width:340px){
  .qbp-flow-at-step-2 .qbp-package-card{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "ribbon"
      "title"
      "subtitle"
      "price"
      "desc"
      "includes"
      "button" !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes{
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,.16) !important;
    padding:8px 0 0 !important;
  }
}

@media(max-width:900px){
  .qbp-flow-at-step-3 .qbp-cal-day.is-today,
  .qbp-flow-at-step-3 .qbp-cal-day.is-today *,
  .qbp-flow-at-step-3 .qbp-cal-day.is-selected,
  .qbp-flow-at-step-3 .qbp-cal-day.is-selected *,
  .qbp-flow-at-step-3 .qbp-square-slot-btn.is-selected,
  .qbp-flow-at-step-3 .qbp-square-slot-btn.is-selected *{
    color:#071006 !important;
    -webkit-text-fill-color:#071006 !important;
  }
}

/* True-last share tab + centered popup vehicle icon */
.qbp-share-quote-btn-global,
.qbp-flow-at-step-1 .qbp-share-quote-btn-global,
.qbp-flow-at-step-2 .qbp-share-quote-btn-global,
.qbp-flow-at-step-3 .qbp-share-quote-btn-global{
  top:-1px !important;
  right:-1px !important;
  width:72px !important;
  height:54px !important;
  border-radius:0 11px 0 22px !important;
  border:1px solid rgba(157,255,0,.70) !important;
  border-top-color:rgba(157,255,0,.92) !important;
  border-right-color:rgba(157,255,0,.92) !important;
  background:
    radial-gradient(circle at 70% 20%, rgba(157,255,0,.20), transparent 44%),
    linear-gradient(180deg, rgba(13,22,9,.92), rgba(3,7,4,.78)) !important;
  box-shadow:-8px 8px 22px rgba(0,0,0,.34), 0 0 18px rgba(157,255,0,.16) !important;
  transform:none !important;
}

.qbp-share-quote-btn-global .qbp-share-icon{
  width:28px !important;
  height:28px !important;
}

.qbp-share-quote-btn-global:hover,
.qbp-share-quote-btn-global:focus-visible{
  background:
    radial-gradient(circle at 70% 20%, rgba(255,255,255,.32), transparent 42%),
    linear-gradient(180deg,#9dff00,#62bd00) !important;
  color:#071006 !important;
}

.qbp-quote-save-card{
  align-items:center !important;
}

.qbp-quote-save-card-icon{
  position:relative !important;
  display:grid !important;
  place-items:center !important;
  width:76px !important;
  height:76px !important;
  min-width:76px !important;
  padding:0 !important;
  font-size:0 !important;
  line-height:0 !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
}

.qbp-quote-save-card-icon::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:48px !important;
  height:48px !important;
  transform:translate(-50%, -50%) !important;
  margin:0 !important;
  background:#9dff00 !important;
  -webkit-mask:url("qbp-share-vehicle-icon.png") center / contain no-repeat !important;
  mask:url("qbp-share-vehicle-icon.png") center / contain no-repeat !important;
}

.qbp-quote-save-card-icon::after{
  content:none !important;
  display:none !important;
}

@media(max-width:900px){
  .qbp-share-quote-btn-global,
  .qbp-flow-at-step-1 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-2 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-3 .qbp-share-quote-btn-global{
    top:-1px !important;
    right:-1px !important;
    width:58px !important;
    height:46px !important;
    border-radius:0 10px 0 18px !important;
  }

  .qbp-share-quote-btn-global .qbp-share-icon{
    width:24px !important;
    height:24px !important;
  }
}

/* True-last Step 1 render match: split headline + brighter outside frame */
.qbp-flow-at-step-1 .qbp-vehicle-main-card h2{
  color:#fff !important;
  font-size:clamp(38px, 4.15vw, 66px) !important;
  line-height:.92 !important;
  font-weight:950 !important;
  text-align:center !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  max-width:760px !important;
  margin:0 auto 22px !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-main-card h2 span{
  display:block !important;
  color:#9dff00 !important;
  text-shadow:0 0 18px rgba(157,255,0,.22) !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-main-card > p{
  text-align:center !important;
  margin-top:0 !important;
}

.qbp-vehicle-shell,
.qbp-flow-at-step-1 .qbp-vehicle-shell,
.qbp-flow-at-step-2 .qbp-vehicle-shell,
.qbp-flow-at-step-3 .qbp-vehicle-shell{
  border:1px solid rgba(157,255,0,.58) !important;
  box-shadow:0 0 28px rgba(157,255,0,.09), inset 0 0 0 1px rgba(157,255,0,.07) !important;
}

@media(max-width:900px){
  .qbp-flow-at-step-1 .qbp-vehicle-main-card h2{
    font-size:clamp(34px, 10.5vw, 48px) !important;
    line-height:.94 !important;
    margin-bottom:18px !important;
  }
}

/* True-last Step 2 tracker and bottom row cleanup */
@media(min-width:901px){
  .qbp-flow-at-step-2 .qbp-flow-stepper{
    padding:0 86px 0 48px !important;
    grid-template-columns:minmax(250px,1fr) minmax(230px,1fr) minmax(250px,1fr) minmax(230px,1fr) minmax(250px,1fr) !important;
    column-gap:18px !important;
  }

  .qbp-flow-at-step-2 .qbp-flow-line{
    margin-top:21px !important;
    align-self:start !important;
    justify-self:stretch !important;
    width:100% !important;
    min-width:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-quote-action-row{
    align-items:start !important;
    grid-template-columns:minmax(0,1fr) 220px !important;
    gap:12px !important;
    margin-top:8px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help{
    min-height:76px !important;
    padding:10px 14px !important;
    grid-template-columns:76px minmax(0,1fr) 200px !important;
    align-items:center !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-copy h3{
    margin-bottom:3px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-copy p{
    line-height:1.25 !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary{
    min-height:0 !important;
    align-self:start !important;
    padding:12px !important;
    gap:10px !important;
    border-color:rgba(157,255,0,.70) !important;
    background:linear-gradient(180deg, rgba(12,16,14,.96), rgba(4,6,5,.98)) !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-total{
    min-height:0 !important;
    padding:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary:hover .qbp-total,
  .qbp-flow-at-step-2 .qbp-action-summary:hover .qbp-schedule-now{
    box-shadow:none !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary:hover,
  .qbp-flow-at-step-2 .qbp-action-summary:focus-within{
    border-color:#9dff00 !important;
    box-shadow:0 0 24px rgba(157,255,0,.28) !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-schedule-now{
    min-height:46px !important;
  }
}

/* True-last live-summary visual tweaks: Step 1 question icon + save truck spacing */
.qbp-flow-at-step-1 .qbp-side-icon{
  width:92px !important;
  height:92px !important;
  margin:0 auto 18px !important;
  border:3px solid #9dff00 !important;
  border-radius:999px !important;
  background:none !important;
  display:grid !important;
  place-items:center !important;
  color:#9dff00 !important;
  box-shadow:0 0 18px rgba(157,255,0,.18) !important;
}

.qbp-flow-at-step-1 .qbp-side-icon::before{
  content:"?" !important;
  display:block !important;
  color:#9dff00 !important;
  font-size:58px !important;
  font-weight:950 !important;
  line-height:1 !important;
}

.qbp-quote-save-card{
  grid-template-columns:76px minmax(0,1fr) !important;
  gap:22px !important;
}

.qbp-quote-save-card > div:not(.qbp-quote-save-card-icon){
  min-width:0 !important;
  padding-left:2px !important;
}

.qbp-quote-save-card-icon{
  width:76px !important;
  height:76px !important;
  min-width:76px !important;
}

.qbp-quote-save-card-icon::before{
  width:60px !important;
  height:60px !important;
}

@media(max-width:560px){
  .qbp-quote-save-card{
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:18px !important;
  }

  .qbp-quote-save-card-icon{
    width:72px !important;
    height:72px !important;
    min-width:72px !important;
  }

  .qbp-quote-save-card-icon::before{
    width:56px !important;
    height:56px !important;
  }
}

/* True-last final polish: calendar hover, tracker centering, save modal */
.qbp-flow-at-step-3 .qbp-cal-day.is-available:hover:not(.is-selected):not(.is-today){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-weight:800 !important;
}

.qbp-flow-at-step-3 .qbp-cal-day.is-selected,
.qbp-flow-at-step-3 .qbp-cal-day.is-selected *,
.qbp-flow-at-step-3 .qbp-square-slot-btn.is-selected,
.qbp-flow-at-step-3 .qbp-square-slot-btn.is-selected *{
  color:#071006 !important;
  -webkit-text-fill-color:#071006 !important;
  font-weight:900 !important;
}

.qbp-flow-at-step-3 .qbp-cal-day.is-today:not(.is-selected),
.qbp-flow-at-step-3 .qbp-cal-day.is-today:not(.is-selected) *{
  color:#9dff00 !important;
  -webkit-text-fill-color:#9dff00 !important;
  font-weight:900 !important;
}

@media(min-width:901px){
  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    grid-template-columns:minmax(245px,1fr) minmax(250px,1fr) minmax(245px,1fr) minmax(250px,1fr) minmax(245px,1fr) !important;
    padding-left:44px !important;
    padding-right:86px !important;
  }

  .qbp-flow-line,
  .qbp-flow-at-step-1 .qbp-flow-line,
  .qbp-flow-at-step-2 .qbp-flow-line,
  .qbp-flow-at-step-3 .qbp-flow-line{
    margin-top:21px !important;
    justify-self:stretch !important;
    width:100% !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:-82px !important;
  }
}

.qbp-quote-save-modal{
  border-color:rgba(157,255,0,.62) !important;
  background:
    radial-gradient(circle at 82% 8%, rgba(157,255,0,.16), transparent 24%),
    radial-gradient(circle at 0% 0%, rgba(157,255,0,.10), transparent 34%),
    linear-gradient(180deg, rgba(10,13,12,.98), rgba(1,2,2,.99)) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.66),0 0 32px rgba(157,255,0,.18) !important;
}

.qbp-quote-save-actions button,
.qbp-quote-save-form button{
  min-height:48px !important;
  border-radius:7px !important;
  font-weight:950 !important;
}

.qbp-quote-save-actions button{
  background:rgba(157,255,0,.10) !important;
  border:1px solid rgba(157,255,0,.58) !important;
  color:#fff !important;
}

.qbp-quote-save-actions button:hover,
.qbp-quote-save-actions button:focus-visible{
  background:linear-gradient(180deg,#9dff00,#62bd00) !important;
  color:#071006 !important;
  box-shadow:0 0 22px rgba(157,255,0,.30) !important;
}

.qbp-quote-save-form input,
.qbp-quote-save-form input[type="email"],
.qbp-quote-save-form input[type="tel"],
.qbp-quote-save-form input[type="text"]{
  background:rgba(0,0,0,.72) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04) !important;
}

.qbp-quote-save-form input::placeholder{
  color:#a9a9a9 !important;
  -webkit-text-fill-color:#a9a9a9 !important;
}

.qbp-quote-save-form button{
  background:linear-gradient(180deg,#9dff00,#62bd00) !important;
  color:#071006 !important;
  border:0 !important;
}

.qbp-side-mobile-trust{
  display:none;
}

/* True-last mobile cleanup pass from Dean notes */
@media(max-width:900px){
  .qbp-root{
    background:#000 !important;
    padding:10px !important;
  }

  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    background:linear-gradient(180deg, rgba(5,7,7,.96), rgba(0,0,0,.98)) !important;
    border:1px solid rgba(157,255,0,.72) !important;
    box-shadow:0 0 18px rgba(157,255,0,.10), inset 0 0 0 1px rgba(157,255,0,.06) !important;
  }

  .qbp-flow-step strong::after{
    content:none !important;
    display:none !important;
  }

  .qbp-flow-step strong{
    white-space:normal !important;
    overflow:hidden !important;
    text-overflow:clip !important;
  }

  .qbp-share-quote-btn-global,
  .qbp-flow-at-step-1 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-2 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-3 .qbp-share-quote-btn-global{
    top:6px !important;
    right:6px !important;
  }

  .qbp-flow-at-step-1 .qbp-choice-title{
    display:block !important;
    max-width:100% !important;
    color:#fff !important;
    font-size:15px !important;
    line-height:1.18 !important;
    letter-spacing:.03em !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
  }

  .qbp-flow-at-step-1 .qbp-refresh-choice-panel{
    padding:12px !important;
  }

  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-options-two{
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-submit{
    display:grid !important;
    gap:10px !important;
  }

  .qbp-flow-at-step-1 .qbp-benefits-row{
    order:2 !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:8px !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit:nth-child(n+4){
    display:none !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit{
    display:grid !important;
    justify-items:center !important;
    gap:5px !important;
    padding:0 !important;
    min-width:0 !important;
    text-align:center !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit span.qbp-benefit-icon{
    width:30px !important;
    height:30px !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit span.qbp-benefit-icon::before{
    width:28px !important;
    height:28px !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit strong{
    font-size:12px !important;
    line-height:1.1 !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit:nth-child(1) strong{
    font-size:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit:nth-child(1) strong::after{
    content:"Secure";
    font-size:12px !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit:nth-child(2) strong{
    font-size:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit:nth-child(2) strong::after{
    content:"No Spam";
    font-size:12px !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit:nth-child(3) strong{
    font-size:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit:nth-child(3) strong::after{
    content:"Easy Process";
    font-size:12px !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit small{
    display:none !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card::before,
  .qbp-flow-at-step-2 .qbp-package-card::after,
  .qbp-flow-at-step-2 .qbp-package-option::before,
  .qbp-flow-at-step-2 .qbp-package-option::after{
    content:none !important;
    display:none !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card{
    align-items:center !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle,
  .qbp-flow-at-step-2 .qbp-package-price,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description{
    text-align:left !important;
    max-width:none !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card.is-selected{
    border-color:#9dff00 !important;
    box-shadow:0 0 18px rgba(157,255,0,.28), inset 0 0 0 1px rgba(157,255,0,.18) !important;
  }
}

/* True-last mobile tracker + calendar color correction */
@media(max-width:900px){
  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    padding-top:8px !important;
    padding-bottom:8px !important;
    margin-bottom:8px !important;
  }

  .qbp-flow-step > div{
    gap:3px !important;
    max-width:76px !important;
  }

  .qbp-flow-step small{
    display:none !important;
  }

  .qbp-flow-step strong{
    display:block !important;
    max-width:76px !important;
    color:inherit !important;
    font-size:11px !important;
    line-height:1.08 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .qbp-flow-at-step-1 .qbp-flow-step[data-step="1"] strong{
    font-size:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-flow-step[data-step="1"] strong::before{
    content:"1. Your Vehicle";
    display:block !important;
    font-size:11px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-at-step-2 .qbp-flow-step[data-step="2"] strong{
    font-size:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-flow-step[data-step="2"] strong::before{
    content:"2. Package";
    display:block !important;
    font-size:11px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-at-step-3 .qbp-flow-step[data-step="3"] strong{
    font-size:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-flow-step[data-step="3"] strong::before{
    content:"3. Schedule";
    display:block !important;
    font-size:11px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:0 !important;
    padding-top:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary,
  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    background:
      radial-gradient(circle at 50% 0%, rgba(157,255,0,.045), transparent 36%),
      linear-gradient(180deg, rgba(7,10,9,.98), rgba(0,0,0,.99)) !important;
    border-color:rgba(157,255,0,.28) !important;
    box-shadow:none !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    padding-top:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-benefit span.qbp-benefit-icon{
    border:1px solid #9dff00 !important;
    border-radius:6px !important;
    background:rgba(157,255,0,.06) !important;
  }
}

/* True-last progress bubble colors */
.qbp-flow-step.is-active > span,
.qbp-flow-step.is-active span{
  color:#071006 !important;
  -webkit-text-fill-color:#071006 !important;
  font-weight:950 !important;
}

.qbp-flow-step.is-complete > span,
.qbp-flow-step.is-complete span{
  display:grid !important;
  place-items:center !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
}

.qbp-flow-step.is-complete > span::before,
.qbp-flow-step.is-complete span::before{
  color:#9dff00 !important;
  -webkit-text-fill-color:#9dff00 !important;
  font-size:28px !important;
  line-height:1 !important;
  transform:translateY(-1px) !important;
}

/* True-last ultrawide desktop: let the top frame match the content width */
@media(min-width:1400px){
  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    width:min(96vw, 1760px) !important;
    max-width:1760px !important;
  }

  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    width:100% !important;
    max-width:none !important;
    grid-template-columns:minmax(270px,1fr) minmax(280px,1fr) minmax(270px,1fr) minmax(280px,1fr) minmax(270px,1fr) !important;
    padding-left:64px !important;
    padding-right:96px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-layout{
    width:100% !important;
    max-width:none !important;
  }
}

/* True-last Divi-style desktop nesting: section > row > modules */
@media(min-width:901px){
  .qbp-root{
    padding-left:clamp(18px, 2.6vw, 54px) !important;
    padding-right:clamp(18px, 2.6vw, 54px) !important;
    overflow-x:hidden !important;
  }

  .qbp-root .qbp-card,
  .qbp-holder,
  .qbp-step{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 auto !important;
    padding:clamp(12px, 1.2vw, 22px) !important;
    display:grid !important;
    grid-template-rows:auto auto !important;
    align-content:start !important;
    row-gap:clamp(10px, 1vw, 18px) !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }

  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    grid-row:1 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 clamp(24px, 3.2vw, 72px) !important;
    box-sizing:border-box !important;
    grid-template-columns:minmax(220px, .9fr) minmax(130px, 1fr) minmax(240px, .9fr) minmax(130px, 1fr) minmax(220px, .9fr) !important;
    column-gap:clamp(12px, 1.4vw, 22px) !important;
  }

  .qbp-flow-stepper .qbp-flow-line{
    width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-layout,
  .qbp-flow-at-step-2 .qbp-results-holder,
  .qbp-flow-at-step-3 .qbp-results-holder{
    grid-row:2 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-layout{
    display:grid !important;
    grid-template-columns:minmax(0, 2.15fr) minmax(340px, .85fr) !important;
    gap:clamp(14px, 1.1vw, 22px) !important;
    align-items:stretch !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-main-card,
  .qbp-flow-at-step-1 .qbp-vehicle-side-card,
  .qbp-flow-at-step-2 .qbp-results,
  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-main-card,
  .qbp-flow-at-step-1 .qbp-vehicle-side-card{
    overflow:hidden !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    grid-template-columns:minmax(0, 1fr) minmax(270px, .26fr) !important;
    gap:clamp(12px, 1vw, 18px) !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker{
    display:block !important;
    min-width:0 !important;
    overflow:visible !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    display:grid !important;
    grid-template-columns:minmax(300px, .9fr) minmax(190px, .56fr) minmax(260px, .78fr) !important;
    gap:clamp(12px, .9vw, 18px) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    align-items:start !important;
    overflow:visible !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-time-panel{
    grid-column:auto !important;
    padding-left:clamp(10px, .8vw, 16px) !important;
    border-left:1px solid rgba(255,255,255,.14) !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-times-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    width:100% !important;
    min-width:0 !important;
  }
}

/* True-last outer frame: stronger green shell, no faint gray duplicate */
.qbp-vehicle-shell,
.qbp-flow-at-step-1 .qbp-vehicle-shell,
.qbp-flow-at-step-2 .qbp-vehicle-shell,
.qbp-flow-at-step-3 .qbp-vehicle-shell{
  border:2px solid rgba(157,255,0,.72) !important;
  outline:0 !important;
  box-shadow:0 0 30px rgba(157,255,0,.10), inset 0 0 0 1px rgba(157,255,0,.07) !important;
}

.qbp-vehicle-shell::before,
.qbp-vehicle-shell::after,
.qbp-flow-at-step-1 .qbp-vehicle-shell::before,
.qbp-flow-at-step-1 .qbp-vehicle-shell::after,
.qbp-flow-at-step-2 .qbp-vehicle-shell::before,
.qbp-flow-at-step-2 .qbp-vehicle-shell::after,
.qbp-flow-at-step-3 .qbp-vehicle-shell::before,
.qbp-flow-at-step-3 .qbp-vehicle-shell::after{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* True-last flow panel collapse: inactive steps must not add shell height */
.qbp-flow-at-step-1 .qbp-step-panel-package,
.qbp-flow-at-step-1 .qbp-results-holder,
.qbp-flow-at-step-2 .qbp-step-panel-vehicle,
.qbp-flow-at-step-3 .qbp-step-panel-vehicle{
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}

.qbp-flow-at-step-1 .qbp-step-panel-vehicle,
.qbp-flow-at-step-2 .qbp-step-panel-package,
.qbp-flow-at-step-2 .qbp-results-holder,
.qbp-flow-at-step-3 .qbp-results-holder{
  display:block !important;
}

.qbp-flow-at-step-1 .qbp-vehicle-shell,
.qbp-flow-at-step-2 .qbp-vehicle-shell,
.qbp-flow-at-step-3 .qbp-vehicle-shell{
  grid-template-rows:auto minmax(0, auto) !important;
}

/* True-last Step 2 desktop compaction: wider rows, shorter schedule tile */
@media(min-width:901px){
  .qbp-flow-at-step-2 .qbp-results{
    width:100% !important;
    max-width:none !important;
  }

  .qbp-flow-at-step-2 .qbp-finish-selector,
  .qbp-flow-at-step-2 .qbp-package-grid,
  .qbp-flow-at-step-2 .qbp-quote-action-row,
  .qbp-flow-at-step-2 .qbp-benefits-row{
    width:100% !important;
    max-width:none !important;
  }

  .qbp-flow-at-step-2 .qbp-finish-selector{
    margin-bottom:6px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    gap:clamp(10px, .9vw, 16px) !important;
    margin-bottom:6px !important;
  }

  .qbp-flow-at-step-2 .qbp-quote-action-row{
    grid-template-columns:minmax(0,1fr) minmax(190px, 220px) !important;
    gap:10px !important;
    margin:6px 0 0 !important;
    align-items:stretch !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help{
    min-height:58px !important;
    padding:8px 12px !important;
    grid-template-columns:56px minmax(0,1fr) 190px !important;
    align-items:center !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-icon{
    width:46px !important;
    height:46px !important;
    font-size:30px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-copy h3{
    font-size:13px !important;
    margin:0 0 2px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-help-copy p{
    font-size:10.5px !important;
    line-height:1.2 !important;
  }

  .qbp-flow-at-step-2 .qbp-process-btn{
    min-height:34px !important;
    padding:8px 12px !important;
    font-size:9px !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary{
    min-height:0 !important;
    padding:9px 10px !important;
    gap:6px !important;
    align-content:center !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-total{
    display:grid !important;
    gap:2px !important;
  }

  .qbp-flow-at-step-2 .qbp-total-label{
    font-size:9.5px !important;
    line-height:1.1 !important;
  }

  .qbp-flow-at-step-2 .qbp-total-value{
    font-size:20px !important;
    line-height:1.05 !important;
  }

  .qbp-flow-at-step-2 .qbp-duration-note{
    font-size:10.5px !important;
    line-height:1.1 !important;
  }

  .qbp-flow-at-step-2 .qbp-action-summary .qbp-schedule-now,
  .qbp-flow-at-step-2 button.qbp-schedule-now{
    min-height:38px !important;
    height:38px !important;
    font-size:10px !important;
  }

  .qbp-flow-at-step-2 .qbp-benefits-row{
    margin-top:6px !important;
    padding-top:6px !important;
  }
}

/* True-last Step 3 card rebuild: two main cards plus the shared benefits banner */
.qbp-flow-at-step-3 .qbp-step3-number{
  display:none !important;
}

@media(min-width:901px){
  .qbp-flow-at-step-3 .qbp-results-holder{
    width:100% !important;
    max-width:none !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(280px, 340px) !important;
    gap:clamp(12px, 1vw, 18px) !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    align-items:stretch !important;
    align-content:start !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-intro{
    display:none !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    margin:0 !important;
    padding:clamp(12px, 1vw, 18px) !important;
    min-height:0 !important;
    height:100% !important;
    border:1px solid rgba(157,255,0,.58) !important;
    border-radius:8px !important;
    background:
      radial-gradient(circle at 48% 0%, rgba(157,255,0,.055), transparent 35%),
      linear-gradient(180deg, rgba(17,20,18,.94), rgba(2,4,3,.99)) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.035), 0 0 22px rgba(157,255,0,.08) !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary-side{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    display:grid !important;
    grid-template-columns:minmax(260px, .88fr) minmax(180px, .46fr) minmax(250px, .72fr) !important;
    gap:clamp(10px, .75vw, 14px) !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    align-items:start !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    margin:0 !important;
    padding:0 clamp(10px, .8vw, 14px) 0 0 !important;
    border:0 !important;
    border-right:1px solid rgba(255,255,255,.13) !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    padding-right:0 !important;
    border-right:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-header{
    margin:8px 0 10px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-grid,
  .qbp-flow-at-step-3 .qbp-cal-weekdays{
    gap:6px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day,
  .qbp-flow-at-step-3 .qbp-cal-blank{
    min-height:36px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-times-grid{
    grid-template-columns:1fr !important;
    gap:7px !important;
  }

  .qbp-flow-at-step-3 .qbp-square-slot-btn{
    min-height:34px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    align-self:stretch !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary h4{
    margin:0 0 6px !important;
    padding:0 0 10px !important;
    border-bottom:1px solid rgba(255,255,255,.12) !important;
    color:#d9d9d9 !important;
    font-size:15px !important;
    line-height:1.1 !important;
    letter-spacing:.03em !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary-row,
  .qbp-flow-at-step-3 .qbp-step3-includes,
  .qbp-flow-at-step-3 .qbp-step3-price{
    display:grid !important;
    grid-template-columns:24px minmax(0,1fr) !important;
    gap:9px !important;
    align-items:start !important;
    margin:0 !important;
    padding:7px 0 !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary-copy{
    min-width:0 !important;
    display:grid !important;
    gap:3px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary-copy > span,
  .qbp-flow-at-step-3 .qbp-step3-summary > span,
  .qbp-flow-at-step-3 .qbp-step3-includes > span:not(.qbp-step3-summary-icon),
  .qbp-flow-at-step-3 .qbp-step3-price > span:not(.qbp-step3-summary-icon){
    color:#a9a9a9 !important;
    font-size:10px !important;
    line-height:1.1 !important;
    letter-spacing:.04em !important;
    text-transform:uppercase !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary strong{
    color:#9dff00 !important;
    font-size:13px !important;
    line-height:1.22 !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-summary-row small{
    color:#dedede !important;
    font-size:11px !important;
    line-height:1.22 !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-includes ul{
    max-height:145px !important;
    margin:4px 0 0 !important;
    padding:0 4px 0 14px !important;
    overflow:auto !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-includes li{
    margin:0 0 5px !important;
    color:#e6e6e6 !important;
    font-size:11px !important;
    line-height:1.22 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-price strong{
    color:#fff !important;
    font-size:15px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-confirm{
    margin-top:auto !important;
    min-height:36px !important;
    border-radius:6px !important;
    font-size:10px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-benefits-row{
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding-top:8px !important;
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    gap:clamp(10px, 1vw, 18px) !important;
    border-top:1px solid rgba(157,255,0,.22) !important;
  }
}

.qbp-step3-summary-icon{
  width:22px !important;
  height:22px !important;
  display:grid !important;
  place-items:center !important;
  position:relative !important;
  color:#9dff00 !important;
  flex:0 0 auto !important;
}

.qbp-step3-summary-icon::before,
.qbp-step3-summary-icon::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  box-sizing:border-box !important;
}

.qbp-step3-icon-vehicle::before{
  width:18px !important;
  height:10px !important;
  border:2px solid #9dff00 !important;
  border-radius:5px 5px 3px 3px !important;
  top:5px !important;
}

.qbp-step3-icon-vehicle::after{
  width:4px !important;
  height:4px !important;
  border-radius:50% !important;
  background:#9dff00 !important;
  left:4px !important;
  bottom:3px !important;
  box-shadow:10px 0 0 #9dff00 !important;
}

.qbp-step3-icon-package::before,
.qbp-step3-icon-includes::before{
  width:16px !important;
  height:18px !important;
  border:2px solid #9dff00 !important;
  border-radius:8px 8px 10px 10px !important;
  clip-path:polygon(50% 0, 100% 18%, 92% 72%, 50% 100%, 8% 72%, 0 18%) !important;
}

.qbp-step3-icon-includes::after{
  width:8px !important;
  height:5px !important;
  border-left:2px solid #9dff00 !important;
  border-bottom:2px solid #9dff00 !important;
  transform:rotate(-45deg) translate(1px, -1px) !important;
}

.qbp-step3-icon-date::before{
  width:17px !important;
  height:16px !important;
  border:2px solid #9dff00 !important;
  border-radius:3px !important;
}

.qbp-step3-icon-date::after{
  width:13px !important;
  height:2px !important;
  background:#9dff00 !important;
  top:6px !important;
}

.qbp-step3-icon-time::before,
.qbp-step3-icon-duration::before{
  width:18px !important;
  height:18px !important;
  border:2px solid #9dff00 !important;
  border-radius:50% !important;
}

.qbp-step3-icon-time::after,
.qbp-step3-icon-duration::after{
  width:6px !important;
  height:7px !important;
  border-left:2px solid #9dff00 !important;
  border-bottom:2px solid #9dff00 !important;
  transform:translate(2px, -2px) !important;
}

.qbp-step3-icon-price::before{
  content:"$" !important;
  position:static !important;
  color:#9dff00 !important;
  font-size:18px !important;
  font-weight:950 !important;
  line-height:1 !important;
}

@media(max-width:900px){
  .qbp-flow-at-step-3 .qbp-step3-intro{
    display:none !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    display:grid !important;
    gap:10px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    border:1px solid rgba(157,255,0,.48) !important;
    border-radius:8px !important;
    background:linear-gradient(180deg, rgba(17,20,18,.94), rgba(2,4,3,.99)) !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-benefits-row{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    gap:6px !important;
    margin:0 !important;
    padding-top:8px !important;
  }
}

/* True-last Step 1 side info icon: question mark, never the shield mask */
.qbp-side-icon,
.qbp-flow-at-step-1 .qbp-side-icon{
  width:92px !important;
  height:92px !important;
  margin:0 auto 18px !important;
  border:3px solid #9dff00 !important;
  border-radius:999px !important;
  background:transparent !important;
  background-image:none !important;
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  display:grid !important;
  place-items:center !important;
  color:#9dff00 !important;
  -webkit-text-fill-color:#9dff00 !important;
  font-size:58px !important;
  font-weight:950 !important;
  line-height:1 !important;
  box-shadow:0 0 18px rgba(157,255,0,.18) !important;
}

.qbp-side-icon::before,
.qbp-flow-at-step-1 .qbp-side-icon::before{
  content:none !important;
  background-image:none !important;
  -webkit-mask:none !important;
  mask:none !important;
}

.qbp-side-icon::after,
.qbp-flow-at-step-1 .qbp-side-icon::after{
  content:none !important;
}

@media(max-width:900px){
  .qbp-side-icon,
  .qbp-flow-at-step-1 .qbp-side-icon{
    width:64px !important;
    height:64px !important;
    margin:0 auto 12px !important;
    border-width:2px !important;
    font-size:40px !important;
  }

  .qbp-side-icon::before,
  .qbp-flow-at-step-1 .qbp-side-icon::before{
    content:none !important;
  }
}

/* True-last wrapper cleanup: remove the ghost border behind the real green shell */
.qbp-root .qbp-card,
.qbp-root .qbp-app,
.qbp-holder,
.qbp-step,
.qbp-step-panel,
.qbp-step-panel-vehicle,
.qbp-step-panel-package,
.qbp-results-holder{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

.qbp-root .qbp-card::before,
.qbp-root .qbp-card::after,
.qbp-root .qbp-app::before,
.qbp-root .qbp-app::after,
.qbp-holder::before,
.qbp-holder::after,
.qbp-step::before,
.qbp-step::after,
.qbp-step-panel::before,
.qbp-step-panel::after,
.qbp-results-holder::before,
.qbp-results-holder::after{
  content:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:none !important;
}

.qbp-vehicle-shell,
.qbp-flow-at-step-1 .qbp-vehicle-shell,
.qbp-flow-at-step-2 .qbp-vehicle-shell,
.qbp-flow-at-step-3 .qbp-vehicle-shell{
  border:2px solid rgba(157,255,0,.76) !important;
  outline:0 !important;
  box-shadow:0 0 30px rgba(157,255,0,.10) !important;
}

/* True-last Step 3 selected-date placement under Select a Time */
.qbp-flow-at-step-3 .qbp-cal-times-title{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:6px 8px !important;
  width:100% !important;
  margin:0 0 10px !important;
  text-align:left !important;
}

.qbp-flow-at-step-3 .qbp-cal-times-date{
  flex:0 0 100% !important;
  width:100% !important;
  margin:2px 0 0 !important;
  padding-left:0 !important;
  display:block !important;
  color:#dcdcdc !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  white-space:normal !important;
}

@media(max-width:900px){
  .qbp-flow-at-step-3 .qbp-cal-times-date{
    font-size:13px !important;
    text-align:left !important;
  }
}

/* True-last desktop stage width: stop PC/laptop layouts from being trapped in tablet width */
@media(min-width:600px){
  .et_pb_row:has(.qbp-root),
  .et_pb_column:has(.qbp-root),
  .et_pb_module:has(.qbp-root){
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .qbp-root{
    width:min(96vw, 1840px) !important;
    max-width:1840px !important;
    min-width:0 !important;
    margin-left:50% !important;
    margin-right:0 !important;
    transform:translateX(-50%) !important;
    padding-left:clamp(18px, 2vw, 40px) !important;
    padding-right:clamp(18px, 2vw, 40px) !important;
    box-sizing:border-box !important;
  }

  .qbp-root .qbp-card,
  .qbp-root .qbp-app,
  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-layout{
    grid-template-columns:minmax(0, 2.35fr) minmax(340px, .82fr) !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    grid-template-columns:repeat(3, minmax(260px, 1fr)) !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    grid-template-columns:minmax(0, 1fr) minmax(300px, 360px) !important;
  }
}

@media(max-width:599px){
  .qbp-root{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    transform:none !important;
  }
}

/* True-last laptop lock: undo the old 768-900px tablet rules */
@media(min-width:600px) and (max-width:900px){
  .qbp-root{
    padding:14px 18px 30px !important;
  }

  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    display:grid !important;
    grid-template-columns:minmax(150px,1fr) minmax(70px,.45fr) minmax(170px,1fr) minmax(70px,.45fr) minmax(150px,1fr) !important;
    gap:10px !important;
    padding:0 14px !important;
    width:100% !important;
    max-width:none !important;
  }

  .qbp-flow-step{
    display:flex !important;
    align-items:flex-start !important;
    gap:8px !important;
    text-align:left !important;
  }

  .qbp-flow-step > div{
    display:flex !important;
    align-items:flex-start !important;
  }

  .qbp-flow-step strong,
  .qbp-flow-step small{
    display:block !important;
    white-space:normal !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-layout{
    display:grid !important;
    grid-template-columns:minmax(0, 2fr) minmax(260px, .8fr) !important;
    gap:12px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-fields{
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  }

  .qbp-flow-at-step-2 .qbp-results,
  .qbp-flow-at-step-2 .qbp-results-holder{
    width:100% !important;
    max-width:none !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .qbp-flow-at-step-2 .qbp-quote-action-row{
    grid-template-columns:minmax(0,1fr) minmax(170px, 210px) !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(250px, 320px) !important;
    gap:10px !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    display:grid !important;
    grid-template-columns:minmax(220px,.9fr) minmax(150px,.52fr) minmax(220px,.78fr) !important;
    gap:10px !important;
  }
}

/* True-last mobile QA pass: live tracker text, Step 1 icon row, package cards, Step 3 spacing */
@media(max-width:599px){
  .qbp-flow-step strong::before,
  .qbp-flow-step strong::after,
  .qbp-flow-at-step-1 .qbp-flow-step[data-step="1"] strong::before,
  .qbp-flow-at-step-2 .qbp-flow-step[data-step="2"] strong::before,
  .qbp-flow-at-step-3 .qbp-flow-step[data-step="3"] strong::before{
    content:none !important;
    display:none !important;
  }

  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    padding:6px 6px 8px !important;
    margin:0 0 6px !important;
    align-items:start !important;
  }

  .qbp-flow-step > div{
    width:100% !important;
    max-width:92px !important;
    display:grid !important;
    justify-items:center !important;
    gap:2px !important;
  }

  .qbp-flow-step strong{
    display:block !important;
    max-width:92px !important;
    min-height:0 !important;
    margin:0 auto !important;
    color:inherit !important;
    -webkit-text-fill-color:currentColor !important;
    font-size:10px !important;
    line-height:1.04 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .qbp-flow-step small{
    display:block !important;
    max-width:92px !important;
    margin:0 auto !important;
    color:#9a9a9a !important;
    -webkit-text-fill-color:#9a9a9a !important;
    font-size:9px !important;
    line-height:1.05 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .qbp-flow-step.is-active small,
  .qbp-flow-step.is-complete small{
    color:#b8b8b8 !important;
    -webkit-text-fill-color:#b8b8b8 !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-submit{
    display:flex !important;
    flex-direction:column !important;
    gap:9px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-submit-btn{
    order:2 !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row{
    display:none !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row div{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-items:center !important;
    gap:4px !important;
    min-width:0 !important;
    padding:0 !important;
    text-align:center !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row span{
    width:30px !important;
    height:30px !important;
    border:0 !important;
    border-radius:0 !important;
    background:#9dff00 !important;
    box-shadow:none !important;
    display:block !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row span::after{
    content:none !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row div:nth-child(1) span{
    -webkit-mask:url("qbp-icon-shield.png") center / contain no-repeat !important;
    mask:url("qbp-icon-shield.png") center / contain no-repeat !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row div:nth-child(2) span{
    -webkit-mask:url("qbp-icon-chat.png") center / contain no-repeat !important;
    mask:url("qbp-icon-chat.png") center / contain no-repeat !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row div:nth-child(3) span{
    -webkit-mask:url("qbp-icon-timer.png") center / contain no-repeat !important;
    mask:url("qbp-icon-timer.png") center / contain no-repeat !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row strong{
    font-size:0 !important;
    line-height:1 !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row div:nth-child(1) strong::after{
    content:"Secure";
    font-size:10px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row div:nth-child(2) strong::after{
    content:"No Spam";
    font-size:10px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row div:nth-child(3) strong::after{
    content:"Easy Process";
    font-size:10px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row small{
    display:none !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-side-card{
    margin-top:12px !important;
    display:grid !important;
    justify-items:center !important;
  }

  .qbp-flow-at-step-1 .qbp-side-icon{
    width:54px !important;
    height:54px !important;
    font-size:34px !important;
    margin-bottom:10px !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-trust{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    margin:14px 0 0 !important;
    padding:12px 0 0 !important;
    border-top:1px solid rgba(157,255,0,.18) !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-trust > div{
    display:grid !important;
    justify-items:center !important;
    align-items:start !important;
    gap:6px !important;
    min-width:0 !important;
    text-align:center !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-icon{
    width:30px !important;
    height:30px !important;
    display:block !important;
    background:#9dff00 !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-icon-secure{
    -webkit-mask:url("qbp-icon-shield.png") center / contain no-repeat !important;
    mask:url("qbp-icon-shield.png") center / contain no-repeat !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-icon-chat{
    -webkit-mask:url("qbp-icon-chat.png") center / contain no-repeat !important;
    mask:url("qbp-icon-chat.png") center / contain no-repeat !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-icon-fast{
    -webkit-mask:url("qbp-icon-timer.png") center / contain no-repeat !important;
    mask:url("qbp-icon-timer.png") center / contain no-repeat !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-trust strong{
    display:block !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:10px !important;
    line-height:1.1 !important;
    font-weight:800 !important;
    white-space:normal !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card,
  .qbp-flow-at-step-2 .qbp-package-option{
    grid-template-columns:minmax(0,1fr) minmax(118px,.82fr) !important;
    align-items:start !important;
    gap:8px 10px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle{
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3{
    font-size:17px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    row-gap:6px !important;
    padding-top:8px !important;
  }

  .qbp-flow-at-step-3 .qbp-results-holder,
  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:0 !important;
    padding-top:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker{
    padding-top:10px !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day.is-today:not(.is-selected){
    background:rgba(157,255,0,.12) !important;
    border-color:#9dff00 !important;
    color:#9dff00 !important;
    -webkit-text-fill-color:#9dff00 !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day.is-today:not(.is-selected) .qbp-day-label{
    color:#9dff00 !important;
    -webkit-text-fill-color:#9dff00 !important;
  }

  .qbp-flow-at-step-3 .qbp-cal-day.is-selected,
  .qbp-flow-at-step-3 .qbp-cal-day.is-selected *,
  .qbp-flow-at-step-3 .qbp-cal-day.is-today.is-selected,
  .qbp-flow-at-step-3 .qbp-cal-day.is-today.is-selected *{
    color:#071006 !important;
    -webkit-text-fill-color:#071006 !important;
    font-weight:950 !important;
  }
}

/* Absolute final responsive split: phones/tablets stack, 1025px+ gets the full desktop app. */
@media(min-width:1025px){
  .qbp-root{
    width:min(96vw, 1840px) !important;
    max-width:1840px !important;
    min-width:0 !important;
    margin-left:50% !important;
    margin-right:0 !important;
    transform:translateX(-50%) !important;
    padding:clamp(18px, 1.8vw, 34px) clamp(18px, 2vw, 40px) !important;
    box-sizing:border-box !important;
  }

  .qbp-root .qbp-card,
  .qbp-root .qbp-app,
  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    display:grid !important;
    grid-template-columns:minmax(190px, .9fr) minmax(110px, 1fr) minmax(210px, .9fr) minmax(110px, 1fr) minmax(190px, .9fr) !important;
    align-items:start !important;
    gap:clamp(10px, 1vw, 18px) !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 clamp(18px, 3vw, 72px) !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-step{
    display:flex !important;
    flex-direction:row !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:10px !important;
    min-width:0 !important;
    text-align:left !important;
  }

  .qbp-flow-step > div{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-items:start !important;
    gap:2px !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    text-align:left !important;
  }

  .qbp-flow-step strong,
  .qbp-flow-step small{
    display:block !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    text-align:left !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
    word-break:normal !important;
  }

  .qbp-flow-step strong{
    font-size:clamp(10px, .72vw, 13px) !important;
    line-height:1.15 !important;
  }

  .qbp-flow-step small{
    font-size:clamp(9px, .65vw, 12px) !important;
    line-height:1.25 !important;
  }

  .qbp-flow-step strong::before,
  .qbp-flow-step strong::after,
  .qbp-flow-at-step-1 .qbp-flow-step[data-step="1"] strong::before,
  .qbp-flow-at-step-2 .qbp-flow-step[data-step="2"] strong::before,
  .qbp-flow-at-step-3 .qbp-flow-step[data-step="3"] strong::before{
    content:none !important;
    display:none !important;
  }

  .qbp-flow-line,
  .qbp-flow-stepper .qbp-flow-line{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
    align-self:center !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-layout{
    display:grid !important;
    grid-template-columns:minmax(0, 2.15fr) minmax(320px, .82fr) !important;
    gap:clamp(14px, 1.2vw, 22px) !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-fields{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:clamp(12px, 1.3vw, 22px) !important;
  }

  .qbp-flow-at-step-1 .qbp-choice-options-two,
  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-options-two{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-trust{
    display:none !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(220px, 1fr)) !important;
    gap:clamp(12px, 1vw, 18px) !important;
    width:100% !important;
    max-width:none !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card,
  .qbp-flow-at-step-2 .qbp-package-option{
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    align-items:stretch !important;
    gap:0 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle,
  .qbp-flow-at-step-2 .qbp-package-price,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description{
    grid-column:auto !important;
    width:auto !important;
    max-width:none !important;
    text-align:center !important;
  }

  .qbp-flow-at-step-2 .qbp-quote-action-row{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(190px, 230px) !important;
    gap:clamp(10px, 1vw, 16px) !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(280px, 340px) !important;
    gap:clamp(12px, 1vw, 18px) !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    display:grid !important;
    grid-template-columns:minmax(260px, .9fr) minmax(170px, .52fr) minmax(240px, .78fr) !important;
    gap:clamp(10px, .9vw, 16px) !important;
    width:100% !important;
    min-width:0 !important;
  }
}

@media(min-width:600px) and (max-width:1024px){
  .qbp-root{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    transform:none !important;
    padding:12px clamp(10px, 2vw, 18px) 28px !important;
    box-sizing:border-box !important;
  }

  .qbp-root .qbp-card,
  .qbp-root .qbp-app,
  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:8px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 8px !important;
    padding:8px 6px !important;
    align-items:start !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-line,
  .qbp-flow-stepper .qbp-flow-line{
    display:none !important;
  }

  .qbp-flow-step{
    display:grid !important;
    justify-items:center !important;
    gap:5px !important;
    min-width:0 !important;
    text-align:center !important;
  }

  .qbp-flow-step > div{
    display:grid !important;
    justify-items:center !important;
    gap:2px !important;
    width:100% !important;
    max-width:140px !important;
    min-width:0 !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  .qbp-flow-step strong,
  .qbp-flow-step small{
    display:block !important;
    width:100% !important;
    max-width:140px !important;
    margin:0 auto !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .qbp-flow-step strong::before,
  .qbp-flow-step strong::after,
  .qbp-flow-at-step-1 .qbp-flow-step[data-step="1"] strong::before,
  .qbp-flow-at-step-2 .qbp-flow-step[data-step="2"] strong::before,
  .qbp-flow-at-step-3 .qbp-flow-step[data-step="3"] strong::before{
    content:none !important;
    display:none !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-layout,
  .qbp-flow-at-step-1 .qbp-vehicle-fields,
  .qbp-flow-at-step-1 .qbp-choice-options-two,
  .qbp-flow-at-step-1 .qbp-refresh-choice-panel .qbp-choice-options-two,
  .qbp-flow-at-step-2 .qbp-package-grid,
  .qbp-flow-at-step-2 .qbp-quote-action-row,
  .qbp-flow-at-step-3 .qbp-step3-page-layout,
  .qbp-flow-at-step-3 .qbp-step3-schedule-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-side-card,
  .qbp-flow-at-step-2 .qbp-package-card,
  .qbp-flow-at-step-2 .qbp-package-option,
  .qbp-flow-at-step-3 .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary,
  .qbp-flow-at-step-3 .qbp-step3-calendar-panel,
  .qbp-flow-at-step-3 .qbp-step3-time-panel,
  .qbp-flow-at-step-3 .qbp-step3-info-panel{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-trust-row{
    display:none !important;
  }

  .qbp-flow-at-step-1 .qbp-side-mobile-trust{
    display:grid !important;
  }
}

/* Absolute final desktop containment: no sidebar collision, less "browser zoomed in" on 23-inch screens. */
body:has(.qbp-root) #sidebar,
body:has(.qbp-root) .et_pb_widget_area,
body:has(.qbp-root) .widget-area{
  display:none !important;
}

body:has(.qbp-root) #left-area,
body:has(.qbp-root) #main-content .container,
body:has(.qbp-root) .entry-content{
  width:100% !important;
  max-width:none !important;
}

body:has(.qbp-root) #main-content .container::before{
  display:none !important;
}

@media(min-width:1025px){
  .et_pb_row:has(.qbp-root),
  .et_pb_column:has(.qbp-root),
  .et_pb_module:has(.qbp-root){
    width:100% !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .qbp-root{
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    transform:none !important;
  }

  .qbp-root .qbp-card,
  .qbp-root .qbp-app,
  .qbp-vehicle-shell{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .qbp-package-help,
  .qbp-flow-at-step-2 .qbp-package-help{
    min-height:0 !important;
    padding:12px 16px !important;
    gap:14px !important;
  }

  .qbp-package-help-icon,
  .qbp-flow-at-step-2 .qbp-package-help-icon{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    max-width:58px !important;
    flex:0 0 58px !important;
    aspect-ratio:1 / 1 !important;
    padding:0 !important;
    border-radius:999px !important;
    font-size:38px !important;
    line-height:1 !important;
    display:grid !important;
    place-items:center !important;
  }

  .qbp-package-help-copy,
  .qbp-flow-at-step-2 .qbp-package-help-copy{
    padding:0 !important;
    margin:0 !important;
  }

  .qbp-package-help-copy h3,
  .qbp-flow-at-step-2 .qbp-package-help-copy h3{
    margin:0 0 4px !important;
  }

  .qbp-package-help-copy p,
  .qbp-flow-at-step-2 .qbp-package-help-copy p{
    margin:0 !important;
  }
}

@media(min-width:1025px) and (max-width:1499px){
  .qbp-root{
    max-width:1280px !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .qbp-flow-at-step-1 .qbp-vehicle-main-card h2{
    font-size:clamp(40px, 4.2vw, 62px) !important;
  }
}

@media(min-width:1500px){
  .qbp-root{
    max-width:1680px !important;
  }
}

/* Absolute final Step 3 alignment polish: pull schedule cards up and center tracker lines. */
@media(min-width:1025px){
  .qbp-flow-at-step-1 .qbp-flow-line,
  .qbp-flow-at-step-2 .qbp-flow-line,
  .qbp-flow-at-step-3 .qbp-flow-line,
  .qbp-flow-stepper .qbp-flow-line{
    align-self:start !important;
    margin-top:clamp(19px, 1.35vw, 25px) !important;
    transform:none !important;
  }

  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    row-gap:clamp(6px, .55vw, 10px) !important;
    padding-top:clamp(10px, .9vw, 16px) !important;
    align-content:start !important;
  }

  .qbp-flow-at-step-3 .qbp-results-holder{
    grid-row:2 !important;
    margin-top:clamp(-22px, -1.35vw, -10px) !important;
    padding-top:0 !important;
    align-self:start !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:0 !important;
    padding-top:0 !important;
    align-self:start !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker,
  .qbp-flow-at-step-3 .qbp-step3-summary{
    padding-top:clamp(10px, .85vw, 14px) !important;
  }
}

/* Absolute final mobile/tablet tracker: clean subtitles and visible tablet progress lines. */
@media(max-width:1024px){
  .qbp-flow-step strong::before,
  .qbp-flow-step strong::after,
  .qbp-flow-at-step-1 .qbp-flow-step[data-step="1"] strong::before,
  .qbp-flow-at-step-2 .qbp-flow-step[data-step="2"] strong::before,
  .qbp-flow-at-step-3 .qbp-flow-step[data-step="3"] strong::before{
    content:none !important;
    display:none !important;
  }

  .qbp-flow-step small{
    display:block !important;
    color:#9a9a9a !important;
    -webkit-text-fill-color:#9a9a9a !important;
    font-weight:600 !important;
    text-transform:none !important;
  }

  .qbp-flow-step.is-active small,
  .qbp-flow-step.is-complete small{
    color:#b8b8b8 !important;
    -webkit-text-fill-color:#b8b8b8 !important;
  }
}

@media(min-width:600px) and (max-width:1024px){
  .qbp-flow-stepper,
  .qbp-flow-at-step-1 .qbp-flow-stepper,
  .qbp-flow-at-step-2 .qbp-flow-stepper,
  .qbp-flow-at-step-3 .qbp-flow-stepper{
    grid-template-columns:minmax(96px, .82fr) minmax(60px, .42fr) minmax(116px, .9fr) minmax(60px, .42fr) minmax(96px, .82fr) !important;
    gap:6px !important;
    align-items:start !important;
  }

  .qbp-flow-line,
  .qbp-flow-stepper .qbp-flow-line{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
    align-self:start !important;
    margin-top:22px !important;
  }

  .qbp-flow-step > div{
    max-width:120px !important;
  }

  .qbp-flow-step strong{
    max-width:120px !important;
    font-size:10px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-step small{
    max-width:120px !important;
    font-size:9px !important;
    line-height:1.08 !important;
  }
}

/* Absolute final phone tracker/cards: only the gray detail text under bubbles, no card overlap. */
@media(max-width:599px){
  .qbp-flow-step strong,
  .qbp-flow-at-step-1 .qbp-flow-step[data-step="1"] strong,
  .qbp-flow-at-step-2 .qbp-flow-step[data-step="2"] strong,
  .qbp-flow-at-step-3 .qbp-flow-step[data-step="3"] strong{
    display:none !important;
  }

  .qbp-flow-step small{
    display:block !important;
    max-width:78px !important;
    min-height:22px !important;
    margin:0 auto !important;
    color:#9a9a9a !important;
    -webkit-text-fill-color:#9a9a9a !important;
    font-size:8px !important;
    line-height:1.08 !important;
    font-weight:600 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:hidden !important;
    text-overflow:clip !important;
  }

  .qbp-flow-at-step-2 .qbp-package-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card,
  .qbp-flow-at-step-2 .qbp-package-option{
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    gap:8px !important;
    min-height:0 !important;
    padding:12px !important;
    overflow:hidden !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-subtitle,
  .qbp-flow-at-step-2 .qbp-package-price,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes,
  .qbp-flow-at-step-2 .qbp-package-includes-intro,
  .qbp-flow-at-step-2 .qbp-package-select-btn{
    grid-column:auto !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
    overflow:visible !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card h3{
    font-size:16px !important;
    line-height:1.08 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-price{
    font-size:28px !important;
    line-height:1 !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-description,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes,
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-includes div{
    font-size:10px !important;
    line-height:1.32 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
  }
}

/* Absolute last Step 3 spacing lock: keep schedule content tight after tracker overrides. */
@media(min-width:1025px){
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    min-height:0 !important;
    height:auto !important;
    grid-template-rows:auto auto !important;
    row-gap:4px !important;
    padding-top:10px !important;
    align-content:start !important;
  }

  .qbp-flow-at-step-3 .qbp-flow-stepper{
    margin-bottom:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-results-holder{
    margin-top:-82px !important;
    padding-top:0 !important;
    align-self:start !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:0 !important;
    padding-top:0 !important;
  }
}

@media(min-width:600px) and (max-width:1024px){
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    min-height:0 !important;
    height:auto !important;
    grid-template-rows:auto auto !important;
    row-gap:4px !important;
    padding-top:6px !important;
  }

  .qbp-flow-at-step-3 .qbp-flow-stepper{
    margin-bottom:2px !important;
  }

  .qbp-flow-at-step-3 .qbp-results-holder,
  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:0 !important;
    padding-top:0 !important;
  }
}

@media(max-width:599px){
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    min-height:0 !important;
    height:auto !important;
    grid-template-rows:auto auto !important;
    row-gap:0 !important;
    padding-top:6px !important;
  }

  .qbp-flow-at-step-3 .qbp-flow-stepper{
    margin-bottom:0 !important;
    padding-bottom:4px !important;
  }

  .qbp-flow-at-step-3 .qbp-results-holder,
  .qbp-flow-at-step-3 .qbp-step3-page-layout{
    margin-top:-14px !important;
    padding-top:0 !important;
  }

  .qbp-flow-at-step-3 .qbp-step3-page-layout > .qbp-square-slot-picker{
    padding-top:8px !important;
  }
}

/* Absolute last phone package ribbon fix: keep "Recommended for you" readable. */
@media(max-width:599px){
  .qbp-flow-at-step-2 .qbp-package-card .qbp-package-ribbon,
  .qbp-flow-at-step-2 .qbp-package-option .qbp-package-ribbon{
    position:static !important;
    order:-10 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:0 !important;
    height:auto !important;
    min-height:24px !important;
    margin:-12px -12px 8px !important;
    padding:5px 8px !important;
    border-radius:8px 0 8px 0 !important;
    background:linear-gradient(180deg,#9dff00,#5fba00) !important;
    border:0 !important;
    color:#071006 !important;
    -webkit-text-fill-color:#071006 !important;
    font-size:10px !important;
    line-height:1.05 !important;
    font-weight:950 !important;
    letter-spacing:0 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:visible !important;
  }

  .qbp-flow-at-step-2 .qbp-package-card:not(.is-selected) .qbp-package-ribbon{
    display:none !important;
  }
}

/* Absolute last mobile benefits row fix: no overlapping labels. */
@media(max-width:599px){
  .qbp-flow-at-step-2 .qbp-benefits-row,
  .qbp-benefits-row{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px 8px !important;
    align-items:start !important;
    width:100% !important;
    padding:10px 0 0 !important;
    margin:10px 0 0 !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit,
  .qbp-benefit{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-items:center !important;
    align-items:start !important;
    gap:5px !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:0 4px !important;
    text-align:center !important;
    overflow:hidden !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit strong,
  .qbp-benefit strong{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:10px !important;
    line-height:1.08 !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit small,
  .qbp-benefit small{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    font-size:9px !important;
    line-height:1.1 !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
  }
}

/* Absolute last interaction polish: tracker clicks must win over raised panels,
   and scrollable areas use the DBD dark/green treatment instead of browser chrome. */
.qbp-flow-stepper,
.qbp-flow-at-step-1 .qbp-flow-stepper,
.qbp-flow-at-step-2 .qbp-flow-stepper,
.qbp-flow-at-step-3 .qbp-flow-stepper{
  position:relative !important;
  z-index:180 !important;
  pointer-events:auto !important;
}

.qbp-flow-step,
.qbp-flow-step > span,
.qbp-flow-step > div,
.qbp-flow-step strong,
.qbp-flow-step small{
  pointer-events:auto !important;
}

.qbp-flow-line,
.qbp-flow-stepper .qbp-flow-line{
  pointer-events:none !important;
}

.qbp-flow-at-step-3 .qbp-results-holder,
.qbp-flow-at-step-3 .qbp-step3-page-layout{
  position:relative !important;
  z-index:1 !important;
}

.qbp-root,
.qbp-root *{
  scrollbar-width:thin;
  scrollbar-color:rgba(157,255,0,.78) rgba(5,12,5,.9);
}

.qbp-root *::-webkit-scrollbar{
  width:8px;
  height:8px;
}

.qbp-root *::-webkit-scrollbar-track{
  background:rgba(5,12,5,.92);
  border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(157,255,0,.12);
}

.qbp-root *::-webkit-scrollbar-thumb{
  min-height:34px;
  background:linear-gradient(180deg, #9dff00, #4b9d00);
  border:2px solid rgba(5,12,5,.92);
  border-radius:999px;
}

.qbp-root *::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg, #bdff4f, #65c600);
}

.qbp-flow-at-step-3 .qbp-step3-summary,
.qbp-flow-at-step-3 .qbp-step3-includes{
  overflow:hidden !important;
}

.qbp-flow-at-step-3 .qbp-step3-includes ul{
  overflow-x:hidden !important;
  overflow-y:auto !important;
}

/* Absolute last SRW/DRW image previews. */
.qbp-dually-choice-panel .qbp-choice-option{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  min-height:86px !important;
  padding-right:clamp(112px, 34%, 190px) !important;
  background:
    radial-gradient(circle at 82% 50%, rgba(157,255,0,.12), transparent 42%),
    linear-gradient(180deg, rgba(18,21,18,.92), rgba(4,5,4,.98)) !important;
}

.qbp-dually-choice-panel .qbp-choice-option::after{
  content:"" !important;
  position:absolute !important;
  z-index:0 !important;
  top:-10px !important;
  right:-10px !important;
  bottom:-10px !important;
  width:min(46%, 210px) !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center right !important;
  opacity:.82 !important;
  pointer-events:none !important;
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 24%, #000 82%, transparent 100%) !important;
  mask-image:linear-gradient(90deg, transparent 0%, #000 24%, #000 82%, transparent 100%) !important;
}

.qbp-dually-choice-panel .qbp-choice-option[data-value="srw"]::after{
  background-image:url("qbp-dually-srw-preview.png") !important;
}

.qbp-dually-choice-panel .qbp-choice-option[data-value="drw"]::after{
  background-image:url("qbp-dually-drw-preview.png") !important;
}

.qbp-dually-choice-panel .qbp-choice-radio,
.qbp-dually-choice-panel .qbp-choice-option strong,
.qbp-dually-choice-panel .qbp-choice-option small{
  position:relative !important;
  z-index:2 !important;
}

.qbp-dually-choice-panel .qbp-choice-option::before{
  content:"" !important;
  position:absolute !important;
  z-index:1 !important;
  inset:0 !important;
  background:linear-gradient(90deg, rgba(5,7,5,.96) 0%, rgba(5,7,5,.82) 46%, rgba(5,7,5,.20) 100%) !important;
  pointer-events:none !important;
}

.qbp-dually-choice-panel .qbp-choice-option.is-selected::after{
  opacity:.95 !important;
}

@media(max-width:599px){
  .qbp-dually-choice-panel .qbp-choice-options-two{
    grid-template-columns:1fr !important;
  }

  .qbp-dually-choice-panel .qbp-choice-option{
    min-height:78px !important;
    padding-right:42% !important;
  }

  .qbp-dually-choice-panel .qbp-choice-option::after{
    width:48% !important;
  }
}

/* Absolute last mobile share + benefits placement:
   keep share away from the 1-2-3 tracker and make page 2 match page 3's icon strip. */
@media(max-width:599px){
  .qbp-vehicle-shell,
  .qbp-flow-at-step-1 .qbp-vehicle-shell,
  .qbp-flow-at-step-2 .qbp-vehicle-shell,
  .qbp-flow-at-step-3 .qbp-vehicle-shell{
    position:relative !important;
    padding-bottom:58px !important;
  }

  .qbp-share-quote-btn-global,
  .qbp-flow-at-step-1 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-2 .qbp-share-quote-btn-global,
  .qbp-flow-at-step-3 .qbp-share-quote-btn-global{
    top:auto !important;
    right:14px !important;
    bottom:10px !important;
    width:48px !important;
    height:42px !important;
    border-radius:18px 0 10px 0 !important;
    z-index:35 !important;
  }

  .qbp-share-quote-btn-global .qbp-share-icon{
    width:22px !important;
    height:22px !important;
  }

  .qbp-flow-at-step-2 .qbp-benefits-row,
  .qbp-flow-at-step-3 .qbp-step3-benefits-row,
  .qbp-flow-at-step-3 .qbp-benefits-row{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:5px !important;
    width:100% !important;
    max-width:100% !important;
    padding:8px 6px 0 !important;
    margin:8px 0 0 !important;
    align-items:start !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit,
  .qbp-flow-at-step-3 .qbp-benefit{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-items:center !important;
    gap:3px !important;
    min-width:0 !important;
    padding:0 1px !important;
    text-align:center !important;
    overflow:visible !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit span.qbp-benefit-icon,
  .qbp-flow-at-step-3 .qbp-benefit span.qbp-benefit-icon{
    width:26px !important;
    height:26px !important;
    min-width:26px !important;
    margin:0 auto !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit span.qbp-benefit-icon::before,
  .qbp-flow-at-step-3 .qbp-benefit span.qbp-benefit-icon::before{
    width:22px !important;
    height:22px !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit strong,
  .qbp-flow-at-step-3 .qbp-benefit strong{
    font-size:8.5px !important;
    line-height:1.02 !important;
    width:100% !important;
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
  }

  .qbp-flow-at-step-2 .qbp-benefit small,
  .qbp-flow-at-step-3 .qbp-benefit small{
    font-size:7.5px !important;
    line-height:1.02 !important;
    width:100% !important;
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
  }
}
