/* =========================================================
   NÉO-JUSTICE — TEMPLATE BLOG
   CSS GLOBAL DES ARTICLES
   ========================================================= */

.nj-article-page{
  --black:#181818;
  --text:#292929;
  --muted:#707070;

  --accent:#e6d0c1;
  --accent-light:#f8f2ee;
  --accent-ultra:#fcf8f5;
  --accent-dark:#d6b8a5;

  --border:#e3d5cc;
  --soft:#faf7f4;

  --max:1120px;

  width:100%;
  max-width:none;

  margin:0;
  padding:0;

  background:#fff;
  color:var(--text);

  font-family:"Inter",Arial,sans-serif;
  line-height:1.75;

  -webkit-font-smoothing:antialiased;
}

.nj-article-page *{
  box-sizing:border-box;
}

.nj-article-page a{
  color:inherit;
  text-decoration:none;
}


/* =========================================================
   HERO
   ========================================================= */

.nj-article-page .hero{
  position:relative;
  overflow:hidden;

  padding:92px 24px 82px;

  background:
    linear-gradient(
      135deg,
      #f5f4f2 0%,
      #f8f2ee 52%,
      #f5f4f2 100%
    );
}

.nj-article-page .hero:after{
  content:"";

  position:absolute;

  width:430px;
  height:430px;

  right:-215px;
  top:-215px;

  border-radius:50%;

  background:var(--accent);
  opacity:.3;
}

.nj-article-page .hero-inner{
  position:relative;
  z-index:1;

  max-width:var(--max);

  margin:auto;
}

.nj-article-page .eyebrow{
  display:flex;
  align-items:center;
  gap:10px;

  margin-bottom:21px;

  color:#7d756f;

  font-size:12px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.nj-article-page .eyebrow:before{
  content:"";

  width:30px;
  height:3px;

  border-radius:4px;

  background:var(--accent);
}

.nj-article-page h1{
  max-width:970px;

  margin:0 0 25px;

  color:var(--black);

  font-size:clamp(40px,5.2vw,68px);
  line-height:1.06;
  letter-spacing:-.055em;
  font-weight:800;
}

.nj-article-page .hero-description{
  max-width:900px;

  margin:0;

  color:#555;

  font-size:23px;
  line-height:1.72;
}

.nj-article-page .hero-description p{
  margin:0;
}

.nj-article-page .editorial-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;

  margin-top:22px;

  color:#7b736e;

  font-size:14px;
  line-height:1.5;
  font-weight:600;
}

.nj-article-page .editorial-meta span{
  display:inline-flex;
  align-items:center;
}

.nj-article-page .editorial-meta span:not(:last-child):after{
  content:"";

  width:4px;
  height:4px;

  margin-left:18px;

  border-radius:50%;

  background:var(--accent-dark);
}

.nj-article-page .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;

  margin-top:34px;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.nj-article-page .btn,
.nj-article-page .cta-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:68px;

  padding:0 34px;

  border-radius:18px;

  font-size:21px;
  line-height:1.2;
  font-weight:750;

  transition:
    transform .2s ease,
    background .2s ease,
    border-color .2s ease;
}

.nj-article-page .btn:hover,
.nj-article-page .cta-link:hover{
  transform:translateY(-2px);
}

.nj-article-page .btn-primary{
  background:var(--accent);
  color:var(--black);

  border:1px solid var(--accent-dark);
}

.nj-article-page .btn-primary:hover{
  background:#ddc4b3;
}

.nj-article-page .btn-secondary{
  background:#fff;
  color:var(--black);

  border:1px solid var(--accent-dark);
}


/* =========================================================
   CONTENT
   ========================================================= */

.nj-article-page .content{
  width:100%;
  max-width:1240px;

  margin:auto;

  padding:76px 28px 110px;
}

.nj-article-page .article-body{
  width:100%;
  max-width:none;

  margin:0;
}

.nj-article-page .article-body p{
  margin:0 0 31px;

  font-size:25px;
  line-height:1.72;
}

.nj-article-page .article-body strong{
  color:var(--black);
  font-weight:750;
}

.nj-article-page .article-body h2{
  margin:82px 0 31px;

  color:var(--black);

  font-size:52px;
  line-height:1.1;
  letter-spacing:-.045em;
  font-weight:800;
}

.nj-article-page .article-body h3{
  margin:50px 0 20px;

  color:var(--black);

  font-size:36px;
  line-height:1.2;
  letter-spacing:-.03em;
  font-weight:800;
}

