/* =========================================================
   SB AUTO RELAIS — Variante 1 : Blanche Dynamique
   Surcouche graphique uniquement. Contenu/HTML conservé.
   ========================================================= */
:root{
  --navy:#0B1B34 !important;
  --gold:#f9c121 !important;
  --gold1:#f9c121 !important;
  --gold2:#ffe08a !important;
  --ink:#172033 !important;
  --muted:#64748B !important;
  --bg:#ffffff !important;
  --card:#ffffff !important;
  --line:rgba(11,27,52,.10) !important;
  --shadow:0 18px 45px rgba(11,27,52,.10) !important;
  --soft-shadow:0 10px 30px rgba(11,27,52,.08) !important;
}
*{scroll-behavior:smooth}
html{background:#fff !important}
body{
  background:
    radial-gradient(circle at 8% 0%, rgba(249,193,33,.16), transparent 34rem),
    radial-gradient(circle at 90% 10%, rgba(11,27,52,.08), transparent 28rem),
    linear-gradient(180deg,#ffffff 0%,#f8fafc 44%,#ffffff 100%) !important;
  color:var(--ink) !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a,.btn,button,input,select,textarea{transition:all .24s cubic-bezier(.2,.8,.2,1)}
.container{max-width:1180px !important}
header{
  background:rgba(255,255,255,.78) !important;
  border-bottom:1px solid rgba(11,27,52,.08) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
  box-shadow:0 8px 28px rgba(11,27,52,.06) !important;
}
nav{height:78px !important; min-height:78px !important}
.logo{height:46px !important; filter:drop-shadow(0 8px 14px rgba(11,27,52,.10))}
.nav-links a:not(.social){
  color:var(--navy) !important;
  position:relative;
  padding:10px 2px !important;
  opacity:.86;
}
.nav-links a:not(.social)::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:3px;height:3px;
  background:linear-gradient(90deg,var(--gold),#fff0b0);
  border-radius:999px;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .24s ease;
}
.nav-links a:not(.social):hover{opacity:1; transform:translateY(-1px)}
.nav-links a:not(.social):hover::after{transform:scaleX(1)}
.nav-links a.social,.burger{
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(11,27,52,.10) !important;
  border-radius:999px !important;
  box-shadow:0 10px 24px rgba(11,27,52,.08) !important;
}
.nav-links a.social:hover,.burger:hover{transform:translateY(-2px); box-shadow:0 16px 32px rgba(11,27,52,.12) !important}
.mobile-menu{
  top:78px !important;
  background:rgba(255,255,255,.96) !important;
  backdrop-filter:blur(18px) !important;
  border-bottom:1px solid rgba(11,27,52,.08) !important;
  box-shadow:0 22px 45px rgba(11,27,52,.12) !important;
}
.mobile-menu a{color:var(--navy) !important; border-bottom:1px solid rgba(11,27,52,.08) !important}
section{padding:62px 0 !important}
main{overflow:hidden}
.hero{
  position:relative;
  padding:86px 0 46px !important;
  border-bottom:0 !important;
  isolation:isolate;
}
.hero::before{
  content:"";
  position:absolute;
  inset:18px clamp(14px,4vw,54px);
  z-index:-1;
  border:1px solid rgba(11,27,52,.07);
  border-radius:36px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.90),rgba(255,255,255,.62)),
    radial-gradient(circle at 84% 16%,rgba(249,193,33,.22),transparent 26rem);
  box-shadow:0 30px 80px rgba(11,27,52,.10);
}
.hero .container{position:relative}
h1{
  color:var(--navy) !important;
  letter-spacing:-.055em !important;
  line-height:.98 !important;
  max-width:920px;
}
h1::after{
  content:"";
  display:block;
  width:min(160px,42vw);
  height:6px;
  margin-top:18px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--gold),rgba(249,193,33,0));
}
h2{color:var(--navy) !important; letter-spacing:-.035em !important}
h3,.title,.h2{color:var(--navy) !important}
p.lead,.lead,.muted,.meta,.desc{color:#526276 !important}
.pill,.tag,.badge,.status-badge,.macaron{
  border:1px solid rgba(11,27,52,.10) !important;
  background:rgba(255,255,255,.78) !important;
  color:var(--navy) !important;
  box-shadow:0 8px 18px rgba(11,27,52,.06) !important;
  backdrop-filter:blur(10px);
}
.badge,.status-new{background:linear-gradient(135deg,var(--gold),#ffe28a) !important;color:var(--navy) !important;border-color:rgba(249,193,33,.5) !important}
.status-vendu{background:#e11d48 !important;color:#fff !important;border-color:#e11d48 !important}
.status-reserve{background:#f59e0b !important;color:var(--navy) !important;border-color:#f59e0b !important}
.card,.price-card,.step,.filters,.frame,.gallery .card,.lb-inner{
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(11,27,52,.09) !important;
  border-radius:26px !important;
  box-shadow:0 18px 45px rgba(11,27,52,.10) !important;
  backdrop-filter:blur(12px) !important;
}
.card,.price-card,.step{transform:translateZ(0)}
.card:hover,.price-card:hover,.step:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 70px rgba(11,27,52,.14) !important;
  border-color:rgba(249,193,33,.42) !important;
}
.price-card{overflow:hidden; position:relative}
.price-card::before,.card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,var(--gold),rgba(11,27,52,.18));
  opacity:.95;
}
.price,.pricegold,.new,.new-price{
  background:linear-gradient(135deg,var(--gold),#ffe38a) !important;
  color:var(--navy) !important;
  border:1px solid rgba(249,193,33,.52) !important;
  border-radius:999px !important;
  box-shadow:0 12px 28px rgba(249,193,33,.28) !important;
}
.old,.old-price{color:#94a3b8 !important}
.promo,.promo-30{
  background:#fff !important;
  color:var(--navy) !important;
  border-color:rgba(11,27,52,.10) !important;
  border-radius:999px !important;
}
.btn,.btn.primary,.btn-primary,.btn-outline{
  border-radius:999px !important;
  padding:13px 18px !important;
  letter-spacing:-.01em;
}
.btn-primary,.btn.primary{
  background:linear-gradient(135deg,var(--navy),#173866) !important;
  color:#fff !important;
  border-color:rgba(11,27,52,.95) !important;
  box-shadow:0 16px 34px rgba(11,27,52,.24) !important;
}
.btn-outline,.btn:not(.btn-primary):not(.primary){
  background:rgba(255,255,255,.78) !important;
  color:var(--navy) !important;
  border-color:rgba(11,27,52,.12) !important;
  box-shadow:0 10px 24px rgba(11,27,52,.08) !important;
}
.btn:hover,.btn.primary:hover,.btn-primary:hover,.btn-outline:hover{transform:translateY(-2px); filter:saturate(1.08)}
.filters{gap:12px !important; padding:14px !important}
.filters input,.filters select,input,select,textarea{
  background:#fff !important;
  border:1px solid rgba(11,27,52,.12) !important;
  border-radius:16px !important;
  color:var(--navy) !important;
  box-shadow:0 8px 20px rgba(11,27,52,.06) !important;
}
input:focus,select:focus,textarea:focus,.filters input:focus,.filters select:focus{
  outline:3px solid rgba(249,193,33,.35) !important;
  border-color:var(--gold) !important;
}
.media,.frame{
  background:linear-gradient(135deg,#f8fafc,#eef4fb) !important;
  overflow:hidden !important;
}
.media img,.frame img,.thumbs img{transition:transform .42s ease, filter .42s ease}
.card:hover .media img,.frame:hover img{transform:scale(1.035)}
.thumbs img:hover{transform:translateY(-3px) scale(1.02)}
.heart,.arrow,.lb-arrow,.lb-close,.bico{
  background:rgba(255,255,255,.92) !important;
  border-color:rgba(11,27,52,.12) !important;
  box-shadow:0 10px 25px rgba(11,27,52,.13) !important;
}
.heart:hover,.arrow:hover,.lb-arrow:hover,.lb-close:hover,.bico:hover{transform:translateY(-50%) scale(1.05)}
.heart:hover,.bico:hover{transform:scale(1.05)}
.cta-band{
  background:linear-gradient(135deg,var(--navy),#14345e) !important;
  color:#fff !important;
  border-radius:28px !important;
  box-shadow:0 24px 60px rgba(11,27,52,.24) !important;
}
footer{
  background:rgba(255,255,255,.82) !important;
  border-top:1px solid rgba(11,27,52,.08) !important;
  color:#526276 !important;
}
footer a{color:var(--navy) !important}
#cookie-banner{
  background:rgba(11,27,52,.96) !important;
  border-color:rgba(249,193,33,.28) !important;
  border-radius:22px !important;
  box-shadow:0 24px 70px rgba(11,27,52,.22) !important;
}
#cookie-accept{background:linear-gradient(135deg,var(--gold),#ffe28a) !important;color:var(--navy) !important;border-color:var(--gold) !important}
#cookie-decline{background:#fff !important;color:var(--navy) !important}
@keyframes sbFadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:no-preference){
  .hero .container, section .container > h2, .cards > *, .pricing > *, .steps > *, .filters, .grid > *{animation:sbFadeUp .65s ease both}
  .cards > *:nth-child(2), .pricing > *:nth-child(2), .steps > *:nth-child(2){animation-delay:.08s}
  .cards > *:nth-child(3), .steps > *:nth-child(3){animation-delay:.14s}
  .cards > *:nth-child(4), .steps > *:nth-child(4){animation-delay:.20s}
}
@media (max-width:680px){
  nav{height:72px !important; min-height:72px !important}
  .mobile-menu{top:72px !important}
  .logo{height:38px !important}
  .hero{padding:62px 0 32px !important}
  .hero::before{inset:10px; border-radius:26px}
  section{padding:42px 0 !important}
  .btn,.btn-primary,.btn-outline,.btn.primary{width:100%; justify-content:center}
}

/* =========================================================
   SB AUTO RELAIS — Version blanche dynamique améliorée v1.1
   Retouches graphiques uniquement : dynamisme, finition, lisibilité.
   ========================================================= */
:root{
  --sb-radius-xl:32px !important;
  --sb-radius-lg:24px !important;
  --sb-ease:cubic-bezier(.22,.61,.36,1) !important;
  --sb-blue-soft:#eef6ff !important;
  --sb-surface:rgba(255,255,255,.76) !important;
  --sb-glass:rgba(255,255,255,.68) !important;
  --sb-ring:rgba(249,193,33,.36) !important;
}

::selection{background:rgba(249,193,33,.42);color:var(--navy) !important}
html{scroll-padding-top:96px}
body{
  position:relative;
  background:
    radial-gradient(circle at 6% 3%, rgba(249,193,33,.20), transparent 32rem),
    radial-gradient(circle at 94% 12%, rgba(34,103,183,.11), transparent 30rem),
    radial-gradient(circle at 50% 98%, rgba(11,27,52,.06), transparent 34rem),
    linear-gradient(180deg,#fff 0%,#f8fbff 42%,#fff 100%) !important;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.58;
  background-image:
    linear-gradient(rgba(11,27,52,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(11,27,52,.035) 1px, transparent 1px),
    radial-gradient(circle at 72% 18%, rgba(249,193,33,.16), transparent 24rem);
  background-size:48px 48px,48px 48px,100% 100%;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.85),rgba(0,0,0,.18) 72%,rgba(0,0,0,0));
  animation:sbAmbient 18s var(--sb-ease) infinite alternate;
}
header,main,footer{position:relative;z-index:1}
@keyframes sbAmbient{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-18px,14px,0) scale(1.025)}}

/* Navigation plus premium */
header{transition:background .28s var(--sb-ease), box-shadow .28s var(--sb-ease), border-color .28s var(--sb-ease)}
header.is-scrolled{
  background:rgba(255,255,255,.92) !important;
  border-bottom-color:rgba(11,27,52,.10) !important;
  box-shadow:0 18px 52px rgba(11,27,52,.12) !important;
}
.brand,.logo{transition:transform .28s var(--sb-ease), filter .28s var(--sb-ease)}
.brand:hover .logo,.brand:hover{transform:translateY(-1px)}
.nav-links a.is-active:not(.social){opacity:1;color:var(--navy) !important}
.nav-links a.is-active:not(.social)::after{transform:scaleX(1)}
.nav-links a.is-active:not(.social){text-shadow:0 0 18px rgba(249,193,33,.24)}
.mobile-menu a.is-active{background:rgba(249,193,33,.16) !important;border-radius:14px;padding-left:12px !important}
.burger{transition:transform .24s var(--sb-ease), box-shadow .24s var(--sb-ease)}
.burger:hover{transform:translateY(-1px) rotate(-2deg)}

/* Titres et rythme visuel */
h1,h2,.h2{position:relative;text-wrap:balance}
section .container > h2::before, main.container > h1::before, .about h1::before{
  content:"";
  display:inline-block;
  width:12px;
  height:12px;
  margin-right:10px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold),#ffe6a0);
  box-shadow:0 0 0 7px rgba(249,193,33,.16);
  vertical-align:.12em;
}
.lead,p.lead{max-width:780px;line-height:1.68 !important}
.clean li::marker{color:var(--gold)}
ul.clean li{padding-left:2px}

/* Hero enrichi */
.hero{min-height:auto}
.hero::before{
  background:
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,255,255,.70)),
    radial-gradient(circle at 86% 14%,rgba(249,193,33,.25),transparent 24rem),
    radial-gradient(circle at 14% 88%,rgba(11,27,52,.07),transparent 20rem) !important;
}
.hero::after{
  content:"";
  position:absolute;
  right:clamp(22px,8vw,110px);
  top:clamp(28px,8vw,86px);
  width:clamp(110px,18vw,230px);
  aspect-ratio:1;
  z-index:-1;
  border-radius:46% 54% 60% 40%;
  background:linear-gradient(135deg,rgba(249,193,33,.26),rgba(11,27,52,.08));
  filter:blur(.2px);
  animation:sbBlob 9s ease-in-out infinite alternate;
}
@keyframes sbBlob{0%{transform:translate3d(0,0,0) rotate(0);border-radius:46% 54% 60% 40%}100%{transform:translate3d(12px,18px,0) rotate(8deg);border-radius:57% 43% 44% 56%}}
.hero .badges .pill,.hero-tags .tag{animation:sbFloat 5.6s ease-in-out infinite alternate}
.hero .badges .pill:nth-child(2),.hero-tags .tag:nth-child(2){animation-delay:.35s}
.hero .badges .pill:nth-child(3),.hero-tags .tag:nth-child(3){animation-delay:.7s}
@keyframes sbFloat{from{transform:translateY(0)}to{transform:translateY(-4px)}}

