/** Shopify CDN: Minification failed

Line 2465:2 Unexpected "50%"
Line 2466:0 Unexpected "}"

**/
/* Finition audio : rubans clairs premium au lieu des bulles sombres */
.audio-page .audio-card__overlay {
  background:
    linear-gradient(180deg, rgba(255,250,241,.12) 0%, rgba(255,250,241,.38) 48%, rgba(255,250,241,.82) 100%) !important;
}

.audio-page .audio-card__genre,
.audio-card__genre {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  max-width: 94% !important;
  padding: .42rem .74rem !important;
  border-radius: 999px !important;
  background:
    linear-gradient(135deg, rgba(255,252,244,.98), rgba(239,220,178,.94)) !important;
  border: 1px solid rgba(169,125,34,.58) !important;
  color: #21170d !important;
  text-shadow: none !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  line-height: 1.34 !important;
  box-shadow:
    0 12px 24px rgba(48,34,18,.18),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

.audio-page .audio-card__genre::before,
.audio-card__genre::before {
  background: #9a701c !important;
  opacity: 1 !important;
}

/* ============================================================
   MES MÉMOIRES — Maison de Correspondance Immersive
   style.css — v1.0
   ============================================================ */

/* ── 0. RESET & VARIABLES ─────────────────────────────────── */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  /* Palette */
  --cream:      #faf8f4;
  --cream-dark: #f0ebe1;
  --cream-mid:  #f5f0e8;
  --navy:       #1a2744;
  --navy-deep:  #0d1a3a;
  --navy-mid:   #1e2d5a;
  --gold:       #c9a84c;
  --gold-light: #d4b870;
  --gold-dark:  #a8893c;
  --text:       #2e2820;
  --text-mid:   #5a5040;
  --text-light: #8a7d6a;
  --white:      #ffffff;

  /* Typography */
  --font-display: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --font-body:    'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-caps:    'Cinzel', Georgia, serif;

  /* Spacing */
  --section-pad: 100px;
  --section-pad-sm: 60px;
  --container:   1160px;
  --gap:         2rem;

  /* Transitions */
  --ease:  cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
}

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

body {
  font-family: var(--font-body);
  background: var(--cream);
  color: var(--text);
  line-height: 1.7;
  overflow-x: hidden;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

ul {
  list-style: none;
}

/* ── 1. SCROLLBAR ─────────────────────────────────────────── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--cream); }
::-webkit-scrollbar-thumb { background: var(--gold); border-radius: 3px; }

/* ── 2. SELECTION ────────────────────────────────────────── */
::selection {
  background: var(--gold);
  color: var(--white);
}

/* ── 3. UTILITY CLASSES ──────────────────────────────────── */
.container {
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 2rem;
}

.section-label-wrap {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 1rem;
}

.section-label-wrap--center {
  justify-content: center;
}

.section-label {
  font-family: var(--font-caps);
  font-size: 0.7rem;
  letter-spacing: 0.22em;
  color: var(--gold);
  text-transform: uppercase;
  font-weight: 500;
}

.section-label--gold {
  color: var(--gold);
}

.section-ornament {
  color: var(--gold);
  font-size: 0.55rem;
  opacity: 0.8;
}

.ornament-wave {
  margin: 1.4rem 0 1.8rem;
  width: 80px;
}

.ornament-wave--center {
  margin: 1.4rem auto 1.8rem;
}

/* ── 4. BUTTONS ──────────────────────────────────────────── */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 32px;
  font-family: var(--font-caps);
  font-size: 0.65rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font-weight: 500;
  cursor: pointer;
  border: none;
  transition: all 0.3s var(--ease);
  position: relative;
  overflow: hidden;
}

.btn::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.08);
  opacity: 0;
  transition: opacity 0.3s;
}

.btn:hover::after {
  opacity: 1;
}

.btn--navy {
  background: #1A1C1E;
  color: var(--white);
  border: 1px solid #1A1C1E;
  border-radius: 999px;
}

.btn--navy:hover {
  background: #2A2D30;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(26, 28, 30, 0.35);
}

.btn--gold {
  background: var(--gold);
  color: var(--white);
  border: 1px solid var(--gold);
}

.btn--gold:hover {
  background: var(--gold-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(201, 168, 76, 0.4);
}

.btn--outline {
  background: transparent;
  color: var(--white);
  border: 1.5px solid rgba(255,255,255,0.7);
}

.btn--outline:hover {
  background: rgba(255,255,255,0.12);
  border-color: var(--white);
  transform: translateY(-2px);
}

.btn--sm {
  padding: 10px 22px;
  font-size: 0.6rem;
}

/* ── 5. NAVIGATION ───────────────────────────────────────── */
.nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2.5rem;
  height: 72px;
  background: linear-gradient(180deg, rgba(13,26,58,0.72), rgba(13,26,58,0.18));
  transition: background 0.4s var(--ease), box-shadow 0.4s var(--ease), backdrop-filter 0.4s;
}

.nav.scrolled {
  background: rgba(13, 26, 58, 0.96);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 2px 24px rgba(0,0,0,0.2);
}

.nav__logo {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-style: italic;
  color: var(--white);
  letter-spacing: 0.03em;
  flex-shrink: 0;
  font-weight: 400;
  text-shadow: 0 1px 8px rgba(0,0,0,0.3);
  transition: color 0.3s;
}

.nav__logo:hover {
  color: var(--gold-light);
}

.nav__links {
  display: flex;
  align-items: center;
  gap: 2rem;
}

.nav__link {
  font-family: var(--font-caps);
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  transition: color 0.3s;
  position: relative;
}

.nav__link::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--gold);
  transition: width 0.3s var(--ease);
}

.nav__link:hover {
  color: var(--gold-light);
}

.nav__link:hover::after {
  width: 100%;
}

.nav__toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}

.nav__toggle span {
  display: block;
  width: 24px;
  height: 1.5px;
  background: var(--white);
  transition: all 0.3s var(--ease);
}

.nav__toggle.open span:nth-child(1) {
  transform: translateY(6.5px) rotate(45deg);
}

.nav__toggle.open span:nth-child(2) {
  opacity: 0;
}

.nav__toggle.open span:nth-child(3) {
  transform: translateY(-6.5px) rotate(-45deg);
}

/* ── 6. HERO ─────────────────────────────────────────────── */
.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url('img--hero-bg.jpg');
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: var(--navy-deep);
  background-attachment: scroll;
}

.hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    165deg,
    rgba(10, 18, 40, 0.72) 0%,
    rgba(15, 25, 55, 0.6) 50%,
    rgba(8, 14, 32, 0.8) 100%
  );
}

.hero__content {
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 2rem;
  max-width: 700px;
}

.hero__emblem {
  width: 90px;
  margin: 0 auto 1.6rem;
  animation: emblemFade 1.2s var(--ease) both;
}

.hero__title {
  font-family: var(--font-display);
  font-size: clamp(3.2rem, 7vw, 6rem);
  font-weight: 700;
  color: var(--white);
  line-height: 1.05;
  letter-spacing: -0.01em;
  text-shadow: 0 2px 24px rgba(0,0,0,0.3);
  animation: titleSlide 1.2s var(--ease) 0.2s both;
}

.hero__ornament {
  margin: 1.2rem auto;
  width: 200px;
  animation: fadeIn 1s ease 0.5s both;
}

.hero__subtitle {
  font-family: var(--font-caps);
  font-size: clamp(0.6rem, 1.4vw, 0.82rem);
  letter-spacing: 0.28em;
  color: var(--gold-light);
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 2.8rem;
  animation: fadeIn 1s ease 0.6s both;
}

.hero__buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
  animation: fadeIn 1s ease 0.8s both;
}

.hero__scroll {
  position: absolute;
  bottom: 2.5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

.hero__scroll span {
  display: block;
  width: 1px;
  height: 48px;
  background: linear-gradient(to bottom, transparent, var(--gold));
  margin: 0 auto;
  animation: scrollLine 2s ease-in-out infinite;
}

/* ── 7. CONCEPT ──────────────────────────────────────────── */
.concept {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 620px;
}

.concept__image-wrap {
  overflow: hidden;
  position: relative;
}

.concept__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s var(--ease);
}

.concept__image-wrap:hover .concept__image {
  transform: scale(1.04);
}

.concept__text {
  background: var(--white);
  padding: 80px 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.concept__heading {
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 3vw, 2.6rem);
  font-weight: 400;
  line-height: 1.25;
  color: var(--text);
  margin-bottom: 0.2rem;
}

.concept__body {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--text-mid);
  line-height: 1.85;
  font-weight: 300;
  margin-bottom: 1.1rem;
}

.concept__tagline {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.05rem;
  color: var(--gold-dark);
  line-height: 1.6;
  margin-top: 0.6rem;
}

/* ── 8. FEATURES ─────────────────────────────────────────── */
.features {
  background: var(--cream);
  padding: var(--section-pad) 2rem;
}

.features__header {
  text-align: center;
  margin-bottom: 3.5rem;
}

.features__title {
  font-family: var(--font-display);
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  font-weight: 400;
  color: var(--text);
}

.features__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  max-width: var(--container);
  margin: 0 auto;
}

.feature-card {
  background: var(--cream);
  border: 1px solid rgba(201, 168, 76, 0.18);
  padding: 2.4rem 2rem;
  text-align: center;
  transition: all 0.35s var(--ease);
  position: relative;
  overflow: hidden;
}

.feature-card::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  transform: scaleX(0);
  transition: transform 0.4s var(--ease);
}

.feature-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(0,0,0,0.08);
  border-color: rgba(201, 168, 76, 0.3);
}

.feature-card:hover::before {
  transform: scaleX(1);
}

.feature-card__icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 1.4rem;
}

.feature-card__icon svg {
  width: 100%;
  height: 100%;
}

.feature-card__title {
  font-family: var(--font-display);
  font-size: 0.95rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--text);
  margin-bottom: 0.75rem;
  text-transform: uppercase;
  font-style: italic;
}

.feature-card__text {
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: var(--text-mid);
  line-height: 1.75;
  font-weight: 300;
}

/* ── 9. CORRESPONDANCE (dark) ─────────────────────────────── */
.correspondance {
  background: var(--navy-deep);
  padding: var(--section-pad) 2rem;
  position: relative;
  overflow: hidden;
}

.correspondance::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(ellipse at 20% 50%, rgba(201,168,76,0.04) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 20%, rgba(201,168,76,0.03) 0%, transparent 50%);
}

.correspondance__inner {
  max-width: var(--container);
  margin: 0 auto;
  position: relative;
  z-index: 1;
  text-align: center;
}

.correspondance__emblem {
  width: 78px;
  margin: 0 auto 2rem;
}

.correspondance__divider {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 1.2rem;
}

.divider-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,0.5), transparent);
}

.divider-title {
  font-family: var(--font-caps);
  font-size: 0.78rem;
  letter-spacing: 0.32em;
  color: var(--gold);
  white-space: nowrap;
}

.correspondance__sub {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: rgba(255,255,255,0.55);
  line-height: 1.75;
  font-weight: 300;
  margin-bottom: 3.5rem;
}

.correspondance__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}

.corr-item {
  text-align: center;
  padding: 1rem 0.5rem;
}

.corr-item__icon {
  width: 52px;
  height: 52px;
  margin: 0 auto 1.2rem;
}

.corr-item__icon svg {
  width: 100%;
  height: 100%;
}

.corr-item__title {
  font-family: var(--font-display);
  font-size: 0.85rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: var(--white);
  text-transform: uppercase;
  font-style: italic;
  margin-bottom: 0.6rem;
}

.corr-item__text {
  font-family: var(--font-body);
  font-size: 0.9rem;
  color: rgba(255,255,255,0.5);
  line-height: 1.7;
  font-weight: 300;
}

/* ── 10. SUR MESURE ──────────────────────────────────────── */
.sur-mesure {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 580px;
}

.sur-mesure__image-wrap {
  overflow: hidden;
  order: 2;
  position: relative;
}

.sur-mesure__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s var(--ease);
}

.sur-mesure__image-wrap:hover .sur-mesure__image {
  transform: scale(1.04);
}

.sur-mesure__content {
  background: var(--cream-mid);
  padding: 80px 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  order: 1;
}

.sur-mesure__title {
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 3vw, 2.6rem);
  font-weight: 400;
  line-height: 1.25;
  color: var(--text);
  margin-bottom: 0.2rem;
}

.sur-mesure__body {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--text-mid);
  line-height: 1.85;
  font-weight: 300;
  margin-bottom: 1.6rem;
}

.sur-mesure__list {
  margin-bottom: 2rem;
}

.sur-mesure__list li {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  font-family: var(--font-body);
  font-size: 0.98rem;
  color: var(--text-mid);
  padding: 0.4rem 0;
  border-bottom: 1px solid rgba(201,168,76,0.15);
}

.list-icon {
  color: var(--gold);
  font-size: 0.55rem;
  flex-shrink: 0;
}

/* ── 11. AUDIO ───────────────────────────────────────────── */
.audio {
  background: var(--cream-dark);
  padding: var(--section-pad) 2rem;
  position: relative;
  overflow: hidden;
}

.audio__bg {
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(ellipse at 50% 100%, rgba(201,168,76,0.06) 0%, transparent 60%);
}

.audio__inner {
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 1;
}

.audio__title {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3.5vw, 2.8rem);
  font-weight: 400;
  color: var(--text);
  line-height: 1.25;
  margin-bottom: 0.2rem;
}

.audio__body {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--text-mid);
  line-height: 1.85;
  font-weight: 300;
  margin-bottom: 2.5rem;
}

.audio__player {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  background: var(--white);
  border: 1px solid rgba(201,168,76,0.2);
  padding: 1.5rem 2rem;
  margin-bottom: 1rem;
}

.audio__play-btn {
  background: none;
  border: none;
  cursor: pointer;
  width: 52px;
  height: 52px;
  flex-shrink: 0;
  transition: transform 0.3s var(--ease-bounce);
}

.audio__play-btn:hover {
  transform: scale(1.12);
}

.audio__play-btn svg {
  width: 100%;
  height: 100%;
}

.audio__wave-wrap {
  flex: 1;
}

.audio__wave {
  display: flex;
  align-items: center;
  gap: 3px;
  height: 36px;
  margin-bottom: 0.5rem;
}

.audio__wave span {
  display: block;
  width: 3px;
  border-radius: 2px;
  background: var(--gold);
  opacity: 0.3;
  height: 8px;
  transition: height 0.15s ease, opacity 0.15s ease;
}

.audio__wave.playing span {
  animation: waveBar 0.8s ease-in-out infinite;
  opacity: 0.8;
}

.audio__wave span:nth-child(2n)   { animation-delay: 0.1s !important; }
.audio__wave span:nth-child(3n)   { animation-delay: 0.22s !important; }
.audio__wave span:nth-child(4n)   { animation-delay: 0.34s !important; }
.audio__wave span:nth-child(5n)   { animation-delay: 0.06s !important; }

.audio__progress {
  height: 2px;
  background: rgba(201,168,76,0.2);
  border-radius: 1px;
  overflow: hidden;
}

.audio__progress-bar {
  height: 100%;
  background: var(--gold);
  width: 0%;
  transition: width 0.3s linear;
}

.audio__caption {
  font-family: var(--font-body);
  font-size: 0.88rem;
  color: var(--text-light);
  font-style: italic;
}

/* ── 12. TESTIMONIALS ────────────────────────────────────── */
.testimonials {
  background: var(--white);
  padding: var(--section-pad) 2rem;
}

.testimonials__inner {
  max-width: var(--container);
  margin: 0 auto;
  text-align: center;
}

.testimonials__title {
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 2.8vw, 2.2rem);
  font-weight: 400;
  color: var(--text);
  margin-bottom: 3rem;
}

.testimonials__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}

.testimonial-card {
  background: var(--cream);
  border: 1px solid rgba(201,168,76,0.12);
  padding: 2.4rem 2rem;
  text-align: left;
  position: relative;
  transition: all 0.3s var(--ease);
}

.testimonial-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 36px rgba(0,0,0,0.06);
  border-color: rgba(201,168,76,0.25);
}

.testimonial-card__quote {
  font-family: var(--font-display);
  font-size: 4rem;
  line-height: 1;
  color: var(--gold);
  opacity: 0.3;
  margin-bottom: 0.5rem;
  font-style: italic;
}

.testimonial-card__text {
  font-family: var(--font-body);
  font-size: 1rem;
  color: var(--text-mid);
  line-height: 1.75;
  font-style: italic;
  font-weight: 400;
  margin-bottom: 1.2rem;
}

.testimonial-card__author {
  font-family: var(--font-caps);
  font-size: 0.65rem;
  letter-spacing: 0.12em;
  color: var(--gold-dark);
}

/* ── 13. CONTACT ─────────────────────────────────────────── */
.contact {
  background: var(--cream-mid);
  padding: var(--section-pad) 2rem;
}

.contact__inner {
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
}

.contact__title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 3.5vw, 2.8rem);
  font-weight: 400;
  color: var(--text);
  margin-bottom: 0.8rem;
}

.contact__sub {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--text-light);
  margin-bottom: 2.5rem;
  font-weight: 300;
}

.contact__form {
  text-align: left;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.2rem;
}

.form-group {
  margin-bottom: 1.2rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.form-group label {
  font-family: var(--font-caps);
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  color: var(--text-mid);
  text-transform: uppercase;
}

.form-group input,
.form-group select,
.form-group textarea {
  font-family: var(--font-body);
  font-size: 1rem;
  color: var(--text);
  background: var(--white);
  border: 1px solid rgba(201,168,76,0.2);
  padding: 13px 16px;
  outline: none;
  transition: border-color 0.3s, box-shadow 0.3s;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  width: 100%;
  font-weight: 300;
}

.form-group select {
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23c9a84c' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 12px;
  padding-right: 36px;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(201,168,76,0.1);
}

.form-group input::placeholder,
.form-group textarea::placeholder {
  color: var(--text-light);
  font-style: italic;
}

.form-group textarea {
  resize: vertical;
  min-height: 130px;
}

.form-submit {
  text-align: center;
  margin-top: 0.8rem;
}

.form-success {
  display: none;
  margin-top: 1.2rem;
  padding: 1rem 1.5rem;
  background: rgba(201,168,76,0.1);
  border: 1px solid rgba(201,168,76,0.3);
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: var(--gold-dark);
  text-align: center;
  letter-spacing: 0.02em;
}

.form-success.visible {
  display: block;
  animation: fadeIn 0.5s ease both;
}

/* ── 14. FOOTER ──────────────────────────────────────────── */
.footer {
  background: var(--navy-deep);
  padding: 70px 2rem 0;
  color: rgba(255,255,255,0.55);
}

.footer__top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.2fr 1.2fr;
  gap: 2rem;
  max-width: var(--container);
  margin: 0 auto;
  padding-bottom: 2.5rem;
}

.footer__logo {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-style: italic;
  color: var(--white);
  margin-bottom: 0.4rem;
  font-weight: 400;
}

.footer__tagline {
  font-family: var(--font-caps);
  font-size: 0.6rem;
  letter-spacing: 0.2em;
  color: var(--gold);
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.footer__desc {
  font-family: var(--font-body);
  font-size: 0.88rem;
  line-height: 1.75;
  font-weight: 300;
  margin-bottom: 1.2rem;
  max-width: 280px;
}

.footer__social-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-caps);
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  color: var(--gold);
  transition: color 0.3s, opacity 0.3s;
}

.footer__social-link:hover {
  color: var(--gold-light);
}

.footer__col-title {
  font-family: var(--font-caps);
  font-size: 0.82rem;
  letter-spacing: 0.18em;
  color: var(--white);
  text-transform: uppercase;
  margin-bottom: 1.2rem;
  font-weight: 600;
}

.footer__links {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.footer__links a {
  font-family: var(--font-body);
  font-size: 1rem;
  color: rgba(255,255,255,0.6);
  transition: color 0.3s;
  font-weight: 300;
}

.footer__links a:hover {
  color: var(--gold-light);
}

.footer__newsletter-text {
  font-family: var(--font-body);
  font-size: 0.88rem;
  line-height: 1.6;
  font-weight: 300;
  margin-bottom: 1rem;
}

.newsletter-form {
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  align-items: stretch;
}

.newsletter-input {
  font-family: var(--font-body);
  font-size: 0.9rem;
  color: var(--white);
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(201,168,76,0.2);
  padding: 10px 14px;
  outline: none;
  transition: border-color 0.3s;
  font-weight: 300;
  flex: 1;
  min-width: 0;
}

.newsletter-input::placeholder {
  color: rgba(255,255,255,0.3);
}

.newsletter-input:focus {
  border-color: var(--gold);
}

.footer__divider {
  max-width: var(--container);
  margin: 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,0.3), transparent);
}

.footer__bottom {
  max-width: var(--container);
  margin: 0 auto;
  padding: 1.5rem 0 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: var(--font-body);
  font-size: 0.92rem;
  color: rgba(255,255,255,0.5);
  flex-wrap: wrap;
  gap: 0.5rem;
  font-weight: 300;
}

/* ── 15. ANIMATIONS ──────────────────────────────────────── */
@keyframes emblemFade {
  from { opacity: 0; transform: scale(0.85) translateY(-12px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}

@keyframes titleSlide {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

@keyframes scrollLine {
  0%   { transform: scaleY(0); transform-origin: top; opacity: 0; }
  40%  { transform: scaleY(1); opacity: 1; }
  70%  { transform: scaleY(1); opacity: 1; }
  100% { transform: scaleY(0); transform-origin: bottom; opacity: 0; }
}

@keyframes waveBar {
  0%, 100% { height: 6px; }
  50%       { height: 32px; }
}

/* Scroll animations */
[data-animate] {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s var(--ease), transform 0.7s var(--ease);
}

[data-animate].in-view {
  opacity: 1;
  transform: translateY(0);
}

/* ── 16. RESPONSIVE ──────────────────────────────────────── */
@media (max-width: 1024px) {
  .features__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .correspondance__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem;
  }

  .footer__top {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
}

@media (max-width: 900px) {
  .concept,
  .sur-mesure {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .concept__image-wrap {
    height: 380px;
  }

  .concept__text {
    padding: 56px 40px;
  }

  .sur-mesure__image-wrap {
    height: 380px;
    order: 1;
  }

  .sur-mesure__content {
    padding: 56px 40px;
    order: 2;
  }
}

@media (max-width: 768px) {
  :root {
    --section-pad: 64px;
  }

  .nav__links {
    display: none;
    flex-direction: column;
    position: absolute;
    top: 72px;
    left: 0;
    right: 0;
    background: rgba(13, 26, 58, 0.97);
    backdrop-filter: blur(12px);
    padding: 1.5rem 2rem 2rem;
    gap: 1.2rem;
    border-top: 1px solid rgba(201,168,76,0.15);
  }

  .nav__links.open {
    display: flex;
  }

  .nav__toggle {
    display: flex;
  }

  .hero__buttons {
    flex-direction: column;
    align-items: center;
  }

  .features__grid {
    grid-template-columns: 1fr;
    max-width: 440px;
  }

  .correspondance__grid {
    grid-template-columns: 1fr 1fr;
  }

  .testimonials__grid {
    grid-template-columns: 1fr;
    max-width: 500px;
    margin: 0 auto;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .footer__top {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .footer__bottom {
    flex-direction: column;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .concept__text,
  .sur-mesure__content {
    padding: 44px 24px;
  }

  .correspondance__grid {
    grid-template-columns: 1fr;
  }

  .audio__player {
    flex-direction: column;
    text-align: center;
  }
}

/* ── 17. REDUCED MOTION ──────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }

  [data-animate] {
    opacity: 1;
    transform: none;
  }

  .hero {
    background-attachment: scroll;
  }
}

/* ============================================================
   UPDATES v2 — nouveaux composants
   ============================================================ */

/* ── NAV LOGO IMAGE ──────────────────────────────────────────── */
.nav__logo {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  text-decoration: none;
}

.nav__logo-img {
  width: 58px;
  height: 58px;
  object-fit: contain;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,0.35));
  opacity: 1;
  transition: transform 0.3s ease, filter 0.3s ease;
}

.nav__logo:hover .nav__logo-img {
  transform: translateY(-1px);
  filter: drop-shadow(0 0 10px rgba(201,168,76,0.65));
  opacity: 1;
}


.nav__logo-text {
  font-family: var(--font-display);
  font-size: 1.18rem;
  font-style: italic;
  color: var(--white);
  letter-spacing: 0.03em;
  font-weight: 400;
}

/* ── HERO UPDATES ────────────────────────────────────────────── */

.hero__eyebrow {
  font-family: var(--font-caps);
  font-size: clamp(0.55rem, 1.2vw, 0.72rem);
  letter-spacing: 0.28em;
  color: var(--gold-light);
  text-transform: uppercase;
  margin-bottom: 0.8rem;
  animation: fadeIn 1s ease 0.1s both;
}

.hero__tagline {
  font-family: var(--font-display);
  font-style: italic;
  font-size: clamp(1rem, 2.2vw, 1.4rem);
  color: rgba(255,255,255,0.8);
  margin-bottom: 1.2rem;
  animation: fadeIn 1s ease 0.55s both;
}

.hero__body {
  font-family: var(--font-body);
  font-size: clamp(0.9rem, 1.6vw, 1.05rem);
  color: rgba(255,255,255,0.65);
  line-height: 1.75;
  font-weight: 300;
  max-width: 600px;
  margin: 0 auto 2.4rem;
  animation: fadeIn 1s ease 0.7s both;
}

/* Hero 2×2 grid buttons */
.hero__buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.85rem;
  max-width: 520px;
  margin: 0 auto;
  animation: fadeIn 1s ease 0.85s both;
}

/* ── 3D BUTTONS ──────────────────────────────────────────────── */
.btn--3d {
  box-shadow:
    0 6px 0 rgba(0,0,0,0.28),
    0 10px 20px rgba(0,0,0,0.18);
  transform: translateY(0);
  transition: all 0.15s ease;
}

.btn--3d:hover {
  box-shadow:
    0 3px 0 rgba(0,0,0,0.28),
    0 5px 12px rgba(0,0,0,0.18);
  transform: translateY(3px);
}

.btn--3d:active {
  box-shadow: 0 1px 0 rgba(0,0,0,0.28);
  transform: translateY(5px);
}

.btn--ghost {
  background: rgba(255,255,255,0.1);
  color: var(--white);
  border: 1.5px solid rgba(255,255,255,0.4);
  backdrop-filter: blur(6px);
}

.btn--ghost:hover {
  background: rgba(255,255,255,0.18);
  border-color: rgba(255,255,255,0.7);
}

/* Nav Commander button */
.nav__cta {
  padding: 10px 22px;
  font-size: 0.6rem;
  letter-spacing: 0.14em;
}

/* ── SERVICES SECTION (image 4 style) ────────────────────────── */
.services {
  background: var(--white);
  padding: var(--section-pad) 2rem;
}

.services__header {
  text-align: center;
  margin-bottom: 3rem;
}

.services__title {
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 400;
  color: var(--text);
}

.services__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  max-width: var(--container);
  margin: 0 auto;
}

.service-card {
  border: 1.5px solid transparent;
  border-radius: 4px;
  padding: 2.2rem 1.8rem;
  text-align: center;
  position: relative;
  background: var(--cream);
  transition: all 0.35s var(--ease);
  overflow: hidden;
}

a.service-card {
  display: block;
  color: inherit;
}

.service-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  transform: scaleX(0.3);
  opacity: 0.5;
  border-radius: 4px 4px 0 0;
  transition: all 0.4s var(--ease);
}

.service-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(0,0,0,0.08);
  border-color: rgba(201,168,76,0.3);
}

.service-card:hover::before {
  transform: scaleX(1);
  opacity: 1;
}

.service-card__icon {
  width: 44px;
  height: 44px;
  margin: 0 auto 1.2rem;
  color: var(--gold-dark);
}

.service-card__icon svg {
  width: 100%;
  height: 100%;
}

.service-card__title {
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 500;
  color: var(--text);
  margin-bottom: 0.6rem;
  letter-spacing: 0.02em;
}

.service-card__text {
  font-family: var(--font-body);
  font-size: 0.92rem;
  color: var(--text-mid);
  line-height: 1.7;
  font-weight: 300;
}

/* ── CORRESPONDANCES VIVANTES (image 6) ──────────────────────── */
.corr-vivante {
  background: var(--cream-mid);
  padding: var(--section-pad) 2rem;
}

.corr-vivante__inner {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 5rem;
  max-width: var(--container);
  margin: 0 auto;
  align-items: center;
}

.corr-vivante__left {
  text-align: center;
}

.corr-vivante__blason-wrap {
  position: relative;
  display: inline-block;
  margin-bottom: 1.6rem;
}

.corr-vivante__blason {
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  filter: drop-shadow(0 16px 40px rgba(0,0,0,0.22));
  transition: transform 0.5s var(--ease);
}

.corr-vivante__blason:hover {
  transform: scale(1.03) translateY(-4px);
}

.corr-vivante__seal-title {
  font-family: var(--font-display);
  font-size: 1.15rem;
  font-weight: 400;
  font-style: italic;
  color: var(--gold-dark);
  margin-bottom: 0.8rem;
}

.corr-vivante__seal-text {
  font-family: var(--font-body);
  font-size: 0.9rem;
  color: var(--text-mid);
  line-height: 1.75;
  font-weight: 300;
  max-width: 300px;
  margin: 0 auto;
}

.corr-vivante__title {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 400;
  color: var(--text);
  line-height: 1.22;
  margin-bottom: 0.3rem;
}

.corr-vivante__title em {
  color: var(--gold-dark);
  font-style: italic;
}

.corr-vivante__body {
  font-family: var(--font-body);
  font-size: 1.02rem;
  color: var(--text-mid);
  line-height: 1.85;
  font-weight: 300;
  margin-bottom: 1rem;
}

.corr-vivante__features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.7rem 1.5rem;
  margin: 1.8rem 0 2rem;
  padding: 1.5rem;
  background: var(--white);
  border: 1px solid rgba(201,168,76,0.15);
}

.corr-feat {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-body);
  font-size: 0.92rem;
  color: var(--text-mid);
  font-weight: 400;
}

.corr-feat__dot {
  color: var(--gold);
  font-size: 0.42rem;
  flex-shrink: 0;
}

.corr-vivante__cta {
  display: inline-flex;
  font-size: 0.65rem;
  letter-spacing: 0.16em;
}

.corr-vivante__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .85rem;
  margin-top: clamp(1.2rem, 2vw, 1.7rem);
}

.corr-vivante__actions .corr-vivante__cta {
  margin-top: 0 !important;
}

/* ── FONDATEURS / L'HISTOIRE ─────────────────────────────────── */
.fondateurs {
  background: var(--white);
  padding: var(--section-pad) 2rem;
}

.fondateurs__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5rem;
  max-width: var(--container);
  margin: 0 auto;
  align-items: center;
}

.fondateurs__title {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 400;
  color: var(--text);
  line-height: 1.25;
  margin-bottom: 0.2rem;
}

.fondateurs__body {
  font-family: var(--font-body);
  font-size: 1.02rem;
  color: var(--text-mid);
  line-height: 1.85;
  font-weight: 300;
  margin-bottom: 1rem;
}

.fondateurs__image-wrap {
  overflow: hidden;
  border-radius: 2px;
  position: relative;
}

.fondateurs__image {
  width: 100%;
  height: 500px;
  object-fit: cover;
  transition: transform 0.8s var(--ease);
}

.fondateurs__image-wrap:hover .fondateurs__image {
  transform: scale(1.04);
}

/* ── FOOTER LOGO IMAGE ───────────────────────────────────────── */
.footer__logo-img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.6;
  margin-bottom: 0.5rem;
}

/* ── FLOATING HELP BUTTON (image 7) ─────────────────────────── */
.float-help {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 900;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.6rem;
  pointer-events: none;
}

.float-help__btn {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: conic-gradient(from 200deg at 35% 35%,
    #F5E080 0deg,
    #C9900A 60deg,
    #F0CC55 110deg,
    #E8B820 160deg,
    #D4A020 200deg,
    #F5E080 360deg
  );
  border: 1.5px solid rgba(255,220,80,0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1A1410;
  box-shadow:
    0 3px 0 rgba(140,90,5,0.55),
    0 6px 22px rgba(191,150,40,0.45),
    inset 0 2px 4px rgba(255,240,120,0.5),
    inset 0 -2px 4px rgba(140,90,5,0.3);
  pointer-events: all;
  transition: transform 0.3s var(--ease-bounce), box-shadow 0.3s;
}

.float-help__btn:hover {
  transform: scale(1.1) translateY(-2px);
  box-shadow:
    0 5px 0 rgba(140,90,5,0.45),
    0 10px 28px rgba(191,150,40,0.5),
    inset 0 2px 4px rgba(255,240,120,0.5);
}

.float-help__btn svg {
  width: 22px;
  height: 22px;
}

.float-help__bubble {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  background: linear-gradient(90deg,
    #C8920A 0%,
    #DDB030 10%,
    #F5DF70 25%,
    #FAE880 38%,
    #F0CF55 52%,
    #DDB030 68%,
    #C8920A 80%,
    #E0C040 90%,
    #C8920A 100%
  );
  border: 1px solid rgba(255,230,80,0.4);
  color: #1A1410;
  font-family: var(--font-caps);
  font-size: 0.63rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  padding: 0.6rem 1.1rem 0.6rem 0.55rem;
  border-radius: 999px;
  box-shadow:
    0 2px 0 rgba(140,85,5,0.6),
    0 6px 22px rgba(180,140,20,0.4),
    inset 0 2px 3px rgba(255,240,120,0.6),
    inset 0 -1px 2px rgba(140,85,5,0.35);
  pointer-events: all;
  animation: bubblePulse 3s ease-in-out infinite;
  white-space: nowrap;
  text-decoration: none;
  transition: box-shadow 0.3s, transform 0.3s;
}

.float-help__ring {
  display: none;
}

@keyframes bubblePulse {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-4px); }
}

@keyframes ringPulse {
  0%, 100% { transform: scale(1); opacity: 0.4; }
  50%       { transform: scale(1.5); opacity: 0; }
}

/* ── RESPONSIVE UPDATES ──────────────────────────────────────── */
@media (max-width: 1024px) {
  .corr-vivante__inner,
  .fondateurs__inner {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .corr-vivante__left {
    order: 2;
  }

  .corr-vivante__right {
    order: 1;
  }

  .services__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .hero__buttons {
    grid-template-columns: 1fr;
    max-width: 280px;
  }

  .services__grid {
    grid-template-columns: 1fr;
    max-width: 400px;
    margin: 0 auto;
  }

  .corr-vivante__features {
    grid-template-columns: 1fr;
  }

  .fondateurs__image {
    height: 300px;
  }

  .float-help__bubble {
    display: none;
  }

  .float-help {
    bottom: 1.5rem;
    right: 1.5rem;
  }
}

/* ── SCROLL TO TOP BUTTON ────────────────────────────────────── */
.scroll-top {
  position: fixed;
  bottom: 10.5rem;
  right: 2rem;
  z-index: 900;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--navy);
  border: 1.5px solid rgba(201,168,76,0.4);
  color: var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  transition: opacity 0.35s var(--ease), transform 0.35s var(--ease), background 0.25s, box-shadow 0.25s;
  box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}

