/* Public-site refinement. Header/showcase use independent component names:
   legacy breakpoint rules cannot move their content or shade the vehicles. */
:root {
  --gold: #ffda00;
  --gold-light: #ffe866;
  --muted: #d5d2ce;
  --container: min(1380px, calc(100% - 48px));
  --masthead-height: calc(80px + env(safe-area-inset-top, 0px));
  --premium-border: rgba(255, 218, 0, .2);
  --premium-ease: cubic-bezier(.2, .75, .25, 1);
}
html {scroll-padding-top: calc(var(--masthead-height) + 24px); color-scheme: dark;}
body {min-width: 280px;}
body :is(input, select, textarea) {max-width: 100%;}
body :is(button, a, input, select, textarea):focus-visible {
  outline: 2px solid #ffda00; outline-offset: 5px;
}
main [hidden] {display: none !important;}
main :is(h1, h2, h3) {text-wrap: balance;}
main :is(p, li) {overflow-wrap: break-word;}
main .section {padding-block: clamp(56px, 7vw, 108px);}
main .section-heading {gap: 24px 60px; align-items: end; margin-bottom: 38px;}
main .section-heading p {color: #f4f1ea; line-height: 1.75; max-width: 440px;}
main :is(.eyebrow, .text-link, .text-arrow) {color: var(--gold);}
main :is(.button, .car-card-actions a) {min-height: 48px;}
main .button {white-space: normal; text-align: center;}
main .button b, main .button span:not([class]) {flex-shrink: 0;}
main .button [data-hero-cta] {flex-shrink: 1;}
/* Solid, independent navigation surface. No filters or translucent layer
   between the user and either the toggle or the links. */
.site-masthead {
  position: fixed; inset: 0 0 auto; z-index: 6200;
  height: var(--masthead-height); padding-top: env(safe-area-inset-top, 0px);
  background: #080808; border-bottom: 1px solid rgba(255, 218, 0, .24);
  transition: box-shadow .25s;
}
.site-masthead.scrolled {box-shadow: 0 10px 30px #0007;}
.masthead-inner {
  width: var(--container); height: 100%; margin-inline: auto;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
}
.masthead-brand {display: inline-flex; align-items: center; gap: 12px; color: #fff; flex-shrink: 0;}
.masthead-mark {display: block; width: 53px;}
.masthead-mark img {display: block; width: 100%; height: auto;}
.masthead-brand strong {display: block; font-size: 16px; font-weight: 500; letter-spacing: .045em;}
.masthead-brand small {display: block; color: var(--gold); font-size: 9px; letter-spacing: .5em; margin-top: 4px;}
.site-navigation {display: flex; align-items: center; gap: clamp(16px, 1.65vw, 30px);}
.site-navigation > a, .navigation-group > button {
  display: inline-flex; align-items: center; gap: 8px; min-height: 48px;
  background: transparent; border: 0; padding: 10px 0;
  color: #f5f3ee; font: 500 14px/1.45 var(--font);
  text-align: left; cursor: pointer; transition: color .2s;
}
.site-navigation > a:hover, .site-navigation .active, .navigation-group > button:hover {color: var(--gold);}
.navigation-group {position: relative;}
.navigation-group > button > span {transition: transform .25s;}
.navigation-group.submenu-open > button > span {transform: rotate(180deg);}
.navigation-submenu {
  display: none; position: absolute; inset: 100% auto auto -22px;
  min-width: 290px; padding: 12px; background: #101010;
  border: 1px solid var(--premium-border); border-radius: 14px;
  box-shadow: 0 24px 70px #0009;
}
.navigation-group.submenu-open .navigation-submenu {display: grid;}
.navigation-submenu a {display: block; padding: 13px 14px; color: #f5f3ee; border-radius: 8px; font-size: 14px; line-height: 1.5;}
.navigation-submenu a:hover, .navigation-submenu a:focus-visible {background: #ffda000b; color: var(--gold);}
.navigation-head, .navigation-footer, .navigation-toggle, .navigation-backdrop {display: none;}
.navigation-toggle, .navigation-head button {
  align-items: center; justify-content: center; gap: 12px;
  min-height: 48px; min-width: 48px; border: 1px solid rgba(255,218,0,.55);
  border-radius: 10px; background: #101010; color: var(--gold);
  padding: 10px 14px; cursor: pointer; font: 500 13px var(--font);
}
.navigation-toggle svg, .navigation-head svg {display: block; flex: 0 0 24px; background: none;}
.navigation-toggle path {transform-origin: 12px 12px; transition: transform .25s, opacity .2s;}
.navigation-toggle.active path:nth-child(1) {transform: translateY(6px) rotate(45deg); transform-origin: 12px 6px;}
.navigation-toggle.active path:nth-child(2) {opacity: 0;}
.navigation-toggle.active path:nth-child(3) {transform: translateY(-6px) rotate(-45deg); transform-origin: 12px 18px;}
/* In-flow composition: fixed brand promise, then a separate rotating offer.
   No absolute positioning is used for the logo, car or offer copy. */
.home-showcase {
  position: relative; isolation: isolate; background: #150103;
  margin-top: var(--masthead-height); padding: 26px 24px 32px;
}
.showcase-background {
  position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center; pointer-events: none;
}
.home-showcase::before {
  content: ""; position: absolute; z-index: -1; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, #09030499, transparent 72%), linear-gradient(0deg, #070707 0%, transparent 28%);
}
.showcase-frame {width: min(1540px, 100%); margin-inline: auto; border: 1px solid var(--premium-border); padding: 24px clamp(20px, 3vw, 48px) 12px;}
.showcase-banner {
  display: grid; grid-template-columns: minmax(180px, .6fr) minmax(0, 1.4fr);
  align-items: center; gap: 24px 56px; padding-bottom: 28px;
  border-bottom: 1px solid rgba(255,218,0,.3);
}
.showcase-crest {width: clamp(200px, 18vw, 280px); justify-self: center;}
.showcase-crest img {display: block; width: 100%; height: auto;}
.showcase-promise {text-align: center; min-width: 0;}
.showcase-promise h1 {
  margin: 0; font: 650 clamp(32px, 3.6vw, 60px)/1.06 var(--font);
  letter-spacing: -.055em; text-transform: uppercase;
  color: var(--gold); background: linear-gradient(170deg, #fff0a1 8%, #ffda00 42%, #c9960b 94%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.showcase-promise > p {margin: 14px 0 20px; color: #ffdf39; font-size: clamp(12px, 1.4vw, 23px); line-height: 1.45; text-transform: uppercase; letter-spacing: .035em;}
.showcase-contact {display: grid; justify-items: center; gap: 14px;}
.showcase-contact > b {
  display: block; width: min(610px, 100%); padding: 8px 22px;
  border-radius: 40px 12px 40px 12px; border: 1px solid #fff0a1;
  background: linear-gradient(115deg, #ffefaa, #ffdc46 42%, #b58c08 83%, #ffda00);
  box-shadow: inset 0 2px 0 #fff9, inset 0 -3px 7px #8f620044, 0 12px 28px #0003;
  color: #111; font-size: clamp(19px, 2.3vw, 36px); font-weight: 700; font-style: italic;
  line-height: 1.25; letter-spacing: -.025em;
}
.showcase-contact > a {display: inline-flex; align-items: center; gap: 12px; color: #ffdf39; min-height: 44px;}
.showcase-contact svg {width: 32px; height: 32px; padding: 6px; background: #ffdc3c; color: #090909; border-radius: 50%;}
.showcase-contact strong {font-size: clamp(25px, 2.7vw, 42px); font-weight: 500; letter-spacing: .045em; font-variant-numeric: tabular-nums;}
.showcase-slide {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center; gap: 36px; padding: 34px 0 22px;
}
.showcase-copy {min-width: 0;}
.showcase-copy-text {min-height: var(--showcase-copy-height, 200px); transition: opacity .2s;}
.showcase-eyebrow {display: block; color: var(--gold); font-size: clamp(13px, 1.12vw, 17px); font-weight: 600; letter-spacing: .055em; line-height: 1.5; text-transform: uppercase; margin-bottom: 12px;}
.showcase-copy h2 {
  display: inline-block; max-width: 100%; margin: 0 0 18px; padding: 10px 20px 12px;
  border-radius: 20px 8px 20px 8px; border: 1px solid #ffeca0;
  background: linear-gradient(115deg, #fff0ab, #edc643 48%, #b18708);
  box-shadow: inset 0 2px 0 #fff8, 0 8px 28px #0003;
  font: 750 clamp(25px, 2.65vw, 44px)/1.14 var(--font);
  letter-spacing: -.045em; color: #0b0904; text-transform: uppercase;
}
.showcase-copy p {margin: 0; max-width: 600px; font-size: clamp(15px, 1.15vw, 18px); line-height: 1.7; color: #fff;}
.showcase-actions {display: flex; align-items: center; flex-wrap: wrap; gap: 16px 28px; margin-top: 24px;}
.showcase-actions .button {min-height: 56px; padding: 16px 27px;}
.showcase-actions .text-link {min-height: 44px; display: inline-flex; align-items: center; gap: 15px; font-size: 14px;}
.showcase-vehicle {
  position: relative; min-width: 0; width: 100%; justify-self: center;
  display: grid; justify-items: center; align-content: center; gap: 12px; padding: 12px;
}
.showcase-vehicle img {
  display: block; width: 100%; height: auto; aspect-ratio: 1.9;
  object-fit: contain; object-position: center; opacity: 1; filter: none;
  mix-blend-mode: normal; transition: opacity .2s; background: transparent;
}
.showcase-vehicle-signature {display: block; color: #f5d953; font-size: clamp(16px, 1.6vw, 25px); letter-spacing: .035em; font-style: italic; font-weight: 650; text-align: center;}
.home-showcase.is-switching :is(.showcase-copy-text, .showcase-vehicle img) {opacity: 0;}
.showcase-controls {display: flex; justify-content: space-between; align-items: center; gap: 12px; border-top: 1px solid #ffffff15; padding-top: 12px;}
.showcase-pagination {display: flex; gap: 5px;}
.showcase-pagination button {border: 0; background: none; cursor: pointer; min-width: 30px; width: clamp(30px, 3vw, 44px); min-height: 44px; padding: 0;}
.showcase-pagination span {display: block; width: 100%; height: 2px; background: #ffffff40; transition: background .2s, height .2s;}
.showcase-pagination .active span {height: 3px; background: var(--gold);}
.showcase-navigation {display: flex; align-items: center; gap: 7px;}
.showcase-counter {color: #e0d9cc; font-size: 12px; margin-right: 12px; font-variant-numeric: tabular-nums;}
.showcase-counter b {font-size: 20px; color: var(--gold); font-weight: 500; margin-right: 5px;}
.showcase-navigation button {display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid #ffffff40; background: #0c0708; color: #fff; border-radius: 50%; font: 20px var(--font); cursor: pointer; transition: border-color .2s, color .2s;}
.showcase-navigation button:hover {color: var(--gold); border-color: var(--gold);}
.showcase-navigation [data-hero-pause] {font-size: 14px;}
/* A consistent editorial rhythm across the existing catalogue and pages. */
.quick-request-wrap {padding-block: 20px; background: #090909;}
.quick-request-wrap .quick-request {margin: 0; border-radius: 14px; overflow: hidden; box-shadow: 0 15px 45px #0005; border-top: 2px solid #f77a1c;}
.quick-request label {min-width: 0;}
.quick-request select, .quick-request input {width: 100%; min-width: 0; font-size: 16px;}
.quick-request .quick-label small, .quick-request label > span {color: #d2cbbf;}
.quick-request .quick-submit-button {min-width: 0; margin: 12px;}
.brand-marquee {border-block: 1px solid #ffffff0d;}
main :is(.featured-cars, .fleet-grid) {gap: 26px;}
main .car-card {border: 1px solid #ffffff20; border-radius: 18px; background: linear-gradient(150deg,#19191a,#0e0e0f); box-shadow: 0 10px 32px #0003; overflow: hidden; display: flex; flex-direction: column;}
main .car-card-media {aspect-ratio: 1.5; height: auto; flex-shrink: 0;}
main .car-card-media img {width: 100%; height: 100%; object-fit: cover;}
main .car-card-body {padding: 23px; display: flex; flex: 1; flex-direction: column;}
main .car-card-title {align-items: start; flex-wrap: wrap; gap: 12px; margin-bottom: 16px;}
main .car-card-title h3 {font-size: clamp(22px, 1.8vw, 28px); line-height: 1.2; max-width: 100%;}
main .car-card-title :is(.car-card-rental-price, .car-card-sale-price) {max-width: 100%; margin: 0; font-size: 13px;}
main .car-specs-mini {margin-bottom: 20px;}
main .car-specs-mini li {color: #efebe3; background: #ffffff05; border-color: #ffffff15;}
main .car-card-actions {margin-top: auto; gap: 10px; padding-top: 18px;}
main .car-card-actions a {white-space: normal; line-height: 1.4; padding: 12px 14px; font-size: 12px; display: flex; align-items: center; justify-content: center; flex: 1; text-align: center;}
main .service-card {border-radius: 18px; border: 1px solid #ffffff1c; box-shadow: 0 12px 32px #0003;}
main .service-card p {color: #fff;}
main .service-card h3 {line-height: 1.18;}
main .source-page-hero {padding: calc(var(--masthead-height) + 62px) 0 64px; min-height: 0;}
main .source-page-hero-grid {grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: clamp(32px, 5vw, 76px); align-items: center;}
main .source-page-hero-copy h1 {font-size: clamp(40px, 4.8vw, 76px); letter-spacing: -.055em; line-height: 1.06; margin: 18px 0 24px; max-width: 780px;}
main .source-page-hero-copy p {font-size: clamp(16px, 1.3vw, 20px); line-height: 1.7; max-width: 610px; color: #fff;}
main .source-page-hero-line {margin-top: 28px;}
main .source-page-hero-visual {width: 100%; min-width: 0; border-radius: 20px; border-color: #f5d35370; box-shadow: 16px 20px 0 -12px #ffda0028, 0 35px 85px #0007; overflow: hidden;}
main .source-page-hero-visual figcaption {gap: 12px; padding: 50px 22px 20px;}
main .source-page-hero-visual figcaption b {line-height: 1.4;}
main .source-page-hero .source-page-hero-bg {filter: none;}
main .page-hero {padding-top: calc(var(--masthead-height) + 60px); padding-bottom: 64px; min-height: 0;}
main .page-hero-content h1 {font-size: clamp(38px, 5.2vw, 82px); line-height: 1.06; letter-spacing: -.055em; max-width: 1000px;}
main .page-hero-content p {max-width: 730px; color: #fff; line-height: 1.75;}
main :is(.offer-content p, .event-copy p, .about-copy p, .experience-copy p, .car-description p) {color: #f3f0e9; line-height: 1.8;}
main .offer-aside {top: calc(var(--masthead-height) + 24px); border: 1px solid var(--premium-border); border-radius: 18px;}
main .gallery-toolbar {gap: 24px; flex-wrap: wrap;}
main .gallery-collections {grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px;}
main .gallery-collection-card {border-radius: 18px; border: 1px solid #ffffff24; overflow: hidden; min-width: 0;}
main .gallery-collection-overlay {background: linear-gradient(0deg, #000e, #0009 58%, transparent);}
main .gallery-collection-overlay strong {font-size: clamp(19px, 1.7vw, 27px); line-height: 1.2;}
main .contact-cards {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px;}
main .contact-card {border-radius: 16px; border-color: #ffffff24; padding: 28px; background: linear-gradient(130deg,#19191a,#101011); min-width: 0;}
main .contact-card strong {font-size: clamp(18px, 1.7vw, 26px); overflow-wrap: anywhere;}
main .contact-request-form {border-radius: 20px; border: 1px solid #ffffff20; background: #111112; padding: clamp(22px, 4vw, 52px);}
main .form-grid {gap: 24px;}
main .field {min-width: 0;}
main .field :is(input, select, textarea) {font-size: 16px; border-radius: 9px; min-height: 50px; background-color: #09090a; border-color: #ffffff30;}
main .field > span {color: #f3f0e9;}
main .field input:focus, main .field textarea:focus, main .field select:focus {border-color: var(--gold);}
main .car-info-grid {grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: clamp(28px, 5vw, 70px);}
main .car-detail-heading {gap: 28px; flex-wrap: wrap;}
main .car-detail-heading h1 {font-size: clamp(36px, 5vw, 76px); line-height: 1.05;}
main .car-breadcrumb {flex-wrap: wrap; row-gap: 8px;}
main .car-main-image {border-radius: 18px; overflow: hidden;}
main .vehicle-specification {min-width: 0; padding: clamp(20px, 3vw, 35px); border: 1px solid #ffffff24; border-radius: 18px; background: #111;}
main .rental-info-card {border: 1px solid #ffffff1c; border-radius: 18px;}
/* Do not squeeze the rental heading alongside a full-width paragraph on
   unfolded phones/tablets. Both start at the same container edge. */
main .car-pricing-section .rental-conditions-heading {
  display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);
  align-items:start;gap:24px clamp(24px,4vw,60px);text-align:left;
}
main .car-pricing-section .rental-conditions-heading > * {
  min-width:0;width:100%;max-width:none;margin:0;justify-self:start;
}
main .car-pricing-section .rental-conditions-heading h2 {
  max-width:23ch;margin:14px 0 0;font-size:clamp(30px,3.4vw,54px);
  line-height:1.16;letter-spacing:-.035em;overflow-wrap:break-word;
}
main .car-pricing-section .rental-conditions-heading > p {
  align-self:end;max-width:60ch;font-size:17px;line-height:1.7;
}
@media(max-width:1199px) {
  main .car-pricing-section .rental-conditions-heading {grid-template-columns:minmax(0,1fr);gap:20px}
}
.site-footer {border-top: 1px solid var(--premium-border);}
.site-footer .footer-top {grid-template-columns: 1.35fr 1fr .9fr .8fr; gap: 40px; padding-block: 65px;}
.site-footer .footer-brand {display: flex; flex-direction: column; align-items: center; text-align: center; gap: 22px;}
.site-footer .footer-brand p {margin: 0; font-size: clamp(22px, 2vw, 29px); line-height: 1.45; max-width: 360px;}
.site-footer .footer-signature {margin: 0; width: min(240px, 90%);}
.site-footer .social-links {margin: 0; justify-content: center;}
.site-footer .footer-column {min-width: 0; display: flex; flex-direction: column; align-items: flex-start;}
.site-footer .footer-column h3 {color: var(--gold); font-size: 14px; letter-spacing: .08em; text-transform: uppercase;}
.site-footer .footer-column :is(a,p) {color: #f1ece3; overflow-wrap: anywhere; line-height: 1.8;}
.site-footer .footer-column a {min-height: 36px; padding-block: 4px;}
.site-footer .footer-column a:hover {color: var(--gold);}
.site-footer .footer-bottom {gap: 16px; flex-wrap: wrap;}
/* Real perspective with a very small pointer-driven tilt. Touch devices and
   reduced-motion users get the same layout without any movement. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .depth-enabled {transition: transform .35s var(--premium-ease), box-shadow .35s, border-color .35s; transform: perspective(1100px) rotateX(var(--depth-x, 0deg)) rotateY(var(--depth-y, 0deg));}
  .depth-enabled.depth-active {transform: perspective(1100px) rotateX(var(--depth-x, 0deg)) rotateY(var(--depth-y, 0deg)) translateZ(8px); transition: transform .12s linear, box-shadow .35s, border-color .35s;}
  .reveal-ready main .depth-enabled.in-view {transform: perspective(1100px) rotateX(var(--depth-x, 0deg)) rotateY(var(--depth-y, 0deg));}
  .reveal-ready main .depth-enabled.in-view.depth-active {transform: perspective(1100px) rotateX(var(--depth-x, 0deg)) rotateY(var(--depth-y, 0deg)) translateZ(8px);}
  main .car-card.depth-active, main .gallery-collection-card.depth-active, main .contact-card.depth-active {border-color: #f3d45885; box-shadow: 0 22px 54px #0008, 0 1px 0 #ffe48c44 inset;}
  .source-page-hero-visual.depth-active {box-shadow: 22px 26px 0 -14px #ffda0036, 0 40px 90px #0008;}
}
@media (max-width: 1280px) {
  :root {--masthead-height: calc(72px + env(safe-area-inset-top, 0px));}
  .navigation-toggle {display: inline-flex;}
  .site-navigation {
    position: fixed; top: var(--masthead-height); right: 0; bottom: 0;
    width: min(440px, 100%); height: calc(100vh - var(--masthead-height));
    height: calc(100dvh - var(--masthead-height));
    display: flex; flex-direction: column; align-items: stretch; gap: 0;
    padding: 24px max(24px, env(safe-area-inset-right, 0px)) max(28px, env(safe-area-inset-bottom, 0px)) 24px;
    background: #0c0c0d; border-left: 1px solid #ffda0038;
    overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
    transform: translateX(102%); visibility: hidden; pointer-events: none;
    transition: transform .3s var(--premium-ease), visibility 0s .3s;
  }
  .site-navigation.open {transform: none; visibility: visible; pointer-events: auto; transition-delay: 0s;}
  .navigation-head {display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-bottom: 22px; color: var(--gold); font-size: 22px;}
  .navigation-head small {display: block; font-size: 9px; line-height: 1.6; letter-spacing: .09em; margin-top: 6px; color: #fff;}
  .navigation-head button {display: inline-flex; flex: 0 0 48px; padding: 10px;}
  .site-navigation > a, .navigation-group > button {width: 100%; font-size: 17px; min-height: 58px; padding: 16px 0; border-bottom: 1px solid #ffffff16; flex-shrink: 0;}
  .navigation-group {flex-shrink: 0;}
  .navigation-group > button {justify-content: space-between;}
  .navigation-submenu {position: static; min-width: 0; width: 100%; margin: 8px 0; background: #171717; box-shadow: none;}
  .navigation-submenu a {padding: 13px 10px;}
  .navigation-footer {display: grid; gap: 16px; margin-top: auto; padding-top: 32px;}
  .navigation-footer > span {font-size: 12px; color: #d3cfc7;}
  .navigation-footer > a:not(.button) {font-size: 24px; color: var(--gold);}
  .navigation-footer .button {min-height: 54px; justify-content: space-between;}
  .navigation-backdrop {
    display: block; position: fixed; z-index: 6100; inset: var(--masthead-height) 0 0;
    background: #0009; border: 0; width: 100%; opacity: 0; visibility: hidden;
    pointer-events: none; transition: opacity .3s, visibility 0s .3s;
  }
  body.menu-open .navigation-backdrop {opacity: 1; visibility: visible; pointer-events: auto; transition-delay: 0s;}
  body.menu-open .cookie-banner {visibility: hidden;}
  .showcase-banner {grid-template-columns: minmax(130px, .45fr) minmax(0, 1.55fr); gap: 20px 32px;}
  .showcase-crest {width: min(100%, 200px);}
  .showcase-promise h1 {font-size: clamp(31px, 4.4vw, 53px);}
  .showcase-slide {grid-template-columns: minmax(0, 1fr); gap: 24px;}
  .showcase-vehicle {grid-row: 1; width: min(620px, 100%); padding: 8px 0; margin-inline: auto;}
  .showcase-vehicle img {aspect-ratio: 2.15;}
  .showcase-vehicle-signature {font-size: 17px;}
  .showcase-copy {width: min(800px, 100%); margin-inline: auto;}
  .showcase-copy-text {min-height: var(--showcase-copy-height, 175px);}
  .showcase-copy h2 {font-size: clamp(27px, 4vw, 42px);}
  .showcase-actions {margin-top: 20px;}
}
@media (max-width: 1000px) {
  main .source-page-hero-grid {grid-template-columns: minmax(0,1fr);}
  main .source-page-hero-copy h1 {max-width: 800px; font-size: clamp(38px, 6.7vw, 62px);}
  main .source-page-hero-visual {max-width: 780px; justify-self: center;}
  main .gallery-collections {grid-template-columns: repeat(2, minmax(0,1fr));}
  main .contact-cards {grid-template-columns: minmax(0,1fr);}
  main .contact-card {min-height: 135px;}
  main .car-info-grid {grid-template-columns: minmax(0,1fr);}
  .site-footer .footer-top {grid-template-columns: repeat(3,minmax(0,1fr)); gap: 34px;}
  .site-footer .footer-brand {grid-column: 1 / -1; margin-bottom: 14px;}
  .quick-request-wrap .quick-request {grid-template-columns: repeat(2,minmax(0,1fr));}
  .quick-request .quick-label {display: none;}
  .quick-request label:nth-of-type(1) {grid-column: 1 / -1;}
  .quick-request .quick-submit-button {grid-column: 1 / -1;}
}
@media (max-width: 600px) {
  :root {--container: calc(100% - 32px);}
  .masthead-inner {gap: 12px;}
  .masthead-mark {width: 43px;}
  .masthead-brand {gap: 9px;}
  .masthead-brand strong {font-size: 14px;}
  .masthead-brand small {font-size: 8px;}
  .navigation-toggle {padding: 10px; gap: 8px;}
  .navigation-toggle-label {font-size: 12px;}
  .site-navigation {padding: 20px 20px max(28px, env(safe-area-inset-bottom,0px));}
  .home-showcase {padding: 16px 12px 22px;}
  .showcase-frame {padding: 20px 12px 10px; border-color: #ffda0026;}
  .showcase-banner {grid-template-columns: minmax(0,1fr); gap: 0; padding-bottom: 24px;}
  .showcase-crest {display: none;}
  .showcase-promise h1 {font-size: clamp(27px, 7.7vw, 43px); line-height: 1.1;}
  .showcase-promise > p {font-size: 11px; letter-spacing: .01em; margin: 12px 0 16px;}
  .showcase-contact {gap: 10px;}
  .showcase-contact > b {padding: 9px 12px; font-size: clamp(17px, 5.3vw, 25px);}
  .showcase-contact strong {font-size: clamp(23px, 7vw, 33px); letter-spacing: .01em;}
  .showcase-contact > a {gap: 10px;}
  .showcase-contact svg {width: 28px; height: 28px;}
  .showcase-slide {padding: 28px 0 22px; gap: 28px;}
  .showcase-vehicle {padding: 0; gap: 8px;}
  .showcase-vehicle img {aspect-ratio: 1.75;}
  .showcase-vehicle-signature {font-size: 12px; letter-spacing: .1em;}
  .showcase-eyebrow {font-size: 12px; letter-spacing: .025em; margin-bottom: 10px;}
  .showcase-copy h2 {font-size: clamp(23px, 6.7vw, 34px); padding: 10px 13px; margin-bottom: 16px; border-radius: 14px 6px;}
  .showcase-copy p {font-size: 15px; line-height: 1.65;}
  .showcase-actions {gap: 9px; align-items: stretch;}
  .showcase-actions .button {width: 100%; padding-inline: 16px;}
  .showcase-actions .text-link {justify-content: center; width: 100%;}
  .showcase-controls {flex-wrap: wrap; justify-content: center; row-gap: 2px;}
  .showcase-navigation {margin-left: auto;}
  .showcase-counter {margin-right: 5px; font-size: 10px;}
  .showcase-counter b {font-size: 17px;}
  .showcase-pagination {gap: 4px;}
  .showcase-pagination button {min-width: 25px; width: 25px;}
  .showcase-navigation button {width: 42px; height: 44px;}
  .quick-request label {padding: 20px 16px; min-height: 90px;}
  .quick-request-wrap .quick-request {border-radius: 12px;}
  main .section-heading {align-items: start; flex-direction: column;}
  main .section-heading h2 {font-size: clamp(30px, 8vw, 42px);}
  main .featured-cars, main .fleet-grid, main .gallery-collections {grid-template-columns: minmax(0,1fr); gap: 22px;}
  main .car-card-body {padding: 21px;}
  main .car-card-title h3 {font-size: 25px;}
  main .source-page-hero, main .page-hero {padding-top: calc(var(--masthead-height) + 34px); padding-bottom: 40px;}
  main .source-page-hero-copy h1, main .page-hero-content h1 {font-size: clamp(34px, 9.1vw, 48px);}
  main .source-page-hero-visual {border-radius: 14px;}
  main .source-page-hero-visual figcaption {padding: 35px 14px 14px; gap: 8px;}
  main .source-page-hero-visual figcaption b {font-size: 11px;}
  main .gallery-toolbar .button {width: 100%;}
  main .form-grid {grid-template-columns: minmax(0,1fr);}
  main .field, main .field-wide {grid-column: 1 / -1;}
  main .contact-request-form {padding: 22px 16px;}
  main .form-heading h2 {font-size: 29px;}
  main .inquiry-type-field {flex-wrap: wrap;}
  main .technical-spec-grid {grid-template-columns: minmax(0,1fr);}
  main .additional-specification ul {grid-template-columns: minmax(0,1fr);}
  .site-footer .footer-top {grid-template-columns: minmax(0,1fr); gap: 32px; padding-block: 48px;}
  .site-footer .footer-column {align-items: center; text-align: center;}
  .site-footer .footer-column h3 {margin-bottom: 12px;}
  .site-footer .footer-bottom {justify-content: center; text-align: center;}
}
@media (max-width: 360px) {
  .navigation-toggle-label {display: none;}
  .showcase-controls {justify-content: center;}
  .showcase-pagination {width: 100%; justify-content: center;}
  .showcase-navigation {margin: 0;}
  .quick-request-wrap .quick-request {grid-template-columns: minmax(0,1fr);}
}
@media (prefers-reduced-motion: reduce) {
  html {scroll-behavior: auto !important;}
  .home-showcase *, .site-masthead *, .depth-enabled {transition: none !important; animation: none !important;}
  .brand-marquee > div {animation: none !important;}
}
.brand-marquee.motion-paused > div {animation-play-state: paused;}
.gallery-slideshow.motion-paused :is(.gallery-slideshow-media img, .gallery-slideshow-progress i) {animation-play-state: paused;}
