/* ═══════════════════════════════════════
   PEINTURA — Actualités (liste + article)
   ═══════════════════════════════════════ */
.act-hero .pg-hero-inner { padding-bottom: 3rem; }
.act-pills { margin-bottom: 1.8rem; }

.act-badge {
    display: inline-flex; align-items: center; gap: .35rem; align-self: flex-start;
    font-size: .76rem; font-weight: 700; padding: .22rem .65rem; border-radius: 999px;
    color: var(--c); background: color-mix(in srgb, var(--c) 12%, #fff);
}
.act-meta { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-top: auto; padding-top: .5rem; }
.act-meta time, .act-hero-card time { display: inline-flex; align-items: center; gap: .4rem; font-size: .88rem; color: #374151; }
.pg-link-inline { color: var(--pg-blue); font-weight: 700; text-decoration: none; }
.pg-link-inline:hover { text-decoration: underline; }

/* À la une */
.act-featured { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.1rem; margin-bottom: 2.6rem; }
.act-hero-card {
    position: relative; display: flex; align-items: flex-end; min-height: 340px; border-radius: 16px; overflow: hidden;
    text-decoration: none; color: #fff; box-shadow: 0 10px 28px rgba(14,24,71,.16);
}
.act-hero-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.act-hero-card:hover > img { transform: scale(1.03); }
.act-hero-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,15,40,0) 30%, rgba(5,15,40,.82) 100%); }
.act-hero-card-body { position: relative; z-index: 1; display: flex; flex-direction: column; gap: .5rem; padding: 1.4rem 5rem 1.4rem 1.5rem; }
.act-hero-card-body .act-badge { background: #fff; }
.act-hero-card strong { font-size: 1.75rem; font-weight: 800; line-height: 1.12; letter-spacing: -.01em; }
.act-excerpt { font-size: .95rem; line-height: 1.45; color: rgba(255,255,255,.92); max-width: 460px; }
.act-hero-card time { color: #fff; }
.act-go-lg { position: absolute; z-index: 1; right: 1.3rem; bottom: 1.3rem; width: 48px; height: 48px; }
.act-hero-card:hover .act-go-lg { background: var(--pg-blue); color: #fff; }

.act-side { display: grid; grid-template-rows: 1fr 1fr; gap: 1.1rem; }
.act-side-card {
    display: grid; grid-template-columns: 44% 1fr; border-radius: 14px; overflow: hidden; background: #fff; text-decoration: none;
    border: 1px solid var(--pg-line); box-shadow: 0 6px 18px rgba(14,24,71,.07); transition: transform .18s, box-shadow .18s;
}
.act-side-card:hover { transform: translateY(-2px); box-shadow: 0 14px 28px rgba(14,24,71,.12); }
.act-side-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.act-side-body { display: flex; flex-direction: column; gap: .5rem; padding: 1rem 1.1rem; }
.act-side-body strong, .act-card-body strong { font-size: 1.12rem; font-weight: 800; line-height: 1.25; color: var(--pg-navy); }

/* Grille */
.act-head { margin-bottom: 1.2rem; align-items: center; }
.act-title { position: relative; font-size: 1.7rem; font-weight: 800; color: var(--pg-navy); padding-bottom: .5rem; }
.act-title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 90px; height: 4px; border-radius: 4px; background: var(--pg-yellow); }
.act-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.1rem; }
.act-card {
    display: flex; flex-direction: column; background: #fff; border-radius: 14px; overflow: hidden; text-decoration: none;
    border: 1px solid var(--pg-line); box-shadow: 0 6px 18px rgba(14,24,71,.07); transition: transform .18s, box-shadow .18s;
}
.act-card:hover { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(14,24,71,.12); }
.act-card-img { display: block; aspect-ratio: 253 / 113; overflow: hidden; background: var(--pg-soft); }
.act-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.act-card-body { display: flex; flex-direction: column; gap: .5rem; padding: .9rem 1.1rem 1rem; flex: 1; }
.act-card-body strong { font-size: 1.05rem; }

/* Article */
.act-hero--article .pg-hero-inner { padding-bottom: 2.6rem; }
.act-hero--article .act-badge { background: #fff; margin-bottom: .6rem; }
.act-h1 { font-size: clamp(1.7rem, 3vw, 2.5rem) !important; }
.act-hero-date { display: flex; align-items: center; gap: .45rem; font-size: .95rem; color: rgba(255,255,255,.9); }
.act-article-wrap { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 2.4rem; align-items: start; }
.act-article { background: #fff; border-radius: 16px; padding: 2rem 2.2rem; border: 1px solid var(--pg-line); box-shadow: 0 6px 18px rgba(14,24,71,.06); }
.act-lead { font-size: 1.15rem; line-height: 1.6; font-weight: 600; color: var(--pg-navy); margin-bottom: 1.4rem; }
.act-figure { margin: 0 0 1.6rem; border-radius: 12px; overflow: hidden; }
.act-figure img { width: 100%; height: auto; display: block; }
.act-content { font-size: 1.02rem; line-height: 1.75; color: #1f2937; }
.act-content h2 { font-size: 1.35rem; font-weight: 800; color: var(--pg-navy); margin: 1.8rem 0 .6rem; }
.act-content h3 { font-size: 1.12rem; font-weight: 700; color: var(--pg-navy); margin: 1.4rem 0 .5rem; }
.act-content p { margin-bottom: 1rem; }
.act-content ul, .act-content ol { margin: 0 0 1rem 1.3rem; }
.act-content li { margin-bottom: .35rem; }
.act-content a { color: var(--pg-blue); font-weight: 600; }
.act-content img { max-width: 100%; height: auto; border-radius: 10px; }
.act-back { margin-top: 2rem; padding-top: 1.2rem; border-top: 1px solid var(--pg-line); }

.act-aside { position: sticky; top: 90px; display: flex; flex-direction: column; gap: .8rem; }
.act-aside h2 { font-size: 1.15rem; font-weight: 800; color: var(--pg-navy); }
.act-mini { display: grid; grid-template-columns: 96px 1fr; gap: .8rem; align-items: center; background: #fff; border-radius: 12px; padding: .5rem; border: 1px solid var(--pg-line); text-decoration: none; }
.act-mini:hover { border-color: #c9dbf6; }
.act-mini-img img { width: 96px; height: 64px; object-fit: cover; border-radius: 8px; display: block; }
.act-mini strong { display: block; font-size: .9rem; line-height: 1.3; color: var(--pg-navy); }
.act-mini small { font-size: .78rem; color: var(--pg-muted); }
.act-aside-cta { display: flex; flex-direction: column; gap: .6rem; margin-top: .6rem; padding: 1.2rem; border-radius: 14px; background: linear-gradient(135deg, #0a2c6e, #0b4cb0); color: #fff; }
.act-aside-cta strong { font-size: 1.1rem; }
.act-aside-cta span { font-size: .9rem; color: rgba(255,255,255,.88); margin-bottom: .3rem; }
.act-aside-cta .pg-btn { height: 44px; }
.act-aside-cta .pg-btn--ghost { border-color: #fff; }

@media (max-width: 1100px) {
    .act-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .act-article-wrap { grid-template-columns: minmax(0, 1fr); }
    .act-aside { position: static; }
}
@media (max-width: 860px) {
    .act-featured { grid-template-columns: minmax(0, 1fr); }
    .act-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .act-pills { flex-wrap: nowrap; overflow-x: auto; margin: 0 -1rem 1.4rem; padding: 0 1rem .4rem; scrollbar-width: none; }
    .act-pills::-webkit-scrollbar { display: none; }
    .act-pills .pg-pill { flex-shrink: 0; }
    .act-hero-card { min-height: 280px; }
    .act-hero-card strong { font-size: 1.3rem; }
    .act-hero-card-body { padding: 1.1rem 4rem 1.1rem 1.1rem; }
    .act-side-card { grid-template-columns: 38% 1fr; }
    .act-side-body strong { font-size: .98rem; }
    .act-grid { grid-template-columns: minmax(0, 1fr); }
    .act-title { font-size: 1.35rem; }
    .act-head { flex-direction: row; }
    .act-article { padding: 1.3rem 1.1rem; }
}
@media (min-width: 601px) {
    .act-pills { gap: .55rem; }
    .act-pills .pg-pill { padding: 0 1rem; font-size: .9rem; gap: .45rem; }
    .act-pills .pg-pill svg { width: 20px; height: 20px; }
}
.act-pill-academy { background: #f3eefe !important; border-color: #e3d8fb !important; color: #6d35d6 !important; }
.act-pill-academy:hover { border-color: #6d35d6 !important; }
/* Titres : toujours la police du site */
.act-title, .act-hero-card strong, .act-side-body strong, .act-card-body strong { font-family: var(--font-body); }

/* Marque(s) de l'actualité : pastille en haut à droite de l'image */
.act-card-img, .act-side-img { position: relative; }
.act-brands { position: absolute; top: .6rem; right: .6rem; z-index: 2; display: flex; gap: .35rem; flex-wrap: wrap; justify-content: flex-end; max-width: 75%; }
.act-brand {
    display: inline-flex; align-items: center; height: 30px; padding: .2rem .6rem; border-radius: 7px; background: #fff;
    box-shadow: 0 3px 10px rgba(14,24,71,.18); font-size: .78rem; font-weight: 800; letter-spacing: .02em; color: var(--pg-navy);
    text-transform: uppercase; white-space: nowrap;
}
.act-brand--logo { padding: .25rem .45rem; }
.act-brand--logo img { height: 100%; width: auto; max-width: 96px; object-fit: contain; display: block; }
.act-hero-card .act-brands { top: 1rem; right: 1rem; }
.act-hero-card .act-brand { height: 38px; font-size: .9rem; }
.act-hero-card .act-brand--logo img { max-width: 130px; }
.act-brands--sm .act-brand { height: 28px; font-size: .68rem; padding: .15rem .45rem; }
.act-brands--sm .act-brand--logo img { max-width: 70px; }
.act-article-brands { position: absolute; top: 1rem; right: 1rem; z-index: 3; }
.act-article-brands .act-brands { position: static; max-width: none; }
.act-article-brands .act-brand { height: 40px; font-size: .92rem; }
.act-article-brands .act-brand--logo img { max-width: 140px; }
@media (max-width: 680px) { .act-article-brands { top: auto; bottom: .8rem; } }
