/* p-recuperation-site-pirate.css — « L'intervention » (refonte design 14-10).
   Page seule : tout est préfixé body.p-recuperation-site-pirate. Aucune règle partagée n'est touchée.
   Ton d'urgence (rouge d'alerte local), titre qui se répare une seule fois au chargement, numéro en bouton géant,
   étapes en rapport d'incident tamponné (rouge -> sauge), puis une section calme sur papier. Palette base.css + un rouge local. */

body.p-recuperation-site-pirate{
  --al:#C8372D;
  --al-d:#A82B22;
  --al-l:#EE6E5C;
  --al-mono:ui-monospace,"Cascadia Mono","SF Mono",Consolas,Menlo,monospace;
  --al-face-a:color-mix(in srgb,var(--ink-800) 80%,var(--paper));
  --al-face-b:color-mix(in srgb,var(--ink-800) 93%,var(--paper));
  --al-pit:color-mix(in srgb,var(--ink-900) 72%,#000);
  --al-sage-d:color-mix(in srgb,var(--sage) 58%,var(--ink-900));
  --al-eo:cubic-bezier(.23,1,.32,1);
}

/* ============================== BRIQUES COMMUNES : voyants, aérations ============================== */
body.p-recuperation-site-pirate .al-led{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 2px var(--al-pit);animation:al-blink 5.2s ease-in-out infinite}
body.p-recuperation-site-pirate .al-led.r{background:var(--al-l);animation-duration:1.7s}
@keyframes al-blink{0%,40%{opacity:1}52%,86%{opacity:.2}100%{opacity:1}}
body.p-recuperation-site-pirate .al-vent{display:block;flex:0 0 34%;height:14px;margin-left:auto;background:repeating-linear-gradient(90deg,var(--al-pit) 0 2px,transparent 2px 6px)}
body.p-recuperation-site-pirate .is-off *,
body.p-recuperation-site-pirate .is-off *::before,
body.p-recuperation-site-pirate .is-off *::after,
body.p-recuperation-site-pirate .is-off::before,
body.p-recuperation-site-pirate .is-off::after{animation-play-state:paused!important}

/* ============================== HÉROS : la ligne d'urgence ============================== */
body.p-recuperation-site-pirate .al-hero{
  background:var(--ink-900);color:var(--paper);border-top:4px solid var(--al);
  padding-block:clamp(40px,6vw,92px) clamp(44px,6vw,88px);
}
body.p-recuperation-site-pirate .al-hero .breadcrumb ol,
body.p-recuperation-site-pirate .al-hero .breadcrumb a,
body.p-recuperation-site-pirate .al-hero .breadcrumb li+li::before{color:var(--muted-dark)}
body.p-recuperation-site-pirate .al-hero .breadcrumb a:hover,
body.p-recuperation-site-pirate .al-hero .breadcrumb [aria-current="page"]{color:var(--paper)}
body.p-recuperation-site-pirate .al-hero .lead{color:var(--champagne);max-width:50ch}
body.p-recuperation-site-pirate .al-hero .btn-ghost{border-color:rgba(247,243,234,.34);color:var(--paper)}
body.p-recuperation-site-pirate .al-hero .btn-ghost:hover{border-color:var(--paper)}
body.p-recuperation-site-pirate .al-hero :focus-visible,
body.p-recuperation-site-pirate .al-cta :focus-visible{outline-color:var(--paper)}
body.p-recuperation-site-pirate .al-hero .page-hero-actions{flex-direction:column;align-items:flex-start;gap:16px}
body.p-recuperation-site-pirate .al-hero .page-hero-actions .btn-ghost{width:auto}

/* le titre se répare une seule fois : le rouge corrompu est balayé de haut en bas par un trait sauge, avec quelques secousses */
body.p-recuperation-site-pirate .al-hero .page-title{
  position:relative;color:var(--paper);font-weight:200;
  font-size:clamp(2.4rem,4.9vw,4.5rem);line-height:1.05;letter-spacing:-.035em;max-width:13ch;
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  body.p-recuperation-site-pirate .al-hero .page-title{
    background:linear-gradient(180deg,var(--paper) 0 50%,var(--al-l) 50% 100%) 0 0/100% 200% no-repeat;
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
    animation:al-fix 1.6s steps(18,end) .4s both,al-jit 1.6s steps(1,end) .4s both;
  }
  body.p-recuperation-site-pirate .al-hero .page-title::after{
    content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--sage);pointer-events:none;
    animation:al-bar 1.6s steps(18,end) .4s both,al-bar-o 1.6s linear .4s both;
  }
}
@keyframes al-fix{from{background-position:0 100%}to{background-position:0 0}}
@keyframes al-bar{from{top:0}to{top:100%}}
@keyframes al-bar-o{from{opacity:1}92%{opacity:1}to{opacity:0}}
@keyframes al-jit{
  0%{transform:translateX(-7px) skewX(-5deg);clip-path:inset(0 0 52% 0)}
  7%{transform:translateX(6px);clip-path:inset(38% 0 0 0)}
  14%{transform:translateX(-3px) skewX(3deg);clip-path:inset(-12% -6% -12% -6%)}
  22%{transform:translateX(0);clip-path:inset(0 0 34% 0)}
  30%{transform:translateX(5px);clip-path:inset(-12% -6% -12% -6%)}
  41%{transform:translateX(-2px) skewX(-2deg)}
  54%{transform:none}
  100%{transform:none;clip-path:inset(-12% -6% -12% -6%)}
}
body.p-recuperation-site-pirate main.int .al-hero .page-title{margin-bottom:0}
@media (forced-colors:active){
  body.p-recuperation-site-pirate .al-hero .page-title{background:none;-webkit-text-fill-color:currentColor;animation:none}
  body.p-recuperation-site-pirate .al-hero .page-title::after{display:none}
}

