/**
 * Folies Secrètes — CMS premium 1A
 * Scope : pages CMS incluses (ids 1,2,5,6,10,11,12,13,14,16) — #17 Blog exclu
 * Chargé via theme.yml (controller cms, priority 510)
 */

body.page-cms.page-cms-1,
body.page-cms.page-cms-2,
body.page-cms.page-cms-5,
body.page-cms.page-cms-6,
body.page-cms.page-cms-10,
body.page-cms.page-cms-11,
body.page-cms.page-cms-12,
body.page-cms.page-cms-13,
body.page-cms.page-cms-14,
body.page-cms.page-cms-16 {
  --fs-cms-ivory: #fdfcfa;
  --fs-cms-cream: #f5f0ea;
  --fs-cms-warm: #faf8f5;
  --fs-cms-ink: #1a1716;
  --fs-cms-ink-soft: #4a4543;
  --fs-cms-gold: #b8956b;
  --fs-cms-line: rgba(26, 23, 22, 0.1);
  --fs-cms-radius: 16px;
  --fs-cms-shadow: 0 16px 48px rgba(26, 23, 22, 0.08);
  --fs-cms-serif: "Cormorant Garamond", Georgia, serif;
  --fs-cms-sans: "Manrope", system-ui, sans-serif;
  /* Largeur premium desktop (~1040px réassurance par défaut) */
  --fs-cms-width-content: min(65rem, calc(100vw - 2.5rem));
  /* Respiration interne cartes (mobile 20–24px par défaut) */
  --fs-cms-pad-x: clamp(1.25rem, 5vw, 1.5rem);
  --fs-cms-pad-inset-x: clamp(1.15rem, 4.5vw, 1.35rem);
  --fs-cms-pad-y: clamp(1.35rem, 3vw, 2.25rem);
  font-family: var(--fs-cms-sans);
  color: var(--fs-cms-ink);
  overflow-x: hidden;
}

/* Largeur par type de page (920–1100px cible desktop) */
body.page-cms.page-cms-2,
body.page-cms.page-cms-10,
body.page-cms.page-cms-11,
body.page-cms.page-cms-12,
body.page-cms.page-cms-13 {
  --fs-cms-width-content: min(68rem, calc(100vw - 2.5rem));
}

body.page-cms.page-cms-16 {
  --fs-cms-width-content: min(70rem, calc(100vw - 2.5rem));
}

body.page-cms.page-cms-1 #wrapper,
body.page-cms.page-cms-2 #wrapper,
body.page-cms.page-cms-5 #wrapper,
body.page-cms.page-cms-6 #wrapper,
body.page-cms.page-cms-10 #wrapper,
body.page-cms.page-cms-11 #wrapper,
body.page-cms.page-cms-12 #wrapper,
body.page-cms.page-cms-13 #wrapper,
body.page-cms.page-cms-14 #wrapper,
body.page-cms.page-cms-16 #wrapper {
  background: linear-gradient(180deg, var(--fs-cms-cream) 0%, var(--fs-cms-ivory) 55%, var(--fs-cms-warm) 100%);
}

body.page-cms.page-cms-1 #content-wrapper,
body.page-cms.page-cms-2 #content-wrapper,
body.page-cms.page-cms-5 #content-wrapper,
body.page-cms.page-cms-6 #content-wrapper,
body.page-cms.page-cms-10 #content-wrapper,
body.page-cms.page-cms-11 #content-wrapper,
body.page-cms.page-cms-12 #content-wrapper,
body.page-cms.page-cms-13 #content-wrapper,
body.page-cms.page-cms-14 #content-wrapper,
body.page-cms.page-cms-16 #content-wrapper {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

body.page-cms .fs-cms-premium {
  width: 100%;
  padding: clamp(1.5rem, 4vw, 2.5rem) clamp(1rem, 3vw, 1.5rem) clamp(3rem, 6vw, 4.5rem);
  box-sizing: border-box;
}

body.page-cms .fs-cms-hero {
  width: 100%;
  max-width: var(--fs-cms-width-content);
  margin: 0 auto clamp(1.25rem, 3vw, 2rem);
  padding: 0 clamp(0.25rem, 1.5vw, 0.5rem);
  box-sizing: border-box;
  text-align: center;
}

body.page-cms .fs-cms-kicker {
  margin: 0 0 0.5rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8f9677;
}

body.page-cms .fs-cms-hero__title {
  margin: 0;
  font-family: var(--fs-cms-serif);
  font-size: clamp(2rem, 4.5vw, 2.75rem);
  font-weight: 500;
  line-height: 1.15;
  color: var(--fs-cms-ink);
}

body.page-cms .fs-cms-layout {
  width: 100%;
  max-width: var(--fs-cms-width-content);
  margin: 0 auto;
  padding: 0 clamp(0.25rem, 1.5vw, 0.5rem);
  box-sizing: border-box;
}

body.page-cms .fs-cms-card {
  background: #fff;
  border: 1px solid var(--fs-cms-line);
  border-radius: var(--fs-cms-radius);
  box-shadow: var(--fs-cms-shadow);
  overflow: hidden;
}

body.page-cms .fs-cms-card > .page-content {
  padding: 0;
  margin: 0;
  border: none;
  background: transparent;
}

