/* ============================================================
   Actualités (archive + single) — Charte V6
   Port du Mockup_Actualites_V2.html
   ============================================================ */

/* Page header */
.news-page .page-header {
    padding: 80px 60px 60px;
    background: var(--white);
    position: relative;
}
.news-page .page-header .container { text-align: center; }
.news-page .page-header h1 {
    font-size: 72px; font-weight: 900; letter-spacing: -2px;
    color: var(--ink); margin-bottom: 16px;
}
.news-page .page-header h1 .serif { color: var(--turquoise); font-size: 1em; }
.news-page .page-header .lead {
    font-size: 18px; color: var(--ink); opacity: 0.78;
    max-width: 640px; margin: 0 auto; line-height: 1.6;
}
.news-page .page-header .eyebrow {
    font-size: 12px; letter-spacing: 5px; font-weight: 700;
    color: var(--grey); margin-bottom: 18px;
    text-transform: uppercase;
}
.news-page .page-header-bars {
    position: absolute; bottom: 0; left: 50%;
    transform: translateX(-50%);
    height: 28px; width: 200px;
    display: flex; gap: 6px; align-items: flex-end;
}
.news-page .page-header-bars span {
    display: block; width: 18px; border-radius: 4px 4px 0 0;
}
.news-page .page-header-bars span:nth-child(1) { height: 60%;  background: var(--turquoise); }
.news-page .page-header-bars span:nth-child(2) { height: 100%; background: var(--ink); }
.news-page .page-header-bars span:nth-child(3) { height: 70%;  background: var(--yellow); }
.news-page .page-header-bars span:nth-child(4) { height: 90%;  background: var(--turquoise); opacity: 0.5; }
.news-page .page-header-bars span:nth-child(5) { height: 50%;  background: var(--cyan); }
.news-page .page-header-bars span:nth-child(6) { height: 75%;  background: var(--yellow); opacity: 0.7; }

