:root {
  /* Palette issue de UI-UX-SPECIFICATION ; or sombre pour texte sur fond clair. */
  --ch-color-black:#0b0807; --ch-color-bordeaux:#4a0010; --ch-color-gold:#be923d;
  --ch-color-white:#fff; --ch-color-surface:#f8f8f7; --ch-color-text:#202020;
  --ch-color-muted:#555; --ch-color-border:#e2deda; --ch-color-gold-text:#88621e;
  --ch-color-orange:#b95500; --ch-color-violet:#852581; --ch-color-whatsapp:#22c55e;
  --ch-color-on-gold:#211707; --ch-color-on-dark:#f7f2eb;
  --ch-overlay:rgba(0,0,0,.62); --ch-overlay-bordeaux:rgba(35,0,7,.88);
  /* Fallbacks système, non présentés comme polices originales. */
  --ch-font-heading:Georgia,"Times New Roman",serif; --ch-font-body:Arial,Helvetica,sans-serif;
  --ch-container:1280px; --ch-section-spacing:clamp(2rem,5vw,4rem);
  --ch-space-1:.25rem; --ch-space-2:.5rem; --ch-space-3:.75rem; --ch-space-4:1rem;
  --ch-space-6:1.5rem; --ch-space-8:2rem; --ch-space-12:3rem; --ch-space-16:4rem;
  --ch-radius-sm:4px; --ch-radius-md:8px; --ch-radius-lg:12px;
  --ch-shadow-sm:0 2px 8px rgb(0 0 0 / 8%); --ch-shadow-md:0 4px 16px rgb(0 0 0 / 12%);
  --ch-transition:160ms ease; --ch-header-height:76px;
}
*,*::before,*::after {box-sizing:border-box}
body {margin:0;background:var(--ch-color-surface);color:var(--ch-color-text);font:16px/1.6 var(--ch-font-body);overflow-wrap:anywhere}
h1,h2,h3,h4 {font-family:var(--ch-font-heading);font-weight:400;line-height:1.18;margin:0 0 1rem}
h1 {font-size:clamp(2rem,4.3vw,4rem)} h2 {font-size:clamp(1.65rem,3vw,2.25rem)}
h3 {font-size:1.5rem} h4 {font-size:1.25rem} p {margin:0 0 1rem}
a {color:var(--ch-color-bordeaux);text-underline-offset:.2em}
a:hover {text-decoration-thickness:2px}
img,video {max-width:100%;height:auto} iframe {max-width:100%}
button,input,select,textarea {font:inherit}
button,a,input,select,textarea,summary {touch-action:manipulation}
:focus-visible {outline:3px solid var(--ch-color-gold-text);outline-offset:4px}
.ch-dark :focus-visible,.site-header :focus-visible,.site-footer :focus-visible {outline-color:var(--ch-color-gold)}
[hidden] {display:none!important}
.ch-container {width:min(90%,var(--ch-container));margin-inline:auto}
.ch-section {padding-block:var(--ch-section-spacing)}
.ch-section--light {background:var(--ch-color-white)}
.ch-dark {background:var(--ch-color-black);color:var(--ch-color-on-dark)}
.ch-grid {display:grid;gap:var(--ch-space-6);grid-template-columns:repeat(var(--ch-columns,3),minmax(0,1fr))}
.ch-grid--2 {--ch-columns:2}.ch-grid--4 {--ch-columns:4}
.ch-stack > * + * {margin-top:var(--ch-space-6)}
.ch-eyebrow {font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ch-color-bordeaux)}
.ch-dark .ch-eyebrow {color:var(--ch-color-gold)}
.ch-accent {color:var(--ch-color-gold-text)}.ch-dark .ch-accent {color:var(--ch-color-gold)}
.ch-meta,small {font-size:.8125rem;color:var(--ch-color-muted)}
.ch-dark .ch-meta {color:#d8d0c7}
.ch-price {font-weight:700;color:var(--ch-color-bordeaux);font-variant-numeric:tabular-nums}
.ch-icon {width:1.4em;height:1.4em;flex:none;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ch-sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link {position:absolute;top:0;left:0;transform:translateY(-150%);z-index:100}
.skip-link:focus {transform:none;background:white;color:black;padding:1rem}
.site-main {min-height:35vh}
.site-main > article,.site-main > p,.site-main > nav {width:min(90%,var(--ch-container));margin:var(--ch-section-spacing) auto}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {scroll-behavior:auto!important;transition:none!important;animation:none!important}}

