/* =========================================================
   PRIME CAR RENTAL — BRAND KIT (CSS)
   Base identidad: morado + negros/grises (logo actual)
   Uso: importar este archivo ANTES de tus estilos de páginas.
   ========================================================= */

/* ---------------------------
   1) Design Tokens
---------------------------- */
:root {
  /* Typography */
  --pc-font-sans: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
  --pc-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New";

  /* Brand */
  --pc-brand-900: #4a0f3c;
  --pc-brand-800: #65104f;
  --pc-brand-700: #7a1a60;
  --pc-brand-600: #8e2370;
  --pc-brand-500: #a02b85; /* PRIMARY (del logo aprox.) */
  --pc-brand-400: #b94aa0;
  --pc-brand-300: #cf76b8;
  --pc-brand-200: #e7b6db;
  --pc-brand-100: #f4dff0;

  /* Neutrals */
  --pc-black: #111114;
  --pc-ink: #1b1b20;
  --pc-text: #2a2a33;
  --pc-muted: #5b5b6a;
  --pc-border: #e6e6ef;
  --pc-surface: #ffffff;
  --pc-bg: #fafafe;
  --pc-soft: #f3f3fa;

  /* Semantic */
  --pc-success: #16a34a;
  --pc-warning: #f59e0b;
  --pc-danger:  #dc2626;
  --pc-info:    #2563eb;

  /* Effects */
  --pc-shadow-sm: 0 1px 2px rgba(17, 17, 20, .08);
  --pc-shadow-md: 0 10px 30px rgba(17, 17, 20, .10);
  --pc-shadow-lg: 0 18px 50px rgba(17, 17, 20, .14);

  /* Radius */
  --pc-r-xs: 8px;
  --pc-r-sm: 12px;
  --pc-r-md: 16px;
  --pc-r-lg: 22px;

  /* Spacing (4pt grid) */
  --pc-1: 4px;
  --pc-2: 8px;
  --pc-3: 12px;
  --pc-4: 16px;
  --pc-5: 20px;
  --pc-6: 24px;
  --pc-7: 28px;
  --pc-8: 32px;
  --pc-10: 40px;
  --pc-12: 48px;
  --pc-16: 64px;

  /* Motion */
  --pc-ease: cubic-bezier(.2, .8, .2, 1);
  --pc-fast: 140ms;
  --pc-med: 220ms;

  /* Focus */
  --pc-focus: 0 0 0 4px rgba(160, 43, 133, .18); /* brand glow */
}

/* Optional: Dark mode tokens (activa con data-theme="dark") */
:root[data-theme="dark"] {
  --pc-bg: #0e0e12;
  --pc-surface: #15151c;
  --pc-soft: #1b1b24;

  --pc-ink: #f4f4fb;
  --pc-text: #e9e9f4;
  --pc-muted: #b3b3c2;
  --pc-border: rgba(230, 230, 239, .14);

  --pc-shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);
  --pc-shadow-md: 0 10px 30px rgba(0, 0, 0, .35);
  --pc-shadow-lg: 0 18px 50px rgba(0, 0, 0, .45);
}

/* ---------------------------
   2) Base / Reset Ligero
---------------------------- */
.prime-kit,
.prime-kit *,
.prime-kit *::before,
.prime-kit *::after { box-sizing: border-box; }
.prime-kit { min-height: 100%; }
.prime-kit {
  margin: 0;
  font-family: var(--pc-font-sans);
  background: var(--pc-bg);
  color: var(--pc-text);
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.prime-kit a {
  color: var(--pc-brand-600);
  text-decoration: none;
  transition: color var(--pc-fast) var(--pc-ease);
}
.prime-kit a:hover { color: var(--pc-brand-500); }

.prime-kit img { max-width: 100%; height: auto; display: block; }

.prime-kit :focus-visible {
  outline: none;
  box-shadow: var(--pc-focus);
  border-radius: 10px;
}

/* Typography scale */
.pc-h1 { font-size: clamp(28px, 2.6vw, 40px); letter-spacing: -0.02em; margin: 0 0 var(--pc-4); color: var(--pc-ink); }
.pc-h2 { font-size: clamp(22px, 2.0vw, 30px); letter-spacing: -0.02em; margin: 0 0 var(--pc-3); color: var(--pc-ink); }
.pc-h3 { font-size: 18px; margin: 0 0 var(--pc-2); color: var(--pc-ink); }
.pc-p  { margin: 0 0 var(--pc-4); color: var(--pc-text); }
.pc-muted { color: var(--pc-muted); }

/* Layout helpers */
.pc-container { width: min(1160px, calc(100% - 2*var(--pc-6))); margin: 0 auto; }
.pc-stack > * + * { margin-top: var(--pc-4); }
.pc-row { display: flex; gap: var(--pc-4); align-items: center; }
.pc-grid { display: grid; gap: var(--pc-4); }

/* ---------------------------
   3) Surfaces (Card)
---------------------------- */
.pc-card {
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  box-shadow: var(--pc-shadow-sm);
}

.pc-card--padded { padding: var(--pc-6); }
.pc-card__header { padding: var(--pc-6) var(--pc-6) 0; }
.pc-card__body   { padding: var(--pc-6); }
.pc-card__footer { padding: 0 var(--pc-6) var(--pc-6); }

/* ---------------------------
   4) Buttons
---------------------------- */
.pc-btn {
  appearance: none;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 10px 16px;
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  transition: transform var(--pc-fast) var(--pc-ease),
              background var(--pc-fast) var(--pc-ease),
              border-color var(--pc-fast) var(--pc-ease),
              box-shadow var(--pc-fast) var(--pc-ease),
              color var(--pc-fast) var(--pc-ease);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  user-select: none;
  white-space: nowrap;
}

.pc-btn:active { transform: translateY(1px); }

.pc-btn--primary {
  background: var(--pc-brand-500);
  color: #fff;
  box-shadow: 0 10px 20px rgba(160, 43, 133, .22);
}
.pc-btn--primary:hover {
  background: var(--pc-brand-600);
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(160, 43, 133, .30);
}

.pc-btn--ghost {
  background: transparent;
  color: var(--pc-ink);
  border-color: var(--pc-border);
}
.pc-btn--ghost:hover {
  background: var(--pc-soft);
  border-color: rgba(160, 43, 133, .25);
}

.pc-btn--soft {
  background: rgba(160, 43, 133, .10);
  color: var(--pc-brand-700);
  border-color: rgba(160, 43, 133, .16);
}
.pc-btn--soft:hover { background: rgba(160, 43, 133, .14); }

.pc-btn--danger {
  background: rgba(220, 38, 38, .10);
  color: var(--pc-danger);
  border-color: rgba(220, 38, 38, .18);
}
.pc-btn--danger:hover { background: rgba(220, 38, 38, .14); }

.pc-btn--lg { padding: 14px 18px; font-size: 15px; }
.pc-btn--sm { padding: 8px 12px; font-size: 13px; }

/* ---------------------------
   4b) Floating WhatsApp FAB (global)
---------------------------- */
.wa-fab {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 9990;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #25d366;
  box-shadow: 0 4px 14px rgba(37, 211, 102, .45);
  text-decoration: none;
  transition: transform .2s, box-shadow .2s;
}
.wa-fab:hover {
  transform: scale(1.08);
  box-shadow: 0 6px 20px rgba(37, 211, 102, .55);
}
.wa-fab-icon {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
}

/* ---------------------------
   5) Inputs / Forms
---------------------------- */
.pc-label { display: block; font-weight: 600; font-size: 13px; color: var(--pc-ink); margin-bottom: var(--pc-2); }

.pc-input,
.pc-select,
.pc-textarea {
  width: 100%;
  background: var(--pc-surface);
  color: var(--pc-text);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-md);
  padding: 12px 14px;
  font-size: 14px;
  outline: none;
  transition: border-color var(--pc-fast) var(--pc-ease),
              box-shadow var(--pc-fast) var(--pc-ease),
              background var(--pc-fast) var(--pc-ease);
}

.pc-input::placeholder,
.pc-textarea::placeholder { color: rgba(91, 91, 106, .75); }

.pc-input:focus,
.pc-select:focus,
.pc-textarea:focus {
  border-color: rgba(160, 43, 133, .55);
  box-shadow: var(--pc-focus);
}

.pc-input[disabled],
.pc-select[disabled],
.pc-textarea[disabled] {
  opacity: .7;
  cursor: not-allowed;
  background: var(--pc-soft);
}

.pc-help { font-size: 12px; color: var(--pc-muted); margin-top: var(--pc-2); }

.pc-field { display: grid; gap: var(--pc-2); }
.pc-field--inline { display: grid; gap: var(--pc-2); }

/* Input group (para íconos / prefijos) */
.pc-inputgroup { display: grid; grid-template-columns: auto 1fr; border-radius: var(--pc-r-md); overflow: hidden; border: 1px solid var(--pc-border); background: var(--pc-surface); }
.pc-inputgroup__addon { padding: 12px 12px; background: var(--pc-soft); color: var(--pc-muted); display: flex; align-items: center; border-right: 1px solid var(--pc-border); }
.pc-inputgroup .pc-input { border: none; border-radius: 0; }

/* ---------------------------
   6) Badges / Chips
---------------------------- */
.pc-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  border: 1px solid transparent;
}

.pc-badge--brand { background: rgba(160, 43, 133, .10); color: var(--pc-brand-700); border-color: rgba(160, 43, 133, .18); }
.pc-badge--ok    { background: rgba(22, 163, 74, .10); color: var(--pc-success); border-color: rgba(22, 163, 74, .18); }
.pc-badge--warn  { background: rgba(245, 158, 11, .12); color: #b45309; border-color: rgba(245, 158, 11, .20); }
.pc-badge--info  { background: rgba(37, 99, 235, .10); color: var(--pc-info); border-color: rgba(37, 99, 235, .18); }
.pc-badge--muted { background: var(--pc-soft); color: var(--pc-muted); border-color: var(--pc-border); }

/* ---------------------------
   7) Alerts
---------------------------- */
.pc-alert {
  border-radius: var(--pc-r-lg);
  border: 1px solid var(--pc-border);
  background: var(--pc-surface);
  padding: var(--pc-4) var(--pc-5);
  display: grid;
  gap: var(--pc-2);
  box-shadow: var(--pc-shadow-sm);
}

.pc-alert--brand { border-color: rgba(160, 43, 133, .22); background: rgba(160, 43, 133, .07); }
.pc-alert--ok    { border-color: rgba(22, 163, 74, .22); background: rgba(22, 163, 74, .08); }
.pc-alert--warn  { border-color: rgba(245, 158, 11, .26); background: rgba(245, 158, 11, .10); }
.pc-alert--danger{ border-color: rgba(220, 38, 38, .22); background: rgba(220, 38, 38, .08); }

.pc-alert__title { font-weight: 800; color: var(--pc-ink); }
.pc-alert__text  { color: var(--pc-text); font-size: 14px; }

/* ---------------------------
   8) Navbar (base)
---------------------------- */
.pc-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(250, 250, 254, .82);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--pc-border);
}
:root[data-theme="dark"] .pc-nav {
  background: rgba(14, 14, 18, .72);
}

.pc-nav__inner {
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--pc-4);
}

.pc-nav__brand { display: flex; align-items: center; gap: var(--pc-3); }
.pc-nav__links { display: flex; align-items: center; gap: var(--pc-3); }

.pc-nav__link {
  color: var(--pc-muted);
  font-weight: 700;
  font-size: 13px;
  padding: 10px 12px;
  border-radius: 999px;
  transition: background var(--pc-fast) var(--pc-ease), color var(--pc-fast) var(--pc-ease);
}
.pc-nav__link:hover { background: var(--pc-soft); color: var(--pc-ink); }
.pc-nav__link.is-active { background: rgba(160, 43, 133, .10); color: var(--pc-brand-700); }

/* ---------------------------
   9) Pricing / Total box (para checkout)
---------------------------- */
.pc-totals {
  border: 1px solid var(--pc-border);
  background: var(--pc-surface);
  border-radius: var(--pc-r-lg);
  padding: var(--pc-6);
  box-shadow: var(--pc-shadow-sm);
}

.pc-totals__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--pc-4);
  padding: 10px 0;
  border-bottom: 1px dashed rgba(230, 230, 239, .9);
}
:root[data-theme="dark"] .pc-totals__row { border-bottom-color: rgba(230, 230, 239, .16); }

.pc-totals__row:last-child { border-bottom: none; }
.pc-totals__label { color: var(--pc-muted); font-weight: 700; font-size: 13px; }
.pc-totals__value { color: var(--pc-ink); font-weight: 900; font-size: 14px; }
.pc-totals__value--big { font-size: 18px; }
.pc-totals__value--brand { color: var(--pc-brand-700); }

/* ---------------------------
   10) Tables (admin / reservas)
---------------------------- */
.pc-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  background: var(--pc-surface);
}

.pc-table th, .pc-table td {
  padding: 14px 14px;
  border-bottom: 1px solid var(--pc-border);
  font-size: 14px;
}
.pc-table th {
  text-align: left;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--pc-muted);
  background: var(--pc-soft);
}
.pc-table tr:last-child td { border-bottom: none; }

/* ---------------------------
   11) Utilities rápidas
---------------------------- */
.pc-divider { height: 1px; background: var(--pc-border); width: 100%; }
.pc-center { display: grid; place-items: center; }
.pc-right { margin-left: auto; }

.pc-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(160, 43, 133, .20);
  background: rgba(160, 43, 133, .08);
  color: var(--pc-brand-700);
  font-weight: 800;
  font-size: 12px;
}

/* ---------------------------
   11b) Mobile Header (scoped to .prime-kit)
   Overrides all legacy nav styles for responsive
---------------------------- */

/* Hide CSS hamburger on desktop */
.prime-kit .menu-button .css-hamburger {
  display: none;
}

@media (max-width: 1024px) {
  .prime-kit .navigation .row {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    float: none;
  }

  .prime-kit .navigation .nav-lft,
  .prime-kit .navigation .menu-button,
  .prime-kit .navigation .nav-rgt,
  .prime-kit .navigation .nav-actions {
    float: none !important;
    margin-bottom: 0 !important;
  }

  .prime-kit .navigation .nav-lft {
    order: 1;
    width: auto !important;
  }

  .prime-kit .navigation .nav-lft img {
    width: 130px !important;
    height: auto !important;
  }

  .prime-kit .navigation .nav-actions {
    order: 2;
    margin-left: auto !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    width: auto !important;
    display: flex !important;
    align-items: center;
    gap: 10px;
  }

  .prime-kit .nav-reserva-btn {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 7px 14px !important;
    border-radius: 20px;
    border: 1.5px solid #a02c86;
    color: #a02c86 !important;
    text-decoration: none;
    font-weight: 600;
    font-size: 11px !important;
    background: #fff;
    white-space: nowrap;
    width: auto !important;
  }

  .prime-kit .nav-reserva-btn i {
    font-size: 13px;
  }

  .prime-kit .nav-cta-pill {
    display: none !important;
  }

  /* --- CSS Hamburger icon --- */
  .prime-kit .navigation .menu-button {
    order: 3;
    margin-left: 10px !important;
    margin-right: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0 !important;
    height: auto !important;
    width: auto !important;
  }

  .prime-kit .menu-button img {
    display: none !important;
  }

  .prime-kit .menu-button .css-hamburger {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 32px;
    height: 32px;
    padding: 5px;
    border-radius: 6px;
    background: #a02c86;
    transition: background 0.2s ease;
  }

  .prime-kit .menu-button .css-hamburger span {
    display: block !important;
    width: 100%;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    position: static !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 0 !important;
    color: transparent !important;
    transition: transform 0.2s ease;
  }

  /* Nav menu (collapsible) */
  .prime-kit .navigation .nav-rgt {
    order: 4;
    width: 100% !important;
    margin: 10px 0 0 !important;
    background: #f8f5fa;
    border-radius: 12px;
    overflow: hidden;
    display: none !important;
  }

  .prime-kit .navigation.nav-open .nav-rgt {
    display: block !important;
  }

  .prime-kit .nav-rgt ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .prime-kit .nav-rgt li {
    display: block !important;
    margin: 0 !important;
  }

  .prime-kit .nav-rgt li a {
    display: block !important;
    padding: 13px 18px !important;
    border-bottom: 1px solid #ede8f0;
    color: #2a2a33 !important;
    font-size: 14px !important;
    font-weight: 500;
    text-decoration: none;
  }

  .prime-kit .nav-rgt li a:hover {
    background: #ede8f0 !important;
    color: #a02c86 !important;
  }

  .prime-kit .nav-rgt li:last-child a {
    border-bottom: 0;
  }

  .prime-kit .mobile-visiable {
    display: none !important;
  }

  .prime-kit .mob_phone {
    display: none !important;
  }
}

/* ---------------------------
   12) Home Hero (scoped)
---------------------------- */
.prime-kit .slider.home_slider {
  min-height: 600px;
  height: auto;
  padding: 60px 0;
  background-color: #a02c86;
  background: linear-gradient(135deg, #a02c86 0%, #c44fa3 100%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.prime-kit .slider.home_slider .caption {
  position: static;
  width: 100%;
}

.prime-kit .home_slider .hero-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  align-items: start;
  gap: 60px;
  float: none;
  margin-top: 0;
}

.prime-kit .home_slider .hero-copy {
  flex: 1 1 55%;
  max-width: 640px;
  color: #fff;
  align-self: center;
}

.prime-kit .home_slider .hero-copy h1 {
  font-size: 48px;
  line-height: 1.1;
  margin: 0 0 20px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #fff;
}

.prime-kit .home_slider .hero-copy p {
  color: #fff;
  font-size: 18px;
  line-height: 1.6;
  margin: 0 0 18px;
  font-weight: 400;
  opacity: 0.86;
}

