/* Boost — feuille de style des sites livrés. Variables fournies par le thème (Engine::render). */
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--boost-background);color:var(--boost-text);font:17px/1.65 var(--boost-font,system-ui,sans-serif);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:3px}
img,video{display:block;max-width:100%;height:auto;border-radius:var(--boost-radius)}
h1,h2,h3,h4{font-family:var(--boost-heading-font,inherit);line-height:1.12;text-wrap:balance;margin:0 0 .5em}
h1{font-size:clamp(2.3rem,5.6vw,4.6rem);max-width:18ch;letter-spacing:-.025em}
h2{font-size:clamp(1.75rem,3.6vw,2.7rem);letter-spacing:-.015em;max-width:26ch}
h3{font-size:1.2rem}
p{max-width:68ch;margin:0 0 1em}
.boost-wrap,.boost-header,.boost-footer{max-width:var(--boost-width);margin:auto;padding-inline:24px}

/* En-tête */
.boost-header{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-block:18px;max-width:none;padding-inline:max(24px,calc((100% - var(--boost-width))/2 + 24px));border-bottom:1px solid color-mix(in srgb,currentColor 12%,transparent)}
.brand{font-family:var(--boost-heading-font,inherit);font-weight:800;text-decoration:none;font-size:1.3rem;letter-spacing:-.01em}
.brand img{max-height:56px;width:auto;border-radius:0}
.boost-header nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px 26px}
.boost-header nav a{text-decoration:none;font-weight:600;font-size:.95rem;padding-block:6px;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;transition:background-size .2s}
.boost-header nav a:hover,.boost-header nav a:focus-visible{background-size:100% 2px}
.boost-header>.boost-button{padding:11px 20px;font-size:.95rem}
nav{display:flex;flex-wrap:wrap;gap:20px}
.menu-item{position:relative}
.submenu{display:none;position:absolute;top:100%;left:-12px;min-width:200px;padding:8px 12px;background:var(--boost-background,#fff);color:var(--boost-text,#172d35);border:1px solid #bac4c1;border-radius:8px;z-index:20;box-shadow:0 12px 30px #0000001f}
.submenu .menu-item{display:block}
.menu-item:focus-within>.submenu,.menu-item:hover>.submenu{display:block}
.header-centered{flex-direction:column;justify-content:center;text-align:center}
.header-minimal{border:0}

/* Sections */
.boost-section{position:relative}
.boost-section:nth-of-type(even):not(.variant-dark):not(.variant-cover):not(.boost-hero):not(.boost-cta){background:color-mix(in srgb,var(--boost-primary) 4%,var(--boost-background))}
.boost-section>.boost-wrap>p{font-size:1.06em;opacity:.92}
.boost-grid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:var(--boost-spacing,24px);margin-top:32px}
.boost-grid article{padding:28px;background:var(--boost-background);border:1px solid color-mix(in srgb,var(--boost-text) 12%,transparent);border-radius:var(--boost-radius);box-shadow:var(--boost-shadow,none);transition:transform .2s,box-shadow .2s}
.boost-grid article:hover{transform:translateY(-3px);box-shadow:0 14px 34px #0000001a}
.boost-grid article img{margin:-28px -28px 20px;width:calc(100% + 56px);max-width:none;aspect-ratio:4/3;object-fit:cover;border-radius:var(--boost-radius) var(--boost-radius) 0 0}
.boost-grid article h3{margin-bottom:.4em}
.boost-grid article p{margin-bottom:.6em;font-size:.97em}
.boost-grid article a{font-weight:700;color:var(--boost-primary)}
.boost-price{font-weight:800;font-size:1.25em;color:var(--boost-primary)}
.boost-button,button{display:inline-block;background:var(--boost-primary);color:var(--boost-on-primary,#fff);padding:14px 26px;border:0;border-radius:var(--boost-radius);text-decoration:none;font:inherit;font-weight:700;cursor:pointer;transition:filter .2s,transform .2s;margin-top:8px}
.boost-button:hover,button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.boost-caption{font-size:.85em;opacity:.75;margin-top:8px}

/* Hero */
.boost-hero{background:color-mix(in srgb,var(--boost-primary) 8%,var(--boost-background));overflow:hidden}
.boost-hero h1{margin-bottom:.35em}
.boost-hero p{font-size:1.18em;max-width:56ch}
.boost-hero:not(:has(img)) .boost-wrap::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--boost-primary) 22%,transparent),transparent 70%);pointer-events:none}

