/*
   Theme Name: Couleur des Sens
   Description: Thème enfant BoClic (parent Blocksy).
   Author: BoClic
   Author URI: https://boclic.fr
   Template: blocksy
   Version: 1.0.0
   Text Domain: boclic-client
*/

/* =========================================================
   1. IDENTITÉ DU CLIENT : Couleur des Sens
   ========================================================= */
:root {
  --bc-on-accent: #fff;
  --bc-radius: 0px;
  --bc-radius-sm: 0px;
  --bc-radius-img: 0px;
  --bc-radius-btn: 2px;
  --bc-header-max: 1290px;
  --bc-header-bg: #fff;
  --bc-header-radius: 0px;
  --bc-logo-h: 54px;
  --bc-logo-h-mobile: 40px;
  --bc-featured-label: "Coup de cœur";

  --cds-ink: #1c1b1a;
  --cds-text: #5a5653;
  --cds-muted: #8f8983;
  --cds-line: #e4dfd8;
  --cds-grey: #f6f5f2;
  --cds-beige: #e7e1d9;
  --cds-gold: #be986d;
  --cds-gold-dark: #a8835a;
  --cds-green: #5e9a35;
  --cds-mint: rgba(94, 154, 53, .2);
  --cds-sans: 'Montserrat', sans-serif;
  --cds-serif: 'Playfair Display', Georgia, serif;
  --cds-script: 'Great Vibes', cursive;
}

/* =========================================================
   2. STYLES PROPRES AU CLIENT
   ========================================================= */

/* ---------- Base : tons neutres, typo fine ---------- */
body { color: var(--cds-text); font-family: var(--cds-sans); font-weight: 300; }
h1, h2, h3, h4, h5, h6 { color: var(--cds-ink); font-family: var(--cds-sans); }
strong, b { font-weight: 600; }
a { color: var(--cds-ink); }
.has-palette-color-6-background-color { background-color: var(--cds-grey) !important; }
.has-palette-color-4-background-color { background-color: #141414 !important; }

/* ---------- Header classique (neutralise la pilule) ---------- */
#header [data-row*="middle"] {
  padding: 0 !important;
  background: #fff !important;
  box-shadow: 0 1px 0 rgba(0,0,0,.06);
}
#header [data-row*="middle"] > .ct-container {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#header .site-title, #header .site-title a { font-family: var(--cds-script); font-size: 30px; font-weight: 400; color: var(--cds-ink); text-transform: none; }
#header .header-menu-1 .ct-menu-link {
  font-family: var(--cds-sans);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .3em;
  font-size: 11.5px;
  color: var(--cds-ink);
  border-radius: 0 !important;
}
#header .header-menu-1 > ul > li:not(:last-child) > .ct-menu-link { position: relative; background: none !important; }
#header .header-menu-1 > ul > li:not(:last-child) > .ct-menu-link::after {
  content: ""; position: absolute; left: 50%; bottom: calc(50% - 14px);
  width: 0; height: 1px; background: var(--cds-ink);
  transition: width .25s ease, left .25s ease;
}
#header .header-menu-1 > ul > li:not(:last-child):hover > .ct-menu-link::after,
#header .header-menu-1 > ul > li.current-menu-item > .ct-menu-link::after,
#header .header-menu-1 > ul > li.current-menu-ancestor > .ct-menu-link::after { width: calc(100% - 2.6em); left: 1.3em; }
#header .header-menu-1 > ul > li:last-child > .ct-menu-link {
  height: auto;
  background: var(--cds-gold) !important;
  color: #fff !important;
  border-radius: 2px !important;
  font-weight: 600;
  letter-spacing: .22em;
  padding: .85rem 1.5rem;
}
#header .header-menu-1 > ul > li:last-child > .ct-menu-link:hover { background: var(--cds-ink) !important; }
#header .sub-menu { border-radius: 0 !important; }
#header .sub-menu .ct-menu-link { letter-spacing: .15em; font-size: 11px; }

/* ---------- Boutons ---------- */
.wp-block-button__link {
  font-family: var(--cds-sans);
  text-transform: uppercase;
  letter-spacing: .22em;
  font-size: 11.5px;
  font-weight: 600;
  border-radius: 2px !important;
  padding: 1.15em 2.4em;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
.bc-btn--accent .wp-block-button__link,
.wp-block-button:not(.is-style-outline) .wp-block-button__link { background: var(--cds-gold) !important; color: #fff !important; }
.bc-btn--accent .wp-block-button__link:hover,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background: var(--cds-ink) !important; }
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  border: 1px solid currentColor !important;
  color: var(--cds-ink) !important;
}

