:root{--paper:#fbf7ec;--cream:#f2ead6;--ink:#33291c;--soft:#6a5c48;--rule:#e0d4b8;
 --red:#8d2b23;--red-d:#6f201a;--gold:#c2933a;--gold-d:#a97f2c;--green:#5f7a42}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'PT Serif',Georgia,serif;color:var(--ink);background:var(--paper);font-size:18px;line-height:1.75}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.16;color:var(--red-d)}
a{color:inherit}
.btn{display:inline-block;background:var(--red);color:#fff!important;text-decoration:none;
 font-family:Oswald,sans-serif;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
 padding:20px 42px;border-radius:6px;font-size:20px;box-shadow:0 6px 0 var(--red-d)}
.btn:active{transform:translateY(3px);box-shadow:0 3px 0 var(--red-d)}
.btn.big{font-size:24px;padding:24px 54px}
.small{font-size:15px;color:var(--soft)}
.center{text-align:center}
hr.orn{border:0;height:1px;background:var(--rule);margin:52px 0;position:relative}
hr.orn:after{content:"\2756";position:absolute;top:-15px;left:50%;transform:translateX(-50%);
 background:var(--paper);color:var(--gold);padding:0 14px;font-size:20px}


.topbars{position:sticky;top:0;z-index:60}
.bar1{background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;
 gap:14px;padding:11px 16px;font-family:Oswald,sans-serif;font-weight:600;letter-spacing:.05em;
 text-transform:uppercase;font-size:15px;text-align:center;flex-wrap:wrap}
.bar2{background:#2c5530;color:#fff;overflow:hidden;padding:8px 0}
.bar2 .tape{display:flex;width:max-content;animation:slide 40s linear infinite}
.bar2:hover .tape,.bar2:focus-within .tape{animation-play-state:paused}
.bar2 .grp{display:flex;flex-shrink:0}
.bar2 .it{font-family:Oswald,sans-serif;font-weight:500;font-size:14px;letter-spacing:.06em;white-space:nowrap;padding:0 30px}
.bar2 .it i{font-style:normal;color:#f0b429;margin-right:8px;font-weight:600}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.bar2 .tape{animation:none}}
.pains{display:grid;grid-template-columns:1fr 1fr;gap:14px 34px;margin:30px 0 26px}
.pains li{list-style:none;display:flex;gap:14px;align-items:flex-start;font-size:19px;line-height:1.5}
.pains li b{flex:0 0 26px;height:26px;margin-top:3px;border-radius:50%;background:#f0e0da;color:var(--red);text-align:center;line-height:26px;font-size:17px;font-weight:700}
.punch{font-family:'Playfair Display',serif;font-weight:700;font-size:26px;line-height:1.35;color:var(--red-d);border-left:5px solid var(--gold);padding-left:20px;margin:6px 0 0}
.ap{width:100%;border-collapse:collapse;margin:30px 0 0;font-size:18px}
.ap th{font-family:Oswald,sans-serif;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:13px;padding:0 0 12px;text-align:left;color:var(--soft)}
.ap th.a{color:#8a7a62} .ap th.b{color:#4a6030}
.ap td{padding:14px 0;border-top:1px dotted var(--rule);vertical-align:top;line-height:1.45;width:50%}
.ap td.a{color:#7b6a52;padding-right:26px}
.ap td.b{color:var(--ink);font-weight:700;padding-left:26px;border-left:1px solid var(--rule)}
.ap td.b i{font-style:normal;color:var(--green);margin-right:9px;font-weight:700}
@media(max-width:720px){
 .bar1{font-size:13px;gap:9px;padding:9px 12px}
 .bar2 .it{font-size:12.5px;padding:0 20px}
 .pains{grid-template-columns:1fr}
 .ap td,.ap th{display:block;width:100%}
 .ap td.b{border-left:0;padding-left:0;border-top:0}
 .ap td.a{padding-right:0;padding-bottom:4px}
}

/* HERO */
header{background:#1a140e;color:#f4efe4;padding:56px 0 64px}
header h1{color:#f4efe4;font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:64px;letter-spacing:.005em;line-height:.95}
header h1 span{color:var(--gold);display:block;font-size:44px;margin-top:8px}
header .eyebrow{font-family:Oswald,sans-serif;font-weight:600;letter-spacing:.26em;text-transform:uppercase;
 color:#ecdcb6;font-size:15px;margin-bottom:18px}
header .lead{font-size:22px;color:#e8ddc6;margin:22px 0 30px;max-width:620px}
.hero{display:flex;gap:46px;align-items:center;flex-wrap:wrap}
.hero .txt{flex:1 1 420px}
.hero .pic{flex:0 0 330px;text-align:center}
.hero .pic img{width:100%;max-width:330px;border-radius:4px;box-shadow:0 26px 60px rgba(0,0,0,.55)}
.trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:26px;font-family:Oswald,sans-serif;
 font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#c9b891}

/* SECTIONS */
section{padding:60px 0}
section h2{font-size:40px;margin-bottom:10px}
section .kicker{font-family:Oswald,sans-serif;letter-spacing:.24em;text-transform:uppercase;
 color:var(--gold-d);font-size:14px;font-weight:600;margin-bottom:12px}
section p.intro{font-size:20px;color:#4a3d2c;max-width:760px;margin-bottom:12px}

.figs{display:flex;gap:18px;flex-wrap:wrap;margin:34px 0 0}
.fig{flex:1 1 150px;background:var(--cream);border:1px solid var(--rule);border-radius:8px;padding:24px 18px;text-align:center}
.fig b{display:block;font-family:Anton,sans-serif;font-size:46px;color:var(--red);line-height:1}
.fig span{display:block;font-family:Oswald,sans-serif;font-size:13px;letter-spacing:.14em;
 text-transform:uppercase;color:var(--soft);margin-top:8px}

.parts{margin-top:30px}
.part{display:flex;gap:20px;padding:20px 0;border-bottom:1px dotted var(--rule)}
.part .n{flex:0 0 76px;font-family:'Playfair Display',serif;font-weight:900;font-size:30px;color:var(--gold-d)}
.part h3{font-size:23px;margin-bottom:4px}
.part p{color:#4a3d2c;font-size:17px}

.annexes{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}
.annexe{flex:1 1 230px;background:#fff;border:1px solid var(--rule);border-left:5px solid var(--gold);
 border-radius:6px;padding:22px}
.annexe h3{font-size:19px;margin-bottom:6px}
.annexe p{font-size:16px;color:#4a3d2c}

 .bonus{margin-top:32px;display:flex;flex-direction:column;gap:18px}
.bon{display:flex;gap:22px;align-items:center;background:#fff;border:1px solid var(--rule);
 border-left:5px solid var(--gold);border-radius:8px;padding:18px 22px}
.bon img{flex:0 0 120px;width:120px;border-radius:4px;box-shadow:0 8px 22px rgba(0,0,0,.30)}
.bon .bnum{font-family:Oswald,sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-d)}
.bon h3{font-size:21px;margin:4px 0 6px}
.bon p{font-size:16px;color:#4a3d2c}
@media(max-width:720px){.bon{flex-direction:column;align-items:flex-start}.bon img{width:150px;flex:0 0 auto}}
.bio{display:flex;gap:36px;align-items:flex-start;flex-wrap:wrap;background:var(--cream);
 border:1px solid var(--rule);border-radius:10px;padding:34px}
.bio img{flex:0 0 210px;width:210px;border-radius:6px}
.bio .t{flex:1 1 360px}

.quotes{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px}
.q{flex:1 1 280px;background:#fff;border:1px dashed var(--rule);border-radius:8px;padding:22px}
.q .stars{color:var(--gold);letter-spacing:.18em;margin-bottom:8px}
.q em{color:var(--soft);font-size:15px}


/* LISTE DE VALEUR */
.offtag{display:inline-block;background:var(--cream);color:var(--red-d);font-family:Oswald,sans-serif;
 font-weight:600;letter-spacing:.22em;text-transform:uppercase;font-size:13px;
 padding:7px 18px;border-radius:4px;margin-bottom:26px}
.valeur{max-width:620px;margin:0 auto 26px;text-align:left}
.valeur .vr{display:flex;align-items:baseline;gap:10px;padding:11px 0;
 border-bottom:1px dotted rgba(240,200,96,.34)}
.valeur .vr .vl{flex:1;color:#f0e8d6;font-size:17px;line-height:1.35}
.valeur .vr .vl b{color:#fff}
.valeur .vr .vp{font-family:Oswald,sans-serif;font-size:16px;color:#b9a887;
 text-decoration:line-through;text-decoration-thickness:2px;white-space:nowrap;
 font-variant-numeric:tabular-nums}
.valeur .vr .vo{font-family:Oswald,sans-serif;font-weight:600;font-size:15px;letter-spacing:.06em;
 text-transform:uppercase;color:var(--gold);white-space:nowrap;min-width:74px;text-align:right}
.valeur .vt{display:flex;align-items:baseline;gap:10px;padding:15px 0 0;border-bottom:0}
.valeur .vt .vl{flex:1;font-family:'Playfair Display',serif;font-weight:700;font-size:21px;color:#fff}
.valeur .vt .vp{font-family:Oswald,sans-serif;font-size:21px;color:#cdbb96;
 text-decoration:line-through;text-decoration-thickness:3px;font-variant-numeric:tabular-nums}
.prix{display:flex;align-items:baseline;justify-content:center;gap:16px;margin:6px 0 2px}
.prix .now{font-family:Anton,Impact,sans-serif;font-size:92px;color:var(--gold);line-height:1}
.prix .now small{font-size:38px}
.prix .was{font-family:Oswald,sans-serif;font-size:34px;color:#b9a887;
 text-decoration:line-through;text-decoration-thickness:3px}
.econ{font-family:Oswald,sans-serif;font-weight:600;font-size:19px;letter-spacing:.03em;
 color:#f3d79a;margin:2px 0 22px}
.bonprix{margin-top:8px;font-family:Oswald,sans-serif;font-size:14px;letter-spacing:.05em;
 text-transform:uppercase}
.bonprix s{color:#9c8c72;text-decoration-thickness:2px;margin-right:9px}
.bonprix em{font-style:normal;font-weight:600;color:var(--gold-d)}

/* OFFER */
.offer{background:#1a140e;color:#f4efe4;border-radius:12px;padding:44px;text-align:center;margin-top:10px}
.offer h2{color:#f4efe4;font-size:38px}
.offer .price{font-family:Anton,sans-serif;font-size:96px;color:var(--gold);line-height:1;margin:16px 0 4px}
.offer .price small{font-size:34px}
.offer ul{list-style:none;margin:26px auto 30px;max-width:520px;text-align:left}
.offer li{padding:9px 0 9px 34px;position:relative;color:#e8ddc6}
.offer li:before{content:"\2713";position:absolute;left:0;color:var(--gold);font-weight:700}
.offer .after{color:#c9b891;font-size:15px;margin-top:16px;font-family:Oswald,sans-serif;letter-spacing:.08em;text-transform:uppercase}

/* FAQ */
details{border-bottom:1px solid var(--rule);padding:18px 0}
details summary{cursor:pointer;font-family:'Playfair Display',serif;font-weight:700;font-size:21px;color:var(--red-d);list-style:none}
details summary::-webkit-details-marker{display:none}
details summary:before{content:"+ ";color:var(--gold-d)}
details[open] summary:before{content:"\2212 "}
details p{margin-top:10px;color:#4a3d2c}

footer{background:var(--cream);border-top:1px solid var(--rule);padding:36px 0;color:var(--soft);font-size:15px}
@media(max-width:720px){
 header h1{font-size:42px} header h1 span{font-size:30px}
 section h2{font-size:30px} .offer .price{font-size:72px} .bio img{width:100%;flex:1 1 auto}
}

/* Responsive and accessibility enhancements: original identity and copy retained. */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}
body { overflow-wrap: break-word; }
img { display: block; height: auto; max-width: 100%; }
button { font: inherit; border: 0; cursor: pointer; }
.hero .txt, .hero .pic, .bio .t, .bon .bt, .valeur .vl { min-width: 0; }
.hero .pic { max-width: 100%; }
.hero picture { display: block; }
.bon picture { display: block; flex: 0 0 120px; width: 120px; }
.bio picture { display: block; flex: 0 0 210px; width: 210px; max-width: 100%; }
.bon picture img, .bio picture img { width: 100%; }
.hero .pic img { margin: 0 auto; }
.btn { max-width: 100%; text-align: center; line-height: 1.35; transition: background-color 150ms ease; }
.btn:hover { background: var(--red-d); }
.btn:disabled { cursor: not-allowed; opacity: 1; }
.btn:disabled:hover { background: var(--red); }
.btn:disabled:active { transform: none; box-shadow: 0 6px 0 var(--red-d); }
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 3px solid var(--gold-d);
  outline-offset: 6px;
}
.offer button:focus-visible, header a:focus-visible { outline-color: #f0c667; }
.skip-link {
  position: absolute; top: 12px; left: 12px; z-index: 100;
  padding: 12px 20px; background: var(--paper); color: var(--red-d);
  font-family: Oswald, sans-serif; transform: translateY(-160%);
}
.skip-link:focus { transform: translateY(0); }
/* A still, wrapping information strip avoids perpetual motion and hidden information. */
.bar2 .tape { width: 100%; animation: none; }
.bar2 .grp { width: 100%; flex-wrap: wrap; justify-content: center; }
.bar2 .grp[aria-hidden='true'] { display: none; }
.bar2 .it { padding: 0 16px; }
section .kicker, .bon .bnum { color: #886323; }
.bonprix em, .part .n { color: #886323; }
.checkout-note {
  color: #ecdcb6; font-family: 'PT Serif', Georgia, serif;
  font-size: 16px; line-height: 1.55; max-width: 520px;
  margin: 20px auto 0; padding: 14px 18px;
  border: 1px solid #8b7144; border-radius: 6px;
}
.checkout-note[hidden] { display: none; }
details { padding: 0; }
details summary { padding: 18px 6px 18px 0; min-height: 48px; }
details p { margin: 0 0 20px; }
.bio .t p + p { margin-top: 12px; }
#angebot { scroll-margin-top: 18px; }

@media (max-width: 900px) and (min-width: 721px) {
  .hero { gap: 34px; }
  .hero .txt { flex-basis: 350px; }
  .hero .pic { flex-basis: 280px; }
  header h1 span { font-size: 40px; }
  .btn.big { padding: 24px 34px; }
}

@media (max-width: 720px) {
  html { scroll-padding-top: 18px; }
  .topbars { position: relative; }
  .bar1 { line-height: 1.5; }
  .bar2 { padding: 9px 0; }
  .bar2 .grp { gap: 3px 0; }
  .bar2 .it { font-size: 11px; letter-spacing: .025em; padding: 0 8px; line-height: 1.7; }
  body { font-size: 17px; line-height: 1.7; }
  header { padding: 40px 0 48px; }
  .hero { flex-direction: column; gap: 36px; align-items: stretch; }
  .hero .txt, .hero .pic { flex: 0 1 auto; width: 100%; }
  .hero .pic { max-width: 275px; align-self: center; }
  header .eyebrow { font-size: 13px; letter-spacing: .2em; line-height: 1.65; margin-bottom: 22px; }
  header h1 { font-size: 54px; }
  header h1 span { font-size: clamp(30px, 8.8vw, 44px); margin-top: 10px; }
  header .lead { font-size: 20px; line-height: 1.65; margin: 24px 0 28px; }
  .btn.big { font-size: 20px; padding: 21px 16px; width: 100%; }
  .trust { gap: 10px 19px; font-size: 12px; letter-spacing: .06em; margin-top: 26px; }
  section { padding: 44px 0; }
  section h2 { font-size: 30px; line-height: 1.2; }
  section .kicker { font-size: 12px; letter-spacing: .19em; line-height: 1.6; }
  section p.intro { font-size: 18px; }
  .pains { gap: 18px; margin-top: 26px; }
  .pains li { font-size: 17px; gap: 12px; }
  .punch { font-size: 23px; padding-left: 16px; }
  /* Keep the native comparison table's column relationship on narrow screens. */
  .ap { font-size: 16px; table-layout: fixed; }
  .ap th, .ap td { display: table-cell; width: 50%; }
  .ap th { font-size: 12px; letter-spacing: .08em; }
  .ap td.a { padding: 14px 12px 14px 0; }
  .ap td.b { padding: 14px 0 14px 12px; border-left: 1px solid var(--rule); border-top: 1px dotted var(--rule); }
  .ap th.b { padding-left: 12px; }
  .part { gap: 14px; padding: 20px 0; }
  .part .n { flex-basis: 37px; font-size: 25px; }
  .part h3 { font-size: 22px; line-height: 1.25; }
  .part p { font-size: 16px; line-height: 1.65; }
  .figs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .fig { padding: 22px 10px; }
  .fig:last-child { grid-column: 1 / -1; }
  .fig span { font-size: 12px; letter-spacing: .1em; }
  .bon { padding: 22px; gap: 20px; }
  .bon picture { flex: 0 0 auto; width: 150px; align-self: center; }
  .bon .bt { width: 100%; }
  .bon h3 { line-height: 1.25; }
  .bio { padding: 24px; gap: 24px; }
  .bio picture { flex: 0 0 auto; width: 210px; margin: 0 auto; }
  .bio .t { flex: 0 0 auto; width: 100%; }
  .offer { padding: 30px 18px; }
  .offer h2 { font-size: 30px; }
  .offer .offtag { font-size: 12px; letter-spacing: .18em; }
  .valeur .vr { gap: 10px; align-items: flex-start; padding: 14px 0; }
  .valeur .vr .vl { font-size: 16px; }
  .valeur .vr .vo { font-size: 12px; min-width: 65px; line-height: 1.9; }
  .prix .now { font-size: 80px; }
  .econ { font-size: 16px; line-height: 1.6; }
  .offer .after { font-size: 12px; line-height: 1.65; letter-spacing: .055em; }
  .checkout-note { font-size: 14px; padding: 12px; }
  details summary { font-size: 20px; line-height: 1.35; }
  footer { padding: 30px 0; font-size: 14px; }
  footer .small { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .btn { transition: none; }
}