.prime-kit .home_slider .hero-copy p + p { margin-top: 0; }

.prime-kit .home_slider .hero-emphasis {
  color: #fff;
  font-weight: 800;
}

.prime-kit .home_slider .hero-lede {
  color: #fff;
  font-weight: 600;
  opacity: 0.96;
}

.prime-kit .home_slider .hero-subline {
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  opacity: 0.72;
}

.prime-kit .home_slider .sldr-form-con {
  flex: 0 1 420px;
  max-width: 420px;
  margin: 0 0 0 auto;
  padding: 35px 30px;
  border-radius: 20px;
  text-align: left;
  color: #1a1a1a;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
  justify-self: end;
}

.prime-kit .home_slider .hero-form-title {
  font-size: 24px;
  font-weight: 700;
  color: #1f2937;
  margin: 0 0 25px;
}

.prime-kit .home_slider .sldr-form-con > p { display: none; }

.prime-kit .home_slider .hero-label {
  display: block;
  margin-bottom: 8px;
  color: #6b7280;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: none;
}

.prime-kit .home_slider .sldr-form-con .form-row { margin-bottom: 20px; }
.prime-kit .home_slider .sldr-form-con .form-row:last-child { margin-bottom: 0; }
.prime-kit .home_slider #checka .form-row:last-child {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.prime-kit .home_slider .sldr-form-con input[type="text"],
.prime-kit .home_slider .sldr-form-con select,
.prime-kit .home_slider .sldr-form-con .field-date {
  width: 100% !important;
  padding: 12px 14px;
  border: 2px solid #e5e7eb;
  border-radius: 10px;
  font-size: 15px;
  color: #1f2937;
  margin: 0;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  background-color: #fff;
}

.prime-kit .home_slider .sldr-form-con .field-date {
  background-image: none;
  padding-left: 14px !important;
}

.prime-kit .home_slider .sldr-form-con input[type="text"]:focus,
.prime-kit .home_slider .sldr-form-con select:focus,
.prime-kit .home_slider .sldr-form-con .field-date:focus {
  outline: none;
  border-color: #a02c86;
  box-shadow: 0 0 0 3px rgba(160, 44, 134, 0.1);
}

.prime-kit .home_slider .sldr-form-con input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin-right: 10px;
  cursor: pointer;
  accent-color: #a02c86;
}

/* Toggle switch for "Deliver Elsewhere" */
.prime-kit .toggle-switch {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  gap: 8px;
  -webkit-tap-highlight-color: transparent;
}

.prime-kit .toggle-switch input[type="checkbox"],
.prime-kit .home_slider .sldr-form-con .toggle-switch input[type="checkbox"] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.prime-kit .toggle-track {
  display: inline-block;
  flex-shrink: 0;
  width: 36px;
  height: 20px;
  border-radius: 10px;
  background: #d1d5db;
  position: relative;
  transition: background 0.25s ease;
}

.prime-kit .toggle-track::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,0.2);
  transition: transform 0.25s ease;
}

.prime-kit .toggle-switch input:checked + .toggle-track {
  background: #a02c86;
}

.prime-kit .toggle-switch input:checked + .toggle-track::after {
  transform: translateX(16px);
}

.prime-kit .toggle-switch input:focus-visible + .toggle-track {
  box-shadow: 0 0 0 3px rgba(160, 44, 134, 0.3);
}

.prime-kit .toggle-label {
  font-size: 12px;
  color: #6b7280;
  line-height: 1.2;
}

/* Form validation error */
.prime-kit .form-error-msg {
  color: #dc2626;
  font-size: 13px;
  font-weight: 500;
  padding: 10px 14px;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 10px;
  margin: 0;
}

/* Flatpickr integration overrides */
.prime-kit .home_slider .sldr-form-con .field-date {
  background-image: none;
  padding-left: 14px !important;
  cursor: pointer;
}

.prime-kit .flatpickr-calendar {
  border-radius: 12px;
  box-shadow: 0 12px 36px rgba(0,0,0,0.15);
  border: 1px solid #e5e7eb;
  font-family: inherit;
}

/* Selected day */
.prime-kit .flatpickr-day.selected,
.prime-kit .flatpickr-day.selected:hover,
.prime-kit .flatpickr-day.selected:focus,
.prime-kit .flatpickr-day.startRange,
.prime-kit .flatpickr-day.startRange:hover,
.prime-kit .flatpickr-day.startRange:focus,
.prime-kit .flatpickr-day.endRange,
.prime-kit .flatpickr-day.endRange:hover,
.prime-kit .flatpickr-day.endRange:focus {
  background: #a02c86;
  border-color: #a02c86;
  color: #fff;
}

/* Range between dates */
.prime-kit .flatpickr-day.inRange {
  background: #f4ecf7;
  border-color: #f4ecf7;
  box-shadow: -5px 0 0 #f4ecf7, 5px 0 0 #f4ecf7;
  color: #4b5563;
}

/* Hover state */
.prime-kit .flatpickr-day:hover,
.prime-kit .flatpickr-day:focus {
  background: #ead9ef;
  border-color: #ead9ef;
}

/* Today indicator */
.prime-kit .flatpickr-day.today {
  border-color: #a02c86;
}

.prime-kit .flatpickr-day.today:hover {
  background: #ead9ef;
  border-color: #a02c86;
}

/* Month navigation */
.prime-kit .flatpickr-months .flatpickr-prev-month:hover svg,
.prime-kit .flatpickr-months .flatpickr-next-month:hover svg {
  fill: #a02c86;
}

.prime-kit .flatpickr-current-month .flatpickr-monthDropdown-months:hover,
.prime-kit .flatpickr-current-month input.cur-year:focus {
  border-color: #a02c86;
}

/* Week header */
.prime-kit span.flatpickr-weekday {
  color: #7a1a60;
  font-weight: 600;
}

/* Ensure min touch target 44px on all form controls */
.prime-kit .home_slider .sldr-form-con select,
.prime-kit .home_slider .sldr-form-con input[type="text"],
.prime-kit .home_slider .sldr-form-con .field-date {
  min-height: 44px;
}

.prime-kit .home_slider .sldr-form-con .form-row label {
  font-size: 14px;
  color: #4b5563;
  cursor: pointer;
}

.prime-kit .home_slider .sldr-form-con .form-row label:not(.hero-label):not(.toggle-switch) {
  display: flex;
  align-items: center;
}

.prime-kit .home_slider .form-row-dual {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  float: none;
}

.prime-kit .home_slider .form-row-dual .hero-label {
  grid-column: 1 / -1;
}

.prime-kit .home_slider .form-row-dual .col-6 { width: 100% !important; }

/* Hero eyebrow + social proof */
.prime-kit .hero-eyebrow {
  font-size: 14px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.8);
  margin: 0 0 12px;
  letter-spacing: 0.01em;
  opacity: 1;
}
.prime-kit .hero-eyebrow strong {
  font-weight: 700;
  color: #fff;
}

.prime-kit .hero-social-proof {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.75);
  margin: 0;
  opacity: 1;
}
.prime-kit .hero-social-proof .hero-star {
  font-style: normal;
  margin-right: 2px;
}
.prime-kit .hero-social-proof .hero-sep {
  margin: 0 6px;
  opacity: 0.5;
}

/* Toggle microcopy */
.prime-kit .toggle-microcopy {
  margin: 4px 0 0;
  font-size: 12px;
  color: #9ca3af;
  line-height: 1.4;
  font-style: italic;
}

/* CTA button */
.prime-kit .home_slider .sldr-form-con .buscar {
  background: linear-gradient(135deg, #7a1a60 0%, #a02c86 100%);
  color: #fff;
  border-radius: 12px;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-transform: none;
  margin-top: 10px;
  width: 100%;
  padding: 16px;
  font-size: 16px;
  border: none;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.prime-kit .home_slider .sldr-form-con .buscar:hover {
  background: linear-gradient(135deg, #8e2370 0%, #b33d99 100%);
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(122, 26, 96, 0.35);
}

/* Trust signals below CTA */
.prime-kit .trust-signals {
  list-style: none;
  margin: 20px 0 0;
  padding: 16px 0 0;
  border-top: 1px solid #f0f0f0;
  clear: both;
  float: none;
  width: 100%;
}

.prime-kit .trust-signals li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 0;
}

.prime-kit .trust-signals .trust-icon,
.prime-kit .home_slider .sldr-form-con .trust-signals .trust-icon {
  flex-shrink: 0;
  width: 8px !important;
  height: 8px !important;
  margin-top: 5px;
  margin-bottom: 0;
  border-radius: 50%;
  background: #a02c86;
  display: inline-block !important;
  font-size: 0 !important;
}

.prime-kit .trust-signals li div {
  min-width: 0;
}

.prime-kit .trust-signals li strong {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #1f2937;
  line-height: 1.3;
}

/* Override legacy .sldr-form-con span { font-size:25px; display:block } */
.prime-kit .trust-signals li span,
.prime-kit .home_slider .sldr-form-con .trust-signals li span {
  font-size: 12px !important;
  color: #6b7280;
  line-height: 1.4;
  display: inline !important;
  font-weight: 400;
}

/* Autocomplete dropdown (pickup/dropoff) */
.prime-kit #autoId,
.prime-kit #autoId2 {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  box-shadow: 0 12px 24px rgba(31, 41, 55, 0.14);
  overflow: hidden;
}

.prime-kit #autoId li,
.prime-kit #autoId2 li {
  color: #1f2937;
  font-weight: 500;
}

.prime-kit #autoId li:hover,
.prime-kit #autoId2 li:hover {
  background-color: rgba(160, 44, 134, 0.12);
  color: #7a1a60;
  font-weight: 600;
}

@media (max-width: 1080px) {
  .prime-kit .slider.home_slider {
    padding: 40px 0;
    min-height: auto;
  }

  .prime-kit .home_slider .hero-grid {
    gap: 28px;
    grid-template-columns: 1fr;
    align-items: center;
  }

  .prime-kit .home_slider .hero-copy {
    text-align: center;
    align-self: auto;
  }

  .prime-kit .home_slider .hero-copy h1 { font-size: 32px; margin-bottom: 12px; }
  .prime-kit .home_slider .hero-copy p { font-size: 15px; margin-bottom: 10px; }

  .prime-kit .hero-eyebrow { font-size: 13px; margin-bottom: 8px; }
  .prime-kit .hero-social-proof { font-size: 12px; }

  .prime-kit .home_slider .sldr-form-con {
    max-width: 480px;
    padding: 30px;
    margin: 0 auto;
    justify-self: center;
  }
}

@media (max-width: 968px) {
  .prime-kit .contact-section,
  .prime-kit .bullet-section,
  .prime-kit #contents,
  .prime-kit .about-section {
    display: none;
  }

  .prime-kit .home_slider .sldr-form-con {
    max-width: 100%;
  }

  .prime-kit.prime-reserva #contents {
    display: block;
  }
}

@media (max-width: 640px) {
  .prime-kit .slider.home_slider { padding: 20px 0; }

  .prime-kit .home_slider .hero-grid { gap: 16px; }

  .prime-kit .home_slider .hero-copy h1 {
    font-size: 26px;
    margin-bottom: 6px;
  }
  .prime-kit .home_slider .hero-copy p {
    font-size: 13px;
    margin-bottom: 6px;
  }

  .prime-kit .hero-eyebrow { font-size: 12px; margin-bottom: 6px; }
  .prime-kit .hero-social-proof { font-size: 11px; }

  .prime-kit .home_slider .sldr-form-con {
    padding: 18px 16px;
    border-radius: 14px;
  }

  .prime-kit .home_slider .hero-form-title {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .prime-kit .home_slider .sldr-form-con .form-row { margin-bottom: 10px; }

  .prime-kit .home_slider .hero-label {
    font-size: 11px;
    margin-bottom: 4px;
  }

  .prime-kit .home_slider .sldr-form-con input[type="text"],
  .prime-kit .home_slider .sldr-form-con select,
  .prime-kit .home_slider .sldr-form-con .field-date {
    padding: 9px 10px;
    font-size: 13px;
    min-height: 40px !important;
  }

  /* Fecha + hora en misma fila, 60/40 split */
  .prime-kit .home_slider .form-row-dual {
    grid-template-columns: 1.1fr 0.9fr;
    gap: 6px;
  }

  .prime-kit .home_slider .sldr-form-con .buscar {
    padding: 13px;
    font-size: 15px;
    border-radius: 10px;
    margin-top: 4px;
  }

  .prime-kit .toggle-microcopy {
    font-size: 11px;
    margin-top: 2px;
  }

  .prime-kit .trust-signals { margin-top: 12px; padding-top: 10px; }
  .prime-kit .trust-signals li { padding: 4px 0; }
  .prime-kit .trust-signals li strong { font-size: 12px; }
  .prime-kit .trust-signals li span { font-size: 11px; }
}

/* ---------------------------
   13) Home Sections (features + testimonials)
---------------------------- */
.prime-kit .our-features.pull-top,
.prime-kit .testimonial-con.pull-top {
  margin-top: 0;
}

.prime-kit .our-features {
  padding: 70px 0 40px;
  background: #fff;
}

.prime-kit .testimonial-con {
  padding: 70px 0;
  background: #f8f5fa;
}

.prime-kit .our-features h2,
.prime-kit .testimonial-con h2 {
  text-align: left;
  font-size: 32px;
  font-weight: 700;
  color: #1f2937;
  padding-bottom: 0;
  margin-bottom: 24px;
}

.prime-kit .our-features h2 span,
.prime-kit .testimonial-con h2 span {
  color: #a02c86;
}

.prime-kit .our-features .row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  float: none;
  width: 100%;
}

.prime-kit .our-features .feature-box {
  width: 100%;
  margin: 0;
  float: none;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 22px;
  background: #fff;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  box-shadow: 0 12px 30px rgba(31, 41, 55, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.prime-kit .our-features .feature-box:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(31, 41, 55, 0.12);
  border-color: rgba(160, 44, 134, 0.3);
}

.prime-kit .our-features .feture-box-lft {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: rgba(160, 44, 134, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 52px;
}

.prime-kit .our-features .feture-box-lft img {
  width: 32px;
  height: auto;
}

.prime-kit .our-features .feture-box-rgt h3 {
  font-size: 18px;
  font-weight: 700;
  color: #1f2937;
  margin: 0 0 8px;
}

.prime-kit .our-features .feture-box-rgt p {
  font-size: 14px;
  line-height: 1.6;
  color: #5b5560;
}

.prime-kit .testimonial-con .row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  float: none;
  width: 100%;
}

.prime-kit .testimonial-box {
  width: 100%;
  float: none;
  margin: 0;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 24px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(31, 41, 55, 0.08);
  position: relative;
  overflow: hidden;
}

.prime-kit .testimonial-box::before {
  content: "";
  position: absolute;
  right: -10px;
  top: -10px;
  width: 80px;
  height: 80px;
  background: radial-gradient(circle, rgba(160, 44, 134, 0.14), rgba(160, 44, 134, 0));
  border-radius: 50%;
}

.prime-kit .testimonial-box .row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  float: none;
  width: 100%;
  margin: 0 0 16px;
}

.prime-kit .testimonial-box .testi-box-lft {
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #1f2937;
  font-weight: 600;
  font-size: 13px;
}

.prime-kit .testimonial-box .testi-box-lft span {
  color: #6b7280;
  font-weight: 600;
  font-size: 12px;
}

.prime-kit .testimonial-box .testi-box-rgt {
  opacity: 0.65;
}

