.pub-page{color:#162e52;padding-top:55px;padding-bottom:110px}.pub-head{max-width:880px;margin-bottom:30px}.pub-head h1{font-size:clamp(32px,5vw,58px);line-height:1.14;color:#0b2148;margin:12px 0 18px}.pub-head>p:last-child{font-size:17px;color:#264067}.pub-kicker{font-size:12px;color:#253a9b;font-weight:850;letter-spacing:.13em}.pub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pub-card{background:rgba(250,252,255,.91);border:1px solid rgba(42,80,155,.2);border-radius:20px;padding:26px;margin-bottom:22px;box-shadow:0 12px 34px rgba(12,32,70,.1);color:#173356}.pub-card h2{font-size:clamp(22px,2.1vw,31px);margin:10px 0 15px;color:#132d5b}.pub-card p,.pub-card li{color:#27436a;line-height:1.7}.pub-card a,.pub-page a{color:#153fa4;font-weight:750;text-underline-offset:4px}.pub-universes{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:24px}.pub-universes a{border:1px solid #91a4c6;border-radius:999px;padding:9px 14px;background:rgba(255,255,255,.76);font-size:12px;text-decoration:none}.pub-note{font-size:13px;color:#39516d!important}.pub-card table{width:100%;border-collapse:collapse;font-size:14px}.pub-card th,.pub-card td{text-align:left;padding:12px 6px;border-bottom:1px solid #cfdaed}.pub-filters{display:flex;gap:20px;align-items:end;flex-wrap:wrap;margin:25px 0}.pub-filters label,.pub-contact label,.pub-faq label{display:grid;gap:7px;font-weight:700}.pub-filters input,.pub-filters select,.pub-contact input,.pub-contact select,.pub-contact textarea,.pub-faq input{border:1px solid #8ca6ce;border-radius:12px;background:white;padding:12px;font:inherit;color:#17365c;max-width:100%}.pub-total{font-size:18px;font-weight:800;color:#182e64!important}.pub-bars{display:grid;gap:13px;margin:24px 0}.pub-bar-row{display:grid;grid-template-columns:80px 1fr 120px;gap:12px;align-items:center;font-size:13px}.pub-bar-row strong{text-align:right}.pub-bar-track{border-radius:999px;overflow:hidden;background:#e3e9f4;height:18px}.pub-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#193e9b,#235fdc,#853fbe);transition:width .3s ease}.pub-faq h2{margin-top:28px}.pub-card details{background:#fff;border:1px solid #d5ddef;border-radius:12px;margin:10px 0}.pub-card summary{padding:15px 18px;cursor:pointer;color:#193965;font-weight:700}.pub-card details p{padding:0 18px 16px;margin:0}.pub-contact{max-width:850px}.pub-contact label{margin:15px 0}.pub-contact textarea{min-height:165px;resize:vertical}.pub-contact button{border:none;background:#274dc8;color:white;padding:13px 25px;border-radius:12px;cursor:pointer;font-weight:750}.pub-contact .pub-trap{position:absolute;left:-99999px}.pub-alert{padding:16px;background:#fff4df;border-left:4px solid #b0751d;color:#623c16;margin:20px 0}.pub-legal h2{margin-top:30px}.pub-legal p{line-height:1.8}.pub-shortcuts{display:flex;flex-wrap:wrap;gap:11px;margin-top:25px}.pub-shortcuts a{border:1px solid #a0b2d5;background:#fff;padding:9px 12px;border-radius:10px}@media(max-width:760px){.pub-grid{grid-template-columns:1fr}.pub-card{padding:18px}.pub-bar-row{grid-template-columns:65px 1fr 96px;gap:6px;font-size:11px}}@media(prefers-reduced-motion:reduce){.pub-bar-fill{transition:none}}

/* Public V2 : lisibilite, details et mobile */
.pub-details{margin-top:24px}
.pub-details .pub-card li{margin:10px 0}
.pub-steps{counter-reset:steps;list-style:none;padding:0;display:grid;gap:14px}
.pub-steps li{counter-increment:steps;position:relative;padding:14px 16px 14px 54px;border-radius:12px;background:rgba(221,233,252,.65);color:#213c65}
.pub-steps li:before{content:counter(steps);position:absolute;left:13px;top:12px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#2453b1;color:#fff;font-weight:800}
.pub-page,.pub-page .pub-card{min-width:0}
.pub-card{overflow-wrap:anywhere}
.pub-card table{display:block;max-width:100%;overflow-x:auto}
.pub-card th,.pub-card td{min-width:88px}
.pub-bars{width:100%;max-width:100%;min-width:0}
.pub-bar-track,.pub-bar-row{min-width:0}
.pub-contact input,.pub-contact select,.pub-contact textarea{width:100%}
.pub-contact input:focus-visible,.pub-contact select:focus-visible,.pub-contact textarea:focus-visible,.pub-faq input:focus-visible{outline:2px solid #285bb5;outline-offset:2px}
.pub-card details[hidden]{display:none!important}
@media(max-width:760px){.pub-page{padding-bottom:75px}.pub-head h1{overflow-wrap:break-word}.pub-universes{gap:7px}.pub-universes a{padding:8px 11px}.pub-filters{align-items:stretch}.pub-filters label{width:100%}.pub-bar-row{grid-template-columns:58px minmax(0,1fr) 88px;gap:5px;font-size:11px}.pub-card th,.pub-card td{font-size:12px;padding:11px 7px}}
@media(max-width:370px){.pub-bar-row{grid-template-columns:49px minmax(0,1fr) 81px;font-size:10px}.pub-card{padding:13px}}
.pub-success{padding:16px 18px;border-radius:12px;background:#dcefe8;border:1px solid #78bea1;color:#124b39!important;font-weight:750}.pub-contact label span[aria-hidden]{color:#ba3c61}


/* Correctif navigation des pages publiques intérieures seulement */
@supports selector(body:has(.pub-page)) {
  body:has(main#contenu .pub-page) .partner-floating-nav{
    top:18px!important;
    bottom:auto!important;
  }
  body:has(main#contenu .pub-page) main#contenu{
    padding-top:84px!important;
  }
  @media(max-width:900px){
    body:has(main#contenu .pub-page) .partner-floating-nav{
      top:12px!important;
    }
    body:has(main#contenu .pub-page) main#contenu{
      padding-top:75px!important;
    }
  }
}


/* Mobile uniquement : Aurora statique, FOG canvas hors mise en page */
@media(max-width:700px){
  #partner-fog-bg{display:none!important}
  body>.aurora-bg{
    display:block!important;position:fixed!important;inset:0!important;
    width:100vw!important;max-width:100vw!important;min-width:0!important;right:auto!important;height:100dvh!important;opacity:.84!important;
    background:
      radial-gradient(ellipse 84% 66% at 13% 15%,rgba(163,209,210,.79) 0%,transparent 76%),
      radial-gradient(ellipse 80% 75% at 88% 45%,rgba(6,23,254,.38) 0%,transparent 77%),
      radial-gradient(ellipse 82% 63% at 25% 90%,rgba(147,0,245,.31) 0%,transparent 76%),
      linear-gradient(135deg,#aacfd8 0%,#7189c7 53%,#9576c5 100%)!important;
    pointer-events:none!important;z-index:0!important
  }
}

/* Contenir les débordements de décor sur écrans étroits, sans masquer les éléments de formulaire */
@media(max-width:700px){html{overflow-x:clip!important}body{overflow-x:clip!important;max-width:100vw!important}}

/* FAQ large : masquer les groupes sans réponses lors d'une recherche */
.pub-faq section[hidden]{display:none!important}
.pub-faq summary:focus-visible,.pub-page a:focus-visible{outline:2px solid #2759b6;outline-offset:3px}
.pub-faq details[open]{border-color:#7a9edc;box-shadow:0 3px 12px rgba(38,65,132,.08)}
.pub-faq #pub-faq-count{font-size:13px;color:#244a83;font-weight:750}
.partner-faq-full-link{margin:23px 0 28px;text-align:center}.partner-faq-full-link a{display:inline-block;padding:13px 20px;border-radius:13px;border:1px solid rgba(25,63,151,.34);background:rgba(245,249,255,.89);color:#163d92!important;font-size:15px;font-weight:800;text-decoration:none;box-shadow:0 7px 20px rgba(9,30,73,.12)}.partner-faq-full-link a:hover{background:#fff;color:#572aa2!important}.partner-faq-full-link a:focus-visible{outline:3px solid #345dc6;outline-offset:3px}

/* Fil d'Ariane des pages publiques */
.pub-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:-22px 0 24px;font-size:13px;color:#1d3a6c}
.pub-breadcrumb a{color:#1947a0;font-weight:700}
.pub-breadcrumb [aria-current=page]{color:#233e66;font-weight:600}
@media(max-width:700px){.pub-breadcrumb{margin-top:-15px;margin-bottom:24px}}


/* Public V41 — cartes bleu nuit, verre fumé, graphes des SEULES commissions */
.pub-page{color:#142d54}
.pub-page .pub-head h1{color:#10234a}
.pub-page .pub-head>p:last-child{color:#264066}
.pub-page .pub-card{
  position:relative;
  isolation:isolate;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(132,160,236,.28);
  border-radius:22px;
  background:
    radial-gradient(ellipse 60% 70% at 103% -12%,rgba(75,64,182,.22),transparent 82%),
    linear-gradient(138deg,rgba(7,19,46,.96),rgba(10,26,59,.97) 51%,rgba(19,22,58,.96));
  box-shadow:0 18px 42px rgba(7,18,51,.19),inset 0 1px 0 rgba(208,225,255,.07);
  padding:28px;
  color:#eaf2ff;
  transition:border-color .24s ease,box-shadow .24s ease;
}
.pub-page .pub-card::before{
  content:"";position:absolute;top:0;left:25px;right:25px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(84,209,255,.58),rgba(131,92,249,.6),transparent);
  pointer-events:none;
}
.pub-page .pub-card h2{color:#f4f7ff;letter-spacing:-.025em}
.pub-page .pub-card h3{color:#eef6ff}
.pub-page .pub-card p,.pub-page .pub-card li{color:#bdcde8}
.pub-page .pub-card strong{color:#f6faff}
.pub-page .pub-card a{color:#8ed9ff;text-underline-offset:5px}
.pub-page .pub-card a:hover{color:#d7b7ff}
.pub-page .pub-card .pub-note{color:#a8bee3!important}
.pub-page .pub-card .pub-kicker{color:#a9c5ff}
.pub-page .pub-card .pub-alert{
  border:1px solid rgba(218,166,105,.35);border-left:3px solid #daa269;
  border-radius:12px;padding:16px 18px;
  background:rgba(91,57,32,.30);color:#f8d9b7!important
}
.pub-page .pub-card .pub-success{background:rgba(15,87,72,.5);border-color:#3b9d88;color:#cbffef!important}
.pub-page .pub-card .pub-alert strong{color:#ffe0af}
.pub-page .pub-card table{color:#e7eeff}
.pub-page .pub-card th,.pub-page .pub-card td{border-color:rgba(133,163,223,.2);color:#dce6f8}
.pub-page .pub-card th{color:#a9c7ff}
.pub-page .pub-card details{
  background:rgba(7,21,48,.7);border:1px solid rgba(130,159,224,.25);border-radius:13px;
}
.pub-page .pub-card details[open]{border-color:rgba(115,151,242,.52);background:rgba(11,27,64,.82)}
.pub-page .pub-card summary{color:#edf3ff}
.pub-page .pub-card details p{color:#b9cce8}
.pub-page .pub-card input,.pub-page .pub-card select,.pub-page .pub-card textarea{
  background:#101e3b;border:1px solid #465b88;border-radius:13px;color:#f1f7ff;
  outline-offset:3px;
}
.pub-page .pub-card input:focus-visible,.pub-page .pub-card select:focus-visible,.pub-page .pub-card textarea:focus-visible{
  border-color:#71a8fb;outline:2px solid rgba(80,166,255,.52);
}
.pub-page .pub-card input::placeholder,.pub-page .pub-card textarea::placeholder{color:#9fafcd}
.pub-page .pub-card label{color:#d8e5ff}
.pub-page .pub-card .pub-steps li{background:rgba(75,101,173,.17);border:1px solid rgba(119,151,228,.16);color:#d7e5ff}
.pub-page .pub-card .pub-steps li::before{background:linear-gradient(140deg,#2362b5,#6c38b6);color:#fff}
.pub-page .pub-shortcuts a{
  background:rgba(29,54,106,.62);border:1px solid rgba(124,172,255,.3);
  padding:11px 15px;border-radius:12px;color:#cde4ff;
}
.pub-page .pub-universes{gap:9px}
.pub-page .pub-universes a{
  color:#ecf2ff;border:1px solid rgba(133,162,229,.4);
  background:linear-gradient(145deg,rgba(8,21,55,.9),rgba(34,30,90,.8));
  border-radius:999px;padding:11px 15px;font-size:12px;
  box-shadow:0 6px 14px rgba(8,23,60,.10);
}
.pub-page .pub-universes a:hover,.pub-page .pub-universes a:focus-visible{
  background:linear-gradient(145deg,rgba(21,66,138,.98),rgba(70,32,128,.98));
  color:#fff;border-color:#98bdf5;
}
.pub-page .pub-card-eyebrow{
  display:inline-block;font-weight:800;font-size:11px;letter-spacing:.15em;
  text-transform:uppercase;color:#92b8fc;margin-bottom:12px;
}
.pub-page .pub-grid{gap:20px}
.pub-page .pub-grid .pub-card{margin-bottom:0}
.pub-page .pub-card-intro,.pub-page .pub-card-offers{min-height:265px}
.pub-page .pub-card-intro .pub-inline-link{display:inline-flex;gap:8px;margin-top:8px;align-items:center;font-size:14px}
.pub-page .pub-commission-offers{margin-top:16px;display:grid;gap:10px}
.pub-page .pub-commission-offer{
  display:flex;justify-content:space-between;gap:16px;align-items:center;
  border-radius:12px;padding:13px 15px;background:rgba(39,70,134,.24);
  border:1px solid rgba(125,164,239,.15);
}
.pub-page .pub-commission-offer span{color:#c7d5ed;font-size:14px}
.pub-page .pub-commission-offer strong{
  color:#b9e8ff;font-size:clamp(18px,1.8vw,22px);white-space:nowrap;letter-spacing:-.03em;
}
.pub-page .pub-calculator{margin-top:24px;padding:clamp(20px,3vw,34px);border-color:rgba(102,157,255,.37)}
.pub-page .pub-chart-heading{display:flex;justify-content:space-between;align-items:start;gap:16px;flex-wrap:wrap}
.pub-page .pub-chart-heading h2{margin-top:0;margin-bottom:8px}
.pub-page .pub-rate-chip{
  border:1px solid rgba(136,160,246,.34);background:rgba(69,56,153,.34);
  padding:10px 15px;border-radius:999px;color:#d7d0ff;font-size:13px;font-weight:750;white-space:nowrap;
}
.pub-page .pub-chart-controls{display:flex;align-items:center;gap:16px;margin:14px 0 23px}
.pub-page .pub-chart-controls label{display:grid;gap:7px;font-size:13px;font-weight:700;min-width:min(100%,270px)}
.pub-page .pub-chart-controls select{
  width:100%;height:47px;border-radius:12px;background:#122449;color:#f5f7ff;border:1px solid #5970a8;
  padding:0 12px;
}
.pub-page .pub-chart-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pub-page .pub-stat{
  padding:17px 20px;border:1px solid rgba(114,142,212,.24);
  background:rgba(11,33,77,.62);border-radius:16px;display:grid;gap:8px;
}
.pub-page .pub-stat span{font-size:12px;font-weight:700;color:#9fb5db}
.pub-page .pub-stat strong{font-size:clamp(20px,3vw,34px);color:#eef8ff;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.pub-page .pub-stat-focus{
  border-color:rgba(95,153,252,.5);
  background:linear-gradient(120deg,rgba(24,67,144,.55),rgba(62,44,137,.5));
  box-shadow:inset 0 1px 0 rgba(151,188,255,.14);
}
.pub-page .pub-stat-focus strong{color:#aee5ff}
.pub-page .pub-graph{
  margin:24px 0 0;padding:23px 24px 15px;border-radius:19px;
  background:linear-gradient(145deg,#07142e,#0b1c41 62%,#15153e);
  border:1px solid rgba(100,146,232,.24);
}
.pub-page .pub-graph-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.pub-page .pub-graph-top>span{color:#92a8cf;text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:800}
.pub-page .pub-graph-active{font-size:clamp(16px,2vw,23px);color:#addefd;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.pub-page .pub-graph-canvas{height:clamp(185px,25vw,300px);width:100%;position:relative}
.pub-page .pub-curve{display:block;width:100%;height:100%;overflow:visible}
.pub-page .pub-graph-gridline{stroke:rgba(126,163,227,.16);stroke-width:1;stroke-dasharray:4 8}
.pub-page .pub-line{filter:drop-shadow(0 2px 7px rgba(86,130,255,.46))}
.pub-page .pub-dot-halo{fill:#1f3d84;stroke:#769afa;stroke-width:1.6;transition:all .2s ease}
.pub-page .pub-dot-core{fill:#b4edff;stroke:#d7f5ff;stroke-width:1.5}
.pub-page .pub-hit-target{fill:transparent}
.pub-page .pub-point-group{cursor:pointer}
.pub-page .pub-point-group.is-active .pub-dot-halo{fill:#4450c8;stroke:#c4c0ff;filter:drop-shadow(0 0 7px rgba(126,161,255,.8))}
.pub-page .pub-point-group:focus-visible{outline:none;filter:drop-shadow(0 0 9px #aee8ff)}
.pub-page .pub-graph-scale{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;text-align:center;margin:5px 0 0}
.pub-page .pub-graph-scale span{font-size:12px;color:#adc0e0;font-weight:750}
.pub-page .pub-graph-axis{text-align:center;font-size:11px;color:#879bc4!important;letter-spacing:.06em;margin:10px 0 0}
.pub-page .pub-milestones{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin-top:17px}
.pub-page .pub-milestone{
  min-width:0;border:1px solid rgba(101,139,208,.3);border-radius:14px;
  background:rgba(15,38,82,.75);padding:13px 8px;cursor:pointer;
  display:grid;gap:8px;text-align:center;color:#ebf6ff;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.pub-page .pub-milestone span{font-size:11px;color:#a6bfdf;font-weight:650}
.pub-page .pub-milestone strong{font-size:clamp(12px,1.17vw,17px);color:#f6faff;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.pub-page .pub-milestone:hover,.pub-page .pub-milestone.is-active{
  background:linear-gradient(130deg,rgba(31,79,150,.87),rgba(73,42,138,.72));
  border-color:rgba(138,183,255,.78);
}
.pub-page .pub-milestone:focus-visible{outline:2px solid #9fdfff;outline-offset:3px}
.pub-page .pub-milestone.is-active strong{color:#c3ecff}
.pub-page .pub-catalogue-card{display:flex;flex-direction:column;gap:8px;min-height:245px}
.pub-page .pub-catalogue-card .pub-card-eyebrow{margin-bottom:4px}
.pub-page .pub-catalogue-card h2{margin:0 0 5px}
.pub-page .pub-catalogue-card p{margin:0 0 12px;flex-grow:1}
.pub-page .pub-catalogue-card a{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:10px 0;font-weight:800}
.pub-page .pub-catalogue-card:hover{border-color:rgba(121,190,255,.56);box-shadow:0 21px 47px rgba(8,20,57,.26)}
@media(max-width:1100px){.pub-page .pub-milestones{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){
  .pub-page .pub-card{padding:20px;border-radius:18px}
  .pub-page .pub-grid{gap:14px}
  .pub-page .pub-chart-heading{align-items:start}
  .pub-page .pub-chart-stats{gap:7px}
  .pub-page .pub-stat{padding:13px 11px;min-height:82px}
  .pub-page .pub-stat strong{font-size:clamp(15px,4vw,23px)}
  .pub-page .pub-stat span{font-size:11px}
  .pub-page .pub-graph{padding:16px 12px 14px}
  .pub-page .pub-graph-canvas{height:230px}
  .pub-page .pub-graph-top>span{font-size:10px}
  .pub-page .pub-graph-scale span{font-size:10px}
  .pub-page .pub-milestones{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .pub-page .pub-milestone{padding:14px 10px}
  .pub-page .pub-milestone strong{font-size:16px}
  .pub-page .pub-card-intro,.pub-page .pub-card-offers{min-height:0}
  .pub-page .pub-commission-offer{padding:11px 12px}
}
@media(max-width:375px){
  .pub-page .pub-stat{padding:11px 8px}
  .pub-page .pub-stat strong{font-size:15px}
  .pub-page .pub-graph-canvas{height:200px}
  .pub-page .pub-graph-active{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  .pub-page .pub-card,.pub-page .pub-milestone,.pub-page .pub-dot-halo{transition:none}
}


/* V42 — bannière officielle sur chaque page publique + navigation traversante */
body:has(main#contenu .partner-visual-interior) main#contenu{
  padding-top:0!important;
}
body:has(main#contenu .partner-visual-interior) .partner-floating-nav{
  top:var(--partner-nav-top,550px)!important;
  bottom:auto!important;
}
body:has(main#contenu .partner-visual-interior) .pub-page{
  padding-top:clamp(36px,4vw,72px)!important;
}
.pub-page .pub-backlinks{
  display:flex;align-items:center;flex-wrap:wrap;gap:9px;
  margin:0 0 24px;
}
.pub-page .pub-backlinks a{
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:11px;min-height:40px;
  padding:10px 15px;text-decoration:none;
  font-size:13px;font-weight:750;
  color:#f4f7ff!important;
  background:linear-gradient(145deg,rgba(7,19,49,.95),rgba(37,33,91,.9));
  border:1px solid rgba(157,184,239,.43);
  box-shadow:0 5px 15px rgba(9,24,65,.18),inset 0 1px 0 rgba(255,255,255,.09);
}
.pub-page .pub-backlinks a:hover,.pub-page .pub-backlinks a:focus-visible{
  background:linear-gradient(135deg,rgba(23,71,147,.97),rgba(81,35,152,.96));
  border-color:#9cc7fa;color:white!important;outline-offset:3px;
}
.pub-page .pub-backlinks .pub-back-main{border-color:rgba(117,206,255,.6)}
.pub-page .pub-breadcrumb{margin:0 0 15px}
@media(max-width:700px){
  body:has(main#contenu .partner-visual-interior) .pub-page{padding-top:38px!important}
  .pub-page .pub-backlinks{gap:7px;margin-bottom:19px}
  .pub-page .pub-backlinks a{font-size:12px;padding:9px 11px;min-height:38px}
}

/* Accueil : deux appels à l'action réels, sans toucher au glow existant des cartes */
.offer-card .partner-offer-actions{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px!important;align-items:stretch!important;
  padding-top:18px!important;margin-top:auto!important;
}
.offer-card .partner-offer-actions a{
  display:flex!important;align-items:center!important;justify-content:center!important;
  gap:5px;min-width:0;min-height:47px;
  padding:12px 11px!important;
  text-align:center;font-size:12px!important;line-height:1.25!important;
  font-weight:750!important;text-decoration:none!important;
  border:1px solid rgba(163,209,210,.4)!important;border-radius:12px!important;
  background:rgba(9,13,32,.83)!important;color:#f3f8ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 4px 14px rgba(3,12,34,.20)!important;
  transition:background .2s ease,border-color .2s ease,transform .2s ease!important;
}
.offer-card .partner-offer-actions .partner-offer-sim{
  background:linear-gradient(125deg,rgba(18,58,149,.88),rgba(91,38,151,.85))!important;
  border-color:rgba(126,179,255,.66)!important;
}
.offer-card .partner-offer-actions a:hover{
  transform:translateY(-1px);border-color:#a3d1d2!important;
  background:linear-gradient(125deg,rgba(15,76,159,.96),rgba(97,34,157,.90))!important;
}
.offer-card .partner-offer-actions a:focus-visible{outline:2px solid #a3d1d2;outline-offset:3px}
@media(max-width:470px){
  .offer-card .partner-offer-actions{grid-template-columns:1fr}
}

/* Footer : links styled as header pills, compact and across the public site only.
   Login / partner-private views without the banner keep their previous footer. */
body:has(main#contenu .partner-visual) .partner-footer{
  margin-top:24px!important;padding:16px 0 12px!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-grid{
  display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;
  gap:8px!important;padding:0 0 12px!important;
  width:min(1200px,calc(100% - 24px))!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-column{
  display:flex!important;flex-direction:row!important;align-items:center!important;
  justify-content:center!important;flex-wrap:wrap!important;
  gap:8px!important;width:100%!important;
  background:transparent!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-identity{
  padding:0 0 5px!important;gap:10px!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-identity .partner-footer-brand{margin:0!important}
body:has(main#contenu .partner-visual) .partner-footer .footer-logo{
  width:112px!important;max-height:56px!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-tagline{
  max-width:none!important;font-size:12px!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-column h2,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-secure{display:none!important}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-column>a:not(.partner-footer-brand){
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:36px!important;padding:8px 12px!important;
  border-radius:9px!important;
  background:rgba(9,13,29,.85)!important;
  border:1px solid rgba(197,213,251,.25)!important;
  color:#f2f7ff!important;font-size:12px!important;font-weight:650!important;
  text-decoration:none!important;line-height:1.25!important;white-space:normal!important;
  backdrop-filter:blur(12px)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 3px 9px rgba(5,15,46,.12)!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-column>a:not(.partner-footer-brand):hover,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-column>a:not(.partner-footer-brand):focus-visible{
  background:linear-gradient(120deg,#142b77,#562090)!important;
  border-color:#a3d1d2!important;color:#fff!important;
  text-decoration:none!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal{
  display:flex!important;justify-content:center!important;align-items:center!important;
  width:min(1200px,calc(100% - 24px))!important;
  gap:4px 15px!important;padding:10px 0 6px!important;
  font-size:11px!important;text-align:center!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom{
  justify-content:center!important;gap:7px 14px!important;
  width:min(1200px,calc(100% - 24px))!important;
  padding:7px 0 0!important;text-align:center!important;
}
@media(max-width:760px){
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-grid{
    display:flex!important;flex-direction:column!important;gap:7px!important;
  }
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-identity{grid-column:auto!important}
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-column{
    display:flex!important;flex-direction:row!important;justify-content:center!important;gap:7px!important;
  }
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-column>a:not(.partner-footer-brand){
    font-size:11px!important;min-height:34px!important;padding:8px 10px!important;
  }
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal{
    gap:4px 10px!important;font-size:10px!important
  }
}

.pub-page .pub-catalogue-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:auto}
.pub-page .pub-catalogue-actions a{
 display:inline-flex;align-items:center;min-height:40px;padding:10px 12px;
 border-radius:11px;color:#e9f8ff!important;border:1px solid rgba(125,178,249,.42);
 background:rgba(14,46,102,.7);text-decoration:none;font-size:12px;
}
.pub-page .pub-catalogue-actions a:last-child{background:linear-gradient(120deg,rgba(37,70,161,.8),rgba(82,37,136,.7))}
.pub-page .pub-catalogue-actions a:hover{border-color:#a3d1d2;background:rgba(70,60,158,.9)}
@media(min-width:701px) and (max-width:900px){html,body{overflow-x:clip!important;max-width:100vw!important}}


/* V44 — mentions d'entreprise : contraste renforcé sur fond Aurora */
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal{
  box-sizing:border-box!important;
  border:1px solid rgba(188,214,255,.30)!important;
  border-radius:14px 14px 0 0!important;
  background:linear-gradient(135deg,rgba(6,17,43,.91),rgba(16,21,58,.90))!important;
  box-shadow:0 8px 24px rgba(4,14,43,.20),inset 0 1px 0 rgba(231,241,255,.12)!important;
  backdrop-filter:blur(13px) saturate(120%)!important;
  padding:15px 18px 10px!important;
  margin-top:7px!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal strong,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal span{
  color:#f6f9ff!important;
  font-size:12px!important;
  line-height:1.65!important;
  font-weight:580!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
  opacity:1!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal strong{
  color:#c7e9ff!important;
  font-weight:850!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom{
  box-sizing:border-box!important;
  border:1px solid rgba(188,214,255,.30)!important;
  border-top:1px solid rgba(194,213,252,.19)!important;
  border-radius:0 0 14px 14px!important;
  background:linear-gradient(135deg,rgba(6,17,43,.91),rgba(16,21,58,.90))!important;
  padding:10px 14px 14px!important;
  backdrop-filter:blur(13px) saturate(120%)!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom span{
  color:#e6f1ff!important;
  font-size:12px!important;
  line-height:1.6!important;
  font-weight:550!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
  opacity:1!important;
}
@media(max-width:760px){
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal{
    gap:5px 12px!important;
    padding:13px 12px 11px!important;
  }
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal span,
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal strong,
  body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom span{
    font-size:12px!important;
    line-height:1.7!important;
  }
}

/* V44 — contraste du bloc légal du footer sur FOG/Aurora (desktop + mobile). */
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal strong,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal span,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom span{
 color:#fff!important;
 opacity:1!important;
 text-shadow:0 1px 4px rgba(0,0,0,.75),0 0 12px rgba(0,0,0,.38)!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal{
 background:rgba(7,14,38,.72)!important;
 border:1px solid rgba(185,210,255,.25)!important;
 border-radius:12px!important;
 padding:13px 16px!important;
 box-shadow:0 7px 22px rgba(4,8,26,.17)!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom{
 background:rgba(7,14,38,.58)!important;
 border:1px solid rgba(185,210,255,.16)!important;
 border-radius:10px!important;
 margin-top:8px!important;
 padding:10px 14px!important;
}
@media(max-width:760px){
 body:has(main#contenu .partner-visual) .partner-footer .partner-footer-legal{
  font-size:11px!important;
  line-height:1.65!important;
  gap:5px 10px!important;
 }
 body:has(main#contenu .partner-visual) .partner-footer .partner-footer-bottom span{
  font-size:11px!important;
  line-height:1.55!important;
 }
}


/* V45 : menu responsive trois traits en haut à gauche + tiroir latéral animé.
   Le menu desktop n'est pas modifié. */
@media (max-width:900px){
  body:has(main#contenu .partner-visual) .partner-floating-nav{
    position:fixed!important;
    top:calc(14px + env(safe-area-inset-top,0px))!important;
    left:14px!important;right:auto!important;bottom:auto!important;
    transform:none!important;
    width:52px!important;min-width:52px!important;max-width:52px!important;
    height:52px!important;max-height:none!important;
    padding:0!important;margin:0!important;
    z-index:10000!important;
  }
  body:has(main#contenu .partner-visual-interior) .partner-floating-nav{
    top:calc(14px + env(safe-area-inset-top,0px))!important;
    left:14px!important;transform:none!important;
  }
  body:has(main#contenu .partner-visual) .partner-floating-nav .partner-menu-toggle.bottom-rainbow-btn{
    display:flex!important;
    width:52px!important;min-width:52px!important;height:52px!important;min-height:52px!important;
    margin:0!important;padding:0!important;
    border-radius:13px!important;
    background:rgba(8,17,38,.84)!important;
    border:1px solid rgba(165,209,245,.52)!important;
    box-shadow:0 5px 16px rgba(4,10,30,.3),inset 0 1px 0 rgba(255,255,255,.18)!important;
    backdrop-filter:blur(16px) saturate(125%)!important;
    -webkit-backdrop-filter:blur(16px) saturate(125%)!important;
  }
  body:has(main#contenu .partner-visual) .partner-menu-toggle .partner-menu-symbol{
    display:flex!important;position:relative!important;z-index:9!important;
    width:23px!important;height:18px!important;
    flex-direction:column!important;justify-content:space-between!important;
    align-items:stretch!important;gap:0!important;
    margin:0!important;padding:0!important;
  }
  body:has(main#contenu .partner-visual) .partner-menu-symbol .partner-burger-line{
    display:block!important;width:100%!important;height:2.5px!important;min-height:2.5px!important;
    border-radius:10px!important;
    background:#f2faff!important;
    box-shadow:0 0 7px rgba(132,215,254,.37)!important;
    flex:none!important;
  }
  body:has(main#contenu .partner-visual) .partner-menu-toggle .beam-rail,
  body:has(main#contenu .partner-visual) .partner-menu-toggle .beam-impact,
  body:has(main#contenu .partner-visual) .partner-menu-toggle .gemini-top-left,
  body:has(main#contenu .partner-visual) .partner-menu-toggle .gemini-top-right,
  body:has(main#contenu .partner-visual) .partner-menu-toggle .gemini-top-flash,
  body:has(main#contenu .partner-visual) .partner-menu-toggle .ai-glow-frame{
    display:none!important;
  }
  body:has(main#contenu .partner-visual) .partner-floating-nav .partner-menu-links{
    display:flex!important;
    position:fixed!important;
    top:calc(76px + env(safe-area-inset-top,0px))!important;
    left:0!important;right:auto!important;bottom:auto!important;
    width:min(330px,calc(100vw - 28px))!important;
    max-width:min(330px,calc(100vw - 28px))!important;
    max-height:calc(100dvh - 91px - env(safe-area-inset-top,0px))!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    transform:translateX(calc(-100% - 26px))!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    padding:17px 14px!important;margin:0!important;
    border:1px solid rgba(146,198,248,.32)!important;
    border-radius:0 18px 18px 0!important;
    background:linear-gradient(150deg,rgba(6,17,39,.97),rgba(15,24,58,.98) 62%,rgba(35,24,71,.97))!important;
    box-shadow:13px 13px 42px rgba(0,6,32,.43)!important;
    backdrop-filter:blur(22px)!important;
    -webkit-backdrop-filter:blur(22px)!important;
    flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    gap:10px!important;
    transition:transform .34s cubic-bezier(.22,.81,.26,1),opacity .26s ease,visibility .34s linear!important;
    will-change:transform;
    z-index:10001!important;
  }
  body:has(main#contenu .partner-visual) .partner-floating-nav .partner-menu-links.open{
    display:flex!important;
    transform:translateX(0)!important;
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  }
  body:has(main#contenu .partner-visual) .partner-menu-links .bottom-rainbow-btn{
    width:100%!important;min-height:51px!important;
    border-radius:11px!important;
  }
  body:has(main#contenu .partner-visual) .partner-menu-toggle[aria-expanded="true"]{
    border-color:rgba(130,222,255,.86)!important;
  }
}
@media (max-width:900px) and (prefers-reduced-motion:reduce){
  body:has(main#contenu .partner-visual) .partner-floating-nav .partner-menu-links{
    transition:none!important;
  }
}

/* Alignement avec le menu responsive : Aurora fixe, sans canvas FOG jusque 900px. */
@media (min-width:701px) and (max-width:900px){
 #partner-fog-bg{display:none!important}
 body>.aurora-bg{
  display:block!important;position:fixed!important;inset:0!important;
  width:100vw!important;max-width:100vw!important;height:100dvh!important;
  opacity:.84!important;pointer-events:none!important;z-index:0!important;
  background:
   radial-gradient(ellipse 84% 66% at 13% 15%,rgba(163,209,210,.79) 0%,transparent 76%),
   radial-gradient(ellipse 80% 75% at 88% 45%,rgba(6,23,254,.38) 0%,transparent 77%),
   radial-gradient(ellipse 82% 63% at 25% 90%,rgba(147,0,245,.31) 0%,transparent 76%),
   linear-gradient(135deg,#aacfd8 0%,#7189c7 53%,#9576c5 100%)!important;
 }
}

/* Formation collaborateurs et FAQ hiérarchique V47. Aucun pictogramme flèche. */
.pub-page .pub-edu-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 23px;align-items:center}
.pub-page .pub-edu-shortcuts a,
.pub-page .pub-edu-actions a{
 display:inline-flex;align-items:center;justify-content:center;
 padding:11px 15px;min-height:42px;gap:8px;
 background:linear-gradient(130deg,rgba(9,29,72,.91),rgba(40,34,99,.90));
 color:#f0f8ff!important;text-decoration:none!important;border-radius:12px;
 border:1px solid rgba(148,184,247,.47);font-size:13px;font-weight:700;
 box-shadow:inset 0 1px 0 rgba(232,246,255,.08),0 6px 13px rgba(2,10,32,.17)
}
.pub-page .pub-edu-shortcuts a:hover,.pub-page .pub-edu-actions a:hover{border-color:#9bd6ff;background:linear-gradient(130deg,#183d8b,#492988)}
.pub-page .pub-edu-section{margin:28px 0 34px}
.pub-page .pub-edu-section-head{margin:0 0 17px}
.pub-page .pub-edu-section-head h2{font-size:clamp(23px,3vw,33px);color:#14284d;margin:4px 0 9px}
.pub-page .pub-edu-section-head p{font-size:15px;line-height:1.6;color:#263e66}
.pub-page .pub-edu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.pub-page .pub-edu-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.pub-page .pub-edu-grid>.pub-card{margin:0;padding:24px}
.pub-page .pub-edu-grid h3,.pub-page .pub-edu-product h3{font-size:clamp(19px,2vw,25px);color:#f4f7ff;margin:8px 0 10px}
.pub-page .pub-edu-grid h4,.pub-page .pub-edu-product h4{color:#d5eaff;font-size:15px;margin:22px 0 9px}
.pub-page .pub-edu-grid .pub-card>a{display:inline-block;margin-top:12px}
.pub-page .pub-edu-grid ul{padding-left:21px}
.pub-page .pub-edu-hero{padding:clamp(22px,4vw,40px);background:radial-gradient(ellipse 80% 90% at 98% 0%,rgba(60,52,161,.36),transparent 78%),linear-gradient(140deg,#071c3e,#0b254e 56%,#251a59)}
.pub-page .pub-edu-hero h2{font-size:clamp(24px,3.4vw,39px);max-width:750px}
.pub-page .pub-edu-hero p{max-width:910px}
.pub-page .pub-edu-metrics{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:23px}
.pub-page .pub-edu-metrics span{display:inline-flex;gap:10px;align-items:center;border:1px solid rgba(146,184,239,.27);background:rgba(20,47,102,.55);border-radius:12px;padding:12px 16px;color:#c6d9f2;font-size:13px}
.pub-page .pub-edu-metrics strong{font-size:24px;color:#a8e9ff!important}
.pub-page .pub-edu-step{display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:850;letter-spacing:.08em;color:#bcecff;border:1px solid rgba(108,186,253,.43);background:rgba(16,58,137,.33);width:37px;height:37px;border-radius:11px}
.pub-page .pub-edu-mailbox{display:flex;align-items:start;justify-content:space-between;gap:20px}
.pub-page .pub-edu-mailbox>div{max-width:900px}
.pub-page .pub-edu-status{display:inline-flex;flex-shrink:0;border:1px solid rgba(154,185,255,.43);border-radius:999px;padding:9px 14px;font-size:12px;font-weight:750;color:#c8daf9;background:rgba(43,53,111,.53)}
.pub-page .pub-edu-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.pub-page .pub-edu-product-grid .pub-card{margin:0}
.pub-page .pub-edu-dl{display:grid;gap:4px}
.pub-page .pub-edu-dl dt{font-size:12px;font-weight:850;letter-spacing:.045em;text-transform:uppercase;color:#9fbded}
.pub-page .pub-edu-dl dd{margin:0 0 15px;line-height:1.6;color:#dae5f7}
.pub-page .pub-edu-warning{border:1px solid rgba(130,171,248,.26);border-left:3px solid #98b3f7;border-radius:11px;background:rgba(21,43,84,.55);padding:14px 15px;margin:17px 0}
.pub-page .pub-edu-warning strong{font-size:13px;color:#d3e7ff}
.pub-page .pub-edu-warning p{font-size:13px;line-height:1.6;margin:7px 0 0}
.pub-page .pub-edu-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.pub-page .pub-edu-ordered{list-style:decimal;margin:5px 0 17px;padding-left:23px;display:grid;gap:13px;line-height:1.65}
.pub-page .pub-edu-ordered li{padding-left:4px}
.pub-page .pub-edu-sample blockquote{
 white-space:pre-line;background:rgba(10,25,56,.85);
 border:1px solid rgba(137,177,238,.29);border-left:3px solid #8ab9ff;
 border-radius:12px;padding:18px;margin:12px 0 15px;
 color:#dceafc;font-size:14px;line-height:1.7;max-width:100%;overflow-wrap:anywhere
}
.pub-page .pub-edu-copy{
 display:inline-flex;align-items:center;justify-content:center;
 padding:10px 16px;min-height:42px;
 border-radius:11px;border:1px solid rgba(123,191,252,.57);
 background:linear-gradient(120deg,#17428a,#47338e);
 color:#fff;font:inherit;font-size:13px;font-weight:750;cursor:pointer
}
.pub-page .pub-edu-copy:hover{border-color:#b5e7fc;background:#2156a3}
.pub-page .pub-edu-copy:focus-visible{outline:2px solid #b5e7fc;outline-offset:2px}
.pub-page .pub-edu-objections details{padding:15px 16px;margin-bottom:9px}
.pub-page .pub-edu-objections summary{font-weight:760}
.pub-page .pub-edu-rules ul{display:grid;gap:9px;padding-left:22px}

/* Centre d'aide : liste de catégories à gauche, sous-catégories repliables à droite. */
.pub-page .pub-faq-v2{padding:clamp(19px,3vw,33px);overflow:visible}
.pub-page .pub-faq-v2-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.pub-page .pub-faq-v2-heading h2{margin:4px 0 9px}
.pub-page .pub-faq-v2-heading p{margin:0;max-width:680px}
.pub-page .faq-v2-total{flex-shrink:0;display:grid;gap:2px;text-align:center;background:linear-gradient(135deg,rgba(25,75,145,.44),rgba(71,45,129,.6));border:1px solid rgba(146,181,248,.33);border-radius:16px;padding:15px 23px}
.pub-page .faq-v2-total strong{font-size:31px;color:#a6eaff!important}
.pub-page .faq-v2-total span{font-size:12px;color:#b7c8e7}
.pub-page .faq-v2-search{display:grid;gap:8px;border-bottom:1px solid rgba(145,176,234,.2);padding-bottom:18px;margin-bottom:19px}
.pub-page .faq-v2-search label{font-size:13px;color:#e2edff;font-weight:800}
.pub-page .faq-v2-search input{border:1px solid #597bad!important;border-radius:12px;padding:13px 15px;background:rgba(11,27,63,.9);color:#f6faff;font:inherit;width:100%;min-height:48px}
.pub-page .faq-v2-search input::placeholder{color:#a9bbd8}
.pub-page .faq-v2-search p{margin:0;color:#abc5e6;font-size:12px}
.pub-page .faq-v2-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:22px;align-items:start}
.pub-page .faq-v2-sidebar{display:flex;flex-direction:column;gap:9px;position:sticky;top:18px}
.pub-page .faq-v2-filter{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:11px 13px;text-align:left;border-radius:11px;border:1px solid rgba(124,154,215,.3);background:rgba(11,30,67,.7);color:#d5e4f9;font:inherit;font-size:12px;font-weight:750;cursor:pointer;min-height:43px}
.pub-page .faq-v2-filter span{display:inline-flex;justify-content:center;min-width:30px;flex-shrink:0;color:#b6d8f7;background:rgba(56,82,157,.4);border-radius:999px;padding:3px 7px;font-size:11px}
.pub-page .faq-v2-filter.is-active,.pub-page .faq-v2-filter:hover{border-color:#8db9ff;background:linear-gradient(125deg,rgba(23,67,151,.88),rgba(70,40,142,.78));color:#fff}
.pub-page .faq-v2-filter:focus-visible{outline:2px solid #a3d1d2;outline-offset:2px}
.pub-page .faq-v2-results{min-width:0;display:grid;gap:19px}
.pub-page .faq-v2-category-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 11px}
.pub-page .faq-v2-category-head h2{font-size:clamp(20px,2.4vw,27px)!important;color:#f4faff;margin:0}
.pub-page .faq-v2-category-head span{color:#a7bfdf;font-size:12px}
.pub-page .faq-v2-subgroup{margin:9px 0;border:1px solid rgba(126,166,227,.27)!important;border-radius:13px;background:rgba(8,26,58,.65)!important}
.pub-page .faq-v2-subgroup>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:15px 17px;color:#eaf3ff;font-size:14px;font-weight:780}
.pub-page .faq-v2-subgroup>summary::-webkit-details-marker,
.pub-page .faq-v2-question>summary::-webkit-details-marker{display:none}
.pub-page .faq-v2-subgroup>summary small{color:#b4ccec;font-size:11px;font-weight:650;white-space:nowrap}
.pub-page .faq-v2-subgroup>summary::after,
.pub-page .faq-v2-question>summary::after{content:"+";display:inline-flex;justify-content:center;align-items:center;color:#b9e8ff;font-size:20px;line-height:1;flex-shrink:0;margin-left:auto}
.pub-page .faq-v2-subgroup[open]>summary::after,
.pub-page .faq-v2-question[open]>summary::after{content:"−"}
.pub-page .faq-v2-subgroup[open]{border-color:rgba(128,183,252,.63)!important;background:rgba(12,33,79,.78)!important}
.pub-page .faq-v2-questions{padding:0 12px 13px;display:grid;gap:6px}
.pub-page .faq-v2-question{background:rgba(7,20,48,.8)!important;border:1px solid rgba(119,149,202,.22)!important;border-radius:10px;padding:0!important}
.pub-page .faq-v2-question>summary{display:flex;align-items:center;gap:11px;list-style:none;padding:13px 15px;cursor:pointer;color:#e6f1ff;font-size:13px;font-weight:650}
.pub-page .faq-v2-question>p{color:#c5d7f1;line-height:1.7;font-size:13px;margin:0;padding:3px 15px 15px}
.pub-page .faq-v2-question[open]{border-color:rgba(118,176,252,.52)!important}
.pub-page .faq-v2-category[hidden],
.pub-page .faq-v2-subgroup[hidden],
.pub-page .faq-v2-question[hidden],
.pub-page .faq-v2-empty[hidden]{display:none!important}
.pub-page .faq-v2-empty{padding:25px;text-align:center;color:#c8daef;border:1px dashed rgba(159,188,247,.38);border-radius:13px}
.pub-page .pub-help-next .pub-edu-shortcuts{margin:20px 0}
@media(max-width:1050px){
 .pub-page .pub-edu-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pub-page .faq-v2-layout{grid-template-columns:210px minmax(0,1fr);gap:15px}
}
@media(max-width:760px){
 .pub-page .pub-edu-grid,.pub-page .pub-edu-grid-three,.pub-page .pub-edu-product-grid{grid-template-columns:1fr;gap:12px}
 .pub-page .pub-edu-grid>.pub-card{padding:20px}
 .pub-page .pub-edu-metrics{gap:8px}
 .pub-page .pub-edu-metrics span{padding:9px 11px}
 .pub-page .pub-edu-mailbox{flex-direction:column}
 .pub-page .faq-v2-layout{grid-template-columns:minmax(0,1fr)}
 .pub-page .faq-v2-sidebar{position:static;display:flex;flex-direction:row;overflow-x:auto;max-width:100%;padding-bottom:8px;gap:7px;scroll-snap-type:x proximity}
 .pub-page .faq-v2-filter{min-width:max-content;max-width:240px;scroll-snap-align:start;white-space:normal;padding:9px 11px}
 .pub-page .pub-faq-v2-heading{align-items:start}
 .pub-page .faq-v2-total{padding:9px 12px}
 .pub-page .faq-v2-total strong{font-size:23px}
 .pub-page .faq-v2-total span{font-size:10px}
 .pub-page .faq-v2-subgroup>summary{padding:13px 12px}
 .pub-page .faq-v2-questions{padding:0 8px 9px}
 .pub-page .faq-v2-question>summary{padding:13px 10px}
}

/* Trois passerelles depuis l'accueil vers la formation des collaborateurs. */
.partner-training-home .pub-edu-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.partner-training-home .pub-edu-home-card{min-width:0;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden;padding:25px;border-radius:19px;border:1px solid rgba(148,181,245,.38);background:radial-gradient(ellipse 80% 70% at 95% 0%,rgba(74,43,145,.25),transparent),linear-gradient(140deg,rgba(7,20,49,.95),rgba(16,31,75,.95));color:#f0f7ff;box-shadow:0 15px 36px rgba(5,15,42,.18)}
.partner-training-home .pub-edu-home-card h3{font-size:clamp(20px,2vw,27px);color:#eff7ff;margin:2px 0 0}
.partner-training-home .pub-edu-home-card p{color:#c5d7ef;line-height:1.65;margin:0 0 9px;flex:1}
.partner-training-home .pub-edu-home-card a{align-self:flex-start;display:inline-flex;align-items:center;padding:11px 15px;min-height:43px;border:1px solid rgba(138,183,255,.53);border-radius:11px;background:linear-gradient(130deg,rgba(20,64,151,.92),rgba(81,37,149,.82));color:#f3faff!important;font-size:13px;font-weight:780;text-decoration:none!important}
.partner-training-home .pub-edu-home-card a:hover{border-color:#a3d1d2;background:#264c9d}
@media(max-width:850px){.partner-training-home .pub-edu-home-grid{grid-template-columns:1fr}}

/* V48 : sur ordinateur, lecture en une seule carte par ligne.
   Page FAQ : catégories en bandeau puis contenu en pleine largeur.
   Accueil et cartes des offres ne sont pas concernés. */
@media (min-width:901px){
 .pub-page .pub-edu-grid,
 .pub-page .pub-edu-grid-three,
 .pub-page .pub-edu-product-grid{
   grid-template-columns:minmax(0,1fr)!important;
 }
 .pub-page .faq-v2-layout{
   grid-template-columns:minmax(0,1fr)!important;
   gap:20px!important;
 }
 .pub-page .faq-v2-sidebar{
   position:static!important;
   display:flex!important;
   flex-direction:row!important;
   flex-wrap:wrap!important;
   justify-content:flex-start!important;
   gap:9px!important;
 }
 .pub-page .faq-v2-filter{
   flex:0 0 auto!important;
   max-width:min(100%,260px)!important;
   padding:11px 14px!important;
 }
 .pub-page .faq-v2-results{
   width:100%!important;
 }
}


/* V49 - Mentions et copyright sous un seul et unique encadré. */
.partner-footer .partner-footer-info{
  box-sizing:border-box!important;
  width:min(1200px,calc(100% - 24px))!important;
  max-width:1200px!important;
  margin:8px auto 0!important;
  padding:8px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  border:1px solid rgba(185,210,255,.29)!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,rgba(6,17,43,.91),rgba(16,21,58,.89))!important;
  backdrop-filter:blur(13px) saturate(120%)!important;
  -webkit-backdrop-filter:blur(13px) saturate(120%)!important;
  box-shadow:0 8px 24px rgba(4,14,43,.20),inset 0 1px 0 rgba(231,241,255,.1)!important;
  overflow:hidden!important;
}
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-info{
  width:min(1200px,calc(100% - 24px))!important;
  margin:8px auto 0!important;
  padding:8px 12px!important;
}
.partner-footer .partner-footer-info>.partner-footer-legal,
.partner-footer .partner-footer-info>.partner-footer-bottom,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-info>.partner-footer-legal,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-info>.partner-footer-bottom{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:7px 8px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.partner-footer .partner-footer-info>.partner-footer-bottom,
body:has(main#contenu .partner-visual) .partner-footer .partner-footer-info>.partner-footer-bottom{
  border-top:1px solid rgba(198,221,255,.18)!important;
  padding-top:9px!important;
  padding-bottom:5px!important;
}
@media(max-width:760px){
 .partner-footer .partner-footer-info,
 body:has(main#contenu .partner-visual) .partner-footer .partner-footer-info{
   padding:8px 7px!important;
 }
 .partner-footer .partner-footer-info>.partner-footer-legal,
 .partner-footer .partner-footer-info>.partner-footer-bottom,
 body:has(main#contenu .partner-visual) .partner-footer .partner-footer-info>.partner-footer-legal,
 body:has(main#contenu .partner-visual) .partner-footer .partner-footer-info>.partner-footer-bottom{
   padding:8px 6px!important;
 }
}



/* Lisibilité des ressources publiques partenaires — sans modifier la structure FAQ. */
.pub-card,.pub-faq-v2,.pub-edu-section,.pub-edu-hero {color:#f4f8ff;}
.pub-card p,.pub-card li,.pub-edu-section p,.pub-edu-section li,
.pub-faq-v2 p,.pub-faq-v2 li,.faq-v2-question p,
.faq-v2-category-head,.faq-v2-subgroup summary,
.pub-note,.pub-help-next p {font-size:1.0625rem;line-height:1.7;color:#f1f6ff;}
.pub-card h2,.pub-card h3,.pub-edu-section h2,
.faq-v2-category h2,.faq-v2-question summary {color:#fff;}
.pub-card a,.pub-edu-section a,.faq-v2-results a {color:#bdefff;}
.faq-v2-question summary,.faq-v2-subgroup summary {line-height:1.5;}
.faq-v2-search input,.faq-v2-search label,.faq-v2-filter {font-size:1rem;}
.faq-v2-filter:focus-visible,.faq-v2-search input:focus-visible,
.pub-card a:focus-visible {outline:3px solid #bdefff;outline-offset:3px;}
.partner-journey .partner-promise-grid{margin-top:20px;}
@media (max-width:760px){
 .pub-card p,.pub-card li,.pub-edu-section p,.pub-edu-section li,
 .faq-v2-question p,.faq-v2-question summary {font-size:1.0625rem;line-height:1.65;}
}


/* 2026-11-09 — corrections publiques validées : espaces et accordéon FAQ */
.pub-page .pub-details{
 display:flex;flex-direction:column;gap:26px;
}
.pub-page .pub-details>.pub-grid{
 display:grid;gap:22px;margin:0;
}
.pub-page .pub-details>.pub-card{
 margin:0;
}
.pub-page .pub-details .pub-grid>.pub-card{
 margin:0;min-width:0;
}
.pub-page .pub-details>.pub-grid+.pub-card{
 margin-top:2px;
}
/* La description est conservée pour les métadonnées, mais non répétée à l'écran FAQ. */
.pub-page:has(.pub-faq-v2) .pub-head>p:last-child{display:none;}
.pub-page .faq-v2-subgroup{
 margin:12px 0!important;
 transition:border-color .35s ease,background-color .35s ease,box-shadow .35s ease;
}
.pub-page .faq-v2-questions{gap:12px;padding-bottom:16px;}
.pub-page .faq-v2-question{
 overflow:hidden;
 transition:transform .34s ease,border-color .34s ease,box-shadow .34s ease,background-color .34s ease;
 will-change:auto;
}
.pub-page .faq-v2-question>summary{
 font-size:1rem;line-height:1.5;padding:16px 18px;
}
.pub-page .faq-v2-question .faq-v2-answer{
 padding:0 18px 17px;
}
.pub-page .faq-v2-question .faq-v2-answer>p{
 font-size:1rem;line-height:1.7;color:#f1f6ff;
 padding:6px 0 0;margin:0;
}
.pub-page .faq-v2-subgroup>summary{
 font-size:1.0625rem;padding:18px;
}
.pub-page .faq-v2-subgroup>summary small{
 font-size:.875rem;color:#d8e5ff;
}
.pub-page .faq-v2-question[open]{
 border-color:rgba(158,192,255,.8)!important;
 background:rgba(12,31,72,.96)!important;
 box-shadow:0 0 0 1px rgba(120,108,245,.18);
}
@media(hover:hover) and (pointer:fine){
 .pub-page .faq-v2-question:hover{
  transform:translateY(-2px);
  border-color:rgba(128,168,255,.8)!important;
  box-shadow:0 7px 21px rgba(5,15,51,.2),0 0 14px rgba(117,93,231,.12);
 }
 .pub-page .faq-v2-subgroup:hover{
  border-color:rgba(128,168,255,.7)!important;
  box-shadow:0 0 12px rgba(110,100,226,.08);
 }
}
.pub-page .faq-v2-question>summary:focus-visible,
.pub-page .faq-v2-subgroup>summary:focus-visible{
 outline:3px solid #bdefff;outline-offset:-3px;border-radius:10px;
}
@media(max-width:760px){
 .pub-page .pub-details{gap:22px}
 .pub-page .pub-details>.pub-grid{gap:20px}
 .pub-page .faq-v2-questions{gap:10px}
 .pub-page .faq-v2-question>summary{font-size:1rem;padding:15px}
}
@media(prefers-reduced-motion:reduce){
 .pub-page .faq-v2-question,.pub-page .faq-v2-subgroup{
  transition:none!important;animation:none!important;
 }
}


/* Amélioration de lisibilité / accès clavier des pages publiques. */
.pub-page .pub-head{
 max-width:100%;
 background:linear-gradient(125deg,rgba(8,19,44,.95),rgba(20,22,63,.91));
 border:1px solid rgba(163,205,255,.37);
 border-radius:24px;
 padding:clamp(20px,3.5vw,38px);
 margin-block:18px 32px;
}
.pub-page .pub-head h1,.pub-page .pub-head>h1{color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.2);}
.pub-page .pub-head>p:last-child{color:#e9f3ff!important;font-size:1.125rem!important;line-height:1.65;}
.pub-page .pub-head .pub-kicker{color:#a8e8ff!important;font-size:.875rem!important;}
.pub-page .pub-breadcrumb,.pub-page .pub-backlinks{font-size:1rem;line-height:1.6;}
.pub-page .pub-breadcrumb a,.pub-page .pub-backlinks a{color:#dcf4ff;}
.pub-page .pub-card p,.pub-page .pub-card li,.pub-page .pub-card details p,
.pub-page .pub-legal p,.pub-page .pub-legal li{font-size:1.0625rem;line-height:1.72;color:#edf5ff;}
.pub-page .pub-card a{color:#bbeaff;text-decoration-thickness:1px;text-underline-offset:4px;}
.pub-page .pub-card a:focus-visible,.pub-page button:focus-visible,
.pub-page a:focus-visible,.pub-page summary:focus-visible,
.onboard-page input:focus-visible,.onboard-page a:focus-visible{
 outline:3px solid #bdefff;outline-offset:3px;
}
.pub-page .pub-card .pub-note{color:#dfeeff!important;}
.pub-page .pub-card .pub-card-eyebrow{color:#b7e6ff;}
.pub-page .faq-v2-subgroup>summary small{color:#e8f2ff!important;}
@media(max-width:390px){
 .pub-page .pub-head{padding:18px;border-radius:20px;}
 .pub-page .pub-head h1{font-size:clamp(1.875rem,8vw,2.5rem);}
 .pub-page .pub-card{min-width:0;}
}
@media(prefers-reduced-motion:reduce){
 html:focus-within{scroll-behavior:auto;}
 .pub-page *,.onboard-page *{scroll-behavior:auto!important;}
}


/* PARTENAIRES — confort de lecture renforcé 2026-11-09.
 * Intervention limitée au rendu public. */
.pub-page .pub-backlinks a,.pub-page .pub-breadcrumb,
.pub-page .pub-breadcrumb a,.pub-page .pub-universes a,
.pub-page .pub-edu-shortcuts a,.pub-page .pub-shortcuts a,
.pub-page .pub-card a,.pub-page .pub-card summary,
.pub-page .faq-v2-filter,.pub-page .faq-v2-search label,
.pub-page .faq-v2-search input {
 font-size:max(1rem, 16px);
 line-height:1.55;
}
.pub-page .pub-card p,.pub-page .pub-card li,
.pub-page .pub-help-next p,.pub-page .pub-legal p{
 font-size:1.0625rem;
 line-height:1.7;
}
.pub-page .faq-v2-count,.pub-page .faq-v2-category-head span,
.pub-page .faq-v2-subgroup>summary small{
 font-size:1rem;
}
.pub-page .pub-backlinks a,.pub-page .pub-breadcrumb a{
 display:inline-flex;align-items:center;
 min-height:44px;
 padding:6px 12px;
 border-radius:12px;
 background:rgba(6,17,39,.91);
 color:#f3f7ff!important;
 border:1px solid rgba(155,190,244,.45);
}
.pub-page .pub-head .pub-kicker{font-size:1rem!important;}
.pub-page .pub-head>p:last-child{font-size:1.125rem!important;}
@media (max-width:760px){
 .pub-page .pub-backlinks{gap:10px;flex-wrap:wrap;}
 .pub-page .pub-grid,.pub-page .pub-edu-grid{gap:22px;}
}


/* Découverte publique des six activités — illustrations fixes de marque, 2026-11-10.
   Le contenu reste consultable sans JS, les captures restent intactes. */
.offer-grid .offer-visual-card{
  display:flex;flex-direction:column;min-width:0;overflow:hidden;
  padding:clamp(16px,2vw,23px);gap:10px;
  border:1px solid rgba(146,186,246,.31);
  background:linear-gradient(145deg,rgba(8,17,41,.94),rgba(9,17,43,.91));
}
.offer-grid .offer-visual-card .offer-visual{
  display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;
  border:1px solid rgba(111,187,253,.44);border-radius:17px;
  box-shadow:0 15px 33px rgba(3,9,31,.29);background:#071730;
}
.offer-grid .offer-visual-card h3{margin:4px 0 0;min-height:0}
.offer-grid .offer-visual-card p{flex:1;line-height:1.55}
.offer-grid .offer-visual-card .rate{
  position:static;display:inline-flex;align-self:flex-start;
  margin-top:4px;color:#edecff
}
.offer-grid .offer-visual-card .rate-pending{
  font-size:13px;background:rgba(17,42,78,.7);border:1px solid rgba(119,172,231,.37);
  border-radius:999px;padding:7px 12px
}
.offer-grid .offer-visual-card .card-foot{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  margin-top:auto;padding-top:5px
}
.offer-grid .offer-visual-card .card-foot a{
  text-decoration:none;min-height:44px;display:inline-flex;align-items:center;
  justify-content:center;border-radius:13px;padding:10px 14px;
  font-size:clamp(14px,1vw,16px);font-weight:750
}
.offer-grid .offer-visual-card .partner-offer-sim{
  color:#fff;background:linear-gradient(110deg,#284ee3,#873cce);border:1px solid rgba(142,204,255,.48)
}
.offer-grid .offer-visual-card .partner-offer-visit{
  color:#e9f4ff;background:rgba(27,51,97,.65);border:1px solid rgba(136,175,230,.39)
}
.offer-grid .offer-visual-card .card-foot a:focus-visible,
.pub-page .pub-catalogue-actions a:focus-visible{
  outline:3px solid #b6edff;outline-offset:3px
}
.pub-page .pub-catalogue-card{
  overflow:hidden;padding:clamp(17px,2.4vw,25px);
  background:linear-gradient(140deg,rgba(9,20,47,.97),rgba(13,18,45,.93));
  border:1px solid rgba(130,185,248,.33);color:#e8f3ff
}
.pub-page .pub-catalogue-card .pub-activity-cover{
  width:100%;aspect-ratio:16/9;object-fit:cover;display:block;
  margin:0 0 12px;border-radius:16px;
  border:1px solid rgba(143,193,252,.38);background:#091432
}
.pub-page .pub-catalogue-card h2{color:#fff;font-size:clamp(20px,2vw,28px)}
.pub-page .pub-catalogue-card p{color:#e1e9fb;line-height:1.55}
.pub-page .pub-catalogue-card .pub-card-eyebrow{color:#a9e9ff}
.pub-page .pub-catalogue-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.pub-page .pub-catalogue-card .pub-catalogue-actions a{
  color:#ecf6ff;border:1px solid rgba(149,195,252,.38);
  background:rgba(38,67,126,.58);border-radius:12px;
  padding:10px 14px;min-height:44px;font-size:14px;text-decoration:none
}
.pub-page .pub-catalogue-card .pub-catalogue-actions a:first-child{
  background:linear-gradient(110deg,#2354e2,#8d41d5);color:white
}
.pub-page .pub-activity-hero{position:relative;margin:18px 0 26px;
  overflow:hidden;border-radius:24px;
  border:1px solid rgba(116,188,252,.37);background:#08132b;
  box-shadow:0 22px 50px rgba(2,7,22,.23)}
.pub-page .pub-activity-hero>img{
  display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;
}
.pub-page .pub-activity-hero figcaption{
  position:relative;display:flex;gap:10px 22px;align-items:center;flex-wrap:wrap;
  padding:18px clamp(16px,3vw,30px);
  background:linear-gradient(115deg,rgba(7,20,46,.97),rgba(14,19,52,.97));
  border-top:1px solid rgba(108,167,241,.31)
}
.pub-page .pub-activity-hero figcaption span{
  color:#a7e8ff;letter-spacing:.1em;font-weight:850;font-size:12px
}
.pub-page .pub-activity-hero figcaption p{
  margin:0;color:#f0f4ff;font-size:clamp(15px,1.55vw,19px);line-height:1.5
}
.pub-page .pub-commission-pending{margin-top:24px;background:rgba(13,27,60,.91);
  border:1px solid rgba(110,173,248,.38);color:#edf4ff}
.pub-page .pub-commission-pending h2{color:#fff}
.pub-page .pub-commission-pending p{color:#e8eefb}
@media (max-width:780px){
  .pub-page .pub-activity-hero{border-radius:17px}
  .pub-page .pub-activity-hero figcaption{align-items:flex-start;flex-direction:column;padding:16px}
  .offer-grid .offer-visual-card{padding:16px}
}
@media (prefers-reduced-motion:reduce){
  .offer-grid .offer-visual-card,.pub-page .pub-catalogue-card{
    transition:none!important;animation:none!important
  }
}


/* Parcours immersif public, scènes commerciales sans images ni chiffres fictifs. */
.pub-page .pub-story{
  margin:18px 0 27px;overflow:hidden;
  padding:clamp(20px,3.2vw,38px);
  border-radius:26px;
  border:1px solid rgba(115,183,253,.34);
  background:
    radial-gradient(ellipse at 83% 0%,rgba(147,76,228,.19),transparent 42%),
    linear-gradient(139deg,rgba(7,18,49,.97),rgba(12,19,45,.94));
  box-shadow:0 17px 42px rgba(4,11,34,.19);
}
.pub-page .pub-story-top{max-width:870px}
.pub-page .pub-story-kicker,
.pub-page .pub-story-question-label{
  display:block;font-size:12px;line-height:1.35;letter-spacing:.13em;
  font-weight:900;color:#a6e9ff;margin:0 0 11px;
}
.pub-page .pub-story h2{
  color:#fbfbff;margin:0 0 12px;
  font-size:clamp(24px,3.2vw,39px);line-height:1.18
}
.pub-page .pub-story-top>p:last-child{
  color:#e1eafa;margin:0;line-height:1.6;font-size:clamp(16px,1.5vw,19px)
}
.pub-page .pub-story-cards{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(12px,1.6vw,20px);margin:30px 0 26px
}
.pub-page .pub-story-card{
  border-radius:19px;padding:clamp(17px,2vw,25px);
  border:1px solid rgba(128,187,253,.23);
  background:linear-gradient(141deg,rgba(32,56,111,.51),rgba(25,25,65,.42));
  min-width:0;
}
.pub-page .pub-story-index{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:40px;min-height:40px;padding:5px 8px;
  color:#d8f8ff;border-radius:13px;
  border:1px solid rgba(99,213,254,.38);
  background:linear-gradient(135deg,rgba(37,121,208,.36),rgba(120,49,206,.31));
  font-weight:900;font-size:17px;letter-spacing:.05em;
}
.pub-page .pub-story-card h3{
  color:#fff;margin:16px 0 8px;
  font-size:clamp(19px,1.7vw,24px);line-height:1.3
}
.pub-page .pub-story-card p{
  color:#e2eafd;font-size:16px;line-height:1.58;margin:0;
}
.pub-page .pub-story-bottom{
  display:flex;gap:20px;align-items:center;justify-content:space-between;
  flex-wrap:wrap;border-top:1px solid rgba(155,176,248,.24);padding-top:24px
}
.pub-page .pub-story-bottom>div:first-child{max-width:640px;flex:1 1 340px}
.pub-page .pub-story-bottom p{color:#fff;font-size:clamp(17px,1.7vw,21px);
 font-weight:700;line-height:1.5;margin:0}
.pub-page .pub-story-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pub-page .pub-story-actions a{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:45px;max-width:100%;padding:12px 16px;border-radius:13px;
  border:1px solid rgba(139,197,248,.46);color:#fff;
  text-decoration:none;font-weight:750;font-size:15px
}
.pub-page .pub-story-primary{background:linear-gradient(115deg,#3157dd,#8642c9)}
.pub-page .pub-story-secondary{background:rgba(49,65,107,.53)}
.pub-page .pub-story-actions a:focus-visible{
  outline:3px solid #c0eeff;outline-offset:3px
}
.pub-page .pub-deep-dive{
  margin:28px 0 0;padding:0 22px 10px;border-radius:21px;
  border:1px solid rgba(119,159,235,.34);
  background:linear-gradient(135deg,rgba(12,22,50,.86),rgba(15,18,47,.91));
}
.pub-page .pub-deep-dive>summary{
  cursor:pointer;list-style:none;display:flex;flex-direction:column;
  gap:5px;padding:22px 2px;min-height:70px;color:#f3f8ff;
  font-size:clamp(18px,2vw,24px);font-weight:900
}
.pub-page .pub-deep-dive>summary::-webkit-details-marker{display:none}
.pub-page .pub-deep-dive>summary small{font-weight:500;font-size:15px;color:#c7daef}
.pub-page .pub-deep-dive>summary:focus-visible{outline:3px solid #a4e6ff;outline-offset:4px;border-radius:9px}
.pub-page .pub-deep-dive[open]>summary{border-bottom:1px solid rgba(152,184,244,.3);margin-bottom:16px}
.pub-page .pub-deep-dive .pub-details{margin:0 0 10px}
.pub-page .pub-deep-dive .pub-details .pub-card{background:rgba(251,253,255,.96)}
@media(max-width:860px){
  .pub-page .pub-story-cards{grid-template-columns:1fr;gap:12px;margin:22px 0}
  .pub-page .pub-story-card{padding:18px}
}
@media(max-width:500px){
  .pub-page .pub-story{padding:18px;border-radius:18px}
  .pub-page .pub-story-actions{width:100%}
  .pub-page .pub-story-actions a{width:100%}
  .pub-page .pub-deep-dive{padding:0 14px 10px;border-radius:17px}
}


/* Sélecteur public d'activités par besoin, progressif et accessible sans JS. */
.pub-page .pub-chooser{
  margin:22px 0 26px;padding:clamp(20px,3vw,32px);
  border-radius:23px;border:1px solid rgba(106,176,245,.36);
  background:radial-gradient(ellipse at 87% 9%,rgba(134,50,202,.22),transparent 42%),
    linear-gradient(135deg,rgba(9,22,56,.96),rgba(15,20,48,.96));
  color:#f8faff;
}
.pub-page .pub-chooser-eyebrow{
  color:#aeebff;font-weight:850;font-size:12px;letter-spacing:.14em;
  line-height:1.4;margin:0 0 10px
}
.pub-page .pub-chooser h2{
  color:#fff;font-size:clamp(23px,3vw,36px);
  line-height:1.2;margin:0 0 9px
}
.pub-page .pub-chooser>p:not(.pub-chooser-eyebrow):not(.pub-chooser-count){
  color:#dce7fc;line-height:1.6;font-size:clamp(15px,1.5vw,18px);margin:0 0 18px
}
.pub-page .pub-chooser-buttons{display:flex;flex-wrap:wrap;gap:10px}
.pub-page .pub-chooser-button{
  cursor:pointer;border-radius:999px;min-height:44px;
  border:1px solid rgba(154,197,248,.4);
  background:rgba(35,59,106,.65);color:#e7f2ff;
  padding:10px 17px;font:inherit;font-size:15px;font-weight:800
}
.pub-page .pub-chooser-button[aria-pressed=true]{
  border-color:rgba(166,220,255,.92);
  background:linear-gradient(120deg,#284fdc,#9145cf);
  color:white;box-shadow:0 7px 20px rgba(30,64,190,.25)
}
.pub-page .pub-chooser-button:focus-visible{
  outline:3px solid #baf1ff;outline-offset:3px
}
.pub-page .pub-chooser-count{margin:16px 0 0;color:#bcd6f8;font-size:14px}
.pub-page .pub-catalogue-card[hidden]{display:none!important}
@media(max-width:640px){
  .pub-page .pub-chooser{padding:18px;border-radius:17px}
  .pub-page .pub-chooser-button{font-size:14px;flex:1 1 auto}
}


/* Correction ciblée : catalogue compact et visuels complets — 2026-11-10 */
.pub-page.pub-catalogue-page{
  padding-top:clamp(22px,3vw,40px);
}
.pub-page.pub-catalogue-page .pub-head{
  padding:clamp(22px,3vw,32px);
  margin-bottom:clamp(15px,2vw,22px);
  border-radius:23px;
}
.pub-page.pub-catalogue-page .pub-head h1{
  margin:7px 0 9px;
  font-size:clamp(30px,3.5vw,43px);
  line-height:1.16;
}
.pub-page.pub-catalogue-page .pub-head .pub-kicker{margin:0 0 7px}
.pub-page.pub-catalogue-page .pub-head>p:last-child{
  margin-bottom:0;
  line-height:1.5;
}
.pub-page.pub-catalogue-page .pub-chooser{
  margin:0 0 clamp(18px,2.4vw,26px);
  padding:clamp(18px,2.5vw,25px);
  border-radius:20px;
}
.pub-page.pub-catalogue-page .pub-chooser h2{
  font-size:clamp(23px,2.6vw,30px);
}
.pub-page.pub-catalogue-page .pub-catalogue{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,1.8vw,22px);
  align-items:stretch;
}
.pub-page.pub-catalogue-page .pub-catalogue-card{
  padding:clamp(15px,1.5vw,20px);
  min-height:0;
  border-radius:22px;
  gap:8px;
  display:flex;
  flex-direction:column;
}
.pub-page.pub-catalogue-page .pub-catalogue-card .pub-activity-cover{
  display:block;
  width:100%;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:16/9;
  object-fit:contain;
  flex:none;
  margin:0 0 7px;
  border-radius:14px;
}
.pub-page.pub-catalogue-page .pub-catalogue-card .pub-card-eyebrow{
  margin:0;
  font-size:12px;
  line-height:1.4;
}
.pub-page.pub-catalogue-page .pub-catalogue-card h2{
  font-size:clamp(20px,1.6vw,24px);
  line-height:1.25;
  margin:0 0 2px;
}
.pub-page.pub-catalogue-page .pub-catalogue-card p{
  line-height:1.55;
  font-size:clamp(15px,1.1vw,17px);
  margin:0 0 12px;
  flex-grow:1;
}
.pub-page.pub-catalogue-page .pub-catalogue-actions{
  gap:8px;
  align-items:stretch;
}
.pub-page.pub-catalogue-page .pub-catalogue-actions a{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:10px 12px;
  min-height:44px;
  flex:1 1 auto;
  align-self:auto;
  margin:0;
  font-weight:750;
}
@media(max-width:1050px){
  .pub-page.pub-catalogue-page .pub-catalogue{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:675px){
  .pub-page.pub-catalogue-page .pub-catalogue{
    grid-template-columns:minmax(0,1fr);
    gap:17px;
  }
  .pub-page.pub-catalogue-page .pub-head{border-radius:17px}
  .pub-page.pub-catalogue-page .pub-catalogue-card{padding:16px}
  .pub-page.pub-catalogue-page .pub-catalogue-actions{gap:9px}
}


/* Navigation de fiche activité simplifiée, sans toucher au catalogue/accueil. */
.pub-page.pub-activity-clean{padding-top:clamp(18px,2.6vw,36px)}
.pub-page.pub-activity-clean .pub-head{
  padding:clamp(22px,3vw,34px);
  margin:0 0 20px;
  border-radius:23px;
}
.pub-page.pub-activity-clean .pub-head h1{
  font-size:clamp(29px,3.7vw,45px);
  line-height:1.15;
  margin:8px 0 10px;
}
.pub-page.pub-activity-clean .pub-head .pub-kicker{margin:0 0 6px}
.pub-page.pub-activity-clean .pub-head>p:last-child{margin-bottom:0;line-height:1.52}
.pub-page.pub-activity-clean .pub-activity-hero{margin:0 0 23px}
@media(max-width:640px){
  .pub-page.pub-activity-clean .pub-head{border-radius:18px;padding:20px}
  .pub-page.pub-activity-clean .pub-activity-hero{margin-bottom:17px}
}


/* Menu global unique : aucun sous-menu redondant sur les pages publiques. */
.pub-page:not(.pub-catalogue-page):not(.pub-activity-clean){
  padding-top:clamp(22px,3vw,40px);
}
.pub-page:not(.pub-catalogue-page):not(.pub-activity-clean)>.pub-head{
  margin-top:0;
}
