:root{
  --bg:#fff; --fg:#111; --muted:#5b5b5b;
  --card:#fff; --border:#e9e9e9;
  --accent:#e17367;
  --radius:18px;
}
*{box-sizing:border-box}
body{margin:0;font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--fg);background:var(--bg)}
.wrap{max-width:1180px;margin:0 auto;padding:22px}
a{color:inherit}
img{max-width:100%;height:auto}

/* Header proche prod (sobre) */
.site-header{border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0;z-index:50}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{font-weight:900;letter-spacing:-.02em;text-decoration:none}
.nav{display:flex;gap:18px;flex-wrap:wrap}
.nav a{text-decoration:none;opacity:.8}
.nav a:hover{opacity:1;text-decoration:underline}

/* Typo */
h1,h2,h3{line-height:1.12;letter-spacing:-.02em;margin:0 0 12px}
.page-title{font-size:52px;margin:18px 0 18px}
.subtitle{color:var(--muted);margin:0 0 18px}
.section-title{font-size:32px;margin:26px 0 14px}

/* Hero */
.hero{border-radius:24px;overflow:hidden;margin:18px 0 26px;background:#0f0f10;color:#fff;
  background-image:linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.25)), var(--hero);
  background-size:cover;background-position:center;
}
.hero__overlay{padding:46px}
.hero__kicker{margin:0 0 10px;color:rgba(255,255,255,.8);letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.hero__title{font-size:56px;margin:0 0 14px;color:#fff}
.hero__text{max-width:720px;color:rgba(255,255,255,.85)}
.hero__cta{margin:18px 0 0}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:14px;
  background:var(--accent);color:#101010;font-weight:800;text-decoration:none;border:1px solid rgba(255,255,255,.2)}
.btn:hover{opacity:.92}

/* Grid cards */
.grid{display:grid;gap:18px}
@media(min-width:900px){ .grid{grid-template-columns:repeat(3,1fr)} }
.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);overflow:hidden}
.card__media{display:block}
.card__media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.card__body{padding:16px}
.card__kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:800;margin-bottom:8px}
.card__title{margin:0 0 8px}
.card__title a{text-decoration:none}
.card__title a:hover{text-decoration:underline}
.card__meta{color:var(--muted);font-size:14px}

/* Homepage content */
.home-content{margin:26px 0}
.home-content p{margin:0 0 14px}
.home-content hr{border:0;border-top:1px solid var(--border);margin:26px 0}
.home-content figure{margin:16px 0}
.home-content figcaption{color:var(--muted);font-size:14px;margin-top:8px}
.home-content img{border-radius:18px}
/* Homepage two-column layout */
.home-two-cols{display:flex;gap:32px;align-items:flex-start;margin:18px 0}
.home-two-cols__text{flex:1;min-width:0}
.home-two-cols__text p{margin:0 0 14px}
.home-two-cols__img{flex:0 0 280px}
.home-two-cols__img img{border-radius:18px;width:100%;height:auto}
.home-two-cols__img figure{margin:0}
.home-two-cols__img figcaption{color:var(--muted);font-size:13px;margin-top:6px}
.home-two-cols--reverse{flex-direction:row-reverse}
.home-stat{margin:24px auto;max-width:680px;text-align:center}
.home-stat img{border-radius:14px;width:100%;height:auto;border:1px solid var(--border)}
.home-stat figcaption{color:var(--muted);font-size:13px;margin-top:8px}
@media(max-width:740px){
  .home-two-cols,.home-two-cols--reverse{flex-direction:column}
  .home-two-cols__img{flex:0 0 auto;max-width:320px;margin:0 auto}
}
/* Article */
.post-meta{color:var(--muted);margin:0 0 18px}
.post-content p{margin:0 0 14px}
.post-content hr{border:0;border-top:1px solid var(--border);margin:18px 0}
.post-content figure{margin:16px 0}
.post-content figcaption{color:var(--muted);font-size:14px;margin-top:8px}
.post-content img{border-radius:18px}

/* “Encarts” WP/Kadence */
.wp-block-separator{border:0;border-top:1px solid var(--border);margin:18px 0}
.wp-block-kadence-image,
.wp-block-image{margin:16px 0}
.wp-block-kadence-advancedheading{margin:18px 0 10px}
.wp-block-kadence-column{margin:0 0 18px}
.wp-block-kadence-form{border:1px solid var(--border);border-radius:18px;padding:16px}
.kb-form label{display:block;font-weight:800;margin:10px 0 6px}
.kb-form input[type="text"], .kb-form input[type="email"], .kb-form textarea{
  width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:12px;font:inherit
}
.kb-forms-submit{width:100%;margin-top:10px;border:0;border-radius:14px;padding:12px 14px;background:var(--accent);font-weight:900;cursor:pointer}
.kb-forms-submit:hover{opacity:.92}
.kt-accordion-wrap{border:1px solid var(--border);border-radius:18px;overflow:hidden}
.kt-accordion-header-wrap{border-bottom:1px solid var(--border)}
.kt-blocks-accordion-header{width:100%;text-align:left;padding:12px 14px;background:#fff;border:0;font:inherit;font-weight:900}
.kt-accordion-panel{padding:12px 14px}

/* Footer */
.site-footer{border-top:1px solid var(--border);margin-top:44px;padding:18px 0;color:var(--muted)}

/* Page Livre */
.livre-hero{display:flex;gap:36px;align-items:flex-start;margin:26px 0 36px;flex-wrap:wrap}
.livre-hero__cover{flex:0 0 300px}
.livre-hero__cover img{border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.18);width:100%}
.livre-hero__text{flex:1;min-width:280px}
.livre-hero__text h1{font-size:36px;margin:0 0 6px;line-height:1.1}
.livre-hero__text h2{font-size:22px;font-weight:400;color:var(--muted);margin:0 0 14px}
.livre-hero__author{font-size:18px;margin:0 0 6px}
.livre-hero__tagline{font-size:18px;margin:0 0 20px;color:var(--muted)}
.livre-body{margin:0 0 36px}
.livre-body p{margin:0 0 14px}
.livre-body hr{border:0;border-top:1px solid var(--border);margin:28px 0}
.livre-body ul{margin:0 0 14px;padding-left:22px}
.livre-body li{margin:0 0 8px}
.livre-cta{text-align:center;margin:32px 0}
.livre-next{background:#f7f7f7;border-left:4px solid var(--accent);border-radius:0 14px 14px 0;padding:22px 28px;margin:18px 0}
.livre-next h3{margin:6px 0 8px}
@media(max-width:640px){
  .livre-hero{flex-direction:column;align-items:center;text-align:center}
  .livre-hero__cover{flex:0 0 auto;max-width:240px}
  .livre-hero__text h1{font-size:28px}
}

/* Mobile */
@media(max-width:640px){
  .wrap{padding:16px}
  .hero__overlay{padding:26px}
  .hero__title,.post-title,.page-title{font-size:36px}
  .nav{gap:10px}
}
