/* Kelto : correctifs et styles de la section Articles */

/* Correctif : le pied de page est concu pour un fond fonce (texte blanc).
   Sur la page d'accueil il repose sur la bande .commercial-band ; ailleurs
   il n'avait aucun fond, donc texte blanc sur fond pale et illisible. */
.site-footer{background:var(--navy-900)}
.commercial-band .site-footer{background:0 0}

/* Page index des articles */
.articles-hero{padding:72px 0 64px;background:var(--navy-900);color:#fff;text-align:center}
.articles-hero h1{color:#fff;font-size:clamp(2rem,4vw,2.9rem);margin:0 0 .75rem}
.articles-hero p{color:rgba(255,255,255,.72);font-size:1.05rem;max-width:640px;margin:0 auto}
.articles-hero .eyebrow{color:var(--logo-cyan)}
.articles-wrap{padding:64px 0 80px}
.articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem;align-items:stretch}
.article-card{display:flex;flex-direction:column;background:var(--surface-1);
 border:1px solid var(--border-hairline);border-radius:var(--radius-md);overflow:hidden;
 box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.article-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--brand)}
.article-body{padding:1.5rem;display:flex;flex-direction:column;flex:1}
.article-meta{font-size:.78rem;color:var(--text-muted);font-weight:600;letter-spacing:.03em;
 text-transform:uppercase;margin-bottom:.6rem}
.article-card h2{font-size:1.12rem;line-height:1.35;color:var(--navy-900);margin:0 0 .6rem}
.article-card p{font-size:.92rem;color:var(--text-secondary);margin:0 0 1.1rem;flex:1}
.article-more{font-weight:700;color:var(--brand);font-size:.9rem}
.articles-empty{max-width:620px;margin:0 auto;text-align:center;background:var(--surface-1);
 border:1px solid var(--border-hairline);border-radius:var(--radius-md);padding:3rem 2rem;box-shadow:var(--shadow-sm)}
.articles-empty h2{font-size:1.25rem;color:var(--navy-900);margin:0 0 .75rem}
.articles-empty p{color:var(--text-secondary);margin:0 0 1.5rem}

/* Page d'un article */
.article-head{padding:64px 0 40px;background:var(--navy-900);color:#fff}
.article-head h1{color:#fff;font-size:clamp(1.7rem,3.4vw,2.5rem);margin:0 0 .75rem;line-height:1.25}
.article-head .article-meta{color:rgba(255,255,255,.6);margin:0}
.article-back{display:inline-block;color:var(--logo-cyan);font-weight:700;font-size:.9rem;margin-bottom:1.25rem}
.article-back:hover{color:#fff}
.article-content{padding:48px 0 16px;font-size:1.05rem;color:var(--text-secondary)}
.article-content h2{font-size:clamp(1.3rem,2.4vw,1.75rem);color:var(--navy-900);margin:2.5rem 0 .9rem;line-height:1.3}
.article-content h3{font-size:1.15rem;color:var(--navy-900);margin:2rem 0 .7rem}
.article-content h4{font-size:1rem;color:var(--navy-900);margin:1.5rem 0 .5rem}
.article-content p{margin:0 0 1.15rem}
.article-content ul,.article-content ol{margin:0 0 1.4rem;padding-left:1.4rem;display:grid;gap:.6rem}
.article-content li{line-height:1.65}
.article-content li>p{margin:0}
.article-content strong{color:var(--text-primary)}
.article-content a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}
.article-content a:hover{color:var(--navy-700)}
.article-content table{border-collapse:collapse;width:100%;margin:1.5rem 0;font-size:.95rem}
.article-content th,.article-content td{border:1px solid var(--gridline);padding:.6rem .8rem;text-align:left}
.article-content th{background:var(--wash-blue);color:var(--navy-900)}
.article-content blockquote{border-left:3px solid var(--logo-cyan);margin:1.5rem 0;padding:.25rem 0 .25rem 1.1rem;color:var(--text-secondary)}
.article-content img{max-width:100%;height:auto;border-radius:var(--radius-sm)}
.article-cta{margin:2.5rem 0 72px;background:var(--wash-blue);border:1px solid var(--border-hairline);
 border-radius:var(--radius-md);padding:2rem;text-align:center}
.article-cta h2{font-size:1.25rem;color:var(--navy-900);margin:0 0 .5rem}
.article-cta p{color:var(--text-secondary);margin:0 0 1.25rem}

@media(max-width:980px){.articles-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.articles-grid{grid-template-columns:1fr}.article-head{padding:48px 0 32px}}

/* Correctif : avec l'onglet Articles, le menu manquait de place et le logo
   du haut etait comprime horizontalement. Le logo ne retrecit plus jamais ;
   c'est l'espacement du menu qui s'ajuste a la largeur disponible. */
.site-header .logo,.site-header .logo img{flex-shrink:0}
.site-header .logo img{max-width:none}
@media (min-width:1081px){.main-nav ul{gap:clamp(.85rem,2.4vw - 1.3rem,1.5rem)}}
@media (min-width:1081px) and (max-width:1199px){.site-header .phone-link span{display:none}}
