/* wz-foundations */
/* Design foundations derived from the theme. Do not hand-edit: apply_design_foundations rewrites this whole block. */

:root {
    --wz-space-2xs: clamp(8px, 0.5rem + 0.2vw, 12px);
    --wz-space-xs: clamp(12px, 0.75rem + 0.3vw, 16px);
    --wz-space-s: clamp(16px, 1rem + 0.5vw, 24px);
    --wz-space-m: clamp(24px, 1.5rem + 0.8vw, 32px);
    --wz-space-l: clamp(40px, 2.5rem + 1.5vw, 60px);
    --wz-space-xl: clamp(64px, 4rem + 2.5vw, 96px);
    --wz-space-2xl: clamp(80px, 5rem + 4vw, 120px);
    --wz-space-3xl: clamp(104px, 6.5rem + 5vw, 160px);
    --wz-flow: 0.9em;
    --wz-radius-s: 26px;
    --wz-radius-m: 50px;
    --wz-radius-l: 76px;
    --wz-surface: rgba(0, 0, 0, .035);
    --wz-surface-high: rgba(0, 0, 0, .06);
    --wz-border: rgba(0, 0, 0, .14);
    --wz-text-muted: rgba(0, 0, 0, .62);
    --wz-ink: #14161a;
    --wz-ink-on: #f4f2f0;
    --wz-elev-1: 0 1px 2px rgba(17, 17, 17, .06), 0 2px 6px rgba(17, 17, 17, .05);
    --wz-elev-2: 0 1px 2px rgba(17, 17, 17, .07), 0 4px 12px rgba(17, 17, 17, .07), 0 12px 28px rgba(17, 17, 17, .06);
}

/* Vertical rhythm between sections. The theme ships 20/30/40/50 px, below the 64-96 px
   a content section needs; margin "none" stays untouched (it is glued on purpose). */
.body__wrapper .wiziblocks__item.small { margin-bottom: var(--wz-space-l); }
.body__wrapper .wiziblocks__item.medium { margin-bottom: var(--wz-space-2xl); }
.body__wrapper .wiziblocks__item.large { margin-bottom: var(--wz-space-3xl); }
.body__wrapper .wiziblocks__item:not(.small):not(.medium):not(.large):not(.none) { margin-bottom: var(--wz-space-2xl); }

/* Flow inside a block. The theme sets margin:0 and padding:0 on headings and paragraphs,
   so two paragraphs touch. The class is repeated to win over the theme rule without !important. */
body.body .wiziblocks__item.wiziblocks__item p + p { margin-top: var(--wz-flow); }
body.body .wiziblocks__item.wiziblocks__item h2 + p,
body.body .wiziblocks__item.wiziblocks__item h3 + p,
body.body .wiziblocks__item.wiziblocks__item h4 + p { margin-top: var(--wz-space-2xs); }
body.body .wiziblocks__item.wiziblocks__item p + h2,
body.body .wiziblocks__item.wiziblocks__item p + h3 { margin-top: var(--wz-space-m); }

/* Display voice "editorial": Titles become editorial: up to 96 px, set tight, the way a magazine opens a story. */
/* The theme caps a title at 48 px and font.titleSize does nothing, so the size lives here. */
body.body .wiziblocks__item.wiziblocks__item h1,
body.body .wiziblocks__item.wiziblocks__item h2 {
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: -0.02em;
    text-transform: none;
}
body.body .wiziblocks__item.wiziblocks__item h1 { font-size: clamp(2.5rem, 1rem + 5vw, 6rem); }
body.body .wiziblocks__item.wiziblocks__item h2 { font-size: clamp(2rem, 1rem + 3.2vw, 4rem); }

/* Line-height: generous on reading sizes (the theme sets 1.4 on titles and text alike). */
body.body .wiziblocks__item.wiziblocks__item h3 { line-height: 1.2; }
body.body .wiziblocks__item.wiziblocks__item p,
body.body .wiziblocks__item.wiziblocks__item li { line-height: 1.55; }

/* Measure: 45-75 characters per line. A one-column text block spans the whole container otherwise. */
body.body .wiziblocks__item.wiziblocks__item .wizi-txt--one p { max-width: 68ch; margin-inline: auto; }

/* Elevation: layered shadows. A single shadow reads as cheap; the theme ships one at 75% opacity. */
body.body .wiziBtn:hover { box-shadow: var(--wz-elev-2); }

/* Visible focus ring (WCAG 2.4.7). Keyboard only: it never shows on a mouse click. */
body.body a:focus-visible,
body.body button:focus-visible,
body.body input:focus-visible,
body.body select:focus-visible,
body.body textarea:focus-visible,
body.body [tabindex]:focus-visible {
    outline: 3px solid var(--primary-color);
    outline-offset: 2px;
    border-radius: var(--wz-radius-s);
}

/* Every header variant pins itself on mobile, so an anchor or a keyboard focus
   lands under it without this (WCAG 2.4.11 Focus Not Obscured). Values measured
   in a browser, not guessed: docs/tools/header-sticky-probe.mjs. */
html { scroll-padding-top: 70px; }
@media (min-width: 1024px) { html { scroll-padding-top: 96px; } }

/* /wz-foundations */

/* Habillage L'Harmonie du Bien-Être (classes hb-*) — 2026-10-29 */
:root {
    --hb-green: #2f5d4e;
    --hb-green-dark: #234538;
    --hb-green-soft: #dfe8e1;
    --hb-beige: #f5efe4;
    --hb-cream: #fffaf2;
    --hb-sand: #ebe0cd;
    --hb-gold: #a9844b;
    --hb-gold-light: #e3c78f;
    --hb-ink: #2b2f2c;
    --hb-muted: #5d635e;
    --hb-line: rgba(47, 93, 78, .16);
    --hb-shadow: 0 1px 2px rgba(35, 69, 56, .05), 0 8px 24px rgba(35, 69, 56, .08);
    --hb-shadow-hover: 0 2px 4px rgba(35, 69, 56, .06), 0 18px 40px rgba(35, 69, 56, .14);
    --hb-radius: 22px;
    --hb-serif: "Cormorant Garamond", Georgia, serif;
    --hb-sans: "Jost", system-ui, sans-serif;
    --hb-script: "Allura", "Cormorant Garamond", cursive;
}

/* Base */
body.body { background-color: var(--hb-beige); color: var(--hb-ink); }
body.body .wiziblocks__item.wiziblocks__item h1,
body.body .wiziblocks__item.wiziblocks__item h2,
body.body .wiziblocks__item.wiziblocks__item h3 { font-family: var(--hb-serif); color: var(--hb-green); }
body.body .wiziblocks__item.wiziblocks__item h1 em,
body.body .wiziblocks__item.wiziblocks__item h2 em { font-style: italic; color: var(--hb-gold); }
body.body .wiziblocks__item p,
body.body .wiziblocks__item li { color: var(--hb-ink); }

