*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#000;--bg-2:#0a0a0a;--bg-card:#111;
  --orange:#FF5C1A;--orange-2:#FF7A3D;--copper:#7a4a35;--copper-2:#8E5638;
  --text:#fff;--muted:#a1a1aa;--muted-2:#71717a;
  --border:rgba(255,255,255,.08);--border-2:rgba(255,255,255,.12);
  /* ── Hybrid DA : accent secondaire pour la section IA uniquement ── */
  --electric:#4D7CFE;          /* bleu électrique */
  --electric-2:#7AA0FF;         /* hover/lighter */
  --electric-glow:rgba(77,124,254,.32);
  /* ── Highlights premium (Linear/Apple style) ── */
  --highlight-warm:rgba(255,170,102,.55);
  --highlight-cool:rgba(122,160,255,.45);
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Inter',sans-serif;overflow-x:hidden;line-height:1.5;-webkit-font-smoothing:antialiased;padding-bottom:90px}
::selection{background:rgba(255,92,26,.35);color:#fff}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}
@media(min-width:1024px){.container{padding:0 2.5rem}}

/* ─── PILL BUTTON (mockup style) ─── */
.btn-pill{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:1px solid rgba(255,255,255,.18);color:#fff;padding:.5rem .5rem .5rem 1.25rem;border-radius:9999px;font-size:.9rem;font-weight:500;transition:background .25s,border-color .25s,transform .25s;font-family:'Inter',sans-serif}
.btn-pill:hover{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.3);transform:translateY(-1px)}
.btn-pill .arrow{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9999px;background:var(--orange);transition:transform .3s}
.btn-pill:hover .arrow{transform:translateX(3px)}
.btn-pill .arrow svg{width:14px;height:14px;color:#fff}
.btn-pill.solid{background:var(--orange);border-color:var(--orange)}
.btn-pill.solid:hover{background:var(--orange-2);border-color:var(--orange-2)}
.btn-pill.solid .arrow{background:rgba(0,0,0,.35)}
.btn-pill.minimal{border-color:transparent;padding-left:1rem}

/* ─── NAV ─── */
nav.topbar{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.25rem 0;transition:background .3s,backdrop-filter .3s,padding .3s;background:linear-gradient(180deg,rgba(0,0,0,.65) 0%,rgba(0,0,0,.4) 50%,transparent 100%)}
nav.topbar.scrolled{background:rgba(8,6,5,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:.75rem 0;border-bottom:1px solid rgba(255,138,77,.08)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.nav-burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;border-radius:9999px;border:1px solid var(--border);transition:border-color .25s}
.nav-burger:hover{border-color:rgba(255,255,255,.3)}
.nav-burger span{width:18px;height:1.5px;background:#fff;margin:0 auto;transition:transform .3s}
.nav-right{display:flex;align-items:center;gap:.85rem}
.nav-slots{display:none;align-items:center;gap:.5rem;font-size:.74rem;color:rgba(255,255,255,.7);padding:.4rem .85rem;border-radius:9999px;background:rgba(34,216,133,.06);border:1px solid rgba(34,216,133,.22)}
@media(min-width:900px){.nav-slots{display:inline-flex}}
.nav-slots-dot{width:6px;height:6px;border-radius:50%;background:#22D885;box-shadow:0 0 8px #22D885;animation:hudDotPulse 1.6s ease-in-out;flex-shrink:0}
.nav-slots-text strong{color:#22D885;font-weight:700}
.nav-cta{padding:.55rem .55rem .55rem 1.15rem !important;font-size:.85rem}
.moov-logo{display:flex;align-items:center;gap:.4rem;font-family:'DM Sans',sans-serif}
.moov-logo .wave{color:var(--orange);font-size:1.4rem;line-height:1;font-family:'Caveat',cursive;font-weight:700;display:inline-block;transform:translateY(-1px)}
.moov-logo .word{font-weight:600;font-size:1.1rem;letter-spacing:-.01em}
.moov-logo .agency{color:var(--muted);font-size:.7rem;font-weight:400;margin-left:.05rem;align-self:flex-end;margin-bottom:.2rem}
.moov-logo-img{height:55px;width:auto;display:block;image-rendering:-webkit-optimize-contrast}

/* ─── HERO ─── */
#hero{padding:8rem 0 4rem;position:relative;overflow:hidden}
@media(min-width:1024px){#hero{padding:10rem 0 5rem;min-height:100vh;display:flex;align-items:center}}
#hero .container{position:relative;z-index:4;width:100%}

/* v2026 — image cinematique pleine largeur en background right (ribbon obsidien) */
.hero-bg-image{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-bg-image img{position:absolute;right:0;top:50%;width:auto;height:115%;min-height:680px;max-width:none;object-fit:cover;object-position:right center;opacity:.92;filter:contrast(1.06) saturate(1.12);will-change:transform}
/* Ken-Burns simple : drift + zoom doux 32s, transition fluide, mouvement perceptible mais discret */
.hero-bg-img-anim{animation:heroKenBurns 32s ease-in-out infinite alternate}
@keyframes heroKenBurns{
  0%   { transform: translateY(-50%) scale(1.00) translate3d(0%, 0%, 0) }
  100% { transform: translateY(-50%) scale(1.04) translate3d(-1.5%, 0.8%, 0) }
}
@media (prefers-reduced-motion: reduce){ .hero-bg-img-anim{animation:none} }
.hero-bg-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.85) 30%,rgba(0,0,0,.45) 55%,rgba(0,0,0,.15) 80%,transparent 100%),linear-gradient(180deg,rgba(0,0,0,.45),transparent 30%,transparent 70%,rgba(0,0,0,.6))}
@media (max-width:1023px){.hero-bg-image img{opacity:.4;height:100%;object-position:center;width:100%}.hero-bg-image::after{background:linear-gradient(180deg,rgba(0,0,0,.65),rgba(0,0,0,.55) 40%,rgba(0,0,0,.85))}.hero-bg-img-anim{animation-duration:36s}}

/* ─── STICKY CTA BAR ─── */
.sticky-cta{position:fixed;bottom:1rem;left:1rem;right:1rem;z-index:90;background:linear-gradient(180deg,rgba(20,12,10,.96),rgba(15,10,8,.98));border:1px solid rgba(255,92,26,.3);border-radius:1rem;padding:.65rem .9rem;display:flex;align-items:center;gap:.75rem;box-shadow:0 20px 50px -10px rgba(0,0,0,.7),0 0 0 1px rgba(255,92,26,.12);backdrop-filter:blur(14px);transform:translateY(120%);transition:transform .5s cubic-bezier(.2,.7,.2,1);max-width:680px;margin:0 auto}
.sticky-cta.show{transform:translateY(0)}
.sticky-cta.dismissed{display:none}
.sticky-cta-inner{display:flex;align-items:center;gap:.75rem;width:100%}
.sticky-cta-text{flex:1;display:flex;align-items:center;gap:.6rem;font-size:.78rem;color:rgba(255,255,255,.85);min-width:0}
.sticky-cta-text strong{color:#fff;font-weight:600}
.sticky-cta-left{color:var(--orange);font-weight:600;white-space:nowrap}
.sticky-cta-pulse{width:8px;height:8px;border-radius:50%;background:#22D885;flex-shrink:0;box-shadow:0 0 0 0 rgba(34,216,133,.6);animation:dotPulse 1.6s ease-in-out}
.sticky-cta-btn{padding:.45rem .45rem .45rem 1rem;font-size:.82rem;flex-shrink:0;white-space:nowrap}
.sticky-cta-btn .arrow{width:28px;height:28px}
.sticky-cta-btn .arrow svg{width:12px;height:12px}
.sticky-cta-close{width:28px;height:28px;border-radius:50%;background:transparent;color:rgba(255,255,255,.5);font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .2s,background .2s}
.sticky-cta-close:hover{color:#fff;background:rgba(255,255,255,.06)}
@media(max-width:520px){.sticky-cta-text span:not(.sticky-cta-pulse){font-size:.72rem}.sticky-cta-btn span:first-child{display:none}}

/* ─── PAGE BACKGROUND : animated blobs ─── */
.page-bg{position:fixed;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.hero-blob{position:absolute;border-radius:50%;filter:blur(60px);transform:translateZ(0);opacity:.75}
.hero-blob.b1{width:520px;height:520px;background:radial-gradient(circle,rgba(255,92,26,.85) 0%,rgba(255,92,26,0) 70%);top:-12%;left:-8%;animation:blob1 28s cubic-bezier(.45,.05,.55,.95)}
.hero-blob.b2{width:460px;height:460px;background:radial-gradient(circle,rgba(255,140,0,.75) 0%,rgba(255,140,0,0) 70%);bottom:-18%;right:-6%;animation:blob2 32s cubic-bezier(.65,.05,.35,.95)}
.hero-blob.b3,.hero-blob.b4{display:none}

@keyframes blob1{
  0%   {transform:translate(0,0) scale(1)}
  20%  {transform:translate(180px,260px) scale(1.18)}
  40%  {transform:translate(420px,140px) scale(.92)}
  60%  {transform:translate(320px,420px) scale(1.25)}
  80%  {transform:translate(120px,220px) scale(1.08)}
  100% {transform:translate(0,0) scale(1)}
}
@keyframes blob2{
  0%   {transform:translate(0,0) scale(1)}
  25%  {transform:translate(-280px,-180px) scale(1.22)}
  50%  {transform:translate(-140px,-380px) scale(.88)}
  75%  {transform:translate(-360px,-100px) scale(1.18)}
  100% {transform:translate(0,0) scale(1)}
}
@keyframes blob3{
  0%   {transform:translate(0,0) scale(1)}
  20%  {transform:translate(-220px,140px) scale(1.15)}
  40%  {transform:translate(-100px,320px) scale(1.28)}
  60%  {transform:translate(260px,180px) scale(.92)}
  80%  {transform:translate(140px,-80px) scale(1.1)}
  100% {transform:translate(0,0) scale(1)}
}
@keyframes blob4{
  0%   {transform:translate(0,0) scale(1)}
  33%  {transform:translate(320px,-120px) scale(1.2)}
  66%  {transform:translate(-180px,260px) scale(.85)}
  100% {transform:translate(0,0) scale(1)}
}

.hero-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center;width:100%}
@media(min-width:1024px){.hero-grid{grid-template-columns:1.05fr 1fr;gap:3rem}}
/* Si le hero-visual est absent : on étend le texte sur toute la largeur */
.hero-grid:has(.hero-text:only-child){grid-template-columns:1fr !important;max-width:880px;margin:0 auto;text-align:left}
.hero-text h1{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.08;letter-spacing:-.025em;margin-bottom:1.25rem;max-width:600px}
.hero-text h1 .hl-orange{color:var(--orange);position:relative;white-space:nowrap}
.hero-text p{color:rgba(255,255,255,.75);font-size:1rem;max-width:540px;margin-bottom:1.75rem;line-height:1.65}
.hero-text p strong{color:#fff;font-weight:600}
/* Trust badge */
.hero-trust-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .9rem;border-radius:9999px;background:rgba(255,92,26,.08);border:1px solid rgba(255,92,26,.25);font-size:.78rem;color:rgba(255,255,255,.85);margin-bottom:1.5rem}
.hero-trust-badge strong{color:#fff;font-weight:600}
.dot-live{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 0 rgba(255,92,26,.6);animation:dotPulse 1.6s ease-in-out}
@keyframes dotPulse{0%{box-shadow:0 0 0 0 rgba(255,92,26,.5)}70%{box-shadow:0 0 0 8px rgba(255,92,26,0)}100%{box-shadow:0 0 0 0 rgba(255,92,26,0)}}
/* Hero CTA row */
.hero-cta-row{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-bottom:1.5rem}
.btn-pill.ghost-link{background:transparent;border:none;padding:.6rem .25rem;color:rgba(255,255,255,.75);font-weight:500}
.btn-pill.ghost-link:hover{color:#fff;transform:none;background:transparent}
.btn-pill.ghost-link .arrow{display:none}
/* Hero bullets */
.hero-bullets{list-style:none;display:flex;gap:1.5rem;flex-wrap:wrap;padding:0;margin:0}
.hero-bullets li{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:rgba(255,255,255,.65);font-weight:500}
.hero-bullets svg{width:14px;height:14px;color:var(--orange);flex-shrink:0}
.hero-visual{position:relative;width:100%;min-height:420px;overflow:visible;display:block}
@media(min-width:1024px){.hero-visual{min-height:560px}}
.hero-visual canvas{display:block;width:100%;height:100%;outline:none}
/* v2026 hero device showcase Higgsfield */
.hero-visual-img{display:block;width:100%;height:auto;border-radius:1.5rem;border:1px solid rgba(255,138,77,.18);box-shadow:0 50px 120px -40px rgba(255,92,26,.45),0 0 0 1px rgba(255,138,77,.08);filter:contrast(1.05) saturate(1.08);position:relative;z-index:2}
#hero-3d-mount:has(.hero-visual-img){background:radial-gradient(ellipse 90% 80% at 50% 50%,rgba(255,138,77,.22),transparent 70%);padding:0;border-radius:1.5rem;overflow:visible}
#hero-3d-mount:has(.hero-visual-img)::before,#hero-3d-mount:has(.hero-visual-img)::after{display:none !important}

/* ─── LOGO STRIP ─── */
#logos{padding:3rem 0 4rem;border-bottom:1px dashed rgba(255,255,255,.08)}
.logos-intro{text-align:center;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin-bottom:1.5rem;font-weight:600}

/* ─── ROI CALCULATOR ─── */
#roi-calc{padding:5rem 0 6rem;position:relative;overflow:hidden}
#roi-calc::before{content:'';position:absolute;top:50%;left:50%;width:600px;height:400px;transform:translate(-50%,-50%);background:radial-gradient(ellipse at center,rgba(255,92,26,.08),transparent 70%);pointer-events:none;z-index:0}
.roi-wrap{position:relative;z-index:1;max-width:1100px;margin:0 auto}
.roi-head{text-align:center;max-width:740px;margin:0 auto 2.5rem}
.roi-head h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.2;letter-spacing:-.02em;margin:1rem 0 .75rem}
.roi-head .hl-orange{color:var(--orange)}
.roi-sub{color:var(--muted);font-size:.95rem;line-height:1.6}
.roi-card{background:linear-gradient(180deg,rgba(20,12,10,.85) 0%,rgba(15,10,8,.85) 100%);border:1px solid rgba(255,255,255,.08);border-radius:1.5rem;padding:2rem;backdrop-filter:blur(12px);box-shadow:0 30px 80px -20px rgba(0,0,0,.6)}
@media(min-width:1024px){.roi-card{padding:3rem;display:grid;grid-template-columns:1fr 1.1fr;gap:3rem;align-items:center}}
.roi-inputs{display:flex;flex-direction:column;gap:1.5rem}
.roi-field label{display:block;font-size:.8rem;color:var(--muted);font-weight:500;margin-bottom:.6rem;letter-spacing:.005em}
.roi-input-row{display:flex;align-items:center;gap:.75rem}
.roi-slider{flex:1;-webkit-appearance:none;appearance:none;height:4px;background:rgba(255,255,255,.08);border-radius:9999px;outline:none;cursor:pointer}
.roi-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--orange);cursor:pointer;border:3px solid #FFF;box-shadow:0 0 0 1px var(--orange),0 4px 12px rgba(255,92,26,.45);transition:transform .15s}
.roi-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}
.roi-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--orange);cursor:pointer;border:3px solid #fff;box-shadow:0 0 0 1px var(--orange),0 4px 12px rgba(255,92,26,.45)}
.roi-number{width:64px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#fff;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.9rem;padding:.45rem .55rem;text-align:center;outline:none;transition:border-color .2s}
.roi-number:focus{border-color:var(--orange)}
.roi-number::-webkit-inner-spin-button,.roi-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.roi-unit{font-size:.8rem;color:var(--muted-2);font-family:'DM Sans',sans-serif;font-weight:600;width:14px}

.roi-result{display:flex;flex-direction:column;gap:1.5rem}
.roi-result-bar{display:grid;grid-template-columns:1fr;gap:1.25rem;background:rgba(255,92,26,.04);border:1px solid rgba(255,92,26,.18);border-radius:1rem;padding:1.5rem}
@media(min-width:768px){.roi-result-bar{grid-template-columns:1fr auto 1fr auto 1fr;gap:.75rem;align-items:center}}
.roi-result-block{display:flex;flex-direction:column;gap:.25rem;text-align:center}
.roi-result-label{font-size:.7rem;color:var(--muted-2);text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.roi-result-num{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.4rem,2.5vw,1.85rem);line-height:1.05;letter-spacing:-.01em;transition:color .3s}
.roi-result-num.red{color:#FF7373}
.roi-result-num.green{color:#22D885}
.roi-result-sub{font-size:.72rem;color:var(--muted);line-height:1.3}
.roi-divider{display:none}
@media(min-width:768px){.roi-divider{display:block;width:1px;height:40px;background:rgba(255,255,255,.08)}}
.roi-cta{align-self:center;width:100%;justify-content:center;padding:.85rem 1rem .85rem 1.5rem;font-size:.95rem}
@media(min-width:768px){.roi-cta{width:auto;align-self:flex-start}}
.roi-note{font-size:.78rem;color:var(--muted);text-align:center;line-height:1.5}
.roi-note strong{color:#fff;font-weight:600}
.roi-gate{display:flex;flex-direction:column;gap:.65rem;margin-top:.5rem}
.roi-gate-row{display:flex;flex-direction:column;gap:.6rem;width:100%}
@media(min-width:640px){.roi-gate-row{flex-direction:row;align-items:stretch}}
.roi-gate-input{flex:1;padding:.85rem 1.1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:.85rem;color:#fff;font-family:'Inter',sans-serif;font-size:.92rem;transition:border-color .25s}
.roi-gate-input::placeholder{color:rgba(255,255,255,.4)}
.roi-gate-input:focus{outline:none;border-color:rgba(255,138,77,.5);box-shadow:0 0 0 3px rgba(255,92,26,.1)}
.roi-gate .roi-cta{align-self:stretch;width:auto;flex-shrink:0;justify-content:center;padding:.85rem 1.5rem !important;font-size:.88rem}
.roi-gate-msg{display:none;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1rem;background:rgba(34,216,133,.1);border:1px solid rgba(34,216,133,.3);border-radius:.75rem;color:#22D885;font-size:.85rem;font-weight:600}
.roi-gate-msg.show{display:inline-flex}
.roi-gate-msg svg{width:16px;height:16px}
.logo-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-around;gap:2rem;opacity:.85}
.logo-item{font-family:'DM Sans',sans-serif;color:rgba(255,255,255,.7);font-size:1rem;letter-spacing:.02em;display:flex;align-items:center;gap:.4rem;transition:color .3s;white-space:nowrap}
.logo-item:hover{color:#fff}
.logo-item.script{font-family:'Caveat',cursive;font-size:1.6rem;font-weight:400}
.logo-item.serif{font-family:Georgia,serif;font-size:1.4rem;letter-spacing:.15em;font-weight:400}
.logo-item.bold{font-family:'DM Sans',sans-serif;font-size:1.1rem;font-weight:800;letter-spacing:.05em}
.logo-item .small{font-size:.55rem;letter-spacing:.2em;opacity:.6;text-transform:uppercase}
.logo-img{height:42px;width:auto;opacity:.75;filter:brightness(0) invert(1);transition:opacity .3s,filter .3s}
.logo-img:hover{opacity:1}

/* keep .section utility — used by #roi-calc and #faq */
.section{padding:6rem 0;position:relative}
@media(min-width:1024px){.section{padding:8rem 0}}

/* ─── REFERENCE section (l'agence d'IA de référence) ─── */
#reference{padding:6rem 0;position:relative;overflow:hidden}
.reference-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}
@media(min-width:1024px){.reference-grid{grid-template-columns:1.05fr 1fr;gap:4rem}}
.reference-text h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.2;letter-spacing:-.02em;margin-bottom:1.5rem}
.reference-text > p{color:var(--muted);font-size:.95rem;line-height:1.7;margin-bottom:1.75rem}
.reference-list{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}
.reference-list li{display:flex;align-items:flex-start;gap:.85rem;font-size:.9rem;color:var(--text);list-style:none;line-height:1.5}
.reference-list li::before{content:'';width:14px;height:1.5px;background:var(--orange);margin-top:.6rem;flex-shrink:0}
.reference-list li b{font-weight:600}
.reference-visual{position:relative}
.reference-visual img{
  width:100%;
  max-width:520px;
  margin:0 auto;
  filter:drop-shadow(0 30px 80px rgba(255,92,26,.25));
  /* Vignette fade : élimine les bords nets de la photo robot pour blend avec le fond */
  -webkit-mask-image:radial-gradient(ellipse 75% 75% at 45% 45%, #000 55%, rgba(0,0,0,.6) 80%, transparent 100%);
          mask-image:radial-gradient(ellipse 75% 75% at 45% 45%, #000 55%, rgba(0,0,0,.6) 80%, transparent 100%);
}

/* ─── CASES section (études de cas) ─── */
#cases{padding:6rem 0;text-align:center;position:relative;overflow:hidden}
#cases::after{content:'';position:absolute;left:50%;bottom:-100px;transform:translateX(-50%);width:700px;height:400px;background:radial-gradient(ellipse at center,rgba(255,92,26,.18),transparent 70%);pointer-events:none}
.cases-head{max-width:880px;margin:0 auto 3rem}
.cases-head h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.5rem,3.2vw,2.25rem);line-height:1.25;letter-spacing:-.02em;margin-top:1rem}
.cases-head h2 .hl-orange{color:var(--orange)}
.cases-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:1180px;margin:0 auto}
@media(min-width:768px){.cases-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:768px) and (max-width:1023px){.cases-grid{grid-template-columns:1fr 1fr}}
/* === Featured case study === */
.case-featured{background:linear-gradient(180deg,rgba(20,12,10,.7) 0%,rgba(15,10,8,.7) 100%);border:1px solid rgba(255,255,255,.08);border-radius:1.25rem;overflow:hidden;backdrop-filter:blur(8px);box-shadow:0 30px 80px -20px rgba(0,0,0,.6);margin-bottom:4rem;position:relative;z-index:1}

/* ═══════════════════════════════════════════════════════════
   PCS — Pascale Case Study (Direction 1 · hero metric)
   ═══════════════════════════════════════════════════════════ */
.pcs{position:relative;text-align:center;padding:4rem 1.5rem;border-radius:1.75rem;background:linear-gradient(180deg,rgba(20,12,10,.55),rgba(10,7,5,.55));border:1px solid rgba(255,138,77,.15);overflow:hidden;margin-bottom:4rem;backdrop-filter:blur(10px);box-shadow:0 40px 100px -30px rgba(0,0,0,.6),0 0 0 1px rgba(255,138,77,.04)}
@media(min-width:768px){.pcs{padding:5.5rem 3rem}}
@media(min-width:1024px){.pcs{padding:6.5rem 4rem 5.5rem}}
/* Halo radial chaud derrière le metric */
.pcs::before{content:'';position:absolute;left:50%;top:30%;transform:translate(-50%,-50%);width:900px;height:900px;border-radius:50%;background:radial-gradient(circle,rgba(255,92,26,.18),rgba(255,138,77,.04) 35%,transparent 60%);filter:blur(40px);pointer-events:none;z-index:0}
/* Grille subtile en background */
.pcs::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,138,77,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,138,77,.03) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 60% 50% at center,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 60% 50% at center,#000 30%,transparent 80%);pointer-events:none;z-index:0}
.pcs > *{position:relative;z-index:1}

.pcs-head{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-bottom:2.5rem}
.pcs-eyebrow{display:inline-block;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,170,102,.85);padding:.4rem .85rem;background:rgba(255,92,26,.06);border:1px solid rgba(255,138,77,.22);border-radius:9999px}
.pcs-tags{display:inline-flex;gap:.4rem;flex-wrap:wrap;justify-content:center}
.pcs .case-tag{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.62rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.6);padding:.32rem .65rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:9999px}

/* HERO METRIC — le 110 prend toute la place */
.pcs-metric{position:relative;display:flex;flex-direction:column;align-items:center;margin:1.5rem 0 2.5rem}
.pcs-metric-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,92,26,.35),rgba(255,138,77,.08) 35%,transparent 60%);filter:blur(50px);pointer-events:none;z-index:-1;animation:pcsGlowPulse 5.5s ease-in-out infinite}
@keyframes pcsGlowPulse{0%,100%{opacity:.75;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}
.pcs-metric-num{font-family:'DM Sans',sans-serif;font-weight:800;font-size:clamp(8rem,22vw,16rem);line-height:.85;letter-spacing:-.06em;background:linear-gradient(180deg,#FFD9A8 0%,#FFAA66 40%,#FF7A3D 70%,#FF5C1A 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 12px 50px rgba(255,92,26,.45));font-variant-numeric:tabular-nums;font-feature-settings:'tnum' 1}
.pcs-metric-unit{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:clamp(.9rem,1.4vw,1.05rem);font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--orange);margin-top:.85rem;opacity:.9}

.pcs-h{font-family:'DM Sans',sans-serif;font-weight:600;font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.2;letter-spacing:-.02em;color:#fff;max-width:760px;margin:0 auto 1.25rem}
.pcs-h em{font-style:normal;background:linear-gradient(135deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.pcs-lead{color:rgba(255,255,255,.72);font-size:1.02rem;line-height:1.65;max-width:680px;margin:0 auto 3rem}
.pcs-lead strong{color:#FFAA66;font-weight:600}

/* Mini stats inline */
.pcs-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:880px;margin:0 auto 3rem}
@media(min-width:768px){.pcs-stats{grid-template-columns:repeat(4,1fr);gap:1.25rem}}
.pcs-stat{padding:1.25rem 1rem;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);border-radius:.85rem;display:flex;flex-direction:column;gap:.55rem;transition:border-color .35s,background .35s}
.pcs-stat:hover{border-color:rgba(255,138,77,.32);background:rgba(255,138,77,.04)}
.pcs-stat-label{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.6rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.4);text-align:left}
.pcs-stat-row{display:flex;align-items:center;gap:.5rem;font-family:'DM Sans',sans-serif}
.pcs-stat-row svg{color:rgba(255,138,77,.55);width:14px;height:14px;flex-shrink:0}
.pcs-before{font-size:.95rem;font-weight:500;color:#FF7373;text-decoration:line-through;text-decoration-color:rgba(255,115,115,.5);text-decoration-thickness:1.5px}
.pcs-after{font-size:1.15rem;font-weight:700;color:#22D885;letter-spacing:-.01em}
.pcs-stat-row-single .pcs-after{font-size:1rem;color:#FFAA66;background:linear-gradient(135deg,#FFD9A8,#FF8A3D);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

.pcs-cta{margin-bottom:3rem;font-size:1rem;padding:.95rem 1rem .95rem 1.85rem;box-shadow:0 14px 40px -10px rgba(255,92,26,.45),inset 0 1px 0 rgba(255,255,255,.18);transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s}
.pcs-cta:hover{transform:translateY(-2px);box-shadow:0 22px 50px -10px rgba(255,92,26,.6),inset 0 1px 0 rgba(255,255,255,.22)}

/* Citation discrète en pied */
.pcs-quote{position:relative;max-width:680px;margin:0 auto;padding:1.85rem 1.5rem 0;border-top:1px dashed rgba(255,138,77,.18);text-align:left;display:flex;align-items:flex-start;gap:1rem}
.pcs-quote-mark{font-family:Georgia,serif;font-size:3.5rem;line-height:.7;color:rgba(255,138,77,.4);flex-shrink:0;margin-top:.5rem}
.pcs-quote p{font-size:.92rem;line-height:1.55;color:rgba(255,255,255,.6);font-style:italic;margin-bottom:.6rem}
.pcs-quote cite{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.72rem;letter-spacing:.04em;color:rgba(255,255,255,.45);font-style:normal}
.pcs-quote cite strong{color:rgba(255,170,102,.85);font-weight:600}
.cf-grid{display:grid;grid-template-columns:1fr;gap:0}
.cf-visual{position:relative;width:100%;background:#0a0a0a;display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:16/7;max-height:440px}
@media(max-width:767px){.cf-visual{aspect-ratio:16/10;max-height:320px}}
.cf-visual img{width:100%;height:100%;object-fit:cover;object-position:center center}
.cf-badge{position:absolute;top:1.25rem;left:1.25rem;background:rgba(34,216,133,.95);color:#000;padding:.65rem 1rem;border-radius:.65rem;backdrop-filter:blur(4px);box-shadow:0 8px 25px rgba(34,216,133,.35);display:flex;flex-direction:column;line-height:1.1;font-family:'DM Sans',sans-serif}
.cf-badge strong{font-size:1.2rem;font-weight:700;color:#000}
.cf-badge span{font-size:.68rem;color:rgba(0,0,0,.7);font-weight:500;letter-spacing:.005em;margin-top:.15rem}
.cf-content{padding:2rem 1.5rem}
@media(min-width:1024px){.cf-content{padding:3rem}}
.cf-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}
.cf-h{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.4rem,2.5vw,1.85rem);line-height:1.2;letter-spacing:-.02em;margin-bottom:1.75rem}
.cf-block{margin-bottom:1.25rem}
.cf-label{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);margin-bottom:.5rem}
.cf-label.red{color:#FF7373}
.cf-block p{font-size:.92rem;color:rgba(255,255,255,.78);line-height:1.65}
.cf-block p strong{color:#fff;font-weight:600}

/* Before/After stats */
.cf-stats{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1.75rem 0;padding:1.25rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:.85rem}
@media(min-width:768px){.cf-stats{grid-template-columns:repeat(4,1fr)}}
.cf-stat{display:flex;flex-direction:column;gap:.4rem}
.cf-stat-label{font-size:.65rem;color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.cf-stat-row{display:flex;align-items:center;gap:.4rem}
.cf-before{font-family:'DM Sans',sans-serif;font-weight:500;font-size:.92rem;color:#FF7373;text-decoration:line-through;text-decoration-color:rgba(255,115,115,.5)}
.cf-after{font-family:'DM Sans',sans-serif;font-weight:700;font-size:1.05rem;color:#22D885}
.cf-stat-row svg{color:var(--muted-2);flex-shrink:0}

/* ROI bar */
.cf-roi{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:.5rem;align-items:center;background:linear-gradient(135deg,rgba(255,92,26,.06),rgba(34,216,133,.06));border:1px solid rgba(255,92,26,.18);border-radius:.85rem;padding:1.25rem;margin:1.5rem 0}
.cf-roi-item{display:flex;flex-direction:column;text-align:center;gap:.2rem}
.cf-roi-item span{font-size:.68rem;color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.cf-roi-item strong{font-family:'DM Sans',sans-serif;font-weight:700;font-size:1.05rem;color:#fff}
.cf-roi-item strong.green{color:#22D885}
.cf-roi-divider{width:1px;height:30px;background:rgba(255,255,255,.1)}

/* Client quote */
.cf-quote{position:relative;padding:1.5rem 1.5rem 1.5rem 2.75rem;background:rgba(255,255,255,.02);border-left:3px solid var(--orange);border-radius:.65rem;margin:1.5rem 0}
.cf-quote-mark{position:absolute;top:.5rem;left:1rem;font-size:3rem;line-height:1;color:var(--orange);font-family:'DM Sans',sans-serif;font-weight:700;opacity:.6}
.cf-quote p{font-style:italic;font-size:.95rem;color:rgba(255,255,255,.85);line-height:1.6;margin-bottom:.75rem}
.cf-quote footer{display:flex;flex-direction:column;gap:.1rem;font-style:normal}
.cf-quote-name{font-family:'DM Sans',sans-serif;font-weight:600;font-size:.88rem;color:#fff}
.cf-quote-title{font-size:.75rem;color:var(--muted)}
.cf-cta{margin-top:1rem}

/* Compact case cards */
.cases-more-title{font-family:'DM Sans',sans-serif;font-weight:600;font-size:.85rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.5rem;text-align:left;position:relative;z-index:1}
.case{background:rgba(20,12,10,.55);border:1px solid rgba(255,255,255,.07);border-radius:1rem;overflow:hidden;text-align:left;position:relative;z-index:1;backdrop-filter:blur(6px);transition:transform .35s,border-color .35s}
.case:hover{transform:translateY(-4px);border-color:rgba(255,92,26,.25)}
.case-img{aspect-ratio:16/10;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.3);font-family:'DM Sans',sans-serif;font-size:.85rem}
.case-img img{width:100%;height:100%;object-fit:cover}
.cf-placeholder{background:linear-gradient(135deg,rgba(255,92,26,.18),rgba(91,42,140,.12));color:rgba(255,255,255,.6);font-weight:500}
.case-tags{display:flex;flex-wrap:wrap;gap:.4rem;padding:1rem 1.25rem 0}
.case-tag{font-size:.7rem;padding:.3rem .75rem;border-radius:9999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:400}
.case-meta-row{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem 0;flex-wrap:wrap}
.case-tag-strong{font-size:.72rem;padding:.3rem .75rem;border-radius:9999px;background:rgba(34,216,133,.1);border:1px solid rgba(34,216,133,.3);color:#22D885;font-weight:600}
.case-tag-soft{font-size:.7rem;padding:.3rem .75rem;border-radius:9999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:var(--muted);font-weight:500}
.case-info{padding:1rem 1.25rem 1.5rem}
.case-info h3{font-family:'DM Sans',sans-serif;font-weight:600;font-size:1.1rem;margin-bottom:.5rem;letter-spacing:-.005em}
.case-info p{font-size:.82rem;color:var(--muted);line-height:1.55}
.case-info strong{color:#22D885;font-weight:600}
.cases-cta{margin-top:3rem;display:flex;justify-content:center;position:relative;z-index:1}

/* ─── CTA section ─── */
#cta-strategy{padding:6rem 0;text-align:center;position:relative;overflow:hidden}
.cta-strategy-inner{max-width:760px;margin:0 auto;position:relative;z-index:1}
.cta-strategy-inner p{font-size:1.05rem;line-height:1.6;color:rgba(255,255,255,.75);margin-bottom:.75rem}
.cta-strategy-inner .accent{color:var(--orange);font-weight:500}
.cta-strategy-inner .btn-pill{margin-top:1.75rem}
.cta-strategy-h{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.2;color:#fff !important;letter-spacing:-.02em;margin-bottom:1rem !important}
.cta-strategy-h .hl-orange{color:var(--orange)}
.cta-strategy-sub{font-size:.95rem !important;color:rgba(255,255,255,.7) !important;line-height:1.65 !important;max-width:600px;margin-left:auto !important;margin-right:auto !important}
.cta-strategy-sub strong{color:#fff;font-weight:600}
.cta-strategy-trust{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-top:1.5rem;font-size:.78rem;color:var(--muted)}
.cta-strategy-trust span{display:flex;align-items:center;gap:.4rem}
.cta-strategy-trust svg{color:var(--orange)}

/* ─── TESTIMONIAL ─── */
#testi{padding:5rem 0;background:linear-gradient(135deg,#1a0e08 0%,#2a1610 100%);border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);position:relative;overflow:hidden}
.testi-inner{max-width:1100px;margin:0 auto;padding:0 1.5rem;text-align:center}
.testi-quote{font-family:'DM Sans',sans-serif;font-weight:400;font-size:clamp(1.25rem,2.5vw,1.85rem);line-height:1.4;color:#fff;margin-bottom:2.5rem;letter-spacing:-.005em}
.testi-roi-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem 1rem;border-radius:9999px;background:rgba(34,216,133,.12);border:1px solid rgba(34,216,133,.3);color:#22D885;font-size:.78rem;font-weight:600;margin-bottom:1.5rem;letter-spacing:.005em}
.testi-roi-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:#22D885;box-shadow:0 0 0 0 rgba(34,216,133,.6);animation:dotPulse 1.6s ease-in-out}
.testi-roi-badge strong{font-weight:600}
.testi-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}
.testi-author{text-align:left}
.testi-author .name{font-family:'DM Sans',sans-serif;font-weight:600;font-size:.95rem;margin-bottom:.2rem}
.testi-author .title{font-size:.78rem;color:var(--muted)}
.testi-controls{display:flex;align-items:center;gap:.75rem}
.testi-arrow{width:42px;height:42px;border-radius:9999px;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;background:transparent;transition:background .25s,border-color .25s}
.testi-arrow:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.35)}
.testi-arrow svg{width:14px;height:14px;color:#fff}
.testi-counter{font-family:'DM Sans',sans-serif;font-size:.85rem;color:var(--muted);min-width:50px;text-align:center}
.testi-arrow.next{background:#fff;border-color:#fff}
.testi-arrow.next svg{color:#000}

/* ─── FAQ ─── */
#faq{padding:5rem 0 6rem}
.faq-wrap{max-width:780px;margin:0 auto}
.faq-head{text-align:center;margin-bottom:2.5rem}
.faq-head h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.7rem,3.2vw,2.4rem);line-height:1.2;letter-spacing:-.02em;margin-top:1rem}
.faq-list{display:flex;flex-direction:column;gap:.75rem}
.faq-item{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);border-radius:.85rem;overflow:hidden;transition:border-color .25s,background .25s}
.faq-item[open]{border-color:rgba(255,92,26,.25);background:rgba(255,92,26,.04)}
.faq-item summary{padding:1.1rem 1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.98rem;color:#fff;list-style:none;letter-spacing:-.005em}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:#fff}
.faq-chev{width:18px;height:18px;color:var(--orange);flex-shrink:0;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.faq-item[open] .faq-chev{transform:rotate(180deg)}
.faq-body{padding:0 1.4rem 1.25rem;color:rgba(255,255,255,.72);font-size:.9rem;line-height:1.65}
.faq-body strong{color:#fff;font-weight:600}
.faq-link{color:var(--orange);font-weight:600;border-bottom:1px solid currentColor;padding-bottom:1px;margin-left:.25rem;transition:color .25s}
.faq-link:hover{color:#FFAA66}
.faq-foot{margin-top:2rem;text-align:center}
.faq-foot p{font-size:.92rem;color:rgba(255,255,255,.65);line-height:1.6}

/* ─── CONTACT ─── */
#contact{padding:6rem 0 4rem;position:relative;overflow:hidden}
.contact-deco{position:absolute;right:-100px;top:50px;width:400px;height:auto;opacity:.7;pointer-events:none}
@media(max-width:768px){.contact-deco{display:none}}
.contact-grid{display:grid;grid-template-columns:1fr;gap:2rem}
@media(min-width:1024px){.contact-grid{grid-template-columns:1fr 1.1fr;gap:4rem}}
.contact-head h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.8rem,4vw,2.75rem);line-height:1.15;letter-spacing:-.02em;margin:1rem 0 .75rem}
.contact-head h2 .hl-orange{color:var(--orange)}
.contact-head p{font-size:.92rem;color:var(--muted);line-height:1.65}
.contact-head p strong{color:#fff;font-weight:600}
.contact-perks{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin-top:1.5rem;padding:0}
.contact-perks li{display:flex;align-items:center;gap:.65rem;font-size:.85rem;color:rgba(255,255,255,.78)}
.contact-perks svg{width:14px;height:14px;color:var(--orange);flex-shrink:0}
.contact-form{display:flex;flex-direction:column;gap:1rem}
.contact-input{display:flex;align-items:center;gap:.75rem;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.1);transition:border-color .25s}
.contact-input:focus-within{border-color:var(--orange)}
.contact-input svg{width:18px;height:18px;color:var(--muted-2);flex-shrink:0}
.contact-input input,.contact-input textarea{flex:1;background:transparent;border:none;outline:none;color:#fff;font-family:inherit;font-size:.95rem}
.contact-input textarea{resize:none;min-height:60px;padding-top:.25rem}
.contact-input input::placeholder,.contact-input textarea::placeholder{color:var(--muted-2)}
.contact-form .btn-pill{align-self:flex-start;margin-top:1rem}
.contact-microcopy{font-size:.72rem;color:var(--muted-2);margin-top:.5rem}
.contact-microcopy a{color:var(--orange);font-weight:600;border-bottom:1px solid currentColor;transition:color .25s}
.contact-microcopy a:hover{color:#FFAA66}

/* ─── Contact form feedback (success/error) ─── */
.moov-contact-feedback{display:none;font-family:'DM Sans',sans-serif;font-size:.88rem;line-height:1.5;padding:.85rem 1rem;border-radius:.75rem;margin-top:.85rem;letter-spacing:-.003em}
.moov-contact-feedback[data-kind="success"]{display:block;background:rgba(34,216,133,.08);border:1px solid rgba(34,216,133,.3);color:#22D885}
.moov-contact-feedback[data-kind="error"]{display:block;background:rgba(255,115,115,.07);border:1px solid rgba(255,115,115,.3);color:#FF9999}
.moov-contact-feedback[data-kind="info"]:not(:empty){display:block;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.78)}

/* Bouton submit en cours d'envoi */
#moov-contact-submit,
.ct-submit{transition:background .25s,border-color .25s,opacity .25s,transform .15s}
#moov-contact-submit.is-loading,
.ct-submit.is-loading{opacity:.7;cursor:wait}
#moov-contact-submit.is-loading .arrow,
.ct-submit.is-loading .arrow{animation:moovContactSpin 1s linear infinite}
#moov-contact-submit:disabled,
.ct-submit:disabled{cursor:wait;opacity:.7}
@keyframes moovContactSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}

/* Feedback box dans la page contact : un peu plus d'air */
#ct-feedback.moov-contact-feedback{margin-top:1rem}

/* ─── FOOTER ─── */
footer{background:#000;border-top:1px solid rgba(255,255,255,.05);padding:4rem 0 2rem;margin-top:4rem}
.footer-grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:3rem}
@media(min-width:768px){.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2rem}}
.footer-brand .moov-logo{margin-bottom:1rem}
.footer-brand p{font-size:.78rem;color:var(--muted);line-height:1.6;margin-bottom:1.25rem;max-width:340px}
.footer-socials{display:flex;gap:.75rem}
.footer-soc{width:32px;height:32px;border-radius:9999px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;transition:border-color .25s,background .25s}
.footer-soc:hover{border-color:var(--orange);background:rgba(255,92,26,.08)}
.footer-soc svg{width:13px;height:13px;color:#fff}
.footer-col h4{font-family:'DM Sans',sans-serif;font-weight:600;font-size:.95rem;margin-bottom:1rem}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.6rem}
.footer-col a,.footer-col li{font-size:.82rem;color:var(--muted);transition:color .25s}
.footer-col a:hover{color:#fff}
.footer-contact-item{display:flex;gap:.5rem;align-items:flex-start;font-size:.82rem;color:var(--muted)}
.footer-contact-item svg{width:14px;height:14px;color:var(--orange);margin-top:.2rem;flex-shrink:0}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.05);font-size:.75rem;color:var(--muted-2)}
.footer-bottom .links{display:flex;gap:1.5rem}
.footer-bottom .links a:hover{color:#fff}

/* ─── MISC ─── */
html.js .fade-up{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s ease}
html.js .fade-up.in,html.no-js .fade-up{opacity:1;transform:translateY(0)}

/* ─────────── SYSTEM OVERVIEW — Editorial dark grid (3 tons alternés) ─────────── */
#manifest{padding:5.5rem 0 6rem;position:relative;overflow:hidden;background:#000}
.ovw-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.ovw-glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.18}
.ovw-glow-1{width:520px;height:520px;background:radial-gradient(circle,rgba(255,138,77,.55),transparent 70%);left:-180px;top:-160px}
.ovw-glow-2{width:460px;height:460px;background:radial-gradient(circle,rgba(122,74,53,.5),transparent 70%);right:-120px;bottom:-80px}
#manifest .container{position:relative;z-index:1}

/* ── Editorial header (left-aligned) ── */
.ovw-head{max-width:880px;margin:0 0 3.5rem;text-align:left}
.ovw-prompt{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.78rem;color:rgba(255,138,77,.72);margin-bottom:1.4rem;letter-spacing:.04em;display:inline-block}
.ovw-prompt::before{content:'> ';color:#22D885}
.ovw-head .section-eyebrow{display:inline-block;margin-bottom:1.25rem}
.ovw-h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(2rem,4.8vw,3.75rem);line-height:1.05;letter-spacing:-.03em;margin-bottom:1.5rem;color:#fff}
.ovw-serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;color:#a86b4a;letter-spacing:-.005em;display:inline-block;line-height:1.1}
.ovw-lead{color:rgba(255,255,255,.72);font-size:1rem;line-height:1.7;max-width:560px}
.ovw-lead strong{color:#fff;font-weight:600}

/* ── 3×2 grid ── */
.ovw-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:3rem}
@media(min-width:640px){.ovw-grid{grid-template-columns:repeat(2,1fr);gap:1.1rem}}
@media(min-width:1024px){.ovw-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}

/* ── Card base ── */
.ovw-card{position:relative;border-radius:1.75rem;padding:1.75rem 1.5rem 1.5rem;min-height:300px;display:flex;flex-direction:column;gap:.65rem;transition:transform .4s cubic-bezier(.2,.7,.2,1),border-color .4s,box-shadow .4s;overflow:hidden}
.ovw-card:hover{transform:translateY(-4px)}
@media(min-width:1024px){.ovw-card{min-height:340px;padding:1.85rem 1.65rem 1.65rem}}

/* Variant : warm-dark (cream → dark warm) ─ cards 01, 04, 06 */
.ovw-card.ovw-light{background:linear-gradient(180deg,#181311 0%,#0e0a08 100%);border:1px solid rgba(255,255,255,.06)}
.ovw-card.ovw-light:hover{border-color:rgba(255,138,77,.22);box-shadow:0 24px 60px rgba(255,92,26,.08)}

/* Variant : deep-dark (black) ─ cards 02, 05 */
.ovw-card.ovw-dark{background:linear-gradient(180deg,#0a0807 0%,#000 100%);border:1px solid rgba(255,255,255,.05)}
.ovw-card.ovw-dark:hover{border-color:rgba(255,255,255,.1);box-shadow:0 24px 60px rgba(0,0,0,.55)}

/* Variant : copper (salmon → deep copper) ─ card 03 */
.ovw-card.ovw-copper{background:linear-gradient(180deg,#3a1f15 0%,#1f100a 100%);border:1px solid rgba(255,92,26,.2)}
.ovw-card.ovw-copper:hover{border-color:rgba(255,92,26,.4);box-shadow:0 24px 60px rgba(255,92,26,.18)}

/* ── Card top row : [NN] / STATUS ── */
.ovw-card-top{display:flex;justify-content:space-between;align-items:center;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase}
.ovw-card-id{color:rgba(255,138,77,.6);font-weight:500}
.ovw-card-status{color:rgba(255,255,255,.38);font-weight:600}
.ovw-card.ovw-copper .ovw-card-id{color:rgba(255,180,140,.7)}
.ovw-card.ovw-copper .ovw-card-status{color:rgba(255,200,170,.55)}

/* ── Category eyebrow (UPTIME / EXPERTISE) ── */
.ovw-card-cat{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#8E5638;font-weight:600;margin-top:.85rem}
.ovw-card.ovw-dark .ovw-card-cat{color:#FF8A4D}
.ovw-card.ovw-copper .ovw-card-cat{color:#FFD4B8}

/* ── Big number ── */
.ovw-card-num{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(2.8rem,6.4vw,4.4rem);line-height:.95;letter-spacing:-.035em;color:#fff;margin-top:.2rem;font-feature-settings:"tnum" 1}
.ovw-card-num sup{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;font-size:.32em;color:#a86b4a;vertical-align:.7em;margin-left:.12em;letter-spacing:.01em}
.ovw-card.ovw-copper .ovw-card-num{color:#fff}

/* ── Bottom row : description + icon ── */
.ovw-card-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding-top:1rem}
.ovw-card-desc{font-family:'Inter',sans-serif;font-size:.85rem;color:rgba(255,255,255,.6);line-height:1.5;max-width:22ch;font-weight:400;letter-spacing:0}
.ovw-card.ovw-copper .ovw-card-desc{color:rgba(255,220,200,.75)}
.ovw-card-icon{flex-shrink:0;color:rgba(255,138,77,.45);transition:transform .5s cubic-bezier(.2,.7,.2,1),color .4s}
.ovw-card-icon svg{width:42px;height:32px;display:block}
.ovw-card.ovw-copper .ovw-card-icon{color:rgba(255,180,140,.55)}
.ovw-card.ovw-dark .ovw-card-icon{color:rgba(255,138,77,.55)}
.ovw-card:hover .ovw-card-icon{transform:translateX(2px);color:#FF8A4D}
.ovw-card.ovw-copper:hover .ovw-card-icon{color:#FFCFA8}

/* ── Footer (terminal prompt + CTA) ── */
.ovw-footer{margin-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;padding-top:1.75rem;border-top:1px dashed rgba(255,138,77,.15)}
.ovw-footer-prompt{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.8rem;color:rgba(255,255,255,.55);letter-spacing:.04em}
.ovw-footer-prompt::before{content:'$ ';color:#22D885;font-weight:600}
.ovw-footer-prompt span{color:#FF8A4D;font-weight:600}
.ovw-cta{flex-shrink:0}
@media(max-width:640px){.ovw-footer{flex-direction:column;align-items:flex-start;gap:1.25rem}}

/* ─── EXIT-INTENT MODAL ─── */
.exit-modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:1rem}
.exit-modal.show{display:flex;animation:exitFade .35s cubic-bezier(.2,.7,.2,1)}
@keyframes exitFade{from{opacity:0}to{opacity:1}}
.exit-overlay{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(8px)}
.exit-box{position:relative;max-width:560px;width:100%;background:linear-gradient(160deg,rgba(20,12,10,.97),rgba(15,10,8,.97));border:1px solid rgba(255,138,77,.32);border-radius:1.5rem;padding:2.25rem 1.85rem 1.85rem;box-shadow:0 50px 120px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,92,26,.15),0 0 60px rgba(255,92,26,.18);animation:exitScale .45s cubic-bezier(.2,.7,.2,1)}
@keyframes exitScale{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:640px){.exit-box{padding:2.75rem 2.5rem 2rem}}
.exit-box::before{content:'';position:absolute;inset:0;border-radius:1.5rem;padding:1px;background:linear-gradient(160deg,rgba(255,138,77,.6),transparent 50%,rgba(122,74,53,.4));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.exit-close{position:absolute;top:.85rem;right:.85rem;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.6);font-size:1.4rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:color .25s,background .25s,border-color .25s;z-index:2}
.exit-close:hover{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.exit-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .85rem;border-radius:9999px;background:rgba(34,216,133,.12);border:1px solid rgba(34,216,133,.32);color:#22D885;font-size:.7rem;font-weight:700;letter-spacing:.14em;font-family:'DM Sans',sans-serif;margin-bottom:1.25rem}
.exit-pulse{width:6px;height:6px;border-radius:50%;background:#22D885;box-shadow:0 0 8px #22D885;animation:hudDotPulse 1.5s ease-in-out}
.exit-h{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.4rem,3vw,1.95rem);line-height:1.18;letter-spacing:-.025em;color:#fff;margin-bottom:.85rem}
.exit-h .hl-orange{background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.exit-sub{color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.6;margin-bottom:1.25rem}
.exit-sub strong{color:#fff;font-weight:600}
.exit-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;padding:0;margin:0 0 1.4rem}
.exit-list li{display:flex;align-items:flex-start;gap:.55rem;font-size:.86rem;color:rgba(255,255,255,.85);line-height:1.5}
.exit-list li svg{width:14px;height:14px;color:var(--orange);flex-shrink:0;margin-top:.3em}
.exit-form{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.85rem}
@media(min-width:520px){.exit-form{flex-direction:row}}
.exit-input{flex:1;padding:.85rem 1.1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:.85rem;color:#fff;font-family:'Inter',sans-serif;font-size:.92rem;transition:border-color .25s,box-shadow .25s}
.exit-input::placeholder{color:rgba(255,255,255,.4)}
.exit-input:focus{outline:none;border-color:rgba(255,138,77,.55);box-shadow:0 0 0 3px rgba(255,92,26,.1)}
.exit-cta{flex-shrink:0;justify-content:center;padding:.85rem 1.4rem !important;font-size:.88rem}
.exit-foot{font-size:.74rem;color:var(--muted-2);text-align:center;letter-spacing:.005em;margin:0}

/* ─── LIVE ACTIVITY TICKER ─── */

/* ─── RISK REVERSAL BANNER ─── */
#risk-bar{padding:1.4rem 0;background:linear-gradient(90deg,rgba(34,216,133,.06) 0%,rgba(255,92,26,.06) 50%,rgba(34,216,133,.06) 100%);border-top:1px solid rgba(34,216,133,.18);border-bottom:1px solid rgba(255,92,26,.18);position:relative;overflow:hidden}
#risk-bar::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 100% at 50% 50%,rgba(255,138,77,.08),transparent 70%);pointer-events:none}
.rsk-track{display:grid;grid-template-columns:1fr;gap:.85rem;position:relative}
@media(min-width:640px){.rsk-track{grid-template-columns:repeat(2,1fr);gap:1rem}}
@media(min-width:1024px){.rsk-track{grid-template-columns:repeat(4,1fr);gap:1.5rem}}
.rsk-item{display:flex;align-items:center;gap:.85rem;padding:.6rem .25rem}
.rsk-icon{font-size:1.5rem;flex-shrink:0;line-height:1}
.rsk-item div{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.rsk-item strong{font-family:'DM Sans',sans-serif;font-weight:700;font-size:.92rem;color:#fff;line-height:1.2;letter-spacing:-.005em}
.rsk-item span{font-size:.74rem;color:rgba(255,255,255,.55);line-height:1.3}

/* ─── TECH STACK — Parallax multi-rangées (Awwwards-style) ─── */
#techstack{padding:5.5rem 0 6rem;position:relative;overflow:hidden;background:#000;perspective:1400px}
.stk-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.stk-bg::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,138,77,.06) 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(ellipse 70% 60% at center,#000,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 70% 60% at center,#000,transparent 75%);opacity:.55}
.stk-bg::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:900px;height:900px;border-radius:50%;background:radial-gradient(circle,rgba(255,138,77,.06),transparent 60%)}

#techstack .container{position:relative;z-index:2}
.stk-head{max-width:780px;margin:0 auto 3.5rem;text-align:center}
.stk-head .section-eyebrow{display:inline-block;margin-bottom:1rem}
.stk-h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.9rem,4vw,3rem);line-height:1.12;letter-spacing:-.025em;margin-bottom:1rem;background:linear-gradient(180deg,#fff,rgba(255,255,255,.55) 130%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.stk-h2 .hl-orange{background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.stk-sub{color:rgba(255,255,255,.7);font-size:.95rem;line-height:1.65;max-width:600px;margin:0 auto}

/* Parallax field — full bleed + 3D scroll tilt */
.stk-field{position:relative;width:100%;padding:2rem 0;display:flex;flex-direction:column;gap:1rem;mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);transform-style:preserve-3d;transform:perspective(1400px) rotateX(var(--tilt,0deg));transform-origin:center center;transition:transform .25s linear;will-change:transform}
@media(min-width:768px){.stk-field{gap:1.25rem;padding:3rem 0}}

/* Individual row — receives mouse parallax shift */
.stk-row{position:relative;display:flex;overflow:hidden;will-change:transform;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.stk-row{transform:translate3d(calc(var(--ptx,0) * var(--depth,0px)),calc(var(--pty,0) * var(--depth,0px) * .5),0)}

/* Track — runs the marquee */
.stk-track{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;flex-shrink:0}
@media(min-width:768px){.stk-track{gap:1.25rem}}

/* Row depth tiers — for parallax + DoF */
.stk-row-1{--depth:42px;--scale:1;--blur:0px;--op:1;--dur:42s;z-index:4}
.stk-row-2{--depth:28px;--scale:.92;--blur:.5px;--op:.85;--dur:58s;z-index:3;animation-direction:reverse}
.stk-row-2 .stk-track{animation-direction:reverse}
.stk-row-3{--depth:16px;--scale:.84;--blur:1.2px;--op:.7;--dur:74s;z-index:2}
.stk-row-4{--depth:8px;--scale:.78;--blur:2px;--op:.55;--dur:96s;z-index:1}
.stk-row-4 .stk-track{animation-direction:reverse}

.stk-row .stk-track > *{transform:scale(var(--scale,1));filter:blur(var(--blur,0px));opacity:var(--op,1);transition:transform .35s cubic-bezier(.2,.7,.2,1),filter .35s,opacity .35s,border-color .35s,box-shadow .35s,color .35s,background .35s}

/* Tile */
.stk-tile{display:inline-flex;align-items:center;gap:.55rem;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.95rem;color:rgba(255,255,255,.88);padding:.85rem 1.4rem;border-radius:.85rem;background:linear-gradient(160deg,rgba(20,12,10,.78) 0%,rgba(15,10,8,.78) 100%);border:1px solid rgba(255,255,255,.07);backdrop-filter:blur(8px);position:relative;flex-shrink:0;letter-spacing:-.005em;cursor:default}
.stk-tile::before{content:'';position:absolute;inset:0;border-radius:.85rem;padding:1px;background:linear-gradient(160deg,rgba(255,138,77,.5),transparent 50%,rgba(122,74,53,.3));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.4;transition:opacity .35s;pointer-events:none}
.stk-tile:hover{transform:scale(calc(var(--scale,1) * 1.08)) !important;filter:blur(0) !important;opacity:1 !important;color:#fff;background:linear-gradient(160deg,rgba(35,18,12,.92),rgba(20,12,10,.92));z-index:10;box-shadow:0 20px 50px -15px rgba(255,92,26,.5),0 0 30px rgba(255,138,77,.25)}
.stk-tile:hover::before{opacity:1}

.stk-tile-dot{width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,#FFAA66,var(--orange));box-shadow:0 0 8px rgba(255,138,77,.6);flex-shrink:0}
.stk-tile-mono{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:.45rem;background:linear-gradient(135deg,#FFAA66,var(--orange) 60%,#7a4a35);color:#fff;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-weight:700;font-size:.7rem;flex-shrink:0;letter-spacing:0;box-shadow:0 0 8px rgba(255,138,77,.5),inset 0 1px 0 rgba(255,255,255,.18);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.stk-tile.featured:hover .stk-tile-mono{transform:rotate(-6deg) scale(1.12);box-shadow:0 0 14px rgba(255,138,77,.8),inset 0 1px 0 rgba(255,255,255,.25)}
.stk-tile-label{position:relative;display:inline-block;transition:text-shadow .2s}
.stk-tile.featured:hover .stk-tile-label{animation:stkGlitch .42s steps(3) 1;text-shadow:1.6px 0 0 rgba(255,138,77,.65),-1.6px 0 0 rgba(0,210,255,.45),0 0 8px rgba(255,255,255,.15)}
@keyframes stkGlitch{
  0%{transform:translate(0,0);clip-path:inset(0 0 0 0)}
  15%{transform:translate(-1.5px,1px);clip-path:inset(20% 0 50% 0)}
  30%{transform:translate(2px,-1px);clip-path:inset(60% 0 10% 0)}
  45%{transform:translate(-1px,2px);clip-path:inset(40% 0 30% 0)}
  60%{transform:translate(1.5px,-1.5px);clip-path:inset(10% 0 60% 0)}
  75%{transform:translate(-.5px,1px);clip-path:inset(0 0 0 0)}
  100%{transform:translate(0,0);clip-path:inset(0 0 0 0)}
}
.stk-tile.cat{background:rgba(255,92,26,.05);border:1px dashed rgba(255,92,26,.32);color:rgba(255,138,77,.85);font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;padding:.7rem 1.1rem}
.stk-tile.cat::before{display:none}
.stk-tile.cat:hover{color:#FFAA66;background:rgba(255,92,26,.1)}

/* HUD corner accents on tile (visible at hover/foreground) */
.stk-tile.featured{padding-left:.85rem;padding-right:.85rem}
.stk-tile.featured::after{content:'';position:absolute;left:6px;top:6px;width:8px;height:8px;border-left:1.2px solid rgba(255,138,77,.55);border-top:1.2px solid rgba(255,138,77,.55);transition:border-color .3s}
.stk-tile.featured:hover::after{border-color:#FF5C1A}

/* Foot link */
.stk-foot{margin-top:3rem;text-align:center}
.stk-foot p{font-size:.95rem;color:rgba(255,255,255,.65);line-height:1.55}
.stk-foot a{color:var(--orange);font-weight:600;border-bottom:1px solid currentColor;padding-bottom:1px;transition:color .25s}
.stk-foot a:hover{color:#FFAA66}

@media(prefers-reduced-motion:reduce){
  .stk-track{animation-duration:0s;animation:none}
  .stk-row{transform:none}
}

/* ─── PRICING transparent ─── */
#pricing{padding:6rem 0 6.5rem;position:relative;overflow:hidden;background:radial-gradient(ellipse 70% 50% at 50% 30%,rgba(255,92,26,.05),transparent 70%),#000}
#pricing .container{position:relative;z-index:1}
.prc-head{max-width:760px;margin:0 auto 3rem;text-align:center}
.prc-head .section-eyebrow{display:inline-block;margin-bottom:1rem}
.prc-h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.9rem,4vw,3rem);line-height:1.12;letter-spacing:-.025em;margin-bottom:1rem;background:linear-gradient(180deg,#fff,rgba(255,255,255,.6) 130%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.prc-h2 .hl-orange{background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.prc-sub{color:rgba(255,255,255,.72);font-size:.95rem;line-height:1.65;max-width:600px;margin:0 auto}
.prc-sub strong{color:#fff;font-weight:600}

.prc-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;max-width:1200px;margin:0 auto}
@media(min-width:768px){.prc-grid{grid-template-columns:repeat(3,1fr)}}
.prc-card{position:relative;background:linear-gradient(160deg,rgba(20,12,10,.7),rgba(15,10,8,.7));border:1px solid rgba(255,255,255,.07);border-radius:1.4rem;padding:2rem 1.85rem 2rem;display:flex;flex-direction:column;gap:.85rem;backdrop-filter:blur(10px);transition:transform .5s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}
.prc-card:hover{transform:translateY(-4px);border-color:rgba(255,92,26,.3);box-shadow:0 30px 80px -25px rgba(0,0,0,.6),0 0 0 1px rgba(255,92,26,.12)}
.prc-card-featured{background:linear-gradient(160deg,rgba(35,18,12,.82),rgba(20,12,10,.82));border:1px solid rgba(255,92,26,.32);box-shadow:0 30px 80px -25px rgba(255,92,26,.2),0 0 0 1px rgba(255,92,26,.18);transform:scale(1.02)}
@media(min-width:768px){.prc-card-featured{transform:translateY(-12px) scale(1.03)}}
.prc-card-featured:hover{transform:translateY(-16px) scale(1.03);box-shadow:0 40px 100px -25px rgba(255,92,26,.3),0 0 0 1px rgba(255,92,26,.32)}
.prc-ribbon{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--orange),#FF7A3D);color:#fff;font-family:'DM Sans',sans-serif;font-weight:700;font-size:.7rem;letter-spacing:.12em;padding:.4rem 1rem;border-radius:9999px;box-shadow:0 8px 25px rgba(255,92,26,.4),inset 0 1px 0 rgba(255,255,255,.2);white-space:nowrap}

.prc-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}
.prc-icon{font-size:1.6rem;line-height:1}
.prc-tag{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.66rem;font-weight:600;letter-spacing:.18em;color:rgba(255,138,77,.7);text-transform:uppercase;padding:.3rem .65rem;border-radius:9999px;background:rgba(255,92,26,.08);border:1px solid rgba(255,92,26,.22)}
.prc-name{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.5rem,2.4vw,1.75rem);line-height:1.15;letter-spacing:-.02em;color:#fff;margin:0}
.prc-target{color:rgba(255,255,255,.65);font-size:.88rem;line-height:1.5;margin-bottom:.25rem;min-height:2.6em}
.prc-price-row{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;padding:.75rem 0;border-top:1px dashed rgba(255,255,255,.08);border-bottom:1px dashed rgba(255,255,255,.08)}
.prc-price-from{font-size:.78rem;color:var(--muted-2);font-weight:500}
.prc-price{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(2rem,3.5vw,2.6rem);line-height:1;letter-spacing:-.03em;background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}
/* prc-price-cta : remplace l'affichage du chiffre par un call-to-quote inline */
.prc-price-cta{display:inline-flex;align-items:center;gap:.5rem;font-family:'DM Sans',sans-serif;font-weight:700;font-size:1.05rem;line-height:1.2;letter-spacing:-.01em;padding:.6rem .95rem;border-radius:9999px;background:linear-gradient(135deg,rgba(255,170,102,.14),rgba(255,92,26,.12));border:1px solid rgba(255,138,77,.32);color:#FFAA66}
.prc-price-cta::before{content:'';width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,#FFAA66,#FF5C1A);box-shadow:0 0 8px rgba(255,138,77,.6);flex-shrink:0}
/* pl-price-cta : version pillar pages (devis sans montant) */
.pl-price-cta{display:inline-flex;align-items:center;gap:.55rem;font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.15rem,2.2vw,1.5rem);line-height:1.15;letter-spacing:-.015em;padding:.85rem 1.25rem;border-radius:9999px;background:linear-gradient(135deg,rgba(255,170,102,.16),rgba(255,92,26,.14));border:1px solid rgba(255,138,77,.38);color:#FFAA66;margin:.5rem 0}
.pl-price-cta::before{content:'';width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,#FFAA66,#FF5C1A);box-shadow:0 0 10px rgba(255,138,77,.6);flex-shrink:0}
.prc-price em{font-style:normal;font-size:.5em;color:rgba(255,255,255,.55);-webkit-text-fill-color:rgba(255,255,255,.55);background:none;font-weight:500;margin-left:.1em}
.prc-meta{font-size:.78rem;color:var(--muted);letter-spacing:.005em}
.prc-meta strong{color:#fff;font-weight:600}
.prc-list{list-style:none;display:flex;flex-direction:column;gap:.55rem;padding:0;margin:.25rem 0 .5rem}
.prc-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.86rem;color:rgba(255,255,255,.78);line-height:1.5;position:relative;padding-left:1.5rem}
.prc-list li::before{content:'';position:absolute;left:0;top:.45em;width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--orange),var(--orange-2));flex-shrink:0;box-shadow:0 0 0 3px rgba(255,92,26,.08)}
.prc-list li::after{content:'';position:absolute;left:4px;top:.65em;width:5px;height:2.5px;border-left:1.5px solid #fff;border-bottom:1.5px solid #fff;transform:rotate(-45deg)}
.prc-list li strong{color:#fff;font-weight:600;background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.prc-cta{margin-top:auto;justify-content:center;width:100%;padding-left:1rem !important;padding-right:1rem !important}

.prc-foot{margin-top:2.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.85rem}
.prc-foot-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.1rem;border-radius:9999px;background:rgba(34,216,133,.08);border:1px solid rgba(34,216,133,.25);color:#22D885;font-size:.78rem;font-weight:600;letter-spacing:.005em;font-family:'DM Sans',sans-serif}
.prc-foot p{color:rgba(255,255,255,.65);font-size:.92rem;line-height:1.6;max-width:560px}
.prc-link{color:var(--orange);font-weight:600;border-bottom:1px solid currentColor;transition:color .3s}
.prc-link:hover{color:#FFAA66}

/* ─── FOUNDER LETTER ─── */
#founder{padding:5rem 0 5.5rem;position:relative;overflow:hidden}
#founder::before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(255,138,77,.08),transparent 70%);pointer-events:none}
#founder .container{position:relative;z-index:1}
.fnd-card{max-width:920px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2rem;padding:2.5rem 1.75rem;border-radius:1.5rem;background:linear-gradient(160deg,rgba(20,12,10,.7),rgba(15,10,8,.7));border:1px solid rgba(255,255,255,.07);backdrop-filter:blur(10px);position:relative;box-shadow:0 30px 80px -30px rgba(0,0,0,.6)}
@media(min-width:768px){.fnd-card{grid-template-columns:240px 1fr;gap:3rem;padding:3rem 3.25rem;align-items:center}}
.fnd-card::before{content:'';position:absolute;inset:0;border-radius:1.5rem;padding:1px;background:linear-gradient(160deg,rgba(255,138,77,.4),transparent 50%,rgba(122,74,53,.3));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.7}

.fnd-photo{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}
@media(min-width:768px){.fnd-photo{align-items:flex-start;text-align:left}}
.fnd-avatar{position:relative;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#FF8A4D,var(--orange) 50%,#7a4a35 100%);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 0 0 4px rgba(255,92,26,.1),0 20px 50px rgba(255,92,26,.25),inset 0 1px 0 rgba(255,255,255,.18);overflow:hidden;isolation:isolate}
.fnd-avatar-glow{position:absolute;inset:-15%;border-radius:50%;background:radial-gradient(circle,rgba(255,138,77,.35),transparent 70%);filter:blur(20px);z-index:-1}
.fnd-avatar-init{font-family:'Caveat',cursive;font-weight:700;font-size:4.4rem;line-height:1;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:.005em}

/* ── Variant photo : portrait éditorial pleine colonne (magazine) ── */
.fnd-avatar-photo{
  width:100%;
  max-width:280px;
  height:auto;
  aspect-ratio:1/1;
  background:transparent;
  border-radius:1.25rem;
  box-shadow:
    0 0 0 1px rgba(255,138,77,.32),
    0 0 0 5px rgba(255,92,26,.05),
    0 40px 80px -20px rgba(0,0,0,.65),
    0 0 70px rgba(255,92,26,.18),
    inset 0 1px 0 rgba(255,255,255,.05);
}
@media(min-width:768px){
  .fnd-avatar-photo{
    max-width:none;
    width:240px;
    height:300px;
    aspect-ratio:auto;
  }
}
.fnd-avatar-photo picture{
  position:absolute;
  inset:0;
  display:block;
  border-radius:inherit;
  overflow:hidden;
  z-index:1;
}
.fnd-avatar-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:50% 22%;       /* visage en haut du cadre */
  border-radius:inherit;
  transition:transform 1.2s cubic-bezier(.2,.7,.2,1), filter .6s ease;
  filter:contrast(1.05) saturate(1.06);
}
.fnd-avatar-photo:hover img{
  transform:scale(1.04);
  filter:contrast(1.1) saturate(1.12);
}
/* Tag éditorial discret (année + site) — pas redondant avec meta nom dessous */
.fnd-avatar-photo::after{
  content:'— 2014';
  position:absolute;
  bottom:.7rem;
  left:.75rem;
  font-family:'JetBrains Mono','SF Mono',Menlo,monospace;
  font-size:.58rem;
  letter-spacing:.14em;
  color:rgba(255,255,255,.55);
  z-index:3;
  text-shadow:0 1px 4px rgba(0,0,0,.6);
}
/* Edge highlight subtil (lumière en haut) */
.fnd-avatar-ring{
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(165deg,
    rgba(255,138,77,.18) 0%,
    transparent 30%,
    transparent 70%,
    rgba(0,0,0,.25) 100%);
  z-index:2;
  pointer-events:none;
  mix-blend-mode:overlay;
}
/* Glow halo respiré (signature premium) */
.fnd-avatar-glow{
  position:absolute;
  inset:-15%;
  border-radius:inherit;
  background:radial-gradient(ellipse at 30% 20%, rgba(255,138,77,.35), transparent 70%);
  filter:blur(28px);
  z-index:-1;
  animation:fndGlowPulse 6s ease-in-out infinite;
}
@keyframes fndGlowPulse{
  0%,100% { opacity:.7;  transform:scale(1);    }
  50%     { opacity:1;   transform:scale(1.08); }
}
@media (prefers-reduced-motion: reduce){
  .fnd-avatar-photo img,
  .fnd-avatar-glow{ animation:none; transition:none; }
}
.fnd-photo-meta{display:flex;flex-direction:column;gap:.15rem}
.fnd-photo-meta strong{font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:600;color:#fff;letter-spacing:-.005em}
.fnd-photo-meta span{font-size:.78rem;color:var(--muted)}

.fnd-text{position:relative}
.fnd-eye{display:inline-block;margin-bottom:1rem}
.fnd-quote-mark{position:absolute;top:-1.5rem;right:0;font-family:'Caveat',cursive;font-size:6rem;line-height:1;color:rgba(255,138,77,.18);font-weight:700;pointer-events:none;user-select:none}
.fnd-body{font-family:'DM Sans',sans-serif;font-size:1.05rem;line-height:1.65;color:rgba(255,255,255,.85);margin-bottom:1.25rem;letter-spacing:-.005em}
.fnd-body strong{color:#fff;font-weight:600;background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.fnd-sig{
  font-family:'DM Sans','Inter',sans-serif;
  font-weight:600;
  font-size:.95rem;
  color:rgba(255,255,255,.78);
  line-height:1.4;
  margin-bottom:1.75rem;
  letter-spacing:-.005em;
  padding-top:1rem;
  border-top:1px dashed rgba(255,138,77,.18);
}
.fnd-sig .fnd-sig-sep{ color:rgba(255,138,77,.6); margin:0 .35rem; font-weight:400; }
.fnd-sig .fnd-sig-mail{
  font-family:'JetBrains Mono','SF Mono',Menlo,monospace;
  font-size:.85rem;
  background:linear-gradient(180deg,#FFAA66,#FF5C1A);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  font-weight:600;
  letter-spacing:-.005em;
}
.fnd-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}

/* ─── SEO WINS STRIP (cases section pre-featured) ─── */
.seo-strip{position:relative;margin:0 auto 2.5rem;padding:1.4rem 1.5rem;border-radius:1.25rem;background:linear-gradient(135deg,rgba(34,216,133,.04) 0%,rgba(255,92,26,.05) 50%,rgba(34,216,133,.04) 100%);border:1px solid rgba(255,138,77,.18);max-width:1180px;display:flex;flex-direction:column;gap:1rem;overflow:hidden}
.seo-strip::before{content:'';position:absolute;inset:0;border-radius:1.25rem;padding:1px;background:linear-gradient(90deg,rgba(34,216,133,.45),transparent 30%,rgba(255,138,77,.5) 70%,rgba(34,216,133,.45));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.55}
.seo-strip-eye{display:inline-flex;align-items:center;gap:.55rem;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#22D885;align-self:flex-start;padding:.3rem .75rem;background:rgba(34,216,133,.1);border:1px solid rgba(34,216,133,.3);border-radius:9999px;position:relative;z-index:1}
.seo-strip-pulse{width:6px;height:6px;border-radius:50%;background:#22D885;box-shadow:0 0 8px #22D885;animation:hudDotPulse 1.5s ease-in-out}
.seo-strip-list{display:flex;flex-direction:column;gap:.85rem;align-items:stretch;position:relative;z-index:1}
@media(min-width:768px){.seo-strip-list{flex-direction:row;align-items:center;gap:1.25rem}}
.seo-strip-tile{display:flex;align-items:center;gap:.85rem;padding:.55rem .25rem;flex:1;text-decoration:none;color:#fff;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:relative;cursor:pointer}
.seo-strip-tile:hover{transform:translateY(-2px)}
.seo-strip-num{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.4rem,2.5vw,1.85rem);line-height:.95;letter-spacing:-.02em;background:linear-gradient(180deg,#22D885,#1FB776);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;flex-shrink:0;display:inline-flex;align-items:baseline;gap:.15rem}
.seo-strip-num .up{font-size:.65em;color:#22D885;-webkit-text-fill-color:#22D885;background:none;font-weight:600;line-height:1}
.seo-strip-meta{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.seo-strip-meta strong{font-family:'DM Sans',sans-serif;font-weight:600;font-size:.92rem;color:#fff;line-height:1.2;letter-spacing:-.005em}
.seo-strip-meta span{font-size:.74rem;color:rgba(255,255,255,.55);line-height:1.3}
.seo-strip-sep{display:none;width:1px;height:32px;background:linear-gradient(180deg,transparent,rgba(255,138,77,.3),transparent);flex-shrink:0}
@media(min-width:768px){.seo-strip-sep{display:block}}
.seo-strip-tile-cta{background:rgba(255,92,26,.08);border:1px solid rgba(255,92,26,.28);border-radius:.75rem;padding:.7rem 1rem;flex:0 0 auto;justify-content:space-between}
.seo-strip-tile-cta:hover{background:rgba(255,92,26,.14);border-color:rgba(255,92,26,.45)}
.seo-strip-tile-cta .seo-strip-meta strong{color:var(--orange);background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.seo-strip-arrow{color:var(--orange);font-size:1.1rem;font-weight:600;transition:transform .35s}
.seo-strip-tile-cta:hover .seo-strip-arrow{transform:translateX(4px)}

/* ─── COMPARISON Sans/Avec Moov ─── */
#compare{padding:6rem 0 6.5rem;position:relative;overflow:hidden;background:#000}
#compare::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 50% 30%,rgba(255,92,26,.06),transparent 70%);pointer-events:none}
#compare .container{position:relative;z-index:1}
.cmp-head{max-width:760px;margin:0 auto 3rem;text-align:center}
.cmp-head .section-eyebrow{display:inline-block;margin-bottom:1rem}
.cmp-h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.9rem,4vw,3rem);line-height:1.12;letter-spacing:-.025em;margin-bottom:1rem;background:linear-gradient(180deg,#fff,rgba(255,255,255,.6) 130%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.cmp-h2 .hl-orange{background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.cmp-strike{position:relative;color:rgba(255,115,115,.85);-webkit-text-fill-color:rgba(255,115,115,.85);background:none}
.cmp-strike::after{content:'';position:absolute;left:-2%;right:-2%;top:55%;height:2px;background:linear-gradient(90deg,transparent,#FF7373,transparent);transform:rotate(-2deg);opacity:.85}
.cmp-sub{color:rgba(255,255,255,.7);font-size:.95rem;line-height:1.65;max-width:600px;margin:0 auto}

.cmp-table{display:flex;flex-direction:column;gap:0;border-radius:1.25rem;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(20,12,10,.7),rgba(15,10,8,.7));backdrop-filter:blur(10px);box-shadow:0 30px 80px -30px rgba(0,0,0,.6)}
.cmp-row{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid rgba(255,255,255,.06)}
@media(min-width:768px){.cmp-row{grid-template-columns:1.1fr 1fr 1fr}}
.cmp-row:first-child{border-top:none}
.cmp-cell{padding:1.15rem 1.25rem;font-size:.92rem;color:rgba(255,255,255,.78);line-height:1.55;display:flex;flex-direction:column;justify-content:center;gap:.25rem;position:relative}
@media(min-width:768px){.cmp-cell{padding:1.4rem 1.6rem}}
.cmp-cell em{font-style:normal;font-size:.78rem;color:var(--muted);line-height:1.4}
.cmp-cell strong{color:#fff;font-weight:600}
.cmp-label{font-family:'DM Sans',sans-serif;font-weight:600;font-size:.9rem;color:rgba(255,255,255,.55);letter-spacing:.005em;background:rgba(0,0,0,.25);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}
@media(max-width:767px){.cmp-label{padding:.85rem 1.25rem;font-size:.7rem}}
.cmp-bad{background:rgba(255,115,115,.04);border-left:1px solid rgba(255,115,115,.15)}
.cmp-bad strong{color:#FF9999}
.cmp-good{background:rgba(34,216,133,.05);border-left:1px solid rgba(34,216,133,.18)}
.cmp-good strong{color:#22D885}

.cmp-row-head{background:rgba(0,0,0,.3)}
.cmp-row-head .cmp-cell{padding:1rem 1.25rem;text-align:center;align-items:center}
.cmp-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem 1rem;border-radius:9999px;font-family:'DM Sans',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.14em}
.cmp-pill.bad{background:rgba(255,115,115,.1);border:1px solid rgba(255,115,115,.3);color:#FF9999}
.cmp-pill.good{background:rgba(34,216,133,.12);border:1px solid rgba(34,216,133,.35);color:#22D885;box-shadow:0 0 20px rgba(34,216,133,.15)}

.cmp-row-foot{background:linear-gradient(90deg,rgba(255,115,115,.06),rgba(34,216,133,.08))}
.cmp-row-foot .cmp-cell{padding:1.5rem 1.6rem}
.cmp-amount{font-family:'DM Sans',sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:-.005em}
.cmp-amount.bad{color:#FF9999}
.cmp-amount.good{color:#22D885}

.cmp-cta{margin-top:2.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.85rem}
.cmp-foot{font-size:.78rem;color:var(--muted-2);letter-spacing:.005em;font-style:italic}


/* ─── PERF: respecter prefers-reduced-motion ─── */
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  .hero-blob,.ovw-glow,.stk-bg::after,.fnd-avatar-glow{animation:none !important}
}

/* ═══════════════════════════════════════════════════════════════════
   PARTIALS : breadcrumbs · related-pillars · cta-strip · related-articles
   ═══════════════════════════════════════════════════════════════════ */

/* ─── BREADCRUMBS ─── */
.moov-breadcrumb{padding:6.5rem 0 2rem;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.moov-breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin:0;padding:0}
.moov-breadcrumb li{display:inline-flex;align-items:center;gap:.45rem}
.moov-breadcrumb a{color:rgba(255,138,77,.85);text-decoration:none;transition:color .2s}
.moov-breadcrumb a:hover{color:#FFAA66}
.moov-breadcrumb span[aria-current="page"]{color:#fff;font-weight:600}
.moov-breadcrumb-sep{color:rgba(255,138,77,.35)}

/* ─── COMMON HEAD pour partials ─── */
.moov-section-head{max-width:760px;margin:0 auto 3rem;text-align:center}
.moov-section-head h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.9rem,4vw,3rem);line-height:1.1;letter-spacing:-.025em;margin-bottom:1rem;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.55) 130%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.moov-section-head h2 em{font-style:italic;background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.moov-section-head p{color:rgba(255,255,255,.7);font-size:.98rem;line-height:1.65;max-width:600px;margin:0 auto}

/* ─── RELATED PILLARS ─── */
.moov-related-pillars{padding:5rem 0 5.5rem;position:relative;background:linear-gradient(180deg,#000,#0a0707);border-top:1px solid rgba(255,92,26,.08)}
.moov-pillar-grid{display:grid;grid-template-columns:1fr;gap:1rem;max-width:1100px;margin:0 auto}
@media(min-width:640px){.moov-pillar-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.moov-pillar-grid{grid-template-columns:repeat(4,1fr)}}
.moov-pillar-card{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.5rem 1.3rem;border-radius:1rem;background:linear-gradient(160deg,rgba(20,12,10,.7),rgba(15,10,8,.7));border:1px solid rgba(255,92,26,.18);color:#fff;text-decoration:none;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,background .35s,box-shadow .35s;overflow:hidden}
.moov-pillar-card::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 100% at 0% 0%,rgba(255,138,77,.08),transparent 60%);opacity:0;transition:opacity .35s;pointer-events:none}
.moov-pillar-card:hover{transform:translateY(-4px);border-color:rgba(255,138,77,.4);box-shadow:0 20px 50px -20px rgba(255,92,26,.3)}
.moov-pillar-card:hover::before{opacity:1}
.moov-pillar-num{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.7rem;font-weight:600;color:rgba(255,138,77,.7);letter-spacing:.1em}
.moov-pillar-h{font-family:'DM Sans',sans-serif;font-weight:700;font-size:1.15rem;line-height:1.25;letter-spacing:-.015em;color:#fff;margin:0}
.moov-pillar-desc{font-size:.85rem;color:rgba(255,255,255,.65);line-height:1.55;margin:0;flex:1}
.moov-pillar-cta{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.72rem;font-weight:600;color:var(--orange);letter-spacing:.04em;margin-top:.4rem;transition:transform .3s}
.moov-pillar-card:hover .moov-pillar-cta{transform:translateX(3px)}

/* ─── CTA STRIP ─── */
.moov-cta-strip{padding:5rem 0 5.5rem;background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(255,92,26,.08),transparent 70%),#000;position:relative}
.moov-cta-strip-box{max-width:780px;margin:0 auto;text-align:center;padding:3rem 2rem;border-radius:1.5rem;background:linear-gradient(160deg,rgba(20,12,10,.6),rgba(15,10,8,.6));border:1px solid rgba(255,92,26,.18);position:relative;overflow:hidden}
.moov-cta-strip-box::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 50% 0%,rgba(255,138,77,.1),transparent 70%);pointer-events:none}
.moov-cta-strip-box::after{content:'';position:absolute;inset:0;border-radius:1.5rem;padding:1px;background:linear-gradient(160deg,rgba(255,138,77,.4),transparent 50%,rgba(255,92,26,.2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.7}
.moov-cta-strip-box > *{position:relative}
.moov-cta-strip-eye{display:inline-flex;align-items:center;gap:.5rem;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.7rem;font-weight:600;color:rgba(34,216,133,.85);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.2rem}
.moov-cta-strip-pulse{width:8px;height:8px;border-radius:50%;background:#22D885;box-shadow:0 0 10px #22D885;flex-shrink:0}
.moov-cta-strip-box h2{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.7rem,3.8vw,2.6rem);line-height:1.15;letter-spacing:-.025em;margin-bottom:.85rem;background:linear-gradient(180deg,#fff,rgba(255,255,255,.65) 130%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.moov-cta-strip-box h2 em{font-style:italic;background:linear-gradient(180deg,#FFAA66,#FF5C1A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.moov-cta-strip-box p{color:rgba(255,255,255,.72);font-size:1rem;line-height:1.6;max-width:520px;margin:0 auto 1.8rem}
.moov-cta-strip-row{display:inline-flex;flex-wrap:wrap;gap:.75rem;justify-content:center;align-items:center}

/* ─── RELATED ARTICLES ─── */
.moov-related-articles{padding:5rem 0 5.5rem;background:#000;border-top:1px solid rgba(255,255,255,.04)}
.moov-articles-grid{display:grid;grid-template-columns:1fr;gap:1rem;max-width:1100px;margin:0 auto}
@media(min-width:640px){.moov-articles-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.moov-articles-grid{grid-template-columns:repeat(3,1fr)}}
.moov-article-card{display:flex;flex-direction:column;border-radius:1rem;background:linear-gradient(160deg,rgba(20,12,10,.65),rgba(15,10,8,.65));border:1px solid rgba(255,255,255,.06);overflow:hidden;text-decoration:none;color:#fff;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}
.moov-article-card:hover{transform:translateY(-4px);border-color:rgba(255,138,77,.32);box-shadow:0 20px 50px -20px rgba(255,92,26,.3)}
.moov-article-card-img{position:relative;height:130px;background:linear-gradient(135deg,rgba(255,92,26,.25),rgba(122,74,53,.25));display:flex;align-items:flex-end;justify-content:space-between;padding:.85rem 1rem;overflow:hidden}
.moov-article-card-img.has-image{background:#0a0707;height:170px}
.moov-article-card-img-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1);z-index:0}
.moov-article-card:hover .moov-article-card-img-photo{transform:scale(1.05)}
.moov-article-card-img.has-image .moov-article-card-tag{position:relative;z-index:1;background:rgba(0,0,0,.55);backdrop-filter:blur(8px)}
.moov-article-card-tag{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.62rem;font-weight:600;color:rgba(255,170,102,.95);letter-spacing:.14em;text-transform:uppercase;padding:.3rem .55rem;border-radius:9999px;background:rgba(255,92,26,.2);border:1px solid rgba(255,138,77,.4)}
.moov-article-card-mark{font-family:'DM Sans',sans-serif;font-weight:800;font-size:1.8rem;color:rgba(255,138,77,.18);letter-spacing:-.03em}
.moov-article-card-body{padding:1.2rem 1.3rem;display:flex;flex-direction:column;gap:.6rem;flex:1}
.moov-article-card-h{font-family:'DM Sans',sans-serif;font-weight:700;font-size:1.05rem;line-height:1.3;letter-spacing:-.015em;color:#fff;margin:0}
.moov-article-card-excerpt{color:rgba(255,255,255,.65);font-size:.85rem;line-height:1.55;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.moov-article-card-foot{display:flex;gap:.85rem;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.65rem;color:rgba(255,255,255,.5);letter-spacing:.08em;margin-top:.3rem}
.moov-related-articles-foot{text-align:center;margin-top:2.5rem}

/* ═══════════════════════════════════════════════════════════════════
   MOOV/MENU HUD (déplacé depuis les page-specific CSS — v1.7.0)
   ═══════════════════════════════════════════════════════════════════ */
/* ═══ MOOV/MENU · brand-aligned ═══ */
/* Aligned with site charter: #000 + #FF5C1A + DM Sans/Inter/JetBrains Mono + HUD codes */

/* TOPBAR scroll-aware */
nav.topbar{transition:transform .55s cubic-bezier(.7,0,.2,1),background .35s,backdrop-filter .35s,padding .35s;will-change:transform}
nav.topbar.hidden{transform:translateY(-110%)}

/* TRIGGER — terminal pill style cohérent avec le reste du site */
.mc-trigger{display:inline-flex;align-items:center;gap:.65rem;padding:.55rem .9rem .55rem 1rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,138,77,.18);border-radius:9999px;color:#fff;cursor:pointer;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.7rem;letter-spacing:.18em;font-weight:600;line-height:1;text-transform:uppercase;transition:background .35s,border-color .35s,transform .25s}
.mc-trigger:hover{background:rgba(255,92,26,.08);border-color:rgba(255,138,77,.45);transform:translateY(-1px)}
.mc-trigger.is-open{background:rgba(255,92,26,.1);border-color:#FF5C1A}
.mc-trigger-label{font-weight:600;font-style:normal}
.mc-trigger-label::after{content:""}
.mc-trigger-icon{position:relative;width:18px;height:13px;display:inline-block;font-style:normal;font-family:inherit;font-size:0;letter-spacing:0;opacity:1;text-transform:none;border:0;background:none}
.mc-trigger-icon::before{content:none}
.mc-trigger-icon span{position:absolute;left:0;width:100%;height:1.4px;background:currentColor;border-radius:1px;transition:transform .55s cubic-bezier(.7,0,.2,1),opacity .25s,top .35s,width .35s;display:block}
.mc-trigger-icon span:nth-child(1){top:2px}
.mc-trigger-icon span:nth-child(2){top:6px;width:62%}
.mc-trigger-icon span:nth-child(3){top:10px;width:38%;display:block}
.mc-trigger:hover .mc-trigger-icon span:nth-child(2),.mc-trigger:hover .mc-trigger-icon span:nth-child(3){width:100%}
.mc-trigger.is-open .mc-trigger-icon span:nth-child(1){top:6px;transform:rotate(45deg);width:100%}
.mc-trigger.is-open .mc-trigger-icon span:nth-child(2){opacity:0;transform:scaleX(0)}
.mc-trigger.is-open .mc-trigger-icon span:nth-child(3){top:6px;width:100%;transform:rotate(-45deg)}

/* OVERLAY — pure black, halo orange existant, grille subtile */
.mc-overlay{position:fixed;inset:0;z-index:9999;background:#000;color:#fff;pointer-events:none;clip-path:circle(0% at var(--st-cx,100%) var(--st-cy,0%));transition:clip-path 1.05s cubic-bezier(.7,0,.2,1);overflow:hidden;font-family:'DM Sans',Inter,sans-serif}
.mc-overlay.is-open{pointer-events:auto;clip-path:circle(150% at var(--st-cx,100%) var(--st-cy,0%))}
.mc-overlay::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 70% 30%,rgba(255,92,26,.10),transparent 60%);pointer-events:none;animation:mcHaloBreath 18s ease-in-out;opacity:0;transition:opacity 1.2s .35s}
.mc-overlay.is-open::before{opacity:1}
@keyframes mcHaloBreath{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}

.mc-curtain{display:none}
.mc-bg-motion{display:none}

.mc-bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,#000 30%,transparent 90%);opacity:0;transition:opacity 1s .5s}
.mc-overlay.is-open .mc-bg-grid{opacity:1}

.mc-bg-wordmark{position:absolute;left:50%;bottom:-12vh;transform:translateX(-50%);font-family:'DM Sans',Inter,sans-serif;font-weight:700;font-size:clamp(14rem,28vw,28rem);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(255,138,77,.06);user-select:none;line-height:.8;pointer-events:none;will-change:transform;display:block;opacity:0;transition:opacity 1.2s .65s,transform 1.4s cubic-bezier(.16,1,.3,1)}
.mc-overlay.is-open .mc-bg-wordmark{opacity:1}
.mc-bg-wordmark::before{content:"MOOV"}

.mc-bg-halo{display:none}

.mc-shell{position:relative;height:100%;display:grid;grid-template-rows:auto 1fr auto;padding:clamp(1rem,2.2vw,1.5rem) clamp(1.5rem,3.5vw,3rem);max-width:1640px;margin:0 auto;width:100%;z-index:2}

/* HEAD — terminal status bar */
.mc-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding-bottom:1rem;border-bottom:1px dashed rgba(255,138,77,.18);font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,138,77,.75);opacity:0;transform:translateY(-8px);transition:opacity .55s .55s,transform .55s .55s}
.mc-overlay.is-open .mc-head{opacity:1;transform:translateY(0)}
.mc-status{display:inline-flex;align-items:center;gap:.55rem;justify-self:start;color:#FFAA66;font-style:normal}
.mc-status::before,.mc-status::after{display:none;content:""}
.mc-status-mark{display:inline-block;width:6px;height:6px;border-radius:50%;background:#22D885;box-shadow:0 0 8px #22D885;animation:mcDot 2s ease-in-out;font-size:0}
@keyframes mcDot{0%,100%{opacity:1}50%{opacity:.35}}
.mc-clock{justify-self:center;color:rgba(255,255,255,.7);font-variant-numeric:tabular-nums}
.mc-close{justify-self:end;display:inline-flex;align-items:center;gap:.5rem;background:none;border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.85);padding:.45rem .7rem;cursor:pointer;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-style:normal;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;border-radius:9999px;transition:border-color .25s,background .25s,color .25s}
.mc-close:hover{border-color:#FF5C1A;background:rgba(255,92,26,.08);color:#FF8A4D}
.mc-close svg{width:13px;height:13px;transition:transform .25s;display:inline-block}
.mc-close:hover svg{transform:rotate(90deg)}
.mc-close span{display:inline-block;font-style:normal}
.mc-close span::before{content:"FERMER"}
.mc-close span::after{content:""}
.mc-close::after{display:none;content:""}

/* BODY — items grid */
.mc-body{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:clamp(1.5rem,4vw,3rem);align-items:center;padding:clamp(.5rem,1.5vw,1rem) 0;min-height:0;overflow:visible}

/* Hide unused panes (we use mouse-follow) */
.mc-preview,.mc-prev-frame,.mc-prev-meta,.mc-prev-eyebrow,.mc-prev-title,.mc-prev-desc,.mc-prev-pane{display:none!important}

/* Side info columns — vertical mono */
.mc-side{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.4);writing-mode:vertical-rl;transform:rotate(180deg);display:flex;flex-direction:column;gap:1.5rem;align-items:center;align-self:center;opacity:0;transition:opacity .65s 1s}
.mc-overlay.is-open .mc-side{opacity:1}
.mc-side span{white-space:nowrap}

/* List */
.mc-list{display:flex;align-items:center;justify-self:center;width:100%;max-width:980px}
.mc-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;width:100%}
.mc-item{position:relative;display:block;border:0}
.mc-item:not(:first-child){border-top:1px solid rgba(255,255,255,.06)}
.mc-item-row{display:flex;align-items:baseline;gap:clamp(.85rem,2vw,1.6rem);padding:clamp(.35rem,.65vw,.6rem) 0;text-decoration:none;color:#fff;position:relative;cursor:pointer}
.mc-item-row::before{display:none}

.mc-item-num{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.62rem;letter-spacing:.22em;color:#FFAA66;text-transform:uppercase;font-weight:500;flex-shrink:0;width:clamp(60px,7vw,80px);align-self:baseline;padding-top:.7em;opacity:0;transform:translateY(8px);transition:opacity .55s,transform .55s}
.mc-item-num::before{content:""}
.mc-overlay.is-open .mc-item-num{opacity:.8;transform:translateY(0)}
.mc-overlay.is-open .mc-item:nth-child(1) .mc-item-num{transition-delay:.65s}
.mc-overlay.is-open .mc-item:nth-child(2) .mc-item-num{transition-delay:.72s}
.mc-overlay.is-open .mc-item:nth-child(3) .mc-item-num{transition-delay:.79s}
.mc-overlay.is-open .mc-item:nth-child(4) .mc-item-num{transition-delay:.86s}
.mc-overlay.is-open .mc-item:nth-child(5) .mc-item-num{transition-delay:.93s}
.mc-overlay.is-open .mc-item:nth-child(6) .mc-item-num{transition-delay:1s}
.mc-item-arrow{display:none}

.mc-item-label{font-family:'DM Sans',Inter,sans-serif;font-weight:500;font-size:clamp(1.6rem,3vw,2.6rem);letter-spacing:-.022em;line-height:1.05;flex:1;color:#fff;font-style:normal;display:inline-flex;align-items:baseline;flex-wrap:wrap;overflow:hidden;padding:.05em 0;white-space:pre}

/* Letter mask reveal */
.mc-letter{display:inline-block;transform:translateY(110%);transition:transform .85s cubic-bezier(.74,0,.2,1);will-change:transform;white-space:pre}
.mc-overlay.is-open .mc-letter{transform:translateY(0)}
.mc-letter.mc-letter-dot{color:rgba(255,138,77,.4);transition:transform .85s cubic-bezier(.74,0,.2,1),color .35s}

.mc-item-meta{display:none}

/* Hover effects removed */

/* Sub-line under services */
.mc-sub{overflow:hidden;max-height:0;transition:max-height .55s cubic-bezier(.7,0,.2,1);will-change:max-height}
.mc-item.is-expanded .mc-sub{max-height:200px}
.mc-sub-inner{overflow:hidden;padding:0 0 .35rem clamp(70px,9vw,90px);font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.7rem;letter-spacing:.16em;color:rgba(255,255,255,.6);text-transform:uppercase;line-height:1.6;display:flex;flex-wrap:wrap;gap:0;margin-left:clamp(1rem,2.5vw,2rem)}
.mc-item.is-expanded .mc-sub-inner{padding-top:.1rem;padding-bottom:.85rem}
.mc-sub-pill{display:inline;padding:0;border:none;border-radius:0;background:none;font-family:inherit;font-size:inherit;font-style:normal;letter-spacing:inherit;color:rgba(255,255,255,.55);text-decoration:none;transition:color .25s;text-transform:uppercase}
.mc-sub-pill:hover{color:#FF8A4D;background:none;border-color:transparent;transform:none}
.mc-sub-pill .mc-sub-dot{display:none}
.mc-sub-pill::after{content:"  ·  ";color:rgba(255,138,77,.4)}
.mc-sub-pill:last-child::after{content:""}

/* MOUSE-FOLLOW PREVIEW — HUD frame avec corner brackets */
.mc-cursor{display:none}
.mc-cursor.is-on{opacity:1}
.mc-cursor-frame{position:relative;width:100%;height:100%;background:#070707;border:1px solid rgba(255,138,77,.22);overflow:hidden;box-shadow:0 28px 60px -20px rgba(0,0,0,.7),0 0 0 1px rgba(255,92,26,.05)}
.mc-cursor-corner{position:absolute;width:11px;height:11px;border:1.5px solid #FF8A4D;pointer-events:none;z-index:3}
.mc-cursor-corner.tl{top:6px;left:6px;border-right:0;border-bottom:0}
.mc-cursor-corner.tr{top:6px;right:6px;border-left:0;border-bottom:0}
.mc-cursor-corner.bl{bottom:6px;left:6px;border-right:0;border-top:0}
.mc-cursor-corner.br{bottom:6px;right:6px;border-left:0;border-top:0}
.mc-cursor-pane{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:1.6rem 1.4rem;opacity:0;transition:opacity .35s cubic-bezier(.7,0,.2,1);transform:scale(1.04);will-change:opacity,transform}
.mc-cursor-pane.is-on{opacity:1;transform:scale(1)}

/* Inline mini-arts (HUD style — cohérent avec le site) */
.cur-piliers{display:flex;flex-direction:column;gap:.4rem;width:100%}
.cur-piliers-item{display:flex;align-items:center;gap:.55rem;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.55rem;letter-spacing:.16em;color:rgba(255,255,255,.7);text-transform:uppercase}
.cur-piliers-num{color:#FFAA66}
.cur-piliers-bar{flex:1;height:2px;background:rgba(255,138,77,.15);border-radius:1px;overflow:hidden;position:relative}
.cur-piliers-bar::after{content:"";position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#FF5C1A,#FFAA66);border-radius:1px;width:var(--w,60%);animation:curBar 1.4s cubic-bezier(.16,1,.3,1) backwards}
@keyframes curBar{from{width:0}}

.cur-mono{display:flex;flex-direction:column;align-items:center;gap:.55rem;text-align:center}
.cur-mono-hex{position:relative;width:88px;height:88px;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:linear-gradient(135deg,rgba(255,92,26,.15),rgba(122,74,53,.4));display:flex;align-items:center;justify-content:center;font-family:'Caveat',cursive;font-size:2.6rem;color:#fff;font-weight:700}
.cur-mono-hex::before{content:"";position:absolute;inset:1px;clip-path:inherit;background:#0a0606}
.cur-mono-hex span{position:relative;z-index:2}
.cur-mono-cap{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.55rem;letter-spacing:.18em;color:rgba(255,255,255,.55);text-transform:uppercase}

.cur-svc{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;width:100%}
.cur-svc-card{padding:.45rem;border:1px solid rgba(255,138,77,.18);background:rgba(255,255,255,.02);text-align:center;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.5rem;letter-spacing:.14em;color:rgba(255,255,255,.7);text-transform:uppercase;display:flex;flex-direction:column;gap:.15rem;align-items:center;justify-content:center;aspect-ratio:1}
.cur-svc-card-num{color:#FFAA66}
.cur-svc-card-name{color:#fff}

.cur-trip{display:flex;gap:.4rem;width:100%}
.cur-trip i{flex:1;aspect-ratio:3/4;background:linear-gradient(135deg,#1a1612 0%,#3a2a1f 100%);border:1px solid rgba(255,138,77,.15);position:relative}
.cur-trip i:nth-child(2){background:linear-gradient(135deg,#2a201a 0%,#1a1612 100%);transform:translateY(-4px)}
.cur-trip i:nth-child(3){background:linear-gradient(135deg,#1a1612 0%,#2a1a14 100%)}
.cur-trip i::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(255,92,26,.08),transparent 70%)}
.cur-trip i span{position:absolute;bottom:.45rem;left:.5rem;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.45rem;letter-spacing:.18em;color:rgba(255,255,255,.7);text-transform:uppercase}

.cur-blog{display:flex;flex-direction:column;gap:.5rem;width:100%}
.cur-blog-row{padding:.45rem .55rem;border:1px solid rgba(255,138,77,.15);background:rgba(255,255,255,.02);text-align:left}
.cur-blog-eb{font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.45rem;letter-spacing:.18em;color:#FFAA66;text-transform:uppercase}
.cur-blog-tt{font-family:'DM Sans',Inter,sans-serif;font-weight:500;font-size:.7rem;color:#fff;line-height:1.3;margin-top:.15rem;letter-spacing:-.005em}

.cur-map{position:relative;width:140px;height:140px;border:1px dashed rgba(255,138,77,.25);border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 50%,rgba(255,92,26,.06),transparent 70%)}
.cur-map::before{content:"";position:absolute;inset:18%;border:1px dashed rgba(255,138,77,.18);border-radius:50%}
.cur-map-pin{position:absolute;width:18px;height:18px;border-radius:50% 50% 50% 0;background:linear-gradient(135deg,#FFAA66,#FF5C1A);transform:rotate(-45deg);left:50%;top:50%;margin-left:-9px;margin-top:-18px;box-shadow:0 0 14px rgba(255,92,26,.55);z-index:2}
.cur-map-pin::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg);width:6px;height:6px;border-radius:50%;background:#fff}
.cur-map-cap{position:absolute;bottom:-1.4rem;left:50%;transform:translateX(-50%);font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.5rem;letter-spacing:.18em;color:rgba(255,255,255,.65);text-transform:uppercase;white-space:nowrap}

.mc-cursor-tag{position:absolute;bottom:.65rem;right:.7rem;font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-size:.48rem;letter-spacing:.2em;color:rgba(255,138,77,.7);text-transform:uppercase;background:rgba(0,0,0,.65);padding:.2rem .45rem;border:1px solid rgba(255,138,77,.18);z-index:4}

/* FOOT — terminal style */
.mc-foot{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding-top:1rem;border-top:1px dashed rgba(255,138,77,.18);font-family:'JetBrains Mono','SF Mono',Menlo,monospace;font-style:normal;font-size:.65rem;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.16em;opacity:0;transform:translateY(8px);transition:opacity .55s 1.15s,transform .55s 1.15s}
.mc-overlay.is-open .mc-foot{opacity:1;transform:translateY(0)}
.mc-foot-left{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;justify-self:start}
.mc-foot-left a{color:rgba(255,255,255,.85);text-decoration:none;transition:color .25s}
.mc-foot-left a:hover{color:#FF8A4D}
.mc-foot-sep{width:3px;height:3px;border-radius:50%;background:rgba(255,138,77,.5);display:inline-block}
.mc-foot-mid{justify-self:center;color:rgba(255,138,77,.6);text-transform:uppercase}
.mc-foot-right{justify-self:end;display:flex;align-items:center;gap:.85rem;color:rgba(255,255,255,.45)}
.mc-foot-right span{display:inline}
.mc-foot-tip{display:none}

/* Responsive */
@media(max-width:1100px){
  .mc-side{display:none}
  .mc-body{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem 0}
  .mc-list{justify-self:stretch;max-width:none}
  .mc-foot{grid-template-columns:1fr;gap:.55rem;text-align:left;justify-items:start}
  .mc-foot-mid,.mc-foot-right{justify-self:start}
}
@media(max-width:720px){
  .mc-cursor{display:none}
  .mc-shell{padding:1rem 1.1rem}
  .mc-head{grid-template-columns:auto auto;gap:.7rem}
  .mc-clock{display:none}
  .mc-item-row{flex-wrap:wrap;gap:.65rem}
  .mc-item-num{width:auto;padding-top:0;padding-bottom:.15em;font-size:.55rem;flex:0 0 100%}
  .mc-item-arrow{display:none}
  .mc-item-label{font-size:clamp(2rem,9vw,3rem);width:100%;flex:0 0 100%}
}
@media(max-width:480px){
  .mc-trigger{padding:.5rem .8rem .5rem .9rem;gap:.5rem;font-size:.62rem}
  .mc-trigger-icon{width:16px;height:11px}
}
@media(prefers-reduced-motion:reduce){
  .mc-overlay,.mc-bg-grid,.mc-bg-wordmark,.mc-item-num,.mc-letter,.mc-head,.mc-foot,.mc-side,.mc-cursor{transition:none!important;animation:none!important;opacity:1!important;transform:none!important}
  .mc-overlay.is-open .mc-letter{transform:none!important}
}

body.mc-locked{overflow:hidden}

/* ═══════════════════════════════════════════════════════════════════
   INTERNAL PAGES — topbar + footer + body backgrounds solides
   (le .page-bg avec blobs orange n'a de sens que sur le hero d'accueil)
   ═══════════════════════════════════════════════════════════════════ */
/* Hide animated orange blobs on every non-home page (the visual cut comes from them) */
body:not(.home):not(.front-page) .page-bg{ display:none; }

/* Topbar solide sur pages internes (sinon le body bg apparaît derrière) */
body:not(.home):not(.front-page) nav.topbar{
  background:rgba(8,6,5,.92);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(255,255,255,.05);
}
body:not(.home):not(.front-page) nav.topbar.scrolled{
  background:rgba(0,0,0,.85);
}

/* Body interne : gradient subtil cohérent sur toute la hauteur */
body:not(.home):not(.front-page){
  background:linear-gradient(180deg,#0a0707 0%,#000 320px,#000 100%);
}

/* Footer : déjà solid #000 — on renforce avec un séparateur visible */
body:not(.home):not(.front-page) footer{
  background:#000;
  border-top:1px solid rgba(255,255,255,.08);
  position:relative;
  z-index:2;
}

/* ═══════════════════════════════════════════════════════════════════
   MOBILE PRO MAX — ergonomie tactile, lecture, espacement (v1.19.0)
   ═══════════════════════════════════════════════════════════════════ */

/* ── A. Reset global mobile (≤1023px) ── */
@media (max-width:1023px){

  /* Smooth scroll : on évite que les ancres se cachent derrière la topbar fixe */
  html{ scroll-padding-top:80px; }

  /* iOS : 16px sur tous les inputs pour bloquer le zoom au focus */
  input,textarea,select{ font-size:16px !important; }

  /* Désactive le tap-highlight bleu iOS — on utilise nos propres :active states */
  a,button,[role="button"],input,select,textarea{
    -webkit-tap-highlight-color:transparent;
  }

  /* Container : padding cohérent + safe-area iOS */
  .container{
    padding-left:max(1.25rem, env(safe-area-inset-left));
    padding-right:max(1.25rem, env(safe-area-inset-right));
  }

  /* Body bottom : safe-area pour la sticky CTA + home indicator iOS */
  body{ padding-bottom:calc(96px + env(safe-area-inset-bottom)); }

  /* ── B. Touch targets : minimum 44×44 (Apple HIG) ── */
  .btn-pill,
  .nav-cta,
  .mc-trigger,
  .mc-close,
  .mc-sub-pill,
  .footer-soc,
  .sticky-cta-btn,
  .sticky-cta-close,
  .exit-close,
  .seo-strip-tile,
  .moov-pillar-cta,
  .moov-article-card{
    min-height:44px;
  }

  .btn-pill{ padding:.65rem .65rem .65rem 1.25rem; }
  .btn-pill .arrow{ width:38px; height:38px; }

  /* Inputs : padding généreux pour pouce */
  .contact-input{ padding:1.1rem 0; }
  .contact-input input,
  .contact-input textarea,
  .roi-gate-input,
  .exit-input{ min-height:48px; }

  /* ── C. Active state tactile (feedback visuel au tap) ── */
  .btn-pill:active,
  .case-link:active,
  .case:active,
  .ovw-card:active,
  .prc-card:active,
  .mc-item-row:active,
  .moov-pillar-card:active,
  .moov-article-card:active,
  .seo-strip-tile:active,
  .footer-soc:active{
    transform:scale(.98);
    transition:transform .12s ease;
  }

  /* ── D. Typographie : éviter les débordements sur ≤360px ── */
  .hero-text h1{ font-size:clamp(1.85rem,8vw,2.6rem); line-height:1.1; }
  /* Empêche les phrases orange (.hl-orange) de provoquer un overflow horizontal */
  .hero-text h1 .hl-orange{ white-space:normal; }
  .hero-text p{ font-size:.95rem; }
  .hero-bullets{ gap:1rem .9rem; }
  .hero-bullets li{ font-size:.8rem; }

  /* Section heads partagées : un peu plus serrées */
  .roi-head h2,
  .reference-text h2,
  .cases-head h2,
  .ovw-h2,
  .stk-h2,
  .cmp-h2,
  .prc-h2,
  .svc-h2,
  .moov-section-head h2,
  .contact-head h2{
    font-size:clamp(1.55rem,5.5vw,2.1rem);
    line-height:1.18;
    letter-spacing:-.02em;
  }

  /* ── E. Section padding : compact mais respirable ── */
  #hero{ padding:6.5rem 0 3rem; }
  .section,#roi-calc,#reference,#cases,#contact,#founder,
  #manifest,#techstack,#compare,#pricing,#bigservices,
  .moov-related-pillars,.moov-cta-strip,.moov-related-articles{
    padding-top:3.5rem;
    padding-bottom:3.5rem;
  }

  /* ── F. Hero visual : la grosse sphère fallback est tuée — on met un visuel hi-fi compact ── */
  .hero-visual,
  #hero-3d-mount.hero-3d-skip{
    display:none !important;
  }
  .hero-grid{ gap:1.25rem; }
  .hero-cta-row{ flex-direction:column; align-items:stretch; gap:.75rem; margin-bottom:1.25rem; }
  .hero-cta-row .btn-pill{ width:100%; justify-content:space-between; }
  .hero-cta-row .btn-pill.ghost-link{ justify-content:center; padding:.5rem 1rem; }

  /* ── G. Cards : padding plus généreux pour lecture ── */
  .ovw-card{ padding:1.5rem 1.35rem 1.35rem; min-height:auto; }
  .case-content,.case-meta-row,.case-tags{ padding-left:1.1rem; padding-right:1.1rem; }
  .case-content{ padding-top:.85rem; padding-bottom:1.1rem; }
  .cf-content{ padding:1.5rem 1.25rem 1.75rem; }
  .fnd-card{ padding:2rem 1.35rem; }
  .prc-card{ padding:1.75rem 1.4rem; }
  .roi-card-v3{ padding:1.5rem 1.25rem; }

  /* ── H. Sticky CTA : safe-area + plus compact ── */
  .sticky-cta{
    bottom:calc(.75rem + env(safe-area-inset-bottom));
    left:.75rem; right:.75rem;
    padding:.6rem .75rem;
  }

  /* ── I. ROI bar 5-col → 1-col empilable propre ── */
  .cf-roi{
    grid-template-columns:1fr;
    gap:1rem;
    padding:1.1rem;
  }
  .cf-roi-divider{ display:none; }

  /* Before/After stats : 2 colonnes propres */
  .cf-stats{ grid-template-columns:1fr 1fr; gap:1rem; padding:1.1rem; }
  .cf-stat-label{ font-size:.6rem; }

  /* ── J. Forms : focus ring plus visible ── */
  .roi-gate-input:focus,
  .exit-input:focus,
  .contact-input:focus-within{
    box-shadow:0 0 0 3px rgba(255,92,26,.18);
  }

  /* ── K. Topbar : padding optimisé + safe-area top ── */
  nav.topbar{
    padding-top:max(.85rem, env(safe-area-inset-top));
    padding-bottom:.85rem;
  }
  nav.topbar.scrolled{ padding-top:max(.6rem, env(safe-area-inset-top)); padding-bottom:.6rem; }
  /* CTA topbar masqué sur mobile : la sticky CTA en bas + le CTA hero suffisent (moins de bruit) */
  .nav-cta{ display:none !important; }
  .nav-right{ gap:0; }
  /* Logo plus discret en mobile pour libérer la topbar */
  .moov-logo-img{ height:38px; }

  /* ── L. Founder photo : centrée et carrée nette ── */
  .fnd-avatar-photo{
    width:200px;
    height:240px;
    aspect-ratio:auto;
    margin:0 auto;
    position:relative;
  }
  .fnd-photo{ width:100%; align-items:center; }

  /* ── M. Compare table : labels mieux espacés ── */
  .cmp-cell{ padding:1rem 1.1rem; font-size:.88rem; }
  .cmp-row:not(.cmp-row-head):not(.cmp-row-foot) .cmp-cell:first-child{
    padding-bottom:.25rem;
    border-bottom:1px dashed rgba(255,255,255,.05);
  }
  .cmp-row-head .cmp-cell{ padding:.85rem 1.1rem; }

  /* ── N. Reference visual : taille raisonnable ── */
  .reference-visual img{ max-width:340px; }

  /* ── O. Footer : padding + spacing colonnes ── */
  footer{ padding:2.75rem 0 1.5rem; margin-top:2.5rem; }
  .footer-grid{ gap:2rem; margin-bottom:2rem; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; gap:.75rem; text-align:left; }

  /* ── P. CTA strip : padding réduit ── */
  .moov-cta-strip-box{ padding:2.25rem 1.5rem; }
  .moov-cta-strip-row{ flex-direction:column; gap:.6rem; width:100%; }
  .moov-cta-strip-row .btn-pill{ width:100%; justify-content:space-between; }

  /* ── Q. Live ticker : reste discret, safe-area ── */
}

/* Logo encore plus compact sur petits téléphones */
@media (max-width:480px){
  .moov-logo-img{ height:32px; }
}

/* ── R. Très petits écrans (≤380px / iPhone SE) ── */
@media (max-width:380px){
  .container{ padding-left:1rem; padding-right:1rem; }
  .hero-text h1{ font-size:clamp(1.65rem,7.5vw,2rem); }
  .mc-trigger-label{ display:none; }
  .mc-trigger{ padding:.5rem .65rem; gap:0; }
  .ovw-card-num{ font-size:clamp(2.2rem,11vw,3rem); }
  .seo-strip{ padding:1.1rem 1rem; }
  .seo-strip-tile{ padding:.4rem .2rem; }
  .cf-badge{ padding:.5rem .8rem; }
  .cf-badge strong{ font-size:1.05rem; }
  .moov-logo-img{ height:28px; }
}


/* ═══════════════════════════════════════════════════════════
   v2026 — ENRICHISSEMENT VISUEL (P1+P2)
   Backgrounds éditoriaux Higgsfield sur sections plates
   ═══════════════════════════════════════════════════════════ */
:root{--v2-img:url('../images/v2026/');}

/* P1 · risk-bar : backdrop warm particles derrière les logos */
#risk-bar{position:relative;overflow:hidden;isolation:isolate}
#risk-bar::before{content:'';position:absolute;inset:0;background-image:url('../images/v2026/enr-logos-bg.webp');background-size:cover;background-position:center;opacity:.22;z-index:-1;mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 70%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 70%,transparent 100%)}

/* P1 · #faq : sculptural ? glyph sticky côté gauche sur desktop */
#faq{position:relative}
@media(min-width:1280px){
  #faq::before{content:'';position:absolute;top:8rem;left:-3%;width:280px;height:280px;background:url('../images/v2026/enr-faq-side.webp') center/contain no-repeat;opacity:.55;pointer-events:none;filter:contrast(1.05) saturate(1.1);mask-image:radial-gradient(ellipse 70% 70% at center,#000,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 70% 70% at center,#000,transparent 80%)}
}

/* P1 · #manifest : 4 objets sculpturaux en background derrière la grid */
#manifest{position:relative;isolation:isolate}
/* (enr-manifest.webp background retiré sur demande utilisateur) */

/* P2 · contact page hero : visuel side */
body.page-contact #ct-hero,
body.page-template-contact #ct-hero,
.ct-hero{position:relative}
.ct-hero-image{display:none}
@media(min-width:1024px){
  .ct-hero-image{display:block;position:absolute;right:3%;top:50%;transform:translateY(-50%);width:42%;max-width:540px;aspect-ratio:4/3;border-radius:1.25rem;overflow:hidden;border:1px solid rgba(255,138,77,.18);box-shadow:0 40px 90px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,138,77,.05);pointer-events:none}
  .ct-hero-image img{width:100%;height:100%;object-fit:cover;filter:contrast(1.05) saturate(1.08)}
}

/* P2 · qui-sommes-nous #about-intro : decoration blueprint floating */
#about-intro{position:relative}
@media(min-width:1024px){
  #about-intro::after{content:'';position:absolute;right:-4%;top:50%;transform:translateY(-50%);width:340px;height:340px;background:url('../images/v2026/enr-about-intro.webp') center/contain no-repeat;opacity:.5;pointer-events:none;filter:contrast(1.05);mask-image:radial-gradient(ellipse 75% 75% at center,#000,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 75% 75% at center,#000,transparent 80%);z-index:0}
  #about-intro .container{position:relative;z-index:1}
}

/* P2 · realisations archive · hero ambient backdrop */
.rp-hero{position:relative;overflow:hidden;isolation:isolate}
.rp-hero::after{content:'';position:absolute;inset:0;background-image:url('../images/v2026/enr-realisations.webp');background-size:cover;background-position:center;opacity:.30;z-index:-1;mask-image:linear-gradient(180deg,#000 0%,#000 60%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 60%,transparent 100%)}

/* ═══════════════════════════════════════════════════════════
   ROBOTICS-AI animation
   Tout <img class="moov-robotic-anim" src=".../robotics-ai.png">
   reçoit une animation float lente + glow warm + scale breathe.
   ═══════════════════════════════════════════════════════════ */
.moov-robotic-anim,
img[src*="robotics-ai"]{
  display:block;
  animation:moovRobotFloat 8s cubic-bezier(.45,.05,.55,.95) infinite alternate;
  filter:drop-shadow(0 18px 50px rgba(255,92,26,.35)) contrast(1.05) saturate(1.08);
  transform-origin:center;
  will-change:transform,filter;
}
@keyframes moovRobotFloat{
  0%   { transform:translateY(0) rotate(-1deg) scale(1);     filter:drop-shadow(0 18px 50px rgba(255,92,26,.32)) contrast(1.05) saturate(1.08); }
  50%  { transform:translateY(-12px) rotate(0.8deg) scale(1.025); filter:drop-shadow(0 26px 65px rgba(255,138,77,.45)) contrast(1.07) saturate(1.12); }
  100% { transform:translateY(-6px) rotate(-0.4deg) scale(1.01);  filter:drop-shadow(0 22px 55px rgba(255,92,26,.38)) contrast(1.05) saturate(1.08); }
}
@media (prefers-reduced-motion: reduce){
  .moov-robotic-anim,img[src*="robotics-ai"]{animation:none;filter:contrast(1.05) saturate(1.08)}
}

/* ═══════════════════════════════════════════════════════
   GLOBAL MOBILE POLISH — v1.47
   ═══════════════════════════════════════════════════════ */

/* Anti horizontal-scroll lock (commonly broken on mobile when one section overflows) */
html,body{overflow-x:hidden;-webkit-tap-highlight-color:transparent}
img,video,svg{max-width:100%;height:auto}
section{overflow-x:clip}

/* Touch-target floor : 44px Apple guidance — exclut range/checkbox/radio/file/color */
@media(max-width:1023px){
  .btn-pill,.btn,.nav-cta,.footer-soc,.mc-item-row,.mc-sub-pill,.partner-card,
  button,input[type=submit],a.btn-pill{min-height:44px}
  .footer-soc{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}
  input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=search],input[type=password],textarea,select{font-size:16px} /* anti-zoom iOS uniquement sur inputs textuels */
}

/* Hero text sizing on small screens : taille plus tenable, lisibilité priorité 1 */
@media(max-width:640px){
  #hero{padding:7rem 0 3rem;min-height:auto}
  #hero h1{font-size:clamp(2.1rem,8vw,2.8rem)!important;line-height:1.1!important}
  #hero .hero-sub,#hero .lead{font-size:1.02rem;line-height:1.55}
  .section-eyebrow{font-size:.68rem;letter-spacing:.11em}
}

/* Reduce massive H2 on very small screens — keep them confident but tenable */
@media(max-width:480px){
  h2{font-size:clamp(1.45rem,6.5vw,1.95rem)!important;line-height:1.12!important}
  h3{font-size:clamp(1.1rem,5vw,1.4rem)!important}
}

/* Touch-friendly menu/nav offsets to keep CTA out of safe-area-bottom */
@supports(padding:env(safe-area-inset-bottom)){
  .sticky-cta{bottom:calc(1rem + env(safe-area-inset-bottom))}
  nav.topbar{padding-top:env(safe-area-inset-top)}
}

/* Form inputs : taille de touch zone — EXCLUT range/checkbox/radio/file/color/hidden */
input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=search],input[type=password],input[type=date],input[type=time],input[type=submit],input[type=button],input:not([type]),textarea,select{min-height:44px}
textarea{min-height:96px}
/* Range sliders : reset uniquement le min-height. Surtout PAS height:auto qui réveille la hauteur naturelle du thumb (~24px) */
input[type=range]{min-height:0}

/* Ensure no x-overflow from absolutely positioned decorations */
.contact-deco,.hero-bg-image,.hero-bg-image *{max-width:100vw}

/* Footer contact items now hold <a> — keep colors + clickability */
.footer-contact-item a{color:inherit;text-decoration:none;transition:color .2s}
.footer-contact-item a:hover{color:var(--orange,#FF5C1A)}

/* Mobile menu touch targets dans le mc-sub-pill row qui peut wrapper trop serré */
@media(max-width:540px){
  .mc-sub-pill{padding:.55rem .8rem;font-size:.82rem}
}

/* Section padding plus tenable on mobile  */
@media(max-width:640px){
  .section,section{padding-top:3rem;padding-bottom:3rem}
}

/* Image lazy-loading shimmer when no src yet */
img[loading="lazy"]:not([src]),img[loading="lazy"][src=""]{background:linear-gradient(90deg,rgba(20,14,12,.4),rgba(30,20,16,.5),rgba(20,14,12,.4));background-size:200% 100%;animation:imgShimmer 1.6s ease-in-out infinite}
@keyframes imgShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
