/* ── L'atelier LP Charpente ── */

.page-hero-overlay--atelier {
    background: linear-gradient(
        180deg,
        rgba(15, 12, 10, .15) 0%,
        rgba(15, 12, 10, .05) 40%,
        rgba(15, 12, 10, .65) 100%
    );
}

.page-hero--atelier .page-hero-title,
.page-hero--atelier .page-hero-sub {
    color: var(--white);
    text-shadow: 0 1px 12px rgba(0, 0, 0, .5);
}

.atelier-strip {
    position: relative;
    z-index: 3;
    margin-top: -3rem;
    padding-bottom: .5rem;
}

.atelier-strip .entreprise-kpi-bar {
    gap: .65rem;
}

/* ── Intro (même présentation image que le parc) ── */
.entreprise-secteur-block--presentation .section-label {
    color: #5c4a32;
    background: #f5f0e8;
}

.entreprise-secteur-block--presentation .section-label::before {
    background: #8b6914;
}

/* ── Vidéo ── */
.atelier-video-section {
    padding: 4rem 0 5rem;
}

.atelier-video-section .section-sub {
    max-width: 40rem;
    margin: 0 auto 2rem;
}

.atelier-video-wrap {
    max-width: 900px;
    margin: 0 auto;
}

.atelier-video {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: var(--black);
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--gray-200);
}

.atelier-video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.atelier-video-caption {
    margin-top: 1rem;
    font-size: .8rem;
    color: var(--gray-500);
    text-align: center;
}

.entreprise-secteur-video-caption {
    text-align: left;
    margin-top: .85rem;
}

.entreprise-secteur-layout--video {
    align-items: center;
}

/* ── Groupes atelier (sous-sections par site) ── */
.entreprise-secteur-block--grouped {
    padding-top: 0;
    padding-bottom: 0;
}

.entreprise-secteur-block--group-start {
    padding-top: 4.5rem;
}

.entreprise-secteur-block--group-end {
    padding-bottom: 4.5rem;
}

.entreprise-secteur-block--grouped.entreprise-secteur-block--continued {
    padding-top: 0;
}

.atelier-group-head {
    text-align: center;
    max-width: 40rem;
    margin: 0 auto 3rem;
    padding-bottom: 2.5rem;
    border-bottom: 1px solid var(--gray-200);
}

.section.alt .atelier-group-head {
    border-bottom-color: rgba(15, 12, 10, .08);
}

.atelier-group-title {
    font-family: var(--font-display);
    font-size: clamp(1.65rem, 3vw, 2.15rem);
    font-weight: 600;
    color: var(--gray-900);
    line-height: 1.2;
    margin: .75rem 0 .5rem;
}

.atelier-group-desc {
    font-size: .95rem;
    color: var(--gray-500);
    line-height: 1.6;
    margin: 0;
}

.entreprise-secteur-block--continued .entreprise-secteur-layout {
    padding-top: 3rem;
    border-top: 1px solid var(--gray-200);
}

.entreprise-secteur-block--grouped:not(.entreprise-secteur-block--group-end) .entreprise-secteur-layout {
    padding-bottom: 3rem;
}

.section.alt .entreprise-secteur-block--continued .entreprise-secteur-layout {
    border-top-color: rgba(15, 12, 10, .08);
}

.entreprise-secteur-block--group-end + .entreprise-secteur-block--group-start,
.entreprise-secteur-block--group-end + .section:not(.entreprise-secteur-block--grouped) {
    box-shadow: 0 -1px 0 var(--gray-200);
}

/* Labels par site (toutes les sous-sections du groupe) */
.entreprise-secteur-block--group-l-arny .section-label,
.entreprise-secteur-block--group-l-arny .atelier-group-label {
    color: var(--primary-dark);
    background: var(--primary-bg);
}

.entreprise-secteur-block--group-l-arny .section-label::before,
.entreprise-secteur-block--group-l-arny .atelier-group-label::before {
    background: var(--primary);
}

.entreprise-secteur-block--group-zinguerie .section-label,
.entreprise-secteur-block--group-zinguerie .atelier-group-label {
    color: var(--gray-700);
    background: rgba(100, 116, 139, .1);
}

.entreprise-secteur-block--group-zinguerie .section-label::before,
.entreprise-secteur-block--group-zinguerie .atelier-group-label::before {
    background: #64748b;
}

.entreprise-secteur-block--group-les-terres .section-label,
.entreprise-secteur-block--group-les-terres .atelier-group-label {
    color: #166534;
    background: rgba(34, 120, 80, .08);
}

.entreprise-secteur-block--group-les-terres .section-label::before,
.entreprise-secteur-block--group-les-terres .atelier-group-label::before {
    background: #166534;
}

