/* ============================================================
   NORD SYSTEM — Landing Martinique (volets roulants & carports solaires)
   Combine : structure maquette "Claude" + design system "Stitch"
   (Navy #0A2647 / Orange CTA #ED8918 / Vert #82B83A / Montserrat · Noto Sans JP · JetBrains Mono)

   IMPORTANT : tout est scopé sous .ns-mq-lp et préfixé .nsmq-*
   => aucune fuite de style global, aucune collision avec Woodmart/Elementor.
   ============================================================ */

.ns-mq-lp{
  /* ---- Couleurs : marque (variables imposées au brief + nuances) ---- */
  --ns-primary:#0A2647;          /* Deep Navy — primaire */
  --ns-primary-dark:#061A33;     /* navy foncé — sections sombres */
  --ns-primary-soft:#13315C;     /* navy clair — focus alt */
  --ns-accent:#ED8918;           /* Orange Nord System — CTA */
  --ns-accent-dark:#C96E10;      /* hover CTA */
  --ns-solar-glow:#FFF0E2;       /* fond doux orange */
  --ns-green:#82B83A;            /* accent vert */
  --ns-green-soft:#F1F9E9;

  --ns-text:#0A1E27;             /* titres */
  --ns-muted:#4B5563;            /* corps de texte (technical gray) */
  --ns-muted-2:#6B7682;          /* texte secondaire */
  --ns-bg:#F9FAFB;               /* fond principal (off-white) */
  --ns-bg-2:#EEF1F5;             /* fond alterné */
  --ns-card:#FFFFFF;
  --ns-border:rgba(10,38,71,.12);
  --ns-border-2:rgba(10,38,71,.06);
  --ns-on-dark:#E7EDF4;
  --ns-on-dark-muted:#9DB0C6;

  /* ---- Typographie ---- */
  --ns-font-display:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --ns-font-body:'Noto Sans JP',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --ns-font-mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;

  /* ---- Rayons (variables imposées) ---- */
  --ns-radius-sm:14px;
  --ns-radius-md:22px;
  --ns-radius-lg:28px;
  --ns-radius-pill:999px;

  /* ---- Ombres (variables imposées + nuances) ---- */
  --ns-shadow-soft:0 4px 20px -2px rgba(10,38,71,.06);
  --ns-shadow-card:0 10px 30px -5px rgba(10,38,71,.12);
  --ns-shadow-lg:0 40px 80px -28px rgba(10,38,71,.34);
  --ns-shadow-solar:0 16px 34px -14px rgba(237,137,24,.55);

  /* ---- Layout ---- */
  --ns-maxw:1200px;
  --ns-gutter:clamp(20px,5vw,64px);

  /* base du conteneur racine */
  font-family:var(--ns-font-body);
  color:var(--ns-text);
  background:var(--ns-bg);
  line-height:1.6;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:clip;
}

/* reset léger, scopé */
.ns-mq-lp *,.ns-mq-lp *::before,.ns-mq-lp *::after{box-sizing:border-box}
.ns-mq-lp img{max-width:100%;height:auto;display:block}
.ns-mq-lp a{color:inherit;text-decoration:none}
.ns-mq-lp button{font-family:inherit}
.ns-mq-lp h1,.ns-mq-lp h2,.ns-mq-lp h3,.ns-mq-lp h4{
  font-family:var(--ns-font-display);color:var(--ns-text);margin:0;
  line-height:1.1;letter-spacing:-.02em;font-weight:700;
}
.ns-mq-lp h1{font-size:clamp(33px,5.2vw,58px)}
.ns-mq-lp h2{font-size:clamp(27px,3.4vw,42px)}
.ns-mq-lp h3{font-size:clamp(19px,1.9vw,24px)}
.ns-mq-lp p{margin:0}

/* ---------- Helpers ---------- */
.ns-mq-lp .nsmq-wrap{max-width:var(--ns-maxw);margin-inline:auto;padding-inline:var(--ns-gutter)}
.ns-mq-lp .nsmq-section{padding-block:clamp(56px,8vw,104px)}
.ns-mq-lp .nsmq-lead{font-size:clamp(17px,1.5vw,20px);color:var(--ns-muted);line-height:1.65}
.ns-mq-lp .nsmq-head{max-width:760px}
.ns-mq-lp .nsmq-head .nsmq-lead{margin-top:18px}
.ns-mq-lp .nsmq-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--ns-font-mono);font-weight:600;font-size:12.5px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--ns-primary);
}
.ns-mq-lp .nsmq-eyebrow::before{content:"";width:24px;height:2px;background:var(--ns-accent);border-radius:2px}
.ns-mq-lp .nsmq-eyebrow--on-dark{color:var(--ns-accent)}

