/* IamOffice · feuille de styles du site vitrine
   Charte : jaune IamOffice (barre latérale du logiciel), or #CC9F00, graphite du logo.
   Polices auto-hébergées (aucun appel à Google Fonts : conformité RGPD). */

@font-face{font-family:"Plex";src:url("fonts/plex-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Plex";src:url("fonts/plex-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Plex";src:url("fonts/plex-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Plex";src:url("fonts/plex-700.woff2") format("woff2");font-weight:700;font-display:swap}

:root{
  --jaune:#F2C400;        /* jaune du logiciel */
  --jaune-clair:#FFF6CC;
  --or:#CC9F00;           /* or de la marque */
  --or-fonce:#8A6B00;     /* or lisible sur blanc (texte) */
  --encre:#2B2B2B;        /* graphite du logo */
  --gris:#5C5C57;
  --gris-clair:#8A8A84;
  --ligne:#E3E2DD;
  --fond:#F5F4F0;
  --papier:#FFFFFF;
  --vert:#2F7D3A;
  --vert-fond:#E8F3EA;
  --rouge:#B83A32;
  --bleu:#2D5DA8;

  --r-s:4px; --r-m:8px; --r-l:14px;
  --ombre:0 1px 2px rgba(43,43,43,.06),0 8px 24px rgba(43,43,43,.08);
  --ombre-menu:0 24px 48px -12px rgba(43,43,43,.22);
  --max:1200px; --gout:24px;
  --entete:72px;
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--entete) + 16px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--papier);color:var(--encre);font-family:"Plex",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:17px;line-height:1.6;font-feature-settings:"tnum" 0;-webkit-font-smoothing:antialiased;overflow-x:clip}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--bleu);outline-offset:2px;border-radius:2px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lien-evitement{position:absolute;left:16px;top:-60px;background:var(--encre);color:#fff;padding:10px 16px;z-index:100;border-radius:var(--r-s)}
.lien-evitement:focus{top:12px}
.ico{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.num{font-variant-numeric:tabular-nums}

/* ---------- Typographie ---------- */
h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.15;letter-spacing:-.015em;text-wrap:balance}
h1{font-size:clamp(36px,5.4vw,60px);letter-spacing:-.028em;line-height:1.05;font-weight:600}
h2{font-size:clamp(28px,3.4vw,40px);letter-spacing:-.022em}
h3{font-size:21px}
h4{font-size:17px;letter-spacing:0}
p{margin:0}
.chapo{font-size:clamp(18px,1.6vw,20px);color:var(--gris);max-width:60ch;line-height:1.55}
.petit{font-size:14px;color:var(--gris)}
.texte{max-width:64ch}
.texte p+p{margin-top:1em}

/* ---------- Mise en page ---------- */
.conteneur{max-width:var(--max);margin:0 auto;padding:0 var(--gout)}
@media (max-width:640px){:root{--gout:16px}}
.bloc{padding-top:96px;padding-bottom:96px}
.bloc-s{padding-top:64px;padding-bottom:64px}
@media (max-width:760px){.bloc{padding-top:64px;padding-bottom:64px}.bloc-s{padding-top:48px;padding-bottom:48px}}
.fond-gris{background:var(--fond)}
.fond-encre{background:var(--encre);color:#fff}
.fond-encre .chapo,.fond-encre .petit{color:#C9C9C3}
.fond-jaune{background:var(--jaune)}
.entete-bloc{display:grid;gap:16px;margin-bottom:48px;max-width:760px}
.grille-2.contact{grid-template-columns:1fr 1.4fr}
.grille-2{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media (max-width:900px){.grille-2,.grille-2.contact{grid-template-columns:1fr;gap:40px}}

/* ---------- Boutons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:var(--r-s);font-weight:600;font-size:16px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s;white-space:nowrap}
.btn-jaune{background:var(--jaune);color:var(--encre);border-color:var(--or)}
.btn-jaune:hover{background:#FFD21A}
.btn-encre{background:var(--encre);color:#fff}
.btn-encre:hover{background:#000}
.btn-contour{background:var(--papier);border-color:#C9C8C2;color:var(--encre)}
.btn-contour:hover{border-color:var(--encre)}
.fond-encre .btn-contour{background:transparent;border-color:#6b6b66;color:#fff}
.fond-encre .btn-contour:hover{border-color:#fff}
.btn-s{min-height:40px;padding:0 16px;font-size:15px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:480px){.actions .btn{flex:1 1 100%}}
.lien{color:var(--encre);font-weight:600;text-decoration:underline;text-decoration-color:var(--or);text-decoration-thickness:2px;text-underline-offset:4px}
.lien:hover{text-decoration-color:var(--encre)}

/* ---------- En-tête et méga menu ---------- */
.entete{position:sticky;top:0;z-index:50;background:var(--papier);border-top:4px solid var(--jaune);border-bottom:1px solid var(--ligne)}
.entete-int{height:var(--entete);display:flex;align-items:center;gap:32px}
.logo{display:inline-flex;align-items:center;flex:none;text-decoration:none;font-size:25px;letter-spacing:-.01em;line-height:1;color:var(--encre)}
.logo img{display:block;height:27px;width:auto;position:relative;top:-4px}
.pied .logo img{height:26px}
@media (max-width:420px){.logo img{height:24px}}
.logo b{font-weight:700}
.logo span{font-weight:400;color:#6E6E69}
.logo i{font-style:normal;position:relative;font-weight:700}
.logo i::after{content:"";position:absolute;left:50%;top:-1px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--jaune)}
.nav{display:flex;align-items:center;gap:4px;height:100%}
.nav>li{list-style:none;height:100%;display:flex;align-items:center}
.nav ul,.nav{margin:0;padding:0}
.nav-lien{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 12px;border-radius:var(--r-s);font-size:15.5px;font-weight:500;color:var(--encre);text-decoration:none;background:none;border:0;cursor:pointer}
.nav-lien:hover,.nav-lien[aria-expanded="true"]{background:var(--fond)}
.nav-lien[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--jaune);border-radius:0}
.nav-lien .ico{width:16px;height:16px;transition:transform .2s}
.nav-lien[aria-expanded="true"] .ico{transform:rotate(180deg)}
.entete-droite{margin-left:auto;display:flex;align-items:center;gap:8px}
.burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--ligne);border-radius:var(--r-s);background:var(--papier);cursor:pointer}

.mega{position:absolute;left:0;right:0;top:100%;background:var(--papier);border-bottom:1px solid var(--ligne);box-shadow:var(--ombre-menu);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility 0s .18s}
.mega.ouvert{opacity:1;visibility:visible;transform:none;transition:opacity .18s,transform .18s}
.mega-int{display:grid;grid-template-columns:repeat(4,1fr) 280px;gap:8px 32px;padding:32px var(--gout) 28px}
.mega-col .mega-titre{font-size:13px;font-weight:600;color:var(--gris);letter-spacing:.01em;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--ligne)}
.mega-col ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.mega-col a{display:flex;gap:12px;padding:9px 10px;margin:0 -10px;border-radius:var(--r-s);text-decoration:none}
.mega-col a:hover{background:var(--fond)}
.mega-col a .ico{margin-top:2px;color:var(--or-fonce)}
.mega-col strong{display:block;font-weight:600;font-size:15px;line-height:1.3}
.mega-col small{display:block;color:var(--gris);font-size:13.5px;line-height:1.4;margin-top:2px}
.mega-promo{background:var(--jaune);border-radius:var(--r-m);padding:22px;display:flex;flex-direction:column;gap:10px;text-decoration:none}
.mega-promo strong{font-size:18px;line-height:1.25}
.mega-promo span{font-size:14.5px;line-height:1.45}
.mega-promo em{font-style:normal;font-weight:600;margin-top:auto;text-decoration:underline;text-underline-offset:3px}
.mega-pied{grid-column:1/-1;display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid var(--ligne);padding-top:16px;margin-top:12px;font-size:15px}
.mega-pied a{font-weight:600;text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.mega-pied a:hover{text-decoration:underline}
.mega-pied .ico{width:16px;height:16px}
.mega.etroit .mega-int{grid-template-columns:repeat(3,1fr) 280px}

/* Menu mobile */
.tiroir{display:none}
@media (max-width:1080px){
  .nav,.entete-droite .masque-mobile,.mega{display:none}
  .burger{display:inline-flex}
  .tiroir{display:block;position:fixed;inset:calc(var(--entete) + 4px) 0 0 0;background:var(--papier);overflow-y:auto;overscroll-behavior:contain;padding:8px var(--gout) 32px;transform:translateX(100%);transition:transform .25s ease;visibility:hidden}
  .tiroir.ouvert{transform:none;visibility:visible}
  .tiroir details{border-bottom:1px solid var(--ligne)}
  .tiroir summary,.tiroir>a.t-lien{display:flex;align-items:center;justify-content:space-between;min-height:56px;font-weight:600;font-size:18px;cursor:pointer;list-style:none;text-decoration:none;border-bottom:1px solid var(--ligne)}
  .tiroir details summary{border-bottom:0}
  .tiroir summary::-webkit-details-marker{display:none}
  .tiroir details[open] summary .ico{transform:rotate(180deg)}
  .tiroir summary .ico{transition:transform .2s}
  .tiroir details ul{list-style:none;margin:0 0 12px;padding:0}
  .tiroir details li a{display:flex;align-items:center;gap:12px;min-height:46px;text-decoration:none;font-size:16px}
  .tiroir details li a .ico{color:var(--or-fonce)}
  .tiroir .t-sous{font-size:13px;color:var(--gris);margin:14px 0 4px;font-weight:600}
  .tiroir .actions{margin-top:24px}
  .tiroir .actions .btn{flex:1 1 100%}
}
body.menu-ouvert{overflow:hidden}
@media (max-width:420px){.entete-droite .btn-essai{display:none}}

/* ---------- Héros ---------- */
.heros{padding:72px 0 0;overflow:hidden}
.heros-texte{display:grid;gap:24px;max-width:780px}
.heros h1{max-width:18ch}
.heros-faits{display:flex;flex-wrap:wrap;gap:8px 28px;margin:4px 0 0;padding:0;list-style:none;font-size:15.5px;color:var(--gris)}
.heros-faits li{display:flex;align-items:center;gap:8px}
.heros-faits .ico{width:18px;height:18px;color:var(--vert)}
.scene{position:relative;margin-top:56px;padding:40px 0 0 0}
.scene::before{content:"";position:absolute;left:calc(50% - 50vw);right:calc(50% - 50vw);top:140px;bottom:0;background:var(--jaune);z-index:0}
.ecran{position:relative;z-index:1;margin-right:120px;background:var(--papier);border:1px solid #D9D7CF;border-radius:var(--r-m) var(--r-m) 0 0;box-shadow:0 30px 60px -20px rgba(43,43,43,.35);overflow:hidden}
.ecran-barre{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--ligne);background:#FAFAF8}
.ecran-barre i{width:10px;height:10px;border-radius:50%;background:#DAD9D3}
.ecran-barre span{margin-left:12px;font-size:12.5px;color:var(--gris-clair)}
.telephone{position:absolute;z-index:2;right:0;bottom:-1px;width:190px;border:8px solid var(--encre);border-bottom:0;border-radius:30px 30px 0 0;overflow:hidden;background:#fff;box-shadow:0 30px 60px -18px rgba(43,43,43,.45)}
.telephone img{width:100%;height:auto}
@media (max-width:760px){
  .heros{padding-top:44px}
  .scene{margin-top:40px;padding-top:20px}
  .scene::before{top:70px}
  .ecran{margin-right:44px}
  .telephone{width:88px;border-width:4px;border-radius:14px 14px 0 0}
}

/* ---------- Bandeau d'arguments ---------- */
.arguments{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--encre)}
.arguments>div{padding:28px 24px 8px 0;display:grid;gap:8px;align-content:start}
.arguments>div+div{padding-left:24px;border-left:1px solid var(--ligne)}
.arguments strong{font-size:18px;line-height:1.3}
.arguments p{font-size:15.5px;color:var(--gris)}
@media (max-width:900px){.arguments{grid-template-columns:1fr 1fr}.arguments>div:nth-child(3){padding-left:0;border-left:0}.arguments>div:nth-child(n+3){border-top:1px solid var(--ligne)}}
@media (max-width:520px){.arguments{grid-template-columns:1fr}.arguments>div,.arguments>div+div{padding:20px 0;border-left:0}.arguments>div+div{border-top:1px solid var(--ligne)}}

/* ---------- Modules (accueil) ---------- */
.modules{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:start}
.onglets{display:grid;gap:4px;position:sticky;top:calc(var(--entete) + 24px)}
.onglet{display:flex;align-items:center;gap:12px;text-align:left;width:100%;min-height:56px;padding:10px 16px;background:none;border:0;border-left:4px solid transparent;border-radius:0 var(--r-s) var(--r-s) 0;cursor:pointer;font-weight:600;font-size:16.5px;color:var(--gris)}
.onglet:hover{background:var(--papier);color:var(--encre)}
.onglet[aria-selected="true"]{background:var(--papier);color:var(--encre);border-left-color:var(--jaune);box-shadow:var(--ombre)}
.onglet .ico{color:var(--or-fonce)}
.onglet small{display:block;font-weight:400;font-size:13px;color:var(--gris)}
.panneau{background:var(--papier);border:1px solid var(--ligne);border-radius:var(--r-m);overflow:hidden}
.panneau[hidden]{display:none}
.panneau-tete{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;padding:36px}
.panneau-tete h3{font-size:26px;margin-bottom:12px}
.panneau-tete p{color:var(--gris)}
.panneau ul.coches{margin:0}
.panneau figure{margin:0;border-top:1px solid var(--ligne);background:var(--fond)}
.panneau figure img{width:100%;height:auto}
.panneau .prix-tag{display:inline-block;margin-top:16px;padding:4px 10px;border-radius:var(--r-s);background:var(--vert-fond);color:var(--vert);font-weight:600;font-size:14px}
.panneau .prix-tag.payant{background:var(--jaune-clair);color:var(--or-fonce)}
.panneau-pied{padding:0 36px 32px}
@media (max-width:900px){
  .modules{grid-template-columns:1fr;gap:20px}
  .onglets{position:static;display:flex;overflow-x:auto;gap:8px;margin:0 calc(-1 * var(--gout));padding:0 var(--gout) 4px;scroll-snap-type:x mandatory}
  .onglet{flex:none;width:auto;border-left:0;border-bottom:3px solid transparent;border-radius:var(--r-s);min-height:48px;background:var(--papier);border:1px solid var(--ligne);scroll-snap-align:start}
  .onglet small{display:none}
  .onglet[aria-selected="true"]{border-color:var(--encre);box-shadow:none;background:var(--encre);color:#fff}
  .onglet[aria-selected="true"] .ico{color:var(--jaune)}
  .panneau-tete{grid-template-columns:1fr;padding:24px;gap:20px}
  .panneau-pied{padding:0 24px 24px}
}

ul.coches{list-style:none;padding:0;margin:0;display:grid;gap:10px}
ul.coches li{display:flex;gap:10px;font-size:15.5px;line-height:1.45}
ul.coches .ico{width:18px;height:18px;margin-top:2px;color:var(--vert)}

/* ---------- Cibles ---------- */
.cibles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--ligne);border-radius:var(--r-m);background:var(--papier);overflow:hidden}
.cible{padding:32px;display:flex;flex-direction:column;gap:14px}
.cible+.cible{border-left:1px solid var(--ligne)}
.cible .ico-rond{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--jaune-clair);color:var(--or-fonce)}
.cible .ico-rond .ico{width:24px;height:24px}
.cible p{color:var(--gris);font-size:15.5px}
.cible .prix{font-size:15px;color:var(--encre);margin-top:auto;padding-top:16px;border-top:1px dashed var(--ligne)}
.cible .prix b{font-size:28px;letter-spacing:-.02em;font-weight:600}
.cible .lien{font-size:15.5px}
@media (max-width:900px){.cibles{grid-template-columns:1fr}.cible+.cible{border-left:0;border-top:1px solid var(--ligne)}.cible{padding:24px}}

/* ---------- Réforme ---------- */
.frise{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;counter-reset:f}
.frise li{position:relative;padding:28px 24px 0 0;border-top:3px solid #55554f}
.frise li::before{content:"";position:absolute;top:-9px;left:0;width:15px;height:15px;border-radius:50%;background:var(--encre);border:3px solid #55554f}
.frise li.actif{border-top-color:var(--jaune)}
.frise li.actif::before{background:var(--jaune);border-color:var(--jaune)}
.frise time{font-weight:600;font-size:15px;color:var(--jaune)}
.frise strong{display:block;font-size:19px;margin:6px 0}
.frise p{color:#C9C9C3;font-size:15.5px}
@media (max-width:760px){.frise{grid-template-columns:1fr;gap:28px}.frise li{border-top:0;border-left:3px solid #55554f;padding:0 0 0 24px}.frise li.actif{border-left-color:var(--jaune)}.frise li::before{left:-9px;top:4px}}

/* ---------- Comparatif court (accueil) ---------- */
.mini-comp{width:100%;border-collapse:collapse;background:var(--papier);font-size:15.5px}
.mini-comp th,.mini-comp td{padding:14px 16px;border-bottom:1px solid var(--ligne);text-align:center}
.mini-comp th:first-child,.mini-comp td:first-child{text-align:left}
.mini-comp thead th{background:var(--jaune);font-weight:600;font-size:14.5px;border-bottom:0}
.mini-comp thead th.nous{background:var(--encre);color:#fff}
.mini-comp td.nous{background:#FFFBEA;font-weight:600}

/* ---------- Cellules de comparaison ---------- */
.v{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;white-space:nowrap}
.v .ico{width:18px;height:18px}
.v-oui{color:var(--vert)}
.v-non{color:var(--gris-clair)}
.v-partiel{color:var(--or-fonce)}
.v-option{color:var(--bleu)}
.v-inconnu{color:var(--gris-clair)}
.v sup{font-size:11px;color:var(--gris)}

/* ---------- Sécurité ---------- */
.points{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px}
.point{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto 1fr;gap:4px 14px;align-content:start}
.point .ico{width:24px;height:24px;color:var(--or-fonce);grid-row:span 2;margin-top:2px}
.point strong{font-size:17px}
.point p{color:var(--gris);font-size:15.5px}
@media (max-width:640px){.points{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.faq{border-top:1px solid var(--encre);max-width:880px}
.faq details{border-bottom:1px solid var(--ligne)}
.faq summary{display:flex;justify-content:space-between;gap:24px;align-items:center;min-height:64px;padding:16px 0;font-weight:600;font-size:18px;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{transition:transform .2s;flex:none}
.faq details[open] summary .ico{transform:rotate(45deg)}
.faq .rep{padding:0 48px 24px 0;color:var(--gris);max-width:70ch}
.faq .rep p+p{margin-top:.8em}

/* ---------- Appel final ---------- */
.appel{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.appel h2{max-width:22ch}

/* ---------- Pied de page ---------- */
.pied{background:var(--encre);color:#C9C9C3;font-size:15px;padding:64px 0 32px}
.pied a{text-decoration:none;color:#E9E9E4}
.pied a:hover{text-decoration:underline}
.pied-grille{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:32px}
.pied .pied-titre{font-weight:600;font-size:14px;color:#fff;margin-bottom:14px}
.pied ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.pied .logo{color:#fff}
.pied .logo span{color:#A9A9A3}
.pied-bas{border-top:1px solid #4a4a46;margin-top:48px;padding-top:24px;display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;font-size:13.5px}
.pied-bas nav{display:flex;gap:20px;flex-wrap:wrap}
@media (max-width:900px){.pied-grille{grid-template-columns:1fr 1fr}.pied-grille>div:first-child{grid-column:1/-1}}

/* ---------- En-tête de page intérieure ---------- */
.tete-page{padding:64px 0 48px;border-bottom:1px solid var(--ligne)}
.tete-page .chapo{margin-top:18px}
.fil{font-size:14px;color:var(--gris);margin-bottom:18px}
.fil a{text-decoration:none}
.fil a:hover{text-decoration:underline}

/* ---------- Page Fonctionnalités ---------- */
.f-mise{display:grid;grid-template-columns:260px 1fr;gap:56px;align-items:start}
.f-sommaire{position:sticky;top:calc(var(--entete) + 24px);max-height:calc(100vh - var(--entete) - 48px);overflow:auto;padding-right:8px}
.f-sommaire p{font-size:13px;font-weight:600;color:var(--gris);margin-bottom:8px}
.f-sommaire ul{list-style:none;margin:0;padding:0;border-left:1px solid var(--ligne)}
.f-sommaire a{display:flex;justify-content:space-between;gap:8px;padding:7px 12px;margin-left:-1px;border-left:3px solid transparent;text-decoration:none;font-size:15px;color:var(--gris)}
.f-sommaire a:hover{color:var(--encre)}
.f-sommaire a.actif{border-left-color:var(--jaune);color:var(--encre);font-weight:600}
.f-sommaire a span{color:var(--gris-clair);font-size:13px}
.f-recherche{position:relative;margin-bottom:16px}
.f-recherche input{width:100%;height:44px;padding:0 12px 0 38px;border:1px solid #C9C8C2;border-radius:var(--r-s);font:inherit;font-size:15px;background:var(--papier)}
.f-recherche input:focus{outline:none;border-color:var(--encre);box-shadow:0 0 0 3px var(--jaune-clair)}
.f-recherche .ico{position:absolute;left:11px;top:12px;width:18px;height:18px;color:var(--gris)}
.f-groupe{padding:8px 0 56px}
.f-groupe+.f-groupe{border-top:1px solid var(--ligne);padding-top:48px}
.f-titre{display:flex;align-items:center;gap:14px;margin-bottom:10px}
.f-titre .ico-carre{width:44px;height:44px;border-radius:var(--r-s);background:var(--jaune);display:grid;place-items:center;flex:none}
.f-titre .ico-carre .ico{width:22px;height:22px}
.f-titre h2{font-size:clamp(24px,2.6vw,30px)}
.f-intro{color:var(--gris);max-width:64ch;margin-bottom:24px}
.f-badge{display:inline-block;margin-left:4px;padding:2px 8px;border-radius:var(--r-s);font-size:13px;font-weight:600;vertical-align:middle;letter-spacing:0}
.f-badge.gratuit{background:var(--vert-fond);color:var(--vert)}
.f-badge.payant{background:var(--jaune-clair);color:var(--or-fonce)}
.f-sous{margin-top:28px}
.f-sous h3{font-size:16px;font-weight:600;padding:10px 14px;background:var(--fond);border-left:3px solid var(--jaune);margin-bottom:4px}
.f-liste{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:32px}
.f-liste li{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid var(--ligne);font-size:15.5px;line-height:1.45}
.f-liste li .ico{width:18px;height:18px;margin-top:2px;color:var(--vert)}
.f-liste li mark{background:var(--jaune-clair);color:inherit;padding:0 1px}
.f-vide{display:none;padding:24px;background:var(--fond);border-radius:var(--r-m)}
@media (max-width:1000px){.f-liste{grid-template-columns:1fr}}
@media (max-width:900px){
  .f-mise{grid-template-columns:1fr;gap:0}
  .f-sommaire{position:sticky;top:calc(var(--entete) + 4px);z-index:5;max-height:none;overflow:visible;background:var(--papier);margin:0 calc(-1 * var(--gout));padding:12px var(--gout);border-bottom:1px solid var(--ligne)}
  .f-sommaire p,.f-sommaire ul{display:none}
  .f-sommaire .f-recherche{margin:0}
  .f-sommaire select{display:block!important}
}
.f-select{display:none;width:100%;height:44px;margin-top:10px;border:1px solid #C9C8C2;border-radius:var(--r-s);font:inherit;font-size:15px;padding:0 10px;background:var(--papier)}

/* ---------- Page Comparatif ---------- */
.c-outils{display:grid;gap:16px;padding:20px;border:1px solid var(--ligne);border-radius:var(--r-m);background:var(--fond);margin-bottom:24px}
.c-outils fieldset{border:0;margin:0;padding:0;min-width:0}
.c-outils legend{font-weight:600;font-size:14.5px;margin-bottom:10px;padding:0}
.puces{display:flex;flex-wrap:wrap;gap:8px}
.puce{position:relative}
.puce input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.puce span{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:1px solid #C9C8C2;border-radius:999px;background:var(--papier);font-size:14.5px;font-weight:500;cursor:pointer;user-select:none}
.puce input:checked+span{background:var(--encre);border-color:var(--encre);color:#fff}
.puce input:focus-visible+span{outline:3px solid var(--bleu);outline-offset:2px}
.puce .ico{width:15px;height:15px;display:none}
.puce input:checked+span .ico{display:block}
.c-ligne-outils{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:end;justify-content:space-between}
.c-ligne-outils label.select{display:grid;gap:6px;font-weight:600;font-size:14.5px}
.c-ligne-outils select{height:42px;min-width:240px;border:1px solid #C9C8C2;border-radius:var(--r-s);padding:0 10px;font:inherit;font-size:15px;background:var(--papier)}
.bascule{display:inline-flex;align-items:center;gap:10px;font-size:15px;cursor:pointer;min-height:42px}
.bascule input{width:20px;height:20px;accent-color:var(--encre)}
.legende{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px;color:var(--gris);margin:0 0 16px;padding:0;list-style:none}
.c-table-zone{border:1px solid var(--ligne);border-radius:var(--r-m);overflow:auto;max-height:78vh;background:var(--papier)}
table.comp{border-collapse:separate;border-spacing:0;width:100%;min-width:640px;font-size:15px}
table.comp th,table.comp td{padding:12px 14px;border-bottom:1px solid var(--ligne);text-align:center;vertical-align:top}
table.comp thead th{position:sticky;top:0;z-index:3;background:var(--jaune);font-weight:600;font-size:14.5px;white-space:nowrap;border-bottom:1px solid var(--or)}
table.comp thead th.nous{background:var(--encre);color:#fff}
table.comp th[scope="row"]{position:sticky;left:0;z-index:2;background:var(--papier);text-align:left;font-weight:500;min-width:300px;max-width:420px;box-shadow:1px 0 0 var(--ligne)}
table.comp thead th:first-child{left:0;z-index:4;text-align:left}
table.comp th[scope="row"] small{display:block;color:var(--gris);font-weight:400;font-size:13.5px;margin-top:3px}
table.comp td.nous{background:#FFFBEA}
table.comp tr.theme th{background:var(--fond);text-align:left;padding:0;border-bottom:1px solid var(--ligne);z-index:2}
.c-bascule{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:10px 14px;background:none;border:0;cursor:pointer;font-size:15.5px;font-weight:700;text-align:left}
.c-bascule:hover{background:#EDECE6}
.c-bascule .ico{width:18px;height:18px;transition:transform .2s;transform:rotate(-90deg)}
.c-bascule[aria-expanded="true"] .ico{transform:none}
.c-nb{margin-left:auto;font-size:13px;font-weight:600;color:var(--gris);background:var(--papier);border:1px solid var(--ligne);border-radius:999px;padding:1px 9px}
.c-plein{overflow:visible;max-height:none}
.c-plein table.comp{border-radius:var(--r-m);overflow:clip}
.c-plein table.comp thead th{top:calc(var(--entete) + 4px)}
.c-plein table.comp thead th:first-child{border-top-left-radius:var(--r-m)}
.c-plein table.comp thead th:last-child{border-top-right-radius:var(--r-m)}
.c-tout{display:flex;gap:8px;flex-wrap:wrap}
table.comp tr.theme td{background:var(--fond)}
table.comp tbody tr:not(.theme):hover th,table.comp tbody tr:not(.theme):hover td{background:#FAF9F5}
table.comp tbody tr:not(.theme):hover td.nous{background:#FFF6D6}
@media (max-width:640px){table.comp{min-width:0;font-size:14px}table.comp th[scope="row"]{min-width:120px;max-width:150px;font-size:13.5px;line-height:1.35}table.comp th[scope="row"] small{display:none}table.comp th,table.comp td{padding:10px 6px}table.comp thead th{font-size:13px;white-space:nowrap}.c-table-zone .v span.t{display:none}}
.c-synthese{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:32px}
.c-carte{border:1px solid var(--ligne);border-radius:var(--r-m);padding:16px;background:var(--papier)}
.c-carte.nous{border-color:var(--encre);box-shadow:inset 0 4px 0 var(--jaune)}
.c-carte b{display:block;font-size:15px}
.c-carte .score{font-size:30px;font-weight:600;letter-spacing:-.02em;line-height:1.1;margin-top:6px}
.c-carte .barre{height:6px;background:var(--fond);border-radius:3px;margin-top:10px;overflow:hidden}
.c-carte .barre i{display:block;height:100%;background:var(--vert)}
.c-carte .barre i.inc{background:#D6D5CF}
.c-carte small{display:block;color:var(--gris);font-size:13px;margin-top:6px}
@media (max-width:900px){.c-synthese{grid-template-columns:repeat(3,1fr)}}@media (max-width:560px){.c-synthese{grid-template-columns:1fr 1fr}}
.note-encadre{border-left:3px solid var(--or);background:var(--fond);padding:16px 20px;font-size:14.5px;color:var(--gris);border-radius:0 var(--r-s) var(--r-s) 0}

/* ---------- Page Tarifs ---------- */
.choix{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 12px}
.choix label{position:relative;display:block;cursor:pointer}
.choix input{position:absolute;opacity:0}
.choix span{display:flex;flex-direction:column;gap:4px;height:100%;padding:16px 18px;border:1px solid #C9C8C2;border-radius:var(--r-m);background:var(--papier)}
.choix span b{font-size:16px}
.choix span small{font-size:13.5px;color:var(--gris);line-height:1.4}
.choix input:checked+span{border-color:var(--encre);box-shadow:inset 0 0 0 1px var(--encre),inset 0 5px 0 var(--jaune)}
.choix input:focus-visible+span{outline:3px solid var(--bleu);outline-offset:2px}
@media (max-width:760px){.choix{grid-template-columns:1fr}}
.formules{display:grid;grid-template-columns:1fr 1.15fr;gap:0;border:1px solid var(--encre);border-radius:var(--r-m);overflow:hidden;background:var(--papier);margin-top:32px}
.formule{padding:36px;display:flex;flex-direction:column;gap:18px}
.formule+.formule{border-left:1px solid var(--encre)}
.formule.payante{background:#FFFDF3}
.formule .nom{font-size:15px;font-weight:600;color:var(--gris)}
.formule .montant{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.formule .montant b{font-size:56px;font-weight:600;letter-spacing:-.03em;line-height:1}
.formule .montant span{color:var(--gris);font-size:16px}
.formule .ttc{font-size:14.5px;color:var(--gris);margin-top:-8px}
.formule .actions{margin-top:auto;padding-top:8px}
.formule h3{font-size:22px}
@media (max-width:860px){.formules{grid-template-columns:1fr}.formule+.formule{border-left:0;border-top:1px solid var(--encre)}.formule{padding:24px}.formule .montant b{font-size:46px}}
.structures{font-size:14.5px;color:var(--gris);min-height:2.6em}
.inclus{width:100%;border-collapse:collapse;font-size:15.5px;background:var(--papier)}
.inclus th,.inclus td{padding:13px 16px;border-bottom:1px solid var(--ligne);text-align:center}
.inclus th:first-child,.inclus td:first-child{text-align:left}
.inclus thead th{background:var(--jaune);font-size:14.5px}
.inclus tr.theme td{background:var(--fond);font-weight:700}
@media (max-width:560px){.inclus th,.inclus td{padding:11px 8px;font-size:14.5px}}

/* ---------- Démos ---------- */
.d-groupe{padding:56px 0;border-top:1px solid var(--ligne)}
.d-groupe:first-of-type{border-top:0}
.d-groupe>header{display:grid;gap:10px;max-width:720px;margin-bottom:28px}
.d-grille{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.d-grille.une{grid-template-columns:1fr}
.d-grille.une .d-item{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center}
.d-grille.une .d-item.vertical{grid-template-columns:280px 1fr}
@media (max-width:860px){.d-grille,.d-grille.une .d-item,.d-grille.une .d-item.vertical{grid-template-columns:1fr}}
.d-item{display:grid;gap:14px;align-content:start}
.d-item h3{font-size:19px}
.d-item p{color:var(--gris);font-size:15.5px}
.vignette{position:relative;display:block;width:100%;padding:0;border:1px solid var(--ligne);border-radius:var(--r-m);overflow:hidden;background:var(--fond);cursor:pointer}
.vignette img{width:100%;height:auto;transition:transform .3s}
.vignette:hover img{transform:scale(1.015)}
.vignette .lecture{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px 0 12px;border-radius:999px;background:var(--encre);color:#fff;font-weight:600;font-size:14.5px}
.vignette .lecture .ico{width:18px;height:18px;fill:var(--jaune);stroke:var(--jaune)}
.vignette.vertical{max-width:280px}
.vignette .duree{position:absolute;right:12px;top:12px;background:rgba(43,43,43,.8);color:#fff;font-size:12.5px;padding:2px 8px;border-radius:var(--r-s)}
dialog.lecteur{border:0;padding:0;background:transparent;max-width:min(1200px,96vw);width:100%}
dialog.lecteur::backdrop{background:rgba(20,20,18,.88)}
.lecteur-int{display:grid;gap:12px}
.lecteur-tete{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#fff}
.lecteur-tete h2{font-size:18px}
.lecteur-tete button{width:44px;height:44px;border-radius:50%;border:1px solid #777;background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center}
.lecteur video{width:100%;max-height:82vh;background:#000;border-radius:var(--r-m)}
.lecteur.vertical{max-width:min(420px,96vw)}

/* ---------- Contact ---------- */
.formulaire{display:grid;gap:18px;padding:32px;border:1px solid var(--ligne);border-radius:var(--r-m);background:var(--papier)}
.formulaire .duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:560px){.formulaire{padding:20px}.formulaire .duo{grid-template-columns:1fr}}
.champ{display:grid;gap:6px}
.champ label{font-weight:600;font-size:14.5px}
.champ label em{font-style:normal;color:var(--gris);font-weight:400}
.champ input,.champ textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #BDBCB5;border-radius:var(--r-s);font:inherit;font-size:16px;background:var(--papier);color:var(--encre)}
.champ textarea{min-height:150px;resize:vertical}
.champ input:focus,.champ textarea:focus{outline:none;border-color:var(--encre);box-shadow:0 0 0 3px var(--jaune-clair)}
.alerte{padding:14px 16px;border-radius:var(--r-s);font-size:15px}
.alerte[hidden]{display:none}
.alerte.ok{background:var(--vert-fond);color:var(--vert);border:1px solid #b9dcc0}
.alerte.err{background:#FBECEA;color:var(--rouge);border:1px solid #efc4bf}
.coord{display:grid;gap:24px}
.coord div{display:grid;grid-template-columns:28px 1fr;gap:2px 12px}
.coord .ico{color:var(--or-fonce);grid-row:span 2;margin-top:3px}
.coord strong{font-size:16px}
.coord p,.coord a{color:var(--gris);font-size:15.5px}

/* ---------- Pages d'atterrissage ---------- */
.masque-560{}
@media (max-width:760px){.masque-560{display:none!important}}
.entete-droite .nav-lien .ico{width:16px;height:16px;transform:none}
.lp-heros{padding:64px 0 72px;border-bottom:1px solid var(--ligne);overflow:clip}
.lp-visuel{position:relative;padding:32px;background:var(--jaune);border-radius:var(--r-l)}
.lp-visuel .ecran{position:relative;z-index:1}
.lp-heros-int{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.lp-heros h1{font-size:clamp(34px,4.2vw,52px);max-width:none}
.lp-visuel .ecran{margin:0;border-radius:var(--r-m);box-shadow:0 30px 60px -20px rgba(43,43,43,.35)}
@media (max-width:960px){.lp-heros{padding:44px 0 48px}.lp-visuel{padding:16px}.lp-heros-int{grid-template-columns:1fr;gap:36px}}
.lp-h2-petit{font-size:clamp(22px,2.4vw,28px);margin-bottom:24px}
.lp-bloc{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:center;padding:48px 0;border-top:1px solid var(--ligne)}
.lp-bloc:first-of-type{border-top:0;padding-top:8px}
.lp-bloc.inverse .lp-texte{order:2}
.lp-texte{display:grid;gap:14px;align-content:start}
.lp-texte h3{font-size:clamp(22px,2.2vw,27px)}
.lp-texte>p{color:var(--gris)}
.lp-fig{margin:0;border:1px solid #D9D7CF;border-radius:var(--r-m);overflow:hidden;background:var(--papier);box-shadow:var(--ombre)}
.lp-fig.vertical{max-width:300px;justify-self:center;border:8px solid var(--encre);border-radius:28px}
.lp-encart{background:var(--papier);border:1px solid var(--ligne);border-top:5px solid var(--jaune);border-radius:var(--r-m);padding:28px;box-shadow:var(--ombre)}
.lp-encart-titre{display:flex;align-items:center;gap:10px;font-weight:600;font-size:18px;margin-bottom:18px}
.lp-encart-titre .ico{color:var(--or-fonce)}
@media (max-width:900px){.lp-bloc,.lp-bloc.inverse{grid-template-columns:1fr;gap:24px;padding:36px 0}.lp-bloc.inverse .lp-texte{order:0}.lp-fig.vertical{max-width:220px}}
.ligne-prix td{font-weight:600;font-size:14.5px;background:var(--fond)}
.ligne-prix td.nous{background:#FFF3C2}
.lp-tarif{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.lp-carte{border:1px solid var(--encre);border-radius:var(--r-m)}
@media (max-width:860px){.lp-tarif{grid-template-columns:1fr;gap:28px}}
@media (max-width:640px){
 .mini-comp{font-size:13.5px;table-layout:fixed}
 .mini-comp th,.mini-comp td{padding:10px 4px;line-height:1.35}
 .mini-comp th:first-child,.mini-comp td:first-child{width:38%;padding-left:10px}
 .mini-comp thead th{font-size:11.5px;line-height:1.2}
 .mini-comp .ligne-prix td{font-size:11.5px}
 .mini-comp .v .ico{width:17px;height:17px}
 .mini-comp .v sup{display:none}
}

/* ---------- Bandeau cookies ---------- */
.cookies{position:fixed;z-index:90;left:16px;right:16px;bottom:16px;display:flex;justify-content:center;pointer-events:none}
.cookies[hidden]{display:none}
.cookies-int{pointer-events:auto;max-width:720px;width:100%;background:var(--papier);border:1px solid var(--encre);border-top:5px solid var(--jaune);border-radius:var(--r-m);box-shadow:var(--ombre-menu);padding:20px 22px;display:grid;gap:12px;font-size:15px}
.cookies-titre{font-weight:600;font-size:17px}
.cookies-int>p{color:var(--gris)}
.cookies-choix{display:grid;gap:10px;padding:12px 0;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.cookies-choix[hidden]{display:none}
.cookies-choix label{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:14.5px;color:var(--gris)}
.cookies-choix strong{color:var(--encre)}
.cookies-choix input{width:20px;height:20px;margin-top:1px;accent-color:var(--encre);flex:none}
.cookies-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.cookies-actions [hidden]{display:none}
@media (max-width:560px){.cookies{left:8px;right:8px;bottom:8px}.cookies-actions .btn{flex:1 1 45%}}
.lien-cookies{background:none;border:0;padding:0;color:#E9E9E4;cursor:pointer;font-size:inherit}
.lien-cookies:hover{text-decoration:underline}
