/* 
 * DOCUMENTATION JP — CSS RÉORGANISÉ
 * ----------------------------------------------------------
 * Fichier : assets/css/jp-videos.css
 * Rôle : Section Vidéos.
 *
 * Lecture conseillée :
 * 1. fondations et structure du composant ;
 * 2. éléments internes et états ;
 * 3. adaptations responsive et compatibilité.
 *
 * IMPORTANT : l'ordre de cascade est volontairement préservé lorsqu'un déplacement
 * pourrait modifier le rendu. Les doublons retirés sont uniquement ceux dont une
 * déclaration strictement identique existe plus loin dans le même contexte CSS.
  */

/* * FICHIER CSS RÉORGANISÉ
 * Fichier : assets/css/jp-videos.css
 * Rôle : Styles du composant ou du module indiqué par le nom du fichier.
 *
 * Organisation :
 * 1. Styles de base du module
 * 2. États et interactions
 * 3. Adaptations responsives, dans l’ordre du fichier d’origine
 *
 * Maintenance : l’ordre des règles est conservé afin de respecter la cascade CSS.
 * Les doublons strictement identiques dans un même bloc ont été supprimés. */

/* *
 * jp-videos.css
 * Rôle : Module Vidéos.
 *
 * Organisation du fichier :
 * 1. Variables et fondations éventuelles
 * 2. Structure principale du composant
 * 3. États, variantes et interactions
 * 4. Adaptations responsives
 *
 * Les doublons strictement identiques ont été supprimés. Les surcharges
 * volontaires et les fallbacks compatibles ont été conservés pour ne pas
 * modifier le rendu ou le comportement existant. */

/* =========================================================
   VIDÉOS
   ========================================================= */

/* Section des vidéos */

.jp-videos-section {
        padding-top: 36px;
        padding-bottom: 0;
}

/* Coque du carrousel vidéos avec flèches */

.jp-videos-shell {
        position: relative;
        padding: 0 58px;
        margin-bottom: 0;
}

/* Fenêtre visible du carrousel vidéos */

.jp-videos-scroll {
        width: 100%;
        overflow: hidden;
        padding-bottom: 0;
}

/* Piste horizontale des vidéos */

.jp-videos-track {
        display: flex;
        gap: 28px;
        transition: transform 1.2s ease;
        will-change: transform;
}

/* Carte vidéo */

/* ==========================================================================
   Cartes et contenus structurés
   ========================================================================== */

.jp-video-card {
        flex: 0 0 calc((100% - 140px) / 6);
        background: #fff;
        border-radius: 20px;
        overflow: hidden;
        box-shadow: 0 12px 30px rgba(16,35,63,.10);
}

/* Zone iframe vidéo */

.jp-video-embed {
        aspect-ratio: 16/9;
        background: #eef2f7;
}

/*  CIBLE — Vidéos : .jp-video-embed iframe  */

.jp-video-embed iframe {
        width: 100%;
        height: 100%;
        display: block;
}

/* Titre de vidéo */

.jp-video-card h3 {
        margin: 0;
        padding: 18px 20px;
        color: var(--jp-dark);
        font-size: 14px;
        font-weight: 900;
        line-height: 1.3;
        text-align: center;
}

/* Lien de secours si l’intégration vidéo échoue */

.jp-video-link {
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: 16/9;
        padding: 24px;
        text-align: center;
        color: var(--jp-main) !important;
        font-weight: 900;
        text-decoration: none !important;
        background: #eef2f7;
}

/* Flèches du carrousel vidéos */

.jp-video-arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 46px;
        height: 46px;
        border-radius: 50%;
        border: 2px solid var(--jp-main);
        background: #fff;
        color: var(--jp-main);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 34px;
        font-weight: 900;
        line-height: 1;
        cursor: pointer;
        z-index: 5;
        box-shadow: 0 10px 24px rgba(16,35,63,.16);
}

/*  CIBLE — Vidéos : .jp-video-arrow-left  */

.jp-video-arrow-left {
        left: 4px;
}

/*  CIBLE — Vidéos : .jp-video-arrow-right  */

.jp-video-arrow-right {
        right: 4px;
}

/*  CIBLE — Vidéos : .jp-video-arrow:hover  */

.jp-video-arrow:hover {
        background: var(--jp-main);
        color: #fff;
}