/* ---------- Boutons ---------- */
.ns-mq-lp .nsmq-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--ns-font-body);font-weight:700;font-size:16px;
  padding:15px 26px;border-radius:var(--ns-radius-sm);border:1.5px solid transparent;
  background:var(--ns-accent);color:#fff;cursor:pointer;line-height:1;
  transition:transform .18s ease,box-shadow .25s ease,background .2s ease,border-color .2s ease,color .2s ease;
  white-space:nowrap;
}
.ns-mq-lp .nsmq-btn svg{width:19px;height:19px;flex:none}
.ns-mq-lp .nsmq-btn--solar{background:var(--ns-accent);color:#fff;box-shadow:var(--ns-shadow-solar)}
.ns-mq-lp .nsmq-btn--solar:hover{background:var(--ns-accent-dark);transform:translateY(-2px)}
.ns-mq-lp .nsmq-btn--ghost{background:transparent;color:var(--ns-primary);border-color:var(--ns-border)}
.ns-mq-lp .nsmq-btn--ghost:hover{border-color:var(--ns-primary);background:var(--ns-card);transform:translateY(-2px)}
.ns-mq-lp .nsmq-btn--dark{background:var(--ns-primary);color:#fff}
.ns-mq-lp .nsmq-btn--dark:hover{background:var(--ns-primary-dark);transform:translateY(-2px);box-shadow:var(--ns-shadow-card)}
.ns-mq-lp .nsmq-btn--light{background:#fff;color:var(--ns-primary);border-color:transparent}
.ns-mq-lp .nsmq-btn--light:hover{transform:translateY(-2px);box-shadow:var(--ns-shadow-card)}
.ns-mq-lp .nsmq-btn--outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
.ns-mq-lp .nsmq-btn--outline-light:hover{border-color:#fff;background:rgba(255,255,255,.08);transform:translateY(-2px)}
.ns-mq-lp .nsmq-btn--block{width:100%}

/* ---------- Icônes badge ---------- */
.ns-mq-lp .nsmq-ico{
  width:54px;height:54px;border-radius:16px;flex:none;
  display:grid;place-items:center;background:var(--ns-solar-glow);color:var(--ns-primary);
}
.ns-mq-lp .nsmq-ico svg{width:26px;height:26px}
.ns-mq-lp .nsmq-ico--navy{background:rgba(10,38,71,.07);color:var(--ns-primary)}
.ns-mq-lp .nsmq-ico--green{background:var(--ns-green-soft);color:var(--ns-green)}
.ns-mq-lp .nsmq-ico--ondark{background:rgba(237,137,24,.16);color:var(--ns-accent)}

/* ---------- Media (images réelles) ---------- */
.ns-mq-lp .nsmq-media{position:relative;border-radius:var(--ns-radius-lg);overflow:hidden;background:var(--ns-bg-2)}
.ns-mq-lp .nsmq-media img{width:100%;height:100%;object-fit:cover;display:block}
.ns-mq-lp .nsmq-media>picture{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:100%!important}
.ns-mq-lp .nsmq-media>picture>img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;min-width:100%!important;max-width:none!important;height:100%!important;min-height:100%!important;object-fit:cover!important;object-position:center!important}

/* ---------- HERO ---------- */
.ns-mq-lp .nsmq-hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(900px 520px at 88% -8%,rgba(237,137,24,.16),transparent 60%),
    radial-gradient(760px 520px at 4% 100%,rgba(10,38,71,.07),transparent 60%),
    var(--ns-bg);
}
.ns-mq-lp .nsmq-hero__inner{
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,64px);
  align-items:center;padding-block:clamp(44px,7vw,90px);
}

.ns-mq-lp .nsmq-hero__brand{
  display:inline-flex;align-items:center;justify-content:flex-start;
  background:#fff;border:1px solid rgba(10,38,71,.08);border-radius:18px;
  padding:12px 18px;margin-bottom:18px;box-shadow:var(--ns-shadow-soft);
  max-width:min(390px,100%);
}
.ns-mq-lp .nsmq-hero__brand img{display:block;width:min(330px,100%);height:auto;object-fit:contain;position:relative!important;inset:auto!important;max-width:100%!important;min-width:0!important;min-height:0!important;}
.ns-mq-lp .nsmq-hero__badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.ns-mq-lp .nsmq-tag{
  display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:13.5px;
  padding:8px 15px;border-radius:var(--ns-radius-pill);background:var(--ns-card);color:var(--ns-primary);
  border:1px solid var(--ns-border);box-shadow:var(--ns-shadow-soft);
}
.ns-mq-lp .nsmq-tag .nsmq-dot{width:8px;height:8px;border-radius:50%;background:var(--ns-accent)}
.ns-mq-lp .nsmq-tag .nsmq-dot--green{background:var(--ns-green)}
.ns-mq-lp .nsmq-tag .nsmq-dot--navy{background:var(--ns-primary)}
.ns-mq-lp .nsmq-hero h1{margin-bottom:20px}
.ns-mq-lp .nsmq-hero h1 .nsmq-hl{color:var(--ns-green);position:relative}
.ns-mq-lp .nsmq-hero__sub{max-width:560px}
.ns-mq-lp .nsmq-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.ns-mq-lp .nsmq-hero__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:10px;margin-top:30px;max-width:620px}
.ns-mq-lp .nsmq-hero__stat{background:#fff;border:1px solid var(--ns-border);border-radius:18px;padding:14px 15px;box-shadow:var(--ns-shadow-soft)}
.ns-mq-lp .nsmq-hero__stat b{font-family:var(--ns-font-display);font-size:clamp(22px,2.5vw,30px);color:var(--ns-primary);display:block;line-height:1;font-weight:900;letter-spacing:-.04em}
.ns-mq-lp .nsmq-hero__stat:nth-of-type(1) b{color:var(--ns-green)}
.ns-mq-lp .nsmq-hero__stat:nth-of-type(2) b{color:var(--ns-accent)}
.ns-mq-lp .nsmq-hero__stat span{font-family:var(--ns-font-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ns-muted-2);display:block;margin-top:7px;line-height:1.25}
.ns-mq-lp .nsmq-hero__sep{display:none}
.ns-mq-lp .nsmq-hero__phone{display:flex;align-items:center;gap:13px;margin-top:22px}
.ns-mq-lp .nsmq-hero__phone .nsmq-pico{width:46px;height:46px;border-radius:50%;background:var(--ns-card);
  border:1px solid var(--ns-border);display:grid;place-items:center;color:var(--ns-primary);box-shadow:var(--ns-shadow-soft)}
.ns-mq-lp .nsmq-hero__phone .nsmq-pico svg{width:20px;height:20px}
.ns-mq-lp .nsmq-hero__phone b{font-family:var(--ns-font-display);font-size:19px;color:var(--ns-text);display:block;line-height:1.1}
.ns-mq-lp .nsmq-hero__phone span{font-size:13px;color:var(--ns-muted-2);font-weight:600}
.ns-mq-lp .nsmq-hero__media{position:relative}
.ns-mq-lp .nsmq-hero__media .nsmq-media{min-height:clamp(300px,40vw,480px);box-shadow:var(--ns-shadow-lg)}
.ns-mq-lp .nsmq-hero__media .nsmq-media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(10,38,71,.32),transparent 55%)}
.ns-mq-lp .nsmq-float{position:absolute;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);
  border-radius:var(--ns-radius-sm);box-shadow:var(--ns-shadow-card);
  padding:12px 15px;display:flex;align-items:center;gap:11px;border:1px solid var(--ns-border-2);z-index:2}
