.realisations-widgets swiper-container .data-item__title {
    font-size: 20px;
}
.modules-services .site-vitrine .badge {
    background   : var(--color-2);
    color        : #000;
    border-radius: 4px;
}
/*-----------------------base--------------------------*/
.base-color-1 {
    --after-color: var(--color-1);
}
.base-color-1 li::marker {
    color: var(--color-1);
}
.base-color-1 .badge {
    background: var(--color-1);
}
.base-color-2 {
    --after-color: var(--color-2);
}
.base-color-2 .badge {
    background: var(--color-2);
}
.base-color-2 li::marker {
    color: var(--color-2);
}
.base-color-3 {
    --after-color: var(--color-3);
}
.base-color-3 li::marker {
    color: var(--color-3);
}
.base-color-3 .badge {
    background: var(--color-3);
}
.base-color-4 {
    --after-color: var(--color-4);
}
.base-color-4 li::marker {
    color: var(--color-4);
}
.base-color-4 .badge {
    background: var(--color-4);
}
.base-color-5 {
    --after-color: var(--color-5);
}
.base-color-5 li::marker {
    color: var(--color-5);
}
.base-color-5 .badge {
    background: var(--color-5);
}
.base-color-6 {
    --after-color: var(--color-6);
}
.base-color-6 li::marker {
    color: var(--color-6);
}
.base-color-6 .badge {
    background: var(--color-6);
}
.base-color-7 {
    --after-color: var(--color-7);
}
.base-color-7 li::marker {
    color: var(--color-7);
}
.base-color-7 .badge {
    background: var(--color-7);
}
.base-color-8 {
    --after-color: var(--color-8);
}
.base-color-8 li::marker {
    color: var(--color-8);
}
.base-color-8 .badge {
    background: var(--color-8);
}
.base-color-9 {
    --after-color: var(--color-9);
}
.base-color-9 li::marker {
    color: var(--color-9);
}
.base-color-9 .badge {
    background: var(--color-9);
}
.bg-blanc {
    background   : #fff;
    border-radius: 4px;
}
/*-----------------------table--------------------------*/
.table {
    --bs-table-striped-bg: var(--bg-light);
}
.table p {
    margin-bottom: 0;
}
table td,
table th {
    padding: 1rem;
}
table th {
    font-weight: 600;
}
tbody,
td,
tfoot,
th,
thead,
tr {
    border-color: transparent;
}
/*------------------------------------------------*/
ul.steps {
    padding-left: 0 !important;
}
.steps {
    list-style: none;
    padding   : 0;
    margin    : 0;
    position  : relative;
}
.steps::before {
    content   : "";
    position  : absolute;
    left      : 11px;
    top       : -8px;
    bottom    : 0;
    width     : 1px;
    background: var(--color-2);
    height    : calc(100% + 18px);
}
.steps li {
    position     : relative;
    padding-left : 50px;
    margin-bottom: 18px;
    font-size    : 16px;
    line-height  : 1.4;
    color        : #333;
}
/* pastille numérotée */
.steps li::before {
    content          : counter(step);
    counter-increment: step;
    position         : absolute;
    left             : 0;
    top              : 0;
    width            : 24px;
    height           : 24px;
    background       : var(--color-2);
    color            : #fff;
    font-weight      : 800;
    font-size        : 16px;
    border-radius    : 50%;
    display          : flex;
    align-items      : center;
    justify-content  : center;
}
.steps {
    counter-reset: step;
}
/*-----------------------parallax--------------------------*/
.parallax-container {
    position: relative;
    /* height  : 40vh; */
    overflow: hidden;
}
.parallax-bg {
    position           : absolute;
    top                : 23px;
    left               : 0;
    width              : 100%;
    height             : 110%;
    background-size    : cover;
    background-position: center;
    transform          : translateY(0);
    will-change        : transform;
}
/*-----------------------titre--------------------------*/
.radius {
    border-radius: var(--card-radius);
}
.side {
    width       : 50px;
    flex-shrink : 0;
    border-right: 1px solid black;
}
.side-fixed {
    position    : fixed;
    top         : 0;
    left        : 0;
    width       : 50px;
    border-right: 1px solid black;
    height      : 100vh;
}
/* Logo fixe DANS la colonne fixe */
.logo-fab {
    position: fixed;
    left    : 0;
    top     : 20%;
}
/* Le main se décale correctement */
.main {
    min-width: 0;
    flex     : 1;
    padding  : 0 2rem;
}
.container-special {
    max-width: 1500px;
}
.h2-title {
    font-size  : 77px;
    font-weight: 200;
    font-family: "inter";
}
.mt-4 > h2:first-of-type {
    margin-bottom: 0;
}
.mt-4 > h2:only-of-type {
    margin-bottom: 1rem;
}
.h2 strong,
.h2-title strong {
    font-weight: bold;
}
.h2 {
    font-size  : 40px;
    font-weight: 200;
    font-family: "inter";
}
h3,.h3{
    font-size: 1.5rem;
}
.h3 {
    font-size     : 18px;
    font-weight   : 500;
    font-family   : "inter";
    color         : rgba(127, 142, 171, 1);
    text-transform: uppercase;
}
.underline {
    display      : inline-flex;
    align-items  : center;
    border-bottom: 1px solid currentColor;
}
h5 {
    text-transform: uppercase;
    font-weight   : bold;
}
.data-item__content_short,
li,
p {
    font-weight  : 300;
    overflow-wrap: anywhere;
    word-break   : break-word;
    line-height  : 1.3;
}
strong {
    font-weight: 700;
}
/* p:not(:has(strong)), li:not(:has(strong)){
  font-weight: 300;
} */
.after-title,
.after-title-left {
    position     : relative;
    margin-bottom: 1rem;
    margin-top   : 2rem;
}
.after-title:first-of-type::after {
    content         : "";
    position        : absolute;
    top             : -20px;
    left            : 50%;
    transform       : translateX(-50%);
    width           : 150px;
    height          : 6px;
    border-radius   : 17px;
    background-color: var(--after-color);
}
.after-title-left:first-of-type::after {
    content         : "";
    position        : absolute;
    top             : -20px;
    left            : 0;
    width           : 150px;
    height          : 6px;
    border-radius   : 17px;
    background-color: var(--after-color);
}
.data-item__description h2 {
    position  : relative;
    margin-top: 3rem;
}
.data-item__description h2:after {
    content         : "";
    position        : absolute;
    top             : -14px;
    left            : 0;
    width           : 150px;
    height          : 6px;
    border-radius   : 17px;
    background-color: var(--after-color);
}
#myTab {
    display: flex;
}
#myTab .nav-item {
    flex: 1 1 0;
}
#myTab .nav-link {
    width     : 100%;
    text-align: center;
    font-weight: 500;
}
.after-bottom {
    position: relative;
}
.after-bottom:after {
    content         : "";
    position        : absolute;
    bottom          : 0;
    left            : 50%;
    transform       : translateX(-50%);
    width           : 120px;
    height          : 6px;
    border-radius   : 17px;
    background-color: var(--after-color);
}
/* .nav-tabs .nav-item {
    border: 1px solid #dee2e6;
} */
.tab-container {
    border: 1px solid var(--gris-1);
}
.tab-container .nav-tabs {
    border-bottom: 1px solid var(--gris-1);
}
.tab-container .nav-tabs .nav-link {
    border-top-left-radius : 0;
    border-top-right-radius: 0;
    color                  : var(--dark);
    height                 : 100%;
}
.tab-container .nav-tabs .nav-link.active {
    /* border-color: transparent var(--gris-1) transparent; */
    color      : var(--dark);
    font-weight: bold;
}
.card-top {
    transform       : translateY(-20%);
    background-color: #fff;
    padding         : 1.5rem;
    border          : 1px solid var(--dark);
}
.card-split {
    margin-left     : -15rem;
    margin-top      : 5rem;
    background-color: #fff;
    padding         : 4rem 5rem 3rem;
    border          : 1px solid var(--dark);
}
.single-text {
    font-size  : 43px;
    font-style : italic;
    font-weight: 300;
}
.tab-sub-title {
    font-size: 14px;
}
.realisations .data-item__title {
    font-size  : 30px;
    font-weight: 700;
    line-height: 1.2;
}
.card img {
    width: 100%;
}