body.page-cms .fs-cms-content {
  padding: var(--fs-cms-pad-y) var(--fs-cms-pad-x) clamp(1.65rem, 3.5vw, 2.75rem);
  font-size: 1rem;
  line-height: 1.72;
  color: var(--fs-cms-ink-soft);
}

body.page-cms .fs-cms-content > :first-child {
  margin-top: 0;
}

body.page-cms .fs-cms-content h2,
body.page-cms .fs-cms-content h3,
body.page-cms .fs-cms-content h4 {
  font-family: var(--fs-cms-serif);
  font-weight: 500;
  color: var(--fs-cms-ink);
  line-height: 1.25;
  margin: 1.75rem 0 0.75rem;
}

body.page-cms .fs-cms-content h2 {
  font-size: clamp(1.35rem, 2.5vw, 1.65rem);
}

body.page-cms .fs-cms-content h3 {
  font-size: clamp(1.15rem, 2vw, 1.35rem);
}

body.page-cms .fs-cms-content p,
body.page-cms .fs-cms-content li {
  margin-bottom: 0.85rem;
}

body.page-cms .fs-cms-content ul,
body.page-cms .fs-cms-content ol {
  padding-left: 1.25rem;
  margin-bottom: 1rem;
}

body.page-cms .fs-cms-content a {
  color: var(--fs-cms-gold);
  text-decoration: underline;
  text-underline-offset: 2px;
}

body.page-cms .fs-cms-content a:hover {
  color: var(--fs-cms-ink);
}

body.page-cms .fs-cms-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0 1.25rem;
  font-size: 0.92rem;
}

body.page-cms .fs-cms-content th,
body.page-cms .fs-cms-content td {
  border: 1px solid var(--fs-cms-line);
  padding: 0.55rem 0.65rem;
  text-align: left;
  vertical-align: top;
}

body.page-cms .fs-cms-content img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}

/* Encadrés contenu BO (classes fs-*) */
body.page-cms .fs-cms-content [class*="fs-"] {
  box-sizing: border-box;
}

body.page-cms .fs-cms-content [class*="fs-cgv-"],
body.page-cms .fs-cms-content [class*="fs-legal"],
body.page-cms .fs-cms-content [class*="fs-mention"],
body.page-cms .fs-cms-content [class*="fs-privacy"],
body.page-cms .fs-cms-content [class*="fs-cookie"],
body.page-cms .fs-cms-content [class*="fs-shipping"],
body.page-cms .fs-cms-content [class*="fs-payment"],
body.page-cms .fs-cms-content [class*="fs-packaging"],
body.page-cms .fs-cms-content [class*="fs-about"],
body.page-cms .fs-cms-content [class*="fs-service"] {
  border-radius: 12px;
}

body.page-cms .fs-cms-content .fs-cgv-hero,
body.page-cms .fs-cms-content [class*="hero"] {
  margin-bottom: 1.25rem;
}

body.page-cms .fs-cms-content .fs-cgv-alert,
body.page-cms .fs-cms-content [class*="alert"] {
  border-radius: 10px;
  padding: clamp(0.85rem, 2vw, 1.1rem) var(--fs-cms-pad-inset-x);
}

/* Masquer titres dupliqués dans le HTML BO si présents en h1 */
body.page-cms .fs-cms-content > h1:first-child {
  display: none;
}

body.page-cms:not(.page-cms-17) .page_heading.cms_page_heading {
  display: none !important;
}

@media (max-width: 767px) {
  body.page-cms .fs-cms-hero,
  body.page-cms .fs-cms-layout {
    padding-left: 0;
    padding-right: 0;
  }

  body.page-cms .fs-cms-content {
    padding: 1.15rem var(--fs-cms-pad-x) 1.5rem;
    font-size: 0.95rem;
  }

  body.page-cms .fs-cms-content table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  body.page-cms .fs-cms-hero__title {
    font-size: 1.85rem;
  }
}

/* ==========================================================================
   CMS largeur premium — correction 2026-05-26 (non lock)
   ========================================================================== */

@media (min-width: 768px) {
  body.page-cms:not(.page-cms-17) {
    --fs-cms-pad-x: clamp(2rem, 3.5vw, 2.5rem);
    --fs-cms-pad-inset-x: clamp(1.65rem, 3vw, 2rem);
  }
}

@media (min-width: 992px) {
  body.page-cms:not(.page-cms-17) {
    --fs-cms-pad-x: clamp(3rem, 4vw, 4rem);
    --fs-cms-pad-inset-x: clamp(2rem, 2.8vw, 2.5rem);
    --fs-cms-pad-y: clamp(1.65rem, 3vw, 2.5rem);
  }

  body.page-cms .fs-cms-premium {
    padding-left: clamp(1.25rem, 4vw, 2.5rem);
    padding-right: clamp(1.25rem, 4vw, 2.5rem);
  }

  body.page-cms .fs-cms-premium--legal .fs-cms-content {
    font-size: 1.02rem;
    line-height: 1.78;
  }
}

@media (min-width: 768px) {
  body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem 1.25rem;
  }

  body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-cms-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem 1.25rem;
    margin: 1.35rem 0;
  }

  body.page-cms .fs-cms-premium--standard .fs-cms-content [class*="fs-shipping"] .fs-cms-card,
  body.page-cms .fs-cms-premium--standard .fs-cms-content [class*="fs-payment"] .fs-cms-card,
  body.page-cms .fs-cms-premium--standard .fs-cms-content [class*="fs-packaging"] .fs-cms-card,
  body.page-cms .fs-cms-premium--standard .fs-cms-content [class*="fs-service"] .fs-cms-card,
  body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-info-card {
    padding: clamp(1.2rem, 2.5vw, 1.65rem) var(--fs-cms-pad-inset-x);
  }
}