.scroll-top.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: all;
}

.scroll-top:hover {
  background: var(--navy-mid);
  border-color: var(--gold);
  box-shadow: 0 6px 22px rgba(0,0,0,0.28);
  transform: translateY(-2px);
}

.scroll-top svg {
  width: 18px;
  height: 18px;
  stroke: var(--gold);
}

@media (max-width: 768px) {
  .scroll-top {
    bottom: 5.5rem;
    right: 1.5rem;
    width: 40px;
    height: 40px;
  }
}

/* ============================================================
   FIX v3 — Hero fullscreen sans crop + nav/logo visible
   ============================================================ */
html, body {
  width: 100%;
  margin: 0;
  overflow-x: hidden;
}

.nav {
  width: 100%;
  height: 82px;
  padding: 0 clamp(18px, 3vw, 52px);
  box-sizing: border-box;
  background: linear-gradient(180deg, rgba(7,16,39,0.92), rgba(7,16,39,0.48) 62%, rgba(7,16,39,0.08));
}

.nav__logo {
  min-width: max-content;
  display: flex;
  align-items: center;
  gap: 12px;
  opacity: 1 !important;
  visibility: visible !important;
}

.nav__logo-img {
  display: block;
  width: 54px !important;
  height: 54px !important;
  min-width: 54px;
  object-fit: contain;
  opacity: 1 !important;
  visibility: visible !important;
  filter: brightness(0) invert(1) sepia(1) saturate(1.8) hue-rotate(5deg) brightness(1.15) drop-shadow(0 2px 8px rgba(0,0,0,0.5));
  border-radius: 8px;
}

.nav__logo-text {
  color: #fff !important;
  opacity: 1 !important;
  font-size: clamp(1rem, 1.4vw, 1.28rem);
  text-shadow: 0 2px 12px rgba(0,0,0,.65);
}

.hero {
  width: 100%;
  max-width: none !important;
  min-height: 100vh;
  margin: 0;
  left: auto;
  transform: none;
  background-image: url('img--hero-bg.jpg');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: var(--navy-deep);
}

.hero__overlay {
  background: linear-gradient(165deg, rgba(7, 14, 32, 0.56) 0%, rgba(12, 20, 45, 0.42) 50%, rgba(7, 14, 32, 0.62) 100%);
}

@media (max-width: 900px) {
  .nav {
    height: 72px;
    padding: 0 18px;
  }

  .nav__logo-img {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px;
  }

  .hero {
    min-height: 100svh;
  }
}


/* ============================================================
   PAGES AJOUTÉES — Mes Mémoires
   ============================================================ */
.page-main{background:var(--cream);color:var(--text);padding-top:92px;min-height:100vh}.page-hero{padding:50px 7vw 24px}.page-kicker{font-family:var(--font-caps);font-size:.72rem;letter-spacing:.24em;color:var(--gold);text-transform:uppercase;margin-bottom:12px}.page-title{font-family:var(--font-display);font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.1;font-weight:500;max-width:1040px}.page-intro{font-size:clamp(0.92rem,1.4vw,1rem);line-height:1.55;color:var(--text-mid);max-width:880px;margin-top:24px}.page-section{padding:28px 7vw}.page-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:34px}.page-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.lux-card{background:rgba(255,255,255,.76);border:1px solid rgba(201,168,76,.14);border-radius:16px;box-shadow:0 8px 28px rgba(26,39,68,.07);padding:28px}.lux-card--cream{background:#fbf7ed}.lux-card--green{background:#2d4a3e;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;min-height:300px}.lux-card--navy{background:var(--navy);color:#fff}.circle-gold{width:72px;height:72px;border-radius:50%;background:linear-gradient(145deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-display);font-size:1.6rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35),0 14px 36px rgba(0,0,0,.16);margin-bottom:24px}.founder-name{font-family:var(--font-caps);letter-spacing:.16em;color:var(--gold);font-size:.82rem}.founder-role{font-family:var(--font-display);font-size:1.4rem;line-height:1.1;margin:10px 0 16px}.founder-text{font-size:1rem;line-height:1.72;color:var(--text-mid)}.founder-values{font-family:var(--font-caps);letter-spacing:.12em;color:var(--gold-dark);font-size:.8rem;margin-top:24px}.quote-final{text-align:center;padding:56px max(7vw,28px);margin:36px 7vw 80px}.quote-final blockquote{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,2rem);line-height:1.12;margin:0 auto 22px;max-width:1120px}.pill-dark{display:inline-flex;background:#2d4a3e;color:#fff;border-radius:999px;padding:8px 18px;font-family:var(--font-caps);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}.btn-3d{display:inline-flex;align-items:center;justify-content:center;background:#061b36;color:#fff;border-radius:14px;padding:17px 31px;font-family:var(--font-caps);letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;box-shadow:0 6px 0 rgba(0,0,0,.28);transition:.2s;border:1px solid rgba(255,255,255,.08)}.btn-3d:hover{transform:translateY(3px);box-shadow:0 3px 0 rgba(0,0,0,.28)}.gold-link{font-family:var(--font-caps);letter-spacing:.18em;color:var(--gold-dark);font-size:.78rem;margin-left:24px}.concierge-title{font-family:var(--font-display);font-size:clamp(1.6rem,2.8vw,2.2rem);line-height:1.02;font-weight:500;margin:22px 0}.concierge-card-text{font-size:0.98rem;color:var(--text-mid);max-width:820px}.mm-medallion{width:112px;height:112px;border-radius:50%;background:linear-gradient(145deg,#d2ad54,#a7782d);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:2.4rem;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.22),0 18px 42px rgba(0,0,0,.22);margin:0 auto 34px}.concierge-side-text{font-size:1rem;line-height:1.35;max-width:390px}.mini-card-emoji{font-size:1.3rem;margin-bottom:20px}.mini-card-title{font-family:var(--font-display);font-size:1.1rem;margin-bottom:10px}.mini-card-text{font-size:0.92rem;color:var(--text-mid);line-height:1.6}.ideas-box{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;background:#fbf7ed;border-radius:22px;padding:38px;border:1px solid rgba(201,168,76,.15);box-shadow:0 22px 70px rgba(26,39,68,.06)}.ideas-title{text-align:right;font-family:var(--font-display);font-size:1.2rem}.tag-list{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.soft-tag{border:1px solid #e0d3ac;background:#f5eddd;color:#4b4336;border-radius:999px;padding:6px 14px;font-size:.82rem}.option-title{font-family:var(--font-display);font-size:1.2rem;margin:20px 0 14px}.option-text,.process-step p{font-size:0.92rem;color:var(--text-mid);line-height:1.62}.option-list{margin-top:16px;list-style:disc;padding-left:20px;color:var(--text-mid);font-size:0.9rem}.process-box{text-align:center;background:#fff;border-radius:16px;padding:28px;border:1px solid rgba(201,168,76,.13);box-shadow:0 22px 70px rgba(26,39,68,.06)}.process-title{font-family:var(--font-display);font-size:1.4rem;margin-bottom:30px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.process-step{display:flex;gap:18px;align-items:flex-start;text-align:left;border:1px solid rgba(201,168,76,.16);border-radius:18px;padding:20px;background:#fffdfa}.step-number{flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600}.audio-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.audio-card-native{border-radius:22px;background:#fff;box-shadow:0 20px 60px rgba(26,39,68,.08);overflow:hidden;border:1px solid rgba(201,168,76,.12)}.audio-card-top{height:100px;background:linear-gradient(135deg,#fbf3e2,#efe3c9);display:flex;align-items:center;justify-content:center;font-size:1.8rem}.audio-card-body{padding:25px}.audio-card-body h2{font-family:var(--font-display);font-size:1.05rem;margin-bottom:5px}.audio-card-body p{color:var(--text-mid);font-size:0.9rem;min-height:54px}.audio-card-body audio{width:100%;margin-top:18px}.collection-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.product-sheet{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;border:1px solid rgba(201,168,76,.14);background:rgba(255,255,255,.5);padding:46px;border-radius:4px}.product-image-box{min-height:600px;background:linear-gradient(180deg,#fbf5e7,#f6efdf);display:flex;align-items:center;justify-content:center;color:rgba(46,40,32,.45);font-family:var(--font-caps);letter-spacing:.18em;text-transform:uppercase;position:relative;overflow:hidden}.carousel-dots{position:absolute;bottom:28px;left:0;right:0;display:flex;justify-content:center;gap:12px}.carousel-dots span{width:10px;height:10px;border-radius:50%;border:1px solid var(--gold)}.carousel-dots span:first-child{background:var(--gold)}.product-info .product-title{font-family:var(--font-display);font-size:clamp(1.5rem,2.4vw,2rem);line-height:1;margin:20px 0 16px}.product-subtitle{font-style:italic;font-size:0.92rem;border:1px solid rgba(201,168,76,.28);background:#f4eddd;border-radius:999px;display:inline-block;padding:8px 18px}.product-copy{font-size:0.98rem;color:var(--text-mid);line-height:1.65;margin:22px 0}.feature-pills{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0}.feature-pill{font-family:var(--font-caps);letter-spacing:.1em;font-size:.65rem;text-align:center;border:1px solid #e0d3ac;background:#f5eddd;border-radius:999px;padding:7px 10px}.price-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.price{font-family:var(--font-display);font-size:1.9rem}.new-pill{font-family:var(--font-caps);font-size:.72rem;letter-spacing:.14em;color:#2d4a3e;border:1px solid #d8cfad;border-radius:999px;padding:10px 18px;background:#fbf7ed}.page-footer-spacer{height:1px}@media(max-width:980px){.page-grid-2,.page-grid-3,.audio-gallery,.product-sheet,.ideas-box,.process-grid{grid-template-columns:1fr}.page-main{padding-top:78px}.page-section,.page-hero{padding-left:22px;padding-right:22px}.lux-card{padding:28px}.gold-link{display:block;margin:18px 0 0}.ideas-title{text-align:left}.product-sheet{padding:20px;gap:28px}.product-image-box{min-height:360px}.feature-pills{grid-template-columns:1fr}.collection-head{display:block}.nav__links a[href*="conciergerie"],.nav__links a[href*="collections"],.nav__links a[href*="audio"],.nav__links a[href*="fondateurs"]{display:block}}


/* === BEAUTIFUL PAGES V2 — Mes Mémoires === */
:root{--mm-cream:#faf8f4;--mm-cream2:#f2eadb;--mm-ink:#2e2820;--mm-gold:#c9a84c;--mm-navy:#1a2744;--mm-green:#2d4a3e;--mm-white:#fff;--mm-shadow:0 22px 70px rgba(26,39,68,.12);--mm-soft:0 10px 30px rgba(26,39,68,.08)}
.page-main.v2{background:radial-gradient(circle at 12% 8%,rgba(201,168,76,.18),transparent 30%),linear-gradient(180deg,#fffaf1 0%,var(--mm-cream) 48%,#f6efe2 100%);color:var(--mm-ink);overflow:hidden}.v2 .section-wrap{width:min(1180px,calc(100% - 36px));margin:0 auto}.v2-hero{position:relative;padding:110px 0 48px}.v2-hero:before{content:"";position:absolute;inset:86px auto auto 50%;width:760px;height:760px;transform:translateX(-50%);border-radius:999px;background:radial-gradient(circle,rgba(201,168,76,.13),transparent 62%);pointer-events:none}.v2-kicker{font-family:'Cinzel',serif;font-size:12px;letter-spacing:.24em;color:var(--mm-gold);text-transform:uppercase;margin:0 0 18px}.v2-title{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:.94;letter-spacing:-.04em;margin:0;color:var(--mm-navy)}.v2-subtitle{font-family:'Playfair Display',serif;font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.05;color:var(--mm-navy);margin:0 0 18px}.v2-intro{font-family:'Cormorant Garamond',serif;font-size:clamp(0.95rem,1.4vw,1.05rem);line-height:1.35;max-width:820px;margin:24px 0 0;color:rgba(46,40,32,.82)}.v2-panel{background:rgba(255,255,255,.78);border:1px solid rgba(201,168,76,.22);border-radius:28px;box-shadow:var(--mm-shadow);backdrop-filter:blur(10px)}.v2-card{background:#FAF6EF;border:1px solid rgba(201,168,76,.2);border-radius:14px;padding:24px;box-shadow:var(--mm-soft);position:relative}.v2-card:after{content:"";position:absolute;inset:10px;border:1px solid rgba(201,168,76,.12);border-radius:18px;pointer-events:none}.v2-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.v2-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.v2-section{padding:28px 0}.v2-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:10px 15px;background:#efe6d3;border:1px solid rgba(201,168,76,.28);color:var(--mm-navy);font-family:'Cinzel',serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.v2-pill.green{background:var(--mm-green);color:white;border-color:rgba(255,255,255,.18)}.v2-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--mm-navy);color:#fff;text-decoration:none;border-radius:16px;padding:16px 24px;font-family:'Cinzel',serif;font-size:12px;letter-spacing:.12em;box-shadow:0 7px 0 rgba(0,0,0,.28);transition:.18s}.v2-btn:hover{transform:translateY(3px);box-shadow:0 4px 0 rgba(0,0,0,.28)}.v2-btn.dark{background:#111}.v2-btn.gold{background:linear-gradient(180deg,#dfc468,#b8912d);color:#1a2744}.founder-lux{padding:28px;min-height:100%;display:flex;flex-direction:column}.founder-top{display:flex;align-items:center;gap:18px;margin-bottom:24px}.founder-initial{width:64px;height:64px;border-radius:999px;background:linear-gradient(145deg,#e5c96d,#a97d22);display:flex;align-items:center;justify-content:center;color:white;font-family:'Playfair Display',serif;font-size:1.8rem;box-shadow:inset 0 2px 10px rgba(255,255,255,.3),0 14px 28px rgba(201,168,76,.24)}.founder-name2{font-family:'Cinzel',serif;font-size:13px;letter-spacing:.16em;color:var(--mm-gold);text-transform:uppercase;margin:0}.founder-role2{font-family:'Playfair Display',serif;font-size:1.4rem;line-height:1.05;color:var(--mm-navy);margin:10px 0 20px}.founder-text2{font-family:'Cormorant Garamond',serif;font-size:1rem;line-height:1.55;color:rgba(46,40,32,.84)}.founder-values2{margin-top:auto;padding-top:22px;color:var(--mm-green);font-family:'Cinzel',serif;font-size:12px;letter-spacing:.12em}.quote-lux{background:linear-gradient(135deg,#111b32,#1a2744 58%,#26375c);color:#fff;padding:36px;border-radius:30px;text-align:center;position:relative;overflow:hidden}.quote-lux:before{content:"✦";position:absolute;top:-60px;right:60px;font-size:240px;color:rgba(201,168,76,.08)}.quote-lux blockquote{font-family:'Playfair Display',serif;font-size:clamp(1.3rem,2.5vw,1.9rem);line-height:1.12;margin:0 auto;max-width:1020px}.quote-lux p{font-family:'Cinzel',serif;letter-spacing:.14em;color:#e5c96d}.split-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:stretch}.conc-left{padding:32px}.conc-left .v2-title{font-size:clamp(1.6rem,2.8vw,2.2rem)}.conc-visual{background:linear-gradient(145deg,#203a31,#2d4a3e);border-radius:16px;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;min-height:340px;padding:44px;position:relative;overflow:hidden}.conc-visual:before{content:"";position:absolute;width:370px;height:370px;border-radius:999px;border:1px solid rgba(201,168,76,.26)}.conc-visual-img{border-radius:16px;overflow:hidden;display:flex;align-items:stretch;justify-content:center;min-height:340px;background:#0d1f16}.conc-img-ronde{width:100%;height:100%;object-fit:cover;border-radius:16px;display:block}.conc-mm{width:96px;height:96px;border-radius:999px;background:linear-gradient(145deg,#e5c96d,#ad842a);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:1.8rem;color:white;margin:0 auto 30px}.idea-tags{display:flex;flex-wrap:wrap;gap:12px}.idea-tags a,.idea-tags span{padding:12px 17px;border-radius:999px;background:#fff;border:1px solid rgba(201,168,76,.24);box-shadow:0 6px 18px rgba(26,39,68,.04);color:var(--mm-ink);text-decoration:none}.option-card h3,.process-card h3{font-family:'Playfair Display',serif;color:var(--mm-navy);font-size:1.2rem;margin:14px 0}.option-emoji{font-size:2rem}.clean-list{padding-left:0;list-style:none}.clean-list li{margin:10px 0;padding-left:24px;position:relative}.clean-list li:before{content:"•";position:absolute;left:4px;color:var(--mm-gold);font-size:24px;line-height:.8}.process-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.process-num{width:44px;height:44px;border-radius:999px;background:var(--mm-gold);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:1.2rem;margin-bottom:14px}.audio-grid2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.audio-card2{overflow:hidden;padding:0}.audio-card2 .audio-banner{min-height:100px;background:linear-gradient(135deg,#f6eddd,#ead8b8);display:flex;align-items:center;justify-content:center;font-size:2rem}.audio-card2 .audio-body{padding:26px}.audio-card2 h3{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--mm-navy);margin:0 0 8px}.audio-card2 p{font-size:0.9rem;line-height:1.35;min-height:54px}.audio-card2 audio{width:100%;margin-top:10px}.product-showcase{display:grid;grid-template-columns:minmax(300px,.95fr) 1.05fr;gap:50px;align-items:center}.book-stage{min-height:520px;border-radius:34px;background:radial-gradient(circle at 45% 36%,#fffaf0,#ead9b8 55%,#d7c090);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:var(--mm-shadow);overflow:hidden}.book-stage:before{content:"— Parcours de vie";position:absolute;top:28px;left:30px;font-family:'Cinzel',serif;letter-spacing:.16em;color:rgba(26,39,68,.65);font-size:12px}.book-stage:after{content:"NOUVEAU MODÈLE";position:absolute;top:28px;right:30px;font-family:'Cinzel',serif;letter-spacing:.16em;color:rgba(26,39,68,.65);font-size:12px}.book-cover{width:220px;height:340px;border-radius:16px;background:linear-gradient(160deg,#1a2744 0%,#23395f 58%,#2d4a3e 100%);box-shadow:20px 32px 60px rgba(26,39,68,.28);transform:rotate(-4deg);position:relative;color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:space-between}.book-cover:before{content:"";position:absolute;inset:16px;border:1px solid rgba(201,168,76,.5);border-radius:10px}.book-cover strong{font-family:'Playfair Display',serif;font-size:1.4rem;line-height:.98;position:relative}.book-cover span{font-family:'Cormorant Garamond',serif;font-size:0.9rem;position:relative;color:#f4e4bc}.product-info .v2-title{font-size:clamp(1.6rem,2.5vw,2.2rem)}.characs{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.price{font-family:'Playfair Display',serif;font-size:1.8rem;color:var(--mm-navy);margin:20px 0}.new-pill{background:var(--mm-green);color:#fff;border-radius:999px;padding:10px 14px;display:inline-flex;margin-left:12px;font-family:'Cinzel',serif;font-size:12px}.autonomous-note{font-size:14px;opacity:.62;margin-top:14px}@media(max-width:980px){.v2-grid2,.v2-grid3,.split-hero,.process-row,.audio-grid2,.product-showcase{grid-template-columns:1fr}.v2-hero{padding-top:120px}.conc-visual{min-height:320px}.book-stage{min-height:560px}.book-cover{width:240px;height:380px}.v2-card,.founder-lux,.conc-left{padding:26px}.quote-lux{padding:34px 24px}}@media(max-width:640px){.v2 .section-wrap{width:min(100% - 24px,1180px)}.v2-hero{padding-top:112px}.audio-card2 p{min-height:auto}.book-stage:before,.book-stage:after{font-size:10px}.v2-title{letter-spacing:-.03em}.page-main.v2{background:#faf8f4}}

/* ── SECTION DIVIDERS ────────────────────────────────────────── */
.section-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  padding: 0.5rem 2rem;
  max-width: 900px;
  margin: 0 auto;
}

.sdiv-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(140,100,30,0.55), transparent);
  max-width: 320px;
}

.sdiv-icon {
  width: 60px;
  height: 20px;
  flex-shrink: 0;
  opacity: 0.9;
}

/* ── FLOAT HELP — fix lien + positionnement ──────────────────── */
.float-help__bubble {
  text-decoration: none;
  pointer-events: all;
  cursor: pointer;
  transition: box-shadow 0.3s, transform 0.3s;
}

.float-help__bubble:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(191,150,69,0.55);
}

.float-help__icon-wrap {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #1E3A2A;
  color: rgba(255,255,255,0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.4);
}

/* ── SCROLL-TO-TOP — au-dessus du cluster d'aide ──────────── */
.scroll-top {
  bottom: 10.5rem;
  right: 2rem;
}

@media (max-width: 768px) {
  .scroll-top {
    bottom: 7.5rem;
  }
}

/* ── SCROLL OFFSET — ancres nav ne coupent plus le haut ────── */
section[id] {
  scroll-margin-top: 80px;
}

/* ============================================================
   UPDATES v3 — Améliorations visuelles
   ============================================================ */

/* ── 1. BANDEAU PROMO : navy au lieu de vert ─────────────────── */
.coll-promo-bar {
  background: linear-gradient(135deg, var(--navy-mid) 0%, var(--navy-deep) 100%) !important;
  color: var(--gold-light) !important;
  border: 1px solid rgba(201,168,76,0.35) !important;
  border-radius: 2px !important;
}

/* ── 2. CORR-VIVANTE — textes plus foncés ────────────────────── */
.corr-vivante__seal-title {
  color: #8a6520 !important;
}

.corr-vivante__seal-text {
  color: #3a3028 !important;
  font-weight: 400 !important;
}

.corr-feat {
  color: #2e2416 !important;
  font-size: 0.97rem !important;
  font-weight: 400 !important;
}

.corr-vivante__body {
  color: #3a3028 !important;
  font-weight: 400 !important;
}

.corr-vivante__title {
  color: #110e0a !important;
}

/* ── 3. CORR-VIVANTE features — grille plus jolie ────────────── */
.corr-vivante__features {
  background: linear-gradient(135deg, #fdf8ef 0%, #f5ead8 100%) !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.04) !important;
}

.corr-feat__dot {
  color: var(--gold) !important;
  font-size: 0.55rem !important;
}

/* ── 4. FEATURE CARDS — effet 3D ────────────────────────────── */
.feature-card {
  box-shadow:
    0 6px 0 rgba(201,168,76,0.15),
    0 10px 28px rgba(0,0,0,0.06) !important;
  border: 1px solid rgba(201,168,76,0.18) !important;
  border-bottom: none !important;
  transition: all 0.3s ease !important;
}

.feature-card:hover {
  transform: translateY(-8px) !important;
  box-shadow:
    0 10px 0 rgba(201,168,76,0.18),
    0 20px 40px rgba(0,0,0,0.1) !important;
}

.feature-card__title {
  color: #1a1410 !important;
  font-weight: 600 !important;
}

.feature-card__text {
  color: #3a3028 !important;
  font-weight: 400 !important;
}

/* ── 5. AUDIO PLAYER — redesign ─────────────────────────────── */
.audio__player {
  background: linear-gradient(135deg, var(--navy-deep) 0%, var(--navy-mid) 100%) !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 12px !important;
  padding: 1.8rem 2.2rem !important;
  box-shadow: 0 8px 32px rgba(26,39,68,0.2) !important;
}

.audio__play-btn {
  background: rgba(201,168,76,0.12) !important;
  border-radius: 50% !important;
  padding: 4px !important;
  transition: background 0.3s, transform 0.3s !important;
}

.audio__play-btn:hover {
  background: rgba(201,168,76,0.22) !important;
  transform: scale(1.1) !important;
}

.audio__wave span {
  background: var(--gold-light) !important;
}

.audio__progress {
  background: rgba(255,255,255,0.12) !important;
}

.audio__caption {
  color: rgba(255,255,255,0.5) !important;
}

/* ── 6. CONTACT FORM — plus joli ────────────────────────────── */
.contact {
  background: linear-gradient(160deg, var(--cream) 0%, #f0e8d8 100%) !important;
}

.contact__inner {
  background: var(--white);
  border: 1px solid rgba(201,168,76,0.15);
  border-radius: 8px;
  padding: 3rem 3.5rem;
  box-shadow: 0 8px 40px rgba(0,0,0,0.06);
}

.contact__title {
  color: #110e0a !important;
}

.contact__sub {
  color: #5a4830 !important;
}

.form-group label {
  color: #3a2810 !important;
  font-weight: 600 !important;
  font-size: 0.65rem !important;
}

.form-group input,
.form-group select,
.form-group textarea {
  background: var(--cream) !important;
  border: 1.5px solid rgba(201,168,76,0.2) !important;
  border-radius: 6px !important;
  color: #2e2416 !important;
  font-size: 1rem !important;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  border-color: var(--gold) !important;
  background: var(--white) !important;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12) !important;
}

@media (max-width: 768px) {
  .contact__inner {
    padding: 2rem 1.5rem;
  }
}

/* ── 7. LIGHTBOX overlay ─────────────────────────────────────── */
.lb-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(10,14,30,0.95);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.lb-overlay.open {
  opacity: 1;
  pointer-events: all;
}

.lb-img-wrap {
  position: relative;
  max-width: 90vw;
  max-height: 90vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lb-img {
  max-width: 90vw;
  max-height: 88vh;
  object-fit: contain;
  border-radius: 4px;
  box-shadow: 0 24px 80px rgba(0,0,0,0.5);
}

.lb-close {
  position: fixed;
  top: 1.5rem;
  right: 1.5rem;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  color: var(--white);
  font-size: 1.4rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.25s;
  z-index: 10000;
}

.lb-close:hover { background: rgba(255,255,255,0.2); }

.lb-nav {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(201,168,76,0.3);
  color: var(--gold-light);
  font-size: 1.3rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s;
  z-index: 10000;
}

.lb-nav:hover { background: rgba(201,168,76,0.2); }
.lb-nav--prev { left: 1.5rem; }
.lb-nav--next { right: 1.5rem; }

.lb-counter {
  position: fixed;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--font-caps);
  font-size: 0.62rem;
  letter-spacing: 0.16em;
  color: rgba(255,255,255,0.45);
  z-index: 10000;
}

/* Cursor zoom sur carousel */
.coll-slide img {
  cursor: zoom-in;
}

/* ── 8. CHATBOT WIDGET ───────────────────────────────────────── */
.chat-widget {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 900;
  font-family: var(--font-body);
}

.chat-btn {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: conic-gradient(from 200deg at 35% 35%,
    #F5E080 0deg,
    #C9900A 60deg,
    #F0CC55 110deg,
    #E8B820 160deg,
    #D4A020 200deg,
    #F5E080 360deg
  );
  border: 1.5px solid rgba(255,220,80,0.5);
  color: #1A1410;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    0 3px 0 rgba(140,90,5,0.55),
    0 6px 22px rgba(191,150,40,0.45),
    inset 0 2px 4px rgba(255,240,120,0.5),
    inset 0 -2px 4px rgba(140,90,5,0.3);
  transition: transform 0.3s ease, box-shadow 0.3s;
  position: relative;
  z-index: 2;
}

.chat-btn:hover {
  transform: scale(1.08) translateY(-2px);
  box-shadow:
    0 5px 0 rgba(150,100,10,0.4),
    0 10px 28px rgba(191,150,69,0.5),
    inset 0 1px 0 rgba(255,255,255,0.4);
}

.chat-btn svg { width: 24px; height: 24px; }

.chat-badge {
  display: none;
}


  50%       { transform: scale(1.2); }
}

.chat-bubble-label {
  position: absolute;
  bottom: calc(100% + 8px);
  right: 0;
  background: var(--white);
  border: 1px solid rgba(45,74,62,0.15);
  border-radius: 20px 20px 4px 20px;
  padding: 0.45rem 0.9rem;
  font-size: 0.78rem;
  color: #2d4a3e;
  white-space: nowrap;
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
  pointer-events: none;
  animation: bubblePulse 3s ease-in-out infinite;
}

.chat-panel {
  position: absolute;
  bottom: calc(100% + 12px);
  right: 0;
  width: 340px;
  max-height: 520px;
  background: var(--white);
  border-radius: 16px;
  box-shadow: 0 16px 60px rgba(0,0,0,0.18);
  border: 1px solid rgba(201,168,76,0.15);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  opacity: 0;
  transform: translateY(12px) scale(0.97);
  pointer-events: none;
  transition: all 0.3s ease;
  transform-origin: bottom right;
}

.chat-panel.open {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: all;
}

.chat-header {
  background: linear-gradient(135deg, #1A1C1E, #2A2520);
  padding: 1rem 1.2rem;
  display: flex;
  align-items: center;
  gap: 0.7rem;
  flex-shrink: 0;
}

.chat-header__avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(191,150,69,0.15);
  border: 1.5px solid var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  flex-shrink: 0;
  overflow: hidden;
}

.chat-header__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.chat-header__info { flex: 1; }

.chat-header__name {
  font-family: var(--font-caps);
  font-size: 0.65rem;
  letter-spacing: 0.14em;
  color: var(--white);
  font-weight: 500;
}

.chat-header__status {
  font-size: 0.72rem;
  color: rgba(255,255,255,0.6);
  font-weight: 300;
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

.chat-header__status::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4ade80;
}

.chat-header__close {
  background: none;
  border: none;
  color: rgba(255,255,255,0.6);
  cursor: pointer;
  font-size: 1.1rem;
  padding: 2px;
  transition: color 0.2s;
}
.chat-header__close:hover { color: var(--white); }

.chat-messages {
  flex: 1;
  overflow-y: auto;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  min-height: 200px;
  max-height: 280px;
  background: #faf8f5;
}

.chat-messages::-webkit-scrollbar { width: 3px; }
.chat-messages::-webkit-scrollbar-thumb { background: rgba(201,168,76,0.3); border-radius: 2px; }

.chat-msg {
  max-width: 85%;
  padding: 0.65rem 0.9rem;
  border-radius: 12px;
  font-size: 0.88rem;
  line-height: 1.5;
}

.chat-msg--bot {
  background: var(--white);
  border: 1px solid rgba(201,168,76,0.15);
  color: #2e2416;
  align-self: flex-start;
  border-radius: 4px 12px 12px 12px;
}

.chat-msg--user {
  background: #2d4a3e;
  color: var(--white);
  align-self: flex-end;
  border-radius: 12px 12px 4px 12px;
}

.chat-msg--typing {
  background: var(--white);
  border: 1px solid rgba(201,168,76,0.15);
  align-self: flex-start;
  padding: 0.65rem 1.2rem;
  border-radius: 4px 12px 12px 12px;
}

.chat-typing-dots {
  display: flex;
  gap: 4px;
  align-items: center;
}

.chat-typing-dots span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold);
  animation: typingDot 1.2s ease-in-out infinite;
}
.chat-typing-dots span:nth-child(2) { animation-delay: 0.2s; }
.chat-typing-dots span:nth-child(3) { animation-delay: 0.4s; }

@keyframes typingDot {
  0%, 60%, 100% { transform: translateY(0); opacity: 0.5; }
  30%            { transform: translateY(-5px); opacity: 1; }
}

.chat-quick-btns {
  padding: 0.6rem 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  border-top: 1px solid rgba(201,168,76,0.1);
  background: var(--white);
  flex-shrink: 0;
}

.chat-quick-btn {
  font-size: 0.72rem;
  color: #2d4a3e;
  background: none;
  border: 1px solid rgba(45,74,62,0.2);
  border-radius: 999px;
  padding: 0.3rem 0.7rem;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
  font-family: var(--font-body);
}

.chat-quick-btn:hover {
  background: #2d4a3e;
  color: var(--white);
  border-color: #2d4a3e;
}

.chat-input-row {
  display: flex;
  gap: 0.5rem;
  padding: 0.8rem 1rem;
  border-top: 1px solid rgba(201,168,76,0.12);
  background: var(--white);
  flex-shrink: 0;
}

.chat-input {
  flex: 1;
  background: #faf8f5;
  border: 1px solid rgba(201,168,76,0.2);
  border-radius: 20px;
  padding: 0.5rem 1rem;
  font-size: 0.85rem;
  font-family: var(--font-body);
  color: var(--text);
  outline: none;
  transition: border-color 0.2s;
}

.chat-input:focus { border-color: var(--gold); }
.chat-input::placeholder { color: var(--text-light); }