.card .bg-light:hover {
    background-color: var(--bg-light-alt) !important;
}
.services-widgets .card.bg-light:hover {
    background-color: var(--bg-light-alt) !important;
}
/*-----------------------blogs-index --------------------------*/
.blogs-index .filters {
    position: sticky;
    top     : 120px;
}
.blogs-index img.radius {
    border-radius: var(--card-radius) var(--card-radius) 0 0;
}
.blogs-index .card-body {
    border-radius   : var(--card-radius) var(--card-radius);
    background-color: #fff;
}
.blogs-index .data-item__share {
    position        : absolute;
    right           : 10px;
    top             : 10px;
    width           : 38px;
    height          : 38px;
    display         : flex;
    align-items     : center;
    justify-content : center;
    border-radius   : 50%;
    background-color: var(--bg-light);
}
.blogs-detail .detail-header .data-item__title {
    font-weight: 700;
    font-size  : 35px;
}
.blogs-widgets .list-mini-img img {
    border-radius: var(--card-radius) 0 0 var(--card-radius);
}
.blogs-widgets .list-mini-content {
    background-color: var(--bg-light);
    border-radius   : 0 var(--card-radius) var(--card-radius) 0;
}
.blogs-widgets .data-item__title {
    font-weight: 700;
    font-size  : 16px;
}
/*-----------------------faqs--------------------------*/
.accordion-button {
    background: transparent;
    border    : none;
    box-shadow: none;
    /* pour laisser la place du + */
    position  : relative;
}
.accordion-item:last-of-type {
    border-bottom-right-radius: 0;
    border-bottom-left-radius : 0;
}
.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
    border-bottom-right-radius: 0;
    border-bottom-left-radius : 0;
}
.accordion-item .accordion-title {
    font-size  : 20px;
    font-weight: 700;
    color      : var(--dark);
}
.accordion-body {
    padding: 1rem;
}
.accordion-button:focus {
    box-shadow: none;
}
.accordion-button:not(.collapsed) {
    background-color: var(--bg-light);
}
.accordion-button:not(.collapsed) .accordion-title {
    color: var(--dark);
}
/* .accordion-button::after {
    content: none;
} */
/* Le + par dÃ©faut */
.accordion-button .acc-icon {
    position       : absolute;
    left           : 10px;
    top            : 50%;
    transform      : translateY(-50%);
    font-size      : 24px;
    content        : "+";
    border         : 1px solid black;
    width          : 28px;
    height         : 28px;
    display        : flex;
    align-items    : center;
    justify-content: center;
}
.accordion-title {
    padding-right: 1rem;
}
.accordion-button .acc-icon:before {
    content: "+";
}
.accordion-button:not(.collapsed) .acc-icon:before {
    content: "-";
}
.accordion-item {
    border       : none;
    margin-bottom: 1rem;
}
.accordion-button {
    border: 1px solid black;
}
.accordion-item:first-of-type > .accordion-header .accordion-button {
    border-top-left-radius : 0;
    border-top-right-radius: 0;
}
/*-----------------------lexiques--------------------------*/
/* .lexiques .row {
    margin-right: 0;
} */
.lexiques .data-item__content_short {
    font-weight: 300;
    font-size  : 14px;
    line-height: 17px;
}
@media (max-width: 991px) {
    /* .main {
        padding: 0;
    } */
    .card-top {
        border: none;
    }
}
@media (max-width: 768px) {
     h3,.h3{
    font-size: 1rem;
}
    .main{
        padding:0;
    }
    .side {
        display: none;
    }
    .side-fixed {
        display: none;
    }
    .after-bottom:after {
        bottom: 0;
    }
    .card-split {
        margin-left: 0;
        margin-top : 1rem;
        padding:1rem;
    }
    .card-top {
        transform: translateY(-7%);
    }
    .h2-title {
        font-size: 40px;
    }
    .single-text {
        font-size: 30px;
    }
    #myTab {
        display: block;
    }
    .lexiques-widgets svg {
        /* width      : 80px; */
        margin     : 0 auto;
        display    : block;
        padding-top: 1.5rem;
    }
}
/*-----------------------realisations--------------------------*/
.realisations .page-title {
    font-size  : 60px;
    font-weight: bold;
}
@media (max-width: 575px) {


    .accordion-item .accordion-title {
        font-size: 18px;
    }
    #main-menu .menu-right {
        width: 160px;
    }
    /* #main-menu .logo > img {
    height: 35px;
  } */
    #burger {
        right: 4px;
    }
    .features-5-wrap-xxl .feature {
        flex: 0 0 100%;
    }
    #main-menu {
        padding: 10px 0 10px 20px;
    }
    .h2 {
        font-size: 35px;
    }
}
.parent {
    display      : grid;
    aspect-ratio : 1/1;
    border-radius: 20px;
    /* overflow: hidden; */
    position     : relative;
}
.div1 {
    grid-area: 2 / 1 / 3 / 3;
}
.div2 {
    grid-area: 1 / 1 / 2 / 2;
}
.div3 {
    grid-area: 1 / 2 / 2 / 3;
}
.div4 {
    grid-area: 1 / 3 / 2 / 4;
}
.div5 {
    grid-area: 2 / 3 / 3 / 4;
}
.div1,
.div2,
.div3,
.div4,
.div5 {
    position    : relative;
    overflow    : hidden;
    aspect-ratio: 1/1;
}
.divimag2 img {
    border-radius: 20px 0 0 0;
}
.divimg {
    width   : 100%;
    height  : 100%;
    position: relative;
}
.divimg img {
    width     : 100%;
    height    : 100%;
    object-fit: cover;
    display   : block;
}
.round-to-div0 {
    border-radius: 0 20px 0 0;
    overflow     : hidden;
}
.round-to-div1 {
    border-radius: 20px 0 0 0;
    overflow     : hidden;
}
.round-to-div2 {
    border-radius: 0 0 0 20px;
    overflow     : hidden;
}
.img-logo a {
    width  : 126px;
    display: block;
    border : 1px solid var(--dark);
    padding: 10px;
}
.modules-detail h2 {
    margin-bottom: 1rem;
}
.modules-detail h2.accordion-header {
    margin-bottom: 0;
}
.modules-detail h3 {
    margin: 1rem 0 0.5rem;
}
@media(max-width:1199px) {
    .realisations .data-item__title {
        font-size: 25px;
    }
    /* .card-body {
        padding: 1rem 0.5rem;
    } */
}
@media(max-width:991px) {
    .card-top {
        transform : unset;
        padding   : 1rem;
        margin-top: 1rem;
    }
    .page-header {
        height    : auto;
        min-height: 230px;
    }
   .lexiques-widgets .data-item__content_short{display:none;}

    :root{
            --card-title-size: 16px;
    }
}