.rm-intake-modal[hidden] {
  display: none !important;
}

body.rm-contact-open,
body.rm-cookie-open {
  overflow: hidden;
}

.rm-intake-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  padding: 24px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.rm-intake-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(1, 8, 20, .84);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.rm-intake-modal__dialog {
  position: relative;
  width: min(760px, 100%);
  max-height: min(900px, calc(100vh - 48px));
  overflow: auto;
  overscroll-behavior: contain;
  color: #edf5ff;
  background:
    radial-gradient(circle at 90% 0, rgba(39, 121, 255, .2), transparent 38%),
    linear-gradient(145deg, #07111f, #0b1729 54%, #09111d);
  border: 1px solid rgba(108, 174, 255, .34);
  border-radius: 28px;
  box-shadow: 0 30px 90px rgba(0, 0, 0, .58);
}

.rm-intake-modal__header {
  position: sticky;
  top: 0;
  z-index: 2;
  display: block;
  padding: 28px 84px 22px 30px;
  background: linear-gradient(180deg, rgba(7, 17, 31, .99) 75%, rgba(7, 17, 31, .9));
  border-bottom: 1px solid rgba(255, 255, 255, .09);
}

.rm-intake-modal__eyebrow {
  margin: 0 0 7px;
  color: #64a9ff;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.rm-intake-modal__header h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.45rem, 3vw, 2rem);
  line-height: 1.15;
}

.rm-intake-modal__header p {
  max-width: 560px;
  margin: 9px 0 0;
  color: #b8c8dc;
  font-size: .96rem;
  line-height: 1.55;
}

.rm-intake-modal__close {
  position: absolute;
  top: 22px;
  right: 24px;
  z-index: 3;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  color: #fff;
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .17);
  border-radius: 50%;
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
}

.rm-intake-modal__close:hover,
.rm-intake-modal__close:focus-visible {
  background: rgba(64, 139, 255, .22);
  border-color: #65aaff;
  outline: none;
}

.rm-intake-form {
  padding: 26px 30px 30px;
}

.rm-intake-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.rm-intake-field {
  display: grid;
  gap: 8px;
}

.rm-intake-field--wide {
  grid-column: 1 / -1;
}

.rm-intake-field label {
  color: #e9f3ff;
  font-size: .88rem;
  font-weight: 750;
}

.rm-intake-field > span {
  color: #e9f3ff;
  font-size: .88rem;
  font-weight: 750;
}

.rm-intake-required {
  color: #62a8ff;
}

.rm-intake-field input,
.rm-intake-field select,
.rm-intake-field textarea {
  width: 100%;
  min-height: 50px;
  box-sizing: border-box;
  padding: 12px 14px;
  color: #f8fbff;
  background: rgba(255, 255, 255, .055);
  border: 1px solid rgba(177, 204, 235, .25);
  border-radius: 13px;
  font: inherit;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.rm-intake-field textarea {
  min-height: 88px;
  resize: vertical;
}

.rm-intake-field select {
  color-scheme: dark;
}

.rm-intake-field input::placeholder,
.rm-intake-field textarea::placeholder {
  color: #8295ad;
}

.rm-intake-field input:focus,
.rm-intake-field select:focus,
.rm-intake-field textarea:focus {
  background: rgba(255, 255, 255, .08);
  border-color: #4c9cff;
  box-shadow: 0 0 0 4px rgba(53, 139, 255, .14);
  outline: none;
}

.rm-intake-field [aria-invalid="true"] {
  border-color: #ff7272;
  box-shadow: 0 0 0 3px rgba(255, 83, 83, .13);
}

.rm-intake-help,
.rm-intake-error,
.rm-intake-field small {
  margin: 0;
  font-size: .78rem;
  line-height: 1.4;
}

.rm-intake-help {
  color: #91a5bd;
}

.rm-intake-error,
.rm-intake-field small {
  min-height: 1.1em;
  color: #ff9a9a;
  font-weight: 650;
}

.rm-intake-form__footer {
  display: grid;
  gap: 15px;
  margin-top: 24px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .09);
}