/* le numéro, en bouton géant */
body.p-recuperation-site-pirate main.int .al-call{
  position:relative;display:flex;align-items:center;justify-content:flex-start;gap:clamp(14px,2vw,26px);
  width:100%;max-width:600px;min-height:0;padding:clamp(18px,2.3vw,28px) clamp(20px,2.8vw,38px);
  background:var(--al);color:var(--paper);border-radius:6px;text-align:left;
}
body.p-recuperation-site-pirate main.int .al-call:hover{background:var(--al-d);transform:none;box-shadow:none}
body.p-recuperation-site-pirate main.int .al-call:active{transform:scale(.98)}
body.p-recuperation-site-pirate .al-call-ic{flex:none;width:clamp(34px,3.8vw,54px);height:clamp(34px,3.8vw,54px)}
body.p-recuperation-site-pirate .al-call-tx{display:block;min-width:0}
body.p-recuperation-site-pirate .al-call-t{display:block;font:600 13px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase}
body.p-recuperation-site-pirate .al-call-n{display:block;margin-top:9px;font:300 clamp(2rem,4.2vw,3.7rem)/1 var(--font-display);letter-spacing:-.02em;white-space:nowrap}
/* le téléphone sonne trois fois à l'arrivée, puis se tait */
body.p-recuperation-site-pirate .al-hero .al-call::after{
  content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid var(--al-l);opacity:0;pointer-events:none;
  animation:al-ring 1.7s ease-out 2.1s 3 backwards;
}
@keyframes al-ring{from{inset:0;opacity:.9}to{inset:-16px;opacity:0}}

/* le poste d'appel : barre de titre, photo sous voile rouge, ligne ouverte, état du site */
body.p-recuperation-site-pirate main.int .al-line{
  position:relative;margin:clamp(30px,5vw,44px) 0 0;aspect-ratio:auto;
  padding:12px;background:var(--ink-800);
  border:1px solid rgba(247,243,234,.16);border-top:3px solid var(--al);border-radius:6px;
  box-shadow:0 34px 60px -34px rgba(0,0,0,.85);
}
body.p-recuperation-site-pirate main.int .al-line::before,
body.p-recuperation-site-pirate main.int .al-line::after{content:none}
body.p-recuperation-site-pirate .al-hd{display:flex;align-items:center;gap:10px;height:30px;padding:0 12px;
  background:linear-gradient(180deg,var(--al-face-a),var(--al-face-b));border:1px solid rgba(247,243,234,.1);border-radius:2px}
