/* Pages calendrier SNA : texte lisible sans JavaScript, module live par-dessus. */
.calp{max-width:1100px;padding-bottom:20px}
.calp-head{margin:26px 0 8px}
.calp-kicker{color:var(--forest);font-size:13px;font-weight:600;margin:0}
.calp h1{font-family:Barlow,'Arial Narrow',Arial,sans-serif;font-size:clamp(38px,5vw,60px);line-height:1.02;letter-spacing:-.4px;margin:10px 0 12px;max-width:900px}
.calp-updated{font-size:12px;color:#536258;margin:0 0 14px}
.calp-lead{font-size:18px;line-height:1.6;color:#43574b;max-width:820px;margin:0}
.calp h2{font-family:Barlow,'Arial Narrow',Arial,sans-serif;font-size:34px;line-height:1.1;margin:38px 0 16px}
.calp h2 small{font-family:Outfit,Arial,sans-serif;font-size:13px;font-weight:400;color:#536258}
.calp h3{font-size:15px;font-weight:600;margin:20px 0 8px}
.calp-editorial{background:#e4ecd7;padding:4px 26px 12px;border-radius:4px 48px 4px 4px;margin-top:26px;max-width:860px}
.calp-editorial h2{margin-top:20px;font-size:28px}
.calp-editorial p{font-size:17px;line-height:1.7;margin:0 0 14px}
.calp-matches{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0 28px}
.calp-matches li{display:flex;align-items:baseline;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px}
.calp-matches time{font-weight:600;color:var(--forest);min-width:48px;font-variant-numeric:tabular-nums}
.calp-matches span{flex:1;min-width:0}
.calp-matches small{font-size:11px;color:#536258;white-space:nowrap}
.calp-tables{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px 28px}
.calp-table h3{margin-top:12px}
.calp table{border-collapse:collapse;width:100%;font-size:14px;font-variant-numeric:tabular-nums}
.calp th,.calp td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:center}
.calp thead th{font-size:11px;color:#536258;font-weight:500}
.calp tbody th{text-align:left;font-weight:500}
.calp thead th:nth-child(2){text-align:left}
.calp-dates th,.calp-dates td{text-align:left}
.calp-figures{font-size:15px;margin:22px 0 0}
.calp-faq h3{font-size:17px;margin:22px 0 6px}
.calp-faq p{font-size:15px;line-height:1.65;margin:0;max-width:820px}
.calp-related ul,.calp-hub{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.calp-related a,.calp-hub a{display:inline-flex;align-items:center;min-height:42px;padding:9px 15px;background:#e7ede3;border-radius:4px 17px 4px 4px;font-size:14px;font-weight:500}
.calp-hub{flex-direction:column;gap:8px}
.calp-hub li{font-size:13px;color:#536258}
.calp-hub li a{margin-right:6px;color:var(--ink)}
.calp-source{font-size:12px;color:#536258;line-height:1.6;margin-top:30px;border-top:1px solid var(--line);padding-top:16px}
.calp-source a{text-decoration:underline;text-underline-offset:4px}
@media (max-width:700px){
 .calp.wrap{padding-left:16px;padding-right:16px}
 .calp-lead{font-size:16px}
 .calp h2{font-size:28px}
 .calp-editorial{padding:2px 16px 8px}
 .calp-editorial p{font-size:16px}
 .calp-matches,.calp-tables{grid-template-columns:1fr}
 .calp-dates{font-size:12px}
 .calp th,.calp td{padding:7px 4px}
}