.rm-intake-form__privacy {
  margin: 20px 0 0;
  color: #9babc0;
  font-size: .78rem;
  line-height: 1.5;
}

.rm-intake-form__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 4px;
}

.rm-intake-action,
.rm-intake-form__clear {
  min-height: 52px;
  padding: 13px 18px;
  border-radius: 999px;
  font: inherit;
  font-weight: 850;
  cursor: pointer;
}

.rm-intake-action {
  color: #fff;
  border: 0;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .24);
}

.rm-intake-action--whatsapp {
  background: linear-gradient(135deg, #21b758, #2dd66b);
}

.rm-intake-action--sms {
  background: linear-gradient(135deg, #1e70ec, #438dff);
}

.rm-intake-action:hover,
.rm-intake-action:focus-visible,
.rm-intake-action.is-preferred {
  filter: brightness(1.08);
  outline: 3px solid rgba(118, 181, 255, .3);
  outline-offset: 2px;
}

.rm-intake-form__clear {
  justify-self: start;
  min-height: 42px;
  padding: 9px 15px;
  color: #b9c9dc;
  background: transparent;
  border: 1px solid rgba(177, 204, 235, .23);
  font-size: .82rem;
  margin-top: 12px;
}

.rm-intake-form__clear:hover,
.rm-intake-form__clear:focus-visible {
  color: #fff;
  border-color: #6eafff;
  outline: none;
}

.rm-intake-form__status {
  min-height: 1.3em;
  margin: 8px 0 0;
  color: #80c2ff;
  font-size: .8rem;
  font-weight: 700;
}

.rm-intake-honeypot {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
}

.rm-intake-photo__label {
  display: block;
  margin-bottom: 8px;
  color: #edf5ff;
  font-size: .84rem;
  font-weight: 800;
}

.rm-intake-photo__picker {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
}

.rm-intake-photo__button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 45px;
  padding: 10px 14px;
  color: #f4f8ff;
  background: rgba(46, 113, 207, .15);
  border: 1px solid rgba(126, 183, 255, .42);
  border-radius: 13px;
  font-size: .84rem;
  font-weight: 800;
  cursor: pointer;
  transition: .2s ease;
}

.rm-intake-photo__button:hover,
.rm-intake-photo__button:focus-within {
  color: #fff;
  background: rgba(46, 124, 235, .26);
  border-color: #74b5ff;
  transform: translateY(-1px);
}

.rm-intake-photo__button input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  opacity: 0;
  pointer-events: none;
}

.rm-intake-photo__button > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  color: #91c6ff;
  background: rgba(91, 158, 255, .18);
  border-radius: 7px;
  font-size: 17px;
}

.rm-intake-photo__clear {
  min-height: 40px;
  padding: 8px 10px;
  color: #ffb9b9;
  background: transparent;
  border: 0;
  font: inherit;
  font-size: .8rem;
  font-weight: 750;
  text-decoration: underline;
  cursor: pointer;
}

.rm-intake-photo__preview {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  margin-top: 12px;
}

.rm-intake-photo__preview:empty {
  display: none;
}

.rm-intake-photo__preview figure {
  position: relative;
  aspect-ratio: 4 / 3;
  margin: 0;
  overflow: hidden;
  background: #081321;
  border: 1px solid rgba(138, 188, 249, .3);
  border-radius: 12px;
}

.rm-intake-photo__preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rm-intake-photo__preview figcaption {
  position: absolute;
  right: 6px;
  bottom: 6px;
  padding: 2px 6px;
  color: #fff;
  background: rgba(2, 8, 17, .8);
  border-radius: 999px;
  font-size: .67rem;
  font-weight: 800;
}

.rm-intake-photo__help {
  display: block;
  margin-top: 9px;
  color: #91a7bf;
  font-size: .76rem;
  line-height: 1.5;
}

.rm-intake-photo [data-error-for="vehicle_images"] {
  display: block;
  min-height: 1.2em;
  margin-top: 5px;
  color: #ff9b9b;
  font-size: .76rem;
  font-weight: 750;
}

