/* La disposition et le portrait utilisent les règles communes de preview.css. */
#particuliers-namido .private-welcome__testimonial {
    margin-inline: 0;
    padding: 1rem 1.25rem;
    border: 1px solid rgba(90, 36, 125, .08);
    border-left: 4px solid var(--namido-aqua, #8ddbdd);
    border-radius: 16px;
    background: rgba(255, 255, 255, .85);
}

#particuliers-namido .private-welcome__testimonial p {
    margin: 0;
    font-family: "Lora", Georgia, serif;
    font-size: var(--namido-type-quote);
    font-style: italic;
    font-weight: 600;
    line-height: 1.55;
}

#particuliers-namido .private-welcome__testimonial footer {
    margin-top: .55rem;
    color: #6b6470;
    font-family: "Segoe UI", ui-sans-serif, system-ui, sans-serif;
    font-size: var(--namido-type-signature);
    font-weight: 400;
    line-height: 1.55;
}

#particuliers-namido .private-welcome__testimonial b {
    padding-inline: .25em;
    color: var(--namido-purple, #5A247D);
}

/* Icônes symboliques DÉSIR : couleurs aquatiques et courbes de l’univers Nami. */
#particuliers-namido .benefit-card__icon {
    width: 5.25rem;
    height: 5.25rem;
    max-width: 100%;
}

#particuliers-namido .benefit-card__icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Même halo que les pictogrammes, sans modifier les illustrations approuvées. */
#particuliers-namido .benefit-card__icon--illustrated {
    background: url("images/namido-icone-halo.svg") center / contain no-repeat;
}

#particuliers-namido .benefit-card__icon--sport img {
    width: 90%;
    height: 90%;
}

/* Un seul espacement avant la question, sans le retrait de l'ancienne rangée défilante. */
#particuliers-namido #benefices-particuliers .benefit-grid {
    padding-bottom: 0;
}

/* Ordinateur uniquement : illustrations légèrement agrandies. */
@media (min-width: 1024px) {
    #particuliers-namido .benefit-card__icon {
        width: 6rem;
        height: 6rem;
    }
}

#particuliers-namido .private-prevention-question {
    max-width: 52rem;
    margin: 1.5rem auto 0;
    padding: .9rem 1.15rem;
    border: 1px solid rgba(90, 36, 125, .12);
    border-radius: 16px;
    background: rgba(255, 255, 255, .75);
    color: #4b5563;
}

#particuliers-namido .private-prevention-question summary {
    color: var(--namido-purple, #5A247D);
    font-weight: 600;
    cursor: pointer;
}

#particuliers-namido .private-prevention-question p {
    margin-top: .75rem;
    line-height: 1.6;
}

#particuliers-namido .private-prevention-question summary:focus-visible {
    outline: 3px solid var(--namido-aqua, #8ddbdd);
    outline-offset: 4px;
    border-radius: 4px;
}

/* Le même vert d’eau que les boutons du livre d’or. */
#particuliers-namido .private-cabinet__contact {
    background-color: var(--namido-aqua-light);
    color: var(--namido-purple);
}

/* Cabinet uniquement : un fond doux, du vert d’eau au parme. */
#particuliers-namido .private-cabinet__panel {
    position: relative;
    isolation: isolate;
    border: 1px solid rgba(90, 36, 125, .12);
    background: linear-gradient(115deg, #e1f3f1 0%, #f5f8fa 48%, #ece1f3 100%);
}

/* Un liseré reprend les deux couleurs du fond sans déplacer les photos. */
#particuliers-namido .private-cabinet__panel::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    border-radius: 18px 0 0 18px;
    background: linear-gradient(180deg, var(--namido-aqua), #ab84c7);
    pointer-events: none;
}

/* Trois lignes regroupées : l’écart vient de la grille, pas de marges cumulées. */
#particuliers-namido #cabinet .private-cabinet__heading {
    display: grid;
    gap: .625rem;
    margin: 0 0 1.5rem;
    text-align: center;
}

