/* ═══════════════════════════════════════════════════════════
   OLM Racing — Design system V2 (partagé par toutes les pages)
   ═══════════════════════════════════════════════════════════ */
:root {
    --red: #dc2c2a;
    --red-dark: #b51f1d;
    --ink: #0b0b0e;
    --ink-2: #15151a;
    --paper: #f7f7f8;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background: var(--paper);
    color: var(--ink);
}

/* ── Navbar (injectée par navbar.js) ───────────────────────── */
.v2-nav {
    background: rgba(11, 11, 14, .82);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(255, 255, 255, .07);
}
.v2-nav-link {
    position: relative;
    color: #d4d4d8;
    font-weight: 500;
    font-size: .9rem;
    transition: color .2s;
}
.v2-nav-link:hover { color: #fff; }
.v2-nav-link::after {
    content: '';
    position: absolute;
    left: 0; bottom: -6px;
    height: 2px; width: 0;
    background: var(--red);
    transition: width .25s ease;
}
.v2-nav-link:hover::after { width: 100%; }

/* ── Boutons ───────────────────────────────────────────────── */
.v2-btn {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-weight: 700;
    border-radius: 14px;
    padding: .95rem 1.7rem;
    font-size: .95rem;
    transition: transform .15s ease, box-shadow .2s ease, background .2s;
}
.v2-btn:active { transform: scale(.97); }
.v2-btn-red {
    background: var(--red);
    color: #fff;
    box-shadow: 0 10px 30px rgba(220, 44, 42, .35);
}
.v2-btn-red:hover { background: var(--red-dark); }

/* ── Hero bandeau (pages intérieures) ──────────────────────── */
.v2-hero {
    position: relative;
    background:
        radial-gradient(900px 420px at 12% 0%, rgba(220, 44, 42, .25), transparent 55%),
        linear-gradient(135deg, #101014, #0b0b0e 60%, #131318);
    overflow: hidden;
}
.v2-hero::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 120px;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: var(--red);
}
.v2-hero h1 {
    font-weight: 900;
    letter-spacing: -.02em;
}

/* ── Typo utilitaires ──────────────────────────────────────── */
.v2-kicker {
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--red);
}

/* ── Cartes (véhicules, pièces, services) ──────────────────── */
.card-hover,
.v2-card {
    border-radius: 18px;
    transition: transform .3s ease, box-shadow .3s ease;
}
.card-hover:hover,
.v2-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 48px rgba(0, 0, 0, .16) !important;
}

/* Arrondis plus généreux sur les conteneurs blancs usuels */
.rounded-xl { border-radius: 16px !important; }

/* ── Footer V2 ─────────────────────────────────────────────── */
.v2-footer {
    background: #08080a;
    border-top: 1px solid rgba(255, 255, 255, .05);
}
.v2-footer a { transition: color .2s; }
