/* NightCode V11.44 - composants accueil utilisés sur les autres pages. */
header.nc-header,header.nc-header *,footer.nc-site-footer,footer.nc-site-footer *{box-sizing:border-box}
header.nc-header,footer.nc-site-footer{font-family:Outfit,system-ui,sans-serif}
header.nc-header{position:fixed;top:calc(10px + env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%);z-index:1200;display:flex;align-items:center;gap:6px;width:min(1180px,calc(100% - 24px));padding:8px 16px}
header.nc-header a,footer.nc-site-footer a{color:inherit;text-decoration:none}
header.nc-header .logo{display:flex;align-items:center;flex:0 0 auto}
header.nc-header .logo-wide img{display:block;min-width:0;max-height:58px;height:auto;object-fit:contain}
header.nc-header nav{display:flex;gap:2px}
header.nc-header .ic{position:relative;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:#d6d6d6;cursor:pointer}
header.nc-header .ic svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
header.nc-header .ic em{position:absolute;top:2px;right:0;min-width:17px;height:17px;border-radius:9px;background:#e5303a;color:white;font:700 11px/17px Outfit;text-align:center;font-style:normal}
header.nc-header .lang.lang-flags{display:flex;align-items:center;padding:3px;border-radius:11px;border:1px solid rgba(255,255,255,.10);gap:2px}
header.nc-header .lang.lang-flags a{display:grid;place-items:center;width:37px;min-width:37px;height:33px;padding:5px;border:1px solid transparent;border-radius:8px;background:transparent;transition:background .18s}
header.nc-header .lang.lang-flags a svg{display:block;width:26px;height:auto;aspect-ratio:30/21;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.35)}
header.nc-header .lang.lang-flags a.on{background:rgba(230,46,68,.11);border-color:rgba(239,56,76,.55)}
header.nc-header .lang.lang-flags a:hover{background:rgba(255,255,255,.08)}
header.nc-header .cx{display:inline-grid;place-items:center;cursor:pointer}
footer.nc-site-footer .w{max-width:1220px;margin:0 auto;padding-inline:24px}
footer.nc-site-footer h2{font-family:Outfit,system-ui,sans-serif}
footer.nc-site-footer .nc-footer-nav a:hover{color:white}
@media(max-width:980px){header.nc-header .hd{display:none}}
@media(max-width:620px){header.nc-header .lang.lang-flags a{width:33px;min-width:33px;height:30px;padding:4px}header.nc-header .lang.lang-flags a svg{width:23px}}

/* V11.9 — Redesign du menu UNIQUEMENT. Aucune modification du catalogue ou du hero. */
header.nc-header{
  top:calc(12px + env(safe-area-inset-top,0px));
  width:min(1260px,calc(100% - 32px));
  min-height:72px;
  display:grid;
  grid-template-columns:minmax(195px,230px) minmax(0,1fr) auto;
  align-items:center;
  column-gap:22px;
  padding:10px 19px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.095);
  background:rgba(22,22,24,.94);
  box-shadow:0 10px 35px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035);
  -webkit-backdrop-filter:blur(22px);
  backdrop-filter:blur(22px);
}
header.nc-header::after{display:none}
.nc-header .nc-header-logo{margin:0;min-width:0;max-width:215px;align-self:center}
.nc-header .nc-header-logo img{
 width:100%;min-width:0;max-width:215px;max-height:58px;
 filter:none;object-fit:contain
}
.nc-header nav{
 display:flex;justify-content:center;align-items:center;gap:4px;
 min-width:0;width:auto;order:initial;overflow:visible;
}
.nc-header nav a{
 position:relative;display:inline-flex;align-items:center;justify-content:center;
 font:600 14px/1.25 Outfit,system-ui,sans-serif;
 color:#bbbcc2;padding:11px 14px;border:1px solid transparent;
 background:transparent;border-radius:9px;white-space:nowrap;
 transition:color .18s ease,background .18s ease;
}
.nc-header nav a:hover{background:rgba(255,255,255,.055);color:#fff}
.nc-header nav a.on{
 background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.08);color:#fff;
 font-weight:650;
}
.nc-header nav a.on::after{
 content:"";position:absolute;left:17px;right:17px;bottom:-1px;height:2px;
 border-radius:3px;background:#ed3947;
}
.nc-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-width:0}
.nc-header-tools .nc-header-action{
 width:37px;height:37px;flex:0 0 37px;
 color:#c3c4ca;background:transparent;
 border:1px solid transparent;border-radius:11px;
 transition:background .18s,border-color .18s,color .18s;
}
.nc-header-tools .nc-header-action:hover{
 color:#fff;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.08);
}
.nc-header-tools .nc-header-action svg{width:18px;height:18px}
.nc-header-tools .nc-header-support svg{stroke-width:1.8}
.nc-header-tools .nc-header-cart em{
 top:-2px;right:-3px;min-width:17px;height:17px;
 background:#dc3343;border:2px solid #171719;
 line-height:13px;font-size:10px;
}
.nc-header-tools .nc-header-login{
 margin:0 7px 0 5px;padding:0 18px;min-height:37px;
 border:1px solid rgba(255,255,255,.16);
 border-radius:10px;background:rgba(255,255,255,.045);
 color:#f1f1f3;font-size:13px;font-weight:600;
 transition:background .2s,border-color .2s;
}
.nc-header-tools .nc-header-login:hover{
 background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.31);
}
.nc-header-tools .lang.lang-flags{
 border:1px solid rgba(255,255,255,.10);background:rgba(6,7,10,.28);
 padding:3px;gap:2px;border-radius:11px;
}
.nc-header-tools .lang.lang-flags button{
 width:35px;min-width:35px;height:32px;padding:5px;border-radius:8px;
}
.nc-header-tools .lang.lang-flags button svg{width:23px;border-radius:3px}
.nc-header-tools .lang.lang-flags button.on,
.nc-header-tools .lang.lang-flags button[aria-pressed="true"]{
 border-color:rgba(229,48,58,.45);background:rgba(229,48,58,.12);
 box-shadow:none;
}
@media(max-width:1120px){
 header.nc-header{grid-template-columns:minmax(150px,200px) minmax(0,1fr) auto;column-gap:10px;padding:9px 14px}
 .nc-header .nc-header-logo{max-width:194px}
 .nc-header nav a{padding:10px 10px;font-size:13px}
 .nc-header-tools{gap:3px}
 .nc-header-tools .nc-header-login{margin:0 4px;padding:0 12px}
}
@media(max-width:980px){
 header.nc-header{
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;gap:8px 12px;
  padding:9px 13px 8px;border-radius:16px;
 }
 .nc-header .nc-header-logo{grid-column:1;grid-row:1;max-width:185px}
 .nc-header-tools{grid-column:2;grid-row:1}
 .nc-header-tools .hd{display:none}
 .nc-header nav{
  grid-column:1/-1;grid-row:2;width:100%;order:initial;
  justify-content:center;gap:5px;overflow-x:auto;
  border-top:1px solid rgba(255,255,255,.07);padding-top:6px;
 }
 .nc-header nav a{flex:1;min-width:0;max-width:195px;padding:9px 8px}
 .nc-header nav a.on::after{left:20%;right:20%}
}
@media(max-width:440px){
 header.nc-header{width:calc(100% - 18px);top:calc(7px + env(safe-area-inset-top,0px));padding:7px 9px 6px;gap:6px 5px}
 .nc-header .nc-header-logo{max-width:135px}
 .nc-header .nc-header-logo img{max-height:43px}
 .nc-header-tools{gap:0}
 .nc-header-tools .nc-header-action{width:32px;flex-basis:32px;height:32px}
 .nc-header-tools .nc-header-action svg{width:17px;height:17px}
 .nc-header-tools .lang.lang-flags{padding:2px;gap:0;margin-left:2px}
 .nc-header-tools .lang.lang-flags button{width:28px;min-width:28px;height:28px;padding:4px}
 .nc-header-tools .lang.lang-flags button svg{width:20px}
 .nc-header nav{gap:2px;padding-top:5px}
 .nc-header nav a{font-size:12px;padding:8px 3px}
}
@media(prefers-reduced-motion:reduce){
 .nc-header nav a,.nc-header-tools .nc-header-action,.nc-header-tools .nc-header-login{transition:none}
}



