/* ── blog.css ── */
/* ═══════════════════════════════════════════
   BLOG — STYLES COMPLETS
   Design premium, lisibilité maximale
═══════════════════════════════════════════ */

/* ── PAGE BLOG : HERO ── */
.blog-page { background: #fff; }

.blog-hero {
  background: linear-gradient(135deg, var(--navy) 0%, #061a32 60%, #030d18 100%);
  padding: 72px var(--pad) 64px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.blog-hero::before {
  content: '';
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 800px 500px at 70% 50%, rgba(0,87,255,.12), transparent),
    radial-gradient(ellipse 500px 400px at 20% 80%, rgba(0,217,139,.07), transparent);
  pointer-events: none;
}
.blog-hero__inner { max-width: 700px; margin: 0 auto; position: relative; z-index: 1; }

.blog-hero__badge {
  display: inline-flex; align-items: center; gap: 7px;
  background: rgba(56,182,255,.12); border: 1px solid rgba(56,182,255,.2);
  color: var(--sky); font-size: 12px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 99px; margin-bottom: 22px;
}
.blog-hero__title {
  font-family: var(--font-h); font-size: clamp(28px,5vw,46px);
  font-weight: 800; color: #fff; line-height: 1.15;
  letter-spacing: -.04em; margin-bottom: 16px;
}
.blog-hero__title span { color: var(--sky); }
.blog-hero__sub {
  font-size: 16px; color: rgba(255,255,255,.5);
  font-weight: 300; line-height: 1.7; margin-bottom: 36px;
}
.blog-hero__stats {
  display: flex; justify-content: center; gap: 40px; flex-wrap: wrap;
}
.blog-hero__stat strong {
  display: block; font-family: var(--font-h);
  font-size: 28px; font-weight: 800; color: var(--sky);
}
.blog-hero__stat span { font-size: 12px; color: rgba(255,255,255,.4); text-transform: uppercase; letter-spacing: .05em; }

/* ── FILTRES ── */
.blog-wrap { max-width: 1160px; margin: 0 auto; padding: 0 var(--pad) 80px; }

.blog-filters {
  display: flex; gap: 10px; flex-wrap: wrap;
  padding: 32px 0 36px;
  border-bottom: 1px solid var(--border);
  margin-bottom: 40px;
}
.blog-filter {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 9px 18px; border-radius: 99px;
  border: 1.5px solid var(--border);
  background: #fff; color: var(--t2);
  font-size: 13.5px; font-weight: 500;
  cursor: pointer; font-family: var(--font-b);
  transition: all .2s cubic-bezier(.16,1,.3,1);
  white-space: nowrap;
}
.blog-filter:hover { border-color: var(--blue); color: var(--blue); transform: translateY(-1px); }
.blog-filter.active {
  background: var(--blue); border-color: var(--blue);
  color: #fff; box-shadow: 0 4px 16px rgba(0,87,255,.25);
}

/* ── GRILLE ARTICLES ── */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

/* Article featured = full width première ligne */
.blog-card--featured {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 360px;
  border-radius: var(--r20);
  overflow: hidden;
  box-shadow: var(--s3);
  background: #fff;
  border: 1px solid var(--border);
  transition: transform .25s var(--ease), box-shadow .25s;
}
.blog-card--featured:hover { transform: translateY(-4px); box-shadow: var(--s4); }

.blog-card--featured .blog-card__img-wrap { position: relative; overflow: hidden; }
.blog-card--featured .blog-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.blog-card--featured:hover .blog-card__img { transform: scale(1.04); }

.blog-card--featured .blog-card__body {
  padding: 40px 40px 36px;
  display: flex; flex-direction: column;
  justify-content: space-between;
  background: #fff;
}

/* Article standard */
.blog-card {
  border-radius: var(--r16);
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--border);
  box-shadow: var(--s1);
  transition: transform .25s var(--ease), box-shadow .25s;
  display: flex; flex-direction: column;
}
.blog-card:hover { transform: translateY(-4px); box-shadow: var(--s3); }

.blog-card__img-wrap {
  position: relative; overflow: hidden;
  aspect-ratio: 16/9;
}
.blog-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.blog-card:hover .blog-card__img { transform: scale(1.05); }

.blog-card__img-placeholder {
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, color-mix(in srgb, var(--accent, #0057ff) 10%, white) 0%, color-mix(in srgb, var(--accent, #0057ff) 5%, white) 100%);
  aspect-ratio: 16/9;
}
.blog-card--featured .blog-card__img-placeholder { aspect-ratio: unset; min-height: 360px; }
.blog-card__placeholder-icon { font-size: 48px; opacity: .6; }

.blog-card__body { padding: 22px 22px 20px; flex: 1; display: flex; flex-direction: column; }

.blog-card__cat {
  display: inline-block;
  font-size: 10.5px; font-weight: 800; letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--cat-color, var(--blue));
  background: color-mix(in srgb, var(--cat-color, var(--blue)) 10%, white);
  padding: 4px 10px; border-radius: 99px;
  margin-bottom: 10px;
}

.blog-card__title {
  font-family: var(--font-h); font-size: 18px; font-weight: 700;
  color: var(--t1); line-height: 1.3; letter-spacing: -.02em;
  margin-bottom: 10px; flex: 0;
}
.blog-card--featured .blog-card__title { font-size: clamp(20px, 2.5vw, 26px); margin-bottom: 14px; }
.blog-card__title a { color: inherit; text-decoration: none; }
.blog-card__title a:hover { color: var(--blue); }

.blog-card__excerpt {
  font-size: 14px; color: var(--t3); line-height: 1.65;
  margin-bottom: 18px; flex: 1;
}

.blog-card__meta {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  font-size: 12px; color: var(--t3); margin-top: auto;
}
.blog-card__date { }
.blog-card__read { }
.blog-card__link {
  margin-left: auto; font-size: 13px; font-weight: 700;
  color: var(--blue); text-decoration: none;
  display: flex; align-items: center; gap: 4px;
  transition: gap .15s;
}
.blog-card__link:hover { gap: 8px; }

.blog-card__cta {
  display: inline-flex; align-items: center; gap: 5px;
  margin-top: 16px; font-size: 13px; font-weight: 700;
  color: var(--blue); text-decoration: none;
  transition: gap .15s;
}
.blog-card__cta:hover { gap: 9px; color: var(--navy); }

@keyframes blogCardIn {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: none; }
}

/* ── PAGINATION ── */
.blog-pagination { margin: 52px 0 0; display: flex; justify-content: center; }
.blog-pagination ul { display: flex; gap: 8px; list-style: none; padding: 0; margin: 0; flex-wrap: wrap; }
.blog-pagination ul li a,
.blog-pagination ul li span {
  display: flex; align-items: center; justify-content: center;
  width: 42px; height: 42px; border-radius: var(--r8);
  border: 1.5px solid var(--border); font-size: 14px;
  font-weight: 600; color: var(--t2); text-decoration: none;
  transition: all .15s;
}
.blog-pagination ul li a:hover { border-color: var(--blue); color: var(--blue); }
.blog-pagination ul li .current { background: var(--blue); border-color: var(--blue); color: #fff; }
.blog-pagination ul li .prev, .blog-pagination ul li .next { width: auto; padding: 0 16px; gap: 6px; }

/* ── CTA STRIP ── */
.blog-cta-strip {
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px; flex-wrap: wrap;
  margin-top: 64px;
  background: linear-gradient(135deg, var(--navy), #0a3a6e);
  border-radius: var(--r20); padding: 36px 40px;
  box-shadow: var(--s3);
}
.blog-cta-strip__title { font-family: var(--font-h); font-size: 22px; font-weight: 800; color: #fff; margin-bottom: 6px; }
.blog-cta-strip__sub   { font-size: 14px; color: rgba(255,255,255,.55); font-weight: 300; }
.blog-cta-strip__btn {
  flex-shrink: 0;
  display: inline-flex; align-items: center; gap: 8px;
  background: linear-gradient(135deg, var(--green), #00bb77);
  color: var(--night); font-size: 15px; font-weight: 800;
  padding: 14px 28px; border-radius: var(--r10);
  text-decoration: none; transition: all .2s;
  box-shadow: 0 4px 18px rgba(0,217,139,.3);
}
.blog-cta-strip__btn:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(0,217,139,.45); color: var(--night); }

/* ── VIDE ── */
.blog-empty { text-align: center; padding: 80px 20px; color: var(--t3); }
.blog-empty__icon { font-size: 48px; margin-bottom: 16px; }

/* ═══════════════════════════════════════════
   ARTICLE SINGLE
═══════════════════════════════════════════ */

.single-blog { background: #fff; }

/* HERO ARTICLE */
.article-hero {
  position: relative; min-height: 420px;
  display: flex; align-items: flex-end;
  background: var(--navy);
  overflow: hidden;
}
.article-hero__bg { position: absolute; inset: 0; }
.article-hero__bg img { width: 100%; height: 100%; object-fit: cover; }
.article-hero__bg-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, rgba(3,13,24,.3) 0%, rgba(3,13,24,.85) 100%);
}
.article-hero__inner {
  position: relative; z-index: 1;
  max-width: 820px; width: 100%;
  margin: 0 auto; padding: 40px var(--pad) 52px;
}

/* Breadcrumb */
.article-breadcrumb {
  display: flex; align-items: center; gap: 8px;
  font-size: 12px; color: rgba(255,255,255,.45);
  margin-bottom: 18px; flex-wrap: wrap;
}
.article-breadcrumb a { color: rgba(255,255,255,.55); text-decoration: none; transition: color .15s; }
.article-breadcrumb a:hover { color: #fff; }

/* Badge catégorie */
.article-cat-badge {
  display: inline-flex; align-items: center;
  font-size: 11px; font-weight: 800; letter-spacing: .07em;
  text-transform: uppercase; color: #fff;
  padding: 5px 14px; border-radius: 99px;
  margin-bottom: 16px; opacity: .95;
}

/* Titre article */
.article-title {
  font-family: var(--font-h); font-size: clamp(26px, 4vw, 42px);
  font-weight: 800; color: #fff; line-height: 1.18;
  letter-spacing: -.035em; margin-bottom: 20px;
}

/* Meta */
.article-meta {
  display: flex; align-items: center; gap: 10px;
  font-size: 13px; color: rgba(255,255,255,.5);
}
.article-meta__sep { opacity: .4; }

/* LAYOUT ARTICLE */
.article-layout {
  display: grid; grid-template-columns: 1fr 320px;
  gap: 52px; align-items: start;
  max-width: 1100px; margin: 0 auto;
  padding: 52px var(--pad) 80px;
}

/* LEAD / CHAPEAU */
.article-lead {
  font-size: 18px; line-height: 1.75; color: var(--t2);
  font-weight: 400; border-left: 4px solid var(--blue);
  padding-left: 20px; margin-bottom: 36px;
  font-style: italic;
}

/* TABLE DES MATIÈRES */
.article-toc {
  background: var(--off); border: 1px solid var(--border);
  border-radius: var(--r16); padding: 20px 24px;
  margin-bottom: 40px;
}
.article-toc__title {
  font-size: 13px; font-weight: 700; color: var(--t1);
  text-transform: uppercase; letter-spacing: .06em; margin-bottom: 14px;
}
.article-toc__list { padding-left: 0; margin: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; }
.article-toc__list li a {
  font-size: 13.5px; color: var(--t2); text-decoration: none;
  padding: 4px 8px; border-radius: var(--r8); display: block;
  transition: background .12s, color .12s;
  border-left: 2px solid transparent;
}
.article-toc__list li a:hover,
.article-toc__list li a.active {
  background: var(--mist); color: var(--blue);
  border-left-color: var(--blue);
}
.article-toc__list li.toc-sub a { padding-left: 20px; font-size: 13px; color: var(--t3); }

/* CONTENU ARTICLE */
.article-content {
  font-size: 16px; line-height: 1.85; color: var(--t2);
}
.article-content h2 {
  font-family: var(--font-h); font-size: clamp(20px,2.5vw,26px);
  font-weight: 800; color: var(--t1); letter-spacing: -.025em;
  margin: 44px 0 16px; padding-top: 8px;
  border-bottom: 2px solid var(--border); padding-bottom: 12px;
}
.article-content h3 {
  font-family: var(--font-h); font-size: clamp(16px,2vw,20px);
  font-weight: 700; color: var(--t1); margin: 32px 0 12px;
}
.article-content p { margin-bottom: 18px; }
.article-content ul, .article-content ol {
  margin: 14px 0 20px; padding-left: 1.5em;
}
.article-content li { margin-bottom: 8px; line-height: 1.7; }
.article-content li::marker { color: var(--blue); font-weight: 700; }
.article-content strong { font-weight: 700; color: var(--t1); }
.article-content a { color: var(--blue); text-decoration: underline; }
.article-content a:hover { color: var(--navy); }
.article-content blockquote {
  border-left: 4px solid var(--blue);
  background: var(--mist); border-radius: 0 var(--r8) var(--r8) 0;
  padding: 18px 22px; margin: 28px 0; font-style: italic;
  font-size: 17px; color: var(--t2);
}
.article-content img {
  width: 100%; border-radius: var(--r12);
  margin: 28px 0; box-shadow: var(--s2);
}
.article-content table {
  width: 100%; border-collapse: collapse;
  margin: 24px 0; font-size: 14px;
}
.article-content th {
  background: var(--navy); color: #fff;
  padding: 12px 16px; text-align: left; font-weight: 700;
}
.article-content td { padding: 11px 16px; border-bottom: 1px solid var(--border); }
.article-content tr:nth-child(even) td { background: var(--off); }

/* Note box dans le contenu */
.article-content .note-box {
  background: linear-gradient(135deg, rgba(0,87,255,.04), rgba(56,182,255,.03));
  border: 1px solid rgba(0,87,255,.1);
  border-left: 4px solid var(--blue);
  border-radius: 0 var(--r8) var(--r8) 0;
  padding: 14px 18px; margin: 24px 0;
  font-size: 14px; line-height: 1.65;
}
.article-content .note-box.warning {
  border-left-color: var(--solar);
  background: rgba(255,184,0,.05);
}

/* TAGS */
.article-tags {
  font-size: 13px; color: var(--t3);
  margin: 32px 0; padding-top: 24px;
  border-top: 1px solid var(--border);
}

/* CTA BOX dans article */
.article-cta-box {
  display: flex; align-items: flex-start; gap: 18px;
  background: linear-gradient(135deg, var(--navy), #0a3a6e);
  border-radius: var(--r16); padding: 26px 28px;
  margin: 40px 0;
}
.article-cta-box__icon { font-size: 28px; flex-shrink: 0; margin-top: 2px; }
.article-cta-box__content { flex: 1; }
.article-cta-box__content strong { color: #fff; font-size: 16px; font-family: var(--font-h); display: block; margin-bottom: 6px; }
.article-cta-box__content p { color: rgba(255,255,255,.55); font-size: 13.5px; margin: 0; line-height: 1.6; }
.article-cta-box__btn {
  flex-shrink: 0; align-self: center;
  background: linear-gradient(135deg, var(--green), #00bb77);
  color: var(--night); font-size: 14px; font-weight: 800;
  padding: 12px 22px; border-radius: var(--r8);
  text-decoration: none; white-space: nowrap;
  transition: all .2s; box-shadow: 0 4px 14px rgba(0,217,139,.28);
}
.article-cta-box__btn:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(0,217,139,.4); color: var(--night); }

/* PARTAGE */
.article-share {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  padding: 24px 0; border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  margin: 32px 0;
}
.article-share__label { font-size: 13px; font-weight: 700; color: var(--t2); margin-right: 4px; }
.article-share__btn {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 8px 16px; border-radius: 99px;
  font-size: 13px; font-weight: 600; text-decoration: none;
  transition: all .15s; border: 1.5px solid transparent;
}
.article-share__btn--fb { background: #1877f220; color: #1877f2; border-color: #1877f230; }
.article-share__btn--fb:hover { background: #1877f2; color: #fff; }
.article-share__btn--tw { background: #1da1f220; color: #1da1f2; border-color: #1da1f230; }
.article-share__btn--tw:hover { background: #1da1f2; color: #fff; }
.article-share__btn--li { background: #0a66c220; color: #0a66c2; border-color: #0a66c230; }
.article-share__btn--li:hover { background: #0a66c2; color: #fff; }

/* NAV ARTICLE */
.article-nav {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 16px; margin: 32px 0 0;
}
.article-nav__item {
  display: flex; flex-direction: column; gap: 6px;
  padding: 16px 20px; border-radius: var(--r12);
  border: 1.5px solid var(--border); text-decoration: none;
  transition: all .2s;
}
.article-nav__item:hover { border-color: var(--blue); background: var(--mist); }
.article-nav__item--next { text-align: right; }
.article-nav__dir { font-size: 11px; font-weight: 700; color: var(--t3); text-transform: uppercase; letter-spacing: .06em; }
.article-nav__title { font-size: 14px; font-weight: 600; color: var(--t1); line-height: 1.4; }

/* SIDEBAR ARTICLE */
.article-sidebar { position: sticky; top: 84px; display: flex; flex-direction: column; gap: 16px; }

.article-sb-cta {
  background: linear-gradient(135deg, var(--blue), #1565c0);
  border-radius: var(--r16); padding: 24px; text-align: center; color: #fff;
}
.article-sb-cta__icon { font-size: 32px; margin-bottom: 12px; }
.article-sb-cta h3 { font-family: var(--font-h); font-size: 17px; font-weight: 700; color: #fff; margin-bottom: 8px; }
.article-sb-cta p { font-size: 13px; opacity: .7; margin-bottom: 16px; font-weight: 300; }

/* Articles récents sidebar */
.article-sb-recents {
  background: #fff; border: 1px solid var(--border);
  border-radius: var(--r16); padding: 18px;
}
.article-sb-recents__title {
  font-size: 12px; font-weight: 700; text-transform: uppercase;
  letter-spacing: .06em; color: var(--t3); margin-bottom: 16px; padding-bottom: 12px;
  border-bottom: 1px solid var(--border);
}
.sb-recent-item {
  display: flex; gap: 12px; align-items: flex-start;
  padding: 10px 0; border-bottom: 1px solid var(--border);
  text-decoration: none; transition: background .12s;
}
.sb-recent-item:last-child { border: none; padding-bottom: 0; }
.sb-recent-item__img {
  width: 52px; height: 52px; object-fit: cover;
  border-radius: var(--r8); flex-shrink: 0;
}
.sb-recent-item__placeholder {
  width: 52px; height: 52px; border-radius: var(--r8);
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; font-weight: 700; color: rgba(0,0,0,.3);
  flex-shrink: 0;
}
.sb-recent-item__body { display: flex; flex-direction: column; gap: 3px; }
.sb-recent-item__cat { font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.sb-recent-item__title { font-size: 13px; font-weight: 600; color: var(--t1); line-height: 1.4; }
.sb-recent-item:hover .sb-recent-item__title { color: var(--blue); }

/* ARTICLES LIÉS */
.article-related {
  background: var(--off); border-top: 1px solid var(--border); padding: 64px 0;
}
.article-related__inner { max-width: 1100px; margin: 0 auto; padding: 0 var(--pad); }
.article-related__title {
  font-family: var(--font-h); font-size: clamp(22px, 3vw, 30px);
  font-weight: 800; color: var(--t1); letter-spacing: -.025em;
  margin-bottom: 36px; text-align: center;
}
.article-related__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }

.related-card {
  background: #fff; border: 1px solid var(--border);
  border-radius: var(--r16); overflow: hidden;
  text-decoration: none; display: flex; flex-direction: column;
  transition: transform .25s var(--ease), box-shadow .25s;
  box-shadow: var(--s1);
}
.related-card:hover { transform: translateY(-4px); box-shadow: var(--s3); }
.related-card__img-wrap { aspect-ratio: 16/9; overflow: hidden; }
.related-card__img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.related-card:hover img { transform: scale(1.05); }
.related-card__placeholder { display: flex; align-items: center; justify-content: center; aspect-ratio: 16/9; }
.related-card__placeholder-icon { font-size: 36px; opacity: .5; }
.related-card__body { padding: 20px; flex: 1; display: flex; flex-direction: column; gap: 8px; }
.related-card__cat { font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.related-card__title { font-family: var(--font-h); font-size: 16px; font-weight: 700; color: var(--t1); line-height: 1.35; flex: 1; }
.related-card:hover .related-card__title { color: var(--blue); }
.related-card__link { font-size: 13px; font-weight: 700; color: var(--blue); margin-top: auto; }

/* ═══ RESPONSIVE ═══ */
@media (max-width: 1024px) {
  .blog-grid { grid-template-columns: repeat(2, 1fr); }
  .blog-card--featured { grid-template-columns: 1fr; }
  .blog-card--featured .blog-card__img-wrap { min-height: 260px; }
  .article-layout { grid-template-columns: 1fr; gap: 36px; }
  .article-sidebar { position: static; }
  .article-related__grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 768px) {
  .blog-grid { grid-template-columns: 1fr; }
  .blog-hero { padding: 52px var(--pad) 44px; }
  .blog-hero__stats { gap: 24px; }
  .blog-cta-strip { flex-direction: column; text-align: center; }
  .article-hero { min-height: 320px; }
  .article-title { font-size: clamp(22px, 6vw, 30px); }
  .article-layout { padding: 32px var(--pad) 48px; }
  .article-nav { grid-template-columns: 1fr; }
  .article-related__grid { grid-template-columns: 1fr; }
  .article-cta-box { flex-direction: column; }
  .article-cta-box__btn { align-self: stretch; text-align: center; justify-content: center; }
}

@media (max-width: 480px) {
  .blog-filter { font-size: 12px; padding: 7px 13px; }
  .blog-card__body { padding: 16px; }
  .article-hero__inner { padding-bottom: 36px; }
  .blog-cta-strip { padding: 24px 20px; border-radius: var(--r16); }
}


/* ── blog-premium.css ── */

/* Blog premium — listings, archives, search, single articles */
.nhf-blog-shell{background:linear-gradient(180deg,#f8fafc 0%,#fff 35%);min-height:60vh}
.nhf-blog-hero{position:relative;overflow:hidden;padding:clamp(56px,8vw,104px) var(--pad,24px) clamp(36px,5vw,64px);border-bottom:1px solid #e2e8f0}
.nhf-blog-hero:before{content:"";position:absolute;right:-140px;bottom:-260px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(0,179,107,.14),transparent 68%)}
.nhf-blog-hero__inner{position:relative;max-width:var(--wrap,1200px);margin:0 auto}
.nhf-blog-kicker{display:inline-flex;margin-bottom:16px;padding:7px 12px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:12px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.nhf-blog-hero h1{max-width:850px;margin:0 0 14px;color:#0f172a;font-size:clamp(34px,5vw,64px);line-height:1.02;letter-spacing:-.055em}
.nhf-blog-hero p{max-width:740px;margin:0;color:#475569;font-size:clamp(16px,2vw,19px);line-height:1.75}
.nhf-blog-layout{max-width:var(--wrap,1200px);margin:0 auto;padding:clamp(34px,5vw,70px) var(--pad,24px);display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(28px,4vw,48px);align-items:start}
.nhf-blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.nhf-post-card{display:flex;flex-direction:column;min-height:100%;overflow:hidden;border:1px solid #e2e8f0;border-radius:24px;background:#fff;box-shadow:0 16px 46px rgba(15,23,42,.07);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.nhf-post-card:hover{transform:translateY(-4px);border-color:rgba(0,179,107,.28);box-shadow:0 24px 64px rgba(15,23,42,.11)}
.nhf-post-card__media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#ecfdf5,#dbeafe)}
.nhf-post-card__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .35s ease}
.nhf-post-card:hover .nhf-post-card__media img{transform:scale(1.05)}
.nhf-post-card__placeholder{width:100%;height:100%;display:grid;place-items:center;color:#047857;font-weight:900;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.nhf-post-card__body{display:flex;flex-direction:column;gap:12px;padding:22px;flex:1}
.nhf-post-card__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#64748b;font-size:12px;font-weight:700}
.nhf-post-card__cat{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#f0fdf4;color:#047857;text-decoration:none}
.nhf-post-card__title{margin:0;font-size:clamp(20px,2.5vw,25px);line-height:1.16;letter-spacing:-.035em}
.nhf-post-card__title a{color:#0f172a;text-decoration:none}
.nhf-post-card__title a:hover{color:#047857}
.nhf-post-card__excerpt{margin:0;color:#475569;line-height:1.7;font-size:15px}
.nhf-post-card__read{margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:#047857;font-weight:850;text-decoration:none}
.nhf-post-card__read:after{content:"→";transition:transform .16s ease}
.nhf-post-card__read:hover:after{transform:translateX(3px)}
.nhf-blog-sidebar{position:sticky;top:110px;display:grid;gap:18px}
.nhf-blog-widget{padding:22px;border:1px solid #e2e8f0;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(15,23,42,.06)}
.nhf-blog-widget h2,.nhf-blog-widget h3{margin:0 0 14px;color:#0f172a;font-size:18px;letter-spacing:-.025em}
.nhf-blog-widget ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.nhf-blog-widget a{color:#334155;text-decoration:none;font-weight:700}
.nhf-blog-widget a:hover{color:#047857}
.nhf-blog-search{display:flex;gap:8px}
.nhf-blog-search input{min-width:0;flex:1;height:44px;border:1.5px solid #dbe5ef;border-radius:12px;padding:0 12px;outline:none}
.nhf-blog-search input:focus{border-color:#00b36b;box-shadow:0 0 0 4px rgba(0,179,107,.14)}
.nhf-blog-search button{height:44px;border:0;border-radius:12px;padding:0 14px;background:#00b36b;color:#fff;font-weight:850;cursor:pointer}
.nhf-blog-pagination{margin-top:34px}
.nhf-blog-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.nhf-blog-pagination a,.nhf-blog-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:#334155;text-decoration:none;font-weight:800}
.nhf-blog-pagination .current,.nhf-blog-pagination a:hover{background:#00b36b;border-color:#00b36b;color:#fff}
.nhf-single-shell{background:#fff}
.nhf-single-hero{padding:clamp(54px,8vw,100px) var(--pad,24px) clamp(28px,5vw,54px);background:linear-gradient(180deg,#f8fafc,#fff);border-bottom:1px solid #e2e8f0}
.nhf-single-hero__inner{max-width:920px;margin:0 auto}
.nhf-single-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px;color:#64748b;font-size:13px;font-weight:750}
.nhf-single-category{display:inline-flex;padding:6px 10px;border-radius:999px;background:#ecfdf5;color:#047857;text-decoration:none;font-weight:850}
.nhf-single-title{margin:0 0 18px;color:#0f172a;font-size:clamp(34px,5.8vw,70px);line-height:1;letter-spacing:-.06em}
.nhf-single-excerpt{max-width:780px;margin:0;color:#475569;font-size:clamp(17px,2vw,21px);line-height:1.72}
.nhf-single-cover{max-width:var(--wrap,1200px);margin:clamp(26px,5vw,54px) auto 0;padding:0 var(--pad,24px)}
.nhf-single-cover img{width:100%;max-height:560px;object-fit:cover;border-radius:28px;box-shadow:0 24px 70px rgba(15,23,42,.13)}
.nhf-single-layout{max-width:var(--wrap,1200px);margin:0 auto;padding:clamp(36px,5vw,72px) var(--pad,24px);display:grid;grid-template-columns:minmax(0,780px) 300px;gap:clamp(28px,5vw,70px);align-items:start}
.nhf-single-content{color:#334155;font-size:18px;line-height:1.82}
.nhf-single-content>*:first-child{margin-top:0}
.nhf-single-content h2,.nhf-single-content h3{color:#0f172a;line-height:1.14;letter-spacing:-.035em;margin-top:1.8em}
.nhf-single-content h2{font-size:clamp(28px,3vw,40px)}
.nhf-single-content h3{font-size:clamp(22px,2.5vw,30px)}
.nhf-single-content p{margin:1.05em 0}
.nhf-single-content a{color:#047857;font-weight:750}
.nhf-single-content ul,.nhf-single-content ol{padding-left:1.25em}
.nhf-single-content blockquote{margin:32px 0;padding:22px 24px;border-left:4px solid #00b36b;border-radius:16px;background:#f0fdf4;color:#14532d;font-weight:700}
.nhf-single-content table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #e2e8f0;border-radius:16px}
.nhf-single-content th,.nhf-single-content td{padding:14px;border-bottom:1px solid #e2e8f0}
.nhf-single-content th{background:#f8fafc;color:#0f172a}
.nhf-single-aside{position:sticky;top:110px;display:grid;gap:18px}
.nhf-author-box{display:flex;gap:14px;padding:20px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 14px 38px rgba(15,23,42,.06)}
.nhf-author-box__avatar img{width:56px;height:56px;border-radius:50%}
.nhf-author-box strong{display:block;color:#0f172a}
.nhf-author-box p{margin:5px 0 0;color:#64748b;font-size:13px;line-height:1.55}
.nhf-single-cta{padding:22px;border-radius:22px;background:linear-gradient(135deg,#047857,#00b36b);color:#fff;box-shadow:0 20px 54px rgba(0,179,107,.24)}
.nhf-single-cta h3{margin:0 0 8px;color:#fff}
.nhf-single-cta p{margin:0 0 16px;color:rgba(255,255,255,.86)}
.nhf-single-cta a{display:inline-flex;padding:11px 14px;border-radius:12px;background:#fff;color:#047857;text-decoration:none;font-weight:900}
.nhf-related{max-width:var(--wrap,1200px);margin:0 auto;padding:0 var(--pad,24px) clamp(56px,7vw,96px)}
.nhf-related h2{margin:0 0 22px;color:#0f172a;font-size:clamp(26px,3vw,38px);letter-spacing:-.04em}
.nhf-empty-state{padding:40px;border:1px solid #e2e8f0;border-radius:24px;background:#fff;text-align:center}
.nhf-empty-state h2{margin-top:0;color:#0f172a}
.nhf-empty-state p{color:#64748b}
@media(max-width:980px){.nhf-blog-layout,.nhf-single-layout{grid-template-columns:1fr}.nhf-blog-sidebar,.nhf-single-aside{position:static}}
@media(max-width:720px){.nhf-blog-grid{grid-template-columns:1fr}.nhf-blog-hero h1,.nhf-single-title{letter-spacing:-.045em}.nhf-single-content{font-size:16.5px}}
@media(prefers-reduced-motion:reduce){.nhf-post-card,.nhf-post-card__media img{transition:none}.nhf-post-card:hover{transform:none}}


/* ═══════════════════════════════════════════════════
   CARTES BLOG — nhf-blog-card-v95
   Utilisées dans : archive, single (articles liés)
   Desktop : 3 cols | Tablette : 2 cols | Mobile : 1 col
═══════════════════════════════════════════════════ */

/* Grille */
.nhf-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
@media (max-width: 900px) {
  .nhf-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 580px) {
  .nhf-blog-grid { grid-template-columns: 1fr; }
}

/* Carte */
.nhf-blog-card-v95 {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(15,23,42,.05);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  text-decoration: none;
  color: inherit;
}
.nhf-blog-card-v95:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(15,23,42,.10);
  border-color: rgba(0,179,107,.3);
}

/* Image */
.nhf-blog-card-v95__media {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: linear-gradient(135deg, #ecfdf5, #d1fae5);
  flex-shrink: 0;
  text-decoration: none;
}
.nhf-blog-card-v95__media img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
  display: block;
}
.nhf-blog-card-v95:hover .nhf-blog-card-v95__media img {
  transform: scale(1.04);
}
.nhf-blog-card-v95__placeholder {
  display: grid; place-items: center;
  width: 100%; height: 100%;
  color: #047857; opacity: .4;
}
.nhf-blog-card-v95__placeholder svg { width: 40px; height: 40px; }

/* Corps */
.nhf-blog-card-v95__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 20px 20px;
  flex: 1;
}

/* Meta (date + temps de lecture) */
.nhf-blog-card-v95__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  font-weight: 600;
  color: #94a3b8;
}
.nhf-blog-card-v95__meta span + span::before {
  content: '·';
  margin-right: 10px;
  color: #cbd5e1;
}

/* Titre */
.nhf-blog-card-v95__title {
  margin: 0;
  font-size: clamp(15px, 1.6vw, 18px);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.02em;
  color: #0f172a;
}
.nhf-blog-card-v95__title a {
  color: inherit;
  text-decoration: none;
  transition: color .15s;
}
.nhf-blog-card-v95__title a:hover { color: #00b36b; }

/* Excerpt */
.nhf-blog-card-v95__excerpt {
  margin: 0;
  font-size: 13.5px;
  color: #64748b;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Lien */
.nhf-blog-card-v95__link {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
  color: #00b36b;
  text-decoration: none;
  padding-top: 8px;
  border-top: 1px solid #f1f5f9;
  transition: gap .15s, color .15s;
}
.nhf-blog-card-v95__link:hover { gap: 10px; color: #047857; }

/* Section articles liés */
.nhf-related {
  max-width: var(--wrap, 1200px);
  margin: 0 auto;
  padding: 0 var(--pad, 24px) clamp(56px, 7vw, 96px);
}
.nhf-related h2 {
  margin: 0 0 24px;
  color: #0f172a;
  font-size: clamp(22px, 2.8vw, 34px);
  font-weight: 800;
  letter-spacing: -.035em;
}
.nhf-related .nhf-blog-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
@media (max-width: 820px) {
  .nhf-related .nhf-blog-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  .nhf-related .nhf-blog-grid { grid-template-columns: 1fr; }
}

/* Archive blog — 2 cols */
.nhf-blog-layout .nhf-blog-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 680px) {
  .nhf-blog-layout .nhf-blog-grid { grid-template-columns: 1fr; }
}

/* Articles liés — cartes compactes */
.nhf-related .nhf-blog-card-v95__media { aspect-ratio: 3/2; }
.nhf-related .nhf-blog-card-v95__body { padding: 12px 14px 14px; gap: 7px; }
.nhf-related .nhf-blog-card-v95__title { font-size: .92rem; }
.nhf-related .nhf-blog-card-v95__excerpt { font-size: .8rem; -webkit-line-clamp: 2; }
.nhf-related .nhf-blog-card-v95__link { font-size: .78rem; padding-top: 7px; }
.nhf-related .nhf-blog-card-v95__meta { font-size: .7rem; }


/* ── blog-page-premium.css ── */

/* Blog premium V4.8 — page /blog/ */
:root{--blog-green:#00b36b;--blog-green-dark:#047857;--blog-ink:#0f172a;--blog-muted:#64748b;--blog-border:#e2e8f0;--blog-shadow:0 18px 50px rgba(15,23,42,.08);--blog-shadow-hover:0 28px 80px rgba(15,23,42,.13)}
.nhf-blog-page,.nhf-blog-shell{background:radial-gradient(circle at 85% 0%,rgba(0,179,107,.10),transparent 32%),linear-gradient(180deg,#fff 0%,#f8fafc 46%,#fff 100%);min-height:70vh;color:var(--blog-ink)}
.nhf-blog-hero{position:relative;overflow:hidden;padding:clamp(54px,7vw,96px) var(--pad,24px) clamp(34px,5vw,62px)}
.nhf-blog-hero__inner{position:relative;max-width:var(--wrap,1200px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);gap:clamp(28px,5vw,64px);align-items:end}
.nhf-blog-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:7px 13px;border:1px solid rgba(0,179,107,.18);border-radius:999px;background:#ecfdf5;color:var(--blog-green-dark);font-size:12px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}
.nhf-blog-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--blog-green);box-shadow:0 0 0 5px rgba(0,179,107,.13)}
.nhf-blog-hero h1{max-width:850px;margin:0 0 16px;color:var(--blog-ink);font-size:clamp(36px,5.5vw,72px);line-height:.98;letter-spacing:-.065em}
.nhf-blog-hero p{max-width:740px;margin:0;color:#475569;font-size:clamp(16px,2vw,20px);line-height:1.75}
.nhf-blog-hero__panel{padding:22px;border:1px solid rgba(226,232,240,.9);border-radius:28px;background:rgba(255,255,255,.86);box-shadow:var(--blog-shadow);backdrop-filter:blur(16px)}
.nhf-blog-hero__panel strong{display:block;margin-bottom:8px;color:var(--blog-ink);font-size:18px;letter-spacing:-.03em}
.nhf-blog-hero__panel span{display:block;color:var(--blog-muted);font-size:14px;line-height:1.65}
.nhf-blog-hero__quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.nhf-blog-hero__quick a{display:inline-flex;padding:8px 11px;border-radius:999px;background:#f1f5f9;color:#334155;text-decoration:none;font-size:12px;font-weight:850}
.nhf-blog-hero__quick a:hover{background:#ecfdf5;color:var(--blog-green-dark)}
.nhf-blog-layout{max-width:var(--wrap,1200px);margin:0 auto;padding:0 var(--pad,24px) clamp(60px,8vw,110px);display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:clamp(28px,4vw,52px);align-items:start}
.nhf-blog-main{min-width:0}
.nhf-blog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.nhf-blog-toolbar h2{margin:0;font-size:clamp(22px,3vw,32px);letter-spacing:-.04em;color:var(--blog-ink)}
.nhf-blog-count{color:var(--blog-muted);font-size:13px;font-weight:750}
.nhf-blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.nhf-post-card{position:relative;display:flex;flex-direction:column;min-height:100%;overflow:hidden;border:1px solid var(--blog-border);border-radius:28px;background:#fff;box-shadow:var(--blog-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.nhf-post-card:hover{transform:translateY(-5px);border-color:rgba(0,179,107,.35);box-shadow:var(--blog-shadow-hover)}
.nhf-post-card__media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:radial-gradient(circle at 25% 20%,rgba(0,179,107,.22),transparent 24%),linear-gradient(135deg,#ecfdf5,#dbeafe 70%)}
.nhf-post-card__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .38s ease}
.nhf-post-card:hover .nhf-post-card__media img{transform:scale(1.055)}
.nhf-post-card__placeholder{width:100%;height:100%;display:grid;place-items:center;color:var(--blog-green-dark);font-weight:950;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.nhf-post-card__body{display:flex;flex-direction:column;gap:12px;padding:24px;flex:1}
.nhf-post-card__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--blog-muted);font-size:12px;font-weight:750}
.nhf-post-card__cat{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#ecfdf5;color:var(--blog-green-dark);text-decoration:none;font-weight:900}
.nhf-post-card__title{margin:0;font-size:clamp(20px,2.5vw,26px);line-height:1.12;letter-spacing:-.04em}
.nhf-post-card__title a{color:var(--blog-ink);text-decoration:none}
.nhf-post-card__title a:hover{color:var(--blog-green-dark)}
.nhf-post-card__excerpt{margin:0;color:#475569;line-height:1.72;font-size:15px}
.nhf-post-card__read{margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:var(--blog-green-dark);font-weight:900;text-decoration:none}
.nhf-post-card__read:after{content:"→";transition:transform .16s ease}
.nhf-post-card__read:hover:after{transform:translateX(4px)}
.nhf-blog-sidebar{position:sticky;top:112px;display:grid;gap:18px}
.nhf-blog-widget{padding:22px;border:1px solid var(--blog-border);border-radius:26px;background:rgba(255,255,255,.92);box-shadow:0 14px 40px rgba(15,23,42,.06)}
.nhf-blog-widget--cta{background:linear-gradient(135deg,#047857,#00b36b);color:#fff;border-color:transparent}
.nhf-blog-widget h2,.nhf-blog-widget h3{margin:0 0 14px;color:inherit;font-size:18px;letter-spacing:-.03em}
.nhf-blog-widget p{margin:0 0 16px;color:inherit;opacity:.86;line-height:1.6}
.nhf-blog-widget ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.nhf-blog-widget a{color:#334155;text-decoration:none;font-weight:750}
.nhf-blog-widget a:hover{color:var(--blog-green-dark)}
.nhf-blog-widget--cta a{display:inline-flex;padding:11px 14px;border-radius:13px;background:#fff;color:#047857;text-decoration:none;font-weight:950}
.nhf-blog-search{display:flex;gap:8px}
.nhf-blog-search input{min-width:0;flex:1;height:46px;border:1.5px solid #dbe5ef;border-radius:14px;padding:0 13px;outline:none;background:#fff}
.nhf-blog-search input:focus{border-color:var(--blog-green);box-shadow:0 0 0 4px rgba(0,179,107,.14)}
.nhf-blog-search button{height:46px;border:0;border-radius:14px;padding:0 15px;background:var(--blog-green);color:#fff;font-weight:900;cursor:pointer}
.nhf-blog-pagination{margin-top:34px}
.nhf-blog-pagination .nav-links,.nhf-blog-pagination{display:flex;flex-wrap:wrap;gap:8px}
.nhf-blog-pagination a,.nhf-blog-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 12px;border-radius:14px;border:1px solid var(--blog-border);background:#fff;color:#334155;text-decoration:none;font-weight:900}
.nhf-blog-pagination .current,.nhf-blog-pagination a:hover{background:var(--blog-green);border-color:var(--blog-green);color:#fff}
.nhf-empty-state{padding:44px;border:1px solid var(--blog-border);border-radius:26px;background:#fff;text-align:center;box-shadow:var(--blog-shadow)}
.nhf-empty-state h2{margin-top:0;color:var(--blog-ink)}
.nhf-empty-state p{color:var(--blog-muted)}
@media(max-width:1020px){.nhf-blog-hero__inner{grid-template-columns:1fr}.nhf-blog-layout{grid-template-columns:1fr}.nhf-blog-sidebar{position:static}}
@media(max-width:740px){.nhf-blog-grid{grid-template-columns:1fr}.nhf-blog-toolbar{align-items:flex-start;flex-direction:column}.nhf-blog-hero h1{letter-spacing:-.05em}}
@media(prefers-reduced-motion:reduce){.nhf-post-card,.nhf-post-card__media img{transition:none}.nhf-post-card:hover{transform:none}}


/* ── fixes/blog-rectangles.css ── */

/* V9.6.5 — Blog rectangles clean style */
body.page-template-page-blog,
body.blog,
body.archive,
body.search{
  background:#f6f9fc;
}

.nhf-blog-rect{
  width:min(1180px,100%);
  margin:0 auto;
  padding:48px 24px 90px;
}

.nhf-blog-rect__hero{
  margin:0 0 34px;
  padding:42px;
  border:1px solid #dde6ef;
  border-radius:28px;
  background:linear-gradient(135deg,#ffffff 0%,#eefbf5 100%);
  box-shadow:0 16px 45px rgba(15,23,42,.07);
}

.nhf-blog-rect__kicker{
  display:inline-flex;
  margin-bottom:12px;
  padding:8px 12px;
  border-radius:999px;
  background:#e6faf2;
  color:#047857;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.nhf-blog-rect__hero h1{
  margin:0;
  color:#0f172a;
  font-family:'Sora','Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:clamp(36px,5vw,64px);
  line-height:1;
  letter-spacing:-.06em;
}

.nhf-blog-rect__hero p{
  max-width:780px;
  margin:16px 0 0;
  color:#475569;
  font-size:17px;
  line-height:1.75;
}

.nhf-blog-rect__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.nhf-blog-rect-card{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  min-height:170px;
  border:1px solid #dde6ef;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 30px rgba(15,23,42,.055);
  overflow:hidden;
  text-decoration:none;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.nhf-blog-rect-card:hover{
  transform:translateY(-3px);
  border-color:rgba(0,179,107,.35);
  box-shadow:0 18px 48px rgba(15,23,42,.10);
}

.nhf-blog-rect-card__media{
  display:block;
  width:100%;
  height:100%;
  min-height:170px;
  background:linear-gradient(135deg,#ecfdf5,#dbeafe);
  overflow:hidden;
}

.nhf-blog-rect-card__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.nhf-blog-rect-card__placeholder{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:#047857;
  font-weight:900;
  font-size:34px;
}

.nhf-blog-rect-card__body{
  display:flex;
  flex-direction:column;
  padding:20px;
}

.nhf-blog-rect-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  margin-bottom:9px;
  color:#64748b;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.nhf-blog-rect-card__title{
  margin:0;
  color:#0f172a;
  font-family:'Sora','Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:22px;
  line-height:1.12;
  letter-spacing:-.04em;
}

.nhf-blog-rect-card:hover .nhf-blog-rect-card__title{
  color:#047857;
}

.nhf-blog-rect-card__excerpt{
  margin:10px 0 14px;
  color:#64748b;
  font-size:14.5px;
  line-height:1.65;
}

.nhf-blog-rect-card__more{
  margin-top:auto;
  color:#047857;
  font-size:14px;
  font-weight:900;
}

.nhf-blog-rect__pagination{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin:40px 0 0;
}

.nhf-blog-rect__pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 14px;
  border:1px solid #dde6ef;
  border-radius:14px;
  background:#fff;
  color:#0f172a;
  text-decoration:none;
  font-weight:900;
}

.nhf-blog-rect__pagination .page-numbers.current,
.nhf-blog-rect__pagination .page-numbers:hover{
  background:#00b36b;
  border-color:#00b36b;
  color:#fff;
}

.nhf-blog-rect__empty{
  padding:32px;
  border:1px solid #dde6ef;
  border-radius:22px;
  background:#fff;
  text-align:center;
  color:#475569;
}

@media(max-width:980px){
  .nhf-blog-rect__grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .nhf-blog-rect{
    padding:32px 16px 70px;
  }

  .nhf-blog-rect__hero{
    padding:28px 20px;
    border-radius:22px;
  }

  .nhf-blog-rect-card{
    grid-template-columns:1fr;
  }

  .nhf-blog-rect-card__media{
    min-height:190px;
    aspect-ratio:16/10;
  }
}


/* ── actualites/actualites.css ── */

/* V9.6.7 — Page Actualités propre et indépendante */

body.page-template-page-actualites {
  background: #f7fafc;
}

.nhf-actualites-page {
  width: min(1180px, 100%);
  margin: 0 auto;
  padding: 48px 24px 90px;
}

.nhf-actualites-hero {
  margin-bottom: 34px;
  padding: clamp(32px, 6vw, 64px);
  border: 1px solid #e2e8f0;
  border-radius: 28px;
  background: linear-gradient(135deg, #ffffff 0%, #eefbf5 100%);
  box-shadow: 0 18px 55px rgba(15, 23, 42, 0.08);
}

.nhf-actualites-hero__eyebrow {
  display: inline-flex;
  margin-bottom: 14px;
  padding: 8px 13px;
  border-radius: 999px;
  background: #ecfdf5;
  color: #047857;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.nhf-actualites-hero h1 {
  max-width: 840px;
  margin: 0;
  color: #0f172a;
  font-family: "Sora", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(38px, 5.8vw, 70px);
  line-height: 1;
  letter-spacing: -0.065em;
}

.nhf-actualites-hero p {
  max-width: 760px;
  margin: 18px 0 0;
  color: #475569;
  font-size: 18px;
  line-height: 1.75;
}

.nhf-actualites-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}

.nhf-actualites-item {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  min-height: 190px;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.nhf-actualites-item:hover {
  transform: translateY(-3px);
  border-color: rgba(0, 179, 107, 0.36);
  box-shadow: 0 20px 52px rgba(15, 23, 42, 0.11);
}

.nhf-actualites-item__image {
  display: block;
  min-height: 190px;
  background: linear-gradient(135deg, #ecfdf5, #dbeafe);
  overflow: hidden;
  text-decoration: none;
}

.nhf-actualites-item__image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 190px;
  object-fit: cover;
}

.nhf-actualites-item__placeholder {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  min-height: 190px;
  color: #047857;
  font-weight: 900;
}

.nhf-actualites-item__content {
  display: flex;
  flex-direction: column;
  padding: 24px;
}

.nhf-actualites-item__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-bottom: 10px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.nhf-actualites-item__title {
  margin: 0;
  color: #0f172a;
  font-family: "Sora", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.12;
  letter-spacing: -0.045em;
}

.nhf-actualites-item__title a {
  color: inherit;
  text-decoration: none;
}

.nhf-actualites-item__title a:hover {
  color: #047857;
}

.nhf-actualites-item__excerpt {
  margin: 12px 0 18px;
  color: #64748b;
  font-size: 15.5px;
  line-height: 1.7;
}

.nhf-actualites-item__link {
  display: inline-flex;
  width: max-content;
  margin-top: auto;
  padding: 10px 13px;
  border-radius: 13px;
  background: #ecfdf5;
  color: #047857;
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
}

.nhf-actualites-item__link:hover {
  background: #00b36b;
  color: #ffffff;
}

.nhf-actualites-pagination {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 42px auto 0;
}

.nhf-actualites-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #ffffff;
  color: #0f172a;
  text-decoration: none;
  font-weight: 900;
}

.nhf-actualites-pagination .page-numbers.current,
.nhf-actualites-pagination .page-numbers:hover {
  background: #00b36b;
  border-color: #00b36b;
  color: #ffffff;
}

.nhf-actualites-empty {
  padding: 34px;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  background: #ffffff;
  text-align: center;
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
}

@media (max-width: 760px) {
  .nhf-actualites-page {
    padding: 32px 16px 70px;
  }

  .nhf-actualites-hero {
    border-radius: 22px;
    padding: 28px 20px;
  }

  .nhf-actualites-item {
    grid-template-columns: 1fr;
  }

  .nhf-actualites-item__image,
  .nhf-actualites-item__image img,
  .nhf-actualites-item__placeholder {
    min-height: 210px;
  }
}