/* Variantes */
.variant-centered{text-align:center!important}
.variant-centered :is(h1,h2,p){margin-inline:auto}
.variant-centered .boost-grid{text-align:left}
.variant-dark{background:var(--boost-secondary)!important;color:var(--boost-background)}
.variant-dark .boost-grid article{background:color-mix(in srgb,var(--boost-background) 7%,var(--boost-secondary));border-color:color-mix(in srgb,var(--boost-background) 18%,transparent);color:var(--boost-background)}
.variant-minimal{border-bottom:1px solid color-mix(in srgb,currentColor 15%,transparent)}
.variant-minimal .boost-grid article{border:0;padding:0;background:none;box-shadow:none}
.variant-minimal .boost-grid article:hover{transform:none;box-shadow:none}
.variant-minimal .boost-grid article img{margin:0 0 16px;width:100%;border-radius:var(--boost-radius)}
.variant-split>.boost-wrap:has(>img){display:grid;grid-template-columns:1.05fr 1fr;column-gap:56px;align-items:center}
.variant-split>.boost-wrap>:not(img){grid-column:1}
.variant-split>.boost-wrap>img{grid-column:2;grid-row:1/8;object-fit:cover;aspect-ratio:4/3;width:100%;box-shadow:0 24px 60px #00000026}
.variant-cover{isolation:isolate;color:#fff;background:#111!important}
.variant-cover>.boost-wrap>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;border-radius:0;max-width:none}
.variant-cover::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,#000000b8 0%,#00000080 55%,#00000033 100%)}
.variant-cover .boost-caption{display:none}
.variant-cover.boost-hero{min-height:min(78vh,720px);display:flex;align-items:center}
.variant-cover.boost-hero>.boost-wrap{width:100%}

/* Composants spécifiques */
.boost-statistics .boost-grid article,.boost-certifications .boost-grid article{text-align:center;background:none;border:0;box-shadow:none}
.boost-statistics .boost-grid article h3{font-size:clamp(2.2rem,5vw,3.4rem);color:var(--boost-primary);margin-bottom:.1em;letter-spacing:-.03em}
.variant-dark.boost-statistics .boost-grid article h3{color:var(--boost-background)}
.boost-testimonials .boost-grid article{position:relative;padding-top:52px}
.boost-testimonials .boost-grid article::before{content:"“";position:absolute;top:6px;left:24px;font:700 4rem/1 Georgia,serif;color:var(--boost-primary);opacity:.5}
.boost-testimonials .boost-grid article h3{order:2;font-size:.95rem;margin-top:12px}
.boost-testimonials .boost-grid article p{font-style:italic}
.boost-testimonials .boost-grid article{display:flex;flex-direction:column}
.boost-pricing .boost-grid article,.boost-offers .boost-grid article{display:flex;flex-direction:column;border-top:4px solid var(--boost-primary)}
.boost-team .boost-grid article{text-align:center}
.boost-team .boost-grid article img{margin:0 auto 16px;width:150px;height:150px;aspect-ratio:1;border-radius:50%}
.boost-logos .boost-grid article,.boost-partners .boost-grid article{display:grid;place-items:center;padding:20px;filter:grayscale(1);opacity:.8}
.boost-logos .boost-grid article img,.boost-partners .boost-grid article img{margin:0;width:auto;max-height:70px;aspect-ratio:auto;object-fit:contain;border-radius:0}
.boost-gallery .boost-grid article{padding:0;border:0;background:none;overflow:hidden}
.boost-gallery .boost-grid article img{margin:0;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--boost-radius);transition:transform .4s}
.boost-gallery .boost-grid article:hover img{transform:scale(1.03)}
.boost-gallery .boost-grid article h3{font-size:1rem;margin:10px 0 0}
.boost-carousel .boost-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}
.boost-carousel article{min-width:min(80vw,350px);scroll-snap-align:start}
.boost-cta{background:var(--boost-primary)!important;color:var(--boost-on-primary,#fff)}
.boost-cta .boost-button{background:var(--boost-on-primary,#fff);color:var(--boost-primary)}
.boost-banner{background:var(--boost-secondary);color:var(--boost-background)}
.boost-faq details{padding:18px 22px;border:1px solid color-mix(in srgb,var(--boost-text) 15%,transparent);border-radius:var(--boost-radius);background:var(--boost-background);margin:0}
.boost-faq .boost-grid{grid-template-columns:1fr!important;max-width:820px;gap:12px}
.variant-centered.boost-faq .boost-grid{margin-inline:auto}
summary{cursor:pointer;font-weight:700;list-style-position:outside}
details[open] summary{margin-bottom:8px}
.boost-opening_hours dl{display:grid;grid-template-columns:max-content 1fr;gap:10px 32px;max-width:520px;margin:24px 0 0}
.variant-centered.boost-opening_hours dl{margin-inline:auto;text-align:left}
.boost-opening_hours dt{font-weight:700}
.boost-opening_hours dd{margin:0}
.boost-contact_details address{font-style:normal;display:grid;gap:10px;margin-top:20px;font-size:1.1em}
.boost-contact-line{display:block}
a.boost-contact-line{font-weight:700;color:var(--boost-primary);text-decoration:none}
.variant-dark a.boost-contact-line{color:inherit}
.boost-map a{font-weight:700}
.boost-legal{max-width:820px}
.boost-legal h2{font-size:1.35rem;margin-top:1.6em}
.boost-comparison table{width:100%;border-collapse:collapse}
.boost-comparison th,.boost-comparison td{padding:16px;border-bottom:1px solid #ccc;text-align:left}

/* Formulaires */
label{display:block;margin:16px 0;font-weight:600;font-size:.95em}
input,textarea,select{display:block;padding:13px 14px;font:inherit;font-weight:400;max-width:100%;width:100%;border:1px solid color-mix(in srgb,var(--boost-text) 35%,transparent);border-radius:calc(var(--boost-radius)/2);background:#fff;color:#1b1b1b;margin-top:6px}
textarea{min-height:140px}
input[type=checkbox],input[type=radio]{display:inline-block;width:auto;margin:0 8px 0 0;vertical-align:middle;accent-color:var(--boost-primary)}
form{max-width:650px}
.variant-centered form{margin-inline:auto;text-align:left}
.honeypot{position:absolute;left:-9999px}
.boost-form-success{padding:16px 20px;border-left:4px solid #2f7d46;background:#eaf6ee;color:#173d24;border-radius:6px;font-weight:600}

/* Pied de page */
.boost-footer{padding-block:48px;border-top:1px solid color-mix(in srgb,currentColor 15%,transparent);display:grid;gap:6px}
.boost-footer strong{font-family:var(--boost-heading-font,inherit);font-size:1.2rem}
.boost-footer p{margin:0;opacity:.85}
.boost-footer nav{margin-top:14px;gap:8px 22px;font-size:.92em}
.footer-centered{text-align:center}.footer-centered p{margin-inline:auto}.footer-centered nav{justify-content:center}.footer-minimal{padding-block:20px}
.boost-cookie-link{background:none;color:inherit;padding:3px 0;margin:0;font-weight:400;text-decoration:underline;text-underline-offset:3px;border-radius:0}
.boost-cookie-link:hover{transform:none}

/* Bandeau de consentement */
.boost-consent{position:fixed;z-index:1000;left:16px;right:16px;bottom:16px;max-width:560px;margin-inline:auto;padding:22px 24px;background:#fff;color:#1b1b1b;border-radius:14px;box-shadow:0 18px 60px #00000040;font-size:.95rem;line-height:1.55}
.boost-consent h2{font-size:1.15rem;margin:0 0 6px;font-family:inherit}
.boost-consent p{margin:0 0 12px}
.boost-consent-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.boost-consent button{margin:0;padding:11px 18px;font-size:.95rem;background:#1b1b1b;color:#fff;border-radius:8px}
.boost-consent .boost-consent-secondary{background:#fff;color:#1b1b1b;border:2px solid #1b1b1b}
.boost-consent .boost-consent-link{background:none;color:#1b1b1b;text-decoration:underline;padding:6px}
.boost-consent-options label{display:flex;align-items:center;margin:8px 0}

/* Accessibilité */
.skip{position:absolute;top:-100px}
.skip:focus{top:0;color:#172d35;background:#fff;padding:12px;z-index:1000}
:focus-visible{outline:3px solid var(--boost-primary);outline-offset:4px}
.boost-section,.boost-wrap,.boost-grid>*{min-width:0}
.boost-section :is(h1,h2,h3,p,a,td,th){overflow-wrap:anywhere}
.boost-comparison>.boost-wrap{overflow-x:auto}
.boost-carousel .boost-grid{scroll-padding-inline:8px}
.boost-carousel .boost-grid:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.boost-header a,.boost-footer a{display:inline-block;min-height:24px}
.boost-section button:disabled{cursor:not-allowed;opacity:.6}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid currentColor;outline-offset:4px}
.boost-section input[aria-invalid=true],.boost-section textarea[aria-invalid=true]{border:2px solid #922d19}
input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px}
.boost-footer nav a{padding-block:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Conteneurs imbriqués */
.boost-columns,.boost-grid.boost-section{container-type:inline-size}
.boost-section .boost-section>.boost-wrap{padding-inline:16px}
.boost-section :is(h4,h5,h6){overflow-wrap:anywhere;line-height:1.25}
.boost-columns>.boost-wrap,.boost-grid>.boost-wrap{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:var(--boost-spacing)}
.boost-grid>.boost-section{min-width:0}
@container(max-width:600px){.boost-columns>.boost-wrap,.boost-grid.boost-section>.boost-wrap{grid-template-columns:1fr}}

/* Styles prédéfinis */
.theme-editorial h1,.theme-editorial h2{font-weight:500;letter-spacing:-.02em}
.theme-editorial .boost-hero{background:var(--boost-background);border-bottom:1px solid color-mix(in srgb,var(--boost-text) 15%,transparent)}
.theme-editorial .boost-grid article{border:0;border-top:2px solid var(--boost-text);border-radius:0;padding:22px 0 0;background:none;box-shadow:none}
.theme-editorial .boost-grid article:hover{transform:none;box-shadow:none}
.theme-editorial .boost-grid article img{margin:0 0 16px;width:100%;border-radius:0}
.theme-editorial .boost-button{border-radius:0;letter-spacing:.04em;text-transform:uppercase;font-size:.85em;padding:16px 28px}
.theme-editorial .boost-section:nth-of-type(even):not(.variant-dark):not(.variant-cover):not(.boost-hero):not(.boost-cta){background:none;border-top:1px solid color-mix(in srgb,var(--boost-text) 12%,transparent)}
.theme-bold h1,.theme-bold h2{font-weight:900;text-transform:uppercase;letter-spacing:-.01em;line-height:1.02}
.theme-bold h1{font-size:clamp(2.4rem,6.2vw,5.2rem)}
.theme-bold .boost-header{background:var(--boost-secondary)!important;color:var(--boost-background)!important;border:0}
.theme-bold .boost-hero:not(.variant-cover){background:var(--boost-secondary);color:var(--boost-background)}
.theme-bold .boost-grid article{border:2px solid var(--boost-text);box-shadow:6px 6px 0 var(--boost-primary);border-radius:4px}
.theme-bold .boost-grid article:hover{box-shadow:9px 9px 0 var(--boost-primary)}
.theme-bold .boost-button{border-radius:4px;text-transform:uppercase;letter-spacing:.05em;font-weight:900}
.theme-bold .boost-statistics .boost-grid article,.theme-bold .boost-gallery .boost-grid article{border:0;box-shadow:none}
.theme-soft .boost-grid article{border:0;border-radius:calc(var(--boost-radius) + 10px);box-shadow:0 10px 40px color-mix(in srgb,var(--boost-primary) 14%,transparent)}
.theme-soft .boost-grid article img{border-radius:calc(var(--boost-radius) + 10px) calc(var(--boost-radius) + 10px) 0 0}
.theme-soft .boost-button{border-radius:999px;padding-inline:30px}
.theme-soft .boost-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--boost-primary) 14%,var(--boost-background)),color-mix(in srgb,var(--boost-secondary) 12%,var(--boost-background)))}
.theme-soft .variant-split>.boost-wrap>img{border-radius:40% 12px 40% 12px / 30% 12px 30% 12px}
.theme-soft .boost-faq details{border:0;box-shadow:0 4px 20px #0000000f}
.theme-elegant h1,.theme-elegant h2{font-weight:400;letter-spacing:0}
.theme-elegant h2{text-align:center;margin-inline:auto}
.theme-elegant h2::after{content:"";display:block;width:48px;height:1px;margin:22px auto 0;background:var(--boost-primary)}
.theme-elegant .boost-section>.boost-wrap>p{margin-inline:auto;text-align:center}
.theme-elegant .boost-hero h2::after,.theme-elegant .boost-cta h2::after{background:currentColor}
.theme-elegant .boost-grid article{border-radius:2px;text-align:center}
.theme-elegant .boost-button{border-radius:0;background:none;color:inherit;border:1px solid currentColor;letter-spacing:.14em;text-transform:uppercase;font-size:.8em;font-weight:600;padding:16px 32px}
.theme-elegant .boost-hero .boost-button,.theme-elegant .boost-cta .boost-button{border-color:currentColor}
.theme-elegant .boost-header nav a{letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}
.theme-elegant .boost-form-success,.theme-elegant form{text-align:left}
.theme-elegant .boost-legal h2{text-align:left;margin-inline:0}.theme-elegant .boost-legal h2::after{display:none}

/* Nuit : fond sombre, accents dorés, boutons au trait, lignes fines. */
.theme-nuit h1,.theme-nuit h2{font-weight:400;letter-spacing:.01em}
.theme-nuit .boost-section:not(.boost-hero)>.boost-wrap>h2::before{content:"";display:block;width:56px;height:1px;background:var(--boost-primary);margin-bottom:22px}
.theme-nuit .variant-centered>.boost-wrap>h2::before{margin-inline:auto}
.theme-nuit .boost-header{border-bottom:1px solid color-mix(in srgb,var(--boost-primary) 30%,transparent)}
.theme-nuit .boost-header nav a{letter-spacing:.16em;text-transform:uppercase;font-size:.74rem;font-weight:500}
.theme-nuit .boost-button{border-radius:0;background:transparent;color:var(--boost-primary);border:1px solid var(--boost-primary);letter-spacing:.18em;text-transform:uppercase;font-size:.78em;font-weight:600;padding:16px 30px}
.theme-nuit .boost-button:hover{background:var(--boost-primary);color:var(--boost-on-primary);filter:none}
.theme-nuit .variant-cover .boost-button{color:#fff;border-color:#fff}
.theme-nuit .boost-section:nth-of-type(even):not(.variant-dark):not(.variant-cover):not(.boost-hero):not(.boost-cta){background:color-mix(in srgb,#fff 3%,var(--boost-background))}
.theme-nuit .boost-cta{background:color-mix(in srgb,var(--boost-primary) 14%,var(--boost-background))!important;color:var(--boost-text)}
.theme-nuit .boost-cta .boost-button{background:transparent;color:var(--boost-primary)}
.theme-nuit .boost-grid article{background:color-mix(in srgb,#fff 4%,var(--boost-background));border:1px solid color-mix(in srgb,var(--boost-primary) 22%,transparent);border-radius:0;box-shadow:none}
.theme-nuit .boost-grid article:hover{box-shadow:0 0 0 1px var(--boost-primary);transform:none}
.theme-nuit img,.theme-nuit .boost-grid article img,.theme-nuit .boost-gallery .boost-grid article img{border-radius:0}
.theme-nuit .variant-split>.boost-wrap>img{box-shadow:none;outline:1px solid color-mix(in srgb,var(--boost-primary) 45%,transparent);outline-offset:14px}
.theme-nuit .variant-cover::before{background:linear-gradient(180deg,#000000a6,#000000d9)}
.theme-nuit .variant-cover.boost-hero h1{font-size:clamp(2.6rem,7vw,5.4rem)}
.theme-nuit .boost-pricing .boost-grid{gap:0 56px}
.theme-nuit .boost-pricing .boost-grid article{display:grid;grid-template-columns:1fr auto;column-gap:18px;align-items:baseline;background:none;border:0;border-bottom:1px dashed color-mix(in srgb,var(--boost-primary) 40%,transparent);padding:18px 0}
.theme-nuit .boost-pricing .boost-grid article>*{grid-column:1}.theme-nuit .boost-pricing .boost-grid article>.boost-price{grid-column:2;grid-row:1}
.theme-nuit .boost-pricing .boost-grid article:hover{box-shadow:none}
.theme-nuit .boost-price{color:var(--boost-primary);font-weight:500;letter-spacing:.04em}
.theme-nuit input,.theme-nuit textarea,.theme-nuit select{background:transparent;color:inherit;border-color:color-mix(in srgb,var(--boost-text) 35%,transparent)}
.theme-nuit .boost-faq details{background:transparent;border-color:color-mix(in srgb,var(--boost-primary) 25%,transparent);border-radius:0}

/* Terre : sable, olive et terracotta, formes organiques, boutons arrondis. */
.theme-terre h1,.theme-terre h2{font-weight:600;letter-spacing:-.01em}
.theme-terre .boost-section:not(.boost-hero)>.boost-wrap>h2::after{content:"";display:block;width:62px;height:10px;margin-top:16px;background:radial-gradient(circle,var(--boost-primary) 3.5px,transparent 4.5px) 0 0/16px 10px repeat-x}
.theme-terre .variant-centered>.boost-wrap>h2::after{margin-inline:auto}
.theme-terre .variant-dark>.boost-wrap>h2::after{background-image:radial-gradient(circle,currentColor 3.5px,transparent 4.5px)}
.theme-terre .boost-button{border-radius:999px;padding:15px 30px}
.theme-terre .boost-section:nth-of-type(even):not(.variant-dark):not(.variant-cover):not(.boost-hero):not(.boost-cta){background:color-mix(in srgb,var(--boost-secondary) 8%,var(--boost-background))}
.theme-terre .variant-split>.boost-wrap>img{border-radius:58% 42% 46% 54% / 46% 52% 48% 54%;box-shadow:none;aspect-ratio:1/1}
.theme-terre .boost-grid article{border:0;border-radius:28px;background:color-mix(in srgb,#fff 70%,var(--boost-background));box-shadow:0 10px 34px color-mix(in srgb,var(--boost-secondary) 14%,transparent)}
.theme-terre .boost-grid article img{border-radius:28px 28px 0 0}
.theme-terre .variant-minimal .boost-grid article{background:none;box-shadow:none;border-radius:0}
.theme-terre .variant-cover.boost-hero{border-radius:0 0 56px 56px}
.theme-terre .variant-cover::before{background:linear-gradient(100deg,#1d2614d9 0%,#1d261480 55%,#1d261426 100%)}
.theme-terre .boost-carousel .boost-grid article,.theme-terre .boost-gallery .boost-grid article{padding:0;overflow:hidden;background:none;box-shadow:none}
.theme-terre .boost-carousel .boost-grid article img{margin:0;width:100%;border-radius:28px;aspect-ratio:4/5;object-fit:cover}
.theme-terre .boost-carousel .boost-grid article :is(h3,p){padding-inline:6px}
.theme-terre .boost-cta{border-radius:48px;margin-inline:max(12px,calc((100% - var(--boost-width))/2))}
.theme-terre .boost-statistics .boost-grid article{background:none;box-shadow:none}
:is(.theme-terre,.theme-epure) .variant-split+.variant-split>.boost-wrap:has(>img){grid-template-columns:1fr 1.05fr}
:is(.theme-terre,.theme-epure) .variant-split+.variant-split>.boost-wrap>img{grid-column:1}
:is(.theme-terre,.theme-epure) .variant-split+.variant-split>.boost-wrap>:not(img){grid-column:2}
.theme-terre .boost-faq details{border:0;border-radius:18px;background:color-mix(in srgb,#fff 70%,var(--boost-background))}

/* Épure : beaucoup de blanc, titres fins, boutons soulignés, grandes images. */
.theme-epure h1{font-weight:300;font-size:clamp(2.6rem,6.2vw,5.2rem);letter-spacing:-.035em;max-width:17ch}
.theme-epure h2{font-weight:300;letter-spacing:-.02em;font-size:clamp(1.9rem,3.6vw,3rem)}
.theme-epure h3{font-weight:500;letter-spacing:.01em}
.theme-epure .boost-header{border-bottom:0}
.theme-epure .boost-header nav a{font-weight:400;font-size:.9rem}
.theme-epure .boost-button{background:none;color:var(--boost-text);border-radius:0;padding:0 0 6px;border-bottom:1px solid currentColor;font-weight:500;letter-spacing:.02em}
.theme-epure .boost-button::after{content:"  →"}
.theme-epure .boost-button:hover{transform:none;filter:none;opacity:.65}
.theme-epure .boost-section:nth-of-type(even):not(.variant-dark):not(.variant-cover):not(.boost-hero):not(.boost-cta){background:none}
.theme-epure .boost-section+.boost-section:not(.variant-dark){border-top:1px solid color-mix(in srgb,var(--boost-text) 10%,transparent)}
.theme-epure .boost-hero{background:none}
.theme-epure .boost-hero:not(.variant-cover)>.boost-wrap{display:flex;flex-direction:column;align-items:flex-start}
.theme-epure .boost-hero.variant-centered>.boost-wrap{align-items:center}
.theme-epure .boost-hero:not(.variant-cover)>.boost-wrap>img{order:10;width:100%;aspect-ratio:21/9;object-fit:cover;margin-top:56px;box-shadow:none}
.theme-epure .boost-hero .boost-wrap::after{display:none}
.theme-epure img,.theme-epure .boost-grid article img{border-radius:0}
.theme-epure .boost-grid article{border:0;padding:0;background:none;box-shadow:none}
.theme-epure .boost-grid article img{margin:0 0 18px;width:100%;aspect-ratio:4/5;object-fit:cover}
.theme-epure .boost-grid article:hover{transform:none;box-shadow:none}
.theme-epure .boost-grid article:hover img{opacity:.88}
.theme-epure .variant-split>.boost-wrap>img{box-shadow:none;aspect-ratio:4/5}
.theme-epure .boost-statistics .boost-grid article h3{color:var(--boost-text);font-weight:200}
.theme-epure .boost-cards .boost-grid{counter-reset:etape}
.theme-epure .boost-cards .boost-grid article::before{counter-increment:etape;content:counter(etape,decimal-leading-zero);display:block;font-size:.8rem;letter-spacing:.24em;margin-bottom:14px;color:var(--boost-primary)}
.theme-epure .boost-cta{background:var(--boost-text)!important;color:var(--boost-background)}
.theme-epure .boost-cta .boost-button{background:none;color:inherit}
.theme-epure .boost-faq details{border-width:0 0 1px;border-radius:0;padding-inline:0;background:none}
.theme-epure input,.theme-epure textarea,.theme-epure select{border-width:0 0 1px;border-radius:0;background:transparent;padding-inline:0}
.theme-epure .boost-carousel article{min-width:min(78vw,420px)}

/* Pop : couleurs vives, gros contours, ombres décalées, surligneur. */
.theme-pop h1,.theme-pop h2{font-weight:900;letter-spacing:-.025em}
.theme-pop h1{font-size:clamp(2.6rem,7vw,5.4rem);line-height:.98}
.theme-pop .boost-section:not(.boost-hero):not(.variant-dark):not(.boost-cta)>.boost-wrap>h2{width:fit-content;background:linear-gradient(transparent 58%,#ffd84d 58%,#ffd84d 92%,transparent 92%);padding-inline:6px}
.theme-pop .boost-header{border-bottom:3px solid var(--boost-text)}
.theme-pop .boost-header nav a{font-weight:800}
.theme-pop .boost-button{border:3px solid var(--boost-text);border-radius:14px;box-shadow:5px 5px 0 var(--boost-text);font-weight:800;transition:transform .12s,box-shadow .12s}
.theme-pop .boost-button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--boost-text);filter:none}
.theme-pop .boost-hero:not(.variant-cover){background:#ffd84d}
.theme-pop .boost-hero .boost-wrap::after{display:none}
.theme-pop .variant-split>.boost-wrap>img{border:3px solid var(--boost-text);border-radius:26px;box-shadow:10px 10px 0 var(--boost-text);transform:rotate(1.5deg)}
.theme-pop .boost-section:nth-of-type(even):not(.variant-dark):not(.variant-cover):not(.boost-hero):not(.boost-cta){background:color-mix(in srgb,var(--boost-secondary) 9%,var(--boost-background))}
.theme-pop .boost-grid article{border:3px solid var(--boost-text);border-radius:18px;box-shadow:6px 6px 0 var(--boost-text)}
.theme-pop .boost-grid article:hover{transform:translate(-2px,-2px);box-shadow:9px 9px 0 var(--boost-text)}
.theme-pop .boost-grid article img{border-radius:15px 15px 0 0;border-bottom:3px solid var(--boost-text)}
.theme-pop .boost-section:not(.boost-statistics):not(.boost-gallery):not(.variant-dark) .boost-grid article:nth-child(4n+1){background:#ffe57a}
.theme-pop .boost-section:not(.boost-statistics):not(.boost-gallery):not(.variant-dark) .boost-grid article:nth-child(4n+2){background:#bfe4ff}
.theme-pop .boost-section:not(.boost-statistics):not(.boost-gallery):not(.variant-dark) .boost-grid article:nth-child(4n+3){background:#ffc9d6}
.theme-pop .boost-section:not(.boost-statistics):not(.boost-gallery):not(.variant-dark) .boost-grid article:nth-child(4n+4){background:#c4f2d2}
.theme-pop .boost-section:not(.variant-dark) .boost-grid article{color:#1a1a1a}
.theme-pop a.boost-contact-line,.theme-pop .boost-grid article a{color:var(--boost-text);text-decoration:underline 3px var(--boost-primary)}
.theme-pop .boost-gallery .boost-grid article{box-shadow:6px 6px 0 var(--boost-text)}
.theme-pop .boost-gallery .boost-grid article img{border:0;border-radius:15px}
.theme-pop .boost-statistics .boost-grid article{border:0;box-shadow:none}
.theme-pop .boost-cta{background:var(--boost-secondary)!important;color:#fff}
.theme-pop .boost-cta .boost-button{background:#ffd84d;color:#1a1a1a}
.theme-pop .boost-faq details{border:3px solid var(--boost-text);border-radius:14px;box-shadow:4px 4px 0 var(--boost-text)}
.theme-pop input,.theme-pop textarea,.theme-pop select{border:3px solid var(--boost-text);border-radius:12px}

/* Responsive */
@media(max-width:900px){.variant-split>.boost-wrap:has(>img){grid-template-columns:1fr;row-gap:24px}.variant-split>.boost-wrap>img{grid-column:1;grid-row:auto}}
@media(max-width:768px){
 .boost-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .boost-header{align-items:flex-start;flex-direction:column;gap:12px;padding-block:14px}
 .boost-header nav{flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:20px;padding-bottom:4px;scrollbar-width:none}
 .boost-header nav a{white-space:nowrap}
 .submenu{position:static;box-shadow:none}
 .variant-cover.boost-hero{min-height:auto}
}
@media(max-width:480px){
 .boost-grid{grid-template-columns:1fr}
 .boost-wrap{padding-inline:20px}
 .boost-section{padding-block:40px!important}
 .boost-hero{padding-block:56px!important}
 nav{gap:12px}
 .boost-button{display:block;text-align:center}
 .boost-header>.boost-button{display:none}
 .boost-consent{left:8px;right:8px;bottom:8px;padding:18px}
 .boost-opening_hours dl{grid-template-columns:1fr;gap:2px}
 .boost-opening_hours dd{margin-bottom:10px}
}
.boost-section.boost-grid{display:block;margin-top:0}
.theme-bold .variant-minimal .boost-grid article,.theme-soft .variant-minimal .boost-grid article,.theme-editorial .variant-minimal .boost-grid article{border:0;border-left:4px solid var(--boost-primary);border-radius:0;box-shadow:none;padding:4px 0 4px 18px;background:none}.theme-elegant .variant-minimal .boost-grid article{border:0;box-shadow:none;background:none}
.boost-consent [hidden]{display:none!important}.boost-consent h2{text-transform:none;letter-spacing:0;font-weight:700;text-align:left;margin-inline:0}.boost-consent h2::after{display:none}.boost-consent button{text-transform:none;letter-spacing:0;box-shadow:none}
/* Mention BoostIllico en pied de page (non modifiable depuis Boost CMS). */
.boost-credit{display:inline-flex;align-items:center;gap:.3em;opacity:.85}.boost-credit a{display:inline-flex;align-items:center;min-height:24px}
/* En-tête « image pleine largeur » : comme « cover », sans coins arrondis, plus haut. */
.variant-full.boost-hero{border-radius:0!important;min-height:min(92vh,880px)}
.variant-full.boost-hero>.boost-wrap>img{border-radius:0!important}
/* Bandeau d'information cookies (sites sans outil de suivi). */
.boost-cookie-notice{position:fixed;left:16px;right:16px;bottom:16px;z-index:1000;max-width:720px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 16px;background:#1d2329;color:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);font-size:.9rem;line-height:1.5}.boost-cookie-notice[hidden]{display:none}.boost-cookie-notice p{margin:0;flex:1 1 300px;color:#fff}.boost-cookie-notice a{color:#fff;text-decoration:underline}.boost-cookie-notice button{border:0;border-radius:8px;background:#fff;color:#1d2329;font-weight:700;padding:10px 16px;min-height:44px;cursor:pointer}
