/* Start custom CSS *//* ===== Page Neptune Lab — couleur et singularité « laboratoire » (le reste des styles est dans le pied de page V2) ===== */
:root{--u:#B9AEFF;--ug:#574BA6;--ubg:#09070F}
body,.elementor-location-footer{background-color:var(--ubg)}
.elementor-location-header{margin-bottom:-84px}
@supports (animation-timeline: scroll()){.elementor-location-header [data-id="609caf8"]{animation:nsHdr linear both;animation-timeline:scroll(root);animation-range:0px 320px}}
@keyframes nsHdr{from{background-color:rgba(8,6,13,0);border-bottom-color:rgba(255,255,255,0);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{background-color:color-mix(in srgb,var(--ubg) 92%,transparent);border-bottom-color:rgba(255,255,255,.06);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}
@media (max-width:767px){.elementor-location-header{margin-bottom:-72px}}

/* Haut de page : texture holographique + trame d'écran au lieu d'une vidéo */
body .elementor .ns-lab-hero{min-height:84vh}
body .elementor .ns-lab-tex{position:absolute;inset:-18%;width:auto;height:auto;max-width:none;z-index:-3;padding:0;min-width:0;pointer-events:none;background:url("https://www.neptunestudio.fr/wp-content/uploads/2026/10/texture-neptune.webp") center/cover no-repeat;opacity:.7;animation:nsLabDrift 26s ease-in-out infinite alternate}
body .elementor .ns-lab-scan{position:absolute;inset:0;width:auto;height:auto;z-index:-1;padding:0;min-width:0;pointer-events:none;opacity:.75;background:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,transparent 1px 4px)}
@keyframes nsLabDrift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-4%,3%,0) scale(1.08)}}
body .elementor .ns-lab-tag{margin:0 0 clamp(14px,1.6vw,22px);font-family:'Outfit',sans-serif;font-size:12px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.72)}
body .elementor .ns-lab-tag b{color:var(--u);letter-spacing:.06em;margin-right:.4em}
body .elementor .ns-lab-hero .ns-uv-h1{font-size:clamp(56px,10.5vw,180px)}
body .elementor .ns-lab-chips{padding:0;gap:10px;flex-wrap:wrap;margin-top:22px}
body .elementor .ns-lab-chip{display:inline-flex;padding:8px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--u) 45%,transparent);background:color-mix(in srgb,var(--u) 8%,transparent);font-family:'Outfit',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff}
body .elementor .ns-lab-acts{padding:0;gap:14px;flex-wrap:wrap;align-items:center;margin-top:clamp(36px,4vw,56px)}
body .elementor .ns-lab-ghost{color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
body .elementor .ns-lab-ghost:hover{color:#08060D;background:#fff}

/* Grille : vignettes verticales (format réseaux), rythme décalé façon planche d'essais */
body .elementor .ns-lab-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(32px,3vw,48px) clamp(16px,1.6vw,24px);padding:0}
body .elementor .ns-lab-grid > *{min-width:0}
body .elementor .ns-lab-grid > :nth-child(4n+2),body .elementor .ns-lab-grid > :nth-child(4n+4){transform:translateY(56px)}
body .elementor .ns-lab-grid .ns-proj-thumb{aspect-ratio:3/4}
body .elementor .ns-lab-grid .ns-proj-thumb::after{background:repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 1px,transparent 1px 4px),linear-gradient(0deg,rgba(9,7,15,.75),rgba(9,7,15,0) 48%,rgba(9,7,15,.25) 100%)}
body .elementor .ns-lab-grid > :first-child .ns-proj-new{display:inline-flex;align-self:flex-start;padding:6px 12px;border-radius:999px;background:var(--u);color:#08060D;font-family:'Outfit',sans-serif;font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
body .elementor .ns-lab-grid .ns-proj-title{font-size:clamp(16px,1.25vw,19px)}
body .elementor .ns-lab-grid .ns-proj-desc{font-size:14px;-webkit-line-clamp:2}
body .elementor .ns-lab-grid .ns-proj-go::before{content:"Voir sur " var(--plat) "  ↗"}
body .elementor .ns-uv-zone > .ns-wrap{padding-bottom:clamp(120px,10vw,170px)}

/* Côté studio : les 4 univers, tous visibles */
body .elementor .ns-uv-next{flex-wrap:wrap}

@media (max-width:1024px){
 body .elementor .ns-lab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body .elementor .ns-lab-grid > :nth-child(4n+2),body .elementor .ns-lab-grid > :nth-child(4n+4){transform:none}
 body .elementor .ns-lab-grid > :nth-child(2n){transform:translateY(40px)}
}
@media (max-width:767px){
 body .elementor .ns-lab-hero{min-height:78vh}
 body .elementor .ns-lab-grid{gap:28px 12px}
 body .elementor .ns-lab-grid > :nth-child(2n){transform:translateY(28px)}
 body .elementor .ns-lab-grid .ns-proj-desc,body .elementor .ns-lab-grid .ns-proj-go{display:none}
 body .elementor .ns-lab-grid .ns-proj-title{font-size:14px;-webkit-line-clamp:3}
 body .elementor .ns-lab-grid .ns-proj-plat{top:8px;right:8px;padding:5px 8px;font-size:0;gap:0}
 body .elementor .ns-lab-tag{font-size:10.5px;letter-spacing:.24em}
 body .elementor .ns-lab-acts .ns-btn-light{width:100%;text-align:center}
}
@media (prefers-reduced-motion: reduce){body .elementor .ns-lab-tex{animation:none}}/* End custom CSS */