/* ==========================================================================
   CMS premium 1A-bis — Qui sommes-nous, pages légales longues
   ========================================================================== */

/* —— Pages légales : éviter double hero / titres BO (priorité > customer-s1.css) —— */
body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-legal-page > .fs-cms-hero,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-legal-readable > .fs-cms-hero,
body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-cgv-hero,
body.page-cms .fs-cms-premium--legal .fs-cms-content > [class*="-hero"]:first-child,
body.cms-id-2 .fs-cms-premium--legal .fs-cms-content .fs-cms-hero,
body.cms-id-10 .fs-cms-premium--legal .fs-cms-content [class*="-hero"]:first-child,
body.cms-id-11 .fs-cms-premium--legal .fs-cms-content [class*="-hero"]:first-child,
body.cms-id-12 .fs-cms-premium--legal .fs-cms-content [class*="-hero"]:first-child,
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content > .fs-cgv-hero {
  margin: 0 0 1.35rem !important;
  padding: 0 0 1.25rem !important;
  max-width: none !important;
  border: none !important;
  border-bottom: 1px solid var(--fs-cms-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
  overflow: visible !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-legal-readable > .fs-cms-hero::after,
body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-cms-hero:first-child::after {
  display: none !important;
  content: none !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-legal-page > .fs-cms-hero h1,
body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-cgv-hero h1,
body.page-cms .fs-cms-premium--legal .fs-cms-content > [class*="-hero"]:first-child h1,
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-hero h1,
body.cms-id-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-hero h1 {
  display: none !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-legal-page > .fs-cms-hero .fs-cms-kicker,
body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-cgv-hero .fs-cgv-kicker,
body.page-cms .fs-cms-premium--legal .fs-cms-content > [class*="-hero"]:first-child [class*="kicker"],
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-kicker {
  display: none !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-legal-page > .fs-cms-hero .fs-cms-intro,
body.page-cms .fs-cms-premium--legal .fs-cms-content > .fs-cgv-hero > p,
body.page-cms .fs-cms-premium--legal .fs-cms-content > [class*="-hero"]:first-child > p {
  margin: 0;
  font-size: 1.02rem;
  line-height: 1.75;
  color: var(--fs-cms-ink-soft);
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-alert,
body.page-cms .fs-cms-premium--legal .fs-cms-content [class*="alert"] {
  margin: 0 0 1.5rem;
  padding: 0.9rem 1.1rem;
  background: rgba(184, 149, 107, 0.12);
  border: 1px solid rgba(184, 149, 107, 0.28);
  border-radius: 10px;
  font-size: 0.95rem;
  color: var(--fs-cms-ink);
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-legal-readable {
  max-width: none !important;
  padding-bottom: 0 !important;
}

/* Sections CGV / cartes BO : conserver padding horizontal */
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section,
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-soft,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-warning {
  margin: 1.25rem 0 0 !important;
  padding: clamp(1.35rem, 2.5vw, 1.85rem) var(--fs-cms-pad-inset-x) !important;
  max-width: none !important;
  border-top: none !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section:first-of-type {
  margin-top: 0.5rem !important;
}

/* Sections plates (Mentions, etc.) : séparateur + marge parent */
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section:not(.fs-cms-highlight) {
  margin: 1.75rem 0 0 !important;
  padding: 1.35rem 0 0 !important;
  max-width: none !important;
  border-top: 1px solid var(--fs-cms-line);
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section:not(.fs-cms-highlight):first-of-type {
  border-top: none;
  padding-top: 0;
  margin-top: 0.5rem;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section h2,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section h2 {
  margin: 0 0 1rem;
  font-size: clamp(1.25rem, 2.2vw, 1.55rem);
  letter-spacing: 0.01em;
  line-height: 1.3;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section h3,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section h3 {
  margin: 1.5rem 0 0.65rem;
  font-size: 1.12rem;
  line-height: 1.35;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section.fs-cms-highlight,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-highlight,
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark {
  margin: 1.25rem 0 !important;
  padding: clamp(1.25rem, 2.5vw, 1.65rem) var(--fs-cms-pad-inset-x) !important;
  min-height: 0 !important;
  border-radius: 12px !important;
  background: #fff !important;
  border: 1px solid rgba(184, 149, 107, 0.22) !important;
  box-shadow: 0 8px 28px rgba(26, 23, 22, 0.05) !important;
  color: var(--fs-cms-ink-soft) !important;
}

body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark h2,
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark p,
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark strong,
body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark a {
  color: inherit !important;
}

body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark h2 {
  color: var(--fs-cms-ink) !important;
}

body.cms-id-13 .fs-cms-premium--legal .fs-cms-content .fs-cgv-section-dark a {
  color: var(--fs-cms-gold) !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight h2,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section.fs-cms-highlight h2,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-highlight h2 {
  margin: 0 0 0.65rem !important;
  font-size: clamp(1.15rem, 2.2vw, 1.4rem) !important;
  line-height: 1.3 !important;
  color: var(--fs-cms-ink) !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight p,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section.fs-cms-highlight p,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-highlight p,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight li,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight a {
  margin-bottom: 0.5rem !important;
  font-size: 0.98rem !important;
  line-height: 1.72 !important;
  color: var(--fs-cms-ink-soft) !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight strong,
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-highlight strong {
  color: var(--fs-cms-ink) !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight a:hover {
  color: var(--fs-cms-ink) !important;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-grid {
  display: grid;
  gap: 1.15rem;
  margin: 1.35rem 0 1.5rem;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-grid .fs-cms-card {
  padding: clamp(1.2rem, 2.5vw, 1.65rem) var(--fs-cms-pad-inset-x);
  background: var(--fs-cms-warm);
  border: 1px solid var(--fs-cms-line);
  box-shadow: none;
}

body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-company {
  margin: 0.75rem 0;
  padding: clamp(0.85rem, 2vw, 1.1rem) var(--fs-cms-pad-inset-x);
  background: #fff;
  border-radius: 10px;
  border: 1px solid var(--fs-cms-line);
  font-size: 0.95rem;
  line-height: 1.65;
}

/* —— Qui sommes-nous : éviter double hero —— */
body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-hero,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-hero,
.page-cms-16 .fs-cms-premium--about .fs-cms-content .fs-about-hero {
  margin: 0 0 1.75rem !important;
  padding: 0 0 1.5rem !important;
  min-height: 0 !important;
  border: none !important;
  border-bottom: 1px solid var(--fs-cms-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-hero::before,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-hero::before {
  display: none !important;
  content: none !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-hero h1,
body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-hero .fs-about-kicker,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-hero h1,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-hero .fs-about-kicker {
  display: none !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-hero > p {
  margin: 0;
  font-size: 1.08rem;
  line-height: 1.75;
  color: var(--fs-cms-ink-soft);
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-label {
  margin: 0 0 0.35rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #8f9677;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-intro {
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 1.25rem !important;
  align-items: start !important;
  margin: 0 0 2rem !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro h2 {
  margin: 0 0 0.75rem;
  font-size: clamp(1.35rem, 2.5vw, 1.65rem);
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro-card {
  padding: 1.15rem 1.2rem;
  background: var(--fs-cms-warm);
  border: 1px solid var(--fs-cms-line);
  border-radius: 12px;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-value-card {
  padding: 1.1rem 1.15rem;
  background: var(--fs-cms-warm);
  border: 1px solid var(--fs-cms-line);
  border-radius: 12px;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-value-card h3 {
  margin: 0.35rem 0 0.5rem;
  font-size: 1.15rem;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-story {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 1.25rem;
  margin-top: 2rem;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-story-card,
body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-promise {
  padding: 1.15rem 1.2rem;
  background: var(--fs-cms-warm);
  border: 1px solid var(--fs-cms-line);
  border-radius: 12px;
}


@media (max-width: 991px) {
  body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro,
  body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-story {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 767px) {
  body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-grid {
    grid-template-columns: 1fr;
  }

  body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-grid {
    grid-template-columns: 1fr;
  }

  body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section,
  body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section {
    margin-top: 1.35rem;
    padding-top: 1.1rem;
  }

}

/* ==========================================================================
   CMS premium 1A-ter — Qui sommes-nous (overflow)
   ========================================================================== */

/* —— Qui sommes-nous : carte sans clip + annuler breakout customer-s1 —— */
body.page-cms.page-cms-16 .fs-cms-premium--about .fs-cms-card,
body.cms-id-16 .fs-cms-premium--about .fs-cms-card {
  overflow: visible !important;
}


body#cms.page-cms-16 .fs-cms-premium--about .fs-cms-content .fs-about-page,
body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-page,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-page,
.page-cms-16 .fs-cms-premium--about .fs-cms-content .fs-about-page {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  overflow: visible !important;
  color: var(--fs-cms-ink-soft) !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-page * {
  max-width: 100%;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-hero > p {
  max-width: none !important;
  margin: 0 !important;
  text-align: left !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-intro {
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr) !important;
  gap: 1rem !important;
  margin-top: 0 !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro-text,
body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro-card,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-intro-text,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-intro-card {
  padding: 1.15rem 1.2rem !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  min-width: 0 !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-values,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-values {
  margin-top: 1.5rem !important;
  padding: 1.25rem 1rem !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-grid,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.85rem !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-value-card,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-value-card {
  min-height: 0 !important;
  padding: 1rem !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  transform: none !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-value-card:hover {
  transform: none !important;
  box-shadow: none !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-story,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-story {
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr) !important;
  gap: 1rem !important;
  margin-top: 1.5rem !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-story-card,
body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-promise,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-story-card,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-promise {
  padding: 1.15rem 1.2rem !important;
  min-width: 0 !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-trust,
body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-trust {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
  margin-top: 1.5rem !important;
}

body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-trust-item {
  padding: 0.85rem !important;
  border-radius: 10px !important;
  background: var(--fs-cms-warm) !important;
  border: 1px solid var(--fs-cms-line) !important;
  text-align: center !important;
}


@media (max-width: 991px) {
  body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-intro,
  body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-intro,
  body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-story,
  body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-story {
    grid-template-columns: 1fr !important;
  }

  body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-grid,
  body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-grid {
    grid-template-columns: 1fr !important;
  }

  body.page-cms .fs-cms-premium--about .fs-cms-content .fs-about-trust,
  body.cms-id-16 .fs-cms-premium--about .fs-cms-content .fs-about-trust {
    grid-template-columns: 1fr !important;
  }

}

@media (max-width: 767px) {

  body#cms.page-cms-16 .fs-cms-premium--about .fs-cms-content .fs-about-page,
  body.page-cms.page-cms-16 .fs-cms-premium--about .fs-cms-content .fs-about-page {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
  }

  body.page-cms.page-cms-16 .fs-cms-premium--about .fs-cms-content {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

/* ==========================================================================
   CMS premium 1A — polish visuel 2026-05-26 (non lock)
   ========================================================================== */

/* Réassurance : un seul hero (shell) — intro BO discrète */
body.page-cms .fs-cms-premium--standard .fs-cms-content > .fs-cms-hero:first-child,
body.page-cms.page-cms-1 .fs-cms-content > .fs-cms-hero:first-child,
body.page-cms.page-cms-5 .fs-cms-content > .fs-cms-hero:first-child,
body.page-cms.page-cms-6 .fs-cms-content > .fs-cms-hero:first-child,
body.page-cms.page-cms-14 .fs-cms-content > .fs-cms-hero:first-child {
  margin: 0 0 1.25rem !important;
  padding: 0 0 1.15rem !important;
  min-height: 0 !important;
  max-width: none !important;
  border: none !important;
  border-bottom: 1px solid var(--fs-cms-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
  overflow: visible !important;
}

body.page-cms .fs-cms-premium--standard .fs-cms-content > .fs-cms-hero:first-child::after,
body.page-cms.page-cms-1 .fs-cms-content > .fs-cms-hero:first-child::after,
body.page-cms.page-cms-5 .fs-cms-content > .fs-cms-hero:first-child::after {
  display: none !important;
  content: none !important;
}

body.page-cms .fs-cms-premium--standard .fs-cms-content > .fs-cms-hero:first-child h1,
body.page-cms .fs-cms-premium--standard .fs-cms-content > .fs-cms-hero:first-child .fs-cms-kicker,
body.page-cms.page-cms-1 .fs-cms-content > .fs-cms-hero:first-child h1,
body.page-cms.page-cms-1 .fs-cms-content > .fs-cms-hero:first-child .fs-cms-kicker,
body.page-cms.page-cms-5 .fs-cms-content > .fs-cms-hero:first-child h1,
body.page-cms.page-cms-5 .fs-cms-content > .fs-cms-hero:first-child .fs-cms-kicker,
body.page-cms.page-cms-14 .fs-cms-content > .fs-cms-hero:first-child h1,
body.page-cms.page-cms-14 .fs-cms-content > .fs-cms-hero:first-child .fs-cms-kicker {
  display: none !important;
}

body.page-cms .fs-cms-premium--standard .fs-cms-content > .fs-cms-hero:first-child > p,
body.page-cms .fs-cms-premium--standard .fs-cms-content > .fs-cms-hero:first-child .fs-cms-intro,
body.page-cms.page-cms-1 .fs-cms-content > .fs-cms-hero:first-child > p,
body.page-cms.page-cms-1 .fs-cms-content > .fs-cms-hero:first-child .fs-cms-intro,
body.page-cms.page-cms-5 .fs-cms-content > .fs-cms-hero:first-child > p {
  margin: 0 !important;
  max-width: none !important;
  font-size: 1.02rem !important;
  line-height: 1.75 !important;
  color: var(--fs-cms-ink-soft) !important;
}

/* Mentions : neutraliser contraintes customer-s1 sur la coque premium */
body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable,
body.cms-id-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable {
  max-width: none !important;
  margin: 0 !important;
  padding-bottom: 0 !important;
}

body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-grid,
body.cms-id-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-grid {
  max-width: none !important;
}

body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-grid .fs-cms-card,
body.cms-id-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-card {
  background: #fff !important;
  border: 1px solid var(--fs-cms-line) !important;
  box-shadow: none !important;
  min-height: 0 !important;
}

body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-grid .fs-cms-card h2,
body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-grid .fs-cms-card p {
  color: var(--fs-cms-ink-soft) !important;
}

body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-grid .fs-cms-card h2 {
  color: var(--fs-cms-ink) !important;
}

/* CGV mobile : H1 shell plus compact */
@media (max-width: 767px) {
  body.page-cms.page-cms-13 .fs-cms-hero {
    margin-bottom: 1rem;
    padding-bottom: 0.25rem;
  }

  body.page-cms.page-cms-13 .fs-cms-hero__title {
    font-size: clamp(1.35rem, 5.2vw, 1.55rem) !important;
    line-height: 1.22 !important;
    letter-spacing: -0.01em;
    max-width: 16em;
    margin-left: auto;
    margin-right: auto;
  }

  body.page-cms.page-cms-13 .fs-cms-kicker {
    margin-bottom: 0.35rem;
  }

  body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-cms-highlight,
  body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-highlight {
    padding: 1.15rem var(--fs-cms-pad-x) !important;
    margin: 1rem 0 !important;
  }

  body.page-cms.page-cms-2 .fs-cms-premium--legal .fs-cms-content .fs-legal-readable .fs-cms-grid .fs-cms-card {
    padding: 1.15rem var(--fs-cms-pad-x) !important;
  }
}

/* ==========================================================================
   Rubrique hub — Aide & Service client (catégorie CMS id 2)
   Ciblage : .fs-cms-hub présent uniquement sur la vue rubrique (pas page CMS #2)
   ========================================================================== */

body.cms-id-2:has(.fs-cms-hub) {
  --fs-cms-ivory: #fdfcfa;
  --fs-cms-cream: #f5f0ea;
  --fs-cms-warm: #faf8f5;
  --fs-cms-ink: #1a1716;
  --fs-cms-ink-soft: #4a4543;
  --fs-cms-gold: #b8956b;
  --fs-cms-line: rgba(26, 23, 22, 0.1);
  --fs-cms-radius: 16px;
  --fs-cms-shadow: 0 16px 48px rgba(26, 23, 22, 0.08);
  --fs-cms-serif: "Cormorant Garamond", Georgia, serif;
  --fs-cms-sans: "Manrope", system-ui, sans-serif;
  --fs-cms-width-content: min(72rem, calc(100vw - 2.5rem));
  --fs-cms-pad-x: clamp(1.25rem, 5vw, 1.5rem);
  font-family: var(--fs-cms-sans);
  color: var(--fs-cms-ink);
  overflow-x: hidden;
}

body.cms-id-2:has(.fs-cms-hub) #wrapper {
  background: linear-gradient(180deg, var(--fs-cms-cream) 0%, var(--fs-cms-ivory) 55%, var(--fs-cms-warm) 100%);
}

body.cms-id-2:has(.fs-cms-hub) #content-wrapper {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

body.cms-id-2:has(.fs-cms-hub) #content.page-content {
  max-width: none;
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
}

body.cms-id-2 .fs-cms-hub {
  width: 100%;
  max-width: var(--fs-cms-width-content);
  margin: 0 auto;
  padding: clamp(1.5rem, 4vw, 2.5rem) clamp(1rem, 3vw, 1.5rem) clamp(3rem, 6vw, 4.5rem);
  box-sizing: border-box;
}

body.cms-id-2 .fs-cms-hub .fs-cms-hero {
  text-align: center;
  margin-bottom: clamp(1rem, 2.5vw, 1.5rem);
}

body.cms-id-2 .fs-cms-hub-intro {
  margin: 0 auto clamp(1.75rem, 4vw, 2.5rem);
  max-width: 42rem;
  text-align: center;
  font-size: 1.05rem;
  line-height: 1.72;
  color: var(--fs-cms-ink-soft);
}

body.cms-id-2 .fs-cms-hub-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(0.85rem, 2vw, 1.15rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

body.cms-id-2 .fs-cms-hub-grid__item {
  margin: 0;
  padding: 0;
}

body.cms-id-2 .fs-cms-hub-card {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  height: 100%;
  padding: clamp(1.15rem, 2.5vw, 1.35rem) clamp(1.1rem, 2.5vw, 1.25rem);
  text-decoration: none;
  color: inherit;
  background: #fff;
  border: 1px solid var(--fs-cms-line);
  border-radius: var(--fs-cms-radius);
  box-shadow: var(--fs-cms-shadow);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  box-sizing: border-box;
}

body.cms-id-2 .fs-cms-hub-card:hover,
body.cms-id-2 .fs-cms-hub-card:focus-visible {
  border-color: rgba(184, 149, 107, 0.45);
  box-shadow: 0 20px 52px rgba(26, 23, 22, 0.12);
  transform: translateY(-2px);
  outline: none;
}

body.cms-id-2 .fs-cms-hub-card:focus-visible {
  outline: 2px solid var(--fs-cms-gold);
  outline-offset: 2px;
}

body.cms-id-2 .fs-cms-hub-card__title {
  font-family: var(--fs-cms-serif);
  font-size: clamp(1.15rem, 2.2vw, 1.35rem);
  font-weight: 500;
  line-height: 1.25;
  color: var(--fs-cms-ink);
}

body.cms-id-2 .fs-cms-hub-card__desc {
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--fs-cms-ink-soft);
}

body.cms-id-2 .fs-cms-hub-more {
  margin-top: clamp(2rem, 4vw, 2.75rem);
  padding-top: clamp(1.25rem, 3vw, 1.75rem);
  border-top: 1px solid var(--fs-cms-line);
}

body.cms-id-2 .fs-cms-hub-more__title {
  margin: 0 0 0.85rem;
  font-family: var(--fs-cms-serif);
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--fs-cms-ink);
}

body.cms-id-2 .fs-cms-hub-more__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.25rem;
}

body.cms-id-2 .fs-cms-hub-more__list a {
  font-size: 0.95rem;
  color: var(--fs-cms-ink-soft);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

body.cms-id-2 .fs-cms-hub-more__list a:hover,
body.cms-id-2 .fs-cms-hub-more__list a:focus-visible {
  color: var(--fs-cms-ink);
}

@media (max-width: 991px) {
  body.cms-id-2 .fs-cms-hub-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  body.cms-id-2 .fs-cms-hub-grid {
    grid-template-columns: 1fr;
  }

  body.cms-id-2 .fs-cms-hub {
    padding-left: clamp(0.85rem, 4vw, 1rem);
    padding-right: clamp(0.85rem, 4vw, 1rem);
  }
}

/* ==========================================================================
   CMS premium 1A-bis — harmonisation globale blocs (équilibre clair / sombre)
   Règle : un seul bloc sombre fort par page → CTA final (.fs-cms-cta / .fs-premium-cta)
   Intermédiaires : cartes éditoriales claires premium (override customer-s1.css)
   ========================================================================== */

/* —— Cartes claires : blocs intermédiaires (highlights, sections dark BO) —— */
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-section.fs-cms-highlight,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cgv-section-dark,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-section-dark,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content [class*="fs-privacy"] .fs-cms-highlight,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content [class*="fs-withdrawal"] .fs-cms-highlight,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-premium-note {
  margin: 1.35rem 0 !important;
  padding: clamp(1.25rem, 2.5vw, 1.65rem) var(--fs-cms-pad-inset-x) !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #fff 0%, var(--fs-cms-warm) 100%) !important;
  border: 1px solid rgba(184, 149, 107, 0.2) !important;
  box-shadow: 0 8px 28px rgba(26, 23, 22, 0.05) !important;
  color: var(--fs-cms-ink-soft) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight h2,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-section.fs-cms-highlight h2,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cgv-section-dark h2,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-section-dark h2,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-premium-note h3 {
  margin: 0 0 0.65rem !important;
  font-family: var(--fs-cms-serif) !important;
  font-size: clamp(1.15rem, 2.2vw, 1.4rem) !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  color: var(--fs-cms-ink) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight p,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-section.fs-cms-highlight p,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cgv-section-dark p,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-section-dark p,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight li,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-premium-note p {
  margin-bottom: 0.55rem !important;
  font-size: 0.98rem !important;
  line-height: 1.72 !important;
  color: var(--fs-cms-ink-soft) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight strong,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cgv-section-dark strong {
  color: var(--fs-cms-ink) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight a,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cgv-section-dark a {
  color: var(--fs-cms-gold) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight .fs-cms-kicker {
  color: #8f9677 !important;
}

/* Deuxième highlight même page : respiration légèrement différente */
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight + .fs-cms-section.fs-cms-highlight,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-section.fs-cms-highlight ~ .fs-cms-section.fs-cms-highlight {
  background: var(--fs-cms-warm) !important;
  border-color: var(--fs-cms-line) !important;
}

/* Encadrés info / retours — harmonisation */
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-info-box,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-shipping-info-card,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-info-card {
  margin: 1.25rem 0 !important;
  padding: clamp(1.15rem, 2.5vw, 1.5rem) var(--fs-cms-pad-inset-x) !important;
  border-radius: 12px !important;
  background: #fff !important;
  border: 1px solid var(--fs-cms-line) !important;
  box-shadow: 0 6px 22px rgba(26, 23, 22, 0.04) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-info-box h2,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-shipping-info-card h2,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-info-card h2 {
  font-family: var(--fs-cms-serif) !important;
  color: var(--fs-cms-ink) !important;
}

/* Cookies v2 — cartes alignées */
body.page-cms.page-cms-12 .fs-cms-content .fs-cookie-v2-section,
body.page-cms.page-cms-12 .fs-cms-content .fs-cookie-v2-card {
  border-radius: 12px !important;
  border: 1px solid var(--fs-cms-line) !important;
  box-shadow: 0 6px 22px rgba(26, 23, 22, 0.04) !important;
}

body.page-cms.page-cms-12 .fs-cms-content .fs-cookie-v2-contact {
  background: linear-gradient(135deg, var(--fs-cms-warm) 0%, #fff 100%) !important;
  border: 1px solid rgba(184, 149, 107, 0.2) !important;
}

/* —— Bloc sombre unique : CTA final premium —— */
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-cta,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-premium-cta {
  margin: clamp(1.75rem, 3.5vw, 2.25rem) 0 0 !important;
  padding: clamp(1.65rem, 3vw, 2.35rem) var(--fs-cms-pad-inset-x) !important;
  border-radius: 14px !important;
  text-align: center !important;
  background: linear-gradient(135deg, #2a1720 0%, #452536 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 20px 48px rgba(42, 23, 32, 0.14) !important;
  color: rgba(253, 252, 250, 0.9) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-cta h2,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-premium-cta h2 {
  margin: 0 0 0.75rem !important;
  font-family: var(--fs-cms-serif) !important;
  font-size: clamp(1.35rem, 2.8vw, 1.75rem) !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  color: var(--fs-cms-ivory) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-cta p,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-premium-cta p {
  max-width: 36rem !important;
  margin: 0 auto 1.15rem !important;
  font-size: 1rem !important;
  line-height: 1.75 !important;
  color: rgba(253, 252, 250, 0.82) !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-cta .fs-cms-kicker,
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-premium-cta .fs-cms-kicker {
  color: var(--fs-cms-gold) !important;
}

/* Cartes grille réassurance */
body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-cms-grid .fs-cms-card,
body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-info-card,
body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-service-card {
  padding: clamp(1.2rem, 2.5vw, 1.65rem) var(--fs-cms-pad-inset-x) !important;
  background: #fff !important;
  border: 1px solid var(--fs-cms-line) !important;
  border-radius: 12px !important;
  box-shadow: 0 6px 22px rgba(26, 23, 22, 0.04) !important;
}

body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-cms-grid .fs-cms-card h2,
body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-info-card h2,
body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-service-card h2,
body.page-cms .fs-cms-premium--standard .fs-cms-content .fs-cms-grid .fs-cms-card h3 {
  margin-top: 0.35rem !important;
  color: var(--fs-cms-ink) !important;
  font-family: var(--fs-cms-serif) !important;
}

/* Bouton CTA */
body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 11rem !important;
  min-height: 2.75rem !important;
  margin-top: 0.25rem !important;
  padding: 0.65rem 1.5rem !important;
  border-radius: 999px !important;
  background: var(--fs-cms-gold) !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  box-shadow: 0 8px 24px rgba(184, 149, 107, 0.35) !important;
  transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
}

body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-button:hover {
  background: var(--fs-cms-ivory) !important;
  color: var(--fs-cms-ink) !important;
  box-shadow: 0 10px 28px rgba(26, 23, 22, 0.12) !important;
  transform: translateY(-1px) !important;
}

/* Sections légales plates — respiration */
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cms-section:not(.fs-cms-highlight):not(.fs-cms-warning):not(.fs-cms-soft),
body.page-cms .fs-cms-premium--legal .fs-cms-content .fs-cgv-section:not(.fs-cgv-section-dark):not(.fs-cgv-section-warning):not(.fs-cgv-section-soft) {
  margin-top: 1.5rem !important;
}

@media (max-width: 767px) {
  body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-highlight,
  body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-cta,
  body.page-cms:not(.page-cms-17) .fs-cms-premium .fs-cms-content .fs-cms-info-box {
    padding-left: var(--fs-cms-pad-x) !important;
    padding-right: var(--fs-cms-pad-x) !important;
  }
}

/* ==========================================================================
   CMS premium 1A-bis — Service client : pictogrammes SVG (remplace emojis BO)
   Les emojis 💬🔒📦 peuvent s’afficher en carrés vides (headless / polices).
   ========================================================================== */

body.page-cms.cms-id-6 .fs-cms-premium .fs-cms-content .fs-service-icon,
body.page-cms.page-cms-6 .fs-cms-premium .fs-cms-content .fs-service-icon {
  position: relative !important;
  width: 2.75rem !important;
  height: 2.75rem !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: rgba(184, 149, 107, 0.14) !important;
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  overflow: hidden !important;
  text-indent: -9999px !important;
}

body.page-cms.cms-id-6 .fs-cms-premium .fs-cms-content .fs-service-icon::before,
body.page-cms.page-cms-6 .fs-cms-premium .fs-cms-content .fs-service-icon::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  margin: auto !important;
  width: 1.35rem !important;
  height: 1.35rem !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
}

body.page-cms.cms-id-6 .fs-cms-premium .fs-cms-content .fs-service-cards .fs-service-card:nth-child(1) .fs-service-icon::before,
body.page-cms.page-cms-6 .fs-cms-premium .fs-cms-content .fs-service-cards .fs-service-card:nth-child(1) .fs-service-icon::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b8956b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z'/%3E%3C/svg%3E") !important;
}

body.page-cms.cms-id-6 .fs-cms-premium .fs-cms-content .fs-service-cards .fs-service-card:nth-child(2) .fs-service-icon::before,
body.page-cms.page-cms-6 .fs-cms-premium .fs-cms-content .fs-service-cards .fs-service-card:nth-child(2) .fs-service-icon::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b8956b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") !important;
}

body.page-cms.cms-id-6 .fs-cms-premium .fs-cms-content .fs-service-cards .fs-service-card:nth-child(3) .fs-service-icon::before,
body.page-cms.page-cms-6 .fs-cms-premium .fs-cms-content .fs-service-cards .fs-service-card:nth-child(3) .fs-service-icon::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b8956b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpolyline points='3.27 6.96 12 12.01 20.73 6.96'/%3E%3Cline x1='12' y1='22.08' x2='12' y2='12'/%3E%3C/svg%3E") !important;
}

/* ==========================================================================
   CMS Confidentialité (#11) — paragraphes intro sections : overflow texte
   Cause : customer-s1.css .fs-privacy-inner { width/max-width: 1050px } dépasse
   la carte premium ; .fs-cms-card { overflow: hidden } coupe le texte à droite.
   ========================================================================== */

body#cms.cms-id-11 .fs-cms-premium--legal .fs-cms-content .fs-privacy-inner,
body#cms.page-cms.cms-id-11 .fs-cms-premium--legal .fs-cms-content .fs-privacy-inner,
body.page-cms.cms-id-11 .fs-cms-premium--legal .fs-cms-content .fs-privacy-inner,
body.page-cms.page-cms-11 .fs-cms-premium--legal .fs-cms-content .fs-privacy-inner {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body#cms.cms-id-11 .fs-cms-premium--legal .fs-cms-content .fs-cms-section:not(.fs-cms-highlight) > p,
body#cms.page-cms.cms-id-11 .fs-cms-premium--legal .fs-cms-content .fs-cms-section:not(.fs-cms-highlight) > p,
body.page-cms.cms-id-11 .fs-cms-premium--legal .fs-cms-content .fs-cms-section:not(.fs-cms-highlight) > p,
body.page-cms.page-cms-11 .fs-cms-premium--legal .fs-cms-content .fs-cms-section:not(.fs-cms-highlight) > p {
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
  white-space: normal !important;
}
