/* ══════════════════════════════════════════════════════════════════════
   rk-vitrine.css — site vitrine Diaddem R!skool (accueil, fonctionnalités,
   pages intérieures). Chargé par layouts/public. Charte inspirée de DDM :
   fonds indigo animés, titres en dégradé, vraies captures du produit,
   apparitions au défilement ([data-rv]) — désactivées si l'utilisateur
   préfère réduire les animations.
   ══════════════════════════════════════════════════════════════════════ */
/* ═════════ JETONS DE LA PAGE ═════════ */
:root{--hx-1:#05080f;--hx-2:#0b1220;--hx-3:#0f1b33;--hx-line:rgba(148,163,184,.10);
    --grad:linear-gradient(92deg,#60a5fa 0%,#38bdf8 45%,#4ade80 100%)}
.hm .container{max-width:1280px}
.hm-grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:hmShift 8s ease-in-out infinite alternate}
@keyframes hmShift{to{background-position:100% 0}}

/* Apparition au défilement */
[data-rv]{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
[data-rv].is-in{opacity:1;transform:none}
[data-rv="left"]{transform:translateX(-30px)} [data-rv="right"]{transform:translateX(30px)} [data-rv="zoom"]{transform:scale(.94)}
@media (prefers-reduced-motion:reduce){[data-rv]{opacity:1;transform:none}}

/* ═════════ HÉROS ═════════ */
.hx{position:relative;overflow:hidden;isolation:isolate;color:#cbd5e1;padding:56px 0 0;
    background:radial-gradient(900px 600px at 78% 18%,#123a7a 0%,transparent 60%),radial-gradient(700px 500px at 8% 92%,#0c2a5c 0%,transparent 65%),linear-gradient(160deg,var(--hx-1),var(--hx-2) 55%,var(--hx-3))}
.hx__grid{position:absolute;inset:-64px 0 0;z-index:-2;pointer-events:none;
    background-image:linear-gradient(var(--hx-line) 1px,transparent 1px),linear-gradient(90deg,var(--hx-line) 1px,transparent 1px);background-size:64px 64px;
    -webkit-mask-image:radial-gradient(1100px 620px at 60% 30%,#000 30%,transparent 78%);mask-image:radial-gradient(1100px 620px at 60% 30%,#000 30%,transparent 78%);
    animation:hxPan 26s linear infinite}
@keyframes hxPan{to{background-position:64px 64px}}
.hx__orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:hxFloat 14s ease-in-out infinite}
.hx__orb--a{width:420px;height:420px;background:#2563eb;top:-120px;right:8%}
.hx__orb--b{width:320px;height:320px;background:#0ea5e9;bottom:60px;left:-80px;animation-delay:-5s;opacity:.35}
.hx__orb--c{width:260px;height:260px;background:#0ea5e9;top:40%;right:-60px;animation-delay:-9s;opacity:.35}
@keyframes hxFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,26px)}}

.hx__in{display:flex;flex-direction:column;align-items:center}
.hx__copy{text-align:center;max-width:920px;display:flex;flex-direction:column;align-items:center}
.hx__pill{display:inline-flex;align-items:center;gap:8px;font:700 12px var(--pb-body);letter-spacing:.14em;text-transform:uppercase;color:#dbeafe;
    padding:8px 14px;border-radius:999px;border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.10);backdrop-filter:blur(6px);margin-bottom:22px}
.hx__pill i{color:#4ade80;font-size:8px;animation:hxBlink 2s ease-in-out infinite}
@keyframes hxBlink{50%{opacity:.35}}
.hx h1{font-size:clamp(32px,4.6vw,64px);line-height:1.05;letter-spacing:-1.8px;color:#fff;margin-bottom:20px}
.hx__lead{font-size:clamp(16px,1.35vw,19px);line-height:1.6;color:#cbd5e1;max-width:62ch;margin-bottom:28px}
.hx .pb-actions{justify-content:center}
.hx .pb-btn--lg{padding:15px 26px}
.hx__go{position:relative;overflow:hidden}
.hx__go::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-100%);animation:hxShine 4.5s ease-in-out infinite}
@keyframes hxShine{0%,60%{transform:translateX(-100%)}80%,100%{transform:translateX(100%)}}
.hx__trust{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;margin-top:22px;font-size:13.5px;color:#94a3b8}
.hx__trust i{color:#4ade80;margin-right:7px}
.hx__trust b{color:#e2e8f0;font-weight:600}

/* Fenêtre produit (vraies captures) : inclinée, elle se redresse au défilement */
.hx__visual{position:relative;width:100%;max-width:1160px;margin:44px 0 0;perspective:2000px}
.hx__win{--tilt:16deg;--sc:.94;position:relative;border-radius:18px;overflow:hidden;background:#0b1220;border:1px solid rgba(148,163,184,.22);
    box-shadow:0 60px 120px rgba(2,6,15,.7),0 0 0 8px rgba(96,165,250,.07),0 0 90px rgba(255,255,255,.25);
    transform:rotateX(var(--tilt)) scale(var(--sc));transform-origin:50% 0;will-change:transform;animation:hxRise 1.1s cubic-bezier(.2,.7,.2,1) .15s both}
@keyframes hxRise{from{opacity:0;translate:0 60px}to{opacity:1;translate:0 0}}
.hx__bar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(180deg,#111827,#0b1220);border-bottom:1px solid rgba(148,163,184,.14)}
.hx__dots{display:flex;gap:6px;flex:none}.hx__dots i{width:10px;height:10px;border-radius:50%;background:#f87171}.hx__dots i:nth-child(2){background:#fbbf24}.hx__dots i:nth-child(3){background:#34d399}
.hx__tabs{display:flex;gap:4px;margin-left:10px;overflow:hidden;min-width:0}
.hx__tab{position:relative;display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#94a3b8;font:600 12.5px var(--pb-body);padding:6px 11px;border-radius:8px;cursor:pointer;white-space:nowrap;overflow:hidden;transition:background .2s,color .2s}
.hx__tab:hover{color:#fff}
.hx__tab i{font-size:11px}
.hx__tab.on{background:rgba(96,165,250,.18);color:#fff}
.hx__tab::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--grad)}
.hx__tab.on::after{animation:hxProg var(--hx-dur,4.5s) linear forwards}
@keyframes hxProg{to{width:100%}}
.hx__url{margin-left:auto;flex:none;display:flex;align-items:center;gap:7px;font:600 11.5px var(--pb-body);color:#94a3b8;padding:4px 10px;border-radius:7px;background:rgba(255,255,255,.06)}
.hx__shots{position:relative;aspect-ratio:1440/705;background:#f5f7fb}
.hx__shots img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left;opacity:0;transform:scale(1.03);transition:opacity .8s,transform 5s ease-out}
.hx__shots img.on{opacity:1;transform:scale(1)}
.hx__cap{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:14px;font-size:12px;color:#94a3b8}

/* Cartes flottantes */
.hx__float{position:absolute;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:16px;background:rgba(255,255,255,.97);color:#0f172a;
    box-shadow:0 24px 50px rgba(2,6,15,.45);border:1px solid #e6eaf5;animation:hxBob 6s ease-in-out infinite;text-align:left}
.hx__float b{display:block;font:800 14px var(--pb-display)}
.hx__float small{display:block;font-size:12px;color:#64748b}
.hx__float .ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:#fff;font-size:15px;flex:none}
.hx__float--a{left:-40px;bottom:22%}
.hx__float--b{right:-36px;top:18%;animation-delay:-3s}
@keyframes hxBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.hx__toast{transition:opacity .45s,transform .45s}
.hx__toast.out{opacity:0;transform:translateY(8px)}

/* Modules sous le héros */
.hx__mods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:8px;padding-bottom:48px;width:100%}
.hx__mod{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;text-decoration:none;color:#e2e8f0;
    background:rgba(255,255,255,.045);border:1px solid rgba(148,163,184,.16);backdrop-filter:blur(8px);transition:transform .25s,background .25s,border-color .25s}
.hx__mod:hover{transform:translateY(-4px);background:rgba(255,255,255,.08);border-color:rgba(148,163,184,.4)}
.hx__mod .ic{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;color:#fff;font-size:19px;flex:none;box-shadow:0 10px 24px rgba(0,0,0,.3)}
.hx__mod b{display:block;font:800 15.5px var(--pb-display);color:#fff}
.hx__mod small{display:block;font-size:12.5px;color:#94a3b8;line-height:1.35}
.hx__mod > span:last-child{min-width:0}

/* ═════════ BANDEAU DÉFILANT ═════════ */
.mq{background:#fff;border-bottom:1px solid var(--pb-line);overflow:hidden;padding:18px 0;position:relative}
.mq::before,.mq::after{content:"";position:absolute;top:0;bottom:0;width:120px;z-index:1;pointer-events:none}
.mq::before{left:0;background:linear-gradient(90deg,#fff,transparent)} .mq::after{right:0;background:linear-gradient(270deg,#fff,transparent)}
.mq__track{display:flex;gap:14px;width:max-content;animation:mqRun 42s linear infinite}
.mq:hover .mq__track{animation-play-state:paused}
.mq__item{display:inline-flex;align-items:center;gap:9px;padding:9px 18px;border-radius:999px;background:#f5f7fb;border:1px solid var(--pb-line);font:600 14px var(--pb-body);color:var(--pb-ink-2);white-space:nowrap}
.mq__item i{color:#2563eb;font-size:12px}
@keyframes mqRun{to{transform:translateX(-50%)}}

/* ═════════ CHIFFRES ═════════ */
.st{padding:44px 0 4px}
.st__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.st__item{position:relative;padding:26px 24px;border-radius:20px;background:#fff;border:1px solid var(--pb-line);box-shadow:var(--pb-sh-1);overflow:hidden}
.st__item::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--c)}
.st__ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--c);margin-bottom:16px;box-shadow:0 10px 22px color-mix(in srgb,var(--c) 35%,transparent)}
.st__v{font:800 clamp(30px,3.2vw,42px) var(--pb-display);color:var(--pb-ink);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-1px}
.st__l{margin-top:8px;font-weight:600;color:var(--pb-ink)}
.st__s{font-size:13px;color:var(--pb-muted)}

/* ═════════ VITRINE DES MODULES ═════════ */
.sc{padding:56px 0}
.sc__wrap{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.5fr);gap:32px;align-items:start}
.sc__tabs{display:grid;gap:10px}
.sc__tab{position:relative;display:flex;gap:14px;align-items:flex-start;text-align:left;padding:18px 18px 20px;border-radius:18px;border:1px solid var(--pb-line);background:#fff;cursor:pointer;font:inherit;color:inherit;overflow:hidden;transition:border-color .25s,box-shadow .25s,transform .25s}
.sc__tab:hover{transform:translateX(4px)}
.sc__tab.on{border-color:color-mix(in srgb,var(--c) 45%,#fff);box-shadow:0 18px 40px color-mix(in srgb,var(--c) 16%,transparent)}
.sc__tab .ic{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;color:#fff;font-size:18px;flex:none;background:linear-gradient(145deg,var(--c2),var(--c))}
.sc__tab b{display:block;font:800 17px var(--pb-display);color:var(--pb-ink)}
.sc__tab small{display:block;font-size:13px;color:var(--pb-muted);font-weight:600}
.sc__tab p{font-size:13.5px;color:var(--pb-muted);margin-top:6px;line-height:1.5;display:none}
.sc__tab.on p{display:block}
.sc__tab::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--c)}
.sc__tab.on::after{animation:hxProg 7s linear forwards}
.sc__tabs.paused .sc__tab::after{animation:none;width:0}
.sc__panel{position:relative;border-radius:22px;padding:22px;background:linear-gradient(160deg,#0b1220,#0f1b33);overflow:hidden;color:#cbd5e1}
.sc__panel::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(70px);opacity:.45;background:var(--c,#2563eb);top:-160px;right:-120px;transition:background .6s}
.sc__frame{position:relative;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 30px 70px rgba(2,6,15,.55)}
.sc__frame .hx__bar{padding:8px 12px}
.sc__url{margin-left:12px;flex:1;max-width:340px;height:22px;border-radius:7px;background:rgba(255,255,255,.08);font:600 11.5px var(--pb-body);color:#94a3b8;display:flex;align-items:center;gap:7px;padding:0 10px}
.sc__shots{position:relative;aspect-ratio:1440/705}
.sc__shots img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left;opacity:0;transition:opacity .6s}
.sc__shots img.on{opacity:1}
.sc__feats{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;margin-top:20px;list-style:none}
.sc__feats li{display:flex;gap:10px;font-size:14.5px;color:#e2e8f0}
.sc__feats li i{color:#4ade80;margin-top:4px}
.sc__foot{position:relative;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;margin-top:20px;padding-top:18px;border-top:1px solid rgba(148,163,184,.16)}
.sc__foot span{font-size:13px;color:#94a3b8}

/* ═════════ DÉMARCHE (vue d'ensemble, façon DDM) ═════════ */
.dm{padding:56px 0;background:#fff}
.dm__line{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;list-style:none;counter-reset:dm}
.dm__line::before{content:"";position:absolute;left:8%;right:8%;top:31px;height:3px;border-radius:3px;background:#e7ecf4}
.dm__bar{position:absolute;left:8%;top:31px;height:3px;border-radius:3px;width:0;background:linear-gradient(90deg,#2563eb,#7c3aed,#16a34a);transition:width 1.8s cubic-bezier(.4,0,.2,1)}
.dm__line.is-in .dm__bar{width:84%}
.dm__step{position:relative;text-align:center;counter-increment:dm}
.dm__num{position:relative;z-index:1;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#fff;border:3px solid #e7ecf4;color:var(--pb-ink);font-size:22px;transition:border-color .4s,color .4s,box-shadow .4s,background .4s}
.dm__num::after{content:counter(dm);position:absolute;right:-6px;top:-6px;width:24px;height:24px;border-radius:50%;background:var(--pb-navy);color:#fff;font:800 12px var(--pb-display);display:grid;place-items:center}
.dm__line.is-in .dm__num{border-color:var(--c);color:var(--c);box-shadow:0 12px 28px color-mix(in srgb,var(--c) 22%,transparent);background:color-mix(in srgb,var(--c) 7%,#fff)}
.dm__step:nth-child(2) .dm__num{transition-delay:.35s}.dm__step:nth-child(3) .dm__num{transition-delay:.7s}.dm__step:nth-child(4) .dm__num{transition-delay:1.05s}.dm__step:nth-child(5) .dm__num{transition-delay:1.4s}
.dm__step h3{font-size:16.5px;margin-bottom:6px}
.dm__step p{font-size:13.5px;color:var(--pb-muted);line-height:1.55;max-width:26ch;margin:0 auto}
.dm__shot{margin-top:36px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:center}
.dm__shot img{width:100%;border-radius:16px;border:1px solid var(--pb-line);box-shadow:var(--pb-sh-3)}
.dm__quote{padding:28px;border-radius:20px;background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:1px solid #e2e8f0}
.dm__quote h3{font-size:22px;margin-bottom:10px}
.dm__quote p{color:var(--pb-ink-2);margin-bottom:18px}

/* ═════════ RÔLES ═════════ */
.rl{padding:56px 0}
.rl__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.rl__card{position:relative;padding:26px 22px;border-radius:20px;background:#fff;border:1px solid var(--pb-line);transition:transform .25s,box-shadow .25s;overflow:hidden}
.rl__card:hover{transform:translateY(-6px);box-shadow:0 22px 44px color-mix(in srgb,var(--c) 14%,transparent)}
.rl__card::after{content:"";position:absolute;right:-40px;bottom:-40px;width:130px;height:130px;border-radius:50%;background:var(--c);opacity:.06;transition:transform .4s}
.rl__card:hover::after{transform:scale(1.6)}
.rl__ic{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:20px;background:var(--c);margin-bottom:16px}
.rl__card h3{font-size:17px;margin-bottom:6px}
.rl__card p{font-size:14px;color:var(--pb-muted)}

/* ═════════ CAPACITÉS ═════════ */
.cp{padding:56px 0;background:#fff}
.cp__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cp__card{position:relative;display:flex;gap:16px;padding:22px;border-radius:18px;border:1px solid var(--pb-line);background:#fff;transition:transform .25s,box-shadow .25s,border-color .25s}
.cp__card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--c) 40%,#fff);box-shadow:0 18px 36px color-mix(in srgb,var(--c) 12%,transparent)}
.cp__ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:19px;color:var(--c);background:color-mix(in srgb,var(--c) 11%,#fff);flex:none;transition:transform .3s}
.cp__card:hover .cp__ic{transform:rotate(-8deg) scale(1.08)}
.cp__card h3{font-size:16px;margin-bottom:4px}
.cp__card p{font-size:14px;color:var(--pb-muted)}

/* ═════════ OUTILS SECTORIELS (conservés) ═════════ */
.tools-list.collapsed .tool-card.is-extra{display:none}
.btn-see-more{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--pb-blue);border:1px solid var(--pb-blue-100);border-radius:12px;padding:11px 22px;font:600 14.5px var(--pb-body);cursor:pointer}
.btn-see-more:hover{background:var(--pb-blue-50)}
.rk-oira{display:inline-flex;align-items:center;gap:5px;background:#dcfce7;color:#15803d;border:1px solid #bbf7d0;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.rk-oira-carte{position:absolute;left:10px;bottom:10px}
.rk-src{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:11.5px;color:var(--pb-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rk-src i{font-size:8px}
.rk-legende{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:14px;padding-top:14px;border-top:1px solid var(--pb-line);font-size:12px;color:var(--pb-muted)}
.rk-leg-titre{font-weight:700;color:var(--pb-ink);text-transform:uppercase;letter-spacing:.06em;font-size:11px}
.rk-leg-item{display:inline-flex;align-items:center;gap:6px}
.rk-leg-item i.fa-circle{font-size:8px}
.tool-content h3{overflow-wrap:anywhere}
.hm .tools-section .container{max-width:1200px}
.hm .tools-section{padding:56px 0}
.hm .pb-head{margin-bottom:30px}
.hm .pb-section-title{margin-bottom:28px}

/* ═════════ APPEL FINAL ═════════ */
.fx{padding:8px 0 56px;background:#fff}
.fx--after-tools{padding-top:56px}
.fx__box{position:relative;overflow:hidden;isolation:isolate;border-radius:28px;padding:56px;color:#cbd5e1;text-align:center;
    background:radial-gradient(700px 360px at 50% -10%,#1d4ed8 0%,transparent 70%),linear-gradient(160deg,var(--hx-1),var(--hx-2) 60%,var(--hx-3))}
.fx__box::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(var(--hx-line) 1px,transparent 1px),linear-gradient(90deg,var(--hx-line) 1px,transparent 1px);background-size:48px 48px;
    -webkit-mask-image:radial-gradient(600px 300px at 50% 0%,#000,transparent 80%);mask-image:radial-gradient(600px 300px at 50% 0%,#000,transparent 80%);animation:hxPan 20s linear infinite}
.fx__box h2{color:#fff;font-size:clamp(26px,3.2vw,40px);letter-spacing:-.8px;margin:14px auto 12px;max-width:22ch}
.fx__box p{max-width:60ch;margin:0 auto 28px;color:#cbd5e1;font-size:16.5px}
.fx__box .pb-actions{justify-content:center}
.fx__checks{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;margin-top:26px;font-size:14px;color:#dbeafe;list-style:none}
.fx__checks i{color:#4ade80;margin-right:7px}

/* ═════════ RESPONSIVE ═════════ */
@media (max-width:1180px){
    .hx__float--a{left:-8px}
    .hx__float--b{right:-8px}
    .sc__wrap{grid-template-columns:minmax(0,1fr)}
    .sc__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sc__tab p{display:block}
}
@media (max-width:980px){
    .hx__mods,.st__grid,.rl__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .cp__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dm__line{grid-template-columns:minmax(0,1fr);gap:0}
    .dm__line::before,.dm__bar{left:31px;right:auto;top:20px;bottom:20px;width:3px;height:auto}
    .dm__bar{height:0;transition:height 1.8s cubic-bezier(.4,0,.2,1)}
    .dm__line.is-in .dm__bar{width:3px;height:calc(100% - 40px)}
    .dm__step{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 18px;text-align:left;padding-bottom:22px}
    .dm__num{margin:0;grid-row:span 2}
    .dm__step p{margin:0;max-width:none}
    .dm__shot{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
    .hx{padding-top:40px}
    .hx h1{letter-spacing:-.8px}
    .hx__lead{font-size:16px}
    .hx .pb-actions .pb-btn{flex:1 1 100%}
    .hx__win{--tilt:0deg;--sc:1}
    .hx__tab span,.hx__url{display:none}
    .hx__visual{margin-top:30px}
    .hx__float{display:none}
    .hx__mods,.st__grid,.rl__grid,.cp__grid,.sc__tabs{grid-template-columns:minmax(0,1fr)}
    .sc__feats{grid-template-columns:minmax(0,1fr)}
    .sc__panel{padding:14px}
    .fx__box{padding:36px 20px}
    .fx__box .pb-actions .pb-btn{flex:1 1 100%}
}

/* ═════════ EXPLORER (accueil → pages du site) ═════════ */
.ex{padding:56px 0;background:#fff}
.ex__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ex__card{position:relative;display:flex;flex-direction:column;gap:8px;padding:24px 22px 20px;border-radius:20px;border:1px solid var(--pb-line);background:#fff;text-decoration:none;color:inherit;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.ex__card::before{content:"";position:absolute;inset:auto -30% -60% auto;width:200px;height:200px;border-radius:50%;background:var(--c);opacity:.07;transition:transform .5s}
.ex__card:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--c) 40%,#fff);box-shadow:0 22px 44px color-mix(in srgb,var(--c) 15%,transparent)}
.ex__card:hover::before{transform:scale(1.5)}
.ex__ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff;font-size:19px;background:var(--c);margin-bottom:6px}
.ex__card b{font:800 18px var(--pb-display);color:var(--pb-ink)}
.ex__d{font-size:14px;color:var(--pb-muted);flex:1}
.ex__go{font-weight:700;font-size:14px;color:var(--c);display:inline-flex;gap:8px;align-items:center}
.ex__go i{transition:transform .25s}
.ex__card:hover .ex__go i{transform:translateX(5px)}

/* ═════════ BANDEAU DES PAGES INTÉRIEURES ═════════ */
.ph{position:relative;overflow:hidden;isolation:isolate;color:#cbd5e1;padding:44px 0 52px;
    background:radial-gradient(800px 460px at 85% 0%,#123a7a 0%,transparent 62%),linear-gradient(160deg,var(--hx-1),var(--hx-2) 60%,var(--hx-3))}
.ph .hx__grid{inset:0}
.ph__in{position:relative;display:flex;flex-direction:column;align-items:flex-start}
.ph__crumb{display:flex;align-items:center;gap:10px;font-size:13px;color:#94a3b8;margin-bottom:20px}
.ph__crumb a{color:#cbd5e1;text-decoration:none}.ph__crumb a:hover{color:#fff}.ph__crumb i{font-size:9px}
.ph h1{font-size:clamp(30px,4vw,54px);line-height:1.06;letter-spacing:-1.4px;color:#fff;margin-bottom:16px;max-width:20ch}
.ph__lead{font-size:clamp(15.5px,1.3vw,18px);line-height:1.6;color:#cbd5e1;max-width:66ch}

/* Pages intérieures existantes : même bandeau sombre (documents légaux et fiche métier restent clairs) */
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head){position:relative;overflow:hidden;isolation:isolate;border-bottom:0;color:#cbd5e1;
    background:radial-gradient(800px 460px at 85% 0%,#123a7a 0%,transparent 62%),linear-gradient(160deg,var(--hx-1),var(--hx-2) 60%,var(--hx-3))}
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
    background-image:linear-gradient(var(--hx-line) 1px,transparent 1px),linear-gradient(90deg,var(--hx-line) 1px,transparent 1px);background-size:64px 64px;
    -webkit-mask-image:radial-gradient(900px 420px at 70% 20%,#000 30%,transparent 80%);mask-image:radial-gradient(900px 420px at 70% 20%,#000 30%,transparent 80%);animation:hxPan 26s linear infinite}
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head) .pb-h1{color:#fff}
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head) .pb-lead{color:#cbd5e1}
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head) .pb-lead b{color:#e2e8f0}
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head) .pb-crumb,.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head) .pb-crumb a{color:#94a3b8}
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head) .pb-crumb a:hover{color:#fff}
.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head) .pb-eyebrow{color:#dbeafe;background:rgba(255,255,255,.12);border-color:rgba(148,163,184,.28)}
.pb-pagehead .ab-bang{color:#fca5a5}
.pr-head .pr-facts{color:#94a3b8}.pr-head .pr-facts b{color:#e2e8f0}.pr-head .pr-facts i{color:#4ade80}
.fo-head .pb-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.fo-head .pb-btn--ghost:hover{background:rgba(255,255,255,.08)}

/* ═════════ SOMMAIRE COLLANT (page Fonctionnalités) ═════════ */
.fn-sub{position:sticky;top:var(--pb-header-h);z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--pb-line)}
.fn-sub__in{display:flex;gap:6px;overflow-x:auto;padding:10px 24px;scrollbar-width:none}
.fn-sub__in::-webkit-scrollbar{display:none}
.fn-sub a{flex:none;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font:600 14px var(--pb-body);color:var(--pb-ink-2);text-decoration:none;transition:background .2s,color .2s}
.fn-sub a i{font-size:12px;color:var(--pb-subtle);transition:color .2s}
.fn-sub a:hover{background:var(--pb-slate-50)}
.fn-sub a.on{background:var(--pb-navy);color:#fff}
.fn-sub a.on i{color:#4ade80}
.hm section[id]{scroll-margin-top:calc(var(--pb-header-h) + 60px)}

/* ═════════ MODULE EN DÉTAIL ═════════ */
.fm{padding:64px 0;background:#fff;overflow:hidden}
.fm--alt{background:var(--pb-bg)}
.fm__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:56px;align-items:center}
.fm--alt .fm__txt{order:2}
.fm__tag{display:inline-flex;align-items:center;gap:10px;font:700 13px var(--pb-body);letter-spacing:.06em;text-transform:uppercase;color:var(--c)}
.fm__ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:#fff;font-size:16px;background:linear-gradient(145deg,var(--c2),var(--c));box-shadow:0 10px 22px color-mix(in srgb,var(--c) 30%,transparent)}
.fm h2{font-size:clamp(26px,2.8vw,38px);letter-spacing:-.8px;margin:16px 0 12px}
.fm__lead{font-size:17px;color:var(--pb-muted);margin-bottom:22px;max-width:52ch}
.fm__feats{list-style:none;display:grid;gap:12px;margin-bottom:28px}
.fm__feats li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;color:var(--pb-ink-2)}
.fm__feats li i{width:24px;height:24px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:11px;color:var(--c);background:color-mix(in srgb,var(--c) 12%,#fff);margin-top:1px}
.fm__vis{position:relative;padding:0 0 12% 10%}
.fm--alt .fm__vis{padding:0 10% 12% 0}
.fm__win{position:relative;margin:0;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--pb-line);box-shadow:0 40px 80px rgba(11,31,77,.18);will-change:transform}
.fm__win img{display:block;width:100%;height:auto}
.fm__win .hx__bar{padding:8px 12px}
.fm__win--back{position:absolute;right:0;bottom:0;width:62%;z-index:2;border:4px solid #fff;box-shadow:0 30px 60px rgba(11,31,77,.25)}
.fm--alt .fm__win--back{right:auto;left:0}
.fm__vis::before{content:"";position:absolute;inset:6% 4% 14% 14%;border-radius:40px;background:radial-gradient(closest-side,color-mix(in srgb,var(--c) 30%,transparent),transparent);filter:blur(30px);z-index:-1}

/* ═════════ EN-TÊTE QUI SE DÉTACHE AU DÉFILEMENT ═════════ */
.pb-header{transition:box-shadow .25s,background .25s}
.pb-header.is-scrolled{box-shadow:0 10px 30px rgba(11,31,77,.08)}

/* ═════════ TRANSITIONS ENTRE PAGES (navigateurs compatibles) ═════════ */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vtOut .22s ease both}
::view-transition-new(root){animation:vtIn .32s cubic-bezier(.2,.7,.2,1) both}
@keyframes vtOut{to{opacity:0;transform:translateY(-6px)}}
@keyframes vtIn{from{opacity:0;transform:translateY(10px)}}
.pb-header{view-transition-name:entete}
@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

@media (max-width:1180px){
    .fm__in{grid-template-columns:minmax(0,1fr);gap:36px}
    .fm--alt .fm__txt{order:0}
    .ex__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
    .fm{padding:44px 0}
    .fm__vis,.fm--alt .fm__vis{padding:0 0 18% 0}
    .fm__win--back{width:70%}
    .ex__grid{grid-template-columns:minmax(0,1fr)}
    .ph{padding:32px 0 40px}
    .fn-sub__in{padding:8px 16px}
}

/* ═════════ HÉROS PHOTO (vraies photos de terrain qui défilent) ═════════ */
.hx--photo{padding:0;min-height:min(860px,calc(100svh - var(--pb-header-h)));display:flex;flex-direction:column;background:#05080f}
.hx__bg{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hx__slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}
.hx__slide.on{opacity:1}
.hx__slide img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 9s cubic-bezier(.2,.6,.3,1)}
.hx__slide.on img{transform:scale(1)}
.hx__veil{position:absolute;inset:0;z-index:-1;pointer-events:none;
    background:linear-gradient(90deg,rgba(5,8,15,.95) 0%,rgba(5,8,15,.82) 36%,rgba(8,14,28,.42) 68%,rgba(8,14,28,.18) 100%),linear-gradient(0deg,rgba(5,8,15,.92) 0%,rgba(5,8,15,0) 38%),linear-gradient(180deg,rgba(5,8,15,.55) 0%,rgba(5,8,15,0) 22%)}
.hx__stage{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:40px;align-items:end;padding-top:64px;padding-bottom:26px}
.hx__copy--left{text-align:left;align-items:flex-start;max-width:740px;align-self:center}
.hx__copy--left .pb-actions,.hx__copy--left .hx__trust{justify-content:flex-start}
.hx--photo h1{font-size:clamp(34px,4.4vw,62px);text-shadow:0 2px 30px rgba(0,0,0,.35)}
.hx--photo .hx__lead{color:#e2e8f0;max-width:58ch}
.hx__legend{position:relative;min-height:132px}
.hx__leg{position:absolute;left:0;right:0;bottom:0;display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:18px;background:rgba(8,12,20,.55);
    backdrop-filter:blur(14px) saturate(1.3);border:1px solid rgba(148,163,184,.22);box-shadow:0 20px 50px rgba(0,0,0,.35);opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s;pointer-events:none}
.hx__leg.on{opacity:1;transform:none}
.hx__leg-ic{width:44px;height:44px;border-radius:12px;background:var(--c);color:#0b1220;display:grid;place-items:center;flex:none;font-size:17px}
.hx__leg small{display:block;font:800 11px var(--pb-body);letter-spacing:.16em;text-transform:uppercase;color:var(--c)}
.hx__leg b{display:block;font:800 17px var(--pb-display);color:#fff;margin:2px 0 4px}
.hx__leg > div > span{display:block;font-size:13.5px;line-height:1.5;color:#cbd5e1}
.hx__nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding-bottom:26px}
.hx__navb{position:relative;display:flex;align-items:center;gap:10px;padding:12px 14px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);
    color:#cbd5e1;font:600 13.5px var(--pb-body);cursor:pointer;overflow:hidden;text-align:left;backdrop-filter:blur(8px);transition:background .25s,border-color .25s,color .25s}
.hx__navb:hover{background:rgba(255,255,255,.09);color:#fff}
.hx__navb i{color:var(--c);font-size:14px;flex:none}
.hx__navb span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hx__navb.on{color:#fff;background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.26)}
.hx__navb em{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--c)}
.hx__navb.on em{animation:hxProg var(--hx-slide,6.5s) linear forwards}

/* ═════════ LE PRODUIT EN VRAI ═════════ */
.pv{position:relative;overflow:hidden;isolation:isolate;color:#cbd5e1;padding:56px 0 0;
    background:radial-gradient(900px 600px at 78% 18%,#123a7a 0%,transparent 60%),radial-gradient(700px 500px at 8% 92%,#0c2a5c 0%,transparent 65%),linear-gradient(160deg,var(--hx-1),var(--hx-2) 55%,var(--hx-3))}
.pv .hx__grid{inset:0}
.pv__head{text-align:center;display:flex;flex-direction:column;align-items:center}
.pv__head .hx__pill{margin-bottom:16px}
.pv__head h2{color:#fff;font-size:clamp(26px,3.2vw,44px);letter-spacing:-1px;line-height:1.1}
.pv .hx__visual{margin-top:30px}

/* ═════════ FONDS PHOTO DES PAGES INTÉRIEURES ═════════ */
.ph,.pb-pagehead:is(.ab-head,.pr-head,.tl-head,.fo-head,.pa-head){
    background:linear-gradient(90deg,rgba(5,8,15,.95) 0%,rgba(5,8,15,.84) 45%,rgba(8,14,28,.55) 100%),var(--ph-img,none) center/cover no-repeat,linear-gradient(160deg,var(--hx-1),var(--hx-2) 60%,var(--hx-3))}
.ph{--ph-img:url(../images/photos/energie.jpg)}
.ab-head{--ph-img:url(../images/photos/macons.jpg)}
.pr-head{--ph-img:url(../images/photos/terrassement.jpg)}
.tl-head{--ph-img:url(../images/photos/chantier.jpg)}
.fo-head{--ph-img:url(../images/photos/formation.jpg)}
.pa-head{--ph-img:url(../images/photos/echafaudage.jpg)}
@media (max-width:960px){
    .ph{--ph-img:url(../images/photos/energie-sm.jpg)}
    .ab-head{--ph-img:url(../images/photos/macons-sm.jpg)}
    .pr-head{--ph-img:url(../images/photos/terrassement-sm.jpg)}
    .tl-head{--ph-img:url(../images/photos/chantier-sm.jpg)}
    .fo-head{--ph-img:url(../images/photos/formation-sm.jpg)}
    .pa-head{--ph-img:url(../images/photos/echafaudage-sm.jpg)}
}

/* ═════════ EN-TÊTE : barre sombre en verre dépoli, onglets en pastilles ═════════ */
.pb-header{background:rgba(5,8,15,.8);backdrop-filter:saturate(1.6) blur(16px);-webkit-backdrop-filter:saturate(1.6) blur(16px);border-bottom:1px solid rgba(148,163,184,.14)}
.pb-header.is-scrolled{background:rgba(5,8,15,.92);box-shadow:0 12px 34px rgba(0,0,0,.28)}
.pb-nav{gap:2px}
.pb-nav > li > a{color:#cbd5e1;font-weight:600;font-size:14.5px;padding:8px 12px;border-radius:999px;display:inline-flex;align-items:center;gap:7px}
.pb-nav > li > a:hover{background:rgba(255,255,255,.08);color:#fff}
.pb-nav > li > a.active{color:#fff;background:rgba(96,165,250,.2);box-shadow:inset 0 0 0 1px rgba(148,163,184,.25)}
.pb-nav > li > a.active::after{left:50%;right:auto;width:5px;height:5px;bottom:2px;border-radius:50%;transform:translateX(-50%);background:#4ade80}
.pb-nav > li > a .fa-chevron-down{font-size:10px;opacity:.7;transition:transform .2s}
.pb-header .pb-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.22)}
.pb-header .pb-btn--ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.4)}
.pb-header .pb-btn--go{box-shadow:0 0 0 1px rgba(74,222,128,.35),0 8px 24px rgba(22,163,74,.35)}
.pb-header .pb-btn--primary{background:linear-gradient(135deg,#2563eb,#2563eb)}
.pb-header__row > .pb-search input{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}
.pb-header__row > .pb-search i{color:#cbd5e1}
.pb-header__row > .pb-search:focus-within input{background:#fff;border-color:#fff}
.pb-header__row > .pb-search:focus-within i{color:var(--pb-subtle)}
.pb-burger{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.18)}
@media (max-width:1080px){
    .pb-drawer.open{background:#0b1220;border-bottom-color:rgba(148,163,184,.18)}
    .pb-drawer ul a{color:#e2e8f0}
    .pb-drawer ul a.active{background:rgba(96,165,250,.2);color:#fff}
    .pb-drawer .pb-search input{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#fff}
    .pb-drawer .pb-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.25)}
}

@media (min-width:1760px){.pb-header .container{max-width:1640px}}

/* Menu déroulant « Tarifs » : deux cartes photo (offres des modules, formation) */
.pb-mega--duo{width:min(620px,92vw);padding:14px;gap:12px}
.pb-nav .pb-mega a.pb-duo{flex-direction:column;gap:0;padding:0;overflow:hidden;border:1px solid var(--pb-line);border-radius:16px;transition:border-color .2s,box-shadow .2s,transform .2s}
.pb-nav .pb-mega a.pb-duo:hover{background:#fff;border-color:var(--pb-blue-100);box-shadow:var(--pb-sh-2);transform:translateY(-2px)}
.pb-duo__img{position:relative;display:block;width:100%;height:118px;background:linear-gradient(180deg,rgba(5,8,15,0) 35%,rgba(5,8,15,.6)),var(--img) center/cover no-repeat,#0b1220}
.pb-duo__img em{position:absolute;left:12px;bottom:10px;display:inline-flex;align-items:center;gap:7px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--pb-ink);font:700 11.5px var(--pb-body);font-style:normal}
.pb-duo__img em i{color:var(--pb-blue)}
.pb-duo__txt{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px}
.pb-duo__txt strong{margin-top:8px;font-size:13.5px;color:var(--pb-blue);display:inline-flex;align-items:center;gap:7px}
.pb-duo:hover .pb-duo__txt strong i{transform:translateX(3px)}
.pb-duo__txt strong i{transition:transform .2s}
.pb-mega__foot span i{color:var(--pb-blue);margin-right:6px}
.pb-drawer__sub{padding-left:28px !important;font-size:.94em;opacity:.9}
.pb-drawer__sub::before{content:"↳ ";opacity:.5}
@media (max-width:1260px){.pb-nav > li > a{padding:8px 8px;font-size:14px}.pb-header__row{gap:10px}.pb-header .rk-brand__tag{display:none}}
.pb-nav{flex:0 1 auto}
.pb-header__row > .pb-search{margin-left:auto}

/* Menu déroulant « Fonctionnalités » : les modules en un coup d'œil */
.pb-nav__mega{position:relative}
.pb-mega{position:absolute;left:50%;top:calc(100% + 16px);width:min(700px,92vw);padding:12px;border-radius:22px;background:#fff;border:1px solid #e6eaf5;
    box-shadow:0 34px 80px rgba(5,8,15,.38);display:grid;grid-template-columns:1fr 1fr;gap:4px;opacity:0;visibility:hidden;transform:translate(-50%,10px);transition:opacity .2s,transform .2s,visibility .2s;z-index:20}
.pb-mega::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.pb-nav__mega:hover .pb-mega,.pb-nav__mega:focus-within .pb-mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
.pb-nav__mega:hover > a .fa-chevron-down,.pb-nav__mega:focus-within > a .fa-chevron-down{transform:rotate(180deg)}
.pb-nav .pb-mega a{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:16px;white-space:normal;color:var(--pb-ink);font-weight:400;text-decoration:none;transition:background .15s}
.pb-nav .pb-mega a:hover{background:#f5f7fb}
.pb-mega__ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#fff;font-size:17px;flex:none;background:linear-gradient(145deg,var(--c2),var(--c))}
.pb-mega b{display:block;font:800 15px var(--pb-display);color:var(--pb-ink)}
.pb-mega small{display:block;font-size:12.5px;line-height:1.45;color:var(--pb-muted);margin-top:2px}
.pb-nav .pb-mega .pb-mega__foot{grid-column:1/-1;align-items:center;justify-content:space-between;margin-top:4px;padding:14px 16px;background:linear-gradient(135deg,#eff6ff,#f0fdf4)}
.pb-nav .pb-mega .pb-mega__foot:hover{background:linear-gradient(135deg,#e2e8f0,#dcfce7)}
.pb-mega__foot span{font-size:13.5px;color:var(--pb-ink-2)}
.pb-mega__foot strong{font-size:14px;color:#2563eb;display:inline-flex;gap:8px;align-items:center}

@media (max-width:1180px){
    .hx__stage{grid-template-columns:minmax(0,1fr);align-items:center}
    .hx__legend{display:none}
}
@media (max-width:980px){
    .hx__nav{grid-template-columns:repeat(5,minmax(0,1fr))}
    .hx__navb{justify-content:center;padding:12px 8px 14px}
    .hx__navb span{display:none}
}
@media (max-width:640px){
    .hx--photo{min-height:0}
    .hx__stage{padding-top:44px}
    .hx__veil{background:linear-gradient(180deg,rgba(5,8,15,.7) 0%,rgba(5,8,15,.86) 55%,rgba(5,8,15,.95) 100%)}
    .pv{padding-top:44px}
}

/* ═════════ PALETTE CLAIRE (2026-11) : sections blanches, sombre réservé aux photos ═════════ */
.pv{background:linear-gradient(180deg,#fff 0%,#f5f7fb 100%);color:var(--pb-ink-2)}
.pv .hx__grid{background-image:linear-gradient(rgba(15,23,42,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.045) 1px,transparent 1px)}
.pv .hx__orb{display:none}
.pv__head h2{color:var(--pb-ink)}
.pv .hx__pill,.pb-head .hx__pill{color:#1d4ed8;background:#eff6ff;border-color:#dbeafe;backdrop-filter:none}
.pv .hx__cap{color:var(--pb-muted)}
.pv .hx__win{box-shadow:0 40px 90px rgba(15,23,42,.18),0 0 0 1px rgba(15,23,42,.06)}
.pv .hx__mod{background:#fff;border-color:var(--pb-line);color:var(--pb-ink-2);box-shadow:var(--pb-sh-1);backdrop-filter:none}
.pv .hx__mod:hover{background:#fff;border-color:#cdd8ea;box-shadow:var(--pb-sh-2)}
.pv .hx__mod b{color:var(--pb-ink)}
.pv .hx__mod small{color:var(--pb-muted)}
.pv .hm-grad{background:linear-gradient(92deg,#2563eb 0%,#0ea5e9 50%,#16a34a 100%);-webkit-background-clip:text;background-clip:text}
.sc__panel{background:linear-gradient(160deg,#0b1220,#0f1b33)}
.fx__box{background:linear-gradient(90deg,rgba(5,8,15,.92) 0%,rgba(5,8,15,.78) 55%,rgba(8,14,28,.6) 100%),url(../images/photos/macons.jpg) center/cover no-repeat}
.fx__box::before{display:none}
.hx__veil{background:linear-gradient(90deg,rgba(5,8,15,.9) 0%,rgba(5,8,15,.72) 36%,rgba(5,8,15,.28) 68%,rgba(5,8,15,.08) 100%),linear-gradient(0deg,rgba(5,8,15,.88) 0%,rgba(5,8,15,0) 36%),linear-gradient(180deg,rgba(5,8,15,.5) 0%,rgba(5,8,15,0) 22%)}
@media (max-width:640px){.hx__veil{background:linear-gradient(180deg,rgba(5,8,15,.62) 0%,rgba(5,8,15,.8) 55%,rgba(5,8,15,.94) 100%)}}

.ph .hx__orb{display:none}

/* Signature « by Kekeli Expertises » */
.hx__by{margin-top:22px}

/* Modules au choix + application mobile (sous le titre de la vitrine) */
.sc__choix{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}
.sc__choix li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--pb-line);font-weight:600;font-size:14px;color:var(--pb-ink-2);box-shadow:var(--pb-sh-1)}
.sc__choix i{color:var(--pb-blue)}
.ph__lead b{color:#fff}

/* ═════════ SECTEURS (accueil + page Secteurs) ═════════
   Vraies photos par secteur (Sector::photoUrl, réglable dans l'administration),
   mise en page serrée : pas de grands aplats ni d'espace perdu. */
.sk{padding:48px 0;background:var(--pb-bg)}
.sk__top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 32px;margin-bottom:22px}
.sk__top .pb-eyebrow{margin-bottom:10px}
.sk__top h2{font-size:clamp(24px,2.6vw,36px);line-height:1.12;letter-spacing:-.8px;color:var(--pb-ink);max-width:24ch}
.sk__top p{color:var(--pb-muted);font-size:15px;margin-top:6px;max-width:60ch}
.sk__nums{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.sk__nums span{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--pb-line);font-size:13px;color:var(--pb-muted)}
.sk__nums b{font:800 14.5px var(--pb-display);color:var(--pb-ink);font-variant-numeric:tabular-nums}
.sk__nums i{color:var(--pb-blue);font-size:12px}
.tl-head .sk__nums span{background:rgba(255,255,255,.1);border-color:rgba(148,163,184,.28);color:#cbd5e1}
.tl-head .sk__nums b{color:#fff}
.tl-head .sk__nums i{color:#4ade80}

/* Recherche instantanée d'un métier */
.sk-find{position:relative;flex:0 1 420px;min-width:min(100%,300px)}
.sk-find input{width:100%;height:50px;border-radius:14px;border:1px solid var(--pb-line);background:#fff;padding:0 16px 0 46px;font:500 15px var(--pb-body);color:var(--pb-ink);box-shadow:var(--pb-sh-2);outline:0;transition:border-color .2s,box-shadow .2s}
.sk-find input:focus{border-color:var(--pb-blue);box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.sk-find > i{position:absolute;left:17px;top:17px;color:var(--pb-subtle)}
.sk-find__res{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--pb-line);border-radius:14px;box-shadow:var(--pb-sh-3);padding:6px;max-height:340px;overflow:auto}
.sk-find__res[hidden]{display:none}
.sk-find__res a{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--pb-ink)}
.sk-find__res a:hover,.sk-find__res a.on{background:var(--pb-blue-50)}
.sk-find__res img{width:44px;height:32px;border-radius:7px;object-fit:cover;flex:none}
.sk-find__res b{display:block;font-size:14px;font-weight:600;line-height:1.25}
.sk-find__res small{display:block;font-size:12px;color:var(--pb-muted)}
.sk-find__none{padding:12px;font-size:13.5px;color:var(--pb-muted)}

/* Mosaïque des secteurs : 6 × 3 sur grand écran */
.sk-tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.sk-tile{--c:#2563eb;position:relative;display:block;aspect-ratio:4/5;border-radius:16px;overflow:hidden;isolation:isolate;text-decoration:none;color:#fff;background:#0b1220;box-shadow:var(--pb-sh-1)}
.sk-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.sk-tile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,8,15,0) 30%,rgba(5,8,15,.55) 62%,rgba(5,8,15,.92) 100%)}
.sk-tile__ic{position:absolute;top:10px;left:10px;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--c);color:#fff;font-size:14px;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.sk-tile__n{position:absolute;top:12px;right:10px;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--pb-ink);font:700 11.5px var(--pb-body)}
.sk-tile__t{position:absolute;left:12px;right:12px;bottom:12px}
.sk-tile__t b{display:block;font:800 15px/1.2 var(--pb-display);letter-spacing:-.2px;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.sk-tile__t small{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12px;color:#cbd5e1;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s,opacity .3s}
.sk-tile:hover img,.sk-tile:focus-visible img{transform:scale(1.07)}
.sk-tile:hover .sk-tile__t small,.sk-tile:focus-visible .sk-tile__t small{max-height:40px;opacity:1}
.sk-tile:focus-visible{outline:3px solid var(--pb-blue);outline-offset:2px}
.sk__more{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;font-size:14px;color:var(--pb-muted)}

/* Bandeau de secteurs (page Secteurs) : vignettes photo qui servent de filtre */
.sk-strip{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x proximity;scrollbar-width:thin}
.sk-chip{--c:#2563eb;position:relative;flex:none;width:150px;height:88px;border-radius:14px;overflow:hidden;isolation:isolate;border:0;padding:0;cursor:pointer;color:#fff;text-align:left;font:inherit;background:#0b1220;scroll-snap-align:start;outline:3px solid transparent;outline-offset:-3px;transition:outline-color .2s,transform .2s}
.sk-chip img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.sk-chip::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,8,15,.1),rgba(5,8,15,.85))}
.sk-chip b{position:absolute;left:10px;right:10px;bottom:8px;font:700 12.5px/1.2 var(--pb-display)}
.sk-chip em{position:absolute;top:7px;right:7px;font:700 10.5px var(--pb-body);font-style:normal;background:rgba(255,255,255,.9);color:var(--pb-ink);border-radius:999px;padding:2px 7px}
.sk-chip > i{position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:var(--c);font-size:11px}
.sk-chip:hover{transform:translateY(-2px)}
.sk-chip.on{outline-color:#4ade80}
.sk-chip--all{background:linear-gradient(145deg,var(--pb-navy),var(--pb-navy-3))}
.sk-chip--all::after{display:none}

/* Barre de filtres compacte */
.sk-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff;border:1px solid var(--pb-line);border-radius:16px;padding:10px;box-shadow:var(--pb-sh-1);margin:8px 0 14px}
.sk-bar .sk-find{flex:1 1 280px}
.sk-bar .sk-find input{height:44px;box-shadow:none;background:var(--pb-bg)}
.sk-bar .sk-find > i{top:15px}
.sk-bar select{flex:0 1 210px;min-width:150px;height:44px;border-radius:12px;border:1px solid var(--pb-line);background:#fff;padding:0 12px;font:500 14px var(--pb-body);color:var(--pb-ink)}
.sk-bar select:disabled{color:var(--pb-subtle);background:var(--pb-bg)}
.sk-bar .clear-btn{height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--pb-line);background:#fff;font:600 13.5px var(--pb-body);color:var(--pb-ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.sk-bar .clear-btn:hover{background:var(--pb-bg)}

/* Cartes métier : légères (vignette du secteur + liseré de sa couleur) */
.tools-list.sk-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tool-card.sk-card{--c:#2563eb;border-radius:14px;border:1px solid var(--pb-line);border-top:3px solid var(--c);background:#fff;box-shadow:var(--pb-sh-1)}
.tool-card.sk-card:hover{transform:translateY(-2px);box-shadow:var(--pb-sh-2);border-color:#d6deeb;border-top-color:var(--c)}
.sk-card__body{padding:12px 14px;display:flex;flex-direction:column;flex:1}
.sk-card__top{display:flex;gap:11px;align-items:center;margin-bottom:8px}
.sk-card__thumb{flex:none;width:48px;height:48px;border-radius:12px;object-fit:cover;background:#e2e8f0}
.sk-card__sec{display:flex;align-items:center;gap:6px;font:700 11px var(--pb-body);color:var(--c);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sk-card__sec i{font-size:10px}
.sk-card__pays{margin-left:auto;align-self:flex-start;font-size:16px}
.sk-card__body h3{font:800 14.5px/1.25 var(--pb-display);color:var(--pb-ink);margin:2px 0 0;overflow-wrap:anywhere}
.sk-card__body p{font-size:13px;line-height:1.45;color:var(--pb-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sk-card__job{display:flex;gap:6px;margin-top:6px;font-size:12px;color:var(--pb-ink-2);line-height:1.35}
.sk-card__job i{color:var(--pb-subtle);margin-top:2px;font-size:11px}
.sk-card__foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:9px;border-top:1px solid var(--pb-line);font-size:12.5px;color:var(--pb-muted)}
.sk-card__body > :nth-last-child(2){margin-bottom:10px}
.sk-card__foot strong{color:var(--pb-blue);font-weight:700}
.sk-card__foot strong i{transition:transform .2s}
.tool-card.sk-card:hover .sk-card__foot strong i{transform:translateX(3px)}

/* Pays : drapeaux cliquables */
.rk-flag{display:inline-block;flex:none;border-radius:3px;box-shadow:0 0 0 1px rgba(15,23,42,.12);vertical-align:-2px}
.sk-pays{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px}
.sk-pays__l{font:700 12px var(--pb-body);text-transform:uppercase;letter-spacing:.06em;color:var(--pb-muted);margin-right:4px}
.sk-pays__l i{color:var(--pb-blue);margin-right:4px}
.sk-flag{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 11px;border-radius:999px;border:1px solid var(--pb-line);background:#fff;font:600 13px var(--pb-body);color:var(--pb-ink-2);cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.sk-flag:hover{border-color:#cdd6e4}
.sk-flag em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--pb-muted);background:var(--pb-bg);border-radius:999px;padding:1px 7px}
.sk-flag.on{background:var(--pb-navy);border-color:var(--pb-navy);color:#fff}
.sk-flag.on em{background:rgba(255,255,255,.16);color:#fff}
.sk-flag .fa-globe{color:var(--pb-blue)}
.sk-flag.on .fa-globe{color:#4ade80}

/* Partenaires (accueil) */
.pt{padding:44px 0;background:#fff;border-top:1px solid var(--pb-line)}
.pt__row{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:28px;align-items:center}
.pt__row h2{font-size:clamp(22px,2.2vw,30px);letter-spacing:-.6px;color:var(--pb-ink);line-height:1.15;margin:8px 0 6px}
.pt__row p{color:var(--pb-muted);font-size:14.5px}
.pt__logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:10px}
.pt__logo{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--pb-line);background:#fff;text-decoration:none;color:var(--pb-ink);transition:border-color .2s,box-shadow .2s}
.pt__logo:hover{border-color:var(--pb-blue-100);box-shadow:var(--pb-sh-2)}
.pt__logo span{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--pb-blue-50);color:var(--pb-blue);overflow:hidden}
.pt__logo span img{width:36px;height:36px;object-fit:contain}
.pt__logo b{display:block;font-size:14px;line-height:1.25}
.pt__logo small{font-size:12px;color:var(--pb-muted)}
.pt__join{display:flex;align-items:center;gap:18px;padding:18px 20px;border-radius:18px;border:1px dashed #c9d5e8;background:var(--pb-bg)}
.pt__join > i{flex:none;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#fff;color:var(--pb-blue);font-size:22px;box-shadow:var(--pb-sh-1)}
.pt__join div{flex:1;min-width:0}
.pt__join b{display:block;color:var(--pb-ink);font-size:15px}
.pt__join small{color:var(--pb-muted);font-size:13.5px}

@media (max-width:1180px){.sk-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}.tools-list.sk-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.pt__row{grid-template-columns:minmax(0,1fr)}.tools-list.sk-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.sk-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.sk-bar select{flex:1 1 140px}}
@media (max-width:560px){.sk{padding:36px 0}.sk-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sk-tile{aspect-ratio:1/1}
    .tools-list.sk-cards{grid-template-columns:minmax(0,1fr)}.pt__join{flex-wrap:wrap}.sk-find{flex-basis:100%}}