body.p-recuperation-site-pirate .al-hd b,
body.p-recuperation-site-pirate .al-wave b,
body.p-recuperation-site-pirate .al-rep-hd b,
body.p-recuperation-site-pirate .al-stamp,
body.p-recuperation-site-pirate .al-unit b,
body.p-recuperation-site-pirate .al-bar b,
body.p-recuperation-site-pirate .al-scr b{font:500 12px/1 var(--al-mono);letter-spacing:.1em;color:var(--muted-dark)}
body.p-recuperation-site-pirate main.int .al-line .pgh-clip{
  position:relative;inset:auto;aspect-ratio:16/11;margin:8px 0;border-radius:2px;
  border:6px solid var(--al-pit);background:var(--ink-900);
}
body.p-recuperation-site-pirate main.int .al-line .pgh-img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%;
  filter:grayscale(.5) brightness(.82) contrast(1.08);
}
body.p-recuperation-site-pirate main.int .al-line .pgh-clip::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:color-mix(in srgb,var(--al) 24%,transparent);mix-blend-mode:normal;
}
body.p-recuperation-site-pirate main.int .al-line .pgh-clip::after{
  content:"";position:absolute;inset:0;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,transparent 58%,rgba(18,15,11,.82)),repeating-linear-gradient(0deg,rgba(0,0,0,.16) 0 1px,transparent 1px 3px);
}
body.p-recuperation-site-pirate .al-wave{position:absolute;z-index:4;left:0;right:0;bottom:0;display:flex;align-items:center;gap:14px;padding:12px 16px}
body.p-recuperation-site-pirate .al-wave b{flex:none;display:flex;align-items:center;gap:9px;color:var(--champagne)}
body.p-recuperation-site-pirate .al-wave b::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--al-l);animation:al-blink 1.7s ease-in-out infinite}
body.p-recuperation-site-pirate .al-bars{flex:1;display:flex;align-items:center;gap:3px;height:34px;min-width:0}
body.p-recuperation-site-pirate .al-bars i{flex:1;min-width:0;height:100%;border-radius:1px;background:var(--champagne);opacity:.85;transform:scaleY(.3);
  animation:al-eq calc(1.3s + var(--n) * 41ms) ease-in-out infinite;animation-delay:calc(var(--n) * -170ms)}
body.p-recuperation-site-pirate .al-bars i:nth-child(3n){background:var(--al-l)}
@keyframes al-eq{0%,100%{transform:scaleY(.14)}38%{transform:scaleY(1)}62%{transform:scaleY(.42)}}
/* « Site piraté -> Site récupéré » : l'état avant / après, sous l'écran */
body.p-recuperation-site-pirate main.int .al-line .pgh-card{
  position:static;display:flex;flex-wrap:nowrap;align-items:center;gap:12px;max-width:none;
  padding:13px 14px;background:var(--al-pit);border:1px solid rgba(247,243,234,.1);border-radius:2px;box-shadow:none;animation:none;
  font:500 12px/1.2 var(--al-mono);letter-spacing:.08em;text-transform:uppercase;
}
body.p-recuperation-site-pirate .al-line .pgh-from{display:flex;align-items:center;gap:9px;color:var(--al-l)}
body.p-recuperation-site-pirate .al-line .pgh-from::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;background:var(--al-l)}
body.p-recuperation-site-pirate .al-line .pgh-arrow{flex:1;display:flex;align-items:center;color:var(--muted-dark)}
body.p-recuperation-site-pirate .al-line .pgh-arrow::before{content:"";flex:1;height:0;border-top:1px dashed rgba(184,174,156,.6);margin-right:6px}
body.p-recuperation-site-pirate .al-line .pgh-to{display:flex;align-items:center;gap:9px;color:var(--champagne);font-weight:500}
body.p-recuperation-site-pirate .al-line .pgh-to::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--sage)}