.ns-mq-lp .nsmq-float .nsmq-ico{width:40px;height:40px;border-radius:12px}
.ns-mq-lp .nsmq-float .nsmq-ico svg{width:21px;height:21px}
.ns-mq-lp .nsmq-float b{font-family:var(--ns-font-display);font-size:15px;display:block;line-height:1.15;color:var(--ns-primary)}
.ns-mq-lp .nsmq-float span{font-size:12px;color:var(--ns-muted-2);font-weight:600}
.ns-mq-lp .nsmq-float--tl{top:18px;left:-16px}
.ns-mq-lp .nsmq-float--br{bottom:20px;right:-14px}
@media(max-width:920px){
  .ns-mq-lp .nsmq-hero__inner{grid-template-columns:1fr;gap:32px}
  .ns-mq-lp .nsmq-hero__media{order:-1}
  .ns-mq-lp .nsmq-float--tl{left:10px}
  .ns-mq-lp .nsmq-float--br{right:10px}
}
@media(max-width:620px){
  .ns-mq-lp .nsmq-hero__brand{padding:10px 14px;border-radius:16px;max-width:100%}
  .ns-mq-lp .nsmq-hero__stats{grid-template-columns:1fr;gap:9px}
  .ns-mq-lp .nsmq-hero__stat{padding:13px 14px}
}

/* ---------- Réassurance (bande sombre) ---------- */
.ns-mq-lp .nsmq-assure{background:var(--ns-primary-dark);color:var(--ns-on-dark)}
.ns-mq-lp .nsmq-assure__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-block:clamp(26px,3.4vw,40px)}
.ns-mq-lp .nsmq-assure__item{display:flex;align-items:flex-start;gap:14px;padding:8px clamp(8px,2vw,22px);
  border-left:1px solid rgba(255,255,255,.12)}
.ns-mq-lp .nsmq-assure__item:first-child{border-left:none}
.ns-mq-lp .nsmq-assure__item .nsmq-ico{width:46px;height:46px;background:rgba(237,137,24,.16);color:var(--ns-accent)}
.ns-mq-lp .nsmq-assure__item .nsmq-ico svg{width:22px;height:22px}
.ns-mq-lp .nsmq-assure__item b{font-family:var(--ns-font-display);font-size:16px;color:#fff;display:block;line-height:1.25;margin-bottom:3px}
.ns-mq-lp .nsmq-assure__item span{font-size:13.5px;color:var(--ns-on-dark-muted);line-height:1.45}
@media(max-width:860px){.ns-mq-lp .nsmq-assure__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .ns-mq-lp .nsmq-assure__item{border-left:none}}
@media(max-width:460px){.ns-mq-lp .nsmq-assure__grid{grid-template-columns:1fr}}

/* ---------- Contexte local ---------- */
.ns-mq-lp .nsmq-context__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,60px);align-items:center}
.ns-mq-lp .nsmq-context__list{display:flex;flex-direction:column;gap:18px;margin-top:30px}
.ns-mq-lp .nsmq-context__row{display:flex;gap:15px;align-items:flex-start}
.ns-mq-lp .nsmq-context__row .nsmq-ico{width:46px;height:46px}
.ns-mq-lp .nsmq-context__row .nsmq-ico svg{width:22px;height:22px}
.ns-mq-lp .nsmq-context__row b{font-family:var(--ns-font-display);font-size:17px;display:block;margin-bottom:3px}
.ns-mq-lp .nsmq-context__row p{font-size:15px;color:var(--ns-muted)}
.ns-mq-lp .nsmq-context__card{background:var(--ns-card);border:1px solid var(--ns-border);border-radius:var(--ns-radius-lg);
  padding:clamp(18px,2vw,26px);box-shadow:var(--ns-shadow-soft)}