.chat-send {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #2d4a3e;
  border: none;
  color: var(--white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.2s;
  flex-shrink: 0;
}

.chat-send:hover { background: #1e3a30; transform: scale(1.05); }
.chat-send svg { width: 16px; height: 16px; }

.chat-wa-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin: 0 1rem 1rem;
  padding: 0.6rem 1rem;
  background: #25D366;
  color: var(--white);
  border-radius: 8px;
  font-family: var(--font-caps);
  font-size: 0.6rem;
  letter-spacing: 0.12em;
  text-decoration: none;
  transition: background 0.2s;
  flex-shrink: 0;
}

.chat-wa-btn:hover { background: #1da851; }
.chat-wa-btn svg { width: 16px; height: 16px; }

@media (max-width: 480px) {
  .chat-panel { width: calc(100vw - 2rem); right: 0; }
  .chat-widget { right: 1rem; bottom: 1.5rem; }
}

/* ============================================================
   UPDATES v4 — Corrections visuelles globales
   ============================================================ */

/* ── 1. COLLECTIONS CARDS — fond beige délayé ─────────────── */
.coll-book {
  background: linear-gradient(135deg, #fdf8f0 0%, #f5ede0 60%, #ede3d2 100%) !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
}

.coll-info {
  background: transparent !important;
}

/* Fond beige sur l'info aussi */
.coll-book--photo-left .coll-info,
.coll-book--info-left .coll-info {
  background: linear-gradient(160deg, rgba(253,248,240,0.0) 0%, rgba(235,220,195,0.35) 100%) !important;
}

/* ── 2. CORR-VIVANTE — textes plus gros ─────────────────────── */
.corr-vivante__seal-title {
  font-size: 1.3rem !important;
  color: #7a5c18 !important;
}

.corr-vivante__seal-text {
  font-size: 1rem !important;
  color: #2e2416 !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
}

.corr-vivante__body {
  font-size: 1.05rem !important;
  color: #2e2416 !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
}

.corr-feat {
  font-size: 1rem !important;
  color: #1e1810 !important;
  font-weight: 400 !important;
}

/* ── 3. TÉMOIGNAGES — texte plus grand ──────────────────────── */
.testimonial-card__text {
  font-size: 1.05rem !important;
  color: #2e2416 !important;
  line-height: 1.82 !important;
  font-weight: 400 !important;
}

.testimonial-card__author {
  font-size: 0.75rem !important;
  color: #7a5c18 !important;
  font-weight: 500 !important;
}

/* ── 4. CONTACT — plus de carré blanc ───────────────────────── */
.contact__inner {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.contact {
  background: linear-gradient(160deg, #f5ede0 0%, #ede3d0 100%) !important;
  padding: var(--section-pad) 2rem !important;
}

/* ── 5. COLLECTIONS PROMO BAR — texte plus grand ────────────── */
.coll-promo-bar {
  font-size: 0.78rem !important;
  letter-spacing: 0.16em !important;
  padding: 1rem 2.5rem !important;
}

/* ── 6. FONDATEURS — hiérarchie corrigée ────────────────────── */
.fond-card__role {
  font-size: 1.5rem !important;
  letter-spacing: 0.01em !important;
  color: #1a1208 !important;
  font-weight: 700 !important;
  text-transform: none !important;
  font-family: var(--font-display) !important;
  font-style: normal !important;
}

.fond-card__name {
  font-size: 0.88rem !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: #9a8050 !important;
  line-height: 1.25 !important;
  font-family: var(--font-body) !important;
  letter-spacing: 0.02em !important;
}

.fond-card__subtitle {
  font-size: 1.05rem !important;
  color: #8a6010 !important;
  font-weight: 500 !important;
}

.fond-card__text {
  font-size: 1rem !important;
  color: #1e1810 !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
}

.fond-card__quote {
  color: #2a2010 !important;
  font-size: 0.98rem !important;
  font-weight: 400 !important;
  border-left: 3px solid var(--gold) !important;
  background: #f5ede0 !important;
}

/* ── 7. AUDIO PAGE — fond clair ─────────────────────────────── */

/* ── AUDIO PAGE dans style.css global ───────────────────────── */
.audio-page {
  background: var(--cream) !important;
  min-height: 100vh;
}

.audio-hero {
  background: transparent !important;
}

/* ── CONTACT — carré blanc définitivement supprimé ──────────── */
.contact__inner {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: 720px !important;
  margin: 0 auto !important;
}

.contact {
  background: linear-gradient(160deg, #f5ede0 0%, #ede3d0 100%) !important;
}

/* ── CORR SCEAU texte plus grand ─────────────────────────────── */
.corr-vivante__seal-title {
  font-size: 1.4rem !important;
  font-weight: 500 !important;
  color: #8a6518 !important;
}

.corr-vivante__seal-text {
  font-size: 1.05rem !important;
  color: #1e1a12 !important;
  font-weight: 400 !important;
}

/* ── TÉMOIGNAGES ─────────────────────────────────────────────── */
.testimonial-card__text {
  font-size: 1.1rem !important;
  color: #1e1a12 !important;
  line-height: 1.85 !important;
  font-weight: 400 !important;
}

/* ── COLLECTIONS cards beige ─────────────────────────────────── */
.coll-info {
  background: linear-gradient(160deg, rgba(253,248,240,0.5), rgba(240,228,205,0.7)) !important;
}


/* ── ICÔNES SERVICES & ENGAGEMENTS ── */
.service-icon-img,
.feature-icon-img {
  width: 110px;
  height: 110px;
  object-fit: contain;
  display: block;
  margin: 0 auto;
}

.service-card__icon,
.feature-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 118px;
  height: 118px;
  margin: 0 auto 1.4rem;
  background: transparent;
}

/* ── CHAT HEADER AVATAR ── */
.chat-header__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}


/* ============================================================
   PATCH FINAL LISIBILITÉ + CARROUSEL + CONCIERGERIE
   ============================================================ */

/* Titres de section dorés plus lisibles */
.section-label,
.section-label--gold,
.page-kicker,
.v2-kicker,
.coll-kicker,
.fond-kicker {
  color: var(--gold) !important;
  font-size: clamp(0.9rem, 1.05vw, 1.05rem) !important;
  letter-spacing: 0.18em !important;
}

/* Lecture générale plus confortable */
body { font-size: 18px; }
p,
.service-card__text,
.feature-card__text,
.concept__text,
.audio__body,
.audio__caption,
.fondateurs__body,
.page-intro,
.coll-body,
.coll-list li,
.collection-suggestion small,
.v2-intro,
.v2-card p,
.option-text,
.process-step p,
.audio-card-body p,
.audio-card2 p,
.footer__desc,
.footer__links a,
.footer__newsletter-text,
.footer__bottom,
.footer input {
  font-size: clamp(1.05rem, 1.15vw, 1.18rem) !important;
  line-height: 1.72 !important;
}

/* Sections sombres redevenues lisibles */
.footer,
.footer *:not(input):not(button),
.quote-lux,
.quote-lux blockquote,
.quote-lux p,
.lux-card--navy,
.lux-card--navy *,
.audio,
.audio * {
  color: rgba(255,255,255,0.9) !important;
}
.footer__col-title,
.footer .footer__col-title,
.footer__tagline,
.footer__social-link,
.footer a:hover,
.quote-lux p,
.audio .section-label,
.audio .section-label--gold {
  color: var(--gold-light) !important;
}
.footer input,
.footer input::placeholder {
  color: rgba(255,255,255,0.82) !important;
}
.footer input { background: rgba(255,255,255,0.08) !important; }

.quote-lux blockquote {
  font-size: clamp(1.65rem, 2.3vw, 2.4rem) !important;
  line-height: 1.25 !important;
}

/* Fondateurs, inversement des tailles demandé */
.founder-name2,
.founder-name {
  color: var(--gold) !important;
  font-size: clamp(1rem, 1.15vw, 1.15rem) !important;
  line-height: 1.45 !important;
}
.founder-role2,
.founder-role {
  color: var(--text) !important;
  font-size: clamp(1.25rem, 1.55vw, 1.65rem) !important;
  line-height: 1.08 !important;
}

/* Lightbox / zoom livre : grandes flèches utilisables */
.lb-overlay { background: rgba(7,10,20,0.88) !important; padding: 2rem !important; }
.lb-img-wrap { max-width: 94vw !important; max-height: 92vh !important; }
.lb-img {
  max-width: min(94vw, 1280px) !important;
  max-height: 88vh !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  box-shadow: 0 28px 90px rgba(0,0,0,0.58) !important;
  background: #fffaf0 !important;
}
.lb-nav,
.lb-prev,
.lb-next {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: clamp(66px, 6vw, 88px) !important;
  height: clamp(66px, 6vw, 88px) !important;
  border-radius: 999px !important;
  background: linear-gradient(145deg, rgba(255,255,255,0.98), rgba(235,219,176,0.96)) !important;
  border: 2px solid rgba(201,168,76,0.78) !important;
  color: #1a2744 !important;
  font-size: clamp(2.6rem, 5vw, 4.2rem) !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10001 !important;
  box-shadow: 0 14px 38px rgba(0,0,0,0.35), inset 0 0 0 1px rgba(255,255,255,0.55) !important;
}
.lb-nav:hover,
.lb-prev:hover,
.lb-next:hover { transform: translateY(-50%) scale(1.06) !important; background: #fff !important; }
.lb-nav--prev,
.lb-prev { left: clamp(18px, 4vw, 60px) !important; }
.lb-nav--next,
.lb-next { right: clamp(18px, 4vw, 60px) !important; }
.lb-close {
  width: 58px !important;
  height: 58px !important;
  background: rgba(255,255,255,0.95) !important;
  color: #1a2744 !important;
  border: 2px solid rgba(201,168,76,0.65) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.25) !important;
}
.lb-counter { color: rgba(255,255,255,0.85) !important; font-size: .85rem !important; }

/* Carrousels produits, taille uniforme + boutons plus premium */
.coll-carousel { min-height: 540px !important; }
.coll-slide.active { min-height: 500px !important; padding: 2rem !important; }
.coll-slide img { max-height: 470px !important; max-width: 94% !important; }
.coll-book--vacances .coll-slide img { max-height: 500px !important; max-width: 96% !important; }
.coll-arrow {
  width: 58px !important;
  height: 58px !important;
  right: 18px !important;
  background: linear-gradient(145deg,#ffffff,#f1e3c1) !important;
  border: 2px solid rgba(201,168,76,.58) !important;
  color: #1a2744 !important;
  font-size: 2rem !important;
  box-shadow: 0 12px 32px rgba(26,39,68,.18) !important;
}
.coll-dot { width: 12px !important; height: 12px !important; }

/* Conciergerie : cartes plus luxueuses, plus aérées */
.page-main.v2 .v2-panel,
.page-main.v2 .v2-card {
  border-radius: 28px !important;
  border: 1px solid rgba(201,168,76,.28) !important;
  background: linear-gradient(145deg,#fffaf1,#f4ead8) !important;
  box-shadow: 0 16px 0 rgba(169,125,34,.10), 0 28px 80px rgba(26,39,68,.13) !important;
}
.page-main.v2 .v2-card:hover { transform: translateY(-4px); box-shadow: 0 18px 0 rgba(169,125,34,.10), 0 36px 90px rgba(26,39,68,.16) !important; }
.page-main.v2 .v2-section { padding: 42px 0 !important; }
.page-main.v2 .v2-grid3,
.page-main.v2 .v2-grid2,
.page-main.v2 .process-row { gap: 34px !important; }
.page-main.v2 .v2-card { padding: 34px !important; }
.page-main.v2 .v2-panel[style] { padding: 52px !important; }
.page-main.v2 .idea-tags { gap: 16px 18px !important; }
.page-main.v2 .idea-tags span,
.page-main.v2 .idea-tags a {
  background: linear-gradient(145deg,#ffffff,#f6ead2) !important;
  color: #2e2820 !important;
  border: 1px solid rgba(201,168,76,.36) !important;
  box-shadow: 0 9px 24px rgba(26,39,68,.08) !important;
  padding: 13px 20px !important;
  font-size: 1rem !important;
}
.page-main.v2 .option-emoji {
  width: 112px !important;
  height: 112px !important;
  border-radius: 28px !important;
  background: radial-gradient(circle at 35% 25%,#fff,#f3dfad 70%) !important;
  box-shadow: inset 0 0 0 1px rgba(201,168,76,.35), 0 18px 42px rgba(26,39,68,.11) !important;
}
.page-main.v2 .option-emoji img { width: 78px !important; height: 78px !important; object-fit: contain !important; }

@media (max-width: 760px) {
  body { font-size: 17px; }
  .lb-nav,.lb-prev,.lb-next { width: 58px !important; height: 58px !important; font-size: 2.6rem !important; }
  .lb-img { max-width: 92vw !important; max-height: 78vh !important; }
  .coll-carousel { min-height: 430px !important; }
  .coll-slide.active { min-height: 390px !important; }
  .coll-slide img { max-height: 370px !important; }
}


/* PATCH FONDATEURS PAGE, titres dorés plus grands */
.fond-card__role {
  color: var(--gold) !important;
  font-size: clamp(1.05rem, 1.35vw, 1.35rem) !important;
  line-height: 1.35 !important;
  font-family: var(--font-caps) !important;
  text-transform: uppercase !important;
  letter-spacing: .14em !important;
  font-weight: 600 !important;
}
.fond-card__name {
  color: #1a1208 !important;
  font-size: clamp(1.25rem, 1.55vw, 1.65rem) !important;
  line-height: 1.05 !important;
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-weight: 700 !important;
}
.fond-card__text,.fond-card__quote,.fond-lead__text { font-size: clamp(1.08rem,1.18vw,1.2rem) !important; line-height:1.72 !important; }


/* ============================================================
   PATCH 2026-05-25 — Corrections ciblées après test réel
   ============================================================ */

/* Audio & Musique : retour au texte sombre sur les zones claires */
.audio,
.audio *:not(.btn):not(button):not(svg):not(path),
.audio-page,
.audio-page *:not(.btn):not(button):not(svg):not(path) {
  color: #1d1710 !important;
}
.audio .section-label,
.audio .section-label--gold,
.audio-page .audio-kicker,
.audio-page .audio-card__genre,
.audio-page em {
  color: var(--gold-dark) !important;
}
.audio-page .audio-card__title {
  color: #1d1710 !important;
  text-shadow: none !important;
  font-size: clamp(1.25rem, 1.5vw, 1.55rem) !important;
}
.audio-page .audio-card__desc,
.audio-page .audio-track-name,
.audio-page .audio-time {
  color: #2a2118 !important;
  font-size: clamp(1rem, 1.1vw, 1.12rem) !important;
}
.audio-page .audio-card__overlay {
  background: linear-gradient(180deg, rgba(255,250,240,0.10), rgba(255,250,240,0.92)) !important;
}
.audio-page .audio-player-wrap {
  background: #fffaf1 !important;
}

/* Histoire : hiérarchie plus propre et lecture moins fouillis */
.fond-grid { gap: 2.2rem !important; align-items: stretch !important; }
.fond-card {
  border-radius: 18px !important;
  background: linear-gradient(145deg, #fffdf8, #f7eedf) !important;
  box-shadow: 0 22px 60px rgba(26,39,68,.10), 0 2px 0 rgba(255,255,255,.8) inset !important;
  border: 1px solid rgba(201,168,76,.22) !important;
}
.fond-card__header {
  padding: 2.1rem 2.2rem 1.7rem !important;
  background: linear-gradient(135deg, #fbf4e6 0%, #efe0bf 100%) !important;
}
.fond-card__role {
  color: #8a6518 !important;
  font-size: clamp(1.05rem, 1.22vw, 1.32rem) !important;
  line-height: 1.35 !important;
  letter-spacing: .16em !important;
}
.fond-card__name {
  color: #15110d !important;
  font-size: clamp(1.1rem, 1.45vw, 1.35rem) !important;
  line-height: 1.12 !important;
  font-weight: 500 !important;
}
.fond-card__body { padding: 2rem 2.25rem 1.5rem !important; }
.fond-card__subtitle {
  color: #8a6518 !important;
  font-size: clamp(1.18rem, 1.45vw, 1.38rem) !important;
  margin-bottom: 1.1rem !important;
}
.fond-card__text {
  color: #22180f !important;
  font-size: clamp(1.05rem, 1.16vw, 1.16rem) !important;
  line-height: 1.82 !important;
}
.fond-card__quote {
  background: #fff8ea !important;
  border-left: 4px solid var(--gold) !important;
  border-radius: 0 12px 12px 0 !important;
  color: #2a2118 !important;
}
.fond-card__values { gap: .7rem !important; padding: 1.1rem 2.25rem 2rem !important; }
.fond-card__value { font-size: .68rem !important; padding: .52rem 1rem !important; }

/* Lightbox : une seule logique, gros boutons bien cliquables, image stable */
.lb-overlay.open { display: flex !important; }
.lb-overlay {
  align-items: center !important;
  justify-content: center !important;
  background: rgba(7,10,20,.90) !important;
  z-index: 99999 !important;
}
.lb-img {
  display: block !important;
  max-width: min(94vw, 1500px) !important;
  max-height: 90vh !important;
  object-fit: contain !important;
  background: #fffaf1 !important;
}
.lb-prev,
.lb-next {
  width: clamp(78px, 7vw, 104px) !important;
  height: clamp(78px, 7vw, 104px) !important;
  font-size: clamp(3.2rem, 5.8vw, 5rem) !important;
  pointer-events: auto !important;
}
.lb-close { z-index: 100002 !important; }

/* Carrousels livres : affichage uniforme et image 1 toujours bien visible */
.coll-carousel { min-height: 620px !important; }
.coll-slide,
.coll-slide.active {
  min-height: 580px !important;
  align-items: center !important;
  justify-content: center !important;
}
.coll-slide img {
  max-height: 560px !important;
  max-width: 98% !important;
  object-fit: contain !important;
}
.coll-arrow {
  width: 70px !important;
  height: 70px !important;
  font-size: 2.7rem !important;
  z-index: 8 !important;
}
@media (max-width: 780px) {
  .coll-carousel { min-height: 430px !important; }
  .coll-slide, .coll-slide.active { min-height: 400px !important; }
  .coll-slide img { max-height: 390px !important; }
}

/* Ajustement final fondateurs : intitulés au-dessus plus présents que les phrases */
.fond-card__role {
  font-size: clamp(1.18rem, 1.45vw, 1.5rem) !important;
  line-height: 1.32 !important;
}
.fond-card__name {
  font-size: clamp(1.02rem, 1.2vw, 1.18rem) !important;
  line-height: 1.14 !important;
}


/* ============================================================
   PATCH FINAL V3 — lisibilité, fondateurs, lightbox et audio
   ============================================================ */

/* Audio : label/titre de section doré, contenu lisible en noir sur fond clair */
.audio .section-label,
.audio .section-label--gold,
.audio-page .audio-kicker {
  color: var(--gold-dark) !important;
}
.audio__title,
.audio__body,
.audio__caption,
.audio-page .audio-hero-title,
.audio-page .audio-hero-sub,
.audio-page .audio-card__desc,
.audio-page .audio-track-name,
.audio-page .audio-time {
  color: #1d1710 !important;
}
.audio-page .audio-hero-title em,
.audio-page .audio-card__genre {
  color: var(--gold-dark) !important;
}

/* Fondateurs : prénoms mis en avant, statuts plus discrets, lignes harmonisées */
.fond-card__header {
  min-height: 190px !important;
  align-items: flex-start !important;
}
.fond-card__meta { gap: .55rem !important; }
.fond-card__role {
  color: #8a6518 !important;
  letter-spacing: .13em !important;
  line-height: 1.22 !important;
}
.fond-card__role strong {
  display: inline-block !important;
  font-family: var(--font-caps) !important;
  font-size: clamp(1.22rem, 1.45vw, 1.55rem) !important;
  letter-spacing: .18em !important;
  color: #8a6518 !important;
  margin-bottom: .22rem !important;
}
.fond-card__role small {
  display: inline-block !important;
  font-size: clamp(.74rem, .82vw, .88rem) !important;
  letter-spacing: .18em !important;
  line-height: 1.28 !important;
  color: #8a6518 !important;
}
.fond-card__name {
  color: #14100c !important;
  font-size: clamp(1.02rem, 1.26vw, 1.22rem) !important;
  line-height: 1.14 !important;
  font-weight: 500 !important;
  margin-top: .1rem !important;
}
.fond-card__body {
  background: linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,250,241,.92)) !important;
}

/* Lightbox : images plus grandes, sans crop, navigation stable */
.lb-overlay {
  background: rgba(7,10,20,.88) !important;
  padding: 1.2rem !important;
}
.lb-img-wrap {
  width: 96vw !important;
  max-width: 1680px !important;
  height: 92vh !important;
  max-height: 92vh !important;
}
.lb-img {
  width: auto !important;
  max-width: 96vw !important;
  max-height: 92vh !important;
  object-fit: contain !important;
  transition: opacity .16s ease !important;
}
@media (orientation: landscape) {
  .lb-img {
    width: min(96vw, 1680px) !important;
    height: auto !important;
  }
}
.lb-nav,
.lb-prev,
.lb-next {
  width: clamp(82px, 7vw, 108px) !important;
  height: clamp(82px, 7vw, 108px) !important;
  border-radius: 999px !important;
  background: rgba(255,250,241,.96) !important;
  color: #111827 !important;
  border: 1px solid rgba(201,168,76,.36) !important;
  box-shadow: 0 16px 48px rgba(0,0,0,.30) !important;
  font-size: clamp(3.2rem, 5vw, 4.8rem) !important;
}
.lb-nav--prev,
.lb-prev { left: max(18px, 2vw) !important; }
.lb-nav--next,
.lb-next { right: max(18px, 2vw) !important; }

/* Vacances / Évasion : zoom visuel aussi généreux que les autres livres */
body[class*="voyage"] .lb-img,
body[class*="vacances"] .lb-img,
.collection-voyages-evasion .lb-img {
  max-width: 97vw !important;
  max-height: 93vh !important;
}

/* Sécurité : les deux visuels complets de test ne doivent pas être traités comme images de carousel */
.coll-carousel[data-id="maman-marbre"] .coll-slide img,
.coll-carousel[data-id="maman-jungle"] .coll-slide img {
  object-fit: contain !important;
}


/* Note prix footer */
.footer__price-note {
  width: 100%;
  margin: 0 0 0.35rem;
  color: rgba(244,235,210,0.82) !important;
  font-family: var(--font-body);
  font-size: clamp(0.82rem, 0.9vw, 0.95rem);
  line-height: 1.5;
}

/* Sécurité couleur titre section Audio */
.audio .section-label--gold { color: var(--gold-dark) !important; }


/* ============================================================
   PATCH V5 — finitions premium footer, fondateurs, aide + AMP/FIV
   ============================================================ */
.footer__brand {
  max-width: 310px !important;
}
.footer__logo {
  font-size: clamp(1.35rem, 1.6vw, 1.75rem) !important;
  color: #fff7df !important;
  margin: .45rem 0 .35rem !important;
}
.footer__tagline {
  font-size: clamp(1.1rem, 1.32vw, 1.38rem) !important;
  letter-spacing: .18em !important;
  line-height: 1.45 !important;
  color: #fff7df !important;
}
.footer__desc {
  max-width: 285px !important;
  color: rgba(255,255,255,.84) !important;
}
.footer__social-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: .65rem !important;
  margin-top: .8rem !important;
  padding: .58rem .86rem !important;
  border: 1px solid rgba(201,168,76,.36) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.06) !important;
  color: #f3d778 !important;
  font-size: .98rem !important;
  letter-spacing: .09em !important;
}
.footer__social-link svg { width: 24px !important; height: 24px !important; flex: 0 0 auto !important; }
.footer__price-note {
  opacity: .78 !important;
  font-size: clamp(.82rem,.86vw,.94rem) !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
  padding-top: 1rem !important;
}

/* Bouton Besoin d'aide gardé partout, même modèle que l'existant */
.float-help { display: block !important; }

/* Fondateurs : slogan Manuel sur une ligne, badges plus premium */
.fond-card__name { white-space: normal !important; }
.fond-card:first-child .fond-card__name { white-space: nowrap !important; }
.fond-card__value {
  background: linear-gradient(135deg, #fff6dd 0%, #ead499 58%, #d5b24d 100%) !important;
  border: 1px solid rgba(154,112,28,.35) !important;
  color: #3d2d10 !important;
  box-shadow: 0 8px 18px rgba(154,112,28,.10), inset 0 1px 0 rgba(255,255,255,.7) !important;
}

/* AMP / FIV premium product sheet */
.amp-product {
  grid-template-columns: minmax(420px, .95fr) minmax(480px, 1.05fr) !important;
  background: linear-gradient(135deg, #fffaf1 0%, #f7ead8 100%) !important;
  border-radius: 28px !important;
  border: 1px solid rgba(201,168,76,.28) !important;
  overflow: hidden !important;
  box-shadow: 0 28px 80px rgba(33,27,20,.10) !important;
}
.amp-visual {
  order: 1;
  position: relative;
  min-height: 720px;
  padding: 2.1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background:
    radial-gradient(circle at 22% 18%, rgba(255,212,217,.42), transparent 32%),
    radial-gradient(circle at 78% 76%, rgba(201,168,76,.20), transparent 34%),
    linear-gradient(145deg, #fff5ea 0%, #efd4c5 48%, #d9b890 100%);
}
.amp-main-image-wrap {
  border-radius: 24px;
  overflow: hidden;
  background: #f8eadc;
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 30px 80px rgba(44,31,20,.22), inset 0 1px 0 rgba(255,255,255,.7);
}
.amp-main-image {
  width: 100%;
  height: auto;
  min-height: 520px;
  max-height: 640px;
  object-fit: cover;
  display: block;
}
.amp-hidden-gallery { display: none !important; }
.amp-more-visuals {
  align-self: center;
  margin-top: 1.25rem;
  border: 1px solid rgba(139,93,20,.26);
  background: rgba(255,250,241,.78);
  color: #76500f;
  border-radius: 999px;
  padding: .8rem 1.35rem;
  font-family: var(--font-caps);
  font-size: .75rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 12px 32px rgba(44,31,20,.09);
}
.amp-more-visuals:hover { transform: translateY(-2px); box-shadow: 0 16px 38px rgba(44,31,20,.14); }
.amp-nc { opacity: .58; margin-top: .7rem; }
.amp-info {
  order: 2;
  padding: clamp(2.2rem, 4vw, 4.2rem) !important;
  background: linear-gradient(135deg, rgba(255,253,248,.96), rgba(250,241,224,.96)) !important;
}
.amp-title { font-size: clamp(2rem, 3.1vw, 3.3rem) !important; letter-spacing: -.02em; }
.amp-subtitle { background: rgba(255,255,255,.68) !important; border-color: rgba(201,168,76,.38) !important; }
.amp-copy p {
  font-family: var(--font-body);
  color: #2d2118;
  font-size: clamp(1.04rem, 1.1vw, 1.18rem);
  line-height: 1.72;
  margin: 0 0 .72rem;
}
.amp-emotions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .72rem;
  margin: 1.35rem 0 1.45rem;
}
.amp-emotions span {
  position: relative;
  padding: .86rem 1rem .86rem 2.25rem;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,240,232,.78), rgba(255,250,242,.9));
  border: 1px solid rgba(201,168,76,.22);
  color: #3b2d21;
  font-size: .95rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.amp-emotions span::before {
  content: "✦";
  position: absolute;
  left: .9rem;
  top: .86rem;
  color: #b58d2e;
}
.amp-specs { margin-top: 1.15rem !important; }
.amp-specs span {
  background: rgba(255,255,255,.58) !important;
  border: 1px solid rgba(201,168,76,.42) !important;
  box-shadow: none !important;
  color: #3b2d21 !important;
}
.amp-format-zone {
  margin-top: 1.35rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(201,168,76,.20);
}
.amp-format-zone h3 {
  font-family: var(--font-caps);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #8a6518;
  font-size: .82rem;
  margin: 0 0 1rem;
}
.amp-format-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: .85rem;
}
.amp-format-card {
  border-radius: 20px;
  padding: 1.05rem;
  background: rgba(255,255,255,.66);
  border: 1px solid rgba(201,168,76,.24);
  box-shadow: 0 12px 34px rgba(44,31,20,.05);
  display: flex;
  flex-direction: column;
  gap: .38rem;
}
.amp-format-card strong { font-family: var(--font-display); font-size: 1.15rem; color: #19120c; }
.amp-format-card em { font-family: var(--font-display); font-size: 1.25rem; color: #9a701c; font-style: normal; }
.amp-format-card small { font-family: var(--font-body); font-size: .78rem; color: #76654e; }
.amp-format-card span { color: #544333; font-size: .92rem; line-height: 1.25; }
.amp-format-card--duo {
  border-color: rgba(201,168,76,.72);
  background: linear-gradient(135deg, rgba(255,251,239,.96), rgba(239,221,170,.62));
  box-shadow: 0 16px 42px rgba(154,112,28,.14);
}
.amp-buy { margin-top: 1.45rem !important; align-items: center !important; }
.amp-buy .btn { background: #09111d !important; color: #fff !important; }
.amp-trust {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  color: rgba(59,45,33,.70);
  font-size: .88rem;
}
.amp-trust span::before { content: "✦ "; color: #b58d2e; }

@media (max-width: 980px) {
  .amp-product { grid-template-columns: 1fr !important; }
  .amp-visual { min-height: auto; padding: 1.2rem; }
  .amp-main-image { min-height: 0; max-height: none; object-fit: contain; }
  .amp-emotions, .amp-format-grid { grid-template-columns: 1fr; }
  .fond-card:first-child .fond-card__name { white-space: normal !important; }
}

/* ============================================================
   PATCH V6 — finitions demandées 21h44
   ============================================================ */
/* Footer : la mention prix reste dans la largeur du site, pas seule à gauche */
.footer > .footer__price-note,
.footer__bottom .footer__price-note {
  max-width: var(--container) !important;
  margin: 0 auto !important;
  padding: 1rem 0 0 !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
  color: rgba(244,235,210,.82) !important;
  text-align: left !important;
}
.footer__bottom {
  align-items: center !important;
}
/* Footer Informations : repères élégants devant les liens */
.footer__col .footer__links li { position: relative; }
.footer__col .footer__links li a { display: inline-block; }
.footer__col:nth-of-type(4) .footer__links li a,
.footer__col:nth-of-type(3) .footer__links li a {
  padding-left: 1rem !important;
}
.footer__col:nth-of-type(4) .footer__links li a::before,
.footer__col:nth-of-type(3) .footer__links li a::before {
  content: "—";
  position: absolute;
  left: 0;
  color: #c9a84c;
  opacity: .9;
}
/* Bouton aide : retour à la disposition d'origine, sans blocage */
.float-help {
  display: flex !important;
  position: fixed !important;
  right: 2rem !important;
  bottom: 2rem !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: .6rem !important;
  pointer-events: none !important;
  z-index: 900 !important;
}
.float-help__bubble,
.float-help__btn { pointer-events: all !important; }
.float-help__ring { display: none !important; }

/* AMP/FIV : version rectangle, image complète non croppée et moins de scroll */
.amp-product {
  grid-template-columns: minmax(560px, 1.05fr) minmax(520px, .95fr) !important;
  align-items: stretch !important;
  max-width: 1680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.amp-visual {
  min-height: 0 !important;
  padding: clamp(1.1rem, 1.6vw, 1.8rem) !important;
  justify-content: flex-start !important;
}
.amp-main-image-wrap {
  width: 100% !important;
  border-radius: 20px !important;
}
.amp-main-image {
  width: 100% !important;
  height: clamp(360px, 34vw, 560px) !important;
  min-height: 0 !important;
  max-height: none !important;
  object-fit: contain !important;
  background: #f8eadc !important;
}
.amp-info {
  padding: clamp(1.4rem, 2.4vw, 2.6rem) !important;
}
.amp-title { font-size: clamp(2rem, 2.7vw, 3.05rem) !important; }
.amp-copy p { font-size: clamp(.98rem, 1vw, 1.12rem) !important; line-height: 1.58 !important; }
.amp-emotions { grid-template-columns: repeat(4, minmax(0,1fr)) !important; gap: .55rem !important; }
.amp-emotions span { padding: .78rem .6rem .78rem 1.65rem !important; font-size: .82rem !important; }
.amp-emotions span::before { left: .55rem !important; }
.amp-specs { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: .55rem !important; }
.amp-specs span { font-size: .78rem !important; padding: .72rem .85rem !important; }
.amp-format-zone {
  margin-top: 1.05rem !important;
  padding: 1rem !important;
  border: 1px solid rgba(201,168,76,.24) !important;
  border-radius: 20px !important;
  background: rgba(255,250,241,.72) !important;
}
.amp-format-grid { gap: .65rem !important; }
.amp-format-card {
  cursor: pointer !important;
  position: relative !important;
  padding: .9rem !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}
.amp-format-card:hover,
.amp-format-card.is-selected {
  transform: translateY(-2px) !important;
  border-color: rgba(201,168,76,.78) !important;
  box-shadow: 0 16px 34px rgba(154,112,28,.14) !important;
}
.amp-format-card.is-selected::before {
  content: "●";
  position: absolute;
  top: .8rem;
  right: .85rem;
  color: #b58d2e;
  font-size: .8rem;
}
.amp-format-card strong { font-size: 1.02rem !important; }
.amp-format-card em { font-size: 1.1rem !important; }
.amp-format-card span { font-size: .82rem !important; }
.amp-buy { margin-top: 1rem !important; }
.amp-buy .btn { min-width: 260px !important; justify-content: center !important; }
.amp-trust { font-size: .8rem !important; }
@media (max-width: 1180px) {
  .amp-product { grid-template-columns: 1fr !important; }
  .amp-emotions { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 680px) {
  .amp-main-image { height: auto !important; }
  .amp-emotions, .amp-specs, .amp-format-grid { grid-template-columns: 1fr !important; }
}
/* V6 correction : tirets seulement dans la colonne Informations, pas Contact */
.footer__col:nth-of-type(3) .footer__links li a { padding-left: 0 !important; }
.footer__col:nth-of-type(3) .footer__links li a::before { content: none !important; }

/* ============================================================
   PATCH V7 — corrections finales demandées
   ============================================================ */
/* Footer : mention TVA centrée et tirets Informations respirants */
.footer > .footer__price-note,
.footer__bottom .footer__price-note {
  text-align: center !important;
  max-width: min(1180px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: block !important;
}
.footer__col:nth-of-type(4) .footer__links li a {
  padding-left: 1.35rem !important;
}
.footer__col:nth-of-type(4) .footer__links li a::before {
  left: 0 !important;
  width: .8rem !important;
  display: inline-block !important;
}

/* Audio : mots sur image plus lisibles, plus premium */
.audio-page .audio-card__genre,
.audio-card__genre {
  color: rgba(25,18,12,.92) !important;
  text-shadow: 0 1px 12px rgba(255,250,241,.72), 0 1px 1px rgba(255,255,255,.65) !important;
  font-weight: 600 !important;
  letter-spacing: .26em !important;
}
.audio-page .audio-card__overlay {
  background: linear-gradient(180deg, rgba(255,250,241,.22) 0%, rgba(255,250,241,.54) 60%, rgba(255,250,241,.76) 100%) !important;
}

/* AMP/FIV : vraie fiche large type rectangle, photo entière visible, moins de scroll */
.amp-product {
  display: grid !important;
  grid-template-columns: minmax(620px, 1fr) minmax(560px, .94fr) !important;
  gap: 0 !important;
  width: min(1720px, calc(100vw - 54px)) !important;
  max-width: none !important;
  margin: 2rem auto 3.2rem !important;
  border-radius: 8px !important;
  box-shadow: 0 14px 38px rgba(26,39,68,.12) !important;
}
.amp-visual {
  padding: clamp(.85rem, 1.25vw, 1.35rem) !important;
  background: linear-gradient(135deg, #fffaf1 0%, #fbf0df 100%) !important;
}
.amp-main-image-wrap {
  border-radius: 12px !important;
  box-shadow: 0 14px 38px rgba(44,31,20,.10) !important;
  background: #fff7ec !important;
}
.amp-main-image {
  height: clamp(350px, 31vw, 500px) !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #fff7ec !important;
}
.amp-more-visuals {
  margin-top: .85rem !important;
  padding: .62rem 1.05rem !important;
  font-size: .68rem !important;
  background: rgba(255,250,241,.9) !important;
}
.amp-nc { display: none !important; }
.amp-info {
  padding: clamp(1.25rem, 2vw, 2.2rem) clamp(1.4rem, 2.4vw, 2.6rem) !important;
}
.amp-info .coll-label { margin-bottom: .7rem !important; }
.amp-title { font-size: clamp(2rem, 2.45vw, 2.95rem) !important; margin-bottom: .8rem !important; }
.amp-subtitle { margin-bottom: 1rem !important; padding: .65rem 1rem !important; }
.amp-copy { margin: .9rem 0 1rem !important; }
.amp-copy p { font-size: clamp(.96rem, .98vw, 1.07rem) !important; line-height: 1.47 !important; margin-bottom: .55rem !important; }
.amp-emotions { margin: .95rem 0 1rem !important; grid-template-columns: repeat(4, minmax(0,1fr)) !important; }
.amp-emotions span { text-align: center !important; padding: .72rem .5rem !important; font-size: .77rem !important; }
.amp-emotions span::before { position: static !important; display: block !important; margin-bottom: .18rem !important; }
.amp-specs { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: .5rem !important; }
.amp-specs span { padding: .64rem .7rem !important; font-size: .74rem !important; }
.amp-format-zone { margin-top: .8rem !important; padding: .85rem !important; }
.amp-format-zone h3 { text-align: center !important; margin-bottom: .7rem !important; }
.amp-format-card {
  min-height: 0 !important;
  padding: .78rem .82rem !important;
  border-width: 1px !important;
}
.amp-format-card strong { font-size: .95rem !important; }
.amp-format-card em { font-size: 1.04rem !important; }
.amp-format-card span { font-size: .76rem !important; }
.amp-buy { display: flex !important; flex-wrap: wrap !important; gap: .9rem 1.2rem !important; align-items: center !important; }
.amp-buy .btn { min-width: 250px !important; }
.amp-trust { width: 100%; justify-content: center !important; }

/* Sélection format : état actif clairement visible, différent du simple pack duo mis en avant */
.amp-format-card.is-selected {
  background: linear-gradient(135deg, #14213b 0%, #0b1424 100%) !important;
  color: #fff8df !important;
  border-color: #d6b24a !important;
  box-shadow: 0 18px 42px rgba(10,16,28,.22), 0 0 0 3px rgba(214,178,74,.22) !important;
  transform: translateY(-3px) !important;
}
.amp-format-card.is-selected strong,
.amp-format-card.is-selected em,
.amp-format-card.is-selected span,
.amp-format-card.is-selected small {
  color: #fff8df !important;
}
.amp-format-card.is-selected::before {
  content: "✓" !important;
  top: .65rem !important;
  right: .7rem !important;
  width: 1.45rem !important;
  height: 1.45rem !important;
  border-radius: 999px !important;
  background: #d6b24a !important;
  color: #0b1424 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: .9rem !important;
  font-weight: 700 !important;
}
.amp-format-card--duo:not(.is-selected) {
  border-color: rgba(201,168,76,.44) !important;
  box-shadow: 0 12px 28px rgba(154,112,28,.09) !important;
}

@media (max-width: 1280px) {
  .amp-product { grid-template-columns: 1fr !important; width: min(980px, calc(100vw - 32px)) !important; }
  .amp-main-image { height: auto !important; }
}
@media (max-width: 760px) {
  .amp-emotions, .amp-specs, .amp-format-grid { grid-template-columns: 1fr !important; }
  .amp-product { width: calc(100vw - 22px) !important; }
}

/* ============================================================
   PATCH V8 — AMP/FIV réel + footer harmonisé
   ============================================================ */
/* Footer : tiret + espace sur toutes les colonnes utiles */
.footer__links li a {
  position: relative !important;
  padding-left: 1.45rem !important;
}
.footer__links li a::before {
  content: "—" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  color: #c9a84c !important;
  opacity: .95 !important;
  width: .95rem !important;
  display: inline-block !important;
}
.footer__newsletter-text {
  position: relative !important;
  padding-left: 1.45rem !important;
}
.footer__newsletter-text::before {
  content: "—" !important;
  position: absolute !important;
  left: 0 !important;
  color: #c9a84c !important;
}
.footer > .footer__price-note,
.footer__price-note {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: min(960px, calc(100% - 48px)) !important;
}

/* AMP/FIV : choix des formats sous l'image, photo complète, fiche plus horizontale */
.amp-product {
  grid-template-columns: minmax(560px, 1.05fr) minmax(520px, .95fr) !important;
  align-items: stretch !important;
  width: min(1740px, calc(100vw - 48px)) !important;
}
.amp-visual {
  justify-content: flex-start !important;
  gap: .85rem !important;
}
.amp-main-image {
  height: clamp(340px, 30vw, 500px) !important;
  object-fit: contain !important;
  object-position: center center !important;
}
.amp-visual .amp-format-zone {
  width: 100% !important;
  margin-top: .15rem !important;
  padding: 1rem 1rem 1.05rem !important;
  border-radius: 18px !important;
  background: rgba(255,250,241,.82) !important;
  border: 1px solid rgba(201,168,76,.26) !important;
  box-shadow: 0 12px 30px rgba(44,31,20,.055) !important;
}
.amp-visual .amp-format-zone h3 {
  text-align: center !important;
  margin-bottom: .9rem !important;
  font-size: .86rem !important;
}
.amp-format-card {
  user-select: none !important;
}
.amp-format-card.is-selected {
  background: linear-gradient(135deg,#101b31,#172743) !important;
  border-color: #d6b24a !important;
  box-shadow: 0 20px 44px rgba(10,16,28,.22), 0 0 0 3px rgba(214,178,74,.24) !important;
}
.amp-format-card.is-selected::after {
  content: "Sélectionné" !important;
  position: absolute !important;
  left: .82rem !important;
  bottom: .62rem !important;
  color: #f8e7ad !important;
  font-family: var(--font-caps) !important;
  font-size: .58rem !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
.amp-format-card.is-selected span:last-child { margin-bottom: 1rem !important; }
.amp-current-price {
  font-family: var(--font-display) !important;
  font-size: clamp(2rem, 2.5vw, 3rem) !important;
  line-height: 1 !important;
  color: #9a701c !important;
  white-space: nowrap !important;
  margin-right: .25rem !important;
}
.amp-trust {
  font-size: clamp(.9rem, .9vw, 1rem) !important;
  color: rgba(59,45,33,.8) !important;
}
.amp-emotions span {
  font-size: clamp(.82rem, .82vw, .96rem) !important;
}
@media (max-width: 1280px) {
  .amp-product { grid-template-columns: 1fr !important; width: min(980px, calc(100vw - 28px)) !important; }
}

/* PATCH V9 — Audio Exemple remis en nav + textes d’ambiance audio un peu plus lisibles */
.audio-page .audio-card__genre,
.audio-card__genre {
  font-size: clamp(.62rem, .72vw, .74rem) !important;
  letter-spacing: .22em !important;
  line-height: 1.62 !important;
  max-width: 88% !important;
  color: rgba(24,18,12,.88) !important;
}
@media (max-width: 760px) {
  .audio-page .audio-card__genre,
  .audio-card__genre { font-size: .6rem !important; }
}

/* ============================================================
   Responsive balance pass — scale, spacing and mobile density
   ============================================================ */
@media (min-width: 1025px) and (max-width: 1680px) {
  :root {
    --container: 1120px;
    --section-pad: 84px;
    --section-pad-sm: 48px;
  }

  html {
    font-size: 15.5px;
  }

  .container {
    padding-left: clamp(1.25rem, 2.4vw, 2rem);
    padding-right: clamp(1.25rem, 2.4vw, 2rem);
  }

  .nav {
    height: 68px;
    padding-left: clamp(1.25rem, 2.4vw, 2.2rem);
    padding-right: clamp(1.25rem, 2.4vw, 2.2rem);
  }

  .hero__content {
    max-width: 980px;
  }

  .hero__title {
    font-size: clamp(3rem, 5.6vw, 5.4rem);
  }

  .hero__subtitle,
  .hero__body,
  .page-intro,
  .v2-intro {
    line-height: 1.5;
  }

  .services,
  .features,
  .correspondance {
    padding-top: var(--section-pad);
    padding-bottom: var(--section-pad);
  }

  .services__grid,
  .features__grid,
  .page-grid-3,
  .v2-grid3 {
    gap: clamp(1.1rem, 1.8vw, 1.8rem);
  }

  .service-card,
  .feature-card,
  .lux-card,
  .v2-card {
    padding: clamp(1.2rem, 2vw, 1.9rem);
  }

  .btn,
  .btn-3d,
  .v2-btn {
    padding: 12px 24px;
    font-size: 0.62rem;
  }

  .footer__top {
    gap: clamp(1.5rem, 2vw, 2.5rem);
  }
}

@media (max-width: 768px) {
  html {
    font-size: 15px;
  }

  .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .hero__title {
    font-size: clamp(2.15rem, 12vw, 3.3rem);
  }

  .hero__subtitle,
  .hero__body {
    font-size: 1rem;
    line-height: 1.48;
  }

  .btn,
  .btn-3d,
  .v2-btn,
  .nav__cta {
    padding: 10px 18px;
    font-size: 0.58rem;
  }

  .service-card,
  .feature-card,
  .lux-card,
  .v2-card {
    padding: 1.2rem;
  }

  .services__grid,
  .features__grid {
    gap: 1rem;
  }

  .float-help {
    right: 1rem !important;
    bottom: 1rem !important;
  }

  .float-help__btn {
    width: 46px !important;
    height: 46px !important;
  }

  .float-help__bubble {
    padding: 0.58rem 0.8rem !important;
    font-size: 0.82rem !important;
  }
}

@media (max-width: 1100px) {
  .nav__links {
    gap: clamp(0.6rem, 1.1vw, 1rem);
  }

  .nav__link {
    font-size: 0.56rem;
    letter-spacing: 0.1em;
  }

  .nav__cta {
    padding: 10px 16px;
  }

  .float-help {
    right: 1rem !important;
    bottom: 1rem !important;
  }

  .float-help__bubble {
    display: none !important;
  }

  .float-help__btn {
    width: 42px !important;
    height: 42px !important;
  }

  .scroll-top {
    right: 4.45rem !important;
    bottom: 1rem !important;
    width: 40px !important;
    height: 40px !important;
  }
}

@media (max-width: 480px) {
  .float-help {
    right: 0.75rem !important;
    bottom: 0.75rem !important;
  }

  .float-help__btn {
    width: 40px !important;
    height: 40px !important;
  }

  .scroll-top {
    display: none !important;
    right: 3.95rem !important;
    bottom: 0.75rem !important;
    width: 38px !important;
    height: 38px !important;
  }
}

/* ============================================================
   Finitions UX v10 - newsletter accueil + footer compact
   ============================================================ */
.home-newsletter {
  position: relative;
  padding: clamp(44px, 6vw, 74px) 2rem;
  background:
    linear-gradient(135deg, rgba(253,250,244,.98) 0%, rgba(247,236,212,.94) 58%, rgba(229,207,158,.72) 100%);
  border-top: 1px solid rgba(201,168,76,.18);
  border-bottom: 1px solid rgba(201,168,76,.18);
}

.home-newsletter__inner {
  width: min(880px, 100%);
  margin: 0 auto;
  text-align: center;
}

.home-newsletter__kicker {
  font-family: var(--font-caps);
  font-size: .66rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--gold-dark);
  margin-bottom: .7rem;
}

.home-newsletter__title {
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 3vw, 2.7rem);
  font-weight: 400;
  line-height: 1.14;
  color: var(--text);
  max-width: 760px;
  margin: 0 auto .75rem;
}

.home-newsletter__text {
  max-width: 640px;
  margin: 0 auto 1.35rem;
  color: rgba(44,35,27,.74);
  font-family: var(--font-body);
  font-size: clamp(.95rem, 1.1vw, 1.05rem);
  line-height: 1.65;
  font-weight: 300;
}

.home-newsletter__form {
  width: min(520px, 100%);
  margin: 0 auto;
  padding: .28rem;
  border: 1px solid rgba(201,168,76,.28);
  border-radius: 999px;
  background: rgba(255,252,246,.86);
  box-shadow: 0 18px 42px rgba(76,53,25,.08);
}

.home-newsletter__input {
  color: var(--text) !important;
  background: transparent !important;
  border: 0 !important;
  padding: 10px 16px !important;
}

.home-newsletter__input::placeholder {
  color: rgba(44,35,27,.46) !important;
}

.footer {
  padding: clamp(42px, 5vw, 58px) 2rem 0 !important;
}

.footer__top {
  grid-template-columns: minmax(230px, .72fr) minmax(0, 1.45fr) !important;
  align-items: start !important;
  gap: clamp(2rem, 4vw, 4rem) !important;
  padding-bottom: clamp(1.5rem, 3vw, 2.1rem) !important;
}

.footer__links-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem clamp(1.4rem, 3vw, 2.5rem);
}

.footer__links-grid .footer__col:nth-child(3) {
  grid-column: 1 / -1;
}

.footer__links-grid .footer__col:nth-child(3) .footer__links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .42rem 1.25rem;
}

.footer__brand {
  max-width: 320px !important;
}

.footer__logo {
  font-size: clamp(1.28rem, 1.55vw, 1.55rem) !important;
}

.footer__tagline {
  font-size: .62rem !important;
  letter-spacing: .18em !important;
  line-height: 1.45 !important;
  color: var(--gold) !important;
  margin-bottom: .75rem !important;
}

.footer__desc {
  max-width: 300px !important;
  margin-bottom: .55rem !important;
  font-size: .86rem !important;
  line-height: 1.58 !important;
  color: rgba(255,255,255,.68) !important;
}

.footer__col-title {
  margin-bottom: .72rem !important;
  font-size: .68rem !important;
  letter-spacing: .16em !important;
}

.footer__links {
  gap: .38rem !important;
}

.footer__links a {
  font-size: .9rem !important;
  line-height: 1.35 !important;
}

.footer__social-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .38rem !important;
  min-height: 32px !important;
  margin: .45rem .45rem 0 0 !important;
  padding: .38rem .62rem !important;
  border: 1px solid rgba(201,168,76,.30) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.045) !important;
  color: rgba(243,215,120,.9) !important;
  font-size: .66rem !important;
  letter-spacing: .08em !important;
  line-height: 1 !important;
}

.footer__social-link:hover {
  background: rgba(201,168,76,.11) !important;
  color: var(--gold-light) !important;
}

.footer__social-link svg {
  width: 14px !important;
  height: 14px !important;
}

.footer__social-link--tiktok {
  color: rgba(255,247,223,.72) !important;
  cursor: default !important;
}

.footer__newsletter {
  display: none !important;
}

.footer__divider {
  opacity: .8;
}

.footer__price-note {
  margin-bottom: .55rem !important;
  padding-top: .75rem !important;
  font-size: .82rem !important;
  line-height: 1.42 !important;
}

.footer__bottom {
  padding: 1rem 0 1.4rem !important;
  font-size: .82rem !important;
  line-height: 1.4 !important;
}

@media (max-width: 900px) {
  .footer__top {
    grid-template-columns: 1fr !important;
    gap: 1.8rem !important;
  }

  .footer__brand {
    max-width: 520px !important;
  }
}

@media (max-width: 640px) {
  .home-newsletter {
    padding: 38px 1rem;
  }

  .home-newsletter__form {
    flex-direction: column;
    align-items: stretch;
    border-radius: 18px;
    padding: .75rem;
  }

  .home-newsletter__form .btn {
    width: 100%;
  }

  .footer {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .footer__links-grid,
  .footer__links-grid .footer__col:nth-child(3) .footer__links {
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   Finitions UX v11 - footer premium et textes editoriaux
   ============================================================ */
.footer__links-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: clamp(1.25rem, 2.4vw, 2.4rem) !important;
}

.footer__links-grid .footer__col:nth-child(3) {
  grid-column: auto !important;
}

.footer__links-grid .footer__col:nth-child(3) .footer__links {
  display: flex !important;
  grid-template-columns: none !important;
  gap: .38rem !important;
}

.footer__links li {
  position: relative;
  padding-left: .82rem;
}

.footer__links li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .72em;
  width: .34rem;
  height: 1px;
  background: linear-gradient(90deg, rgba(201,168,76,.35), rgba(238,213,142,.95));
}

.footer__links a {
  display: inline !important;
}

.footer__social-link {
  height: 32px !important;
  min-height: 32px !important;
  box-sizing: border-box !important;
  vertical-align: top !important;
}

.footer__social-link--tiktok {
  min-width: 62px !important;
}

.footer__price-note {
  color: rgba(250,243,223,.86) !important;
  font-size: clamp(.88rem, .9vw, .98rem) !important;
  line-height: 1.5 !important;
  letter-spacing: .01em !important;
}

.fondateurs__origin {
  font-style: italic;
  color: rgba(59,45,33,.72) !important;
  font-size: clamp(.96rem, 1vw, 1.05rem) !important;
  line-height: 1.65 !important;
}

.testimonials__grid {
  align-items: stretch;
}

.testimonial-card {
  height: 100%;
}

.testimonial-card__text {
  font-size: clamp(.96rem, 1vw, 1.05rem) !important;
  line-height: 1.62 !important;
}

@media (max-width: 900px) {
  .footer__links-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1.1rem !important;
  }
}

@media (max-width: 720px) {
  .footer__links-grid {
    grid-template-columns: 1fr !important;
  }

  .footer__links {
    gap: .46rem !important;
  }

  .footer__social-link {
    margin-top: .55rem !important;
  }
}

/* ============================================================
   Footer and testimonials final polish
   ============================================================ */
.footer .footer__links-grid {
  grid-template-columns: minmax(120px, .82fr) minmax(260px, 1.35fr) minmax(180px, 1.05fr) !important;
  gap: clamp(1.2rem, 2.1vw, 2.15rem) !important;
}

.footer .footer__links-grid .footer__col .footer__links li a {
  position: static !important;
  padding-left: 0 !important;
}

.footer .footer__links-grid .footer__col .footer__links li a::before {
  content: none !important;
  display: none !important;
}

.footer .footer__links-grid .footer__col:nth-child(1) .footer__links li,
.footer .footer__links-grid .footer__col:nth-child(2) .footer__links li {
  position: relative !important;
  padding-left: .82rem !important;
}

.footer .footer__links-grid .footer__col:nth-child(1) .footer__links li::before,
.footer .footer__links-grid .footer__col:nth-child(2) .footer__links li::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: .72em !important;
  width: .34rem !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(201,168,76,.35), rgba(238,213,142,.95)) !important;
}

.footer .footer__links-grid .footer__col:nth-child(3) .footer__links li {
  padding-left: 0 !important;
}

.footer .footer__links-grid .footer__col:nth-child(3) .footer__links li::before {
  content: none !important;
  display: none !important;
}

.footer .footer__links-grid .footer__col:nth-child(2) .footer__links a {
  line-height: 1.42 !important;
}

.fondateurs__origin {
  color: rgba(59,45,33,.84) !important;
}

.testimonials__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  max-width: none !important;
  align-items: stretch !important;
}

.testimonial-card {
  min-height: 100% !important;
}

@media (max-width: 900px) {
  .footer .footer__links-grid {
    grid-template-columns: minmax(116px, .82fr) minmax(250px, 1.32fr) minmax(176px, 1.08fr) !important;
  }

  .testimonials__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: 780px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 720px) {
  .footer .footer__links-grid {
    grid-template-columns: 1fr !important;
  }

  .footer .footer__links-grid .footer__col:nth-child(2) .footer__links a {
    line-height: 1.5 !important;
  }
}

@media (max-width: 640px) {
  .testimonials__grid {
    grid-template-columns: 1fr !important;
    max-width: 500px !important;
  }
}

/* ============================================================
   Conciergerie - exemples de couvertures personnalisees
   ============================================================ */
.page-main.v2 .cover-examples {
  padding-top: clamp(34px, 4vw, 58px) !important;
  padding-bottom: clamp(38px, 5vw, 72px) !important;
}

.cover-examples__panel {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 4vw, 52px);
  border: 1px solid rgba(201,168,76,.24);
  border-radius: 28px;
  background:
    radial-gradient(circle at 10% 0%, rgba(201,168,76,.16), transparent 34%),
    linear-gradient(145deg, rgba(255,250,241,.96), rgba(244,234,216,.94));
  box-shadow: 0 16px 0 rgba(169,125,34,.08), 0 30px 84px rgba(26,39,68,.12);
}

.cover-examples__panel::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(201,168,76,.12);
  border-radius: 22px;
  pointer-events: none;
}

.cover-examples__header {
  position: relative;
  max-width: 860px;
  margin: 0 auto clamp(24px, 3.2vw, 38px);
  text-align: center;
}

.cover-examples__intro {
  margin: 16px auto 0;
  max-width: 780px;
  color: rgba(46,36,22,.82);
  font-family: var(--font-body);
  font-size: clamp(.98rem, 1.15vw, 1.08rem);
  line-height: 1.7;
}

.cover-examples__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.cover-example-card {
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(201,168,76,.28);
  border-radius: 22px;
  background: linear-gradient(145deg, #fffdf8, #f7ecda);
  box-shadow: 0 10px 0 rgba(169,125,34,.08), 0 22px 54px rgba(26,39,68,.11);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.cover-example-card:hover {
  transform: translateY(-5px);
  border-color: rgba(201,168,76,.46);
  box-shadow: 0 13px 0 rgba(169,125,34,.10), 0 30px 70px rgba(26,39,68,.15);
}

.cover-example-card__media {
  aspect-ratio: 4 / 5.25;
  overflow: hidden;
  border: 1px solid rgba(201,168,76,.18);
  border-radius: 16px;
  background: #efe2ca;
}

.cover-example-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .45s ease, filter .45s ease;
}

.cover-example-card:hover .cover-example-card__media img {
  transform: scale(1.035);
  filter: saturate(1.03) contrast(1.02);
}

.cover-example-card figcaption {
  padding: 16px 6px 6px;
}

.cover-example-card h3 {
  margin: 0 0 8px;
  color: var(--mm-navy, #1a2744);
  font-family: var(--font-display);
  font-size: clamp(1.04rem, 1.2vw, 1.16rem);
  font-weight: 500;
  line-height: 1.12;
}

.cover-example-card p {
  margin: 0;
  color: rgba(46,36,22,.78);
  font-family: var(--font-body);
  font-size: .94rem;
  line-height: 1.55;
}

.cover-examples__note {
  position: relative;
  max-width: 760px;
  margin: clamp(22px, 3vw, 34px) auto 0;
  color: rgba(46,36,22,.66);
  font-size: .95rem;
  font-style: italic;
  line-height: 1.55;
  text-align: center;
}

.cover-examples__cta {
  position: relative;
  margin: 24px 0 0;
  text-align: center;
}

@media (max-width: 1180px) {
  .cover-examples__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .cover-examples__panel {
    padding: 24px 16px 28px;
    border-radius: 22px;
  }

  .cover-examples__panel::before {
    inset: 10px;
    border-radius: 18px;
  }

  .cover-examples__grid {
    grid-template-columns: 1fr;
    gap: 18px;
    max-width: 420px;
    margin: 0 auto;
  }

  .cover-example-card {
    padding: 10px;
    border-radius: 18px;
  }

  .cover-example-card__media {
    aspect-ratio: 4 / 4.9;
    border-radius: 14px;
  }

  .cover-example-card figcaption {
    padding: 14px 4px 4px;
  }

  .cover-examples__cta .v2-btn {
    width: min(100%, 360px);
  }
}

/* ============================================================
   Galerie immersive premium
   ============================================================ */
.cover-example-card__button {
  width: 100%;
  height: 100%;
  display: block;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  border-radius: inherit;
  font: inherit;
  color: inherit;
}

.cover-example-card__button:focus-visible,
.pb-gallery-trigger:focus-visible {
  outline: 2px solid rgba(201,168,76,.78);
  outline-offset: 4px;
}

.cover-example-card:hover .cover-example-card__media img {
  transform: none !important;
  filter: saturate(1.03) contrast(1.02);
}

.premium-gallery-modal[hidden] {
  display: none;
}

.premium-gallery-modal {
  position: fixed;
  inset: 0;
  z-index: 20000;
  display: grid;
  place-items: center;
  padding: clamp(18px, 3vw, 46px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .28s ease;
}

.premium-gallery-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}

.premium-gallery-modal__backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(circle at 50% 45%, rgba(201,168,76,.16), transparent 38%),
    rgba(7, 10, 18, .88);
  backdrop-filter: blur(10px);
}

.premium-gallery-modal__frame {
  position: relative;
  z-index: 1;
  width: min(94vw, 1480px);
  max-height: 92vh;
  display: grid;
  place-items: center;
  transform: translateY(14px) scale(.985);
  opacity: 0;
  transition: transform .32s var(--ease), opacity .32s var(--ease);
}

.premium-gallery-modal.is-open .premium-gallery-modal__frame {
  transform: translateY(0) scale(1);
  opacity: 1;
}

.premium-gallery-modal__image {
  width: auto;
  max-width: 100%;
  max-height: 86vh;
  object-fit: contain;
  border-radius: 14px;
  border: 1px solid rgba(238,213,142,.42);
  background: #f7efe0;
  box-shadow: 0 34px 95px rgba(0,0,0,.52), 0 0 0 1px rgba(255,255,255,.08);
}

.premium-gallery-modal__close {
  position: fixed;
  z-index: 2;
  top: clamp(16px, 3vw, 34px);
  right: clamp(16px, 3vw, 34px);
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(238,213,142,.52);
  background: linear-gradient(145deg, rgba(255,250,241,.96), rgba(237,222,187,.92));
  color: var(--navy);
  font-size: 1.4rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 14px 36px rgba(0,0,0,.28);
  transition: transform .2s ease, box-shadow .2s ease;
}

.premium-gallery-modal__close:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(0,0,0,.34);
}

body.premium-gallery-open {
  overflow: hidden;
}

@media (max-width: 640px) {
  .premium-gallery-modal {
    padding: 12px;
  }

  .premium-gallery-modal__image {
    max-height: 82vh;
    border-radius: 10px;
  }

  .premium-gallery-modal__close {
    width: 42px;
    height: 42px;
  }
}

/* ============================================================
   Page Livre personnalise
   ============================================================ */
.personal-book-page {
  background:
    radial-gradient(circle at 12% 5%, rgba(201,168,76,.16), transparent 28%),
    linear-gradient(180deg, #fffaf1 0%, var(--cream) 46%, #f1e5cf 100%);
  color: var(--text);
  overflow: hidden;
}

.pb-hero {
  position: relative;
  min-height: 84vh;
  display: grid;
  place-items: center;
  padding: 120px 2rem 78px;
  color: var(--white);
  isolation: isolate;
}

.pb-hero__image,
.pb-hero__overlay {
  position: absolute;
  inset: 0;
}

.pb-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -3;
  filter: saturate(.94) contrast(1.03);
}

.pb-hero__overlay {
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(7,13,28,.78), rgba(13,26,58,.48) 46%, rgba(7,10,18,.76)),
    radial-gradient(circle at 58% 36%, rgba(201,168,76,.22), transparent 40%);
}

.pb-hero__content,
.pb-section__head {
  width: min(900px, 100%);
  margin: 0 auto;
  text-align: center;
}

.pb-kicker {
  font-family: var(--font-caps);
  font-size: .68rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--gold-light);
  margin-bottom: 1rem;
}

.pb-section__head .pb-kicker,
.pb-audio-section .pb-kicker {
  color: var(--gold-dark);
}

.pb-title {
  font-family: var(--font-display);
  font-size: clamp(3rem, 6.4vw, 5.7rem);
  font-weight: 400;
  line-height: .96;
  letter-spacing: 0;
  text-shadow: 0 16px 42px rgba(0,0,0,.36);
}

.pb-hero__text {
  width: min(690px, 100%);
  margin: 1.3rem auto 2rem;
  color: rgba(255,255,255,.84);
  font-size: clamp(1.08rem, 1.5vw, 1.28rem);
  line-height: 1.7;
}

.pb-section {
  padding: clamp(68px, 8vw, 112px) 2rem;
}

.pb-inner {
  width: min(var(--container), 100%);
  margin: 0 auto;
}

.pb-section--warm {
  background: linear-gradient(135deg, #FDFAF4 0%, #F7EEDC 58%, #EEDDBC 100%);
}

.pb-heading {
  font-family: var(--font-display);
  font-size: clamp(2.2rem, 4vw, 3.3rem);
  font-weight: 400;
  line-height: 1.08;
  color: var(--text);
}

.pb-copy {
  max-width: 780px;
  margin: 1rem auto 0;
  color: var(--text-mid);
  font-size: clamp(1.04rem, 1.35vw, 1.18rem);
  line-height: 1.78;
}

.pb-audio-section .pb-copy {
  margin-left: 0;
  margin-right: 0;
}

.pb-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 34px);
  margin-top: clamp(32px, 4vw, 52px);
}

.pb-feature-card {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  border: 1px solid rgba(201,168,76,.24);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255,253,248,.96), rgba(246,235,214,.92));
  box-shadow: 0 14px 0 rgba(169,125,34,.08), 0 28px 72px rgba(26,39,68,.12);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.pb-feature-card:hover {
  transform: translateY(-5px);
  border-color: rgba(201,168,76,.42);
  box-shadow: 0 18px 0 rgba(169,125,34,.10), 0 36px 90px rgba(26,39,68,.16);
}

.pb-feature-card--cover {
  grid-column: 1 / -1;
}

.pb-feature-card__media {
  position: relative;
  aspect-ratio: 16 / 9.4;
  padding: clamp(8px, 1.2vw, 14px);
  overflow: hidden;
  border-bottom: 1px solid rgba(201,168,76,.18);
  background:
    linear-gradient(145deg, rgba(255,248,233,.96), rgba(224,198,152,.76));
}

.pb-feature-card__media img,
.pb-audio-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  border-radius: 16px;
  box-shadow: 0 16px 38px rgba(44,31,20,.13);
}

.pb-cover-mosaic img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  background: linear-gradient(145deg, #fff8ea, #e6d1ad);
}

.pb-feature-card__body {
  padding: clamp(22px, 3vw, 32px);
}

.pb-feature-card h3 {
  margin: 0 0 .8rem;
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  font-weight: 500;
  color: var(--navy);
  line-height: 1.08;
}

.pb-feature-card p {
  color: rgba(46,36,22,.80);
  font-size: 1.02rem;
  line-height: 1.68;
}

.pb-cover-mosaic {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
  background: linear-gradient(145deg, #fff8ea, #ead6b3);
}

.pb-cover-mosaic .pb-gallery-trigger {
  aspect-ratio: 4 / 5.12;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(201,168,76,.24);
}

.pb-gallery-trigger {
  width: 100%;
  height: 100%;
  display: block;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.pb-gallery-trigger img {
  transition: filter .28s ease;
}

.pb-gallery-trigger:hover img {
  filter: saturate(1.04) contrast(1.02);
}

.pb-audio-section {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(32px, 5vw, 62px);
  align-items: center;
}

.pb-audio-visual {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(201,168,76,.28);
  border-radius: 26px;
  background: #17110d;
  box-shadow: 0 18px 0 rgba(169,125,34,.10), 0 38px 95px rgba(26,39,68,.18);
}

.pb-audio-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 62%, rgba(7,10,18,.18));
  pointer-events: none;
}

.pb-audio-visual .pb-gallery-trigger {
  aspect-ratio: 16 / 10.2;
}

.pb-final {
  position: relative;
  text-align: center;
}

.pb-anchor {
  position: absolute;
  top: -96px;
  left: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

.pb-final__panel {
  width: min(880px, 100%);
  margin: 0 auto;
  padding: clamp(34px, 5vw, 62px);
  border: 1px solid rgba(201,168,76,.24);
  border-radius: 28px;
  background: linear-gradient(145deg, #111b32, #1a2744 58%, #26375c);
  color: var(--white);
  box-shadow: 0 28px 84px rgba(26,39,68,.22);
}

.pb-final__panel .pb-copy {
  color: rgba(255,255,255,.82);
}

.pb-final__panel .pb-heading {
  color: rgba(255,255,255,.94);
  text-shadow: 0 16px 34px rgba(0,0,0,.26);
}

.pb-final__panel .pb-kicker {
  color: var(--gold-light);
}

@media (max-width: 980px) {
  .pb-hero {
    min-height: 76vh;
  }

  .pb-gallery,
  .pb-audio-section {
    grid-template-columns: 1fr;
  }

  .pb-cover-mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .pb-hero {
    padding: 108px 1rem 62px;
  }

  .pb-section {
    padding: 62px 1rem;
  }

  .pb-gallery {
    gap: 20px;
  }

  .pb-feature-card,
  .pb-audio-visual,
  .pb-final__panel {
    border-radius: 20px;
  }

  .pb-feature-card__media,
  .pb-audio-visual .pb-gallery-trigger {
    aspect-ratio: 4 / 3.1;
  }

  .pb-cover-mosaic {
    gap: 8px;
    padding: 10px;
  }
}

/* Actions flottantes premium, page Livre personnalise */
.pb-floating-actions {
  position: fixed;
  right: clamp(.9rem, 2vw, 2rem);
  bottom: clamp(1rem, 2vw, 2rem);
  z-index: 920;
  display: grid;
  gap: .68rem;
  pointer-events: none;
  animation: pbFloatingIn .55s ease .18s both;
}

.pb-floating-action {
  width: 56px;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  border-radius: 999px;
  border: 1px solid rgba(201,168,76,.36);
  background:
    linear-gradient(145deg, rgba(255,250,239,.96), rgba(232,210,160,.92));
  color: #1b2744;
  box-shadow:
    0 3px 0 rgba(122,86,25,.38),
    0 16px 38px rgba(31,24,15,.18),
    inset 0 1px 0 rgba(255,255,255,.72);
  text-decoration: none;
  cursor: pointer;
  pointer-events: all;
  transition: transform .28s var(--ease), box-shadow .28s var(--ease), border-color .28s var(--ease), background .28s var(--ease);
}

.pb-floating-action:hover,
.pb-floating-action:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(201,168,76,.58);
  box-shadow:
    0 5px 0 rgba(122,86,25,.32),
    0 22px 46px rgba(31,24,15,.23),
    inset 0 1px 0 rgba(255,255,255,.8);
}

.pb-floating-action svg {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
}

.pb-floating-action span {
  width: 0;
  max-width: 0;
  overflow: hidden;
  opacity: 0;
  white-space: nowrap;
  font-family: var(--font-caps);
  font-size: .62rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  transition: max-width .28s ease, width .28s ease, opacity .22s ease;
}

.pb-floating-action:hover span,
.pb-floating-action:focus-visible span {
  width: auto;
  max-width: 118px;
  opacity: 1;
}

.pb-floating-action--order {
  background:
    linear-gradient(145deg, #f7df89 0%, #d4ad45 54%, #b88a24 100%);
  color: #17213b;
}

.pb-floating-action--whatsapp {
  background:
    linear-gradient(145deg, rgba(20,36,32,.98), rgba(31,63,50,.96));
  color: #f7e6b1;
  border-color: rgba(201,168,76,.34);
}

.pb-floating-actions .scroll-top {
  position: static !important;
  right: auto !important;
  bottom: auto !important;
  display: inline-flex !important;
  width: 56px !important;
  height: 56px !important;
  transform: translateY(10px);
}

.pb-floating-actions .scroll-top.visible {
  transform: translateY(0);
}

.pb-floating-actions .scroll-top svg {
  stroke: currentColor;
}

@keyframes pbFloatingIn {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (min-width: 900px) {
  .pb-floating-action:hover,
  .pb-floating-action:focus-visible {
    width: auto;
    padding: 0 1rem;
  }
}

@media (max-width: 640px) {
  .pb-floating-actions {
    right: .78rem;
    bottom: .78rem;
    gap: .5rem;
  }

  .pb-floating-action,
  .pb-floating-actions .scroll-top {
    width: 46px !important;
    height: 46px !important;
    min-height: 46px;
  }

  .pb-floating-action svg {
    width: 19px;
    height: 19px;
  }

  .pb-floating-action span {
    display: none;
  }
}

/* Section audio de la page Pourquoi uniques, remplace le visuel graphique */
.unique-audio-photo {
  position: relative;
  overflow: hidden;
  min-height: 460px;
  border-radius: 10px;
  border: 1px solid rgba(201,168,76,.24);
  background: #17110d;
  box-shadow: 0 28px 70px rgba(13,26,58,.20);
}

.unique-audio-photo img {
  width: 100%;
  height: 100%;
  min-height: 460px;
  display: block;
  object-fit: cover;
}

.unique-audio-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7,10,18,.04), rgba(7,10,18,.18)),
    radial-gradient(circle at 72% 15%, rgba(201,168,76,.14), transparent 36%);
  pointer-events: none;
}

@media (max-width: 720px) {
  .unique-audio-photo,
  .unique-audio-photo img {
    min-height: 340px;
  }
}

/* ============================================================
   Page Nos creations personnalisees + boutons services
   ============================================================ */
.service-card.service-card--link {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.service-card.service-card--link .service-card__text {
  flex: 1;
}

.service-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.25rem;
  padding: .72rem 1.35rem;
  min-width: 132px;
  border-radius: 999px;
  background: linear-gradient(180deg, #d6b552 0%, #b99131 100%);
  color: #fff;
  border: 1px solid rgba(164,125,39,.7);
  box-shadow:
    0 5px 0 rgba(70,48,16,.24),
    0 14px 28px rgba(122,88,30,.16);
  font-family: var(--font-caps);
  font-size: .58rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  transition: transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease);
}

.service-card:hover .service-card__cta {
  transform: translateY(2px);
  background: linear-gradient(180deg, #dfc369 0%, #a87f27 100%);
  box-shadow:
    0 3px 0 rgba(70,48,16,.26),
    0 10px 20px rgba(122,88,30,.18);
}

.custom-creations-page {
  background:
    linear-gradient(180deg, #faf8f4 0%, #f4ead7 46%, #faf8f4 100%);
  color: var(--text);
  overflow: hidden;
}

.cc-inner {
  width: min(var(--container), calc(100% - 40px));
  margin: 0 auto;
}

.cc-hero {
  min-height: 84vh;
  position: relative;
  display: grid;
  place-items: center;
  padding: 128px 2rem 82px;
  color: var(--white);
  isolation: isolate;
}

.cc-hero__image,
.cc-hero__overlay {
  position: absolute;
  inset: 0;
}

.cc-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: -3;
  filter: saturate(.94) contrast(1.04);
}

.cc-hero__overlay {
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(8,14,30,.82) 0%, rgba(15,27,52,.56) 48%, rgba(9,13,23,.78) 100%),
    linear-gradient(180deg, rgba(8,14,30,.16) 0%, rgba(8,14,30,.58) 100%);
}

.cc-hero__content {
  width: min(880px, 100%);
  text-align: center;
}

.cc-kicker {
  font-family: var(--font-caps);
  font-size: .68rem;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 1rem;
}

.cc-title {
  font-family: var(--font-display);
  font-size: clamp(3rem, 7vw, 5.8rem);
  font-weight: 400;
  line-height: .96;
  color: currentColor;
  text-shadow: 0 18px 48px rgba(0,0,0,.36);
  margin-bottom: 1.35rem;
}

.cc-hero__text {
  max-width: 740px;
  margin: 0 auto 2rem;
  font-size: clamp(1.08rem, 1.7vw, 1.32rem);
  line-height: 1.72;
  color: rgba(255,255,255,.84);
  font-weight: 300;
}

.cc-hero__btn,
.cc-action {
  border-radius: 999px;
}

.cc-intro {
  padding: clamp(62px, 7vw, 92px) 0 clamp(36px, 5vw, 56px);
  text-align: center;
}

.cc-intro .cc-inner {
  max-width: 840px;
}

.cc-heading {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.35rem);
  font-weight: 400;
  line-height: 1.08;
  color: var(--text);
  margin-bottom: 1rem;
}

.cc-copy {
  font-size: clamp(1.02rem, 1.35vw, 1.18rem);
  line-height: 1.82;
  color: rgba(46,40,32,.78);
  font-weight: 300;
}

.cc-section {
  position: relative;
  padding: clamp(58px, 7vw, 92px) 0;
}

.cc-section--warm {
  background:
    linear-gradient(135deg, rgba(255,250,241,.88) 0%, rgba(243,232,207,.9) 100%);
  border-top: 1px solid rgba(201,168,76,.13);
  border-bottom: 1px solid rgba(201,168,76,.13);
}

.cc-section:target {
  scroll-margin-top: 108px;
}

.cc-split {
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
  gap: clamp(2rem, 5vw, 4.6rem);
  align-items: center;
}

.cc-split--reverse {
  grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
}

.cc-visual {
  position: relative;
  min-height: clamp(360px, 42vw, 520px);
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(201,168,76,.22);
  background: linear-gradient(145deg, #fffaf1, #ead8b8);
  box-shadow:
    0 2px 0 rgba(255,255,255,.9) inset,
    0 28px 74px rgba(44,31,20,.13);
}

.cc-visual::after {
  content: "";
  position: absolute;
  inset: 12px;
  border: 1px solid rgba(255,255,255,.36);
  border-radius: 16px;
  pointer-events: none;
}

.cc-visual > img:not(.cc-symbol) {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.cc-visual--symbol {
  display: grid;
  place-items: center;
}

.cc-visual__backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.9) brightness(.82);
}

.cc-symbol {
  position: relative;
  z-index: 1;
  width: min(220px, 48%);
  aspect-ratio: 1;
  object-fit: contain;
  border-radius: 50%;
  padding: clamp(18px, 4vw, 34px);
  background: rgba(255,249,236,.9);
  border: 1px solid rgba(201,168,76,.34);
  box-shadow:
    0 20px 48px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.9);
}

.cc-panel {
  position: relative;
  padding: clamp(1.75rem, 3vw, 2.6rem);
  border-radius: 22px;
  border: 1px solid rgba(201,168,76,.2);
  background: rgba(255,252,246,.78);
  box-shadow: 0 20px 58px rgba(40,28,18,.08);
  backdrop-filter: blur(8px);
}

.cc-panel::before {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(201,168,76,.12);
  border-radius: 16px;
  pointer-events: none;
}

.cc-panel > * {
  position: relative;
  z-index: 1;
}

.cc-accordion {
  margin: 1.55rem 0 1.65rem;
  border-radius: 18px;
  border: 1px solid rgba(201,168,76,.28);
  background: linear-gradient(145deg, rgba(255,255,255,.86), rgba(247,238,218,.72));
  box-shadow: 0 12px 32px rgba(44,31,20,.08);
  overflow: hidden;
}

.cc-accordion summary {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.1rem;
  font-family: var(--font-caps);
  font-size: .72rem;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--navy);
  list-style: none;
}

