/* Layout, grille bento, navigation et footer — direction "Souk joyeux" */
.site-header{position:sticky;top:0;z-index:50;padding:1rem}
.nav-pill{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem .7rem;border:2px solid var(--ink);border-radius:999px;background:oklch(.975 .015 84 / .86);backdrop-filter:blur(18px);box-shadow:0 12px 30px oklch(.26 .03 155 / .1)}
.brand{font-family:var(--font-head);font-weight:800;letter-spacing:-.04em;font-size:1.15rem;text-decoration:none;color:var(--ink)}
.brand span{color:var(--forest)}
.nav-links,.nav-actions{display:flex;gap:.75rem;align-items:center}
.nav-links a{color:var(--muted);font-weight:800;text-decoration:none;transition:color .18s}
.nav-links a:hover{color:var(--forest)}
#lang-select{min-width:auto;padding:.55rem .7rem}

.section{max-width:1180px;margin:0 auto;padding:clamp(2rem,6vw,4.5rem) 1rem}

/* Hero bento — bloc principal PLEIN (vert vif drenched) */
.hero{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem}
.hero>*{min-width:0}
.bento-card{background:var(--card);border:2px solid var(--ink);border-radius:var(--radius);padding:var(--space);box-shadow:var(--shadow-sm)}
.hero-copy{grid-row:span 2;min-height:420px;display:flex;flex-direction:column;justify-content:center;color:var(--cream);background:
  radial-gradient(36rem 24rem at 110% -10%, oklch(.82 .15 85 / .35) 0, transparent 60%),
  linear-gradient(155deg, var(--forest) 0%, var(--forest-dark) 100%);
  border-color:var(--forest-dark);box-shadow:var(--shadow)}
.hero h1{font:800 clamp(2.5rem,5.6vw,5rem)/.98 var(--font-head);letter-spacing:-.045em;max-width:860px;margin:.5rem 0;color:var(--cream)}
.hero-copy p{max-width:650px;color:oklch(.975 .015 84 / .82);font-size:1.12rem}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--forest);font-weight:800;font-size:.78rem}
.hero-copy .eyebrow{color:var(--gold)}
.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.6rem}
.stat{display:flex;flex-direction:column;justify-content:end;gap:.2rem}
.stat strong{font-family:var(--font-head);font-weight:800;font-size:clamp(2.8rem,5.2vw,4rem);line-height:1}
.stat span{color:var(--muted);font-weight:700}
/* Stats teintées pour l'énergie marché */
.hero .stat:nth-of-type(2){background:var(--gold-soft);border-color:var(--gold)}
.hero .stat:nth-of-type(2) strong{color:oklch(.55 .14 70)}
.hero .stat:nth-of-type(3){background:var(--persimmon-soft);border-color:var(--persimmon)}
.hero .stat:nth-of-type(3) strong{color:var(--persimmon)}
.payment-card{display:flex;flex-wrap:wrap;gap:.45rem;align-content:center;background:var(--forest-soft);border-color:var(--forest)}
.payment-card span{padding:.45rem .75rem;border-radius:999px;background:var(--card);border:1.5px solid var(--forest);color:var(--forest-dark);font-weight:800;font-size:.85rem}

/* Étapes */
.steps h2,.catalog-section h2{font:800 clamp(2rem,4.4vw,3.4rem)/1.03 var(--font-head);letter-spacing:-.035em;margin:0 0 1rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.grid-3 .bento-card{position:relative;overflow:hidden}
.grid-3 .bento-card strong{font-family:var(--font-head);font-weight:800;font-size:2.4rem;display:block;line-height:1}
.grid-3 .bento-card:nth-of-type(1) strong{color:var(--forest)}
.grid-3 .bento-card:nth-of-type(2) strong{color:var(--gold)}
.grid-3 .bento-card:nth-of-type(3) strong{color:var(--persimmon)}
.grid-3 .bento-card h3{margin:.3rem 0;font-size:1.3rem}
.grid-3 .bento-card p{color:var(--muted);margin:0;font-weight:600}

/* Catalogue */
.section-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.2rem}
.catalog-meta{color:var(--muted);font-weight:700;margin:.3rem 0 0}
.catalog-meta strong{color:var(--forest);font-family:var(--font-head)}
.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}

/* Footer — bloc plein sombre pour clore avec caractère */
.site-footer{max-width:1180px;margin:2.5rem auto;padding:2.25rem;border-radius:var(--radius);background:linear-gradient(155deg,var(--forest-dark),oklch(.28 .07 156));color:oklch(.95 .02 84 / .85);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.site-footer strong{font-family:var(--font-head);color:var(--cream);font-size:1.2rem}