body.body .wiziblocks__item .wiziBtn {
    background: var(--hb-green); color: #fff; border: 1px solid var(--hb-green);
    padding: 15px 30px; margin: 0; font-family: var(--hb-sans);
    font-size: 15px; font-weight: 500; letter-spacing: .02em; text-transform: none;
    transition: background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
}
body.body .wiziblocks__item .wiziBtn::after { content: "\2192"; display: inline-block; margin-left: 10px; transition: transform .25s ease; }
body.body .wiziblocks__item .wiziBtn:hover { background: var(--hb-green-dark); border-color: var(--hb-green-dark); color: #fff; transform: translateY(-2px); }
body.body .wiziblocks__item .wiziBtn:hover::after { transform: translateX(4px); }

/* Sur-titre */
body.body .wiziblocks__item.wiziblocks__item[class*="hb-"] .wizi-txt__item > p:first-child,
body.body .wiziblocks__item.wiziblocks__item.hb-split .wizi-imgtxt__wrap > p:first-child,
body.body .wiziblocks__item.wiziblocks__item.hb-band .wizi-imgtxt__wrap > p:first-child {
    font-family: var(--hb-sans); font-size: 13px; font-weight: 500; letter-spacing: .28em;
    text-transform: uppercase; color: var(--hb-gold); margin-bottom: 14px;
}

/* En-tete */
body.body .header__content { background: rgba(255, 250, 242, .96); border-bottom: 1px solid var(--hb-line); box-shadow: 0 6px 24px rgba(35, 69, 56, .06); }
body.body .header__logo__a__img, body.body .header__logo img { max-height: 84px; width: auto; }
@media (min-width: 1024px) { body.body .header__logo { padding: 6px 0; } }
body.body .nav__a.nav__itemlvl1 {
    font-family: var(--hb-sans); font-size: 14px; font-weight: 500; letter-spacing: .06em;
    text-transform: uppercase; color: var(--hb-green);
}
body.body .nav__a.nav__itemlvl1:hover, body.body .nav__a.nav__itemlvl1.active { color: var(--hb-gold); }
body.body .nav__barAnimation { background: var(--hb-gold); }
@media (min-width: 1024px) {
    body.body .header__relative { min-height: 92px; }
    body.body .nav__maxWidth { display: flex; align-items: center; justify-content: flex-end; gap: 4px; flex-wrap: nowrap; }
    body.body .nav__a.nav__itemlvl1 { padding: 10px 12px; white-space: nowrap; }
    body.body .nav__a.nav__itemlvl1[href$="reservation.html"] {
        background: var(--hb-green); color: #fff; border-radius: 50px; padding: 12px 22px; margin-left: 10px;
    }
    body.body .nav__a.nav__itemlvl1[href$="reservation.html"]:hover { background: var(--hb-green-dark); color: #fff; }
}

/* Menu deroulant Prestations */
.hb-dd { position: relative; display: flex; align-items: center; }
.hb-dd__toggle {
    background: none; border: 0; padding: 6px; margin-left: -6px; cursor: pointer; color: var(--hb-green);
    font-size: 11px; line-height: 1; transition: transform .25s ease;
}
.hb-dd__toggle::before { content: "\f078"; font-family: "Font Awesome 6 Pro", "Font Awesome 6 Free"; font-weight: 900; }
.hb-dd__menu { display: none; }
.hb-dd__menu .nav__a.nav__itemlvl1 { text-transform: none; letter-spacing: .01em; font-size: 15px; }
@media (min-width: 1024px) {
    .hb-dd__menu {
        display: block; position: absolute; top: 100%; left: 50%; min-width: 280px; padding: 12px;
        background: var(--hb-cream); border: 1px solid var(--hb-line); border-radius: 18px; box-shadow: var(--hb-shadow-hover);
        opacity: 0; visibility: hidden; transform: translate(-50%, 8px); transition: opacity .2s ease, transform .2s ease, visibility .2s; z-index: 1000;
    }
    .hb-dd:hover .hb-dd__menu, .hb-dd:focus-within .hb-dd__menu, .hb-dd.is-open .hb-dd__menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
    .hb-dd:hover .hb-dd__toggle, .hb-dd.is-open .hb-dd__toggle { transform: rotate(180deg); }
    .hb-dd__menu .nav__a.nav__itemlvl1 { display: block; padding: 11px 16px; border-radius: 12px; color: var(--hb-ink); }
    .hb-dd__menu .nav__a.nav__itemlvl1:hover { background: var(--hb-green-soft); color: var(--hb-green); }
}
@media (max-width: 1023px) {
    .hb-dd { flex-wrap: wrap; justify-content: space-between; }
    .hb-dd > .nav__a { flex: 1; }
    .hb-dd__toggle { padding: 12px 18px; font-size: 14px; }
    .hb-dd.is-open .hb-dd__toggle { transform: rotate(180deg); }
    .hb-dd.is-open .hb-dd__menu { display: block; width: 100%; padding: 4px 0 8px 18px; border-left: 2px solid var(--hb-gold-light); margin-left: 16px; }
}

/* Hero */
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg { position: relative; min-height: clamp(520px, 78vh, 760px); display: flex; align-items: center; overflow: hidden; }
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg > picture,
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg > picture img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(90deg, rgba(25, 52, 42, .88) 0%, rgba(25, 52, 42, .62) 38%, rgba(25, 52, 42, .08) 72%, rgba(25, 52, 42, 0) 100%);
}
body.body .wiziblocks__item.hb-hero .wizi-txt.wizi-txt--withBg {
    position: relative; z-index: 2; width: 100%; max-width: 1320px; margin: 0 auto; padding: 60px clamp(20px, 5vw, 64px);
    background: none; top: auto; left: auto; transform: none;
}
body.body .wiziblocks__item.hb-hero .wizi-txt__background { background: transparent !important; padding: 0; min-width: 0; width: 100%; max-width: 640px; text-align: left; box-shadow: none; }
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg > picture { z-index: 0; }
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg > picture img { top: 0; left: 0; transform: none; max-width: none; }
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg::after { z-index: 1; }
body.body .wiziblocks__item.hb-hero .wizi-txt.wizi-txt--withBg { justify-content: flex-start; }
body.body .wiziblocks__item.wiziblocks__item.hb-hero .wizi-txt__background > p:first-child {
    font-family: var(--hb-sans); font-size: 13px; letter-spacing: .3em; text-transform: uppercase; color: var(--hb-gold-light); margin-bottom: 18px;
}
body.body .wiziblocks__item.wiziblocks__item.hb-hero h1 { color: #fff; font-size: clamp(2.5rem, 1.2rem + 3.2vw, 4.4rem); line-height: 1.04; max-width: 640px; }
body.body .wiziblocks__item.wiziblocks__item.hb-hero h1 em { color: var(--hb-gold-light); }
body.body .wiziblocks__item.wiziblocks__item.hb-hero p { color: rgba(255, 255, 255, .9); font-size: 18px; max-width: 520px; }
body.body .wiziblocks__item.hb-hero .wiziBtn__wrapper { justify-content: flex-start; text-align: left; margin-top: 32px; }
body.body .wiziblocks__item.hb-hero { --button-background: var(--hb-cream); --button-color: var(--hb-green); --button-background-hover: #ffffff; --primary-color: var(--hb-cream); --primary-color-hover: #ffffff; }
body.body .wiziblocks__item.hb-pagehero .wizi-wrapper--textOnImg { min-height: clamp(380px, 52vh, 520px); }

/* Bande d'atouts sous le hero */
body.body .wiziblocks__item.hb-strip { position: relative; z-index: 3; }
body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic {
    margin-top: -64px; background: var(--hb-cream); border-radius: var(--hb-radius); box-shadow: var(--hb-shadow);
    display: grid; grid-template-columns: repeat(4, 1fr); padding: 28px 12px;
}
body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__item {
    width: auto; max-width: none; margin: 0; padding: 4px 22px; display: grid; grid-template-columns: 48px 1fr;
    column-gap: 14px; align-items: center; text-align: left; border-right: 1px solid var(--hb-line);
}
body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__item:last-child { border-right: 0; }
body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__icon { grid-column: 1; grid-row: 1 / span 2; margin: 0; font-size: 26px; }
body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__title,
body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__text { grid-column: 2; width: auto; text-align: left; }
body.body .wiziblocks__item.wiziblocks__item.hb-strip h3 { font-family: var(--hb-sans); font-size: 15px; font-weight: 600; color: var(--hb-green); margin: 0; }
body.body .wiziblocks__item.wiziblocks__item.hb-strip .wizi-rassuranceClassic__text p { font-size: 14px; color: var(--hb-muted); margin: 2px 0 0; }

/* Titres de section */
body.body .wiziblocks__item.hb-head .wizi-txt__item { text-align: center; }
body.body .wiziblocks__item.wiziblocks__item.hb-head h2 { font-size: clamp(2rem, 1.2rem + 2.4vw, 3.2rem); line-height: 1.1; max-width: 860px; margin: 0 auto; }
body.body .wiziblocks__item.wiziblocks__item.hb-head h1 { font-size: clamp(2.6rem, 1.4rem + 3.5vw, 4.4rem); }
body.body .wiziblocks__item.hb-head h2::after,
body.body .wiziblocks__item.hb-head h1::after {
    content: ""; display: block; width: 72px; height: 10px; margin: 22px auto 0;
    background: radial-gradient(circle, var(--hb-gold) 0 3px, transparent 3.5px) center / 10px 10px no-repeat,
                linear-gradient(var(--hb-gold), var(--hb-gold)) left center / 28px 1px no-repeat,
                linear-gradient(var(--hb-gold), var(--hb-gold)) right center / 28px 1px no-repeat;
}
body.body .wiziblocks__item.wiziblocks__item.hb-head p:not(:first-child) { color: var(--hb-muted); font-size: 17px; margin-top: 18px; }
body.body .wiziblocks__item.hb-pagehead { padding-top: clamp(24px, 4vw, 56px); }

/* Cartes prestations */
body.body .wiziblocks__item.hb-cards .wizi-img--quadruple {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px; padding: 0 clamp(16px, 3vw, 40px);
}
body.body .wiziblocks__item.hb-cards .wizi-img__content {
    width: auto; max-width: none; margin: 0; padding: 0; display: flex; flex-direction: column;
    background: var(--hb-cream); border-radius: var(--hb-radius); overflow: hidden; box-shadow: var(--hb-shadow);
}
body.body .wiziblocks__item.hb-cards .wizi-img__content__wrapper { width: 100%; margin: 0; overflow: hidden; }
body.body .wiziblocks__item.hb-cards .wizi-img__content__wrapper img { width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; }
body.body .wiziblocks__item.hb-cards .wizi-img__content > div:last-child { padding: 24px 24px 28px; text-align: left; flex: 1; display: flex; flex-direction: column; }
body.body .wiziblocks__item.wiziblocks__item.hb-cards h3 { font-size: 28px; line-height: 1.1; font-weight: 600; margin: 0; }
body.body .wiziblocks__item.wiziblocks__item.hb-cards h3 + p { margin-top: 4px; }
body.body .wiziblocks__item.hb-cards p em { color: var(--hb-gold); font-family: var(--hb-serif); font-size: 18px; }
body.body .wiziblocks__item.hb-cards p { font-size: 15px; color: var(--hb-muted); text-align: left; }
body.body .wiziblocks__item.hb-cards p:last-child { margin-top: auto; padding-top: 16px; }
body.body .wiziblocks__item.hb-cards p:last-child a {
    color: var(--hb-green); font-weight: 600; font-size: 14px; letter-spacing: .04em; text-decoration: none;
    border-bottom: 1px solid var(--hb-gold-light); padding-bottom: 3px;
}
body.body .wiziblocks__item.hb-cards p:last-child a::after { content: " \2192"; }

/* Image + texte : image de la meme hauteur que le texte */
body.body .wiziblocks__item.hb-split .wizi-imgtxt,
body.body .wiziblocks__item.hb-band .wizi-imgtxt {
    display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 80px); align-items: stretch;
    max-width: 1280px; margin: 0 auto; padding: 0 clamp(16px, 3vw, 40px);
}
body.body .wiziblocks__item.hb-split .wizi-imgtxt__left,
body.body .wiziblocks__item.hb-band .wizi-imgtxt__left { width: auto; max-width: none; height: auto; margin: 0; padding: 0; position: relative; min-height: 360px; }
body.body .wiziblocks__item.hb-split .wizi-imgtxt__left picture,
body.body .wiziblocks__item.hb-band .wizi-imgtxt__left picture { position: absolute; inset: 0; }
body.body .wiziblocks__item.hb-split .wizi-imgtxt__left img,
body.body .wiziblocks__item.hb-band .wizi-imgtxt__left img {
    width: 100%; height: 100%; object-fit: cover; border-radius: var(--hb-radius); box-shadow: var(--hb-shadow);
}
body.body .wiziblocks__item.hb-split .wizi-imgtxt__right,
body.body .wiziblocks__item.hb-band .wizi-imgtxt__right { width: auto; max-width: none; margin: 0; padding: clamp(8px, 2vw, 32px) 0; display: flex; align-items: center; text-align: left; }
body.body .wiziblocks__item.hb-split .wizi-imgtxt__wrap,
body.body .wiziblocks__item.hb-band .wizi-imgtxt__wrap { text-align: left; max-width: 560px; margin: 0; padding: 0; }
body.body .wiziblocks__item.wiziblocks__item.hb-split h2,
body.body .wiziblocks__item.wiziblocks__item.hb-band h2 { font-size: clamp(2rem, 1.2rem + 2.2vw, 3.2rem); line-height: 1.08; }
body.body .wiziblocks__item.hb-split .wizi-imgtxt__wrap p { color: var(--hb-muted); font-size: 16.5px; }
body.body .wiziblocks__item.hb-split .wiziBtn__wrapper,
body.body .wiziblocks__item.hb-band .wiziBtn__wrapper { justify-content: flex-start; text-align: left; margin-top: 30px; }

/* Bande verte Zoom sur */
body.body .wiziblocks__item.hb-band { background: var(--hb-green); padding: clamp(56px, 7vw, 110px) 0; position: relative; overflow: hidden; }
body.body .wiziblocks__item.hb-band::before {
    content: ""; position: absolute; width: 520px; height: 520px; right: -160px; top: -180px; border-radius: 50%;
    border: 1px solid rgba(227, 199, 143, .25); box-shadow: 0 0 0 40px rgba(255, 255, 255, .02), 0 0 0 80px rgba(255, 255, 255, .02);
}
body.body .wiziblocks__item.wiziblocks__item.hb-band h2 { color: #fff; }
body.body .wiziblocks__item.wiziblocks__item.hb-band .wizi-imgtxt__wrap > p:first-child { color: var(--hb-gold-light); }
body.body .wiziblocks__item.hb-band p, body.body .wiziblocks__item.hb-band li { color: rgba(255, 255, 255, .86); }
body.body .wiziblocks__item.hb-band p em { color: var(--hb-gold-light); font-family: var(--hb-serif); font-size: 21px; }
body.body .wiziblocks__item.hb-band { --button-background: var(--hb-cream); --button-color: var(--hb-green); --button-background-hover: #ffffff; --primary-color: var(--hb-cream); --primary-color-hover: #ffffff; }

/* Listes a puces */
body.body .wiziblocks__item[class*="hb-"] ul { list-style: none; padding: 0; margin: 18px 0 0; }
body.body .wiziblocks__item[class*="hb-"] ul li { position: relative; padding: 7px 0 7px 32px; }
body.body .wiziblocks__item[class*="hb-"] ul li::before {
    content: "\f06c"; font-family: "Font Awesome 6 Pro", "Font Awesome 6 Free"; font-weight: 900;
    position: absolute; left: 0; top: 9px; font-size: 14px; color: var(--hb-gold);
}
body.body .wiziblocks__item.hb-band ul li::before { color: var(--hb-gold-light); }

/* Atouts */
body.body .wiziblocks__item.hb-features .wizi-rassuranceClassic { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 0 clamp(16px, 3vw, 40px); }
body.body .wiziblocks__item.hb-features .wizi-rassuranceClassic__item {
    width: auto; max-width: none; margin: 0; padding: 30px 20px; text-align: center;
    background: var(--hb-cream); border-radius: var(--hb-radius); border: 1px solid var(--hb-line);
}
body.body .wiziblocks__item.hb-features .wizi-rassuranceClassic__icon {
    width: 68px; height: 68px; margin: 0 auto 16px; border-radius: 50%; background: var(--hb-green-soft);
    display: flex; align-items: center; justify-content: center; font-size: 26px;
}
body.body .wiziblocks__item.wiziblocks__item.hb-features h3 { font-size: 22px; font-weight: 600; margin: 0; }
body.body .wiziblocks__item.hb-features .wizi-rassuranceClassic__text p { font-size: 14.5px; color: var(--hb-muted); margin-top: 6px; }

/* Formules */
body.body .wiziblocks__item.hb-pricing .wizi-txt--triple { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; padding: 0 clamp(16px, 3vw, 40px); align-items: stretch; }
body.body .wiziblocks__item.hb-pricing .wizi-txt__item {
    width: auto; max-width: none; margin: 0; padding: 38px 34px 34px; text-align: left; display: flex; flex-direction: column;
    background: var(--hb-cream); border: 1px solid var(--hb-line); border-radius: var(--hb-radius); box-shadow: var(--hb-shadow);
}
body.body .wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) { background: var(--hb-green); border-color: var(--hb-green); transform: translateY(-10px); }
body.body .wiziblocks__item.wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) h3 { color: #fff; }
body.body .wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) p,
body.body .wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) li { color: rgba(255, 255, 255, .88); }
body.body .wiziblocks__item.wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) > p:first-child { color: var(--hb-gold-light); }
body.body .wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) li::before { color: var(--hb-gold-light); }
body.body .wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) { --button-background: var(--hb-cream); --button-color: var(--hb-green); --button-background-hover: #ffffff; --primary-color: var(--hb-cream); --primary-color-hover: #ffffff; }
body.body .wiziblocks__item.wiziblocks__item.hb-pricing h3 { font-size: clamp(2rem, 1.4rem + 1.4vw, 2.7rem); line-height: 1; margin: 0 0 6px; }
body.body .wiziblocks__item.hb-pricing .wiziBtn__wrapper { margin-top: auto; padding-top: 26px; justify-content: center; }
body.body .wiziblocks__item.hb-pricing .wiziBtn { width: 100%; justify-content: center; text-align: center; }

/* Grille de tarifs detaillee */
body.body .wiziblocks__item.hb-tarifs ul,
body.body .wiziblocks__item.hb-pricing--full ul { margin-top: 10px; }
body.body .wiziblocks__item.hb-tarifs ul { background: var(--hb-cream); border-radius: var(--hb-radius); padding: 10px clamp(20px, 4vw, 40px); box-shadow: var(--hb-shadow); max-width: 820px; margin: 26px auto 0; }
body.body .wiziblocks__item.hb-tarifs ul li,
body.body .wiziblocks__item.hb-pricing--full ul li {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 20px; align-items: center;
    padding: 16px 0; border-bottom: 1px dashed var(--hb-line); font-size: 14.5px; color: var(--hb-muted); text-align: left;
}
body.body .wiziblocks__item.hb-tarifs ul li:last-child,
body.body .wiziblocks__item.hb-pricing--full ul li:last-child { border-bottom: 0; }
body.body .wiziblocks__item.hb-tarifs ul li::before,
body.body .wiziblocks__item.hb-pricing--full ul li::before { display: none; }
body.body .wiziblocks__item.hb-tarifs ul li strong,
body.body .wiziblocks__item.hb-pricing--full ul li strong { grid-column: 1; display: block; font-size: 16px; font-weight: 600; color: var(--hb-ink); }
body.body .wiziblocks__item.hb-tarifs ul li em,
body.body .wiziblocks__item.hb-pricing--full ul li em {
    grid-column: 2; grid-row: 1 / span 2; font-style: normal; font-family: var(--hb-serif); font-size: 28px; font-weight: 600;
    color: var(--hb-green); white-space: nowrap;
}
body.body .wiziblocks__item.hb-pricing--full .wizi-txt__item:nth-child(2) ul li { border-bottom-color: rgba(255, 255, 255, .18); }
body.body .wiziblocks__item.hb-pricing--full .wizi-txt__item:nth-child(2) ul li strong,
body.body .wiziblocks__item.hb-pricing--full .wizi-txt__item:nth-child(2) ul li em { color: #fff; }
body.body .wiziblocks__item.hb-tarifs .wiziBtn__wrapper { justify-content: center; margin-top: 34px; }

/* Galerie */
body.body .wiziblocks__item.hb-gallery .wizi-img--quadruple { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1.3fr; gap: 18px; padding: 0 clamp(16px, 3vw, 40px); }
body.body .wiziblocks__item.hb-gallery .wizi-img__content { width: auto; max-width: none; margin: 0; padding: 0; border-radius: var(--hb-radius); overflow: hidden; }
body.body .wiziblocks__item.hb-gallery .wizi-img__content img { width: 100%; height: 340px; object-fit: cover; }
body.body .wiziblocks__item.hb-gallery .wizi-img__content:nth-child(even) img { height: 300px; margin-top: 40px; }

/* Appel a l'action vert */
body.body .wiziblocks__item.hb-cta { overflow: hidden; }
body.body .wiziblocks__item.hb-cta .wizi-wrapper--txtOneBackground { position: relative; padding: clamp(64px, 8vw, 110px) 20px; }
body.body .wiziblocks__item.hb-cta .wizi-wrapper__background { background: var(--hb-green); }
body.body .wiziblocks__item.hb-cta .wizi-wrapper--txtOneBackground::before,
body.body .wiziblocks__item.hb-cta .wizi-wrapper--txtOneBackground::after {
    content: "\f06c"; font-family: "Font Awesome 6 Pro", "Font Awesome 6 Free"; font-weight: 300; position: absolute; z-index: 1;
    font-size: 160px; color: rgba(227, 199, 143, .12); top: 50%; transform: translateY(-50%) rotate(-25deg); left: 6%;
}
body.body .wiziblocks__item.hb-cta .wizi-wrapper--txtOneBackground::after { left: auto; right: 6%; transform: translateY(-50%) rotate(155deg) scaleX(-1); }
body.body .wiziblocks__item.hb-cta .wizi-txt { position: relative; z-index: 2; }
body.body .wiziblocks__item.hb-cta .wizi-txt__item { background: none; }
body.body .wiziblocks__item.wiziblocks__item.hb-cta .wizi-txt__item > p:first-child {
    font-family: var(--hb-script); font-size: clamp(30px, 2vw + 18px, 44px); letter-spacing: 0; text-transform: none; color: var(--hb-gold-light); margin-bottom: 6px;
}
body.body .wiziblocks__item.wiziblocks__item.hb-cta h2 { color: #fff; font-size: clamp(2.2rem, 1.4rem + 2.4vw, 3.6rem); }
body.body .wiziblocks__item.hb-cta p { color: rgba(255, 255, 255, .85); }
body.body .wiziblocks__item.hb-cta .wiziBtn__wrapper { justify-content: center; margin-top: 30px; }
body.body .wiziblocks__item.hb-cta { --button-background: var(--hb-gold-light); --button-color: var(--hb-green-dark); --button-background-hover: var(--hb-cream); --primary-color: var(--hb-gold-light); --primary-color-hover: var(--hb-cream); }

/* Bienfaits / contre-indications */
body.body .wiziblocks__item.hb-duo .wizi-txt--double { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; padding: 0 clamp(16px, 3vw, 40px); max-width: 1280px; margin: 0 auto; }
body.body .wiziblocks__item.hb-duo .wizi-txt__item {
    width: auto; max-width: none; margin: 0; padding: clamp(28px, 4vw, 48px); text-align: left;
    background: var(--hb-cream); border-radius: var(--hb-radius); box-shadow: var(--hb-shadow);
}
body.body .wiziblocks__item.hb-duo .wizi-txt__item:nth-child(2) { background: transparent; border: 1px solid var(--hb-sand); box-shadow: none; }
body.body .wiziblocks__item.wiziblocks__item.hb-duo h3 { font-size: clamp(1.9rem, 1.3rem + 1.2vw, 2.5rem); margin: 0; }
body.body .wiziblocks__item.hb-duo .wizi-txt__item:nth-child(1) li::before { content: "\f00c"; color: var(--hb-green); }
body.body .wiziblocks__item.hb-duo .wizi-txt__item:nth-child(2) li::before { content: "\f071"; color: #b0704f; font-size: 13px; }
body.body .wiziblocks__item.wiziblocks__item.hb-duo .wizi-txt__item:nth-child(2) > p:first-child { color: #b0704f; }
body.body .wiziblocks__item.hb-duo ul + p { margin-top: 20px; padding: 16px 18px; border-radius: 14px; background: rgba(169, 132, 75, .08); font-size: 14px; color: var(--hb-muted); }

/* FAQ */
body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item {
    margin-bottom: 14px; border-radius: 16px; overflow: hidden; border: 1px solid var(--hb-sand); background: var(--hb-cream);
    box-shadow: 0 1px 2px rgba(35, 69, 56, .04); transition: box-shadow .25s ease;
}
body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item:hover { box-shadow: var(--hb-shadow); }
body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item__head {
    padding: 22px 26px; font-family: var(--hb-sans); font-size: 17px; font-weight: 500; color: var(--hb-green); cursor: pointer; border: 0; background: transparent;
}
body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item__head__icon {
    width: 34px; height: 34px; border-radius: 50%; background: var(--hb-green-soft); display: flex; align-items: center; justify-content: center; flex: 0 0 34px;
}
body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item__body { padding: 0 26px 24px; border: 0; background: transparent; }
body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item__body p { color: var(--hb-muted); font-size: 16px; }

/* Contact */
body.body .wiziblocks__item.hb-contact .wizi-txt--double { display: grid; grid-template-columns: 1fr 1fr; gap: 0; max-width: 1320px; margin: 0 auto; border-radius: 28px; overflow: hidden; box-shadow: var(--hb-shadow); }
body.body .wiziblocks__item.hb-contact .wizi-txt__item { width: auto; max-width: none; margin: 0; padding: clamp(36px, 6vw, 96px); text-align: left; position: relative; overflow: hidden; }
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) { background: #ece3d3; display: flex; flex-wrap: wrap; align-items: center; align-content: flex-start; }
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1)::after {
    content: ""; position: absolute; width: 440px; height: 440px; border-radius: 50%; right: -140px; bottom: -180px; background: rgba(47, 93, 78, .06); pointer-events: none;
}
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > * { width: 100%; position: relative; z-index: 1; }
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(2) { background: #f7f1e6; }
body.body .wiziblocks__item.wiziblocks__item.hb-contact h2 { font-size: clamp(2.4rem, 1.4rem + 2.6vw, 3.8rem); line-height: 1.05; margin-bottom: 36px; color: var(--hb-ink); }
body.body .wiziblocks__item.wiziblocks__item.hb-contact h4 {
    position: relative; padding-left: 92px; margin: 26px 0 4px; font-family: var(--hb-sans); font-size: 13px; font-weight: 500;
    letter-spacing: .28em; text-transform: uppercase; color: var(--hb-green);
}
body.body .wiziblocks__item.hb-contact h4::before {
    position: absolute; left: 0; top: -6px; width: 68px; height: 68px; border-radius: 16px; background: var(--hb-cream);
    display: flex; align-items: center; justify-content: center; font-family: "Font Awesome 6 Pro", "Font Awesome 6 Free";
    font-weight: 900; font-size: 22px; letter-spacing: 0; color: var(--hb-green); box-shadow: 0 1px 2px rgba(35, 69, 56, .05);
}
body.body .wiziblocks__item.hb-contact h4:nth-of-type(1)::before { content: "\f3c5"; }
body.body .wiziblocks__item.hb-contact h4:nth-of-type(2)::before { content: "\f095"; }
body.body .wiziblocks__item.hb-contact h4:nth-of-type(3)::before { content: "\f0e0"; }
body.body .wiziblocks__item.hb-contact h4:nth-of-type(4)::before { content: "\f16d"; font-family: "Font Awesome 6 Brands"; font-weight: 400; }
body.body .wiziblocks__item.wiziblocks__item.hb-contact h4 + p { padding-left: 92px; margin-top: 4px; font-size: 18px; min-height: 40px; }
body.body .wiziblocks__item.hb-contact h4 + p a { color: var(--hb-ink); text-decoration: none; border-bottom: 1px solid rgba(47, 93, 78, .3); }
body.body .wiziblocks__item.hb-contact h4 + p a:hover { color: var(--hb-green); border-color: var(--hb-green); }
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) .wiziBtn__wrapper { order: 1; width: auto; margin: 40px 16px 0 0; justify-content: flex-start; }
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type { order: 2; width: auto; margin: 40px 0 0; padding: 0; }
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type a {
    display: inline-block; padding: 14px 28px; border: 1px solid var(--hb-green); border-radius: 50px; color: var(--hb-green);
    font-weight: 500; font-size: 15px; text-decoration: none; transition: background .25s ease, color .25s ease;
}
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type a:hover { background: var(--hb-green); color: #fff; }
body.body .wiziblocks__item.wiziblocks__item.hb-contact .wizi-txt__item:nth-child(2) p {
    display: flex; justify-content: space-between; gap: 16px; margin: 0; padding: 20px 0; font-size: 17px; border-bottom: 1px solid var(--hb-line);
}
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(2) p:last-child { border-bottom: 0; }
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(2) p strong { font-weight: 400; color: var(--hb-ink); }
body.body .wiziblocks__item.hb-map .wizi-map { border-radius: 28px; overflow: hidden; box-shadow: var(--hb-shadow); max-width: 1320px; margin: 0 auto; }
body.body .wiziblocks__item.hb-map .map { min-height: 420px; }

/* Reservation Planity */
body.body .wiziblocks__item.hb-planity > * { max-width: 1100px; margin-left: auto; margin-right: auto; }

/* Mentions legales */
body.body .wiziblocks__item.hb-legal .wizi-txt__item { background: var(--hb-cream); border-radius: var(--hb-radius); padding: clamp(28px, 5vw, 64px); text-align: left; }
body.body .wiziblocks__item.wiziblocks__item.hb-legal h3 { font-size: 28px; margin: 32px 0 8px; }
body.body .wiziblocks__item.wiziblocks__item.hb-legal h3:first-child { margin-top: 0; }
body.body .wiziblocks__item.hb-legal p { color: var(--hb-muted); }
body.body .page-info h1, body.body .wrapper h1.title, body.body .cms__title { font-family: var(--hb-serif); color: var(--hb-green); }

/* Pied de page */
body.body .footer { background: var(--hb-green-dark); color: var(--hb-beige); }
body.body .footer .footer__wrapper { position: relative; padding-top: 216px; }
body.body .footer .footer__wrapper::before {
    content: ""; position: absolute; top: 36px; left: 50%; transform: translateX(-50%); width: 150px; height: 150px;
    background: url("https://media.cdnws.com/_i/426687/RAW-260/3964/62/logo-rond4-transparent.png") center / contain no-repeat;
}
body.body .footer p[class*="title"] { font-family: var(--hb-serif); font-size: 24px; text-transform: none; letter-spacing: 0; color: var(--hb-gold-light); }
body.body .footer a, body.body .footer p, body.body .footer li { color: rgba(245, 239, 228, .86); }
body.body .footer a:hover { color: var(--hb-gold-light); }

/* Tablette */
@media (max-width: 1100px) {
    body.body .wiziblocks__item.hb-cards .wizi-img--quadruple,
    body.body .wiziblocks__item.hb-features .wizi-rassuranceClassic { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic { grid-template-columns: repeat(2, 1fr); row-gap: 20px; }
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__item:nth-child(2) { border-right: 0; }
    body.body .wiziblocks__item.hb-pricing .wizi-txt--triple { grid-template-columns: 1fr; max-width: 640px; margin: 0 auto; }
    body.body .wiziblocks__item.hb-pricing .wizi-txt__item:nth-child(2) { transform: none; }
    body.body .wiziblocks__item.hb-gallery .wizi-img--quadruple { grid-template-columns: 1fr 1fr; }
    body.body .wiziblocks__item.hb-gallery .wizi-img__content img,
    body.body .wiziblocks__item.hb-gallery .wizi-img__content:nth-child(even) img { height: 280px; margin-top: 0; }
}
@media (max-width: 900px) {
    body.body .wiziblocks__item.hb-split .wizi-imgtxt,
    body.body .wiziblocks__item.hb-band .wizi-imgtxt,
    body.body .wiziblocks__item.hb-duo .wizi-txt--double,
    body.body .wiziblocks__item.hb-contact .wizi-txt--double { grid-template-columns: 1fr; }
    body.body .wiziblocks__item.hb-split .wizi-imgtxt__left,
    body.body .wiziblocks__item.hb-band .wizi-imgtxt__left { min-height: 0; aspect-ratio: 4 / 3; }
}

/* Telephone */
@media (max-width: 640px) {
    body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg { min-height: 560px; align-items: flex-end; }
    body.body .wiziblocks__item.hb-pagehero .wizi-wrapper--textOnImg { min-height: 420px; }
    body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg::after { background: linear-gradient(0deg, rgba(25, 52, 42, .92) 0%, rgba(25, 52, 42, .7) 45%, rgba(25, 52, 42, .15) 100%); }
    body.body .wiziblocks__item.hb-hero .wizi-txt.wizi-txt--withBg { padding: 40px 20px 92px; }
    body.body .wiziblocks__item.hb-pagehero .wizi-txt.wizi-txt--withBg { padding-bottom: 44px; }
    body.body .wiziblocks__item.wiziblocks__item.hb-hero p { font-size: 16px; }
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic { margin: -56px 16px 0; padding: 20px 6px; }
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__item { padding: 4px 12px; grid-template-columns: 36px 1fr; column-gap: 10px; }
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__icon { font-size: 21px; }
    body.body .wiziblocks__item.wiziblocks__item.hb-strip h3 { font-size: 13.5px; }
    body.body .wiziblocks__item.wiziblocks__item.hb-strip .wizi-rassuranceClassic__text p { font-size: 12.5px; }
    body.body .wiziblocks__item.hb-cards .wizi-img--quadruple { grid-template-columns: 1fr; gap: 20px; }
    body.body .wiziblocks__item.hb-features .wizi-rassuranceClassic { grid-template-columns: 1fr 1fr; gap: 12px; }
    body.body .wiziblocks__item.hb-features .wizi-rassuranceClassic__item { padding: 22px 12px; }
    body.body .wiziblocks__item.wiziblocks__item.hb-features h3 { font-size: 18px; }
    body.body .wiziblocks__item.hb-gallery .wizi-img--quadruple { gap: 10px; }
    body.body .wiziblocks__item.hb-gallery .wizi-img__content img,
    body.body .wiziblocks__item.hb-gallery .wizi-img__content:nth-child(even) img { height: 170px; }
    body.body .wiziblocks__item.hb-cta .wizi-wrapper--txtOneBackground::before,
    body.body .wiziblocks__item.hb-cta .wizi-wrapper--txtOneBackground::after { font-size: 90px; opacity: .7; }
    body.body .wiziblocks__item.wiziblocks__item.hb-contact h4 { padding-left: 72px; }
    body.body .wiziblocks__item.hb-contact h4::before { width: 54px; height: 54px; font-size: 19px; border-radius: 14px; top: -4px; }
    body.body .wiziblocks__item.wiziblocks__item.hb-contact h4 + p { padding-left: 72px; font-size: 16px; }
    body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) .wiziBtn__wrapper,
    body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type { width: 100%; margin-right: 0; }
    body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type { margin-top: 14px; }
    body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type a,
    body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) .wiziBtn { display: block; width: 100%; text-align: center; }
    body.body .wiziblocks__item.hb-tarifs ul li em,
    body.body .wiziblocks__item.hb-pricing--full ul li em { font-size: 23px; }
}

/* Correctifs mise en page L'Harmonie — 2026-10-29 */
body.body .wiziblocks__item[class*="hb-"] .wizi-rassuranceClassic__icon { position: static; left: auto; top: auto; transform: none; }
body.body .wiziblocks__item[class*="hb-"] .wizi-rassuranceClassic__icon i { margin: 0; font-size: inherit; line-height: 1; }
body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__icon { width: 48px; height: 48px; border-radius: 50%; background: var(--hb-green-soft); display: flex; align-items: center; justify-content: center; font-size: 20px; }
#c1-body .wiziblocks__item .wiziBtn { border-radius: 50px !important; }
body.body .wiziblocks__item.hb-split .wizi-imgtxt__wrap .wiziBtn__wrapper,
body.body .wiziblocks__item.hb-band .wizi-imgtxt__wrap .wiziBtn__wrapper,
body.body .wiziblocks__item.hb-hero .wizi-txt__background .wiziBtn__wrapper,
body.body .wiziblocks__item.hb-contact .wizi-txt__item .wiziBtn__wrapper { justify-content: flex-start !important; }
body.body .wiziblocks__item.hb-band > .wizi-wrapper { padding: clamp(56px, 7vw, 110px) 0; }
body.body .wiziblocks__item.hb-gallery .wizi-img--quadruple { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.body .wiziblocks__item.hb-gallery .wizi-img__content img,
body.body .wiziblocks__item.hb-gallery .wizi-img__content:nth-child(even) img { height: 320px; margin-top: 0; }
@media (max-width: 1100px) {
    body.body .wiziblocks__item.hb-gallery .wizi-img--quadruple { grid-template-columns: 1fr 1fr; }
    body.body .wiziblocks__item.hb-gallery .wizi-img__content img,
    body.body .wiziblocks__item.hb-gallery .wizi-img__content:nth-child(even) img { height: 260px; }
}
@media (max-width: 640px) {
    body.body .wiziblocks__item.hb-gallery .wizi-img__content img,
    body.body .wiziblocks__item.hb-gallery .wizi-img__content:nth-child(even) img { height: 170px; }
}

/* Correctifs 2 L'Harmonie (tarifs, contact, FAQ, menu) — 2026-10-29 */
body.body .wiziblocks__item.hb-tarifs ul li { padding-left: clamp(20px, 4vw, 40px); padding-right: clamp(20px, 4vw, 40px); }
body.body .wiziblocks__item.hb-tarifs ul { padding: 6px 0; }
body.body .wiziblocks__item.wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type,
body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) .wiziBtn__wrapper { width: auto; min-width: 0; flex: 0 0 auto; }
body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item__head { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
body.body .nav__barAnimation { display: none; }
body.body .nav__a.nav__itemlvl1,
body.body .nav__a.nav__itemlvl1.active,
body.body .nav__a.nav__itemlvl1:hover { box-shadow: none; text-decoration: none; }
@media (min-width: 1024px) { body.body .nav__a.nav__itemlvl1, body.body .nav__a.nav__itemlvl1.active, body.body .nav__a.nav__itemlvl1:hover { border-bottom: 0; } }
@media (max-width: 1023px) { body.body .nav__a.nav__itemlvl1.active { border-bottom-color: var(--hb-line); } }
body.body .nav__a.nav__itemlvl1::after, body.body .nav__a.nav__itemlvl1::before { display: none; }
@media (max-width: 640px) {
    body.body .wiziblocks__item.wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) > p:last-of-type,
    body.body .wiziblocks__item.hb-contact .wizi-txt__item:nth-child(1) .wiziBtn__wrapper { width: 100%; flex: 0 0 100%; }
    body.body .wiziblocks__item.hb-faq .wz-faq-accordion__wrapper__item__head { padding: 18px; font-size: 16px; }
}

/* Correctifs 3 L'Harmonie (mobile : en-tete, menu, atouts) — 2026-10-29 */
@media (max-width: 1023px) {
    body.body .header__relative { background: var(--hb-cream); }
    body.body .header__nav__icon__span { background: var(--hb-green); }
    body.body .header__nav__icon__text { color: var(--hb-green); }
    body.body .header__logo, body.body .header__logo .header__h1, body.body .header__logo__a, body.body .header__logo picture { width: auto; max-width: calc(100vw - 90px); overflow: visible; }
    /* Logo mobile : le logo horizontal remplace l'ancien logo mobile du modele */
    body.body .header__logo__a__img { content: url("https://media.cdnws.com/_i/426687/RAW-262/3427/64/logo-rond4-entete.png"); max-height: 50px; width: auto; max-width: calc(100vw - 100px); object-fit: contain; }
    body.body .nav .nav__wrapper, body.body .nav { background: var(--hb-cream); }
    body.body .nav__maxWidth > .hb-dd { width: 100%; flex: 0 0 100%; border-bottom: 1px solid var(--hb-line); }
    body.body .hb-dd > .nav__a { flex: 1 1 auto; width: auto; }
    body.body .nav__a.nav__itemlvl1 { color: var(--hb-green); border-bottom: 1px solid var(--hb-line); }
    body.body .hb-dd > .nav__a.nav__itemlvl1 { border-bottom: 0; }
    body.body .hb-dd__menu .nav__a.nav__itemlvl1 { font-size: 15px; border-bottom: 0; padding-top: 12px; padding-bottom: 12px; }
    body.body .nav .nav__a.nav__itemlvl1:not([href$="reservation.html"]) { background-color: transparent !important; }
    body.body .nav__a.nav__itemlvl1[href$="reservation.html"] { background: var(--hb-green); color: #fff; }
    body.body .nav .hb-dd__menu { background: transparent !important; }
    body.body .hb-dd__toggle { background: transparent; align-self: stretch; }
    body.body .hb-dd.is-open .hb-dd__menu { margin: 0 0 10px 24px; width: calc(100% - 24px); }
}
@media (max-width: 640px) {
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 6px 8px; }
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__title,
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__text { text-align: center; }
    body.body .wiziblocks__item.hb-strip .wizi-rassuranceClassic__icon { width: 42px; height: 42px; font-size: 17px; }
}

/* Aucun effet de mouvement sur les photos et sections — 2026-10-29 */
/* Pas d'apparition animee des sections au defilement, ni de zoom / deplacement des photos au survol */
body.body .wiziblocks__item,
body.body .wiziblocks__item.wizi-loading { transition: none; animation: none; opacity: 1; transform: none; }
body.body .wiziblocks__item img,
body.body .wiziblocks__item picture,
body.body .wiziblocks__item a:hover img,
body.body .wiziblocks__item img:hover { transition: none; animation: none; transform: none; opacity: 1; }
body.body .wiziblocks__item.hb-hero .wizi-wrapper--textOnImg > picture img { transform: none; }

/* Recadrage des photos (sans effet de mouvement) — 2026-10-29 */
body.body .wiziblocks__item.hb-cards .wizi-img__content__wrapper img,
body.body .wiziblocks__item.hb-split .wizi-imgtxt__left img,
body.body .wiziblocks__item.hb-band .wizi-imgtxt__left img,
body.body .wiziblocks__item.hb-gallery .wizi-img__content img { top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }

/* Pied de page centre — 2026-10-29 */
body.body .footer .footer__wrapper { justify-content: center; flex-wrap: wrap; gap: 24px clamp(32px, 5vw, 80px); max-width: 1100px; margin-left: auto; margin-right: auto; text-align: center; }
body.body .footer .footer__wrapper__bloc { flex: 0 1 230px; width: auto; max-width: none; text-align: center; }
body.body .footer .footer__newsletter:not(:has(*)) { display: none; }
body.body .footer .footer__wrapper__bloc__ul,
body.body .footer .footer__wrapper__bloc__infos { text-align: center; padding: 0; margin-left: auto; margin-right: auto; }
body.body .footer .footer__wrapper__bloc__infos__contact { display: flex; justify-content: center; }
body.body .footer .footer__wrapper__bloc__infos__separator { margin-left: auto; margin-right: auto; }
@media (max-width: 640px) {
    body.body .footer .footer__wrapper__bloc { flex: 1 1 100%; }
}

/* Menu : pas d'affichage des sous-pages au premier niveau pendant le chargement — 2026-10-30 */
/* Les sous-pages ne s'affichent jamais au premier niveau du menu, meme avant que le script ne les range sous Prestations */
body.body .nav__maxWidth > a.nav__a[href$="reflexologie.html"],
body.body .nav__maxWidth > a.nav__a[href$="lit-hydromassant.html"],
body.body .nav__maxWidth > a.nav__a[href$="fauteuil-massant.html"],
body.body .nav__maxWidth > a.nav__a[href$="fauteuil-relaxation-gommage.html"] { display: none; }

/* Image + texte inversé (image à droite) — 2026-10-30 */
body.body .wiziblocks__item.hb-split--reverse .wizi-imgtxt__left { order: 2; }
@media (max-width: 900px) { body.body .wiziblocks__item.hb-split--reverse .wizi-imgtxt__left { order: 0; } }

/* Medaillon rond dans l'en-tete — 2026-11-03 */
@media (min-width: 1024px) {
    body.body .header__logo .header__logo__a .header__logo__a__img { max-height: 84px; height: 84px; width: auto; max-width: none; }
    body.body .header__logo, body.body .header__logo picture, body.body .header__logo__a { max-height: none; height: auto; }
}
@media (max-width: 1023px) {
    body.body .header__logo .header__logo__a .header__logo__a__img { height: 50px; max-height: 50px; width: auto; }
}