.cc-accordion summary::-webkit-details-marker {
  display: none;
}

.cc-accordion summary::after {
  content: "+";
  display: grid;
  place-items: center;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  color: var(--gold-dark);
  border: 1px solid rgba(201,168,76,.34);
  background: rgba(255,250,238,.86);
  transition: transform .24s var(--ease), background .24s var(--ease);
}

.cc-accordion[open] summary::after {
  content: "−";
  transform: rotate(180deg);
  background: rgba(234,216,176,.86);
}

.cc-accordion__content {
  padding: 0 1.1rem 1.1rem;
  animation: ccAccordionIn .28s ease both;
}

.cc-accordion__content p,
.cc-accordion__content li {
  color: rgba(46,40,32,.78);
  font-size: 1rem;
  line-height: 1.68;
}

.cc-accordion__content ul {
  margin-top: .75rem;
  padding-left: 1.15rem;
  list-style: disc;
}

.cc-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
}

.cc-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: .42rem .82rem;
  border-radius: 999px;
  background: #fffaf0;
  border: 1px solid rgba(201,168,76,.24);
  color: rgba(46,40,32,.78);
  box-shadow: 0 8px 18px rgba(44,31,20,.05);
}

.cc-final {
  padding: clamp(68px, 8vw, 108px) 2rem;
  background:
    linear-gradient(135deg, rgba(10,18,38,.96), rgba(26,39,68,.94)),
    url('img--unique--pourquoi-nos-creations-sont-uniques.jpg') center/cover;
  color: #fff;
  text-align: center;
}

