/* Keep the offers area concise rather than screen-filling. */
.offers-showcase{padding:48px 7.5vw 18px}
.offers-intro{display:grid;grid-template-columns:auto 1fr minmax(230px,.75fr) auto;align-items:center;gap:26px;margin-bottom:24px}
.offers-intro p{margin:0;white-space:nowrap}
.offers-intro h2{font-size:38px;line-height:1;margin:0}
.offers-intro>span{font-size:14px;line-height:1.5;max-width:285px}
.offer-controls{grid-column:auto;grid-row:auto;justify-content:flex-end}
.offer-controls button{width:38px;height:38px;font-size:18px}
.offer-stage{min-height:365px}
.offer-slide{padding:34px 7vw}
.offer-content h3{font-size:38px;margin-bottom:22px}
.offer-stats{gap:28px;margin-bottom:22px}
.offer-stats b{font-size:23px}
.offer-slide img{max-height:285px}
@media(max-width:850px){.offers-intro{grid-template-columns:1fr 1fr;gap:16px}.offers-intro>span{max-width:360px}.offer-controls{justify-content:flex-start}.offer-stage{min-height:435px}}
@media(max-width:640px){.offers-showcase{padding:42px 24px 18px}.offers-intro{grid-template-columns:1fr}.offers-intro h2{font-size:35px}.offer-stage{min-height:535px}.offer-slide{padding:32px 25px}.offer-content h3{font-size:35px}}

/* Monthly offer posters: each CMS slot is a complete 16:9 artwork. */
.offer-stage{min-height:clamp(320px,48vw,610px)!important;aspect-ratio:16/9;background:#8d0b20;overflow:hidden}
.offer-slide{display:block;padding:0;clip-path:none;transform:scale(1.015)}
.offer-slide::after{background:linear-gradient(90deg,rgba(35,0,7,.42),transparent 45%,rgba(0,0,0,.12))}
.offer-slide img{width:100%;height:100%;max-height:none;object-fit:cover;filter:none;transform:none!important}
.offer-slide .offer-content{position:absolute;z-index:2;left:7vw;bottom:10%;max-width:42%;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.offer-slide .offer-content h3{font-size:clamp(28px,3.5vw,52px);margin:0 0 18px}.offer-slide .offer-stats{margin-bottom:18px}.offer-slide .offer-content a{padding:13px 20px;background:rgba(0,0,0,.16)}
@media(max-width:640px){.offer-stage{aspect-ratio:4/5}.offer-slide .offer-content{left:25px;right:25px;bottom:8%;max-width:none}.offer-slide .offer-stats{gap:16px}.offer-slide .offer-stats b{font-size:18px}}

/* Keep offer copy and vehicle artwork in separate, readable panels. */
.offer-stage{min-height:365px!important;aspect-ratio:auto!important;background:#fff!important;overflow:hidden!important}
.offer-slide{display:grid!important;grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr)!important;align-items:stretch!important;padding:0!important;background:#fff!important;transform:translateX(20px)!important;filter:none!important}
.offer-slide.active{transform:translateX(0)!important}
.offer-slide::after{display:none!important}
.offer-slide .offer-content{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:2!important;max-width:none!important;padding:42px clamp(28px,4vw,64px)!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:linear-gradient(145deg,#a90822,#5f0718)!important;text-shadow:none!important}
.offer-slide .offer-content h3{font-size:clamp(29px,3.3vw,48px)!important;line-height:.98!important;margin:0 0 22px!important;color:#fff!important}
.offer-slide .offer-content>p{color:#ffd2d9!important;margin-bottom:14px!important}
.offer-slide .offer-stats{gap:24px!important;margin:0 0 22px!important}.offer-slide .offer-stats small{color:#ffd2d9!important}.offer-slide .offer-stats b{font-size:clamp(18px,2vw,27px)!important;color:#fff!important}
.offer-slide .offer-content a{align-self:flex-start!important;background:transparent!important;border-color:#fff!important;color:#fff!important;text-shadow:none!important}
.offer-slide img{position:relative!important;z-index:1!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;background:linear-gradient(135deg,#fff,#f2f3f5)!important;padding:20px!important;filter:none!important;transform:none!important}
@media(max-width:640px){.offer-stage{min-height:625px!important}.offer-slide{grid-template-columns:1fr!important;grid-template-rows:auto 1fr!important;transform:translateY(16px)!important}.offer-slide.active{transform:translateY(0)!important}.offer-slide .offer-content{padding:30px 26px!important}.offer-slide .offer-content h3{font-size:31px!important}.offer-slide .offer-stats{gap:18px!important;margin-bottom:18px!important}.offer-slide .offer-content a{padding:12px 18px!important}.offer-slide img{min-height:255px!important;padding:12px!important}}

/* Three equal square offer frames for consistent desktop and phone presentation. */
.offers-showcase .offer-controls{display:none!important}
.offers-showcase .offer-stage{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  overflow:visible!important;
  background:transparent!important;
}
.offers-showcase .offer-slide,
.offers-showcase .offer-slide.active{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:55% 45%!important;
  width:100%!important;
  aspect-ratio:1/1!important;
  padding:0!important;
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  pointer-events:auto!important;
  overflow:hidden!important;
  border:1px solid rgba(48,34,29,.12)!important;
  border-radius:4px!important;
  box-shadow:0 14px 30px rgba(42,31,27,.1)!important;
  background:#fff!important;
}
.offers-showcase .offer-slide::after{display:none!important}
.offers-showcase .offer-slide img{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  padding:10px!important;
  object-fit:contain!important;
  background:linear-gradient(145deg,#fff,#f1f2f4)!important;
}
.offers-showcase .offer-slide .offer-content{
  grid-column:1!important;
  grid-row:2!important;
  position:relative!important;
  inset:auto!important;
  max-width:none!important;
  min-width:0!important;
  padding:clamp(14px,1.6vw,24px)!important;
  justify-content:center!important;
  background:linear-gradient(145deg,#ad0a25,#680719)!important;
  color:#fff!important;
}
.offers-showcase .offer-slide .offer-content>p{margin:0 0 6px!important;font-size:9px!important}
.offers-showcase .offer-slide .offer-content h3{margin:0 0 10px!important;font-size:clamp(18px,1.7vw,28px)!important;line-height:1.04!important}
.offers-showcase .offer-slide .offer-stats{display:flex!important;gap:14px!important;margin:0 0 10px!important;flex-wrap:nowrap!important}
.offers-showcase .offer-slide .offer-stats span{min-width:0!important}
.offers-showcase .offer-slide .offer-stats small{font-size:7px!important}
.offers-showcase .offer-slide .offer-stats b{font-size:clamp(12px,1.15vw,18px)!important;white-space:nowrap!important}
.offers-showcase .offer-slide .offer-content a{padding:8px 12px!important;font-size:8px!important;gap:16px!important}
@media(max-width:900px){.offers-showcase .offer-stage{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){
  .offers-showcase .offer-stage{grid-template-columns:1fr!important;gap:18px!important}
  .offers-showcase .offer-slide,.offers-showcase .offer-slide.active{grid-template-rows:55% 45%!important;transform:none!important}
  .offers-showcase .offer-slide .offer-content{padding:18px 20px!important}
  .offers-showcase .offer-slide .offer-content h3{font-size:23px!important}
  .offers-showcase .offer-slide .offer-stats b{font-size:15px!important}
}