/* « Aujourd'hui » rouge / « Avec Trifecta » sauge */
body.p-recuperation-site-pirate .al-hero .pair{margin-top:clamp(44px,6vw,80px);gap:clamp(12px,2vw,20px)}
body.p-recuperation-site-pirate .al-hero .pair-side{border-radius:4px;border:1px solid var(--hairline-dark);padding:clamp(22px,3vw,34px)}
body.p-recuperation-site-pirate .al-hero .pair-today{background:color-mix(in srgb,var(--al) 13%,var(--ink-900));border-color:color-mix(in srgb,var(--al) 70%,transparent)}
body.p-recuperation-site-pirate .al-hero .pair-with{background:var(--forest-900);border-color:rgba(114,150,126,.75)}
body.p-recuperation-site-pirate .al-hero .pair-lbl{display:flex;align-items:center;gap:10px}
body.p-recuperation-site-pirate .al-hero .pair-lbl::before{content:"";flex:none;width:9px;height:9px;border-radius:50%}
body.p-recuperation-site-pirate .al-hero .pair-today .pair-lbl{color:var(--al-l)}
body.p-recuperation-site-pirate .al-hero .pair-today .pair-lbl::before{background:var(--al-l);animation:al-blink 1.7s ease-in-out infinite}
body.p-recuperation-site-pirate .al-hero .pair-with .pair-lbl{color:color-mix(in srgb,var(--sage) 62%,var(--paper))}
body.p-recuperation-site-pirate .al-hero .pair-with .pair-lbl::before{background:var(--sage)}
body.p-recuperation-site-pirate .al-hero .pair-txt{color:var(--paper);max-width:52ch}
body.p-recuperation-site-pirate .al-hero .pair-today .pair-txt{color:var(--champagne)}
body.p-recuperation-site-pirate .al-hero .triplets li{background:rgba(18,15,11,.3);border-color:var(--hairline-dark);border-radius:4px}
body.p-recuperation-site-pirate .al-hero .tri-from{color:var(--al-l)}
body.p-recuperation-site-pirate .al-hero .tri-to{color:var(--paper)}
body.p-recuperation-site-pirate .al-hero .tri-arrow{color:var(--muted-dark)}

@media (min-width:900px){
  body.p-recuperation-site-pirate main.int .al-hero .pgh-grid.has-media{
    display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    gap:clamp(36px,5vw,84px);align-items:center;
  }
  body.p-recuperation-site-pirate main.int .al-hero .pgh-grid.has-media .pgh-media{margin:0;aspect-ratio:auto}
}

/* ============================== titres de section, communs ============================== */
body.p-recuperation-site-pirate .al-signs .sec-title,
body.p-recuperation-site-pirate .al-fix .sec-title,
body.p-recuperation-site-pirate .al-steps .sec-title,
body.p-recuperation-site-pirate .al-calm .sec-title{font-size:clamp(2.1rem,4vw,3.6rem);font-weight:300;line-height:1.06;letter-spacing:-.025em;max-width:16ch}

/* ============================== 1. Quand un site semble infecté : trois avis d'alerte ============================== */
body.p-recuperation-site-pirate main.int .al-signs .cards{gap:clamp(14px,2vw,24px)}
body.p-recuperation-site-pirate main.int .al-signs .cards li{
  display:flex;flex-direction:column;padding:0;overflow:hidden;
  border:1px solid var(--hairline);border-top:3px solid var(--al);border-radius:4px;background:var(--paper);
}
body.p-recuperation-site-pirate main.int .al-signs .cards h3{padding:clamp(20px,2.4vw,28px) clamp(20px,2.4vw,28px) 0;font-size:clamp(1.5rem,2.1vw,1.9rem);font-weight:300;letter-spacing:-.015em}
body.p-recuperation-site-pirate main.int .al-signs .cards p{margin:0;padding:12px clamp(20px,2.4vw,28px) clamp(24px,2.8vw,32px);font-size:17px}
body.p-recuperation-site-pirate .al-mk{display:flex;flex-direction:column;height:clamp(168px,16vw,200px);background:var(--ink-800);overflow:hidden}
body.p-recuperation-site-pirate .al-bar{flex:none;display:flex;align-items:center;gap:5px;height:26px;padding:0 10px;background:linear-gradient(180deg,var(--al-face-a),var(--al-face-b));border-bottom:1px solid rgba(247,243,234,.1)}
body.p-recuperation-site-pirate .al-bar>i{flex:none;width:7px;height:7px;border-radius:50%;background:var(--muted-dark);opacity:.5}
body.p-recuperation-site-pirate .al-bar>em{flex:1;min-width:0;height:9px;margin-left:8px;border-radius:5px;background:var(--al-pit)}
body.p-recuperation-site-pirate .al-bar>b{margin-left:auto}
/* avis 1 : l'écran d'avertissement d'un navigateur */
body.p-recuperation-site-pirate .al-mk-br{padding:0}
body.p-recuperation-site-pirate .al-scr{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;
  background:color-mix(in srgb,var(--al) 80%,var(--ink-900));color:var(--paper);margin:12px;border-radius:2px}