.nj-article-page .article-body ul,
.nj-article-page .article-body ol{
  margin:25px 0 40px;

  padding-left:29px;
}

.nj-article-page .article-body li{
  margin-bottom:14px;

  font-size:25px;
  line-height:1.7;
}

.nj-article-page .article-body a:not(.btn):not(.cta-link):not(.inline-cta-link){
  color:#8c6d5c;

  text-decoration:underline;
  text-underline-offset:3px;

  font-weight:500;
}


/* =========================================================
   DIRECT ANSWER
   ========================================================= */

.nj-article-page .direct-answer{
  margin:0 0 40px!important;

  padding:33px 36px;

  border-left:5px solid var(--accent);
  border-radius:0 18px 18px 0;

  background:var(--accent-ultra);

  font-size:25px!important;
  line-height:1.68!important;
}


/* =========================================================
   GRIDS
   ========================================================= */

.nj-article-page .quick-grid,
.nj-article-page .benefit-grid,
.nj-article-page .scheme-grid{
  display:grid;

  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:17px;

  margin:36px 0 54px;
}

.nj-article-page .quick-card,
.nj-article-page .benefit-card,
.nj-article-page .scheme-card{
  padding:30px;

  border:1px solid var(--border);
  border-radius:18px;

  background:#fff;
}

