/* variables.css - Reset, variables CSS et styles de base du body */

/* Reset & Optimisation du rendu */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}

/* Réduire le CLS (Cumulative Layout Shift) */
.hero-slide{aspect-ratio:16/9}

/* Optimisations GPU - seulement sur le carrousel actif */
.hero-carousel{will-change:transform}

/* Optimisations LCP (Largest Contentful Paint) */
#heroSection{contain-intrinsic-size:100vw 60vh}
.hero-slide:first-child{background-size:cover;background-position:center}

/* Prévenir FOIT (Flash of Invisible Text) */
@font-face{font-family:'Inter';font-display:swap;src:local('Inter'),local('Inter Regular')}
@font-face{font-family:'Caveat';font-display:swap;src:local('Caveat'),local('Caveat Regular')}
@font-face{font-family:'Bebas Neue';font-display:swap;src:local('Bebas Neue')}

/* Optimisation pour le touch sur mobile */
@media (hover:none) and (pointer:coarse){
    .btn-primary,.btn-secondary,.nav-links a{min-height:44px;min-width:44px}
}

/* Priorité de chargement pour les ress critiques */
link[rel=preload]{display:none}

/* Éviter les repaints coûteux sur la nav fixe */
.navbar{contain:layout style}

:root{
    --bg:#1C1F5C;
    --a:#C61B2D;
    --a-light:#e63950;
    --t:#fff;
    --m:rgba(255,255,255,.78);
    --c:rgba(255,255,255,.06);
    --l:rgba(255,255,255,.14);
    --hover:rgba(255,255,255,.1);
    --accent-modern:#ff4757;
    --success:#2ecc71;
    --warning:#f39c12;
    --dark:#0a0c24;
    --info:#3498db;
    --handwriting:'Caveat',cursive;
}

*{box-sizing:border-box;margin:0;padding:0;}

body{
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    background:var(--dark);
    color:var(--t);
    line-height:1.6;
    overflow-x:hidden;
    opacity:1;
    transition:opacity 0.1s;
}
