
:root{
  --paper:#F5F5F0; --card:#FFFFFF; --ink:#13201A; --ink-2:#48544C; --line:#E6E5DD;
  --emerald:#127053; --emerald-d:#0E4A38; --gold:#C2922E; --gold-l:#ECD08A; --gold-ink:#8C6A1E;
  --c-free:#127053; --c-cont:#C2461F; --c-ecom:#6A4CC2; --c-pass:#0B736F; --c-inv:#9C7320; --c-micro:#2E66C4;
  --c-teach:#B23C6B; --c-share:#557323; --c-ai:#0B7488;
  --r:14px; --maxw:1180px;
  --ff-disp:'Bricolage Grotesque',system-ui,sans-serif;
  --ff-body:'Inter',system-ui,sans-serif;
  --ff-mono:'Space Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--ff-body);line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block}
a{color:inherit}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.section{padding:74px 0}
.eyebrow{font-family:var(--ff-mono);text-transform:uppercase;font-size:12px;letter-spacing:.16em;color:var(--emerald);font-weight:700;margin:0 0 14px}
.section-title{font-family:var(--ff-disp);font-weight:700;font-size:clamp(28px,4.2vw,44px);letter-spacing:-.025em;line-height:1.06;margin:0}
.section-sub{color:var(--ink-2);max-width:620px;font-size:clamp(15px,2vw,17px);margin:16px 0 0}
.section-head{margin-bottom:40px}
.arr{display:inline-block;transition:transform .18s ease}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:60;background:rgba(245,245,240,.90);border-bottom:1px solid transparent;transition:border-color .25s,background .25s}
.site-header.scrolled{border-color:var(--line);background:rgba(245,245,240,.985)}
.nav{display:flex;align-items:center;justify-content:space-between;height:70px}
.brand{display:flex;align-items:center;gap:11px;font-family:var(--ff-disp);font-weight:800;font-size:21px;letter-spacing:-.03em;text-decoration:none;color:var(--ink)}
.brand-mark{width:30px;height:30px;border-radius:9px;box-shadow:0 4px 14px -6px rgba(14,74,56,.6)}
.nav-links{display:flex;align-items:center;gap:30px}
.nav-links a{text-decoration:none;color:var(--ink);font-size:15px;font-weight:500;opacity:.82;transition:opacity .18s}
.nav-links a:hover{opacity:1}
.nav-cta{background:var(--ink);color:#fff!important;padding:9px 18px;border-radius:999px;opacity:1!important;font-weight:600!important}
.nav-cta:hover{background:var(--emerald-d)}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:10px;width:42px;height:42px;cursor:pointer;align-items:center;justify-content:center}
.menu-btn span,.menu-btn span::before,.menu-btn span::after{content:"";display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;position:relative;transition:transform .2s,opacity .2s}
.menu-btn span::before{position:absolute;top:-6px}
.menu-btn span::after{position:absolute;top:6px}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;background:linear-gradient(158deg,#0E4A38 0%,#0B3528 58%,#0A2A20 100%);color:#E8F1EC}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(circle at 28% 18%,#000,transparent 78%);mask-image:radial-gradient(circle at 28% 18%,#000,transparent 78%);pointer-events:none}
.hero::after{content:"";position:absolute;width:560px;height:560px;right:-140px;top:-180px;background:radial-gradient(circle,rgba(194,146,46,.20),transparent 62%);pointer-events:none}
.hero-inner{position:relative;padding:94px 0 80px}
.hero-eyebrow{font-family:var(--ff-mono);text-transform:uppercase;font-size:12px;letter-spacing:.22em;color:var(--gold-l);margin:0 0 22px}
.hero h1{font-family:var(--ff-disp);font-weight:800;font-size:clamp(42px,7.4vw,80px);line-height:1.0;letter-spacing:-.035em;margin:0;max-width:14ch}
.filon{position:relative;color:var(--gold-l);white-space:nowrap}
.filon .ul{position:absolute;left:-2%;bottom:-.16em;width:104%;height:.34em;stroke:var(--gold);stroke-width:4;fill:none;stroke-linecap:round}
.hero .lede{max-width:600px;font-size:clamp(17px,2.1vw,20px);color:#C5D7CE;margin:26px 0 0}
.hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin:34px 0 0}
.hero-stat{font-family:var(--ff-mono);font-size:13px;letter-spacing:.04em;color:#8FA99E;margin:30px 0 0}
.hero-index{display:flex;flex-wrap:wrap;gap:6px 16px;margin:14px 0 0;max-width:760px}
.hero-index a{font-family:var(--ff-mono);font-size:12.5px;letter-spacing:.02em;color:#9FBAAF;text-decoration:none;transition:color .18s}
.hero-index a:hover{color:var(--gold-l)}
.hero-index .dot{color:#4d6b5f}

/* ---------- Buttons ---------- */
.btn{font-family:var(--ff-body);font-weight:600;font-size:15px;padding:13px 22px;border-radius:999px;border:1px solid transparent;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:9px;transition:transform .16s ease,background .2s,box-shadow .2s,border-color .2s}
.btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.btn-gold{background:var(--gold);color:#241a06}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 30px -14px rgba(194,146,46,.8)}
.btn-line-l{background:transparent;color:#E8F1EC;border-color:rgba(255,255,255,.32)}
.btn-line-l:hover{border-color:#E8F1EC;transform:translateY(-2px)}
.btn:hover .arr{transform:translateX(3px)}

/* ---------- Ads ---------- */
.ad-wrap{padding:36px 0}
.ad-inner{border:1px dashed #D6D5C9;border-radius:16px;padding:16px;background:#FBFBF7}
.ad-label{font-family:var(--ff-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#A8A89C;text-align:center;margin:0 0 10px}
.ad-box{display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#F2F2EB,#FAFAF6);border:1px solid #EAEAE0;color:#A2A296;font-family:var(--ff-mono);font-size:12px;letter-spacing:.05em;text-align:center;padding:8px}
.ad-box.lb{height:96px}
.ad-box.bb{height:170px}
.ad-box.rect{height:252px;max-width:336px;margin:0 auto}
.ad-box.ad-consented{background:none;border:none;padding:0;height:auto;min-height:0}
.ad-box.ad-consented .adsbygoogle{display:block;width:100%}

/* ---------- Category grid ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cat-card{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:27px 24px 22px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:12px;transition:transform .2s ease,box-shadow .2s,border-color .2s}
.cat-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--cc)}
.cat-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px -26px rgba(20,40,30,.5);border-color:#dad9cf}
.cat-card:focus-visible{outline:3px solid var(--cc);outline-offset:3px}
.cat-ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:25px;background:color-mix(in srgb,var(--cc) 14%,#fff);border:1px solid color-mix(in srgb,var(--cc) 22%,#fff)}
.cat-name{font-family:var(--ff-disp);font-weight:700;font-size:21px;letter-spacing:-.015em;margin:2px 0 0}
.cat-tag{color:var(--ink-2);font-size:14.5px;flex:1;margin:0}
.cat-meta{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.cat-count{font-family:var(--ff-mono);font-size:12.5px;color:var(--ink-2)}
.cat-go{font-weight:600;font-size:14px;color:var(--cc);display:inline-flex;gap:6px;align-items:center}
.cat-card:hover .cat-go .arr{transform:translateX(4px)}

/* ---------- Method cards ---------- */
.featured-sec{background:#F1F1EA;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.m-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.m-card{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--cc);border-radius:12px;padding:21px 20px;display:flex;flex-direction:column;gap:11px;transition:transform .18s ease,box-shadow .18s}
.m-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px -26px rgba(20,40,30,.5)}
.m-cat-label{font-family:var(--ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--cc);font-weight:700}
.m-title{font-family:var(--ff-disp);font-weight:600;font-size:18.5px;letter-spacing:-.01em;margin:0}
.m-desc{color:var(--ink-2);font-size:14px;flex:1;margin:0}
.m-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.badge{font-family:var(--ff-mono);font-size:11px;padding:4px 10px;border-radius:999px;font-weight:700;letter-spacing:.02em}
.badge.facile{background:#E2F0E8;color:#136A4F}
.badge.inter{background:#FAEAD2;color:#8C6A1E}
.badge.avance{background:#F6E0D7;color:#A8442A}
.income{font-family:var(--ff-mono);font-size:12.5px;color:var(--ink);opacity:.85}
.m-link{font-weight:600;font-size:13.5px;color:var(--cc);text-decoration:none;display:inline-flex;gap:6px;align-items:center;margin-top:2px}
.m-link:hover .arr{transform:translateX(4px)}
.m-link:focus-visible,.hero-index a:focus-visible,.nav-links a:focus-visible,.back:focus-visible{outline:2px solid var(--cc,var(--emerald));outline-offset:3px;border-radius:3px}

/* ---------- Tips ---------- */
.tips-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tip{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:24px 22px}
.tip-ic{font-size:24px;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#EAF1EE;border:1px solid #DCE8E3;margin-bottom:14px}
.tip h3{font-family:var(--ff-disp);font-weight:700;font-size:17px;letter-spacing:-.01em;margin:0 0 8px}
.tip p{color:var(--ink-2);font-size:14px;margin:0}

/* ---------- Newsletter ---------- */
.news{background:linear-gradient(150deg,#0E4A38,#0B3327);color:#E8F1EC;border-radius:22px;padding:clamp(34px,5vw,56px);text-align:center;position:relative;overflow:hidden}
.news::after{content:"";position:absolute;width:420px;height:420px;left:-120px;bottom:-200px;background:radial-gradient(circle,rgba(194,146,46,.18),transparent 60%)}
.news .eyebrow{color:var(--gold-l)}
.news h2{font-family:var(--ff-disp);font-weight:700;font-size:clamp(26px,3.6vw,38px);letter-spacing:-.02em;margin:0;position:relative}
.news p{color:#C5D7CE;max-width:520px;margin:14px auto 0;position:relative}
.news-form{display:flex;gap:10px;max-width:440px;margin:26px auto 0;position:relative;flex-wrap:wrap;justify-content:center}
.news-form input{flex:1;min-width:200px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff;padding:14px 18px;border-radius:999px;font-family:var(--ff-body);font-size:15px}
.news-form input::placeholder{color:#9FB5AB}
.news-form input:focus{outline:2px solid var(--gold);outline-offset:1px}
.news-note{font-family:var(--ff-mono);font-size:11px;color:#7f9a8f;margin:14px 0 0;position:relative}
.news-ok{font-family:var(--ff-disp);font-weight:700;font-size:20px;color:var(--gold-l);margin:24px 0 0;position:relative}
.news-err{width:100%;margin:10px 0 0;color:#F4C9B4;font-size:14px}
.news-form button[disabled],.cap-form button[disabled]{opacity:.7;cursor:progress}

/* ---------- Category view ---------- */
#category-view{padding:38px 0 20px}
.cat-view-wrap{min-height:50vh}
.back{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-weight:600;font-size:14px;color:var(--ink-2);margin-bottom:26px}
.back:hover{color:var(--ink)}
.cat-head{position:relative;max-width:760px;margin-bottom:40px}
.cat-head .eyebrow{color:var(--cc)}
.cat-h1{font-family:var(--ff-disp);font-weight:800;font-size:clamp(34px,6vw,60px);letter-spacing:-.03em;line-height:1.02;margin:0}
.cat-h1::after{content:"";display:block;width:62px;height:5px;border-radius:3px;background:var(--cc);margin:20px 0 0}
.cat-intro{color:var(--ink-2);font-size:clamp(16px,2.1vw,18px);max-width:640px;margin:24px 0 0}
.cat-count2{display:inline-block;font-family:var(--ff-mono);font-size:12.5px;color:var(--cc);margin:18px 0 0;letter-spacing:.03em}
.cat-more{margin:50px 0 10px;border-top:1px solid var(--line);padding-top:34px}
.cat-more>span{font-family:var(--ff-disp);font-weight:700;font-size:18px;display:block;margin-bottom:16px}
.more-links{display:flex;flex-wrap:wrap;gap:12px}
.more-links a{text-decoration:none;font-weight:600;font-size:14px;color:var(--cc);background:color-mix(in srgb,var(--cc) 9%,#fff);border:1px solid color-mix(in srgb,var(--cc) 20%,#fff);padding:9px 15px;border-radius:999px;transition:transform .15s}
.more-links a:hover{transform:translateY(-2px)}

/* ---------- Footer ---------- */
.footer{background:var(--ink);color:#B7C5BD}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;padding:64px 0 44px}
.footer .brand{color:#fff;margin-bottom:16px}
.footer-blurb{font-size:14px;max-width:340px;margin:0;color:#94a59c}
.footer h4{font-family:var(--ff-mono);text-transform:uppercase;font-size:11px;letter-spacing:.16em;color:#7e9189;margin:0 0 16px}
.footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.footer ul a{text-decoration:none;font-size:14.5px;color:#C2D0C8;cursor:pointer;transition:color .18s}
.footer ul a:hover{color:#fff}
.disclaimer{border-top:1px solid #25352d;padding:26px 0;font-size:12.5px;color:#7e9189;line-height:1.7}
.disclaimer strong{color:#9fb1a8}
.footer-bottom{border-top:1px solid #25352d;padding:20px 0;font-family:var(--ff-mono);font-size:11.5px;color:#6f827a;letter-spacing:.03em}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}

/* ---------- Responsive ---------- */
@media(max-width:980px){
  .cat-grid,.m-grid{grid-template-columns:repeat(2,1fr)}
  .tips-grid{grid-template-columns:repeat(2,1fr)}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:820px){
  .menu-btn{display:flex}
  .nav-links{position:absolute;top:70px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:4px;background:var(--card);border-bottom:1px solid var(--line);padding:14px 24px 20px;display:none;box-shadow:0 24px 40px -28px rgba(0,0,0,.3)}
  .nav-links.open{display:flex}
  .nav-links a{padding:10px 0;width:100%;opacity:1}
  .nav-cta{margin-top:6px}
}
@media(max-width:620px){
  .cat-grid,.m-grid,.tips-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr}
  .section{padding:56px 0}
  .hero-inner{padding:72px 0 60px}
}
@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
}

/* ---------- Ajouts : barre langue ---------- */
.nav-cluster{display:flex;align-items:center;gap:16px}
.lang-toggle{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--card)}
.lang-toggle button{border:none;background:none;font-family:var(--ff-mono);font-size:12px;font-weight:700;letter-spacing:.06em;padding:7px 12px;cursor:pointer;color:var(--ink-2);transition:background .18s,color .18s}
.lang-toggle button:hover{color:var(--ink)}
.lang-toggle button.active{background:var(--emerald);color:#fff}
.lang-toggle button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* ---------- Ajouts : contenu enrichi des catégories ---------- */
.cat-block{margin:52px 0 0}
.block-eyebrow{font-family:var(--ff-mono);text-transform:uppercase;font-size:11.5px;letter-spacing:.15em;color:var(--cc);font-weight:700;margin:0 0 11px}
.block-title{font-family:var(--ff-disp);font-weight:700;font-size:clamp(22px,3.1vw,29px);letter-spacing:-.02em;line-height:1.12;margin:0 0 22px}
.cat-lead{font-size:clamp(16px,2vw,18.5px);color:var(--ink);max-width:730px;margin:22px 0 0;line-height:1.72}

/* À qui ça s'adresse */
.audience{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.aud-col{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 24px}
.aud-col.yes{border-top:3px solid var(--cc)}
.aud-col.no{border-top:3px solid #D9D8CE}
.aud-col h3{font-family:var(--ff-disp);font-weight:700;font-size:15.5px;margin:0 0 14px;letter-spacing:-.01em}
.aud-col ul{margin:0;padding:0;list-style:none;display:grid;gap:11px}
.aud-col li{position:relative;padding-left:24px;font-size:14.5px;color:var(--ink-2);line-height:1.5}
.aud-col li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:3px}
.aud-col.yes li::before{background:var(--cc)}
.aud-col.no li::before{background:#CFCEC4}

/* Comment se lancer */
.steps{list-style:none;counter-reset:step;margin:0;padding:0;display:grid;gap:18px}
.steps li{position:relative;padding:2px 0 0 60px;counter-increment:step;min-height:44px}
.steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:0;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-family:var(--ff-mono);font-weight:700;font-size:14px;color:var(--cc);background:color-mix(in srgb,var(--cc) 12%,#fff);border:1px solid color-mix(in srgb,var(--cc) 24%,#fff)}
.steps h3{font-family:var(--ff-disp);font-weight:700;font-size:16.5px;letter-spacing:-.01em;margin:0 0 4px}
.steps p{margin:0;color:var(--ink-2);font-size:14.5px;line-height:1.6}

/* Erreurs à éviter */
.mistakes{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.mistakes li{position:relative;padding:16px 18px 16px 54px;background:var(--card);border:1px solid var(--line);border-radius:12px}
.mistakes li::before{content:"!";position:absolute;left:16px;top:16px;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-family:var(--ff-mono);font-weight:700;font-size:15px;color:#A8442A;background:#F6E0D7;border:1px solid #EAC7B8}
.mistakes h3{font-family:var(--ff-disp);font-weight:700;font-size:15.5px;letter-spacing:-.01em;margin:0 0 3px}
.mistakes p{margin:0;color:var(--ink-2);font-size:14px;line-height:1.6}

/* FAQ */
.faq{display:grid;gap:12px;max-width:820px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:border-color .18s}
.faq details[open]{border-color:color-mix(in srgb,var(--cc) 40%,var(--line))}
.faq summary{cursor:pointer;list-style:none;padding:17px 20px;font-family:var(--ff-disp);font-weight:600;font-size:16px;letter-spacing:-.01em;display:flex;justify-content:space-between;align-items:center;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--ff-mono);font-weight:700;font-size:21px;line-height:1;color:var(--cc);transition:transform .2s;flex:none}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .faq-a{padding:0 20px 18px;color:var(--ink-2);font-size:14.5px;line-height:1.66}
.faq summary:focus-visible{outline:2px solid var(--cc);outline-offset:2px;border-radius:6px}

@media(max-width:620px){
  .audience{grid-template-columns:1fr}
  .cat-block{margin:40px 0 0}
}

[hidden]{display:none!important}
.wrap-narrow{max-width:820px}
.prose{max-width:760px;color:var(--ink);font-size:16.5px;line-height:1.75}
.prose h2{font-family:var(--ff-disp);font-weight:700;font-size:clamp(20px,2.6vw,26px);letter-spacing:-.02em;margin:34px 0 12px}
.prose p{margin:0 0 16px}.prose ul{margin:0 0 16px;padding-left:20px}.prose li{margin:0 0 8px;color:var(--ink-2)}
.prose a{color:var(--emerald);text-decoration:underline;text-underline-offset:3px}
.breadcrumb{font-family:var(--ff-mono);font-size:12.5px;letter-spacing:.02em;color:var(--ink-2);margin:0 0 22px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.breadcrumb a{color:var(--ink-2);text-decoration:none}.breadcrumb a:hover{color:var(--emerald)}
.aff-note{display:flex;gap:12px;align-items:flex-start;background:#FBFBF7;border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:12px;padding:15px 18px;margin:26px 0 0}
.aff-note .aff-ic{font-family:var(--ff-mono);color:var(--gold-ink);font-size:16px;line-height:1.4;flex:none}
.aff-note p{margin:0;font-size:13.5px;color:var(--ink-2);line-height:1.6}.aff-note strong{color:var(--ink)}
a.m-cat-label{text-decoration:none}a.m-cat-label:hover{text-decoration:underline}
.legal-h1{font-family:var(--ff-disp);font-weight:800;font-size:clamp(30px,5vw,46px);letter-spacing:-.03em;line-height:1.05;margin:0}
.legal-updated{font-family:var(--ff-mono);font-size:12px;color:var(--ink-2);margin:14px 0 30px}
#category-view{padding:38px 0 20px}
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:200;background:var(--ink);color:#E8F1EC;box-shadow:0 -14px 40px -22px rgba(0,0,0,.6)}
.cookie-inner{display:flex;gap:22px;align-items:center;justify-content:space-between;padding:18px 24px;flex-wrap:wrap}
.cookie-copy{max-width:720px}.cookie-copy strong{font-family:var(--ff-disp);font-size:15.5px;display:block;margin-bottom:4px;color:#fff}
.cookie-copy p{margin:0;font-size:13.5px;color:#B7C5BD;line-height:1.55}.cookie-copy a{color:var(--gold-l);text-decoration:underline}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-banner .btn{padding:11px 20px;font-size:14px}
.cookie-refuse{background:transparent;color:#E8F1EC;border:1px solid rgba(255,255,255,.32)}.cookie-refuse:hover{border-color:#fff}
.cookie-accept{background:var(--gold);color:#241a06}
@media(max-width:620px){.cookie-inner{flex-direction:column;align-items:stretch}.cookie-actions .btn{flex:1}}

/* ---- Bloc Guide pratique (compétences / capital) ---- */
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.guide-item{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px;border-top:3px solid var(--cc)}
.guide-skills{grid-column:1/-1}
.guide-label{font-family:var(--ff-mono);text-transform:uppercase;font-size:10.5px;letter-spacing:.14em;color:var(--ink-2);font-weight:700;display:block;margin-bottom:12px}
.guide-val{margin:8px 0 0;color:var(--ink-2);font-size:14px;line-height:1.55}
.guide-strong{font-family:var(--ff-disp);font-weight:700;font-size:16px;color:var(--ink);display:inline-flex;align-items:center;gap:10px}
.guide-skills .chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:9px}
.guide-skills .chips li{font-size:13.5px;color:var(--ink);background:color-mix(in srgb,var(--cc) 9%,#fff);border:1px solid color-mix(in srgb,var(--cc) 22%,#fff);border-radius:999px;padding:7px 14px;line-height:1.4}
.meter{display:inline-flex;gap:4px;align-items:center}
.meter span{width:9px;height:14px;border-radius:3px;background:#E3E2D8}
.meter-low span.on{background:#136A4F}
.meter-medium span.on{background:var(--gold)}
.meter-high span.on{background:#A8442A}
@media(max-width:760px){.guide-grid{grid-template-columns:1fr}}

.footer-top{grid-template-columns:1.7fr 1fr 1fr 1fr}
@media(max-width:980px){.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.footer-top{grid-template-columns:1fr}}

/* ---------- Quiz de recommandation (élément signature) ---------- */
.quiz-sec{background:#F1F1EA;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.quiz{--qc:var(--emerald);max-width:760px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:clamp(24px,4vw,40px);box-shadow:0 30px 60px -44px rgba(20,40,30,.55);position:relative;overflow:hidden}
.quiz::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--emerald),var(--gold))}
.quiz-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.quiz-step-label{font-family:var(--ff-mono);text-transform:uppercase;font-size:11px;letter-spacing:.16em;color:var(--ink-2);font-weight:700}
.quiz-dots{display:flex;gap:7px}
.quiz-dots span{width:9px;height:9px;border-radius:50%;background:#DAD9CF;transition:background .25s,transform .25s}
.quiz-dots span.done{background:var(--emerald)}
.quiz-dots span.active{background:var(--gold);transform:scale(1.25)}
.quiz-q{font-family:var(--ff-disp);font-weight:700;font-size:clamp(21px,3vw,28px);letter-spacing:-.02em;line-height:1.15;margin:0 0 22px}
.quiz-options{display:grid;gap:12px}
.quiz-opt{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 18px;cursor:pointer;font-family:var(--ff-body);font-size:15.5px;color:var(--ink);line-height:1.45;transition:transform .16s ease,border-color .18s,background .18s,box-shadow .18s}
.quiz-opt:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--emerald) 45%,var(--line));box-shadow:0 16px 32px -26px rgba(20,40,30,.6)}
.quiz-opt:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.quiz-opt .qo-mark{flex:none;width:26px;height:26px;border-radius:8px;border:1px solid color-mix(in srgb,var(--emerald) 30%,var(--line));background:#fff;display:grid;place-items:center;font-size:15px}
.quiz-opt .qo-emoji{flex:none;font-size:22px;width:30px;text-align:center}
.quiz-nav{display:flex;align-items:center;justify-content:space-between;margin-top:22px;gap:12px}
.quiz-back{background:none;border:none;cursor:pointer;font-family:var(--ff-body);font-weight:600;font-size:14px;color:var(--ink-2);padding:8px 4px;display:inline-flex;align-items:center;gap:6px}
.quiz-back:hover{color:var(--ink)}
.quiz-back[hidden]{display:none}
.quiz-hint{font-family:var(--ff-mono);font-size:11px;color:var(--ink-2);letter-spacing:.02em}
/* Résultat */
.quiz-result{text-align:center;--qc:var(--emerald)}
.qr-eyebrow{font-family:var(--ff-mono);text-transform:uppercase;font-size:11px;letter-spacing:.18em;color:var(--ink-2);font-weight:700;margin:0 0 18px}
.qr-badge{width:84px;height:84px;border-radius:22px;display:grid;place-items:center;font-size:42px;margin:0 auto 20px;background:color-mix(in srgb,var(--qc) 14%,#fff);border:1px solid color-mix(in srgb,var(--qc) 26%,#fff)}
.qr-name{font-family:var(--ff-disp);font-weight:800;font-size:clamp(26px,4vw,38px);letter-spacing:-.025em;line-height:1.08;margin:0}
.qr-why{color:var(--ink-2);font-size:clamp(15px,2vw,17px);max-width:520px;margin:14px auto 0;line-height:1.6}
.qr-runners{font-family:var(--ff-mono);font-size:12px;color:var(--ink-2);margin:18px 0 0;letter-spacing:.02em}
.qr-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:26px 0 0}
.btn-qc{background:var(--qc);color:#fff;border:1px solid var(--qc)}
.btn-qc:hover{transform:translateY(-2px);box-shadow:0 16px 34px -18px color-mix(in srgb,var(--qc) 80%,transparent)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn-ghost:hover{border-color:var(--ink-2);transform:translateY(-2px)}
.quiz-restart{background:none;border:none;cursor:pointer;font-family:var(--ff-body);font-weight:600;font-size:14px;color:var(--ink-2);margin:20px 0 0;text-decoration:underline;text-underline-offset:3px}
.quiz-restart:hover{color:var(--ink)}

/* ---------- Bloc capture email (lead magnet, après chaque guide) ---------- */
.capture{position:relative;overflow:hidden;background:linear-gradient(150deg,#0E4A38,#0B3327);color:#E8F1EC;border-radius:18px;padding:clamp(26px,3.4vw,38px);margin:50px 0 4px}
.capture::after{content:"";position:absolute;width:360px;height:360px;right:-120px;bottom:-180px;background:radial-gradient(circle,rgba(194,146,46,.18),transparent 62%);pointer-events:none}
.capture-in{position:relative;display:grid;grid-template-columns:1.3fr 1fr;gap:26px;align-items:center}
.capture .cap-eyebrow{font-family:var(--ff-mono);text-transform:uppercase;font-size:11px;letter-spacing:.16em;color:var(--gold-l);font-weight:700;margin:0 0 10px}
.capture h3{font-family:var(--ff-disp);font-weight:700;font-size:clamp(20px,2.6vw,26px);letter-spacing:-.02em;line-height:1.14;margin:0}
.capture p{color:#C5D7CE;font-size:14.5px;line-height:1.55;margin:12px 0 0;max-width:44ch}
.cap-form{display:flex;flex-direction:column;gap:10px}
.cap-form input{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.07);color:#fff;padding:14px 18px;border-radius:12px;font-family:var(--ff-body);font-size:15px;width:100%}
.cap-form input::placeholder{color:#9FB5AB}
.cap-form input:focus{outline:2px solid var(--gold);outline-offset:1px}
.cap-form .btn{justify-content:center}
.cap-note{font-family:var(--ff-mono);font-size:10.5px;color:#7f9a8f;margin:2px 0 0;letter-spacing:.02em}
.cap-ok{position:relative;font-family:var(--ff-disp);font-weight:700;font-size:18px;color:var(--gold-l)}
@media(max-width:680px){.capture-in{grid-template-columns:1fr;gap:18px}}


/* --- ajout multi-pages : sélecteur de langue en liens --- */
.lang-toggle a{border:none;background:none;font-family:var(--ff-mono);font-size:12px;font-weight:700;letter-spacing:.06em;padding:7px 12px;cursor:pointer;color:var(--ink-2);text-decoration:none;display:inline-flex;align-items:center;transition:background .18s,color .18s}
.lang-toggle a:hover{color:var(--ink)}
.lang-toggle a.active{background:var(--emerald);color:#fff}
.lang-toggle a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

.footer-consent{background:none;border:0;padding:0;margin-left:6px;font:inherit;color:inherit;opacity:.85;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.footer-consent:hover{opacity:1;color:#ECD08A}
