/* Pages composées d'une boulangerie (Présentation, Équipe) — rendu public des blocs. Charte : Croûte / Mie / Bordure. */

.mbb-composed .mbb-block + .mbb-block,
.mbb-composed .mbb-bw + .mbb-bw {
    margin-top: 2rem;
}

/* Membres de l'équipe : cartes homogènes (h-100), champs vides simplement omis. */
.mbb-team__card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--mbb-border);
    border-radius: var(--mbb-radius-card);
}

.mbb-team__photo {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: var(--mbb-crust-light);
}

/* Absolu : sans cela l'image impose sa hauteur naturelle et les cartes deviennent inégales. */
.mbb-team__photo img,
.mbb-team__avatar {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.mbb-team__photo img {
    object-fit: cover;
}

/* Illustration par défaut : initiale du prénom (ou pictogramme) aux couleurs de la charte. */
.mbb-team__avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-family: var(--mbb-font-display);
    font-size: 3.5rem;
    line-height: 1;
    color: var(--mbb-crust);
    background: linear-gradient(135deg, var(--mbb-crust-light), var(--mbb-crumb));
}

.mbb-team__body {
    flex: 1 1 auto;
    padding: 1rem;
}

.mbb-team__name {
    margin: 0;
    font-size: 1.125rem;
}

.mbb-team__role {
    margin: .125rem 0 0;
    font-size: .875rem;
    font-weight: 600;
    color: var(--mbb-crust);
}

.mbb-team__bio {
    margin: .5rem 0 0;
    font-size: .9375rem;
    color: var(--mbb-ink-2);
}

/* « Afficher les photos » décoché : simple liste. */
.mbb-team-list__item {
    padding: .625rem 0;
    border-bottom: 1px solid var(--mbb-border);
}

/* Galerie, image seule, citation. */
.mbb-gallery__item {
    display: block;
    overflow: hidden;
    border-radius: var(--mbb-radius-card);
}

.mbb-gallery__item img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.mbb-image__img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: var(--mbb-radius-card);
}

.mbb-image__caption {
    margin-top: .5rem;
    font-size: .875rem;
    color: var(--mbb-ink-2);
}

.mbb-quote__text {
    margin: 0;
    padding-left: 1.25rem;
    font-family: var(--mbb-font-display);
    font-size: 1.375rem;
    line-height: 1.4;
    color: var(--mbb-ink);
    border-left: 4px solid var(--mbb-wheat);
}

.mbb-quote__author {
    margin-top: .5rem;
    padding-left: 1.25rem;
    font-size: .9375rem;
    color: var(--mbb-ink-2);
}

.mbb-quote__author::before {
    content: "— ";
}
