/* Des palettes de rayon et une sélection sans colonne vide. */
.product-page {
    --rayon-ink: #4b6535;
    --rayon-wash: #edf1df;
    --rayon-line: #cfdbb8;
    --rayon-secondary: #925a32;
    --rayon-secondary-wash: #f8eddf;
    --rayon-third: #476d68;
    --rayon-third-wash: #eaf3ef;
}
.product-page[data-product-theme="boisson"] { --rayon-ink:#783c58; --rayon-wash:#f3e6ed; --rayon-line:#dfc3d1; --rayon-secondary:#805f21; --rayon-secondary-wash:#f6eedc; --rayon-third:#356f67; --rayon-third-wash:#e7f2ec; }
.product-page[data-product-theme="pain-bio"] { --rayon-ink:#925322; --rayon-wash:#f6ead7; --rayon-line:#e3c9a6; --rayon-secondary:#6c6540; --rayon-secondary-wash:#f0efdF; }
.product-page[data-product-theme="poisson-frais"] { --rayon-ink:#316476; --rayon-wash:#e4f0f2; --rayon-line:#bfd6dd; --rayon-secondary:#866c36; --rayon-secondary-wash:#f5efdf; }
.product-page[data-product-theme="epicerie-bio"] { --rayon-ink:#a15530; --rayon-wash:#f8eade; --rayon-line:#e9c8b5; --rayon-secondary:#7a642a; --rayon-secondary-wash:#f4efdb; }
.product-page[data-product-theme="rayon-frais"] { --rayon-ink:#3f6e71; --rayon-wash:#e6f0ec; --rayon-line:#bfd8cc; --rayon-secondary:#80613c; --rayon-secondary-wash:#f6edde; }
.product-page[data-product-theme="the-vrac-bio"] { --rayon-ink:#76517c; --rayon-wash:#f1e9f2; --rayon-line:#d9c5de; --rayon-secondary:#567040; --rayon-secondary-wash:#ecf1e2; }
.product-page[data-product-theme="vrac-bio"] { --rayon-ink:#796129; --rayon-wash:#f4efdd; --rayon-line:#ded2ae; --rayon-secondary:#42695e; --rayon-secondary-wash:#e9f1e9; }
.product-page[data-product-theme="bien-etre"] { --rayon-ink:#92576b; --rayon-wash:#f5e8ed; --rayon-line:#e2c8d2; --rayon-secondary:#756085; --rayon-secondary-wash:#f0eaf4; }
.product-page[data-product-theme="hygiene"] { --rayon-ink:#3d6e62; --rayon-wash:#e5f1e9; --rayon-line:#c1d9cb; --rayon-secondary:#616e91; --rayon-secondary-wash:#eaf0f8; }
.product-page .interior-page { padding-top: 18px; padding-bottom: 30px; }
.product-page .breadcrumb { margin-bottom: 18px; }
.product-page .product-hero { gap: clamp(28px,4vw,64px); align-items: center; grid-template-columns: minmax(0,1fr) minmax(0,1fr); border-radius: 0; overflow: visible; border: 0; background: transparent; margin-bottom: 24px; }
.product-page .product-hero > div { display: flex; flex-direction: column; justify-content: center; align-items: start; padding: 12px 0; }
.product-page .product-hero h1 { color: var(--rayon-ink); font-size: clamp(40px,3.8vw,66px); margin: 13px 0 14px; }
.product-page .product-subtitle { color: var(--rayon-secondary); font-size: clamp(24px,2.1vw,34px); margin-bottom: 12px; }
.product-page .product-hero .eyebrow { color: var(--rayon-ink); }
.product-page .product-hero .lead { font-size: 18px; margin: 0; }
.product-page .product-hero-actions { margin-top: 20px; gap: 18px; }
.product-page .button-dark { background: var(--rayon-ink); }
.product-page .button-dark:hover { filter: brightness(.9); }
.product-page .product-hero .text-link { color: var(--rayon-ink); border-color: var(--rayon-ink); }
.product-page .product-hero figure { position: relative; display: block; min-height: 0; margin: 0; max-width: 510px; justify-self: center; }
.product-page .product-hero figure img { position: static; height: auto; max-height: 340px; width: auto; max-width: 100%; margin-inline: auto; border-radius: var(--photo-radius); }
.product-page .product-hero figcaption { position: static; margin-top: 8px; padding: 0; border-radius: 0; background: transparent; color: #46513f; font-size: 12px; }
.product-page .product-selection { display: block; border: 0; padding: 0; }
.product-page .selection-groups { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px 40px; align-items: start; }
.product-page .selection-groups:has(> .selection-group:nth-child(2)):not(:has(> .selection-group:nth-child(3))) { grid-template-columns: repeat(2,minmax(0,1fr)); }
.product-page .selection-group { min-width: 0; position: relative; padding: 16px 0 0; border: 0; border-top: 1px solid var(--rayon-line); background: transparent; border-radius: 0; }
.product-page .selection-group:nth-child(2) { --card-ink: var(--rayon-secondary); border-top-color: var(--card-ink); }
.product-page .selection-group:nth-child(3) { --card-ink: var(--rayon-third); border-top-color: var(--card-ink); }
.product-page .selection-number { display: none; }
.product-page .selection-group h3 { color: var(--card-ink,var(--rayon-ink)); font: 28px/1.2 var(--display); margin: 0 0 14px; }
.product-page .selection-group p { font-size: 16px; margin: 0 0 15px; }
.product-page .selection-group p:last-child { margin-bottom: 0; }
.product-page .selection-group .feature-list { grid-template-columns: 1fr; gap: 0; margin: 0; }
.product-page .selection-group .feature-list li { background: transparent; padding: 6px 0 6px 16px; border-bottom: 0; border-left: 2px solid var(--rayon-line); border-radius: 0; font-size: 16px; }
.product-page .selection-group .feature-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.product-page .single-group { grid-template-columns: 1fr; }
.product-page .single-group .feature-list { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px 16px; }
.product-page .single-group .feature-list li { background: transparent; border: 0; border-left: 2px solid var(--rayon-line); padding: 6px 16px; border-radius: 0; }
.product-page .selection-note { grid-column: 1/-1; font-size: 15px; color: #5c6855; padding: 0 3px; }
.product-page .selection-note p { margin: 0; }
.product-page .product-guidance { gap: 40px; margin: 24px 0; padding-top: 22px; border-top: 1px solid var(--rayon-line); }
.product-page .product-guidance article { padding: 0; border: 0; background: transparent; border-radius: 0; }
.product-page .product-guidance article:last-child { background: transparent; border-color: transparent; }
.product-page .product-guidance h2 { font-size: 27px; color: var(--rayon-ink); margin: 10px 0 12px; }
.product-page .product-guidance article:last-child h2 { color: var(--rayon-secondary); }
.product-page .product-guidance p { font-size: 16px; margin-top: 0; }
.product-page .interior-callout { margin-top: 22px; padding: 22px 0; background: transparent; border: 0; border-block: 1px solid var(--rayon-line); border-radius: 0; }
.product-page .interior-callout h2 { font-size: 32px; color: var(--rayon-ink); }
.product-page .interior-callout h2 br { display: none; }
.product-page .interior-callout h2 br:after { content: ' '; }
.product-page .other-products { margin-top: 22px; padding-top: 18px; }
.product-page .other-products h2 { margin: 0 0 16px; font-size: 28px; }
.product-page .other-products a { border: 1px solid var(--rayon-line); border-radius: 7px; padding: 10px 16px; color: var(--rayon-ink); background: var(--rayon-wash); text-decoration: none; }
.product-page .other-products a:hover { background: var(--rayon-ink); color: #fff; }
@media(max-width:1100px) {
    .product-page .product-hero h1 { font-size: 43px; }
    .product-page .product-hero > div { padding: 0; }
    .product-page .single-group { grid-template-columns: 1fr; }
    .product-page .single-group .feature-list { grid-template-columns: 1fr 1fr; }
}
@media(max-width:767px) {
    .product-page .product-hero { grid-template-columns: 1fr; margin-bottom: 22px; }
    .product-page .product-hero > div { padding: 0; }
    .product-page .product-hero h1 { font-size: 40px; }
    .product-page .product-hero .lead { font-size: 16px; }
    .product-page .product-hero figure { min-height: 0; }
    .product-page .product-hero figure img { max-height: 230px; }
    .product-page .product-hero figcaption { font-size: 11px; }
    .product-page .selection-groups, .product-page .selection-groups:has(> .selection-group:nth-child(2)):not(:has(> .selection-group:nth-child(3))) { grid-template-columns: 1fr; gap: 14px; }
    .product-page .selection-group { padding: 0; }
    .product-page .single-group .feature-list { grid-template-columns: 1fr; }
    .product-page .product-guidance { gap: 14px; }
    .product-page .product-guidance article { padding: 0; }
    .product-page .interior-callout { padding: 22px 0; }
}

.product-page .other-products ul { gap: 10px; }
.product-page .selection-group h3 { text-decoration: underline; text-decoration-color: var(--rayon-wash); text-decoration-thickness: 7px; text-underline-offset: -2px; text-decoration-skip-ink: none; }