.cc-final__inner {
  width: min(820px, 100%);
  margin: 0 auto;
}

.cc-final h2 {
  font-family: var(--font-display);
  font-size: clamp(2.1rem, 4.5vw, 3.7rem);
  font-weight: 400;
  line-height: 1.05;
  margin-bottom: 1rem;
}

.cc-final p:not(.cc-kicker) {
  max-width: 620px;
  margin: 0 auto 1.8rem;
  color: rgba(255,255,255,.78);
  font-size: 1.15rem;
  line-height: 1.72;
}

@keyframes ccAccordionIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 980px) {
  .cc-split,
  .cc-split--reverse {
    grid-template-columns: 1fr;
  }

  .cc-split--reverse .cc-visual {
    order: -1;
  }

  .cc-visual {
    min-height: clamp(320px, 58vw, 440px);
  }
}

@media (max-width: 640px) {
  .services__grid {
    gap: 1rem;
  }

  .service-card__cta {
    width: 100%;
    max-width: 210px;
    margin-top: 1rem;
  }

  .cc-inner {
    width: min(100% - 24px, var(--container));
  }

  .cc-hero {
    min-height: 76vh;
    padding: 108px 1rem 58px;
  }

  .cc-title {
    font-size: clamp(2.55rem, 16vw, 3.65rem);
  }

  .cc-hero__text {
    font-size: 1.02rem;
    line-height: 1.62;
  }

  .cc-section {
    padding: 46px 0;
  }

  .cc-panel {
    padding: 1.35rem;
    border-radius: 18px;
  }

  .cc-heading {
    font-size: clamp(1.85rem, 10vw, 2.55rem);
  }

  .cc-copy {
    font-size: 1rem;
    line-height: 1.68;
  }

  .cc-accordion summary {
    align-items: flex-start;
    font-size: .66rem;
    line-height: 1.45;
  }

  .cc-visual {
    min-height: 285px;
    border-radius: 18px;
  }

  .cc-symbol {
    width: min(175px, 54%);
  }
}

/* Tarifs & formules, page Nos creations personnalisees */
.cc-pricing {
  position: relative;
  padding: clamp(76px, 8vw, 118px) 0;
  isolation: isolate;
  background:
    linear-gradient(180deg, #fffaf2 0%, #f4e9d4 52%, #faf8f4 100%);
  overflow: hidden;
}

.cc-pricing__ambient {
  position: absolute;
  inset: 0;
  z-index: -2;
  opacity: .17;
}

.cc-pricing__ambient::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(250,248,244,.86), rgba(244,233,212,.94) 44%, rgba(250,248,244,.98)),
    radial-gradient(circle at 50% 18%, rgba(201,168,76,.22), transparent 44%);
}

.cc-pricing__ambient img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.9) contrast(1.02);
}

.cc-pricing__head {
  max-width: 900px;
  margin: 0 auto clamp(34px, 5vw, 56px);
  text-align: center;
}

.cc-pricing__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2.4vw, 28px);
  align-items: stretch;
}

.cc-price-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(201,168,76,.24);
  background:
    linear-gradient(145deg, rgba(255,253,248,.94), rgba(247,238,219,.86));
  box-shadow:
    0 2px 0 rgba(255,255,255,.86) inset,
    0 18px 44px rgba(44,31,20,.08);
  transition: transform .28s var(--ease), box-shadow .28s var(--ease), border-color .28s var(--ease);
}

.cc-price-card:hover {
  transform: translateY(-6px);
  border-color: rgba(201,168,76,.42);
  box-shadow:
    0 2px 0 rgba(255,255,255,.9) inset,
    0 28px 64px rgba(44,31,20,.13);
}

.cc-price-card::after {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(201,168,76,.12);
  border-radius: 16px;
  pointer-events: none;
}

.cc-price-card__media {
  position: relative;
  height: 190px;
  overflow: hidden;
  background: #ead8b8;
}

.cc-price-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(8,14,30,.02), rgba(8,14,30,.22)),
    radial-gradient(circle at 78% 20%, rgba(201,168,76,.16), transparent 40%);
}

.cc-price-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s var(--ease);
}

.cc-price-card:hover .cc-price-card__media img {
  transform: scale(1.035);
}

.cc-price-card__body {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: clamp(1.25rem, 2vw, 1.65rem);
}

.cc-price-card h3 {
  font-family: var(--font-display);
  font-size: clamp(1.28rem, 1.7vw, 1.62rem);
  font-weight: 500;
  line-height: 1.12;
  color: var(--text);
  margin-bottom: .7rem;
}

.cc-price-card__price {
  font-family: var(--font-display);
  font-size: clamp(1.7rem, 2.6vw, 2.28rem);
  line-height: 1;
  color: var(--navy);
  margin-bottom: .35rem;
}

.cc-price-card__note {
  font-family: var(--font-caps);
  font-size: .62rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--gold-dark);
  margin-bottom: 1rem;
}

.cc-price-card__desc {
  color: rgba(46,40,32,.78);
  font-size: 1rem;
  line-height: 1.62;
  margin-bottom: 1rem;
}

.cc-price-list {
  display: grid;
  gap: .45rem;
  margin: 0 0 1rem;
}

.cc-price-list li {
  position: relative;
  padding-left: 1.15rem;
  color: rgba(46,40,32,.76);
  font-size: .96rem;
  line-height: 1.45;
}

.cc-price-list li::before {
  content: "✦";
  position: absolute;
  left: 0;
  top: .04rem;
  color: var(--gold);
  font-size: .72rem;
}

.cc-price-options {
  display: grid;
  gap: .42rem;
  margin-top: auto;
  padding-top: .9rem;
  border-top: 1px solid rgba(201,168,76,.18);
}

.cc-price-options span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: .42rem .68rem;
  border-radius: 999px;
  background: rgba(255,250,238,.78);
  border: 1px solid rgba(201,168,76,.18);
  color: rgba(46,40,32,.78);
  font-size: .92rem;
  line-height: 1.24;
}

.cc-price-options--formulas span {
  border-radius: 12px;
}

.cc-price-card--premium {
  transform: translateY(-10px);
  border-color: rgba(201,168,76,.54);
  background:
    linear-gradient(145deg, rgba(18,28,53,.98), rgba(29,42,73,.96) 54%, rgba(75,58,34,.9));
  color: #fff;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.08) inset,
    0 28px 80px rgba(10,18,38,.24),
    0 0 80px rgba(201,168,76,.16);
}

.cc-price-card--premium:hover {
  transform: translateY(-16px);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.1) inset,
    0 36px 92px rgba(10,18,38,.31),
    0 0 90px rgba(201,168,76,.2);
}

.cc-price-card--premium::after {
  border-color: rgba(212,184,112,.22);
}

.cc-price-card--premium h3,
.cc-price-card--premium .cc-price-card__price {
  color: #fff;
}

.cc-price-card--premium .cc-price-card__note,
.cc-price-card--premium .cc-price-list li::before {
  color: var(--gold-light);
}

.cc-price-card--premium .cc-price-card__desc,
.cc-price-card--premium .cc-price-list li,
.cc-price-card--premium .cc-price-card__final {
  color: rgba(255,255,255,.78);
}

.cc-price-card--premium .cc-price-card__media {
  height: 218px;
}

.cc-price-card__badge {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 3;
  padding: .48rem .78rem;
  border-radius: 999px;
  background: rgba(212,184,112,.95);
  color: #141d34;
  font-family: var(--font-caps);
  font-size: .58rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  box-shadow: 0 12px 24px rgba(0,0,0,.22);
}

.cc-price-card__final {
  margin: .35rem 0 1.25rem;
  font-style: italic;
  line-height: 1.58;
}

.cc-price-card__btn {
  width: 100%;
  margin-top: auto;
  border-radius: 999px;
}

.cc-reassurance {
  margin-top: clamp(28px, 4vw, 46px);
  padding: clamp(1.5rem, 3vw, 2.4rem);
  border-radius: 24px;
  border: 1px solid rgba(201,168,76,.28);
  background:
    linear-gradient(135deg, rgba(255,253,248,.9), rgba(248,239,220,.82));
  box-shadow: 0 22px 60px rgba(44,31,20,.09);
}

.cc-reassurance h3 {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.8rem, 3.5vw, 2.7rem);
  line-height: 1.05;
  color: var(--text);
  margin: 0 0 1.45rem;
}

.cc-reassurance__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
}

.cc-reassurance__grid span {
  position: relative;
  min-height: 58px;
  padding: .85rem .9rem .85rem 2.15rem;
  border-radius: 14px;
  background: rgba(255,255,255,.62);
  border: 1px solid rgba(201,168,76,.18);
  color: rgba(46,40,32,.8);
  line-height: 1.35;
}

.cc-reassurance__grid span::before {
  content: "✓";
  position: absolute;
  left: .9rem;
  top: .88rem;
  color: var(--gold-dark);
  font-family: var(--font-caps);
  font-weight: 600;
}

.cc-reassurance__note {
  margin: 1.35rem 0 0;
  padding-top: 1rem;
  border-top: 1px solid rgba(201,168,76,.18);
  color: rgba(46,40,32,.56);
  font-size: .98rem;
  font-style: italic;
  line-height: 1.55;
}

@media (max-width: 1100px) {
  .cc-pricing__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-price-card--premium {
    transform: none;
  }

  .cc-price-card--premium:hover {
    transform: translateY(-6px);
  }

  .cc-reassurance__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .cc-pricing {
    padding: 58px 0;
  }

  .cc-pricing__grid,
  .cc-reassurance__grid {
    grid-template-columns: 1fr;
  }

  .cc-price-card {
    border-radius: 18px;
  }

  .cc-price-card__media,
  .cc-price-card--premium .cc-price-card__media {
    height: 178px;
  }

  .cc-price-card__body {
    padding: 1.2rem;
  }

  .cc-price-options span {
    align-items: flex-start;
    border-radius: 12px;
  }

  .cc-price-card__badge {
    top: 12px;
    right: 12px;
  }

  .cc-reassurance {
    border-radius: 18px;
    padding: 1.25rem;
  }
}

/* Finitions UX, mentions et lisibilite - premiere phase Manu */
#contact,
#tarifs,
#tarifs-formules {
  scroll-margin-top: 118px;
}

.audio .section-label,
.audio .section-label--gold {
  color: var(--gold-dark) !important;
}

.testimonials__title {
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: .7rem !important;
  color: rgba(111, 82, 35, .88) !important;
  font-size: clamp(1.35rem, 2.25vw, 1.9rem) !important;
  line-height: 1.42 !important;
  font-style: italic;
  font-weight: 400 !important;
}

.testimonials__notice {
  max-width: 720px;
  margin: 0 auto 2.4rem;
  color: rgba(63, 50, 34, .72);
  font-family: var(--font-body);
  font-size: clamp(.95rem, 1.08vw, 1.05rem);
  font-style: italic;
  font-weight: 300;
  line-height: 1.55;
}

.chat-panel {
  max-height: min(520px, calc(100vh - 112px));
}

.chat-messages {
  flex: 1 1 auto;
  min-height: 110px;
  max-height: none;
}

.chat-wa-btn {
  margin-bottom: .85rem;
}

.pb-gallery-trigger,
.cover-example-card__button {
  position: relative;
  overflow: hidden;
}

.pb-gallery-trigger::after,
.cover-example-card__button::after,
.cc-visual::before,
.cc-price-card__media::before {
  content: "Image non contractuelle";
  position: absolute;
  right: .75rem;
  bottom: .65rem;
  z-index: 4;
  padding: .26rem .52rem;
  border-radius: 999px;
  background: rgba(15, 18, 24, .42);
  color: rgba(255, 250, 238, .94);
  font-family: var(--font-body);
  font-size: .72rem;
  line-height: 1;
  font-style: italic;
  letter-spacing: .01em;
  text-shadow: 0 1px 8px rgba(0,0,0,.45);
  pointer-events: none;
  box-shadow: 0 8px 18px rgba(0,0,0,.16);
}

.pb-cover-mosaic .pb-gallery-trigger::after {
  right: .32rem;
  bottom: .32rem;
  padding: .18rem .34rem;
  font-size: .52rem;
  background: rgba(15,18,24,.46);
}

.cc-visual::before,
.cc-price-card__media::before {
  z-index: 3;
}

.cc-visual::after,
.cc-price-card__media::after {
  z-index: 1;
  pointer-events: none;
}

.cc-visual > img,
.cc-symbol,
.cc-visual__backdrop,
.cc-price-card__media img {
  position: relative;
}

.cc-symbol {
  width: clamp(148px, 18vw, 224px) !important;
  max-width: 46% !important;
  height: auto !important;
  aspect-ratio: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain !important;
  filter: drop-shadow(0 18px 30px rgba(17,12,8,.24)) saturate(1.04) contrast(1.03);
}

.cc-visual--symbol .cc-symbol {
  width: clamp(112px, 13vw, 156px) !important;
  max-width: 34% !important;
  filter: drop-shadow(0 14px 22px rgba(17,12,8,.2)) saturate(1.04) contrast(1.04);
}

.cc-symbol--letter {
  width: clamp(118px, 14vw, 164px) !important;
  max-width: 38% !important;
}

.unique-audio-photo::after,
.pb-audio-visual::after {
  z-index: 1;
}

.unique-audio-photo .pb-gallery-trigger,
.pb-audio-visual .pb-gallery-trigger {
  z-index: 2;
}

.unique-audio-photo::after,
.pb-audio-visual::after {
  display: none !important;
}

.cc-price-card .cc-price-options {
  margin-top: .35rem;
}

.cc-price-options > span,
.cc-price-options > a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: .42rem .68rem;
  border-radius: 999px;
  background: rgba(255,250,238,.78);
  border: 1px solid rgba(201,168,76,.18);
  color: rgba(46,40,32,.78);
  font-size: .92rem;
  line-height: 1.24;
  text-decoration: none;
  transition: transform .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease), color .2s var(--ease);
}

.cc-price-options a:hover,
.cc-price-options a:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(201,168,76,.42);
  background: rgba(255,247,225,.96);
  color: #17213a;
}

.cc-price-options--formulas span,
.cc-price-options--formulas a {
  border-radius: 12px;
}

.cc-price-card__btn {
  margin-top: auto;
}

/* Finition tarifs Manu : titres, prix et options plus lisibles */
.cc-price-card h3 {
  font-size: clamp(1.46rem, 2vw, 1.9rem) !important;
  font-weight: 600 !important;
  color: var(--navy) !important;
  margin-bottom: .82rem !important;
}

.cc-price-card__price {
  font-size: clamp(2.05rem, 3.15vw, 2.86rem) !important;
  font-weight: 600 !important;
  color: #9a701c !important;
  letter-spacing: .01em;
  margin-bottom: .52rem !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.7);
}

.cc-price-card__price--subscription {
  white-space: nowrap;
  font-size: clamp(1.78rem, 2.6vw, 2.42rem) !important;
  letter-spacing: 0;
}

.cc-price-card__note {
  font-size: .68rem !important;
  color: rgba(122,92,32,.92) !important;
}

.cc-price-options {
  gap: .62rem !important;
  margin-top: 1rem !important;
  padding-top: 1.08rem !important;
  border-top-color: rgba(201,168,76,.28) !important;
}

.cc-price-options span,
.cc-price-options a {
  justify-content: space-between;
  gap: .8rem;
  min-height: 42px !important;
  padding: .66rem .82rem !important;
  border-radius: 14px !important;
  background: linear-gradient(145deg, rgba(255,251,241,.96), rgba(246,235,212,.9)) !important;
  border-color: rgba(201,168,76,.28) !important;
  color: rgba(38,30,20,.9) !important;
  font-size: 1.02rem !important;
  line-height: 1.25 !important;
  font-weight: 500;
  box-shadow: 0 8px 20px rgba(44,31,20,.06), inset 0 1px 0 rgba(255,255,255,.85);
}

.cc-price-option__label {
  display: inline !important;
  align-items: initial !important;
  min-width: 0;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit !important;
  font: inherit;
}

.cc-price-options strong {
  flex: 0 0 auto;
  margin-left: auto;
  white-space: nowrap;
  font-family: var(--font-display);
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1;
  color: #9a701c;
}

.cc-price-options--formulas a {
  align-items: center;
}

.cc-price-card--premium h3,
.cc-price-card--premium .cc-price-card__price {
  color: #fff !important;
  text-shadow: none;
}

@media (max-width: 720px) {
  .cc-price-card h3 {
    font-size: 1.42rem !important;
  }

  .cc-price-card__price {
    font-size: 2.05rem !important;
  }

  .cc-price-card__price--subscription {
    font-size: clamp(1.55rem, 7.2vw, 1.86rem) !important;
  }

  .cc-visual--symbol .cc-symbol {
    width: clamp(96px, 28vw, 124px) !important;
    max-width: 34% !important;
  }

  .cc-symbol--letter {
    width: clamp(104px, 31vw, 134px) !important;
    max-width: 38% !important;
  }

  .cc-price-options > span,
  .cc-price-options > a {
    align-items: flex-start;
    flex-direction: column;
    gap: .35rem;
  }

  .cc-price-options strong {
    margin-left: 0;
    font-size: 1.18rem;
  }
}

@media (max-width: 720px) {
  #contact,
  #tarifs,
  #tarifs-formules {
    scroll-margin-top: 94px;
  }

  .testimonials__title {
    font-size: clamp(1.22rem, 7vw, 1.55rem) !important;
    line-height: 1.38 !important;
  }

  .pb-gallery-trigger::after,
  .cover-example-card__button::after,
  .cc-visual::before,
  .cc-price-card__media::before {
    right: .55rem;
    bottom: .5rem;
    font-size: .64rem;
    padding: .22rem .44rem;
  }
}

@media (max-width: 480px) {
  .chat-widget {
    right: .85rem;
    bottom: .9rem;
  }

  .chat-panel {
    width: calc(100vw - 1.7rem);
    max-height: calc(100vh - 7rem);
  }

  .chat-header {
    padding: .82rem .95rem;
  }

  .chat-messages {
    min-height: 76px;
    padding: .75rem;
  }

  .chat-quick-btns {
    max-height: 78px;
    overflow-y: auto;
    padding: .5rem .8rem;
  }

  .chat-input-row {
    padding: .65rem .8rem;
  }

  .chat-wa-btn {
    margin: 0 .8rem .75rem;
    padding: .55rem .8rem;
  }
}

/* ============================================================
   Finitions Manu — UX premium, commandes, galerie et mobile
   ============================================================ */
#contact,
.contact-anchor {
  display: block;
  scroll-margin-top: 126px;
}

.contact-anchor {
  width: 1px;
  height: 1px;
  margin-top: 1.2rem;
}

.feature-card.feature-card--link {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 100%;
  color: inherit;
  text-decoration: none;
}

.feature-card.feature-card--link .feature-card__text {
  flex: 1;
}

.feature-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.25rem;
  padding: .68rem 1.2rem;
  border-radius: 999px;
  background: linear-gradient(180deg, #d6b552 0%, #b99131 100%);
  color: #fff;
  border: 1px solid rgba(164,125,39,.7);
  box-shadow: 0 5px 0 rgba(70,48,16,.22), 0 14px 26px rgba(122,88,30,.14);
  font-family: var(--font-caps);
  font-size: .58rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  transition: transform .2s var(--ease), box-shadow .2s var(--ease);
}

.feature-card:hover .feature-card__cta {
  transform: translateY(2px);
  box-shadow: 0 3px 0 rgba(70,48,16,.24), 0 10px 20px rgba(122,88,30,.16);
}

.pb-copy + .btn,
.unique-copy + .btn,
.cc-copy + .btn,
.sur-mesure__list + .btn,
.fondateurs__origin + .btn,
.corr-vivante__features + .btn,
.corr-vivante__features + .corr-vivante__actions,
.cc-final__inner .btn,
.pb-final__panel .btn {
  margin-top: clamp(1.2rem, 2vw, 1.7rem) !important;
}

.cc-action {
  margin-top: clamp(1.15rem, 2vw, 1.65rem) !important;
}

.cc-price-list + .cc-price-card__btn,
.cc-price-options + .cc-price-card__btn,
.cc-price-card__final + .cc-price-card__btn {
  margin-top: 1.35rem !important;
}

.footer__logo-img {
  width: 62px !important;
  height: 62px !important;
  opacity: .72 !important;
  margin-bottom: .62rem !important;
}

#livre-musique .section-label,
#livre-musique .section-label--gold,
section.audio#livre-musique .section-label {
  color: var(--gold-light) !important;
  text-shadow: 0 1px 12px rgba(0,0,0,.18);
}

.chat-panel {
  max-height: min(468px, calc(100vh - 104px)) !important;
  border-radius: 18px !important;
}

.chat-header {
  padding: .72rem .92rem !important;
  gap: .56rem !important;
  background: linear-gradient(135deg, #171514, #282018 72%, #362818) !important;
}

.chat-header__avatar {
  width: 34px !important;
  height: 34px !important;
}

.chat-header__name {
  font-size: .56rem !important;
  letter-spacing: .16em !important;
  line-height: 1.35 !important;
}

.chat-header__status {
  font-size: .62rem !important;
  line-height: 1.25 !important;
  color: rgba(255,248,228,.66) !important;
}

.chat-messages {
  min-height: 84px !important;
  max-height: min(170px, 26vh) !important;
  overflow-y: auto !important;
}

.chat-quick-btns {
  max-height: 76px;
  overflow-y: auto;
}

.chat-wa-btn {
  flex: 0 0 auto;
}

.pb-gallery-trigger::after,
.cc-visual::before,
.cc-price-card__media::before {
  content: none !important;
  display: none !important;
}

.cover-example-card__button::after,
.pb-gallery-trigger[data-gallery-src*="couvertures-personnalisees"]::after,
.pb-gallery-trigger[data-gallery-src*="pourquoi-nos-creations-sont-uniques"]::after {
  content: "Image non contractuelle" !important;
  display: block !important;
  position: absolute;
  right: .75rem;
  bottom: .65rem;
  z-index: 4;
  padding: .26rem .52rem;
  border-radius: 999px;
  background: rgba(15,18,24,.42);
  color: rgba(255,250,238,.94);
  font-family: var(--font-body);
  font-size: .72rem;
  line-height: 1;
  font-style: italic;
  letter-spacing: .01em;
  text-shadow: 0 1px 8px rgba(0,0,0,.45);
  pointer-events: none;
  box-shadow: 0 8px 18px rgba(0,0,0,.16);
}

.pb-cover-mosaic .pb-gallery-trigger[data-gallery-src*="couvertures-personnalisees"]::after {
  right: .32rem;
  bottom: .32rem;
  padding: .18rem .34rem;
  font-size: .52rem;
}

.premium-gallery-modal__notice {
  justify-self: end;
  margin: .75rem .35rem 0 0;
  padding: .32rem .68rem;
  border-radius: 999px;
  background: rgba(12,14,20,.52);
  color: rgba(255,250,238,.96);
  font-family: var(--font-body);
  font-size: .88rem;
  font-style: italic;
  text-shadow: 0 1px 10px rgba(0,0,0,.48);
  box-shadow: 0 12px 30px rgba(0,0,0,.22);
}

.cc-reassurance {
  background:
    radial-gradient(circle at 16% 0%, rgba(201,168,76,.18), transparent 34%),
    linear-gradient(135deg, rgba(255,250,241,.96), rgba(239,223,188,.9) 54%, rgba(248,241,226,.94)) !important;
  border-color: rgba(177,133,44,.34) !important;
  box-shadow: 0 24px 70px rgba(44,31,20,.13), inset 0 1px 0 rgba(255,255,255,.72) !important;
}

.cc-reassurance__grid span {
  background: rgba(255,253,248,.76) !important;
  border-color: rgba(177,133,44,.24) !important;
  color: rgba(46,40,32,.84) !important;
}

.cc-reassurance__note {
  color: rgba(46,40,32,.78) !important;
}

.order-page {
  background:
    radial-gradient(circle at 14% 4%, rgba(201,168,76,.16), transparent 30%),
    linear-gradient(180deg, #faf8f4 0%, #f3e7d2 48%, #faf8f4 100%);
  color: var(--text);
  min-height: 100vh;
  padding-top: 92px;
}

.order-inner {
  width: min(var(--container), calc(100% - 40px));
  margin: 0 auto;
}

.order-hero {
  padding: clamp(52px, 7vw, 88px) 0 clamp(26px, 4vw, 44px);
  text-align: center;
}

.order-kicker {
  font-family: var(--font-caps);
  color: var(--gold);
  text-transform: uppercase;
  letter-spacing: .22em;
  font-size: .78rem;
  margin-bottom: 1rem;
}

.order-hero h1,
.order-panel h2,
.order-summary h2,
.order-options-panel h2,
.order-reassurance h2 {
  font-family: var(--font-display);
  font-weight: 400;
  color: var(--text);
}

.order-hero h1 {
  font-size: clamp(2.4rem, 5vw, 4.4rem);
  line-height: 1;
}

.order-hero p {
  max-width: 780px;
  margin: 1.2rem auto 0;
  color: rgba(46,40,32,.78);
}

.order-section {
  padding: clamp(28px, 5vw, 58px) 0;
}

.order-section--soft {
  background: linear-gradient(135deg, rgba(255,250,241,.72), rgba(237,222,187,.54));
}

.order-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
  gap: clamp(22px, 3vw, 36px);
  align-items: start;
}

.order-panel,
.order-summary,
.order-options-panel,
.order-reassurance {
  border: 1px solid rgba(201,168,76,.28);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255,253,248,.94), rgba(247,238,219,.88));
  box-shadow: 0 20px 64px rgba(44,31,20,.10), inset 0 1px 0 rgba(255,255,255,.76);
  padding: clamp(1.35rem, 3vw, 2.2rem);
}

