:root{--blue:#0756c9;--blue-dark:#003e98;--ink:#10141b;--muted:#606975;--line:#e4e8ee;--soft:#f6f7f9;--white:#fff;--shadow:0 18px 55px rgba(15,31,55,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.5}body.modal-open,body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.eyebrow{margin:0 0 14px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.site-header{height:76px;padding:0 clamp(20px,4vw,64px);display:grid;grid-template-columns:300px 1fr auto;align-items:center;position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(228,232,238,.8)}.brand{display:flex;align-items:center;height:100%}.brand img{width:270px;height:62px;object-fit:contain;object-position:left center}.main-nav{display:flex;justify-content:center;gap:clamp(18px,2.3vw,40px);font-size:17px;font-weight:700}.main-nav a{position:relative;padding:29px 0 24px}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:17px;height:2px;background:var(--blue);transition:.25s}.main-nav a:hover:after{right:0}.header-right{display:flex;align-items:center;gap:7px;font-size:11px}.lang{border:0;background:none;padding:8px 3px;cursor:pointer;color:#6b7380}.lang.is-active{color:var(--blue);font-weight:800}.header-cta{margin-left:16px;background:var(--blue);color:#fff;padding:12px 18px;font-weight:700;border-radius:3px}.menu-toggle{display:none;border:0;background:none}
.hero{height:clamp(410px,52vw,570px);min-height:410px;display:grid;grid-template-columns:42% 58%;overflow:hidden;background:#f7f7f7}.hero-copy{padding:clamp(42px,5vw,72px) clamp(28px,5.5vw,84px);display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}.hero h1{font-size:clamp(36px,4vw,62px);line-height:1.04;letter-spacing:-.045em;margin:0 0 15px;max-width:720px}.hero-intro{font-size:clamp(15px,1.15vw,18px);color:var(--muted);max-width:580px;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;min-height:45px;align-items:center;justify-content:center;padding:0 22px;font-size:12px;font-weight:700;border-radius:3px}.btn-primary{color:#fff;background:var(--blue)}.btn-primary:hover,.header-cta:hover{background:var(--blue-dark)}.btn-secondary{border:1px solid #aeb5bf;background:#fff}.hero-media{position:relative;overflow:hidden}.hero-media:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#f7f7f7 0%,rgba(247,247,247,.62) 9%,transparent 30%)}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 68%;transform:scale(1.03) translateY(20px)}
.stats{min-height:118px;display:grid;grid-template-columns:repeat(4,1fr);padding:20px clamp(22px,4vw,62px);border-bottom:1px solid var(--line);background:#fff}.stats article{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;align-content:center;padding:20px clamp(16px,2.7vw,42px);border-right:1px solid var(--line)}.stats article:last-child{border-right:0}.stat-icon{grid-row:1/3;align-self:center;color:var(--blue);font-size:28px}.stats strong{transition:all .5s;font-size:clamp(19px,1.8vw,28px);line-height:1.1;text-transform:uppercase}.stats p{margin:7px 0 0;color:#343b46;font-size:10px;text-transform:uppercase;letter-spacing:.035em}
.method{height:clamp(350px,38vw,470px);min-height:350px;display:grid;grid-template-columns:44% 56%;background:var(--soft);border-bottom:1px solid var(--line);overflow:hidden}.method-copy{padding:clamp(30px,3.5vw,52px) clamp(24px,4.5vw,68px);display:flex;flex-direction:column;justify-content:center}.method-copy>.eyebrow{font-size:clamp(18px,1.75vw,28px);letter-spacing:-.025em;text-transform:none;color:var(--ink);margin-bottom:25px}.method-copy>.eyebrow:after{content:"";display:block;width:38px;height:3px;background:var(--blue);margin-top:12px}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.method-grid article{min-width:0}.method-icon{color:var(--blue);display:block;font-size:30px;line-height:1;margin-bottom:14px}.method-grid h2{font-size:11px;text-transform:uppercase;margin:0 0 8px}.method-grid p{font-size:10px;color:#3f4752;margin:0;line-height:1.55}.method-media{margin:0;overflow:hidden}.method-media img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.trackdays{padding:38px clamp(22px,3vw,48px);display:grid;grid-template-columns:21% 1fr 1fr;gap:12px;align-items:stretch;border-bottom:1px solid var(--line);background:#fff}.track-copy{display:flex;flex-direction:column;justify-content:center;padding-right:20px}.track-copy h2{font-size:clamp(24px,2vw,34px);line-height:1.12;margin:0 0 14px;letter-spacing:-.035em}.track-copy p:last-child{font-size:12px;color:var(--muted);margin:0}.track-photo{margin:0;overflow:hidden;min-height:225px}.track-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.track-photo:hover img{transform:scale(1.025)}.track-photo-one img{object-position:center 48%}.track-photo-two img{object-position:center}
.content-grid{display:grid;grid-template-columns:1fr 1fr 1fr;padding:34px clamp(22px,3vw,48px) 42px;gap:26px;background:#fff}.content-card{min-width:0}.content-card header{border-bottom:1px solid var(--line);margin-bottom:14px}.content-card .eyebrow{font-size:17px;color:var(--ink);letter-spacing:-.01em;margin-bottom:10px}.content-card .eyebrow:after{content:"";display:block;width:32px;height:2px;background:var(--blue);margin-top:8px}.gallery-preview{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:106px;gap:3px}.gallery-item{padding:0;border:0;background:#eee;cursor:pointer;overflow:hidden}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-item:hover img{transform:scale(1.04)}.facebook-frame{height:215px;overflow:hidden;background:#f4f4f4}.facebook-frame iframe{width:100%;height:360px}.video-wrap{height:215px;background:#000}.video-wrap iframe{border:0;width:100%;height:100%}.text-link{display:inline-flex;margin-top:15px;border:0;background:none;padding:0;color:var(--blue);font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer}.text-link:after{content:"→";padding-left:10px}.particuliers{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:center;padding:36px clamp(24px,5vw,78px);background:var(--soft);border-top:1px solid var(--line)}.particuliers h2{font-size:clamp(25px,2.4vw,38px);line-height:1.12;margin:0}.particuliers>p{color:var(--muted);margin:0;font-size:14px}.contact{background:#0d1015;color:#fff;padding:42px clamp(24px,5vw,78px);display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.contact h2{font-size:clamp(34px,3.7vw,58px);line-height:1;margin:0 0 14px}.contact-heading>p:last-child{color:#b3bac4;max-width:510px}.contact-details{display:grid;grid-template-columns:1fr;gap:1px;background:#2a3038}.contact-details a{background:#11151b;padding:17px 22px;display:grid;grid-template-columns:120px 1fr;align-items:center}.contact-details span{font-size:10px;color:#929ba8;text-transform:uppercase}.contact-details strong{font-size:14px}.site-footer{display:grid;grid-template-columns:1.1fr 1fr auto;gap:40px;background:#080a0d;color:#c3c8d0;padding:30px clamp(24px,5vw,78px);border-top:1px solid #222831;font-size:11px}.footer-brand img{width:250px;height:58px;object-fit:contain;object-position:left center}.footer-brand p{max-width:430px}.footer-info p{margin:3px 0}.footer-links{display:flex;flex-direction:column;gap:7px}
.lightbox,.gallery-modal,.videos-modal,.vacation-popup{position:fixed;inset:0;z-index:120;background:rgba(4,7,11,.92);display:none}.lightbox.is-open,.gallery-modal.is-open,.videos-modal.is-open{display:grid;place-items:center}.lightbox img{max-width:94vw;max-height:90vh}.lightbox>button,.modal-close{position:absolute;right:24px;top:16px;border:0;background:none;color:#fff;font-size:44px;cursor:pointer;z-index:2}.gallery-modal-inner,.videos-modal-inner{width:min(1100px,94vw);max-height:90vh;overflow:auto;background:#fff;padding:25px;position:relative}.gallery-modal-inner .modal-close,.videos-modal-inner .modal-close{color:#111;right:8px;top:0}.gallery-all{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gallery-all .gallery-item{aspect-ratio:4/3}.videos-all{display:grid;gap:18px;padding-top:30px}.videos-all iframe{width:100%;aspect-ratio:16/9;border:0}.vacation-popup{display:flex;align-items:center;justify-content:center;padding:20px}.vacation-dialog{position:relative;width:min(1100px,96vw)}.vacation-dialog img{width:100%;max-height:90vh;object-fit:contain}.vacation-close{position:absolute;right:-12px;top:-12px;width:44px;height:44px;border-radius:50%;border:2px solid #fff;background:var(--blue);color:#fff;font-size:28px;cursor:pointer}.reveal{opacity:0;transform:translateY(16px);transition:.65s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1050px){.site-header{grid-template-columns:250px 1fr auto}.brand img{width:230px}.main-nav{gap:18px}.header-cta{display:none}.hero{grid-template-columns:45% 55%}.method-grid{grid-template-columns:1fr 1fr}.method-grid p{font-size:10px}.trackdays{grid-template-columns:1fr 1fr}.track-copy{grid-column:1/-1}.content-grid{gap:16px}.stats article{padding-inline:18px}.site-footer{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.site-header{height:68px;grid-template-columns:1fr auto auto;padding:0 16px}.brand img{width:210px;height:54px}.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;width:38px;height:38px}.menu-toggle span{display:block;width:23px;height:2px;background:#111}.main-nav{position:fixed;inset:68px 0 0;background:#fff;display:none;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:34px 24px;font-size:19px}.main-nav.is-open{display:flex}.main-nav a{padding:9px 0}.header-right>span,.header-cta{display:none}.hero{height:auto;min-height:0;display:flex;flex-direction:column}.hero-copy{padding:48px 24px 34px}.hero-media{height:370px}.hero-media:before{background:linear-gradient(180deg,#f7f7f7 0%,transparent 25%)}.hero-media img{object-position:50% 56%}.stats{grid-template-columns:1fr 1fr;padding:0}.stats article{min-height:120px;border-bottom:1px solid var(--line)}.method{height:auto;display:flex;flex-direction:column}.method-copy{padding:42px 24px}.method-grid{grid-template-columns:1fr 1fr}.method-media{height:310px}.trackdays{grid-template-columns:1fr;padding:34px 18px}.track-photo{min-height:230px}.content-grid{grid-template-columns:1fr;padding:30px 18px}.gallery-preview{grid-auto-rows:145px}.particuliers{grid-template-columns:1fr;gap:20px;padding:34px 24px}.contact{grid-template-columns:1fr;gap:28px;padding:42px 24px}.contact-details a{grid-template-columns:90px 1fr}.site-footer{grid-template-columns:1fr;padding:28px 24px}.gallery-all{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.header-right{display:none}.hero h1{font-size:38px}.hero-media{height:300px}.stats{grid-template-columns:1fr}.stats article{border-right:0}.method-grid{gap:22px 14px}.method-grid p{font-size:10px}.method-media{height:260px}.gallery-preview{grid-auto-rows:110px}.contact-details strong{font-size:12px}.gallery-all{grid-template-columns:1fr}}

/* V2 — proportions compactes validées */
@media (min-width: 761px) {
  .hero {
    height: clamp(330px, 38vw, 430px);
    min-height: 330px;
  }
  .hero-copy {
    padding-top: clamp(26px, 3vw, 46px);
    padding-bottom: clamp(26px, 3vw, 46px);
  }
  .hero h1 {
    font-size: clamp(32px, 3.35vw, 52px);
    margin-bottom: 14px;
  }
  .hero-intro {
    margin-bottom: 20px;
  }

  .method {
    height: clamp(270px, 29vw, 350px);
    min-height: 270px;
  }
  .method-copy {
    padding-top: clamp(20px, 2.4vw, 34px);
    padding-bottom: clamp(20px, 2.4vw, 34px);
  }
  .method-copy > .eyebrow {
    margin-bottom: 18px;
    font-size: clamp(17px, 1.45vw, 23px);
  }
  .method-icon {
    font-size: 26px;
    margin-bottom: 10px;
  }
  .method-grid {
    gap: 14px;
  }
  .method-grid h2 {
    margin-bottom: 5px;
  }
  .method-grid p {
    line-height: 1.42;
  }

  .trackdays {
    padding-top: 26px;
    padding-bottom: 26px;
    grid-template-columns: 20% 80%;
    gap: 18px;
    min-height: 245px;
  }
  .track-copy {
    padding-right: 8px;
  }
  .track-copy h2 {
    font-size: clamp(22px, 1.65vw, 29px);
    margin-bottom: 10px;
  }
  .track-gallery {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    height: 205px;
    min-width: 0;
  }
  .track-photo {
    min-height: 0;
    height: 100%;
    border-radius: 2px;
  }
  .track-photo-one img { object-position: center 46%; }
  .track-photo-two img { object-position: center 48%; }
  .track-photo-three img { object-position: center 42%; }
}

@media (max-width: 760px) {
  .track-gallery {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

/* V3 — contenus validés */
.stats{grid-template-columns:repeat(5,1fr)}
.stats article{grid-template-columns:42px 1fr;padding-inline:clamp(12px,1.8vw,28px)}
.stats article:nth-child(4){border-right:1px solid var(--line)}
.stats article:last-child{border-right:0}
.stats article:last-child .stat-icon{font-size:15px;font-weight:800;border:2px solid var(--blue);border-radius:50%;width:31px;height:31px;display:grid;place-items:center}

.track-photo-one img{object-position:center bottom!important}
.track-photo-map{position:relative;background:linear-gradient(145deg,#f7f8fa,#e9edf3);display:grid;place-items:center}
.track-photo-map img{object-fit:contain!important;object-position:center!important;padding:18px 22px 28px;filter:grayscale(1) contrast(1.05)}
.track-photo-map figcaption{position:absolute;left:14px;bottom:9px;color:#202733;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

.gallery-preview .gallery-item img{object-fit:contain;background:#f1f3f6;padding:2px}
.gallery-item-mustang img{object-position:center center}

.video-wrap,.videos-all{position:relative}
.video-poster{position:relative;width:100%;height:100%;padding:0;border:0;background:#06080b;cursor:pointer;overflow:hidden;display:block}
.video-poster img{width:100%;height:100%;object-fit:cover}
.video-poster:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.25))}
.play-button{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;display:grid;place-items:center;padding-left:4px;background:rgba(255,255,255,.92);color:#111;font-size:23px;box-shadow:0 8px 30px rgba(0,0,0,.28)}
.video-poster:hover .play-button{transform:translate(-50%,-50%) scale(1.06)}
.video-wrap iframe,.videos-all iframe{border:0;width:100%;height:100%;aspect-ratio:16/9}
.videos-all .video-poster{aspect-ratio:16/9}

.particuliers{display:block;padding-block:34px}
.particuliers .eyebrow{margin-bottom:10px}
.particuliers h2{max-width:none;font-size:clamp(22px,2.1vw,34px);line-height:1.25}
.private-payment{margin:12px 0 0;color:var(--muted);font-size:12px}
.map-credit{font-size:9px;color:#8c949f}

@media(max-width:1050px){.stats{grid-template-columns:repeat(3,1fr)}.stats article:nth-child(3){border-right:0}.stats article:nth-child(4){border-right:1px solid var(--line)}}
@media(max-width:760px){.stats{grid-template-columns:1fr 1fr}.stats article:nth-child(odd){border-right:1px solid var(--line)}.stats article:nth-child(even){border-right:0}.stats article:last-child{grid-column:1/-1;border-right:0}.track-photo-map img{padding:28px 34px 38px}}
@media(max-width:480px){.stats{grid-template-columns:1fr}.stats article,.stats article:nth-child(odd),.stats article:nth-child(4){border-right:0}.stats article:last-child{grid-column:auto}.particuliers h2{font-size:21px}}

/* V4 — correction des chevauchements du hero et recadrage Trackdays */
@media (min-width: 761px) {
  .hero {
    height: clamp(360px, 35vw, 410px);
    min-height: 360px;
    overflow: hidden;
  }
  .hero-copy {
    padding-top: clamp(22px, 2.3vw, 34px);
    padding-bottom: clamp(22px, 2.3vw, 34px);
  }
  .hero h1 {
    font-size: clamp(29px, 2.8vw, 44px);
    line-height: 1.06;
    margin-bottom: 12px;
  }
  .hero-intro {
    font-size: clamp(14px, 1vw, 16px);
    line-height: 1.45;
    margin-bottom: 17px;
  }
  .hero-actions {
    flex-wrap: nowrap;
  }
  .hero .btn {
    min-height: 42px;
    padding-inline: 18px;
  }
  .stats {
    position: relative;
    z-index: 2;
  }

  .track-photo-one {
    background: #eef1f5;
  }
  .track-photo-one img {
    object-fit: contain !important;
    object-position: center center !important;
    transform: scale(.92);
  }
  .track-photo-one:hover img {
    transform: scale(.95);
  }

  .track-photo-map img {
    padding: 2px 8px 18px !important;
    transform: scale(.88);
    transform-origin: center center;
  }
  .track-photo-map:hover img {
    transform: scale(.91);
  }
}

@media (max-width: 760px) {
  .hero-actions { gap: 9px; }
  .hero .btn { padding-inline: 15px; }
  .track-photo-one img {
    object-fit: contain !important;
    object-position: center center !important;
    background: #eef1f5;
  }
  .track-photo-map img {
    padding: 8px 12px 28px !important;
    transform: scale(.9);
  }
}

section{margin-block:20px}.office img{transition:transform .25s}.office:hover img{transform:scale(1.02)}.gallery img{transition:transform .25s}.gallery a:hover img,.gallery img:hover{transform:scale(1.03)}

/* V5.1 — corrections de finition validées */
@media (min-width: 761px) {
  /* Aligne visuellement le G du logo sur le D de l'accroche du hero. */
  .site-header {
    padding-left: clamp(28px, 5.5vw, 84px);
  }

  /* La voiture est descendue dans le cadre sans agrandissement ni découpe haute. */
  .hero-media img {
    object-position: center 42%;
    transform: none;
  }

  /* Image du bureau dézoomée d'environ 12 %, avec fond discret pour éviter les bandes vides. */
  .method-media {
    position: relative;
    background: #171a1f url('../images/office.jpg') center/cover no-repeat;
  }
  .method-media::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(15,18,23,.22);
    backdrop-filter: blur(10px);
  }
  .method-media img {
    position: relative;
    z-index: 1;
    object-fit: contain;
    object-position: center;
    transform: scale(.88);
  }

  /* Trackdays en véritable bandeau panoramique, sans augmenter la hauteur du bloc. */
  .trackdays {
    grid-template-columns: 24% 76%;
  }
  .track-banner {
    position: relative;
    display: block;
    height: 205px;
    overflow: hidden;
    background: #111;
  }
  .track-photo-banner {
    width: 100%;
    height: 100%;
  }
  .track-photo-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 48%;
    transform: scale(1.01) rotate(-.15deg);
  }
  .track-photo-banner:hover img {
    transform: scale(1.025) rotate(-.15deg);
  }
  .track-banner::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent 56%, rgba(7,11,17,.72) 100%);
    pointer-events: none;
  }
  .track-banner-label {
    position: absolute;
    z-index: 2;
    right: 18px;
    bottom: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
  }
  .track-banner-label img {
    width: 72px;
    height: 44px;
    padding: 4px;
    object-fit: contain;
    filter: invert(1) grayscale(1) brightness(2.1);
  }
}

/* Les quatre vignettes ont exactement la même surface visible. */
.gallery-preview .gallery-item {
  min-width: 0;
  min-height: 0;
}
.gallery-preview .gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 0;
  background: transparent;
}
.gallery-item-mustang img {
  object-position: center 52%;
}

@media (max-width: 760px) {
  .hero-media img {
    object-position: center 43%;
    transform: none;
  }
  .method-media {
    position: relative;
    background: #171a1f url('../images/office.jpg') center/cover no-repeat;
  }
  .method-media img {
    object-fit: contain;
    transform: scale(.9);
  }
  .track-banner {
    position: relative;
    display: block;
    height: 230px;
    overflow: hidden;
  }
  .track-photo-banner,
  .track-photo-banner img {
    width: 100%;
    height: 100%;
  }
  .track-photo-banner img {
    object-fit: cover;
    object-position: center 48%;
  }
  .track-banner-label {
    position: absolute;
    right: 12px;
    bottom: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 9px;
    background: rgba(5,8,12,.7);
    color: #fff;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .track-banner-label img {
    width: 58px;
    height: 34px;
    object-fit: contain;
    filter: invert(1) grayscale(1) brightness(2.1);
  }
}


/* V5.2 — image méthode plein cadre et bandeau Trackdays */
@media (min-width: 761px) {
  .method {
    grid-template-columns: 52% 48%;
  }
  .method-media {
    background: #171a1f;
  }
  .method-media::before {
    display: none;
  }
  .method-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 55%;
    transform: none;
  }
}

.trackdays.trackdays-hero {
  position: relative;
  display: block;
  min-height: 255px;
  padding: 0;
  overflow: hidden;
  background: #101216;
  color: #fff;
  border-bottom: 0;
}
.trackdays-background {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 48%;
  transform: none;
}
.trackdays-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(5,7,10,.94) 0%, rgba(5,7,10,.82) 28%, rgba(5,7,10,.34) 58%, rgba(5,7,10,.08) 100%);
}
.trackdays.trackdays-hero .track-copy {
  position: relative;
  z-index: 2;
  width: min(610px, 48%);
  min-height: 255px;
  justify-content: center;
  padding: 30px clamp(28px, 6vw, 92px);
}
.trackdays.trackdays-hero .eyebrow {
  color: #d7ab57;
  margin-bottom: 9px;
}
.trackdays.trackdays-hero h2 {
  margin: 0 0 9px;
  color: #fff;
  font-size: clamp(25px, 2.2vw, 36px);
  line-height: 1.08;
  letter-spacing: -.025em;
  text-transform: uppercase;
}
.trackdays.trackdays-hero .track-copy > p:not(.eyebrow) {
  max-width: 520px;
  margin: 0 0 17px;
  color: rgba(255,255,255,.84);
  font-size: 12px;
  line-height: 1.55;
}
.track-video-link {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  min-height: 43px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,.72);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  transition: background .25s, color .25s, border-color .25s;
}
.track-video-link:hover {
  background: #fff;
  color: #101216;
  border-color: #fff;
}
.track-play {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 1px solid currentColor;
  padding-left: 2px;
  font-size: 9px;
  transition: transform .25s;
}
.track-video-link:hover .track-play {
  transform: scale(1.08);
}
.trackdays.trackdays-hero small {
  display: block;
  margin-top: 9px;
  color: rgba(255,255,255,.58);
  font-size: 9px;
}

@media (max-width: 760px) {
  .method-media {
    background: #171a1f;
  }
  .method-media::before {
    display: none;
  }
  .method-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 55%;
    transform: none;
  }
  .trackdays.trackdays-hero {
    min-height: 330px;
  }
  .trackdays-background {
    object-position: 58% center;
  }
  .trackdays-shade {
    background: linear-gradient(90deg, rgba(5,7,10,.94) 0%, rgba(5,7,10,.76) 70%, rgba(5,7,10,.42) 100%);
  }
  .trackdays.trackdays-hero .track-copy {
    width: 100%;
    min-height: 330px;
    padding: 34px 22px;
  }
  .track-video-link {
    max-width: 100%;
    line-height: 1.35;
    padding-block: 9px;
  }
}

.stats strong{display:inline-block}
.method-media img{transition:transform .35s ease}.method-media:hover img{transform:scale(1.02)}

/* Navigation principale — compensation du header fixe */
#expertise {
  scroll-margin-top: 88px;
}

#trackdays,
#galerie {
  scroll-margin-top: 104px;
}

