:root{
      --primary:#1e3a5f;--secondary:#2c5282;--accent:#3182ce;--accent-2:#4fd1c7;--light:#4299e1;--bg:#f7fafc;--text:#2d3748;--muted:#718096;--shadow:0 20px 60px rgba(30,58,95,.12)
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;line-height:1.6;color:var(--text);background:#fff}
    a{color:inherit}
    /* Header */
    .header{position:fixed;inset:0 auto auto 0;height:64px;width:100%;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;z-index:50;box-shadow:0 2px 12px rgba(0,0,0,.15);backdrop-filter:saturate(120%) blur(8px)}
    .nav{max-width:1200px;margin:0 auto;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px}
    .logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px}
    .menu{display:flex;gap:20px;list-style:none}
    .menu a{color:#fff;text-decoration:none;padding:10px 14px;border-radius:999px;transition:.2s}
    .menu a:hover{background:rgba(255,255,255,.12)}
    .skip{position:absolute;left:-9999px}
    .skip:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px 10px;border-radius:8px}

    /* Hero */
    .hero{min-height:100vh;display:grid;place-items:center;text-align:center;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 50%,var(--accent) 100%);position:relative;overflow:hidden}
    .hero::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='g' width='10' height='10' patternUnits='userSpaceOnUse'%3E%3Cpath d='M 10 0 L 0 0 0 10' fill='none' stroke='rgba(255,255,255,.07)' stroke-width='1'/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='100' height='100' fill='url(%23g)'/%3E%3C/svg%3E");opacity:.8}
    .hero-inner{max-width:900px;margin:auto;padding:100px 20px 60px;position:relative;color:#fff}
    .hero h1{font-size:clamp(2rem,4vw,3.5rem);font-weight:900;text-shadow:0 6px 24px rgba(0,0,0,.35);margin:0 0 12px}
    .hero p{font-size:clamp(1rem,1.4vw,1.2rem);opacity:.95;margin:0 0 24px}
    .cta{display:inline-block;background:linear-gradient(45deg,var(--light),var(--accent-2));color:#fff;padding:14px 24px;border-radius:999px;font-weight:700;text-decoration:none;box-shadow:0 14px 36px rgba(66,153,225,.35);transition:.2s}
    .cta:hover{transform:translateY(-2px);box-shadow:0 18px 48px rgba(66,153,225,.45)}

    /* Sections */
    section{scroll-margin-top:84px}
    .wrap{max-width:1200px;margin:0 auto;padding:60px 20px}
    .section-title{font-size:clamp(1.6rem,2.4vw,2.4rem);font-weight:900;color:var(--primary);text-align:center;margin-bottom:8px}
    .section-sub{color:var(--muted);text-align:center;max-width:720px;margin:0 auto 32px}

    /* Cars */
    .cars{background:var(--bg)}
    .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:28px}
    .card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);transition:.2s}
    .card:hover{transform:translateY(-6px);box-shadow:0 30px 80px rgba(30,58,95,.15)}
    .card-hero{height:260px;background:linear-gradient(45deg,var(--primary),var(--secondary));position:relative;display:grid;place-items:end stretch;color:#fff}
    
    /* Image spécifique pour l'Audi A4 */
    #a4-image{
      background-image: url('img/audia4/audi_a4_2.jpeg');
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
    }
    
    /* Masquer le placeholder pour l'A4 quand l'image est présente */
    #a4-image .placeholder {
      display: none;
    }

        /* Image spécifique pour l'Audi RS3 */
    #rs3-image{
      background-image: url('img/audirs3/rs3_test.webp');
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
    }
    
    /* Masquer le placeholder pour la RS3 quand l'image est présente */
    #rs3-image .placeholder {
      display: none;
    }
    
    .card-hero .overlay{position:absolute;inset:auto 12px 12px 12px;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);padding:10px 12px;border-radius:12px}
    .placeholder{display:grid;place-items:center;height:100%;border:2px dashed rgba(255,255,255,.35);margin:16px;border-radius:14px}
    .placeholder small{opacity:.85}
    .card-body{padding:18px}
    .features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
    .feature{background:var(--bg);border-radius:10px;padding:10px;text-align:center}
    .price{font-size:1.6rem;color:var(--accent);font-weight:900;margin:8px 0 14px}
    .btn{display:inline-block;padding:10px 14px;border-radius:12px;background:var(--primary);color:#fff;text-decoration:none;font-weight:700}

    /* Services */
    .services .item{background:linear-gradient(135deg,#fff,var(--bg));padding:22px;border-radius:14px;box-shadow:0 10px 30px rgba(30,58,95,.12);text-align:center}
    .services .grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}

    /* About */
    .about{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;text-align:center}
    .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-top:24px}
    .stat .num{font-size:2.2rem;font-weight:900;color:var(--light)}

    /* Contact / Booking */
    .contact{background:var(--bg)}
    form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
    form .full{grid-column:1/-1}
    label{font-size:.9rem;color:var(--primary);font-weight:700}
    input,select,textarea{width:100%;padding:12px 14px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;font:inherit}
    textarea{min-height:110px}
    .help{font-size:.85rem;color:var(--muted)}

    /* Footer */
    footer{background:var(--primary);color:#fff}
    footer .wrap{padding:24px 20px;text-align:center}

    /* Responsive */
    @media (max-width:768px){
      .menu{display:none}
      form{grid-template-columns:1fr}
      .features{grid-template-columns:repeat(2,minmax(0,1fr))}
    }
    /* Logo */
    .logo-badge img {
    width: 200px;   /* ajuste la taille à ton besoin */
    height: auto;  /* garde les proportions */
    vertical-align: middle;
    }

          .cgv-check {
        display: block;
        align-items: flex-start;
        gap: 8px;
        font-size: 14px;
        margin-top: 8px;
        line-height: 1.4;
        text-align: left;
      }
      .cgv-check input { margin-top: 3px; }
      .cgv-check .error {
        display: block;
        font-size: 12px;
        color: #c00;
        margin-left: 28px;
      }

      
      .btn.disabled {
        pointer-events: none;
        opacity: 0.5;
      }