.nj-article-page .quick-card-label{
  display:block;

  margin-bottom:9px;

  color:#8c6d5c;

  font-size:14px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.nj-article-page .quick-card strong{
  display:block;

  margin-bottom:10px;

  font-size:30px;
  line-height:1.25;
}

.nj-article-page .quick-card span{
  color:var(--muted);

  font-size:21px;
  line-height:1.65;
}

.nj-article-page .benefit-card strong,
.nj-article-page .scheme-card strong{
  display:block;

  margin-bottom:11px;

  font-size:27px;
  line-height:1.3;
}

.nj-article-page .benefit-card p,
.nj-article-page .scheme-card p{
  margin:0;

  color:#606060;

  font-size:22px;
  line-height:1.68;
}

.nj-article-page .benefit-card{
  transition:.2s ease;
}

.nj-article-page .benefit-card:hover{
  transform:translateY(-2px);

  border-color:var(--accent);

  background:#fffdfb;
}


/* =========================================================
   TABLE OF CONTENTS
   ========================================================= */

.nj-article-page .toc{
  margin:48px 0 65px;

  padding:35px 36px;

  background:#fbf8f6;

  border:1px solid var(--accent);
  border-radius:20px;
}

.nj-article-page .toc strong{
  display:block;

  margin:0 0 20px;

  color:var(--black);

  font-size:29px;
}

.nj-article-page .toc ul{
  margin:0;

  padding-left:24px;

  columns:2;
  column-gap:46px;
}

.nj-article-page .toc li{
  margin-bottom:12px;

  font-size:22px;
  line-height:1.6;
}

.nj-article-page .toc a{
  color:var(--text)!important;

  text-decoration:none!important;
}


/* =========================================================
   HIGHLIGHT BOXES
   ========================================================= */

.nj-article-page .hl,
.nj-article-page .hl-law,
.nj-article-page .hl-warn{
  margin:46px 0;

  padding:31px 34px;

  border-left:5px solid var(--accent);
  border-radius:0 18px 18px 0;

  background:var(--accent-ultra);

  font-size:24px;
  line-height:1.68;
}

.nj-article-page .hl-law{
  border-left-color:#8c776a;

  background:#f7f2ef;
}

.nj-article-page .hl-warn{
  border-left-color:#b56b5d;

  background:#fff7f5;
}


/* =========================================================
   TABLES
   ========================================================= */

.nj-article-page .table-wrap{
  width:100%;

  overflow-x:auto;
  -webkit-overflow-scrolling:touch;

  margin:40px 0 56px;

  border:1px solid var(--border);
  border-radius:18px;
}

.nj-article-page table{
  width:100%;
  min-width:650px;

  border-collapse:collapse;

  font-size:21px;
}

.nj-article-page thead th{
  padding:19px 20px;

  text-align:left;

  background:var(--accent-light);

  border-bottom:2px solid var(--accent-dark);

  font-size:15px;
  line-height:1.45;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.nj-article-page tbody td{
  padding:20px;

  border-bottom:1px solid #eee;

  vertical-align:top;

  font-size:21px;
  line-height:1.65;
}

.nj-article-page tbody tr:last-child td{
  border-bottom:0;
}


/* =========================================================
   INLINE CTA
   ========================================================= */

.nj-article-page .inline-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:30px;

  margin:46px 0 56px;

  padding:31px 33px;

  background:var(--soft);

  border:1px solid var(--border);
  border-radius:20px;
}

.nj-article-page .inline-cta-text{
  flex:1;
}

.nj-article-page .inline-cta-title{
  display:block;

  margin-bottom:8px;

  color:var(--black);

  font-size:28px;
  line-height:1.3;
  font-weight:750;
}

.nj-article-page .inline-cta-sub{
  color:var(--muted);

  font-size:22px;
  line-height:1.65;
}

.nj-article-page .inline-cta-link{
  flex:0 0 auto;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:66px;

  padding:0 32px;

  border-radius:18px;

  background:var(--accent);

  border:1px solid var(--accent-dark);

  color:var(--black)!important;

  font-size:20px;
  line-height:1.25;
  font-weight:750;

  text-decoration:none!important;
}


/* =========================================================
   PREMIUM CTA
   ========================================================= */

.nj-article-page .cta-premium{
  margin:58px 0;

  padding:40px;

  border:1px solid var(--border);
  border-radius:22px;

  background:
    linear-gradient(
      135deg,
      #f8f2ee 0%,
      #fcf8f5 100%
    );

  box-shadow:
    0 20px 50px rgba(20,15,10,.055),
    0 4px 12px rgba(20,15,10,.025);
}

.nj-article-page .cta-premium .cta-kicker{
  margin-bottom:10px;

  color:#8c6d5c;

  font-size:14px;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.nj-article-page .cta-premium h3{
  margin:0 0 14px;

  font-size:36px;
  line-height:1.22;
}

.nj-article-page .cta-premium p{
  margin:0 0 28px;

  color:#626262;

  font-size:23px;
  line-height:1.68;
}

.nj-article-page .cta-premium-actions{
  display:flex;
  flex-wrap:wrap;

  gap:12px;
}

.nj-article-page .cta-premium .cta-link{
  width:auto;

  min-height:68px;

  padding:0 34px;

  background:var(--accent);

  border:1px solid var(--accent-dark);

  color:var(--black);

  font-size:21px;
  line-height:1.2;
  font-weight:750;

  border-radius:18px;

  text-decoration:none;
}

.nj-article-page .cta-premium .cta-link.secondary{
  background:#fff;
}


/* =========================================================
   SOURCES
   ========================================================= */

.nj-article-page .sources-box{
  margin:60px 0;

  padding:36px;

  background:var(--accent-ultra);

  border:1px solid var(--accent);
  border-radius:20px;
}

.nj-article-page .sources-label{
  margin-bottom:10px;

  color:#8c6d5c;

  font-size:14px;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.nj-article-page .sources-box h3{
  margin:0 0 18px;

  font-size:31px;
  line-height:1.25;
}

.nj-article-page .sources-box p{
  margin:0 0 16px;

  font-size:22px;
  line-height:1.68;
}

.nj-article-page .sources-box ul{
  margin:20px 0 0;

  padding-left:25px;
}

.nj-article-page .sources-box li{
  margin-bottom:12px;

  font-size:22px;
  line-height:1.68;
}


/* =========================================================
   FAQ
   ========================================================= */

.nj-article-page .faq-item{
  padding:32px 0;

  border-bottom:1px solid var(--border);
}

.nj-article-page .faq-item:last-child{
  border-bottom:none;
}

.nj-article-page .faq-item h3{
  margin:0 0 13px;

  font-size:33px;
  line-height:1.28;
}

.nj-article-page .faq-item p{
  margin:0;

  font-size:24px;
  line-height:1.72;
}

/* =========================================================
   GUIDES UTILES — MAILLAGE INTERNE
   ========================================================= */

.nj-article-page .internal-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;

  margin:30px 0 18px;
  padding:0;
}

.nj-article-page .internal-link-card{
  position:relative;

  display:flex;
  flex-direction:column;
  justify-content:center;

  min-height:118px;

  padding:22px 58px 22px 23px;

  background:#faf7f4;

  border:1px solid #e9ded1;
  border-radius:17px;

  color:#181818!important;

  text-decoration:none!important;

  transition:
    transform .18s ease,
    background .18s ease,
    border-color .18s ease;
}

.nj-article-page .internal-link-card:hover{
  transform:translateY(-2px);

  background:#f7f0ea;
  border-color:#d6b8a5;
}

.nj-article-page .internal-link-card .quick-card-label{
  display:block;

  margin:0 0 10px;

  color:#8c6d5c;

  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800;

  letter-spacing:.12em;
  text-transform:uppercase;
}

.nj-article-page .internal-link-card strong{
  display:block;

  margin:0;

  color:#181818;

  font-size:19px!important;
  line-height:1.35!important;
  font-weight:750;

  letter-spacing:-.018em;
}

.nj-article-page .internal-link-card:after{
  content:"→";

  position:absolute;

  right:20px;
  top:50%;

  transform:translateY(-50%);

  width:30px;
  height:30px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:#fff;
  border:1px solid #e9ded1;

  font-size:15px;
  font-weight:700;
}


/* MOBILE */

@media(max-width:700px){

  .nj-article-page .internal-links{
    grid-template-columns:1fr;
    gap:10px;
  }

  .nj-article-page .internal-link-card{
    min-height:96px;

    padding:18px 52px 18px 18px;
  }

  .nj-article-page .internal-link-card strong{
    font-size:18px!important;
  }

}


/* MOBILE */

@media(max-width:700px){

  .nj-article-page .internal-links{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .nj-article-page .internal-links > a,
  .nj-article-page .internal-links > li > a{
    min-height:94px!important;

    padding:18px 50px 18px 18px!important;
  }

  .nj-article-page .internal-links strong{
    font-size:18px!important;
  }

  .nj-article-page .internal-links > a:after,
  .nj-article-page .internal-links > li > a:after{
    right:17px;
  }

}

}


/* =========================================================
   DISCLAIMER
   ========================================================= */

.nj-article-page .footer-note{
  margin-top:62px;

  padding-top:25px;

  border-top:1px solid #eee;

  color:#777;

  font-size:17px;
  line-height:1.7;
  text-align:center;
}


/* =========================================================
   SCHEME NUMBER
   ========================================================= */

.nj-article-page .scheme-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-width:40px;
  height:40px;

  padding:0 11px;
  margin-bottom:16px;

  border-radius:999px;

  background:var(--accent-light);

  border:1px solid var(--accent);

  color:#7c6455;

  font-size:14px;
  font-weight:800;
}


/* =========================================================
   STAT NOTE
   ========================================================= */

.nj-article-page .stat-note{
  margin:40px 0 56px;

  padding:36px;

  border-radius:20px;

  background:#181818;
  color:#fff;
}

.nj-article-page .stat-note strong{
  color:#fff;

  font-size:39px;
  line-height:1.22;
  letter-spacing:-.03em;
}

.nj-article-page .stat-note p{
  margin:13px 0 0;

  color:#eee;

  font-size:23px;
  line-height:1.68;
}


/* =========================================================
   KEYWORD PILLS
   ========================================================= */

.nj-article-page .keyword-pill-row{
  display:flex;
  flex-wrap:wrap;

  gap:10px;

  margin:26px 0 42px;
}

.nj-article-page .keyword-pill{
  display:inline-flex;
  align-items:center;

  min-height:38px;

  padding:9px 14px;

  border-radius:999px;

  background:var(--accent-ultra);

  border:1px solid var(--border);

  color:#6d5a4e;

  font-size:15px;
  font-weight:650;
}


/* =========================================================
   STEPS
   ========================================================= */

.nj-article-page .steps{
  counter-reset:njstep;

  list-style:none!important;

  padding:0!important;

  margin:32px 0 54px!important;
}

.nj-article-page .steps li{
  counter-increment:njstep;

  position:relative;

  margin:0 0 15px!important;

  padding:26px 26px 26px 72px;

  border:1px solid var(--border);
  border-radius:18px;

  background:#fff;

  font-size:22px;
  line-height:1.68;
}

.nj-article-page .steps li:before{
  content:counter(njstep);

  position:absolute;

  left:21px;
  top:24px;

  width:34px;
  height:34px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:var(--accent);

  color:var(--black);

  font-size:14px;
  font-weight:800;
}

.nj-article-page .steps li strong{
  display:block;

  margin-bottom:6px;

  font-size:24px;
}

.nj-article-page .steps li span{
  color:#666;

  font-size:22px;
  line-height:1.68;
}


/* =========================================================
   MOBILE STICKY
   ========================================================= */

.nj-article-page .mobile-sticky{
  display:none;
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */
/* =========================================================
   MOBILE — NÉO-JUSTICE BLOG
   ========================================================= */

@media(max-width:700px){

  body.single-post{
    padding-bottom:82px!important;
  }

  .nj-article-page{
    width:100%!important;
    overflow-x:hidden!important;
  }

  /* HERO */
  .nj-article-page .hero{
    width:100%!important;
    padding:54px 16px 50px!important;
  }

  .nj-article-page .hero-inner{
    width:100%!important;
    max-width:none!important;
  }

  .nj-article-page .eyebrow{
    margin-bottom:17px!important;

    font-size:12px!important;
  }

  .nj-article-page h1{
    max-width:none!important;

    margin-bottom:22px!important;

    font-size:40px!important;
    line-height:1.08!important;
    letter-spacing:-.045em!important;
  }

  .nj-article-page .hero-description{
    max-width:none!important;

    font-size:19px!important;
    line-height:1.68!important;
  }

  .nj-article-page .editorial-meta{
    gap:6px 14px!important;

    margin-top:20px!important;

    font-size:13px!important;
    line-height:1.5!important;
  }

  .nj-article-page .editorial-meta span:not(:last-child):after{
    display:none!important;
  }

  .nj-article-page .hero-actions{
    flex-direction:column!important;

    gap:10px!important;

    margin-top:28px!important;
  }

  .nj-article-page .hero .btn{
    width:100%!important;

    min-height:60px!important;

    padding:0 18px!important;

    font-size:18px!important;
    line-height:1.2!important;
    font-weight:750!important;

    border-radius:17px!important;

    text-align:center!important;
  }


  /* CONTENU */
  .nj-article-page .content{
    width:100%!important;
    max-width:none!important;

    margin:0!important;

    padding:48px 16px 78px!important;
  }

  .nj-article-page .article-body{
    width:100%!important;
    max-width:none!important;

    margin:0!important;
  }

  .nj-article-page .article-body p{
    margin:0 0 26px!important;

    font-size:19px!important;
    line-height:1.78!important;
  }

  .nj-article-page .article-body li{
    font-size:19px!important;
    line-height:1.72!important;
  }

  .nj-article-page .article-body h2{
    margin:58px 0 24px!important;

    font-size:34px!important;
    line-height:1.15!important;
    letter-spacing:-.035em!important;
  }

  .nj-article-page .article-body h3{
    margin:40px 0 17px!important;

    font-size:27px!important;
    line-height:1.22!important;
  }


  /* RÉPONSES DIRECTES */
  .nj-article-page .direct-answer{
    margin-bottom:34px!important;

    padding:23px 20px!important;

    border-left-width:4px!important;

    font-size:19px!important;
    line-height:1.72!important;
  }


  /* GRILLES */
  .nj-article-page .quick-grid,
  .nj-article-page .benefit-grid,
  .nj-article-page .scheme-grid,
  .nj-article-page .internal-links{
    grid-template-columns:1fr!important;

    gap:12px!important;
  }

  .nj-article-page .quick-card,
  .nj-article-page .benefit-card,
  .nj-article-page .scheme-card{
    padding:23px 20px!important;

    border-radius:17px!important;
  }

  .nj-article-page .quick-card-label{
    font-size:12px!important;
  }

  .nj-article-page .quick-card strong{
    font-size:25px!important;
  }

  .nj-article-page .quick-card span{
    font-size:17px!important;
    line-height:1.67!important;
  }

  .nj-article-page .benefit-card strong,
  .nj-article-page .scheme-card strong{
    font-size:22px!important;
  }

  .nj-article-page .benefit-card p,
  .nj-article-page .scheme-card p{
    font-size:18px!important;
    line-height:1.7!important;
  }


  /* SOMMAIRE */
  .nj-article-page .toc{
    margin:38px 0 50px!important;

    padding:25px 21px!important;

    border-radius:18px!important;
  }

  .nj-article-page .toc strong{
    margin-bottom:16px!important;

    font-size:23px!important;
  }

  .nj-article-page .toc ul{
    columns:1!important;

    padding-left:20px!important;
  }

  .nj-article-page .toc li{
    margin-bottom:9px!important;

    font-size:18px!important;
    line-height:1.55!important;
  }


  /* ENCADRÉS */
  .nj-article-page .hl,
  .nj-article-page .hl-law,
  .nj-article-page .hl-warn{
    margin:36px 0!important;

    padding:23px 20px!important;

    font-size:19px!important;
    line-height:1.7!important;
  }


  /* TABLEAUX */
  .nj-article-page .table-wrap{
    margin:34px 0 46px!important;
  }

  .nj-article-page table{
    min-width:620px!important;

    font-size:17px!important;
  }

  .nj-article-page thead th{
    font-size:13px!important;
  }

  .nj-article-page tbody td{
    font-size:17px!important;
    line-height:1.62!important;
  }


  /* CTA INLINE */
  .nj-article-page .inline-cta{
    flex-direction:column!important;
    align-items:stretch!important;

    gap:20px!important;

    margin:38px 0 48px!important;

    padding:25px 21px!important;
  }

  .nj-article-page .inline-cta-title{
    font-size:23px!important;
    line-height:1.3!important;
  }

  .nj-article-page .inline-cta-sub{
    font-size:18px!important;
    line-height:1.65!important;
  }

  .nj-article-page .inline-cta-link{
    width:100%!important;

    min-height:60px!important;

    padding:12px 18px!important;

    font-size:18px!important;
    line-height:1.25!important;

    text-align:center!important;
  }


  /* CTA PREMIUM */
  .nj-article-page .cta-premium{
    margin:44px 0!important;

    padding:27px 21px!important;
  }

  .nj-article-page .cta-premium .cta-kicker{
    font-size:12px!important;
  }

  .nj-article-page .cta-premium h3{
    font-size:28px!important;
    line-height:1.2!important;
  }

  .nj-article-page .cta-premium p{
    font-size:19px!important;
    line-height:1.68!important;
  }

  .nj-article-page .cta-premium-actions{
    flex-direction:column!important;
  }

  .nj-article-page .cta-premium .cta-link{
    width:100%!important;

    min-height:60px!important;

    padding:12px 18px!important;

    font-size:18px!important;

    text-align:center!important;
  }


  /* BLOC NOIR */
  .nj-article-page .stat-note{
    margin:34px 0 46px!important;

    padding:27px 22px!important;
  }

  .nj-article-page .stat-note strong{
    font-size:30px!important;
    line-height:1.22!important;
  }

  .nj-article-page .stat-note p{
    font-size:18px!important;
    line-height:1.7!important;
  }


  /* MOTS-CLÉS */
  .nj-article-page .keyword-pill{
    min-height:35px!important;

    padding:7px 11px!important;

    font-size:13px!important;
  }


  /* ÉTAPES */
  .nj-article-page .steps li{
    padding:22px 18px 22px 60px!important;

    font-size:18px!important;
  }

  .nj-article-page .steps li:before{
    left:16px!important;
    top:21px!important;
  }

  .nj-article-page .steps li strong{
    font-size:20px!important;
  }

  .nj-article-page .steps li span{
    font-size:18px!important;
    line-height:1.68!important;
  }


  /* FAQ */
  .nj-article-page .faq-item{
    padding:27px 0!important;
  }

  .nj-article-page .faq-item h3{
    margin-bottom:10px!important;

    font-size:25px!important;
    line-height:1.27!important;
  }

  .nj-article-page .faq-item p{
    font-size:19px!important;
    line-height:1.72!important;
  }


  /* SOURCES */
  .nj-article-page .sources-box{
    margin:48px 0!important;

    padding:26px 21px!important;
  }

  .nj-article-page .sources-label{
    font-size:12px!important;
  }

  .nj-article-page .sources-box h3{
    font-size:26px!important;
  }

  .nj-article-page .sources-box p,
  .nj-article-page .sources-box li{
    font-size:18px!important;
    line-height:1.7!important;
  }


  /* MAILLAGE */
  .nj-article-page .internal-links a{
    padding:20px!important;

    font-size:18px!important;
    line-height:1.5!important;
  }


  /* DISCLAIMER */
  .nj-article-page .footer-note{
    margin-top:48px!important;

    font-size:14px!important;
    line-height:1.65!important;

    text-align:left!important;
  }


  /* STICKY MOBILE */
  .nj-article-page .mobile-sticky{
    position:fixed!important;
    z-index:99999!important;

    left:0!important;
    right:0!important;
    bottom:0!important;

    display:block!important;

    padding:
      9px 14px
      calc(9px + env(safe-area-inset-bottom))!important;

    background:rgba(255,255,255,.96)!important;

    border-top:1px solid var(--border)!important;

    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;

    box-shadow:0 -8px 30px rgba(30,20,15,.07)!important;
  }

  .nj-article-page .mobile-sticky a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:100%!important;
    min-height:56px!important;

    padding:0 16px!important;

    border-radius:17px!important;

    background:var(--accent)!important;
    border:1px solid var(--accent-dark)!important;

    color:var(--black)!important;

    font-size:17px!important;
    line-height:1.25!important;
    font-weight:750!important;

    text-align:center!important;
  }

}


/* =========================================================
   TRÈS PETITS MOBILES
   ========================================================= */

@media(max-width:390px){

  .nj-article-page h1{
    font-size:36px!important;
  }

  .nj-article-page .article-body h2{
    font-size:31px!important;
  }

  .nj-article-page .article-body h3{
    font-size:25px!important;
  }

}
/* =========================================================
   NÉO-JUSTICE BLOG — HERO MARKETING / CARTE PRIX / PHOTO
   ========================================================= */


/* =========================================================
   HERO AVEC COLONNE DROITE
   ========================================================= */

.nj-article-page .hero-with-side .hero-inner{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);
  gap:62px;
  align-items:center;
}