/* Professional consent window; the footer link remains the only persistent control. */
.cookie-banner {
  position: fixed !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  left: 50% !important;
  z-index: 2147482000 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  width: min(720px, calc(100% - 40px)) !important;
  max-width: none !important;
  max-height: calc(100vh - 40px) !important;
  box-sizing: border-box !important;
  overflow: auto !important;
  padding: clamp(26px, 5vw, 42px) !important;
  color: #edf5ff !important;
  background:
    radial-gradient(circle at 90% 0, rgba(38, 126, 255, .22), transparent 42%),
    linear-gradient(145deg, #07111f, #0b1729) !important;
  border: 1px solid rgba(108, 174, 255, .36) !important;
  border-radius: 26px !important;
  box-shadow: 0 0 0 100vmax rgba(1, 7, 17, .82), 0 30px 90px rgba(0, 0, 0, .62) !important;
  transform: translate(-50%, -50%) !important;
  backdrop-filter: none !important;
}

.cookie-banner[hidden] {
  display: none !important;
}

.cookie-banner h2 {
  margin: 0 0 12px !important;
  color: #fff !important;
  font-size: clamp(1.55rem, 4vw, 2.25rem) !important;
  line-height: 1.15 !important;
}

.cookie-banner p {
  max-width: 620px !important;
  margin: 0 !important;
  color: #b8c8dc !important;
  font-size: clamp(.95rem, 2vw, 1.06rem) !important;
  line-height: 1.65 !important;
}

.cookie-banner a {
  color: #72b4ff !important;
  font-weight: 750 !important;
}

.cookie-banner__actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: 26px !important;
}

.cookie-banner__actions button {
  min-height: 52px !important;
  padding: 13px 18px !important;
  border-radius: 999px !important;
  font-size: .92rem !important;
  font-weight: 850 !important;
  white-space: normal !important;
}