.prime-kit .testimonial-box p {
  color: #4b5563;
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

@media (max-width: 1024px) {
  .prime-kit .our-features .row,
  .prime-kit .testimonial-con .row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .prime-kit .our-features,
  .prime-kit .testimonial-con {
    padding: 36px 0 !important;
  }

  .prime-kit .our-features h2,
  .prime-kit .testimonial-con h2 {
    font-size: 22px !important;
    text-align: center !important;
    margin-bottom: 18px !important;
  }
}

@media (max-width: 640px) {
  .prime-kit .our-features .row,
  .prime-kit .testimonial-con .row {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  /* Feature cards – compact */
  .prime-kit .our-features .feature-box {
    padding: 16px !important;
    gap: 12px !important;
    border-radius: 14px !important;
  }
  .prime-kit .our-features .feture-box-lft {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    border-radius: 10px !important;
  }
  .prime-kit .our-features .feture-box-lft img {
    width: 24px !important;
  }
  .prime-kit .our-features .feture-box-rgt h3 {
    font-size: 15px !important;
    margin: 0 0 4px !important;
  }
  .prime-kit .our-features .feture-box-rgt p {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  /* Testimonials – compact */
  .prime-kit .testimonial-box {
    padding: 18px !important;
    border-radius: 14px !important;
  }
  .prime-kit .testimonial-box .row {
    margin: 0 0 10px !important;
  }
  .prime-kit .testimonial-box .testi-box-lft img {
    width: 100px !important;
    height: auto !important;
  }
  /* Hide Prime logo on mobile to save space */
  .prime-kit .testimonial-box .testi-box-rgt {
    display: none !important;
  }
  .prime-kit .testimonial-box p {
    font-size: 13px !important;
    line-height: 1.55 !important;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}

/* ---------------------------
   14) Results Page (scoped)
---------------------------- */
.prime-kit.prime-results .inner-page-con {
  background: #f8f5fa;
  padding: 24px 0 80px;
}

/* --- Stepper container --- */
.prime-kit.prime-results .confirmation-con.ful-wdth {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 14px 18px;
  box-shadow: var(--pc-shadow-sm);
  overflow: visible;       /* kill legacy overflow:hidden */
}

/* --- Row inside stepper --- */
.prime-kit.prime-results .confirmation-con.ful-wdth .row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px 14px;
  margin: 0;
  border: 0;               /* kill legacy border-bottom:1px solid #dcdcdc */
  border-bottom: 0;
}

/* --- Step box: full reset (covers base + .ful-wdth context) --- */
.prime-kit.prime-results .confirmation-box,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box {
  width: auto;
  float: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 0;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  animation: none;         /* kill ui-kit fade-up */
  position: relative;
}

/* Active / hover box — keep transparent */
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box.active,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box:hover {
  background: transparent;
  border: 0;
  color: inherit;
}

/* Kill legacy pseudo-element arrows (no !important — lets connector rule at higher specificity win) */
.prime-kit.prime-results .confirmation-box::before,
.prime-kit.prime-results .confirmation-box::after,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box::before,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box::after,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box.active::before,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box.active::after,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box:hover::before,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box:hover::after {
  content: none;
  display: none;
  border: 0;
}

/* --- Pill span (the visible step element) --- */
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid #e5e7eb;
  background: #faf7fb;
  color: #9ca3af;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.2;
  text-align: center;
  max-width: 180px;
  white-space: normal;
}

/* --- Icon circle --- */
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box a {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1px solid #e5e7eb;
  background: #fff;
  color: #9ca3af;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  line-height: 1;
  font-size: 12px;
  text-decoration: none;
}

/* --- Active / hover pill --- */
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box.active span,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box:hover span {
  color: #fff;
  background: #7a1a60;
  border-color: #7a1a60;
}

.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box.active a,
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box:hover a {
  border-color: #fff;
  background: #fff;
  color: #7a1a60;
}

.prime-kit.prime-results .middle-con > .row.pull-top {
  display: grid;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.prime-kit.prime-results .sidebar-con,
.prime-kit.prime-results .fleet-con {
  float: none;
  width: auto;
  min-width: 0;
}

.prime-kit.prime-results .sidebar-con { grid-column: 1; }
.prime-kit.prime-results .fleet-con { grid-column: 2; }

.prime-kit.prime-results .rental-form {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 0;
  box-shadow: 0 16px 40px rgba(31, 41, 55, 0.08);
  overflow: hidden;
}

.prime-kit.prime-results .rental-form .popup-header {
  padding: 18px 20px 12px;
  background: #faf7fb;
  border-bottom: 1px solid #f0e6f5;
}

.prime-kit.prime-results .rental-form h4 {
  font-size: 15px;
  font-weight: 700;
  color: #1f2937;
  margin: 0;
  line-height: 1.3;
}

.prime-kit.prime-results .rental-form p {
  margin: 8px 0 0;
  font-size: 12px;
  color: #6b7280;
}

.prime-kit.prime-results .rental-form form#checka {
  padding: 18px 20px 22px;
}

.prime-kit.prime-results .rental-form .form-row {
  margin-bottom: 16px;
}

.prime-kit.prime-results .rental-form .form-row label {
  font-size: 12px;
  font-weight: 700;
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 6px;
  display: block;
}

.prime-kit.prime-results .rental-form input[type="text"],
.prime-kit.prime-results .rental-form select {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px 12px;
  font-size: 14px;
  color: #1f2937;
  background: #fff;
  transition: border-color var(--pc-fast) var(--pc-ease), box-shadow var(--pc-fast) var(--pc-ease);
}

.prime-kit.prime-results .rental-form input[type="text"]:focus,
.prime-kit.prime-results .rental-form select:focus {
  border-color: rgba(160, 43, 133, 0.55);
  box-shadow: var(--pc-focus);
  outline: none;
}

.prime-kit.prime-results .rental-form input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #a02c86;
  margin-right: 8px;
}

.prime-kit.prime-results .rental-form .buscar {
  width: 100%;
  background: #7a1a60;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 14px 16px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  cursor: pointer;
}

.prime-kit.prime-results .rental-form #booking_submit {
  background: #7a1a60;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 14px 16px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  cursor: pointer;
}

.prime-kit.prime-results .rental-form .buscar:hover {
  background: #8e2370;
  box-shadow: 0 10px 20px rgba(122, 26, 96, 0.28);
  transform: translateY(-1px);
}

.prime-kit.prime-results .rental-form #booking_submit:hover {
  background: #8e2370;
  box-shadow: 0 10px 20px rgba(122, 26, 96, 0.28);
  transform: translateY(-1px);
}

.prime-kit.prime-results .lease-sec,
.prime-kit.prime-results .kind-sec,
.prime-kit.prime-results .sidebar-callus {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 16px;
  padding: 16px 18px;
  box-shadow: var(--pc-shadow-sm);
  margin-top: 18px;
}

.prime-kit.prime-results .lease-sec h4,
.prime-kit.prime-results .kind-sec h4 {
  padding: 0 !important;
  height: auto !important;
  font-size: 11px;
  font-weight: 800;
  color: #7a1a60;
  background: transparent;
  border: 0;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 12px;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #f0e6f5;
}

.prime-kit.prime-results .lease-sec h4 span,
.prime-kit.prime-results .kind-sec h4 span {
  display: none !important;
}

.prime-kit.prime-results .lease-sec .row,
.prime-kit.prime-results .kind-sec .row {
  display: block !important;
  border: 0 !important;
  padding-top: 4px;
}

.prime-kit.prime-results .lease-sec ul,
.prime-kit.prime-results .kind-sec ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.prime-kit.prime-results .lease-sec li,
.prime-kit.prime-results .kind-sec li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px dashed #f0e6f5;
  font-size: 13px;
  color: #4b5563;
}

.prime-kit.prime-results .lease-sec li:last-child,
.prime-kit.prime-results .kind-sec li:last-child {
  border-bottom: none;
}

.prime-kit.prime-results .lease-sec li input,
.prime-kit.prime-results .kind-sec li input {
  margin-right: 8px;
  accent-color: #a02c86;
  flex-shrink: 0;
}

.prime-kit.prime-results .lease-sec li span,
.prime-kit.prime-results .kind-sec li span {
  font-size: 12px;
  color: #9ca3af;
  margin-left: auto;
  float: none;
}

.prime-kit.prime-results #sidebar_result .lease-sec,
.prime-kit.prime-results #sidebar_result .kind-sec {
  width: 100% !important;
  padding: 16px 18px !important;
}

.prime-kit.prime-results .sidebar-whatsapp {
  display: none !important;  /* Replaced by global floating WhatsApp FAB */
}

.prime-kit.prime-results .ajaxloader.fleet-con .info-text {
  border-radius: 18px;
  border: 1px solid #eee6f0;
  box-shadow: var(--pc-shadow-sm);
  padding: 20px;
  background: #fff;
}

.prime-kit.prime-results .ajaxloader.fleet-con .info-text h2 {
  color: #7a1a60;
  font-weight: 800;
}

.prime-kit.prime-results .fleet-top-bar,
.prime-kit.prime-results .rate-cutter {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: var(--pc-shadow-sm);
}

.prime-kit.prime-results .fleet-top-bar {
  margin-bottom: 12px;
}

.prime-kit.prime-results .fleet-top-bar p {
  margin: 0;
  font-size: 14px;
  color: #3b3b47;
}

.prime-kit.prime-results .fleet-top-bar i {
  color: #7a1a60;
  margin-right: 8px;
}

.prime-kit.prime-results .rate-cutter {
  margin-bottom: 20px;
}

.prime-kit.prime-results .rate-cutter > span {
  display: block;
  font-weight: 700;
  color: #7a1a60 !important;
  margin-bottom: 12px;
  background: #faf7fb !important;
  border: 1px solid #f0e6f5;
  border-radius: 12px;
  padding: 10px 12px;
  font-size: 14px;
}

.prime-kit.prime-results .rate-cutter .row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  margin: 0;
}

.prime-kit.prime-results .rate-cutter select.sort {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px 12px;
  font-size: 13px;
  color: #1f2937;
  background: #fff;
}

.prime-kit.prime-results .rate-cutter-rgt span {
  font-size: 13px;
  color: #6b7280;
}

.prime-kit.prime-results .rate-cutter-rgt {
  display: none;
}

.prime-kit.prime-results #car_result h1.error-text {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #92400e !important;
  background: #fffbeb;
  border: 1px solid #fbbf24;
  border-left: 4px solid #f59e0b;
  border-radius: 12px;
  padding: 16px 18px 16px 48px;
  box-shadow: 0 2px 8px rgba(245, 158, 11, 0.12);
  text-align: left;
  position: relative;
  line-height: 1.5;
}

.prime-kit.prime-results #car_result h1.error-text::before {
  content: '\26A0';
  position: absolute;
  left: 16px;
  top: 14px;
  font-size: 20px;
  line-height: 1;
}

.prime-kit.prime-results #car_result table {
  width: 100%;
  border-collapse: collapse;
}

.prime-kit.prime-results #car_result td {
  padding: 0;
}

.prime-kit.prime-results .fleet-sec.webView {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 14px 16px;
  box-shadow: 0 18px 40px rgba(31, 41, 55, 0.08);
  margin-bottom: 18px;
  transition: transform var(--pc-med) var(--pc-ease),
              box-shadow var(--pc-med) var(--pc-ease),
              border-color var(--pc-med) var(--pc-ease);
}

.prime-kit.prime-results .fleet-sec.webView:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 48px rgba(31, 41, 55, 0.13);
  border-color: #e0d4e8;
}

.prime-kit.prime-results .fleet-sec.webView > .row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 8px;
  position: relative;
}

.prime-kit.prime-results .fleet-sec-lft,
.prime-kit.prime-results .fleet-sec-rgt {
  float: none;
  width: auto;
  position: static;
}

.prime-kit.prime-results .fleet-sec-lft font {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(160, 43, 133, 0.1);
  border: 1px solid rgba(160, 43, 133, 0.18);
  color: #7a1a60;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0;
}

.prime-kit.prime-results .fleet-sec-lft p {
  font-size: 20px;
  font-weight: 700;
  color: #1f2937;
  margin: 0 0 6px;
}

.prime-kit.prime-results .fleet-sec-lft p span {
  font-size: 13px;
  font-weight: 500;
  color: #6b7280;
}

.prime-kit.prime-results .fleet-sec-rgt {
  display: flex;
  align-items: center;
  gap: 12px;
}

.prime-kit.prime-results .fleet-sec-rgt img {
  max-height: 34px;
  width: auto;
}

.prime-kit.prime-results .fleet-sec-rgt > span:first-child {
  display: none;
}

.prime-kit.prime-results .fleet-sec-box.mright-view > span:first-child {
  display: none;
}

.prime-kit.prime-results .fleet-sec.webView .row.small-mrgn {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.6fr);
  gap: 14px;
  align-items: start;
  margin: 10px 0 0;
}

.prime-kit.prime-results .fleet-sec-box {
  float: none;
  width: auto;
  min-height: 0;
  margin: 0;
  border-right: none;
}

.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details {
  display: block;
  padding-right: 14px;
  border-right: 1px solid #f0e6f5;
}

.prime-kit.prime-results .fleet-sec.webView .details-grid {
  display: grid;
  grid-template-columns: minmax(140px, 0.55fr) minmax(0, 1.7fr);
  gap: 14px;
  align-items: start;
}

.prime-kit.prime-results .fleet-sec.webView .details-media {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.prime-kit.prime-results .fleet-sec.webView .details-media .icon-listing {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 5px;
  justify-content: center;
}

.prime-kit.prime-results .fleet-sec.webView .details-media .icon-listing li {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 7px;
  border-radius: 999px;
  border: 1px solid #f0e6f5;
  background: #fff;
  font-size: 10px;
  color: #4b5563;
  margin: 0;
  line-height: 1.2;
  white-space: nowrap;
  transition: background var(--pc-fast) var(--pc-ease),
              border-color var(--pc-fast) var(--pc-ease),
              color var(--pc-fast) var(--pc-ease);
}

.prime-kit.prime-results .fleet-sec.webView .details-media .icon-listing li:hover {
  background: #f4dff0;
  border-color: rgba(160, 43, 133, 0.3);
  color: #7a1a60;
}

.prime-kit.prime-results .fleet-sec.webView .details-media .icon-listing li span {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #f4dff0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7a1a60;
  flex-shrink: 0;
}

.prime-kit.prime-results .fleet-sec.webView .details-media .icon-listing li svg {
  width: 10px;
  height: 10px;
}

.prime-kit.prime-results .fleet-sec.webView .car-outer {
  background: #faf7fb;
  border: 1px solid #f0e6f5;
  border-radius: 16px;
  padding: 6px;
  height: 104px;
  width: 100%;
  float: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform var(--pc-fast) var(--pc-ease),
              box-shadow var(--pc-fast) var(--pc-ease);
}

.prime-kit.prime-results .fleet-sec.webView .car-outer:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(122, 26, 96, 0.08);
}

.prime-kit.prime-results .fleet-sec.webView .car-outer img {
  max-height: 86px;
  width: auto;
}

.prime-kit.prime-results .fleet-sec.webView .car-outer.is-placeholder {
  background: #fbf7fb;
  border-style: dashed;
}

.prime-kit.prime-results .fleet-sec.webView .car-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #a78bb0;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.prime-kit.prime-results .fleet-sec.webView .car-placeholder .pc-icon-car {
  width: 26px;
  height: 26px;
}

.prime-kit.prime-results .fleet-sec.webView .details-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details .icon-listing {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
}

.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details .icon-listing li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid #f0e6f5;
  background: #fff;
  font-size: 11px;
  color: #4b5563;
  margin: 0;
  line-height: 1.2;
  transition: background var(--pc-fast) var(--pc-ease),
              border-color var(--pc-fast) var(--pc-ease),
              color var(--pc-fast) var(--pc-ease),
              transform var(--pc-fast) var(--pc-ease);
}

.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details .icon-listing li:hover {
  background: #f4dff0;
  border-color: rgba(160, 43, 133, 0.3);
  color: #7a1a60;
}

.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details .icon-listing li span {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #f4dff0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7a1a60;
}

.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details .icon-listing li img {
  width: 12px;
  height: 12px;
}

