/* sffille : gabarit des pages filles du silo Sauvegardes et PRA (préfixe sf-), repris des maquettes */
.page-sf main section:not(.sf-hero):not(.f-silo){padding-block:clamp(64px,9vw,112px)}
.sf-tete{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:clamp(32px,4vw,52px)}
.sf-tete h2{font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.15;margin:0}
.sf-tete p{color:var(--gris);line-height:1.7;margin:0}
.sf-tete p + p{margin-top:12px}

/* --- Hero sombre : photo, bandeau d'urgence, bilan 3-2-1-1-0 --- */
.page-sf .sf-hero{position:relative;overflow:hidden;isolation:isolate;min-height:100svh;box-sizing:border-box;display:grid;align-items:center;padding:calc(var(--entete) + clamp(14px,2.6svh,32px)) 0 clamp(18px,3svh,36px);color:#fff;background:#061528}
.sf-hero .fond-image{z-index:-1;background:#061528}
.sf-hero .fond-image img{object-position:right center}
.sf-hero .fond-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,21,40,.96) 0%,rgba(6,21,40,.9) 40%,rgba(10,34,64,.66) 68%,rgba(10,34,64,.5) 100%),linear-gradient(0deg,rgba(6,21,40,.85) 0%,rgba(6,21,40,0) 32%)}
/* Photo de fond : Unsplash, licence Unsplash ; voile bleu nuit en deux dégradés */
.sf-hero-grille{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(28px,4vw,64px);align-items:center}
.sf-retour{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;background:rgba(79,195,234,.12);border:1px solid rgba(79,195,234,.32);font:600 .82rem/1.2 var(--texte);color:#bfe9f8;text-decoration:none;margin:0 10px 14px 0}
.sf-retour svg{width:16px;height:16px}
.sf-alerte{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;background:rgba(229,83,75,.16);border:1px solid rgba(229,83,75,.4);font:600 .82rem/1.2 var(--texte);color:#ffd9d6;margin-bottom:14px}
.sf-alerte svg{width:16px;height:16px;color:#ff8a82;flex:none}
.sf-alerte a{color:#fff;font-weight:800;text-decoration:none;white-space:nowrap}
.sf-hero h1{font-size:clamp(1.9rem,2.7vw,2.6rem);font-weight:800;line-height:1.1;color:#fff;margin:0 0 16px}
.sf-chapo{font-size:1.05rem;line-height:1.6;color:#d3e0eb;margin:0 0 24px}
.sf-boutons{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px}
.sf-hero .is-style-contour-tel .wp-block-button__link{color:#fff;border-color:rgba(255,255,255,.5)}
.sf-hero .is-style-contour-tel .wp-block-button__link:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.sf-rassure{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 20px;font-size:.85rem;line-height:1.3;color:#c3d3e1}
.sf-rassure li{display:flex;align-items:center;gap:12px}
.sf-rassure b{display:block;font:700 .92rem/1.25 var(--titre);color:#fff}
.sf-rp-tuile{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:8px;background:rgba(79,195,234,.1);border:1px solid rgba(79,195,234,.3);color:#dbe7f1}
.sf-rp{width:28px;height:28px;overflow:visible}
.sf-rp [stroke="#1f8f78"]{stroke:#35c4a6}
.sf-rp [fill="#1f8f78"]{fill:#35c4a6}
.sf-rp-etat .ligne{stroke-dasharray:1;stroke-dashoffset:1;animation:sf-ecrit 3.6s ease infinite}
.sf-rp-etat .l2{animation-delay:.3s}
.sf-rp-etat .l3{animation-delay:.6s}
@keyframes sf-ecrit{0%,10%{stroke-dashoffset:1;opacity:1}40%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.sf-rp-hors .envol{animation:sf-envol 3s ease-in-out infinite}
@keyframes sf-envol{0%{transform:translate(0,0);opacity:0}25%{opacity:1}70%{transform:translate(3px,-5px);opacity:1}100%{transform:translate(4px,-7px);opacity:0}}
.sf-rp-test .tour{transform-box:fill-box;transform-origin:center;animation:sf-tour 4s linear infinite}
@keyframes sf-tour{to{transform:rotate(-360deg)}}

.sf-bilan{border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 40px 80px -44px rgba(0,0,0,.6);padding:clamp(18px,2vw,26px);color:var(--encre)}
.sf-bilan-tete{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.sf-bilan-titre{font:800 1.02rem/1.2 var(--titre)}
.sf-bilan-titre small{display:block;font:600 .75rem/1.3 var(--texte);color:#2f4257;margin-top:3px}
.sf-bilan-etat{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:8px;background:#fff3e0;font:700 .72rem/1 var(--texte);color:#a35f00;white-space:nowrap}
.sf-bilan ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.sf-chiffre{display:flex;flex-direction:column;align-items:center;gap:8px;border-radius:8px;background:#fff;padding:14px 8px 12px;text-align:center;box-shadow:0 0 0 1px rgba(10,34,64,.06)}
.sf-chiffre b{font:800 2.6rem/1 var(--titre);color:var(--bleu)}
.sf-chiffre span{font:600 .74rem/1.25 var(--texte);color:#2f4257;min-height:2.5em}
.sf-chiffre i{display:inline-flex;align-items:center;justify-content:center;min-width:86px;padding:5px 6px;border-radius:8px;font:700 .66rem/1 var(--texte);letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--c);font-style:normal;opacity:0;transform:scale(.8);animation:sf-statut .45s cubic-bezier(.4,1.6,.5,1) both;animation-delay:calc(var(--i) * .5s + .6s)}
@keyframes sf-statut{to{opacity:1;transform:none}}
.sf-chiffre small{font-size:.7rem;line-height:1.3;color:#2f4257;min-height:2.6em}
.sf-bilan-pied{margin-top:14px;padding-top:12px;border-top:1px solid var(--filet);font:600 .8rem/1.4 var(--texte);color:#2f4257}
.sf-bilan-pied b{color:#b8322b}

/* --- Causes de perte --- */
.sf-causes{background:#fff}
.sf-causes-grille{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sf-cause{display:flex;align-items:center;gap:16px;border-radius:8px;background:var(--glace);padding:18px 20px;font:700 1rem/1.35 var(--titre);color:var(--encre)}
.sf-cause-pi{display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:8px;background:#fff;color:var(--bleu)}
.sf-cause-pi svg{width:28px;height:28px}
.sf-cause--rouge .sf-cause-pi{color:#c8423b}

/* --- Deux questions et profils --- */
.sf-questions{background:var(--glace)}
.sf-q2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:clamp(28px,3.5vw,44px)}
.sf-q2-carte{border-radius:8px;background:#fff;padding:clamp(20px,2.4vw,28px)}
.sf-q2-carte > p:first-child{display:block;font:800 1.2rem/1.3 var(--titre);color:var(--encre);margin-bottom:10px}
.sf-q2-carte p{margin:0;color:var(--gris);line-height:1.65}
.sf-profils{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sf-profil{display:flex;flex-direction:column;border-radius:8px;background:#fff;padding:clamp(18px,2vw,24px);box-shadow:0 24px 50px -40px rgba(10,34,64,.5)}
.sf-profil h3{font-size:1.02rem;line-height:1.3;margin:0 0 16px}
.sf-mesure{margin-bottom:12px}
.sf-mesure small{display:flex;justify-content:space-between;gap:8px;font:700 .72rem/1.2 var(--texte);letter-spacing:.06em;text-transform:uppercase;color:var(--gris);margin-bottom:6px}
.sf-mesure small em{font-style:normal;text-transform:none;letter-spacing:0;color:var(--encre)}
.sf-barre{height:8px;border-radius:8px;background:var(--glace);overflow:hidden}
.sf-barre i{display:block;height:100%;width:var(--l);border-radius:8px;background:linear-gradient(90deg,var(--bleu),var(--cyan));transform-origin:left;transform:scaleX(0);transition:transform 1s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * .15s + .2s)}
.sf-profils.vu .sf-barre i{transform:none}
.sf-profil p{margin:auto 0 0;padding-top:12px;border-top:1px solid var(--filet);font-size:.88rem;line-height:1.55;color:var(--gris)}
.sf-profil p b{display:block;font:700 .72rem/1 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin-bottom:6px}
.sf-note{display:flex;gap:12px;align-items:flex-start;margin:clamp(24px,3vw,32px) 0 0;color:var(--encre);line-height:1.65}
.sf-note svg{width:20px;height:20px;flex:none;color:var(--cyan);margin-top:3px}

/* --- Règle 3-2-1-1-0 --- */
.sf-regle{background:var(--nuit);color:#fff}
.sf-regle .sf-tete h2{color:#fff}
.sf-regle .sf-tete p{color:#c9d8e6}
.sf-chiffres{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.sf-ch{display:flex;flex-direction:column;border-radius:8px;background:rgba(255,255,255,.05);border:1px solid rgba(79,195,234,.18);padding:clamp(18px,2vw,22px)}
.sf-ch-num{font:800 clamp(3.2rem,5vw,4.4rem)/1 var(--titre);color:var(--cyan-clair);margin-bottom:12px}
.sf-ch h3{color:#fff;font-size:1rem;line-height:1.35;margin:0 0 12px}
.sf-ch dl{margin:auto 0 0;display:grid;gap:10px}
.sf-ch dt{font:700 .7rem/1.2 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:#9fb6ca;margin-bottom:3px}
.sf-ch dd{margin:0;font-size:.86rem;line-height:1.5;color:#dbe7f1}
.sf-ch dd.erreur{color:#ffd0cc}
.sf-sync{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;margin-top:clamp(24px,3vw,32px);border-radius:8px;background:rgba(79,195,234,.1);padding:20px 22px}
.sf-sync svg{width:28px;height:28px;color:var(--cyan-clair)}
.sf-sync > div > p:first-child{display:block;font:700 1.05rem/1.3 var(--titre);color:#fff;margin-bottom:6px}
.sf-sync p{margin:0;color:#dbe7f1;line-height:1.65}

/* --- Périmètre --- */
.sf-perimetre{background:#fff}
.sf-peri-grille{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sf-peri{display:flex;flex-direction:column;border-radius:8px;background:var(--glace);padding:clamp(20px,2.2vw,26px)}
.sf-peri-haut{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.sf-peri-pi{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;background:#fff;color:var(--bleu)}
.sf-peri-pi .pd{width:28px;height:28px}
.sf-oubli{padding:5px 9px;border-radius:8px;background:#fdf1f0;font:700 .7rem/1 var(--texte);color:#b8322b;white-space:nowrap}
.sf-peri h3{font-size:1.06rem;line-height:1.3;margin:0 0 10px}
.sf-peri p{margin:0;color:var(--gris);font-size:.93rem;line-height:1.65}

/* --- RGPD --- */
.sf-rgpd{background:var(--glace)}
.sf-rgpd-grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.sf-rgpd h2{font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.15;margin:0 0 20px}
.sf-rgpd p{color:var(--gris);line-height:1.7;margin:0 0 14px}
.sf-citations{display:grid;gap:12px}
.sf-citation{display:flex;flex-direction:column;border:0;margin:0;border-radius:8px;background:#fff;padding:20px 22px}
.sf-citation cite{order:-1;align-self:flex-start;font-style:normal;margin-top:7px;display:inline-block;padding:4px 8px;border-radius:8px;background:var(--bleu);font:700 .72rem/1 var(--texte);color:#fff;margin-bottom:10px}
.sf-citation p{margin:0;font:600 1rem/1.55 var(--titre);color:var(--encre)}
.sf-autres-oblig{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.sf-autres-oblig li{display:flex;gap:10px;align-items:flex-start;font-size:.93rem;line-height:1.55;color:var(--encre)}
.sf-autres-oblig li::before{content:"";flex:none;width:18px;height:18px;background:var(--cyan);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;margin-top:2px}
.sf-source{font-size:.8rem!important;margin-top:16px!important}

/* --- Pourquoi + situations --- */
.sf-pourquoi{background:linear-gradient(160deg,var(--marine),var(--nuit));color:#fff}
.sf-pq-grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.sf-pourquoi h2{color:#fff;font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.15;margin:0 0 20px}
.sf-pourquoi p{color:#c9d8e6;line-height:1.7;margin:0 0 14px}
.sf-preuves{margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sf-preuves > div{border-radius:8px;background:rgba(255,255,255,.05);border:1px solid rgba(79,195,234,.2);padding:14px 16px}
.sf-preuves > div > p:first-child{margin:0;display:block;font:800 1.6rem/1 var(--titre);color:var(--cyan-clair);margin-bottom:4px}
.sf-preuves > div > p + p{margin:0;font-size:.82rem;line-height:1.35;color:#c9d8e6}
.sf-moments h3{color:#fff;font-size:clamp(1.2rem,1.6vw,1.4rem);margin:0 0 14px}
.sf-moments-liste{margin:0;padding:0;display:grid;gap:8px}
.sf-moment{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;align-items:start;border-radius:8px;background:rgba(255,255,255,.05);padding:13px 15px}
.sf-moment-pi{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:rgba(79,195,234,.14);color:var(--cyan-clair)}
.sf-moment-pi svg{width:20px;height:20px}
.sf-moment--alerte .sf-moment-pi{background:rgba(229,83,75,.2);color:#ff8a82}
.sf-moment > div > p:first-child{display:block;font:700 .98rem/1.3 var(--titre);color:#fff;margin:0 0 3px!important}
.sf-moment p{margin:0!important;font-size:.88rem;line-height:1.55}

/* --- Étapes en chevrons --- */
.sf-etapes-sec{background:#fff}
.sf-etapes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.sf-etape{position:relative;padding:22px 30px 22px 22px;background:var(--glace);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%,18px 50%);min-height:100%}
.sf-etape:first-child{clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%);border-radius:8px 0 0 8px}
.sf-etape:last-child{clip-path:polygon(0 0,100% 0,100% 100%,0 100%,18px 50%);border-radius:0 8px 8px 0;padding-right:22px}
.sf-etape:nth-child(even){background:#e2eef7}
.sf-etape:not(:first-child){padding-left:34px}
.sf-etape small{display:block;font:700 .72rem/1 var(--texte);letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);margin-bottom:8px}
.sf-etape b{display:block;font:700 1rem/1.3 var(--titre);color:var(--encre);margin-bottom:8px}
.sf-etape p{margin:0;font-size:.88rem;line-height:1.55;color:var(--gris)}

/* --- Particuliers --- */
.sf-particuliers{background:var(--glace)}
.sf-part-grille{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,80px);align-items:start}
.sf-particuliers h2{font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.15;margin:0 0 18px}
.sf-particuliers p{color:var(--gris);line-height:1.7;margin:0 0 14px}
.sf-cas{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px;counter-reset:c}
.sf-cas li{counter-increment:c;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;border-radius:8px;background:#fff;padding:14px 16px;font-size:.93rem;line-height:1.55;color:var(--encre)}
.sf-cas li::before{content:counter(c);display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--glace);font:800 .9rem/1 var(--titre);color:var(--bleu)}
.sf-reflexe{border-radius:8px;background:#fff;padding:clamp(22px,2.6vw,30px);box-shadow:0 24px 50px -40px rgba(10,34,64,.5)}
.sf-reflexe-pi{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;background:#fdf1f0;color:#c8423b;margin-bottom:14px}
.sf-reflexe-pi svg{width:26px;height:26px}
.sf-reflexe h3{font-size:1.15rem;margin:0 0 10px}
.sf-reflexe p{margin:0 0 10px!important;font-size:.93rem}
.sf-reflexe a{color:var(--bleu);font-weight:700;text-decoration:none}

/* --- Appel --- */
.sf-appel{background:#fff}
.sf-appel-carte{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(28px,4vw,64px);align-items:center;border-radius:8px;background:linear-gradient(135deg,#0a2240 0%,#0b3560 60%,#0a4a78 100%);color:#fff;padding:clamp(28px,4vw,56px)}
.sf-appel h2{color:#fff;font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.15;margin:0 0 14px}
.sf-appel p{color:#c9d8e6;line-height:1.7;margin:0 0 24px}
.sf-appel .is-style-contour-tel .wp-block-button__link{color:#fff;border-color:rgba(255,255,255,.5)}
.sf-appel-liste{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.sf-appel-liste li{display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:8px;background:rgba(255,255,255,.07);font-weight:600}
.sf-appel-liste li::before{content:"";flex:none;width:20px;height:20px;background:#35c4a6;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}

/* --- Cross-selling : 4 sœurs --- */
.sf-silo .f-silo-grille{grid-template-columns:repeat(4,minmax(0,1fr))}
.sf-silo .f-silo-carte,.sf-silo .f-silo-carte:nth-child(n+4),.sf-silo .f-silo-carte:last-child{grid-column:auto}

/* --- FAQ --- */
.sf-faq{background:#fff}
.sf-faq-liste{columns:2;column-gap:14px}
.sf-q{break-inside:avoid;margin-bottom:14px;border-radius:8px;border:1px solid var(--filet);background:#fff;transition:box-shadow .3s,border-color .3s}
.sf-q[open]{border-color:rgba(0,144,192,.4);box-shadow:0 24px 50px -40px rgba(10,34,64,.55)}
.sf-q summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:18px 20px;cursor:pointer;list-style:none;font:700 1rem/1.4 var(--titre);color:var(--encre)}
.sf-q summary::-webkit-details-marker{display:none}
.sf-q .signe{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--glace);color:var(--bleu);transition:background .3s,color .3s}
.sf-q .signe svg{width:16px;height:16px;transition:transform .3s}
.sf-q[open] .signe{background:var(--bleu);color:#fff}
.sf-q[open] .signe svg{transform:rotate(45deg)}
.sf-q .reponse{padding:0 20px 20px}
.sf-q .reponse p{margin:0;color:var(--gris);line-height:1.7}

@media (max-width:1100px){
  .sf-profils{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-chiffres{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sf-etapes{grid-template-columns:1fr;gap:8px}
  .sf-etape,.sf-etape:first-child,.sf-etape:last-child{clip-path:none;border-radius:8px;padding:18px 20px}
  .sf-silo .f-silo-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .page-sf .sf-hero{min-height:0}.sf-hero .fond-image img{object-position:center!important}.sf-hero .fond-image::after{background:linear-gradient(180deg,rgba(6,21,40,.9) 0%,rgba(6,21,40,.86) 100%)}
  .sf-hero-grille,.sf-tete,.sf-rgpd-grille,.sf-pq-grille,.sf-part-grille,.sf-appel-carte,.sf-q2{grid-template-columns:1fr}
  .sf-causes-grille,.sf-peri-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-faq-liste{columns:1}
}
@media (max-width:600px){
  .sf-rassure{flex-direction:column}
  .sf-bilan ol{grid-template-columns:1fr;gap:6px}
  .sf-chiffre{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;text-align:left}
  .sf-chiffre b{font-size:1.8rem}
  .sf-chiffre span{min-height:0}
  .sf-chiffre small{display:none}
  .sf-bilan-tete{flex-wrap:wrap}
  .sf-causes-grille,.sf-peri-grille,.sf-profils,.sf-chiffres,.sf-preuves,.sf-silo .f-silo-grille{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .sf-rp *,.sf-chiffre i{animation:none!important;opacity:1;transform:none}
}

/* ===== Page fille PRA et PCA : composants propres (s'ajoute à sf.css) ===== */
/* Carte du hero : ordre de redémarrage */
.sf-ordre{border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 40px 80px -44px rgba(0,0,0,.6);padding:clamp(18px,2vw,26px);color:var(--encre)}
.sf-ordre ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sf-ordre li{display:grid;grid-template-columns:30px minmax(0,1fr) 54px;gap:12px;align-items:center;border-radius:8px;background:#fff;padding:10px 12px;box-shadow:0 0 0 1px rgba(10,34,64,.06)}
.sf-ordre-num{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--glace);font:800 .85rem/1 var(--titre);color:var(--bleu)}
.sf-ordre-lib{font:700 .9rem/1.25 var(--titre)}
.sf-ordre-barre{display:block;height:6px;border-radius:8px;background:var(--glace);margin-top:7px;overflow:hidden}
.sf-ordre-barre i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--bleu),#187a66);transform-origin:left;transform:scaleX(0);animation:sf-remonte 10s cubic-bezier(.4,0,.2,1) infinite;animation-delay:calc(var(--i) * 1.2s)}
@keyframes sf-remonte{0%{transform:scaleX(0);opacity:1}12%,88%{transform:none;opacity:1}100%{transform:none;opacity:0}}
.sf-ordre-h{font:700 .78rem/1 var(--texte);color:#2f4257;text-align:right;white-space:nowrap}
.sf-ordre-pied{display:grid;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--filet);font:600 .8rem/1.45 var(--texte);color:#2f4257}
.sf-ordre-pied span{display:flex;gap:8px;align-items:flex-start}
.sf-ordre-pied svg{width:16px;height:16px;flex:none;margin-top:2px;color:#187a66}
.sf-ordre-pied b{color:var(--encre)}

/* PRA face au PCA */
.sf-duo{background:#fff}
.sf-comp{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr) minmax(0,1fr);border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px var(--filet)}
.sf-comp > *{padding:16px 20px;border-top:1px solid var(--filet);font-size:.93rem;line-height:1.55;color:var(--encre)}
.sf-comp .tete{border-top:0;background:var(--nuit);color:#fff;font:800 1.05rem/1.3 var(--titre)}
.sf-comp .tete:first-child{background:var(--nuit)}
.sf-comp .tete small{display:block;font:600 .78rem/1.3 var(--texte);color:#9fdcf3;margin-top:4px}
.sf-comp .lib{background:var(--glace);font:700 .82rem/1.35 var(--texte);letter-spacing:.04em;text-transform:uppercase;color:var(--gris)}
.sf-comp .pca{background:#fbfdfe}

/* Quatre repères */
.sf-reperes{background:var(--glace)}
.sf-rep-grille{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sf-rep{display:flex;flex-direction:column;border-radius:8px;background:#fff;padding:clamp(18px,2vw,24px);box-shadow:0 24px 50px -40px rgba(10,34,64,.5)}
.sf-rep-sigles{display:flex;gap:6px;margin-bottom:14px;min-height:26px}
.sf-rep-sigles p{margin:0;padding:5px 9px;border-radius:8px;background:var(--bleu);font:800 .76rem/1.1 var(--texte);letter-spacing:.06em;color:#fff}
.sf-rep-sigles p + p{background:var(--glace);color:var(--bleu)}
.sf-rep h3{font-size:1.05rem;line-height:1.3;margin:0 0 12px}
.sf-rep-q{margin:0 0 14px;font:600 .95rem/1.5 var(--titre);color:var(--encre)}
.sf-rep > p:last-child{margin:auto 0 0;padding-top:12px;border-top:1px solid var(--filet);font-size:.88rem;line-height:1.55;color:var(--gris)}
.sf-rep > p:last-child strong{display:block;font:700 .72rem/1 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin-bottom:6px}

/* Huit rubriques sur fond nuit */
.sf-rub-grille{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sf-rub{display:flex;flex-direction:column;border-radius:8px;background:rgba(255,255,255,.05);border:1px solid rgba(79,195,234,.18);padding:clamp(18px,2vw,22px)}
.sf-rub-haut{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.sf-rub-num{font:800 1.6rem/1 var(--titre);color:var(--cyan-clair)}
.sf-rub-chip{padding:5px 9px;border-radius:8px;background:rgba(229,83,75,.18);font:700 .7rem/1 var(--texte);color:#ffd0cc;white-space:nowrap}
.sf-rub h3{color:#fff;font-size:1.02rem;line-height:1.3;margin:0 0 8px}
.sf-rub > p{margin:0 0 12px;font-size:.88rem;line-height:1.55;color:#dbe7f1}
.sf-rub > p:last-child{margin:auto 0 0;padding-top:12px;border-top:1px solid rgba(79,195,234,.18);color:#c9d8e6}
.sf-rub > p:last-child strong{display:block;font:700 .7rem/1.2 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:#9fb6ca;margin-bottom:4px}
.sf-rub--alerte{border-color:rgba(229,83,75,.4)}

/* Moyens en lignes */
.sf-moyens-sec{background:var(--glace)}
.sf-moyens{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:m}
.sf-moyen{counter-increment:m;display:grid;grid-template-columns:56px minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(16px,3vw,40px);align-items:start;border-radius:8px;background:#fff;padding:clamp(20px,2.4vw,28px)}
.sf-moyen::before{content:"0" counter(m);display:grid;place-items:center;width:56px;height:56px;border-radius:8px;background:var(--glace);font:800 1.15rem/1 var(--titre);color:var(--bleu)}
.sf-moyen h3{font-size:1.1rem;line-height:1.3;margin:0}
.sf-moyen p{margin:0;color:var(--gris);line-height:1.7}
.sf-moyen a{color:var(--bleu);font-weight:600}

/* Exigences externes */
.sf-exig-sec{background:#fff}
.sf-exig{list-style:none;margin:0;padding:0;border-radius:8px;box-shadow:0 0 0 1px var(--filet);overflow:hidden}
.sf-exig > div{display:grid;grid-template-columns:minmax(0,.32fr) minmax(0,1fr);gap:clamp(16px,3vw,40px);align-items:start;padding:20px 24px;border-top:1px solid var(--filet)}
.sf-exig > div:first-child{border-top:0}
.sf-exig-lib{display:flex;align-items:center;gap:12px;font:700 1.02rem/1.3 var(--titre);color:var(--encre)}
.sf-exig-lib svg{width:22px;height:22px;flex:none;color:var(--bleu)}
.sf-exig p{margin:0;color:var(--gris);line-height:1.7}
.sf-exig-sec .sf-source{margin:16px 0 0;font-size:.8rem;color:var(--gris)}

/* Appel sur fond glace */
.sf-appel.sf-appel--glace{background:var(--glace)}
.sf-etapes--6{grid-template-columns:repeat(6,minmax(0,1fr))}

@media (max-width:1100px){
  .sf-rep-grille,.sf-rub-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-etapes--6{grid-template-columns:1fr}
}
@media (max-width:900px){
  .sf-comp{grid-template-columns:1fr 1fr}
  .sf-comp .lib{grid-column:1 / -1}
  .sf-comp .tete:first-child{display:none}
  .sf-moyen{grid-template-columns:56px minmax(0,1fr)}
  .sf-moyen p{grid-column:2}
  .sf-exig > div{grid-template-columns:1fr;gap:8px}
}
@media (max-width:600px){
  .sf-rep-grille,.sf-rub-grille{grid-template-columns:1fr}
  .sf-comp > *{padding:12px 14px;font-size:.86rem}
  .sf-moyen{grid-template-columns:1fr}
  .sf-moyen p{grid-column:auto}
  .sf-ordre li{grid-template-columns:30px minmax(0,1fr) 44px;gap:10px}
}
@media (prefers-reduced-motion:reduce){.sf-ordre-barre i{animation:none;transform:none}}

/* ===== Page fille Stockage et archivage : composants propres (s'ajoute à sf.css et sfpra.css) ===== */
/* Carte du hero : analyse de volumétrie */
.sf-volume{border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 40px 80px -44px rgba(0,0,0,.6);padding:clamp(18px,2vw,26px);color:var(--encre)}
.sf-volume-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;font:700 .8rem/1.2 var(--texte);color:#2f4257}
.sf-volume-total b{font:800 1.8rem/1 var(--titre);color:var(--encre)}
.sf-pile{display:flex;height:22px;border-radius:8px;overflow:hidden;background:var(--glace);margin-bottom:16px}
.sf-pile i{display:block;height:100%;width:var(--l);background:var(--c);transform-origin:left;transform:scaleX(0);animation:sf-pile .9s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * .35s + .4s)}
@keyframes sf-pile{to{transform:none}}
.sf-volume ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sf-volume li{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:12px;align-items:center;border-radius:8px;background:#fff;padding:11px 14px;box-shadow:0 0 0 1px rgba(10,34,64,.06)}
.sf-volume li > i{width:14px;height:14px;border-radius:4px;background:var(--c)}
.sf-volume li b{display:block;font:700 .9rem/1.25 var(--titre)}
.sf-volume li small{display:block;font:600 .74rem/1.35 var(--texte);color:#2f4257;margin-top:2px}
.sf-volume li em{font:800 1rem/1 var(--titre);font-style:normal;color:var(--encre);white-space:nowrap}
.sf-volume-pied{display:flex;gap:8px;align-items:flex-start;margin-top:14px;padding-top:12px;border-top:1px solid var(--filet);font:600 .8rem/1.45 var(--texte);color:#2f4257}
.sf-volume-pied svg{width:16px;height:16px;flex:none;margin-top:2px;color:#187a66}
.sf-volume-pied b{color:var(--encre)}

/* Tableau à trois colonnes */
.sf-comp--3{grid-template-columns:minmax(0,.6fr) repeat(3,minmax(0,1fr))}

/* Trois âges d'un document */
.sf-ages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;counter-reset:a}
.sf-age{position:relative;counter-increment:a;display:flex;flex-direction:column;border-radius:8px;background:#fff;padding:clamp(20px,2.2vw,26px);box-shadow:0 24px 50px -40px rgba(10,34,64,.5)}
.sf-age:not(:last-child)::after{content:"";position:absolute;top:44px;right:-26px;width:18px;height:18px;background:var(--cyan);clip-path:polygon(0 0,100% 50%,0 100%)}
.sf-age-num{margin-top:0;display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;font:700 .72rem/1 var(--texte);letter-spacing:.1em;text-transform:uppercase;color:var(--cyan)}
.sf-age-num::before{content:counter(a);display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--bleu);font:800 1rem/1 var(--titre);letter-spacing:0;color:#fff}
.sf-age h3{font-size:1.15rem;margin:0 0 10px}
.sf-age > p:not(.sf-age-num){margin:0 0 14px;color:var(--gris);line-height:1.6;font-size:.93rem}
.sf-age dl{margin:auto 0 0;display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--filet)}
.sf-age dt{font:700 .7rem/1.2 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:var(--gris);margin-bottom:3px}
.sf-age dd{margin:0;font-size:.9rem;line-height:1.5;color:var(--encre)}

/* Durées de conservation sur fond nuit */
.sf-durees{margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sf-duree{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;border-radius:8px;background:rgba(255,255,255,.05);border:1px solid rgba(79,195,234,.18);padding:18px 20px}
.sf-duree-val{display:grid;place-items:center;min-width:64px;padding:10px 8px;border-radius:8px;background:rgba(79,195,234,.14);text-align:center}
.sf-duree .sf-duree-val > p:first-child{margin:0;display:block;font:800 1.7rem/1 var(--titre);color:var(--cyan-clair)}
.sf-duree .sf-duree-val > p + p{margin:0;display:block;font:700 .7rem/1 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:#c9d8e6;margin-top:4px}
.sf-duree h3{color:#fff;font-size:.98rem;line-height:1.35;margin:0 0 8px}
.sf-duree p{margin:0;font-size:.84rem;line-height:1.5;color:#c9d8e6}
.sf-duree p strong{color:#fff;font-weight:700}

/* Calendrier de la facturation électronique */
.sf-calendrier{margin:0;padding:0 0 0 28px;position:relative;display:grid;gap:14px}
.sf-calendrier::before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--bleu),var(--cyan))}
.sf-calendrier > div{position:relative;border-radius:8px;background:var(--glace);padding:18px 20px}
.sf-calendrier > div::before{content:"";position:absolute;left:-25px;top:22px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--bleu)}
.sf-calendrier > div.passe::before{background:var(--bleu)}
.sf-calendrier p.sf-cal-date{margin-top:0;display:block;font:700 .74rem/1 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin-bottom:8px}
.sf-calendrier p.sf-cal-titre{margin-top:0;display:block;font:700 1.02rem/1.35 var(--titre);color:var(--encre);margin-bottom:6px}
.sf-calendrier p.sf-cal-texte{margin:0;color:var(--gris);font-size:.92rem;line-height:1.6}

/* Trois constats */
.sf-constats{margin:0 0 clamp(24px,3vw,36px);padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sf-constat{border-radius:8px;background:#fff;padding:clamp(20px,2.2vw,26px)}
.sf-constat-pi{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;background:var(--glace);color:var(--bleu);margin-bottom:14px}
.sf-constat-pi svg{width:26px;height:26px}
.sf-constat p.sf-constat-titre{margin-top:0;display:block;font:700 1.05rem/1.3 var(--titre);color:var(--encre);margin-bottom:8px}
.sf-constat p{margin:0;color:var(--gris);font-size:.93rem;line-height:1.65}
.sf-analyse{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.sf-analyse > div > p{margin:0 0 12px;color:var(--gris);line-height:1.7}
.sf-analyse ol.wp-block-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;counter-reset:q}
.sf-analyse ol li{counter-increment:q;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:center;border-radius:8px;background:#fff;padding:12px 16px;font-weight:600;color:var(--encre)}
.sf-analyse ol li::before{content:counter(q);display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--glace);font:800 .9rem/1 var(--titre);color:var(--bleu)}
.sf-moyens--glace .sf-moyen{background:var(--glace)}

@media (max-width:1100px){
  .sf-durees{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .sf-comp--3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sf-ages,.sf-constats,.sf-analyse{grid-template-columns:1fr}
  .sf-age:not(:last-child)::after{top:auto;bottom:-26px;right:50%;transform:translateX(50%) rotate(90deg)}
}
@media (max-width:600px){
  .sf-durees{grid-template-columns:1fr}
  .sf-comp--3{grid-template-columns:1fr}
  .sf-comp--3 .tete{display:none}
  .sf-comp--3 [data-col]::before{content:attr(data-col);display:block;font:700 .7rem/1.2 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin-bottom:4px}
}
@media (prefers-reduced-motion:reduce){.sf-pile i{animation:none;transform:none}}
#facturation-electronique h2{font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.15;margin:0 0 20px}
#facturation-electronique .sf-rgpd-grille > div > p{color:var(--gris);line-height:1.7;margin:0 0 14px}
#facturation-electronique .sf-calendrier p.sf-cal-texte{margin:0;font-size:.92rem;line-height:1.6}

/* ===== Page fille Sauvegarde immuable : composants propres (s'ajoute à sf.css et sfpra.css) ===== */
/* Carte du hero : simulation d'un compte administrateur compromis */
.sf-attaque{border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 40px 80px -44px rgba(0,0,0,.6);padding:clamp(18px,2vw,26px);color:var(--encre)}
.sf-attaque-cmd{display:flex;align-items:center;gap:10px;margin-bottom:12px;border-radius:8px;background:#0b1a2c;padding:10px 14px;font:600 .78rem/1.4 ui-monospace,Consolas,monospace;color:#ffd0cc}
.sf-attaque-cmd svg{width:16px;height:16px;flex:none;color:#ff8a82}
.sf-attaque ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sf-attaque li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border-radius:8px;background:#fff;padding:11px 14px;box-shadow:0 0 0 1px rgba(10,34,64,.06)}
.sf-attaque li b{display:block;font:700 .9rem/1.25 var(--titre);position:relative;width:fit-content}
.sf-attaque li small{display:block;font:600 .74rem/1.35 var(--texte);color:#2f4257;margin-top:2px}
.sf-attaque li:not(.sf-tient) b::after{content:"";position:absolute;left:0;right:0;top:55%;height:2px;background:#b8322b;transform:scaleX(0);transform-origin:left;animation:sf-raye 12s ease infinite;animation-delay:calc(var(--i) * 1.4s + .6s)}
@keyframes sf-raye{0%,4%{transform:scaleX(0);opacity:1}9%,88%{transform:none;opacity:1}100%{transform:none;opacity:0}}
.sf-etat{position:relative;display:grid;min-width:104px;font:700 .68rem/1 var(--texte);letter-spacing:.04em;text-transform:uppercase;text-align:center}
.sf-etat span{grid-area:1/1;padding:6px 8px;border-radius:8px;color:#fff}
.sf-etat .avant{background:#2f4257;animation:sf-avant 12s ease infinite;animation-delay:calc(var(--i) * 1.4s + .6s)}
.sf-etat .apres{background:#b8322b;opacity:0;animation:sf-apres 12s ease infinite;animation-delay:calc(var(--i) * 1.4s + .6s)}
.sf-tient .sf-etat .apres{background:#187a66}
@keyframes sf-avant{0%,4%{opacity:1}9%,100%{opacity:0}}
@keyframes sf-apres{0%,4%{opacity:0}9%,92%{opacity:1}100%{opacity:0}}
.sf-tient{box-shadow:0 0 0 2px #187a66 !important}
.sf-attaque-pied{display:flex;gap:8px;align-items:flex-start;margin-top:14px;padding-top:12px;border-top:1px solid var(--filet);font:600 .8rem/1.45 var(--texte);color:#2f4257}
.sf-attaque-pied svg{width:16px;height:16px;flex:none;margin-top:2px;color:#187a66}
.sf-attaque-pied b{color:var(--encre)}

/* Définition */
.sf-def-grille{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,80px);align-items:start}
.sf-def-grille h2{font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.15;margin:0 0 20px}
.sf-def-grille p{color:var(--gris);line-height:1.7;margin:0 0 14px}
.sf-definition{margin:0;border-radius:8px;background:var(--glace);padding:clamp(20px,2.4vw,28px)}
.sf-definition p.sf-def-lib{margin:0 0 12px!important;display:inline-block;padding:5px 9px;border-radius:8px;background:var(--bleu);font:700 .72rem/1 var(--texte);letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:12px}
.sf-definition p:not(.sf-def-lib):not(.sf-def-note){margin:0 0 10px!important;font:600 1.02rem/1.6 var(--titre);color:var(--encre)!important}
.sf-definition p.sf-def-note{margin:0;line-height:inherit;display:block;font-size:.84rem;color:var(--gris)}
.sf-verrou{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:stretch}
.sf-verrou > div{display:flex;flex-direction:column;justify-content:center;border-radius:8px;padding:14px 16px;background:var(--glace)}
.sf-verrou > div.verrou{background:var(--nuit);color:#fff}
.sf-verrou p.sf-verrou-lib{margin-top:0;font:700 .7rem/1.2 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin-bottom:6px}
.sf-verrou > div.verrou p.sf-verrou-lib{color:var(--cyan-clair)}
.sf-verrou p.sf-verrou-titre{margin:0;color:inherit;font:700 .95rem/1.3 var(--titre)}
.sf-verrou .sf-verrou-refus{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;font-style:normal}
.sf-verrou .sf-verrou-refus > p{margin:0;line-height:1;padding:4px 8px;border-radius:8px;background:rgba(229,83,75,.2);font:700 .7rem/1 var(--texte);font-style:normal;color:#ffd0cc}

/* Faux amis : 7 cartes + la carte du test */
.sf-rub-chip--orange{background:rgba(242,153,74,.2);color:#ffe0bf}
.sf-rub--test{background:rgba(79,195,234,.12);border-color:rgba(79,195,234,.45)}
.sf-rub--test h3{font-size:1.1rem}
.sf-rub--test p{color:#e6f1f8}

/* Cinq questions */
.sf-q5{margin:0;padding:0;display:grid;gap:12px;counter-reset:q5}
.sf-q5 > div{counter-increment:q5;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:0;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px var(--filet)}
.sf-q5 > div > *{padding:18px 20px}
.sf-q5-q{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start;background:var(--nuit);font:700 1rem/1.4 var(--titre);color:#fff}
.sf-q5-q::before{content:counter(q5);display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:rgba(79,195,234,.18);font:800 .95rem/1 var(--titre);color:var(--cyan-clair)}
.sf-q5 p.sf-q5-lib{margin:0 0 6px;display:flex;align-items:center;gap:6px;font:700 .7rem/1.2 var(--texte);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.sf-q5-ok .sf-q5-lib::before{content:"";flex:none;width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}.sf-q5-flou .sf-q5-lib::before{content:"";flex:none;width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 7 10 10M17 7 7 17' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 7 10 10M17 7 7 17' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}
.sf-q5-ok{background:#f1f9f6}
.sf-q5-ok .sf-q5-lib{color:#14634f}
.sf-q5-flou{background:#fdf5f4}
.sf-q5-flou .sf-q5-lib{color:#b8322b}
.sf-q5 :is(.sf-q5-ok,.sf-q5-flou) > p:not(.sf-q5-lib){margin:0;font-size:.9rem;line-height:1.6;color:var(--encre)}
.sf-etapes--4{grid-template-columns:repeat(4,minmax(0,1fr))}

@media (max-width:1100px){.sf-etapes--4{grid-template-columns:1fr}}
@media (max-width:900px){
  .sf-def-grille{grid-template-columns:1fr}
  .sf-q5 > div{grid-template-columns:1fr 1fr}
  .sf-q5-q{grid-column:1 / -1}
}
@media (max-width:600px){
  .sf-q5 > div{grid-template-columns:1fr}
  .sf-verrou{grid-template-columns:1fr}
  .sf-etat{min-width:92px}
}
@media (prefers-reduced-motion:reduce){
  .sf-attaque li b::after,.sf-etat span{animation:none!important}
  .sf-etat .avant{opacity:0}.sf-etat .apres{opacity:1}
  .sf-attaque li:not(.sf-tient) b::after{transform:none}
}

/* ===== Page fille Restauration de données : composants propres (s'ajoute à sf.css, sfpra.css, sfarch.css) ===== */
/* Carte du hero : compte rendu de restauration */
.sf-cr{border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 40px 80px -44px rgba(0,0,0,.6);padding:clamp(18px,2vw,26px);color:var(--encre)}
.sf-cr dl{margin:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.sf-cr dl div{border-radius:8px;background:#fff;padding:10px 14px;box-shadow:0 0 0 1px rgba(10,34,64,.06)}
.sf-cr dt{font:700 .68rem/1.2 var(--texte);letter-spacing:.08em;text-transform:uppercase;color:#2f4257;margin-bottom:4px}
.sf-cr dd{margin:0;font:700 .9rem/1.3 var(--titre)}
.sf-cr-frise{margin-top:14px;border-radius:8px;background:#fff;padding:14px;box-shadow:0 0 0 1px rgba(10,34,64,.06)}
.sf-cr-frise ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.sf-cr-frise li{position:relative;padding-top:18px;font:600 .72rem/1.3 var(--texte);color:#2f4257}
.sf-cr-frise li b{display:block;font:800 .82rem/1.2 var(--titre);color:var(--encre)}
.sf-cr-frise li::before{content:"";position:absolute;top:0;left:0;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid var(--bleu);opacity:.35;animation:sf-jalon 9s ease infinite;animation-delay:calc(var(--i) * 1.3s)}
.sf-cr-frise li:last-child::before{border-color:#187a66}
@keyframes sf-jalon{0%{opacity:.35;background:#fff}8%,90%{opacity:1;background:var(--bleu)}100%{opacity:.35;background:#fff}}
.sf-cr-delai{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--filet);font:600 .8rem/1.4 var(--texte);color:#2f4257}
.sf-cr-delai b{font:800 1.5rem/1 var(--titre);color:var(--encre)}
.sf-cr-delai span:last-child{padding:6px 9px;border-radius:8px;background:#187a66;font:700 .7rem/1 var(--texte);letter-spacing:.04em;text-transform:uppercase;color:#fff;white-space:nowrap}

/* Premiers gestes : à faire / à éviter */
.sf-gestes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.sf-geste-col{border-radius:8px;padding:clamp(20px,2.4vw,28px);background:rgba(255,255,255,.05);border:1px solid rgba(79,195,234,.18)}
.sf-geste-tete{display:flex;align-items:center;gap:10px;margin:0 0 16px}.sf-geste-col h3{color:#fff;font-size:1.15rem;margin:0}
.sf-geste-pi{display:grid;place-items:center;width:34px;height:34px;border-radius:8px}
.sf-geste-pi svg{width:18px;height:18px}
.sf-geste-col--oui .sf-geste-pi{background:rgba(53,196,166,.18);color:#5fd9bd}
.sf-geste-col--non{border-color:rgba(229,83,75,.35)}
.sf-geste-col--non .sf-geste-pi{background:rgba(229,83,75,.2);color:#ff8a82}
.sf-geste-col ol.wp-block-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:g}
.sf-geste-col li{counter-increment:g;position:relative;margin:0;padding-left:40px;min-height:28px;font-size:.93rem;line-height:1.6;color:#dbe7f1}
.sf-geste-col li::before{position:absolute;left:0;top:0;content:counter(g);display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.08);font:800 .82rem/1 var(--titre);color:#fff}
.sf-geste-col li strong{color:#fff}

/* Modèle de compte rendu de test */
.sf-modele{border-radius:8px;background:#fff;padding:clamp(20px,2.4vw,28px);box-shadow:0 24px 50px -40px rgba(10,34,64,.5)}
.sf-modele-tete{display:flex;align-items:center;gap:10px;margin:0 0 14px}.sf-modele h3{font-size:1.1rem;margin:0}
.sf-modele-tete svg{flex:none;width:22px;height:22px;color:var(--bleu)}
.sf-modele ol.wp-block-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;counter-reset:m}
.sf-modele li{counter-increment:m;position:relative;margin:0;min-height:50px;border-radius:8px;background:var(--glace);padding:10px 12px 10px 54px;font-size:.9rem;line-height:1.5;color:var(--gris)}
.sf-modele li::before{position:absolute;left:12px;top:10px;content:counter(m);display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#fff;font:800 .85rem/1 var(--titre);color:var(--bleu)}
.sf-modele li strong{display:block;font-family:var(--titre)}

@media (max-width:900px){.sf-gestes{grid-template-columns:1fr}}
@media (max-width:600px){
  .sf-cr dl{grid-template-columns:1fr 1fr}
  .sf-cr-frise ol{grid-template-columns:1fr 1fr;row-gap:12px}
}
@media (prefers-reduced-motion:reduce){.sf-cr-frise li::before{animation:none;opacity:1}}

/* Ajouts WordPress */
.sf-hero-grille h1{margin-top:0}
.sf-boutons .wp-block-button__link::after{width:18px;height:18px}
ul.sf-appel-liste.wp-block-list,ul.sf-autres-oblig.wp-block-list{padding:0}
ul.sf-appel-liste.wp-block-list{margin:0}
ul.sf-autres-oblig.wp-block-list{margin:16px 0 0}
ol.sf-cas.wp-block-list{margin:0 0 16px;padding:0}
.sf-chiffres{margin:0}
p.sf-ch-num{margin:0 0 12px}
.sf-rub-haut p{margin:0}
.sf-exig .sf-exig-lib p{margin:0;color:inherit;line-height:inherit}
.sf-rep-q{margin-top:0}
/* Tuile de réflexe bleue (plan d'une mairie) : style en ligne de la maquette, passé en classe. */
.sf-reflexe-pi--bleu{background:var(--glace);color:var(--bleu)}
.sf-q summary{margin:0}
/* Preuves : dans la maquette, la précision est un <span> en ligne ; chaque ligne prend la hauteur de ligne du corps de texte. */
.sf-preuves > div > p + p{line-height:calc(1.0625rem * 1.65)}
/* Archivage : la liste des définitions des âges est le dernier enfant de la carte ; les questions en liste native. */
.sf-age dt + dd{margin-top:0}
.sf-analyse > div > ol.wp-block-list > li{margin:0}
/* Listes à coches : dans WordPress, le texte n'a plus de <span> enveloppe ; un lien ou un gras deviendrait un élément
   flex à part. La ligne passe en bloc, la coche en position absolue (même géométrie : 18 px, 10 px d'écart). */
.sf-autres-oblig li{display:block;position:relative;padding-left:28px;margin:0}
.sf-autres-oblig li::before{position:absolute;left:0;top:0}
/* Immuable : question en paragraphe ; numéro « ? » de la carte du test. */
.sf-q5-q > p{margin:0}
.sf-rub-haut p.sf-rub-chip{margin:0}
