/* ============================================================
   IDEV-LOG — Landing Premium Refresh v2.0
   Patch visuel UNIQUEMENT — n'altère pas le SaaS, Supabase, RPC,
   ni les pages internes (/dashboard, /products, /sales, etc.)
   v=20260505-scroll-ai-business-premium-final
   ============================================================ */

/* ── Google Fonts — Inter (UI/UX Pro Max: modern SaaS typography) ── */
@import url('https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,400;14..32,500;14..32,600;14..32,700;14..32,800;14..32,900&display=swap');

:root{
  --il-cyan:#06B6D4;--il-cyan-d:#0891B2;--il-cyan-l:#67E8F9;
  --il-navy:#0B1A2E;--il-navy-2:#13243F;--il-navy-3:#1B3258;
  --il-ink:#0F172A;--il-muted:#64748B;--il-border:#E2E8F0;
  --il-bg:#F6F9FC;--il-card:#FFFFFF;
  --il-amber:#F59E0B;--il-green:#10B981;--il-violet:#8B5CF6;--il-rose:#F43F5E;
  --il-shadow-sm:0 1px 2px rgba(15,23,42,.04);
  --il-shadow-md:0 8px 28px rgba(15,23,42,.07);
  --il-shadow-lg:0 22px 60px rgba(15,23,42,.12);
  --il-ease:cubic-bezier(.16,1,.3,1);
  --il-font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
html{scroll-behavior:smooth}

/* ── Global typography baseline (UI/UX Pro Max) ── */
.il-pf-section,.il-ai-section,.il-demo-section,.il-story-section,.il-coverage-section,
footer.idev-footer-clean{
  font-family:var(--il-font);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

/* Focus visible — accessibility (UI/UX Pro Max checklist) */
.il-ai-cta:focus-visible,.il-demo-cta:focus-visible,.il-story-cta:focus-visible,
.il-pfv3-card:focus-visible,.il-coverage-card:focus-visible{
  outline:2px solid var(--il-cyan);
  outline-offset:3px;
  box-shadow:0 0 0 4px rgba(6,182,212,.18);
}

/* ── 1 · HERO animations premium ────────────────────────────── */
@keyframes il-fadeup{from{opacity:0;transform:translateY(28px) scale(.98);filter:blur(6px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes il-pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}
@keyframes il-blink{0%,100%{opacity:1}50%{opacity:0}}
@keyframes il-bar{from{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(1);transform-origin:bottom}}
@keyframes il-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
@keyframes il-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

section#home .il-hero-anim-1{animation:il-fadeup .9s .15s cubic-bezier(.16,1,.3,1) both;text-shadow:0 0 40px rgba(6,182,212,.18)}
section#home .il-hero-anim-2{animation:il-fadeup .9s .35s cubic-bezier(.16,1,.3,1) both}
section#home .il-hero-anim-3{animation:il-fadeup .9s .55s cubic-bezier(.16,1,.3,1) both}

section#home .idev-contact-animated{
  position:relative;overflow:hidden;transform-origin:center;
  transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,filter .25s !important;
  box-shadow:0 12px 32px rgba(6,182,212,.28) !important;will-change:transform;
}
section#home .idev-contact-animated::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.32) 50%,transparent 100%);
  transform:translateX(-100%);transition:transform .65s ease;pointer-events:none;
}
section#home .idev-contact-animated:hover{
  transform:translateY(-3px) scale(1.06) !important;
  box-shadow:0 20px 48px rgba(6,182,212,.45) !important;
  filter:saturate(1.12) brightness(1.05);
}
section#home .idev-contact-animated:hover::before{transform:translateX(100%)}
section#home .idev-contact-animated:active{transform:translateY(-1px) scale(1.02) !important}

section#home .idev-hide-hero-login,section#home .idev-hide-hero-chips{display:none !important}

section#home .il-discover-btn{cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
section#home .il-discover-btn:hover{transform:translateY(-2px);border-color:rgba(6,182,212,.5) !important;box-shadow:0 8px 24px rgba(6,182,212,.18)}

/* ── 2 · FEATURES PREMIUM ───────────────────────────────────── */
.il-pf-section{
  padding:100px 5vw !important;
  background:linear-gradient(180deg,#FFFFFF 0%,#F0F5FA 100%) !important;
  border-top:1px solid var(--il-border) !important;
  border-bottom:1px solid var(--il-border) !important;
  position:relative;overflow:hidden;
}
/* Ambient blobs (UI/UX skill recommendation: layered radial gradients) */
.il-pf-section::before{
  content:"";position:absolute;top:-220px;left:50%;transform:translateX(-50%);
  width:900px;height:440px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(6,182,212,.12) 0%,transparent 70%);pointer-events:none;
}
.il-pf-section::after{
  content:"";position:absolute;bottom:-180px;right:-180px;
  width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(139,92,246,.08) 0%,transparent 65%);pointer-events:none;
}
.il-pf-inner{max-width:1280px;margin:0 auto;position:relative;z-index:1}
.il-pf-header{text-align:center;margin-bottom:60px}
.il-pf-eyebrow{
  display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:99px;
  background:rgba(6,182,212,.08);border:1px solid rgba(6,182,212,.22);
  font-size:12px;font-weight:600;color:var(--il-cyan);
  letter-spacing:.06em;text-transform:uppercase;margin-bottom:18px;
}
.il-pf-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--il-cyan);animation:il-pulse-dot 2s ease infinite}
.il-pf-h2{font-size:clamp(2rem,3.8vw,2.95rem);font-weight:800;letter-spacing:-.025em;color:var(--il-ink);margin:0 0 14px;line-height:1.12}
.il-pf-h2 b{background:linear-gradient(120deg,var(--il-cyan),var(--il-cyan-d));-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800}
.il-pf-sub{font-size:clamp(1rem,1.4vw,1.12rem);color:var(--il-muted);max-width:640px;margin:0 auto;line-height:1.65;font-weight:400}

.il-pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.il-pf-card{
  background:var(--il-card);border:1px solid var(--il-border);border-radius:22px;
  padding:0;position:relative;overflow:hidden;
  box-shadow:0 2px 8px rgba(15,23,42,.04),0 0 0 0.5px rgba(6,182,212,.06);
  transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .3s;
  opacity:0;transform:translateY(28px);display:flex;flex-direction:column;
}
.il-pf-card.in{opacity:1;transform:translateY(0)}
.il-pf-card:hover{
  transform:translateY(-8px);
  box-shadow:0 24px 64px rgba(15,23,42,.12),0 0 0 1px rgba(6,182,212,.18);
  border-color:rgba(6,182,212,.35);
}
.il-pf-mockup{
  background:linear-gradient(135deg,#0B1A2E 0%,#162640 50%,#1B3258 100%);
  padding:16px;height:190px;
  display:flex;align-items:stretch;justify-content:stretch;overflow:hidden;
  position:relative;border-bottom:1px solid rgba(6,182,212,.15);
  transition:transform .45s cubic-bezier(.16,1,.3,1);
}
.il-pf-card:hover .il-pf-mockup{transform:scale(1.03)}
.il-pf-mockup::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 30%,rgba(6,182,212,.12) 50%,transparent 70%);
  transform:translateX(-100%);pointer-events:none;
}
.il-pf-card:hover .il-pf-mockup::after{animation:il-shimmer 1.2s ease}
.il-pf-mockup svg{width:100%;height:100%;display:block;filter:drop-shadow(0 4px 16px rgba(0,0,0,.25))}

