﻿/* Pillars strip */
.pillars-strip {
    position: relative; /* ou rien du tout */
    width: 100%;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(12px);
    /* même padding horizontal que .navbar-root et .hero-root */
    padding: 0 var(--layout-padding-mobile);
    margin-top: 0.5rem;
}

@media (min-width: 1024px) {
    .pillars-strip {
        padding: 0 var(--layout-padding-desktop);
    }
}

.pillars-grid {
    max-width: var(--layout_container-maxwidth);
    margin: 0 auto;
    padding: 1.5rem 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    position: relative;
}

/* Séparateurs verticaux entre les 4 piliers */
.pillars-grid > .pillar {
    position: relative;
    padding-left: 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pillar {
    padding: 0 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pillars-grid > .pillar:not(:first-child)::before {
    content: "";
    position: absolute;
    top: -1.5rem;
    bottom: -1.5rem;
    left: 0;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
}

/* Retirer le séparateur du premier élément */
.pillars-grid > .pillar:first-child {
    border-left: none;
    padding-left: 0;
}

.pillar-title {
    font-family: "Outfit", system-ui, sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    color: #ffffff;
    margin: 0 0 0.05rem;
    padding: 0;
}

.pillar-text {
    margin: 0.05rem 0 0;
    font-size: 0.8rem;
    color: #A0A4AF;
}

/* Mobile layout */
@media (max-width: 767px) {
    .pillars-grid {
        grid-template-columns: repeat(2, 1fr);
        /*grid-auto-rows: 6rem;*/
        position: relative;
    }

    /* Séparateur horizontal du milieu, étiré pour couvrir toute la largeur de la fenêtre */
    .pillars-grid::after {
        content: "";
        position: absolute;
        top: 50%;
        left: -1.5rem;
        width: calc(100% + 3rem);
        border-top: 1px solid rgba(255, 255, 255, 0.1);
    }

    .pillars-grid > .pillar {
        box-sizing: border-box;
        /*min-height: 6rem;*/
        align-items: center; /* manquait */
        height: 6rem;  /* remplace grid-auto-rows */
        padding: 0;
        text-align: center;
    }

    /* la verticale centrale reste visible et couvre les 2 rangées */
    .pillars-grid::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        border-left: 1px solid rgba(255, 255, 255, 0.1);
    }

    .pillars-grid > .pillar:not(:first-child)::before {
        display: none;
    }
}