/* Filtres */
.news-page .filters-bar {
    padding: 28px 60px;
    background: var(--white);
    border-bottom: 1px solid var(--grey-light);
}
.news-page .filters-wrap {
    max-width: 1320px; margin: 0 auto;
    display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.news-page .filters-label {
    font-size: 11px; letter-spacing: 3px; font-weight: 700;
    color: var(--grey); text-transform: uppercase;
    margin-right: 6px;
}
.news-page .filter-pill {
    display: inline-block;
    padding: 8px 18px; border-radius: 100px;
    font-size: 13px; font-weight: 600;
    background: var(--grey-light); color: var(--ink);
    text-decoration: none;
    transition: all 0.2s;
    cursor: pointer;
}
.news-page .filter-pill:hover { background: var(--cyan); }
.news-page .filter-pill.active { background: var(--ink); color: var(--white); }

/* News list */
.news-page .news-list {
    padding: 60px 60px;
    background: var(--grey-light);
}
.news-page .news-list .container { padding: 0; max-width: 1320px; }
.news-page .news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.news-page .news-card {
    display: flex; flex-direction: column;
    background: var(--white);
    border-radius: 16px; overflow: hidden;
    text-decoration: none; color: inherit;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s;
    cursor: pointer;
}
.news-page .news-card:hover { transform: translateY(-6px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); }
.news-page .news-card-featured { grid-column: span 2; }
.news-page .news-photo {
    aspect-ratio: 16/9;
    background: var(--grey-light);
    position: relative; overflow: hidden;
    display: flex; align-items: center; justify-content: center;
}
.news-page .news-card-featured .news-photo { aspect-ratio: 16/8; }
.news-page .news-photo img { width: 100%; height: 100%; object-fit: cover; }
.news-page .news-emoji {
    width: 80px; height: 80px;
    display: flex; align-items: center; justify-content: center;
}
.news-page .news-emoji .icon-svg { stroke-width: 1.8; }
.news-page .news-body {
    padding: 24px 24px 28px;
    flex: 1; display: flex; flex-direction: column;
}
.news-page .news-meta {
    display: flex; align-items: center; gap: 12px;
    margin-bottom: 14px; flex-wrap: wrap;
}
.news-page .news-cat {
    font-size: 10px; letter-spacing: 3px; font-weight: 900;
    padding: 5px 10px 5px 14px; border-radius: 4px;
    color: var(--ink); position: relative;
    text-transform: uppercase;
}
.news-page .news-cat::before {
    content: ""; position: absolute; left: -6px; top: 30%;
    width: 0; height: 0;
    border-top: 5px solid transparent; border-bottom: 5px solid transparent;
}
.news-page .news-cat-une       { background: #8fd9b0; }
.news-page .news-cat-une::before       { border-right: 6px solid #8fd9b0; }
.news-page .news-cat-hot-news  { background: var(--yellow); }
.news-page .news-cat-hot-news::before  { border-right: 6px solid var(--yellow); }
.news-page .news-cat-moment-shop { background: var(--turquoise); color: var(--white); }
.news-page .news-cat-moment-shop::before { border-right: 6px solid var(--turquoise); }
.news-page .news-cat-bon-plan  { background: #e07a75; color: var(--white); }
.news-page .news-cat-bon-plan::before  { border-right: 6px solid #e07a75; }
.news-page .news-cat-pause-cafe { background: var(--cyan); }
.news-page .news-cat-pause-cafe::before { border-right: 6px solid var(--cyan); }

.news-page .news-date {
    font-size: 12px; color: var(--grey);
    letter-spacing: 1px; font-weight: 600;
}
.news-page .news-title {
    font-size: 22px; font-weight: 800; color: var(--ink);
    line-height: 1.2; margin-bottom: 12px; letter-spacing: -0.5px;
}
.news-page .news-card-featured .news-title { font-size: 32px; }
.news-page .news-title .serif { color: var(--turquoise); }
.news-page .news-excerpt {
    font-size: 14px; color: var(--ink); opacity: 0.7;
    line-height: 1.55; margin-bottom: 14px; flex: 1;
}
.news-page .news-link {
    font-size: 13px; font-weight: 700; color: var(--turquoise);
    margin-top: auto;
}
.news-page .news-card:hover .news-link { color: var(--ink); }

/* Empty state */
.news-page .news-empty {
    text-align: center; padding: 80px 20px;
    color: var(--grey);
}

/* Pagination */
.news-page .pagination {
    padding: 48px 60px; background: var(--white);
    display: flex; justify-content: center;
    gap: 8px; align-items: center;
}
.news-page .pagination a, .news-page .pagination span {
    min-width: 44px; height: 44px; padding: 0 12px;
    border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    color: var(--ink); font-weight: 700; text-decoration: none;
    transition: all 0.2s;
}
.news-page .pagination a:hover { background: var(--cyan); }
.news-page .pagination .current { background: var(--ink); color: var(--white); }

/* ─── SINGLE ACTUALITÉ ─── */
.single-actualite-v6 .article-hero {
    padding: 60px 60px 0;
    text-align: center;
    background: var(--white);
}
.single-actualite-v6 .article-hero .container { max-width: 820px; margin: 0 auto; }
.single-actualite-v6 .article-meta {
    display: flex; justify-content: center; align-items: center;
    gap: 14px; margin-bottom: 20px; flex-wrap: wrap;
}
.single-actualite-v6 .article-title {
    font-size: 54px; font-weight: 900; color: var(--ink);
    line-height: 1.05; letter-spacing: -1.5px; margin-bottom: 20px;
}
.single-actualite-v6 .article-title .serif { color: var(--turquoise); }
.single-actualite-v6 .article-tagline {
    font-family: 'DM Serif Display', serif; font-style: italic;
    font-size: 22px; color: var(--ink); opacity: 0.85;
    margin-bottom: 32px;
}
.single-actualite-v6 .article-cover {
    aspect-ratio: 16/8;
    background: linear-gradient(135deg, var(--cyan), var(--yellow));
    border-radius: 16px; overflow: hidden;
    max-width: 1100px; margin: 0 auto 48px;
}
.single-actualite-v6 .article-cover img {
    width: 100%; height: 100%; object-fit: cover;
}
.single-actualite-v6 .article-body {
    max-width: 760px; margin: 0 auto;
    padding: 0 60px 80px;
    font-size: 18px; line-height: 1.75; color: var(--ink);
}
.single-actualite-v6 .article-body p { margin-bottom: 22px; opacity: 0.88; }
.single-actualite-v6 .article-body h2 {
    font-size: 32px; font-weight: 900; margin: 40px 0 18px;
    letter-spacing: -0.8px;
}
.single-actualite-v6 .article-body h2 .serif { color: var(--turquoise); }
.single-actualite-v6 .article-body a { color: var(--turquoise); font-weight: 700; }
.single-actualite-v6 .article-body strong { color: var(--ink); opacity: 1; }
.single-actualite-v6 .article-footer-nav {
    max-width: 1100px; margin: 0 auto;
    padding: 30px 60px 60px;
    display: flex; justify-content: space-between;
    border-top: 1px solid var(--grey-light);
}
.single-actualite-v6 .article-footer-nav a {
    color: var(--ink); text-decoration: none; font-weight: 700;
}
.single-actualite-v6 .article-footer-nav a:hover { color: var(--turquoise); }

/* Responsive */
@media (max-width: 980px) {
    .news-page .news-grid { grid-template-columns: 1fr 1fr; }
    .news-page .news-card-featured { grid-column: span 2; }
    .news-page .page-header h1 { font-size: 48px; }
    .single-actualite-v6 .article-title { font-size: 36px; }
}
@media (max-width: 600px) {
    .news-page .news-grid { grid-template-columns: 1fr; }
    .news-page .news-card-featured { grid-column: span 1; }
    .news-page .news-list { padding: 40px 24px; }
    .news-page .filters-bar { padding: 20px 24px; }
    .news-page .page-header { padding: 50px 24px 50px; }
    .single-actualite-v6 .article-hero { padding: 40px 24px 0; }
    .single-actualite-v6 .article-body { padding: 0 24px 60px; font-size: 17px; }
}
