
:root{--p-blue:#0B457F;--p-evolving:#708EC9;--p-light:#B3CFE4;--p-ink:#14212b;--p-muted:#60717f;--p-line:#dce6ed;--p-soft:#f5f9fc}
.promotions-page{background:#fff;color:var(--p-ink)}
.promotions-page .main-nav a.active{color:var(--p-blue);font-weight:700}
.promo-hero{position:relative;overflow:hidden;min-height:690px;background:radial-gradient(circle at 84% 16%,rgba(179,207,228,.72),transparent 25%),linear-gradient(120deg,#fff 0%,#f5fafe 45%,#dcecf7 100%)}
.promo-hero-grid{min-height:690px;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:52px;position:relative;z-index:2}
.promo-hero-copy h1,.promo-section-head h2,.promo-finance h2,.promo-lead h2{font-family:"Changan Uni","Arial Narrow","Noto Sans",sans-serif;font-weight:400;text-transform:uppercase;color:var(--p-blue)}
.promo-hero-copy h1{margin:0;font-size:clamp(52px,5.3vw,82px);line-height:.95;max-width:760px}
.promo-hero-copy>p{margin:26px 0 0;max-width:650px;font-size:18px;line-height:1.7;color:#465a69}
.promo-hero-actions{display:flex;gap:12px;margin-top:32px}
.promo-hero-metrics{margin-top:40px;display:flex;gap:42px}
.promo-hero-metrics div{padding-left:16px;border-left:2px solid rgba(11,69,127,.18)}
.promo-hero-metrics strong,.promo-hero-metrics span{display:block}
.promo-hero-metrics strong{font-family:"Changan Uni","Arial Narrow",sans-serif;color:var(--p-blue);font-size:26px;font-weight:400}
.promo-hero-metrics span{margin-top:4px;color:#768795;font-size:11px}
.promo-hero-visual{min-height:540px;position:relative;display:flex;align-items:center;justify-content:center}
.promo-hero-visual>img{width:min(900px,115%);position:relative;z-index:3;filter:drop-shadow(0 30px 26px rgba(36,63,86,.18))}
.promo-horizon{position:absolute;width:120%;height:210px;bottom:50px;background:linear-gradient(180deg,transparent,rgba(112,142,201,.18));transform:skewY(-6deg)}
.promo-big-word{position:absolute;top:24%;right:-1%;font-family:"Changan Uni","Arial Narrow",sans-serif;font-size:clamp(82px,10vw,168px);color:rgba(11,69,127,.055);letter-spacing:.05em;font-weight:700}
.promo-float-card{position:absolute;right:2%;bottom:52px;z-index:4;min-width:220px;padding:18px;background:rgba(255,255,255,.82);border:1px solid rgba(11,69,127,.12);backdrop-filter:blur(16px);box-shadow:0 20px 45px rgba(36,63,86,.10)}
.promo-float-card>*{display:block}.promo-float-card small{font-size:9px;color:#81909b;letter-spacing:.12em}.promo-float-card strong{margin-top:4px;color:var(--p-blue);font-size:14px}.promo-float-card span{margin-top:5px;color:#667885;font-size:10px}
.promo-hero-orb{position:absolute;border-radius:50%;filter:blur(4px);pointer-events:none}.promo-orb-a{width:420px;height:420px;right:-140px;top:-170px;border:1px solid rgba(11,69,127,.08)}.promo-orb-b{width:640px;height:640px;right:-250px;bottom:-430px;background:rgba(112,142,201,.12)}
.promo-trust{border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line);background:#fff}.promo-trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}.promo-trust-grid>div{padding:24px 28px;border-right:1px solid var(--p-line)}.promo-trust-grid>div:first-child{border-left:1px solid var(--p-line)}.promo-trust b,.promo-trust span{display:block}.promo-trust b{color:var(--p-blue);font-size:13px}.promo-trust span{margin-top:4px;color:#71818d;font-size:11px}
.promo-list-section{padding:100px 0 110px}.promo-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:36px}.promo-section-head h2{margin:0;font-size:clamp(42px,4.5vw,64px);line-height:.98;max-width:800px}.promo-section-head p{margin:15px 0 0;max-width:690px;color:var(--p-muted);font-size:16px;line-height:1.65}.promo-count{flex:0 0 auto;width:100px;height:100px;border:1px solid var(--p-line);display:flex;flex-direction:column;justify-content:center;align-items:center}.promo-count strong{font-family:"Changan Uni","Arial Narrow",sans-serif;color:var(--p-blue);font-size:32px;font-weight:400}.promo-count span{color:#7d8c98;font-size:10px;text-transform:uppercase}
.promo-filters{margin:42px 0 32px;display:flex;flex-wrap:wrap;gap:8px}.promo-filter{border:1px solid #d2dde6;background:#fff;color:#5a6a78;border-radius:999px;padding:10px 16px;font-size:12px;transition:.2s ease}.promo-filter:hover,.promo-filter.active{background:var(--p-blue);color:#fff;border-color:var(--p-blue)}
.promo-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.promo-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--p-line);background:linear-gradient(145deg,#fff,#f7fafc);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.promo-card[hidden]{display:none!important}.promo-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(25,55,80,.10);border-color:#cadbe6}
.promo-card-top{min-height:45px;padding:12px 16px 0;display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.promo-badge{background:var(--p-blue);color:#fff;padding:7px 9px;font-size:9px;font-weight:700;letter-spacing:.06em}.promo-type{font-size:9px;color:#788996;text-transform:uppercase;text-align:right}
.promo-card-image{height:245px;position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden}.promo-card-orb{position:absolute;width:240px;height:240px;border-radius:50%;right:-70px;top:-45px;border:1px solid rgba(11,69,127,.07)}.promo-card-image img{position:relative;z-index:2;width:94%;max-height:205px;object-fit:contain;filter:drop-shadow(0 19px 16px rgba(31,57,78,.13));transition:transform .35s ease}.promo-card:hover .promo-card-image img{transform:scale(1.035)}
.promo-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.promo-card-body>small{color:#768895;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.promo-card h3{margin:7px 0 16px;color:var(--p-blue);font-family:"Changan Uni","Arial Narrow",sans-serif;font-size:28px;line-height:1;font-weight:400}
.promo-card-price{padding-bottom:17px;border-bottom:1px solid var(--p-line)}.promo-card-price>*{display:block}.promo-card-price span{font-size:9px;color:#81909a}.promo-card-price strong{margin-top:3px;font-family:"Changan Uni","Arial Narrow",sans-serif;font-size:27px;font-weight:400;color:#182732}.promo-card-price em{margin-top:4px;color:#738491;font-size:9px;font-style:normal}
.promo-card-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:16px 0 8px}.promo-card-specs span{min-width:0;text-align:center;padding:0 5px;border-right:1px solid var(--p-line)}.promo-card-specs span:last-child{border-right:0}.promo-card-specs b,.promo-card-specs small{display:block}.promo-card-specs b{color:#314654;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-card-specs small{margin-top:4px;color:#82919b;font-size:8px;line-height:1.25}
.promo-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:18px}.promo-card-actions a{min-height:43px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.promo-details{border:1px solid #cedae4;color:var(--p-blue);background:#fff}.promo-quote{background:var(--p-blue);color:#fff}.promo-disclaimer{max-width:1100px;margin:28px 0 0;color:#83919b;font-size:9px;line-height:1.6}
.promo-finance{padding:90px 0;background:linear-gradient(125deg,#083766,#0B457F 55%,#708EC9);color:#fff}.promo-finance-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.promo-finance h2{color:#fff;margin:0;font-size:clamp(42px,4vw,62px);line-height:.98}.promo-finance p{max-width:580px;color:#dbe7f0;font-size:16px;line-height:1.65}.finance-points{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(255,255,255,.18)}.finance-points>div{min-height:170px;padding:23px;border-right:1px solid rgba(255,255,255,.18)}.finance-points>div:last-child{border-right:0}.finance-points span,.finance-points b,.finance-points small{display:block}.finance-points span{color:#b9d0e4;font-family:"Changan Uni","Arial Narrow",sans-serif;font-size:20px}.finance-points b{margin-top:18px;font-size:13px}.finance-points small{margin-top:6px;color:#cbdbe8;line-height:1.5}
.promo-lead{padding:100px 0;background:#fff}.promo-lead-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:70px;align-items:center}.promo-lead h2{margin:0;font-size:clamp(44px,4.3vw,64px);line-height:.97}.promo-lead-copy>p{color:var(--p-muted);font-size:17px;line-height:1.65;max-width:600px}.promo-contact-mini{display:flex;flex-direction:column;gap:9px;margin-top:26px}.promo-contact-mini a{color:var(--p-blue);font-weight:600;font-size:13px}
.promo-form{background:var(--p-soft);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.promo-form label,.promo-form legend{font-size:11px;font-weight:600;color:#425563}.promo-form input,.promo-form select{width:100%;height:48px;margin-top:7px;padding:0 13px;border:1px solid #d6e1e9;background:#fff;border-radius:4px}.promo-form fieldset{grid-column:1/-1;border:0;margin:0;padding:0}.promo-form fieldset label{display:inline-flex;align-items:center;margin-right:18px;font-weight:400}.promo-form fieldset input{width:auto;height:auto;margin:0 6px 0 0}.promo-privacy{grid-column:1/-1;display:flex!important;gap:8px;align-items:center}.promo-privacy input{width:auto;height:auto;margin:0}.promo-form .btn-wide,.promo-form>small{grid-column:1/-1}.promo-form>small{text-align:center;color:#7e8c96;font-size:9px}
.promo-faq{padding:90px 0 110px;background:#f7fafc}.promo-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}.promo-faq details{background:#fff;border:1px solid var(--p-line);padding:0 20px}.promo-faq summary{padding:18px 0;cursor:pointer;list-style:none;color:#314756;font-weight:600}.promo-faq summary::-webkit-details-marker{display:none}.promo-faq summary::after{content:"+";float:right;color:var(--p-blue);font-size:20px}.promo-faq details[open] summary::after{content:"–"}.promo-faq p{margin:0;padding:0 0 18px;color:#647784;line-height:1.6;font-size:13px}
@media(max-width:1180px){.promo-hero-grid{grid-template-columns:.95fr 1.05fr;gap:25px}.promo-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.promo-hero{min-height:auto}.promo-hero-grid{min-height:auto;grid-template-columns:1fr;padding-top:70px;padding-bottom:40px}.promo-hero-copy{max-width:720px}.promo-hero-visual{min-height:390px}.promo-hero-visual>img{width:min(760px,98%)}.promo-trust-grid{grid-template-columns:1fr}.promo-trust-grid>div{border-left:1px solid var(--p-line);border-bottom:1px solid var(--p-line)}.promo-trust-grid>div:last-child{border-bottom:0}.promo-finance-grid,.promo-lead-grid{grid-template-columns:1fr;gap:44px}}
@media(max-width:768px){.promo-list-section,.promo-lead{padding:76px 0}.promo-finance,.promo-faq{padding:72px 0}.promo-section-head{align-items:flex-start}.promo-count{width:80px;height:80px}.finance-points{grid-template-columns:1fr}.finance-points>div{min-height:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.finance-points>div:last-child{border-bottom:0}}
@media(max-width:620px){.promo-hero-grid{padding-top:48px}.promo-hero-copy h1{font-size:44px}.promo-hero-copy>p{font-size:15px}.promo-hero-actions{flex-direction:column}.promo-hero-actions .btn{width:100%}.promo-hero-metrics{gap:22px}.promo-hero-metrics strong{font-size:22px}.promo-hero-visual{min-height:300px}.promo-float-card{right:0;bottom:18px;min-width:190px}.promo-big-word{font-size:76px}.promo-section-head{display:block}.promo-count{margin-top:20px}.promo-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;-webkit-overflow-scrolling:touch}.promo-filter{flex:0 0 auto}.promo-cards{display:flex;overflow-x:auto;gap:13px;margin-left:-24px;margin-right:-24px;padding:0 24px 12px;scroll-snap-type:x mandatory;scrollbar-width:none}.promo-cards::-webkit-scrollbar{display:none}.promo-card{flex:0 0 88%;scroll-snap-align:start}.promo-card-image{height:225px}.promo-card-image img{max-height:185px}.promo-form{grid-template-columns:1fr;padding:24px}.promo-form fieldset,.promo-privacy,.promo-form .btn-wide,.promo-form>small{grid-column:auto}.promo-faq-grid{grid-template-columns:1fr}}
@media(max-width:430px){.promo-hero-copy h1{font-size:40px}.promo-hero-metrics{flex-direction:column;gap:14px}.promo-hero-visual{min-height:255px}.promo-float-card{display:none}.promo-card{flex-basis:90%}.promo-section-head h2,.promo-finance h2,.promo-lead h2{font-size:38px}}
@media(max-width:390px){.promo-hero-copy h1{font-size:37px}.promo-card{flex-basis:92%}.promo-card-price strong{font-size:25px}}
@media(max-width:360px){.promo-hero-copy h1{font-size:35px}.promo-card{flex-basis:94%}}


/* ============================================================
   PROMOCIONES — RESPONSIVE QA V1
   ============================================================ */

/* Keep the mobile horizontal carousels clipped to this section,
   never to the document viewport. */
.promo-list-section{
  overflow-x:hidden;
}

@media(max-width:620px){
  /* Match the 16px mobile container gutter exactly. */
  .promo-cards{
    margin-left:-16px;
    margin-right:-16px;
    padding-left:16px;
    padding-right:16px;
  }

  /* Filters remain horizontally scrollable without widening the page. */
  .promo-filters{
    max-width:100%;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
  }

  .promo-filters::-webkit-scrollbar{
    display:none;
  }

  /* Give the lead form comfortable clearance from the fixed mobile bar. */
  .promo-lead{
    padding-bottom:calc(96px + env(safe-area-inset-bottom));
  }
}


/* ============================================================
   PROMOCIONES V2 — CAMPAIGN-FIRST EXPERIENCE
   ============================================================ */

.promo-campaign-hero{
  position:relative;
  overflow:hidden;
  background:#eef5fa;
}

.promo-campaign-stage{
  position:relative;
  min-height:720px;
}

.promo-campaign-slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .65s ease,visibility .65s ease;
  background:
    radial-gradient(circle at 76% 38%,rgba(179,207,228,.48),transparent 30%),
    linear-gradient(115deg,#f9fcfe 0%,#eef6fb 48%,#dbeaf5 100%);
}

.promo-campaign-slide.is-energy{
  background:
    radial-gradient(circle at 75% 36%,rgba(112,142,201,.38),transparent 30%),
    linear-gradient(120deg,#f8fbff 0%,#edf2fb 46%,#dfe7f5 100%);
}

.promo-campaign-slide.active{
  position:relative;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  z-index:2;
}

.promo-campaign-bg{
  position:absolute;
  inset:0;
  overflow:hidden;
}

.campaign-grid-lines{
  position:absolute;
  inset:0;
  opacity:.28;
  background-image:
    linear-gradient(rgba(11,69,127,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(11,69,127,.045) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(90deg,transparent 4%,#000 52%,#000 100%);
}

.campaign-glow{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}

.campaign-glow-a{
  width:520px;height:520px;
  right:8%;top:-180px;
  border:1px solid rgba(11,69,127,.09);
}

.campaign-glow-b{
  width:760px;height:760px;
  right:-240px;bottom:-510px;
  background:rgba(112,142,201,.12);
}

.campaign-word{
  position:absolute;
  right:-1%;
  top:19%;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-weight:700;
  font-size:clamp(110px,12vw,190px);
  letter-spacing:.03em;
  color:rgba(11,69,127,.05);
}

.promo-campaign-content{
  position:relative;
  z-index:2;
  min-height:720px;
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:28px;
  align-items:center;
  padding-top:35px;
  padding-bottom:90px;
}

.promo-campaign-copy{
  position:relative;
  z-index:3;
  max-width:620px;
}

.campaign-kicker{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}

.campaign-kicker span{
  background:#0B457F;
  color:#fff;
  padding:7px 9px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
}

.campaign-kicker b{
  color:#667b8a;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.promo-campaign-copy h1{
  margin:0;
  color:#0B457F;
  font-family:"Changan Uni","Arial Narrow","Noto Sans",sans-serif;
  font-size:clamp(62px,6vw,90px);
  line-height:.9;
  font-weight:400;
  text-transform:uppercase;
}

.promo-campaign-copy>p{
  margin:13px 0 0;
  color:#607584;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.campaign-price{
  margin-top:29px;
}

.campaign-price>*{display:block}
.campaign-price small{
  color:#718591;
  font-size:10px;
}
.campaign-price strong{
  margin-top:5px;
  color:#182933;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-size:39px;
  font-weight:400;
}
.campaign-price em{
  margin-top:5px;
  color:#6b7c88;
  font-size:10px;
  font-style:normal;
}

.campaign-bonus{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:16px;
  padding:10px 13px;
  border-left:3px solid #0B457F;
  background:rgba(255,255,255,.58);
}

.campaign-bonus span{
  color:#7c8c96;
  font-size:8px;
  letter-spacing:.1em;
}

.campaign-bonus strong{
  color:#0B457F;
  font-size:16px;
}

.campaign-actions{
  display:flex;
  align-items:center;
  gap:22px;
  margin-top:27px;
}

.campaign-model-link{
  color:#0B457F;
  font-size:11px;
  font-weight:700;
  border-bottom:1px solid rgba(11,69,127,.28);
  padding-bottom:3px;
}

.promo-campaign-car{
  position:relative;
  min-height:520px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.promo-campaign-car>img{
  position:relative;
  z-index:2;
  width:112%;
  max-width:870px;
  max-height:440px;
  object-fit:contain;
  filter:drop-shadow(0 32px 28px rgba(30,57,78,.18));
  transform:translateX(1%);
}

.campaign-car-orbit{
  position:absolute;
  width:470px;
  height:470px;
  border-radius:50%;
  border:1px solid rgba(11,69,127,.09);
}

.campaign-car-orbit::before,
.campaign-car-orbit::after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(11,69,127,.06);
}

.campaign-car-orbit::before{inset:62px}
.campaign-car-orbit::after{inset:126px}

.campaign-specs{
  position:absolute;
  right:0;
  bottom:28px;
  z-index:4;
  width:min(510px,78%);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(16px);
  border:1px solid rgba(11,69,127,.12);
}

.campaign-specs span{
  min-width:0;
  padding:15px 13px;
  border-right:1px solid rgba(11,69,127,.1);
}

.campaign-specs span:last-child{border-right:0}
.campaign-specs strong,
.campaign-specs small{display:block}
.campaign-specs strong{
  color:#0B457F;
  font-size:17px;
  white-space:nowrap;
}
.campaign-specs small{
  margin-top:3px;
  color:#71818c;
  font-size:8px;
  line-height:1.2;
}

.promo-campaign-controls{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:24px;
  z-index:6;
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:center;
  gap:25px;
}

.campaign-dots{
  display:flex;
  gap:8px;
  align-items:center;
}

.campaign-dots button{
  width:54px;
  height:7px;
  padding:0;
  background:transparent;
  border:0;
  cursor:pointer;
}

.campaign-dots button span{
  display:block;
  width:100%;
  height:2px;
  background:rgba(11,69,127,.2);
  transition:.25s ease;
}

.campaign-dots button.active span{
  height:4px;
  background:#0B457F;
}

.campaign-arrows{
  display:flex;
  gap:8px;
}

.campaign-arrows button{
  width:46px;height:46px;
  display:grid;place-items:center;
  border:1px solid rgba(11,69,127,.18);
  background:rgba(255,255,255,.78);
  color:#0B457F;
  cursor:pointer;
  font-size:18px;
  transition:.2s ease;
}

.campaign-arrows button:hover{
  background:#0B457F;
  color:#fff;
}

.campaign-counter{
  min-width:58px;
  display:flex;
  align-items:baseline;
  justify-content:flex-end;
}
.campaign-counter strong{
  color:#0B457F;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-size:24px;
  font-weight:400;
}
.campaign-counter span{
  color:#8a99a4;
  font-size:10px;
}

/* Editorial featured section */
.promo-featured-editorial{
  padding:95px 0 84px;
  background:#fff;
}

.promo-editorial-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:25px;
  margin-bottom:34px;
}

.promo-editorial-head h2{
  margin:0;
  max-width:760px;
  color:#0B457F;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-size:clamp(40px,4.2vw,61px);
  line-height:.98;
  font-weight:400;
  text-transform:uppercase;
}

.promo-editorial-head>a{
  color:#0B457F;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.promo-editorial-grid{
  display:grid;
  grid-template-columns:1.45fr .775fr .775fr;
  gap:14px;
  min-height:480px;
}

.editorial-card{
  position:relative;
  overflow:hidden;
  min-width:0;
  min-height:480px;
  display:flex;
  align-items:flex-end;
  padding:26px;
  background:#eef5f9;
  border:1px solid #dce7ee;
}

.editorial-card-2,
.editorial-card-3{
  min-height:0;
}

.editorial-card-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 70% 30%,rgba(179,207,228,.62),transparent 30%),
    linear-gradient(145deg,#f8fbfd,#e9f2f7);
}

.editorial-card::after{
  content:"";
  position:absolute;
  width:300px;height:300px;
  right:-110px;top:-110px;
  border-radius:50%;
  border:1px solid rgba(11,69,127,.08);
}

.editorial-card img{
  position:absolute;
  z-index:1;
  width:82%;
  max-height:260px;
  object-fit:contain;
  right:-1%;
  top:16%;
  filter:drop-shadow(0 20px 18px rgba(30,57,79,.14));
  transition:transform .4s ease;
}

.editorial-card-1 img{
  width:70%;
  max-height:340px;
  right:-2%;
  top:18%;
}

.editorial-card:hover img{
  transform:scale(1.035);
}

.editorial-card-copy{
  position:relative;
  z-index:3;
  max-width:58%;
  padding:14px;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(12px);
  border:1px solid rgba(11,69,127,.1);
}

.editorial-card-2 .editorial-card-copy,
.editorial-card-3 .editorial-card-copy{
  max-width:100%;
  width:100%;
}

.editorial-card-copy>span{
  color:#718491;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.editorial-card-copy h3{
  margin:6px 0 4px;
  color:#0B457F;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-size:27px;
  line-height:1;
  font-weight:400;
}
.editorial-card-copy>small{
  color:#7a8a95;
  font-size:8px;
}
.editorial-card-copy>div{
  margin-top:12px;
}
.editorial-card-copy b,
.editorial-card-copy em{
  display:block;
}
.editorial-card-copy b{
  color:#1a2c37;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-size:20px;
  font-weight:400;
}
.editorial-card-copy em{
  margin-top:3px;
  color:#0B457F;
  font-size:9px;
  font-style:normal;
}
.editorial-card-copy>a{
  display:inline-block;
  margin-top:12px;
  color:#0B457F;
  font-size:10px;
  font-weight:700;
}

/* Campaign-of-the-month strip */
.promo-month-banner{
  position:relative;
  overflow:hidden;
  padding:56px 0;
  background:linear-gradient(115deg,#082f57,#0B457F 55%,#708EC9);
  color:#fff;
}

.promo-month-banner::after{
  content:"";
  position:absolute;
  width:520px;height:520px;
  right:-180px;top:-260px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.12);
}

.promo-month-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:70px;
  align-items:center;
}

.promo-month-copy h2{
  margin:0;
  color:#fff;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-size:clamp(38px,3.8vw,56px);
  line-height:.98;
  font-weight:400;
  text-transform:uppercase;
}

.promo-month-copy p{
  max-width:660px;
  margin:15px 0 0;
  color:#d6e4ef;
  line-height:1.6;
}

.promo-month-meta{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.promo-month-meta>div{
  min-height:100px;
  padding:18px;
  border:1px solid rgba(255,255,255,.18);
}

.promo-month-meta small,
.promo-month-meta strong{
  display:block;
}

.promo-month-meta small{
  color:#c9d9e6;
  font-size:8px;
  letter-spacing:.08em;
}
.promo-month-meta strong{
  margin-top:8px;
  color:#fff;
  font-family:"Changan Uni","Arial Narrow",sans-serif;
  font-size:23px;
  font-weight:400;
}
.promo-month-meta>a{
  grid-column:1/-1;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#0B457F;
  font-size:10px;
  font-weight:700;
}

/* Push generic listing lower because it is now the supporting catalog. */
.promo-list-section{
  background:#f8fbfd;
}

/* ===== V2 responsive ===== */
@media(max-width:1180px){
  .promo-campaign-content{
    grid-template-columns:.9fr 1.1fr;
  }
  .promo-campaign-copy h1{
    font-size:58px;
  }
  .promo-editorial-grid{
    grid-template-columns:1.25fr .875fr .875fr;
  }
}

@media(max-width:1024px){
  .promo-campaign-stage,
  .promo-campaign-content{
    min-height:650px;
  }

  .promo-campaign-copy h1{
    font-size:52px;
  }

  .promo-campaign-car{
    min-height:450px;
  }

  .promo-campaign-car>img{
    width:118%;
  }

  .promo-editorial-grid{
    grid-template-columns:1.2fr .8fr;
  }

  .editorial-card-1{
    grid-row:span 2;
  }

  .editorial-card-2,
  .editorial-card-3{
    min-height:233px;
  }

  .editorial-card-2 img,
  .editorial-card-3 img{
    width:76%;
    max-height:155px;
    top:10%;
  }
}

@media(max-width:900px){
  .promo-campaign-stage,
  .promo-campaign-content{
    min-height:auto;
  }

  .promo-campaign-slide{
    position:absolute;
  }
  .promo-campaign-slide.active{
    position:relative;
  }

  .promo-campaign-content{
    grid-template-columns:1fr;
    padding-top:64px;
    padding-bottom:105px;
  }

  .promo-campaign-copy{
    max-width:720px;
  }

  .promo-campaign-car{
    min-height:380px;
  }

  .promo-campaign-car>img{
    width:min(760px,103%);
  }

  .campaign-specs{
    right:6%;
    bottom:8px;
  }

  .promo-month-grid{
    grid-template-columns:1fr;
    gap:32px;
  }
}

@media(max-width:768px){
  .promo-campaign-copy h1{
    font-size:50px;
  }

  .promo-editorial-grid{
    grid-template-columns:1fr 1fr;
    min-height:0;
  }

  .editorial-card{
    min-height:350px;
  }

  .editorial-card-1{
    grid-column:1/-1;
    grid-row:auto;
    min-height:420px;
  }

  .promo-editorial-head{
    align-items:flex-start;
  }
}

@media(max-width:620px){
  .promo-campaign-content{
    padding-top:46px;
    padding-bottom:100px;
  }

  .campaign-kicker{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
  }

  .promo-campaign-copy h1{
    font-size:43px;
  }

  .campaign-price strong{
    font-size:32px;
  }

  .campaign-actions{
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }

  .campaign-actions .btn,
  .campaign-model-link{
    width:100%;
    text-align:center;
  }

  .promo-campaign-car{
    min-height:300px;
  }

  .promo-campaign-car>img{
    width:112%;
    max-height:260px;
  }

  .campaign-car-orbit{
    width:300px;height:300px;
  }

  .campaign-specs{
    position:relative;
    right:auto;
    bottom:auto;
    width:100%;
    margin-top:-20px;
  }

  .promo-campaign-controls{
    bottom:18px;
    grid-template-columns:1fr auto;
  }

  .campaign-counter{
    display:none;
  }

  .campaign-dots button{
    width:34px;
  }

  .promo-featured-editorial{
    padding:72px 0 62px;
  }

  .promo-editorial-head{
    display:block;
  }

  .promo-editorial-head>a{
    display:inline-block;
    margin-top:18px;
  }

  .promo-editorial-grid{
    display:flex;
    overflow-x:auto;
    gap:13px;
    margin-left:-16px;
    margin-right:-16px;
    padding:0 16px 10px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }

  .promo-editorial-grid::-webkit-scrollbar{display:none}

  .editorial-card,
  .editorial-card-1,
  .editorial-card-2,
  .editorial-card-3{
    flex:0 0 88%;
    min-height:385px;
    grid-column:auto;
    grid-row:auto;
    scroll-snap-align:start;
  }

  .editorial-card img,
  .editorial-card-1 img,
  .editorial-card-2 img,
  .editorial-card-3 img{
    width:86%;
    max-height:220px;
    top:12%;
    right:-5%;
  }

  .editorial-card-copy,
  .editorial-card-2 .editorial-card-copy,
  .editorial-card-3 .editorial-card-copy{
    width:auto;
    max-width:83%;
  }

  .promo-month-banner{
    padding:48px 0;
  }

  .promo-month-meta{
    grid-template-columns:1fr;
  }

  .promo-month-meta>a{
    grid-column:auto;
  }
}

@media(max-width:430px){
  .promo-campaign-copy h1{
    font-size:40px;
  }

  .promo-campaign-copy>p{
    font-size:11px;
  }

  .promo-campaign-car{
    min-height:275px;
  }

  .campaign-specs strong{
    font-size:14px;
  }

  .promo-editorial-head h2,
  .promo-month-copy h2{
    font-size:37px;
  }

  .editorial-card{
    flex-basis:90%;
  }
}

@media(max-width:390px){
  .promo-campaign-copy h1{
    font-size:37px;
  }

  .campaign-price strong{
    font-size:29px;
  }

  .promo-campaign-car{
    min-height:255px;
  }

  .campaign-specs span{
    padding-left:8px;
    padding-right:8px;
  }

  .editorial-card{
    flex-basis:92%;
  }
}

@media(max-width:360px){
  .promo-campaign-copy h1{
    font-size:35px;
  }

  .campaign-arrows button{
    width:44px;height:44px;
  }

  .editorial-card{
    flex-basis:94%;
  }
}
