/* ============================================================
   YLLY Blog — Grille — Frontend styles
   Figma: NovCast > Card Blog (node 893:8424)
   CSS reformate depuis une version minifiee sans source :
   reformatage verifie semantiquement neutre.
   ============================================================ */

.yl-blog-grid {
    background-color:var(--color-surface-white);
}

.yl-blog-grid__filters {
    align-items:center;
    background-color:var(--color-surface-white);
    border-radius:30px 30px 0 0;
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    justify-content:center;
    margin-inline:auto;
    max-width:1440px;
    padding:30px clamp(24px,6vw,256px) 0;
}

.yl-blog-grid__filter {
    background:0 0;
    border-radius:var(--radius-pill);
    border:none;
    color:var(--color-text-muted);
    cursor:pointer;
    font-family:var(--font-family-base);
    font-size:var(--font-size-sm);
    font-weight:600;
    letter-spacing:-.01em;
    line-height:1.5;
    padding:6px 16px;
    transition:color .2s,background-color .2s;
}

.yl-blog-grid__filter:hover {
    color:var(--color-text-default);
}

.yl-blog-grid__filter.is-active {
    background-color:var(--color-surface-default);
    color:var(--color-text-default);
}

.yl-blog-grid__inner {
    margin-inline:auto;
    max-width:1440px;
    padding:40px clamp(24px,6vw,80px) clamp(40px,5vw,80px);
}

.yl-blog-grid__grid {
    display:grid;
    gap:24px;
    grid-template-columns:repeat(3,1fr);
}

.yl-blog-card {
    border-radius:14px;
    overflow:hidden;
    position:relative;
}

.yl-blog-card__link {
    display:block;
    height:100%;
    text-decoration:none;
}

.yl-blog-card__media {
    border-radius:14px;
    height:318px;
    overflow:hidden;
    position:relative;
    width:100%;
}

.yl-blog-card__img {
    display:block;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform .4s ease;
    width:100%;
}

.yl-blog-card:hover .yl-blog-card__img {
    transform:scale(1.04);
}

.yl-blog-card__img-placeholder {
    background:linear-gradient(135deg,var(--color-stroke-light) 0%,var(--color-text-muted) 100%);
    height:100%;
    width:100%;
}

.yl-blog-card__overlay {
    background:linear-gradient(to top,rgba(10,5,20,.95) 0,rgba(10,5,20,.75) 38%,rgba(10,5,20,.35) 65%,rgba(10,5,20,.12) 100%);
    border-radius:14px;
    bottom:0;
    left:0;
    pointer-events:none;
    position:absolute;
    right:0;
    top:0;
}

.yl-blog-card__content {
    bottom:0;
    left:0;
    padding:24px 26px;
    position:absolute;
    right:0;
}

.yl-blog-card__tags {
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-8);
    margin-bottom:6px;
}

.yl-blog-card__tag {
    border-radius:var(--radius-pill);
    border:.75px solid rgba(255,255,255,.85);
    color:var(--color-surface-white);
    font-family:var(--font-family-base);
    font-size:var(--font-size-xxs);
    font-weight:600;
    line-height:1.6;
    padding:3px 10px;
}

.yl-blog-card__title {
    color:var(--color-surface-white);
    font-family:var(--font-family-base);
    font-size:var(--font-size-md);
    font-weight:var(--font-weight-bold);
    letter-spacing:-.005em;
    line-height:var(--line-height-md);
    margin:0 0 6px;
}

.yl-blog-card__meta {
    align-items:center;
    color:rgba(255,255,255,.9);
    display:flex;
    font-family:var(--font-family-base);
    font-size:10px;
    font-weight:500;
    gap:5px;
    letter-spacing:.04em;
    margin:0;
    text-transform:uppercase;
}

.yl-blog-card__meta-icon {
    flex-shrink:0;
    height:14px;
    width:14px;
}

.yl-blog-grid__loadmore-wrap {
    padding-top:40px;
    text-align:center;
}

.yl-blog-grid__loadmore {
    align-items:center;
    background-color:var(--color-surface-secondary);
    border-radius:var(--radius-pill);
    border:none;
    color:var(--color-surface-white);
    cursor:pointer;
    display:inline-flex;
    font-family:var(--font-family-base);
    font-size:var(--font-size-sm);
    font-weight:500;
    gap:10px;
    letter-spacing:-.01em;
    padding:14px 28px;
    transition:background-color .2s,transform .2s;
}

.yl-blog-grid__loadmore:hover {
    background-color:var(--color-orange-500);
    transform:translateY(-1px);
}

.yl-blog-grid__loadmore.is-loading {
    opacity:.7;
}

.yl-blog-grid__loadmore-icon {
    align-items:center;
    display:flex;
    height:22px;
    width:22px;
}

.yl-blog-grid__loadmore-icon svg {
    height:100%;
    width:100%;
}

.yl-blog-grid__empty {
    color:var(--color-text-muted);
    font-family:var(--font-family-base);
    grid-column:1/-1;
    padding:40px;
    text-align:center;
}

@media (max-width:1024px) {
    .yl-blog-grid__grid {
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:640px) {
    .yl-blog-grid__grid {
        grid-template-columns:1fr;
    }
    .yl-blog-card__media {
        height:260px;
    }
}

/* Pagination HTML et titre de section — ajoutés le 28/08/2026 */
.yl-blog-grid__heading{font-family:var(--font-body,'Instrument Sans',sans-serif);font-size:1.75rem;font-weight:700;letter-spacing:-.01em;margin:28px auto;max-width:1240px;padding:0 24px;text-align:center}

.yl-blog-grid__pagination a{color:var(--color-text-primary,#1d1a2e);font-weight:600;text-decoration:underline;text-underline-offset:4px}
.yl-blog-grid__pagination span{color:var(--color-text-secondary,#5a566b)}

/* voir plus : lien stylé en bouton (08/09/2026) */
.yl-blog-grid__loadmore{text-decoration:none}
.yl-blog-grid__loadmore[aria-disabled="true"]{opacity:.6;pointer-events:none}
