/* ======================================================
   BASE COMMUNE
====================================================== */
.text_white  { color: #ffffff; }
.text_dark   { color: #1f2937; }
.text_green  { color: #007461; }
.text_orange { color: #C85207; }
.text_gray   { color: #6b7280; }
.text_red   { color: #900; }

.text_souligne { text-decoration: underline;}

.ls_1 { letter-spacing: 1px; }
.ls_2 { letter-spacing: 2px; }

.text_light  { font-weight: 300; }
.text_normal { font-weight: 400; }
.text_bold   { font-weight: 700; }

.text_left   { text-align: left; }
.text_center { text-align: center; }
.text_right  { text-align: right; }

.lh_1   { line-height: 1; }
.lh_12  { line-height: 1.2; }
.lh_14  { line-height: 1.4; }
.lh_16  { line-height: 1.6; }
.lh_18  { line-height: 1.8; }
.lh_2   { line-height: 2; }

.flex {
    display: flex;
}

.flex_center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.flex_between {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* ======================================================
   ORDINATEUR
====================================================== */
@media (min-width: 1096px) {
    .text_9 { font-size: 9px; }
    .text_10 { font-size: 10px; }
    .text_11 { font-size: 11px; }
    .text_12 { font-size: 12px; }
    .text_14 { font-size: 14px; }
    .text_16 { font-size: 16px; }
    .text_18 { font-size: 18px; }
    .text_18a { font-size: 18px; }
    .text_20 { font-size: 20px; }
    .text_35 { font-size: 35px; }
    
    .text_bolder { font-weight: 700; }
    .text_normaler { font-weight: 400; }

    .w_100 { width: 100%; }
    .w_80  { width: 80%; }
    .w_50  { width: 50%; }
    .w_20  { width: 20%; }

    .mt_5  { margin-top: 5px; }
    .mt_10 { margin-top: 10px; }
    .mt_20 { margin-top: 20px; }
    .mt_40 { margin-top: 40px; }
    .mt_100 { margin-top: 100px; }
    
    .mt_20only { margin-top: 20px; }

    .mb_5  { margin-bottom: 5px; }
    .mb_10 { margin-bottom: 10px; }
    .mb_20 { margin-bottom: 20px; }
    .mb_35 { margin-bottom: 35px; }
    .mb_50 { margin-bottom: 50px; }

    .flex_mobile_column {
        flex-direction: row;
    }
}

/* ======================================================
   TELEPHONE
====================================================== */
@media (max-width: 1095px) {
    .text_9 { font-size: 9px; }
    .text_10 { font-size: 10px; }
    .text_11 { font-size: 11px; }
    .text_12 { font-size: 11px; }
    .text_14 { font-size: 14px; }
    .text_16 { font-size: 16px; }
    .text_18 { font-size: 18px; }
    .text_18a { font-size: 14px; }
    .text_20 { font-size: 18px; }
    .text_35 { font-size: 35px; }
    
    .text_bolder { font-weight: 700; }
    .text_normaler { font-weight: 300; }

    .mt_5  { margin-top: 5px; }
    .mt_10 { margin-top: 10px; }
    .mt_20 { margin-top: 20px; }
    .mt_40 { margin-top: 40px; }
    .mt_100 { margin-top: 100px; }
    
    .mt_20only { margin-top: 0px; }

    .mb_5  { margin-bottom: 5px; }
    .mb_10 { margin-bottom: 10px; }
    .mb_20 { margin-bottom: 20px; }
    .mb_35 { margin-bottom: 35px; }
    .mb_50 { margin-bottom: 45px; }

    .w_100,
    .w_80,
    .w_50,
    .w_20 {
        width: 100%;
    }

    .flex_mobile_column {
        flex-direction: column;
    }

    .flex_between {
        gap: 10px;
    }
}