/*------------------------------------------------------------------------
 *                        UNEVOYANTE.FR CUSTOM CSS
 *------------------------------------------------------------------------*/


/*----------------------
 *    COLORS
 *------------------------**/

 :root {
    --main-bg-color: #000824;
    --primary-color: #8F00FF;
    --primary-color-hover: #6200AF;
    --darker-primary : #2F0A6B;
    --primary-white: #fff;
    --secondary-color: #4223FF;
    --secondary-color-hover: #2B12C7;
    --highlight-color: #32C323;

    --sp_tarot : #4223FF;
    --sp_tarot-stroke : #6C54FF;
    --sp_amour: #FF239A;
    --sp_amour-stroke: #FF69BA;
    --sp_rune: #532D92;
    --sp_rune_stroke: #8D62D4;
    --sp_numerologie:  #1F3CA5;
    --sp_numerologie_stroke: #4E66BD;
    --sp_pendule: #EC672D;
    --sp_pendule_stroke: #FF9F75;
    
    --bs-border-color: #384985;
  }
  

/*----------------------
 *    FONTS
 *------------------------**/

 @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;@400;500;600;700&family=Poppins:wght@400;500;600&display=swap');


:root {
    --primary-font: 'Inter', sans-serif;
    --heading-font:  'Poppins', sans-serif;
}

h1, h2, h3, h4, h5 {
    font-family: var(--heading-font);
}




/*----------------------
 *    MAIN 
 *------------------------**/ 

body {
    background: var(--main-bg-color);
    color: var(--primary-white);
    font-size:14px;
    font-family: var(--primary-font);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;


}

.headline_txt {
    font-size: 16px;
    font-weight: 400;
}

.sticky-top {
    background: linear-gradient(180deg, #000514 0%, rgba(3, 25, 51, 0.00) 100%);
    padding-top: 0px;
}

.count_header {
    background-color: #00061A;
    border: 1px solid #111C42;
    color:var(--primary-white);
    border-radius: 50px;
    padding:2px;
    font-size:12px;
    padding: 6px 10px;
}

strong {
    color: var(--highlight-color);
}

.fa-circle {
    color: var(--highlight-color);
    filter: drop-shadow(0px 0px 7px rgba(79, 255, 60, 0.60));
    font-size:8px;
}

.left_head {
    gap: 10px;
}

.right_head {
    gap: 10px;
}


.user_info {
    background: #091738;
    border-radius: 6px;
    border: 0px;
    padding: 10px;
    color: var(--primary-white);
    text-decoration: none;
    gap: 10px;
}

.user_info:hover {
    background: #102046;
}


.credits_count {
    background: var(--primary-color);
    border-radius: 6px;
    padding: 10px;
    color: var(--primary-white);
    transition: all linear 200ms;
    text-decoration: none;
}

.credits_count:hover {
    background: var(--primary-color-hover);
    transition: all linear 200ms;

}


.navbar_mobile {
    display:none !important;
}

.column_links {
    display: flex;
    width: 100%;
}

.dropdown-menu { 
    border-radius: 6px;
    border: 1px solid #324977;
    background: #0F2041;
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
    margin-top:10px;
    transition: all linear 200ms;
    color: var(--primary-white) !important;
}

.dropdown-item {
    color: var(--primary-white);
    transition: all linear 200ms;

}

.dropdown-item:hover {
    background: #172A51;
    color: var(--primary-white);
    transition: all linear 200ms;

}

.logout_link {
    color:#F66868;
}

.column_footer {
    flex-wrap: wrap;
}
/*-----------------------
 *     RESPONSIVE HEADER
 * 
 *  
 *------------------------**/

 /* Media Query for Mobile Devices */
 @media (max-width: 720px) {
    .navbar {
        display:none !important;
    }

    .count_mobile_header {
        background: #061D24;
        padding:4px;
        text-align: center;
    }

    .navbar_mobile {
        display: block !important;
    }

 }
 @media (max-width: 480px) {

    .main {
        padding:12px !important;
    }
    .navbar {
        display:none !important;
    }

    .count_mobile_header {
        background: #061D24;
        padding:4px;
        text-align: center;
    }

    .fa-solid {
        font-size: 12px !important;
    }

    .navbar_mobile {
        display: block !important;
    }

    .logo_mobile {
        width: 125px;
    }

    .user_info_mobile {
        background:#091738;
        padding:10px;
        border-radius:20px;
    }

    .credits_count {
        padding:8px;
    }

    .column-features {
        flex-direction: column;
    }

    .column_footer {
        align-items: center !important;
        align-content: center !important;
        margin:auto;
        text-align: center;
        flex-wrap: wrap;
    }

    .column-footer {
        align-items: center;
    }

    .column_links {
        display: flex;
        flex-direction: row;
        flex-wrap:wrap;
        align-items: center;
        text-align: left;
        justify-content: center;
    }

    .columns-link {
        display:flex;
        flex-direction: row;
    }

    .newsletter_column {
        text-align:left;
        justify-content: left;
        align-items: baseline;
        width: 100%;
    }
    .logo_footer {
        text-align: center;
    }

    footer { 
        flex-direction: column;
    }

    .message_user p {
        max-width: 100% !important;
    }
    .message_voyant p {
        max-width: 100% !important;
    }
}



/*-----------------------
 * *     CARD VOYANT
 *  
 *  
 *------------------------**/


 .voyant_card {
    border-radius: 10px;
    border: 1px solid #384985;
    background: #101C43; 
    transition: all linear 200ms;
    background-clip: border-box;
    flex: 1 0 auto !important;
}

.voyant_card:hover{
    transform: scale(1.02);
    transition: all linear 200ms;
    z-index: 1;
    box-shadow: 1px 1px 10px rgba(0,0,0,.3);
    cursor: pointer;
}

.card_header {
    padding: 14px;
    background: var(--darker-primary);
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background-image: url('/assets/client2/img/bg_card.webp');
    background-size: cover;
 }

 .action_message {
    gap:8px;
    display: flex;
    flex-direction: row;
}
 
 .info_voyant {
    gap: 6px;
 }

 .avatar_voyant {
    background: var(--primary-color);
    border-radius: 50px;
    width: 48px;
    height: 48px;
    border-radius: 48px;
    border: 2px solid #6491E7;
 }

 .fa-bars,  .fa-xmark {
    font-size:20px !important;
 }

 .avatar_voyant_header {
    background: var(--primary-color);
    border-radius: 50px;
    width: 48px;
    height: 48px;
    border-radius: 48px;
 }

 .voyant_name {
    font-size:16px;
 }

 .voyant_avis {
    color: #CAD6FF;
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.29);
    background: rgba(255, 255, 255, 0.12);
    padding:4px 8px;
    font-size:12px;
 }

 .card_content {
    padding: 14px;
    color: #DCD2E9;
    line-height: 20px; /* 142.857% */
 }

 .card-footer {
    padding:12px;
    border-top:0px;
 }
 .card {
    color: var(--primary-white);
    padding:0px;
 }

 .card-body {

 }

 /* .star_label {
    border-radius: 40px;
    font-weight: 600;
    padding:6px 10px;
    font-size:12px;
    border: 0.5px solid rgba(255, 255, 255, 0.46);
    background: linear-gradient(90deg, rgba(49, 29, 76, 0.71) 0.28%, rgba(78, 51, 112, 0.71) 29.19%, rgba(44, 18, 80, 0.71) 65.05%, rgba(107, 70, 154, 0.71) 99.77%);
    -webkit-mask: 
    linear-gradient(135deg,#000c 40%,#000,#000c 60%)
    100% 100%/250% 250%;
    transition: .8s;
}

 .shine {
    --r: 1,1;
    -webkit-mask: 
      linear-gradient(45deg,#000c 40%,#000,#000c 60%)
      0 100%/250% 250%;
  } */

  @keyframes shine {
  0% {
    -webkit-mask-position: 100% 100%;
  }
  100% {
    -webkit-mask-position: 0 0;
  }
}

