
#content{
    margin-left:50px;
}


.menu-level-0 > li > a {
    position: relative;
}
.menu-level-0 > li > a:after {
    content   : "";
    width     : 1px;
    height    : 35px;
    background: var(--dark);
    position  : absolute;
    top       : 50%;
    right     : 0;
    transform : translateY(-50%);
}
.menu-level-0 > li:last-child > a:after {
    content: none;
}
h3 {
    font-weight: 700;
}
#main-menu:not(.menu-breakpoint).megamenu #slide-menu > ul > li > ul {
    border: 1px solid black;
}
.bloc-border {
    border-top : 1px solid black;
    padding-top: 2rem;
}
.list .number {
    font-size      : 60px;
    width          : 90px;
    height         : 90px;
    border         : 1px solid black;
    font-weight    : 800;
    display        : flex;
    align-items    : center;
    justify-content: center;
}
.bloc-number {
    gap: 0 30px;
}
.list .row {
    --bs-gutter-x: 30px;
}
.bloc-number h3 {
    font-size    : 22px;
    margin-bottom: 1rem;
}
.number p {
    margin-bottom: 0;
    color        : var(--dark);
}
.menu-right {
    display    : flex;
    align-items: stretch;
    /* étire tous les enfants à la hauteur totale */
}
.menu-right #icon-menu li,
.menu-right #icon-menu li a {
    display        : flex;
    align-items    : center;
    /* centre le contenu des boutons */
    height         : 40px;
    width          : 40px;
    justify-content: center;
}
.menu-right > a {
    display    : flex;
    align-items: center;
    height     : 40px;
}
.menu-right #icon-menu {
    gap: 10px;
}
p {
    color      : var(--text-muted);
    line-height: 1.2;
}
/* Colonne “fantôme” qui occupe l'espace pour le main */
.side {
    width       : 50px;
    flex-shrink : 0;
    /* PAS de position fixed ici ! */
    border-right: 1px solid black;
    /* optionnel, juste pour garder la place */
}
.menu-breakpoint .menu-level-0 > li > a:after {
    content: none;
}
/* La vraie colonne visuelle fixe */
.side-fixed {
    position    : fixed;
    top         : 0;
    left        : 0;
    width       : 50px;
    border-right: 1px solid black;
    height      : 100vh;
	z-index: 100;
    background-color: #fff;
}
/* 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;
}
.header h1 {
    font-size    : 60px;
    font-weight  : 900;
    margin-bottom: 1rem;
    line-height  : 1.1;
}
.accueil .header h1 {
    font-size: 75px;
}
.page-header h1 {
    font-size    : 60px;
    font-weight  : 900;
    margin-bottom: 1rem;
    line-height  : 1.1;
}
.head p {
    font-weight: 400;
    color      : var(--dark);
}
h2 {
    font-size    : 45px;
    font-weight  : 200;
    margin-bottom: 1.2rem;
    line-height  : 1.2;
}
.accueil h2 {
    font-size    : 60px;
    margin-bottom: 1.2rem;
}
h2 strong {
    font-weight: 800;
}
.feature-content h3 {
    font-size: 22px;
}
.split-1-3.right .split-container {
    padding-left   : var(--container-offset);
    /* border-top     : 1px solid black; */
    display        : flex;
    justify-content: center;
    flex-direction : column;
    position       : relative;
}
.split-1-3.left:before {
    content   : "";
    position  : absolute;
    background: black;
    width     : var(--container-out-margin);
    height    : 1px;
    left      : 0;
    top       : 0;
    z-index   : 2;
}
.split-1-3.right:before {
    content   : "";
    position  : absolute;
    background: black;
    width     : var(--container-out-margin);
    height    : 1px;
    right     : 0;
    top       : 0;
    z-index   : 2;
}
.split-1-3.left .split-container {
    padding-right  : var(--container-offset);
    /* border-top     : 1px solid black; */
    display        : flex;
    justify-content: center;
    flex-direction : column;
    position       : relative;
}
.split-1-3.right .split-container:before {
    content   : "";
    position  : absolute;
    background: black;
    width     : calc(var(--container-width) * 0.66666666666666 - var(--container-offset));
    height    : 1px;
    right     : 0;
    top       : 0;
    z-index   : 2;
}
.split-1-3.left .split-container:before {
    content   : "";
    position  : absolute;
    background: black;
    width     : calc(var(--container-width) * 0.66666666666666 - var(--container-offset));
    height    : 1px;
    left      : 0;
    top       : 0;
    z-index   : 2;
}
.split,
.split-1-3.left,
.split-1-3.right {
    position: relative;
}
.centered {
    display        : flex;
    justify-content: center;
    flex-direction : column;
}
.split-1-3.right:after {
    content   : "";
    position  : absolute;
    background: var(--bg-light);
    width     : var(--container-offset);
    height    : 100%;
    right     : 0;
    top       : 0;
}
.split-1-3.left:after {
    content   : "";
    position  : absolute;
    background: var(--bg-light);
    width     : var(--container-offset);
    height    : 100%;
    left      : 0;
    top       : 0;
    border-top: 1px solid black;
}
.deco .split:after {
    content   : "";
    position  : absolute;
    background: var(--bg-light);
    width     : var(--container-offset);
    height    : 100%;
    right     : 0;
    top       : 0;
}
.deco .split-reverse:after {
    content   : "";
    position  : absolute;
    background: var(--bg-light);
    width     : var(--container-offset);
    height    : 100%;
    left      : 0;
    top       : 0;
}
.accueil .header h2,
.header h2 {
    font-size  : 25px;
    font-weight: 400;
    line-height: 1.2;
}
.fabrication {
    position: absolute;
    right   : 20px;
    bottom  : 10px;
}
.bloc-border {
    border-top: 1px solid black;
}
.realisations-index .card {
    padding: 1rem;
    border : var(--card-border) solid black;
}
.card-title {
    font-weight    : 700;
    font-size      : 21px;
    align-items    : center;
    text-align     : center;
    justify-content: center;
    line-height    : 1.2;
    margin-bottom  : 1rem;
}
.card .bloc-img {
    overflow: hidden;
}
.overflow {
    overflow-x: hidden;
}
.card .bloc-img .overlayfade {
    position        : absolute;
    top             : 0;
    bottom          : 0;
    left            : 0;
    right           : 0;
    height          : 100%;
    width           : 100%;
    opacity         : 0;
    transition      : 0.5s ease;
    background-color: rgb(0 ,0, 0 ,0.47);
    color           : white;
    display         : flex;
    align-items     : center;
    justify-content : center;
    text-transform  : uppercase;
    font-weight     : 300;
    font-size       : 20px;
    font-family     : var(--title-font);
}
.card:hover .bloc-img .overlayfade {
    opacity: 1;
}
.card:hover .bloc-img .overlayfade .button {
    padding       : 5px 15px;
    border-radius : 30px;
    background    : transparent;
    color         : white;
    border        : 1px solid white;
    text-transform: uppercase;
}
.modules-list-item .bloc-img .overlayfade {
    position        : absolute;
    top             : 0;
    bottom          : 0;
    left            : 0;
    right           : 0;
    height          : 100%;
    width           : 100%;
    opacity         : 0;
    transition      : 0.5s ease;
    background-color: rgb(0 ,0, 0 ,0.47);
    color           : white;
    display         : flex;
    align-items     : center;
    justify-content : center;
    text-transform  : uppercase;
    font-weight     : 300;
    font-size       : 20px;
    font-family     : var(--title-font);
}
.modules-list-item a:hover .bloc-img .overlayfade {
    opacity: 1;
}
.modules-list-item a:hover .data-item__title {
    color: var(--dark);
}
.modules-list-item a:hover .bloc-img .overlayfade .button {
    padding       : 5px 15px;
    border-radius : 30px;
    background    : transparent;
    color         : white;
    border        : 1px solid white;
    text-transform: uppercase;
}
#shops-grid-list .card:hover .bloc-img .overlayfade .button {
    font-size: 16px;
    padding  : 2px 14px;
}
.data-item__content_short {
    line-height: 1.2;
}
.card .bloc-img img {
    -webkit-transition: 0.8s ease;
    transition        : 0.8s ease;
}
.card:hover .bloc-img img {
    -webkit-transform: scale(1.08);
    transform        : scale(1.08);
}
#shops-grid-list .card:hover .bloc-img img {
    -webkit-transform: scale(0.9);
    transform        : scale(0.9);
}
.realisations-widgets .widget-header {
    border-top : 1px solid black;
    padding-top: 1rem;
}
.temoignages-widgets .title {
    font-weight: 500;
    color      : var(--dark);
}
.temoignages-widgets .data-item__content_short {
    color      : var(--text-muted);
    font-style : italic;
    font-weight: 300;
}
.note-5 {
    font-size  : 39px;
    font-weight: 700;
}
.google {
    font-size  : 25px;
    font-weight: 700;
}
.google p,
.note-5 p {
    color: var(--dark);
}
.google .number {
    font-weight: 400;
}
.avis-google {
    right   : 20px;
    position: absolute;
    top     : 10px;
}
.temoignages-widgets .card {
    border         : 1px solid black;
    display        : flex;
    flex-direction : column;
    justify-content: center;
    align-items    : center;
}
.widget-header p {
    color: var(--dark);
}
.px-module {
    padding: 0 6rem;
}
#content ul.category-list {
    padding-left: 0;
}
.blogs-index .modules-list-item {
    border-top: 1px solid black;
}
.blogs-index .modules-list-content {
    align-items: flex-start;
}
.blogs-index .data-item__category {
    font-size: 14px;
}
.blogs-index .data-item__content_short {
    color      : var(--text-muted);
    font-weight: 300;
}
.modules-list-item a .data-item__title {
    font-size  : 30px;
    font-weight: 800;
    line-height: 1.2;
}
.container-grid {
    display              : grid;
    grid-template-columns: 1fr 1fr 0.5fr;
    grid-template-rows   : 1fr 1fr 1fr;
    gap                  : 0 0;
    grid-auto-flow       : row;
    grid-template-areas  : "zone-1 zone-2 bg" "zone-1 zone-3 bg" "zone-1 zone-4 bg";
}
.bg,
.empty,
.zone-1,
.zone-2,
.zone-3,
.zone-4 {
    border: 1px solid black;
}
.empty,
.zone-1 {
    border-bottom: none;
}
.zone-2 {
    border-left: none;
    border-bottom: none;
}
.zone-3 {
  border-left: none;
  border-bottom: none;
}
.zone-4 {
   border-left: none;

}
.empty {
    display        : flex;
    align-items    : center;
    justify-content: flex-end;
    padding        : 0 2rem;
    border-left    : none;
}
.zone-1 {
    grid-area  : zone-1;
    border-left: none;
}
.zone-1 .card {
    position: relative;
    height  : 100%;
}
.zone-1 .card a.data-item__images {
    height: 100%;
}
.zone-1 .card-body {
    position       : absolute;
    top            : 0;
    left           : 0;
    height         : 100%;
    width          : 100%;
    background     : rgb(33,37, 41,0.87);
    color          : #fff !important;
    display        : flex;
    flex-direction : column-reverse;
    justify-content: center;
    align-items    : center;
    text-align     : center;
    padding        : 2rem;
    opacity        : 0;
    transition     : 0.5s ease;
    gap            : 20px 0;
}
.bg {
    background : var(--bg-light);
    border-left: none;
}
.zone-1:hover .card-body {
    opacity: 1;
}
.zone-1 .data-item__title {
    font-size  : 35px;
    font-weight: 800;
    color      : white;
    line-height: 1.2;
}
.zone-2 .data-item__title,
.zone-3 .data-item__title,
.zone-4 .data-item__title {
    font-size  : 18px;
    font-weight: 700;
    color      : var(--dark);
    line-height: 1.2;
}
.zone-1 .data-item__content_short {
    font-size : 22px;
    margin-top: 1.5rem;
}
.zone-2 {
    grid-area: zone-2;
}
.zone-2 .card,
.zone-3 .card,
.zone-4 .card {
    flex-direction: row;
}
.zone-1 .btn {
    border    : 1px solid white;
    color     : white;
    background: none;
}
.zone-2 .btn,
.zone-3 .btn,
.zone-4 .btn {
    border         : none;
    text-decoration: underline;
    color          : var(--color-1);
    text-transform : unset;
    background     : none;
    padding        : 10px 0 0;
}
.zone-2 .data-item__images,
.zone-3 .data-item__images,
.zone-4 .data-item__images {
    flex    : 0 0 302px;
    position: relative;
}
.zone-2 .overlay,
.zone-3 .overlay,
.zone-4 .overlay {
    position  : absolute;
    top       : 0;
    bottom    : 0;
    left      : 0;
    right     : 0;
    height    : 100%;
    width     : 100%;
    opacity   : 0;
    transition: 0.5s ease;
    background: rgb(33,37, 41,0.52);
}
.zone-2:hover .overlay,
.zone-3:hover .overlay,
.zone-4:hover .overlay {
    opacity: 1;
}
.zone-3 {
    grid-area: zone-3;
}
.zone-4 {
    grid-area: zone-4;
}
.bg {
    grid-area: bg;
}
.empty {
    grid-area: empty;
}
.equipes-widgets .card {
    border : 1px solid black;
    padding: 1rem;
}
.equipes-widgets .row > div .card {
    border-right : none;
    border-bottom: none;
}
.equipes-widgets .row > div:nth-child(4n) .card {
    border-right: 1px solid black;
}
.equipes-widgets .row > div:nth-last-child(-n + 4) {
    border-bottom: 1px solid black;
}
.partenaires-widgets .bloc-img {
    height: 75px;
}
.border-top {
    border-top: 1px solid black !important;
}
.partenaires-widgets .widget-header h2 {
    font-size  : 20px;
    font-weight: 800;
}
.partner-list {
    gap: 15px;
}
.modules-detail h1 {
    font-size    : 60px;
    font-weight  : 800;
    line-height  : 1.1;
    margin-bottom: 1rem;
}
.modules-detail .split .data-item__content_short {
    font-size  : 25px;
    font-weight: 400;
}
.modules-detail .data-item__description h3 {
    margin-bottom: 1rem;
}
.modules-detail .data-item__description p {
    color: var(--dark);
}
.form-select {
    border       : 1px solid var(--dark);
    border-radius: 0;
}
.form-select:focus {
    border-color: #212529;
    outline     : 0;
    box-shadow  : 0 0 0 0.2rem rgb(33 37 41 / 8%);
}
.list-location {
    gap: 0 25px;
}
.data-item__share .dropdown span {
    background: black;
    color     : white;
    padding   : 3px 12px;
}
.data-item__share .dropdown .dropdown-menu {
    border-radius: 0;
    border       : 1px solid black;
}
.data-item__share .dropdown .dropdown-menu a:not(.btn):hover {
    color: var(--dark);
}
table.table-cabine td:nth-child(1),
table.table-cabine th:nth-child(1) {
    width: 12%;
}
table.table-cabine td:nth-child(2),
table.table-cabine th:nth-child(2) {
    width: 8%;
}
table.table-cabine td:nth-child(3),
table.table-cabine th:nth-child(3) {
    width: 10%;
}
table.table-cabine td:nth-child(4),
table.table-cabine th:nth-child(4) {
    width: 22%;
}
table.table-cabine td:nth-child(5),
table.table-cabine th:nth-child(5) {
    width: 22%;
}
table.table-cabine td:nth-child(6),
table.table-cabine th:nth-child(6) {
    width: 22%;
}
table.table-cabine .small {
    font-size  : 14px;
    font-weight: 300;
}
table td {
    line-height: 1.4;
}
table > :not(caption) > * > * {
    border-bottom: 1px solid black;
}
p.big {
    font-size: 18px;
}
p.big i {
    font-size: 22px;
}
form span.text-danger {
    display: none;
}
div[data-name="agree"] .form-label {
    display: none;
}
.margin-top {
    margin-top: -10rem;
}
.liste-partner {
    gap: 10px 15px;
}
.accordion-body {
    line-height: 1.1;
}
@media(max-width:1699px) {
    :root {
        --container-offset: 75px;
    }
    .split-1-3.right .split-container {
        padding-right: 105px;
    }
    .split-1-3.left .split-container {
        padding-left: 105px;
    }
    .accueil h2 {
        font-size: 55px;
    }
}
@media(max-width:1599px) {
    .deco .split:after,
    .split-1-3.left:after,
    .split-1-3.right:after {
        width: 40px;
    }
    .accueil h2,
    h2 {
        font-size: 50px;
    }
    .deco .split-container {
        padding-right: 3.5rem;
    }
    .deco .split-reverse .split-container {
        padding-left : 3.5rem;
        padding-right: 2rem;
    }
    .zone-2 .data-item__images,
    .zone-3 .data-item__images,
    .zone-4 .data-item__images{
        flex: 0 0 200px;
    }
}
@media(max-width:1499px) {
    .px-module {
        padding: 0 2rem;
    }
    .accueil .header h1,
    .header h1,
    .modules-detail h1 {
        font-size: 50px;
    }
    .margin-top {
        margin-top: -7rem;
    }
}
@media(max-width:1399px) {
    .accueil h2,
    h2 {
        font-size: 40px;
    }
    .accueil .header h2,
    .header h2 {
        font-size: 22px;
    }
    .split-1-3 .split-container {
        margin-left  : 2rem;
        padding-right: 8rem;
    }
    .list .number {
        font-size: 30px;
        width    : 55px;
        height   : 55px;
    }
}
@media(max-width:1299px) {
    .fabrication {
        right: 10px;
    }
    .deco .split:after,
    .split-1-3.right:after {
        width: 40px;
    }
    .split-1-3.right .split-container {
        padding-right: 105px;
    }
    .split-1-3.left .split-container {
        padding-left: 105px;
    }
    :root {
        --container-offset: 40px;
    }
    .split-1-3 .split-container {
        margin-left: 0;
    }
}
@media(max-width:1199px) {
    .header h1,
    .modules-detail h1 {
        font-size: 40px;
    }
    .modules-detail .split .data-item__content_short {
        font-size: 20px;
    }
    .accueil .header h2,
    .header h2 {
        font-size: 20px;
    }
    .margin-top {
        margin-top: -4rem;
    }
    .page-header h1 {
        font-size: 45px;
    }
    .modules-list-item a .data-item__title {
        font-size: 25px;
    }
    .container-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows   : 1fr 1fr auto;
    }
    .empty {
        padding: 2rem;
    }
    .bg {
        display: none;
    }
}
@media(max-width:991px) {
    .split-1-3.right .split-container:before {
        left : 0;
        right: unset;
    }
    table.table-cabine {
        width: 1000px;
    }
    .page-header {
        min-height: auto;
    }
    .margin-top {
        margin-top: 0;
    }
    .container-grid {
        grid-template-columns: 1fr;
        grid-template-rows   : auto auto auto;
        grid-template-areas  : "zone-1" "zone-2" "zone-3" "zone-4";
    }
    .zone-1 .card {
        flex-direction: row;
    }
    .zone-1 {
        border-bottom: none;
    }
    .zone-1 .card-body {
        position      : relative;
        background    : none;
        color         : var(--dark);
        opacity       : 1;
        flex-direction: column;
        gap           : 0;
        align-items   : flex-start;
        text-align    : left;
        padding       : 1rem;
    }
    .zone-1 .btn {
        border         : none;
        text-decoration: underline;
        color          : var(--color-1);
        text-transform : unset;
        background     : none;
        padding        : 10px 0 0;
    }
    .zone-1 .data-item__title {
        font-size  : 18px;
        font-weight: 700;
        color      : var(--dark);
        line-height: 1.2;
    }
    .zone-1 .data-item__content_short {
        font-size  : 16px;
        color      : var(--dark);
        line-height: 1.2;
        margin-top : 0;
    }
    .zone-1 .data-item__images {
        position: relative;
    }
    .zone-1 .data-item__images {
        flex: 0 0 200px;
    }
    .zone-1 .overlay {
        position  : absolute;
        top       : 0;
        bottom    : 0;
        left      : 0;
        right     : 0;
        height    : 100%;
        width     : 100%;
        opacity   : 0;
        transition: 0.5s ease;
        background: rgb(33, 37, 41, 0.52);
    }
    .zone-1:hover .overlay {
        opacity: 1;
    }
    .split-1-3 .split-container {
        margin-left: 0;
        padding    : 0 1.5rem;
    }
    .deco .split-container {
        padding-right: 0;
    }
    .deco .split-reverse .split-container {
        padding-left: 65px;
    }
    .split-1-3.left .split-container {
        padding-left: 85px;
    }
    .temoignages-widgets .widget-header {
        flex-direction: column-reverse;
        display       : flex;
        align-items   : center;
    }
    .accueil .realisations-widgets .card-body {
        padding: 1rem 0.5rem;
    }
    .accueil .realisations-widgets .card-title {
        font-size  : 17px;
        line-height: 1.1;
    }
    .avis-google {
        position: relative;
    }
    .note-5 {
        font-size: 25px;
    }
    .equipes-widgets .row > div:nth-child(3n) .card {
        border-right: 1px solid black;
    }
    .equipes-widgets .row > div:nth-child(4) .card {
        border-right: none;
    }
    .equipes-widgets .row > div:nth-last-child(-n + 4) {
        border-bottom: unset;
    }
    .equipes-widgets .row > div:nth-last-child(-n + 3) {
        border-bottom: 1px solid black;
    }
    .split-1-3.left:before {
        content: none;
    }
    .split-1-3.right .split-container {
        padding-right: 80px;
    }
    .empty,
    .zone-2 {
        border-left: 1px solid black;
    }
}
@media(max-width:767px) {

    
#content{
    margin-left:0px;
}
    .side,
    .side-fixed {
        display: none;
    }
    .deco .split:after,
    .split-1-3.right:after {
        content: none;
    }
    .split-1-3.left .split-container:before,
    .split-1-3.left:after,
    .split-1-3.left:before,
    .split-1-3.right:before {
        content: none;
    }
    .bloc-number {
        gap: 20px;
    }
    .bloc-number h3 {
        text-align: center;
    }
    .equipes-widgets .row > div:nth-child(2n) .card {
        border-right: 1px solid black;
    }
    .equipes-widgets .row > div:nth-last-child(-n + 3) {
        border-bottom: unset;
    }
    .equipes-widgets .row > div:nth-last-child(-n + 2) {
        border-bottom: 1px solid black;
    }
    .equipes-widgets .row > div:nth-child(3) .card {
        border-right: none;
    }
    .equipes-widgets .row > div:nth-child(6) .card {
        border-bottom: none;
    }
    .footer {
        margin-left: 0;
    }
    .split-1-3.right .split-container {
        padding-right: 40px;
    }
    .split-1-3.left .split-container {
        padding-left: 40px;
    }
    .zone-1,
    .zone-3,
    .zone-4 {
        border-left: 1px solid black;
    }
    .accueil h2,
    h2 {
        font-size: 35px;
    }
}
@media(max-width:575px) {
    .accueil h2,
    h2 {
        font-size: 28px;
    }
    .header h1 {
        font-size: 40px;
    }
    .zone-1 .card,
    .zone-2 .card,
    .zone-3 .card,
    .zone-4 .card {
        flex-direction: column;
    }
    .zone-2 {
        border-left: 1px solid black;
    }
    .page-header h1 {
        font-size: 32px;
    }
    .partner-list {
        gap: 0;
    }
    .partenaires-widgets .bloc-img {
        height: 55px;
    }
    .equipes-widgets .row > div:nth-child(2n) .card {
        border-right: unset;
    }
    .equipes-widgets .row > div {
        border-right : 1px solid black;
        border-bottom: none;
    }
    .equipes-widgets .row > div:nth-last-child(-n + 2) {
        border-bottom: unset;
    }
    .equipes-widgets .row > div:last-child {
        border-bottom: 1px solid black;
    }
    .equipes-widgets .card img {
        width: 100%;
    }
    .px-module {
        padding: 0 1rem;
    }
    #main-menu .logo > img {
        height: 50px;
    }
    .page-header h2.page-sub-title {
        font-size: 18px;
    }
    .accueil .header h1,
    .header h1,
    .modules-detail h1 {
        font-size: 32px;
    }
    .modules-detail .split .data-item__content_short {
        font-size: 17px;
    }
    .card:hover .bloc-img .overlayfade .button {
        font-size: 16px;
    }
    .feature .feature-img i {
        font-size : 35px;
        margin-top: 7px;
    }
    .features-stacked-md .feature-img {
        padding-right: 1rem;
    }
    :root {
        --container-offset: 25px;
    }
    .split-1-3.right .split-container {
        padding-right: 25px;
    }
    .deco .split-reverse .split-container,
    .split-1-3.left .split-container {
        padding-left: 25px;
    }
    .empty {
        justify-content: center;
    }
    swiper-container::part(button-next) {
        right: -23px;
    }
    swiper-container::part(button-prev) {
        left: -23px;
    }
    .accordion-item .accordion-title {
        font-size: 18px;
    }
}
#form_quantity,
.product-item__quantity .input-group-text {
    border       : 1px solid var(--dark) !important;
    border-radius: 0;
}
#form_quantity {
    color     : var(--dark)!important;
    text-align: center;
}
.product-item__quantity i {
    font-weight: 400;
}
.centered {
    display        : flex;
    justify-content: center;
    flex-direction : column;
}
.modules-shops .split-1-3.left:before {
    width: calc(100% - 3rem);
}
.right-sec {
    position: relative;
}
.right-sec:after {
    content   : "";
    position  : absolute;
    background: var(--bg-light);
    width     : 101px;
    height    : 100%;
    right     : 0;
    top       : 0;
}
@media(max-width:1499px) {
    .features-5-wrap-xxl .feature {
        flex: 0 0 25%;
    }
}
@media(max-width:1199px) {
    .features-5-wrap-xxl .feature {
        flex: 0 0 33.33333%;
    }
}
@media(max-width:991px) {
    .modules-shops .split-1-3.left .split-container:before {
        content: none;
    }
    .modules-shops .split-1-3.left:after {
        border-top: none;
    }
    .split-1-3.left:after {
        content: none;
    }
    .modules-shops .split-1-3.left {
        border-top: 1px solid black;
    }
    .right-sec:after {
        width: 40px;
    }
}
.data-item__title {
    font-weight: 800;
    font-size  : 22px;
}
.shops-index .card {
    border: 3px solid var(--bg-light);
}
@media(max-width:767px) {
    .table-shop {
        width: 800px;
    }
    .right-sec:after {
        content: none;
    }
    .features-5-wrap-xxl .feature {
        flex: 0 0 50%;
    }
    .data-item__title {
        font-size: 20px;
    }
}
@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;
    }
}
.product-item__content_short {
    line-height: 1.2;
}
.category-header p {
    font-size: 25px;
    color    : var(--dark);
}
.category-header h1 {
    font-weight  : 400;
    margin-bottom: 1rem;
}
.category-header h1 strong {
    font-weight: 800;
}
.modules-shops .container-fluid {
    padding: 0 8rem;
}
.format .attribut {
    font-size: 12px;
}
.format .data-item__title {
    font-size : 16px;
    text-align: center;
}
#main-menu:not(.menu-breakpoint).megamenu #slide-menu > ul > li.boutique > ul {
    column-count: 3;
}
#main-menu:not(.menu-breakpoint).megamenu #slide-menu > ul > li.boutique > ul li {
    width     : 250px;
    text-align: center;
    padding   : 1rem;
    transition: 0.2s ease;
}
#main-menu:not(.menu-breakpoint).megamenu #slide-menu > ul > li.boutique > ul li:hover {
    background: var(--bg-light);
}
#main-menu:not(.menu-breakpoint).megamenu #slide-menu > ul > li.boutique > ul li .menu-title {
    text-transform: uppercase;
}
#main-menu.menu-breakpoint #slide-menu.menu-open ul li.boutique li.link-image {
    text-align    : center;
    overflow      : unset;
    margin        : 0;
    text-transform: uppercase;
}
#main-menu.menu-breakpoint #slide-menu.menu-open ul li.boutique li.link-image a {
    padding: 10px 0 !important;
}
#main-menu.menu-breakpoint #slide-menu.menu-open ul li.boutique li.link-image img {
    width: 150px;
}
.accordion-button {
    background  : transparent;
    border      : none;
    box-shadow  : none;
    padding-left: 40px;
    /* pour laisser la place du + */
    position    : relative;
}
.accordion-item:last-of-type {
    border-bottom-right-radius: 0;
    border-bottom-left-radius : 0;
}
.accordion-item .accordion-title {
    font-size  : 20px;
    font-weight: 800;
    color      : var(--dark);
}
.accordion-body {
    padding: 0 1rem 1rem;
}
.accordion-button:focus {
    box-shadow: none;
}
.accordion-button:not(.collapsed) {
    background-color: transparent;
}
.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-left: 1rem;
}
/* FORCER l’affichage du + */
.accordion-button .acc-icon:before {
    content: "+";
}
/* Quand l’accordion est ouvert → devient – */
.accordion-button:not(.collapsed) .acc-icon:before {
    content: "–";
}
/* Lignes de séparation élégantes comme ton screenshot */
.accordion-item {
    border       : none;
    border-bottom: 1px solid black;
}
@media(max-width:1199px) {
    .category-header p {
        font-size: 20px;
    }
}
@media(max-width:991px) {
    .page-header {
        height: 250px;
    }
    .modules-shops .container-fluid {
        padding: 0 2rem;
    }
}
@media(max-width:767px) {
    .empty {
        border-bottom: 1px solid black;
    }
}
@media(max-width:575px) {
    .modules-shops .container-fluid {
        padding: 0 1rem;
    }
    .accordion-item .accordion-title {
        font-size: 18px;
    }
    .accordion-button .acc-icon {
        font-size: 19px;
        width    : 24px;
        height   : 24px;
    }
    swiper-container::part(button-next),
    swiper-container::part(button-prev) {
        width: 14px;
    }
}
.offcanvas-title {
    text-transform: uppercase;
}
.quantityselect {
    padding-right: 1rem;
}
.shoplist-title {
    font-weight: 600;
}
.cart_quantity {
    width: 15px!important;
}
.page-header .content {
    width    : 700px;
    max-width: 100%;
}
.product-item__quantity .input-group-text {
    background: white;
}
.shops-index .feature .card {
    transition: 0.3s ease;
}
.shops-index .feature:hover .card {
    border: 3px solid var(--dark);
}
.shops-index .feature .card .data-item__title {
    position: relative;
}
.shops-index .feature:hover .card .data-item__title:after {
    content   : "";
    height    : 3px;
    width     : 100%;
    background: var(--dark);
    position  : absolute;
    bottom    : 0;
    left      : 0;
}
.realisations-detail h3 {
    margin-top: 1.5rem;
}
.realisations-detail h3:first-child {
    margin-top: 0;
}
.modules-realisations .page-header {
    height: auto;
}
@media(max-width:1599px) {
    .right-sec:after {
        width: 40px;
    }
}
@media(max-width:575px) {
    #shops-grid-list.features-5-wrap-xxl .feature {
        flex: 0 0 50%;
    }
}