/* V30 – precision automotive theme + secure booking presentation */
body{background:var(--color-bg);color:var(--color-text)}
:focus-visible{outline-color:rgba(176,141,87,.55)}
.eyebrow,.hero-kicker{color:#68747b;letter-spacing:.14em}

.site-header{background:rgba(248,248,246,.98);border-bottom-color:#aeb7bc}
.brand__mark{border-color:#76828a;background:transparent;color:var(--color-navy)}
.site-nav a:hover{background:#e8ebec;color:var(--color-navy)}

.button--primary{
  background:var(--color-accent)!important;
  border-color:var(--color-accent)!important;
  color:var(--color-navy)!important;
}
.button--primary:hover{background:var(--color-accent-hover)!important;border-color:var(--color-accent-hover)!important;color:#fff!important}

.rental-hero{min-height:auto;background:var(--color-navy);border-bottom:1px solid #21394a}
.rental-hero__media{opacity:.16}
.rental-hero__media img{filter:grayscale(.25) contrast(1.05)}
.rental-hero__shade{background:linear-gradient(90deg,rgba(11,30,45,.98),rgba(11,30,45,.82))}
.rental-hero__content{min-height:24rem!important;padding-block:3rem 5rem!important}
.rental-hero__copy h1{max-width:13ch;color:var(--color-offwhite);letter-spacing:-.04em}
.rental-hero__copy h1 span{color:#d4b47f}
.rental-hero__copy .hero-kicker{color:#c6c2ba}
.rental-hero .button:not(.button--primary){border-color:#8e9aa1;background:transparent;color:var(--color-offwhite)}

.booking-section{position:relative;z-index:3;margin-top:-2.5rem;padding-bottom:3rem;background:transparent}
.booking-card,.availability-card{
  border:1px solid #314757!important;
  border-top:4px solid var(--color-accent)!important;
  background:var(--color-navy)!important;
  box-shadow:0 18px 40px rgba(11,30,45,.18)!important;
  color:var(--color-offwhite);
}
.booking-card__header,.availability-card__header{
  background:var(--color-navy)!important;
  border-bottom:1px solid #3a5060!important;
  color:var(--color-offwhite);
}
.booking-card__header .eyebrow,.availability-card__header .eyebrow{color:#aab3b8}
.booking-card__header h2,.availability-card__header h2{color:var(--color-offwhite);letter-spacing:-.025em}
.booking-card__days,.availability-card__days{color:#d6b77f!important;font-family:var(--font-data);font-variant-numeric:tabular-nums}
.booking-card__form,.availability-form{background:#314757!important}
.booking-card__form .form-field,.availability-form .form-field{background:var(--color-navy)!important;color:var(--color-offwhite)}
.booking-card label,.availability-card label{color:#aeb8bd!important}
.booking-card input,.booking-card select,.availability-card input,.availability-card select{
  min-height:3.35rem;
  border-color:#5c6c77!important;
  background:#f4f4f1!important;
  color:var(--color-navy)!important;
  font-variant-numeric:tabular-nums;
}
.booking-card input[type=date],.booking-card input[type=time],.availability-card input[type=date],.availability-card input[type=time]{font-family:var(--font-data)}
.booking-card__submit,.availability-form__submit{font-weight:800;letter-spacing:.055em}

.brand-section{background:#f7f7f5;border-block:1px solid #d4d8da}
.brand-links{border-top:1px solid #bfc6ca;border-bottom:1px solid #bfc6ca;padding:.75rem 0}
.brand-link{position:relative;padding:.55rem 0;color:var(--color-navy);font-weight:800}
.brand-link::after{content:"";position:absolute;left:0;right:100%;bottom:.35rem;height:2px;background:var(--color-accent);transition:right var(--motion-normal)}
.brand-link:hover::after,.brand-link:focus-visible::after{right:0}

.content-section--soft{background:#e5e9eb}
.featured-car,.catalogue-car{
  border-color:#b3bdc2!important;
  background:#f9f9f7!important;
  transition:transform var(--motion-normal),border-color var(--motion-normal),box-shadow var(--motion-normal),opacity var(--motion-normal)!important;
}
.featured-car:hover,.catalogue-car:hover{transform:translateY(-3px);border-color:var(--color-accent)!important;box-shadow:0 16px 34px rgba(11,30,45,.13)!important}
.featured-car__media,.catalogue-car__media{background:#dfe3e4}
.featured-car__category,.catalogue-car__category{background:var(--color-navy)!important;color:var(--color-offwhite)!important;border-color:var(--color-navy)!important}
.featured-car__price strong,.catalogue-car__price strong{color:#8e6b37!important}
.featured-car__rental>div,.catalogue-car__rental>div,.catalogue-car__specs>div{background:#f1f2f0!important}
.featured-car__rental span,.catalogue-car__rental span,.catalogue-car__specs dt{color:#69757c!important}
.catalogue-car__rental strong,.catalogue-car__specs dd{font-variant-numeric:tabular-nums}
.catalogue-car.is-selected{border-color:var(--color-accent)!important;box-shadow:0 0 0 2px rgba(176,141,87,.2),0 15px 32px rgba(11,30,45,.12)!important}
.fleet-filter.is-active,.fleet-filter:hover{background:var(--color-navy)!important;border-color:var(--color-navy)!important;color:var(--color-offwhite)!important}

.selection-summary{border-top-color:var(--color-accent)!important;background:#f8f8f6!important}
.selection-summary__icon{background:var(--color-navy)!important;color:var(--color-offwhite)!important}
.selection-table__row--total{background:#eee9df!important}
.selection-table__row--total strong{color:#805f32!important}

.reservation-dialog__panel{border-top:4px solid var(--color-accent);background:#f8f8f6}
.reservation-dialog__summary>div{background:#eff1f1!important}
.reservation-honeypot{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.reservation-turnstile{display:flex;justify-content:center;margin-top:1rem;min-height:4.1rem}
.reservation-consent{background:#eff1f1!important}

.help-banner{background:var(--color-navy)!important;border-top-color:var(--color-accent)!important}
.site-footer{background:#dfe4e6!important;color:#536169}

@media(max-width:47.99rem){
  .rental-hero__media{display:none}
  .rental-hero__content{min-height:15rem!important;padding-block:2rem 4rem!important}
  .rental-hero__copy h1{font-size:clamp(2.4rem,14vw,3.7rem)}
  .booking-section{margin-top:-2.5rem;padding-bottom:2rem}
  .booking-card,.availability-card{box-shadow:0 12px 26px rgba(11,30,45,.16)!important}
  .booking-card__header,.availability-card__header{padding:1rem!important}
  .booking-card__form .form-field,.availability-form .form-field{padding:.7rem!important}
  .booking-card__submit,.availability-form__submit{
    position:sticky;
    bottom:calc(.65rem + env(safe-area-inset-bottom));
    z-index:8;
    min-height:3.5rem;
    margin:.7rem!important;
    box-shadow:0 8px 18px rgba(11,30,45,.25);
  }
  .catalogue-car:hover,.featured-car:hover{transform:none}
  .reservation-turnstile{overflow:hidden;justify-content:flex-start}
}

@media(prefers-reduced-motion:reduce){.brand-link::after{transition:none}}
