@font-face {font-family: 'Imperium Display'; src: url('../fonts/Anton-Regular.ttf') format('truetype'); font-style: normal; font-weight: 400; font-display: swap;}
@font-face {font-family: 'Imperium Racing'; src: url('../fonts/RacingSansOne-Regular.ttf') format('truetype'); font-style: normal; font-weight: 400; font-display: swap;}
@font-face {font-family: 'Imperium Caption'; src: url('../fonts/FrancoisOne-Regular.ttf') format('truetype'); font-style: normal; font-weight: 400; font-display: swap;}
:root {--display-font: 'Imperium Display', Impact, 'Arial Narrow', sans-serif; --racing-font: 'Imperium Racing', Impact, sans-serif;}
.home-page .home-showcase {padding-top: 22px; padding-inline: clamp(12px,2.6vw,50px);}
.home-page .showcase-frame {width: min(1440px,100%); padding: 18px clamp(18px,2.2vw,36px) 8px; border-color: #e1c25080;}
.home-page .showcase-frame::before,.home-page .showcase-frame::after {width: 36%; height: 36%; border-width: 3px 3px 0 0; border-color: #c7aa36c4;}
.home-page .showcase-frame::after {border-width: 0 0 3px 3px;}
.home-page .showcase-banner {grid-template-columns: minmax(220px,.38fr) minmax(0,.62fr); gap: 24px; padding: 0 0 18px; border-color: #d7c680a3;}
.home-page .showcase-crest {width: clamp(240px,23vw,325px); max-width: 100%;}
.home-page .showcase-promise {padding-block: 10px 0;}
.home-page .showcase-promise h1 {
  font: 400 clamp(35px,4.55vw,66px)/1.12 var(--display-font); letter-spacing: .015em;
  text-wrap: balance; margin: 0; color: #f8d455;
  background: linear-gradient(180deg,#f7dd72 4%,#b8910e 36%,#fff099 51%,#ebce4c 70%,#9b7808 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  filter: none; text-shadow: none;
}
.home-page .showcase-promise > p {
  font: 400 clamp(18px,2.38vw,34px)/1.25 var(--display-font); letter-spacing: .025em;
  margin: 9px 0 18px; color: #f4d650;
}
.home-page .showcase-contact {gap: 7px;}
.home-page .showcase-contact > b {
  width: min(730px,100%); padding: 7px 18px 10px; border-radius: 45px 0 0 45px;
  font: 400 clamp(26px,3.65vw,52px)/1.04 var(--racing-font); letter-spacing: .025em;
  color: #080808; border: 0; box-shadow: inset 0 1px 1px #fff4;
  background: linear-gradient(110deg,#efce5d 0%,#ffe99b 23%,#c19b27 62%,#8c6c08 88%,#e5c348);
}
.home-page .showcase-contact > a {gap: 15px;}
.home-page .showcase-contact strong {
  font: 400 clamp(31px,3.85vw,56px)/1.15 var(--racing-font); letter-spacing: .10em;
  color: #ffdc59; background: linear-gradient(180deg,#fff19c,#e9bd38 65%,#ba910c);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.home-page .showcase-contact svg {width: 38px; height: 38px; padding: 8px; flex-shrink: 0; background: linear-gradient(140deg,#fff49f,#d9ab24);}
.home-page .showcase-slide {grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: 24px; padding: 24px 0 17px;}
.home-page .showcase-copy {width: 100%; margin: 0;}
.home-page .showcase-copy-text {min-height: var(--showcase-copy-height,190px);}
.home-page .showcase-eyebrow {font: 400 clamp(17px,1.6vw,23px)/1.25 'Imperium Caption',var(--display-font); color: #ffe13a; letter-spacing: .015em; margin-bottom: 7px;}
.home-page .showcase-copy h2 {
  font: 400 clamp(31px,3.15vw,47px)/1.14 var(--display-font); letter-spacing: .005em;
  padding: 8px 18px 10px; margin-bottom: 14px; border-radius: 27px 18px 18px 27px;
  text-align: center; background: linear-gradient(110deg,#ffe394,#eac64b 45%,#a7800c);
  border: 0; box-shadow: none; color: #080705; text-wrap: balance;
}
.home-page .showcase-copy p {font-size: 16px; line-height: 1.65; max-width: 610px; color: #fff;}
.home-page .showcase-actions {gap: 14px 24px; margin-top: 17px;}
.home-page .showcase-actions .button {min-height: 50px; padding: 12px 24px; font-size: 14px;}
.home-page .showcase-vehicle {grid-row: auto; width: 100%; max-width: 610px; padding: 6px 4px; gap: 7px;}
.home-page .showcase-vehicle img {aspect-ratio: 1.95; opacity: 1; filter: none; object-fit: contain;}
.showcase-vehicle-visual {display: grid; width: 100%; min-width: 0; align-items: center;}
.showcase-vehicle-visual.has-controls {grid-template-columns: 50px minmax(0,1fr) 50px; gap: 4px;}
.showcase-vehicle-art {min-width: 0; width: 100%;}
.showcase-side-arrow {
  display: grid; place-items: center; width: 50px; height: 50px; padding: 0;
  border: 1px solid #f4d469aa; border-radius: 50%; color: #ffe69b;
  background: linear-gradient(145deg,#2a1115,#0d080a); box-shadow: 0 8px 20px #0005,inset 0 1px 0 #ffe49820;
  cursor: pointer; touch-action: manipulation;
  transition: background .2s,color .2s,box-shadow .2s,transform .2s;
}
.showcase-side-arrow svg {width: 24px; height: 24px; display: block; transition: transform .2s;}
.showcase-side-arrow:hover {background: #f5d469; color: #170806; box-shadow: 0 8px 25px #e8b53b38;}
.showcase-side-arrow-prev:hover svg {transform: translateX(-2px);}
.showcase-side-arrow-next:hover svg {transform: translateX(2px);}
.showcase-side-arrow:active {transform: scale(.94);}
.home-page .showcase-navigation .showcase-play-toggle {
  display: inline-flex; justify-content: center; align-items: center; gap: 9px;
  width: auto; min-width: 112px; height: 44px; padding: 10px 18px;
  border: 1px solid #f4d46990; border-radius: 24px; color: #ffe6a3;
  background: linear-gradient(145deg,#281116,#11090a); font: 600 13px/1.3 var(--font);
  box-shadow: inset 0 1px 0 #ffe49815; touch-action: manipulation;
}
.home-page .showcase-navigation .showcase-play-toggle:hover {background: #f5d469; color: #170806;}
.showcase-play-toggle svg {display: block; width: 17px; height: 17px; flex: 0 0 auto;}
.showcase-play-toggle .showcase-play-icon {display: none;}
.showcase-play-toggle[aria-pressed="true"] .showcase-play-icon {display: block;}
.showcase-play-toggle[aria-pressed="true"] .showcase-pause-icon {display: none;}
.home-page .showcase-vehicle-signature {
  font: 400 clamp(24px,2.7vw,39px)/1.14 var(--racing-font); letter-spacing: .015em; margin-top: 4px;
  color: #f8d860; background: linear-gradient(180deg,#f8e390,#c9a323 49%,#f6de72 65%,#b68e19);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.home-page .home-showcase.is-switching :is(.showcase-copy-text,.showcase-vehicle img) {opacity: 0;}
.home-page .showcase-controls {border-top: 0; position: relative; padding-top: 0; min-height: 48px;}
.home-page .showcase-pagination {gap: 2px;}
.home-page .showcase-pagination button {width: 22px; min-width: 22px; display: grid; place-items: center;}
.home-page .showcase-pagination span {width: 9px; height: 9px; border-radius: 50%; background: #ffffff70;}
.home-page .showcase-pagination .active span {height: 9px; background: #ffe37b;}
.home-page .showcase-navigation button {width: 40px; height: 40px; border-color: #f0d3744f; background: #09010488;}
.home-page .showcase-counter {font-size: 11px;}
.home-page .showcase-counter b {font-size: 18px;}
.home-page .brand-marquee {background: #0b0b0b; padding-block: 23px;}
.home-page main > .section {padding-block: clamp(50px,5.5vw,85px);}
.home-page main .section-heading h2 {font-size: clamp(31px,3.2vw,46px); line-height: 1.14; letter-spacing: -.035em;}
.home-page main .section-heading p {font-size: 16px;}
.home-page main .about-intro h2 {font-size: clamp(34px,3.8vw,53px); line-height: 1.1;}
.home-page main .about-copy p {font-size: 17px; line-height: 1.85;}
.home-page main .about-copy p:first-child {font-size: 21px; line-height: 1.7;}
.home-page main .service-card > div {z-index: 3;}
@media (min-width: 1281px) {
  .home-page .site-masthead:not(.scrolled) .masthead-inner {justify-content: flex-end;}
  .home-page .site-masthead:not(.scrolled) .site-navigation {margin-left: auto;}
}
@media (max-width: 1100px) {
  .home-page .showcase-banner {grid-template-columns: minmax(140px,.3fr) minmax(0,.7fr); gap: 20px;}
  .home-page .showcase-crest {width: min(225px,100%);}
  .home-page .showcase-promise h1 {font-size: clamp(30px,4.7vw,48px);}
  .home-page .showcase-promise > p {font-size: clamp(17px,2.55vw,27px);}
  .home-page .showcase-contact > b {font-size: clamp(25px,3.8vw,42px);}
  .home-page .showcase-contact strong {font-size: clamp(28px,4vw,42px);}
  .home-page .showcase-slide {grid-template-columns: minmax(0,1fr); gap: 22px; padding-top: 28px;}
  .home-page .showcase-vehicle {grid-row: 1; width: min(610px,88%); margin-inline: auto;}
  .home-page .showcase-vehicle img {aspect-ratio: 2.1;}
  .home-page .showcase-copy {width: min(760px,100%); margin-inline: auto; text-align: center;}
  .home-page .showcase-copy p {margin-inline: auto;}
  .home-page .showcase-copy h2 {font-size: clamp(30px,4.5vw,44px);}
  .home-page .showcase-eyebrow {font-size: clamp(17px,2.3vw,23px);}
  .home-page .showcase-actions {justify-content: center;}
  .home-page .showcase-vehicle-signature {font-size: 29px;}
}
@media (max-width: 600px) {
  .showcase-vehicle-visual.has-controls {grid-template-columns: 44px minmax(0,1fr) 44px; gap: 0;}
  .showcase-side-arrow {width: 44px; height: 44px;}
  .showcase-side-arrow svg {width: 22px; height: 22px;}
  .home-page .home-showcase {padding-top: 14px; padding-inline: 10px;}
  .home-page .showcase-frame {padding: 18px 13px 8px;}
  .home-page .showcase-banner {grid-template-columns: minmax(0,1fr); padding-bottom: 20px; gap: 0;}
  .home-page .showcase-promise {padding-top: 0;}
  .home-page .showcase-promise h1 {font-size: clamp(30px,8vw,43px); letter-spacing: .005em;}
  .home-page .showcase-promise > p {font-size: clamp(16px,4.2vw,22px); letter-spacing: .005em; margin: 9px 0 15px;}
  .home-page .showcase-contact > b {font-size: clamp(24px,6.8vw,35px); padding: 9px 9px 10px; border-radius: 28px 0 0 28px; letter-spacing: .005em;}
  .home-page .showcase-contact strong {font-size: clamp(28px,8.2vw,39px); letter-spacing: .025em;}
  .home-page .showcase-contact > a {gap: 10px;}
  .home-page .showcase-contact svg {width: 30px; height: 30px; padding: 6px;}
  .home-page .showcase-slide {padding-top: 25px; gap: 20px;}
  .home-page .showcase-vehicle {width: 100%; padding: 4px 2px;}
  .home-page .showcase-vehicle img {aspect-ratio: 1.85;}
  .home-page .showcase-vehicle-signature {font-size: clamp(23px,6.2vw,29px);}
  .home-page .showcase-eyebrow {font-size: clamp(15px,4.1vw,20px);}
  .home-page .showcase-copy h2 {font-size: clamp(28px,7.5vw,37px); padding: 9px 13px 11px; margin-bottom: 14px;}
  .home-page .showcase-copy p {font-size: 15px; line-height: 1.7;}
  .home-page .showcase-actions {margin-top: 15px;}
  .home-page .showcase-actions .button {min-height: 52px;}
  .home-page .showcase-controls {justify-content: space-between; flex-wrap: nowrap; gap: 4px;}
  .home-page .showcase-navigation {gap: 4px;}
  .home-page .showcase-counter {display: none;}
  .home-page .showcase-navigation button {width: 36px; height: 42px;}
  .home-page .showcase-pagination {width: auto; gap: 0;}
  .home-page .showcase-pagination button {min-width: 21px; width: 21px;}
  .home-page main .about-copy p:first-child {font-size: 19px;}
}