.ns-mq-lp .nsmq-context__card .nsmq-media{min-height:240px;margin-bottom:18px}
.ns-mq-lp .nsmq-context__pills{display:flex;flex-wrap:wrap;gap:9px}
.ns-mq-lp .nsmq-pill{font-size:13px;font-weight:700;padding:7px 13px;border-radius:var(--ns-radius-pill);
  background:var(--ns-bg-2);color:var(--ns-primary);border:1px solid var(--ns-border-2)}
@media(max-width:860px){.ns-mq-lp .nsmq-context__grid{grid-template-columns:1fr;gap:32px}}

/* ---------- Produits (4 cartes) ---------- */
.ns-mq-lp .nsmq-products{background:var(--ns-bg-2)}
.ns-mq-lp .nsmq-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:48px}
.ns-mq-lp .nsmq-card{background:var(--ns-card);border:1px solid var(--ns-border);border-radius:var(--ns-radius-lg);
  overflow:hidden;display:flex;flex-direction:column;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.ns-mq-lp .nsmq-card:hover{transform:translateY(-6px);box-shadow:var(--ns-shadow-card);border-color:transparent}
.ns-mq-lp .nsmq-card__media{position:relative;height:188px}
.ns-mq-lp .nsmq-card__media .nsmq-media{border-radius:0;height:188px;min-height:0}
.ns-mq-lp .nsmq-card__media--icon{background:linear-gradient(150deg,var(--ns-primary),var(--ns-primary-soft));display:grid;place-items:center}
.ns-mq-lp .nsmq-card__media--icon svg{width:64px;height:64px;color:rgba(255,255,255,.9)}
.ns-mq-lp .nsmq-card__icon{position:absolute;left:18px;bottom:-22px;width:50px;height:50px;border-radius:14px;
  background:var(--ns-card);box-shadow:var(--ns-shadow-card);display:grid;place-items:center;color:var(--ns-primary)}
.ns-mq-lp .nsmq-card__icon svg{width:24px;height:24px}
.ns-mq-lp .nsmq-card__body{padding:32px 22px 24px;display:flex;flex-direction:column;flex:1}
.ns-mq-lp .nsmq-card__body h3{font-size:19px;margin-bottom:14px}
.ns-mq-lp .nsmq-bullets{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:9px}
.ns-mq-lp .nsmq-bullets li{position:relative;padding-left:26px;font-size:14.5px;color:var(--ns-muted);line-height:1.45}
.ns-mq-lp .nsmq-bullets li svg{position:absolute;left:0;top:3px;width:16px;height:16px;color:var(--ns-green)}
.ns-mq-lp .nsmq-card .nsmq-btn{margin-top:auto}
@media(max-width:1080px){.ns-mq-lp .nsmq-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.ns-mq-lp .nsmq-cards{grid-template-columns:1fr}}

/* ---------- Sections focus (sombres) ---------- */
.ns-mq-lp .nsmq-focus{background:var(--ns-primary-dark);color:var(--ns-on-dark);position:relative;overflow:hidden}
.ns-mq-lp .nsmq-focus--alt{background:var(--ns-primary-soft)}
.ns-mq-lp .nsmq-focus::before{content:"";position:absolute;inset:0;
  background:radial-gradient(700px 420px at 85% 0%,rgba(237,137,24,.12),transparent 60%);pointer-events:none}
.ns-mq-lp .nsmq-focus__grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,60px);align-items:center}
.ns-mq-lp .nsmq-focus--alt .nsmq-focus__grid{direction:rtl}
.ns-mq-lp .nsmq-focus--alt .nsmq-focus__grid>*{direction:ltr}
.ns-mq-lp .nsmq-focus h2{color:#fff;margin-bottom:20px}
.ns-mq-lp .nsmq-focus .nsmq-lead{color:var(--ns-on-dark-muted)}
.ns-mq-lp .nsmq-focus__points{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.ns-mq-lp .nsmq-focus__points li{display:flex;gap:13px;align-items:flex-start;font-size:15.5px;color:var(--ns-on-dark)}
.ns-mq-lp .nsmq-focus__points li .nsmq-mini{width:26px;height:26px;border-radius:8px;background:rgba(237,137,24,.16);
  color:var(--ns-accent);flex:none;display:grid;place-items:center;margin-top:1px}
.ns-mq-lp .nsmq-focus__points li .nsmq-mini svg{width:15px;height:15px}
.ns-mq-lp .nsmq-focus__media .nsmq-media{min-height:clamp(280px,34vw,420px);box-shadow:var(--ns-shadow-lg)}
.ns-mq-lp .nsmq-focus__note{margin-top:24px;font-size:13.5px;color:var(--ns-on-dark-muted);
  border-left:2px solid rgba(255,255,255,.2);padding-left:14px;font-style:italic}
.ns-mq-lp .nsmq-focus .nsmq-btn{margin-top:30px}
@media(max-width:860px){.ns-mq-lp .nsmq-focus__grid,.ns-mq-lp .nsmq-focus--alt .nsmq-focus__grid{grid-template-columns:1fr;direction:ltr;gap:32px}
  .ns-mq-lp .nsmq-focus__media{order:-1}}

/* ---------- Carport solaire ---------- */
.ns-mq-lp .nsmq-solar{background:
  radial-gradient(800px 460px at 12% 0%,rgba(237,137,24,.14),transparent 60%),
  radial-gradient(700px 460px at 100% 100%,rgba(47,163,107,.1),transparent 55%),
  var(--ns-bg)}
.ns-mq-lp .nsmq-solar__top{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:center}
.ns-mq-lp .nsmq-solar__media .nsmq-media{min-height:clamp(300px,36vw,440px);box-shadow:var(--ns-shadow-lg)}
.ns-mq-lp .nsmq-solar .nsmq-btn{margin-top:28px}
.ns-mq-lp .nsmq-schema{margin-top:clamp(40px,5vw,64px);background:var(--ns-card);border:1px solid var(--ns-border);
  border-radius:var(--ns-radius-lg);padding:clamp(24px,3vw,40px);box-shadow:var(--ns-shadow-soft)}
.ns-mq-lp .nsmq-schema h3{text-align:center;font-size:18px;margin-bottom:30px;color:var(--ns-primary)}
.ns-mq-lp .nsmq-schema__flow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:start}
.ns-mq-lp .nsmq-schema__node{text-align:center;position:relative}
.ns-mq-lp .nsmq-schema__node .nsmq-disc{width:78px;height:78px;border-radius:22px;margin:0 auto 16px;display:grid;place-items:center;box-shadow:var(--ns-shadow-soft)}
.ns-mq-lp .nsmq-schema__node:nth-child(1) .nsmq-disc{background:var(--ns-solar-glow);color:var(--ns-accent-dark)}
.ns-mq-lp .nsmq-schema__node:nth-child(2) .nsmq-disc{background:rgba(10,38,71,.07);color:var(--ns-primary)}
.ns-mq-lp .nsmq-schema__node:nth-child(3) .nsmq-disc{background:var(--ns-green-soft);color:var(--ns-green)}
.ns-mq-lp .nsmq-schema__node:nth-child(4) .nsmq-disc{background:rgba(10,38,71,.07);color:var(--ns-primary)}
.ns-mq-lp .nsmq-schema__node .nsmq-disc svg{width:34px;height:34px}
.ns-mq-lp .nsmq-schema__node b{font-family:var(--ns-font-display);font-size:16px;display:block}
.ns-mq-lp .nsmq-schema__node span{font-size:13px;color:var(--ns-muted)}
.ns-mq-lp .nsmq-schema__node::after{content:"";position:absolute;top:39px;right:-7px;width:14px;height:14px;
  border-top:2px solid var(--ns-border);border-right:2px solid var(--ns-border);transform:rotate(45deg)}
.ns-mq-lp .nsmq-schema__node:last-child::after{display:none}
@media(max-width:780px){.ns-mq-lp .nsmq-solar__top{grid-template-columns:1fr;gap:32px}
  .ns-mq-lp .nsmq-schema__flow{grid-template-columns:1fr;gap:30px}
  .ns-mq-lp .nsmq-schema__node{display:flex;align-items:center;gap:18px;text-align:left}
  .ns-mq-lp .nsmq-schema__node .nsmq-disc{margin:0;flex:none}
  .ns-mq-lp .nsmq-schema__node::after{top:auto;bottom:-22px;right:auto;left:32px;transform:rotate(135deg)}}

/* ---------- Méthode / timeline ---------- */
.ns-mq-lp .nsmq-method__flow{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:54px;position:relative}
.ns-mq-lp .nsmq-method__flow::before{content:"";position:absolute;top:26px;left:8%;right:8%;height:2px;
  background:linear-gradient(90deg,var(--ns-accent),var(--ns-primary));opacity:.4;border-radius:2px}
.ns-mq-lp .nsmq-step{position:relative;text-align:center}
.ns-mq-lp .nsmq-step__num{width:54px;height:54px;border-radius:50%;background:var(--ns-card);border:2px solid var(--ns-accent);
  color:var(--ns-primary);font-family:var(--ns-font-display);font-weight:800;font-size:20px;
  display:grid;place-items:center;margin:0 auto 20px;position:relative;z-index:1;box-shadow:var(--ns-shadow-soft)}
.ns-mq-lp .nsmq-step h3{font-size:18px;margin-bottom:8px}
.ns-mq-lp .nsmq-step p{font-size:14.5px;color:var(--ns-muted)}
@media(max-width:780px){
  .ns-mq-lp .nsmq-method__flow{grid-template-columns:1fr;gap:0;margin-left:8px}
  .ns-mq-lp .nsmq-method__flow::before{top:0;bottom:0;left:26px;right:auto;width:2px;height:auto}
  .ns-mq-lp .nsmq-step{display:grid;grid-template-columns:54px 1fr;gap:18px;text-align:left;padding-bottom:32px}
  .ns-mq-lp .nsmq-step__num{margin:0}
  .ns-mq-lp .nsmq-step:last-child{padding-bottom:0}}

/* ---------- Aide au choix (tableau) ---------- */
.ns-mq-lp .nsmq-compare{background:var(--ns-bg-2)}
.ns-mq-lp .nsmq-compare__table{margin-top:44px;background:var(--ns-card);border:1px solid var(--ns-border);
  border-radius:var(--ns-radius-lg);overflow:hidden;box-shadow:var(--ns-shadow-soft)}
.ns-mq-lp .nsmq-compare__row{display:grid;grid-template-columns:1.3fr 1fr auto;gap:18px;align-items:center;
  padding:20px clamp(18px,2.4vw,30px);border-top:1px solid var(--ns-border-2)}
.ns-mq-lp .nsmq-compare__row:first-child{border-top:none}
.ns-mq-lp .nsmq-compare__row--head{background:var(--ns-primary-dark);color:#fff}
.ns-mq-lp .nsmq-compare__row--head b{font-family:var(--ns-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ns-on-dark-muted);font-weight:600}
.ns-mq-lp .nsmq-compare__need{display:flex;align-items:center;gap:13px}
.ns-mq-lp .nsmq-compare__need .nsmq-ico{width:42px;height:42px}
.ns-mq-lp .nsmq-compare__need .nsmq-ico svg{width:20px;height:20px}
.ns-mq-lp .nsmq-compare__need b{font-family:var(--ns-font-display);font-size:16px}
.ns-mq-lp .nsmq-compare__sol{font-weight:700;color:var(--ns-primary);font-size:15.5px}
.ns-mq-lp .nsmq-compare__row .nsmq-btn{padding:11px 18px;font-size:14px}
@media(max-width:720px){
  .ns-mq-lp .nsmq-compare__row{grid-template-columns:1fr;gap:12px;text-align:left}
  .ns-mq-lp .nsmq-compare__row--head{display:none}
  .ns-mq-lp .nsmq-compare__sol::before{content:"→ ";color:var(--ns-accent-dark);font-weight:800}}

/* ---------- Devis / formulaire (sombre) ---------- */
.ns-mq-lp .nsmq-devis{background:var(--ns-primary-dark);color:var(--ns-on-dark);scroll-margin-top:20px}
.ns-mq-lp .nsmq-devis__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,4vw,56px);align-items:start}
.ns-mq-lp .nsmq-devis h2{color:#fff;margin-bottom:18px}
.ns-mq-lp .nsmq-devis .nsmq-lead{color:var(--ns-on-dark-muted)}
.ns-mq-lp .nsmq-devis__contacts{margin-top:32px;display:flex;flex-direction:column;gap:14px}
.ns-mq-lp .nsmq-contact-line{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);border-radius:var(--ns-radius-sm);padding:14px 16px}
.ns-mq-lp .nsmq-contact-line .nsmq-pico{width:44px;height:44px;border-radius:12px;background:rgba(237,137,24,.16);
  color:var(--ns-accent);display:grid;place-items:center;flex:none}
