/* ══════════════════════════════════════════════════
   Quentin de Pret — système de design partagé
   Palette : mangue · framboise · bleu · vert feuille
   ══════════════════════════════════════════════════ */

:root{
  --paper:#FCFAF7; --white:#FFFFFF; --tint:#F7EEE3;
  --ink:#14110D; --muted:#6B6257; --hair:rgba(20,17,13,.12);
  --mango:#F5630A; --mango-lt:#FFA51F; --mango-dk:#C13F06;
  --blue:#2E6BD6; --blue-lt:#E7EFFC;
  --leaf:#2E9E5B; --leaf-lt:#57C97E; --leaf-dk:#1A7643;
  --tint-mango:#FDF0E2; --tint-blue:#EDF3FD; --tint-green:#EAF7EF;
  --rasp:#DE3F63; --mangue:#DF711E;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.6;font-size:17px;overflow-x:hidden}
h1,h2,h3{font-family:'Inter Tight',sans-serif;font-weight:700;letter-spacing:-.035em;line-height:1.02}
.wrap{max-width:1160px;margin:0 auto;padding:0 clamp(22px,5vw,64px)}
section{padding:clamp(70px,9vw,130px) 0}
h2{font-size:clamp(30px,4vw,50px);max-width:20ch}
.muted{color:var(--muted)}
a{color:inherit}
.label{font-size:11.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:24px;display:flex;align-items:center;gap:11px}
.label svg{width:13px;height:17px;color:var(--mango);flex:none}

.btn{font-family:inherit;font-weight:700;font-size:15.5px;padding:15px 26px;border-radius:7px;text-decoration:none;display:inline-flex;gap:9px;align-items:center;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s;cursor:pointer}
.btn-primary{color:#fff;background:linear-gradient(120deg,var(--mango),#E8324F);box-shadow:0 8px 20px -8px rgba(245,99,10,.65)}
.btn-primary:hover{color:#fff;transform:translateY(-2px);box-shadow:0 13px 26px -8px rgba(232,50,79,.7)}
.btn-ghost{border-color:var(--hair);color:var(--ink);font-weight:600}
.btn-ghost:hover{border-color:var(--mango);color:var(--mango);transform:translateY(-2px)}
.btn-light{background:#fff;color:var(--ink);font-weight:700}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 14px 28px -10px rgba(0,0,0,.35)}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .8s cubic-bezier(.22,.7,.2,1),transform .8s cubic-bezier(.22,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* ─── NAV ─── */
nav{position:sticky;top:0;z-index:50;background:rgba(252,250,247,.93);backdrop-filter:blur(12px)}
nav::after{content:"";display:block;height:3px;
  background:linear-gradient(90deg,var(--mango-lt),var(--mango) 26%,var(--rasp) 52%,var(--blue) 78%,var(--leaf))}
.nav-in{display:flex;align-items:center;justify-content:space-between;padding:15px clamp(22px,5vw,64px);max-width:1160px;margin:0 auto}
.brand{font-family:'Inter Tight';font-weight:800;font-size:20px;letter-spacing:-.025em;text-decoration:none;display:flex;align-items:center;gap:10px}
.brand svg{width:18px;height:24px;color:var(--mango)}
.navlinks{display:flex;gap:24px;align-items:center;font-size:16px}
.navlinks a{color:#4A4238;text-decoration:none;font-weight:600;transition:color .2s;position:relative;padding:4px 0}
.navlinks a:not(.cta)::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--mango);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.navlinks a:not(.cta):hover{color:var(--ink)}
.navlinks a:not(.cta):hover::after{transform:scaleX(1)}
.navlinks a.here{color:var(--ink)} .navlinks a.here::after{transform:scaleX(1)}
.navlinks .cta{color:#fff;background:linear-gradient(120deg,var(--mango),#E8324F);padding:11px 21px;border-radius:7px;font-weight:700;
  box-shadow:0 8px 20px -8px rgba(245,99,10,.65);transition:transform .2s,box-shadow .2s}
.navlinks .cta:hover{color:#fff;transform:translateY(-2px);box-shadow:0 13px 26px -8px rgba(232,50,79,.7)}
.nav-right{display:flex;align-items:center;gap:10px}
.burger{display:none;width:42px;height:42px;border:1px solid var(--hair);border-radius:9px;background:var(--white);
  cursor:pointer;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:5px;flex:0 0 auto;transition:border-color .2s}
.burger:hover{border-color:var(--ink)}
.burger span{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;transition:transform .28s,opacity .2s}
nav.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
nav.open .burger span:nth-child(2){opacity:0}
nav.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:960px){
  .nav-in{padding-top:11px;padding-bottom:11px}
  .brand{font-size:18px;white-space:nowrap}
  .brand svg{width:16px;height:21px}
  .burger{display:flex}
  .navlinks{position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;
    align-items:stretch;gap:0;padding:6px clamp(22px,5vw,64px) 22px;background:var(--paper);
    border-top:1px solid var(--hair);box-shadow:0 26px 44px -26px rgba(20,17,13,.45);z-index:60}
  nav.open .navlinks{display:flex}
  .navlinks a{padding:15px 2px;border-bottom:1px solid var(--hair);font-size:17px}
  .navlinks a:not(.cta)::after{display:none}
  .navlinks a.here{color:var(--mango-dk)}
  .navlinks .cta{margin-top:18px;border-bottom:none;text-align:center;padding:15px 20px;border-radius:8px}
  .navlinks .cta:hover{transform:none}
}
@media(max-width:420px){.brand{font-size:16.5px}.langsw a{padding:6px 9px!important;font-size:12px}}
/* sélecteur de langue */
.langsw{display:inline-flex;align-items:center;border:1px solid var(--hair);border-radius:100px;overflow:hidden;background:var(--white);flex:0 0 auto}
.langsw a{padding:6px 11px;font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--muted);opacity:1;
  text-decoration:none;line-height:1;transition:background .2s,color .2s;display:inline-block}
.langsw a::after{display:none!important}
.langsw a:hover{color:var(--ink);background:var(--tint)}
.langsw a.on{background:var(--ink);color:#fff}
.langsw a.on:hover{background:var(--ink);color:#fff}

/* ─── HERO ACCUEIL ─── */
.hero{display:grid;grid-template-columns:1.14fr .86fr;gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(50px,7vw,100px) 0 clamp(36px,5vw,64px)}
@media(max-width:880px){.hero{grid-template-columns:1fr;gap:36px}}
.hero h1{font-size:clamp(36px,6vw,80px);margin-bottom:26px;max-width:14ch}
.hero h1 em{font-style:normal;
  background:linear-gradient(96deg,#FFB020,#F5630A 42%,#E8324F 78%,#C21B57);
  background-size:230% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:flow 9s ease-in-out infinite}
@keyframes flow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.hero .label{color:var(--mango-dk);font-weight:700}
.hero .lead{font-size:clamp(17px,1.35vw,19.5px);color:var(--muted);max-width:47ch;margin-bottom:34px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.mango-stage{position:relative;display:flex;justify-content:center;align-items:center}
.mango-stage .halo{position:absolute;width:82%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(247,160,42,.30),rgba(247,160,42,0) 68%)}
.mango-stage img{position:relative;width:min(84%,340px);filter:drop-shadow(0 34px 30px rgba(150,70,15,.3));animation:drift 12s ease-in-out infinite}
@keyframes drift{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-14px) rotate(2deg)}}

/* ─── HERO PAGES INTERNES ─── */
.pagehero{position:relative;overflow:hidden;padding:clamp(46px,6vw,86px) 0 clamp(40px,5vw,70px)}
.pagehero .wm{position:absolute;right:-5%;top:50%;transform:translateY(-50%) rotate(9deg);height:150%;opacity:.09;color:var(--c,var(--mango));z-index:0}
.pagehero .wrap{position:relative;z-index:2}
.pagehero .label{color:var(--c,var(--mango));font-weight:700}
.pagehero .label svg{color:var(--c,var(--mango))}
.pagehero h1{font-size:clamp(33px,5.4vw,70px);max-width:16ch;margin-bottom:22px}
.pagehero h1 em{font-style:normal;color:var(--c,var(--mango))}
.pagehero .lead{font-size:clamp(17px,1.35vw,20px);color:var(--muted);max-width:56ch;margin-bottom:32px}
.crumb{font-size:13.5px;color:var(--muted);margin-bottom:20px}
.crumb a{text-decoration:none} .crumb a:hover{color:var(--ink)}

/* ─── BANDE DE PREUVE ─── */
.proof{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);background:var(--white)}
.proof-in{display:flex;flex-wrap:wrap;gap:clamp(22px,5vw,64px);padding:26px 0}
.proof .it{font-size:13.5px;color:var(--muted)}
.proof .it b{display:block;font-family:'Inter Tight';font-weight:700;font-size:25px;color:var(--ink);letter-spacing:-.03em;margin-bottom:2px}
.proof .it:nth-child(2) b{color:var(--mango)} .proof .it:nth-child(3) b{color:var(--blue)} .proof .it:nth-child(4) b{color:var(--leaf)}

/* ─── BANDES DE COULEUR ─── */
.band,.band-rasp,.band-blue,.contact{position:relative;overflow:hidden;color:#fff}
.band{background:linear-gradient(122deg,#EE8410,#D8520A 50%,#9E3105)}
.band-rasp{background:linear-gradient(122deg,#DD6062,#C92B54 50%,#8C1742)}
.band-blue{background:linear-gradient(122deg,#4A7FD8,#2456B8 50%,#153A85)}
.contact{background:linear-gradient(122deg,#3EAF6B,#23864B 50%,#125A36);text-align:center}
.plus{position:absolute;inset:0;opacity:.35;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44'%3E%3Cpath d='M22 15v14M15 22h14' stroke='rgba(255,255,255,0.45)' stroke-width='1.2'/%3E%3C/svg%3E")}
.band .wm{position:absolute;right:-3%;top:50%;transform:translateY(-50%) rotate(9deg);height:126%;opacity:.16;color:#fff}
.band-rasp .wm{position:absolute;right:-4%;top:50%;transform:translateY(-50%) rotate(10deg);height:130%;opacity:.15;color:#fff}
.band-blue .wm{position:absolute;left:-4%;top:50%;transform:translateY(-50%) rotate(-11deg);height:130%;opacity:.15;color:#fff}
.contact .wm{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:150%;opacity:.17;color:#fff}
.band .wrap,.band-rasp .wrap,.band-blue .wrap,.contact .wrap{position:relative;z-index:2}
.band .label,.band-rasp .label,.band-blue .label,.contact .label{color:rgba(255,255,255,.85)}
.band .label svg,.band-rasp .label svg,.band-blue .label svg,.contact .label svg{color:#fff}
.band h2,.band-rasp h2,.band-blue h2,.contact h2{color:#fff}
.band .stmt{font-family:'Inter Tight';font-weight:700;font-size:clamp(26px,3.5vw,46px);line-height:1.1;letter-spacing:-.03em;max-width:21ch}
.band p.sub{margin-top:22px;max-width:54ch;color:rgba(255,255,255,.9)}
.band-rasp p.sub,.band-blue p.sub{margin-top:22px;max-width:54ch;color:rgba(255,255,255,.9)}
.contact .label{justify-content:center}
.contact h2{margin:0 auto 20px;font-size:clamp(30px,4.2vw,52px)}
.contact p{color:rgba(255,255,255,.9);max-width:46ch;margin:0 auto 32px}
.contact .btn-primary{box-shadow:0 10px 26px -8px rgba(0,0,0,.4)}
.contact .btn-primary:hover{box-shadow:0 16px 32px -8px rgba(0,0,0,.45)}

/* ─── QUI JE SUIS / SPLIT ─── */
.about{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(28px,5vw,60px);align-items:start}
@media(max-width:880px){.about{grid-template-columns:1fr}}
.portrait{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;background:var(--tint)}
.about p{color:var(--muted);margin-top:18px}
.about p b{color:var(--ink);font-weight:600}
.tl{margin-top:40px;border-top:1px solid var(--hair)}
.tl .row{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--hair);align-items:baseline}
@media(max-width:600px){.tl .row{grid-template-columns:78px 1fr;gap:14px}}
.tl .y{font-family:'Inter Tight';font-weight:700;font-size:15px;color:var(--mango)}
.tl .d{font-size:15.5px;color:var(--muted)}

/* ─── CE EN QUOI JE CROIS ─── */
.credo{background:var(--white)}
.credo-lines{margin-top:44px;border-top:1px solid var(--hair)}
.credo-lines .ln{display:grid;grid-template-columns:30px 1fr;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--hair);transition:background .3s,padding-left .3s}
.credo-lines .ln:hover{background:var(--paper);padding-left:12px}
.credo-lines .ln svg{width:20px;height:26px;color:var(--c)}
.credo-lines .ln p{font-family:'Inter Tight';font-weight:600;font-size:clamp(19px,2.15vw,28px);line-height:1.24;letter-spacing:-.028em}
.credo-lines .ln p em{font-style:normal;color:var(--c)}
@media(max-width:600px){.credo-lines .ln{grid-template-columns:22px 1fr;gap:14px}.credo-lines .ln svg{width:16px;height:21px}}

/* ─── GRILLE DE CELLULES ─── */
.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));gap:1px;margin-top:50px;background:var(--hair);border:1px solid var(--hair)}
.band-rasp .grid4,.band-blue .grid4,.band .grid4{background:transparent;border:1px solid rgba(255,255,255,.4)}
.cell{--c:var(--mango);background:var(--paper);padding:30px 26px;transition:background .25s;position:relative}
.cell:nth-child(2){--c:var(--blue)} .cell:nth-child(3){--c:var(--leaf)} .cell:nth-child(4){--c:var(--mango-lt)}
.cell:nth-child(5){--c:var(--rasp)} .cell:nth-child(6){--c:var(--mangue)}
.cell:nth-child(7){--c:var(--blue)} .cell:nth-child(8){--c:var(--leaf)}
.cell::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--c);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.cell:hover{background:var(--white)} .cell:hover::before{transform:scaleX(1)}
.cell .n{font-family:'Inter Tight';font-weight:700;font-size:13px;color:var(--c);letter-spacing:.06em;margin-bottom:16px}
.cell h3{font-size:19px;margin-bottom:10px;color:var(--ink)}
.cell p{font-size:15px;color:var(--muted);line-height:1.55}

/* ─── CARTES ACCOMPAGNEMENT ─── */
.offers{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:50px}
@media(max-width:820px){.offers{grid-template-columns:1fr}}
.offer{background:var(--white);border:1px solid var(--hair);border-radius:12px;padding:clamp(26px,3vw,38px);text-decoration:none;display:flex;flex-direction:column;
  transition:background .35s ease,border-color .3s,transform .3s,box-shadow .3s}
.offer:hover{transform:translateY(-4px)}
.offer:nth-child(1):hover{background:rgba(222,63,99,.055);border-color:rgba(222,63,99,.38);box-shadow:0 26px 50px -32px rgba(222,63,99,.5)}
.offer:nth-child(2):hover{background:rgba(46,107,214,.055);border-color:rgba(46,107,214,.38);box-shadow:0 26px 50px -32px rgba(46,107,214,.5)}
.offer .n{font-size:12px;font-weight:600;letter-spacing:.16em;color:var(--muted);margin-bottom:16px}
.offer h3{font-size:clamp(20px,2.1vw,26px);margin-bottom:8px}
.offer .sub{font-size:14.5px;font-weight:600;margin-bottom:14px}
.offer:nth-child(3):hover{background:rgba(46,158,91,.055);border-color:rgba(46,158,91,.38);box-shadow:0 26px 50px -32px rgba(46,158,91,.5)}
.offer:nth-child(1) .sub{color:var(--rasp)}
.offer:nth-child(2) .sub{color:var(--blue)}
.offer:nth-child(3) .sub{color:var(--leaf)}
.offers-3{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.offer p{font-size:15.5px;color:var(--muted);margin-bottom:22px}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.tag{font-size:12.5px;color:var(--muted);border:1px solid var(--hair);padding:5px 12px;border-radius:100px}
.offer .go{margin-top:auto;font-size:15px;font-weight:600}

/* ─── ÉTAPES ─── */
.steps{margin-top:48px;border-top:1px solid var(--hair)}
.steps .st{display:grid;grid-template-columns:78px 1fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--hair);align-items:start}
@media(max-width:600px){.steps .st{grid-template-columns:52px 1fr;gap:16px}}
.steps .st .num{font-family:'Inter Tight';font-weight:800;font-size:clamp(26px,3vw,36px);line-height:1;color:var(--c,var(--mango));letter-spacing:-.04em}
.steps .st h3{font-size:20px;margin-bottom:8px}
.steps .st p{color:var(--muted);font-size:15.5px}
.on-band{border-color:rgba(255,255,255,.3)}
.on-band .st{border-color:rgba(255,255,255,.3)}
.on-band .st .num{color:#fff}
.on-band .st h3{color:#fff}
.on-band .st p{color:rgba(255,255,255,.88)}

/* ─── LISTE À PUCES MANGUE ─── */
.mlist{margin-top:34px;display:grid;gap:16px}
.mlist li{list-style:none;position:relative;padding-left:36px;font-size:16.5px;color:var(--muted);line-height:1.55}
.mlist li svg{position:absolute;left:0;top:4px;width:16px;height:21px;color:var(--c,var(--mango))}
.mlist li b{color:var(--ink);font-weight:600}
.on-band .mlist li,.mlist.on-band li{color:rgba(255,255,255,.92)}
.on-band .mlist li b,.mlist.on-band li b{color:#fff}
.on-band .mlist li svg,.mlist.on-band li svg{color:#fff}
.on-band .mlist li a,.mlist.on-band li a{color:#fff}

/* ─── RÉSULTATS ─── */
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(22px,4vw,48px);margin-top:50px}
.res{border-top:2px solid rgba(255,255,255,.55);padding-top:20px}
.res h3{font-size:clamp(20px,2.1vw,25px);margin-bottom:10px;color:#fff}
.res p{font-size:15px;color:rgba(255,255,255,.88)}
.res-light{border-top:2px solid var(--c,var(--mango));padding-top:20px}
.res-light h3{font-size:clamp(20px,2.1vw,25px);margin-bottom:10px;color:var(--ink)}
.res-light p{font-size:15px;color:var(--muted)}

/* ─── TÉMOIGNAGES ─── */
.quotes{margin-top:50px;border-top:1px solid var(--hair)}
.qrow{display:grid;grid-template-columns:1fr 230px;gap:clamp(20px,4vw,50px);padding:32px 0;border-bottom:1px solid var(--hair);align-items:start}
@media(max-width:760px){.qrow{grid-template-columns:1fr;gap:12px}}
.qrow p{font-family:'Inter Tight';font-weight:500;font-size:clamp(18px,1.75vw,22px);line-height:1.4;letter-spacing:-.02em}
.qrow .who{font-size:14px;color:var(--muted)}
.qrow .who b{display:block;color:var(--ink);font-weight:600;margin-bottom:2px}

/* ─── LIVRE ─── */
.book{background:linear-gradient(120deg,#FFFBE3,#FCEFB4 60%,#F7E08F);position:relative;overflow:hidden}
.book .wm{position:absolute;left:-4%;bottom:-16%;height:120%;opacity:.15;color:var(--mango);transform:rotate(-14deg)}
.book-in{position:relative;z-index:2;display:grid;grid-template-columns:.6fr 1.4fr;gap:clamp(28px,5vw,60px);align-items:center}
@media(max-width:820px){.book-in{grid-template-columns:1fr}}
.book-cover{border-radius:6px;overflow:hidden;box-shadow:0 30px 56px -26px rgba(20,17,13,.5)}
.book-cover img{width:100%;display:block}
.book p{color:var(--muted);max-width:48ch;margin:18px 0 26px}
.book-form{display:flex;gap:10px;flex-wrap:wrap;max-width:580px}
.book-form input{padding:14px 16px;border-radius:6px;border:1px solid var(--hair);background:var(--white);font-family:inherit;font-size:15px;min-width:150px;flex:1;color:var(--ink)}
.book-form input:focus{outline:none;border-color:var(--ink)}
.book .dl{display:inline-block;margin-top:16px;font-size:14px;color:var(--muted)}

/* ─── ARTICLES ─── */
.arts{display:grid;grid-template-columns:repeat(auto-fit,minmax(268px,1fr));gap:1px;margin-top:50px;background:var(--hair);border:1px solid var(--hair)}
.art{background:var(--paper);padding:28px 26px;text-decoration:none;display:flex;flex-direction:column;transition:background .25s}
.art:hover{background:var(--white)}
.art .cat{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mango);margin-bottom:14px}
.art:nth-child(4n+2) .cat{color:var(--blue)} .art:nth-child(4n+3) .cat{color:var(--leaf)} .art:nth-child(4n) .cat{color:var(--rasp)}
.art h3{font-size:18px;line-height:1.22;margin-bottom:10px}
.art h3 em{font-style:italic;color:var(--mango)}
.art:nth-child(4n+2) h3 em{color:var(--blue)} .art:nth-child(4n+3) h3 em{color:var(--leaf)} .art:nth-child(4n) h3 em{color:var(--rasp)}
.art p{font-size:14.5px;color:var(--muted);margin-bottom:18px}
.art .go{margin-top:auto;font-size:14.5px;font-weight:600}
.allarts{margin-top:28px;display:flex;justify-content:flex-end}

/* ─── FORMULAIRE BREVO (livre offert) ─── */
#sib-form-container,.sib-form{background:transparent!important;background-image:none!important;padding:0!important;max-width:100%!important}
#sib-container{background:transparent!important;border:none!important;border-radius:0!important;max-width:100%!important;padding:0!important;text-align:left!important;direction:ltr}
.sib-form .form__entry{padding:0!important}
.sib-form .entry__label{display:block!important;color:var(--muted)!important;font-family:'Inter',sans-serif!important;font-size:11.5px!important;font-weight:600!important;letter-spacing:.14em!important;text-transform:uppercase!important;margin-bottom:7px!important}
.sib-form .input{width:100%!important;box-sizing:border-box!important;height:auto!important;min-height:0!important;line-height:1.45!important;
  background:var(--white)!important;border:1px solid var(--hair)!important;border-radius:7px!important;color:var(--ink)!important;
  font-family:'Inter',sans-serif!important;font-size:15.5px!important;padding:13px 16px!important;box-shadow:none!important;margin:0!important}
.sib-form .form__label-row{display:block!important}
.sib-form .entry__field{display:block!important;border:none!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0!important}
.sib-form .entry__error:empty{display:none!important}
.sib-form .entry__error{margin-top:6px!important;padding:6px 10px!important;border-radius:6px!important}
.brevo-row{align-items:start}
.brevo-row .form__entry,.brevo-field .form__entry{margin:0!important}
.sib-form .sib-form-block__button svg{width:15px;height:15px;fill:currentColor;margin-right:9px;flex:none}
.sib-form .input:focus{border-color:var(--mango)!important;outline:none!important}
.sib-form .input--hidden{display:none!important}
.sib-form .sib-form-block__button{font-family:'Inter',sans-serif!important;font-weight:700!important;font-size:15.5px!important;color:#fff!important;
  background:linear-gradient(120deg,var(--mango),#E8324F)!important;border:none!important;border-radius:7px!important;padding:15px 28px!important;width:auto!important;
  box-shadow:0 8px 20px -8px rgba(245,99,10,.65)!important;cursor:pointer!important;text-align:center!important;letter-spacing:0!important;text-transform:none!important;
  transition:transform .2s,box-shadow .2s!important}
.sib-form .sib-form-block__button:hover{transform:translateY(-2px)!important;box-shadow:0 13px 26px -8px rgba(232,50,79,.7)!important}
.sib-form-message-panel{max-width:100%!important;font-family:'Inter',sans-serif!important;border-radius:7px!important;margin-bottom:14px!important}
.brevo-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
@media(max-width:600px){.brevo-row{grid-template-columns:1fr}}
.brevo-field{margin-bottom:12px}
.brevo-legal{font-size:13px;color:var(--muted);margin-top:14px;max-width:52ch}

/* ─── FORMULAIRE CONTACT ─── */
.cform{display:grid;gap:14px;max-width:620px;margin-top:40px}
.cform .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:600px){.cform .row2{grid-template-columns:1fr}}
.cform input,.cform textarea,.cform select{width:100%;padding:14px 16px;border-radius:7px;border:1px solid var(--hair);background:var(--white);font-family:inherit;font-size:15.5px;color:var(--ink)}
.cform textarea{min-height:150px;resize:vertical}
.cform input:focus,.cform textarea:focus,.cform select:focus{outline:none;border-color:var(--mango)}
.cform .hint{font-size:13.5px;color:var(--muted)}

/* ─── PAGE ARTICLE ─── */
.prose{max-width:74ch;margin:0 auto}
.prose h2{font-size:clamp(25px,3.1vw,38px);margin:56px 0 18px;max-width:24ch}
.prose h2 em{font-style:italic;color:var(--c,var(--mango))}
.prose h3{font-size:20px;margin:34px 0 12px}
.prose p{margin-bottom:20px;color:#2E2820;font-size:17.5px;line-height:1.68}
.prose p strong,.prose li strong{color:var(--ink);font-weight:600}
.prose ul{margin:0 0 24px;display:grid;gap:11px}
.prose ul li{list-style:none;position:relative;padding-left:33px;font-size:17px;color:#2E2820;line-height:1.6}
.prose ul li::before{content:"";position:absolute;left:2px;top:9px;width:9px;height:9px;border-radius:50%;background:var(--c,var(--mango))}
.prose .lede{font-size:clamp(18.5px,1.7vw,21px);color:var(--muted);line-height:1.6;margin-bottom:26px}
.callout{background:var(--tint-mango);border-left:3px solid var(--c,var(--mango));border-radius:0 10px 10px 0;padding:26px 28px;margin:34px 0}
.callout .k{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--c,var(--mango));margin-bottom:12px}
.callout p{margin-bottom:0;font-size:16.5px}
.definition{background:var(--tint-blue);border-radius:10px;padding:26px 28px;margin:34px 0}
.definition .k{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.definition p{margin-bottom:0;font-size:16.5px}
.pullquote{font-family:'Inter Tight';font-weight:600;font-size:clamp(20px,2.4vw,28px);line-height:1.32;letter-spacing:-.025em;
  border-left:4px solid var(--c,var(--mango));padding:8px 0 8px 26px;margin:40px 0;color:var(--ink)}
.ctable{width:100%;border-collapse:collapse;margin:34px 0;font-size:15.5px}
.ctable th{text-align:left;font-family:'Inter Tight';font-weight:700;font-size:14px;padding:14px 16px;background:var(--tint);border-bottom:2px solid var(--hair)}
.ctable th:first-child{color:var(--muted)} .ctable th:last-child{color:var(--c,var(--mango))}
.ctable td{padding:14px 16px;border-bottom:1px solid var(--hair);color:var(--muted);vertical-align:top}
.ctable tr:hover td{background:var(--white)}
/* tableau responsive */
.tablewrap{margin:34px 0;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--hair);border-radius:10px;position:relative}
.tablewrap::after{content:"";position:absolute;top:0;right:0;bottom:0;width:34px;pointer-events:none;
  background:linear-gradient(90deg,rgba(252,250,247,0),rgba(252,250,247,.92));border-radius:0 10px 10px 0}
@media(min-width:760px){.tablewrap::after{display:none}}
.tablehint{display:none;font-size:13px;color:var(--muted);margin:-26px 0 30px}
@media(max-width:759px){.tablehint{display:block}}
.tablewrap .ctable{margin:0;min-width:520px;border-radius:0}
.ctable tbody tr:nth-child(odd) td{background:rgba(20,17,13,.02)}
.ctable td:first-child{color:var(--muted)} .ctable td:last-child{color:var(--ink);font-weight:500}
@media(max-width:600px){.ctable th,.ctable td{padding:12px 13px;font-size:14.5px}}

/* listes ✓ / ✕ */
.vlist,.xlist{margin:30px 0;display:grid;gap:13px}
.vlist li,.xlist li{list-style:none;position:relative;padding-left:38px;font-size:16.5px;color:#2E2820;line-height:1.55}
.vlist li::before{content:"✓";position:absolute;left:0;top:0;color:var(--leaf);font-weight:700;font-size:17px}
.xlist li::before{content:"✕";position:absolute;left:0;top:1px;color:var(--rasp);font-weight:700;font-size:16px}
.vlist li strong,.xlist li strong{color:var(--ink);font-weight:600}

/* double colonne comparative */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:34px 0}
@media(max-width:700px){.duo{grid-template-columns:1fr}}
.duo .col{border:1px solid var(--hair);border-radius:12px;padding:26px 24px;background:var(--paper)}
.duo .col:first-child{border-top:3px solid var(--muted)}
.duo .col:last-child{border-top:3px solid var(--c,var(--mango))}
.duo .col h4{font-family:'Inter Tight';font-weight:700;font-size:17px;letter-spacing:-.02em;margin-bottom:14px}
.duo .col ul{margin:0;display:grid;gap:9px}
.duo .col li{list-style:none;position:relative;padding-left:27px;font-size:15px;color:var(--muted);line-height:1.5}
.duo .col li::before{content:"";position:absolute;left:2px;top:8px;width:6px;height:6px;border-radius:50%;background:var(--c,var(--mango))}
.duo .col:first-child li::before{background:var(--muted)}

/* rangée de tags */
.tagrow{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0}
.tagrow span{font-size:13.5px;font-weight:500;color:var(--ink);background:var(--tint);border:1px solid var(--hair);padding:8px 15px;border-radius:100px}

/* carte de niveau */
.levelcard{border:1px solid var(--hair);border-left:4px solid var(--c,var(--mango));border-radius:0 12px 12px 0;padding:26px 28px;margin:26px 0;background:var(--paper)}
.levelcard .lvl{font-family:'Inter Tight';font-weight:700;font-size:19px;letter-spacing:-.02em;margin-bottom:14px;display:flex;align-items:center;gap:11px}
.levelcard .lvl::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--c,var(--mango));flex:none}
.levelcard p{font-size:16px;margin-bottom:12px}
.levelcard .tension{font-size:15px;color:var(--muted);border-top:1px solid var(--hair);padding-top:13px;margin-bottom:0}

/* CTA en ligne dans l'article */
.inlinecta{border:1px solid var(--hair);border-radius:12px;padding:28px;margin:38px 0;background:var(--tint)}
.inlinecta p{margin-bottom:18px}
.inlinecta .row{display:flex;gap:11px;flex-wrap:wrap}

/* bande statistiques */
.statband{position:relative;overflow:hidden;color:#fff;background:linear-gradient(122deg,#EE8410,#D8520A 50%,#9E3105)}
.statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(24px,4vw,48px)}
.statgrid .s .n{font-family:'Inter Tight';font-weight:800;font-size:clamp(38px,5vw,62px);line-height:1;letter-spacing:-.04em}
.statgrid .s .t{font-size:15.5px;color:rgba(255,255,255,.9);margin-top:12px;max-width:26ch}

.seealso{margin-top:44px;padding-top:26px;border-top:1px solid var(--hair)}
.seealso .k{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.seealso a{display:block;padding:12px 0;text-decoration:none;font-family:'Inter Tight';font-weight:600;font-size:17.5px;border-bottom:1px solid var(--hair);transition:color .2s,padding-left .2s}
.seealso a:hover{color:var(--c,var(--mango));padding-left:8px}
.artmeta{font-size:14px;color:var(--muted);margin-top:18px}

/* ─── PIED DE PAGE ─── */
footer{padding:48px 0;background:var(--tint)}
.foot{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;align-items:flex-end;font-size:13.5px;color:var(--muted)}
.foot a{color:var(--muted);text-decoration:none}
.foot a:hover{color:var(--ink)}
.foot .links a{margin-left:18px}
@media(max-width:600px){.foot{flex-direction:column;align-items:flex-start}.foot .links a{margin-left:0;margin-right:16px}}

/* ─── MISSIONS / CAS ─── */
.cases{margin-top:50px;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.2vw,26px)}
@media(max-width:980px){.cases{grid-template-columns:1fr}}
.case{background:var(--white);border:1px solid var(--hair);border-radius:12px;padding:clamp(24px,2.6vw,32px);display:flex;flex-direction:column;transition:border-color .25s,transform .25s,box-shadow .25s}
.case:hover{transform:translateY(-3px);border-color:var(--c2);box-shadow:0 22px 44px -30px rgba(20,17,13,.35)}
.case .tag{display:inline-block;align-self:flex-start;font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#fff;background:var(--c2);padding:5px 11px;border-radius:100px;margin-bottom:16px}
.case h3{font-size:clamp(19px,1.9vw,22px);line-height:1.25;letter-spacing:-.025em;margin-bottom:16px;color:var(--ink)}
.case dl{margin:0;display:grid;gap:13px}
.case dt{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.case dd{margin:0;font-size:15px;line-height:1.55;color:#2E2820}
.case .out{margin-top:auto;padding-top:18px;border-top:1px solid var(--hair)}
.case .out dd{color:var(--ink);font-weight:600}
.casenote{margin-top:26px;font-size:14px;color:var(--muted);max-width:78ch}

/* ─── PONT INDIVIDU / COLLECTIF ─── */
.bridge{margin-top:clamp(34px,4vw,52px);border:1px solid var(--hair);border-left:3px solid var(--mango);border-radius:10px;background:var(--white);padding:clamp(26px,3vw,38px);box-shadow:0 18px 40px -32px rgba(20,17,13,.35)}
.bridge a{color:var(--mango-dk);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.bridge a:hover{color:var(--ink)}
.band .bridge,.band-rasp .bridge,.band-blue .bridge,.contact .bridge{border-color:rgba(255,255,255,.45)}
.bridge h3{font-size:clamp(19px,2vw,24px);letter-spacing:-.025em;margin-bottom:14px;color:var(--ink)}
.bridge p{font-size:clamp(15.5px,1.55vw,17px);line-height:1.65;color:#2E2820;max-width:74ch}
.bridge p+p{margin-top:13px}

/* chapô de section */
.sublead{font-size:clamp(16px,1.3vw,18px);color:var(--muted);max-width:60ch;margin-top:-10px}

/* boutons secondaires posés sur un aplat de couleur */
.band .btn-ghost,.band-rasp .btn-ghost,.band-blue .btn-ghost,.contact .btn-ghost,.pagehero.photo .btn-ghost{
  color:#fff;border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.10);font-weight:700}
.band .btn-ghost:hover,.band-rasp .btn-ghost:hover,.band-blue .btn-ghost:hover,.contact .btn-ghost:hover,.pagehero.photo .btn-ghost:hover{
  color:var(--ink);border-color:#fff;background:#fff;transform:translateY(-2px)}

/* confirmation d'envoi */
.formdone{display:none;border:1px solid var(--leaf);background:var(--tint-green);border-radius:10px;
  padding:clamp(24px,3vw,34px);margin-top:8px}
.formdone.show{display:block}
.formdone h3{font-size:clamp(19px,2vw,23px);margin-bottom:10px;color:var(--leaf-dk)}
.formdone p{font-size:15.5px;color:#2E2820;max-width:56ch}
.formdone p+p{margin-top:9px}
.formfail{display:none;margin-top:14px;font-size:14.5px;color:#8C1742;background:#FDECEF;
  border:1px solid #F0B8C4;border-radius:8px;padding:12px 15px}
.formfail.show{display:block}
.cform button[disabled]{opacity:.6;cursor:progress}