#contact {
  scroll-margin-top: 88px;
}

@media (max-width: 760px) {
  #expertise,
  #trackdays,
  #galerie,
  #contact {
    scroll-margin-top: 80px;
  }
}

/* Popup — méthode de développement */
.method-modal{
  position:fixed;
  inset:0;
  z-index:150;
  display:none;
  padding:24px;
  overflow-y:auto;
  background:rgba(6,9,14,.78);
  backdrop-filter:blur(8px);
}

.method-modal.is-open{
  display:block;
}

.method-modal-dialog{
  position:relative;
  width:min(1120px,100%);
  margin:18px auto;
  overflow:hidden;
  border-radius:16px;
  background:#fff;
  box-shadow:0 30px 90px rgba(0,0,0,.32);
  transform:scale(.98) translateY(8px);
  opacity:0;
  transition:transform .22s ease,opacity .22s ease;
}

.method-modal.is-open .method-modal-dialog{
  transform:none;
  opacity:1;
}

.method-modal-close{
  position:absolute;
  top:18px;
  right:20px;
  z-index:3;
  width:42px;
  height:42px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(16,20,27,.08);
  color:var(--ink);
  font-size:29px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease,transform .2s ease;
}

.method-modal-close:hover{
  background:rgba(16,20,27,.14);
  transform:scale(1.04);
}

