/* Maison Simphonie — editorial CMS pages */
body#cms:is(.cms-id-48, .cms-id-49, .cms-id-50, .cms-id-51, .cms-id-52, .cms-id-53, .cms-id-54) #wrapper {
  padding-bottom: 0;
  overflow-x: hidden;
}

body#cms:is(.cms-id-48, .cms-id-49, .cms-id-50, .cms-id-51, .cms-id-52, .cms-id-53, .cms-id-54) #wrapper > .container {
  width: 100%;
  max-width: none;
  padding-inline: 0;
}

body#cms:is(.cms-id-48, .cms-id-49, .cms-id-50, .cms-id-51, .cms-id-52, .cms-id-53, .cms-id-54) #wrapper > .container > .breadcrumb {
  width: fit-content !important;
  max-width: calc(100% - 30px);
  margin-right: 15px !important;
  margin-left: max(15px, calc((100% - 1140px) / 2)) !important;
}

body#cms:is(.cms-id-48, .cms-id-49, .cms-id-50, .cms-id-51, .cms-id-52, .cms-id-53, .cms-id-54) #wrapper > .container > .row {
  margin-right: 0;
  margin-left: 0;
}

body#cms:is(.cms-id-48, .cms-id-49, .cms-id-50, .cms-id-51, .cms-id-52, .cms-id-53, .cms-id-54) #content-wrapper {
  padding-right: 0;
  padding-left: 0;
}

#cms .page-content.sc-story-cms {
  position: static;
  left: auto;
  width: 100%;
  max-width: none;
  margin: 0 !important;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

#cms .sc-story-cms .sc-cms-renderer,
#cms .sc-story-cms .rte-content {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

/* Le rendu CMS standard ajoute un cadre, une ombre et une largeur maximale.
   Ces pages éditoriales gèrent directement leurs fonds et leurs gouttières. */
body#cms #content.sc-story-cms .sc-cms-renderer,
body#cms #content.sc-story-cms .sc-cms-renderer > .rte-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.sc-story {
  width: 100%;
  max-width: none;
  margin: 0;
  --story-ink: #6a4b3b;
  --story-text: #393431;
  --story-muted: #716a66;
  --story-line: rgba(106, 75, 59, .18);
  --story-sand: #fff;
  color: var(--story-text);
  background: #fff;
  font-family: var(--sc-font-body, Montserrat, sans-serif);
  overflow: hidden;
}

.sc-story *, .sc-story *::before, .sc-story *::after { box-sizing: border-box; }
.sc-story p, .sc-story h1, .sc-story h2, .sc-story h3, .sc-story figure, .sc-story address { margin: 0; }
.sc-story a { color: inherit; text-decoration: none !important; }
.sc-story strong { color: var(--story-ink); font-weight: 600; }

/* Isolate the editorial pages from the universal CMS heading rules. */
body#cms #content.sc-story-cms .sc-cms-renderer > .rte-content .sc-story :is(h1, h2, h3) {
  margin: 0;
  border: 0;
  color: var(--story-ink);
  font-family: var(--sc-font-family-heading, "Cormorant Garamond", Georgia, serif);
  font-weight: 400 !important;
  text-decoration: none !important;
  text-transform: none;
}

body#cms #content.sc-story-cms .sc-cms-renderer > .rte-content .sc-story :is(h1, h2, h3)::before,
body#cms #content.sc-story-cms .sc-cms-renderer > .rte-content .sc-story :is(h1, h2, h3)::after {
  display: none !important;
  content: none !important;
}

body#cms #content.sc-story-cms .sc-cms-renderer > .rte-content .sc-story p { margin: 0; }

/* Une lecture naturelle, sans justification ni espacements artificiels. */
body#cms #content.sc-story-cms .sc-story p {
  text-align: left !important;
  hyphens: none;
}