#particuliers-namido.namido-private-proposal #cabinet .private-cabinet__heading > :is(p, h2) {
    margin: 0;
}

#particuliers-namido #cabinet .private-cabinet__heading h2 {
    color: var(--namido-purple);
}

#particuliers-namido #cabinet .private-cabinet__address {
    color: #4b5563;
}

/* Surtitre explicite : la classe utilitaire uppercase n’est pas compilée ici. */
#particuliers-namido.namido-private-proposal #cabinet .private-cabinet__eyebrow {
    margin: 0;
    color: var(--namido-purple);
    font-size: calc(18px + var(--namido-reading-offset, 0px)) !important;
    font-weight: 700;
    letter-spacing: .15em;
    text-align: center;
    text-transform: uppercase;
}

/* Chaque cadre épouse sa photo ; aucun fond flouté ni ratio horizontal imposé. */
#particuliers-namido #cabinet .private-cabinet__photos {
    --cabinet-photo-height: 300px;
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: .25rem .15rem 1rem;
    overflow-x: auto;
    scroll-padding-inline: .15rem;
    scroll-snap-type: x proximity;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

#particuliers-namido #cabinet .private-cabinet__photo {
    flex: 0 0 auto;
    width: max-content;
    max-width: 100%;
    margin: 0;
    overflow: hidden;
    border-radius: 16px;
    scroll-snap-align: start;
    box-shadow: 0 5px 14px rgba(59, 21, 88, .08);
}

#particuliers-namido #cabinet .private-cabinet__photo:first-child { margin-left: auto; }
#particuliers-namido #cabinet .private-cabinet__photo:last-child { margin-right: auto; }

#particuliers-namido #cabinet .private-cabinet__photo img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: var(--cabinet-photo-height);
    border-radius: inherit;
}

@media (max-width: 767px) {
    #particuliers-namido #cabinet .private-cabinet__photos {
        --cabinet-photo-height: 260px;
    }
}

@media (max-width: 767px) {
    #particuliers-namido .private-cabinet__hint {
        margin-bottom: 1rem;
    }
}

/* Une citation visible avant ouverture, limitée à la question de prévention. */
#particuliers-namido .private-prevention-question__saying {
    display: block;
    margin: .5rem 0 0 1.05rem;
    color: #5d5663;
    font-size: var(--namido-type-body);
    font-weight: 400;
    font-style: italic;
    line-height: 1.55;
}

/* Tablette : illustrations lisibles et texte regroupé dans des encarts compacts. */
@media (min-width: 768px) and (max-width: 1023px) {
  #particuliers-namido .benefit-grid {
    width: 100%;
    max-width: 35rem;
    /* Le thème impose margin-right: 0 aux anciennes rangées défilantes. */
    margin-inline: auto !important;
    padding-inline: 0;
  }
  #particuliers-namido .benefit-grid .benefit-card {
    display: grid;
    grid-template-columns: 7.5rem minmax(0, 1fr);
    column-gap: 1.25rem;
    row-gap: .35rem;
    align-items: center;
    align-content: center;
    min-height: 0;
    padding: 1rem 1.25rem;
    text-align: left;
  }
  #particuliers-namido .benefit-grid .benefit-card__icon {
    grid-column: 1;
    grid-row: 1 / 3;
    width: 7.5rem;
    height: 7.5rem;
    justify-self: center;
  }
  #particuliers-namido .benefit-grid .benefit-card__icon--sport img {
    width: 100%;
    height: 100%;
  }
  #particuliers-namido .benefit-grid .benefit-card h3 {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    justify-self: start;
    margin: 0;
    text-align: left;
  }
  #particuliers-namido .benefit-grid .benefit-card p {
    grid-column: 2;
    grid-row: 2;
    align-self: start;
    margin: 0;
  }
}