.nj-article-page .hero-copy{
  min-width:0;
}


/* =========================================================
   CARTE PRIX
   ========================================================= */

.nj-article-page .hero-price-card{
  position:relative;

  width:100%;

  padding:34px 32px;

  background:rgba(255,255,255,.90);

  border:1px solid rgba(227,213,204,.96);
  border-radius:24px;

  box-shadow:
    0 24px 60px rgba(40,30,24,.09),
    0 5px 16px rgba(40,30,24,.04);

  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.nj-article-page .hero-price-card:before{
  content:"";

  position:absolute;

  top:0;
  left:26px;
  right:26px;

  height:1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,.95),
      transparent
    );
}

.nj-article-page .hero-price-label{
  margin-bottom:12px;

  color:#7d756f;

  font-size:13px;
  line-height:1.2;
  font-weight:800;

  letter-spacing:.10em;
  text-transform:uppercase;
}

.nj-article-page .hero-price-row{
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap;

  gap:10px;

  margin-bottom:17px;
}

.nj-article-page .hero-price{
  color:var(--black);

  font-size:52px;
  line-height:.95;
  font-weight:800;

  letter-spacing:-.055em;
}

.nj-article-page .hero-price-suffix{
  padding-bottom:5px;

  color:#706862;

  font-size:17px;
  line-height:1.2;
  font-weight:650;
}

