/* Fleethouse Miami v6.5.0 — luxury visual refinement */
:root{--lux-gold:#caa34b;--lux-gold-hi:#e6c873;--lux-ivory:#f4efe5;--lux-muted:#aaa59a;--lux-line:rgba(202,163,75,.30);--lux-serif:"Bodoni 72","Didot","Bodoni MT","Times New Roman",serif;--lux-ui:"Avenir Next","Helvetica Neue",Arial,sans-serif}
body{font-family:var(--lux-ui)!important;color:var(--lux-ivory)!important}
.concept-kicker,.eyebrow,.sec-kicker{color:var(--lux-gold)!important;letter-spacing:.24em!important;font-weight:500!important}
.concept-hero-title,.concept-hero-title::after,.concept-showcase-head h2,.concept-fbo-copy h2,.sec-title,.about-headline,.contact-headline,.footer-col-title{font-family:var(--lux-serif)!important;font-weight:400!important;text-shadow:none!important}
.concept-hero-title,.concept-hero-title::after{letter-spacing:.015em!important;line-height:.96!important}
.sec-title,.about-headline,.contact-headline{letter-spacing:.045em!important;color:var(--lux-ivory)!important;line-height:1.03!important}
.footer-col-title{color:var(--lux-gold-hi)!important;letter-spacing:.18em!important}
.concept-brand-name,.concept-brand-city{font-family:var(--lux-serif)!important}
/* restrained champagne gold instead of flat yellow */
.concept-kicker,.concept-trust strong,.concept-car-actions a,.concept-fbo-copy strong,.concept-stars,.footer-col-title,.topseous-credit{color:var(--lux-gold-hi)!important}
.concept-btn,.btn-gold,.concept-reserve-top,.footer-book-btn{background:linear-gradient(135deg,#b7892d 0%,#e0bd62 48%,#b17d20 100%)!important;color:#090806!important;border:1px solid #d7b75d!important;box-shadow:inset 0 1px rgba(255,255,255,.18)!important;text-shadow:none!important}
.concept-btn.alt,.btn-outline{background:#050505!important;color:var(--lux-ivory)!important;border:1px solid var(--lux-gold)!important}
/* Luxury outline icon system */
.solid-icon{color:var(--lux-gold-hi)!important;filter:drop-shadow(0 0 4px rgba(202,163,75,.10))}
.solid-icon svg{width:100%;height:100%;display:block;overflow:visible;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important;vector-effect:non-scaling-stroke}
.concept-trust .solid-icon{width:30px!important;height:30px!important}
.concept-service-strip .solid-icon{width:23px!important;height:23px!important}
.concept-airport-row .solid-icon{width:27px!important;height:27px!important}
.concept-trust strong,.concept-service-strip b,.concept-airport-row b{letter-spacing:.12em!important;font-weight:500!important}
/* Footer brand: crisp SVG monogram, never raster-scaled */
.footer-brand-lockup{display:inline-flex;flex-direction:column;align-items:flex-start;gap:5px;text-decoration:none}
.footer-monogram{width:92px;height:auto;display:block}
.footer-wordmark{font-family:var(--lux-serif);font-size:15px;letter-spacing:.30em;color:var(--lux-gold-hi);white-space:nowrap}
.footer-city{font:500 8px/1 var(--lux-ui);letter-spacing:.48em;color:var(--lux-muted)}
#footer{border-top:1px solid var(--lux-line)!important}
.footer-grid,.footer-bottom{border-color:var(--lux-line)!important}
.footer-site-manager{color:#8f8a80!important}.footer-site-manager:hover{color:var(--lux-gold-hi)!important}
@media(max-width:600px){.footer-brand-lockup{align-items:center}.footer-monogram{width:78px}.footer-wordmark{font-size:13px}}


/* v6.5.1 — approved main header wordmark */
.concept-brand--wordmark{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:260px!important;
  height:78px!important;
  padding:3px 0!important;
}
.header-wordmark{
  display:block!important;
  width:245px!important;
  height:auto!important;
  max-height:72px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 1px 7px rgba(202,163,75,.10));
}
@media (max-width:900px){
  .concept-brand--wordmark{width:210px!important;height:70px!important}
  .header-wordmark{width:200px!important;max-height:64px!important}
}
@media (max-width:600px){
  .concept-brand--wordmark{
    position:absolute!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:174px!important;
    height:62px!important;
    align-items:center!important;
  }
  .header-wordmark{width:168px!important;max-height:58px!important}
}


/* =========================================================
   v6.6.1 — Typography Readability Pass
   Raises undersized desktop/mobile text while preserving
   the existing luxury hierarchy and layout.
   ========================================================= */

/* Global readable baseline */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-size: 16px; line-height: 1.65; }

/* Primary navigation / utility text */
.nav a,
.mob-nav a,
.footer-legal a,
.social-row a,
.footer-social a,
.app-nav-item span {
  font-size: 0.9rem !important;
  letter-spacing: 0.06em;
}

/* Section supporting copy */
.sec-sub,
.airport-lead,
.about-text p,
.contact-sub,
.footer-tagline,
.area-desc,
.step-desc,
.rev-text,
.car-extras,
.f-field-note,
.f-note,
.id-verify-sub,
.id-verify-note {
  font-size: 1rem !important;
  line-height: 1.65 !important;
}

/* Small labels / metadata */
.eyebrow,
.sec-eyebrow,
.airregion-label,
.apbadge-label,
.apbadge-sub,
.area-tag,
.airtag,
.car-badge,
.car-specs,
.rev-date,
.rev-source,
.stat-label,
.footer-col-title,
.footer-col li,
.f-group label,
.f-consent-label,
.dtoggle-label,
.filter-btn,
.car-btn,
.btn {
  font-size: 0.88rem !important;
  line-height: 1.4 !important;
}

/* Car names and card hierarchy */
.car-name {
  font-size: 1.18rem !important;
  line-height: 1.35 !important;
}

/* Contact details */
.contact-details,
.contact-details a,
.contact-details span {
  font-size: 1rem !important;
}

/* Footer readability */
#footer,
#footer p,
#footer li,
#footer a {
  font-size: 0.92rem;
  line-height: 1.55;
}

/* Trust bar */
.trust-item span {
  font-size: 0.95rem !important;
}
.trust-item strong {
  font-size: 1rem !important;
}

/* Form controls must never look tiny */
input,
select,
textarea,
button {
  font-size: 16px;
}

/* Desktop/tablet heading refinement */
@media (min-width: 761px) {
  .sec-title {
    font-size: clamp(2.15rem, 3vw, 3.3rem) !important;
    line-height: 1.08 !important;
  }

  .about-headline,
  .contact-headline {
    font-size: clamp(2.1rem, 2.8vw, 3.15rem) !important;
    line-height: 1.1 !important;
  }

  .footer-col-title {
    font-size: 0.95rem !important;
  }
}

/* Mobile readability — intentionally larger than previous build */
@media (max-width: 760px) {
  body {
    font-size: 17px;
    line-height: 1.65;
  }

  .sec-title {
    font-size: clamp(2rem, 9vw, 2.7rem) !important;
    line-height: 1.08 !important;
    letter-spacing: 0.015em !important;
  }

  .about-headline,
  .contact-headline {
    font-size: clamp(2rem, 8.5vw, 2.6rem) !important;
    line-height: 1.1 !important;
  }

  .sec-sub,
  .airport-lead,
  .about-text p,
  .contact-sub,
  .footer-tagline,
  .area-desc,
  .step-desc,
  .rev-text,
  .car-extras,
  .f-field-note,
  .f-note,
  .id-verify-sub,
  .id-verify-note {
    font-size: 1rem !important;
    line-height: 1.65 !important;
  }

  .eyebrow,
  .sec-eyebrow,
  .airregion-label,
  .apbadge-label,
  .apbadge-sub,
  .area-tag,
  .airtag,
  .car-badge,
  .car-specs,
  .rev-date,
  .rev-source,
  .stat-label,
  .footer-col-title,
  .footer-col li,
  .f-group label,
  .f-consent-label,
  .dtoggle-label,
  .filter-btn,
  .car-btn,
  .btn,
  .nav a,
  .mob-nav a,
  .footer-legal a,
  .social-row a {
    font-size: 0.92rem !important;
  }

  .car-name {
    font-size: 1.15rem !important;
  }

  .contact-details,
  .contact-details a,
  .contact-details span {
    font-size: 1rem !important;
  }

  #footer,
  #footer p,
  #footer li,
  #footer a {
    font-size: 0.95rem !important;
  }

  .trust-item span {
    font-size: 0.92rem !important;
  }

  /* Keep tappable controls readable and comfortably sized */
  .btn,
  .car-btn,
  .filter-btn,
  .dtoggle-btn {
    min-height: 44px;
  }

  input,
  select,
  textarea {
    font-size: 16px !important;
    line-height: 1.45 !important;
  }
}

/* Very small phones */
@media (max-width: 390px) {
  body { font-size: 16px; }

  .sec-title {
    font-size: 1.95rem !important;
  }

  .about-headline,
  .contact-headline {
    font-size: 1.9rem !important;
  }

  .sec-sub,
  .airport-lead,
  .about-text p,
  .contact-sub,
  .step-desc,
  .rev-text,
  .car-extras {
    font-size: 0.98rem !important;
  }

  .eyebrow,
  .sec-eyebrow,
  .area-tag,
  .airtag,
  .car-specs,
  .footer-col li,
  .f-group label,
  .f-note,
  .f-consent-label {
    font-size: 0.9rem !important;
  }
}


/* =========================================================
   v6.6.2 — Full Vehicle Photo / Larger Card Image Pass
   Show the entire vehicle instead of cropping card photos.
   ========================================================= */

/* Larger, taller visual area on every vehicle card */
.car-img-wrap {
  aspect-ratio: 4 / 3 !important;
  min-height: 250px;
  background: #050607 !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Preserve the complete source photograph and complete vehicle */
.car-img-wrap > img,
.car-img-wrap .car-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  background: #050607;
}

/* Do not zoom/crop the vehicle on hover */
.car-card:hover .car-img-wrap > img,
.car-card:hover .car-img-wrap .car-img {
  transform: none !important;
}

/* Direct-reservation/exotic grid: give photos extra visual priority */
#preferredGrid .car-img-wrap {
  aspect-ratio: 4 / 3 !important;
  min-height: 270px;
}

/* Standard/Turo fleet uses the same full-car presentation */
#fleetGrid .car-img-wrap,
#fleet .car-img-wrap {
  aspect-ratio: 4 / 3 !important;
  min-height: 250px;
}

/* Keep badge above image without affecting fit */
.car-img-wrap .car-badge,
.car-img-wrap [class*="badge"] {
  z-index: 3;
}

/* Tablet */
@media (max-width: 1000px) {
  .car-img-wrap,
  #preferredGrid .car-img-wrap,
  #fleetGrid .car-img-wrap,
  #fleet .car-img-wrap {
    min-height: 235px;
    aspect-ratio: 4 / 3 !important;
  }
}

/* Mobile: taller image area so the vehicle remains completely visible */
@media (max-width: 600px) {
  .car-img-wrap,
  #preferredGrid .car-img-wrap,
  #fleetGrid .car-img-wrap,
  #fleet .car-img-wrap {
    aspect-ratio: 4 / 3 !important;
    min-height: 245px;
  }

  .car-img-wrap > img,
  .car-img-wrap .car-img {
    object-fit: contain !important;
    object-position: center center !important;
  }
}