.prime-kit.prime-results .icon-listing li svg {
  width: 12px;
  height: 12px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.prime-kit.prime-results .pc-icon {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.prime-kit.prime-results .pc-icon-check {
  fill: currentColor;
  stroke: none;
}

.prime-kit.prime-results .fleet-sec.webView ul.icon-listing li,
.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details li.b1,
.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details li.b2,
.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details li.b3,
.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details li.b4,
.prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details li.b5 {
  background: #fff !important;
  padding-left: 0 !important;
}

.prime-kit.prime-results .fleet-sec.webView .details-media ul.icon-listing li:hover {
  background: #f4dff0 !important;
}

.prime-kit.prime-results .fleet-sec.webView .order_rating,
.prime-kit.prime-results .fleet-sec.msmallView .order_rating {
  display: none;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-lft p {
  margin: 0 0 6px;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-lft font {
  padding: 4px 10px;
  font-size: 10px;
  margin: 0;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .car-outer {
  float: none;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 120px;
  padding: 6px;
  border-radius: 14px;
  border: 1px solid #f0e6f5;
  background: #faf7fb;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .icon-listing {
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 10px;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .icon-listing li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid #f0e6f5;
  background: #fff;
  font-size: 10px;
  color: #4b5563;
  margin: 0;
  line-height: 1.2;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .icon-listing li span {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #f4dff0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7a1a60;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .icon-listing li img {
  width: 12px;
  height: 12px;
}

.prime-kit.prime-results .fleet-sec-box.mid p.agency_address {
  display: none;
}

.prime-kit.prime-results .fleet-sec-box.details .listing-heading {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #7a1a60;
  margin: 4px 0 4px;
}

.prime-kit.prime-results .fleet-sec-box.details .benefits-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.prime-kit.prime-results .fleet-sec-box.details .benefits-grid li {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  font-size: 12px;
  color: #4b5563;
  line-height: 1.4;
}

.prime-kit.prime-results .fleet-sec-box.details .benefit-icon {
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #dcfce7;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #16a34a;
  flex: 0 0 16px;
  margin-top: 1px;
}

.prime-kit.prime-results .fleet-sec-box.details .benefit-icon svg {
  width: 10px;
  height: 10px;
}

.prime-kit.prime-results .fleet-sec-box.mid .listing-heading {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #7a1a60;
  margin: 8px 0 6px;
}

.prime-kit.prime-results .fleet-sec-box.mid ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 12px;
}

.prime-kit.prime-results .fleet-sec-box.mid ul li {
  position: relative;
  padding-left: 16px;
  font-size: 12px;
  color: #4b5563;
  line-height: 1.4;
}

.prime-kit.prime-results .fleet-sec-box.mid ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(160, 43, 133, 0.35);
}

.prime-kit.prime-results .fleet-sec-box.rate {
  background: #fff;
  border: 1px solid #f0e6f5;
  border-radius: 16px;
  padding: 12px 12px 14px;
  text-align: center;
}

.prime-kit.prime-results .fleet-sec-box.rate font {
  display: block;
  font-size: 22px;
  font-weight: 800;
  color: #7a1a60;
  margin-bottom: 4px;
}

.prime-kit.prime-results .fleet-sec-box.rate span {
  display: block;
  font-size: 11px;
  color: #6b7280;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.prime-kit.prime-results .fleet-sec-box.rate p {
  display: none;
}

.prime-kit.prime-results .fleet-sec-box.rate h4 {
  font-size: 11px;
  font-weight: 700;
  color: #7a1a60;
  margin: 0 0 10px;
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: center;
}

.prime-kit.prime-results .fleet-sec-box.rate .rent {
  width: 100%;
  border: none;
  border-radius: 999px;
  background: #7a1a60;
  color: #fff;
  padding: 11px 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 12px;
  cursor: pointer;
}

.prime-kit.prime-results .fleet-sec-box.rate .rent:hover {
  background: #8e2370;
  box-shadow: 0 10px 20px rgba(122, 26, 96, 0.3);
  transform: translateY(-1px);
}

.prime-kit.prime-results .fleet-sec-box.rate .show_email_quote {
  width: auto;
  margin-top: 6px;
  border-radius: 0;
  border: none;
  background: transparent;
  color: #7a1a60;
  padding: 4px 0;
  font-weight: 700;
  font-size: 11px;
  cursor: pointer;
  text-decoration: underline;
}

.prime-kit.prime-results .fleet-sec-box.rate .show_email_quote:hover {
  color: #8e2370;
}

.prime-kit.prime-results .fleet-bottm-con {
  border-top: 1px solid #f0e6f5;
  margin-top: 10px;
  padding: 8px 12px;
  background: #faf7fb;
  border-radius: 12px;
}

.prime-kit.prime-results .fleet-bottm-con .flet-btm-rgt {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.prime-kit.prime-results .fleet-bottm-con ul {
  list-style: none;
  margin: 0;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  min-width: 0;
  position: relative;
}

.prime-kit.prime-results .fleet-bottm-con ul li {
  margin: 0;
}

.prime-kit.prime-results .fleet-bottm-con ul li:first-child {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #7a1a60;
  margin-bottom: 2px;
}

.prime-kit.prime-results .fleet-bottm-con ul li:nth-of-type(2) {
  font-size: 12px;
  font-weight: 600;
  color: #3b3b47;
}

.prime-kit.prime-results .fleet-bottm-con ul .loc-address {
  font-size: 11px;
  font-weight: 500;
  color: #6b7280;
  margin-top: 2px;
  line-height: 1.3;
}

.prime-kit.prime-results .searchBanner img {
  border-radius: 16px;
  box-shadow: var(--pc-shadow-sm);
}

/* ---- Rotating Trust Banner (replaces COVID) ---- */
.prime-kit.prime-results .trust-banner {
  margin: 16px 0;
  padding: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #4a0f3c 0%, #7a1a60 50%, #a02c86 100%);
  overflow: hidden;
  position: relative;
  min-height: 72px;
}

.prime-kit.prime-results .trust-banner-track {
  display: flex;
  animation: trustBannerSlide 12s ease-in-out infinite;
  width: 300%;
}

.prime-kit.prime-results .trust-banner-slide {
  width: 33.333%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 22px;
  box-sizing: border-box;
}

.prime-kit.prime-results .trust-banner-icon {
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
  display: flex !important;
  align-items: center;
  justify-content: center;
  font-size: 18px !important;
  color: #fff !important;
  font-weight: 400 !important;
  margin-bottom: 0 !important;
}

.prime-kit.prime-results .trust-banner-text {
  min-width: 0;
}

.prime-kit.prime-results .trust-banner-text strong {
  display: block;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 2px;
}

.prime-kit.prime-results .trust-banner-text span {
  display: block !important;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.4;
  margin-bottom: 0 !important;
}

@keyframes trustBannerSlide {
  0%, 28%    { transform: translateX(0); }
  33%, 61%   { transform: translateX(-33.333%); }
  66%, 94%   { transform: translateX(-66.666%); }
  100%       { transform: translateX(0); }
}

@media (max-width: 640px) {
  .prime-kit.prime-results .trust-banner {
    border-radius: 10px;
    min-height: 64px;
  }

  .prime-kit.prime-results .trust-banner-slide {
    padding: 14px 16px;
    gap: 10px;
  }

  .prime-kit.prime-results .trust-banner-icon {
    width: 32px;
    height: 32px;
    font-size: 15px !important;
  }

  .prime-kit.prime-results .trust-banner-text strong {
    font-size: 13px;
  }

  .prime-kit.prime-results .trust-banner-text span {
    font-size: 11px !important;
  }
}

.prime-kit.prime-results .fleet-sec.msmallView {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 18px;
  box-shadow: 0 14px 32px rgba(31, 41, 55, 0.08);
  margin-bottom: 20px;
}

/* ---------------------------
   15) Reservation Page (scoped)
---------------------------- */
.prime-kit.prime-reserva {
  background: #f6f2f8;
  color: #1f2937;
}

.prime-kit.prime-reserva .main-wrapper.reserve-page {
  padding: 24px 0 40px;
}

.prime-kit.prime-reserva .bottom-div {
  padding: 0 16px 32px;
}

.prime-kit.prime-reserva #main {
  max-width: 1200px !important;
  margin: 0 auto !important;
  width: 100% !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box;
}

.prime-kit.prime-reserva #contents,
.prime-kit.prime-reserva #sidebar {
  float: none !important;
  width: 100% !important;
}

.prime-kit.prime-reserva .SideRightContainer {
  float: none !important;
  margin: 0 !important;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 20px 24px;
  box-shadow: var(--pc-shadow-sm);
  margin: 0 auto 18px;
  max-width: 1200px;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  margin: 0;
  overflow: hidden;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth {
  background: #fff !important;
  border: 1px solid #eee6f0 !important;
  overflow: visible !important;
  padding: 20px 24px !important;
  border-radius: 18px !important;
  width: 100%;
  min-height: 72px;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box {
  float: none !important;
  width: auto !important;
  padding: 0 !important;
}

.prime-kit.prime-reserva .confirmation-box::before,
.prime-kit.prime-reserva .confirmation-box::after {
  content: none !important;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box:first-child {
  display: none !important;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .row {
  justify-content: center !important;
  gap: 6px;
}

.prime-kit.prime-reserva .confirmation-box {
  width: auto;
  float: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  position: relative;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box,
.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box.active,
.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box:hover {
  background: transparent;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box::before,
.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box::after,
.prime-kit.prime-reserva .confirmation-box::before,
.prime-kit.prime-reserva .confirmation-box::after {
  content: none;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid #e5e7eb !important;
  background: #faf7fb !important;
  color: #9ca3af !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box a {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1px solid #e5e7eb;
  background: #fff;
  color: #9ca3af;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  line-height: 1;
  font-size: 12px;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box.active span,
.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box:hover span {
  color: #fff !important;
  background: #7a1a60 !important;
  border-color: #7a1a60 !important;
}

.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box.active a,
.prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box:hover a {
  border-color: #fff !important;
  background: #fff !important;
  color: #7a1a60 !important;
}

.prime-kit.prime-reserva .reservation-summary-card {
  max-width: 1200px;
  margin: 0 auto 18px;
  padding: 0 16px;
}

.prime-kit.prime-reserva .reservation-summary-details {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  box-shadow: var(--pc-shadow-sm);
  overflow: hidden;
}

.prime-kit.prime-reserva .reservation-summary-details summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 18px;
  font-weight: 700;
  color: #1f2937;
}

.prime-kit.prime-reserva .reservation-summary-details summary::-webkit-details-marker {
  display: none;
}

.prime-kit.prime-reserva .reservation-summary-details summary::after {
  content: "+";
  font-size: 18px;
  color: #7a1a60;
}

.prime-kit.prime-reserva .reservation-summary-details[open] summary::after {
  content: "-";
}

.prime-kit.prime-reserva .reservation-summary-details .summary-meta {
  font-size: 12px;
  font-weight: 600;
  color: #9ca3af;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.prime-kit.prime-reserva .reservation-summary-body {
  padding: 0 18px 16px;
}

/* --- 2-column grid: car+specs | itinerary --- */
.prime-kit.prime-reserva .rsb-grid {
  display: grid;
  grid-template-columns: minmax(200px, 1fr) minmax(260px, 1fr);
  gap: 24px;
  align-items: start;
}

/* --- Car image column --- */
.prime-kit.prime-reserva .rsb-car-img {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.prime-kit.prime-reserva .rsb-category {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #7a1a60;
}

.prime-kit.prime-reserva .rsb-car-name {
  font-size: 16px;
  font-weight: 700;
  color: #1f2937;
}

.prime-kit.prime-reserva .rsb-car-img .ford-car {
  margin: 6px 0 4px;
}

.prime-kit.prime-reserva .rsb-car-img .ford-car img {
  max-width: 160px;
  max-height: 100px;
  object-fit: contain;
}

/* Specs inline pills */
.prime-kit.prime-reserva .rsb-specs {
  list-style: none;
  margin: 4px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.prime-kit.prime-reserva .rsb-specs li {
  font-size: 11px;
  color: #4b5563;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 2px 8px;
  white-space: nowrap;
}

/* --- Services footer --- */
.prime-kit.prime-reserva .reservation-summary-services {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #f0e6f5;
}

.prime-kit.prime-reserva .reservation-summary-services h3 {
  font-size: 12px;
  font-weight: 700;
  color: #7a1a60;
  margin: 0 0 6px;
}

.prime-kit.prime-reserva .rsb-benefits {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 12px;
}

.prime-kit.prime-reserva .rsb-benefits li {
  font-size: 12px;
  color: #374151;
  position: relative;
  padding-left: 14px;
}

.prime-kit.prime-reserva .rsb-benefits li::before {
  content: "\2713";
  position: absolute;
  left: 0;
  color: #16a34a;
  font-weight: 700;
  font-size: 11px;
}

.prime-kit.prime-reserva .custom_reserva {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
  justify-content: space-between;
}

.prime-kit.prime-reserva .custom_reserva .left_side_res {
  flex: 0 0 62%;
  max-width: 62%;
}

.prime-kit.prime-reserva .custom_reserva .right_side_resv {
  flex: 0 0 38%;
  max-width: 38%;
  padding-left: 0;
}

.prime-kit.prime-reserva .left_side_res > .sidebar-inner,
.prime-kit.prime-reserva .right_side_resv > .sidebar-inner,
.prime-kit.prime-reserva .inner_left_form,
.prime-kit.prime-reserva .left_serv_list,
.prime-kit.prime-reserva .right_side_resv #sidebar,
.prime-kit.prime-reserva .right_side_resv .ingresar-codigo-section,
.prime-kit.prime-reserva .requisitos,
.prime-kit.prime-reserva .side_bar_review {
  background: #fff;
  border: 1px solid #f0e6f5 !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 18px rgba(31, 41, 55, 0.08) !important;
  padding: 16px !important;
}

.prime-kit.prime-reserva .right_side_resv > .sidebar-inner {
  margin-bottom: 16px !important;
}

.prime-kit.prime-reserva .benefits-accordion details {
  border: 1px solid #f0e6f5;
  border-radius: 14px;
  padding: 10px 12px;
  background: #fff;
}

.prime-kit.prime-reserva .benefits-accordion summary {
  list-style: none;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #7a1a60;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.prime-kit.prime-reserva .benefits-accordion summary::after {
  content: "+";
  font-size: 14px;
  color: #7a1a60;
}

.prime-kit.prime-reserva .benefits-accordion details[open] summary::after {
  content: "–";
}

.prime-kit.prime-reserva .benefits-accordion .listUl {
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  gap: 6px;
}

.prime-kit.prime-reserva .benefits-accordion .listUl li {
  font-size: 12px;
  color: #4b5563;
  line-height: 1.4;
  padding-left: 18px;
  position: relative;
}

.prime-kit.prime-reserva .benefits-accordion .listUl li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #7a1a60;
  font-weight: 700;
}

.prime-kit.prime-reserva h2.left_sec_heading {
  background: transparent !important;
  color: #1f2937 !important;
  padding: 0 0 10px !important;
  font-size: 13px !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid #eee6f0 !important;
  margin: 0 0 12px !important;
}

.prime-kit.prime-reserva .left_sec_heading i {
  color: #7a1a60;
}

/* (car details & specs now handled by .rsb-* rules above) */

.prime-kit.prime-reserva .right_car_details h5 {
  color: #7a1a60;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: 12px 0 6px;
}

.prime-kit.prime-reserva .right_car_details p {
  font-size: 13px;
  color: #4b5563;
  line-height: 1.5;
}

.prime-kit.prime-reserva #subLoc {
  font-size: 12px;
  color: #4b5563;
  padding: 10px 12px;
  background: #faf7fb;
  border: 1px solid #f0e6f5;
  border-radius: 12px;
  margin-top: 8px;
}

.prime-kit.prime-reserva .left_serv_list ul.listUl li::before {
  background-color: #7a1a60;
}

.prime-kit.prime-reserva .detail_form {
  margin-top: 24px;
}

.prime-kit.prime-reserva .detail_form .form-section {
  background: transparent;
}

.prime-kit.prime-reserva .recomend-box {
  background: #faf7fb;
  border: 1px solid #f0e6f5;
  border-radius: 16px;
  padding: 16px;
  display: grid;
  gap: 12px;
  float: none;
  width: 100%;
}

.prime-kit.prime-reserva .detail_form .form-element {
  width: 50%;
  padding-right: 12px;
  box-sizing: border-box;
}

.prime-kit.prime-reserva .detail_form .form-element label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #374151;
  margin-bottom: 6px;
}

.prime-kit.prime-reserva .detail_form .form-element.full_form_width,
.prime-kit.prime-reserva .detail_form .form-element.special,
.prime-kit.prime-reserva .detail_form .form-element.submit_form_wrap {
  width: 100%;
  padding-right: 0;
}

.prime-kit.prime-reserva .detail_form .field,
.prime-kit.prime-reserva .detail_form input[type="text"],
.prime-kit.prime-reserva .detail_form select {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 13px;
  color: #1f2937;
  background: #fff;
  box-sizing: border-box;
}

.prime-kit.prime-reserva .detail_form .phone-input {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 6px 10px;
  background: #fff;
}

.prime-kit.prime-reserva .detail_form .phone-input:focus-within {
  border-color: #7a1a60;
  box-shadow: 0 0 0 3px rgba(122, 26, 96, 0.15);
}

.prime-kit.prime-reserva .detail_form .phone-input .phone-flag {
  width: 20px;
  height: 14px;
  border-radius: 3px;
  border: 1px solid #e5e7eb;
  background-size: cover;
  background-position: center;
  flex: 0 0 auto;
}

.prime-kit.prime-reserva .detail_form .phone-input .phone-country-select {
  width: 170px;
  min-width: 130px;
  flex: 0 1 170px;
  border: none;
  background: transparent;
  padding: 6px 4px;
  font-weight: 600;
  font-size: 13px;
  color: #374151;
}

.prime-kit.prime-reserva .detail_form .phone-input .phone-number {
  flex: 1 1 200px;
  min-width: 0;
  width: auto;
  border: none;
  padding: 6px 4px;
  background: transparent;
}

.prime-kit.prime-reserva .detail_form .phone-input .phone-country-select:focus,
.prime-kit.prime-reserva .detail_form .phone-input .phone-number:focus {
  outline: none;
  box-shadow: none;
}

.prime-kit.prime-reserva .detail_form .inner_left_form .form-element input,
.prime-kit.prime-reserva .detail_form .inner_left_form .form-element select {
  border-radius: 10px !important;
  box-shadow: none !important;
}

.prime-kit.prime-reserva .detail_form .field:focus,
.prime-kit.prime-reserva .detail_form input[type="text"]:focus,
.prime-kit.prime-reserva .detail_form select:focus {
  outline: none;
  border-color: #7a1a60;
  box-shadow: 0 0 0 3px rgba(122, 26, 96, 0.15);
}

.prime-kit.prime-reserva .detail_form .field.is-valid,
.prime-kit.prime-reserva .detail_form input[type="text"].is-valid {
  border-color: #22c55e;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.15);
}

.prime-kit.prime-reserva .detail_form .field.is-invalid,
.prime-kit.prime-reserva .detail_form input[type="text"].is-invalid {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
}

.prime-kit.prime-reserva .coverage-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.prime-kit.prime-reserva .coverage-card {
  position: relative;
  border: 1px solid #ead9ef;
  border-radius: 16px;
  padding: 20px 20px 18px 56px;
  background: #fff;
  display: grid;
  gap: 10px;
  min-height: 160px;
}

.prime-kit.prime-reserva .coverage-card.is-selected {
  border-color: #7a1a60;
  box-shadow: 0 12px 24px rgba(122, 26, 96, 0.18);
  background: #faf7fb;
}

.prime-kit.prime-reserva .coverage-card .styledCheckbox {
  display: none;
}

.prime-kit.prime-reserva .coverage-card .add_services_checkbox {
  position: absolute;
  top: 16px;
  left: 16px;
  width: 22px;
  height: 22px;
  appearance: none;
  -webkit-appearance: none;
  border: 2px solid #ead9ef;
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
  margin: 0;
  transition: background 0.15s, border-color 0.15s;
}

.prime-kit.prime-reserva .coverage-card .add_services_checkbox:checked {
  background: #7a1a60;
  border-color: #7a1a60;
}

.prime-kit.prime-reserva .coverage-card .add_services_checkbox:checked::after {
  content: "\2713";
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.prime-kit.prime-reserva .coverage-card .coverage-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: #7a1a60;
  color: #fff;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.prime-kit.prime-reserva .coverage-card .coverage-title {
  font-size: 16px;
  font-weight: 700;
  color: #111827;
}

.prime-kit.prime-reserva .coverage-card .coverage-desc {
  font-size: 13px;
  color: #6b7280;
  line-height: 1.45;
  padding-left: 18px;
  position: relative;
}

.prime-kit.prime-reserva .coverage-card .coverage-desc::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #16a34a;
  font-weight: 700;
}

.prime-kit.prime-reserva .coverage-card .coverage-price {
  font-size: 14px;
  font-weight: 800;
  color: #7a1a60;
}

.prime-kit.prime-reserva .coverage-card .coverage-details {
  margin: 6px 0 0;
  padding: 8px 12px;
  background: #faf7fb;
  border: 1px dashed #ead9ef;
  border-radius: 12px;
}

.prime-kit.prime-reserva .coverage-card .coverage-details summary {
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
  color: #7a1a60;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.prime-kit.prime-reserva .coverage-card .coverage-details p {
  margin: 8px 0 0;
  font-size: 12px;
  color: #4b5563;
  line-height: 1.5;
  padding: 0;
  letter-spacing: 0;
}

.prime-kit.prime-reserva .coverage-card .retain_credit_card {
  margin: 6px 0 0;
  padding: 8px 12px;
  border-radius: 10px;
  background: rgba(122, 26, 96, 0.08);
  color: #5c1b48;
  font-size: 12px;
  line-height: 1.5;
}

/* Protección Premium card enhancements */
.prime-kit.prime-reserva .coverage-card--premium {
  border-color: #7a1a60;
  border-width: 2px;
}
.prime-kit.prime-reserva .coverage-badge--premium {
  background: #16a34a;
}
.prime-kit.prime-reserva .coverage-counter-price {
  font-size: 11px;
  color: #6b7280;
  line-height: 1.4;
}
.prime-kit.prime-reserva .coverage-counter-price del {
  color: #dc2626;
  font-weight: 600;
}

/* Premium Decline Modal */
.premium-modal-wrap {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10000;
  align-items: center;
  justify-content: center;
}
.premium-modal-wrap.is-visible {
  display: flex;
}
.premium-modal-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
}
.premium-modal {
  position: relative;
  background: #fff;
  border-radius: 16px;
  padding: 32px 28px 24px;
  max-width: 440px;
  width: 90%;
  text-align: center;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  animation: premiumModalIn .2s ease-out;
}
@keyframes premiumModalIn {
  from { opacity: 0; transform: scale(.95) translateY(10px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}
.premium-modal-icon {
  font-size: 48px;
  color: #f59e0b;
  line-height: 1;
  margin-bottom: 8px;
}
.premium-modal-title {
  font-size: 20px;
  font-weight: 700;
  color: #111827;
  margin: 0 0 12px;
}
.premium-modal-text {
  font-size: 14px;
  color: #374151;
  line-height: 1.55;
  margin: 0 0 8px;
}
.premium-modal-counter {
  font-size: 13px;
  color: #6b7280;
  line-height: 1.5;
  margin: 0 0 20px;
  min-height: 1px;
}
.premium-modal-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.premium-modal-btn {
  border: none;
  border-radius: 10px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  padding: 14px 20px;
  line-height: 1.3;
  transition: background .15s, box-shadow .15s;
}
.premium-modal-btn--keep {
  background: #16a34a;
  color: #fff;
  box-shadow: 0 4px 12px rgba(22,163,74,.3);
}
.premium-modal-btn--keep:hover {
  background: #15803d;
}
.premium-modal-btn--decline {
  background: transparent;
  color: #9ca3af;
  font-size: 12px;
  font-weight: 400;
  padding: 10px 20px;
}
.premium-modal-btn--decline:hover {
  color: #6b7280;
  background: #f3f4f6;
}

.prime-kit.prime-reserva .requisitos-accordion {
  margin-top: 12px;
}

.prime-kit.prime-reserva .requisitos-accordion summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.prime-kit.prime-reserva .requisitos-accordion summary::after {
  content: "+";
  font-size: 14px;
  font-weight: 800;
  color: #7a1a60;
}

.prime-kit.prime-reserva .requisitos-accordion[open] summary::after {
  content: "-";
}

.prime-kit.prime-reserva .requisitos-accordion summary::-webkit-details-marker {
  display: none;
}

@supports selector(:has(*)) {
  .prime-kit.prime-reserva .coverage-card:has(input:checked) {
    border-color: #7a1a60;
    box-shadow: 0 12px 24px rgba(122, 26, 96, 0.18);
    background: #faf7fb;
  }
}

.prime-kit.prime-reserva .coverage-info {
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px dashed #e6d6ec;
  background: #fff;
}

.prime-kit.prime-reserva .coverage-info summary {
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  color: #7a1a60;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.prime-kit.prime-reserva .coverage-info p {
  margin: 8px 0 0;
  font-size: 13px;
  color: #4b5563;
  line-height: 1.5;
  padding: 0;
  letter-spacing: 0;
}

.prime-kit.prime-reserva .detail_form .form-element input.submit {
  background: #7a1a60 !important;
  border-radius: 999px;
  padding: 12px 18px;
  width: 100%;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #fff;
  border: none;
}

.prime-kit.prime-reserva .mobile-sticky-total,
.prime-kit.prime-reserva .submit-mobile,
.prime-kit.prime-reserva .mobile-price-breakdown {
  display: none;
}

/* P3.1 — Inline validation error messages */
.prime-kit.prime-reserva .field-error-msg {
  display: block;
  color: #dc2626;
  font-size: 12px;
  font-weight: 600;
  margin-top: 4px;
  padding-left: 2px;
}

/* P3.4 — Field hint text */
.prime-kit.prime-reserva .field-hint {
  display: block;
  color: #9ca3af;
  font-size: 11px;
  margin-top: 3px;
  padding-left: 2px;
}

.prime-kit.prime-reserva .right_side_resv #sidebar .sidebar-inner {
  padding: 0 !important;
}

.prime-kit.prime-reserva .right_side_resv #sidebar .sidebar-inner p {
  padding: 10px 0 !important;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin: 0;
  border-bottom: 1px solid #f4ecf7;
}

.prime-kit.prime-reserva .right_side_resv #sidebar .sidebar-inner p .label {
  color: #6b7280;
  font-size: 12px;
  font-weight: 600;
}

.prime-kit.prime-reserva .right_side_resv .widget-footer.widget-footer-total {
  background-color: #fff !important;
  color: #7a1a60 !important;
  border: 1px solid #ead9ef;
  border-radius: 12px;
  text-align: center;
  padding: 12px;
  font-size: 18px !important;
  letter-spacing: 0.06em;
  box-shadow: 0 10px 20px rgba(122, 26, 96, 0.12);
}

.prime-kit.prime-reserva .submit-btn {
  background: #7a1a60;
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 700;
  cursor: pointer;
}

.prime-kit.prime-reserva .side_bar_review h2 {
  background: transparent !important;
  color: #1f2937;
  border-bottom: 1px solid #eee6f0;
  padding: 0 0 10px;
  margin: 0 0 12px;
  font-size: 13px;
  letter-spacing: 0.08em;
}

.prime-kit.prime-reserva .side_bar_review .testimonial-box {
  border-bottom: 1px solid #f0e6f5;
  padding: 10px 0;
}

.prime-kit.prime-reserva .requisitos .alert {
  border-radius: 12px;
  border: 1px solid rgba(122, 26, 96, 0.2);
  background: rgba(122, 26, 96, 0.08);
  color: #5c1b48;
}

.prime-kit.prime-reserva .requisitos.compact {
  margin: 16px 0 10px;
  clear: both;
  width: 100%;
}

.prime-kit.prime-reserva .requisitos.compact .requis_row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}

.prime-kit.prime-reserva .requisitos.compact .requis_item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  background: #faf7fb;
  border: 1px solid #f0e6f5;
  font-size: 12px;
  color: #4b5563;
}

.prime-kit.prime-reserva .requisitos.compact .requis_item i {
  color: #7a1a60;
  font-size: 14px;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e3d6ec;
  border-radius: 999px;
  background: #fff;
}

.prime-kit.prime-reserva .requisitos.compact .alert {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.5;
}

.prime-kit.prime-reserva .requisitos-help-number {
  font-weight: 800;
  color: #7a1a60;
}

.prime-kit.prime-reserva .reservation-itinerary {
  display: grid;
  gap: 10px;
  align-content: start;
}

.prime-kit.prime-reserva .reservation-itinerary .itinerary-row {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid #f0e6f5;
  background: #faf7fb;
}

.prime-kit.prime-reserva .reservation-itinerary .itinerary-type {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #7a1a60;
}

.prime-kit.prime-reserva .reservation-itinerary .itinerary-details {
  display: grid;
  gap: 4px;
}

.prime-kit.prime-reserva .reservation-itinerary .itinerary-time {
  font-size: 13px;
  font-weight: 700;
  color: #1f2937;
}

.prime-kit.prime-reserva .reservation-itinerary .itinerary-place {
  font-size: 12px;
  color: #6b7280;
}

.prime-kit.prime-reserva .reservation-itinerary .itinerary-meta {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #9ca3af;
}

.prime-kit.prime-reserva .reservation-itinerary .itinerary-map a {
  font-size: 12px;
  font-weight: 700;
  color: #7a1a60;
}

.prime-kit.prime-reserva .ford-car.is-placeholder {
  border: 1px dashed #ead9ef;
  border-radius: 12px;
  padding: 12px;
  width: 160px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.prime-kit.prime-reserva .car-placeholder {
  text-align: center;
  color: #9ca3af;
  font-size: 11px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.prime-kit.prime-reserva .car-placeholder .pc-icon-car {
  width: 28px;
  height: 28px;
  fill: #c4b5c6;
}

/* Results: search error + retry state */
.prime-kit.prime-results .search-error-state {
  background: #fff;
  border: 1px solid #eee6f0;
  border-radius: 18px;
  padding: 32px 24px;
  text-align: center;
  box-shadow: var(--pc-shadow-sm);
}

.prime-kit.prime-results .search-error-state p {
  color: #4b5563;
  font-size: 15px;
  margin: 0 0 20px;
}

.prime-kit.prime-results .search-error-state .retry-search {
  display: inline-block;
  background: #7a1a60;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 12px 28px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: background 0.2s ease;
}

.prime-kit.prime-results .search-error-state .retry-search:hover {
  background: #8e2370;
}

/* Results: stepper connector lines between steps */
.prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box + .confirmation-box::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 2px;
  background: #e5e7eb;
  margin-right: 14px;
  vertical-align: middle;
}

/* Results: popup-header toggle chevron indicator */
.prime-kit.prime-results .popup-header h4 span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.prime-kit.prime-results .popup-header h4::after {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-right: 2px solid #6b7280;
  border-bottom: 2px solid #6b7280;
  transform: rotate(45deg);
  margin-left: auto;
  transition: transform 0.25s ease;
  flex-shrink: 0;
}

.prime-kit.prime-results .popup-header.more-less h4::after {
  transform: rotate(-135deg);
}

.prime-kit.prime-results .popup-header h4 {
  display: flex;
  align-items: center;
  cursor: pointer;
}

/* Results: hide toggle images (now using CSS chevron) */
.prime-kit.prime-results .popup-header h4 span img {
  display: none !important;
}

@media (max-width: 1024px) {
  .prime-kit.prime-results .middle-con > .row.pull-top {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-results .sidebar-con,
  .prime-kit.prime-results .fleet-con {
    grid-column: 1;
  }

  /* Stepper: hide connector lines on small screens */
  .prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box + .confirmation-box::before {
    width: 12px;
    margin-right: 6px;
  }

  .prime-kit.prime-reserva .custom_reserva {
    flex-direction: column;
  }

  .prime-kit.prime-reserva .custom_reserva .left_side_res,
  .prime-kit.prime-reserva .custom_reserva .right_side_resv {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (max-width: 720px) {
  .prime-kit.prime-reserva .detail_form {
    padding-bottom: 96px;
  }

  .prime-kit.prime-reserva .confirmation-con.ful-wdth .row {
    flex-wrap: nowrap;
    justify-content: center;
    overflow: hidden;
  }

  .prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box span {
    white-space: nowrap;
    font-size: 10px;
    padding: 6px 8px;
  }

  .prime-kit.prime-reserva .confirmation-con.ful-wdth .confirmation-box a {
    display: none;
  }

  .prime-kit.prime-reserva .rsb-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .prime-kit.prime-reserva .rsb-benefits {
    flex-direction: column;
    gap: 4px;
  }

  .prime-kit.prime-reserva .reservation-itinerary {
    padding-top: 12px;
    border-top: 1px dashed #e8dced;
  }

  .prime-kit.prime-reserva .requisitos.compact .requis_row {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-reserva .coverage-grid {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-reserva .reservation-itinerary .itinerary-row {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-reserva .detail_form .form-element.submit_form_wrap {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    background: #fff;
    padding: 10px 12px;
    z-index: 50;
    border: 1px solid #ead9ef;
    border-radius: 18px;
    box-shadow: 0 12px 24px rgba(122, 26, 96, 0.16);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin: 0;
    grid-column: 1 / -1;
  }

  .prime-kit.prime-reserva .mobile-sticky-total {
    display: flex;
    min-width: 110px;
  }

  .prime-kit.prime-reserva .mobile-price-toggle {
    display: flex;
    flex-direction: column;
    gap: 2px;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    text-align: left;
  }

  .prime-kit.prime-reserva .mobile-price-toggle .label {
    font-size: 10px;
    font-weight: 700;
    color: #6b7280;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .prime-kit.prime-reserva .mobile-price-toggle .amount {
    font-size: 16px;
    font-weight: 800;
    color: #7a1a60;
  }

  .prime-kit.prime-reserva .mobile-price-toggle .toggle-hint {
    font-size: 9px;
    color: #a02c86;
    font-weight: 700;
    letter-spacing: 0.04em;
  }

  .prime-kit.prime-reserva .mobile-price-toggle .chevron-up {
    font-size: 8px;
    display: inline-block;
    transition: transform 0.2s;
  }

  .prime-kit.prime-reserva .mobile-price-toggle[aria-expanded="true"] .chevron-up {
    transform: rotate(180deg);
  }

  .prime-kit.prime-reserva .mobile-price-breakdown {
    width: 100%;
    border-top: 1px solid #f4ecf7;
    padding-top: 8px;
  }

  .prime-kit.prime-reserva .mobile-price-breakdown:not([hidden]) {
    display: block;
  }

  .prime-kit.prime-reserva .mobile-price-breakdown p {
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding: 3px 0;
    font-size: 11px;
    color: #4b5563;
    line-height: 1.4;
    border: none;
  }

  .prime-kit.prime-reserva .mobile-price-breakdown p strong {
    font-weight: 700;
    color: #1f2937;
  }

  .prime-kit.prime-reserva .submit-desktop {
    display: none;
  }

  .prime-kit.prime-reserva .submit-mobile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 999px;
    background: #7a1a60;
    color: #fff;
    padding: 10px 18px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    cursor: pointer;
    margin-left: auto;
  }

  .prime-kit.prime-reserva .detail_form .form-element.submit_form_wrap .ajaxloader {
    order: 3;
    margin-left: auto;
  }

  .prime-kit.prime-reserva .inner_left_form {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .prime-kit.prime-reserva .inner_left_form .form-element {
    width: auto !important;
    min-width: 0;
    margin: 0;
    float: none !important;
  }

  .prime-kit.prime-reserva .inner_left_form .form-element.full_form_width {
    grid-column: 1 / -1;
  }

  .prime-kit.prime-reserva .inner_left_form > .left_sec_heading {
    grid-column: 1 / -1;
  }

  .prime-kit.prime-reserva .inner_left_form > .requisitos {
    grid-column: 1 / -1;
  }

  .prime-kit.prime-reserva .detail_form .phone-input {
    display: grid;
    grid-template-columns: minmax(0, 140px) minmax(0, 1fr);
    gap: 10px;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
  }

  .prime-kit.prime-reserva .detail_form .phone-input .phone-flag {
    display: none;
  }

  .prime-kit.prime-reserva .detail_form .phone-input .phone-country-select,
  .prime-kit.prime-reserva .detail_form .phone-input .phone-number {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border-radius: 12px;
    border: 1px solid #e5e7eb;
    background: #fff;
    box-sizing: border-box;
  }

  .prime-kit.prime-reserva .coverage-card {
    grid-template-columns: 1fr auto;
    gap: 6px 10px;
    padding: 14px 14px 12px 44px;
    min-height: 0;
  }

  .prime-kit.prime-reserva .coverage-card .coverage-title {
    font-size: 14px;
    margin: 0;
  }

  .prime-kit.prime-reserva .coverage-card .coverage-desc {
    font-size: 12px;
    padding-left: 0;
  }

  .prime-kit.prime-reserva .coverage-card .coverage-desc::before {
    display: none;
  }

  .prime-kit.prime-reserva .coverage-card .coverage-price {
    grid-column: 2;
    grid-row: 1;
    font-size: 13px;
    align-self: center;
  }
}

@media (max-width: 900px) {
  .prime-kit.prime-results .fleet-sec.webView .row.small-mrgn {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-results .fleet-sec.webView .fleet-sec-box.details {
    padding-right: 0;
    border-right: none;
  }

  .prime-kit.prime-results .fleet-sec.webView .details-grid {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-results .fleet-bottm-con .flet-btm-rgt {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-results .rate-cutter .row {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 767px) {
  /* Override hash-custom-style.css that hides stepper on mobile */
  .prime-kit.prime-results .confirmation-con.ful-wdth {
    display: block !important;
  }
}

@media (max-width: 720px) {
  .prime-kit.prime-results .confirmation-con.ful-wdth {
    padding: 10px 12px;
  }

  .prime-kit.prime-results .confirmation-con.ful-wdth .row {
    gap: 8px 10px;
  }

  .prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box span {
    font-size: 9px;
    letter-spacing: 0.06em;
    padding: 5px 10px;
  }

  .prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box a {
    width: 20px;
    height: 20px;
    font-size: 11px;
  }
}

@media (max-width: 480px) {
  .prime-kit.prime-results .confirmation-con.ful-wdth .row {
    gap: 6px 8px;
  }

  .prime-kit.prime-results .confirmation-con.ful-wdth .confirmation-box span {
    font-size: 8px;
    letter-spacing: 0.05em;
  }
}

/* ---------------------------
   Admin Login (Prime UI Kit)
---------------------------- */
.prime-admin-login {
  min-height: 100vh;
  background:
    radial-gradient(520px circle at 12% 18%, rgba(160, 43, 133, 0.16), transparent 60%),
    radial-gradient(460px circle at 85% 80%, rgba(122, 26, 96, 0.12), transparent 60%),
    #f7f6fb;
  color: #1f2937;
  font-family: var(--pc-font-sans);
  font-size: 16px;
  line-height: 1.5;
}

.prime-admin-login .admin-login {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 24px;
}

.prime-admin-login .admin-login__content {
  width: 100%;
  max-width: 1120px;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 420px);
  gap: 40px;
  align-items: center;
}

.prime-admin-login .admin-login__intro {
  padding: 10px 8px;
}

.prime-admin-login .admin-login__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(122, 26, 96, 0.12);
  color: #5f1a49;
  border: 1px solid rgba(122, 26, 96, 0.2);
  border-radius: 999px;
  padding: 6px 14px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.prime-admin-login .admin-login__title {
  margin: 18px 0 12px;
  font-size: 34px;
  line-height: 1.15;
  color: #111114;
}

.prime-admin-login .admin-login__lead {
  font-size: 15px;
  color: #4b5563;
  max-width: 520px;
}

.prime-admin-login .admin-login__list {
  margin: 20px 0 16px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
  color: #374151;
  font-size: 14px;
}

.prime-admin-login .admin-login__list li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.prime-admin-login .admin-login__list li::before {
  content: "✓";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(122, 26, 96, 0.12);
  color: #7a1a60;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex: 0 0 20px;
}

.prime-admin-login .admin-login__note {
  font-size: 12px;
  color: #6b7280;
}

.prime-admin-login .admin-login__card {
  background: #fff;
  border-radius: 22px;
  border: 1px solid #eee6f0;
  box-shadow: var(--pc-shadow-lg);
  padding: 28px;
}

.prime-admin-login .admin-login__logo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.prime-admin-login .admin-login__logo img {
  width: 170px;
  height: auto;
}

.prime-admin-login .admin-login__logo span {
  font-size: 11px;
  font-weight: 700;
  color: #7a1a60;
  background: rgba(122, 26, 96, 0.12);
  padding: 6px 10px;
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.prime-admin-login .admin-login__card h2 {
  margin: 14px 0 6px;
  font-size: 20px;
  color: #111827;
}

.prime-admin-login .admin-login__card p {
  margin: 0 0 18px;
  color: #6b7280;
  font-size: 13px;
}

.prime-admin-login .admin-login__card label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: #374151;
  margin: 12px 0 6px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.prime-admin-login .admin-login__input {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 14px;
  background: #fff;
  color: #1f2937;
  box-sizing: border-box;
}

.prime-admin-login .admin-login__input:focus {
  outline: none;
  border-color: #7a1a60;
  box-shadow: 0 0 0 4px rgba(122, 26, 96, 0.16);
}

.prime-admin-login .admin-login__button {
  width: 100%;
  margin-top: 18px;
  border: none;
  border-radius: 999px;
  padding: 12px 16px;
  background: #7a1a60;
  color: #fff;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform var(--pc-fast) var(--pc-ease), box-shadow var(--pc-fast) var(--pc-ease);
}

.prime-admin-login .admin-login__button:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(122, 26, 96, 0.24);
}

.prime-admin-login .admin-login__error {
  margin-top: 14px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(220, 38, 38, 0.08);
  color: #b91c1c;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}

.prime-admin-login .admin-login__footer {
  margin-top: 18px;
  text-align: center;
  font-size: 12px;
  color: #9ca3af;
}

@media (max-width: 980px) {
  .prime-admin-login .admin-login__content {
    grid-template-columns: 1fr;
  }

  .prime-admin-login .admin-login__intro {
    text-align: center;
  }

  .prime-admin-login .admin-login__list li {
    justify-content: center;
  }

  .prime-admin-login .admin-login__logo {
    flex-direction: column;
  }
}

@media (max-width: 560px) {
  .prime-admin-login .admin-login__card {
    padding: 22px;
  }

  .prime-admin-login .admin-login__title {
    font-size: 28px;
  }
}

/* ---------------------------
   Pagar Page
---------------------------- */
.prime-kit.prime-pagar {
  background: var(--pc-bg);
}

.prime-kit.prime-pagar .main-wrapper {
  padding: var(--pc-8) 0 var(--pc-12);
}

.prime-kit.prime-pagar .top-heading {
  margin: 0 auto var(--pc-6);
  max-width: 1160px;
  font-size: clamp(22px, 2.4vw, 32px);
  font-style: normal;
  font-weight: 700;
  color: var(--pc-ink);
  text-align: left;
}

.prime-kit.prime-pagar #main {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 var(--pc-4);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 360px);
  gap: var(--pc-6);
  background: transparent;
}

.prime-kit.prime-pagar #order {
  float: none;
  width: auto;
}

.prime-kit.prime-pagar .SideRightContainer {
  float: none;
  width: auto;
  margin: 0;
}

.prime-kit.prime-pagar #sidebar {
  float: none;
  width: auto;
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  box-shadow: var(--pc-shadow-sm);
  margin-bottom: var(--pc-4);
}

.prime-kit.prime-pagar .sidebar-inner {
  padding: var(--pc-4);
}

.prime-kit.prime-pagar #sidebar h2 {
  margin: 0;
  padding: var(--pc-4);
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #fff !important;
  background: var(--pc-brand-700) !important;
  border-bottom: 1px solid transparent;
}

.prime-kit.prime-pagar .form-section {
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  box-shadow: var(--pc-shadow-sm);
  padding: var(--pc-6);
}

.prime-kit.prime-pagar .title-black {
  background: var(--pc-brand-700);
  color: #fff;
  border-radius: var(--pc-r-md);
  padding: 14px 16px;
  width: 100%;
}

.prime-kit.prime-pagar .form-section .form-element .field,
.prime-kit.prime-pagar .form-control,
.prime-kit.prime-pagar select,
.prime-kit.prime-pagar input[type="text"],
.prime-kit.prime-pagar input[type="email"],
.prime-kit.prime-pagar input[type="tel"] {
  border-radius: var(--pc-r-md);
  border: 1px solid var(--pc-border);
  padding: 10px 12px;
  font-family: var(--pc-font-sans);
  font-size: 14px;
}

.prime-kit.prime-pagar .submit {
  background: var(--pc-brand-500) !important;
  color: #fff !important;
  border-radius: 999px !important;
  border: none !important;
  font-weight: 700;
  padding: 0 28px;
  height: 44px;
  line-height: 44px;
  box-shadow: 0 10px 20px rgba(160, 43, 133, .22);
}

.prime-kit.prime-pagar .widget-footer-total {
  background: var(--pc-brand-700) !important;
  color: #fff !important;
  border-radius: var(--pc-r-md);
  padding: 12px 16px;
  margin: 0 var(--pc-4) var(--pc-4);
  border: none;
}

.prime-kit.prime-pagar .widget-footer-total .price {
  color: #fff !important;
}

.prime-kit.prime-pagar .on-request-message {
  margin: var(--pc-4) 0;
  padding: var(--pc-4);
  border-radius: var(--pc-r-md);
  background: rgba(160, 43, 133, 0.08);
  border: 1px solid rgba(160, 43, 133, 0.2);
  color: var(--pc-ink);
}

.prime-kit.prime-pagar .on-request-message h3 {
  margin: 0 0 var(--pc-2);
  font-size: 18px;
  color: var(--pc-ink);
}

.prime-kit.prime-pagar .on-request-message p {
  margin: 0 0 var(--pc-2);
  font-size: 14px;
  color: var(--pc-text);
}

.prime-kit.prime-pagar .on-request-note,
.prime-kit.prime-pagar .on-request-footer-note,
.prime-kit.prime-pagar .on-request-cost-note {
  margin: var(--pc-2) 0 0;
  font-size: 12px;
  color: var(--pc-muted);
}

.prime-kit.prime-pagar .on-request-footer-note {
  margin-top: var(--pc-3);
}

.prime-kit.prime-pagar .on-request-cost-note {
  padding: 0 var(--pc-4) var(--pc-4);
}

.prime-kit.prime-pagar .main-wrapper {
  background: var(--pc-bg);
  padding: 32px 0 72px;
  overflow: visible;
}

.prime-kit.prime-pagar .prime-pagar-shell {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  gap: 24px;
}

.prime-kit.prime-pagar .prime-pagar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.prime-kit.prime-pagar .prime-pagar-logo {
  display: inline-flex;
  align-items: center;
}

.prime-kit.prime-pagar .prime-pagar-logo img {
  height: 52px;
  width: auto;
}

.prime-kit.prime-pagar .prime-pagar-title h1 {
  margin: 0 0 6px;
  font-size: clamp(24px, 2.8vw, 34px);
  font-weight: 700;
  color: var(--pc-ink);
}

.prime-kit.prime-pagar .prime-pagar-title p {
  margin: 0;
  font-size: 14px;
  color: var(--pc-muted);
  max-width: 680px;
}

.prime-kit.prime-pagar #main.prime-pagar-content {
  max-width: none;
  padding: 0;
  margin: 0;
  width: 100%;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
  gap: 24px;
  align-items: start;
}

.prime-kit.prime-pagar #contents {
  float: none;
  width: 100%;
}

.prime-kit.prime-pagar .reserve-page #contents,
.prime-kit.prime-pagar .reserve-page #sidebar {
  float: none !important;
  width: 100% !important;
  margin: 0;
}

.prime-kit.prime-pagar #contents,
.prime-kit.prime-pagar .reserve-page #contents {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.prime-kit.prime-pagar .prime-pagar-section-title {
  margin: 0 0 16px;
  padding: 12px 16px;
  border-radius: 14px;
  background: #f7eef9;
  color: #7a1a60;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  border: none;
  box-shadow: none;
}

.prime-kit.prime-pagar .form-section {
  padding: 24px;
  border-radius: 20px;
  border: none;
  box-shadow: var(--pc-shadow-sm);
  overflow: hidden;            /* contain floated .form-element children */
}

.prime-kit.prime-pagar .form-section h2 {
  border: none !important;
  color: inherit;
}

.prime-kit.prime-pagar .reserve-page #contents .form-section {
  width: 100% !important;
  border-radius: 20px !important;
  padding: 24px !important;
  border: none !important;
  box-shadow: var(--pc-shadow-sm) !important;
}

.prime-kit.prime-pagar .reserve-page #sidebar {
  border: 1px solid var(--pc-border) !important;
  box-shadow: var(--pc-shadow-sm) !important;
}

.prime-kit.prime-pagar .reserve-page #sidebar h2 {
  border: none !important;
  box-shadow: none !important;
}

.prime-kit.prime-pagar .SideRightContainer {
  width: 100%;
}

.prime-kit.prime-pagar #sidebar {
  border-radius: 20px;
}

.prime-kit.prime-pagar #sidebar h2 {
  background: #f7eef9 !important;
  color: #7a1a60 !important;
  border-bottom: 1px solid #ead9ef;
  border-radius: 20px 20px 0 0;
}

.prime-kit.prime-pagar #sidebar .sidebar-inner p {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px dashed #ead9ef;
}

