/* ===== RESET & BASE MAGIQUE ===== */
    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    body {
      overflow: hidden;
      height: 100vh;
      background: #0a1f0a; /* fond profond au cas où */
    }

    .site-container {
      position: relative;
      width: 100%;
      height: 100vh;
      overflow: hidden;
    }

    /* ===== SLIDER CÉLESTE ===== */
    .bg-slider {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 0;
    }

    .slide {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center 30%;
      opacity: 0;
      transition: opacity 2.2s cubic-bezier(0.23, 1, 0.32, 1);
      filter: brightness(0.85) saturate(1.2);
      transform: scale(1.02);
    }

    .slide.active {
      opacity: 1;
      transform: scale(1);
    }

    /* ===== OVERLAY FÉERIQUE (forêt enchantée) ===== */
    .overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: 
        radial-gradient(circle at 20% 50%, rgba(30, 90, 40, 0.65) 0%, transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(20, 70, 30, 0.7) 0%, transparent 55%),
        linear-gradient(145deg, #1d4d1d 0%, #2a6b2a 40%, #3f8a4b 100%);
      z-index: 1;
      opacity: 0.7;
      mix-blend-mode: overlay;
      animation: brumeDouce 16s ease-in-out infinite alternate;
    }

    @keyframes brumeDouce {
      0% { opacity: 0.6; backdrop-filter: blur(1px); }
      100% { opacity: 0.8; backdrop-filter: blur(3px); }
    }

    /* ===== CONTENU PRINCIPAL ===== */
    .content-layer {
      position: relative;
      z-index: 10;
      height: 100vh;
      display: flex;
      flex-direction: column;
      padding: 2rem 3rem;
      color: white;
      text-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
    }

    /* ===== NAVIGATION ÉTOILÉE ===== */
    .top-nav {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 0.5rem 0;
      animation: apparitionGlisse 1.2s ease-out;
    }

    @keyframes apparitionGlisse {
      0% { opacity: 0; transform: translateY(-40px); }
      100% { opacity: 1; transform: translateY(0); }
    }

    .logo-area {
      display: flex;
      align-items: center;
    }

    .logo-picture {
      width: 80px;
      height: 80px;
      border-radius: 50% 50% 30% 50%;
      object-fit: cover;
      border: 3px solid rgba(255, 250, 210, 0.6);
      box-shadow: 0 15px 30px rgba(0, 30, 0, 0.6), 0 0 0 2px #fae67b inset;
      transition: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    .logo-picture:hover {
      transform: rotate(6deg) scale(1.1);
      border-color: #fce38a;
      box-shadow: 0 20px 40px #1f4d1f;
    }

    .nav-links {
      display: flex;
      align-items: center;
      gap: 2.8rem;
      background: rgba(255, 255, 255, 0.08);
      backdrop-filter: blur(16px);
      padding: 1rem 2.8rem;
      border-radius: 80px;
      border: 1px solid rgba(255, 245, 200, 0.25);
      box-shadow: 0 25px 45px -10px rgba(0, 20, 0, 0.6);
    }

    .nav-links a {
      color: #fcf9f0;
      text-decoration: none;
      font-weight: 500;
      font-size: 1.1rem;
      letter-spacing: 0.5px;
      transition: 0.25s;
      position: relative;
    }

    .nav-links a::after {
      content: '';
      position: absolute;
      bottom: -6px;
      left: 0;
      width: 0%;
      height: 2.5px;
      background: linear-gradient(90deg, #f9d56e, #faf0c0);
      border-radius: 2px;
      transition: width 0.3s ease;
    }

    .nav-links a:hover {
      color: #ffecb3;
      transform: translateY(-2px);
    }

    .nav-links a:hover::after {
      width: 100%;
    }

    /* ===== COLONNE VIDÉO – PORTAL VERS L'AVENTURE ===== */
    .right-col {
      flex: 1;
      display: flex;
      align-items: flex-end;
      justify-content: flex-end;
      margin-top: -1.5rem;
      animation: glisseDroite 1s 0.3s both;
    }

    @keyframes glisseDroite {
      from { opacity: 0; transform: translateX(60px); }
      to { opacity: 1; transform: translateX(0); }
    }

    .video-card {
      width: 440px;
      height: 260px;
      border-radius: 30px 30px 20px 20px;
      overflow: hidden;
      box-shadow: 0 40px 70px -5px #0f2b0f, 0 0 0 3px rgba(250, 235, 150, 0.3);
      border: 2px solid rgba(255, 255, 200, 0.5);
      transition: all 0.45s cubic-bezier(0.2, 0.9, 0.3, 1.2);
      cursor: pointer;
      position: relative;
    }

    .video-card video {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.5s, filter 0.5s;
    }

    .video-card:hover {
      transform: scale(1.18) translateY(-10px);
      border-color: #fde282;
      box-shadow: 0 60px 100px #0f3b0f, 0 0 0 6px rgba(253, 226, 130, 0.5);
    }

    .video-card:hover video {
      transform: scale(1.04);
      filter: brightness(1.15) contrast(1.05);
    }

    /* badge flottant */
    .video-card::before {
      content: '🌿  Lueur sauvage';
      position: absolute;
      bottom: 20px;
      right: 20px;
      background: rgba(10, 30, 8, 0.7);
      backdrop-filter: blur(10px);
      color: #fef7d6;
      padding: 0.5rem 1.2rem;
      border-radius: 40px;
      font-size: 0.85rem;
      font-weight: 500;
      letter-spacing: 0.5px;
      border: 1px solid #fad47b;
      opacity: 0;
      transform: translateY(10px);
      transition: 0.3s;
      z-index: 5;
      box-shadow: 0 5px 15px rgba(0,0,0,0.4);
    }

    .video-card:hover::before {
      opacity: 1;
      transform: translateY(0);
    }

    /* ===== PIED DE PAGE – LIENS SOCIAUX ENVOÛTANTS ===== */
    .footer-social {
      margin-top: auto;
      display: flex;
      justify-content: space-between;
      align-items: center;
      animation: monteDouce 1s 0.7s both;
    }

    @keyframes monteDouce {
      from { opacity: 0; transform: translateY(40px); }
      to { opacity: 1; transform: translateY(0); }
    }

    .social-links {
      display: flex;
      gap: 1.4rem;
    }

    .social-links a {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 52px;
      height: 52px;
      background: rgba(30, 60, 25, 0.3);
      backdrop-filter: blur(12px);
      border-radius: 30px;
      color: #fffbe3;
      font-size: 1.5rem;
      transition: 0.3s;
      border: 1.5px solid rgba(255, 240, 170, 0.5);
      text-decoration: none;
      box-shadow: 0 8px 22px #0f2b0f;
    }

    .social-links a:hover {
      background: #f7d572;
      color: #1f431f;
      transform: translateY(-8px) scale(1.15);
      border-color: #fbdd87;
      box-shadow: 0 18px 35px #a1b37b;
    }

    .footer-01 {
      font-size: 1rem;
      font-weight: 300;
      background: rgba(20, 45, 18, 0.35);
      backdrop-filter: blur(12px);
      padding: 0.9rem 2.5rem;
      border-radius: 60px;
      border: 1px solid rgba(255, 235, 150, 0.45);
      box-shadow: 0 20px 30px -5px #0b1f0b;
      color: #fffbee;
      letter-spacing: 1px;
    }

    .footer-01::before {
      content: '✨  "Là où la nature chante"  ✨';
      opacity: 0.95;
      font-style: italic;
      font-weight: 300;
    }

    /* ===== RESPONSIVE DÉLICAT ===== */
    @media (max-width: 1000px) {
      .content-layer { padding: 2rem; }
      .nav-links { gap: 1.8rem; padding: 0.9rem 2rem; }
      .video-card { width: 360px; height: 220px; }
    }

    @media (max-width: 750px) {
      .top-nav { flex-direction: column; gap: 1.2rem; }
      .nav-links { flex-wrap: wrap; gap: 1.2rem; }
      .right-col { justify-content: center; margin-top: 1rem; }
      .video-card { width: 300px; height: 190px; }
      .video-card:hover { transform: scale(1.08); }
      .footer-social { flex-direction: column; gap: 2rem; }
      .social-links a { width: 46px; height: 46px; font-size: 1.3rem; }
    }

    @media (max-width: 480px) {
      .content-layer { padding: 1.2rem; }
      .nav-links { padding: 0.7rem 1.2rem; }
      .video-card { width: 260px; height: 170px; }
    }

    /* ===== RESPONSIVE DÉLICAT - CORRECTION POUR MOBILE ===== */

/* Tablettes et petits écrans */
@media (max-width: 1000px) {
  .content-layer { 
    padding: 2rem; 
  }
  .nav-links { 
    gap: 1.8rem; 
    padding: 0.9rem 2rem; 
  }
  .video-card { 
    width: 360px; 
    height: 220px; 
  }
}

/* Mobile - Correction principale pour la navigation */
@media (max-width: 750px) {
  .content-layer {
    padding: 1.5rem;
  }
  
  /* Correction de la navigation pour mobile */
  .top-nav { 
    flex-direction: row;  /* Changé de column à row */
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem; 
  }
  
  .logo-area {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: 0.5rem;
  }
  
  .logo-picture {
    width: 70px;
    height: 70px;
  }
  
  /* Navigation links en ligne sur mobile */
  .nav-links { 
    display: flex;
    flex-direction: row;  /* Forcer l'affichage en ligne */
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem 1.5rem;  /* Espacement horizontal et vertical */
    padding: 0.8rem 1.5rem;
    width: auto;
    max-width: 100%;
    margin: 0 auto;
  }
  
  .nav-links a {
    font-size: 1rem;
    white-space: nowrap;  /* Empêche la coupure des mots */
  }
  
  .right-col { 
    justify-content: center; 
    margin-top: 1rem; 
  }
  
  .video-card { 
    width: 300px; 
    height: 190px; 
  }
  
  .video-card:hover { 
    transform: scale(1.08); 
  }
  
  .footer-social { 
    flex-direction: column; 
    gap: 2rem; 
  }
  
  .social-links a { 
    width: 46px; 
    height: 46px; 
    font-size: 1.3rem; 
  }
}

/* Très petits écrans */
@media (max-width: 480px) {
  .content-layer { 
    padding: 1rem; 
  }
  
  .nav-links { 
    gap: 0.8rem 1rem;  /* Réduire l'espacement */
    padding: 0.6rem 1rem;
  }
  
  .nav-links a {
    font-size: 0.9rem;
  }
  
  .video-card { 
    width: 260px; 
    height: 170px; 
  }
  
  .footer-01::before {
    content: '✨ "La nature chante" ✨';  /* Version plus courte */
    font-size: 0.9rem;
  }
}

/* Très très petits écrans (moins de 360px) */
@media (max-width: 360px) {
  .nav-links {
    gap: 0.6rem;
  }
  
  .nav-links a {
    font-size: 0.85rem;
  }
  
  .social-links {
    gap: 0.8rem;
  }
  
  .social-links a {
    width: 40px;
    height: 40px;
    font-size: 1.1rem;
  }
}