/* Public catalogue and offer details consume the published five-style tokens. */
.mb-catalogue-shell{margin:0;min-height:100dvh;display:flex;flex-direction:column;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}
.mb-catalogue-shell *{box-sizing:border-box}.mb-catalogue-shell a{text-decoration:none}.mb-catalogue-shell [hidden]{display:none!important}.mb-catalogue-shell :is(h1,h2,h3,p,figure,dl){margin:0}.mb-catalogue-shell :is(button,input,select){font:inherit}.mb-catalogue-shell button{cursor:pointer}
.mb-catalogue-skip{position:fixed;inset-block-start:-100px;inset-inline-start:16px;z-index:200;padding:12px 20px;background:var(--color-button);color:var(--color-button-text);border-radius:var(--mb-button-radius)}.mb-catalogue-skip:focus{inset-block-start:12px}
.mb-catalogue-topbar{padding-block:12px;gap:18px;flex-wrap:wrap}.mb-catalogue-topbar .mb29-home{display:flex;align-items:center;gap:10px;flex:1;overflow:visible;white-space:normal;line-height:1.25;max-width:360px;overflow-wrap:anywhere}.mb-catalogue-logo{width:42px;height:42px;object-fit:contain;border-radius:8px;flex:none;background:#fff}.mb-catalogue-links{display:flex;align-items:center;gap:22px;margin-inline-start:auto}.mb-catalogue-links a{font-weight:650;color:var(--color-card-text);font-size:14px;white-space:nowrap}.mb-catalogue-links a[aria-current]{color:var(--color-link);text-decoration:underline;text-underline-offset:8px}.mb-catalogue-tools{display:flex;gap:12px;align-items:center;margin-inline-start:auto}.mb-catalogue-tools select{max-width:120px;min-height:42px;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--mb-button-radius);background:var(--color-card);color:var(--color-card-text)}.mb-catalogue-tools .sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mb-catalogue-tools form{margin:0}
.mb-catalogue-main{width:100%;flex:1}.mb-catalogue-main>.mb28-page{width:100%;padding-block:24px 48px}.mb-catalogue-main>.wpc{max-width:1200px;margin-inline:auto}.mb-catalogue-footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:24px max(18px,calc((100vw - 1164px)/2));border-top:1px solid var(--color-border);color:var(--color-muted);font-size:13px}.mb-catalogue-footer>span{font-weight:700}.mb-catalogue-footer nav{display:flex;gap:18px;flex-wrap:wrap}.mb-catalogue-footer a{color:var(--color-link)}
.mb-offer-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:12px;margin-block:0 20px;color:var(--color-muted);overflow-wrap:anywhere}.mb-offer-breadcrumb a{color:var(--color-link)}.mb-offer-breadcrumb [aria-current]{max-width:100%}
.mb-offer-hero{display:flex;gap:30px;align-items:center;min-height:230px}.mb-offer-hero-copy{flex:1;min-width:0}.mb-offer-hero h1{font-weight:800;overflow-wrap:anywhere;margin-block:18px 12px}.mb-offer-hero p{max-width:680px;font-size:15px;line-height:1.7;opacity:.92;white-space:pre-line;overflow-wrap:anywhere}.mb-offer-tags{display:flex;flex-wrap:wrap;gap:8px}.mb-offer-tags span{display:inline-flex;border:1px solid currentColor;padding:5px 11px;border-radius:var(--mb-button-radius);font-size:11px;font-weight:650}.mb-offer-back{display:inline-flex;align-items:center;gap:9px;font-size:13px;color:inherit;font-weight:650;margin-block-start:22px}.mb-offer-cover{width:30%;max-width:290px;aspect-ratio:4/3;border-radius:var(--mb-radius);overflow:hidden;flex:none;background:var(--color-soft)}.mb-offer-cover img{width:100%;height:100%;object-fit:cover;display:block}
.mb-offer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,340px);gap:var(--mb28-gap);align-items:start;margin-block-start:var(--mb28-gap)}.mb-offer-sections{display:grid;gap:var(--mb28-gap);min-width:0}.mb-offer-section{padding:clamp(20px,3vw,32px)}.mb-offer-section h2,.mb-offer-pricing h2{font-size:19px;line-height:1.4;font-weight:750;color:var(--color-card-text);margin-block:0 16px}.mb-offer-prose{font-size:14px;line-height:1.85;white-space:pre-line;overflow-wrap:anywhere;color:var(--color-card-text)}
.mb-offer-list{display:grid;gap:14px;padding:0;margin:0;list-style:none}.mb-offer-list li{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.mb-offer-list li>span:last-child{min-width:0}.mb-offer-list-icon{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:var(--mb-button-radius);background:var(--color-soft);color:var(--color-link);font-weight:800}.mb-offer-faq details+details{border-top:1px solid var(--color-border)}.mb-offer-faq summary{cursor:pointer;padding:15px 0;font-weight:650;font-size:14px;overflow-wrap:anywhere}.mb-offer-faq details p{padding-block:0 16px}.mb-offer-aside{min-width:0;position:sticky;top:100px}.mb-offer-pricing{padding:28px}.mb-offer-eyebrow{display:block;color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.08em;margin-block-end:12px}.mb-offer-pricing h2{margin-block-end:10px}.mb-offer-price{font-size:clamp(25px,3vw,32px);font-weight:800;letter-spacing:-.03em;line-height:1.3;overflow-wrap:anywhere;color:var(--color-link);font-variant-numeric:tabular-nums}.mb-offer-period{font-size:13px;color:var(--color-muted);margin-block-start:6px!important}.mb-offer-fees{border-top:1px solid var(--color-border);margin-block:22px!important;padding-block-start:18px}.mb-offer-fees>div{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;font-size:13px}.mb-offer-fees dt{min-width:0}.mb-offer-fees small{display:block;margin-block-start:4px;color:var(--color-muted);font-size:11px}.mb-offer-fees dd{margin:0;font-weight:750;overflow-wrap:anywhere}.mb-offer-subscribe{width:100%;min-height:50px;gap:12px;text-align:center;margin-block-start:20px;font-size:14px}.mb-offer-help{display:block;font-size:12px;color:var(--color-link);text-align:center;line-height:1.6;margin-block-start:18px}.mb-offer-unavailable{margin-block-start:18px!important;padding:14px;background:var(--color-soft);border-radius:var(--mb-radius);font-size:13px}
.mb-catalogue-shell[data-mb-style=moderne_elegant] .mb-offer-hero{border-start-start-radius:calc(var(--mb-radius) * 1.5)!important}.mb-catalogue-shell[data-mb-style=communautaire_chaleureux] .mb-offer-section:nth-child(2n){background:color-mix(in srgb,var(--color-card) 96%,var(--color-accent))}.mb-catalogue-shell[data-mb-style=digital_premium] .mb-offer-pricing{border-top:3px solid var(--color-accent)}.mb-catalogue-shell[data-mb-style=minimal_impact] .mb-offer-tags span{border:0;padding-inline:0}.mb-catalogue-shell[data-mb-style=minimal_impact] .mb-offer-section{box-shadow:none}
@media(max-width:1080px){.mb-catalogue-links{display:none}.mb-catalogue-topbar .mb29-home{max-width:none}}
@media(max-width:800px){.mb-offer-grid{grid-template-columns:1fr}.mb-offer-aside{position:static;grid-row:1}.mb-offer-pricing{padding:22px}.mb-offer-hero{gap:18px;min-height:0}.mb-offer-cover{width:27%}.mb-offer-hero p{font-size:14px}.mb-catalogue-account{display:none}}
@media(max-width:540px){.mb-catalogue-topbar{gap:10px;padding:10px 14px}.mb-catalogue-topbar .mb29-menu-button span{display:none}.mb-catalogue-topbar .mb29-home{font-size:14px}.mb-catalogue-logo{width:30px;height:30px}.mb-catalogue-tools{gap:0}.mb-catalogue-tools select{max-width:88px;font-size:12px}.mb-offer-hero{flex-direction:column;align-items:stretch}.mb-offer-cover{width:100%;max-width:none;max-height:190px;aspect-ratio:16/9}.mb-offer-breadcrumb{font-size:11px}.mb-catalogue-footer{padding:22px 16px}.mb-catalogue-main>.mb28-page{padding-block-start:18px}}
@media(prefers-reduced-motion:no-preference){.mb-offer-subscribe{transition:filter .16s ease}.mb-offer-subscribe:hover{filter:brightness(1.08)}}

/* The shared form rules use surface; the header selector sits on the card. */
.mb-catalogue-shell #mb-language-select-catalogue{background:var(--color-card)!important;color:var(--color-card-text)!important;border-color:var(--color-border)!important}
.mb-catalogue-shell .wpc-block:not(.wpc-accent) :is(.wpc-link,.wpc-kicker){color:var(--color-link)!important}

/* V36 – Catalogue & solidarité. Scoped to these two pages, retaining each
   published style's semantic colors, radii and spacing tokens. */
.mb-offers-premium{--mb-offer-pad:clamp(18px,3vw,28px)}
.mb-offers-premium .mb-premium-catalogue-hero{position:relative;overflow:hidden;min-height:255px;display:flex;align-items:center;padding:clamp(24px,4vw,48px)!important}
.mb-offers-premium .mb-premium-catalogue-copy{position:relative;z-index:1;max-width:760px}
.mb-offers-premium .mb-premium-catalogue-copy p{max-width:590px;margin-block:12px 22px;line-height:1.65;opacity:.93}
.mb-offers-premium .mb-premium-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid currentColor;border-radius:var(--mb-button-radius);font-size:12px;font-weight:800;opacity:.96}
.mb-offers-premium .mb-premium-hero-watermark{position:absolute;inset-inline-end:-26px;inset-block-start:-34px;font-size:clamp(135px,22vw,270px);opacity:.10;pointer-events:none}
.mb-offers-premium .mb-premium-hero-actions{display:flex;flex-wrap:wrap;gap:10px}
.mb-offers-premium .mb-premium-hero-link{display:inline-flex;gap:9px;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;font-weight:750;font-size:13px;border-radius:var(--mb-button-radius);border:1px solid currentColor;color:inherit;text-decoration:none;background:color-mix(in srgb,currentColor 8%,transparent)}
.mb-offers-premium :is(.mb-premium-hero-link,.mb28-button,.mb28-filters button,.mb-premium-reset):focus-visible{outline:3px solid var(--color-link);outline-offset:3px}
.mb-offers-premium .mb-premium-catalogue-controls{margin-block:22px 24px;padding:var(--mb-offer-pad);border:1px solid var(--color-border);border-radius:var(--mb-radius);background:var(--color-card);box-shadow:var(--mb28-shadow)}
.mb-offers-premium .mb-premium-filter-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.mb-offers-premium .mb-premium-filter-heading h2{font-size:17px;font-weight:800;color:var(--color-card-text)}
.mb-offers-premium .mb-premium-reset{border:0;background:transparent;color:var(--color-link);font-size:13px;font-weight:750;padding:8px}
.mb-offers-premium .mb28-toolbar{margin:14px 0}
.mb-offers-premium .mb-premium-search-wrap{position:relative;width:100%}
.mb-offers-premium .mb-premium-search-wrap>i{position:absolute;inset-inline-start:17px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-muted)}
.mb-offers-premium .mb28-toolbar input{width:100%;min-height:54px;margin:0;padding-inline-start:45px!important;background:var(--color-surface);color:var(--color-card-text);border-radius:calc(var(--mb-radius) * .78);outline-offset:3px}
.mb-offers-premium .mb28-toolbar input:focus-visible{outline:2px solid var(--color-link)}
.mb-offers-premium .mb28-filters{gap:9px;overflow-x:auto;flex-wrap:nowrap;padding:4px 1px 9px;scrollbar-width:thin;scroll-snap-type:x proximity}
.mb-offers-premium .mb28-filters button{flex:none;white-space:nowrap;border-radius:var(--mb-button-radius);scroll-snap-align:start;min-height:42px;font-weight:750}
.mb-offers-premium .mb-premium-results-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-block:4px 15px;color:var(--color-text)}
.mb-offers-premium .mb-premium-results-header h2{font-size:clamp(18px,2.2vw,23px);font-weight:800}
.mb-offers-premium .mb-premium-result-count{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:34px;border-radius:var(--mb-button-radius);padding:4px 12px;background:var(--color-soft);color:var(--color-link);font-weight:850;font-variant-numeric:tabular-nums}
.mb-offers-premium .mb28-catalogue{margin-block-start:0}
.mb-offers-premium .mb-premium-offer-card{padding:13px;display:flex;flex-direction:column;gap:13px;transition:transform .2s ease,box-shadow .2s ease}
.mb-offers-premium .mb-premium-offer-media{width:100%;min-width:0}
.mb-offers-premium .mb-premium-offer-media :is(img,.mb28-offer-placeholder){width:100%;height:170px;border-radius:calc(var(--mb-radius) * .82)}
.mb-offers-premium .mb-premium-offer-media img{display:block;object-fit:cover}
.mb-offers-premium .mb28-offer-body{display:flex;flex-direction:column;align-items:stretch;flex:1;padding:4px 5px 8px}
.mb-offers-premium .mb-premium-offer-tags{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.mb-offers-premium .mb-premium-offer-tags>span{display:inline-block;font-weight:750;font-size:11px;padding:6px 10px;border-radius:var(--mb-button-radius);background:var(--color-soft);color:var(--color-link);line-height:1.25}
.mb-offers-premium .mb-premium-offer-tags .mb-premium-featured-tag{background:var(--color-primary);color:var(--color-on-primary)}
.mb-offers-premium .mb28-offer-body h3{font-size:clamp(17px,2vw,21px);font-weight:800;line-height:1.3;color:var(--color-card-text);margin-block:12px 0;overflow-wrap:anywhere}
.mb-offers-premium .mb28-offer-body>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.55;color:var(--color-muted);margin-block:9px}
.mb-offers-premium .mb28-offer-amount{font-size:18px;font-weight:850;margin-block:12px 18px;color:var(--color-link);font-variant-numeric:tabular-nums}
.mb-offers-premium .mb28-header-actions{display:flex;flex-wrap:wrap;gap:9px;margin-block-start:auto}
.mb-offers-premium .mb28-header-actions .mb28-button{border-radius:var(--mb-button-radius);font-weight:750;min-height:46px}
.mb-offers-premium .mb28-header-actions .mb28-button:last-child{flex:1}
.mb-offers-premium .mb28-catalogue.list .mb-premium-offer-card{display:grid;grid-template-columns:minmax(160px,26%) minmax(0,1fr);gap:18px}
.mb-offers-premium .mb28-catalogue.list .mb-premium-offer-media :is(img,.mb28-offer-placeholder){height:100%;min-height:175px;width:100%}
.mb-offers-premium .mb28-catalogue.list .mb28-offer-body{padding:7px}
.mb-offers-premium .mb28-catalogue.grid .mb-premium-featured{grid-column:span 2;display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:20px}
.mb-offers-premium .mb28-catalogue.grid .mb-premium-featured .mb-premium-offer-media :is(img,.mb28-offer-placeholder){height:100%;min-height:240px}
.mb-offers-premium .mb-premium-empty{margin-block:20px 0;padding:40px 20px}
.mb-offers-premium .mb-premium-empty>i{font-size:36px;color:var(--color-link);margin-block-end:16px}
.mb-offers-premium .mb-premium-empty h3{font-size:18px;font-weight:800;color:var(--color-card-text)}
.mb-offers-premium .mb-premium-empty p{margin-block:8px 18px}
.mb-offers-premium .mb-premium-empty .mb28-button{border-radius:var(--mb-button-radius)}
.mb-offers-premium .mb-premium-visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mb-offer-detail .mb-premium-participation-note{margin-block:12px!important;color:var(--color-muted);font-size:12px;line-height:1.6}
.mb-offer-detail .mb-offer-subscribe{border-radius:var(--mb-button-radius);line-height:1.4}
.mb-catalogue-shell[data-mb-style=minimal_impact] .mb-offers-premium .mb-premium-offer-card{box-shadow:none}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.mb-offers-premium .mb-premium-offer-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px color-mix(in srgb,var(--color-primary) 12%,transparent)}}
@media(max-width:1050px){.mb-offers-premium .mb28-catalogue.grid .mb-premium-featured{grid-column:span 2}}
@media(max-width:700px){.mb-offers-premium .mb28-catalogue.grid .mb-premium-featured{grid-column:auto;display:flex}.mb-offers-premium .mb28-catalogue.list .mb-premium-offer-card{grid-template-columns:100px minmax(0,1fr);gap:13px}.mb-offers-premium .mb28-catalogue.list .mb-premium-offer-media :is(img,.mb28-offer-placeholder){min-height:110px}.mb-offers-premium .mb-premium-catalogue-hero{min-height:0}.mb-offers-premium .mb-premium-offer-media :is(img,.mb28-offer-placeholder){height:160px}}
@media(max-width:520px){.mb-offers-premium .mb28-catalogue.list .mb-premium-offer-card{display:flex}.mb-offers-premium .mb28-catalogue.list .mb-premium-offer-media :is(img,.mb28-offer-placeholder){height:155px}.mb-offers-premium .mb28-header-actions .mb28-button{flex:1}.mb-offers-premium .mb-premium-hero-watermark{font-size:115px}.mb-offers-premium .mb-premium-catalogue-controls{padding:17px}}
@media(prefers-reduced-motion:reduce){.mb-offers-premium .mb-premium-offer-card{transition:none}}