.prime-kit.prime-pagar #sidebar .sidebar-inner,
.prime-kit.prime-pagar #sidebar .sidebar-inner span,
.prime-kit.prime-pagar #sidebar .sidebar-inner .label,
.prime-kit.prime-pagar #sidebar .sidebar-inner strong {
  color: var(--pc-ink) !important;
}

.prime-kit.prime-pagar #sidebar .sidebar-inner .label {
  color: var(--pc-muted) !important;
}

.prime-kit.prime-pagar #sidebar .sidebar-inner p:last-of-type {
  border-bottom: none;
}

.prime-kit.prime-pagar .widget-footer-total {
  background: #faf5fb !important;
  color: #7a1a60 !important;
  border-radius: 14px;
  box-shadow: inset 0 0 0 1px #ead9ef;
}

.prime-kit.prime-pagar .widget-footer-total .price {
  color: #7a1a60 !important;
}

.prime-kit.prime-pagar .form-section .form-element {
  float: none !important;
  width: 100% !important;
  box-sizing: border-box;
}

.prime-kit.prime-pagar .prime-pagar-form .submit {
  display: block;
  width: 100%;
  cursor: pointer;
  font-size: 16px;
  margin-top: 8px;
}

.prime-kit.prime-pagar .prime-pagar-submit {
  float: none !important;
  clear: both !important;
  display: block !important;
  width: 100% !important;
  padding: 16px 0 0 !important;
  box-sizing: border-box;
}