body.p-recuperation-site-pirate .al-scr svg{flex:none;animation:al-blink 2.4s ease-in-out infinite}
body.p-recuperation-site-pirate .al-scr b{color:var(--paper);letter-spacing:.14em;text-transform:uppercase;margin-top:2px}
body.p-recuperation-site-pirate .al-scr i{display:block;height:5px;border-radius:3px;background:rgba(247,243,234,.5)}
body.p-recuperation-site-pirate .al-scr .l1{width:46%}
body.p-recuperation-site-pirate .al-scr .l2{width:30%}
body.p-recuperation-site-pirate .al-scr u{display:block;width:62px;height:16px;margin-top:3px;border:1px solid rgba(247,243,234,.7);border-radius:2px}
/* avis 2 : un serveur qu'on a coupé */
body.p-recuperation-site-pirate .al-mk-sv{justify-content:center;gap:10px;padding:0 clamp(16px,2vw,24px)}
body.p-recuperation-site-pirate .al-unit{display:flex;align-items:center;gap:11px;height:42px;padding:0 14px;background:linear-gradient(180deg,var(--al-face-a),var(--al-face-b));border:1px solid rgba(247,243,234,.1);border-radius:2px}
body.p-recuperation-site-pirate .al-unit.off{border-color:color-mix(in srgb,var(--al) 60%,transparent)}
body.p-recuperation-site-pirate .al-unit.off b{color:var(--al-l)}
body.p-recuperation-site-pirate .al-sw{position:relative;flex:none;margin-left:auto;width:36px;height:18px;border-radius:9px;background:var(--al-pit)}
body.p-recuperation-site-pirate .al-sw i{position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:var(--muted-dark)}
body.p-recuperation-site-pirate .al-sw.on{background:color-mix(in srgb,var(--sage) 55%,var(--al-pit))}
body.p-recuperation-site-pirate .al-sw.on i{left:21px;background:var(--paper)}
/* avis 3 : une ligne de code qui n'a rien à faire là */
body.p-recuperation-site-pirate .al-code{flex:1;display:flex;flex-direction:column;justify-content:center;padding:6px 16px;counter-reset:aln}
body.p-recuperation-site-pirate .al-ln{display:flex;align-items:center;gap:12px;height:22px;counter-increment:aln}
body.p-recuperation-site-pirate .al-ln::before{content:counter(aln) / "";flex:none;width:12px;text-align:right;font:500 11px/1 var(--al-mono);color:var(--muted-dark);opacity:.6}
body.p-recuperation-site-pirate .al-ln i{display:block;width:var(--w);height:6px;border-radius:3px;background:rgba(228,217,196,.3)}
body.p-recuperation-site-pirate .al-ln.bad{margin:0 -16px;padding:0 16px;background:color-mix(in srgb,var(--al) 30%,transparent);animation:al-flag 2.8s ease-in-out infinite}
body.p-recuperation-site-pirate .al-ln.bad i{background:var(--al-l)}
body.p-recuperation-site-pirate .al-ln u{display:block;width:2px;height:12px;margin-left:-6px;background:var(--paper);animation:al-blink 1.1s steps(1,end) infinite}
@keyframes al-flag{0%,100%{background-color:color-mix(in srgb,var(--al) 30%,transparent)}50%{background-color:color-mix(in srgb,var(--al) 16%,transparent)}}