/* ---------- Petits éléments de typo ---------- */
.cds-kicker {
  font-size: 11px !important;
  font-weight: 600;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: var(--cds-gold) !important;
  margin-bottom: .6rem !important;
}
.cds-title, .bc-title-xl, .bc-title-lg {
  font-family: var(--cds-sans) !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .05em !important;
  line-height: 1.15 !important;
  color: var(--cds-ink);
  font-size: clamp(1.6rem, 2.8vw, 2.4rem) !important;
}
.bc-title-xl { font-size: clamp(1.8rem, 3.4vw, 2.8rem) !important; margin-block: .3rem .6rem !important; }
.cds-subtitle {
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-bottom: 1.2rem !important;
  padding-bottom: .9rem;
  border-bottom: 1px solid var(--cds-ink);
}
.cds-link a {
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--cds-green);
  text-decoration: none;
  padding-bottom: .35em;
  border-bottom: 1px solid currentColor;
  transition: color .2s ease, letter-spacing .3s ease;
}
.cds-link a:hover { color: var(--cds-ink); letter-spacing: .36em; }
.cds-note { color: #b0563f !important; font-size: 13px; font-weight: 500; }
.cds-footnote { font-size: 12.5px; color: var(--cds-muted); }

/* Mot manuscrit en filigrane (comme l'ancien site) */
.cds-watermark, .bc-eyebrow {
  font-family: var(--cds-script) !important;
  font-weight: 400 !important;
  font-size: clamp(4.2rem, 9vw, 7.5rem) !important;
  line-height: .8 !important;
  color: var(--cds-mint) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
  position: relative;
  z-index: 0;
  margin: -.35em 0 0 !important;
}
.cds-center-head, .cds-split__text, .cds-price-block__head, .bc-section-head, .bc-page-head { position: relative; }
.cds-center-head > :not(.cds-watermark),
.cds-split__text > :not(.cds-watermark),
.cds-price-block__head > :not(.cds-watermark),
.bc-section-head > :not(.bc-eyebrow) { position: relative; z-index: 1; }
/* filigrane qui passe derrière le titre */
.cds-center-head .cds-watermark { margin-top: -.62em !important; }
.cds-center-head { margin-bottom: clamp(1.25rem, 2.5vw, 2rem) !important; }
.cds-split__text .cds-watermark { position: absolute; top: clamp(1.5rem, 5vw, 4rem); left: 0; right: 0; margin: 0 !important; }
.bc-section-head .bc-eyebrow, .bc-page-head .bc-eyebrow { margin: 0 0 -.45em !important; }

/* ---------- Sections ---------- */
.cds-section { padding-block: clamp(2rem, 4vw, 3.5rem) !important; }
.cds-section--tight { padding-block: clamp(1.25rem, 2.5vw, 2rem) !important; }
.cds-section--grey { background: var(--cds-grey); }

/* Bandeau d'infos sous le slider */
.cds-strip { background: var(--cds-ink); padding: 15px 20px !important; }
.cds-strip p {
  margin: 0; color: #fff;
  font-size: 10.5px; font-weight: 500;
  letter-spacing: .32em; text-transform: uppercase;
}
.cds-strip span { color: var(--cds-gold); margin: 0 1.1em; }

/* Blocs photo + texte pleine largeur */
.cds-split { gap: 0 !important; margin-block: 0 !important; align-items: stretch !important; }
.cds-split > .wp-block-column { flex-basis: 50% !important; }
.cds-split--reverse { flex-direction: row-reverse; }
.cds-split__media { overflow: hidden; align-self: stretch !important; }
.cds-split__media figure { margin: 0 !important; height: 100%; }
.cds-split__media img {
  display: block; width: 100%; height: 100%;
  min-height: clamp(380px, 46vw, 640px);
  object-fit: cover;
  transition: transform 1.2s cubic-bezier(.2,.7,.2,1);
}
.cds-split:hover .cds-split__media img { transform: scale(1.04); }
.cds-split__text {
  padding: clamp(3rem, 5vw, 5rem) clamp(1.5rem, 6vw, 6.5rem) clamp(2.5rem, 4vw, 4rem) !important;
  align-self: center !important;
}
.cds-split__text > :not(.cds-watermark) { max-width: 460px; margin-inline: auto; }
.cds-split__text p:not([class*="cds-"]) { font-size: 15px; line-height: 1.85; }
@media (max-width: 781px) {
  .cds-split, .cds-split--reverse { flex-direction: column !important; }
  .cds-split__media img { min-height: 300px; aspect-ratio: 4 / 3; }
}

/* ---------- Carte des tarifs ---------- */
.cds-price-block { gap: clamp(2rem, 7vw, 7rem) !important; align-items: flex-start; }
.cds-price-block__head { text-align: center; padding-top: .3rem; }
.cds-price-block__head .cds-title { margin-bottom: .6rem; }
.cds-price-block__head p:not(.cds-watermark) { font-size: 14px; line-height: 1.8; }
.cds-price-block__head .cds-watermark { margin-top: -.25em !important; }
.cds-price-cols { gap: clamp(2rem, 5vw, 4.5rem) !important; }

ul.cds-menu { list-style: none; padding: 0 !important; margin: 0 0 1rem !important; }
.cds-menu li {
  display: grid;
  grid-template-columns: auto 1fr auto;
  column-gap: .7rem;
  align-items: baseline;
  padding: .75rem 0;
  margin: 0 !important;
}
.cds-menu li::before {
  content: "";
  grid-column: 2; grid-row: 1;
  border-bottom: 1px dotted #c9c2b8;
  transform: translateY(-.32em);
}
.cds-menu li strong {
  grid-column: 1; grid-row: 1;
  font-size: 12.5px; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  color: var(--cds-ink);
}
.cds-menu li em {
  grid-column: 3; grid-row: 1;
  font-style: normal; font-size: 13px; font-weight: 500;
  color: var(--cds-ink); white-space: nowrap;
}
.cds-menu li small {
  grid-column: 1 / -1; grid-row: 2;
  font-size: 12px; color: var(--cds-muted); margin-top: .15rem;
}
.cds-menu li:hover strong, .cds-menu li:hover em { color: var(--cds-gold-dark); }

/* ---------- En-têtes de page : photo + voile sombre ---------- */
.bc-page-head {
  background: #2a2623 url("/wp-content/uploads/2026/11/couleur-des-sens-salon-3.jpeg") center / cover no-repeat !important;
  padding-block: clamp(2rem, 3.5vw, 3rem) !important;
  overflow: hidden;
}
.bc-page-head::before { content: ""; position: absolute; inset: 0; background: rgba(18, 16, 15, .55); }
.bc-page-head > * { position: relative; z-index: 1; }
.bc-page-head h1, .bc-page-head .bc-title-xl { color: #fff !important; }
.bc-page-head .bc-lead, .bc-page-head p { color: rgba(255,255,255,.85) !important; }
.bc-page-head a { color: #fff; }
.bc-page-head .cds-kicker { color: var(--cds-gold) !important; }
.bc-page-head .bc-eyebrow { color: rgba(255,255,255,.22) !important; }
.page-id-22 .bc-page-head { background-image: url("/wp-content/uploads/2026/11/salon-coiffure-vegetal-bailly-romainvilliers-panoramique.jpg") !important; }
.page-id-20 .bc-page-head { background-image: url("/wp-content/uploads/2026/11/tarifs-salon-coiffure-vegetal.jpg") !important; }
.page-id-51 .bc-page-head { background-image: url("/wp-content/uploads/2026/11/head-spa-soin-2.jpg") !important; }
.page-id-52 .bc-page-head { background-image: url("/wp-content/uploads/2026/11/couleur-des-sens-salon-3.jpeg") !important; }
.page-id-53 .bc-page-head { background-image: url("/wp-content/uploads/2026/11/couleur-des-sens-salon-2.jpeg") !important; }
.page-id-54 .bc-page-head { background-image: url("/wp-content/uploads/2026/11/prestations-coiffure-vegetale.jpeg") !important; }
.page-id-24 .bc-page-head { background-image: url("/wp-content/uploads/2026/11/mur-vegetal-salon-coiffure-couleur-des-sens.jpg") !important; }
/* ---------- Diaporama ---------- */
.bc-slide > .wp-block-columns { min-height: clamp(500px, calc(100vh - 140px), 760px); align-items: stretch !important; }
.bc-slide__media { overflow: hidden; position: relative; flex-basis: 50% !important; }
.bc-slide__media figure { position: absolute !important; inset: 0; margin: 0 !important; height: 100%; }
.bc-slide__media img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; }
@media (prefers-reduced-motion: no-preference) {
  .bc-slide.is-active .bc-slide__media img { animation: cds-zoom 9s ease-out both; }
}
@keyframes cds-zoom { from { transform: scale(1.12); } to { transform: scale(1); } }
.bc-slide__panel {
  position: relative; overflow: hidden;
  background: var(--cds-beige) !important;
  padding-inline: clamp(3rem, 7vw, 7rem) !important;
  flex-basis: 50% !important;
  align-self: stretch !important;
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.bc-slide__panel > * { position: relative; z-index: 1; max-width: 520px; }
/* Branches dessinées (remplacent les PNG de feuillage) */
.bc-slide__panel::before, .bc-slide__panel::after {
  content: ""; position: absolute; z-index: 0; pointer-events: none;
  background-repeat: no-repeat; background-size: contain;
  opacity: 0;
  transition: opacity .8s ease, clip-path 0s .8s;
}
.bc-slide__panel::before {
  top: 4%; right: 3%; left: auto; bottom: auto;
  width: clamp(150px, 19vw, 270px); aspect-ratio: 300 / 260; height: auto;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-10 -10 300 260' fill='none' stroke='%23BE986D' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.v%7Bstroke-width:.6;opacity:.7%7D.c%7Bfill:%23BE986D%7D%3C/style%3E%3Cpath d='M0 20 Q120 40 230 160'/%3E%3Cpath d='M28.7 26.2 Q28.3 58.8 57.7 72.8 Q58.1 40.2 28.7 26.2Z'/%3E%3Cpath class='v' d='M28.7 26.2 L51.9 63.5'/%3E%3Cpath d='M54.7 34.5 Q85.1 39.7 102.6 14.3 Q72.1 9.0 54.7 34.5Z'/%3E%3Cpath class='v' d='M54.7 34.5 L93.0 18.3'/%3E%3Cpath d='M80.4 45.2 Q75.2 73.8 99.0 90.7 Q104.3 62.0 80.4 45.2Z'/%3E%3Cpath class='v' d='M80.4 45.2 L95.3 81.6'/%3E%3Cpath d='M106.0 58.3 Q131.9 67.2 150.9 47.4 Q125.0 38.4 106.0 58.3Z'/%3E%3Cpath class='v' d='M106.0 58.3 L141.9 49.5'/%3E%3Cpath d='M131.3 73.8 Q122.8 98.1 141.3 116.0 Q149.8 91.6 131.3 73.8Z'/%3E%3Cpath class='v' d='M131.3 73.8 L139.3 107.5'/%3E%3Cpath d='M156.3 91.7 Q177.7 102.7 196.6 87.8 Q175.2 76.9 156.3 91.7Z'/%3E%3Cpath class='v' d='M156.3 91.7 L188.6 88.6'/%3E%3Cpath d='M181.1 112.0 Q171.1 132.0 185.0 149.5 Q195.0 129.5 181.1 112.0Z'/%3E%3Cpath class='v' d='M181.1 112.0 L184.2 142.0'/%3E%3Cpath d='M205.7 134.8 Q222.8 146.4 240.4 135.7 Q223.3 124.1 205.7 134.8Z'/%3E%3Cpath class='v' d='M205.7 134.8 L233.5 135.5'/%3E%3Cpath d='M230.0 160.0 Q219.7 175.9 229.7 191.9 Q240.1 176.0 230.0 160.0Z'/%3E%3Cpath class='v' d='M230.0 160.0 L229.8 185.5'/%3E%3Cpath d='M230.0 160.0 Q233.0 177.0 249.6 181.4 Q246.6 164.4 230.0 160.0Z'/%3E%3Cpath class='v' d='M230.0 160.0 L245.7 177.1'/%3E%3Cpath d='M95 48 Q120 110 105 190'/%3E%3Cpath d='M105.0 80.1 Q86.2 89.7 87.1 110.8 Q105.9 101.2 105.0 80.1Z'/%3E%3Cpath class='v' d='M105.0 80.1 L90.7 104.7'/%3E%3Cpath d='M109.2 105.7 Q114.6 124.0 133.5 126.7 Q128.1 108.4 109.2 105.7Z'/%3E%3Cpath class='v' d='M109.2 105.7 L128.6 122.5'/%3E%3Cpath d='M110.6 132.5 Q94.1 136.8 91.0 153.6 Q107.6 149.3 110.6 132.5Z'/%3E%3Cpath class='v' d='M110.6 132.5 L94.9 149.4'/%3E%3Cpath d='M109.2 160.6 Q110.5 175.6 124.6 180.8 Q123.4 165.8 109.2 160.6Z'/%3E%3Cpath class='v' d='M109.2 160.6 L121.5 176.8'/%3E%3Cpath d='M105.0 190.0 Q92.0 190.9 87.3 203.1 Q100.3 202.2 105.0 190.0Z'/%3E%3Cpath class='v' d='M105.0 190.0 L90.8 200.4'/%3E%3Cpath d='M105.0 190.0 Q96.9 198.6 101.3 209.7 Q109.4 201.0 105.0 190.0Z'/%3E%3Cpath class='v' d='M105.0 190.0 L102.1 205.7'/%3E%3Cpath d='M232.0 165.2 Q238.1 158.0 232.0 151.4 Q225.9 158.0 232.0 165.2Z'/%3E%3Cpath d='M234.6 167.1 Q243.4 170.7 247.8 162.9 Q239.6 159.1 234.6 167.1Z'/%3E%3Cpath d='M233.6 170.2 Q232.9 179.6 241.8 181.4 Q242.8 172.5 233.6 170.2Z'/%3E%3Cpath d='M230.4 170.2 Q221.2 172.5 222.2 181.4 Q231.1 179.6 230.4 170.2Z'/%3E%3Cpath d='M229.4 167.1 Q224.4 159.1 216.2 162.9 Q220.6 170.7 229.4 167.1Z'/%3E%3Ccircle cx='232.0' cy='168.0' r='2.4' class='c'/%3E%3Cpath d='M110.0 196.0 Q114.3 190.9 110.0 186.2 Q105.7 190.9 110.0 196.0Z'/%3E%3Cpath d='M111.9 197.4 Q118.1 199.9 121.2 194.4 Q115.4 191.7 111.9 197.4Z'/%3E%3Cpath d='M111.2 199.6 Q110.7 206.3 116.9 207.5 Q117.7 201.2 111.2 199.6Z'/%3E%3Cpath d='M108.8 199.6 Q102.3 201.2 103.1 207.5 Q109.3 206.3 108.8 199.6Z'/%3E%3Cpath d='M108.1 197.4 Q104.6 191.7 98.8 194.4 Q101.9 199.9 108.1 197.4Z'/%3E%3Ccircle cx='110.0' cy='198.0' r='1.7' class='c'/%3E%3C/svg%3E");
  background-position: top right;
  transform: scaleX(-1);
  transform-origin: 50% 0;
  clip-path: inset(0 0 100% 100%);
}
.bc-slide__panel::after {
  bottom: 3%; left: 2%; right: auto; top: auto;
  width: clamp(170px, 22vw, 320px); aspect-ratio: 340 / 200; height: auto;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-10 60 340 200' fill='none' stroke='%23BE986D' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.v%7Bstroke-width:.6;opacity:.7%7D.c%7Bfill:%23BE986D%7D%3C/style%3E%3Cpath d='M0 240 Q150 230 300 120'/%3E%3Cpath d='M36.0 236.2 Q63.7 226.8 66.7 197.8 Q39.1 207.1 36.0 236.2Z'/%3E%3Cpath class='v' d='M36.0 236.2 L60.6 205.4'/%3E%3Cpath d='M62.4 231.5 Q74.7 256.7 102.6 256.0 Q90.4 230.9 62.4 231.5Z'/%3E%3Cpath class='v' d='M62.4 231.5 L94.6 251.1'/%3E%3Cpath d='M88.8 225.3 Q113.0 214.0 112.8 187.2 Q88.6 198.6 88.8 225.3Z'/%3E%3Cpath class='v' d='M88.8 225.3 L108.0 194.8'/%3E%3Cpath d='M115.2 217.6 Q128.8 239.2 154.2 235.8 Q140.5 214.2 115.2 217.6Z'/%3E%3Cpath class='v' d='M115.2 217.6 L146.4 232.2'/%3E%3Cpath d='M141.6 208.3 Q162.4 195.7 159.7 171.5 Q138.9 184.1 141.6 208.3Z'/%3E%3Cpath class='v' d='M141.6 208.3 L156.0 178.9'/%3E%3Cpath d='M168.0 197.4 Q182.3 215.6 204.7 210.2 Q190.5 192.1 168.0 197.4Z'/%3E%3Cpath class='v' d='M168.0 197.4 L197.4 207.7'/%3E%3Cpath d='M194.4 185.0 Q211.9 171.9 207.3 150.6 Q189.8 163.7 194.4 185.0Z'/%3E%3Cpath class='v' d='M194.4 185.0 L204.7 157.5'/%3E%3Cpath d='M220.8 171.1 Q235.0 186.1 254.6 179.4 Q240.3 164.5 220.8 171.1Z'/%3E%3Cpath class='v' d='M220.8 171.1 L247.8 177.8'/%3E%3Cpath d='M247.2 155.6 Q261.6 142.6 255.9 124.1 Q241.4 137.1 247.2 155.6Z'/%3E%3Cpath class='v' d='M247.2 155.6 L254.1 130.4'/%3E%3Cpath d='M273.6 138.6 Q287.2 150.7 303.9 143.4 Q290.3 131.3 273.6 138.6Z'/%3E%3Cpath class='v' d='M273.6 138.6 L297.8 142.4'/%3E%3Cpath d='M300.0 120.0 Q311.7 107.7 305.3 91.9 Q293.7 104.2 300.0 120.0Z'/%3E%3Cpath class='v' d='M300.0 120.0 L304.3 97.5'/%3E%3Cpath d='M300.0 120.0 Q315.4 119.0 321.0 104.6 Q305.6 105.6 300.0 120.0Z'/%3E%3Cpath class='v' d='M300.0 120.0 L316.8 107.7'/%3E%3Cpath d='M140 226 Q190 200 200 150'/%3E%3Cpath d='M166.4 208.2 Q180.8 218.1 195.8 209.2 Q181.4 199.3 166.4 208.2Z'/%3E%3Cpath class='v' d='M166.4 208.2 L189.9 209.0'/%3E%3Cpath d='M182.0 191.4 Q188.7 177.7 179.0 165.8 Q172.3 179.5 182.0 191.4Z'/%3E%3Cpath class='v' d='M182.0 191.4 L179.6 170.9'/%3E%3Cpath d='M193.2 172.0 Q206.2 174.1 213.6 163.1 Q200.5 161.1 193.2 172.0Z'/%3E%3Cpath class='v' d='M193.2 172.0 L209.5 164.9'/%3E%3Cpath d='M200.0 150.0 Q200.2 138.9 190.2 134.1 Q190.0 145.2 200.0 150.0Z'/%3E%3Cpath class='v' d='M200.0 150.0 L192.1 137.3'/%3E%3Cpath d='M200.0 150.0 Q207.0 142.7 203.3 133.3 Q196.3 140.6 200.0 150.0Z'/%3E%3Cpath class='v' d='M200.0 150.0 L202.7 136.7'/%3E%3Cpath d='M305.0 109.5 Q310.5 103.0 305.0 97.0 Q299.5 103.0 305.0 109.5Z'/%3E%3Cpath d='M307.4 111.2 Q315.3 114.4 319.3 107.4 Q311.9 104.0 307.4 111.2Z'/%3E%3Cpath d='M306.5 114.0 Q305.8 122.5 313.8 124.1 Q314.7 116.0 306.5 114.0Z'/%3E%3Cpath d='M303.5 114.0 Q295.3 116.0 296.2 124.1 Q304.2 122.5 303.5 114.0Z'/%3E%3Cpath d='M302.6 111.2 Q298.1 104.0 290.7 107.4 Q294.7 114.4 302.6 111.2Z'/%3E%3Ccircle cx='305.0' cy='112.0' r='2.2' class='c'/%3E%3C/svg%3E");
  background-position: bottom left;
  transform-origin: 0 100%;
  clip-path: inset(0 100% 0 0);
}
.bc-slide.is-active .bc-slide__panel::before,
.bc-slide.is-active .bc-slide__panel::after {
  opacity: .8;
  clip-path: inset(0 0 0 0);
  transition: opacity 2.6s ease .6s, clip-path 3.6s cubic-bezier(.4,0,.2,1) .6s;
}
@media (prefers-reduced-motion: no-preference) {
  .bc-slide.is-active .bc-slide__panel::before { animation: cds-sway-a 9s ease-in-out 4.2s infinite alternate; }
  .bc-slide.is-active .bc-slide__panel::after { animation: cds-sway-b 11s ease-in-out 4.2s infinite alternate; }
}
@keyframes cds-sway-a { from { transform: scaleX(-1) rotate(0deg); } to { transform: scaleX(-1) rotate(-2.5deg); } }
@keyframes cds-sway-b { from { transform: rotate(0deg); } to { transform: rotate(1.8deg); } }
@media (max-width: 781px) {
  .bc-slide__panel::before { width: 120px; }
  .bc-slide__panel::after { width: 140px; bottom: 4.5rem; }
}

.bc-script {
  font-family: var(--cds-script) !important;
  color: var(--cds-green) !important;
  font-size: clamp(2.2rem, 3.6vw, 3.2rem) !important;
  line-height: 1 !important;
  margin-bottom: .2rem !important;
}
.bc-slide__panel h1, .bc-slide__panel h2 {
  font-family: var(--cds-serif) !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: clamp(2rem, 3.4vw, 3.3rem) !important;
  line-height: 1.12 !important;
  color: var(--cds-ink) !important;
  max-width: 15ch; margin-inline: auto !important;
}
.bc-slide__panel p:not(.bc-script) { font-size: 14px; line-height: 1.8; color: #4a4542; }

/* Navigation : miniatures cliquables sur la jonction photo / panneau */
.bc-slider-nav {
  left: 50% !important; right: auto !important;
  top: 50% !important; bottom: auto !important;
  transform: translate(-50%, -50%);
  flex-direction: column;
  gap: .75rem !important;
  z-index: 5;
}
.bc-slider-nav .bc-slider-dot {
  position: relative;
  width: 62px !important; height: 62px !important;
  border-radius: 50% !important;
  opacity: 1 !important;
  background-size: cover !important; background-position: center !important;
  border: 3px solid #fff !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.22);
  filter: grayscale(.5) brightness(.85);
  transition: transform .3s ease, filter .3s ease, border-color .3s ease !important;
}
.bc-slider-nav .bc-slider-dot:hover { transform: scale(1.08); filter: none; }
.bc-slider-nav .bc-slider-dot[aria-current="true"] {
  width: 62px !important;
  border-color: var(--cds-gold) !important;
  transform: scale(1.14);
  filter: none;
}
.bc-slider-nav .bc-slider-dot:nth-child(2) { background-image: url("/wp-content/uploads/2026/11/salon-coiffure-vegetal-bailly-romainvilliers-300x200.jpeg") !important; }
.bc-slider-nav .bc-slider-dot:nth-child(3) { background-image: url("/wp-content/uploads/2026/11/coloration-vegetale-300x200.jpeg") !important; }
.bc-slider-nav .bc-slider-dot:nth-child(3) { background-image: url("/wp-content/uploads/2026/11/coloration-vegetale-300x164.jpeg") !important; }
.bc-slider-nav .bc-slider-dot:nth-child(5) { background-image: url("/wp-content/uploads/2026/11/location-fauteuil-coiffure-300x200.jpeg") !important; }
.bc-slider-nav .bc-slider-dot:nth-child(5) { background-image: url("/wp-content/uploads/2026/11/location-fauteuil-coiffure-200x300.jpeg") !important; }
.bc-slider-nav .bc-slider-dot::after {
  position: absolute; left: calc(100% + 14px); top: 50%;
  transform: translate(-6px, -50%);
  background: var(--cds-ink); color: #fff;
  font: 600 10px/1 var(--cds-sans); letter-spacing: .22em; text-transform: uppercase;
  padding: .7em 1em; white-space: nowrap;
  opacity: 0; pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
}
.bc-slider-nav .bc-slider-dot:hover::after { opacity: 1; transform: translate(0, -50%); }
.bc-slider-nav .bc-slider-dot:nth-child(2)::after { content: "Le salon"; }
.bc-slider-nav .bc-slider-dot:nth-child(3)::after { content: "Le végétal"; }
.bc-slider-nav .bc-slider-dot:nth-child(4)::after { content: "Head Spa"; }
.bc-slider-nav .bc-slider-dot:nth-child(5)::after { content: "Location"; }
.bc-slider-nav .bc-slider-dot:nth-child(6)::after { content: "Tarifs"; }
.bc-slider-nav .bc-slider-arrow {
  width: 34px !important; height: 34px !important; line-height: 34px !important;
  margin: 0 !important;
  background: rgba(255,255,255,.92) !important;
  color: var(--cds-ink) !important;
  transform: rotate(90deg);
  font-size: 1.2rem !important;
}
.bc-slider-nav .bc-slider-arrow:hover { background: var(--cds-gold) !important; color: #fff !important; }
@media (max-width: 781px) {
  .bc-slider-nav {
    top: auto !important; bottom: 1rem !important;
    transform: translateX(-50%);
    flex-direction: row;
  }
  .bc-slider-nav .bc-slider-dot { width: 42px !important; height: 42px !important; border-width: 2px !important; }
  .bc-slider-nav .bc-slider-dot[aria-current="true"] { width: 42px !important; }
  .bc-slider-nav .bc-slider-dot::after { display: none; }
  .bc-slider-nav .bc-slider-arrow { display: none !important; }
  .bc-slide > .wp-block-columns { min-height: 0; }
  .bc-slide__media { min-height: 42vh; flex-basis: auto !important; }
  .bc-slide__panel { padding: 2.5rem 1.5rem 5.5rem !important; }
}

/* ---------- Grilles de cartes (pages intérieures) ---------- */
.wp-block-group.bc-cards {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: clamp(1.25rem, 3vw, 2.25rem);
}
.wp-block-group.bc-cards > * { margin: 0 !important; }
.bc-card {
  background: #fff !important;
  color: var(--cds-text) !important;
  border: 1px solid var(--cds-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: clamp(1.6rem, 3vw, 2.4rem) !important;
  transition: border-color .3s ease, transform .3s ease;
}
.bc-card:hover { border-color: var(--cds-gold) !important; transform: translateY(-3px); }
.bc-card h3, .bc-card--featured h3 { color: var(--cds-ink) !important; font-size: 14px; letter-spacing: .16em; text-transform: uppercase; }
.bc-card .wp-block-image img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.bc-card--featured { border-color: var(--cds-gold) !important; }
.bc-card--featured a, .bc-card--featured p { color: inherit !important; }
.bc-card__price { font-family: var(--cds-serif); font-size: 2rem; font-weight: 700; color: var(--cds-gold) !important; margin-bottom: .2rem; }
.bc-card__num { font-family: var(--cds-serif); color: var(--cds-gold) !important; }
.bc-badge {
  display: inline-block; background: var(--cds-green); color: #fff !important;
  font-size: 10px; letter-spacing: .2em; text-transform: uppercase;
  padding: .35rem .9rem; border-radius: 0;
}
.bc-more a { color: var(--cds-green); font-size: 11.5px; letter-spacing: .25em; text-transform: uppercase; font-weight: 600; text-decoration: none; border-bottom: 1px solid currentColor; }

/* ---------- Avis ---------- */
.cds-quotes { gap: clamp(2rem, 5vw, 4rem) !important; }
.cds-quote {
  font-family: var(--cds-serif);
  font-style: italic; font-size: 17px; line-height: 1.75;
  color: var(--cds-ink);
}
.cds-quote::before {
  content: "\201C"; display: block;
  font-size: 4rem; line-height: .6; color: var(--cds-gold);
  margin-bottom: .6rem;
}
.cds-quote__author { font-size: 10.5px; font-weight: 600; letter-spacing: .28em; text-transform: uppercase; color: var(--cds-gold-dark); }

/* ---------- Marques ---------- */
.cds-brands .wp-block-image img {
  max-width: 130px; margin: 0 auto; display: block;
  filter: grayscale(1); opacity: .75;
  transition: filter .3s ease, opacity .3s ease;
}
.cds-brands .wp-block-image img:hover { filter: none; opacity: 1; }

/* ---------- Appel à l'action sombre ---------- */
.cds-cta {
  background: #141414 url("/wp-content/uploads/2026/11/couleur-des-sens-bacs-massants.jpeg") center / cover no-repeat;
  position: relative;
  padding-block: clamp(2.5rem, 5vw, 4rem) !important;
}
.cds-cta::before { content: ""; position: absolute; inset: 0; background: rgba(14, 13, 12, .82); }
.cds-cta > * { position: relative; z-index: 1; }
.cds-cta .cds-title, .cds-cta h2 { color: #fff !important; }
.cds-cta p { color: rgba(255,255,255,.75); }
.cds-cta .cds-footnote { color: rgba(255,255,255,.55); max-width: 760px; margin-inline: auto; }
.cds-cta .is-style-outline .wp-block-button__link { color: #fff !important; border-color: #fff !important; }
.cds-cta .is-style-outline .wp-block-button__link:hover { background: #fff !important; color: var(--cds-ink) !important; }
.bc-cta { background: #141414 !important; }

/* ---------- Divers ---------- */
.bc-panel, .entry-content .bc-panel.bc-panel {
  border: 0 !important;
  border-left: 2px solid var(--cds-gold) !important;
  background: #fff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 1.4rem 1.8rem !important;
  font-size: 14px;
}
.cds-section--tight .bc-panel { background: var(--cds-grey) !important; }
.bc-faq__item { background: #fff; border: 1px solid var(--cds-line); border-radius: 0; padding: 1.1rem 1.4rem; margin-bottom: .75rem; }
.bc-faq__item summary { cursor: pointer; font-weight: 600; color: var(--cds-ink); }
.bc-media img { border-radius: 0 !important; }
.bc-check li::marker, .bc-check li::before { color: var(--cds-gold) !important; }

/* ---------- Pages intérieures ---------- */
.cds-intro { max-width: 620px; margin: -1rem auto clamp(2.5rem, 5vw, 3.5rem) !important; font-size: 15px; line-height: 1.85; }
.bc-page-head .wp-block-buttons { margin-top: 2rem; }

/* Étapes numérotées */
.cds-steps { gap: clamp(1.5rem, 4vw, 3.5rem) !important; }
.cds-step { position: relative; padding-top: .5rem; }
.cds-step__num {
  font-family: var(--cds-serif) !important;
  font-size: 3.2rem !important; line-height: 1 !important;
  color: var(--cds-gold) !important; margin-bottom: 1rem !important;
}
.cds-step__num::after { content: ""; display: block; width: 36px; height: 1px; background: var(--cds-gold); margin: 1.1rem auto 0; }
.cds-offer__title {
  font-size: 13.5px !important; font-weight: 700 !important;
  letter-spacing: .18em; text-transform: uppercase;
  color: var(--cds-ink); margin-bottom: .8rem !important;
}
.cds-step p:not([class*="cds-"]), .cds-offer p:not([class*="cds-"]) { font-size: 14px; line-height: 1.8; }

/* Formules / offres */
.cds-offers { gap: clamp(1.25rem, 3vw, 2rem) !important; align-items: stretch !important; }
.cds-offer {
  background: #fff;
  border: 1px solid var(--cds-line);
  padding: clamp(2rem, 3.5vw, 2.8rem) clamp(1.4rem, 2.5vw, 2rem) !important;
  transition: border-color .3s ease, transform .3s ease;
}
.cds-section:not(.cds-section--grey) .cds-offer { background: var(--cds-grey); border-color: transparent; }
.cds-offer:hover { border-color: var(--cds-gold); transform: translateY(-4px); }
.cds-offer__price {
  font-family: var(--cds-serif) !important;
  font-size: clamp(2rem, 3vw, 2.6rem) !important; font-weight: 700;
  line-height: 1.1 !important; color: var(--cds-gold) !important;
  margin-bottom: 1rem !important;
}
.cds-offer__price small { display: block; font-family: var(--cds-sans); font-size: 11px; font-weight: 500; letter-spacing: .25em; text-transform: uppercase; color: var(--cds-muted); margin-top: .4rem; }
.cds-offer__price::after { content: ""; display: block; width: 36px; height: 1px; background: var(--cds-gold); margin: 1.1rem auto 0; }

/* Liste à puces dorées */
ul.cds-list { list-style: none; padding: 0 !important; margin: 0 0 1.5rem !important; }
.cds-list li { position: relative; padding: .7rem 0 .7rem 1.8rem; border-bottom: 1px solid var(--cds-line); font-size: 14.5px; line-height: 1.7; text-align: left; }
.cds-list li:last-child { border-bottom: 0; }
.cds-list li::before { content: ""; position: absolute; left: 0; top: 1.35rem; width: 10px; height: 1px; background: var(--cds-gold); }
.cds-split__text .cds-list { max-width: 460px; }

/* Ligne de marques */
.cds-brandline { font-size: 11.5px !important; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--cds-ink) !important; }
.cds-brandline span, .cds-social span { color: var(--cds-gold); margin: 0 .8em; }

/* Galerie pleine largeur */
.cds-gallery { gap: 0 !important; margin-block: 0 !important; }
.cds-gallery .wp-block-image { margin: 0 !important; overflow: hidden; }
.cds-gallery img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform 1.2s cubic-bezier(.2,.7,.2,1); }
.cds-gallery .wp-block-column:hover img { transform: scale(1.05); }
@media (max-width: 781px) {
  .cds-gallery { flex-wrap: nowrap !important; overflow-x: auto; scroll-snap-type: x mandatory; }
  .cds-gallery > .wp-block-column { flex: 0 0 82% !important; scroll-snap-align: start; }
}

/* Infos pratiques / contact */
.cds-info { gap: clamp(2rem, 5vw, 4.5rem) !important; }
.cds-info p { font-size: 14.5px; line-height: 1.85; }
.cds-info a:not(.wp-block-button__link) { color: var(--cds-ink); text-decoration-color: var(--cds-gold); text-underline-offset: 3px; }
.cds-info .cds-link a { color: var(--cds-green); text-decoration: none; }
.cds-menu--hours li { padding: .55rem 0; }
.cds-menu--hours li strong { text-transform: none; letter-spacing: .04em; font-size: 14px; font-weight: 500; }
.cds-menu--hours li em { font-size: 14px; font-weight: 400; }
.cds-social { font-size: 11.5px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; }
.cds-social a { text-decoration: none !important; }
.bc-todo { border: 1px dashed var(--cds-gold); padding: 1.2rem 1.4rem; font-size: 13px; color: var(--cds-muted); }

/* FAQ */
.cds-faq-list { max-width: 820px; margin-inline: auto; }
.cds-faq-list > * { margin-block: 0 !important; }
details.cds-faq { border-bottom: 1px solid #d8d1c7; padding: 0; }
details.cds-faq:first-child { border-top: 1px solid #d8d1c7; }
details.cds-faq summary {
  list-style: none; cursor: pointer; position: relative;
  padding: 1.4rem 3rem 1.4rem 0;
  font-size: 14px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
  color: var(--cds-ink); transition: color .2s ease;
}
details.cds-faq summary::-webkit-details-marker { display: none; }
details.cds-faq summary::after {
  content: "+"; position: absolute; right: .3rem; top: 50%; transform: translateY(-50%);
  font: 300 1.7rem/1 var(--cds-sans); color: var(--cds-gold); transition: transform .3s ease;
}
details.cds-faq[open] summary::after { transform: translateY(-50%) rotate(45deg); }
details.cds-faq summary:hover { color: var(--cds-gold-dark); }
details.cds-faq p { margin: 0 0 1.5rem !important; padding-right: 3rem; font-size: 15px; line-height: 1.85; }

/* Marques : logo + texte */
.cds-brand-row { gap: clamp(2rem, 7vw, 6rem) !important; }
.cds-brand-row--reverse { flex-direction: row-reverse; }
.cds-brand-row__logo .wp-block-image { margin: 0 !important; }
.cds-brand-row__logo img { display: block; width: 100%; max-width: 340px; margin-inline: auto; aspect-ratio: 1; object-fit: cover; box-shadow: 0 25px 50px -25px rgba(0,0,0,.35); }
.cds-brand-row__text .cds-title { margin-bottom: 1.4rem !important; }
.cds-brand-row__text .cds-title::after { content: ""; display: block; width: 40px; height: 1px; background: var(--cds-gold); margin-top: 1.2rem; }
.cds-brand-row__text p:not([class*="cds-"]) { font-size: 15px; line-height: 1.9; }
@media (max-width: 781px) {
  .cds-brand-row, .cds-brand-row--reverse { flex-direction: column !important; }
  .cds-brand-row__logo img { max-width: 220px; }
}

/* Retouches en-têtes et FAQ */
.bc-page-head .cds-kicker { color: #e2c49c !important; }
.bc-page-head .bc-lead { max-width: 640px; margin-inline: auto !important; margin-block: 0 !important; font-size: 15px; }
.bc-page-head .cds-kicker { margin-bottom: 0 !important; }
.bc-page-head .wp-block-buttons { margin-top: 1.2rem !important; }
details.cds-faq[open] summary { padding-bottom: .7rem; }
.cds-brand-row__text > * { max-width: 640px; }

/* ---------- Sous-menus lisibles ---------- */
#header .sub-menu {
  --dropdown-background-color: #fff;
  background: #fff !important;
  border-top: 2px solid var(--cds-gold) !important;
  box-shadow: 0 18px 40px -12px rgba(0,0,0,.18) !important;
  padding: .5rem 0 !important;
}
#header .sub-menu .ct-menu-link {
  color: var(--cds-ink) !important;
  background: transparent !important;
  font-weight: 500;
  padding: .75rem 1.4rem !important;
}
#header .sub-menu li:hover > .ct-menu-link,
#header .sub-menu .current-menu-item > .ct-menu-link { color: var(--cds-gold-dark) !important; background: var(--cds-grey) !important; }

/* ---------- Bloc « Information importante » ---------- */
.cds-notice {
  background: #f1f1ef;
  padding-block: clamp(2.5rem, 5vw, 3.75rem) !important;
  border-bottom: 1px solid var(--cds-line);
}
.cds-notice__badge {
  display: flex; align-items: center; justify-content: center; gap: .8rem;
  font-size: clamp(15px, 1.5vw, 18px) !important; font-weight: 700 !important;
  letter-spacing: .22em; text-transform: uppercase;
  color: #b3261e !important;
  margin-bottom: clamp(1.75rem, 3.5vw, 2.75rem) !important;
}
.cds-notice__badge::before {
  content: ""; flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%;
  background: #b3261e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M12 16.5v-5.5'/%3E%3Ccircle cx='12' cy='7.8' r='.6' fill='%23fff'/%3E%3C/svg%3E") center / 24px no-repeat;
}
.cds-notice__items { gap: 0 !important; align-items: stretch !important; }
.cds-notice__item { padding: .25rem clamp(1.25rem, 3vw, 2.5rem) !important; }
.cds-notice__item + .cds-notice__item { border-left: 1px solid #dcdad5; }
.cds-notice__item::before {
  content: ""; display: block; width: 34px; height: 34px; margin: 0 auto .9rem;
  background: center / contain no-repeat;
}
.cds-ico--users::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A8835A' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.6'/%3E%3Cpath d='M2.5 20c.4-3.6 3.2-5.6 6.5-5.6s6.1 2 6.5 5.6'/%3E%3Cpath d='M17 9.5l4 4M21 9.5l-4 4'/%3E%3C/svg%3E") !important; }
.cds-ico--calendar::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A8835A' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16' rx='1.5'/%3E%3Cpath d='M3 9.5h18M8 2.8v3.4M16 2.8v3.4'/%3E%3Ccircle cx='12' cy='15' r='2.6'/%3E%3Cpath d='M12 13.7V15l.9.8'/%3E%3C/svg%3E") !important; }
.cds-ico--leaf::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A8835A' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19.5C5 10 10.5 4.5 20 4.5 20 14 14.5 19.5 5 19.5Z'/%3E%3Cpath d='M5 19.5 14.5 10M9.5 15h4M12 12.5V9'/%3E%3C/svg%3E") !important; }
.cds-notice__title {
  font-size: 12.5px !important; font-weight: 700 !important;
  letter-spacing: .2em; text-transform: uppercase;
  color: var(--cds-ink); margin-bottom: .7rem !important;
}
.cds-notice__item p { font-size: 14px; line-height: 1.75; margin: 0; }
.cds-notice__outro {
  max-width: 640px; margin: clamp(1.75rem, 3.5vw, 2.5rem) auto 0 !important;
  font-family: var(--cds-serif); font-style: italic; font-size: 16px; line-height: 1.7;
  color: var(--cds-ink) !important;
}
.cds-notice__sign {
  font-family: var(--cds-script) !important; font-size: 2.1rem !important;
  line-height: 1 !important; color: var(--cds-green) !important; margin-top: .4rem !important;
}
@media (max-width: 781px) {
  .cds-notice__items { gap: 1.75rem !important; }
  .cds-notice__item + .cds-notice__item { border-left: 0; border-top: 1px solid var(--cds-line); padding-top: 1.75rem !important; }
}
/* Blocs photo + texte : même hauteur, même pour une photo verticale */
.cds-split__media img { max-height: clamp(380px, 46vw, 640px); }
@media (max-width: 781px) {
  .cds-split__media img { max-height: none; }
}
/* Diaporama mobile : pas de bande blanche, ronds à la jonction photo / texte */
@media (max-width: 781px) {
  .bc-slider > .bc-slide { display: flex; flex-direction: column; }
  .bc-slide > .wp-block-columns { flex: 1 1 auto; height: auto !important; }
  .bc-slide > .wp-block-columns > .wp-block-column.bc-slide__media {
    flex: 0 0 42vh !important; height: 42vh !important; min-height: 0 !important;
  }
  .bc-slide > .wp-block-columns > .wp-block-column.bc-slide__panel {
    flex: 1 0 auto !important; padding: 3rem 1.5rem 2.5rem !important;
  }
  .bc-slider-nav { top: 42vh !important; bottom: auto !important; transform: translate(-50%, -50%); }
  .bc-slide__panel::after { bottom: 3%; }
}
/* ---------- Barre du haut : téléphone, réseaux, réservation ---------- */
#header [data-row*="top"] { background: var(--cds-ink) !important; border: 0 !important; box-shadow: none !important; }
#header [data-row*="top"] > .ct-container { min-height: 40px; }
#header [data-row*="top"] .ct-header-text p { margin: 0; }
#header [data-row*="top"] .ct-header-text a {
  color: #fff !important; text-decoration: none;
  font-size: 11.5px; font-weight: 500; letter-spacing: .18em;
  transition: color .2s ease;
}
#header [data-row*="top"] .ct-header-text a::before {
  content: ""; display: inline-block; width: 13px; height: 13px; margin-right: .7em; vertical-align: -2px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23BE986D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center / contain no-repeat;
}
#header [data-row*="top"] .ct-header-text a:hover { color: var(--cds-gold) !important; }
#header [data-row*="top"] .ct-social-box {
  --theme-icon-color: #fff; --theme-icon-hover-color: var(--cds-gold); --theme-icon-size: 15px;
  gap: 1.1rem;
}
#header [data-row*="top"] .ct-button {
  background: var(--cds-gold) !important; color: #fff !important; border: 0 !important;
  border-radius: 2px !important; min-height: 0;
  font-size: 10.5px; font-weight: 600; letter-spacing: .2em; padding: .6em 1.1em;
}
#header [data-row*="top"] .ct-button:hover { background: #fff !important; color: var(--cds-ink) !important; }

/* ---------- Pied de page : téléphone et icônes réseaux ---------- */
.cds-footer-phone a { color: inherit; text-decoration: none; font-weight: 500; letter-spacing: .08em; }
.cds-footer-phone a:hover { color: var(--cds-gold); }
.cds-social-icons { gap: .9rem !important; margin-top: .9rem !important; }
.cds-social-icons .wp-social-link { background: transparent !important; color: var(--cds-gold) !important; transition: transform .2s ease, opacity .2s ease; }
.cds-social-icons .wp-social-link svg { width: 20px; height: 20px; }
.cds-social-icons .wp-social-link:hover { transform: translateY(-2px); opacity: .8; }
/* Barre du haut sur mobile : téléphone, réseaux et bouton sur une ligne */
@media (max-width: 689.98px) {
  #header [data-row*="top"] .ct-header-text a { letter-spacing: .08em; font-size: 11px; }
  #header [data-row*="top"] .ct-header-text a::before { margin-right: .45em; }
  #header [data-row*="top"] .ct-social-box { gap: .8rem; }
  #header [data-row*="top"] .ct-button { letter-spacing: .12em; padding: .55em .9em; }
}
.cds-footer-phone a::before {
  content: ""; display: inline-block; width: 14px; height: 14px; margin-right: .6em; vertical-align: -2px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23BE986D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center / contain no-repeat;
}
#header [data-id="search"] { display: none !important; }

/* ---------- Page Contact : formulaire dans un bloc ---------- */
.cds-info--contact { align-items: flex-start !important; }
.cds-contact-form {
  background: var(--cds-grey);
  border-top: 2px solid var(--cds-gold);
  padding: clamp(1.75rem, 3.5vw, 2.75rem) !important;
}
.cds-contact-form .frm_forms { max-width: none; }
.cds-contact-form .frm_primary_label {
  font-size: 11px !important; font-weight: 600 !important;
  letter-spacing: .18em; text-transform: uppercase; color: var(--cds-ink) !important;
}
.cds-contact-form input[type="text"],
.cds-contact-form input[type="email"],
.cds-contact-form input[type="tel"],
.cds-contact-form textarea {
  background: #fff !important; border: 1px solid var(--cds-line) !important;
  border-radius: 0 !important; box-shadow: none !important;
  padding: .85em 1em !important; font: inherit; font-size: 14px !important; color: var(--cds-ink);
}
.cds-contact-form input:focus, .cds-contact-form textarea:focus {
  border-color: var(--cds-gold) !important; outline: none;
}
.cds-contact-form .frm_button_submit {
  background: var(--cds-gold) !important; color: #fff !important; border: 0 !important;
  border-radius: 2px !important; box-shadow: none !important;
  font-size: 11.5px !important; font-weight: 600 !important;
  letter-spacing: .22em; text-transform: uppercase;
  padding: 1.15em 2.4em !important; transition: background-color .25s ease;
}
.cds-contact-form .frm_button_submit:hover { background: var(--cds-ink) !important; }
@media (max-width: 781px) {
  .cds-contact-form { padding: 1.5rem 1.25rem !important; }
}
/* ---------- Page Contact : photo + coordonnées / formulaire, horaires en bandeau ---------- */
.cds-contact { gap: 0 !important; margin-block: 0 !important; align-items: stretch !important; }
.cds-contact__info {
  background: #fff;
  padding: clamp(3rem, 6vw, 5.5rem) clamp(1.75rem, 5vw, 4.5rem) !important;
  display: flex; flex-direction: column; justify-content: center;
}
.cds-contact__info > * { margin-block: 0 !important; }
.cds-contact__info .cds-kicker { margin-bottom: 1.4rem !important; }
.cds-contact__address {
  font-family: var(--cds-serif); font-size: clamp(1.25rem, 1.8vw, 1.5rem);
  line-height: 1.5; color: var(--cds-ink); margin-bottom: 1.6rem !important;
}
.cds-contact__phone a { font-family: var(--cds-serif); font-size: clamp(1.6rem, 2.4vw, 2.1rem); color: var(--cds-gold-dark) !important; text-decoration: none; transition: color .2s ease; }
.cds-contact__phone a:hover { color: var(--cds-ink) !important; }
.cds-contact__mail { margin: .3rem 0 1.8rem !important; }
.cds-contact__mail a { color: var(--cds-ink) !important; font-size: 14.5px; text-decoration-color: var(--cds-gold); text-underline-offset: 4px; }
.cds-contact__social { margin-top: 2rem !important; gap: 1.1rem !important; }
.cds-contact__social .wp-social-link { color: var(--cds-gold) !important; background: transparent !important; }
.cds-contact__social .wp-social-link svg { width: 22px; height: 22px; }

.cds-contact__form {
  background: var(--cds-grey); border-top: 0 !important;
  padding: clamp(3rem, 6vw, 5.5rem) clamp(1.75rem, 6vw, 6rem) !important;
  position: relative; overflow: hidden;
}
.cds-contact__form .cds-watermark { position: absolute; top: clamp(1.25rem, 3.5vw, 2.75rem); left: clamp(1.25rem, 5vw, 5rem); margin: 0 !important; }
.cds-contact__form > :not(.cds-watermark) { position: relative; z-index: 1; max-width: 620px; }
.cds-contact__form .cds-title { margin: 0 0 .6rem !important; }
.cds-contact__intro { font-size: 15px; line-height: 1.8; margin-bottom: 2rem !important; }

ul.cds-hours__list {
  list-style: none; padding: 0 !important; margin: 0 auto !important; max-width: 1100px;
  display: grid; grid-template-columns: repeat(7, 1fr);
  border-top: 1px solid #d8d1c7; border-bottom: 1px solid #d8d1c7;
}
.cds-hours__list li { text-align: center; padding: 1.4rem .5rem; margin: 0 !important; border-left: 1px solid #d8d1c7; }
.cds-hours__list li:first-child { border-left: 0; }
.cds-hours__list strong { display: block; font-size: 11px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--cds-ink); margin-bottom: .5rem; }
.cds-hours__list em { font-style: normal; font-family: var(--cds-serif); font-size: 16px; color: var(--cds-gold-dark); white-space: nowrap; }
.cds-hours__list li:last-child em { color: var(--cds-muted); }
@media (max-width: 781px) {
  .cds-contact { flex-direction: column !important; }
  .cds-contact > .wp-block-column { flex-basis: 100% !important; }
  ul.cds-hours__list { grid-template-columns: 1fr 1fr; }
  .cds-hours__list li { border-left: 0; border-bottom: 1px solid #d8d1c7; }
}