.prime-kit.prime-pagar .on-request-steps {
  margin: 16px 0 0;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px dashed #ead9ef;
  background: #faf7fb;
}

.prime-kit.prime-pagar .on-request-steps h4 {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 700;
  color: #4b5563;
}

.prime-kit.prime-pagar .on-request-steps ul {
  margin: 0;
  padding-left: 18px;
  color: #4b5563;
  font-size: 13px;
  display: grid;
  gap: 6px;
}

.prime-kit.prime-pagar .top-heading {
  background: transparent !important;
  font-style: normal;
}

.prime-kit.prime-pagar h1 {
  background: transparent !important;
  color: var(--pc-ink) !important;
  padding: 0 !important;
  border-radius: 0 !important;
  font-style: normal !important;
  text-shadow: none !important;
}

.prime-kit.prime-pagar .recomend-box .title-orange,
.prime-kit.prime-pagar .title-black {
  background: #f7eef9 !important;
  color: #7a1a60 !important;
  border-radius: 14px;
  padding: 12px 16px;
  font-size: 16px !important;
}

.prime-kit.prime-pagar .recomend-box .title-orange img {
  display: none !important;
}

.prime-kit.prime-pagar .form-section .form-element .field,
.prime-kit.prime-pagar .form-section select {
  border-radius: var(--pc-r-md) !important;
  border: 1px solid var(--pc-border) !important;
  height: auto !important;
  min-height: 44px;
}

.prime-kit.prime-pagar #sidebar .widget-footer-total {
  border: 1px solid #ead9ef !important;
  box-shadow: none !important;
}

@media (max-width: 980px) {
  .prime-kit.prime-pagar #main,
  .prime-kit.prime-pagar #main.prime-pagar-content {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-pagar .prime-pagar-header {
    align-items: flex-start;
  }

  .prime-kit.prime-pagar #order {
    display: block;
    width: 100%;
  }

  .prime-kit.prime-pagar #contents {
    display: block;
    width: 100% !important;
  }

  .prime-kit.prime-pagar .form-section {
    width: 100% !important;
  }

  .prime-kit.prime-pagar .prime-pagar-submit .submit {
    width: 100%;
    font-size: 16px;
  }
}

@media (max-width: 640px) {
  .prime-kit.prime-pagar .prime-pagar-shell {
    padding: 0 16px;
  }

  .prime-kit.prime-pagar .prime-pagar-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .prime-kit.prime-pagar .prime-pagar-title h1 {
    font-size: 24px;
  }

  /* P4.3 — CC form table stacks on mobile */
  .prime-kit.prime-pagar #CCForm table,
  .prime-kit.prime-pagar #CCForm tbody,
  .prime-kit.prime-pagar #CCForm tr,
  .prime-kit.prime-pagar #CCForm td {
    display: block;
    width: 100% !important;
  }

  .prime-kit.prime-pagar #CCForm tr {
    margin-bottom: 8px;
  }

  .prime-kit.prime-pagar #CCForm td.not-mobile {
    display: none;
  }

  .prime-kit.prime-pagar #CCForm td {
    padding: 2px 0 !important;
    text-align: left !important;
  }

  .prime-kit.prime-pagar #CCForm .only-mobile {
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: #4b5563;
    margin-bottom: 4px;
  }

  .prime-kit.prime-pagar #CCForm .field,
  .prime-kit.prime-pagar #CCForm input[type="text"] {
    width: 100% !important;
    box-sizing: border-box;
  }

  .prime-kit.prime-pagar #CCForm .select-70 {
    min-width: 70px;
  }

  /* P4.4 — Security badge visible on mobile */
  .prime-kit.prime-pagar #CCForm .sec-img {
    display: block;
    margin: 12px auto 0;
    max-width: 100px;
  }

  /* P4.7 — terms checkbox label */
  .prime-kit.prime-pagar .row-agree-checkbox label {
    display: inline;
    cursor: pointer;
  }
}

/* P4.1 — Inline validation error messages */
.prime-kit.prime-pagar .field-error-msg {
  display: block;
  color: #dc2626;
  font-size: 12px;
  font-weight: 600;
  margin-top: 4px;
  padding-left: 2px;
}

.prime-kit.prime-pagar .row-agree-checkbox {
  display: block !important;
  clear: both;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 12px 8px;
  margin-top: 16px;
  transition: border-color 0.2s;
}

.prime-kit.prime-pagar .row-agree-checkbox label {
  cursor: pointer;
}

/* P4.4 — Mobile security badge (hidden on desktop) */
.prime-kit.prime-pagar .mobile-security-badge {
  display: none;
}

@media (max-width: 640px) {
  .prime-kit.prime-pagar .mobile-security-badge {
    display: block;
    text-align: center;
    margin: 12px 0;
  }

  .prime-kit.prime-pagar .mobile-security-badge .sec-img {
    max-width: 100px;
    margin: 0 auto;
  }
}

/* ---------------------------
   Confirmation Page
---------------------------- */
.prime-kit.prime-confirmation {
  background: var(--pc-bg);
  font-family: var(--pc-font-sans) !important;
}

.prime-kit.prime-confirmation #blue_line {
  display: none;
}

.prime-kit.prime-confirmation .prime-confirmation__shell {
  padding: var(--pc-8) 0 var(--pc-12);
}

.prime-kit.prime-confirmation .wrapper {
  width: min(1160px, calc(100% - 32px));
}

.prime-kit.prime-confirmation #reservation {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--pc-8);
  margin: 0 auto var(--pc-8);
}

.prime-kit.prime-confirmation #nav {
  margin: 0 auto var(--pc-4);
}