.method-modal-header{
  padding:clamp(34px,5vw,58px) clamp(28px,7vw,92px) clamp(28px,4vw,42px);
  border-bottom:1px solid var(--line);
}

.method-modal-header h2{
  max-width:800px;
  margin:0 0 20px;
  font-size:clamp(31px,4vw,56px);
  line-height:1.04;
  letter-spacing:-.045em;
}

.method-modal-header>p:last-child{
  max-width:850px;
  margin:0;
  color:var(--muted);
  font-size:clamp(14px,1.25vw,17px);
  line-height:1.7;
}

.method-modal-steps{
  padding:0 clamp(28px,7vw,92px);
}

.method-modal-step{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);
  gap:clamp(28px,4vw,54px);
  align-items:center;
  padding:clamp(36px,5vw,58px) 0;
  border-bottom:1px solid var(--line);
}

.method-modal-step:last-child{
  border-bottom:0;
}

.method-modal-step-reverse .method-modal-copy{
  order:2;
}

.method-modal-step-reverse .method-modal-visual{
  order:1;
}

.method-modal-number{
  display:block;
  margin-bottom:9px;
  color:var(--blue);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
}

.method-modal-copy h3{
  margin:0 0 11px;
  font-size:clamp(25px,2.8vw,39px);
  line-height:1.08;
  letter-spacing:-.035em;
}

.method-modal-copy p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.75;
}

.method-modal-visual{
  height:clamp(225px,25vw,310px);
  margin:0;
  overflow:hidden;
  border-radius:10px;
  background:#eef1f5;
}

.method-modal-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.method-modal-visual-contain img{
  object-fit:contain;
  background:#fff;
}

@media(max-width:760px){
  .method-modal{
    padding:10px;
  }

  .method-modal-dialog{
    margin:0 auto 10px;
    border-radius:12px;
  }

  .method-modal-close{
    top:12px;
    right:12px;
  }

  .method-modal-header{
    padding:48px 22px 26px;
  }

  .method-modal-header h2{
    font-size:34px;
  }

  .method-modal-steps{
    padding:0 22px;
  }

  .method-modal-step{
    grid-template-columns:1fr;
    gap:18px;
    padding:32px 0;
  }

  .method-modal-step-reverse .method-modal-copy,
  .method-modal-step-reverse .method-modal-visual{
    order:initial;
  }

  .method-modal-visual{
    height:215px;
  }
}

@media(prefers-reduced-motion:reduce){
  .method-modal-dialog{
    transition:none;
  }
}

