/* SAGITTA — styles de base (issus de la maquette validée) */
:root{
--navy900:#0C0C0C;--navy800:#161616;--navy700:#2A2A2A;--navy100:#EEEEEE;
--amber500:#F59E0B;--amber600:#D97706;--amber100:#FEF3C7;--amber800:#92400E;
--teal700:#0F766E;--teal100:#CCFBF1;
--bordo:#7F1D1D;--bordo100:#FEF2F2;
--s900:#121212;--s600:#555555;--s400:#9F9F9F;--s200:#E8E8E8;--s100:#F4F4F4;--s50:#FAFAFA;
--sky100:#EFEFEF;--sky800:#2A2A2A;--em100:#D1FAE5;--em800:#065F46;
--red100:#FEE2E2;--red800:#991B1B;--vio100:#EDE9FE;--vio800:#5B21B6;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',-apple-system,'Segoe UI',Roboto,sans-serif;color:var(--s900);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{line-height:1.2;letter-spacing:-.02em}

/* trust bar */
.trustbar{background:var(--navy900);color:#D5D5D5;font-size:12.5px;padding:9px 0}
.trustbar .wrap{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.trustbar b{color:#fff;font-weight:600}
.tb-hide{display:none}
@media(min-width:860px){.tb-hide{display:inline}}

/* header */
header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--s200)}
.hrow{display:flex;align-items:center;gap:28px;height:74px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;letter-spacing:-.03em}
.logomark{width:34px;height:34px;border-radius:8px;background:var(--navy800);display:grid;place-items:center;color:var(--amber500);font-size:17px;font-weight:800}
nav.main{display:none;gap:24px;font-size:14.5px;font-weight:500;margin-left:8px}
@media(min-width:1024px){nav.main{display:flex}}
nav.main a{padding:6px 0;border-bottom:2px solid transparent}
nav.main a:hover{border-color:var(--amber500)}
.hactions{margin-left:auto;display:flex;align-items:center;gap:12px}
.tel{font-weight:700;font-size:15px;display:none}
@media(min-width:700px){.tel{display:block}}
.btn{display:inline-block;padding:11px 20px;border-radius:8px;font-size:14.5px;font-weight:600;cursor:pointer;border:1.5px solid transparent;text-align:center}
.btn-p{background:var(--amber500);color:var(--navy900)}
.btn-p:hover{background:var(--amber600)}
.btn-s{background:#fff;color:var(--navy800);border-color:var(--s200)}
.btn-s:hover{border-color:var(--navy800)}
.btn-d{background:var(--navy800);color:#fff}
.btn-lg{padding:15px 28px;font-size:16px}
.btn-sm{padding:8px 14px;font-size:13px}

/* hero */
.hero{background:linear-gradient(160deg,var(--navy800) 0%,var(--navy900) 100%);color:#fff;padding:64px 0 0;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-140px;top:-100px;width:520px;height:520px;border-radius:50%;background:rgba(245,158,11,.07)}
.hgrid{display:grid;gap:44px;position:relative}
@media(min-width:1000px){.hgrid{grid-template-columns:1.15fr .85fr;align-items:start}}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.3);color:var(--amber500);font-size:12.5px;font-weight:700;padding:6px 13px;border-radius:99px;letter-spacing:.03em;text-transform:uppercase}
.hero h1{font-size:clamp(32px,4.6vw,52px);font-weight:800;margin:20px 0 18px}
.hero h1 em{font-style:normal;color:var(--amber500)}
.hero p.sub{font-size:18px;color:#D0D0D0;max-width:560px}
.hero p.sub b{color:#fff}

/* selector card */
.selector{background:#fff;color:var(--s900);border-radius:14px;padding:26px;box-shadow:0 24px 60px rgba(0,0,0,.28)}
.selector h3{font-size:17px;margin-bottom:4px}
.selector .sm{font-size:13.5px;color:var(--s600);margin-bottom:18px}
.dom{display:block;border:2px solid var(--s200);border-radius:10px;padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:.15s}
.dom:hover{border-color:var(--s400)}
.dom.on{border-color:var(--navy800);background:var(--navy100)}
.dom.on.t{border-color:var(--teal700);background:var(--teal100)}
.dom.on.a{border-color:var(--bordo);background:var(--bordo100)}
.dom .dt{font-weight:700;font-size:15px;display:flex;align-items:center;gap:9px}
.dot{width:10px;height:10px;border-radius:50%;flex:none}
.dom .dd{font-size:12.5px;color:var(--s600);margin-top:3px;padding-left:19px}
.dom.alt{border-style:dashed}
/* pastilles */
.pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding:26px 0 30px;border-top:1px solid rgba(255,255,255,.12)}
.pill{display:flex;align-items:center;gap:7px;font-size:13.5px;color:#E4E4E4;font-weight:500}
.pill svg{flex:none}

/* sections */
section{padding:72px 0}
.sec-h{max-width:680px;margin-bottom:36px}
.sec-h .kick{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--amber600);margin-bottom:10px}
.sec-h h2{font-size:clamp(25px,3vw,34px);font-weight:800}
.sec-h p{color:var(--s600);margin-top:12px;font-size:16.5px}
.grid{display:grid;gap:18px}
.g2{grid-template-columns:1fr}
.g4{grid-template-columns:1fr 1fr}
.g3{grid-template-columns:1fr}
@media(min-width:760px){.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.g4{grid-template-columns:repeat(4,1fr)}}

/* intention cards */
.icard{border:1px solid var(--s200);border-radius:12px;padding:26px 22px;background:#fff;transition:.18s;display:block}
.icard:hover{border-color:var(--navy800);box-shadow:0 12px 34px rgba(22,22,22,.1);transform:translateY(-2px)}
.icard .ico{width:44px;height:44px;border-radius:10px;background:var(--navy100);color:var(--navy800);display:grid;place-items:center;margin-bottom:16px}
.icard h3{font-size:17.5px;margin-bottom:7px}
.icard p{font-size:14px;color:var(--s600)}
.icard .go{margin-top:16px;font-size:13.5px;font-weight:700;color:var(--navy800)}

/* tabs + formation cards */
.tabs{display:flex;gap:8px;border-bottom:2px solid var(--s200);margin-bottom:28px;flex-wrap:wrap}
.tab{padding:12px 20px;font-size:15px;font-weight:600;color:var(--s600);border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;display:flex;align-items:center;gap:9px}
.tab.on{color:var(--navy800);border-color:var(--navy800)}
.tab.on.t{color:var(--teal700);border-color:var(--teal700)}
.tab.on.a{color:var(--bordo);border-color:var(--bordo)}
.fcard{border:1px solid var(--s200);border-radius:12px;padding:20px;display:flex;flex-direction:column;background:#fff;transition:.18s}
.fcard:hover{box-shadow:0 12px 30px rgba(18,18,18,.09);border-color:var(--s400)}
.badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:13px}
.b{font-size:11px;font-weight:700;padding:4px 9px;border-radius:5px;letter-spacing:.02em;white-space:nowrap}
.b-dom{background:var(--navy800);color:#fff}
.b-dom.t{background:var(--teal700)}
.b-dom.a{background:var(--bordo)}
.b-cert{background:var(--em100);color:var(--em800)}
.b-cpf{background:var(--amber100);color:var(--amber800);border:1px solid #FCD34D}
.b-opco{background:var(--sky100);color:var(--sky800)}
.b-obl{background:var(--red100);color:var(--red800)}
.b-rec{background:var(--vio100);color:var(--vio800)}
.b-mod{background:var(--s100);color:#3A3A3A}
.fcard h3{font-size:16.5px;margin-bottom:8px}
.fcard .meta{font-size:13px;color:var(--s600);display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.fcard .foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--s100);display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.price{font-size:20px;font-weight:800}
.price span{font-size:12px;font-weight:600;color:var(--s600)}
.next{font-size:12.5px;color:var(--s600)}
.next b{color:var(--s900)}
.stars{color:var(--amber500);font-size:13px;font-weight:700;margin-bottom:10px}
.stars span{color:var(--s600);font-weight:500}

/* stats */
.stats{background:var(--navy800);color:#fff}
.stats .grid{gap:30px}
.stat .n{font-size:clamp(30px,3.6vw,42px);font-weight:800;color:var(--amber500);line-height:1}
.stat .l{font-size:13.5px;color:#C3C3C3;margin-top:8px}
.majdate{font-size:12px;color:#9B9B9B;margin-top:30px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.majdate a{color:var(--amber500);font-weight:600;text-decoration:underline}

/* lead magnet */
.lm{background:var(--navy100)}
.lmgrid{display:grid;gap:40px;align-items:center}
@media(min-width:900px){.lmgrid{grid-template-columns:1fr 1fr}}
.pdfmock{background:#fff;border-radius:10px;padding:28px;box-shadow:0 20px 50px rgba(22,22,22,.14);max-width:330px;transform:rotate(-2deg)}
.pdfmock .tag{font-size:10.5px;font-weight:800;color:var(--amber600);letter-spacing:.1em;text-transform:uppercase}
.pdfmock h4{font-size:22px;margin:8px 0 14px;line-height:1.15}
.pdfmock .bar{height:7px;border-radius:4px;background:var(--s100);margin-bottom:7px}
.pdfmock .bar.s{width:65%}
.pdfmock .bar.m{width:82%}
.lm ul{list-style:none;margin:18px 0 0}
.lm ul li{font-size:14.5px;padding-left:26px;position:relative;margin-bottom:9px;color:var(--s600)}
.lm ul li:before{content:"✓";position:absolute;left:0;color:var(--amber600);font-weight:800}
.form{background:#fff;border-radius:12px;padding:26px;border:1px solid var(--s200)}
label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
input[type=text],input[type=email]{width:100%;padding:12px 14px;border:1.5px solid var(--s200);border-radius:8px;font-size:14.5px;font-family:inherit;margin-bottom:15px}
input:focus{outline:2px solid var(--amber500);outline-offset:1px;border-color:var(--amber500)}
.radios{display:flex;gap:10px;margin-bottom:15px}
.radios label{flex:1;border:1.5px solid var(--s200);border-radius:8px;padding:11px;text-align:center;font-size:13.5px;cursor:pointer;margin:0;font-weight:600}
.radios input{display:none}
.radios input:checked+span{color:var(--navy800)}
.radios label:has(input:checked){border-color:var(--navy800);background:var(--navy100)}
.consent{display:flex;gap:10px;font-size:12.5px;color:var(--s600);margin-bottom:16px;align-items:flex-start;line-height:1.45}
.consent input{margin-top:2px;flex:none;width:16px;height:16px}
.consent a{text-decoration:underline}
.microcopy{font-size:12px;color:var(--s600);text-align:center;margin-top:11px}

/* funding */
.fund{border:1px solid var(--s200);border-radius:12px;padding:22px;background:#fff}
.fund .ico{width:40px;height:40px;border-radius:9px;background:var(--amber100);color:var(--amber800);display:grid;place-items:center;font-weight:800;font-size:13px;margin-bottom:14px}
.fund h4{font-size:16px;margin-bottom:6px}
.fund p{font-size:13.5px;color:var(--s600)}
.fund .lk{font-size:13px;font-weight:700;color:var(--navy800);margin-top:12px;display:inline-block;text-decoration:underline}
.fundcta{margin-top:26px;background:var(--navy800);color:#fff;border-radius:12px;padding:26px 28px;display:flex;gap:20px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.fundcta h4{font-size:20px}
.fundcta p{color:#C3C3C3;font-size:14.5px;margin-top:5px}

/* intra */
.intra{background:var(--s50)}
.intragrid{display:grid;gap:40px;align-items:center}
@media(min-width:900px){.intragrid{grid-template-columns:1fr 1fr}}
.deps{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 24px}
.dep{background:#fff;border:1px solid var(--s200);border-radius:99px;padding:7px 15px;font-size:13.5px;font-weight:600}
.dep b{color:var(--amber600)}
.iarg{display:flex;gap:14px;margin-bottom:18px}
.iarg .n{width:30px;height:30px;flex:none;border-radius:50%;background:var(--navy800);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:800}
.iarg h4{font-size:15.5px;margin-bottom:3px}
.iarg p{font-size:13.5px;color:var(--s600)}
.mapbox{background:#fff;border:1px solid var(--s200);border-radius:14px;padding:28px;text-align:center}
.mapbox svg{max-width:100%;height:auto}

/* labels */
.labels{display:grid;gap:16px;grid-template-columns:1fr 1fr}
@media(min-width:900px){.labels{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1100px){.labels{grid-template-columns:repeat(6,1fr)}}
.lab{border:1px solid var(--s200);border-radius:12px;padding:20px 16px;text-align:center;background:#fff;transition:.18s}
.lab:hover{border-color:var(--navy800);box-shadow:0 10px 26px rgba(22,22,22,.09)}
.lab .lg{height:44px;display:grid;place-items:center;font-weight:800;font-size:14px;color:var(--navy800);background:var(--s50);border-radius:8px;margin-bottom:12px;letter-spacing:-.01em}
.lab .nm{font-size:13px;font-weight:700;line-height:1.3}
.lab .num{font-size:11.5px;color:var(--s600);margin-top:5px;font-variant-numeric:tabular-nums}
.lab .cta{font-size:11.5px;color:var(--navy800);text-decoration:underline;margin-top:9px;display:inline-block;font-weight:600}

/* sessions table */
.stable{border:1px solid var(--s200);border-radius:12px;overflow:hidden}
.srow{display:grid;grid-template-columns:1fr;gap:6px;padding:16px 20px;border-bottom:1px solid var(--s100);align-items:center}
@media(min-width:840px){.srow{grid-template-columns:150px 1fr 100px 130px 130px;gap:16px}}
.srow:last-child{border:0}
.srow.head{background:var(--s50);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--s600)}
.sdate{font-weight:700;font-size:14px}
.stit{font-size:14.5px;font-weight:600}
.sdur{font-size:13.5px;color:var(--s600)}
.places{font-size:12.5px;font-weight:700;color:var(--em800);background:var(--em100);padding:4px 10px;border-radius:5px;display:inline-block}
.places.low{color:var(--red800);background:var(--red100)}

/* reviews */
.revhead{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:var(--s50);border:1px solid var(--s200);border-radius:12px;padding:20px 24px;margin-bottom:26px}
.revhead .big{font-size:34px;font-weight:800}
.revhead .src{font-size:13px;color:var(--s600)}
.revhead .src b{color:var(--s900)}
.tcard{border:1px solid var(--s200);border-radius:12px;padding:22px;background:#fff}
.tcard .q{font-size:14.5px;color:#3A3A3A;font-style:italic}
.tcard .who{margin-top:16px;padding-top:14px;border-top:1px solid var(--s100);font-size:13px}
.tcard .who b{display:block;font-size:14px}
.tcard .who span{color:var(--s600)}

/* footer */
footer{background:var(--navy900);color:#C3C3C3;padding:56px 0 0;font-size:14px}
.fgrid{display:grid;gap:32px;grid-template-columns:1fr 1fr}
@media(min-width:960px){.fgrid{grid-template-columns:repeat(4,1fr)}}
footer h5{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:14px}
footer ul{list-style:none}
footer li{margin-bottom:9px}
footer a:hover{color:var(--amber500);text-decoration:underline}
.legal{margin-top:44px;border-top:1px solid rgba(255,255,255,.1);padding:24px 0 34px;font-size:12px;color:#9B9B9B;line-height:1.7}
.legal b{color:#D5D5D5}
.qbadge{display:inline-grid;place-items:center;background:#fff;color:var(--navy900);font-weight:800;font-size:12px;padding:10px 16px;border-radius:6px;margin-bottom:16px}
.socials{display:flex;gap:10px;margin-top:18px}
.socials a{width:38px;height:38px;border-radius:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;transition:.15s}
.socials a:hover{background:var(--amber500);border-color:var(--amber500)}
.socials a:hover svg{fill:var(--navy900)}
.socials svg{width:18px;height:18px;fill:#D5D5D5}