.cookie-banner__actions [data-cookie-accept] {
  color: #fff !important;
  background: linear-gradient(135deg, #1f71ee, #438dff) !important;
  border-color: transparent !important;
}

.cookie-banner__actions [data-cookie-reject] {
  color: #e7f2ff !important;
  background: rgba(255, 255, 255, .055) !important;
  border: 1px solid rgba(177, 204, 235, .3) !important;
}

@media (max-width: 640px) {
  .rm-intake-modal {
    align-items: end;
    padding: 0;
  }

  .rm-intake-modal__dialog {
    width: 100%;
    max-height: calc(100dvh - 18px);
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
    border-radius: 24px 24px 0 0;
  }

  .rm-intake-modal__header {
    padding: 22px 72px 18px 20px;
  }

  .rm-intake-modal__header p {
    font-size: .88rem;
  }

  .rm-intake-form {
    padding: 20px 20px 28px;
  }

  .rm-intake-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .rm-intake-field--wide {
    grid-column: auto;
  }

  .rm-intake-photo__button {
    flex: 1 1 calc(50% - 5px);
    padding-inline: 9px;
  }

  .rm-intake-photo__clear {
    flex-basis: 100%;
    text-align: left;
  }

  .rm-intake-photo__preview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rm-intake-form__actions,
  .cookie-banner__actions {
    grid-template-columns: 1fr !important;
  }

  .cookie-banner {
    width: calc(100% - 28px) !important;
    max-height: calc(100dvh - 28px) !important;
    padding: 26px 22px !important;
    border-radius: 22px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rm-intake-field input,
  .rm-intake-field select,
  .rm-intake-field textarea {
    transition: none;
  }
}

/* 2026 light, friendly contact questionnaire */
.rm-intake-modal__backdrop {
  background: rgba(20, 31, 49, .58);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.rm-intake-modal__dialog {
  color: #172033;
  background: #fff;
  border-color: #dce4ee;
  box-shadow: 0 30px 90px rgba(22, 39, 66, .24);
}

.rm-intake-modal__header {
  background: linear-gradient(180deg, rgba(255, 255, 255, .99) 78%, rgba(255, 255, 255, .94));
  border-bottom-color: #e4e9f0;
}

.rm-intake-modal__eyebrow {
  color: #1167d8;
}

.rm-intake-modal__header h2,
.rm-intake-field > span,
.rm-intake-field label,
.rm-intake-photo__label {
  color: #172033;
}

.rm-intake-modal__header p {
  color: #667386;
}

.rm-intake-modal__close {
  color: #40516a;
  background: #f3f6fa;
  border-color: #d9e1eb;
}

.rm-intake-modal__close:hover,
.rm-intake-modal__close:focus-visible {
  color: #1167d8;
  background: #eaf3ff;
  border-color: #9dc4f1;
}

.rm-intake-field input,
.rm-intake-field select,
.rm-intake-field textarea {
  color: #172033;
  color-scheme: light;
  background: #fff;
  border-color: #c9d3e0;
}

.rm-intake-field input::placeholder,
.rm-intake-field textarea::placeholder {
  color: #8c98aa;
}

.rm-intake-field input:hover,
.rm-intake-field select:hover,
.rm-intake-field textarea:hover {
  border-color: #aab7c8;
}

.rm-intake-field input:focus,
.rm-intake-field select:focus,
.rm-intake-field textarea:focus {
  color: #172033;
  background: #fff;
  border-color: #1167d8;
  box-shadow: 0 0 0 4px rgba(17, 103, 216, .12);
}

.rm-intake-field [aria-invalid="true"] {
  border-color: #b4232c;
  box-shadow: 0 0 0 3px rgba(180, 35, 44, .1);
}

.rm-intake-help,
.rm-intake-photo__help,
.rm-intake-form__privacy {
  color: #697689;
}

.rm-intake-error,
.rm-intake-field small,
.rm-intake-photo [data-error-for="vehicle_images"] {
  color: #b4232c;
}

.rm-intake-form__footer {
  border-top-color: #e4e9f0;
}

.rm-intake-form__status {
  color: #1167d8;
}

.rm-intake-form__clear {
  color: #536176;
  background: #fff;
  border-color: #c9d3e0;
}

.rm-intake-form__clear:hover,
.rm-intake-form__clear:focus-visible {
  color: #1167d8;
  background: #f8fbff;
  border-color: #9dc4f1;
}

.rm-intake-photo__button {
  color: #304055;
  background: #fff;
  border-color: #c9d3e0;
  box-shadow: 0 5px 14px rgba(31, 50, 81, .05);
}

.rm-intake-photo__button:hover,
.rm-intake-photo__button:focus-within {
  color: #1167d8;
  background: #f8fbff;
  border-color: #9dc4f1;
}

.rm-intake-photo__button > span {
  color: #1167d8;
  background: #eaf3ff;
}

.rm-intake-photo__clear {
  color: #b4232c;
}

.rm-intake-photo__preview figure {
  background: #eef2f6;
  border-color: #dfe5ed;
}

.rm-intake-photo__preview video{width:100%;height:100%;object-fit:cover;background:#101827}.rm-intake-photo__preview figure.is-video::before{content:'VIDEO';position:absolute;top:7px;left:7px;z-index:2;padding:3px 7px;border-radius:999px;background:rgba(17,32,55,.84);color:#fff;font-size:11px;font-weight:800;letter-spacing:.06em}

/* Lightweight persistent public header. No scroll listener or animation library. */
html{scroll-padding-top:clamp(96px,11vw,150px)}
.site-header{
  position:sticky!important;
  top:0!important;
  z-index:800!important;
  background:rgba(0,0,0,.94)!important;
  border-bottom:1px solid rgba(123,183,242,.16);
  box-shadow:0 12px 34px rgba(0,0,0,.28);
  -webkit-backdrop-filter:blur(14px) saturate(1.08);
  backdrop-filter:blur(14px) saturate(1.08);
  transform:translateZ(0);
}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
  .site-header{background:#000!important}
}
@media(max-width:1020px){
  /* Keep fixed mobile-menu layers relative to the viewport. A transformed or
     backdrop-filtered sticky ancestor can become the containing block for
     position:fixed descendants on mobile browsers. */
  .site-header{
    transform:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}
@media(max-width:767px){
  html{scroll-padding-top:96px}
  .site-header{background:rgba(0,0,0,.97)!important;box-shadow:0 9px 26px rgba(0,0,0,.34)}
}