/* Widgets highlights : 3e item pleine largeur si groupe de 3 */
.entreprise-secteur-block--l-arny-finition .entreprise-secteur-feats .feat:nth-child(3),
.entreprise-secteur-block--les-terres-raboteuse-scm .entreprise-secteur-feats .feat:nth-child(3),
.entreprise-secteur-block--zinguerie-profileuse .entreprise-secteur-feats .feat:nth-child(3) {
    grid-column: 1 / -1;
}

.entreprise-secteur-copy .about-text a {
    font-weight: 600;
    color: var(--primary);
    text-decoration: underline;
    text-underline-offset: .15em;
}

.entreprise-secteur-copy .about-text a:hover {
    color: var(--primary-dark);
}

/* ── Média statique : 2 images côte à côte (sans carousel) ── */
.about-grid.entreprise-secteur-layout--copy-only,
.entreprise-secteur-layout.entreprise-secteur-layout--copy-only {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
}

.entreprise-secteur-layout--duo {
    grid-template-columns: minmax(0, 0.38fr) minmax(0, 0.62fr);
    align-items: center;
    gap: 2.5rem;
}

.entreprise-secteur-duo {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
    width: 100%;
}

.entreprise-secteur-duo-item {
    margin: 0;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.entreprise-secteur-duo-img,
.entreprise-secteur-single-img {
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .4rem;
    background: var(--gray-50);
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--gray-200);
    line-height: 0;
}

.entreprise-secteur-duo-img img,
.entreprise-secteur-single-img img {
    width: 100%;
    height: auto;
    max-height: min(52vh, 500px);
    object-fit: contain;
    object-position: center;
    display: block;
}

.entreprise-secteur-duo-caption,
.entreprise-secteur-single-caption {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    margin-top: .6rem;
    padding: 0 .1rem;
}

.entreprise-secteur-duo-caption strong,
.entreprise-secteur-single-caption strong {
    font-size: .8rem;
    font-weight: 600;
    color: var(--gray-900);
    line-height: 1.35;
}

.entreprise-secteur-duo-caption span,
.entreprise-secteur-single-caption span {
    font-size: .7rem;
    color: var(--gray-500);
    line-height: 1.4;
}

.entreprise-secteur-single {
    margin: 0;
}

/* Duo agrandi (ex. valorisation des chutes) */
.entreprise-secteur-layout--duo-wide {
    grid-template-columns: minmax(0, 0.32fr) minmax(0, 0.68fr);
    align-items: center;
}

.entreprise-secteur-block--duo-wide .entreprise-secteur-duo {
    gap: 1rem;
}

.entreprise-secteur-block--duo-wide .entreprise-secteur-duo-img {
    min-height: 0;
}

.entreprise-secteur-block--duo-wide .entreprise-secteur-duo-caption strong {
    font-size: .88rem;
}

.entreprise-secteur-block--duo-wide .entreprise-secteur-duo-caption span {
    font-size: .78rem;
}

.entreprise-secteur-block--l-arny-k2 .entreprise-secteur-copy .section-title,
.entreprise-secteur-block--l-arny-robot .entreprise-secteur-copy .section-title {
    margin-bottom: .5rem;
}

@media (max-width: 960px) {
    .entreprise-secteur-layout--duo,
    .entreprise-secteur-layout--duo-wide {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .entreprise-secteur-block--duo-wide .entreprise-secteur-duo-img {
        min-height: 0;
    }

    .entreprise-secteur-duo-img img,
    .entreprise-secteur-single-img img {
        max-height: min(45vh, 420px);
    }
}

.atelier-strip .entreprise-kpi-bar,
.atelier-strip .atelier-kpi-bar {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .65rem;
}

.atelier-kpi-bar .hero-stat-prefix {
    font-family: var(--font-h);
    font-size: .95rem;
    font-weight: 700;
    color: var(--primary);
    margin-right: .15rem;
    line-height: 1;
}

@media (max-width: 1100px) {
    .atelier-strip .entreprise-kpi-bar,
    .atelier-strip .atelier-kpi-bar {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {

    .atelier-strip {
        margin-top: -1.5rem;
    }

    .atelier-strip .entreprise-kpi-bar,
    .atelier-strip .atelier-kpi-bar {
        grid-template-columns: repeat(2, 1fr);
    }

    .atelier-group-head {
        margin-bottom: 2rem;
        padding-bottom: 1.75rem;
    }

    .entreprise-secteur-block--continued .entreprise-secteur-layout {
        padding-top: 2.25rem;
    }

    .entreprise-secteur-block--group-start {
        padding-top: 3.5rem;
    }

    .entreprise-secteur-block--group-end {
        padding-bottom: 3.5rem;
    }
}