.ns-mq-lp .nsmq-contact-line .nsmq-pico svg{width:20px;height:20px}
.ns-mq-lp .nsmq-contact-line b{font-family:var(--ns-font-display);font-size:18px;color:#fff;display:block;line-height:1.15}
.ns-mq-lp .nsmq-contact-line span{font-size:13px;color:var(--ns-on-dark-muted);font-weight:600}
.ns-mq-lp .nsmq-devis__form{background:#fff;border-radius:var(--ns-radius-lg);padding:clamp(22px,3vw,34px);box-shadow:var(--ns-shadow-lg);color:var(--ns-text)}
.ns-mq-lp .nsmq-devis__form h3{font-size:20px;margin-bottom:6px}
.ns-mq-lp .nsmq-devis__form .nsmq-form-sub{font-size:14px;color:var(--ns-muted);margin-bottom:22px}
.ns-mq-lp .nsmq-devis__legal{font-size:12px;color:var(--ns-muted-2);text-align:center;margin-top:14px}
@media(max-width:860px){.ns-mq-lp .nsmq-devis__grid{grid-template-columns:1fr;gap:32px}}


.ns-mq-lp .nsmq-devis__brand{display:inline-flex;align-items:center;justify-content:flex-start;margin-bottom:24px;max-width:min(420px,100%)}
.ns-mq-lp .nsmq-devis__brand img{display:block;width:min(360px,100%);height:auto;object-fit:contain;position:relative!important;inset:auto!important;max-width:100%!important;min-width:0!important;min-height:0!important;}

/* ---- Gravity Forms : harmonisation (scopée à la landing uniquement) ---- */
.ns-mq-lp .gform_wrapper.gravity-theme .gform_fields{gap:16px}
.ns-mq-lp .gform_wrapper .gfield_label{font-family:var(--ns-font-mono);font-size:12.5px;font-weight:600;
  letter-spacing:.04em;color:var(--ns-primary)!important;text-transform:uppercase;margin-bottom:7px}
.ns-mq-lp .gform_wrapper input[type=text],
.ns-mq-lp .gform_wrapper input[type=email],
.ns-mq-lp .gform_wrapper input[type=tel],
.ns-mq-lp .gform_wrapper input[type=number],
.ns-mq-lp .gform_wrapper input[type=url],
.ns-mq-lp .gform_wrapper select,
.ns-mq-lp .gform_wrapper textarea{
  font-family:var(--ns-font-body)!important;font-size:15px!important;padding:13px 15px!important;
  border-radius:var(--ns-radius-sm)!important;border:1.5px solid var(--ns-border)!important;
  background:var(--ns-bg)!important;color:var(--ns-text)!important;width:100%!important;
  transition:border-color .18s,box-shadow .18s;box-shadow:none!important}
.ns-mq-lp .gform_wrapper input:focus,
.ns-mq-lp .gform_wrapper select:focus,
.ns-mq-lp .gform_wrapper textarea:focus{
  outline:none!important;border-color:var(--ns-primary)!important;
  box-shadow:0 0 0 4px rgba(10,38,71,.12)!important;background:#fff!important}
.ns-mq-lp .gform_wrapper textarea{min-height:110px!important;resize:vertical}
.ns-mq-lp .gform_wrapper .gform_footer{margin-top:18px!important;padding:0!important}
.ns-mq-lp .gform_wrapper .gform_button,
.ns-mq-lp .gform_wrapper input[type=submit]{
  font-family:var(--ns-font-body)!important;font-weight:700!important;font-size:16px!important;
  padding:15px 26px!important;border-radius:var(--ns-radius-sm)!important;border:none!important;
  background:var(--ns-accent)!important;color:#fff!important;cursor:pointer;width:100%!important;
  box-shadow:var(--ns-shadow-solar);transition:transform .18s ease,background .2s ease}
.ns-mq-lp .gform_wrapper .gform_button:hover,
.ns-mq-lp .gform_wrapper input[type=submit]:hover{background:var(--ns-accent-dark)!important;transform:translateY(-2px)}
.ns-mq-lp .gform_wrapper .gfield_required{color:var(--ns-accent-dark)!important}
.ns-mq-lp .gform_wrapper .validation_message,
.ns-mq-lp .gform_wrapper .gfield_validation_message{color:#ba1a1a!important;font-size:13px!important;
  background:#ffe7e5!important;border:1px solid #ffb4ac!important;border-radius:10px!important;padding:8px 12px!important;margin-top:6px!important}
.ns-mq-lp .gform_wrapper .gform_validation_errors{border-radius:var(--ns-radius-sm)!important}
.ns-mq-lp .gform_confirmation_message{font-size:16px;color:var(--ns-primary);font-weight:700;
  background:var(--ns-green-soft);border:1px solid rgba(47,163,107,.4);border-radius:var(--ns-radius-sm);padding:18px 20px}


/* ---- Gravity Forms v1.5 : select visible et déroulant non coupé ---- */
.ns-mq-lp .nsmq-devis__form,
.ns-mq-lp .gform_wrapper,
.ns-mq-lp .gform_wrapper form,
.ns-mq-lp .gform_wrapper .gform_body,
.ns-mq-lp .gform_wrapper .gform_fields,
.ns-mq-lp .gform_wrapper .gfield,
.ns-mq-lp .gform_wrapper .ginput_container{overflow:visible!important}
.ns-mq-lp .gform_wrapper select,
.ns-mq-lp .gform_wrapper .gfield_select,
.ns-mq-lp .gform_wrapper.gravity-theme select{
  height:52px!important;min-height:52px!important;line-height:52px!important;padding-top:0!important;padding-bottom:0!important;
  appearance:auto!important;-webkit-appearance:auto!important;background:#fff!important;color:var(--ns-text)!important;vertical-align:middle!important
}
.ns-mq-lp .gform_wrapper .chosen-container-single .chosen-single,
.ns-mq-lp .gform_wrapper .select2-container .select2-selection--single{
  height:52px!important;min-height:52px!important;line-height:52px!important;border-radius:var(--ns-radius-sm)!important;overflow:visible!important
}
.ns-mq-lp .gform_wrapper .chosen-container-single .chosen-single span,
.ns-mq-lp .gform_wrapper .select2-container .select2-selection__rendered{line-height:52px!important}
.ns-mq-lp .gform_wrapper .chosen-container,
.ns-mq-lp .gform_wrapper .select2-container{z-index:30!important;width:100%!important}

/* ---------- FAQ ---------- */
.ns-mq-lp .nsmq-faq__grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(28px,4vw,56px);align-items:start}
.ns-mq-lp .nsmq-faq__intro a{color:var(--ns-primary);font-weight:700;text-decoration:underline}
.ns-mq-lp .nsmq-faq__list{display:flex;flex-direction:column;gap:12px}
.ns-mq-lp .nsmq-faq__item{background:var(--ns-card);border:1px solid var(--ns-border);border-radius:var(--ns-radius-sm);overflow:hidden;
  transition:box-shadow .2s,border-color .2s}
.ns-mq-lp .nsmq-faq__item.is-open{box-shadow:var(--ns-shadow-card);border-color:transparent}
.ns-mq-lp .nsmq-faq__q{width:100%;text-align:left;background:none;border:none;cursor:pointer;
  padding:20px 22px;display:flex;align-items:center;gap:16px;
  font-family:var(--ns-font-display);font-weight:700;font-size:16.5px;color:var(--ns-text)}
.ns-mq-lp .nsmq-faq__q .nsmq-plus{margin-left:auto;width:26px;height:26px;flex:none;border-radius:8px;background:var(--ns-bg-2);
  display:grid;place-items:center;color:var(--ns-primary);transition:transform .25s,background .2s}
.ns-mq-lp .nsmq-faq__item.is-open .nsmq-plus{background:var(--ns-accent);transform:rotate(45deg)}
.ns-mq-lp .nsmq-faq__q .nsmq-plus svg{width:15px;height:15px}
.ns-mq-lp .nsmq-faq__a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.ns-mq-lp .nsmq-faq__a p{padding:0 22px 22px;font-size:15.5px;color:var(--ns-muted)}
@media(max-width:780px){.ns-mq-lp .nsmq-faq__grid{grid-template-columns:1fr;gap:30px}}

/* ---------- CTA final ---------- */
.ns-mq-lp .nsmq-final{background:var(--ns-primary-dark);color:#fff;text-align:center;position:relative;overflow:hidden}
.ns-mq-lp .nsmq-final::before{content:"";position:absolute;inset:0;
  background:radial-gradient(700px 380px at 50% 0%,rgba(237,137,24,.16),transparent 62%);pointer-events:none}
.ns-mq-lp .nsmq-final__inner{position:relative;max-width:740px;margin-inline:auto}
.ns-mq-lp .nsmq-final h2{color:#fff}
.ns-mq-lp .nsmq-final .nsmq-lead{color:var(--ns-on-dark-muted);margin:18px auto 32px}
.ns-mq-lp .nsmq-final__actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}

/* ---------- Sticky CTA mobile ---------- */
.ns-mq-lp .nsmq-sticky{position:fixed;left:0;right:0;bottom:0;z-index:9990;display:none;
  grid-template-columns:1fr 1fr;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
  background:rgba(6,26,51,.96);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1)}
.ns-mq-lp .nsmq-sticky .nsmq-btn{padding:14px;font-size:15px}
@media(max-width:768px){
  .ns-mq-lp .nsmq-sticky{display:grid}
  .ns-mq-lp{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
}

/* ---------- Animations (fade-up discret) ---------- */
.ns-mq-lp .nsmq-reveal{opacity:0;transform:translateY(22px);
  transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
.ns-mq-lp .nsmq-reveal.is-in{opacity:1;transform:none}
.ns-mq-lp .nsmq-reveal.d1{transition-delay:.08s}
.ns-mq-lp .nsmq-reveal.d2{transition-delay:.16s}
.ns-mq-lp .nsmq-reveal.d3{transition-delay:.24s}
.ns-mq-lp .nsmq-reveal.d4{transition-delay:.32s}
@media (prefers-reduced-motion:reduce){
  .ns-mq-lp .nsmq-reveal{opacity:1;transform:none;transition:none}
  .ns-mq-lp .nsmq-btn,.ns-mq-lp .nsmq-card,.ns-mq-lp .nsmq-faq__item{transition:none}
}


/* v1.5 fallback Elementor : contenu visible, images réellement 100% cover, CTA orange, vert d'accent */
.ns-mq-lp{--ns-accent:#ED8918!important;--ns-accent-dark:#C96E10!important;--ns-green:#82B83A!important;--ns-green-soft:#F1F9E9!important;--ns-solar-glow:#FFF0E2!important;--ns-shadow-solar:0 16px 34px -14px rgba(237,137,24,.55)!important;}
.ns-mq-lp .nsmq-reveal{opacity:1!important;transform:none!important;visibility:visible!important;}
.ns-mq-lp .nsmq-hl,.ns-mq-lp .nsmq-green{color:#82B83A!important;}
.ns-mq-lp .nsmq-btn,.ns-mq-lp .nsmq-btn--solar,.ns-mq-lp .gform_wrapper .gform_button,.ns-mq-lp .gform_wrapper input[type=submit]{background:#ED8918!important;color:#fff!important;border-color:#ED8918!important;}
.ns-mq-lp .nsmq-btn--solar:hover,.ns-mq-lp .gform_wrapper .gform_button:hover,.ns-mq-lp .gform_wrapper input[type=submit]:hover{background:#C96E10!important;color:#fff!important;border-color:#C96E10!important;}
.ns-mq-lp .nsmq-btn--ghost{background:transparent!important;color:var(--ns-primary)!important;border-color:var(--ns-border)!important;}
.ns-mq-lp .nsmq-btn--ghost:hover{background:#fff!important;color:var(--ns-primary)!important;border-color:var(--ns-primary)!important;}
.ns-mq-lp .nsmq-btn--dark{background:var(--ns-primary)!important;color:#fff!important;border-color:var(--ns-primary)!important;}
.ns-mq-lp .nsmq-btn--light{background:#fff!important;color:var(--ns-primary)!important;border-color:#fff!important;}
.ns-mq-lp .nsmq-btn--outline-light{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.4)!important;}
.ns-mq-lp .nsmq-media{position:relative!important;width:100%!important;max-width:100%!important;overflow:hidden!important;}
.ns-mq-lp .nsmq-media>picture{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:100%!important;}
.ns-mq-lp .nsmq-media>picture>img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;min-width:100%!important;max-width:none!important;height:100%!important;min-height:100%!important;object-fit:cover!important;object-position:center!important;}
.elementor .ns-elementor-split-section,.elementor .ns-elementor-split-section>.elementor-container,.elementor .ns-elementor-split-section .elementor-column,.elementor .ns-elementor-split-section .elementor-widget-wrap,.elementor .ns-elementor-split-section .elementor-widget,.elementor .ns-elementor-split-section .elementor-widget-container{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;}

/* v1.6 — CTA local dans la section contexte */
.ns-mq-lp .nsmq-context__cta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px;
  margin-top:28px;
}
.ns-mq-lp .nsmq-context__cta .nsmq-btn{
  background:#ED8918!important;
  border-color:#ED8918!important;
  color:#fff!important;
  box-shadow:var(--ns-shadow-solar);
}
.ns-mq-lp .nsmq-context__cta .nsmq-btn:hover{
  background:#C96E10!important;
  border-color:#C96E10!important;
  color:#fff!important;
  transform:translateY(-2px);
}
@media(max-width:540px){
  .ns-mq-lp .nsmq-context__cta .nsmq-btn{width:100%;white-space:normal;text-align:center;}
}
