.motion-page { background: #090a0d; color: #f3f1ed; }
.motion-header { position: absolute; inset: 0 0 auto; height: 88px; background: linear-gradient(180deg, rgba(7,8,10,.76), rgba(7,8,10,.1)); border-bottom-color: rgba(243,241,237,.12); }
.motion-header .wordmark { align-items: center; }
.motion-header .wordmark small { font: 500 8px/1 var(--sans); letter-spacing: .22em; color: #d5d1c7; margin: 2px 0 0 12px; }
.motion-hero { min-height: min(900px, 100svh); height: max(760px, 100svh); max-height: 1040px; position: relative; display: flex; align-items: center; overflow: hidden; isolation: isolate; background: #090a0d; }
.motion-video, .motion-video-shade, .motion-grid { position: absolute; inset: 0; width: 100%; height: 100%; }
.motion-video { z-index: -3; object-fit: cover; object-position: center 54%; opacity: .74; }
.motion-video-shade { z-index: -2; background: linear-gradient(90deg, rgba(7,8,10,.94) 0%, rgba(7,8,10,.71) 43%, rgba(7,8,10,.18) 100%), linear-gradient(0deg, #090a0d 0%, rgba(9,10,13,.05) 36%, rgba(9,10,13,.3) 100%); }
.motion-grid { z-index: -1; opacity: .22; background-image: linear-gradient(rgba(243,241,237,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(243,241,237,.055) 1px, transparent 1px); background-size: 84px 84px; mask-image: linear-gradient(90deg, transparent 4%, #000 70%); }
.motion-hero-copy { width: min(100%, 720px); margin: 0 clamp(24px, 9vw, 145px); padding-top: 74px; position: relative; z-index: 2; }
.motion-eyebrow { color: #c6c4c0; display: flex; align-items: center; flex-wrap: wrap; gap: 11px; font-size: 8px; letter-spacing: .2em; text-transform: uppercase; }
.eyebrow-divider { color: #8f8b83; }
.motion-hero h1 { font: 500 clamp(62px, 8vw, 116px)/.93 var(--display); letter-spacing: -.078em; margin: 36px 0 24px; }
.motion-hero h1 em { color: #d1b388; font: 400 1.03em/.98 var(--serif); letter-spacing: -.065em; }
.motion-hero-copy > p { max-width: 460px; color: #ceced0; font-size: 13px; line-height: 1.9; margin-bottom: 0; }
.motion-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 27px; margin-top: 32px; }
.motion-actions .button { min-height: 48px; }
.motion-actions .text-link { font-size: 10px; }
.motion-hero-foot { display: flex; flex-wrap: wrap; gap: 22px; color: rgba(225,224,221,.64); font-size: 7px; letter-spacing: .16em; margin-top: 90px; }
.motion-hero-foot span:first-child { color: #d1b388; }
.motion-hero-tools { position: absolute; right: clamp(24px, 6vw, 92px); bottom: 94px; display: flex; flex-direction: column; align-items: flex-end; gap: 14px; z-index: 3; }
.sound-toggle { background: rgba(8,9,11,.44); border: 1px solid rgba(243,241,237,.3); color: #eeece7; min-height: 38px; display: inline-flex; align-items: center; gap: 9px; padding: 0 13px; cursor: pointer; backdrop-filter: blur(12px); font-size: 9px; letter-spacing: .1em; transition: border-color .2s ease, background .2s ease; }
.sound-toggle:hover, .sound-toggle[aria-pressed="true"] { border-color: #d1b388; background: rgba(209,179,136,.14); }
.sound-icon { color: #d1b388; font-size: 14px; }
.video-credit { font-size: 7px; letter-spacing: .16em; color: rgba(238,236,231,.62); }
.motion-disclaimer { position: absolute; left: clamp(24px, 6vw, 92px); bottom: 26px; z-index: 3; display: flex; gap: 9px; align-items: center; max-width: calc(100% - 48px); color: rgba(238,236,231,.68); font-size: 8px; letter-spacing: .04em; }
.motion-disclaimer .status-dot { flex: 0 0 5px; width: 5px; height: 5px; }
.motion-intro { display: grid; grid-template-columns: .42fr 1fr; gap: 40px; padding-top: 138px; padding-bottom: 135px; border-bottom: 1px solid rgba(243,241,237,.1); }
.motion-intro .section-kicker, .motion-selection .section-kicker, .motion-contact .section-kicker { align-self: start; }
.motion-intro-copy { max-width: 910px; }
.motion-overline { color: #d1b388; text-transform: uppercase; letter-spacing: .17em; font-size: 8px; margin-bottom: 25px; }
.motion-intro h1, .motion-selection h2, .motion-contact h2 { font: 500 clamp(40px, 5.6vw, 77px)/1.05 var(--display); letter-spacing: -.07em; margin: 0; }
.motion-intro h1 em, .motion-selection h2 em, .motion-contact h2 em { color: #d1b388; font: 400 1em/1.08 var(--serif); letter-spacing: -.06em; }
.motion-intro-bottom { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-top: 40px; }
.motion-intro-bottom p { max-width: 550px; color: #aeb0b6; font-size: 12px; line-height: 1.9; margin: 0; }
.motion-index-mark { flex: 0 0 auto; color: rgba(243,241,237,.85); font: 400 42px/.9 var(--serif); letter-spacing: -.09em; }
.motion-index-mark span { color: #d1b388; font-size: .6em; margin: 0 4px; }
.motion-selection { padding-top: 124px; padding-bottom: 130px; background: #101116; }
.motion-selection-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 43px; }
.motion-selection-heading h2 { margin-top: 26px; }
.motion-selection-heading > p { max-width: 255px; color: #9fa1a8; font-size: 10px; line-height: 1.8; margin: 0 0 5px; }
.motion-filters { display: flex; align-items: center; gap: 9px; padding-bottom: 17px; margin-bottom: 25px; border-bottom: 1px solid rgba(243,241,237,.13); }
.motion-filter { display: inline-flex; align-items: center; gap: 11px; padding: 9px 12px; color: #9699a1; background: transparent; border: 1px solid transparent; text-transform: uppercase; letter-spacing: .13em; font-size: 8px; cursor: pointer; }
.motion-filter span { color: #70737a; font-size: 7px; }
.motion-filter:hover, .motion-filter.is-active { color: #f3f1ed; border-color: rgba(209,179,136,.43); background: rgba(209,179,136,.07); }
.motion-filter.is-active span { color: #d1b388; }
.motion-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 36px 14px; }
.motion-card { min-width: 0; padding: 0 0 18px; border-bottom: 1px solid rgba(243,241,237,.13); animation: card-in .35s ease both; }
.motion-card[hidden] { display: none; }
@keyframes card-in { from { opacity: .3; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.motion-card-image { display: block; position: relative; height: clamp(210px, 25vw, 355px); overflow: hidden; background: #1a1b20; isolation: isolate; }
.motion-card-image::after { content: ""; position: absolute; inset: 35% 0 0; z-index: 0; background: linear-gradient(0deg, rgba(5,6,8,.7), transparent); pointer-events: none; }
.motion-card-image img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(.9) contrast(1.03); transition: transform .8s cubic-bezier(.2,.7,.2,1), filter .4s ease; }
.motion-card-image:hover img { transform: scale(1.045); filter: saturate(1) contrast(1.04); }
.image-index, .image-arrow { position: absolute; z-index: 1; color: #f3f1ed; }
.image-index { left: 15px; bottom: 15px; font-size: 7px; letter-spacing: .16em; }
.image-visual-label { position: absolute; z-index: 2; top: 13px; left: 13px; padding: 7px 9px; border: 1px solid rgba(209,179,136,.48); background: rgba(9,10,13,.72); color: #e6cba5; font-size: 6px; letter-spacing: .14em; line-height: 1; pointer-events: none; }
.image-arrow { right: 14px; top: 13px; font-size: 17px; transition: transform .2s ease; }
.motion-card-image:hover .image-arrow { transform: translate(2px,-2px); color: #d1b388; }
.motion-card-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; margin: 16px 0 9px; color: #94969e; font-size: 7px; letter-spacing: .14em; }
.motion-card h3 { font: 500 clamp(22px, 2.2vw, 29px)/1.1 var(--display); letter-spacing: -.045em; margin: 0 0 8px; }
.motion-card > p { min-height: 40px; max-width: 380px; color: #a6a8ae; font-size: 10px; line-height: 1.7; margin: 0 0 13px; }
.motion-card-fact { color: #d5c2a5; font-size: 8px; line-height: 1.5; letter-spacing: .035em; min-height: 23px; }
.manufacturer-link { display: inline-flex; gap: 10px; align-items: center; margin-top: 12px; padding-top: 11px; border-top: 1px solid rgba(243,241,237,.14); color: #eeece7; font-size: 8px; letter-spacing: .08em; }
.manufacturer-link span { color: #d1b388; font-size: 13px; }
.manufacturer-link:hover { color: #d1b388; }
.photo-credit { display: inline-flex; align-items: center; gap: 8px; margin-top: 9px; color: #898b92; font-size: 7px; letter-spacing: .045em; }
.photo-credit span { color: #d1b388; }
.photo-credit:hover { color: #d1b388; }
.motion-note { margin: 35px 0 0; color: #777b84; font-size: 8px; line-height: 1.8; max-width: 850px; }
.motion-note span { color: #d1b388; }

.dealer-promo { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,7vw,100px); align-items:center; padding-top:112px; padding-bottom:112px; background:#101115; }
.dealer-promo-art { position:relative; min-height:480px; overflow:hidden; background:#191a1d; }
.dealer-promo-art img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.dealer-promo-art:hover img { transform:scale(1.035); }
.dealer-promo-art::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(0deg,rgba(6,7,9,.72),transparent); }
.dealer-promo-art span { position:absolute; z-index:1; bottom:18px; left:18px; color:white; font-size:8px; letter-spacing:.15em; }
.dealer-promo-copy { max-width:560px; }
.dealer-promo-copy .section-kicker { margin-bottom:32px; }
.dealer-promo-copy h2 { margin:20px 0; font:500 clamp(42px,5.5vw,76px)/1.03 var(--display); letter-spacing:-.075em; }
.dealer-promo-copy h2 em { color:var(--gold); font:400 1em var(--serif); }
.dealer-promo-copy > p:not(.motion-overline) { max-width:450px; color:#a5a7ad; font-size:12px; line-height:1.9; }
.dealer-promo-copy .button { margin-top:12px; }
.dealer-promo-note { display:block; margin-top:16px; color:#82858c; font-size:8px; letter-spacing:.08em; }
@media(max-width:850px) { .dealer-promo { grid-template-columns:1fr; } .dealer-promo-art { min-height:420px; } }
@media(max-width:600px) { .dealer-promo { padding-top:78px; padding-bottom:80px; } .dealer-promo-art { min-height:290px; } .dealer-promo-copy h2 { font-size:48px; } }
@media(prefers-reduced-motion:reduce) { .dealer-promo-art img { transition:none; } }

.motion-contact { position: relative; overflow: hidden; min-height: 650px; padding-top: 127px; padding-bottom: 30px; isolation: isolate; }
.motion-contact-orbit { position: absolute; z-index: -1; width: min(60vw, 740px); aspect-ratio: 1; right: -7%; top: 1%; border: 1px solid rgba(209,179,136,.12); border-radius: 50%; transform: scaleY(.42) rotate(-20deg); box-shadow: 0 0 0 35px rgba(209,179,136,.018), 0 0 0 70px rgba(209,179,136,.015); }
.motion-contact > .section-kicker { margin-bottom: 57px; }
.motion-contact h2 { font-size: clamp(52px, 7vw, 94px); }
.motion-contact-copy { max-width: 490px; color: #aeb0b6; font-size: 12px; line-height: 1.85; margin: 25px 0 28px; }
.motion-contact-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; }
.motion-contact-actions .text-link { font-size: 10px; }
.motion-credits { display: flex; flex-wrap: wrap; gap: 15px 30px; padding-top: 22px; margin-top: 120px; border-top: 1px solid rgba(243,241,237,.12); color: #777b84; font-size: 7px; letter-spacing: .09em; }
.motion-credits a { color: #b7a282; text-decoration: underline; text-decoration-color: rgba(183,162,130,.4); text-underline-offset: 3px; }
.motion-credits a:hover { color: #f3f1ed; }
.motion-footer { border-top: 1px solid rgba(243,241,237,.09); }
.motion-page .site-footer p { color: #83868e; }
.motion-page :focus-visible { outline: 2px solid #d1b388; outline-offset: 4px; }
.motion-page .site-nav { gap: clamp(18px, 3vw, 46px); }

@media (max-width: 850px) {
  .motion-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 31px 12px; }
  .motion-card-image { height: clamp(220px, 38vw, 345px); }
  .motion-intro { grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 600px) {
  .motion-header { height: 72px; padding: 0 22px; }
  .motion-header .wordmark { font-size: 19px; }
  .motion-header .wordmark small { font-size: 7px; margin-left: 8px; }
  .motion-header .site-nav { top: 71px; }
  .motion-hero { min-height: 760px; height: 100svh; max-height: 900px; align-items: flex-start; }
  .motion-video { object-position: 58% center; opacity: .53; }
  .motion-video-shade { background: linear-gradient(90deg, rgba(7,8,10,.9), rgba(7,8,10,.38)), linear-gradient(0deg, #090a0d 0%, rgba(9,10,13,.05) 56%, rgba(9,10,13,.2)); }
  .motion-hero-copy { margin: 0 22px; padding-top: 153px; }
  .motion-eyebrow { max-width: 300px; font-size: 7px; gap: 8px; }
  .motion-hero h1 { font-size: clamp(57px, 16vw, 84px); margin: 32px 0 21px; }
  .motion-hero-copy > p { max-width: 340px; font-size: 11px; }
  .motion-actions { align-items: flex-start; flex-direction: column; gap: 17px; margin-top: 25px; }
  .motion-hero-foot { margin-top: 49px; flex-direction: column; gap: 9px; font-size: 6px; }
  .motion-hero-tools { right: 20px; bottom: 76px; gap: 8px; }
  .sound-toggle { min-height: 34px; font-size: 8px; }
  .video-credit { font-size: 6px; }
  .motion-disclaimer { left: 22px; bottom: 19px; max-width: calc(100% - 44px); font-size: 7px; }
  .motion-intro, .motion-selection, .motion-contact { padding-left: 22px; padding-right: 22px; }
  .motion-intro { padding-top: 90px; padding-bottom: 90px; gap: 28px; }
  .motion-intro h1, .motion-selection h2 { font-size: clamp(36px, 11vw, 54px); }
  .motion-intro-bottom { margin-top: 28px; gap: 16px; }
  .motion-intro-bottom p { font-size: 10px; }
  .motion-index-mark { font-size: 31px; }
  .motion-selection { padding-top: 86px; padding-bottom: 89px; }
  .motion-selection-heading { flex-direction: column; align-items: flex-start; gap: 20px; margin-bottom: 30px; }
  .motion-selection-heading h2 { margin-top: 20px; }
  .motion-selection-heading > p { margin-left: 35px; }
  .motion-filters { gap: 2px; overflow-x: auto; }
  .motion-filter { padding: 8px 9px; gap: 7px; font-size: 7px; white-space: nowrap; }
  .motion-card-grid { grid-template-columns: 1fr; gap: 27px; }
  .motion-card-image { height: min(90vw, 410px); }
  .motion-card h3 { font-size: 27px; }
  .motion-card > p { min-height: 0; }
  .motion-contact { padding-top: 88px; min-height: 650px; }
  .motion-contact > .section-kicker { margin-bottom: 45px; }
  .motion-contact h2 { font-size: clamp(49px, 14vw, 73px); }
  .motion-contact-copy { font-size: 10px; }
  .motion-credits { flex-direction: column; gap: 12px; margin-top: 85px; }
  .motion-footer { padding-left: 22px; padding-right: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .motion-card-image img { transition: none; }
}