.order-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}

.order-choice,
.order-option {
  display: flex;
  gap: .75rem;
  align-items: flex-start;
  padding: .95rem;
  border-radius: 16px;
  border: 1px solid rgba(201,168,76,.2);
  background: rgba(255,250,241,.72);
  cursor: pointer;
  transition: transform .22s var(--ease), border-color .22s var(--ease), box-shadow .22s var(--ease);
}

.order-choice:hover,
.order-option:hover {
  transform: translateY(-2px);
  border-color: rgba(201,168,76,.42);
  box-shadow: 0 12px 28px rgba(44,31,20,.08);
}

.order-choice input,
.order-option input {
  accent-color: #b99131;
  margin-top: .25rem;
}

.order-choice strong,
.order-option strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.12rem;
  color: #17213a;
  line-height: 1.14;
}

.order-choice small,
.order-option small {
  display: block;
  margin-top: .28rem;
  color: var(--gold-dark);
  font-family: var(--font-caps);
  letter-spacing: .09em;
  font-size: .66rem;
  text-transform: uppercase;
}

.order-summary {
  position: sticky;
  top: 110px;
}

.order-summary__price {
  font-family: var(--font-display);
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  color: #9a701c;
  margin: .55rem 0 1rem;
}

.order-summary__list {
  display: grid;
  gap: .48rem;
  margin: 0 0 1rem;
}

.order-summary__list li {
  position: relative;
  padding-left: 1rem;
  color: rgba(46,40,32,.78);
}

.order-summary__list li::before {
  content: "✦";
  position: absolute;
  left: 0;
  color: var(--gold);
  font-size: .7rem;
}

.order-summary__note {
  color: rgba(46,40,32,.72);
  font-style: italic;
}

.order-summary__btn {
  width: 100%;
  margin-top: 1.25rem !important;
}

.order-options-panel {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(20px, 3vw, 34px);
}

.order-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}

.order-reassurance {
  text-align: center;
  max-width: 880px;
}

@media (max-width: 900px) {
  #contact,
  .contact-anchor {
    scroll-margin-top: 96px;
  }

  .order-layout,
  .order-options-panel {
    grid-template-columns: 1fr;
  }

  .order-summary {
    position: static;
  }

  .order-choice-grid,
  .order-options {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .footer__logo-img {
    width: 56px !important;
    height: 56px !important;
  }

  .chat-panel {
    max-height: calc(100vh - 6.4rem) !important;
  }

  .chat-header__name {
    font-size: .52rem !important;
  }

  .chat-header__status {
    font-size: .58rem !important;
  }
}

/* ============================================================
   Finitions premium finales - formulaires et temoignages
   ============================================================ */
.contact .form-group input,
.contact .form-group select,
.contact .form-group textarea {
  background:
    linear-gradient(180deg, rgba(255, 251, 243, .96), rgba(246, 237, 219, .94)) !important;
  border-color: rgba(201, 168, 76, .32) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .7),
    0 10px 26px rgba(44, 31, 20, .045) !important;
}

.contact .form-group input:focus,
.contact .form-group select:focus,
.contact .form-group textarea:focus {
  background: rgba(255, 252, 246, .98) !important;
  border-color: rgba(177, 133, 44, .56) !important;
  box-shadow:
    0 0 0 3px rgba(201, 168, 76, .13),
    0 14px 32px rgba(44, 31, 20, .07) !important;
}

.home-newsletter__form {
  background:
    linear-gradient(135deg, rgba(246, 236, 214, .9), rgba(255, 250, 239, .9)) !important;
  border-color: rgba(201, 168, 76, .34) !important;
}

.home-newsletter__input {
  background: rgba(250, 241, 222, .78) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .68) !important;
}

.home-newsletter__input:focus {
  background: rgba(255, 252, 246, .96) !important;
}

.testimonial-card {
  display: flex !important;
  flex-direction: column !important;
}

.testimonial-card__open {
  align-self: flex-start;
  margin-top: 1.15rem;
  padding: .58rem .95rem;
  border: 1px solid rgba(201, 168, 76, .38);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(255, 252, 245, .92), rgba(242, 229, 202, .88));
  color: #8b681d;
  font-family: var(--font-caps);
  font-size: .62rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow:
    0 10px 24px rgba(44, 31, 20, .08),
    inset 0 1px 0 rgba(255, 255, 255, .72);
  transition: transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease);
}

.testimonial-card__open:hover,
.testimonial-card__open:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(177, 133, 44, .58);
  box-shadow:
    0 16px 34px rgba(44, 31, 20, .12),
    inset 0 1px 0 rgba(255, 255, 255, .78);
  outline: none;
}

.testimonial-modal {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 4vw, 2.5rem);
  opacity: 0;
  pointer-events: none;
  transition: opacity .28s var(--ease);
}

.testimonial-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}

.testimonial-modal[hidden] {
  display: none;
}

.testimonial-modal__backdrop {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 30%, rgba(201, 168, 76, .16), transparent 35%),
    rgba(12, 14, 18, .68);
  backdrop-filter: blur(5px);
}

.testimonial-modal__panel {
  position: relative;
  width: min(720px, 100%);
  padding: clamp(1.7rem, 4vw, 3rem);
  border: 1px solid rgba(201, 168, 76, .34);
  border-radius: 26px;
  background:
    radial-gradient(circle at 16% 0%, rgba(201, 168, 76, .16), transparent 34%),
    linear-gradient(145deg, rgba(255, 252, 245, .98), rgba(246, 237, 218, .96));
  box-shadow:
    0 32px 90px rgba(0, 0, 0, .28),
    inset 0 1px 0 rgba(255, 255, 255, .72);
  transform: translateY(12px) scale(.985);
  transition: transform .28s var(--ease);
}

.testimonial-modal.is-open .testimonial-modal__panel {
  transform: translateY(0) scale(1);
}

.testimonial-modal__quote {
  margin: 0 0 1.1rem;
  color: rgba(201, 168, 76, .45);
  font-family: var(--font-display);
  font-size: clamp(3.4rem, 8vw, 5rem);
  line-height: .7;
}

.testimonial-modal__text {
  margin: 0;
  color: rgba(46, 40, 32, .9);
  font-family: var(--font-body);
  font-size: clamp(1.12rem, 2vw, 1.45rem);
  font-style: italic;
  line-height: 1.65;
}

.testimonial-modal__author {
  margin: 1.4rem 0 0;
  color: #9a701c;
  font-family: var(--font-caps);
  font-size: .76rem;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.testimonial-modal__close {
  position: absolute;
  top: .85rem;
  right: .85rem;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(201, 168, 76, .34);
  border-radius: 50%;
  background: rgba(255, 252, 245, .88);
  color: rgba(46, 40, 32, .8);
  cursor: pointer;
  font-size: 1.35rem;
  line-height: 1;
  box-shadow: 0 10px 24px rgba(44, 31, 20, .1);
  transition: transform .22s var(--ease), background .22s var(--ease);
}

.testimonial-modal__close:hover,
.testimonial-modal__close:focus-visible {
  transform: translateY(-1px);
  background: rgba(255, 252, 245, 1);
  outline: none;
}

body.testimonial-modal-open {
  overflow: hidden;
}

@media (max-width: 640px) {
  .testimonial-card__open {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .testimonial-modal__panel {
    border-radius: 20px;
  }
}

/* ============================================================
   Finition page creations personnalisees - accordions visibles
   ============================================================ */
.cc-accordion {
  border-color: rgba(177,133,44,.36) !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(201,168,76,.12), transparent 32%),
    linear-gradient(145deg, rgba(255,252,245,.94), rgba(244,231,204,.84)) !important;
  box-shadow:
    0 15px 38px rgba(44,31,20,.1),
    inset 0 1px 0 rgba(255,255,255,.74) !important;
}

.cc-accordion summary {
  position: relative !important;
  gap: .8rem !important;
  padding: 1.08rem 1.05rem !important;
  background:
    linear-gradient(90deg, rgba(255,252,245,.96), rgba(245,232,205,.88)) !important;
  border-left: 4px solid rgba(201,168,76,.68);
  min-height: 68px;
  transition: background .24s var(--ease), color .24s var(--ease) !important;
}

.cc-accordion summary > span:first-child {
  flex: 1 1 auto;
}

.cc-accordion__hint {
  flex: 0 0 auto;
  padding: .44rem .72rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.34);
  background: linear-gradient(180deg, #d3ad4c, #a77a22);
  color: #fffaf0;
  font-family: var(--font-caps);
  font-size: .58rem;
  letter-spacing: .13em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow:
    0 8px 18px rgba(114,77,20,.16),
    inset 0 1px 0 rgba(255,255,255,.32);
}

.cc-accordion summary::after {
  flex-basis: 36px !important;
  width: 36px !important;
  height: 36px !important;
  color: #fffaf0 !important;
  font-size: 1.15rem !important;
  border: 1px solid rgba(255,255,255,.36) !important;
  background: linear-gradient(180deg, #d5b24f, #a87922) !important;
  box-shadow:
    0 9px 18px rgba(114,77,20,.22),
    inset 0 1px 0 rgba(255,255,255,.36) !important;
}

.cc-accordion summary:hover,
.cc-accordion summary:focus-visible {
  background:
    linear-gradient(90deg, rgba(255,253,248,1), rgba(239,221,181,.94)) !important;
  outline: none;
}

.cc-accordion summary:hover::after,
.cc-accordion summary:focus-visible::after {
  transform: translateY(-1px) scale(1.04) !important;
  box-shadow:
    0 12px 22px rgba(114,77,20,.27),
    inset 0 1px 0 rgba(255,255,255,.4) !important;
}

.cc-accordion[open] summary::after {
  content: "-" !important;
  transform: rotate(180deg) !important;
  background: linear-gradient(180deg, #b8922e, #80601b) !important;
}

.cc-accordion[open] .cc-accordion__hint {
  background: rgba(255,250,238,.72);
  color: rgba(46,40,32,.68);
  border-color: rgba(201,168,76,.26);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5);
}

.cc-accordion:not([open]) summary::after {
  animation: ccAccordionPulse 2.6s ease-in-out infinite;
}

@keyframes ccAccordionPulse {
  0%, 100% {
    box-shadow:
      0 9px 18px rgba(114,77,20,.22),
      inset 0 1px 0 rgba(255,255,255,.36);
  }

  50% {
    box-shadow:
      0 12px 26px rgba(114,77,20,.34),
      0 0 0 5px rgba(201,168,76,.14),
      inset 0 1px 0 rgba(255,255,255,.42);
  }
}

@media (max-width: 560px) {
  .cc-accordion summary {
    align-items: flex-start !important;
    flex-wrap: wrap;
  }

  .cc-accordion__hint {
    order: 3;
    margin-top: .15rem;
  }

  .cc-accordion summary::after {
    margin-left: auto;
  }
}

/* ============================================================
   Finition mobile, confiance et parcours d'achat
   ============================================================ */
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

main,
section,
article,
figure,
.container,
.cc-inner,
.order-inner,
.collection-universe,
.coll-main,
.page-main {
  min-width: 0;
}

.hero__title,
.hero__body,
.hero__tagline,
.services__title,
.concept__heading,
.coll-title,
.collection-universe__head h2,
.cc-title,
.cc-heading,
.order-hero h1,
.order-panel h2,
.order-summary h2,
.page-title,
.audio-hero-title {
  max-width: 100%;
  overflow-wrap: break-word;
}

.nav__links {
  gap: clamp(.85rem, 1.15vw, 1.35rem);
}

.nav__link {
  white-space: nowrap;
}

.entry-paths {
  padding: clamp(3rem, 6vw, 5rem) 6vw;
  background:
    radial-gradient(circle at 18% 0%, rgba(201,168,76,.13), transparent 34%),
    linear-gradient(180deg, #fffaf1 0%, #f5ecdc 100%);
}

.entry-paths__inner {
  width: min(1120px, 100%);
  margin: 0 auto;
  text-align: center;
}

.entry-paths__title {
  max-width: 820px;
  margin: .7rem auto 2rem;
  color: var(--navy);
  font-family: var(--font-display);
  font-size: clamp(1.55rem, 2.8vw, 2.25rem);
  font-weight: 500;
  line-height: 1.08;
}

.entry-paths__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.35rem);
}

.entry-path {
  position: relative;
  display: flex;
  min-height: 270px;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(1.25rem, 2.4vw, 1.8rem);
  overflow: hidden;
  text-align: left;
  border: 1px solid rgba(201,168,76,.28);
  border-radius: 22px;
  background:
    linear-gradient(145deg, rgba(255,252,245,.94), rgba(244,232,207,.88));
  box-shadow:
    0 18px 48px rgba(44,31,20,.09),
    inset 0 1px 0 rgba(255,255,255,.72);
  transition: transform .24s var(--ease), box-shadow .24s var(--ease), border-color .24s var(--ease);
}

.entry-path::before {
  content: "";
  position: absolute;
  inset: 12px;
  pointer-events: none;
  border: 1px solid rgba(201,168,76,.14);
  border-radius: 16px;
}

.entry-path:hover,
.entry-path:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(177,133,44,.46);
  box-shadow:
    0 26px 62px rgba(44,31,20,.13),
    inset 0 1px 0 rgba(255,255,255,.78);
  outline: none;
}

.entry-path__eyebrow {
  color: var(--gold-dark);
  font-family: var(--font-caps);
  font-size: clamp(.78rem, 1vw, .9rem);
  letter-spacing: .18em;
  text-transform: uppercase;
}

.entry-path strong {
  color: var(--navy);
  font-family: var(--font-display);
  font-size: clamp(1.28rem, 2vw, 1.65rem);
  font-weight: 500;
  line-height: 1.08;
}

.entry-path small {
  width: fit-content;
  padding: .58rem .9rem;
  border: 1px solid rgba(201,168,76,.32);
  border-radius: 999px;
  background: rgba(255,250,238,.72);
  color: #8b681d;
  font-family: var(--font-caps);
  font-size: clamp(.9rem, 1.15vw, 1.05rem);
  letter-spacing: .13em;
  text-transform: uppercase;
  font-weight: 600;
}

.entry-path__text {
  color: rgba(46,40,32,.78);
  font-size: 1.02rem;
  line-height: 1.48;
}

.entry-path--premium {
  background:
    radial-gradient(circle at 12% 0%, rgba(201,168,76,.18), transparent 36%),
    linear-gradient(145deg, rgba(255,252,245,.97), rgba(240,226,192,.9));
  border-color: rgba(26,39,68,.24);
  color: var(--navy);
  box-shadow:
    0 18px 48px rgba(44,31,20,.1),
    inset 0 1px 0 rgba(255,255,255,.76);
}

.entry-path--premium strong,
.entry-path--premium .entry-path__text {
  color: var(--navy);
}

.entry-path--premium small {
  background: rgba(26,39,68,.06);
  color: #8b681d;
  border-color: rgba(201,168,76,.38);
}

.newsletter-status {
  width: 100%;
  margin: .65rem auto 0;
  color: rgba(46,40,32,.78);
  font-size: .9rem;
  line-height: 1.35;
  text-align: center;
}

.form-success {
  color: rgba(46,40,32,.82);
  line-height: 1.45;
}

#contact,
.contact-anchor,
#selection,
#tarifs-formules {
  scroll-margin-top: 118px;
}

@media (max-width: 1180px) {
  .nav {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .nav__links {
    gap: .65rem;
  }

  .nav__link {
    font-size: .66rem;
  }
}

@media (max-width: 768px) {
  .nav__toggle {
    display: inline-flex !important;
    align-items: center;
    gap: .55rem;
    width: auto !important;
    min-width: 86px;
    height: 44px !important;
    padding: 0 .72rem;
    border: 1px solid rgba(201,168,76,.42);
    border-radius: 999px;
    background: rgba(255,250,238,.92);
    box-shadow: 0 12px 28px rgba(26,39,68,.12);
  }

  .nav__toggle::after {
    content: "Menu";
    color: var(--navy);
    font-family: var(--font-caps);
    font-size: .62rem;
    letter-spacing: .14em;
    text-transform: uppercase;
  }

  .nav__toggle.open::after {
    content: "Fermer";
  }

  .nav__links {
    left: 1rem !important;
    right: 1rem !important;
    width: auto !important;
    max-height: calc(100vh - 92px);
    overflow-y: auto;
    padding: 1.25rem !important;
    border: 1px solid rgba(201,168,76,.24);
    border-radius: 22px;
    background:
      radial-gradient(circle at 18% 0%, rgba(201,168,76,.16), transparent 36%),
      rgba(255,250,240,.98) !important;
    box-shadow: 0 26px 80px rgba(26,39,68,.22);
  }

  .nav__links .nav__link,
  .nav__links .nav__cta {
    width: 100%;
    justify-content: center;
    text-align: center;
    white-space: normal;
  }

  .hero {
    min-height: auto;
    padding: 7rem 1.15rem 4.8rem;
  }

  .hero__title {
    font-size: clamp(3rem, 18vw, 4.65rem) !important;
    line-height: .92;
  }

  .hero__body {
    font-size: clamp(1rem, 4.8vw, 1.16rem);
    line-height: 1.45;
  }

  .hero__buttons {
    width: min(100%, 360px);
    margin-left: auto;
    margin-right: auto;
  }

  .hero__buttons .btn {
    width: 100%;
    min-height: 44px;
    padding: .82rem 1rem !important;
    white-space: normal;
  }

  .entry-paths {
    padding: 2.8rem 1rem;
  }

  .entry-paths__grid {
    grid-template-columns: 1fr;
  }

  .entry-path {
    min-height: 0;
  }

  .services,
  .concept,
  .contact,
  .home-newsletter,
  .cc-section,
  .cc-pricing,
  .order-section {
    max-width: 100%;
    overflow-x: clip;
  }

  .cc-title {
    font-size: clamp(2.1rem, 13vw, 3.25rem) !important;
  }

  .cc-heading,
  .order-hero h1,
  .coll-title,
  .collection-universe__head h2 {
    font-size: clamp(1.8rem, 10vw, 2.65rem) !important;
    line-height: 1.05;
  }

  .cc-copy,
  .cc-hero__text,
  .order-hero p,
  .coll-intro,
  .collection-universe__head p {
    font-size: clamp(.98rem, 4.4vw, 1.1rem) !important;
    line-height: 1.48;
  }

  .order-choice,
  .order-option {
    align-items: flex-start;
  }

  .order-choice span,
  .order-option span {
    min-width: 0;
  }
}

@media (max-width: 520px) {
  .nav__logo-text {
    font-size: .72rem !important;
    letter-spacing: .12em !important;
  }

  .nav__toggle {
    min-width: 78px;
    height: 40px !important;
  }

  .nav__toggle::after {
    font-size: .56rem;
  }

  .entry-path {
    border-radius: 18px;
  }

  .entry-path::before {
    inset: 9px;
    border-radius: 13px;
  }

  .home-newsletter__form {
    align-items: stretch;
  }

  .newsletter-status {
    text-align: left;
  }
}


/* SHOPIFY AUDIO PAGE FULL CSS - START */
/* ══ PAGE AUDIO ══════════════════════════════════════════════ */
  body { background: var(--cream); }

  .audio-page { background: var(--cream); padding-top: 80px; min-height: 100vh; }

  /* ── HERO ─────────────────────────────────────────────────── */
  .audio-hero {
    position: relative;
    padding: 72px 2rem 60px;
    text-align: center;
    overflow: hidden;
  }

  .audio-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 50% 0%, rgba(201,168,76,0.08) 0%, transparent 55%);
  }

  .audio-hero__inner { position: relative; z-index: 1; }

  .audio-kicker {
    font-family: var(--font-caps);
    font-size: 0.65rem;
    letter-spacing: 0.32em;
    color: var(--gold-dark);
    text-transform: uppercase;
    margin-bottom: 1rem;
  }

  .audio-hero-title {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 400;
    color: var(--text);
    line-height: 1.18;
    margin-bottom: 1rem;
  }

  .audio-hero-title em { font-style: italic; color: var(--gold-dark); }

  .audio-hero-sub {
    font-family: var(--font-body);
    font-size: 1rem;
    color: var(--text-mid);
    line-height: 1.75;
    font-weight: 300;
    max-width: 640px;
    margin: 0 auto 2.5rem;
  }

  .audio-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.85rem;
    margin-top: 1.25rem;
  }

  .audio-hero-actions .btn {
    min-height: 44px;
    padding: 0.82rem 1.35rem;
  }

  .audio-ornament {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 0.5rem;
  }

  .audio-ornament span { display: block; height: 1px; width: 60px; background: rgba(140,100,20,0.4); }
  .audio-ornament em { color: var(--gold); font-size: 0.65rem; font-style: normal; }

  /* ── GRID ─────────────────────────────────────────────────── */
  .audio-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 2rem 80px;
    background: var(--cream);
  }

  /* ── CARD ─────────────────────────────────────────────────── */
  .audio-card {
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(201,168,76,0.12);
    box-shadow: 0 8px 40px rgba(0,0,0,0.5);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    position: relative;
  }

  .audio-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 60px rgba(0,0,0,0.6);
  }

  /* Grain cinéma */
  .audio-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 3;
    border-radius: 16px;
  }

  /* ── IMAGE HERO CARD ──────────────────────────────────────── */
  .audio-card__img-wrap {
    position: relative;
    height: 280px;
    overflow: hidden;
    border-radius: 16px 16px 0 0;
  }

  .audio-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
    filter: brightness(0.75) saturate(0.9);
  }

  .audio-card:hover .audio-card__img {
    transform: scale(1.06);
  }

  /* Overlay gradient */
  .audio-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
      to bottom,
      rgba(0,0,0,0.08) 0%,
      rgba(0,0,0,0.25) 40%,
      rgba(0,0,0,0.75) 100%
    );
    z-index: 1;
  }

  /* Texte sur image */
  .audio-card__img-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1.4rem 1.4rem 1.2rem;
    z-index: 2;
  }

  .audio-card__genre {
    font-family: var(--font-caps);
    font-size: 0.55rem;
    letter-spacing: 0.22em;
    color: var(--gold-light);
    text-transform: uppercase;
    opacity: 0.9;
    margin-bottom: 0.35rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .audio-card__genre::before {
    content: '';
    display: block;
    width: 20px;
    height: 1px;
    background: var(--gold);
    opacity: 0.7;
  }

  .audio-card__title {
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 500;
    color: #fff;
    line-height: 1.25;
    text-shadow: 0 2px 12px rgba(0,0,0,0.5);
  }

  /* ── BOTTOM CARD ──────────────────────────────────────────── */
  .audio-card__body {
    padding: 1.2rem 1.4rem 1.4rem;
    position: relative;
    z-index: 2;
  }

  .audio-card__desc {
    font-family: var(--font-body);
    font-size: 0.88rem;
    color: var(--text-mid);
    line-height: 1.6;
    font-weight: 300;
    margin-bottom: 1rem;
  }

  /* Player audio custom */
  .audio-player-wrap {
    background: var(--cream);
    border: 1px solid rgba(201,168,76,0.2);
    border-radius: 10px;
    padding: 0.9rem 1rem;
  }

  .audio-player-top {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-bottom: 0.65rem;
  }

  .audio-play-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--gold), var(--gold-dark));
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: transform 0.2s, box-shadow 0.2s;
    box-shadow: 0 4px 14px rgba(201,168,76,0.35);
  }

  .audio-play-btn:hover {
    transform: scale(1.08);
    box-shadow: 0 6px 20px rgba(201,168,76,0.5);
  }

  .audio-play-btn svg {
    width: 14px;
    height: 14px;
    fill: #fff;
    margin-left: 2px;
  }

  .audio-play-btn.playing svg { margin-left: 0; }

  .audio-track-info { flex: 1; min-width: 0; }

  .audio-track-name {
    font-family: var(--font-caps);
    font-size: 0.6rem;
    letter-spacing: 0.12em;
    color: var(--text-mid);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0.2rem;
  }

  .audio-time {
    font-family: var(--font-caps);
    font-size: 0.58rem;
    letter-spacing: 0.1em;
    color: rgba(201,168,76,0.6);
  }

  /* Progress bar */
  .audio-progress-wrap {
    height: 3px;
    background: rgba(201,168,76,0.15);
    border-radius: 2px;
    overflow: hidden;
    cursor: pointer;
    position: relative;
  }

  .audio-progress-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--gold-dark), var(--gold-light));
    border-radius: 2px;
    width: 0%;
    transition: width 0.1s linear;
    pointer-events: none;
  }

  /* ── RESPONSIVE ───────────────────────────────────────────── */
  @media (max-width: 1024px) {
    .audio-grid { grid-template-columns: repeat(2, 1fr); }
  }

  @media (max-width: 640px) {
    .audio-grid { grid-template-columns: 1fr; padding: 0 1.2rem 60px; }
    .audio-card__img-wrap { height: 220px; }

    .audio-hero-actions {
      align-items: center;
      flex-direction: column;
      gap: 0.75rem;
    }

    .audio-hero-actions .btn {
      width: min(100%, 320px);
    }
  }
  

  /* PATCH V8 — Exemples audio plus aérés, moins chargés */
  .audio-card { box-shadow: 0 14px 42px rgba(26,39,68,.14) !important; }
  .audio-card:hover { box-shadow: 0 22px 58px rgba(26,39,68,.18) !important; }
  .audio-card__img-wrap { height: 245px !important; }
  .audio-card__img { filter: brightness(.92) saturate(.86) !important; }
  .audio-card__overlay {
    background: linear-gradient(180deg, rgba(255,250,241,.18) 0%, rgba(255,250,241,.38) 54%, rgba(255,250,241,.66) 100%) !important;
  }
  .audio-card__img-content { padding: 1.15rem 1.35rem 1rem !important; }
  .audio-card__genre {
    font-size: .5rem !important;
    letter-spacing: .24em !important;
    line-height: 1.75 !important;
    max-width: 82% !important;
    color: rgba(30,24,18,.78) !important;
    text-shadow: 0 1px 10px rgba(255,255,255,.75) !important;
  }
  .audio-card__title {
    font-size: 1.18rem !important;
    color: rgba(24,18,14,.94) !important;
    text-shadow: 0 1px 12px rgba(255,255,255,.74) !important;
  }
  .audio-card__body { padding: 1.05rem 1.25rem 1.25rem !important; }
  .audio-card__desc { font-size: .92rem !important; line-height: 1.5 !important; margin-bottom: .85rem !important; }
  .audio-player-wrap { padding: .78rem .9rem !important; background: rgba(255,250,241,.78) !important; }
  .audio-track-name { font-size: .72rem !important; letter-spacing: .16em !important; }

  /* PATCH V9 — libellés sur images audio légèrement plus lisibles */
  .audio-card__genre {
    font-size: clamp(.62rem, .72vw, .74rem) !important;
    letter-spacing: .22em !important;
    line-height: 1.62 !important;
    max-width: 88% !important;
    color: rgba(24,18,12,.88) !important;
  }
  @media (max-width: 760px) {
    .audio-card__genre { font-size: .6rem !important; }
  }

  /* Finition Manu : lecteur plus discret et libelles image plus lisibles */
  .audio-card__genre {
    display: inline-flex !important;
    width: fit-content !important;
    max-width: 92% !important;
    padding: .28rem .52rem !important;
    border-radius: 999px !important;
    background: rgba(20,16,12,.34) !important;
    border: 1px solid rgba(236,204,128,.48) !important;
    color: #f0cd75 !important;
    text-shadow: 0 1px 10px rgba(0,0,0,.48) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.18) !important;
  }

  .audio-card__genre::before {
    background: rgba(240,205,117,.9) !important;
  }

  .audio-card__title {
    font-size: clamp(1.04rem, 1.2vw, 1.18rem) !important;
    line-height: 1.2 !important;
  }

  .audio-track-name {
    font-size: clamp(.52rem, .62vw, .62rem) !important;
    letter-spacing: .12em !important;
    color: rgba(46,40,32,.74) !important;
  }

  .audio-player-wrap {
    padding: .72rem .82rem !important;
  }

  /* Finition Manu : bulles image lisibles + titres lecteur complets */
  .audio-card__genre {
    background: rgba(17, 14, 11, .68) !important;
    border-color: rgba(238, 213, 142, .62) !important;
    color: rgba(255, 250, 238, .96) !important;
    text-shadow: 0 1px 8px rgba(0, 0, 0, .62) !important;
    box-shadow:
      0 12px 28px rgba(0, 0, 0, .24),
      inset 0 1px 0 rgba(255, 255, 255, .12) !important;
  }

  .audio-card__genre::before {
    background: rgba(238, 213, 142, .96) !important;
  }

  .audio-player-top {
    align-items: flex-start !important;
    gap: .7rem !important;
  }

  .audio-track-info {
    min-width: 0 !important;
    padding-top: .05rem !important;
  }

  .audio-track-name {
    display: block !important;
    max-width: 100% !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    font-size: clamp(.46rem, .54vw, .54rem) !important;
    line-height: 1.34 !important;
    letter-spacing: .105em !important;
  }

  .audio-time {
    margin-top: .2rem !important;
  }

  /* Finition Manu : les libelles image passent en ruban clair premium */
  .audio-card__overlay {
    background:
      linear-gradient(180deg, rgba(255,250,241,.12) 0%, rgba(255,250,241,.38) 48%, rgba(255,250,241,.82) 100%) !important;
  }

  .audio-card__genre {
    display: inline-flex !important;
    align-items: center !important;
    width: fit-content !important;
    max-width: 94% !important;
    padding: .42rem .74rem !important;
    border-radius: 999px !important;
    background:
      linear-gradient(135deg, rgba(255,252,244,.98), rgba(239,220,178,.94)) !important;
    border: 1px solid rgba(169,125,34,.58) !important;
    color: #21170d !important;
    text-shadow: none !important;
    font-weight: 700 !important;
    letter-spacing: .16em !important;
    line-height: 1.34 !important;
    box-shadow:
      0 12px 24px rgba(48,34,18,.18),
      inset 0 1px 0 rgba(255,255,255,.82) !important;
  }

  .audio-card__genre::before {
    background: #9a701c !important;
    opacity: 1 !important;
  }
/* SHOPIFY AUDIO PAGE FULL CSS - END */