/* ============================== 2. Nettoyage : des fiches qui passent du rouge au sauge ============================== */
body.p-recuperation-site-pirate main.int .al-fix .cards{grid-template-columns:minmax(0,1fr);gap:0;margin-top:clamp(28px,4vw,44px);border-top:1px solid var(--hairline)}
body.p-recuperation-site-pirate main.int .al-fix .cards li{
  position:relative;grid-column:auto;padding:clamp(22px,2.6vw,30px) 0 clamp(22px,2.6vw,30px) 74px;
  border:0;border-bottom:1px solid var(--hairline);border-radius:0;background:none;
}
body.p-recuperation-site-pirate main.int .al-fix .cards h3{font-size:clamp(1.5rem,2.2vw,1.9rem);font-weight:300;letter-spacing:-.015em}
/* la pastille d'état : sauge et cochée quand tout est fait ; rouge tant que la fiche n'est pas traitée */
body.p-recuperation-site-pirate .al-fix .cards li::before{
  content:"";position:absolute;left:0;top:clamp(22px,2.6vw,30px);width:44px;height:44px;border-radius:50%;
  background:var(--al-sage-d);box-shadow:0 0 0 1px var(--al-sage-d);
}
body.p-recuperation-site-pirate .al-fix .cards li::after{
  content:"";position:absolute;left:16px;top:calc(clamp(22px,2.6vw,30px) + 11px);width:11px;height:19px;
  border:solid var(--paper);border-width:0 3px 3px 0;transform:rotate(42deg);
}
body.p-recuperation-site-pirate .al-fix .cards.al-armed.is-on li::before,
body.p-recuperation-site-pirate .al-fix .cards.al-armed.is-on li::after{transition:background-color .5s ease,box-shadow .5s ease,opacity .35s ease,transform .5s var(--al-eo)}
body.p-recuperation-site-pirate .al-fix .cards.al-armed:not(.is-on) li::before{background:var(--al);box-shadow:0 0 0 1px var(--al)}
body.p-recuperation-site-pirate .al-fix .cards.al-armed:not(.is-on) li::after{opacity:0;transform:rotate(42deg) scale(.4)}
body.p-recuperation-site-pirate .al-fix .cards.al-armed.is-on li:nth-child(2)::before,
body.p-recuperation-site-pirate .al-fix .cards.al-armed.is-on li:nth-child(2)::after{transition-delay:.7s}
body.p-recuperation-site-pirate .al-fix .cards.al-armed.is-on li:nth-child(3)::before,
body.p-recuperation-site-pirate .al-fix .cards.al-armed.is-on li:nth-child(3)::after{transition-delay:1.4s}
body.p-recuperation-site-pirate main.int .al-fix .pgs-media img{filter:grayscale(.2) saturate(.8) contrast(1.04)}
@media (max-width:599px){
  body.p-recuperation-site-pirate main.int .al-fix .cards li{padding-left:62px}
  body.p-recuperation-site-pirate .al-fix .cards li::before{width:38px;height:38px}
  body.p-recuperation-site-pirate .al-fix .cards li::after{left:13px;top:calc(clamp(22px,2.6vw,30px) + 9px);width:10px;height:17px}
}

