/* core/css/base.css */


/* =========================
   COULEURS
   ========================= */
   .COLOR1 { color: var(--color1) !important; }
   .COLOR2 { color: var(--color2) !important; }
   .COLOR3 { color: var(--color3) !important; }
   .COLOR4 { color: var(--color4) !important; }
   .COLOR5 { color: var(--color5) !important; }
   .COLOR6 { color: var(--color6) !important; }
   
   .BLACK { color: black !important; }
   .BLACK_light { color: #404547 !important; }
   .RED { color: red !important; }
   .WHITE { color: white !important; }
   .GREY { color: grey !important; }
   .SILVER { color: silver !important; }
   .PURPLE { color: purple !important; }
   
   /* =========================
      BACKGROUND
      ========================= */
   .BG1 { background: var(--color1) !important; }
   .BG2 { background: var(--color2) !important; }
   .BG3 { background: var(--color3) !important; }
   .BG4 { background: var(--color4) !important; }
   .BG5 { background: var(--color5) !important; }
   .BG6 { background: var(--color6) !important; }
   
   .BG_transparent { background: transparent !important; }
   .BG_white { background: white !important; }
   .BG_black { background: black !important; }
   .BG_whitesmoke { background: whitesmoke !important; }
   .BG_lightgrey { background: lightgrey !important; }
   .BG_grey { background: grey !important; }

   /* =========================
      BACKGROUND IMAGE
      ========================= */
      .BG_cover {
         background-repeat: no-repeat;
         background-position: center;
         background-size: cover;
      }
      .BG_contain {
         background-repeat: no-repeat;
         background-position: center;
         background-size: contain;
      }
      .BG_fixed {
         /* Parallax */
         background-repeat: no-repeat;
         background-position: center;
         background-attachment: fixed;
         background-size: cover;  /* Ajout : size par défaut pour .BG_fixed */
      }

   /* =========================
      BACKGROUND VIDEO / IMAGE (helpers bg())
      ========================= */
   .BG_video {
      position: relative;
      overflow: hidden;
   }
   
   .BG_video > video {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      z-index: 0;
      pointer-events: none;
   }
   
   .BG_video > *:not(video) {
      position: relative;
      z-index: 1;
   }
   /* =========================
      BORDURES
      ========================= */
   .BORD_1 { border:1px solid var(--color1) !important; }
   .BORD_2 { border:1px solid var(--color2) !important; }
   .BORD_3 { border:1px solid var(--color3) !important; }
   .BORD_4 { border:1px solid var(--color4) !important; }
   .BORD_5 { border:1px solid var(--color5) !important; }
   .BORD_6 { border:1px solid var(--color6) !important; }
   
   .BORD_none { border:none !important; }

   .BORD_black { border:1px solid black !important; }
   .BORD_red { border:1px solid red !important; }
   .BORD_white { border:1px solid white !important; }
   .BORD_grey { border:1px solid grey !important; }
   .BORD_silver { border:1px solid silver !important; }
   .BORD_purple { border:1px solid purple !important; }
   
   /* =========================
      TAILLE DE TEXTE
      ========================= */
   .FS7 { font-size: 7px !important; }
   .FS8 { font-size: 8px !important; }
   .FS9 { font-size: 9px !important; }
   .FS10 { font-size: 10px !important; }
   .FS11 { font-size: 11px !important; }
   .FS12 { font-size: 12px !important; }
   .FS13 { font-size: 13px !important; }
   .FS14 { font-size: 14px !important; }
   .FS15 { font-size: 15px !important; }
   .FS16 { font-size: 16px !important; }
   .FS17 { font-size: 17px !important; }
   .FS18 { font-size: 18px !important; }
   .FS19 { font-size: 19px !important; }
   .FS20 { font-size: 20px !important; }
   .FS25 { font-size: 25px !important; }
   .FS30 { font-size: 30px !important; }
   
   /* =========================
      TEXT TRANSFORM / FONT-WEIGHT
      ========================= */
   .ITALIC { font-style: italic !important; }
   .BOLD { font-weight: bold !important; }
   .NORMAL { font-weight: normal !important; }
   .MAJ { text-transform: uppercase !important; }
   .Maj { text-transform: capitalize !important; }
   .minusc { text-transform: lowercase !important; }
   .no_casse { text-transform: none !important; }
   
   /* =========================
      ALIGNEMENTS
      ========================= */
   .LEFT { text-align: left !important; }
   .CENTER { text-align: center !important; }
   .RIGHT { text-align: right !important; }
   
   /* =========================
      CURSORS
      ========================= */
   .POINTER { cursor: pointer !important; }
   .NO_POINTER { cursor: default !important; }
   .NOT_ALLOWED { cursor: not-allowed !important; }
   
   /* =========================
      FLOAT
      ========================= */
   .FLEFT { float: left !important; }
   .FRIGHT { float: right !important; }
   .FLOAT { float: left !important; width: 100% !important; }
   
   /* =========================
      POSITION
      ========================= */
   .FIXED { position: fixed !important; }
   .ABSOLUTE { position: absolute !important; }
   .RELATIVE { position: relative !important; }
   .FIX_HEAD {
     position: sticky;
     top: 0;
     z-index: 100;
   }
   
   /* =========================
      LARGEUR / HAUTEUR
      ========================= */
   /* En pourcentage */
   .W90 { 
     width: 90% !important; 
     box-sizing: border-box !important;
   }
   .W100 { 
     width: 100% !important; 
     box-sizing: border-box !important;
   }
   .H100 { 
     height: 100% !important; 
     box-sizing: border-box !important;
   }
   .VW100 { 
     width: 100vw !important; 
     box-sizing: border-box !important;
   }
   .VH100 { 
     height: 100vh !important; 
     box-sizing: border-box !important;
   }
   
   /* En px */
   .W20px { 
     width: 20px !important; 
     box-sizing: border-box !important;
   }
   .W30px { 
     width: 30px !important; 
     box-sizing: border-box !important;
   }
   .W40px { 
     width: 40px !important; 
     box-sizing: border-box !important;
   }
   .W50px { 
     width: 50px !important; 
     box-sizing: border-box !important;
   }
   .W60px { 
     width: 60px !important; 
     box-sizing: border-box !important;
   }
   .W70px { 
     width: 50px !important; 
     box-sizing: border-box !important;
   }
   .W80px { 
     width: 70px !important; 
     box-sizing: border-box !important;
   }
   .W90px { 
     width: 90px !important; 
     box-sizing: border-box !important;
   }
   .W100px { 
     width: 100px !important; 
     box-sizing: border-box !important;
   }
   .W110px { 
     width: 110px !important; 
     box-sizing: border-box !important;
   }
   .W120px { 
     width: 120px !important; 
     box-sizing: border-box !important;
   }
   .W150px { 
     width: 150px !important; 
     box-sizing: border-box !important;
   }
   .W200px { 
     width: 200px !important; 
     box-sizing: border-box !important;
   }
   .W250px { 
     width: 250px !important; 
     box-sizing: border-box !important;
   }
   
   /* =========================
      DISPLAY
      ========================= */
   .NONE { display: none !important; }
   
   /* =========================
      MARGES / PADDING
      ========================= */
   .M_0 { margin: 0 !important; }
   .PAD_0 { padding: 0 !important; }
   
   .PAD_2 { padding: 2px !important; }
   .PAD_3 { padding: 3px !important; }
   .PAD_4 { padding: 4px !important; }
   .PAD_5 { padding: 5px !important; }
   .PAD_6 { padding: 6px !important; }
   .PAD_7 { padding: 7px !important; }
   .PAD_8 { padding: 8px !important; }
   .PAD_9 { padding: 9px !important; }
   .PAD_10 { padding: 10px !important; }
   .PAD_15 { padding: 15px !important; }
   .PAD_20 { padding: 20px !important; }
   .PAD_30 { padding: 30px !important; }
   .PAD_40 { padding: 40px !important; }
   .PAD_50 { padding: 50px !important; }
   
   .MT_2 { margin-top: 2px !important; }   .MB_2 { margin-bottom: 2px !important; }
   .MT_3 { margin-top: 3px !important; }   .MB_3 { margin-bottom: 3px !important; }
   .MT_5 { margin-top: 5px !important; }   .MB_5 { margin-bottom: 5px !important; }
   .MT_6 { margin-top: 6px !important; }   .MB_6 { margin-bottom: 6px !important; }
   .MT_7 { margin-top: 7px !important; }   .MB_7 { margin-bottom: 7px !important; }
   .MT_8 { margin-top: 8px !important; }   .MB_8 { margin-bottom: 8px !important; }
   .MT_9 { margin-top: 9px !important; }   .MB_9 { margin-bottom: 9px !important; }
   .MT_10 { margin-top: 10px !important; } .MB_10 { margin-bottom: 10px !important; }
   .MT_15 { margin-top: 15px !important; } .MB_15 { margin-bottom: 15px !important; }
   .MT_20 { margin-top: 20px !important; } .MB_20 { margin-bottom: 20px !important; }
   .MT_30 { margin-top: 30px !important; } .MB_30 { margin-bottom: 30px !important; }
   .MT_40 { margin-top: 40px !important; } .MB_40 { margin-bottom: 40px !important; }
   .MT_50 { margin-top: 50px !important; } .MB_50 { margin-bottom: 50px !important; }
   
   .ML_2 { margin-left: 2px !important; }  .MR_2 { margin-right: 2px !important; }
   .ML_3 { margin-left: 3px !important; }  .MR_3 { margin-right: 3px !important; }
   .ML_5 { margin-left: 5px !important; }  .MR_5 { margin-right: 5px !important; }
   .ML_6 { margin-left: 6px !important; }  .MR_6 { margin-right: 6px !important; }
   .ML_7 { margin-left: 7px !important; }  .MR_7 { margin-right: 7px !important; }
   .ML_8 { margin-left: 8px !important; }  .MR_8 { margin-right: 8px !important; }
   .ML_9 { margin-left: 9px !important; }  .MR_9 { margin-right: 9px !important; }
   .ML_10 { margin-left: 10px !important; } .MR_10 { margin-right: 10px !important; }
   .ML_15 { margin-left: 15px !important; } .MR_15 { margin-right: 15px !important; }
   .ML_20 { margin-left: 20px !important; } .MR_20 { margin-right: 20px !important; }
   .ML_30 { margin-left: 30px !important; } .MR_30 { margin-right: 30px !important; }
   .ML_40 { margin-left: 40px !important; } .MR_40 { margin-right: 40px !important; }
   .ML_50 { margin-left: 50px !important; } .MR_50 { margin-right: 50px !important; }
   
   /* =========================
      INDENTATION
      ========================= */
   .IND5 { text-indent: 5px !important; }
   .IND10 { text-indent: 10px !important; }
   .IND15 { text-indent: 15px !important; }
   .IND20 { text-indent: 20px !important; }
   .IND30 { text-indent: 30px !important; }
   .IND40 { text-indent: 40px !important; }
   .IND50 { text-indent: 50px !important; }
   
   /* =========================
      SHADOW / OMBRES
      ========================= */
   .SHADOW_small  { box-shadow: var(--shadow_small) !important; }
   .SHADOW_medium { box-shadow: var(--shadow_medium) !important; }
   .SHADOW_large  { box-shadow: var(--shadow_large) !important; }
   
   /* =========================
      RADIUS / BORDS ARRONDIS
      ========================= */
   .RADIUS_3 { border-radius: 3px !important; }
   .RADIUS_5 { border-radius: 5px !important; }
   .RADIUS_10 { border-radius: 10px !important; }
   .RADIUS_15 { border-radius: 15px !important; }
   .RADIUS_rond { border-radius: 50% !important; }
   
/* =========================
   ELLIPSIS / TEXTE CONTENU
   ========================= */
   .ELLIPSIS {
      display: inline-block;
      max-width: 14rem;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      vertical-align: bottom;
    }
/* =========================
   RELIEF / TEXTE SPÉCIAL
   ========================= */
.RELIEF { 
  background-color: #666666 !important; 
  -webkit-background-clip: text; 
  -moz-background-clip: text; 
  background-clip: text; 
  color: transparent !important;
  text-shadow: rgba(255,255,255,0.5) 0px 3px 3px !important; 
}
