/* Interior pages share the typography and colours of the home page. */
.inner-body { background:#f2f1ee; color:#141414; }
.inner-body .site-header { color:#fff; }
.interior-hero { padding:126px 0 86px; background:#111112; color:#fff; overflow:hidden; }
.interior-breadcrumb { display:flex; align-items:center; gap:13px; font-size:12px; color:#a9a9aa; margin:0 0 47px; }
.interior-breadcrumb a { color:#eee; text-decoration:underline; text-underline-offset:4px; }
.interior-breadcrumb span:last-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.interior-hero .eyebrow { color:#c6c6c6; font-size:11px; margin:0 0 24px; }
.interior-hero-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); align-items:center; gap:7%; }
.interior-hero-copy { padding:15px 0 32px; }
.interior-hero h1,.vehicle-detail h1 { font:700 clamp(48px,5.6vw,86px)/1.06 Manrope,Arial,sans-serif; letter-spacing:-.065em; margin:0 0 30px; }
.interior-hero h1 em { color:#ed2635; font-style:normal; }
.interior-lead { font-size:clamp(17px,1.45vw,20px); line-height:1.64; color:#c8c8c8; max-width:620px; margin:0 0 37px; }
.interior-hero-links { display:flex; align-items:center; flex-wrap:wrap; gap:24px; }
.interior-hero .button,.vehicle-detail .button,.interior-contact .button { min-height:58px; }
.quiet-link { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; border-bottom:1px solid currentColor; padding:8px 0; }
.quiet-link:hover { color:#ed2635; }
.quiet-link span { font-size:17px; margin-left:8px; }
.interior-hero-image { position:relative; margin:0; height:min(550px,42vw); min-height:390px; background:#232323; }
.interior-hero-image img { display:block; width:100%; height:100%; object-fit:cover; }
.interior-hero-image figcaption { position:absolute; bottom:20px; left:20px; background:#111; color:#fff; font-size:11px; font-weight:700; letter-spacing:.12em; padding:11px 13px; }
.interior-facts { background:#e8e7e3; }
.fact-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.fact-strip div { min-height:155px; padding:40px 35px 33px 0; border-right:1px solid #ccc9c3; }
.fact-strip div + div { padding-left:45px; }
.fact-strip div:last-child { border-right:0; }
.fact-strip strong { display:block; font:700 clamp(27px,3vw,39px)/1.18 Manrope,Arial,sans-serif; letter-spacing:-.04em; }
.fact-strip span { display:block; margin-top:11px; color:#666; font-size:14px; }
.editorial-section { padding:115px 0 120px; background:#f2f1ee; }
.editorial-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1fr); gap:11%; }
.editorial-grid .eyebrow { font-size:11px; color:#555; margin:0 0 24px; }
.editorial-grid h2,.vehicle-story h2 { font:700 clamp(39px,4.2vw,63px)/1.15 Manrope,Arial,sans-serif; letter-spacing:-.055em; margin:0 0 27px; }
.editorial-lead { color:#686762; line-height:1.72; font-size:17px; max-width:490px; }
.editorial-list { border-top:1px solid #c7c5c0; }
.editorial-list article { display:grid; grid-template-columns:40px 1fr; gap:20px; padding:26px 0 28px; border-bottom:1px solid #c7c5c0; }
.editorial-list article>span { color:#c51d28; font-size:12px; font-weight:700; padding-top:6px; }
.editorial-list h3 { margin:0 0 11px; font:700 22px/1.25 Manrope,Arial,sans-serif; letter-spacing:-.035em; }
.editorial-list p { margin:0; color:#686762; font-size:16px; line-height:1.65; }
.interior-contact { background:#101011; color:#fff; padding:85px 0 92px; }
.interior-contact-grid { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:8%; }
.interior-contact .eyebrow { color:#9c9c9c; font-size:11px; margin:0 0 22px; }
.interior-contact h2 { font:700 clamp(37px,4.8vw,65px)/1.12 Manrope,Arial,sans-serif; letter-spacing:-.055em; margin:0 0 16px; }
.interior-contact p { font-size:16px; line-height:1.65; color:#b3b3b3; max-width:510px; margin:0; }
.interior-contact-actions { display:flex; flex-direction:column; align-items:flex-start; gap:25px; padding-bottom:8px; }
.interior-contact-actions>a:last-child { font-size:14px; font-weight:600; border-bottom:1px solid #777; padding-bottom:8px; }
.interior-contact-actions>a:last-child span { margin-left:9px; }
.catalog-hero { padding-bottom:77px; }
.catalog-heading { display:flex; justify-content:space-between; align-items:end; gap:70px; }
.catalog-heading h1 { margin:0; }
.catalog-heading p { font-size:17px; line-height:1.65; color:#bbb; max-width:390px; margin:0 0 9px; }
.catalog-section { background:#101011; color:#fff; padding:58px 0 90px; }
.catalog-controls { display:flex; justify-content:space-between; align-items:center; gap:30px; border-top:1px solid #393939; border-bottom:1px solid #393939; margin-bottom:36px; }
.catalog-filters { display:flex; gap:30px; overflow-x:auto; scrollbar-width:thin; }
.catalog-filter { white-space:nowrap; min-height:62px; border:0; border-bottom:2px solid transparent; color:#a9a9a9; background:none; font:700 12px 'DM Sans',Arial,sans-serif; letter-spacing:.07em; text-transform:uppercase; cursor:pointer; }
.catalog-filter.is-active,.catalog-filter:hover { color:#fff; border-bottom-color:#e12635; }
#catalog-result { color:#aaa; font-size:13px; white-space:nowrap; }
.catalog-grid { gap:24px 20px; }
.catalog-grid .vehicle-image { height:245px; }
.catalog-empty { padding:40px 0; color:#bbb; }
.catalog-disclaimer { font-size:14px; line-height:1.6; color:#999; margin:33px 0 0; }
.vehicle-detail { padding:126px 0 100px; }
.vehicle-detail-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:7%; align-items:center; }
.vehicle-detail-photo { min-height:570px; height:42vw; max-height:680px; position:relative; background:#161616; overflow:hidden; }
.vehicle-detail-photo img { width:100%; height:100%; object-fit:cover; display:block; }
.vehicle-detail-photo>span { position:absolute; left:17px; bottom:17px; background:#111; color:#fff; padding:11px 14px; font-size:11px; font-weight:700; letter-spacing:.1em; }
.vehicle-detail-copy { padding:10px 0; }
.vehicle-detail-copy .eyebrow { font-size:11px; color:#555; margin:0 0 25px; }
.vehicle-detail h1 { font-size:clamp(42px,4.7vw,68px); }
.vehicle-detail .interior-lead { color:#555; font-size:17px; }
.vehicle-specs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #c7c5c0; border-bottom:1px solid #c7c5c0; padding:23px 0; gap:10px; }
.vehicle-specs div { min-width:0; }
.vehicle-specs dt { text-transform:uppercase; font-size:11px; font-weight:700; letter-spacing:.08em; color:#777; margin-bottom:10px; }
.vehicle-specs dd { margin:0; font:700 clamp(14px,1.4vw,19px) Manrope,Arial,sans-serif; }
.vehicle-note { font-size:14px; color:#777; margin:24px 0 27px; }
.detail-back { display:table; margin-top:35px; }
.vehicle-story { padding:92px 0; background:#e6e4df; }
.vehicle-story-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:7%; }
.vehicle-story .eyebrow { align-self:start; font-size:11px; color:#555; }
.vehicle-story h2 { margin-top:0; }
.vehicle-story p { font-size:18px; line-height:1.7; max-width:710px; color:#555; }
.vehicle-story a { display:inline-block; margin-top:21px; padding-bottom:8px; border-bottom:1px solid #777; text-transform:uppercase; font-size:12px; font-weight:700; letter-spacing:.08em; }
.vehicle-story a:hover { color:#c51d28; }
.vehicle-story a span { font-size:17px; margin-left:8px; }
.related-section { padding:83px 0 100px; }
.related-section .eyebrow { color:#555; font-size:11px; }
.related-section h2 { font:700 clamp(32px,3.5vw,48px) Manrope,Arial,sans-serif; letter-spacing:-.05em; margin:18px 0 37px; }
.related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.related-grid a { display:block; border-bottom:1px solid #c5c2bd; padding-bottom:15px; font:700 19px Manrope,Arial,sans-serif; }
.related-grid a img { width:100%; aspect-ratio:1.45; object-fit:cover; display:block; margin-bottom:17px; }
.related-grid a span { display:flex; justify-content:space-between; gap:8px; }
.related-grid a b { color:#c51d28; font-weight:400; }
.related-grid a:hover { color:#c51d28; }
.related-grid .related-all { background:#141414; color:#fff; border:0; padding:35px; min-height:200px; display:flex; justify-content:space-between; align-items:end; }
.club-hero .interior-hero-image img { object-position:center; }
.contact-hero { padding-bottom:105px; }
.contact-hero h1 { max-width:850px; }
.contact-options { padding:65px 0 85px; background:#181819; color:#fff; }
.contact-options-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; }
.contact-primary { padding:28px 0 35px; border-top:1px solid #555; }
.contact-primary>span { display:block; color:#aaa; font-size:11px; font-weight:700; letter-spacing:.16em; margin-bottom:24px; }
.contact-primary>a { display:flex; justify-content:space-between; align-items:center; gap:12px; font:700 clamp(24px,3.2vw,42px)/1.2 Manrope,Arial,sans-serif; letter-spacing:-.045em; overflow-wrap:anywhere; }
.contact-primary>a:hover { color:#ed2635; }
.contact-primary b { color:#ed2635; font-size:24px; font-weight:400; }
.contact-primary p { color:#aaa; line-height:1.5; font-size:15px; margin:25px 0 0; }
.footer-site-nav { display:flex; gap:21px; font-size:12px; font-weight:700; }
.footer-site-nav a:hover { color:#fff; }
.mega-featured { display:grid; gap:9px; margin-top:23px; padding-top:18px; border-top:1px solid #333; }
.mega-featured>span { color:#999; font-size:10px; letter-spacing:.16em; font-weight:700; margin-bottom:4px; }
.mega-featured a { display:flex; justify-content:space-between; gap:10px; color:#fff; font-size:12px; line-height:1.3; }
.mega-featured a:hover { color:#ed2635; }
.mega-featured b { font-weight:400; }
@media(max-width:1100px) {
  .interior-hero-grid { gap:5%; }
  .interior-hero h1 { font-size:clamp(47px,5.5vw,70px); }
  .vehicle-detail-grid { gap:4%; }
  .vehicle-detail-photo { min-height:510px; }
  .footer-site-nav { display:none; }
}
@media(max-width:760px) {
  .interior-hero { padding:97px 0 62px; }
  .interior-breadcrumb { margin-bottom:38px; font-size:12px; }
  .interior-hero-grid { display:block; }
  .interior-hero-copy { padding:0 0 42px; }
  .interior-hero h1 { font-size:clamp(45px,11vw,65px); }
  .interior-lead { font-size:17px; line-height:1.6; margin-bottom:30px; }
  .interior-hero-image { height:330px; min-height:0; margin:0 -22px; }
  .interior-hero-links { gap:20px; }
  .fact-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .fact-strip div,.fact-strip div + div { min-height:123px; padding:29px 9px 22px; }
  .fact-strip div:first-child { padding-left:0; }
  .fact-strip strong { font-size:22px; }
  .fact-strip span { font-size:12px; line-height:1.35; }
  .editorial-section { padding:75px 0 85px; }
  .editorial-grid { display:block; }
  .editorial-grid h2 { font-size:42px; }
  .editorial-lead { margin-bottom:35px; }
  .editorial-list article { padding:22px 0; }
  .editorial-list h3 { font-size:20px; }
  .interior-contact { padding:73px 0 76px; }
  .interior-contact-grid { display:block; }
  .interior-contact h2 { font-size:43px; }
  .interior-contact-actions { margin-top:32px; }
  .catalog-heading { display:block; }
  .catalog-heading h1 { font-size:48px; margin-bottom:20px; }
  .catalog-heading p { margin:0; }
  .catalog-section { padding:27px 0 70px; }
  .catalog-controls { display:block; margin-right:-22px; border-top:0; }
  .catalog-filters { gap:19px; padding-right:22px; border-top:1px solid #393939; }
  .catalog-filter { font-size:11px; min-height:55px; }
  #catalog-result { display:block; padding:13px 0; }
  .catalog-grid .vehicle-image { height:145px; }
  .vehicle-detail { padding:100px 0 70px; }
  .vehicle-detail .interior-breadcrumb { margin-bottom:28px; }
  .vehicle-detail-grid { display:block; }
  .vehicle-detail-photo { min-height:0; height:340px; margin:0 -22px; }
  .vehicle-detail-copy { padding:41px 0 0; }
  .vehicle-detail h1 { font-size:47px; }
  .vehicle-specs dd { font-size:15px; }
  .vehicle-story { padding:70px 0; }
  .vehicle-story-grid { display:block; }
  .vehicle-story h2 { font-size:43px; margin-top:30px; }
  .vehicle-story p { font-size:16px; }
  .related-section { padding:66px 0 75px; }
  .related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
  .related-grid a { font-size:15px; }
  .related-grid .related-all { grid-column:1 / -1; min-height:130px; }
  .contact-options { padding:43px 0 60px; }
  .contact-options-grid { display:block; }
  .contact-primary>a { font-size:30px; }
  .contact-hero { padding-bottom:55px; }
}
@media(max-width:420px) {
  .interior-hero h1 { font-size:44px; }
  .fact-strip strong { font-size:18px; }
  .fact-strip span { font-size:11px; }
  .catalog-grid .vehicle-image { height:125px; }
  .vehicle-detail h1 { font-size:43px; }
  .vehicle-detail-photo { height:275px; }
  .vehicle-detail .button { font-size:10px; }
}