.il-pf-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.il-pf-icon-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.il-pf-icon{
  width:40px;height:40px;border-radius:12px;
  background:linear-gradient(135deg,#ECFEFF,#CFFAFE);color:var(--il-cyan);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:inset 0 0 0 1px rgba(6,182,212,.22),0 4px 12px rgba(6,182,212,.1);
  transition:all .3s ease;
}
.il-pf-card:hover .il-pf-icon{
  background:linear-gradient(135deg,var(--il-cyan),var(--il-cyan-d));color:#fff;
  box-shadow:0 8px 22px rgba(6,182,212,.35);
  transform:scale(1.08);
}
.il-pf-title{font-size:1.05rem;font-weight:700;color:var(--il-ink);letter-spacing:-.01em;line-height:1.3;margin:0}
.il-pf-desc{font-size:.9rem;color:var(--il-muted);line-height:1.65;font-weight:400;margin:0 0 16px;flex:1}
.il-pf-card:hover .il-pf-desc{color:#475569}
.il-pf-tag{
  display:inline-flex;align-items:center;gap:5px;padding:5px 12px;align-self:flex-start;
  background:#F1F5F9;border-radius:99px;font-size:11px;font-weight:600;color:#475569;letter-spacing:.02em;
  transition:background .3s,color .3s;
}
.il-pf-card:hover .il-pf-tag{background:rgba(6,182,212,.1);color:var(--il-cyan)}
.il-pf-tag.cyan{background:#ECFEFF;color:var(--il-cyan)}
.il-pf-tag.green{background:#ECFDF5;color:#059669}
.il-pf-tag.amber{background:#FFFBEB;color:#D97706}
.il-pf-tag.violet{background:#F5F3FF;color:#7C3AED}
.il-pf-tag.rose{background:#FFF1F2;color:#E11D48}

/* ── 3 · AI ANALYSIS SECTION (NEW) ──────────────────────────── */
.il-ai-section{
  padding:96px 5vw;
  background:linear-gradient(180deg,var(--il-bg) 0%,#FFFFFF 100%);
  border-bottom:1px solid var(--il-border);
  position:relative;overflow:hidden;
}
.il-ai-section::before{
  content:"";position:absolute;top:-150px;right:-200px;
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(139,92,246,.08) 0%,transparent 60%);pointer-events:none;
}
.il-ai-section::after{
  content:"";position:absolute;bottom:-200px;left:-200px;
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(6,182,212,.08) 0%,transparent 60%);pointer-events:none;
}
.il-ai-inner{
  max-width:1280px;margin:0 auto;position:relative;z-index:1;
  display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;
}
html[dir="rtl"] .il-ai-inner{grid-template-columns:1fr 1.1fr}
html[dir="rtl"] .il-ai-text{order:2}
html[dir="rtl"] .il-ai-visual{order:1}
.il-ai-text .il-ai-eyebrow{
  display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:99px;
  background:linear-gradient(120deg,rgba(6,182,212,.1),rgba(139,92,246,.1));
  border:1px solid rgba(6,182,212,.25);
  font-size:12px;font-weight:700;color:var(--il-cyan);
  letter-spacing:.06em;text-transform:uppercase;margin-bottom:20px;
}
.il-ai-text .il-ai-eyebrow svg{width:14px;height:14px}
.il-ai-h2{font-size:clamp(1.9rem,3.4vw,2.7rem);font-weight:800;letter-spacing:-.025em;color:var(--il-ink);margin:0 0 16px;line-height:1.12}
.il-ai-h2 b{background:linear-gradient(120deg,var(--il-cyan),#8B5CF6);-webkit-background-clip:text;background-clip:text;color:transparent}
.il-ai-sub{font-size:1.02rem;color:var(--il-muted);line-height:1.7;margin:0 0 28px;max-width:520px}
.il-ai-bens{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:12px}
.il-ai-bens li{
  display:flex;align-items:flex-start;gap:12px;
  font-size:.96rem;color:#334155;line-height:1.55;
  opacity:0;transform:translateX(-12px);transition:opacity .6s,transform .6s;
}
html[dir="rtl"] .il-ai-bens li{transform:translateX(12px)}
.il-ai-bens.in li{opacity:1;transform:translateX(0)}
.il-ai-bens.in li:nth-child(1){transition-delay:.05s}
.il-ai-bens.in li:nth-child(2){transition-delay:.12s}
.il-ai-bens.in li:nth-child(3){transition-delay:.19s}
.il-ai-bens.in li:nth-child(4){transition-delay:.26s}
.il-ai-bens.in li:nth-child(5){transition-delay:.33s}
.il-ai-bens.in li:nth-child(6){transition-delay:.40s}
.il-ai-bens .il-ai-check{
  width:24px;height:24px;border-radius:7px;flex-shrink:0;
  background:linear-gradient(135deg,#06B6D4,#8B5CF6);
  display:flex;align-items:center;justify-content:center;color:#fff;
  box-shadow:0 4px 12px rgba(6,182,212,.28);
}
.il-ai-bens .il-ai-check svg{width:13px;height:13px}
.il-ai-cta{
  display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:12px;
  background:linear-gradient(120deg,var(--il-cyan),var(--il-cyan-d));
  color:#fff;text-decoration:none;font-weight:700;font-size:.96rem;
  box-shadow:0 12px 28px rgba(6,182,212,.32);
  transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,filter .25s;
  border:none;cursor:pointer;letter-spacing:-.01em;
}
.il-ai-cta:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 18px 38px rgba(6,182,212,.42);filter:brightness(1.05)}
.il-ai-cta:active{transform:translateY(0) scale(.98)}
.il-ai-micro{display:block;font-size:.82rem;color:var(--il-muted);margin-top:14px;font-style:italic}

/* AI Visual */
.il-ai-visual{
  position:relative;border-radius:22px;overflow:hidden;
  background:linear-gradient(180deg,#0B1A2E 0%,#1B3258 100%);
  box-shadow:0 32px 80px rgba(15,23,42,.22),0 0 0 1px rgba(255,255,255,.04);
  padding:0;min-height:420px;
}
.il-ai-visual::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 70% 20%,rgba(6,182,212,.18) 0%,transparent 50%),
             radial-gradient(circle at 20% 80%,rgba(139,92,246,.18) 0%,transparent 50%);
  pointer-events:none;
}
.il-ai-frame{
  position:relative;z-index:1;padding:18px 18px 20px;
}
.il-ai-frame-bar{
  display:flex;align-items:center;gap:6px;margin-bottom:14px;
}
.il-ai-frame-bar i{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.12)}
.il-ai-frame-bar i:nth-child(1){background:#FF5F57}
.il-ai-frame-bar i:nth-child(2){background:#FEBC2E}
.il-ai-frame-bar i:nth-child(3){background:#28C840}
.il-ai-frame-bar span{
  margin-left:auto;font-size:11px;color:rgba(255,255,255,.55);
  font-family:ui-monospace,Menlo,monospace;letter-spacing:.04em;
}
html[dir="rtl"] .il-ai-frame-bar span{margin-left:0;margin-right:auto}
.il-ai-title{
  display:flex;align-items:center;gap:10px;margin-bottom:14px;
  color:#fff;font-weight:700;font-size:14px;
}
.il-ai-title .il-ai-logo{
  width:30px;height:30px;border-radius:8px;
  background:linear-gradient(135deg,#06B6D4,#8B5CF6);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(6,182,212,.4);
}
.il-ai-title .il-ai-logo svg{width:16px;height:16px;color:#fff}
.il-ai-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px}
.il-ai-mini{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:11px;padding:11px 12px;
  transition:transform .3s ease,background .3s ease;
}
.il-ai-mini:hover{background:rgba(255,255,255,.07);transform:translateY(-2px)}
.il-ai-mini-h{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.il-ai-mini-ic{
  width:22px;height:22px;border-radius:6px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.il-ai-mini-ic.cy{background:rgba(6,182,212,.18);color:#67E8F9}
.il-ai-mini-ic.gn{background:rgba(16,185,129,.18);color:#6EE7B7}
.il-ai-mini-ic.am{background:rgba(245,158,11,.18);color:#FCD34D}
.il-ai-mini-ic.vi{background:rgba(139,92,246,.18);color:#C4B5FD}
.il-ai-mini-ic svg{width:12px;height:12px}
.il-ai-mini-t{font-size:11px;color:rgba(255,255,255,.7);font-weight:600;letter-spacing:.02em}
.il-ai-mini-v{font-size:14px;color:#fff;font-weight:700;letter-spacing:-.01em}
.il-ai-mini-d{font-size:10px;color:rgba(255,255,255,.5);margin-top:2px}

.il-ai-prompt{
  background:rgba(255,255,255,.05);border:1px solid rgba(6,182,212,.25);
  border-radius:11px;padding:10px 12px;margin-bottom:10px;
  display:flex;align-items:center;gap:10px;
}
.il-ai-prompt-ic{
  width:22px;height:22px;border-radius:6px;
  background:linear-gradient(135deg,#06B6D4,#0891B2);color:#fff;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  font-size:10px;font-weight:800;
}
.il-ai-prompt-txt{font-size:12px;color:rgba(255,255,255,.85);line-height:1.4;flex:1}
.il-ai-prompt-cur{width:7px;height:13px;background:#67E8F9;border-radius:1px;animation:il-blink 1s infinite}

.il-ai-reply{
  background:linear-gradient(135deg,rgba(6,182,212,.12),rgba(139,92,246,.10));
  border:1px solid rgba(6,182,212,.25);border-radius:11px;padding:11px 13px;
}
.il-ai-reply-h{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.il-ai-reply-h .il-ai-reply-dot{
  width:6px;height:6px;border-radius:50%;background:#10B981;
  box-shadow:0 0 10px #10B981;animation:il-pulse-dot 1.6s infinite;
}
.il-ai-reply-h span{font-size:11px;color:rgba(255,255,255,.7);font-weight:600}
.il-ai-reply-line{
  height:7px;border-radius:3px;background:linear-gradient(90deg,rgba(6,182,212,.45),rgba(139,92,246,.35));
  margin-bottom:5px;
}
.il-ai-reply-line.l1{width:92%}
.il-ai-reply-line.l2{width:78%}
.il-ai-reply-line.l3{width:64%}

.il-ai-badges{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.il-ai-badge{
  font-size:10px;font-weight:700;padding:3px 9px;border-radius:99px;
  background:rgba(255,255,255,.06);color:rgba(255,255,255,.85);
  border:1px solid rgba(255,255,255,.1);letter-spacing:.04em;
}
.il-ai-badge.cy{background:rgba(6,182,212,.18);color:#67E8F9;border-color:rgba(6,182,212,.4)}
.il-ai-badge.gn{background:rgba(16,185,129,.18);color:#6EE7B7;border-color:rgba(16,185,129,.4)}
.il-ai-badge.am{background:rgba(245,158,11,.18);color:#FCD34D;border-color:rgba(245,158,11,.4)}
.il-ai-badge.vi{background:rgba(139,92,246,.18);color:#C4B5FD;border-color:rgba(139,92,246,.4)}

/* ── 4 · OFFRES — premium card upgrade ──────────────────────── */
section#offers{position:relative}
section#offers .grid > div,section#offers [class*="rounded"][class*="border"]{
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .25s !important;
}
section#offers .grid > div:hover,section#offers [class*="rounded"][class*="border"]:hover{
  transform:translateY(-6px);
  box-shadow:0 22px 60px rgba(15,23,42,.14),0 0 0 1px rgba(6,182,212,.22) !important;
}
section#offers button,section#offers a[href*="wa.me"]{transition:transform .22s,box-shadow .22s,filter .22s !important}
section#offers button:hover,section#offers a[href*="wa.me"]:hover{
  transform:translateY(-2px) scale(1.02);filter:brightness(1.08) saturate(1.1);
}
section#offers button:active{transform:translateY(0) scale(.98)}

/* ── 5 · FAQ — accordion natif ──────────────────────────────── */
.il-faq-wrap{max-width:820px;margin:36px auto 0;padding:0 5vw}
.il-faq-item{
  background:var(--il-card);border:1px solid var(--il-border);border-radius:14px;
  margin-bottom:12px;overflow:hidden;transition:border-color .25s,box-shadow .25s,transform .25s;
}
.il-faq-item:hover{transform:translateY(-1px)}
.il-faq-item[open]{border-color:rgba(6,182,212,.35);box-shadow:0 10px 30px rgba(6,182,212,.08)}
.il-faq-summary{
  list-style:none;padding:18px 22px;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  font-size:15px;font-weight:600;color:var(--il-ink);
  transition:background .2s;user-select:none;
}
.il-faq-summary::-webkit-details-marker{display:none}
.il-faq-summary:hover{background:#F8FAFC}
.il-faq-summary::after{
  content:"";width:20px;height:20px;flex-shrink:0;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306B6D4' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") center/contain no-repeat;
  transition:transform .3s cubic-bezier(.16,1,.3,1);
}
.il-faq-item[open] .il-faq-summary::after{transform:rotate(180deg)}
.il-faq-body{padding:0 22px 18px;color:var(--il-muted);font-size:14px;line-height:1.7}

/* ── 6 · CONTACT (premium) ──────────────────────────────────── */
.il-contact-card{
  max-width:880px;margin:32px auto 0;
  background:var(--il-card);border:1px solid var(--il-border);border-radius:22px;
  padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:24px;
  box-shadow:var(--il-shadow-md);
  position:relative;overflow:hidden;
}
.il-contact-card::before{
  content:"";position:absolute;top:-100px;right:-100px;
  width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(6,182,212,.10) 0%,transparent 70%);pointer-events:none;
}
.il-contact-tile{
  position:relative;z-index:1;
  display:flex;flex-direction:column;justify-content:space-between;gap:14px;
  padding:22px;border-radius:16px;border:1px solid var(--il-border);
  background:linear-gradient(180deg,#FFFFFF 0%,#F8FAFC 100%);
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .25s;
  text-decoration:none;color:inherit;
}
.il-contact-tile:hover{transform:translateY(-3px);box-shadow:var(--il-shadow-md);border-color:rgba(6,182,212,.3)}
.il-contact-tile-h{display:flex;align-items:center;gap:12px}
.il-contact-tile-ic{
  width:46px;height:46px;border-radius:12px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.il-contact-tile-ic.wa{background:linear-gradient(135deg,#25D366,#128C7E);color:#fff;box-shadow:0 8px 22px rgba(37,211,102,.35)}
.il-contact-tile-ic.em{background:linear-gradient(135deg,#06B6D4,#0891B2);color:#fff;box-shadow:0 8px 22px rgba(6,182,212,.30)}
.il-contact-tile-ic svg{width:22px;height:22px}
.il-contact-tile-t{font-size:11px;font-weight:700;color:var(--il-muted);letter-spacing:.06em;text-transform:uppercase;margin:0}
.il-contact-tile-v{font-size:1rem;font-weight:700;color:var(--il-ink);margin:2px 0 0;letter-spacing:-.01em;word-break:break-word}
.il-contact-tile-d{font-size:13px;color:var(--il-muted);line-height:1.5;margin:0}
.il-contact-tile-cta{
  display:inline-flex;align-items:center;gap:6px;align-self:flex-start;
  font-size:13px;font-weight:700;color:var(--il-cyan);
}
.il-contact-tile-cta svg{width:14px;height:14px;transition:transform .2s}
.il-contact-tile:hover .il-contact-tile-cta svg{transform:translateX(3px)}
html[dir="rtl"] .il-contact-tile:hover .il-contact-tile-cta svg{transform:translateX(-3px) scaleX(-1)}
html[dir="rtl"] .il-contact-tile-cta svg{transform:scaleX(-1)}

/* ── 7 · FOOTER — premium ───────────────────────────────────── */
footer.idev-footer-clean{padding:60px 5vw 28px !important}
footer.idev-footer-clean .il-foot-grid{
  max-width:1280px;margin:0 auto 36px;
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;
}
footer.idev-footer-clean .il-foot-brand-block{max-width:340px}
footer.idev-footer-clean .il-foot-brand-row{display:flex;align-items:center;gap:12px}
footer.idev-footer-clean .il-foot-brand-row img{
  width:46px;height:46px;border-radius:12px;object-fit:cover;
  box-shadow:0 0 28px rgba(6,182,212,.32),0 0 0 1px rgba(255,255,255,.08);
  background:#fff;
}
footer.idev-footer-clean .il-foot-brand-name{font-weight:800;font-size:18px;color:#fff;letter-spacing:-.02em}
footer.idev-footer-clean .il-foot-brand-sub{font-size:11px;color:#67E8F9;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
footer.idev-footer-clean .il-foot-tagline{color:#94A3B8;font-size:13px;line-height:1.7;margin:14px 0 18px}
footer.idev-footer-clean .il-foot-col h4{font-size:12px;font-weight:700;color:#fff;letter-spacing:.08em;text-transform:uppercase;margin:0 0 18px}
footer.idev-footer-clean .il-foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
footer.idev-footer-clean .il-foot-col a{
  color:#94A3B8;text-decoration:none;font-size:13px;
  transition:color .15s,transform .15s;display:inline-flex;align-items:center;gap:6px;
}
footer.idev-footer-clean .il-foot-col a:hover{color:var(--il-cyan);transform:translateX(2px)}
footer.idev-footer-clean .il-foot-social{display:flex;gap:10px;flex-wrap:wrap}
footer.idev-footer-clean .il-foot-social a{
  width:38px;height:38px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);
  color:#94A3B8;text-decoration:none;
  transition:all .25s cubic-bezier(.16,1,.3,1) !important;
}
footer.idev-footer-clean .il-foot-social a:hover{
  transform:translateY(-3px) scale(1.08);
  background:rgba(6,182,212,.12);border-color:rgba(6,182,212,.45);color:var(--il-cyan);
  box-shadow:0 10px 28px rgba(6,182,212,.28),0 0 0 4px rgba(6,182,212,.08);
}
footer.idev-footer-clean .il-foot-bottom{
  max-width:1280px;margin:0 auto;padding-top:22px;
  border-top:1px solid rgba(255,255,255,.06);
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;
  font-size:12px;color:#475569;
}
footer.idev-footer-clean .il-foot-bottom a{color:#64748B;text-decoration:none;transition:color .15s}
footer.idev-footer-clean .il-foot-bottom a:hover{color:var(--il-cyan)}

/* ── 8 · SCROLL ANIMATIONS ──────────────────────────────────── */
.il-scroll-anim{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.il-scroll-anim.in{opacity:1;transform:translateY(0)}

/* ── 9 · 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}
}

/* ── 10 · RESPONSIVE ────────────────────────────────────────── */
@media (max-width:1100px){
  .il-pf-grid{grid-template-columns:repeat(2,1fr)}
  .il-ai-inner{grid-template-columns:1fr;gap:40px}
  html[dir="rtl"] .il-ai-inner{grid-template-columns:1fr}
  html[dir="rtl"] .il-ai-text{order:1}
  html[dir="rtl"] .il-ai-visual{order:2}
  footer.idev-footer-clean .il-foot-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media (max-width:768px){
  .il-pf-section,.il-ai-section{padding:64px 5vw !important}
  .il-pf-grid{grid-template-columns:1fr;gap:18px}
  .il-pf-mockup{height:160px}
  .il-pf-body{padding:18px 20px 20px}
  .il-ai-cards{grid-template-columns:1fr 1fr}
  .il-ai-visual{min-height:380px}
  .il-contact-card{grid-template-columns:1fr;padding:22px;gap:14px}
  footer.idev-footer-clean .il-foot-grid{grid-template-columns:1fr;gap:28px}
  footer.idev-footer-clean .il-foot-bottom{flex-direction:column;text-align:center}
  section#home .idev-contact-animated{width:100%;justify-content:center}
}

/* ── 11 · RTL (arabe) ───────────────────────────────────────── */
html[dir="rtl"] footer.idev-footer-clean .il-foot-col a:hover{transform:translateX(-2px)}
html[dir="rtl"] .il-faq-summary::after{transform:scaleX(-1)}
html[dir="rtl"] .il-faq-item[open] .il-faq-summary::after{transform:scaleX(-1) rotate(180deg)}
html[dir="rtl"] .il-ai-bens .il-ai-check{order:0}

/* ── 12 · DEMO VIDEO SECTION ───────────────────────────────── */
@keyframes il-float-b1{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes il-float-b2{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes il-float-b3{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes il-float-b4{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes il-video-glow{0%,100%{opacity:.08}50%{opacity:.16}}

.il-demo-section{
  padding:88px 5vw 96px;position:relative;overflow:hidden;
  background:linear-gradient(180deg,#FFFFFF 0%,#F8FBFE 50%,#FFFFFF 100%);
  border-bottom:1px solid var(--il-border);
}
.il-demo-section::before{
  content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:700px;height:500px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(6,182,212,.10) 0%,transparent 65%);
  animation:il-video-glow 6s ease infinite;
}
.il-demo-inner{max-width:1280px;margin:0 auto;position:relative;z-index:1}
.il-demo-header{text-align:center;margin-bottom:48px}
.il-demo-eyebrow{
  display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:99px;
  background:rgba(6,182,212,.08);border:1px solid rgba(6,182,212,.22);
  font-size:12px;font-weight:600;color:var(--il-cyan);
  letter-spacing:.06em;text-transform:uppercase;margin-bottom:18px;
}
.il-demo-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--il-cyan);animation:il-pulse-dot 2s ease infinite}
.il-demo-h2{
  font-size:clamp(2rem,3.8vw,3.2rem);font-weight:900;letter-spacing:-.03em;
  color:var(--il-ink);margin:0 0 14px;line-height:1.12;
}
.il-demo-h2 b{
  background:linear-gradient(120deg,var(--il-cyan),var(--il-cyan-d));
  -webkit-background-clip:text;background-clip:text;color:transparent;font-weight:900;
}
.il-demo-sub{
  font-size:clamp(1rem,1.4vw,1.12rem);color:var(--il-muted);
  max-width:660px;margin:0 auto;line-height:1.65;font-weight:400;
}

/* Video wrapper */
.il-demo-visual{
  position:relative;max-width:840px;margin:0 auto 40px;
}
.il-demo-video-wrap{
  position:relative;border-radius:18px;overflow:hidden;
  box-shadow:0 32px 80px rgba(15,23,42,.14),0 0 0 1px rgba(15,23,42,.04);
  background:#0B1A2E;aspect-ratio:16/9;
  opacity:0;transform:translateY(32px) scale(.96);
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);
}
.il-demo-video-wrap.in{opacity:1;transform:translateY(0) scale(1)}
.il-demo-video-wrap video,.il-demo-video-wrap img.il-demo-poster{
  display:block;width:100%;height:100%;object-fit:cover;border-radius:18px;
}
.il-demo-video-wrap::after{
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:18px;
  background:linear-gradient(135deg,rgba(255,255,255,.04) 0%,transparent 50%,rgba(255,255,255,.02) 100%);
}

/* Floating badges */
.il-demo-badges{
  position:absolute;inset:0;pointer-events:none;
}
.il-demo-badge{
  position:absolute;pointer-events:auto;
  display:flex;align-items:center;gap:10px;
  padding:10px 16px;border-radius:14px;
  background:rgba(255,255,255,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(15,23,42,.06);
  box-shadow:0 12px 32px rgba(15,23,42,.08),0 0 0 1px rgba(255,255,255,.6);
  font-size:13px;font-weight:700;color:var(--il-ink);white-space:nowrap;
  opacity:0;transform:scale(.8);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
  cursor:default;
}
.il-demo-badge.in{opacity:1;transform:scale(1)}
.il-demo-badge:nth-child(1){top:-16px;left:-24px;animation:il-float-b1 5s ease infinite;transition-delay:.15s}
.il-demo-badge:nth-child(2){top:-16px;right:-24px;animation:il-float-b2 5.5s ease infinite;transition-delay:.25s}
.il-demo-badge:nth-child(3){bottom:-16px;left:-24px;animation:il-float-b3 4.8s ease infinite;transition-delay:.35s}
.il-demo-badge:nth-child(4){bottom:-16px;right:-24px;animation:il-float-b4 5.2s ease infinite;transition-delay:.45s}
.il-demo-badge-ic{
  width:28px;height:28px;border-radius:8px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.il-demo-badge-ic.cy{background:rgba(6,182,212,.14);color:var(--il-cyan)}
.il-demo-badge-ic.am{background:rgba(245,158,11,.14);color:var(--il-amber)}
.il-demo-badge-ic.vi{background:rgba(139,92,246,.14);color:var(--il-violet)}
.il-demo-badge-ic.gn{background:rgba(16,185,129,.14);color:var(--il-green)}
.il-demo-badge-ic svg{width:16px;height:16px}

/* CTA */
.il-demo-cta-wrap{text-align:center;margin-top:8px}
.il-demo-cta{
  display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:14px;
  background:linear-gradient(120deg,var(--il-cyan),var(--il-cyan-d));
  color:#fff;text-decoration:none;font-weight:700;font-size:.96rem;
  box-shadow:0 12px 28px rgba(6,182,212,.28);border:none;cursor:pointer;
  letter-spacing:-.01em;
  transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,filter .25s;
  transform:translateY(0);
}
.il-demo-cta.in{transform:translateY(0)}
.il-demo-cta:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 18px 38px rgba(6,182,212,.42);filter:brightness(1.05)}
.il-demo-cta:active{transform:translateY(0) scale(.98)}
.il-demo-cta svg{width:16px;height:16px;transition:transform .2s}
.il-demo-cta:hover svg{transform:translateX(3px)}
html[dir="rtl"] .il-demo-cta:hover svg{transform:translateX(-3px) scaleX(-1)}
html[dir="rtl"] .il-demo-cta svg{transform:scaleX(-1)}

/* Responsive */
@media (max-width:1100px){
  .il-demo-badge:nth-child(1),.il-demo-badge:nth-child(2){position:static;animation:none}
  .il-demo-badge:nth-child(3),.il-demo-badge:nth-child(4){position:static;animation:none}
  .il-demo-badges{
    position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;
    margin-top:20px;pointer-events:auto;
  }
  .il-demo-badge{justify-content:center}
}
@media (max-width:768px){
  .il-demo-section{padding:56px 5vw 64px}
  .il-demo-badges{grid-template-columns:1fr 1fr;gap:10px}
  .il-demo-badge{font-size:12px;padding:8px 12px}
  .il-demo-video-wrap{border-radius:14px}
}
@media (max-width:480px){
  .il-demo-badges{grid-template-columns:1fr;gap:8px}
}

/* RTL */
html[dir="rtl"] .il-demo-badge:nth-child(1){left:auto;right:-24px}
html[dir="rtl"] .il-demo-badge:nth-child(2){right:auto;left:-24px}
html[dir="rtl"] .il-demo-badge:nth-child(3){left:auto;right:-24px}
html[dir="rtl"] .il-demo-badge:nth-child(4){right:auto;left:-24px}

/* ============================================================
   STORY VIDEO SECTION
   ============================================================ */
.il-story-section{padding:96px 5vw;background:#FDFDFD;position:relative;overflow:hidden;}
.il-story-inner{max-width:1200px;margin:0 auto;position:relative;z-index:2;}
.il-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.il-story-content{max-width:500px;opacity:0;transform:translateX(-30px);transition:all .8s cubic-bezier(.2,.8,.2,1);}
html[dir="rtl"] .il-story-content{transform:translateX(30px);}
.il-story-content.in{opacity:1;transform:translateX(0);}
.il-story-h2{font-size:42px;line-height:1.15;letter-spacing:-1px;color:#0B1A2E;margin-bottom:24px;font-weight:600;}
.il-story-h2 b{color:#06B6D4;font-weight:800;}
.il-story-sub{font-size:18px;line-height:1.6;color:#64748B;margin-bottom:32px;}
.il-story-badges{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:40px;}
.il-story-badge{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:600;color:#0B1A2E;}
.il-story-ic{width:28px;height:28px;border-radius:50%;background:rgba(6,182,212,.1);color:#06B6D4;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.il-story-ic svg{width:16px;height:16px;}
.il-story-cta{display:inline-flex;align-items:center;gap:10px;background:#0B1A2E;color:#FFF;padding:14px 28px;border-radius:12px;font-weight:600;font-size:16px;text-decoration:none;transition:all .3s;}
.il-story-cta:hover{background:#06B6D4;transform:translateY(-2px);box-shadow:0 10px 25px rgba(6,182,212,.3);}
.il-story-cta svg{width:20px;height:20px;transition:transform .3s;}
.il-story-cta:hover svg{transform:translateX(4px);}
html[dir="rtl"] .il-story-cta:hover svg{transform:translateX(-4px) rotate(180deg);}
html[dir="rtl"] .il-story-cta svg{transform:rotate(180deg);}
.il-story-visual{opacity:0;transform:translateX(30px);transition:all .8s cubic-bezier(.2,.8,.2,1) .2s;}
html[dir="rtl"] .il-story-visual{transform:translateX(-30px);}
.il-story-visual.in{opacity:1;transform:translateX(0);}
.il-story-video-wrap{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 30px 80px rgba(11,26,46,.15),0 0 0 1px rgba(0,0,0,.04);aspect-ratio:16/9;background:#1A1A2E;}
.il-story-video-wrap video{width:100%;height:100%;object-fit:cover;display:block;}
.il-story-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;}

@media (max-width:992px){
  .il-story-grid{grid-template-columns:1fr;gap:40px;text-align:center;}
  .il-story-content{max-width:100%;margin:0 auto;}
  .il-story-badges{text-align:left;}
  html[dir="rtl"] .il-story-badges{text-align:right;}
}
@media (max-width:768px){
  .il-story-section{padding:64px 5vw;}
  .il-story-h2{font-size:32px;}
  .il-story-badges{grid-template-columns:1fr;}
}

/* ============================================================
   PREMIUM FAQ / CONTACT / FOOTER — neutralisés
   FAQ et Contact sont des pages dédiées (/faq, /contact).
   Footer premium en doublon : neutralisé pour ne pas masquer le footer React.
   ============================================================ */
.il-prem-faq,
.il-prem-contact,
.il-prem-footer,
section.il-prem-faq,
section.il-prem-contact,
footer.il-prem-footer,
footer#il-prem-footer{display:none !important}

/* ── 13 · No horizontal overflow ────────────────────────────── */
.il-pf-section,.il-ai-section,.il-demo-section,.il-story-section,.il-prem-faq,.il-prem-contact,.il-prem-footer,section#home,section#offers,footer.idev-footer-clean{overflow-x:hidden}

/* ============================================================
   AI MOTION SCENE — Remotion-inspired progressive scene
   v=20260505-cards-ai-scroll2
   Easing: cubic-bezier(.16,1,.3,1) (Remotion's recommended ease-out)
   Stages 1..5 cascade (300 ms steps), then reco + action.
   No external lib, no heavy effects, prefers-reduced-motion safe.
   Scoped strictly under .il-ai-visual — no leak to other sections.
   ============================================================ */
.il-ai-visual .il-aim-scene{
  margin-top:14px;padding:14px 14px 12px;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.04) 0%,rgba(255,255,255,.02) 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 0 0 1px rgba(6,182,212,.08);
  position:relative;z-index:1;
}
.il-ai-visual .il-aim-head{
  display:flex;align-items:center;gap:8px;margin:0 0 10px;
  font-size:12px;font-weight:700;color:#fff;letter-spacing:-.005em;
}
.il-ai-visual .il-aim-head-t{color:#fff}
.il-ai-visual .il-aim-head-sub{
  margin-left:auto;font-size:11px;font-weight:500;color:rgba(255,255,255,.55);
  letter-spacing:.01em;
}
html[dir="rtl"] .il-ai-visual .il-aim-head-sub{margin-left:0;margin-right:auto}
.il-ai-visual .il-aim-pulse{
  width:8px;height:8px;border-radius:50%;background:#10B981;
  box-shadow:0 0 0 0 rgba(16,185,129,.6);
  animation:il-aim-pulse-dot 1.8s cubic-bezier(.16,1,.3,1) infinite;
  flex-shrink:0;
}
@keyframes il-aim-pulse-dot{
  0%   {box-shadow:0 0 0 0 rgba(16,185,129,.55)}
  70%  {box-shadow:0 0 0 8px rgba(16,185,129,0)}
  100% {box-shadow:0 0 0 0 rgba(16,185,129,0)}
}

/* Steps list */
.il-ai-visual .il-aim-steps{
  list-style:none;padding:0;margin:0;display:grid;gap:8px;
}
.il-ai-visual .il-aim-step{
  display:flex;gap:10px;align-items:flex-start;
  padding:8px 10px;border-radius:10px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.06);
  opacity:0;transform:translateY(6px);
  transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1),background .25s ease;
  will-change:opacity,transform;
}
.il-ai-visual .il-aim-step-ic{
  width:26px;height:26px;border-radius:8px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.il-ai-visual .il-aim-step-ic.cy{background:rgba(6,182,212,.18);color:#67E8F9}
.il-ai-visual .il-aim-step-ic.gn{background:rgba(16,185,129,.18);color:#6EE7B7}
.il-ai-visual .il-aim-step-ic.am{background:rgba(245,158,11,.18);color:#FCD34D}
.il-ai-visual .il-aim-step-ic.vi{background:rgba(139,92,246,.18);color:#C4B5FD}
.il-ai-visual .il-aim-step-ic svg{width:14px;height:14px}
.il-ai-visual .il-aim-step-body{flex:1;min-width:0}
.il-ai-visual .il-aim-step-h{display:flex;align-items:center;gap:8px;justify-content:space-between}
.il-ai-visual .il-aim-step-t{
  font-size:11.5px;font-weight:700;color:#fff;line-height:1.25;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.il-ai-visual .il-aim-step-tag{
  font-size:9.5px;font-weight:800;letter-spacing:.05em;
  padding:2px 7px;border-radius:99px;flex-shrink:0;text-transform:uppercase;
}
.il-ai-visual .il-aim-step-tag.cy{background:rgba(6,182,212,.18);color:#67E8F9;border:1px solid rgba(6,182,212,.32)}
.il-ai-visual .il-aim-step-tag.gn{background:rgba(16,185,129,.18);color:#6EE7B7;border:1px solid rgba(16,185,129,.32)}
.il-ai-visual .il-aim-step-tag.am{background:rgba(245,158,11,.18);color:#FCD34D;border:1px solid rgba(245,158,11,.32)}
.il-ai-visual .il-aim-step-tag.vi{background:rgba(139,92,246,.18);color:#C4B5FD;border:1px solid rgba(139,92,246,.32)}
.il-ai-visual .il-aim-step-meta{
  display:flex;align-items:baseline;gap:8px;margin-top:3px;
}
.il-ai-visual .il-aim-step-v{font-size:13px;font-weight:800;color:#fff;letter-spacing:-.005em}
.il-ai-visual .il-aim-step-hint{font-size:10.5px;color:rgba(255,255,255,.5);font-weight:500}

/* Progress bar that fills as the step "is processed" */
.il-ai-visual .il-aim-bar{
  margin-top:6px;height:3px;border-radius:99px;
  background:rgba(255,255,255,.06);overflow:hidden;
}
.il-ai-visual .il-aim-bar-fill{
  display:block;height:100%;width:0;border-radius:99px;
  background:linear-gradient(90deg,#06B6D4,#8B5CF6);
  transition:width 700ms cubic-bezier(.16,1,.3,1);
}
html[dir="rtl"] .il-ai-visual .il-aim-bar-fill{
  background:linear-gradient(270deg,#06B6D4,#8B5CF6);
}

/* Stage reveals — cascade */
.il-ai-visual.il-aim-s1 .il-aim-step[data-step="1"]{opacity:1;transform:translateY(0)}
.il-ai-visual.il-aim-s1 .il-aim-step[data-step="1"] .il-aim-bar-fill{width:88%}
.il-ai-visual.il-aim-s2 .il-aim-step[data-step="2"]{opacity:1;transform:translateY(0)}
.il-ai-visual.il-aim-s2 .il-aim-step[data-step="2"] .il-aim-bar-fill{width:92%}
.il-ai-visual.il-aim-s3 .il-aim-step[data-step="3"]{opacity:1;transform:translateY(0)}
.il-ai-visual.il-aim-s3 .il-aim-step[data-step="3"] .il-aim-bar-fill{width:74%}
.il-ai-visual.il-aim-s4 .il-aim-step[data-step="4"]{opacity:1;transform:translateY(0)}
.il-ai-visual.il-aim-s4 .il-aim-step[data-step="4"] .il-aim-bar-fill{width:62%}
.il-ai-visual.il-aim-s5 .il-aim-step[data-step="5"]{opacity:1;transform:translateY(0)}
.il-ai-visual.il-aim-s5 .il-aim-step[data-step="5"] .il-aim-bar-fill{width:80%}

/* Recommendation */
.il-ai-visual .il-aim-reco{
  margin-top:10px;padding:10px 12px;
  border-radius:11px;
  background:linear-gradient(135deg,rgba(6,182,212,.14),rgba(139,92,246,.10));
  border:1px solid rgba(6,182,212,.30);
  opacity:0;transform:translateY(6px);
  transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1);
}
.il-ai-visual.il-aim-reco-on .il-aim-reco{opacity:1;transform:translateY(0)}
.il-ai-visual .il-aim-reco-h{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.il-ai-visual .il-aim-reco-ic{
  width:22px;height:22px;border-radius:7px;flex-shrink:0;
  background:linear-gradient(135deg,#06B6D4,#8B5CF6);color:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 12px rgba(6,182,212,.30);
}
.il-ai-visual .il-aim-reco-ic svg{width:13px;height:13px}
.il-ai-visual .il-aim-reco-t{
  font-size:11px;font-weight:800;color:#67E8F9;letter-spacing:.05em;text-transform:uppercase;
}
.il-ai-visual .il-aim-reco-txt{
  margin:0;font-size:12px;line-height:1.55;color:rgba(255,255,255,.85);font-weight:500;
}

/* Action proposed */
.il-ai-visual .il-aim-action{
  margin-top:10px;display:flex;align-items:center;gap:10px;
  opacity:0;transform:translateY(6px);
  transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1);
}
.il-ai-visual.il-aim-action-on .il-aim-action{opacity:1;transform:translateY(0)}
.il-ai-visual .il-aim-action-lbl{
  font-size:10.5px;font-weight:700;color:rgba(255,255,255,.55);
  letter-spacing:.06em;text-transform:uppercase;flex-shrink:0;
}
.il-ai-visual .il-aim-action-btn{
  display:inline-flex;align-items:center;gap:7px;
  padding:7px 12px;border-radius:10px;
  background:linear-gradient(120deg,#06B6D4,#0891B2);
  color:#fff;font-size:12px;font-weight:700;letter-spacing:-.005em;
  box-shadow:0 6px 18px rgba(6,182,212,.32);
  flex:1;justify-content:space-between;min-width:0;
}
.il-ai-visual .il-aim-action-ic{
  width:20px;height:20px;border-radius:6px;flex-shrink:0;
  background:rgba(255,255,255,.18);color:#FCD34D;
  display:flex;align-items:center;justify-content:center;
}
.il-ai-visual .il-aim-action-ic svg{width:12px;height:12px}
.il-ai-visual .il-aim-action-tx{
  flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.il-ai-visual .il-aim-action-btn > svg{
  width:14px;height:14px;flex-shrink:0;opacity:.85;
}
html[dir="rtl"] .il-ai-visual .il-aim-action-btn > svg{transform:scaleX(-1)}

/* Final state — used when motion has finished or for reduced motion */
.il-ai-visual.il-aim-final .il-aim-step,
.il-ai-visual.il-aim-final .il-aim-reco,
.il-ai-visual.il-aim-final .il-aim-action{opacity:1;transform:translateY(0)}
.il-ai-visual.il-aim-final .il-aim-bar-fill{width:80%}

@media (prefers-reduced-motion: reduce){
  .il-ai-visual .il-aim-step,
  .il-ai-visual .il-aim-reco,
  .il-ai-visual .il-aim-action{opacity:1 !important;transform:none !important;transition:none !important}
  .il-ai-visual .il-aim-bar-fill{width:80% !important;transition:none !important}
  .il-ai-visual .il-aim-pulse{animation:none !important}
}

/* Responsive — keep premium look on tablet/mobile */
@media (max-width:1100px){
  .il-ai-visual .il-aim-scene{padding:12px 12px 10px;margin-top:12px}
  .il-ai-visual .il-aim-step-t{font-size:11px}
}
@media (max-width:768px){
  .il-ai-visual .il-aim-scene{padding:11px 11px 9px}
  .il-ai-visual .il-aim-step{padding:7px 9px;gap:9px}
  .il-ai-visual .il-aim-step-ic{width:24px;height:24px}
  .il-ai-visual .il-aim-step-ic svg{width:13px;height:13px}
  .il-ai-visual .il-aim-step-v{font-size:12px}
  .il-ai-visual .il-aim-step-hint{font-size:10px}
  .il-ai-visual .il-aim-action-lbl{display:none}
  .il-ai-visual .il-aim-action-btn{flex:1}
}

/* Make sure scene cannot push horizontal scroll */
.il-ai-visual .il-aim-scene,
.il-ai-visual .il-aim-step,
.il-ai-visual .il-aim-action-btn{max-width:100%;box-sizing:border-box}

/* ============================================================
   CARDS V3 — TOTAL VISUAL REFRESH
   v=20260505-cards-v3-final
   - Bigger, more premium SVG mockups (240 px tall on desktop)
   - Sharper icon morphing on hover (rotate + scale + color)
   - Tighter typographic hierarchy
   - Card-id-specific micro-animations (spark for AI, bell for alerts...)
   - Responsive desktop / tablet / mobile, no horizontal overflow
   ============================================================ */

/* Section background — slightly more luminous, premium SaaS feel */
.il-pf-section.il-pfv3{
  background:
    radial-gradient(ellipse 900px 460px at 50% -120px, rgba(6,182,212,.10), transparent 70%),
    radial-gradient(ellipse 520px 520px at calc(100% + 80px) calc(100% + 80px), rgba(139,92,246,.08), transparent 60%),
    linear-gradient(180deg, #FFFFFF 0%, #F4F8FC 100%) !important;
  padding:110px 5vw !important;
}
.il-pfv3-inner{max-width:1320px;margin:0 auto;position:relative;z-index:1}

/* Header */
.il-pfv3-header{text-align:center;margin-bottom:66px;}
.il-pfv3-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 16px;border-radius:99px;
  background:linear-gradient(120deg,rgba(6,182,212,.12),rgba(139,92,246,.08));
  border:1px solid rgba(6,182,212,.28);
  font:800 11.5px/1 Inter,system-ui,sans-serif;
  letter-spacing:.10em;text-transform:uppercase;color:#0891B2;margin-bottom:20px;
}
.il-pfv3-eyebrow::before{
  content:"";width:6px;height:6px;border-radius:50%;background:#06B6D4;
  box-shadow:0 0 0 4px rgba(6,182,212,.18);
  animation:il-pulse-dot 2s ease infinite;
}
.il-pfv3-h2{
  font:900 clamp(2.1rem,4vw,3.1rem)/1.08 Inter,system-ui,sans-serif;
  letter-spacing:-.035em;color:#0F172A;margin:0 0 14px;
}
.il-pfv3-h2 b{
  background:linear-gradient(120deg,#06B6D4 0%,#0891B2 50%,#8B5CF6 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;font-weight:900;
}
.il-pfv3-sub{
  font:500 clamp(1rem,1.4vw,1.13rem)/1.65 Inter,system-ui,sans-serif;
  color:#475569;max-width:680px;margin:0 auto;
}

/* Grid */
.il-pfv3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}

/* Card */
.il-pfv3-card{
  background:#FFFFFF;
  border:1px solid #E2E8F0;
  border-radius:24px;
  overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:0 1px 2px rgba(15,23,42,.04),0 0 0 1px rgba(15,23,42,.015);
  transition:transform .42s cubic-bezier(.16,1,.3,1),box-shadow .42s cubic-bezier(.16,1,.3,1),border-color .3s;
  position:relative;
  opacity:0;transform:translateY(28px);
  will-change:transform;
}
.il-pfv3-card.in{opacity:1;transform:translateY(0);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),box-shadow .42s cubic-bezier(.16,1,.3,1),border-color .3s;}
.il-pfv3-card:hover{
  transform:translateY(-10px);
  box-shadow:0 28px 70px rgba(15,23,42,.13),0 0 0 1px rgba(6,182,212,.22);
  border-color:rgba(6,182,212,.35);
}

/* Mockup — bigger, sharper, navy/cyan reveal */
.il-pfv3-mockup{
  background:linear-gradient(135deg,#0B1A2E 0%,#13243F 50%,#1B3258 100%) !important;
  height:240px !important;
  padding:18px !important;
  border-bottom:1px solid rgba(6,182,212,.18) !important;
  position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.il-pfv3-mockup::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 80% 0%, rgba(6,182,212,.16), transparent 55%),
    radial-gradient(circle at 0% 100%, rgba(139,92,246,.14), transparent 55%);
  pointer-events:none;
}
.il-pfv3-mockup .il-pf-svg{
  width:100%;height:100%;display:block;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.30));
  transition:transform .5s cubic-bezier(.16,1,.3,1);
}
.il-pfv3-card:hover .il-pfv3-mockup .il-pf-svg{transform:scale(1.04)}
.il-pfv3-mockup::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.10) 50%,transparent 70%);
  transform:translateX(-100%);
  pointer-events:none;
}
.il-pfv3-card:hover .il-pfv3-mockup::after{
  animation:il-pfv3-shimmer 1.1s cubic-bezier(.16,1,.3,1);
}
@keyframes il-pfv3-shimmer{
  0%   {transform:translateX(-100%)}
  100% {transform:translateX(100%)}
}

/* Body */
.il-pfv3-body{
  padding:24px 26px 26px !important;
  display:flex;flex-direction:column;flex:1;gap:8px;
}
.il-pfv3-icon-row{display:flex;align-items:center;gap:14px;margin-bottom:6px;}

/* Icon — premium gradient + animated on card hover */
.il-pfv3-icon{
  width:46px;height:46px;border-radius:13px;
  background:linear-gradient(135deg,#ECFEFF 0%,#CFFAFE 100%);
  color:#0891B2;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:inset 0 0 0 1px rgba(6,182,212,.20),0 4px 14px rgba(6,182,212,.10);
  transition:
    transform .45s cubic-bezier(.16,1,.3,1),
    background .35s cubic-bezier(.16,1,.3,1),
    color .35s cubic-bezier(.16,1,.3,1),
    box-shadow .35s cubic-bezier(.16,1,.3,1);
  position:relative;
}
.il-pfv3-icon svg{width:22px;height:22px;transition:transform .45s cubic-bezier(.16,1,.3,1);}
.il-pfv3-card:hover .il-pfv3-icon{
  background:linear-gradient(135deg,#06B6D4 0%,#0891B2 100%);
  color:#FFFFFF;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 10px 26px rgba(6,182,212,.40);
  transform:scale(1.08) rotate(-4deg);
}
.il-pfv3-card:hover .il-pfv3-icon svg{transform:scale(1.06);}

/* Per-icon unique micro-animation on hover */
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="11"]{
  /* AI sparkle — pulse + tint violet */
  background:linear-gradient(135deg,#06B6D4 0%,#8B5CF6 100%);
  animation:il-pfv3-spark 2s cubic-bezier(.16,1,.3,1) infinite;
}
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="12"] svg{
  /* Alerts bell — shake */
  animation:il-pfv3-shake .6s cubic-bezier(.36,.07,.19,.97) 1;
}
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="0"] svg,
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="10"] svg{
  /* Dashboard / Reports — slight bounce */
  animation:il-pfv3-bounce .55s cubic-bezier(.16,1,.3,1) 1;
}
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="6"]{
  /* Deliveries — slide */
  animation:il-pfv3-slide .8s cubic-bezier(.16,1,.3,1) 1;
}
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="13"]{
  /* Security shield — glow */
  background:linear-gradient(135deg,#10B981 0%,#0891B2 100%);
}
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="3"],
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="4"]{
  /* PDFs — amber tint */
  background:linear-gradient(135deg,#F59E0B 0%,#D97706 100%);
}
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="2"]{
  /* Stores — violet tint */
  background:linear-gradient(135deg,#8B5CF6 0%,#7C3AED 100%);
}
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="7"],
.il-pfv3-card:hover .il-pfv3-icon[data-card-id="6"]{
  /* Payments / Deliveries — green tint */
  background:linear-gradient(135deg,#10B981 0%,#059669 100%);
}

@keyframes il-pfv3-spark{
  0%,100% {box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 10px 26px rgba(139,92,246,.30)}
  50%     {box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),0 14px 36px rgba(139,92,246,.55)}
}
@keyframes il-pfv3-shake{
  0%,100% {transform:rotate(0)}
  20%     {transform:rotate(-9deg)}
  40%     {transform:rotate(7deg)}
  60%     {transform:rotate(-5deg)}
  80%     {transform:rotate(3deg)}
}
@keyframes il-pfv3-bounce{
  0%   {transform:scale(1) translateY(0)}
  40%  {transform:scale(1.14) translateY(-3px)}
  100% {transform:scale(1.06) translateY(0)}
}
@keyframes il-pfv3-slide{
  0%   {transform:translateX(-3px) scale(1.06)}
  50%  {transform:translateX(3px) scale(1.10)}
  100% {transform:translateX(0) scale(1.06)}
}

/* Title / Desc / Tag */
.il-pfv3-title{
  font:800 1.15rem/1.28 Inter,system-ui,sans-serif;
  letter-spacing:-.018em;color:#0F172A;margin:0;
}
.il-pfv3-desc{
  font:500 .94rem/1.65 Inter,system-ui,sans-serif;
  color:#475569;margin:0 0 18px;flex:1;
}
.il-pfv3-card:hover .il-pfv3-desc{color:#334155;}
.il-pfv3-tag{
  display:inline-flex;align-items:center;gap:6px;align-self:flex-start;
  padding:6px 14px;border-radius:99px;
  font:700 11.5px/1 Inter,system-ui,sans-serif;
  letter-spacing:.02em;
  background:#F1F5F9;color:#475569;
  border:1px solid #E2E8F0;
  transition:background .3s,color .3s,border-color .3s,transform .3s cubic-bezier(.16,1,.3,1);
}
.il-pfv3-tag::before{
  content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.6;
}
.il-pfv3-card:hover .il-pfv3-tag{transform:translateY(-1px);}
.il-pfv3-tag.cyan  {background:#ECFEFF;color:#0891B2;border-color:rgba(6,182,212,.25);}
.il-pfv3-tag.amber {background:#FFFBEB;color:#D97706;border-color:rgba(245,158,11,.25);}
.il-pfv3-tag.green {background:#ECFDF5;color:#059669;border-color:rgba(16,185,129,.25);}
.il-pfv3-tag.violet{background:#F5F3FF;color:#7C3AED;border-color:rgba(139,92,246,.25);}
.il-pfv3-tag.rose  {background:#FFF1F2;color:#E11D48;border-color:rgba(244,63,94,.25);}

/* RTL */
html[dir="rtl"] .il-pfv3-grid{direction:rtl;}
html[dir="rtl"] .il-pfv3-icon-row{flex-direction:row;}
html[dir="rtl"] .il-pfv3-tag{align-self:flex-start;}

/* Responsive */
@media (max-width:1180px){
  .il-pfv3-grid{grid-template-columns:repeat(2,1fr);gap:24px;}
  .il-pfv3-mockup{height:220px !important;}
}
@media (max-width:768px){
  .il-pf-section.il-pfv3{padding:72px 5vw !important;}
  .il-pfv3-header{margin-bottom:44px;}
  .il-pfv3-grid{grid-template-columns:1fr;gap:18px;}
  .il-pfv3-mockup{height:200px !important;padding:14px !important;}
  .il-pfv3-body{padding:20px 22px 22px !important;}
  .il-pfv3-title{font-size:1.05rem;}
  .il-pfv3-desc{font-size:.9rem;}
  .il-pfv3-icon{width:42px;height:42px;border-radius:12px;}
  .il-pfv3-icon svg{width:20px;height:20px;}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .il-pfv3-card,
  .il-pfv3-mockup .il-pf-svg,
  .il-pfv3-icon,
  .il-pfv3-icon svg,
  .il-pfv3-tag{transition:none !important;animation:none !important;}
  .il-pfv3-card{opacity:1 !important;transform:none !important;}
  .il-pfv3-card:hover{transform:none !important;}
  .il-pfv3-card:hover .il-pfv3-icon{transform:none !important;}
  .il-pfv3-card:hover .il-pfv3-mockup::after{animation:none !important;}
}

/* No horizontal overflow */
.il-pfv3-grid,
.il-pfv3-card,
.il-pfv3-mockup{max-width:100%;box-sizing:border-box;}

/* ============================================================
   PREMIUM DESIGN ENHANCEMENTS (UI/UX Pro Max + Remotion easing)
   v=20260505-scroll-ai-business-premium-final
   ============================================================ */

/* ── Coverage Section — Premium card animations ── */
.il-coverage-card{
  transition:transform .42s var(--il-ease),box-shadow .42s var(--il-ease),border-color .3s !important;
  opacity:0;transform:translateY(24px);
}
.il-coverage-card.in{
  opacity:1;transform:translateY(0);
  transition:opacity .8s var(--il-ease),transform .8s var(--il-ease),box-shadow .42s var(--il-ease),border-color .3s !important;
}
.il-coverage-card:hover{
  transform:translateY(-7px) !important;
  box-shadow:0 24px 60px rgba(15,23,42,.11),0 0 0 1px rgba(6,182,212,.2) !important;
  border-color:rgba(6,182,212,.35) !important;
}
.il-coverage-card h3{
  font-family:var(--il-font) !important;
  transition:color .25s !important;
}
.il-coverage-card:hover h3{
  color:#06B6D4 !important;
}
.il-coverage-check{
  transition:transform .3s var(--il-ease),background .25s !important;
}
.il-coverage-card:hover .il-coverage-check{
  transform:scale(1.12) !important;
  background:linear-gradient(135deg,#CFFAFE,#A5F3FC) !important;
}
.il-coverage-list li{
  font-family:var(--il-font) !important;
  transition:transform .25s var(--il-ease) !important;
}
.il-coverage-card:hover .il-coverage-list li{
  transform:translateX(3px) !important;
}
html[dir="rtl"] .il-coverage-card:hover .il-coverage-list li{
  transform:translateX(-3px) !important;
}

/* Stagger coverage card scroll-in */
.il-coverage-card:nth-child(1){transition-delay:.05s !important}
.il-coverage-card:nth-child(2){transition-delay:.12s !important}
.il-coverage-card:nth-child(3){transition-delay:.19s !important}
.il-coverage-card:nth-child(4){transition-delay:.26s !important}
.il-coverage-card:nth-child(5){transition-delay:.33s !important}
.il-coverage-card:nth-child(6){transition-delay:.40s !important}

/* ── AI Section — Enhanced glassmorphism + glow ── */
@keyframes il-ai-glow{
  0%,100%{box-shadow:0 32px 80px rgba(15,23,42,.22),0 0 0 1px rgba(255,255,255,.04),0 0 80px rgba(6,182,212,.08)}
  50%{box-shadow:0 32px 80px rgba(15,23,42,.22),0 0 0 1px rgba(255,255,255,.04),0 0 120px rgba(6,182,212,.14)}
}
.il-ai-visual{
  animation:il-ai-glow 6s ease infinite;
}
.il-ai-h2,.il-ai-sub,.il-ai-micro,.il-ai-bens li{
  font-family:var(--il-font) !important;
}
.il-ai-cta{
  font-family:var(--il-font) !important;
  position:relative;overflow:hidden;
}
.il-ai-cta::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.25) 50%,transparent 100%);
  transform:translateX(-100%);transition:transform .65s ease;pointer-events:none;
}
.il-ai-cta:hover::before{transform:translateX(100%)}

/* ── Coverage Section — Enhanced header ── */
.il-coverage-h2,.il-coverage-sub{
  font-family:var(--il-font) !important;
}

/* ── AI Visual — enhanced mini-cards hover ── */
.il-ai-mini{
  transition:transform .35s var(--il-ease),background .3s,border-color .3s,box-shadow .3s !important;
}
.il-ai-mini:hover{
  background:rgba(255,255,255,.09) !important;
  transform:translateY(-3px) !important;
  border-color:rgba(6,182,212,.25) !important;
  box-shadow:0 8px 24px rgba(6,182,212,.12) !important;
}

/* ── Section titles — gradient text on hover (premium) ── */
.il-coverage-h2 b,.il-pfv3-h2 b,.il-ai-h2 b,.il-demo-h2 b{
  transition:filter .4s ease !important;
}
.il-coverage-section:hover .il-coverage-h2 b,
.il-pf-section:hover .il-pfv3-h2 b{
  filter:brightness(1.15) saturate(1.2) !important;
}

/* ── Smooth section transitions ── */
.il-ai-section,.il-coverage-section,.il-demo-section,.il-story-section{
  transition:opacity .6s var(--il-ease) !important;
}

/* ── Inter font for all premium sections ── */
.il-story-h2,.il-story-sub,.il-story-badge,
.il-demo-h2,.il-demo-sub,.il-demo-eyebrow{
  font-family:var(--il-font) !important;
}

@media (prefers-reduced-motion:reduce){
  .il-ai-visual{animation:none !important}
  .il-coverage-card{opacity:1 !important;transform:none !important;transition:none !important}
  .il-coverage-card:hover{transform:none !important}
  .il-ai-cta::before{display:none}
}


/* ============================================================
   IDEV-LOG · Premium Refresh v3 (2026-05) — Append-only styles
   - Section IA Simulation (laptop animé)
   - Toggle clair/sombre landing publique
   - Peaufinements .il-pf-card et .il-ai-* (sans casser la base)
   - Variantes dark via html.dark (scope strict)
   ============================================================ */

/* ============================================================
   Section AI Simulation — laptop animé (CSS pur)
   ============================================================ */
.il-aisim-section{padding:60px 24px 80px;position:relative;}
.il-aisim-section::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(700px 380px at 75% 40%,rgba(139,92,246,.06),transparent 60%);
}
.il-aisim-inner{max-width:1100px;margin:0 auto;position:relative;}
.il-aisim-head{text-align:center;max-width:720px;margin:0 auto 32px;}
.il-aisim-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 14px;border-radius:999px;
  background:rgba(6,182,212,.10);border:1px solid rgba(6,182,212,.28);
  color:#0891B2;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  margin-bottom:14px;
}
.il-aisim-eyebrow svg{color:#0891B2;}
.il-aisim-h2{
  font-size:clamp(1.75rem,3.6vw,2.75rem);line-height:1.1;letter-spacing:-.02em;
  font-weight:800;margin:8px 0 12px;color:#0F172A;
}
.il-aisim-h2 b{
  background:linear-gradient(135deg,#06B6D4 0%,#8B5CF6 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800;
}
.il-aisim-sub{color:#475569;font-size:16px;line-height:1.65;max-width:60ch;margin:0 auto;}

/* Laptop CSS pur */
.il-aisim-laptop{position:relative;max-width:920px;margin:36px auto 0;padding:0 12px;}
.il-aisim-laptop .il-aisim-screen{
  position:relative;
  background:linear-gradient(180deg,#1B2740 0%,#0B1426 100%);
  border-radius:16px 16px 4px 4px;padding:32px 14px 14px;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 40px 80px -40px rgba(15,23,42,.45),0 20px 40px -25px rgba(15,23,42,.30),inset 0 1px 0 rgba(255,255,255,.06);
  display:grid;grid-template-columns:200px 1fr;gap:0;
  aspect-ratio:16/10;color:#E2E8F0;overflow:hidden;
}
.il-aisim-laptop .il-aisim-bar{
  position:absolute;top:0;left:0;right:0;height:26px;
  background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;gap:6px;padding:0 12px;z-index:5;
}
.il-aisim-laptop .il-aisim-bar i{width:9px;height:9px;border-radius:50%;}
.il-aisim-laptop .il-aisim-bar i:nth-child(1){background:#FB7185}
.il-aisim-laptop .il-aisim-bar i:nth-child(2){background:#FBBF24}
.il-aisim-laptop .il-aisim-bar i:nth-child(3){background:#34D399}
.il-aisim-laptop .il-aisim-bar span{margin-left:auto;font-size:10.5px;color:#94A3B8;letter-spacing:.06em;}
.il-aisim-base{
  height:8px;margin:0 -64px;
  background:linear-gradient(180deg,#38486D 0%,#1B2740 100%);
  border-radius:0 0 22px 22px;
  box-shadow:0 12px 24px -8px rgba(15,23,42,.40);
  position:relative;
}
.il-aisim-base::before{
  content:"";display:block;height:14px;
  background:linear-gradient(180deg,#2A3A5C 0%,#1B2740 100%);
  border-radius:0 0 14px 14px;margin:-14px -32px 0;position:absolute;left:32px;right:32px;top:0;
}

.il-aisim-side{
  background:rgba(0,0,0,.20);border-right:1px solid rgba(255,255,255,.08);
  padding:8px 10px 12px;font-size:11.5px;color:#94A3B8;
  display:flex;flex-direction:column;gap:4px;min-width:0;
}
.il-aisim-side-b{display:flex;align-items:center;gap:8px;padding:4px 6px 12px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:8px;}
.il-aisim-side-lg{
  width:22px;height:22px;border-radius:6px;
  background:linear-gradient(135deg,#06B6D4,#8B5CF6);
  display:grid;place-items:center;color:#fff;font-weight:800;font-size:10px;flex-shrink:0;
}
.il-aisim-side-nm{font-weight:700;color:#E2E8F0;font-size:11.5px;letter-spacing:-.01em;}
.il-aisim-side-a{
  display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:7px;color:#94A3B8;
  text-decoration:none;font-size:11px;
  transition:background .15s ease,color .15s ease;
}
.il-aisim-side-a svg{width:13px;height:13px;flex-shrink:0;}
.il-aisim-side-a.active{background:rgba(6,182,212,.10);color:#67E8F9;}

.il-aisim-main{
  padding:8px 14px 14px;display:flex;flex-direction:column;gap:8px;min-width:0;overflow:hidden;
}
.il-aisim-h{display:flex;align-items:center;justify-content:space-between;padding-bottom:6px;border-bottom:1px dashed rgba(255,255,255,.10);}
.il-aisim-t{font-weight:700;font-size:13px;color:#E2E8F0;letter-spacing:-.01em;}
.il-aisim-c{
  display:inline-flex;align-items:center;gap:6px;
  padding:4px 11px;border-radius:999px;
  background:rgba(6,182,212,.10);color:#67E8F9;font-size:10.5px;font-weight:700;
  border:1px solid rgba(6,182,212,.30);
}
.il-aisim-c::before{content:"";width:5px;height:5px;border-radius:50%;background:#67E8F9;animation:il-aisim-pulse 2s infinite;}
@keyframes il-aisim-pulse{0%{box-shadow:0 0 0 0 rgba(34,211,238,.6);}70%{box-shadow:0 0 0 10px rgba(34,211,238,0);}100%{box-shadow:0 0 0 0 rgba(34,211,238,0);}}

.il-aisim-chat{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;overflow:hidden;}
.il-aisim-msg{
  max-width:88%;padding:8px 11px;border-radius:12px;font-size:11.5px;line-height:1.45;
  opacity:0;transform:translateY(6px);
  animation:il-aisim-msg-in .45s cubic-bezier(.22,1,.36,1) forwards;
}
.il-aisim-msg-usr{
  align-self:flex-end;
  background:linear-gradient(135deg,#0891B2,#7C3AED);color:#fff;
  border-bottom-right-radius:4px;
  animation-delay:.6s;
}
.il-aisim-msg-ai{
  align-self:flex-start;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);color:#E2E8F0;
  border-bottom-left-radius:4px;
  animation-delay:1.6s;
}
@keyframes il-aisim-msg-in{to{opacity:1;transform:translateY(0);}}
.il-aisim-msg-h{font-weight:800;color:#67E8F9;font-size:11px;margin-bottom:4px;letter-spacing:-.01em;}
.il-aisim-msg-intro{margin-bottom:4px;color:#CBD5E1;}
.il-aisim-bullets{list-style:none;padding:0;margin:6px 0 0;display:grid;gap:4px;font-size:11px;color:#E2E8F0;}
.il-aisim-bullets li{display:flex;gap:6px;align-items:flex-start;line-height:1.45;
  opacity:0;animation:il-aisim-bullet-in .35s cubic-bezier(.22,1,.36,1) forwards;}
.il-aisim-bullets li:nth-child(1){animation-delay:2.0s;}
.il-aisim-bullets li:nth-child(2){animation-delay:2.2s;}
.il-aisim-bullets li:nth-child(3){animation-delay:2.4s;}
.il-aisim-bullets li:nth-child(4){animation-delay:2.6s;}
.il-aisim-bullets li:nth-child(5){animation-delay:2.8s;}
@keyframes il-aisim-bullet-in{to{opacity:1;}}
.il-aisim-bullet-ic{
  flex-shrink:0;width:14px;height:14px;border-radius:4px;margin-top:1px;
  background:rgba(16,185,129,.20);color:#34D399;display:grid;place-items:center;
}
.il-aisim-bullet-ic svg{width:10px;height:10px;}

/* RTL : inversion des bulles */
html[dir="rtl"] .il-aisim-msg-usr{align-self:flex-start;border-bottom-right-radius:12px;border-bottom-left-radius:4px;}
html[dir="rtl"] .il-aisim-msg-ai{align-self:flex-end;border-bottom-left-radius:12px;border-bottom-right-radius:4px;}

/* Pills sous le laptop */
.il-aisim-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:24px;}
.il-aisim-pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:999px;font-size:12.5px;font-weight:600;
  background:#fff;border:1px solid rgba(15,23,42,.10);color:#0F172A;
  box-shadow:0 1px 0 rgba(15,23,42,.04),0 2px 6px rgba(15,23,42,.05);
}
.il-aisim-pill svg{flex-shrink:0;}
.il-aisim-pill.cy{color:#0891B2;background:rgba(6,182,212,.06);border-color:rgba(6,182,212,.25);}
.il-aisim-pill.am{color:#B45309;background:rgba(245,158,11,.07);border-color:rgba(245,158,11,.25);}
.il-aisim-pill.vi{color:#6D28D9;background:rgba(139,92,246,.07);border-color:rgba(139,92,246,.25);}
.il-aisim-pill.gn{color:#047857;background:rgba(16,185,129,.07);border-color:rgba(16,185,129,.25);}

.il-aisim-explain{
  margin:30px auto 0;max-width:820px;text-align:center;
  color:#475569;font-size:14.5px;line-height:1.7;
}
.il-aisim-explain b{color:#0F172A;font-weight:700;}

@media (max-width:780px){
  .il-aisim-laptop .il-aisim-screen{grid-template-columns:64px 1fr;aspect-ratio:4/3;}
  .il-aisim-side-nm{display:none;}
  .il-aisim-side-a span{display:none;}
  .il-aisim-side{padding:8px 4px;align-items:center;}
  .il-aisim-base{margin:0 -24px;}
  .il-aisim-msg{font-size:10.5px;}
}

/* ============================================================
   PEAUFINEMENTS — section IA + cards features (existantes)
   ============================================================ */
.il-ai-cta:hover{transform:translateY(-2px);box-shadow:0 18px 36px -12px rgba(8,145,178,.55) !important;}
.il-pf-card{transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .25s ease,box-shadow .25s ease !important;}
.il-pf-card:hover{transform:translateY(-4px) !important;box-shadow:0 20px 50px -20px rgba(8,145,178,.18) !important;}

/* ============================================================
   DARK MODE LANDING — scope strict via html.dark
   N'IMPACTE PAS le SaaS (qui n'a pas cet attribut)
   ============================================================ */
html.dark body{background:#060B16 !important;color:#E6EDF7 !important;}
html.dark section,
html.dark .il-pf-section,
html.dark .il-ai-section,
html.dark .il-aisim-section,
html.dark .il-coverage-section{
  background:transparent !important;
}
html.dark header,
html.dark nav[role="navigation"]{
  background:rgba(6,11,22,.85) !important;backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
html.dark h1,
html.dark h2,
html.dark h3,
html.dark .il-pf-h2,
html.dark .il-ai-h2,
html.dark .il-aisim-h2,
html.dark .il-coverage-h2{color:#F1F5F9 !important;}
html.dark p,
html.dark .il-pf-sub,
html.dark .il-ai-sub,
html.dark .il-aisim-sub,
html.dark .il-coverage-sub{color:#94A3B8 !important;}
html.dark .il-pf-card{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015)) !important;
  border-color:rgba(255,255,255,.10) !important;
}
html.dark .il-pf-card:hover{
  border-color:rgba(34,211,238,.30) !important;
  box-shadow:0 20px 50px -20px rgba(34,211,238,.18) !important;
}
html.dark .il-pf-title{color:#F1F5F9 !important;}
html.dark .il-pf-desc{color:#94A3B8 !important;}
html.dark .il-pf-eyebrow,
html.dark .il-ai-eyebrow,
html.dark .il-aisim-eyebrow{
  background:rgba(6,182,212,.10) !important;border-color:rgba(6,182,212,.30) !important;color:#67E8F9 !important;
}
html.dark .il-aisim-pill{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#E6EDF7 !important;
}
html.dark .il-aisim-pill.cy{color:#67E8F9 !important;border-color:rgba(6,182,212,.35) !important;background:rgba(6,182,212,.10) !important;}
html.dark .il-aisim-pill.am{color:#FCD34D !important;border-color:rgba(245,158,11,.35) !important;background:rgba(245,158,11,.10) !important;}
html.dark .il-aisim-pill.vi{color:#C4B5FD !important;border-color:rgba(139,92,246,.35) !important;background:rgba(139,92,246,.10) !important;}
html.dark .il-aisim-pill.gn{color:#6EE7B7 !important;border-color:rgba(16,185,129,.35) !important;background:rgba(16,185,129,.10) !important;}
html.dark .il-aisim-explain{color:#94A3B8 !important;}
html.dark .il-aisim-explain b{color:#F1F5F9 !important;}
html.dark .il-coverage-card,
html.dark .il-faq-item,
html.dark .il-prem-faq details{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#E6EDF7 !important;
}
html.dark footer{
  background:#0A1222 !important;border-top:1px solid rgba(255,255,255,.08) !important;
}
html.dark footer a{color:#CBD5E1 !important;}
html.dark footer a:hover{color:#F1F5F9 !important;}

/* Reduce-motion override pour la simulation */
@media (prefers-reduced-motion:reduce){
  .il-aisim-msg,.il-aisim-bullets li,.il-aisim-c::before{animation:none !important;opacity:1 !important;transform:none !important;}
}

/* ============================================================
   DARK MODE LANDING — patch v3 (UI/UX Pro Max)
   Étend le bloc précédent : tue tous les fonds blancs/crème
   restants en mode sombre, sans casser le mode clair.
   Scope strict : html.dark + sélecteur landing.
   ============================================================ */

/* Sections premium — fonds dégradés clairs → fond sombre cohérent */
html.dark .il-pf-section,
html.dark .il-ai-section,
html.dark .il-demo-section,
html.dark .il-story-section,
html.dark .il-coverage-section,
html.dark .il-prem-faq,
html.dark .il-prem-contact{
  background:linear-gradient(180deg,#070D1B 0%,#0B1426 100%) !important;
  border-color:rgba(255,255,255,.06) !important;
}
html.dark section#offers{
  background:linear-gradient(180deg,#0B1426 0%,#070D1B 100%) !important;
}

/* Cards principales (offres, coverage, pricing v3) */
html.dark section#offers .grid > div,
html.dark section#offers [class*="rounded"][class*="border"]{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015)) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#E6EDF7 !important;
}
html.dark section#offers .grid > div h3,
html.dark section#offers [class*="rounded"][class*="border"] h3,
html.dark section#offers .grid > div h2,
html.dark section#offers [class*="rounded"][class*="border"] h2{
  color:#F1F5F9 !important;
}
html.dark section#offers .grid > div p,
html.dark section#offers [class*="rounded"][class*="border"] p,
html.dark section#offers .grid > div li,
html.dark section#offers [class*="rounded"][class*="border"] li{
  color:#94A3B8 !important;
}
html.dark .il-pfv3-card{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015)) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#E6EDF7 !important;
}
html.dark .il-pfv3-card h3,
html.dark .il-pfv3-card .il-pfv3-title{color:#F1F5F9 !important;}
html.dark .il-pfv3-card p,
html.dark .il-pfv3-card .il-pfv3-desc{color:#94A3B8 !important;}
html.dark .il-pfv3-tag.amber{background:rgba(245,158,11,.15) !important;color:#FCD34D !important;border-color:rgba(245,158,11,.30) !important;}
html.dark .il-pfv3-tag.rose{background:rgba(244,63,94,.15) !important;color:#FCA5A5 !important;border-color:rgba(244,63,94,.30) !important;}
html.dark .il-pf-tag.violet{background:rgba(139,92,246,.15) !important;color:#C4B5FD !important;}
html.dark .il-pf-tag.rose{background:rgba(244,63,94,.15) !important;color:#FCA5A5 !important;}
html.dark .il-pf-tag.amber{background:rgba(245,158,11,.15) !important;color:#FCD34D !important;}

/* FAQ — accordion en dark */
html.dark .il-faq-item{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#E6EDF7 !important;
}
html.dark .il-faq-item[open]{border-color:rgba(34,211,238,.35) !important;box-shadow:0 10px 30px rgba(34,211,238,.10) !important;}
html.dark .il-faq-summary{color:#F1F5F9 !important;}
html.dark .il-faq-summary:hover{background:rgba(255,255,255,.04) !important;}
html.dark .il-faq-body{color:#94A3B8 !important;}

/* Contact tiles */
html.dark .il-contact-tile{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015)) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#E6EDF7 !important;
}
html.dark .il-contact-tile:hover{
  border-color:rgba(34,211,238,.30) !important;
  box-shadow:0 12px 30px rgba(34,211,238,.10) !important;
}

/* Inputs / textarea / boutons globaux landing */
html.dark .il-prem-contact input,
html.dark .il-prem-contact textarea,
html.dark .il-prem-contact select{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(255,255,255,.12) !important;
  color:#F1F5F9 !important;
}
html.dark .il-prem-contact input::placeholder,
html.dark .il-prem-contact textarea::placeholder{color:#64748B !important;}
html.dark .il-prem-contact input:focus,
html.dark .il-prem-contact textarea:focus,
html.dark .il-prem-contact select:focus{
  border-color:rgba(34,211,238,.55) !important;
  box-shadow:0 0 0 3px rgba(34,211,238,.18) !important;
}

/* Coverage cards */
html.dark .il-coverage-card{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015)) !important;
  border-color:rgba(255,255,255,.10) !important;
}
html.dark .il-coverage-card h3{color:#F1F5F9 !important;}
html.dark .il-coverage-card p{color:#94A3B8 !important;}

/* Boutons "Discover" / "Voir les offres" en dark */
html.dark section#home .il-discover-btn{
  border-color:rgba(255,255,255,.18) !important;
  color:#E6EDF7 !important;
}
html.dark section#home .il-discover-btn:hover{
  border-color:rgba(34,211,238,.55) !important;
  background:rgba(34,211,238,.06) !important;
}

/* ============================================================
   MODE CLAIR — préserver le côté chaleureux/crémeux demandé
   On garde les fonds doux existants, on s'assure juste que les
   textes restent foncés et lisibles.
   ============================================================ */
html:not(.dark) .il-pf-section,
html:not(.dark) .il-ai-section,
html:not(.dark) .il-demo-section{
  color:var(--il-ink);
}
html:not(.dark) .il-faq-summary{color:#0F172A;}
html:not(.dark) .il-faq-body{color:#475569;}

/* ============================================================
   POLISH PREMIUM v=20260509  (UI/UX Pro Max checklist)
   Hover stable · cursor pointer · focus visible · transitions
   ============================================================ */

/* Cursor pointer — toutes les cartes/items interactifs landing */
.il-faq-item .il-faq-summary,
.il-coverage-card,
.il-pf-card,
.il-pfv3-card,
.il-contact-tile,
section#offers .grid > div,
section#offers [class*="rounded"][class*="border"]{
  cursor:pointer;
}

/* Cards — hover stable (color/shadow seulement, pas de scale destructive) */
.il-pfv3-card{transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .25s ease,box-shadow .25s ease,background .25s ease !important;}
.il-pfv3-card:hover{
  transform:translateY(-3px) !important;
}
html:not(.dark) .il-pfv3-card:hover{box-shadow:0 18px 44px -18px rgba(8,145,178,.20) !important;}
html.dark .il-pfv3-card:hover{box-shadow:0 18px 44px -18px rgba(34,211,238,.25) !important;}

/* Focus visible — accessibilité WCAG (4.5:1, ring +offset) */
.il-faq-summary:focus-visible,
.il-coverage-card:focus-visible,
.il-pf-card:focus-visible,
.il-pfv3-card:focus-visible,
.il-contact-tile:focus-visible{
  outline:2px solid var(--il-cyan) !important;
  outline-offset:3px !important;
  box-shadow:0 0 0 4px rgba(6,182,212,.18) !important;
}

/* Smooth theme switch — body et navbar transitions */
body, header, nav, footer,
.il-pf-section, .il-ai-section, .il-demo-section,
.il-coverage-section, .il-prem-faq, .il-prem-contact,
section#offers{
  transition:background-color .3s cubic-bezier(.16,1,.3,1),
             color .3s cubic-bezier(.16,1,.3,1),
             border-color .3s ease;
}

/* Inputs landing : taille de police minimum 16px (mobile-friendly) */
.il-prem-contact input,
.il-prem-contact textarea,
.il-prem-contact select{
  font-size:max(15px,.95rem) !important;
}

/* FAQ summary — hover stable, pas de bg flash */
html:not(.dark) .il-faq-summary:hover{background:#F1F5F9 !important;}
html.dark .il-faq-summary:hover{background:rgba(255,255,255,.04) !important;}

/* Touch targets minimum 44px (mobile UX) sur les CTAs landing */
.il-discover-btn,
section#home .idev-contact-animated,
.il-ai-cta,
.il-demo-cta{
  min-height:44px;
}

/* Dark mode — éviter une carte "blanche agressive" résiduelle */
html.dark .bg-white{background-color:rgba(255,255,255,.04) !important;}

/* Reduced motion — overrides finaux */
@media (prefers-reduced-motion:reduce){
  body, header, nav, footer,
  .il-pf-section, .il-ai-section, .il-demo-section,
  .il-coverage-section, .il-prem-faq, .il-prem-contact,
  section#offers{transition:none !important;}
  .il-pfv3-card:hover, .il-pf-card:hover, .il-coverage-card:hover{transform:none !important;}
}

/* ============================================================
   DARK MODE LANDING — PATCH RENFORCÉ v=20260509
   La capture montre que la nav publique reste en clair même
   avec html.dark. On force ici tous les éléments visibles :
   header, logo, liens nav, badges, hero, sections, footer.
   Scope : html.dark + sélecteurs landing → aucune fuite SaaS.
   ============================================================ */

/* Header / Navbar publique */
html.dark header,
html.dark [role="banner"]{
  background:rgba(6,11,22,.88) !important;
  backdrop-filter:saturate(140%) blur(14px);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  color:#E6EDF7 !important;
}
html.dark header a,
html.dark header button,
html.dark [role="banner"] a,
html.dark [role="banner"] button{
  color:#E6EDF7;
}
html.dark header a:hover,
html.dark [role="banner"] a:hover{
  color:#67E8F9 !important;
}

/* Liens nav (Accueil/Offres/Contact/FAQ) */
html.dark header [class*="text-sm"][class*="font-medium"],
html.dark [role="banner"] [class*="text-sm"][class*="font-medium"]{
  color:rgba(230,237,247,.82) !important;
}
html.dark header [class*="text-sm"][class*="font-medium"]:hover,
html.dark [role="banner"] [class*="text-sm"][class*="font-medium"]:hover{
  color:#67E8F9 !important;
}

/* Bouton "Se connecter" landing — orange premium en dark */
html.dark header button[class*="bg-"][class*="orange"],
html.dark header a[class*="bg-"][class*="orange"]{
  background:linear-gradient(135deg,#F97316 0%,#EA580C 100%) !important;
  color:#FFFFFF !important;
  border:none !important;
  box-shadow:0 8px 22px -6px rgba(249,115,22,.45) !important;
}

/* Sélecteur de langue (FR FR) en dark */
html.dark header [class*="bg-"][class*="cyan"],
html.dark [role="banner"] [class*="bg-"][class*="cyan"]{
  background:rgba(34,211,238,.12) !important;
  color:#67E8F9 !important;
  border-color:rgba(34,211,238,.28) !important;
}

/* Theme toggle injecté — adaptation dark */
html.dark .idev-theme-toggle{
  border-color:rgba(255,255,255,.14) !important;
  color:#CBD5E1 !important;
}
html.dark .idev-theme-toggle:hover{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(255,255,255,.25) !important;
  color:#F1F5F9 !important;
}

/* Logo IDEV-LOG — version dark si elle existe en image */
html.dark header img[src*="idev-logo"],
html.dark header img[alt*="IDEV"]{
  filter:brightness(1) saturate(1.05);
}

/* Hero text — H1 et paragraphes principaux */
html.dark section#home h1,
html.dark section#home h2,
html.dark .il-hero-anim-1,
html.dark .il-hero-anim-2{
  color:#F1F5F9 !important;
  text-shadow:0 0 40px rgba(34,211,238,.15);
}
html.dark section#home p{color:#94A3B8 !important;}

/* CTA hero "Découvrir nos fonctionnalités" / "Voir l offre" */
html.dark section#home .il-discover-btn,
html.dark section#home a[class*="rounded-2xl"][class*="border"]{
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  color:#E6EDF7 !important;
}
html.dark section#home .il-discover-btn:hover{
  background:rgba(34,211,238,.10) !important;
  border-color:rgba(34,211,238,.45) !important;
  color:#67E8F9 !important;
  box-shadow:0 8px 24px rgba(34,211,238,.18) !important;
}

/* Cards "Identifie / Repère / Analyse / Liste / Synthétise / Propose"
   listées en dark dans l ai-analysis section sur la landing */
html.dark .il-ai-section li,
html.dark .il-ai-section .il-aim-step-body{color:#CBD5E1 !important;}
html.dark .il-ai-section li svg,
html.dark .il-ai-section [class*="check"]{color:#22D3EE !important;}

/* Sections Offres — cartes pricing en dark, bordures + textes */
html.dark section#offers h2,
html.dark section#offers h3{color:#F1F5F9 !important;}
html.dark section#offers .grid > div p,
html.dark section#offers [class*="rounded"][class*="border"] p,
html.dark section#offers [class*="text-slate-"]:not([class*="text-slate-100"]):not([class*="text-slate-50"]){color:#94A3B8 !important;}
html.dark section#offers [class*="text-foreground"],
html.dark section#offers [class*="text-card-foreground"]{color:#F1F5F9 !important;}
html.dark section#offers ul,
html.dark section#offers li{color:#CBD5E1 !important;}
html.dark section#offers svg{color:#22D3EE;}
html.dark section#offers [class*="bg-card"]{background:rgba(255,255,255,.04) !important;}

/* CTA pricing : Payer/Demander un devis/Commander */
html.dark section#offers button,
html.dark section#offers a[class*="rounded"]{
  color:#FFFFFF !important;
}
html.dark section#offers button[class*="bg-primary"],
html.dark section#offers a[class*="bg-primary"]{
  background:linear-gradient(135deg,#06B6D4 0%,#0891B2 100%) !important;
  border:none !important;
  box-shadow:0 8px 22px -6px rgba(8,145,178,.45) !important;
}

/* Footer landing en dark */
html.dark footer.idev-footer-clean,
html.dark #idev-public-footer{
  background:#070D1B !important;
  color:#94A3B8 !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
}
html.dark footer a,
html.dark #idev-public-footer a{color:#CBD5E1 !important;}
html.dark footer a:hover,
html.dark #idev-public-footer a:hover{color:#67E8F9 !important;}

/* Page /faq et /contact : titres et fond global */
html.dark body{
  color:#E6EDF7;
}
html.dark main{
  background:transparent;
}
html.dark h1,
html.dark h2,
html.dark h3,
html.dark h4{color:#F1F5F9 !important;}
html.dark p,
html.dark li,
html.dark span:not([class*="text-"]):not([class*="bg-"]){color:#CBD5E1;}

/* FORM /contact en dark */
html.dark form input,
html.dark form textarea,
html.dark form select{
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:#F1F5F9 !important;
}
html.dark form input::placeholder,
html.dark form textarea::placeholder{color:#64748B !important;}
html.dark form input:focus,
html.dark form textarea:focus,
html.dark form select:focus{
  border-color:rgba(34,211,238,.55) !important;
  box-shadow:0 0 0 3px rgba(34,211,238,.18) !important;
}
html.dark form label{color:#CBD5E1 !important;}
html.dark form button[type="submit"]{
  background:linear-gradient(135deg,#06B6D4 0%,#0891B2 100%) !important;
  color:#FFFFFF !important;
  border:none !important;
}

/* Chat bubble simulé section AI-analysis landing — déjà sombre par
   design, on s assure juste que les variables externes ne le cassent pas */
html.dark .il-aim-bubble,
html.dark .il-aisim-msg{
  background:rgba(255,255,255,.04) !important;
  color:#E6EDF7 !important;
}

/* Corrige body en mode dark : retire tout fond cremeux résiduel */
html.dark body{
  background:linear-gradient(180deg,#060B16 0%,#0A1222 100%) !important;
}
html.dark body::before,
html.dark body::after{
  display:none !important;
}

/* ============================================================
   SECTION ANALYSE IA LANDING — alignement colonnes (point 4)
   v=20260509-aigrid
   Le grid existant (.il-ai-inner) utilise align-items:center
   → les colonnes restent alignées au centre mais avec hauteurs
   différentes, ce qui crée le déséquilibre visuel.
   On force stretch pour les aligner verticalement.
   ============================================================ */
.il-ai-inner{
  align-items:stretch !important;
  grid-template-columns:minmax(0,1fr) minmax(420px,1fr) !important;
}
.il-ai-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  height:100% !important;
}
.il-ai-visual{
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:520px !important;
  max-height:680px !important;
}
.il-ai-visual .il-aim-scene{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.il-ai-visual .il-aim-steps{
  overflow-y:auto;
  min-height:0;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.15) transparent;
}
.il-ai-visual .il-aim-steps::-webkit-scrollbar{width:5px;}
.il-ai-visual .il-aim-steps::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.18);border-radius:9999px;
}
@media (max-width:900px){
  .il-ai-inner{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }
  .il-ai-visual{max-height:none !important;min-height:420px !important;}
  .il-ai-text{justify-content:flex-start !important;}
}

/* DARK : cadre visuel — bordure lisible + fond sombre premium
   (le cadre est déjà foncé par design, on l harmonise au reste) */
html.dark .il-ai-visual{
  background:linear-gradient(180deg,#0B1426 0%,#070D1B 100%) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 32px 80px rgba(0,0,0,.45),0 0 0 1px rgba(34,211,238,.06) !important;
}
html.dark .il-ai-visual::before{
  background:
    radial-gradient(circle at 70% 20%,rgba(34,211,238,.18) 0%,transparent 50%),
    radial-gradient(circle at 20% 80%,rgba(139,92,246,.20) 0%,transparent 50%) !important;
}

/* LIGHT : on garde le fond sombre du cadre (par design) mais on
   adoucit l ombre pour matcher le ton crémeux clair de la section. */
html:not(.dark) .il-ai-visual{
  box-shadow:0 32px 80px rgba(15,23,42,.18),0 0 0 1px rgba(15,23,42,.04) !important;
}

/* ============================================================
   FOND CRÉMEUX SCOPÉ (point 3) — clair-only via :root pseudos
   v=20260509-creamonly
   ============================================================ */

/* Le fond crémeux qui apparaît via body/section pseudo-elements
   ne doit JAMAIS s afficher en dark. Garde-fou final. */
html.dark .il-pf-section::before,
html.dark .il-pf-section::after,
html.dark .il-ai-section::before,
html.dark .il-ai-section::after,
html.dark .il-demo-section::before,
html.dark .il-demo-section::after,
html.dark .il-coverage-section::before,
html.dark .il-coverage-section::after,
html.dark section#offers::before,
html.dark section#offers::after,
html.dark .il-prem-faq::before,
html.dark .il-prem-faq::after,
html.dark .il-prem-contact::before,
html.dark .il-prem-contact::after{
  background:radial-gradient(circle,rgba(34,211,238,.06) 0%,transparent 60%) !important;
  opacity:.6 !important;
}

/* Body globaux — cohérence cream/light vs dark */
html:not(.dark) body{
  background:
    radial-gradient(1200px 600px at 100% -10%, rgba(99,179,237,.08), transparent 60%),
    radial-gradient(900px 500px at -10% 110%, rgba(255,237,213,.55), transparent 60%),
    linear-gradient(180deg,#FAFAF7 0%,#F5F3EE 100%) !important;
}
html.dark body{
  background:
    radial-gradient(1100px 580px at 100% -10%, rgba(34,211,238,.10), transparent 60%),
    radial-gradient(900px 500px at -10% 110%, rgba(99,102,241,.10), transparent 60%),
    linear-gradient(180deg,#060B16 0%,#0A1222 100%) !important;
}

/* Corrections Finales CTA IA et Dark Mode v2 */
.il-ai-cta { width: auto !important; max-width: 280px !important; min-width: 220px !important; height: 68px !important; display: inline-flex !important; justify-content: center !important; text-align: center !important; flex: 0 0 auto !important; aspect-ratio: auto !important; margin: 0 auto !important; padding: 0 24px !important; }
html.dark [class*='bg-slate-50'], html.dark [class*='bg-slate-100'], html.dark [class*='bg-[#F8FAFC]'], html.dark [class*='bg-[#F1F5F9]'], html.dark [class*='bg-[#F9FAFB]'], html.dark [class*='bg-[#FAFAF7]'], html.dark [class*='bg-white'] { background-color: transparent !important; background-image: none !important; }


/* DARK MODE FULL PATCH v3 - FORCING ALL SECTIONS TO DARK */
html.dark .il-pf-section,
html.dark .il-ai-section,
html.dark .il-demo-section,
/* DARK MODE FULL PATCH v4 */
html.dark .il-pf-section, html.dark .il-ai-section, html.dark .il-demo-section, html.dark .il-story-section, html.dark .il-coverage-section, html.dark .il-prem-faq, html.dark .il-prem-contact, html.dark .il-contact-tile, html.dark section#home, html.dark section#offers, html.dark .il-aisim-section, html.dark section { background: linear-gradient(180deg,#0B1426 0%,#070D1B 100%) !important; border-color: rgba(255,255,255,.06) !important; }
html.dark .il-ai-section::before, html.dark .il-ai-section::after, html.dark .il-demo-section::before, html.dark .il-demo-section::after, html.dark .il-story-section::before, html.dark .il-story-section::after, html.dark .il-aisim-section::before, html.dark .il-aisim-section::after { display: none !important; }

/* --- UI/UX PRO MAX DARK MODE REFINEMENTS v2 --- */

/* 1. THEME TOGGLE */
html:not(.dark) .idev-theme-toggle { background: #F8FAFC !important; border-color: #E2E8F0 !important; color: #475569 !important; box-shadow: 0 2px 4px rgba(15,23,42,0.05) !important; }
html:not(.dark) .idev-theme-toggle:hover { background: #F1F5F9 !important; border-color: #CBD5E1 !important; color: #0F172A !important; }
html.dark .idev-theme-toggle { background: rgba(15,23,42,0.8) !important; border-color: rgba(34,211,238,0.2) !important; color: #E6EDF7 !important; box-shadow: 0 0 10px rgba(34,211,238,0.05) !important; }
html.dark .idev-theme-toggle:hover { background: #0F172A !important; border-color: rgba(34,211,238,0.5) !important; box-shadow: 0 0 15px rgba(34,211,238,0.15) !important; transform: scale(1.05); }

/* 2. GLOBAL REACT OVERRIDES FOR PUBLIC PAGES ONLY */
html.dark body.is-public-landing .bg-white { background-color: #0F172A !important; border-color: rgba(255,255,255,0.06) !important; box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important; }
html.dark body.is-public-landing .text-slate-900, html.dark body.is-public-landing .text-slate-800, html.dark body.is-public-landing .text-gray-900, html.dark body.is-public-landing .text-gray-800 { color: #F8FAFC !important; }
html.dark body.is-public-landing .text-slate-600, html.dark body.is-public-landing .text-slate-500, html.dark body.is-public-landing .text-gray-600, html.dark body.is-public-landing .text-gray-500 { color: #94A3B8 !important; }

/* Forms */
html.dark body.is-public-landing input, html.dark body.is-public-landing textarea { background-color: rgba(0,0,0,0.2) !important; border-color: rgba(255,255,255,0.1) !important; color: #F8FAFC !important; }
html.dark body.is-public-landing input::placeholder, html.dark body.is-public-landing textarea::placeholder { color: #64748B !important; }
html.dark body.is-public-landing label { color: #CBD5E1 !important; }

/* Borders & Cards */
html.dark body.is-public-landing .border-slate-200, html.dark body.is-public-landing .border-gray-200 { border-color: rgba(255,255,255,0.08) !important; }
html.dark body.is-public-landing .border-slate-100, html.dark body.is-public-landing .border-gray-100 { border-color: rgba(255,255,255,0.04) !important; }

/* Pricing Exceptions */
html.dark body.is-public-landing .text-3xl, html.dark body.is-public-landing .text-4xl, html.dark body.is-public-landing .font-bold.text-cyan-600, html.dark body.is-public-landing .font-bold.text-cyan-500 { color: #22D3EE !important; }
html.dark body.is-public-landing svg.text-emerald-500, html.dark body.is-public-landing svg.text-green-500 { color: #10B981 !important; }
html.dark body.is-public-landing .border-cyan-500 { border-color: rgba(34,211,238,0.5) !important; box-shadow: 0 0 20px rgba(34,211,238,0.1) !important; }
html.dark body.is-public-landing button.bg-slate-900, html.dark body.is-public-landing button.bg-slate-800 { background-color: #1E293B !important; color: #F8FAFC !important; border: 1px solid rgba(255,255,255,0.1) !important; }
html.dark body.is-public-landing button.bg-slate-900:hover, html.dark body.is-public-landing button.bg-slate-800:hover { background-color: #334155 !important; }

/* 3. HARDCODED SECTIONS */
html.dark .il-aisim-section h2, html.dark .il-ai-title { color: #F8FAFC !important; }
html.dark .il-aisim-section p, html.dark .il-ai-desc { color: #94A3B8 !important; }
html.dark .il-pf-section, html.dark .il-ai-section, html.dark .il-demo-section, html.dark .il-story-section, html.dark .il-coverage-section, html.dark .il-prem-faq, html.dark .il-prem-contact, html.dark .il-contact-tile, html.dark section#home, html.dark section#offers, html.dark .il-aisim-section, html.dark section { background: linear-gradient(180deg,#0B1426 0%,#070D1B 100%) !important; border-color: rgba(255,255,255,.06) !important; }
html.dark .il-ai-section::before, html.dark .il-ai-section::after, html.dark .il-demo-section::before, html.dark .il-demo-section::after, html.dark .il-story-section::before, html.dark .il-story-section::after, html.dark .il-aisim-section::before, html.dark .il-aisim-section::after { display: none !important; }

/* --- UI/UX PRO MAX v6: SAFE STRUCTURAL CSS --- */

/* Theme Toggle Button */
html:not(.dark) .idev-theme-toggle { background: #F8FAFC !important; border-color: #E2E8F0 !important; color: #475569 !important; box-shadow: 0 2px 4px rgba(15,23,42,0.05) !important; }
html:not(.dark) .idev-theme-toggle:hover { background: #F1F5F9 !important; border-color: #CBD5E1 !important; color: #0F172A !important; }
html.dark .idev-theme-toggle { background: rgba(15,23,42,0.8) !important; border-color: rgba(34,211,238,0.2) !important; color: #E6EDF7 !important; box-shadow: 0 0 10px rgba(34,211,238,0.05) !important; }
html.dark .idev-theme-toggle:hover { background: #0F172A !important; border-color: rgba(34,211,238,0.5) !important; box-shadow: 0 0 15px rgba(34,211,238,0.15) !important; transform: scale(1.05); }

/* --- FAQ PAGE --- */
html.dark body.route-faq > #root > div > div { background: #0B1426 !important; }
html.dark body.route-faq .rounded-2xl,
html.dark body.route-faq .rounded-3xl {
  background: #0F172A !important;
  border-color: rgba(255,255,255,0.06) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important;
}
html.dark body.route-faq .rounded-2xl p, html.dark body.route-faq .rounded-2xl h2,
html.dark body.route-faq .rounded-3xl p, html.dark body.route-faq .rounded-3xl h2 { color: #F8FAFC !important; }
html.dark body.route-faq .ms-12.text-sm { color: #94A3B8 !important; }

/* --- CONTACT PAGE --- */
html.dark body.route-contact > #root > div > div { background: #0B1426 !important; }
html.dark body.route-contact .rounded-2xl {
  background: #0F172A !important;
  border-color: rgba(255,255,255,0.06) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important;
}
html.dark body.route-contact section.relative.pt-32 p,
html.dark body.route-contact section.relative.pt-32 h1 { color: #F8FAFC !important; }
html.dark body.route-contact p.font-bold.text-base { color: #F8FAFC !important; }
html.dark body.route-contact .rounded-2xl p { color: #F8FAFC !important; }
html.dark body.route-contact input, html.dark body.route-contact textarea {
  background-color: rgba(0,0,0,0.2) !important;
  border-color: rgba(255,255,255,0.1) !important;
  color: #F8FAFC !important;
}

/* --- HOME / OFFERS SECTIONS --- */
html.dark body.is-public-landing section#offers { background: #0B1426 !important; }
html.dark body.is-public-landing section#offers .rounded-2xl {
  background: #0F172A !important;
  border-color: rgba(255,255,255,0.06) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important;
}
html.dark body.is-public-landing section#offers h2,
html.dark body.is-public-landing section#offers h3,
html.dark body.is-public-landing section#offers p,
html.dark body.is-public-landing section#offers li,
html.dark body.is-public-landing section#offers span.text-4xl,
html.dark body.is-public-landing section#offers span.text-lg { color: #F8FAFC !important; }
html.dark body.is-public-landing section#offers span.line-through { color: #94A3B8 !important; }

/* --- FEATURES SECTION --- */
html.dark body.is-public-landing section.py-20.px-4 { background: #0B1426 !important; }
html.dark body.is-public-landing section.py-20.px-4 .rounded-2xl {
  background: #0F172A !important;
  border-color: rgba(255,255,255,0.06) !important;
}
html.dark body.is-public-landing section.py-20.px-4 p,
html.dark body.is-public-landing section.py-20.px-4 h2 { color: #F8FAFC !important; }
html.dark body.is-public-landing section.py-20.px-4 p.text-xs { color: #22D3EE !important; }

/* Hardcoded transparent background for body level */
html.dark body.is-public-landing { background-color: #0B1426 !important; }


/* ============================================================
   IDEV-LOG — DARK POLISH FINAL v8 (2026-05-09)
   Scope: public pages only via body.is-public-landing / route-*.
   Goal: premium dark UI for FAQ, Contact, Offers, icons, templates
   and the theme toggle, without touching SaaS internals.
   ============================================================ */

/* Public route base — neutralize residual cream only in dark mode */
html.dark body.is-public-landing,
html.dark body.route-home,
html.dark body.route-faq,
html.dark body.route-contact,
html.dark body.route-offers{
  --il-dark-bg:#060B16;
  --il-dark-bg-2:#0A1222;
  --il-dark-card:#0F172A;
  --il-dark-card-2:#111C2F;
  --il-dark-border:rgba(148,163,184,.18);
  --il-dark-border-strong:rgba(34,211,238,.28);
  --il-dark-text:#F8FAFC;
  --il-dark-muted:#A9B7CC;
  --il-dark-soft:#CBD5E1;
  --il-dark-cyan:#67E8F9;
  background:
    radial-gradient(900px 520px at 85% -10%, rgba(34,211,238,.12), transparent 60%),
    radial-gradient(800px 500px at 5% 105%, rgba(139,92,246,.10), transparent 62%),
    linear-gradient(180deg,var(--il-dark-bg) 0%,var(--il-dark-bg-2) 100%) !important;
  color:var(--il-dark-soft) !important;
}
html.dark body.is-public-landing::before,
html.dark body.is-public-landing::after,
html.dark body.route-faq::before,
html.dark body.route-faq::after,
html.dark body.route-contact::before,
html.dark body.route-contact::after{
  opacity:0 !important;
  background:none !important;
}
html.dark body.is-public-landing main,
html.dark body.route-faq main,
html.dark body.route-contact main,
html.dark body.route-offers main{
  background:transparent !important;
  color:var(--il-dark-soft) !important;
}

/* Theme toggle — keep current position, make it visible and premium */
.idev-theme-toggle,
[data-idev-theme-toggle]{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-inline-end:12px !important;
  margin-inline-start:0 !important;
  position:relative !important;
  opacity:1 !important;
  z-index:2 !important;
}
html:not(.dark) .idev-theme-toggle,
html:not(.dark) [data-idev-theme-toggle]{
  background:linear-gradient(180deg,#FFFFFF 0%,#F1F5F9 100%) !important;
  color:#0F172A !important;
  border:1px solid rgba(15,23,42,.16) !important;
  box-shadow:0 8px 22px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.85) !important;
}
html.dark .idev-theme-toggle,
html.dark [data-idev-theme-toggle]{
  background:linear-gradient(180deg,rgba(15,23,42,.96) 0%,rgba(8,15,30,.96) 100%) !important;
  color:#F8FAFC !important;
  border:1px solid rgba(103,232,249,.42) !important;
  box-shadow:0 0 0 3px rgba(34,211,238,.08), 0 10px 28px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark .idev-theme-toggle:hover,
html.dark [data-idev-theme-toggle]:hover{
  background:linear-gradient(180deg,rgba(14,28,50,1) 0%,rgba(10,18,34,1) 100%) !important;
  border-color:rgba(103,232,249,.72) !important;
  color:#67E8F9 !important;
  box-shadow:0 0 0 4px rgba(34,211,238,.14), 0 14px 34px rgba(34,211,238,.12) !important;
}
.idev-theme-toggle svg,
[data-idev-theme-toggle] svg{width:18px !important;height:18px !important;stroke-width:2.35 !important;}

/* Universal public dark typography/canvas */
html.dark body.is-public-landing :is(h1,h2,h3,h4,.il-pf-h2,.il-pfv3-h2,.il-ai-h2,.il-demo-h2,.il-story-h2){
  color:var(--il-dark-text) !important;
  text-shadow:none !important;
}
html.dark body.is-public-landing :is(p,li,.il-pf-sub,.il-pf-desc,.il-ai-sub,.il-demo-sub,.il-story-sub,.il-faq-body,.il-contact-tile-d){
  color:var(--il-dark-muted) !important;
}
html.dark body.is-public-landing :is(section,.il-pf-section,.il-ai-section,.il-demo-section,.il-story-section,.il-coverage-section,.il-aisim-section,section#offers){
  background:
    radial-gradient(800px 420px at 88% 0%, rgba(34,211,238,.08), transparent 58%),
    linear-gradient(180deg,#0A1222 0%,#060B16 100%) !important;
  border-color:rgba(148,163,184,.10) !important;
}
html.dark body.is-public-landing :is(section,.il-pf-section,.il-ai-section,.il-demo-section,.il-story-section,.il-coverage-section,.il-aisim-section)::before,
html.dark body.is-public-landing :is(section,.il-pf-section,.il-ai-section,.il-demo-section,.il-story-section,.il-coverage-section,.il-aisim-section)::after{
  opacity:.35 !important;
  background:radial-gradient(circle,rgba(34,211,238,.09) 0%,transparent 62%) !important;
}

/* Premium icon/check system in dark — replaces ugly white/flashy blocks */
html.dark body.is-public-landing :is(.il-pf-icon,.il-pfv3-icon,.il-story-ic,.il-ai-check,.il-demo-badge-ic,.il-contact-tile-ic,[class*="icon"],[class*="Icon"]),
html.dark body.route-faq :is([class*="bg-cyan-50"],[class*="bg-sky-50"],[class*="bg-blue-50"],[class*="bg-emerald-50"],[class*="bg-green-50"],[class*="bg-yellow-50"],[class*="bg-orange-50"],[class*="bg-violet-50"],[class*="bg-purple-50"]),
html.dark body.route-contact :is([class*="bg-cyan-50"],[class*="bg-sky-50"],[class*="bg-blue-50"],[class*="bg-emerald-50"],[class*="bg-green-50"],[class*="bg-yellow-50"],[class*="bg-orange-50"],[class*="bg-violet-50"],[class*="bg-purple-50"]){
  background:linear-gradient(135deg,rgba(34,211,238,.14),rgba(139,92,246,.10)) !important;
  color:#67E8F9 !important;
  border:1px solid rgba(103,232,249,.22) !important;
  box-shadow:0 10px 26px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
html.dark body.is-public-landing :is(svg.text-emerald-500,svg.text-green-500,.text-emerald-500,.text-green-500){color:#34D399 !important;}
html.dark body.is-public-landing :is(svg.text-cyan-500,svg.text-cyan-600,.text-cyan-500,.text-cyan-600){color:#67E8F9 !important;}
html.dark body.is-public-landing :is(svg.text-yellow-500,svg.text-orange-500,.text-yellow-500,.text-orange-500){color:#FBBF24 !important;}

/* Feature/templates cards dark */
html.dark body.is-public-landing :is(.il-pf-card,.il-pfv3-card,.il-coverage-card,.il-contact-tile,.il-faq-item){
  background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(10,18,34,.92) 100%) !important;
  border:1px solid var(--il-dark-border) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
html.dark body.is-public-landing :is(.il-pf-card,.il-pfv3-card,.il-coverage-card,.il-contact-tile,.il-faq-item):hover{
  border-color:var(--il-dark-border-strong) !important;
  box-shadow:0 22px 56px rgba(0,0,0,.32),0 0 0 1px rgba(34,211,238,.10) !important;
}
html.dark body.is-public-landing :is(.il-pf-title,.il-pfv3-title,.il-contact-tile-v,.il-faq-summary){color:#F8FAFC !important;}
html.dark body.is-public-landing :is(.il-pf-tag,.il-pfv3-tag,.il-ai-badge,.il-demo-eyebrow,.il-ai-eyebrow,.il-pf-eyebrow,.il-pfv3-eyebrow){
  background:rgba(34,211,238,.10) !important;
  color:#67E8F9 !important;
  border-color:rgba(103,232,249,.24) !important;
}

/* Demo section floating badges — no white cards in dark */
html.dark body.is-public-landing .il-demo-badge,
html.dark body.is-public-landing .il-aisim-pill,
html.dark body.is-public-landing .il-aisim-msg,
html.dark body.is-public-landing .il-aisim-side-a,
html.dark body.is-public-landing .il-aisim-c{
  background:rgba(15,23,42,.78) !important;
  color:#E2E8F0 !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 14px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter:blur(14px) saturate(130%);
  -webkit-backdrop-filter:blur(14px) saturate(130%);
}
html.dark body.is-public-landing .il-demo-badge-ic{background:rgba(34,211,238,.12) !important;color:#67E8F9 !important;}
html.dark body.is-public-landing .il-demo-video-wrap{box-shadow:0 34px 90px rgba(0,0,0,.45),0 0 0 1px rgba(103,232,249,.16) !important;}

/* AI CTA stays compact and professional */
.il-ai-cta{
  width:auto !important;
  min-width:220px !important;
  max-width:280px !important;
  height:64px !important;
  min-height:0 !important;
  padding:0 22px !important;
  border-radius:16px !important;
  gap:12px !important;
  flex:0 0 auto !important;
  aspect-ratio:auto !important;
}
.il-ai-cta svg{width:34px !important;height:34px !important;}
@media (max-width:640px){
  .il-ai-cta{width:100% !important;max-width:280px !important;height:58px !important;}
  .il-ai-cta svg{width:28px !important;height:28px !important;}
}

/* Offers / pricing dark — fix all prices, buttons, icons and muted text */
html.dark body.is-public-landing section#offers :is([class*="rounded"],[class*="border"]):not(button):not(a),
html.dark body.route-offers :is([class*="rounded"],[class*="border"]):not(button):not(a){
  background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(9,15,28,.92) 100%) !important;
  border-color:rgba(148,163,184,.18) !important;
}
html.dark body.is-public-landing section#offers :is(h2,h3,h4,.font-bold,.font-extrabold),
html.dark body.route-offers :is(h1,h2,h3,h4,.font-bold,.font-extrabold){color:#F8FAFC !important;}
html.dark body.is-public-landing section#offers :is(p,li,span:not([class*="bg-"]):not([class*="text-cyan"])),
html.dark body.route-offers :is(p,li,span:not([class*="bg-"]):not([class*="text-cyan"])) {color:#B6C3D6 !important;}
html.dark body.is-public-landing section#offers :is(.text-3xl,.text-4xl,.text-5xl,[class*="text-4xl"],[class*="text-5xl"]),
html.dark body.route-offers :is(.text-3xl,.text-4xl,.text-5xl,[class*="text-4xl"],[class*="text-5xl"]){color:#67E8F9 !important;text-shadow:0 0 22px rgba(34,211,238,.12) !important;}
html.dark body.is-public-landing section#offers :is(button,a[class*="rounded"]),
html.dark body.route-offers :is(button,a[class*="rounded"]){
  border-color:rgba(148,163,184,.16) !important;
  color:#F8FAFC !important;
}
html.dark body.is-public-landing section#offers :is(button.bg-cyan-500,button[class*="bg-cyan"],a[class*="bg-cyan"],button[class*="bg-primary"],a[class*="bg-primary"]),
html.dark body.route-offers :is(button.bg-cyan-500,button[class*="bg-cyan"],a[class*="bg-cyan"],button[class*="bg-primary"],a[class*="bg-primary"]){
  background:linear-gradient(135deg,#06B6D4,#2563EB) !important;
  border:0 !important;
  color:#FFFFFF !important;
  box-shadow:0 12px 30px rgba(6,182,212,.24) !important;
}
html.dark body.is-public-landing section#offers :is(svg,[class*="check"],[class*="Check"]){color:#34D399 !important;}

/* FAQ dedicated page dark — real accordion polish */
html.dark body.route-faq,
html.dark body.route-faq main,
html.dark body.route-faq > #root,
html.dark body.route-faq > #root > div{
  background:
    linear-gradient(rgba(148,163,184,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.035) 1px, transparent 1px),
    radial-gradient(900px 420px at 50% -20%, rgba(34,211,238,.10), transparent 65%),
    #060B16 !important;
  background-size:64px 64px,64px 64px,auto,auto !important;
}
html.dark body.route-faq section,
html.dark body.route-faq [class*="pt-32"],
html.dark body.route-faq [class*="py-20"]{background:transparent !important;}
html.dark body.route-faq :is(h1,h2,h3,h4){color:#F8FAFC !important;}
html.dark body.route-faq :is(p,span,li){color:#B6C3D6 !important;}
html.dark body.route-faq :is([class*="rounded-2xl"],[class*="rounded-3xl"],details,button[aria-expanded],.il-faq-item){
  background:linear-gradient(180deg,rgba(15,23,42,.94) 0%,rgba(9,15,28,.94) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  color:#F8FAFC !important;
  box-shadow:0 16px 42px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
html.dark body.route-faq :is([class*="rounded-2xl"],[class*="rounded-3xl"],details,button[aria-expanded],.il-faq-item):hover{
  border-color:rgba(103,232,249,.32) !important;
  background:linear-gradient(180deg,rgba(18,30,51,.96) 0%,rgba(10,18,34,.96) 100%) !important;
}
html.dark body.route-faq :is([class*="rounded-2xl"],[class*="rounded-3xl"],details,button[aria-expanded],.il-faq-item) :is(h3,h4,.font-semibold,.font-bold){color:#F8FAFC !important;}
html.dark body.route-faq :is([class*="rounded-2xl"],[class*="rounded-3xl"],details,button[aria-expanded],.il-faq-item) :is(p,span:not([class*="text-cyan"]),div){color:#A9B7CC !important;}
html.dark body.route-faq :is(svg,[class*="chevron"],[class*="Chevron"]){color:#67E8F9 !important;}
html.dark body.route-faq :is([class*="bg-cyan-50"],[class*="bg-blue-50"]){background:rgba(34,211,238,.10) !important;color:#67E8F9 !important;border-color:rgba(103,232,249,.18) !important;}

/* Contact dedicated page dark — cards + form inputs premium */
html.dark body.route-contact,
html.dark body.route-contact main,
html.dark body.route-contact > #root,
html.dark body.route-contact > #root > div{
  background:
    linear-gradient(rgba(148,163,184,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.035) 1px, transparent 1px),
    radial-gradient(980px 450px at 50% -20%, rgba(34,211,238,.10), transparent 65%),
    #060B16 !important;
  background-size:64px 64px,64px 64px,auto,auto !important;
}
html.dark body.route-contact section,
html.dark body.route-contact [class*="pt-32"],
html.dark body.route-contact [class*="py-20"]{background:transparent !important;}
html.dark body.route-contact :is(h1,h2,h3,h4){color:#F8FAFC !important;}
html.dark body.route-contact :is(p,span,li,label){color:#B6C3D6 !important;}
html.dark body.route-contact :is([class*="rounded-2xl"],[class*="rounded-3xl"],form,.il-contact-card,.il-contact-tile){
  background:linear-gradient(180deg,rgba(15,23,42,.94) 0%,rgba(9,15,28,.94) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 16px 42px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.045) !important;
  color:#F8FAFC !important;
}
html.dark body.route-contact :is([class*="rounded-2xl"],[class*="rounded-3xl"],form,.il-contact-card,.il-contact-tile):hover{
  border-color:rgba(103,232,249,.28) !important;
}
html.dark body.route-contact :is(input,textarea,select){
  background:rgba(2,6,23,.52) !important;
  color:#F8FAFC !important;
  border:1px solid rgba(148,163,184,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
html.dark body.route-contact :is(input,textarea,select)::placeholder{color:#7C8AA1 !important;opacity:1 !important;}
html.dark body.route-contact :is(input,textarea,select):focus{
  border-color:rgba(103,232,249,.62) !important;
  outline:0 !important;
  box-shadow:0 0 0 4px rgba(34,211,238,.12), inset 0 1px 0 rgba(255,255,255,.035) !important;
}
html.dark body.route-contact :is(button[type="submit"],button[class*="bg-green"],button[class*="bg-emerald"],a[class*="whatsapp"],a[href*="wa.me"]){
  background:linear-gradient(135deg,#10B981,#059669) !important;
  color:#FFFFFF !important;
  border:0 !important;
  box-shadow:0 12px 30px rgba(16,185,129,.22) !important;
}
html.dark body.route-contact :is(.font-bold,.font-semibold){color:#F8FAFC !important;}
html.dark body.route-contact :is([class*="text-slate"],[class*="text-gray"]){color:#B6C3D6 !important;}
html.dark body.route-contact :is([class*="bg-green-50"],[class*="bg-emerald-50"]){background:rgba(16,185,129,.12) !important;color:#34D399 !important;border-color:rgba(52,211,153,.20) !important;}
html.dark body.route-contact :is([class*="bg-blue-50"],[class*="bg-cyan-50"]){background:rgba(34,211,238,.12) !important;color:#67E8F9 !important;border-color:rgba(103,232,249,.20) !important;}
html.dark body.route-contact :is([class*="bg-yellow-50"],[class*="bg-orange-50"]){background:rgba(251,191,36,.12) !important;color:#FBBF24 !important;border-color:rgba(251,191,36,.22) !important;}

/* Specific React utility overrides on public pages only */
html.dark body.is-public-landing :is(.bg-white,.bg-slate-50,.bg-slate-100,.bg-gray-50,.bg-gray-100,[class*="bg-[#F8FAFC]"],[class*="bg-[#F1F5F9]"],[class*="bg-[#FAFAF7]"]){
  background-color:rgba(15,23,42,.88) !important;
  background-image:none !important;
}
html.dark body.is-public-landing :is(.text-slate-900,.text-slate-800,.text-gray-900,.text-gray-800,.text-black){color:#F8FAFC !important;}
html.dark body.is-public-landing :is(.text-slate-700,.text-slate-600,.text-slate-500,.text-gray-700,.text-gray-600,.text-gray-500){color:#A9B7CC !important;}
html.dark body.is-public-landing :is(.border-slate-200,.border-gray-200,.border-slate-100,.border-gray-100){border-color:rgba(148,163,184,.18) !important;}

/* ============================================================
   IDEV-LOG — Dark polish v9 focused fix
   Scope: FAQ / Contact / Offres / Feature coverage cards
   Goal: premium readable cards, icons and buttons in dark mode.
   ============================================================ */

/* ---------- Shared premium dark surface tokens ---------- */
html.dark body.is-public-landing{
  --il-v9-surface:rgba(12,20,36,.94);
  --il-v9-surface-2:rgba(15,26,46,.96);
  --il-v9-surface-3:rgba(20,34,58,.96);
  --il-v9-border:rgba(148,163,184,.18);
  --il-v9-border-strong:rgba(103,232,249,.34);
  --il-v9-text:#F8FAFC;
  --il-v9-muted:#B8C4D6;
  --il-v9-soft:#8EA0B8;
  --il-v9-cyan:#67E8F9;
  --il-v9-green:#34D399;
  --il-v9-amber:#FBBF24;
  --il-v9-violet:#C4B5FD;
}

/* ---------- Make feature/coverage check icons premium, not cheap blocks ---------- */
html.dark body.is-public-landing .il-coverage-card{
  background:linear-gradient(180deg,rgba(14,24,42,.94) 0%,rgba(8,15,29,.95) 100%) !important;
  border:1px solid rgba(148,163,184,.16) !important;
  box-shadow:0 22px 58px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
html.dark body.is-public-landing .il-coverage-card:hover{
  border-color:rgba(103,232,249,.32) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.36),0 0 0 1px rgba(34,211,238,.10), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
html.dark body.is-public-landing .il-coverage-card h3{
  color:#F8FAFC !important;
  letter-spacing:.06em !important;
}
html.dark body.is-public-landing .il-coverage-list li{
  color:#D7E0EE !important;
  font-weight:650 !important;
  letter-spacing:-.01em !important;
}
html.dark body.is-public-landing .il-coverage-check{
  width:19px !important;
  height:19px !important;
  border-radius:6px !important;
  background:linear-gradient(135deg,rgba(103,232,249,.18),rgba(34,211,238,.09)) !important;
  color:#A5F3FC !important;
  border:1px solid rgba(103,232,249,.24) !important;
  box-shadow:0 6px 16px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.is-public-landing .il-coverage-check svg{
  width:12px !important;
  height:12px !important;
  stroke-width:3 !important;
}

/* ---------- FAQ page: force actual white accordion rows into dark premium cards ---------- */
html.dark body.route-faq main :is(.bg-white,[class*="bg-white"],.bg-gray-50,.bg-slate-50,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"],button[class*="rounded"],div[class*="shadow"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(180deg,rgba(15,25,43,.96) 0%,rgba(8,15,29,.97) 100%) !important;
  color:#F8FAFC !important;
  border-color:rgba(148,163,184,.18) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
html.dark body.route-faq main :is(button[class*="rounded"],details,.il-faq-item):hover{
  background:linear-gradient(180deg,rgba(20,34,58,.98) 0%,rgba(10,18,34,.98) 100%) !important;
  border-color:rgba(103,232,249,.34) !important;
  box-shadow:0 22px 56px rgba(0,0,0,.36),0 0 0 1px rgba(34,211,238,.08), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
html.dark body.route-faq main :is(button,summary,.il-faq-summary) :is(.font-medium,.font-semibold,.font-bold,h3,h4,span,p),
html.dark body.route-faq main :is(button,summary,.il-faq-summary){
  color:#F8FAFC !important;
}
html.dark body.route-faq main :is(.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600,p,li){
  color:#B8C4D6 !important;
}
html.dark body.route-faq main :is([class*="bg-cyan-50"],[class*="bg-sky-50"],[class*="bg-blue-50"],[class*="bg-teal-50"],[class*="bg-indigo-50"],[class*="bg-violet-50"],[class*="bg-purple-50"]){
  background:linear-gradient(135deg,rgba(34,211,238,.14),rgba(99,102,241,.10)) !important;
  color:#67E8F9 !important;
  border:1px solid rgba(103,232,249,.22) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.route-faq main :is(svg,[class*="Chevron"],[class*="chevron"]){
  color:#67E8F9 !important;
  opacity:1 !important;
  filter:drop-shadow(0 0 8px rgba(34,211,238,.18)) !important;
}
html.dark body.route-faq main :is(.border,.border-slate-200,.border-gray-200,[class*="border-slate"],[class*="border-gray"]){
  border-color:rgba(148,163,184,.18) !important;
}

/* ---------- Contact page: premium dark cards, icons, inputs and buttons ---------- */
html.dark body.route-contact main :is(.bg-white,[class*="bg-white"],.bg-gray-50,.bg-slate-50,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"],form,div[class*="shadow"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(180deg,rgba(15,25,43,.96) 0%,rgba(8,15,29,.97) 100%) !important;
  color:#F8FAFC !important;
  border-color:rgba(148,163,184,.18) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
html.dark body.route-contact main :is([class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"],form):hover{
  border-color:rgba(103,232,249,.30) !important;
}
html.dark body.route-contact main :is([class*="bg-green-50"],[class*="bg-emerald-50"]){
  background:linear-gradient(135deg,rgba(16,185,129,.15),rgba(5,150,105,.08)) !important;
  color:#34D399 !important;
  border:1px solid rgba(52,211,153,.24) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.route-contact main :is([class*="bg-blue-50"],[class*="bg-cyan-50"],[class*="bg-sky-50"]){
  background:linear-gradient(135deg,rgba(34,211,238,.14),rgba(37,99,235,.08)) !important;
  color:#67E8F9 !important;
  border:1px solid rgba(103,232,249,.22) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.route-contact main :is([class*="bg-yellow-50"],[class*="bg-amber-50"],[class*="bg-orange-50"]){
  background:linear-gradient(135deg,rgba(251,191,36,.15),rgba(245,158,11,.08)) !important;
  color:#FBBF24 !important;
  border:1px solid rgba(251,191,36,.25) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.route-contact main :is(input,textarea,select){
  background:rgba(2,8,23,.72) !important;
  color:#F8FAFC !important;
  border:1px solid rgba(148,163,184,.24) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 0 0 1px rgba(0,0,0,.12) !important;
}
html.dark body.route-contact main :is(input,textarea,select)::placeholder{
  color:#91A0B8 !important;
  opacity:1 !important;
}
html.dark body.route-contact main :is(button[type="submit"],button[class*="bg-green"],button[class*="bg-emerald"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#10B981 0%,#059669 100%) !important;
  color:#FFFFFF !important;
  border:1px solid rgba(52,211,153,.22) !important;
  box-shadow:0 14px 34px rgba(16,185,129,.24), inset 0 1px 0 rgba(255,255,255,.14) !important;
  opacity:1 !important;
}
html.dark body.route-contact main :is(button[type="submit"],button[class*="bg-green"],button[class*="bg-emerald"]):hover{
  filter:brightness(1.08) saturate(1.08) !important;
  box-shadow:0 18px 42px rgba(16,185,129,.30), inset 0 1px 0 rgba(255,255,255,.16) !important;
}
html.dark body.route-contact main :is(a[class*="bg-blue"],a[class*="bg-pink"],a[class*="bg-green"],button[class*="bg-blue"],button[class*="bg-pink"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  color:#FFFFFF !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.14) !important;
  opacity:1 !important;
}
html.dark body.route-contact main :is(h2,h3,h4,.font-bold,.font-semibold){color:#F8FAFC !important;}
html.dark body.route-contact main :is(p,span,label,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600){color:#B8C4D6 !important;}

/* ---------- Offers: stronger premium card polish, readable prices/buttons, elegant icons ---------- */
html.dark body.is-public-landing section#offers :is(.grid > div,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"]):not(button):not(a){
  background:linear-gradient(180deg,rgba(15,25,43,.96) 0%,rgba(8,15,29,.97) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
html.dark body.is-public-landing section#offers :is(.grid > div,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"]):not(button):not(a):hover{
  border-color:rgba(103,232,249,.32) !important;
  box-shadow:0 26px 64px rgba(0,0,0,.38),0 0 0 1px rgba(34,211,238,.10), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
html.dark body.is-public-landing section#offers :is(h3,h4,.font-bold,.font-extrabold){
  color:#F8FAFC !important;
}
html.dark body.is-public-landing section#offers :is(p,li,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600){
  color:#B8C4D6 !important;
}
html.dark body.is-public-landing section#offers :is([class*="text-3xl"],[class*="text-4xl"],[class*="text-5xl"],.text-3xl,.text-4xl,.text-5xl){
  color:#E8F7FF !important;
  text-shadow:0 0 24px rgba(34,211,238,.12) !important;
}
html.dark body.is-public-landing section#offers :is([class*="w-8"][class*="h-8"],[class*="w-10"][class*="h-10"],[class*="w-12"][class*="h-12"]):not(button):not(a){
  background:linear-gradient(135deg,rgba(34,211,238,.13),rgba(139,92,246,.09)) !important;
  color:#67E8F9 !important;
  border:1px solid rgba(103,232,249,.22) !important;
  border-radius:14px !important;
  box-shadow:0 10px 26px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.is-public-landing section#offers li :is(svg,[class*="Check"],[class*="check"]){
  color:#34D399 !important;
  filter:drop-shadow(0 0 6px rgba(52,211,153,.18)) !important;
}
html.dark body.is-public-landing section#offers :is(button,a[class*="rounded"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  min-height:44px !important;
  color:#F8FAFC !important;
  border-color:rgba(148,163,184,.16) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.07) !important;
}
html.dark body.is-public-landing section#offers :is(button[class*="bg-cyan"],a[class*="bg-cyan"],button[class*="bg-primary"],a[class*="bg-primary"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#06B6D4 0%,#2563EB 100%) !important;
  color:#FFFFFF !important;
  box-shadow:0 16px 38px rgba(6,182,212,.26), inset 0 1px 0 rgba(255,255,255,.16) !important;
}
html.dark body.is-public-landing section#offers :is(a[href*="wa.me"],button[class*="green"],a[class*="green"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,rgba(16,185,129,.20),rgba(5,150,105,.16)) !important;
  color:#D1FAE5 !important;
  border:1px solid rgba(52,211,153,.28) !important;
}

/* ---------- Light/dark visual hierarchy for button content inside public cards ---------- */
html.dark body.is-public-landing :is(.il-demo-badge,.il-contact-tile,.il-faq-item,.il-coverage-card,section#offers .grid > div) :is(strong,b,.font-bold,.font-semibold){
  color:#F8FAFC !important;
}
html.dark body.is-public-landing :is(.il-demo-badge,.il-contact-tile,.il-faq-item,.il-coverage-card,section#offers .grid > div) :is(svg){
  stroke-width:2.15 !important;
}


/* ============================================================
   IDEV-LOG — Dark polish v10 FINAL TARGETED
   Focus demandé: FAQ rows, Contact form/buttons, Offers buttons/icons,
   coverage check icons, theme toggle animation.
   This block is intentionally last: stronger selectors, public pages only.
   ============================================================ */

@keyframes il-theme-soft-pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(34,211,238,.0),0 10px 26px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.10)}
  50%{box-shadow:0 0 0 5px rgba(34,211,238,.10),0 14px 34px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.14)}
}
@keyframes il-theme-sunspin{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(18deg) scale(1.08)}100%{transform:rotate(0deg) scale(1)}}
@keyframes il-theme-moonfloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-1px) rotate(-8deg)}}

/* Theme button: validated position, better visibility + premium animation only */
body.is-public-landing .idev-theme-toggle,
body.is-public-landing [data-idev-theme-toggle]{
  position:relative !important;
  isolation:isolate !important;
  width:40px !important;height:40px !important;
  border-radius:999px !important;
  overflow:hidden !important;
  border:1px solid rgba(34,211,238,.34) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.90),rgba(236,254,255,.72)) !important;
  color:#0891B2 !important;
  box-shadow:0 10px 24px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.90) !important;
  transition:transform .22s var(--il-ease),border-color .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease !important;
}
body.is-public-landing .idev-theme-toggle::before,
body.is-public-landing [data-idev-theme-toggle]::before{
  content:"";position:absolute;inset:5px;border-radius:999px;z-index:-1;
  background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.85),transparent 58%);
  opacity:.65;pointer-events:none;
}
body.is-public-landing .idev-theme-toggle:hover,
body.is-public-landing [data-idev-theme-toggle]:hover{
  transform:translateY(-1px) scale(1.04) !important;
  border-color:rgba(34,211,238,.62) !important;
  box-shadow:0 14px 34px rgba(6,182,212,.18),0 0 0 4px rgba(34,211,238,.12),inset 0 1px 0 rgba(255,255,255,.9) !important;
}
body.is-public-landing .idev-theme-toggle:active,
body.is-public-landing [data-idev-theme-toggle]:active{transform:translateY(0) scale(.94) !important;}
body.is-public-landing .idev-theme-toggle .idev-icon-sun,
body.is-public-landing [data-idev-theme-toggle] .idev-icon-sun{animation:il-theme-sunspin 3.8s ease-in-out infinite;}
body.is-public-landing .idev-theme-toggle .idev-icon-moon,
body.is-public-landing [data-idev-theme-toggle] .idev-icon-moon{animation:il-theme-moonfloat 3.6s ease-in-out infinite;}
html.dark body.is-public-landing .idev-theme-toggle,
html.dark body.is-public-landing [data-idev-theme-toggle]{
  background:linear-gradient(135deg,rgba(8,18,34,.96),rgba(12,29,51,.90)) !important;
  border-color:rgba(103,232,249,.46) !important;
  color:#A5F3FC !important;
  animation:il-theme-soft-pulse 4.2s ease-in-out infinite !important;
}
html.dark body.is-public-landing .idev-theme-toggle:hover,
html.dark body.is-public-landing [data-idev-theme-toggle]:hover{
  color:#FFFFFF !important;
  border-color:rgba(165,243,252,.72) !important;
  box-shadow:0 16px 38px rgba(6,182,212,.24),0 0 0 5px rgba(34,211,238,.14),inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* Shared page dark canvas: remove flat/cream leftovers */
html.dark body.route-faq,
html.dark body.route-contact,
html.dark body.route-offers,
html.dark body.route-home{
  background:#060B16 !important;
}
html.dark body.is-public-landing main{
  background:
    radial-gradient(900px 430px at 50% -80px,rgba(34,211,238,.09),transparent 64%),
    radial-gradient(760px 460px at 88% 16%,rgba(124,58,237,.07),transparent 62%),
    #060B16 !important;
}

/* ============================================================
   FAQ — replace mediocre white bars by premium accordion cards
   ============================================================ */
html.dark body.route-faq main section,
html.dark body.route-faq main [class*="py-"],
html.dark body.route-faq main [class*="pt-"]{
  background:transparent !important;
}
html.dark body.route-faq main :is(h1,h2){
  color:#F8FAFC !important;
  text-shadow:0 18px 60px rgba(34,211,238,.12) !important;
}
html.dark body.route-faq main :is(p,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600){color:#B9C7DA !important;}

/* Actual FAQ rows are often buttons. Force them to dark glass cards. */
html.dark body.route-faq main :is(button,details,.il-faq-item):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  position:relative !important;
  min-height:64px !important;
  border-radius:18px !important;
  padding:18px 22px !important;
  background:
    linear-gradient(180deg,rgba(17,28,49,.98) 0%,rgba(8,15,29,.98) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  color:#F8FAFC !important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.055) !important;
  opacity:1 !important;
  transition:transform .22s var(--il-ease),border-color .22s ease,box-shadow .22s ease,background .22s ease !important;
}
html.dark body.route-faq main :is(button,details,.il-faq-item):not(.idev-theme-toggle):not([data-idev-theme-toggle])::before{
  content:"?" !important;
  display:inline-flex !important;align-items:center !important;justify-content:center !important;
  width:28px !important;height:28px !important;border-radius:10px !important;
  margin-right:14px !important;flex:0 0 28px !important;
  background:linear-gradient(135deg,rgba(34,211,238,.16),rgba(59,130,246,.10)) !important;
  border:1px solid rgba(103,232,249,.22) !important;
  color:#67E8F9 !important;
  font:800 13px/1 var(--il-font) !important;
  box-shadow:0 10px 26px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.route-faq main :is(button,details,.il-faq-item):not(.idev-theme-toggle):not([data-idev-theme-toggle]):hover{
  transform:translateY(-2px) !important;
  background:linear-gradient(180deg,rgba(22,38,65,.99) 0%,rgba(10,20,38,.99) 100%) !important;
  border-color:rgba(103,232,249,.42) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.38),0 0 0 1px rgba(34,211,238,.12),inset 0 1px 0 rgba(255,255,255,.075) !important;
}
html.dark body.route-faq main :is(button,summary,.il-faq-summary):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  display:flex !important;align-items:center !important;gap:0 !important;
  font-weight:750 !important;letter-spacing:-.015em !important;
  color:#F8FAFC !important;
}
html.dark body.route-faq main :is(button,summary,.il-faq-summary) :is(span,p,strong,b,.font-semibold,.font-medium,.font-bold){
  color:#F8FAFC !important;
}
html.dark body.route-faq main :is(button,summary,.il-faq-summary) svg,
html.dark body.route-faq main :is(.il-faq-summary)::after{
  color:#67E8F9 !important;
  filter:drop-shadow(0 0 10px rgba(34,211,238,.24)) !important;
  opacity:1 !important;
}
html.dark body.route-faq main :is(details[open],.il-faq-item[open]){
  border-color:rgba(103,232,249,.44) !important;
  background:linear-gradient(180deg,rgba(18,33,57,.99),rgba(8,18,34,.99)) !important;
}
html.dark body.route-faq main :is(.il-faq-body,[data-state="open"],.accordion-content,p[class*="leading"]){
  color:#B9C7DA !important;
  line-height:1.75 !important;
}
html.dark body.route-faq main > section:last-child,
html.dark body.route-faq main :is([class*="max-w"][class*="rounded"],div[class*="rounded-3xl"]):has(h2){
  background:linear-gradient(180deg,rgba(14,24,42,.96),rgba(8,15,29,.98)) !important;
  border:1px solid rgba(148,163,184,.16) !important;
  box-shadow:0 22px 60px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.05) !important;
}

/* ============================================================
   Contact — cleaner cards, social buttons and send button
   ============================================================ */
html.dark body.route-contact main section,
html.dark body.route-contact main [class*="py-"],
html.dark body.route-contact main [class*="pt-"]{background:transparent !important;}
html.dark body.route-contact main :is(h1,h2,h3){color:#F8FAFC !important;}
html.dark body.route-contact main :is(p,span,label,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600){color:#B9C7DA !important;}

html.dark body.route-contact main :is(.grid > div,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"],form):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(180deg,rgba(15,25,43,.96) 0%,rgba(8,15,29,.98) 100%) !important;
  border:1px solid rgba(148,163,184,.17) !important;
  color:#F8FAFC !important;
  box-shadow:0 20px 52px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.055) !important;
}
html.dark body.route-contact main :is(.grid > div,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"],form):hover{
  border-color:rgba(103,232,249,.32) !important;
}
html.dark body.route-contact main :is(input,textarea,select){
  background:rgba(3,9,23,.78) !important;
  color:#F8FAFC !important;
  border:1px solid rgba(148,163,184,.24) !important;
  border-radius:12px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 0 0 1px rgba(0,0,0,.18) !important;
  opacity:1 !important;
}
html.dark body.route-contact main :is(input,textarea,select)::placeholder{color:#99A8BD !important;opacity:1 !important;}
html.dark body.route-contact main :is(input,textarea,select):focus{
  border-color:rgba(103,232,249,.64) !important;
  box-shadow:0 0 0 4px rgba(34,211,238,.13),inset 0 1px 0 rgba(255,255,255,.06) !important;
}
html.dark body.route-contact main button:not(.idev-theme-toggle):not([data-idev-theme-toggle]),
html.dark body.route-contact main a[class*="rounded"]:not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  min-height:46px !important;
  border-radius:14px !important;
  font-weight:800 !important;
  color:#FFFFFF !important;
  opacity:1 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.14) !important;
  transition:transform .22s var(--il-ease),filter .22s ease,box-shadow .22s ease !important;
}
html.dark body.route-contact main button:not(.idev-theme-toggle):not([data-idev-theme-toggle]):hover,
html.dark body.route-contact main a[class*="rounded"]:not(.idev-theme-toggle):not([data-idev-theme-toggle]):hover{
  transform:translateY(-2px) !important;filter:brightness(1.08) saturate(1.08) !important;
}
html.dark body.route-contact main :is(button[type="submit"],button[class*="green"],a[class*="green"],a[href*="wa.me"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#10B981 0%,#047857 100%) !important;
  color:#FFFFFF !important;
  border-color:rgba(52,211,153,.30) !important;
  box-shadow:0 16px 38px rgba(16,185,129,.24),inset 0 1px 0 rgba(255,255,255,.18) !important;
}
html.dark body.route-contact main :is(a[class*="blue"],button[class*="blue"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#38BDF8 0%,#2563EB 100%) !important;
}
html.dark body.route-contact main :is(a[class*="pink"],button[class*="pink"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#F0ABFC 0%,#DB2777 100%) !important;
}
html.dark body.route-contact main :is([class*="bg-green-50"],[class*="bg-emerald-50"],[class*="bg-blue-50"],[class*="bg-cyan-50"],[class*="bg-yellow-50"],[class*="bg-orange-50"]){
  background:linear-gradient(135deg,rgba(34,211,238,.12),rgba(15,23,42,.38)) !important;
  border:1px solid rgba(103,232,249,.18) !important;
  color:#67E8F9 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08) !important;
}

/* ============================================================
   Offers — premium readable buttons and icons
   ============================================================ */
html.dark body.is-public-landing section#offers :is(.grid > div,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"]):not(button):not(a){
  background:linear-gradient(180deg,rgba(16,27,48,.97) 0%,rgba(8,15,29,.98) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  color:#F8FAFC !important;
  box-shadow:0 22px 56px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.055) !important;
}
html.dark body.is-public-landing section#offers :is(.grid > div,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"]):not(button):not(a):hover{
  border-color:rgba(103,232,249,.36) !important;
  box-shadow:0 30px 72px rgba(0,0,0,.42),0 0 0 1px rgba(34,211,238,.13),inset 0 1px 0 rgba(255,255,255,.07) !important;
}
html.dark body.is-public-landing section#offers :is(h2,h3,h4,.font-bold,.font-extrabold,.font-semibold){color:#F8FAFC !important;}
html.dark body.is-public-landing section#offers :is(p,li,span,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600){color:#BDCADB !important;}
html.dark body.is-public-landing section#offers :is([class*="text-3xl"],[class*="text-4xl"],[class*="text-5xl"]){
  color:#EAFBFF !important;
  text-shadow:0 0 26px rgba(34,211,238,.16) !important;
}
html.dark body.is-public-landing section#offers :is([class*="w-8"][class*="h-8"],[class*="w-10"][class*="h-10"],[class*="w-12"][class*="h-12"]):not(button):not(a){
  background:linear-gradient(135deg,rgba(34,211,238,.16),rgba(99,102,241,.10)) !important;
  color:#67E8F9 !important;
  border:1px solid rgba(103,232,249,.25) !important;
  border-radius:14px !important;
  box-shadow:0 10px 26px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.09) !important;
}
html.dark body.is-public-landing section#offers li svg,
html.dark body.is-public-landing section#offers li :is([class*="Check"],[class*="check"]){
  color:#34D399 !important;
  stroke-width:2.7 !important;
  filter:drop-shadow(0 0 7px rgba(52,211,153,.22)) !important;
}
html.dark body.is-public-landing section#offers :is(button,a[class*="rounded"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  min-height:46px !important;
  border-radius:14px !important;
  font-weight:850 !important;
  letter-spacing:-.01em !important;
  color:#FFFFFF !important;
  opacity:1 !important;
  background:linear-gradient(135deg,#312E81 0%,#6D28D9 100%) !important;
  border:1px solid rgba(196,181,253,.20) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.13) !important;
  transition:transform .22s var(--il-ease),filter .22s ease,box-shadow .22s ease !important;
}
html.dark body.is-public-landing section#offers :is(button,a[class*="rounded"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]):hover{
  transform:translateY(-2px) !important;
  filter:brightness(1.10) saturate(1.08) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.38),0 0 0 4px rgba(124,58,237,.12),inset 0 1px 0 rgba(255,255,255,.16) !important;
}
html.dark body.is-public-landing section#offers :is(button[class*="cyan"],button[class*="blue"],a[class*="cyan"],a[class*="blue"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#06B6D4 0%,#2563EB 100%) !important;
  border-color:rgba(103,232,249,.30) !important;
  box-shadow:0 16px 40px rgba(6,182,212,.26),inset 0 1px 0 rgba(255,255,255,.17) !important;
}
html.dark body.is-public-landing section#offers :is(a[href*="wa.me"],a[href*="whatsapp"],button[class*="green"],a[class*="green"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#10B981 0%,#047857 100%) !important;
  color:#FFFFFF !important;
  border-color:rgba(52,211,153,.28) !important;
  box-shadow:0 15px 36px rgba(16,185,129,.22),inset 0 1px 0 rgba(255,255,255,.15) !important;
}
html.dark body.is-public-landing section#offers :is([class*="badge"],[class*="Badge"],[class*="rounded-full"]){
  color:#E2E8F0 !important;
  border-color:rgba(148,163,184,.22) !important;
}

/* ============================================================
   Coverage / feature checklist boxes — less ugly, cleaner icons
   ============================================================ */
html.dark body.is-public-landing :is(.il-coverage-card,.il-pfv3-card,.il-pf-card){
  background:linear-gradient(180deg,rgba(16,27,48,.96),rgba(8,15,29,.98)) !important;
  border-color:rgba(148,163,184,.17) !important;
  box-shadow:0 22px 56px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.05) !important;
}
html.dark body.is-public-landing :is(.il-coverage-card,.il-pfv3-card,.il-pf-card) :is(h3,h4,.il-pf-title,.il-pfv3-title){color:#F8FAFC !important;}
html.dark body.is-public-landing :is(.il-coverage-card,.il-pfv3-card,.il-pf-card) :is(p,li,.il-pf-desc,.il-pfv3-desc){color:#B9C7DA !important;}
html.dark body.is-public-landing .il-coverage-list li{display:flex !important;align-items:center !important;gap:12px !important;color:#DCE6F3 !important;}
html.dark body.is-public-landing .il-coverage-list li > :first-child,
html.dark body.is-public-landing .il-coverage-check{
  width:18px !important;height:18px !important;min-width:18px !important;
  border-radius:6px !important;
  background:linear-gradient(135deg,rgba(103,232,249,.20),rgba(34,211,238,.08)) !important;
  border:1px solid rgba(103,232,249,.25) !important;
  color:#A5F3FC !important;
  box-shadow:0 8px 18px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
html.dark body.is-public-landing .il-coverage-list li > :first-child svg,
html.dark body.is-public-landing .il-coverage-check svg{width:11px !important;height:11px !important;stroke-width:3 !important;}
html.dark body.is-public-landing :is(.il-pf-icon,.il-pfv3-icon,.il-demo-badge-ic,.il-ai-check){
  background:linear-gradient(135deg,rgba(34,211,238,.16),rgba(99,102,241,.10)) !important;
  border:1px solid rgba(103,232,249,.22) !important;
  color:#A5F3FC !important;
  box-shadow:0 10px 24px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08) !important;
}

/* ============================================================
   IDEV-LOG — DARK POLISH v11 FINAL
   Cible uniquement les pages publiques en dark mode.
   Objectif : FAQ lisible, Contact premium, Offres boutons nickel,
   réseaux sociaux lisibles, icônes harmonisées.
   ============================================================ */

html.dark body.is-public-landing{
  --idev-dk-bg:#070D1B;
  --idev-dk-panel:#0C1528;
  --idev-dk-panel-2:#101B31;
  --idev-dk-panel-3:#13223B;
  --idev-dk-line:rgba(148,163,184,.22);
  --idev-dk-line-strong:rgba(103,232,249,.28);
  --idev-dk-text:#F8FAFC;
  --idev-dk-soft:#CBD5E1;
  --idev-dk-muted:#93A4BA;
  --idev-dk-cyan:#67E8F9;
  --idev-dk-blue:#38BDF8;
  --idev-dk-green:#34D399;
}

html.dark body.route-faq,
html.dark body.route-contact,
html.dark body.route-offers,
html.dark body.route-home{
  background:
    radial-gradient(900px 520px at 50% 0%,rgba(34,211,238,.075),transparent 62%),
    radial-gradient(820px 520px at 105% 20%,rgba(99,102,241,.07),transparent 65%),
    linear-gradient(180deg,#050A14 0%,#081020 42%,#050A14 100%) !important;
  color:var(--idev-dk-text) !important;
}

/* ------------------ FAQ: tuer les cartes blanches ------------------ */
html.dark body.route-faq main,
html.dark body.route-faq section{
  background:transparent !important;
  color:var(--idev-dk-text) !important;
}

html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item, main [class*="rounded"][class*="border"], section [class*="rounded"][class*="border"], main [class*="bg-white"], section [class*="bg-white"]){
  background:
    linear-gradient(180deg,rgba(17,28,50,.97) 0%,rgba(10,18,34,.98) 100%) !important;
  background-color:#0C1528 !important;
  border:1px solid rgba(103,232,249,.20) !important;
  color:var(--idev-dk-text) !important;
  box-shadow:
    0 18px 44px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.055) !important;
}

html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item):hover,
html.dark body.route-faq :is(main [class*="rounded"][class*="border"], section [class*="rounded"][class*="border"]):hover{
  border-color:rgba(103,232,249,.35) !important;
  background:
    linear-gradient(180deg,rgba(19,34,59,.99) 0%,rgba(11,22,42,.99) 100%) !important;
  box-shadow:
    0 22px 56px rgba(0,0,0,.40),
    0 0 0 4px rgba(34,211,238,.055),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item, main [class*="rounded"], section [class*="rounded"]) :is(h1,h2,h3,h4,summary,button,.font-bold,.font-semibold,.font-extrabold){
  color:#F8FAFC !important;
  opacity:1 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.35) !important;
}
html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item, main [class*="rounded"], section [class*="rounded"]) :is(p,span,li,div,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600,.text-muted-foreground){
  color:#C7D2E2 !important;
  opacity:1 !important;
}
html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item, main [class*="rounded"], section [class*="rounded"]) button,
html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item, main [class*="rounded"], section [class*="rounded"]) summary{
  background:transparent !important;
  color:#F8FAFC !important;
  border:0 !important;
}
html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item) svg,
html.dark body.route-faq .idev-v11-faq-icon,
html.dark body.route-faq [class*="chevron" i]{
  color:var(--idev-dk-cyan) !important;
  stroke:currentColor !important;
  opacity:1 !important;
  filter:drop-shadow(0 0 8px rgba(34,211,238,.20)) !important;
}
html.dark body.route-faq :is(.idev-v11-faq-card, details, .il-faq-item) :is([class*="w-8"],[class*="h-8"],[class*="size-"],[class*="rounded-full"]):has(svg),
html.dark body.route-faq .idev-v11-faq-icon{
  background:linear-gradient(135deg,rgba(103,232,249,.16),rgba(59,130,246,.08)) !important;
  border:1px solid rgba(103,232,249,.22) !important;
  color:var(--idev-dk-cyan) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.07) !important;
}

/* Bloc bas FAQ */
html.dark body.route-faq .idev-v11-faq-help,
html.dark body.route-faq section:last-of-type [class*="rounded"]{
  background:linear-gradient(145deg,rgba(13,24,44,.96),rgba(9,17,32,.98)) !important;
  border:1px solid rgba(103,232,249,.18) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.32) !important;
}

/* ------------------ CONTACT: cartes, formulaire, social ------------------ */
html.dark body.route-contact main,
html.dark body.route-contact section{
  background:transparent !important;
  color:var(--idev-dk-text) !important;
}
html.dark body.route-contact :is(.idev-v11-contact-card, .idev-v11-contact-form, main [class*="rounded"][class*="border"], section [class*="rounded"][class*="border"]){
  background:
    linear-gradient(180deg,rgba(16,27,48,.97) 0%,rgba(9,17,32,.99) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  color:#F8FAFC !important;
  box-shadow:0 22px 58px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.055) !important;
}
html.dark body.route-contact .idev-v11-contact-card.is-whatsapp{
  background:
    radial-gradient(260px 180px at 18% 0%,rgba(52,211,153,.24),transparent 65%),
    linear-gradient(135deg,rgba(6,95,70,.96),rgba(4,120,87,.88)) !important;
  border-color:rgba(52,211,153,.36) !important;
  box-shadow:0 22px 58px rgba(16,185,129,.16),inset 0 1px 0 rgba(255,255,255,.10) !important;
}
html.dark body.route-contact .idev-v11-contact-card.is-email,
html.dark body.route-contact .idev-v11-contact-card.is-location{
  background:linear-gradient(180deg,rgba(17,28,50,.98),rgba(9,17,32,.98)) !important;
  border-color:rgba(103,232,249,.16) !important;
}
html.dark body.route-contact :is(.idev-v11-contact-card,.idev-v11-contact-form) :is(h2,h3,h4,.font-bold,.font-semibold,.font-extrabold){
  color:#FFFFFF !important;
  opacity:1 !important;
}
html.dark body.route-contact :is(.idev-v11-contact-card,.idev-v11-contact-form) :is(p,span,small,div,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600){
  color:#D5DFEC !important;
  opacity:1 !important;
}
html.dark body.route-contact .idev-v11-contact-card svg{
  color:currentColor !important;
  stroke:currentColor !important;
  opacity:1 !important;
}
html.dark body.route-contact .idev-v11-contact-card :is([class*="w-10"],[class*="h-10"],[class*="w-12"],[class*="h-12"],[class*="rounded"]):has(svg){
  background:rgba(5,10,20,.78) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:#67E8F9 !important;
  box-shadow:0 12px 28px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.075) !important;
}
html.dark body.route-contact .idev-v11-contact-card.is-whatsapp :is([class*="w-10"],[class*="h-10"],[class*="w-12"],[class*="h-12"],[class*="rounded"]):has(svg){
  color:#6EE7B7 !important;
  border-color:rgba(110,231,183,.24) !important;
}
html.dark body.route-contact .idev-v11-contact-form :is(input,textarea,select){
  background:#071021 !important;
  border:1px solid rgba(148,163,184,.24) !important;
  color:#F8FAFC !important;
  border-radius:14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
html.dark body.route-contact .idev-v11-contact-form :is(input,textarea,select)::placeholder{
  color:#9FB0C4 !important;
  opacity:1 !important;
}
html.dark body.route-contact .idev-v11-contact-form :is(input,textarea,select):focus{
  border-color:rgba(103,232,249,.55) !important;
  box-shadow:0 0 0 4px rgba(34,211,238,.10),inset 0 1px 0 rgba(255,255,255,.035) !important;
  outline:none !important;
}
html.dark body.route-contact .idev-v11-contact-form :is(button,a[href*="wa.me"]){
  background:linear-gradient(135deg,#14B8A6 0%,#059669 100%) !important;
  color:#FFFFFF !important;
  border:1px solid rgba(110,231,183,.32) !important;
  opacity:1 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.25) !important;
  box-shadow:0 16px 38px rgba(16,185,129,.22),inset 0 1px 0 rgba(255,255,255,.14) !important;
}
html.dark body.route-contact .idev-v11-contact-form :is(button,a[href*="wa.me"]):hover{
  transform:translateY(-2px) !important;
  filter:brightness(1.10) saturate(1.08) !important;
}
html.dark body.route-contact .idev-v11-social{
  min-width:140px !important;
  min-height:48px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  border-radius:15px !important;
  font-weight:850 !important;
  color:#FFFFFF !important;
  border:1px solid rgba(255,255,255,.14) !important;
  opacity:1 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.24) !important;
  box-shadow:0 15px 36px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.14) !important;
  transition:transform .22s var(--il-ease),filter .22s,box-shadow .22s !important;
}
html.dark body.route-contact .idev-v11-social:hover{
  transform:translateY(-2px) !important;
  filter:brightness(1.08) saturate(1.08) !important;
}
html.dark body.route-contact .idev-v11-social.is-facebook{
  background:linear-gradient(135deg,#2563EB 0%,#1D4ED8 100%) !important;
  border-color:rgba(147,197,253,.34) !important;
}
html.dark body.route-contact .idev-v11-social.is-instagram{
  background:linear-gradient(135deg,#DB2777 0%,#9333EA 100%) !important;
  border-color:rgba(244,114,182,.34) !important;
}

/* ------------------ OFFRES: boutons & lisibilité ------------------ */
html.dark body.is-public-landing section#offers :is(button,a[href*="wa.me"],a[href*="whatsapp"],a[href*="checkout"],a[href*="payment"],a[href*="order"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]),
html.dark body.route-offers :is(button,a[href*="wa.me"],a[href*="whatsapp"],a[class*="rounded"],button[class*="rounded"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  min-height:48px !important;
  border-radius:15px !important;
  font-weight:900 !important;
  color:#FFFFFF !important;
  opacity:1 !important;
  border:1px solid rgba(255,255,255,.15) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.25) !important;
  background:linear-gradient(135deg,#25304E 0%,#312E81 100%) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.13) !important;
}
html.dark body.is-public-landing section#offers :is(button,a):not(.idev-theme-toggle):not([data-idev-theme-toggle]):hover{
  transform:translateY(-2px) !important;
  filter:brightness(1.12) saturate(1.08) !important;
}
html.dark body.is-public-landing section#offers :is(a[href*="wa.me"],a[href*="whatsapp"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#059669 0%,#047857 100%) !important;
  border-color:rgba(110,231,183,.30) !important;
  box-shadow:0 16px 38px rgba(16,185,129,.18),inset 0 1px 0 rgba(255,255,255,.13) !important;
}
html.dark body.is-public-landing section#offers :is(button,a):not(.idev-theme-toggle):not([data-idev-theme-toggle]):has(svg){
  gap:10px !important;
}

/* ------------------ Animation bouton thème validé ------------------ */
@keyframes idev-theme-orbit{
  0%{box-shadow:0 0 0 0 rgba(103,232,249,.22),0 10px 28px rgba(0,0,0,.24)}
  60%{box-shadow:0 0 0 7px rgba(103,232,249,0),0 12px 34px rgba(34,211,238,.20)}
  100%{box-shadow:0 0 0 0 rgba(103,232,249,0),0 10px 28px rgba(0,0,0,.24)}
}
html.dark .idev-theme-toggle,
html.dark [data-idev-theme-toggle]{
  animation:idev-theme-orbit 3.2s ease-in-out infinite !important;
}
[data-idev-theme-toggle] svg,
.idev-theme-toggle svg{
  transition:transform .36s cubic-bezier(.16,1,.3,1), filter .36s ease !important;
}
[data-idev-theme-toggle]:hover svg,
.idev-theme-toggle:hover svg{
  transform:rotate(18deg) scale(1.08) !important;
  filter:drop-shadow(0 0 8px rgba(103,232,249,.38)) !important;
}
@media (prefers-reduced-motion:reduce){
  html.dark .idev-theme-toggle,
  html.dark [data-idev-theme-toggle]{animation:none !important;}
}


/* ============================================================
   IDEV-LOG — CONTACT DARK SURGICAL v13
   Base : v11 validée. Objectif : supprimer uniquement les cadres
   inutiles sur /contact en dark, sans toucher footer ni autres pages.
   ============================================================ */

html.dark body.route-contact main :is([class*="rounded-lg"],[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"]):not(.idev-v11-contact-card):not(.idev-v11-contact-form):not(.idev-v11-social):not(input):not(textarea):not(select):not(button):not(a){
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
}

html.dark body.route-contact main .idev-v11-contact-card{
  background:linear-gradient(180deg,rgba(13,23,42,.92),rgba(8,15,30,.96)) !important;
  border:1px solid rgba(103,232,249,.16) !important;
  border-radius:20px !important;
  box-shadow:0 18px 46px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05) !important;
  overflow:hidden !important;
}
html.dark body.route-contact main .idev-v11-contact-card.is-whatsapp,
html.dark body.route-contact main .idev-v11-contact-card.is-email,
html.dark body.route-contact main .idev-v11-contact-card.is-location{
  background:linear-gradient(180deg,rgba(13,23,42,.94),rgba(8,15,30,.98)) !important;
  border-color:rgba(103,232,249,.16) !important;
}
html.dark body.route-contact main .idev-v11-contact-card.is-whatsapp:hover,
html.dark body.route-contact main .idev-v11-contact-card.is-email:hover,
html.dark body.route-contact main .idev-v11-contact-card.is-location:hover{
  border-color:rgba(103,232,249,.28) !important;
  box-shadow:0 22px 52px rgba(0,0,0,.32),0 0 0 1px rgba(103,232,249,.08),inset 0 1px 0 rgba(255,255,255,.07) !important;
}

html.dark body.route-contact main .idev-v11-contact-form{
  background:linear-gradient(180deg,rgba(13,23,42,.94),rgba(8,15,30,.985)) !important;
  border:1px solid rgba(103,232,249,.18) !important;
  border-radius:20px !important;
  box-shadow:0 24px 60px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.055) !important;
  overflow:hidden !important;
}

html.dark body.route-contact main .idev-v11-contact-form :is([class*="rounded-lg"],[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-3xl"],[class*="border"]):not(input):not(textarea):not(select):not(button):not(a):not(:has(input)):not(:has(textarea)){
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
}
html.dark body.route-contact main .idev-v11-contact-form :is(h2,h3,h4,.font-bold,.font-semibold,.font-extrabold){
  color:#F8FAFC !important;
  opacity:1 !important;
}
html.dark body.route-contact main .idev-v11-contact-form :is(p,span,small,div,.text-slate-500,.text-slate-600,.text-gray-500,.text-gray-600){
  color:#C9D6E6 !important;
  opacity:1 !important;
}

html.dark body.route-contact main .idev-v11-contact-form :is([class*="w-10"],[class*="h-10"],[class*="w-12"],[class*="h-12"],[class*="rounded"]):has(svg){
  background:rgba(16,185,129,.14) !important;
  border:1px solid rgba(110,231,183,.20) !important;
  color:#6EE7B7 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.07) !important;
}

html.dark body.route-contact main .idev-v11-contact-form :is(input,textarea,select){
  background:#071021 !important;
  border:1px solid rgba(148,163,184,.24) !important;
  color:#F8FAFC !important;
  border-radius:14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
html.dark body.route-contact main .idev-v11-contact-form :is(input,textarea,select)::placeholder{color:#9FB0C4 !important;opacity:1 !important;}
html.dark body.route-contact main .idev-v11-contact-form :is(input,textarea,select):focus{
  border-color:rgba(103,232,249,.55) !important;
  box-shadow:0 0 0 4px rgba(34,211,238,.10), inset 0 1px 0 rgba(255,255,255,.035) !important;
  outline:none !important;
}

html.dark body.route-contact main .idev-v11-contact-form :is(button,a[href*="wa.me"]):not(.idev-theme-toggle):not([data-idev-theme-toggle]){
  background:linear-gradient(135deg,#10B981 0%,#059669 100%) !important;
  color:#FFFFFF !important;
  border:1px solid rgba(110,231,183,.34) !important;
  border-radius:14px !important;
  box-shadow:0 16px 38px rgba(16,185,129,.20), inset 0 1px 0 rgba(255,255,255,.14) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.25) !important;
}
html.dark body.route-contact main .idev-v11-contact-form :is(button,a[href*="wa.me"]):hover{
  transform:translateY(-2px) !important;
  filter:brightness(1.08) saturate(1.08) !important;
}

html.dark body.route-contact main .idev-v11-social{
  min-width:132px !important;
  min-height:44px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  border-radius:14px !important;
  font-weight:800 !important;
  background:rgba(7,16,33,.84) !important;
  color:#D8E6F8 !important;
  border:1px solid rgba(103,232,249,.18) !important;
  box-shadow:0 14px 32px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06) !important;
  text-shadow:none !important;
}
html.dark body.route-contact main .idev-v11-social:hover{
  transform:translateY(-2px) !important;
  border-color:rgba(103,232,249,.32) !important;
  color:#FFFFFF !important;
  filter:none !important;
}
html.dark body.route-contact main .idev-v11-social.is-facebook{color:#93C5FD !important;border-color:rgba(147,197,253,.26) !important;}
html.dark body.route-contact main .idev-v11-social.is-instagram{color:#F9A8D4 !important;border-color:rgba(249,168,212,.26) !important;}
html.dark body.route-contact footer .idev-v11-social,
html.dark body.route-contact footer a{min-width:initial !important;}


/* ============================================================
   IDEV-LOG — CONTACT DARK v14 micro-fix
   Uniformise la carte WhatsApp avec Email / Algérie en mode sombre.
   Ne touche pas aux autres pages ni au footer.
   ============================================================ */
html.dark body.route-contact main .idev-v11-contact-card.is-whatsapp{
  background:linear-gradient(180deg,rgba(13,23,42,.94),rgba(8,15,30,.98)) !important;
  border-color:rgba(103,232,249,.16) !important;
}