.prime-kit.prime-confirmation #nav > ul {
  float: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--pc-3);
  margin: 0;
  padding: 0;
}

.prime-kit.prime-confirmation #nav > ul > li {
  border: none;
  padding: 0;
  margin: 0;
  font-size: 12px;
  color: var(--pc-muted);
}

.prime-kit.prime-confirmation #nav a,
.prime-kit.prime-confirmation #nav a:visited {
  color: var(--pc-muted);
}

.prime-kit.prime-confirmation #nav > ul > li > strong {
  color: var(--pc-brand-500) !important;
}

.prime-kit.prime-confirmation #reservation > .left,
.prime-kit.prime-confirmation #reservation > .right {
  float: none;
  width: auto;
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  box-shadow: var(--pc-shadow-sm);
  padding: var(--pc-6);
}

.prime-kit.prime-confirmation #reservation > .left > .logo {
  margin-bottom: var(--pc-6);
}

.prime-kit.prime-confirmation #reservation > .right > h1 {
  text-align: left;
  font-style: normal;
  font-size: 20px;
  margin-bottom: var(--pc-4);
  color: var(--pc-ink);
}

.prime-kit.prime-confirmation #reservation > .right > .buttons {
  float: none;
  display: flex;
  flex-wrap: wrap;
  gap: var(--pc-2);
  margin-bottom: var(--pc-4);
}

.prime-kit.prime-confirmation #reservation > .right > .buttons input[type="submit"],
.prime-kit.prime-confirmation #reservation > .right > .buttons button {
  background: var(--pc-brand-500) !important;
  color: #fff !important;
  border: none;
  border-radius: 999px;
  padding: 8px 14px;
  font-weight: 600;
  box-shadow: 0 8px 18px rgba(160, 43, 133, .2);
}

.prime-kit.prime-confirmation #reservation > .right > .num_reserva {
  float: none;
  width: 100%;
  margin-top: var(--pc-4);
}

.prime-kit.prime-confirmation #reservation > .right > .num_reserva > .number_reserva {
  background: var(--pc-soft);
  border-radius: var(--pc-r-md);
  padding: var(--pc-6);
  font-size: 28px;
  letter-spacing: 0.08em;
  text-align: center;
}

.prime-kit.prime-confirmation #general_info,
.prime-kit.prime-confirmation #personal_data,
.prime-kit.prime-confirmation #costs {
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  box-shadow: var(--pc-shadow-sm);
  padding: var(--pc-6);
  margin-bottom: var(--pc-6);
}

.prime-kit.prime-confirmation #general_info {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--pc-6);
}

.prime-kit.prime-confirmation #general_info > .title {
  grid-column: 1 / -1;
}

.prime-kit.prime-confirmation #general_info > .title > span.line {
  display: none;
}

.prime-kit.prime-confirmation #general_info > .title > h3 {
  width: auto;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--pc-brand-600);
  background: none;
}

.prime-kit.prime-confirmation #general_info > .res_data > .right > h2 {
  color: var(--pc-brand-600);
  font-size: 16px;
}

.prime-kit.prime-confirmation #general_info > .res_data > .right > ul {
  list-style: none;
  margin-left: 0;
  color: var(--pc-text);
}

.prime-kit.prime-confirmation #general_info > .res_data > .right > ul li::before {
  content: "•";
  color: var(--pc-brand-500);
  margin-right: 8px;
}

.prime-kit.prime-confirmation hr {
  background-color: var(--pc-border);
  height: 1px;
}

.prime-kit.prime-confirmation #general_info > .car,
.prime-kit.prime-confirmation #general_info > .res_data {
  float: none;
  width: auto;
}

.prime-kit.prime-confirmation #personal_data > h1,
.prime-kit.prime-confirmation #costs > h1 {
  margin-bottom: var(--pc-4);
  font-size: 16px;
  color: var(--pc-ink) !important;
  background: transparent !important;
}

.prime-kit.prime-confirmation #costs h2,
.prime-kit.prime-confirmation #costs h3 {
  color: var(--pc-ink) !important;
  background: transparent !important;
}

.prime-kit.prime-confirmation #personal_data {
  float: none;
  width: 100%;
}

.prime-kit.prime-confirmation #costs {
  float: none;
  width: 100%;
}

.prime-kit.prime-confirmation #personal_data > table td:first-child {
  color: var(--pc-muted);
  text-align: left;
  padding-right: 10px;
}

.prime-kit.prime-confirmation #costs > .gray {
  background: var(--pc-soft);
  border-radius: var(--pc-r-md);
  padding: var(--pc-4);
}

.prime-kit.prime-confirmation #costs > .gray > table td:last-child {
  color: var(--pc-brand-700) !important;
  font-weight: 600;
}

.prime-kit.prime-confirmation #costs > .gray > table td:last-child.zero {
  color: var(--pc-muted) !important;
  font-weight: 400;
}

.prime-kit.prime-confirmation #costs > .gray > table td:last-child.days {
  color: var(--pc-ink) !important;
  font-weight: 600;
}

.prime-kit.prime-confirmation #costs > .total {
  background: var(--pc-brand-700) !important;
  border-radius: var(--pc-r-md);
  padding: 12px 14px;
  margin-top: var(--pc-3);
}

.prime-kit.prime-confirmation #costs > .total td {
  color: #fff !important;
}

.prime-kit.prime-confirmation #costs > .total * {
  color: #fff !important;
}

@media (max-width: 980px) {
  .prime-kit.prime-confirmation #reservation {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-confirmation #general_info {
    grid-template-columns: 1fr;
  }
}

.prime-kit.prime-confirmation .prime-confirmation__shell {
  width: min(980px, calc(100% - 32px));
  margin: 0 auto;
}

.prime-kit.prime-confirmation .prime-confirmation__status {
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  box-shadow: var(--pc-shadow-md);
  padding: var(--pc-8);
  text-align: center;
}

.prime-kit.prime-confirmation .prime-confirmation__icon {
  width: 72px;
  height: 72px;
  border-radius: 999px;
  background: var(--pc-brand-100);
  color: var(--pc-brand-700);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  font-weight: 700;
  margin: 0 auto var(--pc-4);
}

.prime-kit.prime-confirmation .prime-confirmation__status h1 {
  margin: 0 0 var(--pc-2);
  font-size: 24px;
  color: var(--pc-brand-700);
}

.prime-kit.prime-confirmation .prime-confirmation__status p {
  margin: 0 auto var(--pc-3);
  color: var(--pc-text);
  max-width: 560px;
}

.prime-kit.prime-confirmation .prime-confirmation__order {
  font-size: 13px;
  color: var(--pc-muted);
  letter-spacing: 0.02em;
}

.prime-kit.prime-confirmation .prime-confirmation__order span {
  color: var(--pc-brand-700);
  font-weight: 700;
  letter-spacing: 0.08em;
}

.prime-kit.prime-confirmation .prime-confirmation__timeline {
  position: relative;
  margin: var(--pc-6) auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--pc-2);
  max-width: 520px;
}

.prime-kit.prime-confirmation .prime-confirmation__timeline::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 10%;
  right: 10%;
  height: 2px;
  background: var(--pc-border);
}

.prime-kit.prime-confirmation .prime-confirmation__step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--pc-2);
  font-size: 12px;
  color: var(--pc-muted);
  position: relative;
  z-index: 1;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.prime-kit.prime-confirmation .prime-confirmation__step span {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--pc-border);
  border: 3px solid var(--pc-soft);
}

.prime-kit.prime-confirmation .prime-confirmation__step.is-complete span {
  background: var(--pc-brand-600);
  border-color: var(--pc-brand-100);
}

.prime-kit.prime-confirmation .prime-confirmation__step.is-current span {
  background: var(--pc-brand-500);
  border-color: var(--pc-brand-200);
}

.prime-kit.prime-confirmation .prime-confirmation__step.is-complete,
.prime-kit.prime-confirmation .prime-confirmation__step.is-current {
  color: var(--pc-brand-700);
  font-weight: 600;
}

.prime-kit.prime-confirmation .prime-confirmation__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--pc-6);
  margin: var(--pc-6) 0;
}

.prime-kit.prime-confirmation .prime-confirmation__card {
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-r-lg);
  padding: var(--pc-6);
  box-shadow: var(--pc-shadow-sm);
}

.prime-kit.prime-confirmation .prime-confirmation__card h2 {
  margin: 0 0 var(--pc-4);
  font-size: 13px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--pc-brand-600);
}

.prime-kit.prime-confirmation .prime-confirmation__car {
  display: flex;
  align-items: center;
  gap: var(--pc-3);
}

.prime-kit.prime-confirmation .prime-confirmation__car img {
  width: 110px;
  height: 70px;
  object-fit: contain;
  border-radius: var(--pc-r-sm);
  background: var(--pc-soft);
  padding: 6px;
}

.prime-kit.prime-confirmation .prime-confirmation__car-name {
  font-weight: 700;
  color: var(--pc-ink);
}

.prime-kit.prime-confirmation .prime-confirmation__car-meta {
  margin-top: 2px;
  font-size: 12px;
  color: var(--pc-muted);
}

.prime-kit.prime-confirmation .prime-confirmation__divider {
  height: 1px;
  background: var(--pc-border);
  margin: var(--pc-4) 0;
}

.prime-kit.prime-confirmation .prime-confirmation__row {
  display: flex;
  justify-content: space-between;
  gap: var(--pc-4);
  font-size: 14px;
  margin-bottom: var(--pc-2);
}

.prime-kit.prime-confirmation .prime-confirmation__row:last-child {
  margin-bottom: 0;
}

.prime-kit.prime-confirmation .prime-confirmation__row .label {
  color: var(--pc-muted);
}

.prime-kit.prime-confirmation .prime-confirmation__row .value {
  color: var(--pc-ink);
  font-weight: 600;
  text-align: right;
}

.prime-kit.prime-confirmation .prime-confirmation__total {
  background: var(--pc-brand-700);
  color: #fff;
  border-radius: var(--pc-r-lg);
  padding: var(--pc-5) var(--pc-6);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--pc-4);
  box-shadow: var(--pc-shadow-md);
}

.prime-kit.prime-confirmation .prime-confirmation__total-label {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.9;
}

.prime-kit.prime-confirmation .prime-confirmation__total-amount {
  font-size: 26px;
  font-weight: 700;
}

.prime-kit.prime-confirmation .prime-confirmation__total-note {
  font-size: 12px;
  opacity: 0.9;
}

.prime-kit.prime-confirmation .prime-confirmation__actions {
  margin: var(--pc-6) 0 var(--pc-4);
  display: flex;
  flex-wrap: wrap;
  gap: var(--pc-3);
  justify-content: center;
}

.prime-kit.prime-confirmation .prime-confirmation__btn {
  border-radius: 999px;
  padding: 10px 18px;
  border: 1px solid var(--pc-brand-600);
  color: var(--pc-brand-600);
  font-weight: 600;
  font-size: 13px;
  background: transparent;
  transition: all var(--pc-fast) var(--pc-ease);
}

.prime-kit.prime-confirmation .prime-confirmation__btn:hover {
  background: var(--pc-brand-600);
  color: #fff;
}

.prime-kit.prime-confirmation .prime-confirmation__btn--muted {
  border-color: var(--pc-border);
  color: var(--pc-muted);
}

.prime-kit.prime-confirmation .prime-confirmation__btn--muted:hover {
  background: var(--pc-soft);
  color: var(--pc-text);
}

.prime-kit.prime-confirmation .prime-confirmation__help {
  text-align: center;
  color: var(--pc-muted);
  font-size: 13px;
  margin-bottom: var(--pc-10);
}

.prime-kit.prime-confirmation .congress,
.prime-kit.prime-confirmation #footer {
  display: none;
}

.prime-kit.prime-confirmation .prime-confirmation__footer {
  text-align: center;
  font-size: 12px;
  color: var(--pc-muted);
  padding: var(--pc-6) var(--pc-4);
  border-top: 1px solid #f4ecf7;
  margin-top: var(--pc-8);
}

@media (max-width: 900px) {
  .prime-kit.prime-confirmation .prime-confirmation__grid {
    grid-template-columns: 1fr;
  }

  .prime-kit.prime-confirmation .prime-confirmation__status {
    padding: var(--pc-6);
  }

  .prime-kit.prime-confirmation .prime-confirmation__total {
    flex-direction: column;
    align-items: flex-start;
  }

  .prime-kit.prime-confirmation .prime-confirmation__total-note {
    text-align: left;
  }
}

@media (max-width: 600px) {
  .prime-kit.prime-confirmation .prime-confirmation__car {
    flex-direction: column;
    align-items: flex-start;
  }

  .prime-kit.prime-confirmation .prime-confirmation__row {
    flex-direction: column;
    align-items: flex-start;
  }

  .prime-kit.prime-confirmation .prime-confirmation__row .value {
    text-align: left;
  }

  .prime-kit.prime-confirmation .prime-confirmation__timeline {
    max-width: none;
  }
}

/* ---------------------------
   Results Page Card Tweaks
---------------------------- */
.prime-kit.prime-results .rate-cutter-row {
  display: flex;
  align-items: center;
  gap: var(--pc-4);
  flex-wrap: wrap;
}

.prime-kit.prime-results .rate-cutter .rate-cutter-tagline {
  font-size: 13px;
  color: var(--pc-brand-700);
  font-weight: 600;
  background: transparent !important;
  padding: 0;
  border: 0;
}

.prime-kit.prime-results .rate-cutter-lft {
  margin-left: auto;
}

.prime-kit.prime-results .fleet-sec-lft .car-meta {
  font-size: 12px;
  color: var(--pc-muted);
  margin-left: 6px;
}