.sc-story-nav {
  width: 100%;
  min-height: 74px;
  margin: 0 auto;
  padding-right: clamp(5%, 6vw, 120px);
  padding-left: clamp(5%, 6vw, 120px);
  border-bottom: 1px solid var(--story-line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.sc-story-nav__label,
.sc-story-eyebrow {
  color: #a78169;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.sc-story-nav__links { display: flex; align-items: center; gap: clamp(18px, 2vw, 36px); }
.sc-story-nav__links a { position: relative; padding: 27px 0 25px; color: #5f5854; font-size: 13px; }
.sc-story-nav__links a::after { content: ""; position: absolute; right: 0; bottom: 15px; left: 0; height: 2px; border-radius: 2px; background: #b28f76; transform: scaleX(0); transition: transform .25s ease; }
.sc-story-nav__links a:hover::after, .sc-story-nav__links a[aria-current="page"]::after { transform: scaleX(.28); }
.sc-story-nav__links a[aria-current="page"] { color: var(--story-ink); font-weight: 600; }

.sc-story-hero {
  width: 100%;
  margin: 0;
  padding: clamp(42px, 5vw, 82px) clamp(5%, 6vw, 120px);
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: clamp(48px, 7vw, 110px);
  align-items: center;
  min-height: clamp(500px, 45vw, 680px);
  background: #fff !important;
  border-bottom: 1px solid var(--story-line);
}

.sc-story-hero__copy { position: relative; display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: clamp(28px, 3vw, 52px) 0; }
.sc-story-hero h1, .sc-story h2, .sc-story h3 { color: var(--story-ink); font-family: var(--sc-font-heading, "Cormorant Garamond", Georgia, serif); font-weight: 400; }
body#cms #content.sc-story-cms .sc-story-hero h1 { max-width: none; margin-top: 22px; font-size: clamp(50px, 5vw, 82px); line-height: .95; letter-spacing: -.035em; }
.sc-story-hero__lead { width: 100%; max-width: none; margin-top: clamp(34px, 4vw, 66px) !important; color: #5e5651; font-size: clamp(16px, 1.25vw, 21px); line-height: 1.75; }
.sc-story-hero__signature { position: absolute; right: 7%; bottom: 2%; color: rgba(106, 75, 59, .065); font-family: var(--sc-font-heading, Georgia, serif); font-size: clamp(120px, 17vw, 280px); line-height: .75; pointer-events: none; }
.sc-story-hero__media { width: 100%; height: clamp(420px, 38vw, 600px); min-height: 0; align-self: center; overflow: hidden; background: transparent; }
.sc-story-hero__media img { width: 100%; height: 100%; min-height: 100%; display: block; object-fit: cover; }
.sc-story-cms.page-cms-52 .sc-story-hero__media img { object-position: center 22%; }

.sc-story-section,
.sc-story-next { width: 100%; max-width: none; margin-right: auto; margin-left: auto; }
.sc-story-section { padding: clamp(58px, 6vw, 94px) clamp(5%, 6vw, 120px); }
.sc-story-intro { display: grid; grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr); gap: clamp(54px, 9vw, 150px); align-items: center; }
body#cms #content.sc-story-cms .sc-story :is(.sc-story-intro, .sc-story-visit, .sc-story-founder, .sc-story-cta, .sc-story-journal) h2 { width: 100%; max-width: none; margin-top: 16px; font-size: clamp(36px, 3.4vw, 56px); line-height: 1.04; letter-spacing: -.025em; }
.sc-story-prose { padding-top: 23px; border-top: 1px solid var(--story-line); }
.sc-story-prose { width: 100%; max-width: none; }
.sc-story-prose p, .sc-story-founder > div > p { color: #5f5955; font-size: clamp(16px, 1.25vw, 20px); line-height: 1.85; }
.sc-story-prose p + p, .sc-story-founder > div > p + p { margin-top: 24px; }

.sc-story-timeline { border-top: 1px solid var(--story-line); display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(35px, 6vw, 90px); }
.sc-story-timeline article { position: relative; }
.sc-story-timeline article > span { display: block; margin-bottom: 52px; color: #c3a58f; font-family: var(--sc-font-heading, Georgia, serif); font-size: 42px; }
body#cms #content.sc-story-cms .sc-story-timeline h3 { margin: 14px 0 18px; font-size: clamp(29px, 2.4vw, 39px); line-height: 1.08; }
.sc-story-timeline article > p:last-child, .sc-story-principles article p, .sc-story-values article > p:last-child, .sc-story-visit__services p { color: var(--story-muted); font-size: 16px; line-height: 1.8; }

.sc-story-quote { text-align: center; border-top: 1px solid var(--story-line); border-bottom: 1px solid var(--story-line); }
.sc-story-quote > p { width: 100%; max-width: 1400px; margin: 0 auto; color: var(--story-ink); font-family: var(--sc-font-heading, Georgia, serif); font-size: clamp(34px, 3.7vw, 58px); font-weight: 400; line-height: 1.12; letter-spacing: -.02em; }
.sc-story-text-link { display: inline-flex; gap: 14px; margin-top: 42px; padding-bottom: 7px; border-bottom: 1px solid var(--story-ink); color: var(--story-ink) !important; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }

.sc-story-principles { border-top: 1px solid var(--story-line); }
.sc-story-principles article { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 30px; padding: 36px 0; border-bottom: 1px solid var(--story-line); align-items: baseline; }
.sc-story-principles article > span { color: #b28f76; font-family: var(--sc-font-heading, Georgia, serif); font-size: 30px; }
.sc-story-principles article > div { display: grid; grid-template-columns: minmax(240px, .8fr) minmax(0, 1.2fr); gap: clamp(30px, 7vw, 110px); align-items: center; }
body#cms #content.sc-story-cms .sc-story-principles h3 { font-size: clamp(27px, 2.3vw, 38px); line-height: 1.08; }

.sc-story-cta { display: flex; align-items: center; justify-content: space-between; gap: 45px; }
.sc-story-button { display: inline-flex; min-height: 54px; padding: 0 30px; border: 1px solid var(--story-ink); border-radius: 999px; align-items: center; justify-content: center; background: var(--story-ink); color: #fff !important; font-size: 13px; font-weight: 600; letter-spacing: .04em; transition: background .2s ease, color .2s ease; }
.sc-story-button:hover { background: #51382d; color: #fff !important; }

.sc-story-visit { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(60px, 10vw, 170px); align-items: center; border-top: 1px solid var(--story-line); }
.sc-story-visit address { margin-top: 38px; color: var(--story-text); font-size: clamp(19px, 1.6vw, 25px); font-style: normal; line-height: 1.65; }
.sc-story-visit__address > p:last-child { margin-top: 24px; line-height: 1.8; }
.sc-story-visit__address a { border-bottom: 1px solid var(--story-line); }
.sc-story-visit__services article { display: grid; grid-template-columns: 55px minmax(0, .7fr) minmax(0, 1fr); gap: 26px; padding: 30px 0; border-bottom: 1px solid var(--story-line); align-items: center; }
.sc-story-visit__services article:first-child { border-top: 1px solid var(--story-line); }
.sc-story-visit__services span { color: #b28f76; font-family: var(--sc-font-heading, Georgia, serif); font-size: 24px; }
body#cms #content.sc-story-cms .sc-story-visit__services h3 { font-size: 27px; line-height: 1.08; }

.sc-story-founder { display: grid; grid-template-columns: 1.22fr .78fr; gap: clamp(55px, 10vw, 165px); align-items: center; }
.sc-story-founder h2 { margin-bottom: 40px; }
.sc-story-founder aside { padding: clamp(40px, 5vw, 80px); border-left: 1px solid #b28f76; background: #fff; }
.sc-story-founder aside p { color: var(--story-ink); font-family: var(--sc-font-heading, Georgia, serif); font-size: clamp(30px, 3vw, 46px); font-weight: 400; line-height: 1.18; }

.sc-story-journal { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: clamp(48px, 8vw, 120px); align-items: center; border-top: 1px solid var(--story-line); }
.sc-story-journal--reverse { grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); }
.sc-story-journal--reverse .sc-story-journal__media { order: 2; }
.sc-story-journal__media { position: relative; min-height: clamp(380px, 40vw, 620px); overflow: hidden; background: transparent; }
.sc-story-journal__media img { width: 100%; height: 100%; position: absolute; inset: 0; display: block; object-fit: cover; }
.sc-story-journal__media--portrait img { object-position: center 18%; }
.sc-story-journal__media figcaption { position: absolute; right: 18px; bottom: 16px; left: 18px; padding: 10px 13px; background: rgba(253, 252, 249, .9); color: #6b625d; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.sc-story-journal__copy > p:not(.sc-story-eyebrow) { margin-top: 22px !important; color: #5f5955; font-size: clamp(16px, 1.15vw, 19px); line-height: 1.85; }
.sc-story-journal__copy { width: 100%; max-width: none; }

.sc-story-values { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--story-line); border-left: 1px solid var(--story-line); }
.sc-story-values article { min-height: 330px; padding: clamp(35px, 5vw, 70px); border-right: 1px solid var(--story-line); border-bottom: 1px solid var(--story-line); display: flex; flex-direction: column; }
body#cms #content.sc-story-cms .sc-story-values h3 { max-width: 14ch; margin: 27px 0 35px; font-size: clamp(31px, 2.8vw, 43px); line-height: 1.05; }
.sc-story-values article > p:last-child { max-width: 520px; margin-top: auto; }

.sc-story-next { padding: clamp(70px, 8vw, 120px) clamp(5%, 6vw, 120px); }
.sc-story-next > a { margin-top: 20px; padding: 20px 0 16px; border-top: 1px solid var(--story-line); border-bottom: 1px solid var(--story-line); display: flex; justify-content: space-between; align-items: center; gap: 24px; color: var(--story-ink) !important; font-family: var(--sc-font-heading, Georgia, serif); font-size: clamp(24px, 2.2vw, 34px); font-weight: 400; line-height: 1.15; }
.sc-story-next > a span:last-child { transition: transform .25s ease; }
.sc-story-next > a:hover span:last-child { transform: translateX(10px); }

/* Notre histoire — composition éditoriale contenue.
   Les autres pages de la Maison conservent leur propre mise en page. */
.sc-story--history {
  padding-bottom: clamp(28px, 4vw, 64px);
  background: #fcfaf7;
}

.sc-story--history .sc-story-nav {
  background: #fff;
}

.sc-story--history .sc-story-hero {
  width: min(calc(100% - 64px), 1540px);
  min-height: 0;
  margin: clamp(24px, 3vw, 48px) auto 0;
  padding: clamp(52px, 5vw, 82px);
  grid-template-columns: minmax(300px, .76fr) minmax(0, 1.24fr);
  gap: clamp(52px, 6vw, 104px);
  background: #f5eee8 !important;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--history .sc-story-hero__copy {
  max-width: 520px;
  padding: 18px 0;
}

body#cms #content.sc-story-cms .sc-story--history .sc-story-hero h1 {
  max-width: 8ch;
  font-size: clamp(54px, 5.4vw, 88px);
  line-height: .92;
}

.sc-story--history .sc-story-hero__lead {
  max-width: 39ch;
  margin-top: clamp(30px, 3vw, 46px) !important;
  font-size: clamp(16px, 1.15vw, 19px);
  line-height: 1.72;
}

.sc-story--history .sc-story-hero__signature {
  right: -3%;
  bottom: -4%;
  font-size: clamp(110px, 12vw, 190px);
}

.sc-story--history .sc-story-hero__media {
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  border-radius: clamp(20px, 2vw, 30px);
  box-shadow: 0 24px 70px rgba(74, 49, 38, .11);
}

.sc-story--history .sc-story-hero__media img {
  min-height: 0;
  object-position: center;
}

.sc-story--history .sc-story-section,
.sc-story--history .sc-story-next {
  width: min(calc(100% - 64px), 1320px);
}

.sc-story--history .sc-story-section {
  padding: clamp(76px, 8vw, 118px) 0;
}

.sc-story--history .sc-story-intro {
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
  gap: clamp(60px, 9vw, 136px);
}

.sc-story--history .sc-story-intro > div:first-child {
  align-self: start;
}

body#cms #content.sc-story-cms .sc-story--history .sc-story-intro h2 {
  max-width: 10ch;
}

.sc-story--history .sc-story-prose {
  max-width: 680px;
  padding-top: 28px;
}

.sc-story--history .sc-story-prose p,
.sc-story--history .sc-story-journal__copy > p:not(.sc-story-eyebrow) {
  font-size: clamp(16px, 1.05vw, 18px);
  line-height: 1.82;
}

.sc-story--history .sc-story-journal {
  width: min(calc(100% - 64px), 1400px);
  padding-right: clamp(24px, 4vw, 68px);
  padding-left: clamp(24px, 4vw, 68px);
  grid-template-columns: minmax(320px, .84fr) minmax(0, 1.16fr);
  gap: clamp(60px, 8vw, 124px);
  background: #fff;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--history .sc-story-journal__media {
  width: min(100%, 520px);
  min-height: 0;
  aspect-ratio: 2 / 3;
  margin: 0 auto;
  border-radius: clamp(20px, 2vw, 30px);
  box-shadow: 0 20px 60px rgba(74, 49, 38, .1);
}

.sc-story--history .sc-story-journal__media--portrait img {
  object-position: center 18%;
}

.sc-story--history .sc-story-journal__copy {
  max-width: 610px;
}

body#cms #content.sc-story-cms .sc-story--history .sc-story-journal h2 {
  max-width: 11ch;
  margin-top: 10px;
  word-spacing: normal;
  text-align: left !important;
  text-wrap: balance;
}

.sc-story--history .sc-story-journal__copy > h2 + p:not(.sc-story-eyebrow) {
  margin-top: 18px !important;
}

.sc-story--history .sc-story-timeline {
  padding-top: clamp(62px, 7vw, 100px);
  border-top: 0;
  gap: clamp(14px, 1.6vw, 24px);
}

.sc-story--history .sc-story-timeline article {
  min-width: 0;
  min-height: 370px;
  padding: clamp(28px, 3vw, 44px);
  display: flex;
  flex-direction: column;
  background: #f5eee8;
  border: 1px solid rgba(106, 75, 59, .11);
  border-radius: clamp(20px, 1.8vw, 28px);
}

.sc-story--history .sc-story-timeline article > span {
  margin-bottom: clamp(38px, 5vw, 72px);
  font-size: 34px;
}

.sc-story--history .sc-story-timeline article > p:last-child {
  margin-top: auto !important;
}

.sc-story--history .sc-story-quote {
  width: min(calc(100% - 64px), 1400px);
  padding: clamp(64px, 7vw, 106px) clamp(34px, 7vw, 112px);
  background: var(--story-ink);
  border: 0;
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--history .sc-story-quote > p {
  max-width: 1050px;
  color: #fffaf5;
  font-size: clamp(28px, 2.4vw, 42px);
  line-height: 1.18;
}

.sc-story--history .sc-story-quote .sc-story-text-link {
  color: #fffaf5 !important;
  border-bottom-color: rgba(255, 250, 245, .62);
}

.sc-story--history .sc-story-next {
  padding: clamp(70px, 7vw, 104px) 0 clamp(26px, 3vw, 48px);
}

@media (max-width: 991px) {
  .sc-story--history .sc-story-hero {
    width: min(calc(100% - 40px), 760px);
    padding: clamp(36px, 7vw, 60px);
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .sc-story--history .sc-story-hero__copy {
    max-width: 620px;
  }

  .sc-story--history .sc-story-hero__media {
    height: auto;
    max-height: none;
    aspect-ratio: 3 / 2;
  }

  .sc-story--history .sc-story-section,
  .sc-story--history .sc-story-next,
  .sc-story--history .sc-story-journal,
  .sc-story--history .sc-story-quote {
    width: min(calc(100% - 48px), 760px);
  }

  .sc-story--history .sc-story-journal {
    padding: clamp(42px, 7vw, 64px);
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .sc-story--history .sc-story-journal__media {
    width: min(100%, 540px);
    margin: 0 auto;
  }

  .sc-story--history .sc-story-journal__copy {
    max-width: 620px;
    margin: 0 auto;
  }
}

@media (max-width: 767px) {
  .sc-story--history {
    padding-bottom: 24px;
  }

  .sc-story--history .sc-story-hero {
    width: calc(100% - 24px);
    margin-top: 16px;
    padding: 34px 22px 22px;
    gap: 30px;
    border-radius: 24px;
  }

  body#cms #content.sc-story-cms .sc-story--history .sc-story-hero h1 {
    max-width: none;
    font-size: clamp(47px, 14vw, 62px);
  }

  .sc-story--history .sc-story-hero__signature {
    right: 0;
    bottom: -2%;
    font-size: 112px;
  }

  .sc-story--history .sc-story-hero__media {
    aspect-ratio: 4 / 3;
    border-radius: 18px;
  }

  .sc-story--history .sc-story-section,
  .sc-story--history .sc-story-next,
  .sc-story--history .sc-story-journal,
  .sc-story--history .sc-story-quote {
    width: calc(100% - 32px);
  }

  .sc-story--history .sc-story-section {
    padding: 64px 0;
  }

  .sc-story--history .sc-story-intro {
    gap: 34px;
  }

  .sc-story--history .sc-story-journal {
    padding: 20px 20px 48px;
    gap: 42px;
    border-radius: 24px;
  }

  .sc-story--history .sc-story-journal__media {
    width: 100%;
    border-radius: 18px;
  }

  .sc-story--history .sc-story-timeline {
    gap: 14px;
    padding-top: 54px;
  }

  .sc-story--history .sc-story-timeline article {
    min-height: 0;
    padding: 28px;
    border-bottom: 1px solid rgba(106, 75, 59, .11);
  }

  .sc-story--history .sc-story-timeline article > span {
    margin-bottom: 32px;
  }

  .sc-story--history .sc-story-timeline article > p:last-child {
    margin-top: 24px !important;
  }

  .sc-story--history .sc-story-quote {
    padding: 54px 28px;
    border-radius: 24px;
    text-align: left;
  }

  .sc-story--history .sc-story-next {
    padding: 64px 0 24px;
  }
}

@media (max-width: 991px) {
  .sc-story-nav { align-items: flex-start; padding: 18px 0; }
  .sc-story-nav__label { padding-top: 7px; }
  .sc-story-nav__links { max-width: 75%; overflow-x: auto; scrollbar-width: none; }
  .sc-story-nav__links::-webkit-scrollbar { display: none; }
  .sc-story-nav__links a { flex: 0 0 auto; padding: 7px 0 12px; }
  .sc-story-hero { grid-template-columns: 1fr; }
  .sc-story-hero__copy { min-height: 0; }
  .sc-story-hero__media { height: clamp(430px, 68vw, 620px); min-height: 0; max-height: 680px; }
  .sc-story-intro, .sc-story-visit, .sc-story-founder, .sc-story-journal, .sc-story-journal--reverse { grid-template-columns: 1fr; }
  .sc-story-journal--reverse .sc-story-journal__media { order: 0; }
  .sc-story-intro { gap: 45px; }
  .sc-story-principles article > div { grid-template-columns: 1fr; gap: 12px; }
  .sc-story-visit__services article { grid-template-columns: 45px 1fr; }
  .sc-story-visit__services p { grid-column: 2; }
}

@media (max-width: 767px) {
  body#cms:is(.cms-id-48, .cms-id-49, .cms-id-50, .cms-id-51, .cms-id-52, .cms-id-53, .cms-id-54) #wrapper > .container > .breadcrumb {
    width: calc(100% - 30px) !important;
    max-width: calc(100% - 30px);
    margin: 14px 15px 28px !important;
  }

  .sc-story-nav { width: 100%; display: block; padding-right: 5%; padding-left: 5%; }
  .sc-story-nav__links { max-width: none; margin-top: 13px; gap: 22px; }
  .sc-story-hero { width: 100%; margin-top: 0; min-height: 0; padding: 34px 5% 52px; gap: 24px; }
  .sc-story-hero__copy { min-height: 0; padding: 34px 0; }
  body#cms #content.sc-story-cms .sc-story-hero h1 { margin-top: 18px; font-size: clamp(46px, 14vw, 62px); }
  .sc-story-hero__lead { margin-top: 30px !important; line-height: 1.65; }
  .sc-story-hero__media { height: 360px; min-height: 0; max-height: 480px; }
  .sc-story-section, .sc-story-next { width: 100%; }
  .sc-story-section { padding: 62px 5%; }
  body#cms #content.sc-story-cms .sc-story :is(.sc-story-intro, .sc-story-visit, .sc-story-founder, .sc-story-cta, .sc-story-journal) h2 { font-size: 37px; }
  .sc-story-timeline { grid-template-columns: 1fr; gap: 0; }
  .sc-story-timeline article { padding: 34px 0; border-bottom: 1px solid var(--story-line); }
  .sc-story-timeline article > span { margin-bottom: 25px; }
  .sc-story-quote { text-align: left; }
  .sc-story-quote > p { font-size: 34px; }
  .sc-story-principles article { grid-template-columns: 45px minmax(0, 1fr); gap: 16px; }
  body#cms #content.sc-story-cms .sc-story-principles h3 { font-size: 29px; }
  .sc-story-cta { align-items: flex-start; flex-direction: column; }
  .sc-story-button { width: 100%; }
  .sc-story-founder { gap: 42px; }
  .sc-story-founder aside { padding: 35px 28px; }
  .sc-story-values { grid-template-columns: 1fr; }
  .sc-story-values article { min-height: 300px; }
  .sc-story-next > a { font-size: 27px; }
}

@media (prefers-reduced-motion: reduce) {
  .sc-story * { scroll-behavior: auto !important; transition: none !important; }
}

/* Équipe administrable — la grille se calibre selon le nombre de profils. */
.sc-story-team { border-top:1px solid var(--story-line); }
.sc-story-team__header { display:grid; grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr); gap:clamp(35px,7vw,110px); align-items:end; margin-bottom:clamp(36px,5vw,72px); }
body#cms #content.sc-story-cms .sc-story-team__header h2 { font-size:clamp(36px,3.4vw,56px); line-height:1.04; letter-spacing:-.025em; }
.sc-story-team__grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:clamp(22px,2.5vw,42px); }
.sc-story-team__grid[data-count="1"] { max-width:520px; margin-inline:auto; grid-template-columns:1fr; }
.sc-story-team__grid[data-count="2"] { max-width:1080px; margin-inline:auto; grid-template-columns:repeat(2,minmax(0,1fr)); }
.sc-story-team__grid[data-count="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sc-story-team__grid[data-count="4"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.sc-story-team-card { min-width:0; overflow:hidden; border:1px solid var(--story-line); border-radius:clamp(18px,2vw,28px); background:#fff; }
.sc-story-team-card__media { display:grid; width:100%; aspect-ratio:4/5; overflow:hidden; place-items:center; background:#f4ede7; }
.sc-story-team-card__media img { display:block; width:100%; height:100%; object-fit:cover; }
.sc-story-team-card__media > span { color:rgba(106,75,59,.18); font-family:var(--sc-font-heading,Georgia,serif); font-size:clamp(70px,8vw,130px); }
.sc-story-team-card__body { padding:clamp(24px,2.5vw,38px); }
body#cms #content.sc-story-cms .sc-story-team-card h3 { margin-top:12px; font-size:clamp(29px,2.2vw,38px); line-height:1.05; }
.sc-story-team-card__body > p:last-child:not(.sc-story-eyebrow) { margin-top:20px!important; color:var(--story-muted); font-size:15px; line-height:1.75; }
@media(max-width:991px){.sc-story-team__grid[data-count="3"],.sc-story-team__grid[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.sc-story-team__header{grid-template-columns:1fr;gap:12px}.sc-story-team__grid,.sc-story-team__grid[data-count]{grid-template-columns:1fr;max-width:520px;margin-inline:auto}}

/* Pages 51 à 54 — collection éditoriale de la Maison. */
.sc-story--maison-detail {
  padding-bottom: clamp(28px, 4vw, 64px);
  background: #fcfaf7;
}

.sc-story--maison-detail .sc-story-nav {
  background: #fff;
}

body#cms #content.sc-story-cms .sc-story--maison-detail :is(h1, h2, h3) {
  word-spacing: normal !important;
  text-align: left !important;
  text-wrap: balance;
  white-space: normal;
}

.sc-story--maison-detail .sc-story-hero {
  width: min(calc(100% - 64px), 1540px);
  min-height: 0;
  margin: clamp(24px, 3vw, 48px) auto 0;
  padding: clamp(52px, 5vw, 82px);
  grid-template-columns: minmax(300px, .76fr) minmax(0, 1.24fr);
  gap: clamp(52px, 6vw, 104px);
  background: #f5eee8 !important;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--maison-detail .sc-story-hero__copy {
  max-width: 540px;
  padding: 18px 0;
}

body#cms #content.sc-story-cms .sc-story--maison-detail .sc-story-hero h1 {
  max-width: 9ch;
  font-size: clamp(52px, 5vw, 84px);
  line-height: .93;
}

.sc-story--maison-detail .sc-story-hero__lead {
  max-width: 40ch;
  margin-top: clamp(30px, 3vw, 46px) !important;
  font-size: clamp(16px, 1.15vw, 19px);
  line-height: 1.72;
}

.sc-story--maison-detail .sc-story-hero__signature {
  right: -3%;
  bottom: -4%;
  font-size: clamp(110px, 12vw, 190px);
}

.sc-story--maison-detail .sc-story-hero__media {
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  border-radius: clamp(20px, 2vw, 30px);
  box-shadow: 0 24px 70px rgba(74, 49, 38, .11);
}

.sc-story--maison-detail .sc-story-hero__media img {
  min-height: 0;
  object-position: center;
}

.sc-story--maison-detail .sc-story-section,
.sc-story--maison-detail .sc-story-next {
  width: min(calc(100% - 64px), 1320px);
}

.sc-story--maison-detail .sc-story-section {
  padding: clamp(76px, 8vw, 118px) 0;
}

.sc-story--maison-detail .sc-story-intro {
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
  gap: clamp(60px, 9vw, 136px);
}

.sc-story--maison-detail .sc-story-intro > div:first-child {
  align-self: start;
}

body#cms #content.sc-story-cms .sc-story--maison-detail .sc-story-intro h2 {
  max-width: 11ch;
}

.sc-story--maison-detail .sc-story-prose {
  max-width: 680px;
  padding-top: 28px;
}

.sc-story--maison-detail .sc-story-prose p,
.sc-story--maison-detail .sc-story-journal__copy > p:not(.sc-story-eyebrow),
.sc-story--maison-detail .sc-story-founder > div > p {
  font-size: clamp(16px, 1.05vw, 18px);
  line-height: 1.82;
}

.sc-story--maison-detail .sc-story-journal {
  width: min(calc(100% - 64px), 1400px);
  padding: clamp(52px, 6vw, 88px);
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  gap: clamp(60px, 8vw, 124px);
  background: #fff;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--maison-detail .sc-story-journal--reverse {
  grid-template-columns: minmax(320px, .92fr) minmax(0, 1.08fr);
}

.sc-story--maison-detail .sc-story-journal__media {
  width: 100%;
  min-height: 0;
  aspect-ratio: 3 / 2;
  border-radius: clamp(20px, 2vw, 30px);
  box-shadow: 0 20px 60px rgba(74, 49, 38, .1);
}

.sc-story--maison-detail .sc-story-journal__copy {
  max-width: 600px;
}

.sc-story--maison-detail .sc-story-journal--no-media {
  display: block;
}

.sc-story--maison-detail .sc-story-journal--no-media .sc-story-journal__copy {
  max-width: 820px;
  margin-inline: auto;
}

body#cms #content.sc-story-cms .sc-story--maison-detail .sc-story-journal h2 {
  max-width: 12ch;
}

.sc-story--maison-detail .sc-story-principles {
  padding: clamp(24px, 4vw, 56px) clamp(28px, 5vw, 72px);
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--maison-detail .sc-story-principles article:last-child {
  border-bottom: 0;
}

.sc-story--maison-detail .sc-story-principles article > div {
  gap: clamp(28px, 5vw, 76px);
}

.sc-story--maison-detail .sc-story-cta {
  padding: clamp(46px, 6vw, 82px);
  background: #f5eee8;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(24px, 2.4vw, 38px);
}

body#cms #content.sc-story-cms .sc-story--maison-detail .sc-story-cta h2 {
  max-width: 15ch;
}

.sc-story--maison-detail .sc-story-visit {
  padding: clamp(52px, 7vw, 92px);
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: clamp(56px, 8vw, 112px);
  background: #fff;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--maison-detail .sc-story-founder {
  grid-template-columns: minmax(0, 1.12fr) minmax(300px, .88fr);
  gap: clamp(56px, 8vw, 116px);
}

.sc-story--maison-detail .sc-story-founder > div {
  max-width: 680px;
}

.sc-story--maison-detail .sc-story-founder aside {
  padding: clamp(40px, 5vw, 68px);
  background: #f5eee8;
  border: 1px solid rgba(106, 75, 59, .12);
  border-left: 3px solid #b28f76;
  border-radius: 0 clamp(22px, 2vw, 30px) clamp(22px, 2vw, 30px) 0;
}

.sc-story--maison-detail .sc-story-team {
  padding-top: clamp(72px, 8vw, 112px);
  border-top: 1px solid var(--story-line);
}

.sc-story--maison-detail .sc-story-team-card {
  box-shadow: 0 18px 55px rgba(74, 49, 38, .055);
}

.sc-story--maison-detail .sc-story-values {
  padding: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(14px, 1.6vw, 24px);
  background: transparent;
  border: 0;
}

.sc-story--maison-detail .sc-story-values article {
  min-height: 350px;
  padding: clamp(34px, 4vw, 56px);
  background: #fff;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(20px, 1.8vw, 28px);
  box-shadow: 0 18px 55px rgba(74, 49, 38, .04);
}

.sc-story--maison-detail .sc-story-quote {
  width: min(calc(100% - 64px), 1400px);
  padding: clamp(64px, 7vw, 106px) clamp(34px, 7vw, 112px);
  background: var(--story-ink);
  border: 0;
  border-radius: clamp(24px, 2.4vw, 38px);
}

.sc-story--maison-detail .sc-story-quote > p {
  max-width: 1050px;
  color: #fffaf5;
  font-size: clamp(34px, 3.4vw, 54px);
}

.sc-story--maison-detail .sc-story-quote .sc-story-text-link {
  color: #fffaf5 !important;
  border-bottom-color: rgba(255, 250, 245, .62);
}

.sc-story--maison-detail .sc-story-next {
  padding: clamp(70px, 7vw, 104px) 0 clamp(26px, 3vw, 48px);
}

/* Les pages Boutique et Équipe utilisent des visuels verticaux. */
.sc-story--page-52 .sc-story-hero,
.sc-story--page-53 .sc-story-hero {
  grid-template-columns: minmax(0, 1.1fr) minmax(340px, .72fr);
}

.sc-story--page-52 .sc-story-hero__media,
.sc-story--page-53 .sc-story-hero__media {
  width: min(100%, 560px);
  aspect-ratio: 4 / 5;
  justify-self: end;
}

/* Notre équipe : bandeau d'introduction horizontal et portrait avec la fondatrice. */
.sc-story--page-53 .sc-story-hero.sc-story-hero--horizontal {
  padding: clamp(42px, 5vw, 72px) clamp(48px, 6vw, 96px);
  grid-template-columns: minmax(0, 1fr);
}

.sc-story--page-53 .sc-story-hero--horizontal .sc-story-hero__copy {
  width: 100%;
  max-width: none;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(360px, 1.28fr);
  grid-template-rows: auto auto;
  column-gap: clamp(60px, 9vw, 150px);
  align-items: end;
}

.sc-story--page-53 .sc-story-hero--horizontal .sc-story-eyebrow {
  grid-column: 1;
  grid-row: 1;
}

body#cms #content.sc-story-cms .sc-story--page-53 .sc-story-hero--horizontal h1 {
  grid-column: 1;
  grid-row: 2;
  max-width: none;
  margin-top: 12px;
}

.sc-story--page-53 .sc-story-hero--horizontal .sc-story-hero__lead {
  grid-column: 2;
  grid-row: 1 / 3;
  max-width: 680px;
  margin: 0 !important;
  align-self: end;
}

.sc-story--page-53 .sc-story-founder {
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .72fr);
  gap: clamp(56px, 8vw, 116px);
}

.sc-story--page-53 .sc-story-founder--no-media {
  display: block;
}

.sc-story--page-53 .sc-story-founder--no-media > div {
  max-width: 820px;
  margin-inline: auto;
}

.sc-story--page-53 .sc-story-founder__portrait {
  width: min(100%, 480px);
  aspect-ratio: 4 / 5;
  margin: 0;
  overflow: hidden;
  justify-self: end;
  background: #f4ede7;
  border: 1px solid rgba(106, 75, 59, .12);
  border-radius: clamp(20px, 2vw, 30px);
  box-shadow: 0 24px 70px rgba(74, 49, 38, .1);
}

.sc-story--page-53 .sc-story-founder__portrait img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
}

@media (max-width: 991px) {
  .sc-story--maison-detail .sc-story-hero {
    width: min(calc(100% - 40px), 760px);
    padding: clamp(36px, 7vw, 60px);
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .sc-story--maison-detail .sc-story-hero__copy {
    max-width: 620px;
  }

  .sc-story--maison-detail .sc-story-hero__media {
    height: auto;
    max-height: none;
    aspect-ratio: 3 / 2;
  }

  .sc-story--page-52 .sc-story-hero__media,
  .sc-story--page-53 .sc-story-hero__media {
    width: min(100%, 520px);
    aspect-ratio: 4 / 5;
    justify-self: center;
  }

  .sc-story--page-53 .sc-story-hero--horizontal .sc-story-hero__copy {
    grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
    column-gap: 48px;
  }

  .sc-story--page-53 .sc-story-founder__portrait {
    width: min(100%, 520px);
    justify-self: center;
  }

  .sc-story--maison-detail .sc-story-section,
  .sc-story--maison-detail .sc-story-next,
  .sc-story--maison-detail .sc-story-journal,
  .sc-story--maison-detail .sc-story-quote {
    width: min(calc(100% - 48px), 760px);
  }

  .sc-story--maison-detail .sc-story-journal,
  .sc-story--maison-detail .sc-story-journal--reverse {
    padding: clamp(42px, 7vw, 64px);
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .sc-story--maison-detail .sc-story-journal--reverse .sc-story-journal__media {
    order: 0;
  }

  .sc-story--maison-detail .sc-story-journal__copy {
    max-width: 620px;
  }

  .sc-story--maison-detail .sc-story-visit,
  .sc-story--maison-detail .sc-story-founder {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .sc-story--maison-detail {
    padding-bottom: 24px;
  }

  .sc-story--maison-detail .sc-story-hero {
    width: calc(100% - 24px);
    margin-top: 16px;
    padding: 34px 22px 22px;
    gap: 30px;
    border-radius: 24px;
  }

  .sc-story--page-53 .sc-story-hero.sc-story-hero--horizontal {
    padding: 34px 24px;
  }

  .sc-story--page-53 .sc-story-hero--horizontal .sc-story-hero__copy {
    display: flex;
    gap: 0;
  }

  .sc-story--page-53 .sc-story-hero--horizontal .sc-story-hero__lead {
    margin-top: 24px !important;
  }

  body#cms #content.sc-story-cms .sc-story--maison-detail .sc-story-hero h1 {
    max-width: none;
    font-size: clamp(45px, 13vw, 60px);
  }

  .sc-story--maison-detail .sc-story-hero__signature {
    right: 0;
    bottom: -2%;
    font-size: 112px;
  }

  .sc-story--maison-detail .sc-story-hero__media,
  .sc-story--page-52 .sc-story-hero__media,
  .sc-story--page-53 .sc-story-hero__media {
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 18px;
  }

  .sc-story--page-52 .sc-story-hero__media img,
  .sc-story--page-53 .sc-story-hero__media img {
    object-position: center 20%;
  }

  .sc-story--maison-detail .sc-story-section,
  .sc-story--maison-detail .sc-story-next,
  .sc-story--maison-detail .sc-story-journal,
  .sc-story--maison-detail .sc-story-quote {
    width: calc(100% - 32px);
  }

  .sc-story--maison-detail .sc-story-section {
    padding: 64px 0;
  }

  .sc-story--maison-detail .sc-story-intro {
    gap: 34px;
  }

  .sc-story--maison-detail .sc-story-journal {
    padding: 20px 20px 48px;
    gap: 42px;
    border-radius: 24px;
  }

  .sc-story--maison-detail .sc-story-journal__media {
    border-radius: 18px;
  }

  .sc-story--maison-detail .sc-story-principles {
    padding: 16px 24px;
    border-radius: 24px;
  }

  .sc-story--maison-detail .sc-story-principles article {
    padding: 30px 0;
  }

  .sc-story--maison-detail .sc-story-cta,
  .sc-story--maison-detail .sc-story-visit {
    padding: 40px 28px;
    border-radius: 24px;
  }

  .sc-story--maison-detail .sc-story-founder aside {
    border-radius: 0 22px 22px 0;
  }

  .sc-story--page-53 .sc-story-founder__portrait {
    width: 100%;
    border-radius: 22px;
  }

  .sc-story--maison-detail .sc-story-values {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .sc-story--maison-detail .sc-story-values article {
    min-height: 290px;
  }

  .sc-story--maison-detail .sc-story-quote {
    padding: 54px 28px;
    border-radius: 24px;
    text-align: left;
  }

  .sc-story--maison-detail .sc-story-next {
    padding: 64px 0 24px;
  }
}
