.hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:300px;
  padding:42px 38px 34px !important;
  border:1px solid rgba(16,42,39,.19) !important;
  background:linear-gradient(90deg,rgba(255,253,248,.98) 0 59%,rgba(255,253,248,.84) 72%,rgba(255,253,248,.28)),url('hero-ivory-marble.webp') center/cover !important;
}
.hero:after { content:''; position:absolute; z-index:0; right:-8%; bottom:-31%; width:49%; height:130%; background:url('intro-agate-corner.png') right bottom/contain no-repeat; opacity:.82; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.15) 14%,#000 36%); mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.15) 14%,#000 36%); }
.hero>.kicker,.hero>h1,.hero>.hero-actions { position:relative; z-index:2; max-width:57%; }
.hero h1 { max-width:780px; font-size:clamp(38px,5.3vw,61px) !important; margin:12px 0 18px !important; }
.hero-actions { margin-top:20px !important; }
body { background:linear-gradient(rgba(247,245,240,.91),rgba(247,245,240,.91)),url('hero-ivory-marble.webp') center top/1100px auto repeat !important; }
.chapter { border-color:#cec3ad !important; border-top:2px solid #173f36 !important; box-shadow:0 12px 34px rgba(35,48,41,.045); background:rgba(255,253,249,.93) !important; }
.chapter h2 { font-size:clamp(27px,3.2vw,36px) !important; }
.chapter h3 { font-size:22px !important; }
.part-heading h2 { font-size:clamp(25px,2.8vw,33px) !important; }
.summary-jump { background:linear-gradient(rgba(13,52,47,.91),rgba(13,52,47,.91)),url('hero-ivory-marble.webp') center/cover!important;border:1px solid #b5965d!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);letter-spacing:.04em; }
.summary-box{position:relative;overflow:hidden;background:#123b35!important;border:1px solid #a9874d!important;border-top:1px solid #a9874d!important}.summary-box:after{content:'';position:absolute;right:0;top:0;bottom:0;width:clamp(120px,31%,270px);height:100%;background:url('summary-agate-right.png') right center/100% 100% no-repeat;opacity:.78;pointer-events:none}.summary-box>h2,.summary-box>ul{position:relative;z-index:1}
.pdc-visual .pdc-height{text-align:center;margin:0 0 12px;color:#364740;font-size:15px;line-height:1.45}.pdc-visual .pdc-height strong{display:block;color:#173b35;font:600 clamp(20px,3vw,27px)/1.25 Georgia,serif}.pdc-visual .pdc-label{gap:18px;align-items:start}.pdc-visual .pdc-label>span:last-child{text-align:right}.pdc-visual .pdc-label strong{display:block;font-size:clamp(15px,2.2vw,20px);line-height:1.35;white-space:nowrap}.pdc-visual .pdc-label small{font-size:13px;line-height:1.5}.pdc-visual .pdc-units{margin:18px 0 0;color:#5c635d;font-size:13px;line-height:1.5;text-align:center}
@media(max-width:480px){.pdc-visual{padding:20px 16px}.pdc-visual .pdc-label{gap:10px}.pdc-visual .pdc-label strong{font-size:14px}.pdc-visual .pdc-label small{font-size:12px}}
.product-cta { background:#173f36 !important; }
.note { border-left-color:#b18b4a !important; background:linear-gradient(90deg,#edf2ed,#f4efe4) !important; }
.deficit-target { margin:26px 0 42px; padding:24px; border:1px solid #d9c8a8; background:#f8f2e7; }
.deficit-target-head { display:flex; justify-content:space-between; gap:20px; margin-bottom:15px; }
.deficit-target-head strong { font:24px Georgia,serif; }
.deficit-track { position:relative; height:12px; margin-bottom:26px; border-radius:20px; background:linear-gradient(90deg,#ddd5c8 0 20%,#b18b4a 20% 70%,#ddd5c8 70%); box-shadow:inset 0 0 0 1px rgba(23,22,20,.08); }
.deficit-track::before,.deficit-track::after { position:absolute; top:18px; color:var(--muted); font-size:11px; }
.deficit-track::before { content:'300 kcal'; left:20%; transform:translateX(-50%); }
.deficit-track::after { content:'500 kcal'; left:70%; transform:translateX(-50%); }
.day { position:relative; padding-top:38px !important; }
.day::before { content:''; position:absolute; left:16%; right:16%; bottom:34px; height:var(--bar,18px); background:linear-gradient(#c7a260,#89652f); opacity:.72; }
.day:nth-child(2) { --bar:25px; }.day:nth-child(3) { --bar:20px; }.day:nth-child(4) { --bar:28px; }.day:nth-child(5) { --bar:22px; }.day.weekend { --bar:34px; }
.portion-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:26px 0; }
.portion-step { padding:20px; border:1px solid var(--line); background:linear-gradient(145deg,#fff,#f5f0e7); }
.portion-step b { display:inline-grid; place-items:center; width:30px; height:30px; margin-bottom:14px; border-radius:50%; background:var(--ink); color:#fff; font-size:12px; }
.portion-step strong { display:block; font:20px Georgia,serif; }
.portion-step span { display:block; margin-top:6px; color:var(--muted); font-size:13px; line-height:1.45; }
.product-recommendations { margin-top:58px; }.product-recommendations>h2 { margin:0 0 8px; }.product-recommendations>p { margin:0 0 24px; color:var(--muted); }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.product-grid .product-pick { display:flex; flex-direction:column; margin:0; }
.product-grid .product-pick img { display:block; width:100%; height:auto!important; aspect-ratio:16/10; min-height:0!important; object-fit:cover; object-position:center; }
.product-grid .product-copy { display:flex; flex:1; flex-direction:column; padding:28px; }
.product-grid .product-copy h2 { margin:8px 0 10px; font-size:28px; }
.product-grid .product-copy p { margin:0 0 22px; color:var(--muted); font-size:15px; }
.product-grid .product-cta { align-self:flex-start; margin-top:auto; }
@media(max-width:700px) {
  .hero { padding:28px 24px; }
  .hero>.kicker,.hero>h1,.hero>.hero-actions { max-width:100%; }
  .hero:after { width:70%; height:60%; right:-24%; bottom:-22%; opacity:.5; }
  .portion-steps,.product-grid { grid-template-columns:1fr; }
  .product-grid .product-pick img { min-height:0; }
}

.summary-box{padding-right:clamp(145px,34%,290px)!important}
@media(max-width:650px){.summary-box{padding-right:clamp(108px,32%,180px)!important}.summary-box:after{width:clamp(100px,32%,180px)}}

.steps-figure{margin:36px 0 8px;padding:clamp(20px,4vw,38px);border:1px solid #d8d1c5;background:linear-gradient(145deg,#fffdf9,#f4f0e7);box-shadow:0 12px 32px rgba(23,63,54,.05)}
.steps-figure figcaption{display:grid;gap:4px;margin-bottom:16px}.steps-figure figcaption strong{font:clamp(20px,3vw,27px) Georgia,serif;color:#173f36}.steps-figure figcaption span,.steps-figure .steps-note{font-size:13px;line-height:1.5;color:#625c53}
.steps-figure svg{display:block;width:100%;height:auto;overflow:visible}.steps-axis{fill:none;stroke:#bfb7a9;stroke-width:1.5}.steps-grid{fill:none;stroke:#dcd6ca;stroke-width:1;stroke-dasharray:3 5}.steps-guide{fill:none;stroke:#b18b4a;stroke-width:1.5;stroke-dasharray:5 6}.steps-fill{fill:#1d6454;opacity:.1}.steps-line{fill:none;stroke:#176356;stroke-width:5;stroke-linecap:round}.steps-dot{fill:#b18b4a;stroke:#fffdf9;stroke-width:3}.steps-label{fill:#89652f;font:bold 17px Georgia,serif}.steps-tick{fill:#625c53;font:13px Arial,sans-serif}.steps-figure .steps-note{margin:12px 0 0}

/* La photographie du guide est réfléchie horizontalement, sans inverser le texte. */
.hero{background:#faf8f2!important}
.hero:before{content:'';position:absolute;z-index:0;inset:0;background:url('weight-statue-marble.png') center/cover no-repeat;transform:scaleX(-1);pointer-events:none}
.hero:after{content:'';position:absolute;z-index:1;inset:0;width:auto;height:auto;background:linear-gradient(90deg,rgba(255,253,248,.97) 0%,rgba(255,253,248,.84) 44%,rgba(255,253,248,.08) 75%);opacity:1;mask-image:none;-webkit-mask-image:none;pointer-events:none}
@media(max-width:700px){.hero:before{background-position:center}.hero:after{background:linear-gradient(90deg,rgba(255,253,248,.96),rgba(255,253,248,.64))}}

/* Le visuel complet remplace le montage précédent de l'en-tête. */
.hero{background:url('weight-guide-banner-marble.png') center/cover no-repeat!important}
.hero:before,.hero:after{display:none!important}
@media(max-width:700px){.hero{background:linear-gradient(90deg,rgba(255,253,248,.96),rgba(255,253,248,.6)),url('weight-guide-banner-marble.png') 63% center/cover no-repeat!important}}

.chapter p,.part-heading p{text-align:justify;hyphens:auto;text-justify:inter-word}