/* NightCode Studio V11.13 — FOOTER PREMIUM, styles isolés */
.nc-site-footer{
  position:relative;
  margin-top:74px;
  padding:0;
  color:#ececee;
  background:linear-gradient(160deg,#1c1c1f 0%,#161619 44%,#111215 100%);
  border-top:1px solid rgba(255,255,255,.12);
  isolation:isolate;
  overflow:hidden;
}
.nc-site-footer::before{
  content:"";position:absolute;left:calc(50% - 98px);top:-1px;
  width:196px;height:2px;
  background:linear-gradient(90deg,transparent,#ec3b48 35%,#ff636f 60%,transparent);
  box-shadow:0 0 22px rgba(236,59,72,.18);
}
.nc-site-footer::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse 34% 64% at 91% 5%,rgba(230,54,66,.057),transparent 74%);
}
.nc-site-footer .nc-footer-main{
  display:grid;
  grid-template-columns:minmax(250px,1.36fr) minmax(130px,.7fr) minmax(130px,.78fr) minmax(228px,1.12fr);
  gap:clamp(24px,3.5vw,52px);
  align-items:start;
  padding-top:68px;
  padding-bottom:61px;
}
.nc-footer-brand{min-width:0;padding-right:12px}
.nc-footer-logo{display:inline-flex;align-items:center;max-width:100%;line-height:0}
.nc-footer-logo img{display:block;width:min(254px,100%);height:auto;max-height:96px;object-fit:contain;object-position:left center}
.nc-footer-brand p{
  max-width:275px;margin:12px 0 24px;
  color:#aeb0b9;font:400 14px/1.8 Outfit,system-ui,sans-serif;
}
.nc-footer-signature{display:flex;align-items:center;gap:10px;color:#9d9ea6;font:700 10px/1.5 Outfit,system-ui,sans-serif;letter-spacing:.13em}
.nc-f-status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#ed4b55;box-shadow:0 0 13px rgba(237,75,85,.45)}
.nc-footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding-top:9px}
.nc-footer-nav h2,.nc-footer-assistance h2{
  margin:0 0 11px;color:#fff;text-transform:none;
  font:700 15px/1.25 Outfit,system-ui,sans-serif;letter-spacing:-.015em;
}
.nc-footer-nav a{display:inline-flex;align-items:center;gap:8px;max-width:100%;color:#aeb1b9;font:500 13px/1.45 Outfit,system-ui,sans-serif;transition:color .18s,transform .18s}
.nc-footer-nav .nc-f-icon{width:13px;height:13px;fill:none;stroke:#d64a58;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;opacity:.9;flex:none}
.nc-footer-nav a:hover{color:#f4f5f7;transform:translateX(3px)}
.nc-footer-assistance{
  padding:22px 22px 21px;background:linear-gradient(160deg,rgba(48,42,46,.64),rgba(31,31,36,.75));
  border:1px solid rgba(255,255,255,.10);border-radius:17px;
  box-shadow:0 12px 24px rgba(0,0,0,.09);
}
.nc-footer-help-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;margin-bottom:16px;color:#ed5b65;background:rgba(234,60,74,.12);border:1px solid rgba(234,60,74,.17)}
.nc-f-help-icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nc-footer-assistance h2{font-size:16px;margin-bottom:8px}
.nc-footer-assistance p{font:400 12.5px/1.65 Outfit,system-ui,sans-serif;color:#adafb7;margin:0 0 17px}
.nc-footer-cta{
  display:inline-flex;align-items:center;justify-content:space-between;gap:18px;
  width:100%;padding:11px 13px;border-radius:9px;
  background:#e33542;color:#fff;font:700 12px/1.25 Outfit,system-ui,sans-serif;
  transition:background .2s,transform .2s;
}
.nc-footer-cta:hover{background:#f04753;transform:translateY(-2px)}
.nc-f-action-icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.nc-site-footer .nc-footer-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:18px 30px;
  border-top:1px solid rgba(255,255,255,.09);padding-top:23px;padding-bottom:27px;
  color:#92949c;font:500 12px/1.5 Outfit,system-ui,sans-serif;
}
.nc-footer-copyright{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.nc-f-mid-dot{width:3px;height:3px;background:#73747a;border-radius:50%;flex:none}
.nc-site-footer .nc-footer-legal{display:flex;flex-wrap:wrap;gap:11px 22px;align-items:center;order:initial;width:auto;overflow:visible}
.nc-footer-legal a{color:#a6a8af;border:0;padding:0;border-radius:0;font:500 12px/1.5 Outfit,system-ui,sans-serif;transition:color .18s;background:none}
.nc-footer-legal a:hover{color:#fff}
@media(max-width:1020px){
  .nc-site-footer .nc-footer-main{grid-template-columns:minmax(245px,1.25fr) repeat(2,minmax(130px,.8fr));gap:28px 32px;padding-top:55px}
  .nc-footer-assistance{grid-column:1/-1;display:grid;grid-template-columns:40px 1fr auto;gap:4px 17px;align-items:center}
  .nc-footer-help-mark{grid-column:1;grid-row:1/3;margin:0}
  .nc-footer-assistance h2{grid-column:2;grid-row:1;margin:0}
  .nc-footer-assistance p{grid-column:2;grid-row:2;margin:0}
  .nc-footer-cta{grid-column:3;grid-row:1/3;min-width:190px}
}
@media(max-width:640px){
  .nc-site-footer{margin-top:55px}
  .nc-site-footer .nc-footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 18px;padding-top:43px;padding-bottom:40px}
  .nc-footer-brand{grid-column:1/-1}
  .nc-footer-logo img{width:220px}
  .nc-footer-brand p{max-width:360px;margin:10px 0 16px}
  .nc-footer-nav{gap:15px;padding-top:0}
  .nc-footer-assistance{grid-column:1/-1;display:block;padding:23px}
  .nc-footer-help-mark{margin-bottom:12px}
  .nc-footer-assistance h2{margin:0 0 8px}
  .nc-footer-assistance p{margin:0 0 16px}
  .nc-footer-cta{width:auto;min-width:220px}
  .nc-site-footer .nc-footer-bottom{flex-direction:column;align-items:flex-start;padding-top:22px;padding-bottom:28px;gap:15px}
  .nc-site-footer .nc-footer-legal{gap:9px 17px;justify-content:flex-start}
}
@media(max-width:350px){
  .nc-site-footer .nc-footer-main{column-gap:10px}
  .nc-footer-nav h2{font-size:14px}
  .nc-footer-nav a{font-size:12px}
  .nc-footer-cta{width:100%;min-width:0}
}
@media(prefers-reduced-motion:reduce){.nc-site-footer a{transition:none!important}}
/* Same buttons and active flags as the homepage. */
header.nc-header .lang.lang-flags > a{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 width:35px!important;min-width:35px!important;height:32px!important;padding:5px!important;
 border:1px solid transparent!important;border-radius:8px!important;flex:0 0 auto!important;
}
header.nc-header .lang.lang-flags > a svg{width:23px!important;min-width:23px;max-height:17px}
header.nc-header .lang.lang-flags > a.on{background:rgba(229,48,58,.12)!important;border-color:rgba(229,48,58,.45)!important}
footer.nc-site-footer .nc-footer-main{width:min(100%,1220px)}
@media(max-width:620px){header.nc-header .lang.lang-flags > a{width:32px!important;min-width:32px!important;height:29px!important;padding:4px!important}}

/* Recherche réelle disponible depuis le header identique sur toutes les pages. */
header.nc-header .nc-chrome-search-popover[hidden]{display:none!important}
header.nc-header .nc-chrome-search-popover{
  position:absolute;top:calc(100% + 12px);right:15px;z-index:3;
  width:min(430px,calc(100vw - 34px));padding:12px;
  display:flex;align-items:center;gap:8px;border-radius:15px;
  background:#1d1d21;border:1px solid rgba(255,255,255,.16);
  box-shadow:0 16px 45px rgba(0,0,0,.48);color:#f4f4f5;
}
header.nc-header .nc-chrome-search-popover input{
  flex:1 1 auto;min-width:0;height:43px;border:1px solid rgba(255,255,255,.14);
  background:#101114;color:#fff;border-radius:10px;padding:0 12px;
  font:500 14px Outfit,system-ui,sans-serif;
}
header.nc-header .nc-chrome-search-popover button{
  flex:0 0 auto;min-height:43px;padding:0 14px;border-radius:10px;
  border:1px solid rgba(255,95,112,.6);
  background:linear-gradient(180deg,#fa5660,#e22d41 52%,#ab1527);
  color:#fff;font:700 13px Outfit,system-ui,sans-serif;cursor:pointer;
}
@media(max-width:440px){header.nc-header .nc-chrome-search-popover{right:0;left:0;width:100%;padding:9px;gap:6px}}


/* ===============================================================
  NIGHTCODE STUDIO / V11.58 PURE BLACK / 22 OCT 2026
  Visual colors only. JS Lua canvas, actions, layout and PHP intact.
  Loaded by existing site links. Diagnostic: --nc-black-version.
  =============================================================== */
:root {
 --nc-black-version:1158;
 --bg:#000000;
 --c1:#0b0b0d;
 --c2:#121214;
 --ncu-bg:#000000;
 --ncu-panel:#101012;
 --nc5-bg:#000000;
 --nc5-s1:#0c0c0e;
 --nc5-s2:#121214;
 --nc5-s3:#161619;
 --nc-shop-bg:#000000;
 --nc-shop-surface:#101013;
 --fond:#000000;
 --fond-clair:#0e0e11;
 --carte:#101013;
 --ln:rgba(255,255,255,.105);
 --ncu-stroke:rgba(255,255,255,.10);
}
html,
html body,
html body.catalog-page,
html body.nc-account-body,
html body.nc-account-sent-v5,
html body.nc-product-v6,
html body.nc-auth-v4,
html body.nc-auth-page,
html body.nc-doc-product-body,
html body.nc-doc-v5,
html body.nc-legal-page,
html body.nc-install-v5,
html body.nc-seo-landing-body,
html body.nc-cart-v4 {
 background:#000000!important;
 background-color:#000000!important;
 background-image:none!important;
}
/* The actual canvas and code editor stay visible and continue animating. */
html body .nc-hero-code,
html body .hero.nc-hero-code,
html body .nc-home-custom,
html body .nc-hero-v9 {
 background:#000000!important;
 background-color:#000000!important;
 background-image:none!important;
}
html body .nc-hero-code .nc-code-shade {
 background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.48) 42%,rgba(0,0,0,.10) 78%),
 linear-gradient(180deg,rgba(0,0,0,.015),rgba(0,0,0,.18) 67%,#000 100%)!important;
}
html body .nc-hero-code::after {
 background:linear-gradient(180deg,transparent 0%,transparent 75%,#000 100%)!important;
}
html body :is(#app, .s, .pg, .tc, .pd, .page-nc,
 .nc-page, .nc-scripts-page, .nc-cat-wrap, .nc-catalogue-v4,
 .nc6-product, .fiche-produit, .nc-product-page,
 .nc-doc-main, .nc-doc-v5 .docportal, .docportal,
 .nc-legal, .nc-install-wrap, .nc-auth-main,
 .nc-account-main, .reviews-page, .cartPage,
 .blogPage, .articlePage, .nc-seo-landing, .dp,
 .nc-doc-product-body .dp, main.nc-account-main) {
 background-color:transparent!important;
 background-image:none!important;
}
/* Header floats above black, remains distinguishable. */
html body header.nc-header,
html body #ncGlobalHeader,
html body .entete.nc-shared-header,
html body .nc-header-inner {
 background-color:rgba(8,8,10,.96)!important;
 background-image:none!important;
 border-color:rgba(255,255,255,.13)!important;
}
/* Bottom keyword strip + shared footer. */
html body :is(.mq,.nc-keywords,.nc-keywords-bar,.nc-keywords-strip,
 .nc-home-keywords,.nc-site-footer,.nc-footer-v4,footer.nc-site-footer) {
 background:#000!important;
 background-image:none!important;
}
html body :is(.nc-footer-assistance,.nc-footer-help,.nc-footer-help-panel) {
 background:#101012!important;
 background-image:none!important;
}
/* Cards and content still subtly raised above the pure-black canvas. */
html body :is(.pc,.bx,.pt,.review,.review-card,.page-card,
 .doc-card,.docportal-card,.nc-doc-card,.nc-doc-section,
 .nc-install-card,.nc-install-panel,.nc-legal-card,.legal-card,
 .nc6-buy,.nc6-product-info,.nc6-details,.nc6-card,
 .nc-cat-card,.nc-catalogue-maquette .nc-catalogue-card,
 .nc-catalogue-maquette .pc,
 .nc-account-panel,.nc-account-card,.nc-account-sent-panel,
 .settings-card,.ticket-create,.invoice-panel,.account-panel,
 .cartItem,.cartSummary,.emptyCart,.couponBlock,.cfxBlock,
 .featured,.postGrid article,.articleContent,.review-form) {
 background-color:#101012!important;
 background-image:none!important;
 border-color:rgba(255,255,255,.105)!important;
}
html body :is(.nc-account-redesign .nc-favorites-card,
 .nc-catalogue-v4 .nc-cat-card,.nc-catalogue-maquette .pc) {
 background-color:#111113!important;
 background-image:none!important;
 border-color:rgba(255,255,255,.12)!important;
}
/* Inputs and secondary controls have readable, deep charcoal surfaces. */
html body :is(.nc-account-redesign,.nc-auth-v4,.nc-auth-page,
 .nc-cart-v4,.nc-doc-v5,.nc-catalogue-v4) :where(input:not([type=checkbox]):not([type=radio]),select,textarea) {
 background-color:#0c0c0e!important;
 border-color:rgba(255,255,255,.17)!important;
}
/* Critical: do not restyle media blocks, purchase buttons, status chips,
   the Lua code canvas, or the framework logos. */
@media (max-width:680px) {
 html body .nc-hero-code .nc-code-shade {
  background:linear-gradient(90deg,rgba(0,0,0,.79),rgba(0,0,0,.50)),
   linear-gradient(180deg,transparent 0%,#000 100%)!important;
 }
}

/* ============================================================================
   NIGHTCODE STUDIO — V11.59 / NOIR PUR UNIFORME / choix utilisateur N°1
   Charge APRES V11.58. Aucun changement du JavaScript / Canvas / logique PHP.
   Objectif : fond de page ET sections/cartes #000000, contours discrets.
   Diagnostic : --nc-black-version:1159.
   ============================================================================ */
:root{
  --nc-black-version:1159;
  --bg:#000000;
  --c1:#000000;
  --c2:#080808;
  --ncu-bg:#000000;
  --ncu-panel:#000000;
  --nc5-bg:#000000;
  --nc5-s1:#000000;
  --nc5-s2:#000000;
  --nc5-s3:#000000;
  --nc-shop-bg:#000000;
  --nc-shop-surface:#000000;
  --fond:#000000;
  --fond-clair:#000000;
  --carte:#000000;
  --ln:rgba(255,255,255,.13);
  --ncu-stroke:rgba(255,255,255,.13);
  --nc-black-border:rgba(255,255,255,.13);
}
/* Aplats noirs sur toutes les grandes surfaces, sans cadre gris. */
html, html body,
html body.catalog-page, html body.nc-catalogue-maquette,
html body.nc-account-body, html body.nc-account-sent-v5,
html body.nc-product-v6, html body.nc-doc-v5,
html body.nc-legal-page, html body.nc-install-v5,
html body.nc-auth-v4, html body.nc-auth-page,
html body.nc-cart-v4, html body.nc-seo-landing-body{
  background:#000000!important;
  background-image:none!important;
}
html body :is(main, #app, .page-nc,.pg,.s,.nc-home-custom,
  #nc-savoirfaire,.nc-sf-section,.nc-reviews-section,
  .nc-review-carousel,.nc-cat-wrap,.nc-cat-seo,.nc-cat-guide,
  .nc-cat-guide-grid,.nc-catalogue-v4,.nc-scripts-page,
  .nc-product-page,.nc6-product,.fiche-produit,
  .nc-doc-main,.docportal,.nc-doc-v5,.nc-legal,.legal,
  .nc-install-wrap,.nc-auth-main,.nc-account-main,
  .nc-account-redesign,.nc-cart-v4,.cartPage,
  .blogPage,.articlePage,.nc-seo-landing,.nc-home-keywords,
  .nc-site-footer,.nc-footer-v4,.nc-footer-main,.nc-footer-bottom,
  .nc-kw-strip,.nc-keywords,.nc-keywords-bar,.nc-keywords-strip,
  .nc-reviews-container,.nc-reviews-window,.reviews-page,
  .nc-sf-wrapper,.nc-sf-copy,.nc-sf-media,.nc-sf-automotive){
  background-color:#000000!important;
  background-image:none!important;
}
/* La composition de code ANIMÉ du bandeau d'accueil demeure intacte. */
html body .nc-hero-code,
html body .nc-hero-v9,
html body .hero.nc-hero-code{
  background-color:#000000!important;
  background-image:none!important;
}
/* Bandeau défilant : supprimer également les caches gris sur ses côtés. */
html body :is(.nc-keywords,.nc-keywords-bar,.nc-home-keywords){
  background:#000000!important;
}
html body .nc-keywords::before{background:linear-gradient(90deg,#000 0%,transparent 100%)!important}
html body .nc-keywords::after{background:linear-gradient(270deg,#000 0%,transparent 100%)!important}
/* Menu flottant et pied de page : même aplat noir, bordure très fine. */
html body :is(header.nc-header, #ncGlobalHeader,.entete.nc-shared-header,
  .nc-header-inner,.nc-gh-inner, footer.nc-site-footer,.nc-site-footer){
  background:#000000!important;
  background-image:none!important;
  border-color:var(--nc-black-border)!important;
}
/* Cartes et boîtes : intégrées au fond, seul un trait signale leurs limites. */
html body :is(.pc,.bx,.pt,.review,.review-card,.nc-review-slide,
  .page-card,.page-grid>.page-card,.doc-card,.docportal-card,
  .nc-doc-card,.nc-doc-section,.nc-doc-panel,.nc-install-card,
  .nc-install-panel,.nc-legal-card,.legal-card,.nc6-buy,
  .nc6-product-info,.nc6-details,.nc6-card,.nc-cat-card,
  .nc-catalogue-card,.nc-favorites-card,.nc-account-panel,
  .nc-account-card,.nc-account-sent-panel,.settings-card,
  .ticket-create,.invoice-panel,.account-panel,.cartItem,
  .cartSummary,.emptyCart,.couponBlock,.cfxBlock,.featured,
  .postGrid article,.articleContent,.review-form,.nc-footer-assistance,
  .nc-footer-help,.nc-footer-help-panel,.nc-review-content){
  background-color:#000000!important;
  background-image:none!important;
  border-color:var(--nc-black-border)!important;
  box-shadow:none!important;
}
/* Réglages spécifiques à forte priorité existants dans le catalogue actuel. */
html body.nc-catalogue-maquette .nc-cat-card,
html body.nc-catalogue-v4 .nc-cat-card,
html body .nc-catalog-page .pc,
html body .nc-catalogue-maquette .pc,
html body .nc-account-redesign .nc-favorites-card{
  background:#000000!important;
  border:1px solid var(--nc-black-border)!important;
  box-shadow:none!important;
}
html body.nc-catalogue-maquette .nc-cat-guide-grid article,
html body .nc-cat-guide-grid article,
html body .nc-doc-card,
html body .nc-review-slide{
  background:#000000!important;
  background-image:none!important;
  border-color:var(--nc-black-border)!important;
  box-shadow:none!important;
}
/* Le bloc gris « Savoir-faire » n'est pas une carte de second niveau. */
html body #nc-savoirfaire .nc-sf-feature,
html body #nc-savoirfaire .nc-sf-visual,
html body #nc-savoirfaire .nc-sf-thumb,
html body #nc-savoirfaire .nc-sf-thumb.is-active,
html body #nc-savoirfaire .nc-sf-qualities span,
html body #nc-savoirfaire .nc-sf-auto-links a{
  background:#000000!important;
  background-image:none!important;
  border-color:var(--nc-black-border)!important;
  box-shadow:none!important;
}
html body #nc-savoirfaire .nc-sf-thumb.is-active{
  border-color:rgba(229,48,58,.7)!important;
}
/* Garder les images et visuels lisibles, sans peindre par-dessus. */
html body :is(.nc-cat-cover,.nc6-cover,.pi2,.nc-favorites-cover){
  background-color:#000000!important;
  background-image:none!important;
}
/* Petites commandes gris moyen qui créaient des tâches dans les blocs. */
html body :is(.nc-review-nav,.nc-sf-image-link,
  .nc-cat-add-info,.nc-cat-detail,.nc-fav-btn:not(.is-favorite)){
  background-color:#000000!important;
  background-image:none!important;
  border-color:var(--nc-black-border)!important;
}
html body .nc-cat-card:hover,
html body.nc-catalogue-maquette .nc-cat-card:hover,
html body #nc-savoirfaire .nc-sf-thumb:hover{
  border-color:rgba(238,72,86,.55)!important;
}
/* Exceptions lisibles : fenêtres, menu de recherche, champs et saisie. */
html body :is(.nc-login-dialog,.nc-login-modal .nc-login-dialog,
  .nc-promo-card,.nc-chrome-search-popover,.nc-live-search-panel,
  .nc-cart-drawer,.nc-cart-modal,.nc-auth-modal,[role="dialog"].nc-modal){
  background:#0b0b0c!important;
  background-image:none!important;
  border-color:rgba(255,255,255,.16)!important;
}
html body :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  background-color:#080809;
  border-color:rgba(255,255,255,.16);
}
/* Les boutons rouges, prix, images, menus fonctionnels, icônes et logos
   conservent leurs couleurs et comportements. */


/* NIGHTCODE V11.61 — FLECHES ROUGES DU CARROUSEL « NOS CREATIONS NIGHTCODE » */
/* Limite au controle .cn de l'accueil, sans changer sa taille ni son JavaScript. */
html body .s.tc .cn > button[data-a="pv"],
html body .s.tc .cn > button[data-a="nx"] {
  background:linear-gradient(180deg,#ed2946 0%,#cf1234 100%)!important;
  background-color:#e21e3e!important;
  color:#ffffff!important;
  border:1px solid #ff4962!important;
  box-shadow:0 6px 20px rgba(225,24,57,.24), inset 0 1px 0 rgba(255,255,255,.13)!important;
  transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease!important;
}
html body .s.tc .cn > button[data-a="pv"]:hover,
html body .s.tc .cn > button[data-a="nx"]:hover {
  background:linear-gradient(180deg,#ff3655,#e01a3c)!important;
  border-color:#ff7085!important;
  box-shadow:0 7px 24px rgba(230,28,63,.4), inset 0 1px 0 rgba(255,255,255,.18)!important;
  transform:translateY(-1px);
}
html body .s.tc .cn > button[data-a="pv"]:active,
html body .s.tc .cn > button[data-a="nx"]:active {
  transform:translateY(0) scale(.96);
}
html body .s.tc .cn > button[data-a="pv"]:focus-visible,
html body .s.tc .cn > button[data-a="nx"]:focus-visible {
  outline:2px solid #ff657d;
  outline-offset:3px;
}
@media (prefers-reduced-motion:reduce) {
  html body .s.tc .cn > button[data-a="pv"],
  html body .s.tc .cn > button[data-a="nx"] {transition:none!important;}
}
