:root { --fond: #0b0b0b; --texte: #fff; --accent: #e50914; }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body { margin: 0; color: var(--texte); font-family: 'Montserrat', Arial, sans-serif; background: var(--fond); }
    a { color: inherit; }
    .hero {
      min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column;
      justify-content: space-between; position: relative; isolation: isolate;
      background: linear-gradient(95deg, rgba(0,0,0,.88) 10%, rgba(0,0,0,.62) 57%, rgba(0,0,0,.15)),
                  linear-gradient(0deg, #0b0b0b, transparent 38%),
                  url('images/bmw-drift-arriere.webp') center / cover no-repeat,
                  #202020;
    }
    /* Image locale de secours; la photo du hero est chargée via HTML. */
    .hero::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
      background: radial-gradient(circle at 85% 55%, rgba(229,9,20,.18), transparent 42%); }
    .header { display: flex; justify-content: space-between; align-items: center; gap: 30px;
      padding: 28px 8%; background: linear-gradient(180deg, rgba(0,0,0,.85), transparent); }
    .logo { display: inline-flex; align-items: center; flex: 0 0 auto; text-decoration: none; }
    .logo img { display: block; width: clamp(155px, 15vw, 215px); height: auto; }
    nav { margin-left: auto; }
    nav a[aria-current='page'] { color: #ff4650; }
    nav ul { list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin: 0; padding: 0; }
    nav a { text-decoration: none; font-size: .8rem; font-weight: 700; text-transform: uppercase; letter-spacing: .8px; transition: color .2s; }
    nav a:hover, nav a:focus-visible { color: #ff4650; }
    .hero-content { padding: 60px 8% 11vh; max-width: 850px; }
    .eyebrow { font: 700 1.55rem 'Rajdhani', sans-serif; text-transform: uppercase; letter-spacing: 5px; color: var(--accent); margin: 0 0 12px; }
    h1 { font: 700 clamp(3.7rem, 8.5vw, 7rem)/.9 'Rajdhani', sans-serif; letter-spacing: .5px; text-transform: uppercase; margin: 0 0 24px; text-shadow: 0 2px 14px rgba(0,0,0,.6); }
    .hero-content > p:not(.eyebrow) { color: #d5d5d5; line-height: 1.7; max-width: 620px; margin: 0 0 30px; }
    .buttons { display: flex; gap: 14px; flex-wrap: wrap; }
    .btn { padding: 14px 24px; display: inline-block; border: 2px solid transparent; border-radius: 3px; text-decoration: none; font-size: .82rem; text-transform: uppercase; font-weight: 700; letter-spacing: 1px; transition: transform .2s, background .2s; }
    .btn:hover { transform: translateY(-2px); }
    .btn-primary { background: var(--accent); border-color: var(--accent); }
    .btn-primary:hover { background: #b3070f; }
    .btn-secondary { border-color: white; }
    .btn-secondary:hover { background: white; color: #0b0b0b; }
    .notice { padding: 12px 8%; background: #151515; border-block: 1px solid #2b2b2b; color: #bcbcbc; font-size: .8rem; }
    .section { padding: 80px 8%; }
    .section h2 { font: 700 clamp(2rem, 4vw, 3.2rem) 'Rajdhani', sans-serif; text-transform: uppercase; margin: 0 0 28px; }
    .section h2 span { color: var(--accent); }
    .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
    .card { background: linear-gradient(145deg, #191919, #111); border-left: 4px solid var(--accent); padding: 32px; border-radius: 4px; }
    .card h3 { font: 700 1.7rem 'Rajdhani', sans-serif; text-transform: uppercase; margin: 0 0 12px; }
    .card p, .section > p { color: #b9b9b9; line-height: 1.7; margin: 0; }
    .tag { display: inline-block; color: #ff7077; font-size: .72rem; letter-spacing: 1px; font-weight: 700; text-transform: uppercase; margin: 0 0 10px; }
    .muted-section { background: #101010; }
    footer { padding: 42px 8%; background: #050505; border-top: 1px solid #292929; text-align: center; }
    footer h2 { font: 700 1rem 'Rajdhani',sans-serif; text-transform: uppercase; letter-spacing: 3px; color: #aaa; }
    .sponsors { display: flex; flex-wrap: wrap; justify-content: center; gap: 15px 40px; margin: 24px auto 35px; font-weight: 700; letter-spacing: 1px; color: #d6d6d6; }
    .copyright { color: #777; font-size: .78rem; line-height: 1.6; }
    @media (max-width: 1020px) { .header { flex-direction: column; align-items: flex-start; gap: 12px; } nav { margin-left: 0; } nav ul { gap: 12px 20px; } }
    @media (max-width: 650px) {
      .header { padding: 16px 6%; } .logo img { width: 170px; } nav ul { gap: 11px 16px; } nav a { font-size: .73rem; }
      .hero-content { padding: 40px 6% 11vh; }
      .eyebrow { font-size: 1.1rem; letter-spacing: 3px; }
      .section { padding: 55px 6%; } .grid { grid-template-columns: 1fr; } .card { padding: 24px; }
      .buttons { flex-direction: column; align-items: stretch; } .btn { text-align: center; }
      .notice { padding-inline: 6%; }
    }
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .btn { transition: none; } }

    /* Page Partenariat */
    .site-header { background: #101010; border-bottom: 1px solid #292929; }
    .site-header .header { background: none; }
    .partner-hero { padding: clamp(90px, 12vw, 160px) 8% 95px; position: relative;
      background: radial-gradient(circle at 86% 35%, rgba(229,9,20,.20), transparent 40%),
                  linear-gradient(120deg, #171717, #080808 65%); border-bottom: 1px solid #272727; }
    .partner-hero h1 { max-width: 930px; font-size: clamp(3.2rem, 7.5vw, 6.5rem); line-height: .95; }
    .partner-hero h1 span { color: var(--accent); }
    .partner-intro { max-width: 720px; color: #d0d0d0; line-height: 1.75; margin: 20px 0 0; }
    .partner-list { margin: 16px 0 0; padding-left: 20px; color: #b9b9b9; line-height: 1.85; }
    .partner-contact { background: #151515; border: 1px solid #333; border-left: 4px solid var(--accent);
      border-radius: 4px; padding: 30px; max-width: 850px; }
    .partner-contact p { color: #b9b9b9; line-height: 1.75; margin: 8px 0 0; }
    .partner-contact strong { color: white; }
    .return-link { display: inline-block; margin-top: 24px; color: white; text-decoration: underline; text-underline-offset: 5px; }
    @media (max-width: 650px) { .partner-hero { padding: 78px 6% 70px; } }

    /* Version 3 : pages indépendantes, sans modification du thème initial */
    .inner-hero h1 span { color: var(--accent); }
    .section-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 25px; }
    .inner-return { padding: 0 8% 55px; }
    .site-header nav a[aria-current="page"] { color: #ff4650; }
    .hero nav a[aria-current="page"] { color: #ff4650; }
    @media (max-width: 650px) {
      .section-actions { flex-direction: column; }
      .inner-return { padding: 0 6% 40px; }
    }


/* Version 4 : l'univers du drift est une section de l'accueil, pas une autre page */
.universe-section {
  background: linear-gradient(145deg, #131313 0%, #0b0b0b 70%);
  border-top: 1px solid #252525;
}
.universe-content { max-width: 1180px; margin: 0 auto; }
.universe-section h2 { margin-bottom: 18px; }
.universe-lead { max-width: 920px; font-size: 1.06rem; line-height: 1.85; color: #d8d8d8 !important; margin-bottom: 32px !important; }
.universe-grid { margin-bottom: 24px; }
.universe-section .universe-safety { margin-top: 4px; max-width: 900px; color: #a9a9a9; line-height: 1.7; }
.universe-section .return-link { margin-top: 34px; font-size: .9rem; }
#univers-du-drift { scroll-margin-top: 0; }
@media (max-width: 650px) {
  .universe-lead { font-size: .98rem; }
}


/* ================================================================
   V5 — PHOTOGRAPHIES RESPONSIVES — SANS CHANGER LA NAVIGATION V4
   ================================================================ */

/* Évite les débordements horizontaux, y compris sur petits mobiles. */
html { overflow-x: clip; }
body { min-width: 280px; }
img { max-width: 100%; }

/* Photographie d'accueil : élément plein écran, cadrage adapté,
   jamais étiré, avec un voile sombre assurant la lisibilité du texte. */
.hero-photographic { background: #0b0b0b; overflow: hidden; }
.hero-media { position: absolute; inset: 0 0 0 34%; z-index: -2; display: block; pointer-events: none; }
.hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 48% 77%; display: block; }
.hero-photographic::before { position: absolute; inset: 0; z-index: -1; content: "";
  background: linear-gradient(90deg, rgba(9,9,9,.99) 0%, rgba(9,9,9,.94) 25%, rgba(9,9,9,.76) 44%, rgba(9,9,9,.20) 82%),
              linear-gradient(180deg, rgba(4,4,4,.55), transparent 32%, rgba(4,4,4,.10) 65%, #0b0b0b 100%);
  pointer-events: none;
}
.hero-photographic .header { z-index: 2; position: relative; }
.hero-photographic .hero-content { position: relative; z-index: 1; }
.hero-photo-credit { position: absolute; right: 3%; bottom: 15px; margin: 0; font-size: .7rem;
  color: rgba(255,255,255,.65); text-shadow: 0 1px 2px #000; }

/* Photos du pilote : conserve ses proportions et sa transparence. */
.driver-hero { padding-top: clamp(60px, 7vw, 115px); padding-bottom: 0; overflow: hidden; }
.driver-hero-layout { max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: minmax(0,1.3fr) minmax(200px,.7fr);
  gap: clamp(20px, 4vw, 65px); align-items: end; }
.driver-hero-copy { padding-bottom: clamp(55px, 6vw, 95px); }
.driver-hero h1 { overflow-wrap: anywhere; }
.driver-portrait { margin: 0; text-align: center; align-self: end; }
.driver-portrait img { width: min(100%, 320px); height: auto; display: block; margin-inline: auto;
  filter: drop-shadow(0 0 24px rgba(238,28,43,.14)); }
.portrait-gallery { display: grid; grid-template-columns: minmax(170px, .45fr) minmax(0,1fr); gap: 32px;
  padding: 32px; border-left: 4px solid var(--accent); background: #171717; align-items: center; }
.portrait-gallery-image { margin: 0; display: grid; justify-items: center; background: radial-gradient(circle at 50% 70%, #292929, #111); padding: 18px; }
.portrait-gallery-image img { display: block; max-width: 220px; width: 100%; height: auto; }
.portrait-gallery-image figcaption { color: #a9a9a9; font-size: .72rem; margin-top: 8px; }
.portrait-gallery-text h3 { font: 700 1.8rem 'Rajdhani', sans-serif; text-transform: uppercase; margin: 0 0 10px; }
.portrait-gallery-text p { color: #bbb; line-height: 1.7; }

/* Page voiture : bloc photo et titre adaptatifs, sans déformation. */
.car-hero { padding-top: clamp(50px, 6vw, 95px); padding-bottom: clamp(55px, 7vw, 90px); }
.car-hero-layout { max-width: 1340px; margin: 0 auto; display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; gap: clamp(28px, 4vw, 60px); }
.car-hero h1 { overflow-wrap: anywhere; }
.car-hero-photo { margin: 0; min-width: 0; }
.car-hero-photo img { width: 100%; height: auto; max-height: 480px; display: block; object-fit: contain; }
.car-hero-photo figcaption { padding: 9px 0; text-align: right; font-size: .75rem; color: #aaa; }
.gallery-intro { margin: -15px 0 28px !important; max-width: 800px; color: #b9b9b9; line-height: 1.7; }
.photo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.photo-card { background: #0a0a0a; margin: 0; padding: 12px; min-width: 0; border: 1px solid #262626; }
.photo-card a { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0; overflow: hidden; }
.photo-card img { display: block; width: 100%; height: min(58vw, 620px); object-fit: contain; object-position: center; }
.photo-card figcaption { font-size: .78rem; color: #bbb; line-height: 1.5; margin-top: 12px; padding: 0 8px 4px; }
.photo-card-wide { grid-column: 1 / -1; }
.photo-card-wide img { height: auto; width: 100%; max-height: 680px; object-fit: contain; }

/* Univers du drift : vraie image visible ENTIÈRE même sur un smartphone. */
.universe-photo { width: 100%; max-width: 960px; margin: 0 0 34px; padding: 10px; background: #080808; border: 1px solid #2d2d2d; }
.universe-photo img { display: block; width: 100%; height: auto; max-height: 650px; object-fit: contain; }
.universe-photo figcaption { font-size: .76rem; color: #a8a8a8; padding: 10px 4px 4px; line-height: 1.6; }

@media (max-width: 900px) {
  .hero-media { inset-inline-start: 20%; }
  .hero-photographic::before { background: linear-gradient(90deg, rgba(9,9,9,.96), rgba(9,9,9,.72) 45%,rgba(9,9,9,.18)), linear-gradient(0deg, #0b0b0b, transparent 60%); }
  .car-hero-layout { grid-template-columns: 1fr; }
  .car-hero-photo img { max-height: 560px; }
}
@media (max-width: 650px) {
  .hero-photographic { min-height: 100svh; }
  .hero-media { inset: 0; opacity: .85; }
  .hero-media img { object-position: 54% 78%; }
  .hero-photographic::before { background: linear-gradient(180deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.65) 25%, rgba(0,0,0,.25) 53%, rgba(0,0,0,.90) 100%); }
  .hero-photographic .hero-content { padding-top: 48px; padding-bottom: 70px; }
  .hero-photo-credit { bottom: 12px; right: 6%; }
  .driver-hero-layout { grid-template-columns: 1fr; gap: 0; }
  .driver-hero-copy { padding-bottom: 35px; }
  .driver-portrait img { width: min(55vw, 260px); }
  .portrait-gallery { grid-template-columns: 1fr; padding: 22px; }
  .car-hero { padding-block: 50px 65px; }
  .car-hero-photo img { max-height: 400px; }
  .photo-grid { grid-template-columns: 1fr; gap: 18px; }
  .photo-card-wide { grid-column: 1; }
  .photo-card img { height: auto; max-height: 650px; }
}


/* ===============================================================
   V6 — DOSSIER SPONSORING 2027 : page web interactive et responsive
   =============================================================== */
.sponsor-page { --sponsor-muted: #bdbdc4; }
.sponsor-page [id] { scroll-margin-top: 80px; }
.sponsor-hero { min-height: min(780px, 88svh); position: relative; isolation: isolate; display: flex; align-items: end; overflow: hidden; background:#090b0d; }
.sponsor-hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 48%; z-index:-3; }
.sponsor-hero-shade { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(7,7,9,.97) 0%,rgba(7,7,9,.80) 42%,rgba(7,7,9,.16) 100%),linear-gradient(0deg,rgba(7,7,9,.92),transparent 45%); }
.sponsor-hero-content { padding:95px 8% 94px; position:relative; width:100%; }
.sponsor-hero h1 { font-size:clamp(3.4rem, 8vw, 7rem); max-width:790px; }
.sponsor-hero h1 span,.sponsor-section h2 span { color:var(--accent); }
.sponsor-hero-content>p:not(.eyebrow):not(.sponsor-photo-credit) { max-width:630px;line-height:1.85;color:#eee;font-size:1rem; }
.sponsor-hero .sponsor-photo-credit { position:absolute;right:3%;bottom:18px; font-size:.69rem;color:#c5c5c5; text-align:right; }
.sponsor-buttons { margin-top:30px; }
.sponsor-subnav { position:sticky;top:0;z-index:10; display:flex;align-items:center;gap:0;overflow-x:auto;white-space:nowrap;scrollbar-width:thin;background:#151515f7;border-block:1px solid #353535;padding:0 6%; }
.sponsor-subnav a {display:inline-block;padding:20px 14px;text-decoration:none;font:700 .8rem 'Montserrat',sans-serif;letter-spacing:.3px;transition:color .2s;}
.sponsor-subnav a:hover,.sponsor-subnav a:focus-visible {color:#ff555e;}
.sponsor-section { padding:95px 8%; background:#0b0b0b; border-bottom:1px solid #232323; }
.sponsor-section-dark {background:#111114;}
.sponsor-wrap {max-width:1300px;margin:auto;}
.sponsor-kicker {font:700 1rem 'Rajdhani',sans-serif;letter-spacing:4px;color:#fa4a54;text-transform:uppercase;margin:0 0 12px;}
.sponsor-section h2 {font:700 clamp(2.1rem,4.4vw,4rem)/1.04 'Rajdhani',sans-serif;margin:0 0 34px;text-transform:uppercase;max-width:1000px;}
.sponsor-section h3 {font:700 1.6rem 'Rajdhani',sans-serif;text-transform:uppercase;}
.sponsor-split {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,5vw,75px);align-items:center;}
.sponsor-split-reverse {grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);}
.sponsor-text {color:#d0d0d4;line-height:1.85;font-size:.98rem;}
.sponsor-text p {margin:0 0 16px;}
.sponsor-lead {font-size:clamp(1.16rem,2vw,1.38rem);font-weight:700;color:white !important;line-height:1.6 !important;}
.sponsor-text strong {color:white;}
.sponsor-textlink {color:#ff686e;display:inline-flex;margin-top:12px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;}
.sponsor-textlink:hover {color:white;}
.sponsor-figure {min-width:0;margin:0;border:1px solid #343438;background:#0a0a0a;padding:8px;}
.sponsor-figure img {display:block;width:100%;height:auto;object-fit:contain;max-height:590px;}
.sponsor-figure figcaption {color:#a2a2a8;font-size:.74rem;padding:10px 6px 5px;line-height:1.5;}
.sponsor-car-layout {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:42px;align-items:center;}
.sponsor-car-feature img {max-height:535px;}
.sponsor-car-specs {background:linear-gradient(155deg,#1b1b20,#0b0b0e);border-left:4px solid #ed2535;padding:35px;}
.sponsor-spec-label {font-weight:700;letter-spacing:1.8px;font-size:.72rem;text-transform:uppercase;color:#ff7079;margin:0 0 10px;}
.sponsor-car-specs h3 {font-size:2.2rem;margin:0 0 16px;}
.sponsor-car-specs>p {line-height:1.7;color:#c9c9cd;}
.sponsor-car-specs>p strong {color:white;}
.sponsor-maps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:22px 0;}
.sponsor-maps div {background:#262629;padding:13px 8px;text-align:center;}
.sponsor-maps span {display:block;color:#b5b5bb;font-size:.62rem;letter-spacing:1px;}
.sponsor-maps strong {display:block;font:700 clamp(1.35rem,3vw,2rem) 'Rajdhani',sans-serif;color:white;white-space:nowrap;}
.sponsor-maps small {font-size:.65em;}
.sponsor-note,.sponsor-disclaimer {font-size:.82rem;color:#9b9ba2 !important;line-height:1.7;}
.sponsor-disclaimer {margin:-12px 0 30px;}
.sponsor-gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px;}
.sponsor-gallery figure {margin:0; background:#181819;padding:8px;min-width:0;}
.sponsor-gallery img {width:100%;height:220px;object-fit:contain;display:block;background:#080809;}
.sponsor-gallery figcaption {font-size:.72rem;color:#a6a6a9;padding:7px;}
.sponsor-timeline {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:30px;}
.sponsor-timeline>div {background:#18181b;border-top:3px solid #e50914;padding:24px;}
.sponsor-timeline time {font:700 2rem 'Rajdhani',sans-serif;color:#ff3d4b;}
.sponsor-timeline p {color:#d1d1d4;line-height:1.7;margin:6px 0 0;font-size:.9rem;}
.sponsor-wide-photo {max-width:1100px;}
.sponsor-wide-photo img {width:100%;max-height:620px;object-fit:contain;}
.sponsor-section-intro {max-width:900px;color:#c4c4c9;line-height:1.85;margin:-12px 0 33px;}
.sponsor-offers {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;}
.sponsor-offer {min-width:0;background:linear-gradient(165deg,#1b1b1f,#0e0e10);border:1px solid #39393d;border-top:4px solid #b6b6b9;padding:24px;display:flex;flex-direction:column;min-height:335px;}
.sponsor-offer:nth-child(1) {border-top-color:#bb855d;}
.sponsor-offer:nth-child(2) {border-top-color:#bfc3ce;}
.sponsor-offer:nth-child(3) {border-top-color:#f7bc48;}
.sponsor-offer-featured {border-top-color:#e50914;background:linear-gradient(160deg,#37121b,#121214);}
.sponsor-tier {font:700 1.55rem 'Rajdhani',sans-serif;text-transform:uppercase;letter-spacing:2px;margin:0 0 12px;}
.sponsor-price {font:700 clamp(2rem,2.7vw,2.8rem) 'Rajdhani',sans-serif;color:white;white-space:nowrap;margin-bottom:22px;}
.sponsor-offer p:not(.sponsor-tier) {color:#d0d0d5;font-size:.88rem;line-height:1.75;margin:0 0 20px;}
.sponsor-offer a {margin-top:auto;display:inline-flex;justify-content:space-between;gap:8px;text-decoration:none;border-top:1px solid #555;padding-top:16px;font-size:.76rem;font-weight:700;color:#ff8188;}
.sponsor-offer a:hover {color:white;}
.sponsor-list {padding-left:20px;line-height:2.1;margin-top:10px;}
.sponsor-archive {margin-top:33px;padding:22px;border:1px solid #343438;border-left:4px solid #e50914;background:#141417;}
.sponsor-archive p {margin:6px 0;line-height:1.7;}
.sponsor-budget {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(25px,5vw,65px);align-items:start;}
.sponsor-budget-intro {background:#1b1b20;padding:28px;}
.sponsor-budget-intro span {display:block;font-weight:700;color:#a7a7b0;text-transform:uppercase;letter-spacing:2px;font-size:.8rem;}
.sponsor-budget-intro strong {display:block;font:700 clamp(3.5rem,7vw,5.8rem) 'Rajdhani',sans-serif;color:white;margin:8px 0;line-height:1;}
.sponsor-budget-intro p {color:#c8c8ce;font-size:.9rem;line-height:1.75;}
.sponsor-budget-intro img {width:100%;height:290px;object-fit:cover;object-position:center 56%;display:block;margin-top:24px;}
.sponsor-budget-bars {padding-top:6px;}
.budget-row {margin-bottom:22px;}
.budget-row-top {display:flex;justify-content:space-between;gap:14px;margin-bottom:10px;font-size:.85rem;}
.budget-row-top strong {white-space:nowrap;color:#fff;}
.budget-track {height:12px;overflow:hidden;background:#303035;border-radius:3px;}
.budget-track span {display:block;height:100%;background:linear-gradient(90deg,#a80814,#ff3949);border-radius:3px;}
.sponsor-socials {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:22px 0 27px;}
.sponsor-socials>div {background:#1c1c20;border:1px solid #303037;border-top:3px solid #e50914;padding:23px;min-width:0;}
.sponsor-socials strong {display:block;font:700 clamp(2rem,3.4vw,3.3rem) 'Rajdhani',sans-serif;}
.sponsor-socials span {display:block;color:#ff6671;font-weight:700;margin:2px 0 9px;}
.sponsor-socials small {font-size:.72rem;color:#b0b0b8;overflow-wrap:anywhere;}
.sponsor-info {color:#c6c6ca;line-height:1.8;padding:24px;border-left:4px solid #e50914;background:#1a1a1e;margin-bottom:35px;}
.sponsor-logo-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.sponsor-logo-grid>div {background:#fafafa;color:#28282b;min-height:185px;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:15px;}
.sponsor-logo-grid img {width:100%;height:105px;object-fit:contain;}
.sponsor-logo-grid span {font-size:.78rem;text-align:center;font-weight:700;}
.sponsor-contact-section {background:radial-gradient(circle at 92% 15%,rgba(205,12,35,.17),transparent 40%),#090909;}
.sponsor-contact-cards {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:960px;margin-bottom:34px;}
.sponsor-contact-cards>div {background:#1c1c1e;border-left:4px solid #e50914;padding:24px;min-width:0;}
.sponsor-contact-cards span {display:block;color:#ff6672;text-transform:uppercase;font-size:.72rem;letter-spacing:1px;font-weight:700;margin-bottom:10px;}
.sponsor-contact-cards a,.sponsor-contact-cards p {color:white;font-size:clamp(.9rem,1.7vw,1.05rem);overflow-wrap:anywhere;margin:0;line-height:1.6;}
.sponsor-contact-section>.sponsor-wrap>.sponsor-note {margin-top:20px;}
.sponsor-page .return-link {color:#ddd;}
@media(max-width:1100px) {
 .sponsor-offers,.sponsor-logo-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .sponsor-socials {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:800px) {
 .sponsor-split,.sponsor-split-reverse,.sponsor-car-layout,.sponsor-budget {grid-template-columns:1fr;}
 .sponsor-section {padding:66px 6%;}
 .sponsor-timeline {grid-template-columns:repeat(2,minmax(0,1fr));}
 .sponsor-hero-content {padding:90px 6% 77px;}
 .sponsor-subnav {padding:0 3%;}
}
@media(max-width:530px) {
 .sponsor-hero {min-height:630px;}
 .sponsor-hero-photo {object-position:50% 55%;}
 .sponsor-hero-shade {background:linear-gradient(180deg,rgba(7,7,9,.85),rgba(7,7,9,.4) 43%,rgba(7,7,9,.95) 94%);}
 .sponsor-hero h1 {font-size:clamp(3.3rem,14vw,5rem);}
 .sponsor-hero-content {padding:92px 6% 82px;}
 .sponsor-hero .sponsor-photo-credit {right:6%;bottom:10px;max-width:80%;font-size:.59rem;}
 .sponsor-gallery {grid-template-columns:1fr;}
 .sponsor-timeline,.sponsor-offers,.sponsor-logo-grid,.sponsor-socials,.sponsor-contact-cards {grid-template-columns:1fr;}
 .sponsor-maps strong {font-size:1.4rem;}
 .sponsor-offer {min-height:initial;}
 .sponsor-budget-intro img {height:220px;}
}

/* Ajouts V7 — médias conservés dans leur qualité d’origine */
.media-v7{max-width:1200px;margin:0 auto;padding:65px 6%;}
.media-v7 h2{font-family:'Rajdhani',sans-serif;font-size:clamp(2rem,4vw,3.1rem);text-transform:uppercase;line-height:1.1;margin:0 0 16px;}
.media-v7 h2 span{color:#e50914;}.media-v7>p{max-width:760px;line-height:1.65;margin-bottom:22px;color:#dadada;}
.video-v7{width:100%;max-width:960px;margin:0 auto;border-radius:12px;overflow:hidden;background:#070707;border:1px solid #383838;box-shadow:0 18px 45px rgba(0,0,0,.35);}
.video-v7 video{display:block;width:100%;height:auto;max-height:75vh;background:#050505;object-fit:contain;}
.video-v7-portrait{max-width:420px}.video-v7-portrait video{max-height:75vh;aspect-ratio:9/16;}
.media-v7-note{font-size:.82rem;color:#aaa!important;text-align:center;margin:10px auto 0!important;}
.team-photo-v7{margin:24px 0 0;max-width:1100px;}.team-photo-v7 img{display:block;width:100%;height:auto;border-radius:10px;}
.team-photo-v7 figcaption{padding:12px 2px;color:#aaa;font-size:.85rem;}
@media(max-width:768px){.media-v7{padding:38px 5%;}.video-v7 video{max-height:68vh;}}

/* Correctif portrait pilote V7 — photo fournie, sans génération IA.
 * Original 200 × 240 px : limiter l'agrandissement pour éviter le flou.
 * Position inchangée : dans le bloc droit du bandeau, alignée en bas. */
.driver-hero .driver-portrait img {
  display: block;
  width: min(100%, 260px);
  max-width: 260px;
  height: auto;
  object-fit: contain;
  image-rendering: auto;
  filter: drop-shadow(0 12px 28px rgba(0,0,0,.38));
}
.portrait-gallery-image img {
  width: min(100%, 200px);
  height: auto;
  object-fit: contain;
  image-rendering: auto;
}
@media (max-width:650px) {
  .driver-hero .driver-portrait img { width: min(60vw, 220px); }
}


/* ===============================================================
   V9 — FICHE VOITURE ALIMENTÉE PAR LE DOSSIER SPONSORING 2027
   =============================================================== */
.car-tech-wrap {max-width: 1280px; margin: 0 auto;}
.car-hero-copy strong {color: #fff;}
.car-hero-facts {display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px;}
.car-hero-facts span {border-left: 3px solid var(--accent); padding: 7px 15px; color: #cbcbcb; background: #ffffff0b; font-size: .85rem; line-height: 1.55;}
.car-hero-facts strong {display: inline; color: #fff; font-size: 1.15rem; font-weight: 700;}
.car-hero-actions {display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px;}
.car-kicker {color: #fa505c !important; font-size: .78rem; letter-spacing: 2.5px; text-transform: uppercase; font-weight: 700; margin: 0 0 14px !important;}
.car-tech-lead {max-width: 880px; color: #c9c9c9 !important; font-size: 1.02rem; line-height: 1.9 !important; margin-bottom: 36px !important;}
.car-spec-layout {display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); align-items: stretch; gap: clamp(20px, 4vw, 50px);}
.car-spec-photo {margin: 0; border: 1px solid #333; background: #090909; padding: 10px; min-width: 0; display: flex; flex-direction: column; justify-content: center;}
.car-spec-photo img {width: 100%; height: auto; max-height: 520px; object-fit: contain; display: block;}
.car-spec-photo figcaption {color: #aaa; font-size: .75rem; line-height: 1.5; padding: 11px 7px 3px;}
.car-identity {background: linear-gradient(145deg, #202024, #111112); border-left: 4px solid var(--accent); padding: clamp(22px, 3vw, 38px); display: flex; flex-direction: column; justify-content: center;}
.car-identity-row {display: flex; justify-content: space-between; align-items: baseline; gap: 20px; padding: 17px 0; border-bottom: 1px solid #4445;}
.car-identity-row span {font-size: .85rem; color: #b9b9b9; line-height: 1.55;}
.car-identity-row strong {text-align: right; font: 700 clamp(1.25rem, 2.4vw, 1.85rem) 'Rajdhani',sans-serif; color: #fff; line-height: 1.15;}
.car-source-note {font-size: .76rem; color: #ababab; line-height: 1.7; margin: 20px 0 0;}
.car-power-heading {margin: clamp(45px, 6vw, 80px) 0 22px; display: flex; justify-content: space-between; align-items: end; flex-wrap: wrap; gap: 15px 30px;}
.car-power-heading h3 {font: 700 clamp(1.95rem, 4vw, 3rem)/1.1 'Rajdhani',sans-serif; text-transform: uppercase; margin: 0; max-width: 680px;}
.car-power-heading h3 span {color: var(--accent);}
.car-power-heading > p {color: #a9a9a9; font-size: .8rem; line-height: 1.65; max-width: 240px;}
.car-power-grid {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px;}
.car-power-card {min-width: 0; padding: clamp(23px, 3vw, 35px); background: linear-gradient(155deg,#232326,#111); border: 1px solid #363638; border-top: 3px solid #68686e;}
.car-power-card-top {border-top-color: var(--accent); background: linear-gradient(150deg,#291318,#131313);}
.car-map-label {color: #ff858c; font-size: .76rem; letter-spacing: 3px; font-weight: 700;}
.car-power-number {font: 700 clamp(2.9rem, 6vw, 5.4rem)/1 'Rajdhani',sans-serif !important; color: white !important; margin: 10px 0 20px !important; white-space: nowrap;}
.car-power-number small {font-size: .36em; color: #d5d5d5; text-transform: uppercase;}
.car-power-bar {height: 4px; width: 100%; display: block; background: #484848; position: relative;}
.car-power-bar::after {position: absolute; content: ''; left: 0; top: 0; height: 100%; background: var(--accent); width: var(--level);}
.car-doc-gallery {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px;}
.car-doc-gallery figure {margin: 0; padding: 10px; border: 1px solid #303030; background: #080808; min-width: 0;}
.car-doc-gallery a {display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; background: #0f0f0f;}
.car-doc-gallery img {display: block; max-height: 100%; width: 100%; height: 100%; object-fit: contain;}
.car-doc-gallery figcaption {color: #bfbfbf; padding: 11px 5px 2px; font-size: .8rem;}
#fiche-technique, #video-voiture {scroll-margin-top: 25px;}
@media (max-width: 880px) {
 .car-spec-layout {grid-template-columns: 1fr;}
 .car-spec-photo img {max-height: 440px;}
}
@media (max-width: 650px) {
 .car-hero-facts {flex-direction: column; gap: 9px;}
 .car-hero-actions {flex-direction: column;}
 .car-hero-actions .btn {width: 100%;}
 .car-identity-row {gap: 10px;}
 .car-power-grid {grid-template-columns: 1fr; gap: 13px;}
 .car-power-card {padding: 22px 24px;}
 .car-power-number {font-size: 3.6rem !important;}
 .car-doc-gallery {grid-template-columns: 1fr;}
 .car-doc-gallery a {aspect-ratio: 5 / 3;}
}

/* ===============================================================
   V10 — NOUS SUIVRE / NOUS AIDER (site multipages conservé)
   =============================================================== */
/* Menu neuf liens : retour à la ligne soigné sans chevauchement du logo. */
.header {gap:clamp(18px,2.7vw,38px);}
.header nav ul {column-gap:clamp(11px,1.45vw,23px);row-gap:11px;justify-content:flex-end;}
.header nav a {font-size:clamp(.66rem,.72vw,.8rem);letter-spacing:.65px;}
.v10-page {overflow:hidden;}
.v10-hero {min-height:clamp(490px,63vh,730px);position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden;background:#09090b;}
.v10-hero-photo {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 53%;z-index:-2;}
.v10-hero:before {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,5,7,.97),rgba(5,5,7,.84) 41%,rgba(5,5,7,.18) 89%),linear-gradient(0deg,#0b0b0b,transparent 28%);}
.v10-hero-content {width:min(100%,1250px);margin:0 auto;padding:94px 8% 105px;}
.v10-hero-content h1 {font-size:clamp(4.2rem,9.1vw,8.2rem);line-height:.87;max-width:850px;}
.v10-hero-content h1 span,.v10-section h2 span {color:#e50914;}
.v10-hero-content>p:not(.eyebrow) {color:#dfdfdf;max-width:640px;line-height:1.78;font-size:clamp(.96rem,1.25vw,1.13rem);margin:0 0 30px;}
.v10-section {padding:clamp(62px,8vw,110px) 8%;background:#0b0b0b;}
.v10-inner {max-width:1260px;margin:0 auto;}
.v10-overline {color:#ff717a!important;font-size:.78rem!important;text-transform:uppercase;font-weight:700;letter-spacing:2.8px;margin:0 0 15px!important;}
.v10-section h2 {font:700 clamp(2.35rem,4.7vw,4.35rem)/.99 'Rajdhani',sans-serif;text-transform:uppercase;margin:0 0 23px;}
.v10-lead {max-width:830px;color:#c6c6c6;line-height:1.8;margin:0 0 40px;}
.v10-social-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.v10-social-card {position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;background:linear-gradient(145deg,#202023,#101011);border:1px solid #353538;border-left:4px solid #e50914;padding:clamp(25px,3.4vw,43px);}
.v10-social-icon {width:62px;height:62px;border-radius:14px;background:#e50914;color:#fff;display:grid;place-items:center;font:800 1.6rem 'Rajdhani',sans-serif;letter-spacing:-1px;margin-bottom:26px;}
.v10-social-tag {font-size:.69rem!important;text-transform:uppercase;letter-spacing:1.6px;font-weight:700;color:#f2757b!important;margin:0 0 10px!important;}
.v10-social-card h3 {font:700 2.4rem 'Rajdhani',sans-serif;text-transform:uppercase;line-height:1;margin:0 0 10px;}
.v10-handle {color:#fff!important;font-weight:700;font-size:.86rem;overflow-wrap:anywhere;}
.v10-social-card p {color:#bcbcbc;line-height:1.75;}
.v10-social-link {display:inline-flex;margin-top:auto;padding-top:22px;color:#fff;text-decoration:none;font-size:.8rem;font-weight:700;letter-spacing:.3px;border-bottom:1px solid #d24b54;padding-bottom:7px;gap:10px;}
.v10-social-link:hover {color:#ff777f;}
.v10-unverified {margin-top:auto!important;padding-top:22px;color:#949494!important;font-size:.78rem;font-style:italic;}
.v10-follow-bottom {background:#121212;border-block:1px solid #252525;}
.v10-follow-split {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(28px,5vw,80px);align-items:center;}
.v10-follow-split>div>p:not(.v10-overline) {color:#c7c7c7;line-height:1.8;margin-bottom:30px;}
.v10-team-photo {margin:0;}
.v10-team-photo img {display:block;width:100%;height:auto;object-fit:contain;border:1px solid #343434;}
.v10-team-photo figcaption {color:#a1a1a1;font-size:.75rem;line-height:1.5;padding-top:10px;}
.v10-help-hero .v10-hero-photo {object-position:center 55%;}
.v10-donation-layout {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(27px,6vw,90px);align-items:start;}
.v10-donation-copy>p:not(.v10-overline) {line-height:1.85;color:#c9c9c9;margin:0 0 17px;}
.v10-donation-image {margin-top:39px;border:1px solid #343434;padding:8px;background:#090909;}
.v10-donation-image img {width:100%;height:auto;display:block;max-height:500px;object-fit:contain;}
.v10-donation-panel {background:linear-gradient(145deg,#202024,#111113);border:1px solid #38383b;border-top:4px solid #e50914;padding:clamp(22px,4vw,44px);box-shadow:0 24px 58px #0006;}
.v10-donation-panel h2 {font-size:clamp(2rem,3.2vw,3.15rem);margin:0 0 14px;}
.v10-panel-intro {color:#bdbdbd;font-size:.9rem;line-height:1.75;}
.v10-donation-fieldset {border:0;padding:0;margin:29px 0 0;min-width:0;}
.v10-donation-fieldset legend {color:white;font-size:.8rem;text-transform:uppercase;font-weight:700;letter-spacing:1px;padding:0 0 14px;}
.v10-amount-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.v10-amount {cursor:pointer;position:relative;display:block;min-width:0;}
.v10-amount input {position:absolute;opacity:0;width:1px;height:1px;}
.v10-amount span {display:grid;place-items:center;min-height:65px;color:#fff;font:700 clamp(1.45rem,2.7vw,2rem) 'Rajdhani',sans-serif;border:1px solid #65656b;background:#1c1c20;transition:background .15s,border-color .15s;}
.v10-amount:hover span {border-color:#f4a5a9;}
.v10-amount input:checked+span {background:#b90717;border-color:#ff5260;box-shadow:inset 0 0 0 1px #fa4552;}
.v10-amount input:focus-visible+span {outline:3px solid #fff;outline-offset:3px;}
.v10-custom-wrap {margin-top:22px;}
.v10-custom-label {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:9px;}
.v10-custom-heading {color:#fff;font-size:.88rem;font-weight:700;}
.v10-custom-hint {font-size:.72rem;color:#aaa;}
.v10-custom-input {display:flex;align-items:center;background:#09090b;border:1px solid #73737b;}
.v10-custom-input:focus-within {outline:2px solid #eb394b;outline-offset:2px;}
.v10-custom-input input {width:100%;font:600 1.15rem 'Montserrat',sans-serif;color:#fff;background:none;padding:16px 18px;border:0;outline:0;min-width:0;}
.v10-custom-input>span {font-weight:700;color:#ccc;padding:0 19px;}
.v10-donation-summary {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:21px 0;margin-top:20px;border-top:1px solid #3b3b41;border-bottom:1px solid #3b3b41;}
.v10-donation-summary span {color:#ccc;font-size:.86rem;}
.v10-donation-summary strong {font:700 2.15rem 'Rajdhani',sans-serif;white-space:nowrap;}
.v10-pay-button {width:100%;display:block;margin-top:22px;min-height:57px;border:0;background:#e50914;color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.65px;font-size:.83rem;cursor:pointer;}
.v10-pay-button:hover:not(:disabled) {background:#bc0915;}
.v10-pay-button:disabled {background:#48484c;color:#d7d7d7;cursor:not-allowed;}
.v10-payment-status {color:#c7c7c7;font-size:.79rem;line-height:1.6;margin:15px 0 0;}
.v10-privacy-note {font-size:.72rem!important;color:#949494!important;margin-top:14px!important;line-height:1.5!important;}
.v10-input-error {color:#ff8992;font-weight:600;font-size:.81rem;}
.v10-help-info {background:#141415;}
.v10-help-grid {display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,5vw,70px);}
.v10-help-grid p {color:#c9c9c9;line-height:1.8;max-width:660px;}
.v10-help-grid .btn {margin-top:14px;}
.v10-help-contact {border-left:4px solid #e50914;padding:27px 30px;background:#202022;min-width:0;}
.v10-help-contact h3 {font:700 1.9rem/1.06 'Rajdhani',sans-serif;margin:0 0 13px;}
.v10-help-contact a {overflow-wrap:anywhere;color:white;}
.v10-help-contact .v10-disclaimer {color:#a9a9a9;font-size:.76rem;margin-top:22px;}
.v10-footer {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 8%;background:#060606;border-top:1px solid #2b2b2b;}
.v10-footer img {width:130px;height:auto;object-fit:contain;}
.v10-footer p {color:#a3a3a3;font-size:.74rem;line-height:1.65;}
.v10-footer a {color:#fff;text-underline-offset:4px;}
@media(max-width:1000px) {
 .v10-donation-layout,.v10-follow-split {grid-template-columns:1fr;}
 .v10-donation-copy {max-width:830px;}
 .v10-donation-image {max-width:650px;}
}
@media(max-width:650px) {
 .v10-hero {min-height:520px;}
 .v10-hero-photo {object-position:65% center;}
 .v10-hero:before {background:linear-gradient(90deg,rgba(7,7,8,.94),rgba(7,7,8,.55)),linear-gradient(0deg,#0b0b0b,transparent 65%);}
 .v10-hero-content {padding:84px 6% 85px;}
 .v10-hero-content h1 {font-size:clamp(3.4rem,15.5vw,5rem);}
 .v10-section {padding:54px 6%;}
 .v10-social-grid,.v10-help-grid {grid-template-columns:1fr;}
 .v10-amount-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
 .v10-social-card {padding:25px;}
 .v10-footer {flex-direction:column;align-items:flex-start;padding:29px 6%;}
}

/* V13 — Un seul bouton SumUp, sans sélection fictive sur le site. */
.v13-pay-link {display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;text-decoration:none;border-radius:3px;padding:18px 16px;line-height:1.5;}
.v13-pay-link:focus-visible {outline:3px solid #fff;outline-offset:4px;}
.v13-pay-link[aria-disabled="true"] {background:#464646;color:#ccc;pointer-events:none;}
.v13-sumup-steps {margin:28px 0 24px;border-top:1px solid #34343a;border-bottom:1px solid #34343a;padding:13px 0;}
.v13-sumup-steps p {display:flex;align-items:flex-start;gap:14px;color:#dedee1;font-size:.88rem;line-height:1.65;margin:12px 0;}
.v13-sumup-steps p span {font:700 1.35rem 'Rajdhani',sans-serif;color:var(--accent);line-height:1.1;}


/* V14 — Formulaire SumUp intégré sans redirection */
.v14-donation-form {display:grid;gap:12px;margin-top:24px;}
.v14-donation-form label {font-size:.87rem;font-weight:700;color:#f1f1f3;letter-spacing:.025em;}
.v14-amount-input-wrap {display:flex;align-items:center;justify-content:space-between;border:1px solid #5b5b60;background:#0c0c0f;border-radius:4px;overflow:hidden;transition:border-color .18s ease;}
.v14-amount-input-wrap:focus-within {border-color:#f14853;outline:2px solid rgba(229,9,20,.18);}
.v14-amount-input-wrap input {min-width:0;flex:1;border:0;background:transparent;color:#fff;font:700 2rem 'Rajdhani',sans-serif;padding:12px 18px;outline:0;}
.v14-amount-input-wrap>span {color:#fff;font:700 1.45rem 'Rajdhani',sans-serif;padding:0 20px;}
.v14-field-hint {font-size:.77rem;color:#aaaab1;line-height:1.6;}
.v14-submit {cursor:pointer;width:100%;border:0;margin-top:10px;font:800 .88rem Montserrat,sans-serif;letter-spacing:.02em;}
.v14-submit:disabled {opacity:.5;cursor:not-allowed;}
.v14-pay-box {margin-top:23px;padding:22px 15px;background:#f8f8f9;color:#1a1a1b;border-radius:5px;}
.v14-pay-box[hidden] {display:none;}
.v14-payment-head {display:flex;justify-content:space-between;gap:10px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #ddd;}
.v14-payment-head strong {font:700 1.35rem 'Rajdhani',sans-serif;}
.v14-payment-head span {font:700 1.35rem 'Rajdhani',sans-serif;}
.v14-pay-box .v14-field-hint {color:#545459;margin:16px 0 0;}
.v14-status {margin-top:18px;padding:14px;border-left:3px solid #89898f;background:#19191c;color:#d2d2d7;}
.v14-status.is-error {border-color:#ff6672;color:#ffd0d2;}
.v14-status.is-success {border-color:#60ba87;color:#daffe8;}
.v14-status.is-pending {border-color:#edb84f;color:#ffe5a3;}
@media(max-width:560px){.v14-pay-box{padding:16px 10px;}.v14-amount-input-wrap input{font-size:1.65rem;}.v14-payment-head{flex-wrap:wrap;}}

/* Initial DRIFT V15 : montants suggeres pour les dons, avec montant libre */
.v15-preset-title {font-size:.87rem;font-weight:700;color:#f1f1f3;margin:2px 0 0;}
.v15-preset-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 10px;}
.v15-preset {min-height:64px;border:1px solid #62626a;background:#1a1a1f;color:#fff;border-radius:4px;font:700 clamp(1.35rem,2.6vw,1.8rem) 'Rajdhani',sans-serif;cursor:pointer;transition:border-color .16s,background .16s;}
.v15-preset:hover {border-color:#ff8b94;background:#302024;}
.v15-preset[aria-pressed="true"] {border-color:#ff5b66;background:#b7091a;box-shadow:inset 0 0 0 1px #e84b58;}
.v15-preset:focus-visible {outline:3px solid white;outline-offset:3px;}
.v15-custom-title {margin-top:1px;}
.v15-summary {display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 0 13px;border-top:1px solid #45454b;border-bottom:1px solid #45454b;margin-top:6px;}
.v15-summary span {font-size:.82rem;color:#c5c5c9;}
.v15-summary strong {font:700 clamp(1.5rem,3vw,2.1rem) 'Rajdhani',sans-serif;color:white;text-align:right;}
@media (max-width:400px){.v15-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.v15-preset{min-height:54px;}}

/* V16 — Boutique, panier, espace client et newsletter. Reprise de la charte existante. */
.v16-page {background:#0b0b0b; min-height:70vh}
.v16-banner {padding:80px 8% 60px;background:radial-gradient(circle at 85% 25%,rgba(229,9,20,.21),transparent 36%),linear-gradient(135deg,#191919,#090909);border-bottom:1px solid #2d2d2d}
.v16-banner h1 {font-size:clamp(3rem,7vw,6.2rem);line-height:1;margin:8px 0 16px}
.v16-lead {color:#d1d1d1;max-width:850px;line-height:1.7}
.v16-wrap {max-width:1380px;margin:auto;padding:65px 8%}
.v16-wrap h2 {font:700 clamp(2rem,4vw,3.15rem) 'Rajdhani',sans-serif;text-transform:uppercase;margin:0 0 20px}
.v16-wrap h2 span {color:var(--accent)}
.v16-wrap p,.v16-wrap li {color:#c3c3c3;line-height:1.7}
.v16-heading {display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:30px}
.v16-heading p {max-width:780px}
.v16-demo {border:1px solid #74492e;background:#261b15;padding:18px 20px;color:#f3d5c0!important;margin:25px 0 32px;line-height:1.7;border-radius:5px}
.v16-products {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.v16-product {background:linear-gradient(140deg,#1c1c1c,#111);border:1px solid #373737;min-width:0;display:flex;flex-direction:column}
.v16-product-image {min-height:210px;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#35353c,#111);border-bottom:1px solid #303035}
.v16-product-image svg {width:125px;height:125px;fill:none;stroke:#e7e7e7;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.v16-product-body {padding:25px;display:flex;flex-direction:column;gap:10px;flex:1}
.v16-product-body h3 {margin:0;font:700 1.7rem 'Rajdhani',sans-serif;text-transform:uppercase}
.v16-product-body p {margin:0 0 8px;font-size:.88rem;flex:1}
.v16-product-price {font:700 1.9rem 'Rajdhani',sans-serif}
.v16-product-label {color:#ff9aa0;font-size:.75rem;text-transform:uppercase;letter-spacing:1px;font-weight:700}
.v16-action {display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#e50914;color:white;border:2px solid #e50914;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;font-size:.82rem;font-family:inherit;font-weight:700;padding:14px 19px;text-decoration:none;border-radius:3px;transition:background .18s}
.v16-action:hover:not(:disabled){background:#b3070f}
.v16-action:focus-visible,.v16-tab:focus-visible,.v16-qty button:focus-visible,.v16-textbutton:focus-visible {outline:3px solid white;outline-offset:4px}
.v16-outline {background:transparent;color:white}
.v16-disabled,.v16-action:disabled {opacity:.55;cursor:not-allowed}
.v16-bottomlinks {display:flex;gap:30px;flex-wrap:wrap;margin-top:30px}
.v16-bottomlinks a,.v16-back {color:#fff;text-underline-offset:5px}
.v16-cart-badge {display:inline-flex;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 4px;background:#e50914;color:#fff;border-radius:10px;font-size:.68rem}
.v16-cart-layout {display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:36px}
.v16-cart-items {display:grid;gap:15px;margin:25px 0}
.v16-cart-row {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;border:1px solid #353535;background:#191919;padding:22px}
.v16-cart-row h3 {font:700 1.45rem 'Rajdhani',sans-serif;margin:0 0 8px}
.v16-qty {display:flex;align-items:center;gap:14px;margin-top:12px}
.v16-qty button {width:34px;height:34px;background:#2a2a2a;color:white;border:1px solid #666;cursor:pointer;font:700 1.15rem Arial}
.v16-textbutton {border:0;background:none;padding:5px 0;color:#ff8991;text-decoration:underline;cursor:pointer;font:inherit}
.v16-summary {background:#191919;border-top:4px solid #e50914;padding:30px;align-self:start}
.v16-summary-line {display:flex;justify-content:space-between;align-items:center;gap:18px;margin:20px 0}
.v16-total {border-top:1px solid #444;padding-top:20px;font-size:1.16rem}
.v16-summary .v16-action {width:100%}
.v16-small,.v16-note {font-size:.83rem;color:#aaa!important}
.v16-feedback {min-height:25px;color:#d5d5d5!important}
.v16-account-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.8fr);gap:32px;align-items:start}
.v16-auth-card,.v16-side-card {background:linear-gradient(145deg,#1c1c1c,#111);border:1px solid #373737;padding:35px}
.v16-auth-card label:not(.v16-check) {display:block;margin-top:18px;margin-bottom:8px;font-weight:700;font-size:.84rem}
.v16-auth-card input[type=email],.v16-auth-card input[type=password] {width:100%;padding:14px 13px;background:#0e0e0e;border:1px solid #656565;border-radius:3px;color:white;font:inherit}
.v16-auth-card form>.v16-action {margin-top:24px}
.v16-tabs {display:flex;gap:10px;margin-bottom:25px;border-bottom:1px solid #333;padding-bottom:15px}
.v16-tab {border:0;background:#242424;color:#ddd;padding:12px;cursor:pointer;font:700 .85rem Montserrat,Arial}
.v16-tab.selected {background:#e50914;color:white}
.v16-check {display:flex;align-items:flex-start;gap:10px;margin-top:18px;font-size:.9rem;line-height:1.65;color:#e5e5e5}
.v16-check input {width:18px;height:18px;accent-color:#e50914;flex:none;margin-top:3px}
.v16-topic-grid {display:grid;gap:0;margin-top:18px;padding:5px 15px 14px;background:#222}
.v16-auth-card h3 {font:700 1.5rem 'Rajdhani',sans-serif;text-transform:uppercase;margin:24px 0 8px}
.v16-side-card ul {padding-left:22px}
.v16-news-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:35px 0}
.v16-news-card {background:#171717;border:1px solid #343434;min-width:0}
.v16-news-card img {display:block;width:100%;height:230px;object-fit:cover}
.v16-news-card>div {padding:25px}
.v16-news-card .eyebrow {font-size:1rem;letter-spacing:1.5px}
.v16-news-card h3 {font:700 1.75rem 'Rajdhani',sans-serif;margin:0}
.v16-news-card a {color:#fff;text-underline-offset:5px}
@media(max-width:900px){.v16-products,.v16-news-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.v16-cart-layout,.v16-account-grid {grid-template-columns:1fr}.v16-heading {align-items:start;flex-direction:column}}
@media(max-width:650px){.v16-banner {padding:55px 6%}.v16-wrap {padding:45px 6%}.v16-products,.v16-news-grid {grid-template-columns:1fr}.v16-cart-row {grid-template-columns:1fr}.v16-auth-card,.v16-side-card {padding:23px}}


/* V17 — Navigation epuree : univers du drift directement dans l'accueil,
   plus de page Calendrier, espace client/panier en icones en haut a droite. */
.header {position:relative;padding:35px 5% 24px;gap:clamp(15px,2vw,28px)}
.header .logo img {width:clamp(145px,14vw,188px)}
.v17-primary-nav {margin-left:auto;padding-right:95px;min-width:0}
.v17-primary-nav ul {gap:clamp(10px,1.35vw,20px);justify-content:flex-end}
.v17-primary-nav a {font-size:clamp(.66rem,.84vw,.80rem);letter-spacing:.35px;white-space:nowrap}
.v17-header-tools {position:absolute;right:4.3%;top:11px;z-index:4;display:flex;align-items:center;gap:8px}
.v17-icon-link {color:#fff;width:39px;height:39px;display:inline-flex;align-items:center;justify-content:center;position:relative;border:1px solid rgba(255,255,255,.23);background:rgba(10,10,10,.50);border-radius:7px;text-decoration:none;transition:background .15s,border-color .15s}
.v17-icon-link:hover,.v17-icon-link:focus-visible,.v17-icon-link[aria-current="page"] {background:#391115;border-color:#f14b55;color:white}
.v17-icon-link:focus-visible{outline:2px solid white;outline-offset:3px}
.v17-icon-link svg{height:23px;width:23px;flex:0 0 auto}
.v17-cart-icon .v17-count{position:absolute;right:-7px;top:-6px;min-width:20px;height:20px;font-size:.67rem;border:1px solid #161616}
@media(max-width:1120px){
  .header{padding-top:63px}
  .v17-header-tools{top:12px;right:5.5%}
  .v17-primary-nav{padding-right:0;margin-left:0}
  .v17-primary-nav ul{justify-content:flex-start}
}
@media(max-width:650px){
  .header {padding:18px 6% 17px;gap:18px}
  .header .logo img {width:150px}
  .v17-header-tools{right:6%;top:16px}
  .v17-icon-link{width:38px;height:38px}
  .v17-primary-nav{width:100%;padding-right:0}
  .v17-primary-nav ul {justify-content:flex-start;column-gap:15px;row-gap:15px}
  .v17-primary-nav a{font-size:.69rem;letter-spacing:.1px}
}
/* V17 — Message du seuil de livraison gratuite (panier de demonstration). */
.v17-shipping-box{padding:18px 16px;margin:20px 0 24px;border:1px solid #62505a;border-radius:6px;background:linear-gradient(120deg,#29191e,#171717)}
.v17-shipping-title{display:flex;align-items:flex-start;gap:10px;color:white;line-height:1.45;font-size:.91rem}
.v17-shipping-title svg{flex:0 0 25px;width:25px;height:25px;color:#ff6774}
.v17-shipping-box #v17-shipping-message {font-weight:600;color:white;margin:12px 0 13px;font-size:.84rem;line-height:1.6}
.v17-shipping-track{height:8px;border-radius:99px;background:#4a4044;overflow:hidden}
.v17-shipping-track span{display:block;width:0%;height:100%;border-radius:99px;background:#f04451;transition:width .2s ease}
.v17-shipping-box .v17-shipping-disclaimer{margin:13px 0 0;font-size:.71rem;line-height:1.5;color:#c9bdc0}
@media (prefers-reduced-motion: reduce) {.v17-shipping-track span{transition:none}}


/* V18 — Palmarès pilote (reproduit du dossier sponsoring), photos à insérer plus tard. */
.pilot-palmares-section {background:#101012;scroll-margin-top:30px;}
.pilot-palmares-eyebrow {font:700 .85rem 'Rajdhani',sans-serif!important;text-transform:uppercase;letter-spacing:2.8px;color:#ff5563!important;margin:0 0 12px!important;}
.pilot-palmares-note {max-width:1000px;color:#a8a8ae!important;line-height:1.75!important;margin:-9px 0 28px!important;font-size:.88rem;}
.pilot-palmares-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.pilot-palmares-card {background:linear-gradient(155deg,#202025,#17171b);border-top:4px solid var(--accent);padding:clamp(20px,2.3vw,30px);display:flex;flex-direction:column;gap:12px;min-width:0;}
.pilot-palmares-year time {font:700 clamp(2rem,3vw,2.5rem)/1 'Rajdhani',sans-serif;color:#ff4651;}
.pilot-palmares-card>p {font-size:.94rem;color:#e5e5e6;line-height:1.75;margin:0;flex:1;}
.pilot-palmares-photo-slot {min-height:74px;display:flex;gap:12px;align-items:center;justify-content:center;text-align:center;border:1px dashed #52515b;color:#aaa8b2;background:rgba(0,0,0,.15);padding:14px;font-size:.77rem;line-height:1.4;}
.pilot-palmares-photo-slot span {font-size:1.5rem;color:#fa5360;}
.pilot-jump {display:block;margin-top:13px;color:#ff7380;font-weight:700;text-decoration:underline;text-underline-offset:4px;}
.pilot-jump:hover,.pilot-jump:focus-visible {color:white;}
@media(max-width:950px) {.pilot-palmares-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px) {.pilot-palmares-grid{grid-template-columns:1fr;}.pilot-palmares-card{padding:23px;}.pilot-palmares-photo-slot{min-height:60px;}}


/* V19 — palmarès 2021 : deux épreuves documentées en images */
.pilot-palmares-card-feature {grid-column:1 / -1;gap:18px;}
.pilot-palmares-card-feature > .pilot-palmares-2021-intro {max-width:1050px;flex:initial;line-height:1.65;color:#e8e7e9;font-size:1rem;}
.pilot-palmares-events {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-width:0;align-items:start;}
.pilot-palmares-event {border:1px solid #35343a;border-left:3px solid var(--accent,#e50914);background:#141417;padding:clamp(14px,2vw,22px);min-width:0;}
.pilot-palmares-event-kicker {text-transform:uppercase;letter-spacing:1.5px;font-size:.74rem!important;color:#ff747b!important;font-weight:700;margin:0 0 5px!important;}
.pilot-palmares-event h3 {font:700 clamp(1.4rem,2.1vw,1.8rem)/1.1 'Rajdhani',sans-serif;text-transform:uppercase;color:#fff;margin:0 0 7px;}
.pilot-palmares-event .pilot-palmares-result {font-size:.93rem;color:#e8e7e9;line-height:1.5;margin:0 0 15px;font-weight:600;}
.pilot-palmares-figure {margin:0;background:#101013;border:1px solid #323238;min-width:0;overflow:hidden;}
.pilot-palmares-figure img {display:block;width:100%;height:auto;aspect-ratio:3 / 2;object-fit:contain;background:#101013;}
.pilot-palmares-figure figcaption {font-size:.76rem;line-height:1.45;color:#bfc0c5;padding:9px 11px;}
.pilot-palmares-bordeaux-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.pilot-palmares-bordeaux-gallery .pilot-palmares-figure-wide {grid-column:1 / -1;}
.pilot-palmares-bordeaux-gallery .pilot-palmares-figure:not(.pilot-palmares-figure-wide) img {aspect-ratio:1.6 / 1;}
@media(max-width:760px) {.pilot-palmares-events{grid-template-columns:1fr;}}
@media(max-width:420px) {.pilot-palmares-bordeaux-gallery{grid-template-columns:1fr;}.pilot-palmares-bordeaux-gallery .pilot-palmares-figure-wide{grid-column:auto;}.pilot-palmares-bordeaux-gallery .pilot-palmares-figure img{aspect-ratio:auto;height:auto;}}


/* V20 — Saison 2025 complète et correction Calmont */
.pilot-palmares-2025 {scroll-margin-top:35px;}
.pilot-palmares-2025 .pilot-palmares-year {display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;}
.pilot-palmares-year-label {font-size:.72rem;color:#d6d4d8;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;}
.pilot-palmares-feature-heading {font:700 clamp(1.65rem,3.6vw,2.65rem)/1.04 'Rajdhani',sans-serif;text-transform:uppercase;color:#fff;margin:0;}
.pilot-palmares-feature-heading span {color:#fc3e4e;}
.pilot-palmares-2025 > .pilot-palmares-2025-intro {font-size:1rem;line-height:1.83;max-width:1080px;color:#e0dfe3;flex:initial;margin:0;}
.pilot-palmares-2025-intro strong {color:#fff;}
.pilot-palmares-recap {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:7px 0 10px;}
.pilot-palmares-recap > div {min-width:0;border:1px solid #3e373d;background:#141417;padding:17px 19px;display:flex;flex-direction:column;gap:5px;}
.pilot-palmares-recap span {color:#ffa0a7;font-size:.77rem;font-weight:700;letter-spacing:.5px;}
.pilot-palmares-recap strong {font:700 2.15rem/1 'Rajdhani',sans-serif;color:#fff;}
.pilot-palmares-recap small {font-size:.77rem;color:#bdbbc0;}
.pilot-palmares-crash-section {border-top:1px solid #454049;padding-top:22px;margin-top:1px;}
.pilot-palmares-gallery-heading {display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:16px;}
.pilot-palmares-gallery-heading h4 {font:700 clamp(1.4rem,2.2vw,1.95rem)/1.1 'Rajdhani',sans-serif;margin:0;color:#fff;text-transform:uppercase;}
.pilot-palmares-gallery-heading p:last-child {font-size:.77rem;color:#adabb1;line-height:1.5;margin:0;max-width:220px;}
.pilot-palmares-crash-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.pilot-palmares-crash-gallery .pilot-palmares-figure {display:flex;flex-direction:column;}
.pilot-palmares-crash-gallery .pilot-palmares-figure-lead {grid-column:1 / -1;}
.pilot-palmares-crash-gallery .pilot-palmares-figure a {display:block;background:#08080a;overflow:hidden;}
.pilot-palmares-crash-gallery .pilot-palmares-figure img {display:block;aspect-ratio:auto;width:100%;height:auto;object-fit:contain;transition:filter .25s ease;}
.pilot-palmares-crash-gallery .pilot-palmares-figure a:hover img {filter:brightness(1.07);}
.pilot-palmares-crash-gallery .pilot-palmares-figure figcaption {margin-top:auto;}
.pilot-palmares-credit {color:#aaa7b1!important;font-size:.77rem!important;flex:none!important;margin:3px 0 0!important;}
.sponsor-palmares-link {display:inline-block;margin-top:12px;color:#ffa5ac;font-size:.79rem;font-weight:700;line-height:1.5;text-decoration:underline;text-underline-offset:3px;}
.sponsor-palmares-link:hover {color:#fff;}
@media(max-width:680px) {
 .pilot-palmares-recap {grid-template-columns:1fr;}
 .pilot-palmares-gallery-heading {display:block;}
 .pilot-palmares-gallery-heading p:last-child {margin-top:9px;max-width:none;}
 .pilot-palmares-crash-gallery {grid-template-columns:1fr;}
 .pilot-palmares-crash-gallery .pilot-palmares-figure-lead {grid-column:auto;}
 .pilot-palmares-2025 .pilot-palmares-feature-heading {font-size:1.7rem;}
}

/* V23 — photos palmares 2022 a 2024 (installateur) */
.pilot-palmares-card-photo {gap:12px;}
.pilot-palmares-card-photo h3 {font-family:Rajdhani,sans-serif;text-transform:uppercase;font-weight:700;font-size:clamp(1.35rem,2.15vw,1.8rem);line-height:1.1;margin:0;color:#fff;}
.pilot-palmares-card-photo > .pilot-palmares-event-kicker {flex:initial;margin:0;color:#ff5a62;font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.79rem;}
.pilot-palmares-card-photo > p:not(.pilot-palmares-event-kicker) {flex:initial;}
.pilot-palmares-season-photo {margin-top:auto;}
.pilot-palmares-season-photo a {display:block;line-height:0;background:#101013;}
.pilot-palmares-season-photo img {display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;}
.pilot-palmares-season-photo figcaption {font-size:.8rem;}
.pilot-palmares-season-photo a:focus-visible {outline:3px solid #ff4a53;outline-offset:-3px;}