.nj-article-page .hero-price-text{
  margin:0 0 24px!important;

  color:#5f5955;

  font-size:18px!important;
  line-height:1.6!important;
}

.nj-article-page .hero-price-benefits{
  display:grid;

  gap:13px;

  padding-top:21px;

  border-top:1px solid var(--border);
}

.nj-article-page .hero-price-benefit{
  display:flex;
  align-items:flex-start;

  gap:11px;

  color:#373330;

  font-size:17px;
  line-height:1.48;
  font-weight:550;
}

.nj-article-page .hero-price-check{
  flex:0 0 22px;

  width:22px;
  height:22px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin-top:1px;

  border-radius:50%;

  background:var(--accent-light);
  border:1px solid var(--accent);

  color:#735f52;

  font-size:12px;
  line-height:1;
  font-weight:800;
}


/* =========================================================
   PHOTO À DROITE DE LA HERO
   quand PAS de carte prix
   ========================================================= */

.nj-article-page .hero-featured{
  width:100%;

  overflow:hidden;

  border-radius:24px;

  border:1px solid var(--border);

  background:#fff;

  box-shadow:
    0 24px 60px rgba(40,30,24,.09),
    0 5px 16px rgba(40,30,24,.04);
}

.nj-article-page .hero-featured-image{
  display:block;

  width:100%;
  height:420px;

  object-fit:cover;
}