/* Cartes : profondeur, brillance et meilleure lecture */
.card,.price-card,.step,.vehicle-detail,.vehicle-highlight,.filters,.toolbar,.form-body,.form-top{
  position:relative;
  overflow:hidden;
}
.card::after,.price-card::after,.step::after,.vehicle-detail::after,.vehicle-highlight::after,.filters::after,.toolbar::after{
  content:"";
  position:absolute;
  inset:-1px;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at var(--mx,50%) var(--my,0%), rgba(249,193,33,.18), transparent 24rem),
    linear-gradient(135deg,rgba(255,255,255,.42),transparent 36%);
  transition:opacity .32s var(--sb-ease);
}
.card:hover::after,.price-card:hover::after,.step:hover::after,.vehicle-detail:hover::after,.vehicle-highlight:hover::after,.filters:hover::after,.toolbar:hover::after{opacity:1}
.price-card:nth-child(2){
  border-color:rgba(249,193,33,.54) !important;
  box-shadow:0 28px 76px rgba(11,27,52,.14), 0 0 0 1px rgba(249,193,33,.16) inset !important;
}
.price-card:nth-child(2)::before{height:6px;background:linear-gradient(90deg,var(--gold),#fff0b0,var(--gold)) !important}
.card .title,.price-card h3,.vehicle-detail h3{letter-spacing:-.02em}
.card .meta,.muted{line-height:1.58 !important}

/* Boutons plus vivants */
.btn,.btn-primary,.btn-outline,.btn.primary,.btn-gold{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transform:translateZ(0);
}
.btn::after,.btn-primary::after,.btn-outline::after,.btn.primary::after,.btn-gold::after{
  content:"";
  position:absolute;
  inset:-40% -80%;
  z-index:-1;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.44) 50%,transparent 65%);
  transform:translateX(-55%);
  opacity:0;
}
.btn:hover::after,.btn-primary:hover::after,.btn-outline:hover::after,.btn.primary:hover::after,.btn-gold:hover::after{
  opacity:1;
  animation:sbShine .76s var(--sb-ease) both;
}
@keyframes sbShine{to{transform:translateX(55%)}}
.btn-primary:hover,.btn.primary:hover{box-shadow:0 20px 44px rgba(11,27,52,.30) !important}
.btn-outline:hover,.btn:not(.btn-primary):not(.primary):hover{border-color:rgba(249,193,33,.52) !important;background:#fffdf7 !important}
.hero .cta .btn-primary::before,.vehicle-cta .btn-primary::before,.vehicle-cta .primary::before{content:"→";font-weight:900;margin-right:2px}

/* Page annonces : filtres, cartes et galerie */
@media (min-width:861px){
  .filters{position:sticky;top:92px;z-index:18}
}
.filters{
  background:rgba(255,255,255,.82) !important;
  backdrop-filter:blur(16px) saturate(140%) !important;
  -webkit-backdrop-filter:blur(16px) saturate(140%) !important;
}
.filters input,.filters select,.form input,.form select,.form textarea{
  min-height:46px;
  transition:border-color .22s var(--sb-ease), box-shadow .22s var(--sb-ease), transform .22s var(--sb-ease);
}
.filters input:hover,.filters select:hover,.form input:hover,.form select:hover,.form textarea:hover{transform:translateY(-1px)}
.toolbar{
  padding:10px 12px;
  border:1px solid rgba(11,27,52,.08);
  border-radius:22px;
  background:rgba(255,255,255,.70);
  backdrop-filter:blur(12px);
  box-shadow:0 14px 34px rgba(11,27,52,.08);
}
#count.pill{font-weight:900;letter-spacing:.02em}
.media::after,.frame::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:34%;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(11,27,52,.18));
  opacity:.0;
  transition:opacity .32s var(--sb-ease);
}
.card:hover .media::after,.frame:hover::after{opacity:1}
.media img,.frame img{will-change:transform}
.dot{transition:width .22s var(--sb-ease), background .22s var(--sb-ease), transform .22s var(--sb-ease)}
.dot.active{width:18px;background:linear-gradient(90deg,var(--gold),#fff0b0) !important;border-color:rgba(249,193,33,.7) !important}
.dot:hover{transform:scale(1.12)}
.heart{transition:transform .22s var(--sb-ease), box-shadow .22s var(--sb-ease), color .22s var(--sb-ease)}
.heart:hover{transform:scale(1.08) !important;color:#e11d48 !important}
.arrow:hover,.lb-arrow:hover{transform:translateY(-50%) scale(1.08) !important;background:#fffaf0 !important;border-color:rgba(249,193,33,.48) !important}
.bico:hover{transform:scale(1.08) !important;background:#fffaf0 !important;border-color:rgba(249,193,33,.48) !important}
.ribbon{background:linear-gradient(135deg,#0B1B34,#1b3b67) !important;border-color:rgba(255,255,255,.22) !important}
.status-new{background:linear-gradient(135deg,#16a34a,#22c55e) !important;color:#fff !important}
.new-count{color:#14532d !important}
.placeholder{font-weight:900;color:#64748b;letter-spacing:.04em;text-transform:uppercase}

/* Fiches véhicules */
.vehicle-highlight,.vehicle-detail{
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(11,27,52,.09) !important;
  border-radius:24px !important;
  box-shadow:0 18px 45px rgba(11,27,52,.09) !important;
}
.vehicle-highlight{padding:16px !important}
.vehicle-cta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding-top:10px;
}
.thumbs img{box-shadow:0 8px 18px rgba(11,27,52,.08)}
.thumbs img:hover{border-color:rgba(249,193,33,.62) !important;box-shadow:0 14px 30px rgba(11,27,52,.14)}
.bubble{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}

/* Formulaire estimation */
.form-top,.form-body{
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(11,27,52,.09) !important;
  box-shadow:0 18px 45px rgba(11,27,52,.10) !important;
  backdrop-filter:blur(12px);
}
.progress,.prog{overflow:hidden;border-radius:999px;background:rgba(11,27,52,.08) !important}
.progress .bar,.prog > span,.prog i{
  background:linear-gradient(90deg,var(--gold),#ffe28a,var(--navy)) !important;
  box-shadow:0 0 22px rgba(249,193,33,.34);
}
.radio-pill{transition:transform .22s var(--sb-ease), box-shadow .22s var(--sb-ease), border-color .22s var(--sb-ease)}
.radio-pill:hover{transform:translateY(-2px);border-color:rgba(249,193,33,.52) !important;box-shadow:0 14px 30px rgba(11,27,52,.09)}
.inline-consent{border-radius:16px;background:rgba(249,193,33,.10);border:1px solid rgba(249,193,33,.22);padding:10px 12px}

/* Footer et bannière cookie */
footer{
  background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(248,250,252,.92)) !important;
  backdrop-filter:blur(14px);
}
footer .f-brand{font-weight:800;color:var(--navy)}
footer a:hover{color:#0B1B34 !important;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}
#cookie-banner{max-width:980px;margin:0 auto;left:16px !important;right:16px !important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}

/* Apparition au scroll activée par sb-enhancements.js */
.sb-reveal{opacity:0;transform:translateY(18px) scale(.985);transition:opacity .7s var(--sb-ease), transform .7s var(--sb-ease)}
.sb-reveal.sb-visible{opacity:1;transform:translateY(0) scale(1)}
.sb-ready .cards > .card:nth-child(2),.sb-ready .pricing > .price-card:nth-child(2),.sb-ready .steps > .step:nth-child(2){transition-delay:.06s}
.sb-ready .cards > .card:nth-child(3),.sb-ready .steps > .step:nth-child(3){transition-delay:.12s}
.sb-ready .cards > .card:nth-child(4),.sb-ready .steps > .step:nth-child(4){transition-delay:.18s}

@supports (animation-timeline:view()){
  .price-card,.step,.vehicle-highlight{animation:sbView both;animation-timeline:view();animation-range:entry 8% cover 28%}
  @keyframes sbView{from{opacity:.35;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
}

@media (max-width:860px){
  html{scroll-padding-top:82px}
  body::before{background-size:36px 36px,36px 36px,100% 100%;opacity:.42}
  .toolbar{align-items:stretch;gap:10px;flex-direction:column}
  .filters{border-radius:20px !important;padding:12px !important}
  .hero::after{opacity:.55;right:18px;top:22px}
  .mobile-menu{padding:14px 18px !important}
  .mobile-menu a{margin:4px 0}
  .card:hover,.price-card:hover,.step:hover{transform:translateY(-3px)}
}
@media (max-width:560px){
  .hero .badges{gap:8px}
  .hero .badges .pill{font-size:11px !important;padding:6px 9px !important}
  .filters{grid-template-columns:1fr !important}
  .actions,.cta,.vehicle-cta{flex-direction:column}
  .actions .btn,.cta .btn,.vehicle-cta .btn{width:100%}
  .thumbs{grid-template-columns:repeat(3,1fr) !important}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:.001ms !important}
  .sb-reveal{opacity:1 !important;transform:none !important}
}

/* =========================================================
   Correctif v1.2 — réactivation du défilement vertical
   Corrige les pages où le body en flex + main overflow:hidden
   pouvait masquer la hauteur réelle de la page.
   ========================================================= */
html{
  min-height:100% !important;
  height:auto !important;
  overflow-y:scroll !important;
  overflow-x:hidden !important;
  scrollbar-gutter:stable;
}
body{
  min-height:100vh !important;
  height:auto !important;
  overflow-y:visible !important;
  overflow-x:hidden !important;
}
main{
  overflow:visible !important;
  flex:1 0 auto !important;
}

/* =========================================================
   Test design — titres sans cadre
   Retire le grand encadré visuel autour des titres de page,
   tout en conservant les bulles/effets dynamiques existants.
   ========================================================= */
.hero::before{
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
.hero{
  background:transparent !important;
}