.prime-kit.prime-results .fleet-sec-box.rate {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
  text-align: center;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-total {
  font-size: 28px;
  font-weight: 800;
  color: #1f2937;
  letter-spacing: -0.02em;
  line-height: 1.1;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-days {
  font-size: 11px;
  font-weight: 600;
  color: var(--pc-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-tax {
  font-size: 12px;
  color: var(--pc-muted);
}

.prime-kit.prime-results .fleet-sec-box.rate .rent {
  margin-top: 6px;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-actions {
  display: flex;
  gap: 8px;
  justify-content: center;
}

.prime-kit.prime-results .fleet-sec-box.rate h4 {
  font-size: 12px;
  font-weight: 600;
  color: var(--pc-muted);
  margin: 4px 0 0;
}

.prime-kit.prime-results .fleet-sec-box.rate .icon-btn {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  border: 1px solid rgba(160, 43, 133, 0.2);
  background: rgba(160, 43, 133, 0.08);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform var(--pc-fast) var(--pc-ease),
              background var(--pc-fast) var(--pc-ease),
              box-shadow var(--pc-fast) var(--pc-ease);
}

.prime-kit.prime-results .fleet-sec-box.rate .icon-btn:hover {
  transform: translateY(-2px);
  background: rgba(160, 43, 133, 0.14);
  box-shadow: 0 4px 12px rgba(160, 43, 133, 0.12);
}

.prime-kit.prime-results .fleet-sec-box.rate .icon-btn svg {
  width: 16px;
  height: 16px;
  fill: var(--pc-brand-700);
}

/* --- Discount / Promo display (Desktop) --- */
.prime-kit.prime-results .fleet-sec-box.rate .rate-promo-wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 2px;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-promo-percent {
  display: inline-block;
  background: linear-gradient(135deg, #7a1a60 0%, #a02c86 100%);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 20px;
  letter-spacing: 0.3px;
  text-transform: uppercase;
  white-space: nowrap;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-promo-old {
  font-size: 13px;
  color: #9ca3af;
  text-decoration: line-through;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-promo-badge {
  font-size: 11px;
  font-weight: 600;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-per-day {
  font-size: 15px;
  font-weight: 600;
  color: var(--pc-brand-700);
  margin-bottom: 6px;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-per-day .rate-per-day-label {
  font-weight: 400;
  font-size: 12px;
  color: var(--pc-muted);
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-savings-total {
  display: inline-block;
  background: #ecfdf5;
  color: #047857;
  font-size: 11px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 20px;
  letter-spacing: 0.3px;
  margin-bottom: 8px;
  border: 1px solid #a7f3d0;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-final-note {
  font-size: 11px;
  color: var(--pc-muted);
  margin-top: 0;
  margin-bottom: 2px;
}

.prime-kit.prime-results .fleet-sec-box.rate .rate-original-total {
  font-size: 11px;
  color: #9ca3af;
  text-decoration: line-through;
  margin-top: 1px;
}

/* Mobile results fixes */
@media (max-width: 767px) {
  .prime-kit.prime-results .lease-sec {
    display: none;
  }
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature {
  display: flex;
  flex-direction: column;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-lft {
  float: none;
  width: 100%;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-lft p {
  float: none;
  background: transparent !important;
  color: var(--pc-ink) !important;
  padding: 0 !important;
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-lft p span {
  color: var(--pc-muted);
  font-weight: 500;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-lft p .car-meta {
  font-size: 11px;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .car-outer {
  order: 1;
  margin-top: 8px;
  float: none !important;
  clear: both;
  overflow: hidden;
  height: auto;
  min-height: 120px;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .car-outer img {
  max-height: 120px;
  width: auto;
  height: auto;
}

.prime-kit.prime-results .fleet-sec-box-mrate {
  float: none;
  width: 100%;
  border-top: 1px solid #f0e6f5;
  padding-top: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
}

.prime-kit.prime-results .fleet-sec-box-mrate h3 {
  float: none;
  width: auto;
  margin: 0;
  font-size: 22px;
  font-weight: 700;
  color: var(--pc-brand-700);
}

.prime-kit.prime-results .fleet-sec-box-mrate .mdl-sec {
  float: none;
  width: auto;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.prime-kit.prime-results .fleet-sec-box-mrate .mdl-sec span {
  font-size: 12px;
  color: var(--pc-muted);
  text-transform: none;
  letter-spacing: 0;
}

.prime-kit.prime-results .fleet-sec-box-mrate .mdl-sec p {
  margin: 0;
  font-size: 11px;
  color: var(--pc-muted);
}

.prime-kit.prime-results .fleet-sec-box-mrate .rent.clasic {
  float: none;
  width: 100%;
  max-width: none;
  border-radius: 999px;
  background: var(--pc-brand-700) !important;
  color: #fff !important;
  margin-top: 8px;
}

.prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature .icon-listing {
  order: 2;
  clear: both;
}

@media (max-width: 380px) {
  .prime-kit.prime-results .fleet-sec.msmallView .small-mrgn {
    display: block;
  }
}


/* =========================================================
   16) RESULTS PAGE — MOBILE RESPONSIVE OVERHAUL
   Only affects screens ≤ 767px. Desktop untouched.
   ========================================================= */

/* --- Mobile Search Summary Bar --- */
.mobile-search-bar {
  display: none; /* hidden on desktop */
}

/* --- Filter bottom-sheet: hidden on desktop --- */
.filter-sheet-backdrop,
.filter-sheet {
  display: none;
}

@media (max-width: 767px) {
  .mobile-search-bar {
    display: block;
    position: sticky;
    top: 0;
    z-index: 100;
    background: #fff;
    border-bottom: 1px solid #eee6f0;
    box-shadow: 0 2px 8px rgba(31, 41, 55, 0.08);
    padding: 10px 0;
  }

  .mobile-search-bar .msb-inner {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .mobile-search-bar .msb-summary {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    background: #faf7fb;
    border: 1px solid #eee6f0;
    border-radius: 12px;
    padding: 8px 12px;
    cursor: pointer;
    min-width: 0;
  }

  .mobile-search-bar .msb-location {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    font-weight: 700;
    color: #1f2937;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 120px;
  }

  .mobile-search-bar .msb-location span {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .mobile-search-bar .msb-dates {
    font-size: 11px;
    color: #6b7280;
    white-space: nowrap;
    flex-shrink: 0;
  }

  .mobile-search-bar .msb-edit-icon {
    flex-shrink: 0;
    margin-left: auto;
  }

  .mobile-search-bar .msb-filter-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #faf7fb;
    border: 1px solid #eee6f0;
    border-radius: 12px;
    padding: 8px 14px;
    font-size: 12px;
    font-weight: 700;
    color: #7a1a60;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
  }

  .mobile-search-bar .msb-filter-btn:active {
    background: #f0e6f5;
  }

  /* --- Hide stepper on mobile --- */
  .prime-kit.prime-results .confirmation-con.ful-wdth {
    display: none !important;
  }

  /* --- Hide sidebar form on mobile (use search-bar to toggle) --- */
  .prime-kit.prime-results .sidebar-con {
    display: none;
  }

  .prime-kit.prime-results .sidebar-con.is-visible {
    display: block;
  }

  /* --- Filter bottom-sheet --- */
  .filter-sheet-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 998;
  }

  .filter-sheet {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
    background: #fff;
    border-radius: 20px 20px 0 0;
    box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.15);
    max-height: 70vh;
    overflow-y: auto;
    transform: translateY(100%);
    transition: transform 0.3s ease;
  }

  body.filter-sheet-open .filter-sheet-backdrop {
    display: block;
  }

  body.filter-sheet-open .filter-sheet {
    display: block;
    transform: translateY(0);
  }

  .filter-sheet-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px 12px;
    border-bottom: 1px solid #eee6f0;
    position: sticky;
    top: 0;
    background: #fff;
    border-radius: 20px 20px 0 0;
    z-index: 1;
  }

  .filter-sheet-title {
    font-size: 16px;
    font-weight: 700;
    color: #1f2937;
  }

  .filter-sheet-close {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid #e5e7eb;
    background: #faf7fb;
    font-size: 20px;
    color: #6b7280;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
  }

  .filter-sheet-body {
    padding: 16px 20px 32px;
  }

  /* Show filters inside bottom-sheet */
  .filter-sheet-body .lease-sec,
  .filter-sheet-body .kind-sec {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 16px;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  .filter-sheet-body .lease-sec h4,
  .filter-sheet-body .kind-sec h4 {
    font-size: 12px !important;
    font-weight: 800 !important;
    color: #7a1a60 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    padding-bottom: 8px !important;
    border-bottom: 2px solid #f0e6f5 !important;
    margin-bottom: 12px !important;
  }

  .filter-sheet-body .lease-sec li,
  .filter-sheet-body .kind-sec li {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 0 !important;
    border-bottom: 1px dashed #f0e6f5 !important;
    font-size: 14px !important;
    color: #4b5563 !important;
  }

  .filter-sheet-body .lease-sec li input[type="checkbox"],
  .filter-sheet-body .kind-sec li input[type="checkbox"] {
    width: 20px;
    height: 20px;
    accent-color: #7a1a60;
  }

  /* ============================================================
     MOBILE CARD v2 — Redesigned structure
     ============================================================ */

  /* --- Card container --- */
  .prime-kit.prime-results .fleet-sec.msmallView {
    padding: 0 !important;
    margin-bottom: 14px !important;
    border-radius: 14px !important;
    overflow: hidden;
  }

  .prime-kit.prime-results .fleet-sec.msmallView .row.small-mrgn {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    margin: 0;
  }

  .prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.feature {
    padding: 14px 14px 0;
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  /* Remove old empty row */
  .prime-kit.prime-results .fleet-sec.msmallView > .row:first-child:empty,
  .prime-kit.prime-results .fleet-sec.msmallView > .row:first-child {
    display: none !important;
  }

  /* Hide old fleet-bottm-con — replaced by m-price-cta-zone */
  .prime-kit.prime-results .fleet-sec.msmallView .fleet-bottm-con {
    display: none !important;
  }

  /* --- 1) Top bar: badge + agency logo --- */
  .prime-kit.prime-results .m-card-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
  }

  .prime-kit.prime-results .m-avail-badge {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    padding: 3px 10px !important;
    border-radius: 999px;
    font-size: 10px !important;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.3;
    margin: 0 !important;
    white-space: nowrap;
  }

  .prime-kit.prime-results .m-avail-badge.badge-green {
    background: #dcfce7 !important;
    color: #166534 !important;
    border: 1px solid #86efac;
  }

  .prime-kit.prime-results .m-avail-badge.badge-blue {
    background: #dbeafe !important;
    color: #1e40af !important;
    border: 1px solid #93c5fd;
  }

  .prime-kit.prime-results .m-avail-badge.badge-purple {
    background: #f4dff0 !important;
    color: #7a1a60 !important;
    border: 1px solid #cf76b8;
  }

  .prime-kit.prime-results .m-agency-logo {
    display: inline-flex !important;
    align-items: center;
    margin: 0 !important;
    padding: 0 !important;
  }

  .prime-kit.prime-results .m-agency-logo img {
    max-height: 20px;
    width: auto;
  }

  /* --- 2) Title hierarchy --- */
  .prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-lft {
    float: none;
    width: 100%;
    margin-bottom: 8px;
  }

  .prime-kit.prime-results .m-car-name {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
    margin: 0 0 2px !important;
    padding: 0 !important;
    background: none !important;
    float: none !important;
    line-height: 1.3;
  }

  .prime-kit.prime-results .m-car-similar {
    font-weight: 400 !important;
    color: #9ca3af !important;
    font-size: 14px !important;
  }

  .prime-kit.prime-results .m-car-category {
    font-size: 12px !important;
    color: #6b7280 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: 500 !important;
    background: none !important;
    float: none !important;
  }

  /* --- 3) Car image (compact) --- */
  .prime-kit.prime-results .fleet-sec.msmallView .car-outer {
    aspect-ratio: 2.2 / 1;
    min-height: 0 !important;
    height: auto !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #faf7fb;
    border: 1px solid #f0e6f5;
    border-radius: 10px;
    padding: 6px;
    overflow: hidden;
    margin: 0 0 10px;
    order: 1;
    float: none !important;
    clear: both;
  }

  .prime-kit.prime-results .fleet-sec.msmallView .car-outer img {
    max-height: 100%;
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
  }

  /* --- 4) Stats grid (2x2) --- */
  .prime-kit.prime-results .m-stats-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    margin-bottom: 0;
    order: 2;
  }

  .prime-kit.prime-results .m-stat {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    border-radius: 8px;
    background: #faf7fb;
    border: 1px solid #f0e6f5;
  }

  .prime-kit.prime-results .m-stat svg {
    flex-shrink: 0;
  }

  .prime-kit.prime-results .m-stat span {
    font-size: 11px !important;
    font-weight: 600;
    color: #4b5563 !important;
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2;
  }

  /* Hide old icon-listing on mobile (replaced by m-stats-grid) */
  .prime-kit.prime-results .fleet-sec.msmallView .icon-listing {
    display: none !important;
  }

  /* --- 5) Price + CTA zone --- */
  .prime-kit.prime-results .m-price-cta-zone {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    background: #faf7fb;
    border-top: 1px solid #f0e6f5;
  }

  .prime-kit.prime-results .m-price-block {
    flex: 1;
    min-width: 0;
  }

  .prime-kit.prime-results .m-price-amount {
    display: block !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #7a1a60 !important;
    line-height: 1.2;
    margin: 0 !important;
    padding: 0 !important;
  }

  .prime-kit.prime-results .m-price-context {
    display: block !important;
    font-size: 11px !important;
    color: #6b7280 !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    line-height: 1.3;
  }

  /* --- Discount / Promo display (Mobile) --- */
  .prime-kit.prime-results .m-price-promo {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
  }

  .prime-kit.prime-results .m-price-promo .m-price-percent {
    display: inline-block;
    background: linear-gradient(135deg, #7a1a60 0%, #a02c86 100%);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 16px;
    letter-spacing: 0.3px;
    text-transform: uppercase;
  }

  .prime-kit.prime-results .m-price-promo .m-price-old {
    font-size: 12px;
    color: #9ca3af;
    text-decoration: line-through;
  }

  .prime-kit.prime-results .m-price-promo .m-price-badge {
    display: inline-block;
    background: rgba(22, 163, 74, .10);
    color: #16a34a;
    border: 1px solid rgba(22, 163, 74, .18);
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 16px;
  }

  .prime-kit.prime-results .m-price-promo .m-price-note {
    display: none;
  }

  .prime-kit.prime-results .m-price-original-total {
    display: block !important;
    font-size: 11px !important;
    color: #9ca3af !important;
    text-decoration: line-through;
    margin: 1px 0 0 !important;
    padding: 0 !important;
  }

  .prime-kit.prime-results .m-cta-btn {
    flex-shrink: 0;
    padding: 12px 20px;
    border-radius: 10px;
    border: none;
    background: linear-gradient(135deg, #7a1a60 0%, #a02c86 100%);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    text-transform: none;
    letter-spacing: 0;
    line-height: 1.2;
    white-space: nowrap;
  }

  .prime-kit.prime-results .m-cta-btn:active {
    opacity: 0.85;
  }

  /* --- Quote/share actions inline --- */
  .prime-kit.prime-results .m-rate-actions {
    display: flex;
    gap: 8px;
    width: 100%;
    justify-content: flex-end;
    margin-top: 0;
  }

  .prime-kit.prime-results .m-rate-actions .icon-btn {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid rgba(160, 43, 133, 0.15);
    background: rgba(160, 43, 133, 0.04);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }

  .prime-kit.prime-results .m-rate-actions .icon-btn:active {
    background: rgba(160, 43, 133, 0.12);
  }

  /* --- 6) Accordion: details & benefits --- */
  .prime-kit.prime-results .m-card-details {
    border-top: 1px solid #f0e6f5;
    margin: 0;
  }

  .prime-kit.prime-results .m-card-details summary {
    padding: 10px 14px;
    font-size: 12px;
    font-weight: 700;
    color: #7a1a60;
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    user-select: none;
  }

  .prime-kit.prime-results .m-card-details summary::-webkit-details-marker {
    display: none;
  }

  .prime-kit.prime-results .m-card-details summary::after {
    content: '+';
    font-size: 16px;
    font-weight: 700;
    color: #7a1a60;
    line-height: 1;
  }

  .prime-kit.prime-results .m-card-details[open] summary::after {
    content: '\2212'; /* minus */
  }

  .prime-kit.prime-results .m-card-details-body {
    padding: 0 14px 14px;
  }

  .prime-kit.prime-results .m-details-heading {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #4b5563 !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0 0 6px !important;
    padding: 0 !important;
  }

  .prime-kit.prime-results .m-details-list {
    list-style: none !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
  }

  .prime-kit.prime-results .m-details-list li {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    font-size: 12px !important;
    color: #4b5563 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    width: auto !important;
    float: none !important;
    line-height: 1.4;
  }

  .prime-kit.prime-results .m-details-location {
    font-size: 12px !important;
    color: #6b7280 !important;
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 0 !important;
    padding: 0 !important;
  }

  .prime-kit.prime-results .m-details-extra {
    font-size: 11px !important;
    color: #9ca3af !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
  }

  /* Hide old sections that are replaced */
  .prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.mid,
  .prime-kit.prime-results .fleet-sec.msmallView .fleet-sec-box.mright-view {
    display: none !important;
  }

  /* --- Mobile: fleet-top-bar & rate-cutter compact --- */
  .prime-kit.prime-results .fleet-top-bar {
    padding: 10px 12px !important;
    border-radius: 12px !important;
    margin-bottom: 10px !important;
  }

  .prime-kit.prime-results .fleet-top-bar p {
    font-size: 12px !important;
  }

  .prime-kit.prime-results .rate-cutter {
    padding: 10px 12px !important;
    border-radius: 12px !important;
    margin-bottom: 14px !important;
  }

  .prime-kit.prime-results .rate-cutter .rate-cutter-tagline {
    display: none;
  }

  .prime-kit.prime-results .rate-cutter select.sort {
    width: 100%;
    font-size: 13px;
  }

  /* --- Mobile: hide sidebar WhatsApp (replaced by global floating btn) --- */
  .prime-kit.prime-results .sidebar-whatsapp {
    display: none !important;
  }
}

/* =========================================================
   GLOBAL FOOTER (.prime-footer)
   ========================================================= */
footer.prime-footer,
.prime-kit .prime-footer {
  background: #1b1b20 !important;
  color: #9ca3af !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  padding: 40px 0 0 !important;
  width: 100% !important;
  float: none !important;
  display: block !important;
  clear: both !important;
}

/* Override legacy .container fixed width inside footer */
footer.prime-footer > .container,
.prime-kit .prime-footer > .container {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  float: none !important;
  box-sizing: border-box !important;
}

footer.prime-footer .pf-grid,
.prime-kit .prime-footer .pf-grid {
  display: grid !important;
  grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  gap: 32px;
}

/* Brand column */
.prime-kit .prime-footer .pf-logo {
  width: 140px;
  height: auto;
  display: block;
  margin-bottom: 10px;
}

.prime-kit .prime-footer .pf-tagline {
  font-size: 12px;
  color: #6b7280;
  margin: 0;
  line-height: 1.5;
}

/* Link columns */
.prime-kit .prime-footer .pf-links h4,
.prime-kit .prime-footer .pf-contact h4 {
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #e5e7eb !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  background: none !important;
}

.prime-kit .prime-footer .pf-links ul,
.prime-kit .prime-footer .pf-contact ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.prime-kit .prime-footer .pf-links li,
.prime-kit .prime-footer .pf-contact li {
  margin-bottom: 6px !important;
  line-height: 1.4 !important;
  display: block !important;
  background: none !important;
  padding: 0 !important;
}

.prime-kit .prime-footer .pf-links a,
.prime-kit .prime-footer .pf-contact a {
  color: #9ca3af !important;
  text-decoration: none !important;
  transition: color .15s;
}

.prime-kit .prime-footer .pf-links a:hover,
.prime-kit .prime-footer .pf-contact a:hover {
  color: #fff !important;
}

/* Social icons */
.prime-kit .prime-footer .pf-social {
  display: flex;
  gap: 10px;
  margin-top: 12px;
}

.prime-kit .prime-footer .pf-social a {
  color: #6b7280;
  transition: color .15s;
}

.prime-kit .prime-footer .pf-social a:hover {
  color: #fff;
}

/* Bottom bar */
.prime-kit .prime-footer .pf-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #2a2a33;
  margin-top: 32px;
  padding: 14px 0;
  font-size: 11px;
  color: #6b7280;
}

.prime-kit .prime-footer .pf-bottom select {
  background: transparent;
  color: #9ca3af;
  border: 1px solid #374151;
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 11px;
  cursor: pointer;
}

/* --- Footer responsive (≤768px) --- */
@media (max-width: 768px) {
  footer.prime-footer,
  .prime-kit .prime-footer {
    padding: 28px 0 0 !important;
  }

  footer.prime-footer .pf-grid,
  .prime-kit .prime-footer .pf-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 24px 16px !important;
  }

  footer.prime-footer .pf-brand,
  .prime-kit .prime-footer .pf-brand {
    grid-column: 1 / -1;
    text-align: center;
  }

  footer.prime-footer .pf-logo,
  .prime-kit .prime-footer .pf-logo {
    margin: 0 auto 8px !important;
  }

  footer.prime-footer .pf-bottom,
  .prime-kit .prime-footer .pf-bottom {
    flex-direction: column;
    gap: 10px;
    text-align: center;
    margin-top: 24px;
    padding: 12px 0;
  }
}

@media (max-width: 480px) {
  footer.prime-footer .pf-grid,
  .prime-kit .prime-footer .pf-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    text-align: center;
  }

  footer.prime-footer .pf-social,
  .prime-kit .prime-footer .pf-social {
    justify-content: center;
  }
}