.star_label {
  border-radius: 40px;
  font-weight: 600;
  padding: 6px 10px;
  font-size: 12px;
  border: 0.5px solid rgba(255, 255, 255, 0.46);
  background: linear-gradient(
    90deg,
    rgba(49, 29, 76, 0.71) 0.28%,
    rgba(78, 51, 112, 0.71) 29.19%,
    rgba(44, 18, 80, 0.71) 65.05%,
    rgba(107, 70, 154, 0.71) 99.77%
  );
  -webkit-mask: linear-gradient(135deg, #000c 40%, #000, #000c 60%) 100% 100% / 250% 250%;
  -webkit-mask-repeat: no-repeat;
  animation: shine 1s infinite linear;
}

  /* span:hover {
    --i: -1;
    -webkit-mask-position: 0 0;
  }
  .shine:hover {
    -webkit-mask-position: 100% 0;
  }

@keyframes shine {
    0% {left: -100px}
    20% {left: 100%}
    100% {left: 100%}
} */
/* animation */

@keyframes slide {
	0% {transform:translateX(-100%);}
	100% {transform:translateX(100%);}
}

 .label_specialites{
    border-radius: 40px;
    padding: 2px 6px;
    color: var(--primary-white);
    border: 1px solid #73E89B;
    background: #1FA54C;
    text-transform: uppercase;
    font-size:10px;
    font-weight: 600;
    line-height: 16px;
    gap: 4px;
}

.btn_primary {
    padding:10px;
    width: 100%;
    background:var(--secondary-color);
    color: var(--primary-white);
    text-decoration: none;
    display:block;
    text-align: center;
    font-weight: 500 !important;
    border-radius: 6px;
    transition: all linear 200ms;

}

.btn_primary:hover {
    background: var(--secondary-color-hover);
    transition: all linear 200ms;
    font-weight: 600;


}

.btn_voyant{
    padding:10px;
    width: 100%;
    
    text-decoration: none;
    display:block;
    text-align: center;
    font-weight: 500 !important;
    border-radius: 6px;
    transition: all linear 200ms;
}

.btn_voyant:hover {
    background: var(--secondary-color-hover);
    transition: all linear 200ms;
    font-weight: 600;
}

.btn_voyant_primary {
    color: var(--primary-white);
    border: 1px solid #73E89B;
    background: #1FA54C;
}

.btn_voyant_danger {
    color: var(--primary-white);
    border: 1px solid #FF8C00;
    background: #FF8C00 !important;
}


.specialites_voyant {
    gap: 4px;

}

.card_footer {
    width: 100%;
}

.description_voyant {
    padding-top:10px;
}


/*-----------------------
 *    
 VARIATIONS SPECIALITES
 *  
 *------------------------*/


.tarot {
    background-color:var(--sp_tarot);
    border: 1px solid var(--sp_tarot-stroke);
}

.amour {
    background-color:var(--sp_amour);
    border: 1px solid var(--sp_amour-stroke);
}

.rune {
    background-color:var(--sp_rune);
    border:1px solid var(--sp_rune_stroke)
}

.numerologie {
    background-color:var(--sp_numerologie);
    border:1px solid var(--sp_numerologie_stroke)
}

.pendule {
    background-color: var(--sp_pendule);
    border:1px solid  var(--sp_pendule_stroke);
}

/* ABOUT */

.about {
    background:#01081D;
    text-align:center;
    padding:20px;
    margin:0;
}

.about h3 {
    font-size: 22px;
}

.column-features {
    justify-content: center;
    padding:10px;
    gap:20px;
    font-size:12px;
}

.column-features h4{
    font-size:16px;
}


.features {
    gap:40px;
    flex-direction: column;
}

.features p {
    color:#9FABD0;
}


/* FOOTER */
footer {
    background:#000413;
    color: #9FABD0;
}

footer a {
    color: var(--primary-white) !important;
    text-decoration:none;
}

.column-footer {
    flex-direction: column;
}

.title_footer_column {
    color: #5D647C;
    font-size:10px;
}

.list_links {
    flex-direction: column;
}

.logo_footer {
    width:172px;
}

.newsletter_input {
    border-radius: 7px;
    border: 1px solid #434C6E;
    background: #050B20;
    padding:12px;
    color: var(--primary-white);
    font-size:14px;
}

.submit_btn {
    border:0px solid;
    border-radius: 5px;
    padding:10px;
    background: var(--primary-color);
    color: var(--primary-white);
}
@keyframes fadeInUp {
    0% {
      transform: translateY(100%);
      opacity: 0;
    }
    100% {
      transform: translateY(0%);
      opacity: 1;
    }
  }
  
  .fadeInUp-animation {
    animation: 1.5s fadeInUp;
  }


/*----------------------------------------------
 *                    CHAT
 *   
 *             COMPOSANTS DU CHAT
 *   
 *
 *---------------------------------------------**/

 .contact_section {
    border-top: 1px solid #09152B;
    width: 100%;
    border-bottom:1px solid #09152B;
 }

 .contact_info {
    gap: 10px;
    align-items: center;
 }

.star_label_chat {
    border-radius: 40px;
    font-weight: 600;
    padding:4px 10px;
    font-size:12px;
    border: 0.5px solid rgba(255, 255, 255, 0.46);
    background: linear-gradient(90deg, rgba(49, 29, 76, 0.71) 0.28%, rgba(78, 51, 112, 0.71) 29.19%, rgba(44, 18, 80, 0.71) 65.05%, rgba(107, 70, 154, 0.71) 99.77%);
    -webkit-mask: 
    linear-gradient(135deg,#000c 40%,#000,#000c 60%)
    100% 100%/250% 250%;
    transition: .8s;
}

 .info_voyant_chat {
    width: 100%;
    gap: 10px;
    color:#9FABD0;
}

.info_voyant_chat h3 {
    color: var(--primary-white);
}


 .voyant_info {
    flex-direction: column;

 }

 .message_voyant {
    display: flex;
    gap:10px;
 }

 .message_voyant p {
    background: #1A2648; 
    padding:12px;
    border-radius:10px;
    max-width: 70%;
 }

 .message_user {
    display: flex;
    justify-content: end;
    flex-direction: row-reverse;
    gap:10px;
 }

 .message_user p {
    background: #4223FF; 
    padding:12px;
    border-radius:10px;
    max-width: 70%;
 }

 .chat_input {
    background: var(--primary-white);
 }

 .section_input {
    display: flex;
    gap:8px;
    background: linear-gradient(180deg, rgba(1, 12, 34, 0.00) 0%, #010C22 100%);
 }

 .section_chat {
    padding-bottom:80px !important;
 }

 .chat_input {
    width: 100%;
    border:0px solid;
    border-radius:6px;
    padding:10px;
 }

 .btn-primary {
    background: var(--primary-color);
    border:0px;
 }

 .btn_back {
    border-radius: 6px;
    border: 1px solid #384985;
    padding:12px;
    color: var(--primary-white);
    background: #101C43;
    transition: all linear 200ms;


     }

.btn_back:hover {   
    background: #202A4F;
    transition: all linear 200ms;
}


     .nav-toggle {
        -webkit-appearance: none;
        text-transform:uppercase;
        border:none;
        outline:none;
        transition: all 0.2s;
        cursor:pointer;
        color:#fff;
        background: none;
        height: 18px;
      }

      
      .fa-bars {
        font-size: 18px;
      }
      .nav-toggle:hover {
        color:#fff;
      }
      
      .nav-toggle:focus, .menu a:focus {
      }



      .sidebar {
        height: 100%;
        width: 0;
        position: fixed;
        z-index: 2;
        top: 0;
        left: 0;
        background-color: #000413;
        overflow-x: hidden;
        transition: 0.5s;
        padding-top: 20px;
      }
      
      .sidebar a {
        padding: 18px 8px 8px 32px;
        text-decoration: none;
        font-size: 16px;
        color: var(--primary-white);
        display: block;
        transition: 0.3s;
      }
      
      .sidebar a:hover {
        color: #f1f1f1;
      }
      
      .sidebar .closebtn {
        position: absolute;
        top: 0;
        font-size: 36px;
        left:0px;
      }

      .sticky-top {
        z-index:1 !important;
      }

      .fixed-bottom {
        z-index:1 !important;
      }
      .logo_sidebar {
        margin-left:36px;
      }

      .header_sidebar {
        padding-bottom:22px !important;
        border-bottom:1px solid #09152E;
      }

      .avatar_voyant_online {
        background: var(--primary-color);
        border-radius: 50px;
        width: 48px;
        height: 48px;
        border-radius: 48px;
        border: 2px solid #091435;
        box-shadow: 0px 0px 0px 1.25px #32C323;
      }



/*------------------------------------------------------------------------
 *                                 PAGE LOGIN
 *   
 *   
 *   
 *
 *------------------------------------------------------------------------**/

 .form-signin {
    max-width: 440px;
    padding: 1rem;
 }

 .form-control {
    border-radius: 6px;
    border: 1px solid rgba(147, 165, 221, 0.50);
    background: #111C40;
 }

 .headline_auth {
    font-size: 20px !important;

 }

 .form-floating>.form-control, .form-floating>.form-control-plaintext, .form-floating>.form-select {
    height: 12px !important;

 }

 .card_auth {
    border-radius: 10px;
    border: 1px solid #384985;
    background: #101C43;
    padding:12px;
 }

 .m-auto {
    margin:auto !important;
 }

 .h-auth {
    height: 100% !important;
 }

 .body_auth {
    color: #8A92AE;
 }

 .link_auth {
    color: #CBC2FF;
    margin-top:20px;
 }

 .form-control:focus {
    background:#162452;
    color: var(--primary-white);
 }
 
 .form-control {
    color: var(--primary-white);
 }

 .form-floating>label::after {
    color:#7C8ABB !important;
    background-color:none !important;
    background:none !important;
 }

 .form-floating>label {
    color:#7C8ABB !important;
    background-color:none !important;
    background:none !important;
 }

 .auth_footer h3 {
    font-size: 16px !important;
 }
 
 .banner_auth {
    border-radius: 6px;
    background: #0F1836;
    border:0px !important;
    color: var(--primary-white);
 }

 .list-group {
    border-radius: 10px;
    border: 1px solid #384985 !important;
    background-color: #101C43 !important;
    background: #101C43 !important;
    --bs-list-group-bg : #101C43;
    --bs-list-group-border-color: #384985;
    --bs-list-group-action-hover-bg: #12204C;
    --bs-list-group-color: var(--primary-white);
    --bs-list-group-action-hover-color: var(--primary-white);
 }

 .social-btn .btn {
    border: none;
    margin: 10px 0px 0;
    opacity: 1;
    padding:14px;
}

.social-btn {
    gap:20px;
}
.social-btn .btn:hover {
    opacity: 0.9;
}
.social-btn .btn-secondary, .social-btn .btn-secondary:active {
    background: #507cc0 !important;
}
.social-btn .btn-info, .social-btn .btn-info:active {
    background: #64ccf1 !important;
}
.social-btn .btn-danger, .social-btn .btn-danger:active {
    background: #df4930 !important;
}

.table {
    --bs-table-bg: none;
    --bs-table-color-state : var(--primary-white);
    border-bottom:0px !important;
}

.table>:not(caption)>*>* {
    border-bottom:0px !important;

}

th {
    color:#737C9B !important;
    font-weight: 400 !important ;
}

.btn_table {
    padding:8px !important ;
    font-size:14px;

}

input[type="date"] {
    background: #1B2957;
    color:var(--primary-white) !important;
}

input[type="date" i] {
}

::-webkit-calendar-picker-indicator{
    color: red !important;
    padding: 5px;
    cursor: pointer;
    border-radius: 3px;
}


/* Always display the drop down caret */
input[type="date"]::-webkit-calendar-picker-indicator {
    color: #2c3e50;

}


::-webkit-calendar-picker-indicator {
    filter: invert(1);
    opacity: 0.5;
}

/* Removes the spin button */
input[type="date"]::-webkit-inner-spin-button { 
    color: red !important;
    background-color: red !important;

}


thead {
    border-bottom:1px solid #384985;
    margin-top:12px;
}

.date_select {
    max-width: 200px;
}

.avatar_voyant_table {
    width:36px;
    height:36px;
    border-radius:50px;
    border: 2px solid #6491E7;
}

.voyant_table {
    padding-left:4px;
    color: var(--primary-white);
}

.table_list {
    padding-top:8px;
    padding-left:8px;
    padding-right:8px;
}

.colname {
    font-size: 10px !important;
    font-weight: bold !important;

}

.body_table {
    margin-top:8px !important;
    padding-top:8px !important;
}

.table>:not(caption)>*>* {
    padding: 0.7rem 0.5rem;
}

.account_card {
    padding:20px;
}

.form-control {
    color: var(--primary-white) !important;
}

.form-control::placeholder {
    color: #7C8BBC;
    font-weight: 200;
}

.data_mobile {
    display: none;
}

.table_list_mobile {
    display:none !important;
}

.table_head {
    border-bottom:1px solid red;
}

.table_content {
    flex-direction: column !important;
    align-items: baseline !important;
    width: 100%;
    gap:20px;
}

@media (max-width: 720px) {
    .data_mobile {
        display: block;
        padding:18px;
    }

 
    .table_list_mobile {
        display: block !important;
    }
    .data_desktop {
        display:none !important;
    }

    .data_content {
        display: flex;
        flex-direction:column;
        gap: 8px;
        margin-bottom:20px;
    }

    .data_content p {
        margin-bottom:0px;
        font-weight: 700;
    }

    .data_content h3 {
        margin-bottom:0px;
        font-size:12px;
        color:#9FABD0;
    }

    .table_list_mobile {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap:wrap;
        padding:12px;
        border-radius: 10px;
        border: 1px solid #384985;
        background: #101C43;
    }

    .table_list {
        flex-direction: column !important;
    }

    .table_content {
        flex-direction: column;
        align-items: baseline !important;
        width: 100%;
        gap:20px;
    }

    .col_table {
        width: 100%;
    }

    .table_column_mobile {
        display: block !important;
    }

    .table_head {
        display: none !important;
    }

    .mb_table_col {
        flex-direction: column;
        border-bottom:1px solid #384985;
        padding-bottom:20px;
        gap:20px;
    }

    .mb_table_col:last-child {
        border-bottom:0px;
    }

    .table_column_mobile {
        margin-bottom:0px;
    }
    .date_select {
        max-width: 100% !important;
        width: 100% !important;
    }

    .action_message {
        background:red !important;
        flex-direction: row !important;
    }

    .action_message {
        gap:4px;
        display: flex;
        flex-direction: column;

    }

    .action_message img {
        width: 20px !important;
        height: 20px;
    }

    .like_btn {
        width: 30px !important;
        height: 30px !important;
        padding:2px !important;
    }

    .like_btn img {}

    .dislike_btn {
        width: 30px !important;
        height: 30px !important;
        padding:2px !important;
    }

 }

 @media (max-width: 480px) {
    .data_mobile {
        display: block;
        padding:18px;
    }

    .action_message {
        background:red !important;
        flex-direction: row !important;
    }

    
    .data_desktop {
        display:none !important;
    }

    .data_content {
        display: flex;
        flex-direction:column;
        gap: 8px;
        margin-bottom:20px;
    }
    
    .date_select {
        max-width: 100% !important;
        width: 100% !important;
    }

    .data_content p {
        margin-bottom:0px;
        font-weight: 700;
    }

    .data_content h3 {
        margin-bottom:0px;
        font-size:12px;
        color:#9FABD0;
    }

    .table_list_mobile {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap:wrap;
        padding:12px;
        border-radius: 10px;
        border: 1px solid #384985;
        background: #101C43;
    }

    
    .name_table {
        gap:6px;
        align-items: center;
    }



}

.table_head {
    border-bottom:1px solid #384985 !important;
    color:#737C9B;
}
.table_column_mobile {
    display: none;
}
.card_payment {
    border-radius: 10px;
    border: 1px solid #384985;
    background: #101C43;
}

.card_payment_header {
    background: #8C2BE9;
    padding:20px;
}

.card_payment_header_2 {
    background: linear-gradient(180deg, #4223FF 0%, #7761FF 100%);
    padding:30px;
    display: flex;
    flex-direction: column;
    gap:16px;
    text-align: center;

    p  {
        font-weight: 600;
        font-size:20px !important;
    }
}

.toaster_modal {
    background:green;
    padding:16px;
    border-radius: 8px;
    border: 1px solid #101C43;
    background: #0F9D59;
    margin:10px;
    margin-top:-28px;
    display:flex;
    gap:10px;
}

.form-payment {
    max-width: 492px;
    padding: 1rem;
}

.input_cvv {
    max-width:100px;
}
.content_toaster{
    display: flex;
    flex-direction: column;
    gap:6px;
    font-weight: 400;
    font-size:14px !important;
    p{
        line-height: 16px;
        font-size:14px !important;
        margin:0px !important;
        font-family: "Inter", sans-serif;
        font-weight:500 !important;

        font-optical-sizing: auto;
        font-style: normal;
    }

}
.card_header_icon {
    width: 80px;
    margin-bottom: -80px;
    text-align:center;
}

.card_header_icon_2 {
    width: 54px;
    text-align:center;
    background: var(--primary-white);
    border-radius:50px;
    padding:8px;
}

.card_payment_header {
    text-align:center;
}

.price_headline {
    font-size:34px;
}

.label_credits {
    border-radius:30px;
    background: #243363;
    padding:10px;
    position: relative;
}

.card_payment p {
    font-size:14px;
}

.card_payment_body {
    color: #8592BE;

}
.card_payment strong {
    color: var(--primary-white);
}

.payplug {
    background: #0F1836;
    padding:14px;
    border-radius:8px;
    text-align:center;
}

.payment_info {
    display: flex;
    color:#8592BE;
}

.like_btn {
    border-radius:50px;
    width: 44px;
    height: 44px;
    background: #23B914;
    border:1px solid #68D55D;
    text-align: center;
    padding: 8px;
}

.like_btn img {
    width:22px;
    height: 22px;
    margin:auto;
}

.dislike_btn {
    border-radius:50px;
    background: #E91D39;
    border:1px solid #FF6B7F;
    width: 44px;
    height: 44px;
    text-align: center;
    padding: 8px;
}


.like_btn:hover  {
    border:1px solid #CAFFC4;
}

.dislike_btn:hover {
    border:1px solid #FFAAB5;
}

.dislike_btn img {
    width:20px;
    height: 20px;
    margin:auto;
}


/*------------------------------------------------------------------------
 *                                 MODALS
 *   
 *   
 *   
 *
 *------------------------------------------------------------------------**/ 


 .modal_pack {
   border-radius:12px;
   color: #101C43;
   font-size:14px;
   font-weight: 600;
 }

 .modal_offre {
    border-radius:12px;
   color: #101C43;
   font-size:14px;
   font-weight: 600;
   background:#8A1CCD;
 }

 .modal_pack p {
    margin-top:0px;
    margin-bottom:0px;
 }

 .modal_header_pack {
    background:#FF008A;
    color: var(--primary-white);
    text-align: center;
    padding:28px;
 }

 .modal-title {
    margin:auto;
    font-size:25px !important;
    font-weight: 600;
 }

 .plan_body {
    padding:8px;
    border:1px solid #E0E0E0;
    border-radius:10px;
    gap:8px;
 }

 .credits_price {
    background: #F3F2FF;
    padding-left: 10px;
    padding-right:10px;
    padding-top:8px;
    padding-bottom:8px;
    border-radius:10px;
    color:#4223FF;
    display: flex;
    flex-direction: column;
    font-family: var(--heading-font);
    font-weight: 400;
    align-items: center;
 }

 .price_btn {
    background:#237BFF;
    border:1px solid #0F5DD3;
    color:var(--primary-white);
    padding: 20px;
    border-radius:10px;
    font-family: var(--heading-font);
    font-weight: 700;
    text-decoration: none;
    font-size:18px;
 }

 .credits_number {
    font-size:22px;
    font-family: var(--heading-font);
    font-weight: 700;
 }

 .modal_body_plan {
    display: flex;
    flex-direction: column;
    gap:8px;
 }

 .modal_offre {
    color:var(--primary-white);
 }

 .modal-footer a {
    color:var(--primary-white);
 }
 .credits_count_modal strong {
    font-weight: bold;
    color:var(--primary-white) !important;
 }

 .modal_header_offre {
    border-bottom:0px !important;
 }
 .pack_evidence {
    background:#F0FAEF !important;
    color:#16B006;
 }

 .pack_certitude {
    background:#FFF4E9 !important;
    color:#FF8D23;
 }


 .pack_resolution {
    background:#FFF0F8 !important;
    color:#FF008A;
 }

 .price_btn {
    flex-direction: column;
 }

 .old_price {
    text-decoration:line-through;
    font-size:14px;
 }

 .promo_btn {
    padding-top:10px;
    padding-bottom:10px;
    align-items: center;
 }

 .price_btn:hover {
    background:#115FD4;
    border:1px solid #115FD4;
 }
 .credits_count_modal {
    background:#FF008A;
    border-radius:50px;
    text-align: center;
    margin-top:-36px;
    border:2px solid var(--primary-white);
    width: fit-content;
    padding:10px;
    margin-left:auto;
    margin-right:auto;
    color:var(--primary-white)
 }

 .close {
    background:none !important;
    border:none;
    color:var(--primary-white);
 }

 .gift_illustration {
    width: 240px;;
 }

 .btn_secondary {
    background:white;
    width: 100%;
    border-radius: 8px;
    border: 2px solid #69119E;
    padding: 12px;
    font-weight: 600;
 }

 .btn_secondary:hover {
    background:#F1DBFF;
    color:var(--darker-primary);
    border:2px solid #46096C;
 }

 .modal-footer {
    display:flex;
    flex-direction: column;
    padding:10px;
    border-top:1px solid #A24AD7;
 }

 .modal_timer {
    background:#1C83CD;
    border:1px solid #44A7EE;
    border-radius:12px;
 }

 .credit_heading {
    background:#045894;
    border-radius:12px;
    padding:8px;
    text-transform: uppercase;
    font-weight: bold;
    border:1px solid #3BA1EA;
    z-index:2;
 }

 .price_promo {
    background:#045894;
    border:1px solid #3BA1EA;
    text-align: center;
    padding:10px;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius:16px;
    font-size:16px !important;
    margin-top:-3px !important;
    z-index: 1;
    margin-bottom:12px;
    font-family: var(--heading-font);    
}

 .new_price {
    font-size:28px;
    margin-bottom:0px;
 }

 .timer {
    border-radius: 8px;
    border: 1px solid #89C3ED;
    background: #2587CE;
    padding:10px;
    font-family: var(--heading-font);
 }

 .timer span {
    font-size:26px;
 }

 .old_price {
    color:#FFB423;
    font-size:16px !important;
    font-weight: bold;
 }

 .btn_decline {
    background: #0B69AC;
    font-family: var(--heading-font);
    padding:12px;
    font-weight: 600;
 }

 .btn_decline:hover {
    background: #085A95;
 }

 .btn_accept {
    border-radius: 8px;
    border: 2px solid #0F64A1;
    background: #32C323;
    padding:12px;
    font-family: var(--heading-font);
    font-weight: 600;
 }

 .btn_accept:hover {
    border: 2px solid #065893;
    background: #1DB00E;
 }

 .footer_timer {
    width: 100%;
    flex-direction: row;
    border-top:0px !important;
 }

 .illustrations_coins {
    position:absolute;
    z-index:1;
    top:-10px;    
 }

 .modal_promo {
    border-radius: 12px;
    border: 1px solid #7694DD;
    background: linear-gradient(180deg, #3A569B 0%, #7E97D3 100%);
 }

 .title_giveaway {
    background: white; 
    padding:8px;
    border-radius:12px;
    color:#3A569B;
    font-family: Poppins;
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px; /* 133.333% */
    text-align:center;
    max-width: 300px;
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.15);
    z-index:1;

 }

 .amazon_card {
    width: 192px;
    z-index:0;
    margin-top:-40px;
 }

 .header_amazon_promo {
    border-bottom:0px;
 }

 .title_step {
    border-radius: 20px;
    background: rgba(59, 85, 144, 0.50);
    padding:8px;
    font-weight: 600;
 }

 .stepper {
    .line {
      width: 2px;
      background-color: #32519B !important;
    }
    .lead {
      font-size: 1.1rem;
    }
  }
  .line {
    width: 2px;
    background-color: #32519B !important;
  }
  .lead {
    font-size: 1.1rem;
  }
  .step_count {
    background:#A0B7F0;
    border:1px solid #2A4A96;
    color:#3353A1;
    font-weight: 600;
    font-size:14px;
    line-height: 24px;
  }

  .step-name {
    font-size:16px;
    padding-left:10px;
    height: 40px;
    font-weight: 600;
  }

  
 .plan_body_amazon {
    background: linear-gradient(180deg, #445B91 0%, rgba(68, 91, 145, 0.57) 100%);
    padding:8px;
    border:1px solid #283B68;
    border-radius:10px;
    gap:8px;
 }

 .pack_name {
    font-size:14px;
    font-weight: 600;
    margin-bottom:0px;
 }

 .credits_price_green {
    background: #F0FAEF;
    color:#16B006;
 }

 .bandeau {
    background:#66BD21;
    padding:8px;
    text-align: center;
    font-family: var(--heading-font);
    font-size:18px;
    font-weight: 600;
 }

 .phone {
    border-radius: 6px;
    border: 1px solid #283B68;
    background: rgba(37, 74, 161, 0.43);
    padding:12px;
    color:#fff;
    font-weight: 600;

}

::placeholder {
    color: var(--primary-white);
    opacity: 0.7; /* Firefox */
    font-weight: 600;
  }
  
  ::-ms-input-placeholder { /* Edge 12 -18 */
    color: var(--primary-white);
  }

.step-description {
    padding-left:0px;
    font-size:16px;
    font-weight: 600;
}

.label_input {
    color: #ACC0F0;
    font-weight: 600;
}

.btn_modal {
    background:white;
    width: 100%;
    border-radius: 8px;
    border: 2px solid #374F89;
    padding: 12px;
    font-weight: 600;
    opacity: 1;
    color:#101C43;
}


 .btn_modal:hover {
    background:#fff;
    opacity: 0.8;
    color:#101C43;

    border:2px solid #374F89;
 }

 .title_giveaway strong {
    color: #FF9E25;

 }

 .title_modal {
    position:absolute;
    top:-40px;
    left:30%;
 }

 .modal_header_forfait {
    background: linear-gradient(180deg, #4F42BA 0%, #2C1E9C 66.5%);
    box-shadow: 0px -26px 24px 0px rgba(0, 0, 0, 0.25) inset;
    border-radius:20px !important;
 }

 .modal-header {
    background-image:url(../img/background_modal.svg);
    background-size:contain;
 }

 .plan_forfait {
    border-radius: 16px;
    gap:18px !important;
    padding:12px;
}

.forfait_purple {
    border: 1px solid #B3A6FF;
    background: linear-gradient(153deg, #EDEBFF 16.81%, #D8D3FF 87.1%);
    transition: all .2s ease-in-out;
    box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.13), 0px 4px 4px 0px #FFF inset, 0px -4px 4px 0px #BAB2FF inset;
}

.forfait_green {
    color:#3D5800 !important;
    border: 1px solid #C9DF99;
    background: linear-gradient(153deg, #F2FFDC 16.81%, #EBFFB0 87.1%);
    transition: all .2s ease-in-out;
    box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.13), 0px 4px 4px 0px #FFF inset, 0px -4px 4px 0px #C7EC70 inset;
}

.forfait_green:hover {
    transform: scale(1.05);
    border:1px solid #628E00;
}

.forfait_purple:hover {
    transform: scale(1.05);
    border:1px solid #12007F;
}

.forfait_orange:hover {
    transform: scale(1.05);
    border:1px solid #FF8900;
}

.forfait_pink:hover {
    transform: scale(1.05);
    border:1px solid #7800D6;
}

.forfait_orange {
    border-radius: 12px;
    color:#653800;
    border: 1px solid #FFB35A;
    transition: all .2s ease-in-out;
    background: linear-gradient(153deg, #FFF1D6 16.81%, #FFE9B0 87.1%);
box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.13), 0px 2px 4px 0px #FFF inset, 0px -4px 4px 0px #FFB55C inset;
}

.forfait_pink {
    color: #390065;
    border-radius: 12px;
    border: 1px solid #E5C4FF;
    transition: all .2s ease-in-out;

    background: linear-gradient(153deg, #EACFFF 16.81%, #D9A9FF 87.1%);
    box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.13), 0px 2px 4px 0px #FFF inset, 0px -2px 4px 0px #BB65FF inset;
}


 .modal_forfait {
    background: linear-gradient(180deg, #4F42BA 0%, #2C1E9C 66.5%);
    box-shadow: 0px -26px 24px 0px rgba(0, 0, 0, 0.25) inset;
    border-radius:20px;
 }
 
 .credits_purple span {
    color: #3B24C5;
} 

.credits_green {
    background: linear-gradient(173deg, #9FDC00 5.12%, #4F9E11 57.34%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.credits_pink {
    background: linear-gradient(163deg, #DA33F5 11.54%, #BF08EC 98.46%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.credits_orange {
    background: linear-gradient(163deg, #FF9330 11.54%, #BF6600 98.46%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.forfait_name {
    color: #3B24C5;
    font-weight: 900;
}

.price_current {
    text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.06);
    font-weight: bold;
    line-height: 8px;
    text-decoration:none !important;
}

.price_tag_new {
    font-size:16px;
    fill: white !important;
}

.price_tag_old {
    font-size:12px;
    fill: #654000 !important;
    text-decoration: line-through;
}

.price_tag {
    color: #FFF;
    text-align: center;
    text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.06);
    font-family: Poppins;
    font-size: 16px;
    font-style: normal;
    font-weight: 800;
    line-height: normal;
    transition: all .2s ease-in-out;
    transform: rotate(-3deg);
}

.new_price {
    font-size:12px;
    fill: #654000 !important;
}

.price_tag:hover {
    transform: scale(1.1);
}

.price_tag svg {
    fill: linear-gradient(180deg, #FFC37D 0%, #F9AF20 100%);
    filter: drop-shadow(0px 1px 0px #C26D00);
}

.bouton-svg {
    transform: rotate(-3deg) !important;
    background-image: url('../img/btn_tag.svg');
    background-color: transparent;
    background-size: cover; /* Pour s'assurer que l'image remplit bien le bouton */
    width: 98px; /* Définis la largeur que tu veux pour ton bouton */
    height: 46px; /* Et la hauteur */
    border: none; /* Pas de bordure pour que ça ait l'air cool */
    color: white; /* Couleur du texte */
    font-size: 16px; /* Taille du texte */
    text-align: center; /* Pour centrer le texte dans le bouton */
    cursor: pointer; /* Pour que le curseur change quand on survole le bouton */
}

.credits_forfait {
    line-height:22px;
    font-size:27px;
}

.mw_modal {
    max-width: 410px;
}

.modal_body_forfait {
    margin-top:-55px;
}

.modal_border {
 position: absolute;
 width: 100%;
 height: 100%;
 padding:8px;

}

.border {
    border-radius: 14px;
    border: 1px dashed #7862FF !important;    
    width: 100%;
    height: 100%;
}

.coin_1 {
    position: absolute;
    left:-70px;
    top:-20px;
    z-index:5;
}
.coin_2 {
    position: absolute;
z-index:5;
    right:-30px;
    top:50px;
}

.input_custom {
    border-radius: 6px;
    background: #FFF;
    border:0px;
    padding:14px;
    font-weight: 500 !important;
}

.input_custom::focus {
    border:2px solid #495A94;
    background:var(--primary-white) !important;
}

.input_custom::placeholder {
    color:#7C8BBC;
    font-weight: 400;
}

.form-label {
    font-weight: 600;
}

.text-footer {
    color:#8592BE;
}

.upsell_card {
    border-radius: 10px;
    border: 1px solid #213067;
    background: linear-gradient(180deg, #0A163F 0%, #132976 89.5%, #1B39A5 100%);
    transition: all linear 200ms;
    background-clip: border-box;
    flex: 1 0 auto !important;
}


.up_card_header {
    padding-top:14px;
    font-weight: bold;
 }

 .upsell_icon {
    width: 36px;
 }

 .label_upsell {
    font-size:16px;
    color: white;
 }

 .upsell_bloc {
    border-radius: 6px;
border: 1px solid #354A92; 
width: 100%;
 }

 .price_upsell {
    text-transform: uppercase;
    text-align:center;
    color:white;
    font-weight: 800;
    
}

.price_up {
    border-top:1px solid #354A92;
    width: 100%;
}

.title_bloc {
    font-size: 16px;

}

.underline {
    border-bottom: 4px red !important;
    text-decoration: underline #8F00FF 3px;
}

/*
/////////////////// MODAL PRIME ///////////////////////
*/

.modal_prime {
    border-radius: 17px;
border: 4px solid #FF0;
background: linear-gradient(180deg, #FFD92F 0%, #FFD100 38.5%, #FFE15B 69.5%), linear-gradient(162deg, #FFDD54 12.35%, #FFDD54 26.58%, #FFE500 41.72%, #FFD632 50.51%, #FFE500 75.29%, #FFDD54 83.48%);
box-shadow: 0px -16px 14px 0px rgba(0, 0, 0, 0.03) inset, 0px 0px 20px 4px #FFA600 inset, 0px 0px 0px 7px #F3BF00 inset;
}

.dot_on {
    font-size:120px;
    line-height: 2px;
    color: #FFF;

    height: 20px;
    text-shadow: 0px 0px 8px #FFF, 0px 0px 14px #FFE100;
}

.dot_off {
    font-size:120px;
    line-height:18px;
    color: rgba(255, 255, 255, 0.70);
    mix-blend-mode: soft-light;
    filter: blur(0.5px);
}

.arg {
    border-radius: 10px;
    border: 2px solid #FFF;
    background: #FFF;
    font-family: var(--heading-font);
    font-size: 18px;
    font-weight: 600;
    text-align:center;
    padding:10px;
    color: #6B4500;
    max-width: 260px;;
    -webkit-font-smoothing: antialiased; /* Pour Safari et Chrome */
    -moz-osx-font-smoothing: grayscale;  /* Pour Firefox sur macOS */
    text-rendering: optimizeLegibility; /* Rend le texte plus lisible pour les petits textes */
    text-rendering: geometricPrecision; /* Pour une précision géométrique */
    font-feature-settings: "liga", "kern"; /* Active la ligature et le crénage */
    font-weight: medium;
    font-style: normal;
    box-shadow: 0px 4px 7px 0px rgba(0, 0, 0, 0.11), 0px 0px 12px 0px #FFA927 inset, 0px 0px 0px 2px #FF9D00;
}

.price {
    border-radius: 10px;
    border: 2px solid #F3C800;
    background: #FFF;
    box-shadow: 0px 0px 24px 5px #FFDD6F, 0px 0px 15px 6px #FFF;
    width: fit-content;

    display: flex;
    flex-direction: column;
}

.modal_footer {
    margin-left:auto;
    margin-right:auto;
    background: #FFD100 !important;
    width: 100%;
    border-left:7px solid #F7B300;
    border-right:7px solid #F7B300;
    border-bottom:7px solid #F7B300;
    border-bottom-left-radius: 14px;
    border-bottom-right-radius: 14px;
    padding-bottom:30px;
}

.big_price {
    font-family: var(--heading-font);
    color: #6C4601;
    text-align: center;
    font-size: 24px;
    line-height: 20px; /* 200% */
    font-weight: 600;
}

.price {
    margin-left:auto;
    margin-right:auto;
    margin-top:-20px;
    padding-left: 30px;
    padding-right:30px;
    padding-top:10px;
    padding-bottom:10px;
}

.small_price {
    color: rgba(66, 54, 0, 0.58);
    font-size:12px;
    text-align:center;
    
}

.order-btn {
    border-radius: 8px;
border: 1px solid #D56400;
background: linear-gradient(0deg, #E2712C 0%, #F99720 100%);
box-shadow: 0px -4px 10px 0px #F40 inset;
position: absolute;
width: 280px;
padding:8px;
font-family: var(--heading-font);
font-weight: 600;
color:#fff;
bottom:-20px;
transition: all .2s ease-in-out;

}

.order-btn:hover {
    transform: scale(1.05);
}
.title_modal_prime {
    position:absolute;
    top:-60px;
    left:25%;
    width: 220px !important;

}

/*
////////////////////////////////
///  MODALE FIDELITE //////////////*/

.modal_fidelite {
    background: #081C61;
    border: 1px solid #233677;
    border-radius:20px;
    
 }

.title_modal_fidelite {
    position:absolute;
    top: -40px;
    left:20%;
    width: 250px;
}

 .modal-header-fidelite {
    background-image:url(../img/bg_modal_fidelite.svg);
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    height: 299px;
    width: 100%;
    position:absolute;
    top:0px;
    filter:blur(0px);
    z-index:0;
 }

.close_btn {
    right:20px;
    top:30px;
    color:#6B4500;

}

.container{

}

/* Variables de couleurs */
:root {
    --orange-primary: #FF8A00;
    --orange-dark: #CC6E00;
    --green-primary: #00B488;
    --green-dark: #008F6C;
    --purple-primary: #9D00FF;
    --purple-dark: #3D1779;
    --pink-primary: #FF00C7;
    --pink-dark: #CC009F;
  }
  
 /* Variables de couleurs */
:root {
    --orange-primary: #FF8A00;
    --orange-dark: #CC6E00;
    --green-primary: #00B488;
    --green-dark: #008F6C;
    --purple-primary: #9D00FF;
    --purple-dark: #3D1779;
    --pink-primary: #FF00C7;
    --pink-dark: #CC009F;
  }
  
  /* Conteneur du plan */
  .plan_body {
    width: 100%;
    position: relative;
  }
  
  /* Conteneur de la progress bar */
  .container .progresses {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 20px 0;
    position: relative;
  }
  
  /* Ligne entre les steps */
  .line {
    display: block;
    width: 20px;
    height: 6px;
    background: var(--purple-dark) !important;
    margin: 0;
  }
  
  /* Styles de base pour tous les steps */
  .steps {
    display: flex;
    background-color: var(--purple-primary) !important;
    color: #fff;
    font-size: 14px;
    width: 14px;
    height: 14px;
    min-width: 14px; /* Assure une largeur minimale */
    min-height: 14px; /* Assure une hauteur minimale */
    align-items: center;
    justify-content: center;
    border: 1px solid white;
    border-radius: 50%;
    position: relative;
    flex-shrink: 0;
    margin: 0;
    z-index: 1;
  }
  
  /* Step actif */
  .steps.active {
    width: 26px;
    height: 26px;
    min-width: 26px;
    min-height: 26px;
    border: 2px solid white;
    filter: drop-shadow(0px 2px 2px rgba(52, 11, 105, 0.30));
    position: relative;
  }
  
  /* Icône dans le step actif */
  .steps.active i {
    font-size: 12px;
    color: white;
    position: relative;
    z-index: 2;
  }
  
  /* Steps futurs */
  .steps.futur {
    background: white !important;
    border: 1px solid var(--purple-dark);
  }
  
  /* Tooltip */
  .tooltip_2 {
    position: absolute;
    top:25px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #000;
    color: white;
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 10;
  }
  
  .tooltip_2 span {
    display: block;
    text-align: center;
  }
  
/* Variations de couleurs - Orange */
.forfait_orange .line {
    background: var(--orange-dark) !important;
  }
  
  .forfait_orange .steps {
    background-color: var(--orange-primary) !important;
  }
  
  .forfait_orange .steps.futur {
    border-color: var(--orange-dark);
  }
  
  /* Variations de couleurs - Violet */
  .forfait_purple .line {
    background: var(--purple-dark) !important;
  }
  
  .forfait_purple .steps {
    background-color: var(--purple-primary) !important;
  }
  
  .forfait_purple .steps.futur {
    border-color: var(--purple-dark);
  }
  
  /* Variations de couleurs - Vert */
  .forfait_green .line {
    background: var(--green-dark) !important;
  }
  
  .forfait_green .steps {
    background-color: var(--green-primary) !important;
  }
  
  .forfait_green .steps.futur {
    border-color: var(--green-dark);
  }
  
  /* Variations de couleurs - Rose */
  .forfait_pink .line {
    background: var(--pink-dark) !important;
  }
  
  .forfait_pink .steps {
    background-color: var(--pink-primary) !important;
  }
  
  .forfait_pink .steps.futur {
    border-color: var(--pink-dark);
  }


  :root {
    --orange-primary: #FF8A00;
    --orange-dark: #CC6E00;
    --orange-bg: #FFF3E0;
    --green-primary: #00B488;
    --green-dark: #008F6C;
    --green-bg: #E8FFF3;
    --purple-primary: #9D00FF;
    --purple-dark: #3D1779;
    --purple-bg: #F8F0FF;
    --pink-primary: #FF00C7;
    --pink-dark: #CC009F;
    --pink-bg: #FFF0FA;
  }
  
  /* Conteneur principal */
  .programme-fidelite {
    border-radius: 20px;
    padding: 1.5rem;
    padding-top:0px;
    margin-top:-30px !important;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
  }
  
  /* Conteneur des cards */
  .cards-container {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 1rem 0;
  }
  
  /* Style de base des cards */
  .plan_body {
    width: 100%;
    padding: 1.5rem;
    border-radius: 12px;
  }
  
  /* Titre du forfait */
  .forfait_name {
    color: #333;
    font-weight: 600;
    font-size: 1.1rem;
    margin-bottom: 1rem;
    text-align: center;
  }
  
  /* Variations de couleurs pour les backgrounds */
  .forfait_purple {
    background-color: var(--purple-bg);
  }
  
  .forfait_green {
    background-color: var(--green-bg);
  }
  
  .forfait_orange {
    background-color: var(--orange-bg);
  }
  
  .forfait_pink {
    background-color: var(--pink-bg);
  }
  
  /* Progress bar styles */
  .progresses {
    display: flex;
    align-items: center;
    gap: 0;
  }
  
  .line {
    display: block;
    width: 20px;
    height: 6px;
  }
  
  .steps {
    display: flex;
    color: #fff;
    font-size: 14px;
    width: 14px;
    height: 14px;
    min-width: 14px;
    min-height: 14px;
    align-items: center;
    justify-content: center;
    border: 1px solid white;
    border-radius: 50%;
    position: relative;
  }
  
  /* Step actif */
  .steps.active {
    width: 26px;
    height: 26px;
    min-width: 26px;
    min-height: 26px;
    border: 2px solid white;
    filter: drop-shadow(0px 2px 2px rgba(52, 11, 105, 0.30));
  }
  
  /* Step passé */
  .steps.passed {
    background-color: white !important;
    border: 1px solid;
  }
  
  /* Step futur */
  .steps.futur {
    background: white !important;
    border: 1px solid;
  }
  
  /* Tooltip */
  .tooltip_2 {
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translateX(-50%);
    background: white;
    color: var(--darker-primary);
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 10;
  }
  
  /* Couleurs des éléments de progression pour chaque forfait */
  .forfait_purple .line {
    background: var(--purple-dark) !important;
  }
  .forfait_purple .steps {
    background-color: var(--purple-primary) !important;
  }
  .forfait_purple .steps.passed {
    background: var(--purple-primary) !important;
    color: var(--purple-primary);
    border-color: white;

  }
  .forfait_purple .steps.futur {
    background-color: white !important;
    border-color: var(--purple-dark);
    color: var(--purple-dark);
  }
  
  /* States pour le forfait vert */
  .forfait_green .line {
    background: var(--green-dark) !important;
  }
  .forfait_green .steps {
    background-color: var(--green-primary) !important;
  }
  .forfait_green .steps.passed {
    background: var(--green-primary) !important;
    color: var(--green-primary);
    border-color: white;

  }
  .forfait_green .steps.futur {
    background-color: white !important;
    border-color: var(--green-dark);
    color: var(--green-dark);
  }
  
  /* States pour le forfait orange */
  .forfait_orange .line {
    background: var(--orange-dark) !important;
  }
  .forfait_orange .steps {
    background-color: var(--orange-primary) !important;
  }
  .forfait_orange .steps.passed {
    background: var(--orange-primary) !important;
    color: var(--orange-primary);
    border-color: white;

  }
  .forfait_orange .steps.futur {
    background-color: white !important;
    border-color: var(--orange-dark);
    color: var(--orange-dark);
  }
  
  /* States pour le forfait rose */
  .forfait_pink .line {
    background: var(--pink-dark) !important;
  }
  .forfait_pink .steps {
    background-color: var(--pink-primary) !important;
  }
  .forfait_pink .steps.passed {
    background: var(--pink-primary) !important;
    color: var(--pink-primary);
    border-color: white;

  }
  .forfait_pink .steps.futur {
    background-color: white !important;
    border-color: var(--pink-dark);
    color: var(--pink-dark);
  }


  .btn_gift {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 1rem auto 0;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    font-weight: 600;
    color: white;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
  }
  
  /* Variations de couleur pour chaque forfait */
  .forfait_purple .btn_gift {
    background-color: var(--purple-primary);
    box-shadow: 0 4px 6px rgba(157, 0, 255, 0.2);
  }
  
  .forfait_purple .btn_gift:hover {
    background-color: var(--purple-dark);
    transform: translateY(-2px);
    box-shadow: 0 6px 8px rgba(157, 0, 255, 0.3);
  }
  
  .forfait_green .btn_gift {
    background-color: var(--green-primary);
    box-shadow: 0 4px 6px rgba(0, 180, 136, 0.2);
  }
  
  .forfait_green .btn_gift:hover {
    background-color: var(--green-dark);
    transform: translateY(-2px);
    box-shadow: 0 6px 8px rgba(0, 180, 136, 0.3);
  }
  
  .forfait_orange .btn_gift {
    background-color: var(--orange-primary);
    box-shadow: 0 4px 6px rgba(255, 138, 0, 0.2);
  }
  

  .close_fidelite {
    top:20px;
    left:12px;
  }