
:root{
  --nc5-bg:#050509;
  --nc5-s1:#0b0c13;
  --nc5-s2:#11131d;
  --nc5-s3:#151823;
  --nc5-line:#181b28;
  --nc5-line2:#2b3042;
  --nc5-text:#eceef5;
  --nc5-muted:#8f94a8;
  --nc5-red:#e0121c;
  --nc5-red2:#ff4d55;
  --nc5-green:#6fcf97;
  --nc5-radius:22px;
}

/* Base front office */
body{
  background:var(--nc5-bg)!important;
  color:var(--nc5-text)!important;
}
body main:not(.nc-account-main):not(.nc-doc-main){
  font-family:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
body h1,body h2,body h3{
  font-family:"Bricolage Grotesque","Hanken Grotesk",system-ui,sans-serif;
}
body .conteneur{
  max-width:1160px;
}
body .eyebrow{
  color:var(--nc5-red2)!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}

/* ---------- Pages simples / À propos / Mises à jour ---------- */
.page-nc{
  background:var(--nc5-bg)!important;
  padding:64px 0 86px!important;
}
.page-nc>.conteneur{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
  margin:0 auto!important;
}
.page-head{
  max-width:780px!important;
  margin:0 0 34px!important;
}
.page-head h1,.page-nc> .conteneur>h1{
  margin:8px 0 14px!important;
  color:#fff!important;
  font-size:clamp(38px,5vw,58px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
}
.page-head .intro,.page-nc> .conteneur>p{
  color:var(--nc5-muted)!important;
  font-size:16px!important;
  line-height:1.68!important;
}
.page-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
.page-card{
  min-height:170px!important;
  padding:26px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:20px!important;
  background:var(--nc5-s1)!important;
  box-shadow:none!important;
}
.page-card h2{
  margin:0 0 10px!important;
  color:#fff!important;
  font-size:21px!important;
}
.page-card p{
  margin:0!important;
  color:var(--nc5-muted)!important;
  line-height:1.65!important;
}
.page-actions{
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-top:28px!important;
}
.page-actions .bouton{
  border-radius:12px!important;
}
.updates{
  display:grid!important;
  gap:10px!important;
}
.update{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:19px 22px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:16px!important;
  background:var(--nc5-s1)!important;
  color:#fff!important;
  text-decoration:none!important;
  transition:.18s!important;
}
.update:hover{
  border-color:#30364a!important;
  transform:translateY(-1px)!important;
}
.update h2{margin:0 0 3px!important;font-size:17px!important}
.update p{margin:0!important;color:var(--nc5-muted)!important;font-size:12px!important}
.update>b{color:var(--nc5-red2)!important}
.empty{
  border:1px dashed var(--nc5-line)!important;
  border-radius:18px!important;
  background:var(--nc5-s1)!important;
  color:var(--nc5-muted)!important;
  padding:36px!important;
}

/* ---------- Blog ---------- */
.blogPage{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
  margin:0 auto!important;
  padding:66px 0 86px!important;
  background:transparent!important;
}
.blogHero{
  max-width:850px!important;
  padding:0 0 50px!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
}
.blogHero>span,.blogTitle span,.blogCta>span,.articleHero>span,.relatedArticles>span{
  color:var(--nc5-red2)!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}
.blogHero h1{
  max-width:820px!important;
  margin:10px 0 16px!important;
  color:#fff!important;
  font-size:clamp(42px,5.6vw,66px)!important;
  letter-spacing:-.045em!important;
  line-height:1.04!important;
}
.blogHero h1 em{color:var(--nc5-red2)!important;font-style:normal!important}
.blogHero p{
  max-width:720px!important;
  margin:0!important;
  color:var(--nc5-muted)!important;
  font-size:16px!important;
  line-height:1.7!important;
}
.featured{
  display:grid!important;
  grid-template-columns:.9fr 1.1fr!important;
  gap:0!important;
  overflow:hidden!important;
  margin:0 0 62px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:24px!important;
  background:var(--nc5-s1)!important;
  box-shadow:none!important;
}
.featuredVisual{
  min-height:300px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  padding:28px!important;
  background:
    radial-gradient(circle at 30% 25%,rgba(224,18,28,.18),transparent 33%),
    linear-gradient(145deg,#13131a,#08090d)!important;
  border:0!important;
}
.featuredVisual b{
  color:#fff!important;
  font:700 72px/1 "Bricolage Grotesque",sans-serif!important;
  letter-spacing:-.08em!important;
}
.featuredVisual small{
  color:#777d8d!important;
  font-size:10px!important;
  letter-spacing:.12em!important;
}
.featuredCopy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:34px!important;
}
.featuredCopy>span,.postBody small{
  color:#777d8e!important;
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.featuredCopy h2{
  margin:9px 0 12px!important;
  color:#fff!important;
  font-size:30px!important;
  line-height:1.12!important;
}
.featuredCopy p,.postBody p{
  color:var(--nc5-muted)!important;
  line-height:1.65!important;
}
.featuredCopy a,.read{
  color:#fff!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.featuredCopy a:hover,.read:hover{color:var(--nc5-red2)!important}
.blogTitle{
  display:flex!important;
  justify-content:space-between!important;
  align-items:end!important;
  margin:0 0 24px!important;
}
.blogTitle h2{
  margin:6px 0 0!important;
  font-size:34px!important;
  color:#fff!important;
}
.postGrid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.postGrid article{
  overflow:hidden!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:20px!important;
  background:var(--nc5-s1)!important;
  box-shadow:none!important;
  transition:.18s!important;
}
.postGrid article:hover{
  transform:translateY(-2px)!important;
  border-color:#30364a!important;
}
.postVisual{
  position:relative!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  min-height:174px!important;
  padding:16px!important;
  background:
    radial-gradient(circle at 25% 20%,rgba(224,18,28,.14),transparent 30%),
    linear-gradient(145deg,#11131d,#08090d)!important;
}
.postVisual span{
  padding:5px 8px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:8px!important;
  background:rgba(5,5,9,.72)!important;
  color:#cdd1dc!important;
  font-size:9px!important;
}
.postVisual b{
  color:#363b4c!important;
  font:700 40px/1 "Bricolage Grotesque",sans-serif!important;
  letter-spacing:-.06em!important;
}
.postBody{padding:19px 20px 21px!important}
.postBody h2{
  margin:8px 0 10px!important;
  font-size:20px!important;
  line-height:1.18!important;
}
.postBody h2 a{color:#fff!important;text-decoration:none!important}
.postBody p{font-size:13px!important}
.blogCta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  margin-top:66px!important;
  padding:30px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:22px!important;
  background:var(--nc5-s1)!important;
}
.blogCta h2{margin:6px 0 7px!important;font-size:27px!important}
.blogCta p{margin:0!important;color:var(--nc5-muted)!important}
.blogCta>a{
  flex:none!important;
  padding:11px 15px!important;
  border-radius:11px!important;
  background:var(--nc5-red)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:700!important;
}

/* ---------- Blog article ---------- */
.articlePage{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
  margin:0 auto!important;
  padding:38px 0 86px!important;
}
.articlePage .back{
  display:inline-flex!important;
  margin-bottom:38px!important;
  color:#777d8e!important;
  text-decoration:none!important;
  font-size:12px!important;
}
.articlePage .back:hover{color:#fff!important}
.articleHero{
  max-width:890px!important;
  margin:0 auto 48px!important;
  padding:0!important;
  text-align:left!important;
}
.articleHero h1{
  margin:10px 0 16px!important;
  color:#fff!important;
  font-size:clamp(40px,5.4vw,64px)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
}
.articleHero p{
  max-width:760px!important;
  margin:0 0 13px!important;
  color:#a0a5b3!important;
  font-size:17px!important;
  line-height:1.68!important;
}
.articleHero small{color:#646b7c!important;font-size:11px!important}
.articleLayout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 290px!important;
  gap:48px!important;
  align-items:start!important;
}
.articleContent{
  min-width:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  color:#aeb2bd!important;
  font-size:15px!important;
  line-height:1.8!important;
}
.articleContent h2,.articleContent h3{
  color:#fff!important;
  margin-top:38px!important;
}
.articleContent h2{font-size:28px!important}
.articleContent h3{font-size:21px!important}
.articleContent a{color:#ff626b!important}
.articleContent pre,.articleContent code{
  border-color:var(--nc5-line)!important;
  background:#090a0f!important;
}
.articleContent blockquote{
  margin:26px 0!important;
  padding:17px 20px!important;
  border-left:3px solid var(--nc5-red)!important;
  background:var(--nc5-s1)!important;
  color:#c6cad4!important;
}
.articleLayout>aside{
  position:sticky!important;
  top:92px!important;
  display:grid!important;
  gap:14px!important;
}
.articleLayout>aside>div{
  padding:20px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:17px!important;
  background:var(--nc5-s1)!important;
}
.articleLayout>aside span{
  color:var(--nc5-red2)!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
}
.articleLayout>aside h3{margin:7px 0 8px!important;font-size:18px!important}
.articleLayout>aside p{margin:0 0 12px!important;color:var(--nc5-muted)!important;font-size:12px!important}
.articleLayout>aside a{
  display:block!important;
  padding:5px 0!important;
  color:#c7cad4!important;
  text-decoration:none!important;
  font-size:11px!important;
}
.articleLayout>aside a:hover{color:#fff!important}
.relatedArticles{
  margin-top:52px!important;
  padding-top:30px!important;
  border-top:1px solid var(--nc5-line)!important;
}
.relatedArticles h2{margin:6px 0 18px!important}
.relatedArticles>div{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.relatedArticles>div>a{
  padding:15px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:14px!important;
  background:var(--nc5-s1)!important;
  color:#fff!important;
  text-decoration:none!important;
}
.relatedArticles strong,.relatedArticles small{display:block!important}
.relatedArticles small{margin-top:5px!important;color:#747a8a!important;font-size:9px!important}

/* ---------- Legal ---------- */
.nc-legal{
  background:var(--nc5-bg)!important;
  padding:62px 0 86px!important;
}
.nc-legal>.conteneur{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
}
.nc-legal-head{
  max-width:820px!important;
  margin-bottom:34px!important;
}
.nc-legal-kicker{
  color:var(--nc5-red2)!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}
.nc-legal-head h1{
  margin:8px 0 13px!important;
  color:#fff!important;
  font-size:clamp(38px,5vw,54px)!important;
  letter-spacing:-.04em!important;
}
.nc-legal-head .lead{
  color:var(--nc5-muted)!important;
  font-size:16px!important;
}
.nc-legal-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:34px!important;
  align-items:start!important;
}
.nc-legal-content{display:grid!important;gap:12px!important}
.nc-legal-card,.nc-legal-side>*{
  padding:24px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:18px!important;
  background:var(--nc5-s1)!important;
  box-shadow:none!important;
}
.nc-legal-card h2{margin:0 0 10px!important;font-size:20px!important;color:#fff!important}
.nc-legal-card p,.nc-legal-card li{color:#969baa!important;line-height:1.7!important}
.nc-legal-side{
  position:sticky!important;
  top:92px!important;
  display:grid!important;
  gap:12px!important;
}
.nc-legal-side a{color:#d8dbe4!important}

/* ---------- Reviews ---------- */
.reviews-page{
  padding:62px 0 86px!important;
  background:var(--nc5-bg)!important;
}
.reviews-page>.conteneur{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
}
.reviews-head{margin-bottom:30px!important}
.reviews-head h1{
  margin:7px 0 10px!important;
  font-size:clamp(38px,4.8vw,54px)!important;
  letter-spacing:-.04em!important;
}
.reviews-grid{
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr)!important;
  gap:20px!important;
}
.review-list{
  border:1px solid var(--nc5-line)!important;
  border-radius:20px!important;
  background:var(--nc5-s1)!important;
  padding:20px!important;
}
.review{
  border:1px solid var(--nc5-line)!important;
  border-radius:14px!important;
  background:#08090d!important;
}
.review-form{
  top:92px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:20px!important;
  background:var(--nc5-s1)!important;
  box-shadow:none!important;
}
.review-form input,.review-form textarea{
  border-color:var(--nc5-line2)!important;
  border-radius:11px!important;
  background:#08090d!important;
}
.review-submit{
  border-radius:11px!important;
  background:var(--nc5-red)!important;
  border-color:var(--nc5-red)!important;
}

/* ---------- Documentation article ---------- */
.dp{
  background:var(--nc5-bg)!important;
  color:var(--nc5-text)!important;
}
.dp-top{
  padding:34px 0 36px!important;
  border-bottom:1px solid var(--nc5-line)!important;
  background:
    radial-gradient(circle at 20% 0%,rgba(224,18,28,.08),transparent 28%),
    var(--nc5-bg)!important;
}
.dp-top>.conteneur,.dp>.conteneur{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
}
.dp-top>a,.dp-top .conteneur>a{color:#777d8e!important;text-decoration:none!important;font-size:11px!important}
.dp-head{gap:20px!important;margin-top:24px!important}
.dp-head img{
  width:156px!important;
  height:98px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:15px!important;
  object-fit:cover!important;
}
.dp-head span,.dp-kicker{color:var(--nc5-red2)!important}
.dp-head h1{
  margin:4px 0 6px!important;
  font-size:clamp(30px,4vw,44px)!important;
  letter-spacing:-.035em!important;
}
.dp-head p{color:var(--nc5-muted)!important}
.dp-layout{
  display:grid!important;
  grid-template-columns:250px minmax(0,1fr)!important;
  gap:44px!important;
  padding-top:42px!important;
  padding-bottom:80px!important;
}
.dp-layout>aside{
  position:sticky!important;
  top:92px!important;
  align-self:start!important;
  padding:18px!important;
  border:1px solid var(--nc5-line)!important;
  border-radius:18px!important;
  background:var(--nc5-s1)!important;
}
.dp-search input{
  border:1px solid var(--nc5-line)!important;
  border-radius:11px!important;
  background:#08090d!important;
  color:#fff!important;
}
.dp-layout>aside nav a{
  border-radius:10px!important;
  color:#7f8596!important;
}
.dp-layout>aside nav a.active,.dp-layout>aside nav a:hover{
  background:#11131d!important;
  color:#fff!important;
}
.dp-help{
  border-top:1px solid var(--nc5-line)!important;
}
.dp-section{
  padding:0 0 42px!important;
  margin:0 0 42px!important;
  border-bottom:1px solid var(--nc5-line)!important;
}
.dp-section h2{font-size:30px!important}
.dp-rich{color:#a5aab7!important;line-height:1.8!important}
.dp-rich pre,.dp-rich code{background:#090a0f!important;border-color:var(--nc5-line)!important}

/* ---------- SEO landing ---------- */
.nc-seo-landing-body{background:var(--nc5-bg)!important}
.nc-seo-hero{
  padding:60px 0 48px!important;
  border-bottom:1px solid var(--nc5-line)!important;
  background:radial-gradient(circle at 16% 0%,rgba(224,18,28,.08),transparent 25%),var(--nc5-bg)!important;
}
.nc-seo-landing .conteneur{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
}
.nc-seo-breadcrumb{color:#6f7586!important;font-size:11px!important}
.nc-seo-breadcrumb a{color:#7d8394!important}
.nc-seo-kicker{color:var(--nc5-red2)!important}
.nc-seo-hero h1{
  max-width:900px!important;
  margin:10px 0 14px!important;
  color:#fff!important;
  font-size:clamp(38px,5.2vw,58px)!important;
  letter-spacing:-.04em!important;
}
.nc-seo-hero p{max-width:760px!important;color:var(--nc5-muted)!important}
.nc-seo-btn{
  border:1px solid var(--nc5-line)!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#fff!important;
}
.nc-seo-btn.primary{
  border-color:var(--nc5-red)!important;
  background:var(--nc5-red)!important;
}
.nc-seo-main{gap:38px!important;padding-top:48px!important}
.nc-seo-summary,.nc-seo-section,.nc-seo-faq,.nc-seo-side-card,.nc-seo-bottom-cta{
  border:1px solid var(--nc5-line)!important;
  border-radius:18px!important;
  background:var(--nc5-s1)!important;
  box-shadow:none!important;
}
.nc-seo-summary,.nc-seo-side-card{padding:22px!important}
.nc-seo-section{padding:23px!important}
.nc-seo-section>span{color:var(--nc5-red2)!important}
.nc-seo-section p,.nc-seo-summary p,.nc-seo-muted{color:var(--nc5-muted)!important}
.nc-seo-products>a{border-color:var(--nc5-line)!important;background:#08090d!important}
.nc-seo-bottom-cta{padding:28px!important}

/* Generic fields/buttons on old public pages */
body .bouton-plein,
body .settings-save{
  border-radius:11px!important;
  background:var(--nc5-red)!important;
  border-color:var(--nc5-red)!important;
  color:#fff!important;
  box-shadow:none!important;
}
body .bouton-contour{
  border-color:var(--nc5-line2)!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#d8dbe4!important;
}

/* Responsive */
@media(max-width:920px){
  .page-grid{grid-template-columns:1fr!important}
  .postGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .featured{grid-template-columns:1fr!important}
  .articleLayout,.nc-legal-layout,.dp-layout{grid-template-columns:1fr!important}
  .articleLayout>aside,.nc-legal-side,.dp-layout>aside{position:static!important}
}
@media(max-width:650px){
  .page-nc>.conteneur,.blogPage,.articlePage,.nc-legal>.conteneur,.reviews-page>.conteneur,.dp-top>.conteneur,.dp>.conteneur,.nc-seo-landing .conteneur{
    width:calc(100% - 28px)!important;
  }
  .postGrid,.relatedArticles>div{grid-template-columns:1fr!important}
  .blogCta{align-items:flex-start!important;flex-direction:column!important}
  .reviews-grid{grid-template-columns:1fr!important}
  .featuredVisual{min-height:220px!important}
}
