:root{--cwa-ink:#102f49;--cwa-accent:#167faf;--cwa-line:#c8d9e1;--cwa-mist:#f1f7f9}
html{scroll-padding-top:8rem}
#latest-edition,#editions{scroll-margin-top:8rem}

/* Introduction éditoriale, dans le même langage visuel que le programme PDoS. */
.cwa-hero{padding:clamp(3.5rem,5.5vw,5.75rem) max(1.5rem,calc((100vw - 1320px)/2));background:radial-gradient(circle at 90% 12%,#a8d8e433,transparent 28%),linear-gradient(110deg,#edf4f6 0 72%,#dfecef 72%)}
.cwa-hero::after{display:none}
.cwa-hero-inner{max-width:1320px}
.cwa-breadcrumb{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 clamp(2.25rem,4vw,3.75rem);color:#617b8b;font-size:.76rem}
.cwa-breadcrumb a{color:#41677d;border-bottom:1px solid #9bb7c5}
.cwa-hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(245px,.55fr);gap:clamp(2.5rem,6vw,6rem);align-items:end}
.cwa-hero-copy{min-width:0}
.cwa-eyebrow{margin-bottom:1.25rem;letter-spacing:.18em}
.cwa-hero h1{max-width:940px;margin:0;font-size:clamp(3.7rem,5.8vw,6.6rem);line-height:.91;overflow-wrap:normal}
.cwa-lead{max-width:790px;margin:2rem 0 0;color:#405d6d;font-size:1.05rem;line-height:1.72}
.cwa-lead strong{color:var(--cwa-ink)}
.cwa-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.cwa-hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:51px;padding:.8rem 1.1rem;font-size:.88rem;font-weight:700;text-decoration:none}
.cwa-action-primary{background:var(--cwa-ink);color:#fff}
.cwa-action-secondary{border:1px solid var(--cwa-ink);color:var(--cwa-ink)}
.cwa-hero-meta{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;min-width:0;padding:1.75rem 1.6rem 1.85rem;border-top:3px solid var(--cwa-accent);background:#ffffffd9;box-shadow:0 16px 38px #102f4910}
.cwa-hero-meta-label{color:var(--cwa-accent);font-size:.68rem;font-weight:800;letter-spacing:.15em}
.cwa-hero-meta strong{color:var(--cwa-ink);font:500 clamp(2.75rem,4vw,4.25rem)/1 var(--serif)}
.cwa-hero-meta>span:nth-of-type(2){color:#526979;font-size:.82rem}
.cwa-hero-meta a{margin-top:.8rem;color:var(--cwa-accent);font-weight:700;border-bottom:1px solid currentColor}

/* Le bandeau de repères remplace les petites cartes dispersées du hero. */
.cwa-snapshot{background:var(--cwa-ink)}
.cwa-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:min(calc(100% - 3rem),1320px);margin:0 auto;padding:1.3rem 0;border:0}
.cwa-kpi{min-width:0;padding:1.2rem 1.5rem;border-right:1px solid #ffffff29}
.cwa-kpi:first-child{padding-left:0}
.cwa-kpi:last-child{border-right:0}
.cwa-kpi-num{color:#fff;font-size:clamp(1.35rem,2vw,1.85rem)}
.cwa-kpi-lbl{margin-top:.25rem;color:#c8d6e1;line-height:1.45}

.cwa-body{max-width:1368px;padding:clamp(3rem,5vw,5rem) 1.5rem}
.cwa-note{margin-bottom:clamp(2.5rem,4vw,4rem);padding:1.1rem 1.35rem;border-left:3px solid var(--cwa-accent);background:var(--cwa-mist);font-size:.88rem}
.cwa-method,.cwa-purpose,.cwa-deepen{gap:clamp(2rem,4vw,4rem);padding:clamp(3rem,5vw,5rem) 0;border-top:1px solid var(--cwa-line)}
.cwa-method{grid-template-columns:1fr}
.cwa-method>div{max-width:900px}
.cwa-method h2,.cwa-purpose h2,.cwa-deepen h2{line-height:1.02}
.cwa-method ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.cwa-method li{padding:1.3rem 1.4rem;border:1px solid var(--cwa-line);border-top:3px solid #8fc2d5;background:#f8fbfc}
.cwa-seclabel{color:var(--cwa-accent)}

/* Une seule une, lisible dès sa première ligne, sans vide vertical artificiel. */
.cwa-featured{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:0;margin:1.25rem 0 clamp(3.5rem,6vw,5rem);border:0;box-shadow:0 18px 48px #102f4917}
.cwa-feat-main{display:block;min-width:0;padding:clamp(2rem,3.5vw,3.4rem);border-top:4px solid var(--cwa-accent);background:#f4f8fa}
.cwa-feat-kicker{color:var(--cwa-accent)}
.cwa-feat-meta{flex-wrap:wrap;gap:.35rem 1rem;margin:1.15rem 0}
.cwa-feat-title{max-width:780px;margin:.8rem 0 1.25rem;font-size:clamp(2.2rem,3.6vw,3.75rem);line-height:1.03;overflow-wrap:anywhere}
.cwa-feat-lead{max-width:670px;margin:0;color:#4f6573;font-size:1rem;line-height:1.7}
.cwa-feat-tags{margin:1.5rem 0}
.cwa-tag{padding:.35rem .55rem;border-color:#bfd0d8;background:#fff}
.cwa-feat-btn{margin-top:.4rem;color:var(--cwa-accent)}
.cwa-feat-side{min-width:0;padding:clamp(2rem,3vw,3.25rem);border:0;background:#123653;color:#fff}
.cwa-feat-side-title{margin:0 0 1rem;color:#8ed3eb;font-size:.72rem}
.cwa-signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.2rem}
.cwa-sig{min-width:0;padding:.8rem 0;border-color:#ffffff2a;font-size:.84rem}
.cwa-feat-side .cwa-sig strong{color:#fff}
.cwa-feat-side .cwa-sig>span:last-child{color:#ccdae2}
.cwa-feat-side .cwa-priority,.cwa-feat-side .cwa-priority.active,.cwa-feat-side .cwa-priority.critical,.cwa-feat-side .cwa-priority.watch{color:#8ed3eb;border-color:#8ed3eb}
.cwa-editorial-lenses{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.3rem}
.cwa-editorial-lenses section{border-color:#ffffff2a}
.cwa-editorial-lenses span{color:#8ed3eb}
.cwa-editorial-lenses p{color:#ccdae2}

.cwa-purpose{grid-template-columns:.82fr 1.18fr}
.cwa-grid{gap:1.1rem;background:transparent;border:0}
.cwa-card{min-width:0;min-height:265px;padding:1.8rem;border:1px solid var(--cwa-line);border-top:3px solid #92c5d7;box-shadow:0 9px 26px #102f490d;transition:transform .2s,box-shadow .2s,border-color .2s}
.cwa-card:hover{transform:translateY(-3px);border-top-color:var(--cwa-accent);box-shadow:0 17px 36px #102f491a}
.cwa-title{font-size:clamp(1.5rem,2.15vw,2rem);line-height:1.12;overflow-wrap:anywhere}
.cwa-card .cwa-tag{font-size:.61rem}
.cwa-purpose,.cwa-deepen{margin-top:clamp(2rem,4vw,3.5rem)}
.cwa-cta{margin-top:3.5rem}
.cwa-hero a:focus-visible,.cwa-body a:focus-visible{outline:3px solid var(--cwa-accent);outline-offset:4px}

@media(max-width:1050px){
  .cwa-hero-grid{grid-template-columns:1fr;gap:2rem}
  .cwa-hero-meta{max-width:460px}
  .cwa-featured{grid-template-columns:1fr}
  .cwa-purpose,.cwa-deepen{grid-template-columns:1fr}
}
@media(max-width:760px){
  .cwa-hero{padding:3rem 1rem;background:var(--cwa-mist)}
  .cwa-breadcrumb{margin-bottom:2rem}
  .cwa-hero h1{font-size:clamp(2.9rem,12vw,4.6rem);line-height:.95}
  .cwa-lead{font-size:1rem;line-height:1.65}
  .cwa-kpis{grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 2rem);padding:.65rem 0}
  .cwa-kpi{padding:1rem;border-bottom:1px solid #ffffff29}
  .cwa-kpi:nth-child(odd){padding-left:0}
  .cwa-kpi:nth-child(even){border-right:0}
  .cwa-kpi:nth-last-child(-n+2){border-bottom:0}
  .cwa-body{padding-inline:1rem}
  .cwa-method ol{grid-template-columns:1fr}
  .cwa-signal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cwa-grid{grid-template-columns:1fr}
  .cwa-card{min-height:0}
}
@media(max-width:540px){
  .cwa-hero-actions{display:grid}
  .cwa-hero-meta{padding:1.4rem}
  .cwa-feat-main,.cwa-feat-side{padding:1.5rem}
  .cwa-feat-title{font-size:clamp(2.05rem,10vw,2.8rem)}
  .cwa-signal-grid,.cwa-editorial-lenses{grid-template-columns:1fr}
  .cwa-card{padding:1.4rem}
}