/* =========================================================
   PHOTO SOUS HERO
   quand CARTE PRIX + PHOTO
   ========================================================= */

.nj-article-page .featured-after-hero{
  width:100%;
  max-width:1240px;

  margin:46px auto 0;

  padding:0 28px;
}

.nj-article-page .featured-after-hero-image{
  display:block;

  width:100%;
  height:auto;
  max-height:580px;

  object-fit:cover;

  border-radius:24px;

  border:1px solid var(--border);

  box-shadow:
    0 20px 50px rgba(40,30,24,.065);
}


/* =========================================================
   HERO SANS COLONNE DROITE
   ========================================================= */

.nj-article-page .hero-simple .hero-inner{
  display:block;
}

.nj-article-page .hero-simple .hero-copy{
  max-width:1000px;
}


/* =========================================================
   TABLETTE
   ========================================================= */

@media(max-width:1000px){

  .nj-article-page .hero-with-side .hero-inner{
    grid-template-columns:1fr;

    gap:36px;
  }

  .nj-article-page .hero-price-card,
  .nj-article-page .hero-featured{
    max-width:680px;
  }

  .nj-article-page .hero-featured-image{
    height:390px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:700px){

  .nj-article-page .hero-with-side .hero-inner{
    display:grid;

    grid-template-columns:1fr;

    gap:28px;
  }


  /* CARTE PRIX */

  .nj-article-page .hero-price-card{
    width:100%;
    max-width:none;

    padding:26px 21px;

    border-radius:20px;

    box-shadow:
      0 16px 38px rgba(40,30,24,.075),
      0 3px 10px rgba(40,30,24,.035);
  }

  .nj-article-page .hero-price-label{
    margin-bottom:10px;

    font-size:11px;
  }

  .nj-article-page .hero-price-row{
    gap:8px;

    margin-bottom:15px;
  }

  .nj-article-page .hero-price{
    font-size:44px;
  }

  .nj-article-page .hero-price-suffix{
    padding-bottom:4px;

    font-size:15px;
  }

  .nj-article-page .hero-price-text{
    margin-bottom:20px!important;

    font-size:17px!important;
    line-height:1.6!important;
  }

  .nj-article-page .hero-price-benefits{
    gap:12px;

    padding-top:18px;
  }

  .nj-article-page .hero-price-benefit{
    gap:10px;

    font-size:16px;
    line-height:1.5;
  }

  .nj-article-page .hero-price-check{
    flex-basis:21px;

    width:21px;
    height:21px;

    font-size:11px;
  }


  /* PHOTO DANS HERO */

  .nj-article-page .hero-featured{
    width:100%;
    max-width:none;

    border-radius:20px;
  }

  .nj-article-page .hero-featured-image{
    height:auto;
    aspect-ratio:16/10;

    object-fit:cover;
  }


  /* PHOTO SOUS HERO */

  .nj-article-page .featured-after-hero{
    width:100%;

    margin:26px auto 0;

    padding:0 16px;
  }

  .nj-article-page .featured-after-hero-image{
    width:100%;
    height:auto;

    max-height:none;

    border-radius:18px;
  }

}


/* =========================================================
   PETITS MOBILES
   ========================================================= */

@media(max-width:390px){

  .nj-article-page .hero-price-card{
    padding:24px 19px;
  }

  .nj-article-page .hero-price{
    font-size:41px;
  }

}/* =========================================================
   CARTES CAS / SITUATIONS
   ========================================================= */

.nj-article-page .benefit-grid{
  align-items:stretch;
}

.nj-article-page .benefit-card{
  display:flex;
  flex-direction:column;

  min-height:245px;

  padding:28px;

  background:#fff;

  border:1px solid var(--border);
  border-radius:20px;
}

.nj-article-page .benefit-card h3{
  margin:4px 0 12px!important;

  font-size:27px!important;
  line-height:1.2!important;

  text-decoration:none!important;
}

.nj-article-page .benefit-card p{
  flex:1;

  margin:0 0 22px!important;

  font-size:20px!important;
  line-height:1.65!important;
}

.nj-article-page .benefit-card-link{
  display:inline-flex;

  margin-top:auto;

  color:#8c6d5c!important;

  font-size:17px!important;
  line-height:1.4!important;
  font-weight:700!important;

  text-decoration:none!important;
}

.nj-article-page .benefit-card-link:hover{
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}


@media(max-width:700px){

  .nj-article-page .benefit-card{
    min-height:0;

    padding:22px 20px;
  }

  .nj-article-page .benefit-card h3{
    font-size:22px!important;
  }

  .nj-article-page .benefit-card p{
    font-size:18px!important;
  }

  .nj-article-page .benefit-card-link{
    font-size:16px!important;
  }

}