/* Divioseo PrettyBlocks — front styles */

/* Pillar cards: stack on mobile, columns on desktop */
.divioseo-pillar-cards {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .divioseo-pillar-cards {
        flex-direction: row;
        align-items: stretch;
    }

    .divioseo-pillar-cards > .divioseo-pillar-card {
        flex: 1 1 0;
        min-width: 0;
    }
}

/* Benefits 3 cols: stack on mobile, columns on desktop */
.divioseo-benefits-3col {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .divioseo-benefits-3col {
        flex-direction: row;
        align-items: stretch;
    }

    .divioseo-benefits-3col > .divioseo-benefit {
        flex: 1 1 0;
        min-width: 0;
    }
}

/* CMS 23: thin text-coloured separator between PrettyBlocks blocks */
body.cms-id-23 [data-prettyblocks-zone] > [data-block] + [data-block] {
    //*border-top: 1px solid currentColor;*/
    margin-top: 2rem;
    padding: 2rem 0;
}

/* Actifs table: full width, thead background, thin text-coloured cell borders */
.divioseo-actifs-table {
    width: 100%;
    border-collapse: collapse;
}

.divioseo-actifs-table thead {
    background-color: rgba(0, 0, 0, 0.05);
}

.divioseo-actifs-table th,
.divioseo-actifs-table td {
    border: 1px solid currentColor;
    padding: 0.5rem 0.75rem;
    vertical-align: top;
    text-align: left;
}

/* CMS 23 — FAQ prettyblocks block */

/* Limit width (centring inherited from parent) */
body.cms-id-23 .prettyblocks-faq {
    max-width: 80%;
}

/* Re-scope --blue to the brand colour for everything in the accordion */
body.cms-id-23 .prettyblocks-faq .accordion {
    --blue: #442b3d;
}

/* Use the site text colour instead of prettyblocks --text (#7288a2) */
body.cms-id-23 .prettyblocks-faq,
body.cms-id-23 .prettyblocks-faq .accordion,
body.cms-id-23 .prettyblocks-faq .accordion button,
body.cms-id-23 .prettyblocks-faq .accordion .accordion-content,
body.cms-id-23 .prettyblocks-faq .accordion .accordion-content p {
    color: #665663;
}


/* Match opened content background to the site background (transparent = inherit) */
body.cms-id-23 .prettyblocks-faq .accordion button[aria-expanded='true'] + .accordion-content {
    background-color: transparent;
}

/* Remove the border around the accordion container itself (Bootstrap accordion) */
body.cms-id-23 .prettyblocks-faq .accordion {
    border: 0;
    --bs-accordion-border-width: 0;
}

body#cms .all-products-Link {
    color: #442b3d;
    position: relative;
    font-style: italic;
    display: inline-block;
    margin: 5px 0 0;
    padding: 0;
    font-size: 15px;
    text-decoration: underline;
}

body#cms main ul li::before{
	content: none; 
}


/* ============================================================
   Lodesse — pages CMS PrettyBlocks (notre-démarche & pages filles)
   ============================================================ */

/* 1. Actifs (imageslist3) : pas de fond blanc dans le contexte CMS.
      Le fond est désormais piloté par l'alternance des blocs ci-dessous. */
body#cms .imageslist3-container {
    background-color: transparent;
}

/* 2. Titre <h1> stylé en .h4 sur les pages CMS. */
body#cms h1.h4 {
    font-size: 1.625rem;
}

/* 3. Empêche tout scroll horizontal dû au 100vw du full-bleed : on coupe le
      débordement (largeur de la scrollbar) au niveau du body, uniquement sur
      les pages CMS. overflow-x: clip ne crée pas de conteneur de défilement et
      ne casse donc pas position: sticky (contrairement à overflow: hidden). */
body#cms {
    overflow-x: clip;
}

/* 4. Alternance de fond sur les blocs PrettyBlocks : 1 bloc sur 2 en blanc,
      les autres sans fond (comme actuellement). Le fond blanc s'étend sur
      toute la largeur de la page (full-bleed), tout en gardant le contenu dans
      le conteneur centré. Le wrapper [data-block] n'a pas de style inline,
      l'astuce des marges/paddings négatifs est donc sans risque. */
body#cms [data-prettyblocks-zone] > [data-block][data-id-prettyblocks]:nth-child(even) {
    background-color: #fff;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
}