/* ============================== 3. Les étapes : le rapport d'incident tamponné ============================== */
body.p-recuperation-site-pirate .al-steps .sec-title{color:var(--paper)}
body.p-recuperation-site-pirate .al-sheet{
  position:relative;margin-top:clamp(36px,5vw,60px);background:var(--paper);color:var(--ink-900);
  border-radius:3px;box-shadow:0 40px 70px -40px rgba(0,0,0,.9);
}
body.p-recuperation-site-pirate .al-rep-hd{position:relative;display:flex;align-items:center;gap:clamp(12px,2.2vw,28px);padding:18px clamp(18px,3vw,38px)}
body.p-recuperation-site-pirate .al-rep-hd b{flex:none;color:var(--ink-900)}
body.p-recuperation-site-pirate .al-fld{flex:1;max-width:220px;height:14px;border-bottom:1px solid rgba(20,17,13,.38)}
body.p-recuperation-site-pirate .al-prog{position:absolute;left:0;right:0;bottom:0;height:4px;overflow:hidden;background:rgba(20,17,13,.1)}
body.p-recuperation-site-pirate .al-prog i{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--al),var(--orange) 48%,var(--sage));transform-origin:0 50%}
body.p-recuperation-site-pirate .al-sheet.al-armed.is-on .al-prog i{transition:transform 3.4s cubic-bezier(.4,0,.2,1)}
body.p-recuperation-site-pirate .al-sheet.al-armed:not(.is-on) .al-prog i{transform:scaleX(0)}
body.p-recuperation-site-pirate main.int .al-steps .steps,
body.p-recuperation-site-pirate main.int .al-steps .steps li{border-color:var(--hairline)}
body.p-recuperation-site-pirate main.int .al-steps .steps{margin-top:0;border-top:1px solid var(--hairline)}
body.p-recuperation-site-pirate main.int .al-steps .steps li{
  --st:var(--al);
  display:grid;grid-template-columns:clamp(64px,9vw,120px) minmax(0,1fr) auto;align-items:center;
  gap:clamp(14px,2.4vw,34px);padding:clamp(22px,3vw,36px) clamp(18px,3vw,38px);
  background:color-mix(in srgb,var(--st) 6%,var(--paper));
}
body.p-recuperation-site-pirate main.int .al-steps .steps li:last-child{border-bottom:0;border-radius:0 0 3px 3px}
body.p-recuperation-site-pirate main.int .al-steps .steps li:nth-child(2){--st:var(--orange-deep)}
body.p-recuperation-site-pirate main.int .al-steps .steps li:nth-child(3){--st:color-mix(in srgb,var(--orange-deep) 30%,var(--al-sage-d))}
body.p-recuperation-site-pirate main.int .al-steps .steps li:nth-child(4){--st:var(--al-sage-d)}
body.p-recuperation-site-pirate main.int .al-steps .step-num{color:var(--st);font-size:clamp(3rem,5.6vw,5.2rem);font-weight:200;line-height:.9;letter-spacing:-.04em}
body.p-recuperation-site-pirate main.int .al-steps .steps h3{color:var(--ink-900);font-size:clamp(1.4rem,2vw,1.8rem);font-weight:400}
body.p-recuperation-site-pirate main.int .al-steps .steps p{color:var(--muted);max-width:56ch;font-size:17px}
body.p-recuperation-site-pirate .al-stamp{
  justify-self:end;display:inline-block;padding:9px 14px 8px;border:2px solid var(--st);border-radius:4px;outline:1px solid var(--st);outline-offset:2px;
  color:var(--st);font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;transform:rotate(-4deg);
}
body.p-recuperation-site-pirate .steps li:nth-child(even) .al-stamp{transform:rotate(2.5deg)}
body.p-recuperation-site-pirate .al-sheet.al-armed.is-on .al-stamp{transition:opacity .1s linear,transform .3s cubic-bezier(.2,1.5,.4,1)}
body.p-recuperation-site-pirate .al-sheet.al-armed:not(.is-on) .al-stamp{opacity:0;transform:scale(2) rotate(-16deg)}
body.p-recuperation-site-pirate .al-sheet.al-armed.is-on li:nth-child(1) .al-stamp{transition-delay:.5s}
body.p-recuperation-site-pirate .al-sheet.al-armed.is-on li:nth-child(2) .al-stamp{transition-delay:1.4s}
body.p-recuperation-site-pirate .al-sheet.al-armed.is-on li:nth-child(3) .al-stamp{transition-delay:2.3s}
body.p-recuperation-site-pirate .al-sheet.al-armed.is-on li:nth-child(4) .al-stamp{transition-delay:3.2s}
@media (max-width:759px){
  body.p-recuperation-site-pirate main.int .al-steps .steps li{grid-template-columns:clamp(52px,14vw,72px) minmax(0,1fr);align-items:start}
  body.p-recuperation-site-pirate .al-stamp{grid-column:2;justify-self:start;margin-top:2px}
  body.p-recuperation-site-pirate .al-fld{display:none}
}