/* SHOPIFY UNIQUE PAGE INLINE CSS - START */
.unique-page {
      background: var(--cream);
      overflow: hidden;
    }

    .unique-hero {
      position: relative;
      min-height: 82vh;
      display: grid;
      place-items: center;
      padding: 120px 2rem 72px;
      color: var(--white);
      isolation: isolate;
    }

    .unique-hero__image,
    .unique-hero__overlay {
      position: absolute;
      inset: 0;
    }

    .unique-hero__image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      z-index: -3;
      filter: saturate(.95) contrast(1.02);
    }

    .unique-hero__overlay {
      z-index: -2;
      background:
        linear-gradient(90deg, rgba(7,13,28,.76) 0%, rgba(13,26,58,.56) 42%, rgba(8,12,20,.76) 100%),
        radial-gradient(circle at 50% 45%, rgba(201,168,76,.22), transparent 42%);
    }

    .unique-hero__content {
      width: min(900px, 100%);
      text-align: center;
    }

    .unique-hero__mark {
      width: 82px;
      height: 82px;
      object-fit: cover;
      border-radius: 50%;
      margin: 0 auto 1.2rem;
      border: 1px solid rgba(212,184,112,.55);
      box-shadow: 0 18px 44px rgba(0,0,0,.28);
      background: rgba(255,255,255,.9);
    }

    .unique-kicker {
      font-family: var(--font-caps);
      font-size: .68rem;
      letter-spacing: .28em;
      text-transform: uppercase;
      color: var(--gold-light);
      margin-bottom: 1rem;
    }

    .unique-title {
      font-family: var(--font-display);
      font-size: 4.8rem;
      font-weight: 400;
      line-height: .98;
      letter-spacing: 0;
      margin-bottom: 1.2rem;
      text-shadow: 0 16px 42px rgba(0,0,0,.36);
    }

    .unique-hero__text {
      max-width: 660px;
      margin: 0 auto 2rem;
      font-family: var(--font-body);
      font-size: 1.25rem;
      line-height: 1.7;
      color: rgba(255,255,255,.82);
      font-weight: 300;
    }

    .unique-section {
      padding: 96px 2rem;
      position: relative;
    }

    .unique-section--warm {
      background: linear-gradient(135deg, #FDFAF4 0%, #F8F0E2 55%, #EFE0BF 100%);
    }

    .unique-inner {
      width: min(var(--container), 100%);
      margin: 0 auto;
    }

    .unique-split {
      display: grid;
      grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
      gap: 4rem;
      align-items: center;
    }

    .unique-split--reverse {
      grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    }

    .unique-label {
      font-family: var(--font-caps);
      font-size: .66rem;
      letter-spacing: .2em;
      text-transform: uppercase;
      color: var(--gold-dark);
      margin-bottom: .85rem;
    }

    .unique-heading {
      font-family: var(--font-display);
      font-size: 2.75rem;
      line-height: 1.12;
      font-weight: 400;
      color: var(--text);
      margin-bottom: 1rem;
    }

    .unique-copy {
      font-size: 1.15rem;
      line-height: 1.85;
      color: var(--text-mid);
      font-weight: 300;
    }

    .unique-scene {
      position: relative;
      min-height: 420px;
      border: 1px solid rgba(201,168,76,.18);
      background: linear-gradient(145deg, #fffaf0, #efe0c2);
      box-shadow: 0 24px 60px rgba(44,31,20,.10);
      overflow: hidden;
      border-radius: 8px;
    }

    .unique-scene img {
      width: 100%;
      height: 100%;
      min-height: 420px;
      object-fit: cover;
      opacity: .92;
    }

    .unique-note {
      position: absolute;
      left: 9%;
      bottom: 9%;
      width: 54%;
      padding: 1.2rem 1.25rem;
      background: rgba(255,250,241,.9);
      border: 1px solid rgba(201,168,76,.26);
      box-shadow: 0 18px 42px rgba(0,0,0,.14);
      font-family: var(--font-display);
      font-size: 1.15rem;
      line-height: 1.5;
      font-style: italic;
      color: #3a2c19;
    }

    .unique-cards {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1rem;
      margin-top: 2rem;
    }

    .unique-card {
      padding: 1.45rem;
      border: 1px solid rgba(201,168,76,.22);
      background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(248,239,220,.82));
      box-shadow: 0 8px 0 rgba(180,140,60,.10), 0 18px 42px rgba(31,24,17,.07);
      border-radius: 8px;
      transition: transform .25s var(--ease), box-shadow .25s var(--ease);
    }

    .unique-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 13px 0 rgba(180,140,60,.11), 0 26px 52px rgba(31,24,17,.11);
    }

    .unique-card__star {
      display: inline-grid;
      place-items: center;
      width: 32px;
      height: 32px;
      margin-bottom: .85rem;
      border-radius: 50%;
      color: var(--gold-dark);
      background: #fff6dd;
      border: 1px solid rgba(201,168,76,.28);
      font-size: .76rem;
    }

    .unique-card h3 {
      font-family: var(--font-display);
      font-size: 1.18rem;
      font-weight: 500;
      line-height: 1.25;
      color: #17110d;
    }

    .unique-audio-stage {
      position: relative;
      min-height: 460px;
      border-radius: 8px;
      border: 1px solid rgba(201,168,76,.20);
      background:
        linear-gradient(145deg, rgba(13,26,58,.96), rgba(30,45,90,.92)),
        url("../assets/img/unique/pourquoi-nos-creations-sont-uniques.png") center / cover;
      color: var(--white);
      box-shadow: 0 28px 70px rgba(13,26,58,.20);
      overflow: hidden;
    }

    .unique-audio-stage::before {
      content: "";
      position: absolute;
      inset: 0;
      background: radial-gradient(circle at 72% 18%, rgba(201,168,76,.28), transparent 34%);
      pointer-events: none;
    }

    .unique-phone {
      position: absolute;
      right: 10%;
      top: 13%;
      width: 220px;
      min-height: 330px;
      padding: 1.1rem;
      border-radius: 28px;
      background: linear-gradient(145deg, #0b1228, #17233f);
      border: 1px solid rgba(255,255,255,.16);
      box-shadow: 0 28px 60px rgba(0,0,0,.34);
    }

    .unique-phone__screen {
      min-height: 292px;
      border-radius: 20px;
      background: linear-gradient(160deg, #fbf5e8, #e9d5aa);
      padding: 1.2rem;
      color: var(--text);
      display: grid;
      align-content: center;
      justify-items: center;
      text-align: center;
      gap: .9rem;
    }

    .unique-qr {
      width: 112px;
      aspect-ratio: 1;
      background:
        linear-gradient(90deg, #1a2744 12px, transparent 12px) 0 0 / 28px 28px,
        linear-gradient(#1a2744 12px, transparent 12px) 0 0 / 28px 28px,
        #fffaf0;
      border: 8px solid #fffaf0;
      outline: 1px solid rgba(201,168,76,.35);
      box-shadow: 0 8px 22px rgba(0,0,0,.13);
    }

    .unique-audio-lines {
      display: flex;
      align-items: end;
      justify-content: center;
      gap: .34rem;
      height: 42px;
    }

    .unique-audio-lines span {
      width: 4px;
      height: 18px;
      border-radius: 8px;
      background: var(--gold-dark);
      animation: uniqueWave 1.6s ease-in-out infinite;
    }

    .unique-audio-lines span:nth-child(2) { height: 30px; animation-delay: .12s; }
    .unique-audio-lines span:nth-child(3) { height: 22px; animation-delay: .24s; }
    .unique-audio-lines span:nth-child(4) { height: 36px; animation-delay: .36s; }
    .unique-audio-lines span:nth-child(5) { height: 20px; animation-delay: .48s; }

    .unique-detail-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: .8rem;
      margin-top: 1.6rem;
    }

    .unique-detail-list span,
    .unique-privacy-card {
      border: 1px solid rgba(201,168,76,.22);
      background: rgba(255,250,241,.78);
      color: #3d2d10;
      padding: .85rem 1rem;
      border-radius: 999px;
      font-family: var(--font-caps);
      font-size: .68rem;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .unique-privacy {
      text-align: center;
    }

    .unique-privacy-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1rem;
      margin-top: 2rem;
    }

    .unique-privacy-card {
      border-radius: 8px;
      padding: 1.4rem 1.2rem;
      text-transform: none;
      font-family: var(--font-body);
      font-size: 1.05rem;
      letter-spacing: 0;
      line-height: 1.55;
      box-shadow: 0 16px 42px rgba(31,24,17,.07);
    }

    .unique-final {
      padding: 100px 2rem;
      color: var(--white);
      background:
        linear-gradient(135deg, rgba(13,26,58,.96), rgba(23,35,54,.92)),
        url("../assets/img/unique/pourquoi-nos-creations-sont-uniques.png") center / cover fixed;
      text-align: center;
      position: relative;
    }

    .unique-final__inner {
      width: min(820px, 100%);
      margin: 0 auto;
    }

    .unique-final p {
      font-family: var(--font-display);
      font-size: 2.55rem;
      line-height: 1.28;
      font-weight: 400;
      margin-bottom: 2rem;
      color: rgba(255,255,255,.92);
    }

    @keyframes uniqueWave {
      0%, 100% { transform: scaleY(.72); opacity: .72; }
      50% { transform: scaleY(1.05); opacity: 1; }
    }

    @media (max-width: 1024px) {
      .unique-title { font-size: 3.8rem; }
      .unique-split,
      .unique-split--reverse {
        grid-template-columns: 1fr;
        gap: 2.4rem;
      }
      .unique-cards,
      .unique-privacy-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 720px) {
      .unique-hero {
        min-height: 76vh;
        padding: 104px 1rem 58px;
      }
      .unique-title {
        font-size: 2.75rem;
      }
      .unique-hero__text {
        font-size: 1.08rem;
      }
      .unique-section {
        padding: 64px 1rem;
      }
      .unique-heading {
        font-size: 2.15rem;
      }
      .unique-copy {
        font-size: 1.05rem;
      }
      .unique-cards,
      .unique-detail-list,
      .unique-privacy-grid {
        grid-template-columns: 1fr;
      }
      .unique-scene,
      .unique-scene img {
        min-height: 320px;
      }
      .unique-note {
        position: relative;
        left: auto;
        bottom: auto;
        width: auto;
        margin: -4.4rem 1rem 1rem;
      }
      .unique-audio-stage {
        min-height: 520px;
      }
      .unique-phone {
        left: 50%;
        right: auto;
        top: 46%;
        transform: translateX(-50%);
        width: min(230px, calc(100% - 2rem));
      }
      .unique-final {
        padding: 72px 1rem;
        background-attachment: scroll;
      }
      .unique-final p {
        font-size: 2rem;
      }
    }

    /* Premium refinements, scoped to this editorial page */
    .unique-page {
      background:
        linear-gradient(180deg, #fbf7ef 0%, #f6eee0 42%, #fbf8f1 100%);
    }

    .unique-hero {
      min-height: 86vh;
      padding-top: 132px;
    }

    .unique-hero__image {
      filter: saturate(.9) contrast(1.06) brightness(.82);
      transform: scale(1.01);
    }

    .unique-hero__overlay {
      background:
        linear-gradient(90deg, rgba(5,11,24,.86) 0%, rgba(13,26,58,.56) 48%, rgba(7,10,18,.88) 100%),
        linear-gradient(180deg, rgba(0,0,0,.36) 0%, rgba(0,0,0,.04) 45%, rgba(0,0,0,.42) 100%);
    }

    .unique-hero__content {
      width: min(980px, 100%);
      padding: 1.4rem 0;
    }

    .unique-hero__mark {
      width: 88px;
      height: 88px;
      padding: .22rem;
      border: 1px solid rgba(238,213,142,.72);
      box-shadow:
        0 22px 54px rgba(0,0,0,.34),
        inset 0 0 0 1px rgba(255,255,255,.62);
    }

    .unique-kicker,
    .unique-label {
      display: inline-flex;
      align-items: center;
      gap: .9rem;
      color: rgba(238,213,142,.94);
      letter-spacing: .24em;
    }

    .unique-label {
      color: var(--gold-dark);
    }

    .unique-kicker::before,
    .unique-kicker::after,
    .unique-label::before {
      content: "";
      display: block;
      width: 1.9rem;
      height: 1px;
      background: linear-gradient(90deg, transparent, currentColor);
      opacity: .66;
    }

    .unique-kicker::after {
      background: linear-gradient(90deg, currentColor, transparent);
    }

    .unique-title {
      max-width: 980px;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 1.35rem;
      font-size: 5.05rem;
      line-height: 1.02;
      color: rgba(255,255,255,.98);
      text-shadow: 0 18px 56px rgba(0,0,0,.46);
    }

    .unique-hero__text {
      max-width: 720px;
      color: rgba(255,255,255,.88);
      text-shadow: 0 12px 32px rgba(0,0,0,.34);
    }

    .unique-page .btn {
      min-height: 50px;
      padding: .98rem 1.7rem;
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.14);
      box-shadow:
        0 6px 0 rgba(35,24,8,.34),
        0 20px 44px rgba(13,26,58,.22),
        inset 0 1px 0 rgba(255,255,255,.34);
      transition: transform .24s var(--ease), box-shadow .24s var(--ease), filter .24s var(--ease);
      will-change: transform;
    }

    .unique-page .btn:hover {
      transform: translateY(-2px);
      filter: saturate(1.03) contrast(1.02);
      box-shadow:
        0 8px 0 rgba(35,24,8,.30),
        0 26px 54px rgba(13,26,58,.28),
        inset 0 1px 0 rgba(255,255,255,.42);
    }

    .unique-page .btn:active {
      transform: translateY(3px);
      box-shadow:
        0 3px 0 rgba(35,24,8,.34),
        0 14px 30px rgba(13,26,58,.18),
        inset 0 1px 0 rgba(255,255,255,.3);
    }

    .unique-page .btn--gold {
      color: #17110d;
      background: linear-gradient(180deg, #f1dc96 0%, #d2b452 48%, #a9822c 100%);
      border-color: rgba(255,242,187,.56);
      text-shadow: 0 1px 0 rgba(255,255,255,.34);
    }

    .unique-page .btn--navy {
      color: #fff8df;
      background: linear-gradient(180deg, #1d2b49 0%, #111b32 52%, #070d18 100%);
      border-color: rgba(238,213,142,.24);
      box-shadow:
        0 6px 0 rgba(0,0,0,.34),
        0 22px 48px rgba(13,26,58,.24),
        inset 0 1px 0 rgba(255,255,255,.14);
    }

    .unique-section {
      padding-top: 108px;
      padding-bottom: 108px;
    }

    .unique-section::before {
      content: "";
      position: absolute;
      top: 0;
      left: 50%;
      width: min(720px, calc(100% - 4rem));
      height: 1px;
      transform: translateX(-50%);
      background: linear-gradient(90deg, transparent, rgba(201,168,76,.34), transparent);
    }

    .unique-section--warm {
      background: linear-gradient(135deg, #fdf9f1 0%, #f7eddb 58%, #ead7b2 100%);
    }

    .unique-heading {
      max-width: 720px;
      font-size: 3rem;
      line-height: 1.08;
      margin-bottom: 1.15rem;
      color: #21180f;
    }

    .unique-copy {
      max-width: 760px;
      color: rgba(46,36,22,.82);
    }

    .unique-scene,
    .unique-audio-photo {
      border-radius: 18px;
      border-color: rgba(201,168,76,.28);
      box-shadow:
        0 12px 0 rgba(169,125,34,.08),
        0 32px 84px rgba(44,31,20,.16);
    }

    .unique-scene::before,
    .unique-audio-photo::before {
      content: "";
      position: absolute;
      inset: 12px;
      border: 1px solid rgba(255,248,224,.38);
      border-radius: 12px;
      pointer-events: none;
      z-index: 2;
    }

    .unique-scene img,
    .unique-audio-photo img {
      filter: saturate(.94) contrast(1.03);
    }

    .unique-note {
      border-radius: 14px;
      background: rgba(255,250,241,.92);
      border-color: rgba(201,168,76,.36);
      box-shadow:
        0 8px 0 rgba(169,125,34,.08),
        0 24px 54px rgba(13,26,58,.18);
    }

    .unique-personal-gallery .pb-feature-card {
      border-radius: 18px;
      border-color: rgba(201,168,76,.28);
      background: linear-gradient(145deg, rgba(255,253,247,.98), rgba(244,232,209,.94));
      box-shadow:
        0 10px 0 rgba(169,125,34,.08),
        0 28px 72px rgba(31,24,17,.12);
    }

    .unique-personal-gallery .pb-feature-card:hover {
      transform: translateY(-4px);
      box-shadow:
        0 14px 0 rgba(169,125,34,.10),
        0 34px 86px rgba(31,24,17,.16);
    }

    .unique-personal-gallery .pb-feature-card__body {
      padding-top: 1.55rem;
    }

    .unique-personal-gallery .pb-feature-card h3 {
      color: #17213a;
    }

    .unique-detail-list span,
    .unique-privacy-card {
      border-color: rgba(201,168,76,.30);
      background: linear-gradient(145deg, rgba(255,253,247,.92), rgba(242,229,204,.84));
      box-shadow: 0 14px 34px rgba(31,24,17,.08);
    }

    .unique-final {
      padding-top: 112px;
      padding-bottom: 112px;
      background:
        linear-gradient(135deg, rgba(8,14,27,.96), rgba(20,32,55,.9)),
        url("../assets/img/unique/pourquoi-nos-creations-sont-uniques.png") center / cover fixed;
    }

    .unique-final__inner {
      padding: clamp(2rem, 4vw, 3rem);
      border: 1px solid rgba(238,213,142,.24);
      border-radius: 18px;
      background: rgba(5,10,18,.22);
      box-shadow: 0 26px 72px rgba(0,0,0,.20);
      backdrop-filter: blur(3px);
    }

    .unique-final p {
      text-shadow: 0 18px 48px rgba(0,0,0,.34);
    }

    @media (max-width: 1024px) {
      .unique-title {
        font-size: 3.8rem;
      }

      .unique-section {
        padding-top: 86px;
        padding-bottom: 86px;
      }
    }

    @media (max-width: 720px) {
      .unique-hero {
        min-height: 78vh;
        padding: 108px 1rem 62px;
      }

      .unique-hero__mark {
        width: 76px;
        height: 76px;
      }

      .unique-title {
        font-size: 2.72rem;
      }

      .unique-kicker,
      .unique-label {
        letter-spacing: .16em;
        gap: .65rem;
      }

      .unique-kicker::before,
      .unique-kicker::after,
      .unique-label::before {
        width: 1.2rem;
      }

      .unique-page .btn {
        width: auto;
        max-width: 100%;
        min-height: 46px;
        padding: .9rem 1.25rem;
      }

      .unique-section {
        padding-top: 68px;
        padding-bottom: 68px;
      }

      .unique-heading {
        font-size: 2.12rem;
      }

      .unique-scene,
      .unique-audio-photo {
        border-radius: 14px;
      }

      .unique-scene::before,
      .unique-audio-photo::before {
        inset: 9px;
      }

      .unique-final__inner {
        border-radius: 14px;
      }
    }

    .unique-scene::before,
    .unique-audio-photo::before {
      display: none !important;
    }

    .unique-note {
      width: min(70%, 430px) !important;
      padding: 0 !important;
      background: transparent !important;
      border: 0 !important;
      box-shadow: none !important;
      color: #fff8e4 !important;
      text-shadow:
        0 2px 10px rgba(0,0,0,.72),
        0 12px 28px rgba(0,0,0,.48);
    }

    .unique-scene:has(.unique-note) img {
      filter: saturate(.94) contrast(1.04) brightness(.76);
    }

    .unique-scene .pb-gallery-trigger {
      position: relative;
      display: block;
      width: 100%;
      height: 100%;
      min-height: inherit;
      border-radius: inherit;
      overflow: hidden;
    }

    .unique-scene .pb-gallery-trigger img {
      display: block;
      width: 100%;
      height: 100%;
      min-height: inherit;
      object-fit: cover;
    }

    @media (max-width: 720px) {
      .unique-note {
        position: absolute !important;
        left: 1rem !important;
        right: 1rem !important;
        bottom: 1rem !important;
        width: auto !important;
        margin: 0 !important;
        font-size: 1.05rem !important;
      }
    }
/* SHOPIFY UNIQUE PAGE INLINE CSS - END */


/* SHOPIFY FONDATEURS PAGE INLINE CSS - START */
/* ── PAGE FONDATEURS ── */
    body { background: var(--cream); }

    .fond-hero {
      background: var(--navy-deep);
      padding: 110px 2rem 56px;
      text-align: center;
      position: relative;
      overflow: hidden;
    }

    .fond-hero::before {
      content: '';
      position: absolute;
      inset: 0;
      background:
        radial-gradient(ellipse at 20% 60%, rgba(201,168,76,0.07) 0%, transparent 55%),
        radial-gradient(ellipse at 80% 30%, rgba(201,168,76,0.05) 0%, transparent 50%);
    }

    .fond-hero__inner {
      position: relative;
      z-index: 1;
      max-width: 680px;
      margin: 0 auto;
    }

    .fond-kicker {
      font-family: var(--font-caps);
      font-size: 0.65rem;
      letter-spacing: 0.26em;
      color: var(--gold);
      text-transform: uppercase;
      margin-bottom: 1rem;
    }

    .fond-hero__ornement {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 1rem;
      margin-bottom: 1.4rem;
    }

    .fond-hero__ornement span {
      display: block;
      height: 1px;
      width: 50px;
      background: rgba(201,168,76,0.45);
    }

    .fond-hero__ornement em {
      color: var(--gold);
      font-size: 0.7rem;
      font-style: normal;
    }

    .fond-title {
      font-family: var(--font-display);
      font-size: clamp(2.4rem, 5vw, 3.8rem);
      font-weight: 400;
      color: var(--white);
      line-height: 1.15;
      margin-bottom: 1.2rem;
    }

    .fond-intro {
      font-family: var(--font-body);
      font-size: 1.25rem;
      color: rgba(255,255,255,0.75);
      font-weight: 300;
      font-style: italic;
      line-height: 1.75;
    }

    /* ── CONTENT ── */
    .fond-content {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 2rem 80px;
    }

    /* Citation d'intro */
    .fond-lead {
      text-align: center;
      padding: 56px 0 48px;
      max-width: 720px;
      margin: 0 auto;
      border-bottom: 1px solid rgba(201,168,76,0.15);
    }

    .fond-lead__text {
      font-family: var(--font-display);
      font-size: clamp(1.3rem, 2.2vw, 1.7rem);
      color: var(--text);
      font-style: italic;
      font-weight: 400;
      line-height: 1.55;
    }

    .fond-lead__ornament {
      color: var(--gold);
      font-size: 0.55rem;
      margin-top: 1.2rem;
      letter-spacing: 0.2em;
    }

    /* ── CARDS FONDATEURS ── */
    .fond-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1.8rem;
      margin: 48px 0;
    }

    .fond-card {
      background: var(--white);
      border: 1px solid rgba(201,168,76,0.15);
      border-radius: 3px;
      overflow: hidden;
      position: relative;
      display: flex;
      flex-direction: column;
      min-height: 100%;
    }

    .fond-card::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 3px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    .fond-card__header {
      background: linear-gradient(135deg, var(--cream) 0%, #f0e8d5 100%);
      padding: 2rem 2rem 1.55rem;
      display: flex;
      align-items: center;
      gap: 1.2rem;
      border-bottom: 1px solid rgba(201,168,76,0.1);
      min-height: 205px;
    }

    .fond-card__initial {
      width: 58px;
      height: 58px;
      border-radius: 50%;
      background: linear-gradient(145deg, var(--gold-light), var(--gold-dark));
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--white);
      font-family: var(--font-display);
      font-size: 1.6rem;
      font-weight: 600;
      flex-shrink: 0;
      box-shadow: 0 4px 16px rgba(201,168,76,0.3);
    }

    .fond-card__meta {
      display: flex;
      flex-direction: column;
      gap: 0.3rem;
    }

    .fond-card__role {
      font-family: var(--font-caps);
      font-size: 1.45rem;
      letter-spacing: 0.12em;
      color: #7a5c10;
      text-transform: uppercase;
      font-weight: 700;
      margin-bottom: 0.35rem;
    }

    .fond-card__role strong {
      font-size: 1.18em;
      letter-spacing: 0.16em;
    }

    .fond-card__role small {
      font-size: 0.55em;
      letter-spacing: 0.18em;
    }

    .fond-card__name {
      font-family: var(--font-display);
      font-size: 0.98rem;
      font-weight: 300;
      font-style: italic;
      color: #6a5830;
      line-height: 1.2;
      margin-top: 0.18rem;
    }

    .fond-card__name--single {
      white-space: nowrap;
      font-size: 1.02rem;
    }

    .fond-card__body {
      padding: 1.8rem 2rem 1.4rem;
      flex: 1;
    }

    .fond-card__subtitle {
      font-family: var(--font-display);
      font-style: italic;
      font-size: 1.15rem;
      color: #8a6010;
      margin-bottom: 1rem;
      font-weight: 500;
    }

    .fond-card__text {
      font-family: var(--font-body);
      font-size: 1.08rem;
      color: #1a1410;
      line-height: 1.9;
      font-weight: 400;
    }

    .fond-card__quote {
      margin: 1.2rem 0;
      padding: 0.9rem 1.2rem;
      background: var(--cream);
      border-left: 2px solid var(--gold);
      font-family: var(--font-body);
      font-style: italic;
      font-size: 0.95rem;
      color: var(--text-mid);
      line-height: 1.7;
    }

    .fond-card__values {
      padding: 1rem 2rem 1.8rem;
      min-height: 74px;
      align-content: flex-start;
      display: flex;
      gap: 0.5rem;
      flex-wrap: wrap;
    }

    .fond-card__value {
      font-family: var(--font-caps);
      font-size: 0.58rem;
      letter-spacing: 0.12em;
      color: var(--gold-dark);
      background: var(--cream);
      border: 1px solid rgba(201,168,76,0.25);
      border-radius: 999px;
      padding: 0.4rem 0.9rem;
      text-transform: uppercase;
    }


    .fond-card__contact {
      margin-top: auto;
      padding: 0 2rem 2rem;
    }

    .fond-card__email {
      display: flex;
      justify-content: center;
      align-items: center;
      min-height: 58px;
    }

    /* ── CITATION FINALE ── */
    .fond-quote {
      background: linear-gradient(135deg, var(--navy-deep) 0%, var(--navy-mid) 60%, #1e3050 100%);
      border-radius: 4px;
      padding: 52px 48px;
      text-align: center;
      position: relative;
      overflow: hidden;
      margin-top: 0;
    }

    .fond-quote::before {
      content: '"';
      position: absolute;
      top: -20px;
      left: 30px;
      font-family: var(--font-display);
      font-size: 200px;
      color: rgba(201,168,76,0.07);
      line-height: 1;
      pointer-events: none;
    }

    .fond-quote__text {
      font-family: var(--font-display);
      font-size: clamp(1.15rem, 2vw, 1.55rem);
      color: var(--white);
      line-height: 1.55;
      font-weight: 400;
      max-width: 860px;
      margin: 0 auto 1.4rem;
      position: relative;
      z-index: 1;
    }

    .fond-quote__sign {
      font-family: var(--font-caps);
      font-size: 0.65rem;
      letter-spacing: 0.2em;
      color: var(--gold);
      position: relative;
      z-index: 1;
    }

    /* ── RESPONSIVE ── */
    @media (max-width: 780px) {
      .fond-grid { grid-template-columns: 1fr; }
      .fond-quote { padding: 36px 24px; }
      .fond-content { padding: 0 1.2rem 60px; }
    }
  
    .fond-card__contact {
      margin: 1.2rem 1.4rem 1.6rem;
      padding: 0.9rem 1.2rem;
      text-align: center;
      background: linear-gradient(145deg, #FDF8EE, #F5E8C0);
      border: 1px solid rgba(201,168,76,0.35);
      border-radius: 10px;
      box-shadow:
        0 2px 0 rgba(255,255,255,0.9) inset,
        0 3px 0 rgba(180,140,40,0.2),
        0 6px 16px rgba(140,100,20,0.12);
    }
    .fond-card__email {
      font-family: var(--font-body);
      font-size: 0.95rem;
      font-weight: 500;
      color: #8a6010;
      text-decoration: none;
      letter-spacing: 0.03em;
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      transition: transform 0.2s, opacity 0.2s;
    }
    .fond-card__email:hover { opacity: 0.75; transform: translateY(-1px); }
/* SHOPIFY FONDATEURS PAGE INLINE CSS - END */


/* SHOPIFY CONCIERGERIE PAGE INLINE CSS - START */
/* ── CONCIERGERIE CORRECTIONS ── */

    /* Pill label, espace sous le titre */
    .v2-pill.green {
      display: inline-block;
      margin-bottom: 1rem !important;
      font-size: 0.65rem;
      letter-spacing: 0.18em;
    }

    /* Titre principal, espace */
    .conc-left .v2-title {
      font-size: clamp(1.5rem, 2.4vw, 2rem) !important;
      line-height: 1.25 !important;
      margin-bottom: 1.2rem !important;
      color: #0e0c08 !important;
    }

    /* Intro text */
    .conc-left .v2-intro {
      font-size: 1rem !important;
      color: #2e2416 !important;
      line-height: 1.82 !important;
      margin-bottom: 1.8rem !important;
    }

    /* Bouton, espace dessus */
    .v2-btn.dark {
      margin-top: 0.2rem !important;
      margin-bottom: 0.5rem !important;
      display: inline-block !important;
    }

    /* Founder-values = lien devis */
    .founder-values2 {
      margin-top: 0.8rem !important;
      font-size: 0.7rem !important;
      letter-spacing: 0.18em !important;
      color: var(--gold-dark, #a8893c) !important;
    }

    /* Cards services 3D */
    .v2-card {
      background: linear-gradient(145deg, #fdf8f0, #f5ede0) !important;
      border: 1px solid rgba(201,168,76,0.18) !important;
      border-radius: 14px !important;
      box-shadow:
        0 6px 0 rgba(180,140,60,0.18),
        0 12px 30px rgba(0,0,0,0.07) !important;
      transition: all 0.3s ease !important;
      padding: 2rem 1.8rem !important;
    }

    .v2-card:hover {
      transform: translateY(-5px) !important;
      box-shadow:
        0 10px 0 rgba(180,140,60,0.18),
        0 20px 40px rgba(0,0,0,0.1) !important;
    }

    .v2-card h3 {
      font-size: 1.2rem !important;
      color: #0e0c08 !important;
      margin: 0.8rem 0 0.6rem !important;
      font-family: 'Playfair Display', serif !important;
    }

    .v2-card p {
      font-size: 0.97rem !important;
      color: #2e2416 !important;
      line-height: 1.8 !important;
    }

    .option-emoji {
      font-size: 2rem !important;
      margin-bottom: 1rem !important;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .option-emoji img {
      width: 100px;
      height: 100px;
      object-fit: contain;
    }

    /* Section idées, plus jolie */
    .v2-panel {
      background: linear-gradient(135deg, #fdf8f0 0%, #f0e5d0 100%) !important;
      border: 1px solid rgba(201,168,76,0.2) !important;
      border-radius: 14px !important;
      box-shadow: 0 4px 20px rgba(0,0,0,0.06) !important;
    }

    .v2-subtitle {
      font-size: 1.4rem !important;
      color: #0e0c08 !important;
      margin: 0.5rem 0 1.2rem !important;
      font-family: 'Playfair Display', serif !important;
    }

    .idea-tags span {
      background: #fff !important;
      border: 1px solid rgba(201,168,76,0.3) !important;
      color: #2e2416 !important;
      border-radius: 999px !important;
      padding: 0.4rem 1rem !important;
      font-size: 0.82rem !important;
      display: inline-block !important;
      margin: 0.2rem !important;
      box-shadow: 0 2px 6px rgba(0,0,0,0.05) !important;
      transition: all 0.2s !important;
      cursor: default !important;
    }

    .idea-tags span:hover {
      background: var(--gold, #c9a84c) !important;
      color: #fff !important;
      border-color: var(--gold, #c9a84c) !important;
    }

    .ideas-title {
      font-size: 1.3rem !important;
      color: #0e0c08 !important;
    }

    /* Options exclusivité 3D */
    .option-card {
      position: relative !important;
    }

    .option-card h3 {
      font-size: 1.35rem !important;
      margin-top: 0.5rem !important;
    }

    .clean-list li {
      font-size: 0.97rem !important;
      color: #2e2416 !important;
      margin-bottom: 0.4rem !important;
      line-height: 1.7 !important;
    }

    /* Process steps 3D */
    .process-card {
      background: linear-gradient(145deg, #fdf8f0, #f0e5d0) !important;
    }

    .process-num {
      background: linear-gradient(135deg, #c9a84c, #a8893c) !important;
      color: #fff !important;
      font-weight: 700 !important;
      box-shadow: 0 4px 12px rgba(201,168,76,0.35) !important;
    }

    .process-card p {
      font-size: 0.97rem !important;
      color: #2e2416 !important;
      line-height: 1.75 !important;
    }

    /* Conc-visual (carte verte droite) */
    .conc-visual {
      border-radius: 16px !important;
    }

    .conc-mm {
      font-size: 2.2rem !important;
      width: 80px !important;
      height: 80px !important;
      margin-bottom: 1.2rem !important;
    }

    /* v2-section padding */
    .v2-section { padding: 32px 0 !important; }

    .section-wrap { max-width: 1160px !important; margin: 0 auto !important; padding: 0 2rem !important; }

    /* kicker */
    .v2-kicker {
      font-size: 0.72rem !important;
      letter-spacing: 0.22em !important;
      margin-bottom: 0.6rem !important;
      color: var(--gold-dark, #a8893c) !important;
    }
/* SHOPIFY CONCIERGERIE PAGE INLINE CSS - END */


/* SHOPIFY AIDE PAGE INLINE CSS - START */
/* FAQ accordion */
    .faq-category {
      margin-bottom: 3rem;
    }

    .faq-category__title {
      font-family: var(--font-caps);
      font-size: 0.7rem;
      letter-spacing: 0.2em;
      color: var(--gold);
      text-transform: uppercase;
      margin-bottom: 1.2rem;
      padding-bottom: 0.6rem;
      border-bottom: 1px solid rgba(201,168,76,0.2);
    }

    .faq-item {
      border-bottom: 1px solid rgba(42, 32, 20, 0.08);
    }

    .faq-item__btn {
      width: 100%;
      background: none;
      border: none;
      padding: 1.2rem 0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 1rem;
      cursor: pointer;
      text-align: left;
    }

    .faq-item__question {
      font-family: var(--font-display);
      font-size: 1.05rem;
      font-weight: 500;
      color: var(--text);
      line-height: 1.4;
    }

    .faq-item__icon {
      width: 22px;
      height: 22px;
      flex-shrink: 0;
      color: var(--gold);
      transition: transform 0.3s ease;
    }

    .faq-item__icon svg {
      width: 100%;
      height: 100%;
    }

    .faq-item.open .faq-item__icon {
      transform: rotate(45deg);
    }

    .faq-item__answer {
      display: none;
      padding: 0 0 1.4rem;
      font-family: var(--font-body);
      font-size: 1rem;
      color: var(--text-mid);
      line-height: 1.85;
      font-weight: 300;
    }

    .faq-item.open .faq-item__answer {
      display: block;
      animation: fadeIn 0.3s ease;
    }

    .faq-item__answer a {
      color: var(--gold-dark);
      text-decoration: underline;
      text-underline-offset: 2px;
    }

    .faq-contact-cta {
      background: var(--navy-deep);
      padding: 3rem 2rem;
      text-align: center;
      margin-top: 3rem;
    }

    .faq-contact-cta__title {
      font-family: var(--font-display);
      font-size: 1.6rem;
      font-weight: 400;
      color: var(--white);
      margin-bottom: 0.8rem;
    }

    .faq-contact-cta__sub {
      font-family: var(--font-body);
      font-size: 0.98rem;
      color: rgba(255,255,255,0.5);
      margin-bottom: 1.6rem;
      font-weight: 300;
    }

    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(-6px); }
      to { opacity: 1; transform: translateY(0); }
    }
/* SHOPIFY AIDE PAGE INLINE CSS - END */

/* V25 - fiche produit Shopify avec variantes format/reliure */
.product-form--variants {
  display: grid;
  gap: 1rem;
  margin-top: 1.35rem;
}

.product-variant-zone {
  display: grid;
  gap: .7rem;
  padding: 1rem;
  border: 1px solid rgba(201,168,76,.24);
  border-radius: 16px;
  background: rgba(255,250,241,.78);
  box-shadow: 0 12px 30px rgba(44,31,20,.06);
}

.product-variant-zone label {
  font-family: var(--font-caps);
  font-size: .68rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #7a5c20;
}

.product-variant-select {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(201,168,76,.42);
  border-radius: 999px;
  background: linear-gradient(135deg, #fffaf0 0%, #f6ead2 100%);
  color: #231a12;
  font-family: var(--font-caps);
  font-size: .72rem;
  letter-spacing: .08em;
  padding: .72rem 2rem .72rem 1rem;
  box-shadow: 0 1px 0 rgba(255,255,255,.8) inset, 0 8px 20px rgba(104,72,27,.07);
  cursor: pointer;
}

.product-variant-select:focus {
  outline: 2px solid rgba(201,168,76,.34);
  outline-offset: 2px;
}

.product-variant-help {
  color: #4d4031;
  font-size: .94rem;
  line-height: 1.55;
}

.product-variant-help strong {
  color: #17110d;
  font-weight: 600;
}

.product-quantity-zone {
  display: grid;
  gap: .7rem;
  max-width: 180px;
  margin: 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(201,168,76,.24);
  border-radius: 16px;
  background: rgba(255,250,241,.78);
  box-shadow: 0 12px 30px rgba(44,31,20,.06);
}

.product-quantity-zone label {
  font-family: var(--font-caps);
  font-size: .68rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #7a5c20;
}

.product-quantity-input {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(201,168,76,.42);
  border-radius: 999px;
  background: linear-gradient(135deg, #fffaf0 0%, #f6ead2 100%);
  color: #231a12;
  font-family: var(--font-caps);
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: .08em;
  padding: .72rem 1rem;
  text-align: center;
  box-shadow: 0 1px 0 rgba(255,255,255,.8) inset, 0 8px 20px rgba(104,72,27,.07);
}

.product-quantity-input:focus {
  outline: 2px solid rgba(201,168,76,.34);
  outline-offset: 2px;
}

.product-submit:disabled {
  opacity: .55;
  cursor: not-allowed;
  transform: none !important;
}

@media (max-width: 640px) {
  .product-variant-select {
    border-radius: 14px;
    font-size: .68rem;
    line-height: 1.35;
  }

  .product-quantity-zone {
    max-width: none;
  }

  .product-quantity-input {
    border-radius: 14px;
  }
}

/* V27 - mention produit obligatoire */
.product-nc {
  position: absolute;
  right: clamp(.65rem, 1.2vw, 1rem);
  bottom: clamp(.65rem, 1.2vw, 1rem);
  z-index: 6;
  margin: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: calc(100% - 1.3rem);
  padding: .32rem .62rem;
  border-radius: 999px;
  background: rgba(12, 14, 20, .52);
  color: rgba(255, 250, 238, .96);
  font-family: var(--font-body);
  font-size: .76rem;
  line-height: 1;
  font-style: italic;
  letter-spacing: .01em;
  text-shadow: 0 1px 9px rgba(0, 0, 0, .48);
  box-shadow: 0 10px 22px rgba(0, 0, 0, .18);
  pointer-events: none;
}

.lux-card a {
  position: relative;
  display: block;
}

.lux-card img {
  display: block;
  width: 100%;
  height: auto;
}

.product-nc--card {
  right: .55rem;
  bottom: auto;
  top: .55rem;
  font-size: .66rem;
  padding: .26rem .5rem;
}

@media (max-width: 640px) {
  .product-nc {
    right: .55rem;
    bottom: .55rem;
    font-size: .68rem;
    padding: .28rem .52rem;
  }

  .product-nc--card {
    top: .5rem;
    right: .5rem;
    font-size: .6rem;
  }
}

/* V29 - bouton secondaire du heros */
.hero__buttons .btn--concept-soft {
  background:
    linear-gradient(180deg, rgba(255, 249, 235, .96), rgba(231, 209, 157, .92));
  color: #1a2744;
  border: 1px solid rgba(201, 168, 76, .68);
  box-shadow:
    0 5px 0 rgba(122, 88, 25, .42),
    0 16px 34px rgba(201, 168, 76, .18),
    inset 0 1px 0 rgba(255, 255, 255, .72);
}

.hero__buttons .btn--concept-soft:hover {
  background:
    linear-gradient(180deg, rgba(255, 252, 242, .98), rgba(221, 193, 125, .96));
  color: #111b32;
  border-color: rgba(201, 168, 76, .82);
  box-shadow:
    0 3px 0 rgba(122, 88, 25, .46),
    0 18px 38px rgba(201, 168, 76, .22),
    inset 0 1px 0 rgba(255, 255, 255, .78);
}

/* V30 - section carte cadeau */
.gift-card-home {
  position: relative;
  z-index: 30;
  padding: clamp(70px, 9vw, 120px) 7vw;
  background: linear-gradient(180deg, #fffaf0 0%, #f6eedc 100%);
  color: var(--text);
  overflow: visible;
}

.gift-card-home__inner {
  position: relative;
  z-index: 2;
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(420px, 1fr);
  grid-template-areas:
    "content visual"
    "purchase purchase";
  gap: clamp(28px, 4vw, 62px);
  align-items: center;
}

.gift-card-home__content {
  grid-area: content;
  align-self: center;
}

.gift-card-home__title {
  font-family: var(--font-display);
  font-size: clamp(1.65rem, 2.7vw, 2.75rem);
  line-height: 1;
  max-width: 620px;
  color: var(--navy);
  font-weight: 500;
  margin: 18px 0 20px;
}

.gift-card-home__text {
  max-width: 660px;
  font-size: clamp(1.05rem, 1.5vw, 1.22rem);
  line-height: 1.65;
  color: var(--text-mid);
}

.gift-card-home__list {
  list-style: none;
  display: grid;
  gap: 12px;
  margin-top: 28px;
  max-width: 680px;
}

.gift-card-home__list li {
  position: relative;
  padding-left: 28px;
  font-size: 1rem;
  line-height: 1.45;
  color: var(--text);
}

.gift-card-home__list li::before {
  content: "✦";
  position: absolute;
  left: 0;
  top: .05em;
  color: var(--gold-dark);
  font-size: .86rem;
}

.gift-card-home__panel {
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.gift-card-home__visual {
  grid-area: visual;
  width: min(100%, 650px);
  justify-self: center;
  overflow: visible;
  display: block;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.gift-card-home__visual img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  object-position: center;
  image-rendering: auto;
}

.gift-card-home__brand,
.gift-card-home__visual small,
.gift-card-home__form-title,
.gift-card-home__note {
  font-family: var(--font-caps);
  letter-spacing: .16em;
  text-transform: uppercase;
}

.gift-card-home__brand {
  color: var(--gold-light);
  font-size: .76rem;
}

.gift-card-home__visual strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: .95;
  font-weight: 500;
}

.gift-card-home__visual small {
  color: rgba(255, 255, 255, .74);
  font-size: .68rem;
}

.gift-card-home__purchase-panel {
  position: relative;
  z-index: 20;
  grid-area: purchase;
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  padding: clamp(18px, 2.4vw, 28px);
  border: 1px solid rgba(201, 168, 76, .28);
  background:
    linear-gradient(135deg, rgba(255, 250, 240, .28), rgba(230, 213, 178, .58)),
    rgba(246, 238, 220, .72);
  box-shadow:
    0 18px 42px rgba(122, 88, 25, .10),
    inset 0 1px 0 rgba(255, 255, 255, .45);
}

.gift-card-home__form,
.gift-card-home__fallback {
  margin-top: 0;
  text-align: center;
}

.gift-card-home__form-title {
  color: var(--gold-dark);
  font-size: .74rem;
  margin-bottom: 14px;
}

.gift-card-home__purchase {
  position: relative;
  z-index: 30;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  gap: 12px;
  margin-top: 14px;
}

.gift-card-home__field {
  position: relative;
  display: grid;
  gap: 7px;
  min-width: 150px;
}

.gift-card-home__field--amount {
  min-width: 220px;
}

.gift-card-home__field--quantity {
  min-width: 118px;
}

.gift-card-home__field > span {
  font-family: var(--font-caps);
  font-size: .68rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--gold-dark);
}

.gift-card-home__select,
.gift-card-home__quantity {
  height: 50px;
  border: 1px solid rgba(168, 137, 60, .58);
  background:
    linear-gradient(180deg, rgba(248, 239, 217, .98) 0%, rgba(232, 214, 178, .92) 100%);
  color: var(--navy);
  font-family: var(--font-caps);
  font-size: 1.02rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-align: center;
  padding: 0 16px;
  box-shadow:
    0 8px 18px rgba(122, 88, 25, .07),
    inset 0 1px 0 rgba(255, 255, 255, .56);
}

.gift-card-home__select-wrap {
  position: relative;
  min-width: 220px;
  z-index: 40;
}

.gift-card-home__select {
  position: absolute;
  width: 1px;
  height: 1px;
  min-width: 0;
  opacity: 0;
  pointer-events: none;
  overflow: hidden;
}

.gift-card-home__custom-select {
  position: relative;
  min-width: 220px;
  z-index: 5;
}

.gift-card-home__custom-select.open {
  z-index: 10000;
}

.gift-card-home__custom-trigger,
.gift-card-home__quantity-control {
  min-height: 52px;
  border: 1px solid rgba(168, 137, 60, .62);
  background:
    linear-gradient(180deg, rgba(249, 240, 219, .98) 0%, rgba(226, 210, 174, .94) 100%);
  color: var(--navy);
  box-shadow:
    0 4px 0 rgba(122, 88, 25, .28),
    0 18px 28px rgba(122, 88, 25, .13),
    inset 0 1px 0 rgba(255, 255, 255, .62);
}

.gift-card-home__custom-trigger {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 0 16px;
  cursor: pointer;
  font-family: var(--font-caps);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-align: left;
}

.gift-card-home__custom-trigger svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  color: var(--gold-dark);
  transition: transform .18s var(--ease);
}

.gift-card-home__custom-select.open .gift-card-home__custom-trigger svg {
  transform: rotate(180deg);
}

.gift-card-home__custom-trigger:disabled {
  opacity: .58;
  cursor: not-allowed;
}

.gift-card-home__custom-menu {
  position: absolute;
  z-index: 10001;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  display: none;
  max-height: 260px;
  overflow: auto;
  border: 1px solid rgba(168, 137, 60, .54);
  background: linear-gradient(180deg, #f8efd9 0%, #ead8b6 100%);
  box-shadow:
    0 4px 0 rgba(122, 88, 25, .24),
    0 22px 36px rgba(26, 39, 68, .18);
}

.gift-card-home__custom-select.open .gift-card-home__custom-menu {
  display: grid;
}

.gift-card-home__custom-option {
  min-height: 46px;
  border: 0;
  border-bottom: 1px solid rgba(168, 137, 60, .22);
  background: transparent;
  color: var(--navy);
  cursor: pointer;
  font-family: var(--font-caps);
  font-size: .96rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-align: left;
  padding: 0 16px;
}

.gift-card-home__custom-option:hover,
.gift-card-home__custom-option:focus-visible,
.gift-card-home__custom-option[aria-selected="true"] {
  background: var(--navy);
  color: #fffaf0;
  outline: none;
}

.gift-card-home__quantity-control {
  display: grid;
  grid-template-columns: 42px 54px 42px;
  align-items: center;
}

.gift-card-home__qty-btn {
  width: 42px;
  height: 50px;
  border: 0;
  background: transparent;
  color: var(--gold-dark);
  cursor: pointer;
  font-family: var(--font-caps);
  font-size: 1.12rem;
  font-weight: 800;
}

.gift-card-home__qty-btn:hover,
.gift-card-home__qty-btn:focus-visible {
  background: rgba(201, 168, 76, .18);
  color: var(--navy);
  outline: none;
}

.gift-card-home__quantity {
  width: 54px;
  height: 50px;
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
  -moz-appearance: textfield;
}

.gift-card-home__quantity::-webkit-outer-spin-button,
.gift-card-home__quantity::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.gift-card-home__select:focus-visible,
.gift-card-home__quantity:focus-visible {
  outline: 2px solid rgba(201, 168, 76, .42);
  outline-offset: 3px;
  border-color: var(--gold-dark);
}

.gift-card-home__select {
  min-width: 180px;
  cursor: pointer;
}

.gift-card-home__amounts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.gift-card-home__amount {
  position: relative;
  min-height: 52px;
  display: block;
}

.gift-card-home__amount input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.gift-card-home__amount span,
.gift-card-home__amount--disabled {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(168, 137, 60, .38);
  background: #fffaf0;
  color: var(--navy);
  font-family: var(--font-caps);
  letter-spacing: .08em;
  font-size: .9rem;
  transition: transform .18s var(--ease), background .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease);
}

.gift-card-home__amount:hover span,
.gift-card-home__amount input:focus-visible + span {
  transform: translateY(-2px);
  border-color: var(--gold-dark);
}

.gift-card-home__amount input:checked + span {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
  box-shadow: 0 10px 22px rgba(26, 39, 68, .18);
}

.gift-card-home__amount--disabled {
  opacity: .38;
  cursor: not-allowed;
}

.gift-card-home__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: center;
  margin-top: 18px;
}

.gift-card-home__submit,
.gift-card-home__contact {
  width: auto;
  min-width: 158px;
  min-height: 50px;
  margin-top: 0;
  padding-left: 22px;
  padding-right: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.gift-card-home__contact {
  background: linear-gradient(180deg, rgba(248, 239, 217, .88), rgba(226, 210, 174, .78));
  color: var(--navy);
  border-color: rgba(201, 168, 76, .48);
}

.gift-card-home__submit[disabled] {
  opacity: .55;
  cursor: not-allowed;
  transform: none;
}

.gift-card-home__note,
.gift-card-home__fallback p {
  margin-top: 14px;
  font-size: .72rem;
  line-height: 1.55;
  color: var(--text-mid);
}

.gift-card-home__fallback p {
  font-family: var(--font-body);
  letter-spacing: 0;
  text-transform: none;
  font-size: 1rem;
}

@media (min-width: 981px) {
  .gift-card-home__purchase {
    flex-wrap: nowrap;
  }
}

@media (max-width: 980px) {
  .gift-card-home {
    padding: 64px 22px;
  }

  .gift-card-home__inner {
    grid-template-columns: 1fr;
    grid-template-areas:
      "content"
      "visual"
      "purchase";
  }

  .gift-card-home__panel {
    max-width: 680px;
    width: 100%;
    margin: 0 auto;
  }

  .gift-card-home__content {
    text-align: center;
  }

  .gift-card-home__title,
  .gift-card-home__text,
  .gift-card-home__list {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 520px) {
  .gift-card-home__amounts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gift-card-home__purchase {
    align-items: stretch;
  }

  .gift-card-home__field,
  .gift-card-home__select-wrap,
  .gift-card-home__custom-select,
  .gift-card-home__quantity-control,
  .gift-card-home__select,
  .gift-card-home__quantity {
    width: 100%;
    min-width: 0;
  }

  .gift-card-home__quantity-control {
    grid-template-columns: 48px minmax(0, 1fr) 48px;
  }

  .gift-card-home__quantity {
    width: 100%;
  }

  .gift-card-home__actions {
    align-items: stretch;
  }

  .gift-card-home__submit,
  .gift-card-home__contact {
    width: 100%;
  }

  .gift-card-home__visual {
    aspect-ratio: 4 / 3;
  }
}

/* V41 emergency live fix: duplicate guard for collection visual proportions. */
.coll-main .coll-carousel {
  min-height: clamp(320px, 28vw, 430px) !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
}

.coll-main .coll-slide,
.coll-main .coll-slide.active {
  min-height: clamp(280px, 25vw, 380px) !important;
  height: auto !important;
  max-height: none !important;
  padding: clamp(.8rem, 1.5vw, 1.35rem) !important;
  align-items: center !important;
  justify-content: center !important;
}

.coll-main .coll-slide:not(.active) {
  position: absolute !important;
  inset: 0 !important;
}

.coll-main .coll-slide.active {
  position: relative !important;
}

.coll-main .coll-slide img,
.coll-main .coll-book--vacances .coll-slide img,
.coll-main .amp-main-image,
.coll-main .collection-product-card img,
.coll-main .collection-universe__visual img {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: min(92%, 520px) !important;
  max-height: clamp(240px, 24vw, 360px) !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.coll-main .coll-book--vacances .coll-slide img {
  max-width: min(94%, 560px) !important;
  max-height: clamp(235px, 23vw, 350px) !important;
}

@media (min-width: 1600px) {
  .coll-main .coll-section {
    max-width: 1220px !important;
  }

  .coll-main .coll-carousel {
    min-height: 430px !important;
  }

  .coll-main .coll-slide,
  .coll-main .coll-slide.active {
    min-height: 380px !important;
  }

  .coll-main .coll-slide img,
  .coll-main .coll-book--vacances .coll-slide img {
    max-height: 360px !important;
  }
}

@media (max-width: 900px) {
  .coll-main .coll-book {
    grid-template-columns: 1fr !important;
  }

  .coll-main .coll-carousel {
    min-height: 320px !important;
  }

  .coll-main .coll-slide,
  .coll-main .coll-slide.active {
    min-height: 290px !important;
  }

  .coll-main .coll-slide img,
  .coll-main .coll-book--vacances .coll-slide img {
    max-width: 92% !important;
    max-height: 280px !important;
  }
}

@media (max-width: 520px) {
  .coll-main .coll-carousel {
    min-height: 250px !important;
  }

  .coll-main .coll-slide,
  .coll-main .coll-slide.active {
    min-height: 230px !important;
    padding: .75rem !important;
  }

  .coll-main .coll-slide img,
  .coll-main .coll-book--vacances .coll-slide img {
    max-width: 92% !important;
    max-height: 215px !important;
  }
}

/* V42 emergency live fix: native Shopify collection cards must not stretch product visuals. */
.page-main > .page-section > .page-grid-3 > .lux-card {
  overflow: hidden !important;
}

.page-main > .page-section > .page-grid-3 > .lux-card > a {
  display: grid !important;
  gap: 14px !important;
  color: inherit !important;
  text-decoration: none !important;
}

.page-main > .page-section > .page-grid-3 > .lux-card > a > img {
  width: 100% !important;
  height: clamp(220px, 24vw, 340px) !important;
  max-height: 340px !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  box-sizing: border-box !important;
  padding: clamp(10px, 1.4vw, 18px) !important;
  border-radius: 10px !important;
  background:
    radial-gradient(circle at 50% 44%, rgba(255, 255, 255, .95), rgba(246, 237, 218, .72) 62%, rgba(236, 222, 190, .58)) !important;
}

.page-main > .page-section > .page-grid-3 > .lux-card .option-title {
  margin-top: 6px !important;
}

@media (min-width: 1600px) {
  .page-main > .page-section > .page-grid-3 {
    max-width: 1220px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .page-main > .page-section > .page-grid-3 > .lux-card > a > img {
    height: 340px !important;
  }
}

@media (max-width: 980px) {
  .page-main > .page-section > .page-grid-3 > .lux-card > a > img {
    height: clamp(210px, 48vw, 320px) !important;
  }
}

@media (max-width: 520px) {
  .page-main > .page-section > .page-grid-3 > .lux-card > a > img {
    height: 230px !important;
    padding: 10px !important;
  }
}

/* V43 emergency mobile guard: readable menu, clean hero and separated floating actions. */
@media (max-width: 768px) {
  .nav {
    height: 68px !important;
    padding: 0 .85rem !important;
    background: rgba(13, 26, 58, .98) !important;
    box-shadow: 0 8px 28px rgba(7, 16, 39, .22) !important;
  }

  .nav__logo {
    min-width: 0 !important;
    max-width: calc(100% - 92px) !important;
    gap: .55rem !important;
  }

  .nav__logo-img {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
  }

  .nav__logo-text {
    max-width: 145px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: #fff !important;
  }

  .nav__toggle {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .46rem !important;
    min-width: 78px !important;
    height: 40px !important;
    margin-left: auto !important;
    padding: 0 .65rem !important;
    border: 1px solid rgba(201, 168, 76, .55) !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(255, 251, 242, .98), rgba(235, 219, 183, .94)) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .18) !important;
  }

  .nav__toggle span {
    width: 17px !important;
    height: 1.5px !important;
    background: var(--navy) !important;
  }

  .nav__toggle::after {
    color: var(--navy) !important;
  }

  .nav__links {
    position: fixed !important;
    top: 76px !important;
    left: .85rem !important;
    right: .85rem !important;
    z-index: 12000 !important;
    display: none !important;
    width: auto !important;
    max-height: calc(100svh - 96px) !important;
    overflow-y: auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: .55rem !important;
    padding: 1rem !important;
    border: 1px solid rgba(201, 168, 76, .36) !important;
    border-radius: 18px !important;
    background:
      radial-gradient(circle at 14% 0%, rgba(201, 168, 76, .16), transparent 38%),
      linear-gradient(180deg, rgba(255, 251, 242, .99), rgba(242, 231, 205, .99)) !important;
    box-shadow: 0 28px 80px rgba(7, 16, 39, .34) !important;
  }

  .nav__links.open {
    display: flex !important;
  }

  .nav__links li {
    width: 100% !important;
  }

  .nav__links .nav__link,
  .nav__links .nav__cta {
    display: flex !important;
    width: 100% !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--navy) !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.25 !important;
  }

  .nav__links .nav__link::after {
    content: none !important;
  }

  .nav__links .nav__cta {
    color: #fff !important;
  }

  .hero {
    min-height: 92svh !important;
    padding: 6.2rem 1rem 3.6rem !important;
    align-items: center !important;
    background-size: cover !important;
    background-position: center top !important;
  }

  .hero__overlay {
    background:
      linear-gradient(180deg, rgba(7, 16, 39, .62), rgba(7, 16, 39, .72)),
      radial-gradient(circle at 50% 28%, rgba(201, 168, 76, .16), transparent 42%) !important;
  }

  .hero__content {
    width: min(100%, 390px) !important;
    padding: 0 .15rem !important;
  }

  .hero__title {
    font-size: clamp(2.7rem, 15vw, 3.85rem) !important;
    line-height: .94 !important;
  }

  .hero__tagline {
    font-size: clamp(1rem, 4.8vw, 1.24rem) !important;
    line-height: 1.2 !important;
  }

  .hero__body {
    font-size: .98rem !important;
    line-height: 1.42 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .hero__buttons {
    width: min(100%, 340px) !important;
    gap: .72rem !important;
  }

  .hero__buttons .btn {
    width: 100% !important;
    min-height: 43px !important;
    padding: .76rem .9rem !important;
    font-size: .6rem !important;
    letter-spacing: .12em !important;
  }

  .float-help {
    display: none !important;
  }

  .chat-widget {
    right: .82rem !important;
    bottom: .82rem !important;
    z-index: 13000 !important;
  }

  .chat-btn {
    width: 48px !important;
    height: 48px !important;
    box-shadow: 0 14px 30px rgba(7, 16, 39, .24) !important;
  }

  .chat-panel {
    right: .72rem !important;
    bottom: 4.8rem !important;
    width: calc(100vw - 1.44rem) !important;
    max-height: calc(100svh - 6rem) !important;
  }

  .scroll-top {
    display: flex !important;
    left: .82rem !important;
    right: auto !important;
    bottom: .82rem !important;
    z-index: 12950 !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 999px !important;
  }
}

@media (max-width: 390px) {
  .hero__title {
    font-size: clamp(2.45rem, 14vw, 3.3rem) !important;
  }

  .hero__body {
    font-size: .94rem !important;
  }

  .chat-panel {
    bottom: 4.45rem !important;
  }
}

/* V45 urgent launch polish: newsletter seams and custom-order project form. */
.home-newsletter__form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: stretch !important;
  gap: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid rgba(201, 168, 76, .32) !important;
  background: linear-gradient(135deg, rgba(247, 236, 214, .92), rgba(255, 250, 239, .96)) !important;
  box-shadow: 0 18px 42px rgba(76, 53, 25, .08) !important;
}

.home-newsletter__input,
.home-newsletter__input:focus {
  min-height: 54px !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.home-newsletter__form .btn {
  min-height: 54px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 999px 999px 0 !important;
  box-shadow: none !important;
}

.order-project-form {
  border: 1px solid rgba(201, 168, 76, .28);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255, 253, 248, .96), rgba(247, 238, 219, .9));
  box-shadow: 0 20px 64px rgba(44, 31, 20, .10), inset 0 1px 0 rgba(255, 255, 255, .76);
  padding: clamp(1.35rem, 3vw, 2.2rem);
}

.order-project-form__head {
  max-width: 780px;
  margin-bottom: clamp(1.1rem, 2vw, 1.6rem);
}

.order-project-form h2 {
  font-family: var(--font-display);
  font-weight: 400;
  color: var(--text);
}

.order-project-form__head p:not(.order-kicker) {
  color: rgba(46, 40, 32, .74);
}

.order-project-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .95rem;
}

.order-field {
  display: grid;
  gap: .45rem;
}

.order-field--full {
  grid-column: 1 / -1;
}

.order-field span {
  font-family: var(--font-caps);
  color: var(--gold-dark);
  font-size: .72rem;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.order-field input,
.order-field select,
.order-field textarea {
  width: 100%;
  border: 1px solid rgba(201, 168, 76, .24);
  border-radius: 16px;
  background: rgba(255, 250, 241, .78);
  color: var(--text);
  font-family: var(--font-body);
  font-size: 1rem;
  padding: .85rem .95rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .78);
}

.order-field textarea {
  min-height: 126px;
  resize: vertical;
}

.order-field input:focus,
.order-field select:focus,
.order-field textarea:focus {
  outline: 0;
  border-color: rgba(201, 168, 76, .56);
  box-shadow: 0 0 0 3px rgba(201, 168, 76, .14), inset 0 1px 0 rgba(255, 255, 255, .82);
  background: rgba(255, 253, 247, .98);
}

@media (max-width: 720px) {
  .home-newsletter__form {
    grid-template-columns: 1fr !important;
    border-radius: 22px !important;
  }

  .home-newsletter__form .btn {
    border-radius: 0 0 22px 22px !important;
  }

  .order-project-grid {
    grid-template-columns: 1fr;
  }
}

/* V46 launch hardening: no legacy product bleed, no stretched visuals, stable mobile controls. */
html,
body {
  overflow-x: hidden !important;
}

.product-showcase,
.book-stage,
.product-info,
.page-grid-3,
.lux-card,
.lux-card > a,
.coll-main,
.coll-book,
.coll-carousel,
.coll-slide {
  min-width: 0 !important;
}

.book-stage {
  overflow: hidden !important;
  padding: clamp(1.2rem, 3vw, 2.4rem) !important;
}

.book-stage [data-product-main-image],
.book-stage .conc-img-ronde {
  width: auto !important;
  height: auto !important;
  max-width: min(92%, 560px) !important;
  max-height: clamp(300px, 40vw, 560px) !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 12px !important;
}

.product-info .v2-intro img,
.product-info .v2-intro iframe,
.product-info .v2-intro table,
.product-info .v2-intro script,
.product-info .v2-intro style {
  display: none !important;
}

.page-main > .page-section > .page-grid-3 > .lux-card {
  display: flex !important;
  flex-direction: column !important;
}

.page-main > .page-section > .page-grid-3 > .lux-card > a {
  position: relative !important;
  height: 100% !important;
}

.page-main > .page-section > .page-grid-3 > .lux-card > a > img,
.collection-product-card img,
.coll-main .coll-slide img,
.coll-main .amp-main-image {
  transform: none !important;
  object-fit: contain !important;
}

.newsletter-form,
.home-newsletter__form,
.home-newsletter__form * {
  box-sizing: border-box !important;
}

.home-newsletter__form::before,
.home-newsletter__form::after,
.home-newsletter__input::before,
.home-newsletter__input::after {
  content: none !important;
  display: none !important;
}

@media (max-width: 768px) {
  .nav__links.open {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .nav__links:not(.open) {
    pointer-events: none !important;
  }

  .product-showcase {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }

  .book-stage {
    min-height: 380px !important;
  }

  .book-stage [data-product-main-image],
  .book-stage .conc-img-ronde {
    max-width: 94% !important;
    max-height: 340px !important;
  }

  .chat-widget {
    right: .75rem !important;
    bottom: .75rem !important;
  }

  .scroll-top {
    display: flex !important;
    left: .75rem !important;
    right: auto !important;
    bottom: .75rem !important;
  }

  .float-help {
    display: none !important;
  }
}

/* V47 configurateur créations : page fiable, champs complets, mobile stable. */
.order-page--embedded {
  min-height: auto !important;
  padding-top: 0 !important;
  margin: 0 !important;
  scroll-margin-top: 96px;
  background:
    radial-gradient(circle at 16% 5%, rgba(201, 168, 76, .18), transparent 30%),
    linear-gradient(180deg, #faf8f4 0%, #f2e5ce 50%, #faf8f4 100%) !important;
}

.custom-creations-page .order-page--embedded {
  margin-top: clamp(1rem, 3vw, 2.2rem) !important;
}

.order-page--embedded .order-hero {
  padding-top: clamp(42px, 6vw, 72px) !important;
}

.order-page--embedded .order-hero h1 {
  font-size: clamp(2.1rem, 4vw, 3.55rem) !important;
}

.order-dynamic-fields {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .95rem;
  margin-top: .45rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(201, 168, 76, .22);
}

.order-dynamic-fields .order-field--full {
  grid-column: 1 / -1;
}

.order-field select {
  min-height: 50px;
}

.order-field input,
.order-field select,
.order-field textarea {
  min-width: 0;
}

.cc-price-card__price--subscription {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  font-size: clamp(1.38rem, 2.1vw, 1.86rem) !important;
  line-height: 1.16 !important;
}

.cc-price-options--formulas a {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: .7rem !important;
}

.cc-price-options--formulas .cc-price-option__label {
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.cc-price-options--formulas strong {
  justify-self: end;
}

@media (max-width: 900px) {
  .order-page--embedded .order-summary {
    position: static !important;
  }
}

@media (max-width: 720px) {
  .order-page,
  .order-page--embedded {
    padding-top: 0 !important;
  }

  .order-inner {
    width: min(100% - 28px, var(--container)) !important;
  }

  .order-dynamic-fields {
    grid-template-columns: 1fr;
  }

  .cc-price-options--formulas a {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .cc-price-options--formulas strong {
    justify-self: start;
  }
}

/* V48 tunnel commande : paiement après formulaire, champs plus lisibles. */
.order-checkout-panel {
  display: grid;
  justify-items: center;
  gap: .75rem;
  margin-top: .35rem;
  padding: clamp(1.15rem, 3vw, 1.65rem);
  border: 1px solid rgba(201, 168, 76, .28);
  border-radius: 20px;
  background:
    linear-gradient(145deg, rgba(255, 250, 241, .92), rgba(243, 230, 202, .88));
  box-shadow:
    0 16px 38px rgba(44, 31, 20, .08),
    inset 0 1px 0 rgba(255, 255, 255, .78);
  text-align: center;
}

.order-checkout-panel__hint {
  max-width: 760px;
  margin: 0;
  color: rgba(23, 33, 58, .82);
  font-weight: 600;
}

.order-checkout-panel__btn {
  width: min(100%, 430px) !important;
  margin-top: .15rem !important;
}

.order-checkout-panel__btn:disabled {
  cursor: not-allowed !important;
  opacity: .62 !important;
  filter: saturate(.78);
  transform: none !important;
  box-shadow:
    0 8px 0 rgba(123, 91, 28, .28),
    0 16px 28px rgba(44, 31, 20, .10) !important;
}

.order-form-error {
  min-height: 1.35em;
  margin: 0;
  color: #8b2f1d;
  font-weight: 700;
}

.order-field span {
  color: #78551b !important;
  font-weight: 800 !important;
}

.order-field input,
.order-field select,
.order-field textarea {
  background:
    linear-gradient(180deg, rgba(255, 251, 242, .98), rgba(246, 236, 214, .96)) !important;
  border-color: rgba(176, 132, 42, .36) !important;
  color: #17213a !important;
  font-weight: 600 !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .82),
    0 8px 20px rgba(44, 31, 20, .045) !important;
}

.order-field input::placeholder,
.order-field textarea::placeholder {
  color: rgba(23, 33, 58, .56) !important;
  font-weight: 500 !important;
}

.order-field select option {
  background: #fbf4e5;
  color: #17213a;
  font-weight: 600;
}

.order-field input.is-invalid,
.order-field select.is-invalid,
.order-field textarea.is-invalid {
  border-color: rgba(139, 47, 29, .78) !important;
  box-shadow:
    0 0 0 3px rgba(139, 47, 29, .12),
    inset 0 1px 0 rgba(255, 255, 255, .82) !important;
}

.order-summary__note {
  font-weight: 600;
  color: rgba(23, 33, 58, .72) !important;
}

/* V49: prix coherents et montants sans retour ligne. */
.price-nowrap {
  display: inline-block;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

.cc-price-card__price,
.cc-price-options strong,
.order-choice small,
.order-option small,
.order-summary__price {
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

.cc-price-card__price--subscription {
  white-space: nowrap !important;
  font-size: clamp(1.18rem, 1.95vw, 1.62rem) !important;
}

@media (max-width: 720px) {
  .cc-price-card__price--subscription {
    font-size: clamp(1.02rem, 4.6vw, 1.34rem) !important;
  }
}

/* V50: toute la ligne de prix reste solidaire. */
.cc-price-card__price {
  white-space: nowrap !important;
  font-size: clamp(1.24rem, 1.85vw, 1.62rem) !important;
  line-height: 1.08 !important;
  font-weight: 700 !important;
}

.cc-price-card__price .price-nowrap {
  font-weight: 850 !important;
}

.cc-price-card__price--subscription {
  white-space: nowrap !important;
  font-size: clamp(1.08rem, 1.65vw, 1.42rem) !important;
}

@media (max-width: 720px) {
  .cc-price-card__price {
    font-size: clamp(1.05rem, 4.25vw, 1.26rem) !important;
  }

  .cc-price-card__price--subscription {
    font-size: clamp(.96rem, 3.75vw, 1.12rem) !important;
  }
}

/* V51: panier Shopify complet, quantites et suppression. */
.cart-page__section {
  padding-bottom: 80px;
}

.cart-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: clamp(18px, 3vw, 34px);
  align-items: start;
}

.cart-list {
  display: grid;
  gap: 18px;
}

.cart-item {
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr) minmax(120px, 150px) auto;
  gap: 20px;
  align-items: center;
  padding: 18px;
  border: 1px solid rgba(201, 168, 76, .22);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(255, 252, 246, .94), rgba(247, 237, 217, .88));
  box-shadow: 0 16px 38px rgba(44, 31, 20, .07);
}

.cart-item__media {
  aspect-ratio: 1;
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at 45% 30%, #fffaf0, #e8d2a5);
  color: #17213a;
  font-family: var(--font-display);
  font-size: 2rem;
  text-decoration: none;
}

.cart-item__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.cart-item__body h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(1.15rem, 1.7vw, 1.45rem);
  line-height: 1.05;
  color: #17213a;
}

.cart-item__body h2 a {
  color: inherit;
  text-decoration: none;
}

.cart-item__variant,
.cart-item__unit,
.cart-summary__note {
  color: rgba(35, 26, 18, .72);
  font-size: .95rem;
}

.cart-item__properties {
  display: grid;
  gap: .42rem;
  margin: .8rem 0;
  padding: .8rem;
  border-radius: 12px;
  background: rgba(255, 250, 239, .74);
  border: 1px solid rgba(201, 168, 76, .16);
}

.cart-item__properties div {
  display: grid;
  grid-template-columns: minmax(90px, 150px) minmax(0, 1fr);
  gap: .6rem;
}

.cart-item__properties dt {
  color: #8b6a22;
  font-weight: 800;
}

.cart-item__properties dd {
  margin: 0;
  color: #231a12;
  white-space: pre-wrap;
}

.cart-item__controls {
  display: grid;
  gap: .58rem;
}

.cart-item__controls label {
  font-family: var(--font-caps);
  font-size: .68rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #7a5c20;
}

.cart-item__controls input {
  width: 100%;
  min-height: 42px;
  border: 1px solid rgba(201, 168, 76, .42);
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255, 251, 242, .98), rgba(240, 226, 196, .96));
  color: #17213a;
  text-align: center;
  font-weight: 800;
}

.cart-item__remove {
  color: #8b2f1d;
  font-weight: 800;
  text-decoration: none;
}

.cart-item__line-price,
.cart-summary__total {
  margin: 0;
  font-family: var(--font-display);
  color: #17213a;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  white-space: nowrap;
}

.cart-summary {
  position: sticky;
  top: 110px;
  display: grid;
  gap: 16px;
}

.cart-summary__actions {
  display: grid;
  gap: 12px;
}

.cart-empty {
  display: grid;
  gap: 18px;
  justify-items: start;
}

@media (max-width: 900px) {
  .cart-form {
    grid-template-columns: 1fr;
  }

  .cart-summary {
    position: static;
  }

  .cart-item {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  .cart-item__controls,
  .cart-item__line-price {
    grid-column: 2;
  }
}

@media (max-width: 560px) {
  .cart-item {
    grid-template-columns: 1fr;
  }

  .cart-item__media {
    width: min(100%, 220px);
  }

  .cart-item__controls,
  .cart-item__line-price {
    grid-column: auto;
  }

  .cart-item__properties div {
    grid-template-columns: 1fr;
    gap: .18rem;
  }
}