/* ============================== 4. Éviter que ça revienne : le calme, sur papier ============================== */
body.p-recuperation-site-pirate main.int .section.al-calm:not(.cta){background:var(--paper);padding-block:clamp(72px,9vw,128px)}
body.p-recuperation-site-pirate .al-calm .sec-title{font-weight:200}
body.p-recuperation-site-pirate .al-pulse{display:block;height:40px;margin-top:clamp(36px,5vw,60px)}
body.p-recuperation-site-pirate .al-pulse svg{display:block;width:100%;height:100%;overflow:visible}
body.p-recuperation-site-pirate .al-pulse path{fill:none;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
body.p-recuperation-site-pirate .al-pulse .b{stroke:var(--al-sage-d);stroke-width:1;opacity:.32}
body.p-recuperation-site-pirate .al-pulse .d{stroke:var(--al-sage-d);stroke-width:2.2;stroke-dasharray:120 1080;animation:al-beat 9s linear infinite}
@keyframes al-beat{from{stroke-dashoffset:120}to{stroke-dashoffset:-1080}}
body.p-recuperation-site-pirate main.int .al-calm .cards{margin-top:clamp(20px,3vw,34px);gap:clamp(14px,2vw,24px)}
body.p-recuperation-site-pirate main.int .al-calm .cards li{
  position:relative;display:flex;flex-direction:column;
  padding:clamp(26px,3vw,38px);border:1px solid color-mix(in srgb,var(--sage) 38%,transparent);border-radius:4px;
  background:color-mix(in srgb,var(--sage) 9%,var(--paper));
}
body.p-recuperation-site-pirate .al-calm .cards li::before{
  content:"";flex:none;width:30px;height:30px;margin-bottom:22px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none' stroke='%234A5D4E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='15' cy='15' r='13'/%3E%3Cpath d='m9 15.5 4 4 8-9'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.p-recuperation-site-pirate main.int .al-calm .cards h3{font-size:clamp(1.6rem,2.3vw,2.1rem);font-weight:300;letter-spacing:-.02em}
body.p-recuperation-site-pirate main.int .al-calm .cards p{margin-top:12px;font-size:17px}
body.p-recuperation-site-pirate main.int .al-calm .card-go{margin-top:auto;padding-top:22px;color:var(--al-sage-d)}
body.p-recuperation-site-pirate main.int .al-calm .cards li:has(.card-link):hover{background:color-mix(in srgb,var(--sage) 16%,var(--paper));border-color:var(--al-sage-d);box-shadow:none}
body.p-recuperation-site-pirate main.int .al-calm .cards li:has(.card-link:focus-visible){outline-color:var(--al-sage-d)}

/* ============================== 5. Appel final ============================== */
body.p-recuperation-site-pirate main.int .al-cta{border-top:4px solid var(--al)}
body.p-recuperation-site-pirate .al-cta .cta-actions{flex-direction:column;align-items:flex-start;gap:16px}
body.p-recuperation-site-pirate .al-cta .cta-actions .btn-ghost{width:auto}

/* ============================== MOUVEMENT RÉDUIT : état final, sans animation ============================== */
@media (prefers-reduced-motion:reduce){
  body.p-recuperation-site-pirate .al-led,
  body.p-recuperation-site-pirate .al-wave b::before,
  body.p-recuperation-site-pirate .al-scr svg,
  body.p-recuperation-site-pirate .al-ln.bad,
  body.p-recuperation-site-pirate .al-ln u,
  body.p-recuperation-site-pirate .al-pulse .d,
  body.p-recuperation-site-pirate .al-hero .pair-today .pair-lbl::before{animation:none!important}
  body.p-recuperation-site-pirate .al-hero .page-title{background-position:0 0;clip-path:none;transform:none}
  body.p-recuperation-site-pirate .al-hero .page-title::after{display:none}
  body.p-recuperation-site-pirate .al-hero .al-call::after{display:none}
  body.p-recuperation-site-pirate .al-bars i{animation:none;transform:scaleY(.5)}
  body.p-recuperation-site-pirate .al-bars i:nth-child(4n+1){transform:scaleY(.26)}
  body.p-recuperation-site-pirate .al-bars i:nth-child(5n+2){transform:scaleY(.9)}
  body.p-recuperation-site-pirate .al-bars i:nth-child(3n){transform:scaleY(.62)}
  body.p-recuperation-site-pirate .al-pulse .d{stroke-dasharray:none;opacity:.7}
  body.p-recuperation-site-pirate .al-sheet.al-armed .al-prog i,
  body.p-recuperation-site-pirate .al-fix .cards.al-armed li::before,
  body.p-recuperation-site-pirate .al-fix .cards.al-armed li::after,
  body.p-recuperation-site-pirate .al-sheet.al-armed .al-stamp{transition:none}
}
