/* ============================================================
   THEME — FUTURISTE
   Dark-tech, cyan/violet glow, lignes de circuit, typographies
   Orbitron + Space Grotesk, accents holographiques.
   ============================================================ */

[data-theme="futuriste"][data-mode="dark"] {
  --bg: #050912;
  --paper: #0c1220;
  --text: #eaf6ff;
  --muted: #7e8aa3;
  --line: rgba(120,200,255,.12);
  --accent: #00e5ff;
  --accent-2: #b388ff;
  --accent-3: #00ffa3;
  --shadow: 0 0 60px -10px rgba(0,229,255,.45);
}

[data-theme="futuriste"][data-mode="light"] {
  --bg: #e6eef8;
  --paper: #ffffff;
  --text: #0a1220;
  --muted: #4d5a73;
  --line: rgba(10,18,32,.10);
  --accent: #0066ff;
  --accent-2: #7c3aed;
  --accent-3: #00b377;
  --shadow: 0 30px 60px -30px rgba(0,102,255,.4);
}

[data-theme="futuriste"] {
  font-family: 'Space Grotesk', sans-serif;
}

[data-theme="futuriste"] .section-title,
[data-theme="futuriste"] .hero-title,
[data-theme="futuriste"] .opt-num,
[data-theme="futuriste"] .stat-num,
[data-theme="futuriste"] .sim-result-value,
[data-theme="futuriste"] .ba-spec strong,
[data-theme="futuriste"] .tip-step,
[data-theme="futuriste"] .val-num,
[data-theme="futuriste"] .brand-name {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  letter-spacing: 0;
}

[data-theme="futuriste"] .hero-title {
  font-size: clamp(2.6rem, 7vw, 6rem);
  line-height: 1.05;
}
[data-theme="futuriste"] .hero-title .line {
  color: var(--text);
}
[data-theme="futuriste"] .hero-title .italic {
  font-style: normal;
  background: linear-gradient(90deg, var(--accent), var(--accent-2));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 0 24px rgba(0,229,255,.45));
}
[data-theme="futuriste"] .hero-title .emphasis {
  color: var(--accent);
  text-shadow: 0 0 24px rgba(0,229,255,.6);
}
[data-theme="futuriste"] .section-title em {
  color: var(--accent);
  font-style: normal;
  text-shadow: 0 0 18px rgba(0,229,255,.5);
}

[data-theme="futuriste"] .kicker {
  font-family: 'Major Mono Display', monospace;
  letter-spacing: .3em;
  font-size: .8rem;
  color: var(--accent);
}

[data-theme="futuriste"] .brand-name {
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: .15em;
  background: linear-gradient(90deg, var(--accent), var(--accent-2));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
[data-theme="futuriste"] .brand-sub {
  font-family: 'Major Mono Display', monospace;
  font-size: .65rem;
  letter-spacing: .2em;
  color: var(--accent-3);
}
[data-theme="futuriste"] .brand-mark {
  color: var(--accent);
  filter: drop-shadow(0 0 8px var(--accent));
}

/* Hero — circuit grid */
[data-theme="futuriste"] body { background: var(--bg); }
[data-theme="futuriste"] body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% -20%, rgba(0,229,255,.18), transparent 50%),
    radial-gradient(circle at 0% 100%, rgba(179,136,255,.12), transparent 45%),
    radial-gradient(circle at 100% 100%, rgba(0,255,163,.1), transparent 40%);
}
[data-theme="futuriste"] body::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(0,229,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,255,.04) 1px, transparent 1px);
  background-size: 60px 60px;
}
[data-theme="futuriste"][data-mode="light"] body::after {
  background-image:
    linear-gradient(rgba(0,102,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,102,255,.06) 1px, transparent 1px);
}

[data-theme="futuriste"] .hero-bg { color: var(--accent); opacity: .35; mix-blend-mode: screen; }
[data-theme="futuriste"] .hero-bg .pipe-network path { stroke-width: 2; }

[data-theme="futuriste"] .hero {
  position: relative;
}
[data-theme="futuriste"] .hero::before {
  content: '';
  position: absolute;
  top: 14%; right: 8%;
  width: 320px; height: 320px;
  border: 1px solid var(--accent);
  border-radius: 50%;
  box-shadow:
    inset 0 0 60px rgba(0,229,255,.2),
    0 0 60px rgba(0,229,255,.3);
  animation: scanRing 12s linear infinite;
  z-index: -1;
}
[data-theme="futuriste"] .hero::after {
  content: '';
  position: absolute;
  top: 20%; right: 14%;
  width: 220px; height: 220px;
  border: 1px dashed var(--accent-2);
  border-radius: 50%;
  animation: scanRing 18s linear infinite reverse;
  z-index: -1;
}
@keyframes scanRing { to { transform: rotate(360deg); } }

[data-theme="futuriste"] .hero-eyebrow,
[data-theme="futuriste"] .hero-lead { color: var(--muted); }
[data-theme="futuriste"] .hero-eyebrow { font-family: 'Major Mono Display', monospace; }

[data-theme="futuriste"] .stat-num {
  color: var(--accent);
  text-shadow: 0 0 14px rgba(0,229,255,.5);
}

/* Buttons */
[data-theme="futuriste"] .btn {
  font-family: 'Space Grotesk', sans-serif;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .8rem;
}
[data-theme="futuriste"] .btn-primary {
  background: linear-gradient(135deg, var(--accent), var(--accent-2));
  color: #050912;
  border: 1px solid var(--accent);
  box-shadow: 0 0 30px rgba(0,229,255,.5), inset 0 0 12px rgba(255,255,255,.2);
}
[data-theme="futuriste"] .btn-primary:hover {
  background: linear-gradient(135deg, var(--accent-2), var(--accent));
  color: #fff;
  box-shadow: 0 0 50px rgba(179,136,255,.7);
}
[data-theme="futuriste"] .btn-ghost {
  background: rgba(0,229,255,.05);
  color: var(--accent);
  border-color: var(--accent);
}
[data-theme="futuriste"] .btn-ghost:hover { box-shadow: 0 0 20px rgba(0,229,255,.4); }

/* Header & nav */
[data-theme="futuriste"] .site-header {
  background: rgba(10,18,32,.7);
  border-bottom: 1px solid var(--accent);
  box-shadow: 0 0 40px rgba(0,229,255,.15);
  backdrop-filter: blur(16px);
}
[data-theme="futuriste"][data-mode="light"] .site-header {
  background: rgba(255,255,255,.85);
}
[data-theme="futuriste"] .site-nav a {
  font-family: 'Major Mono Display', monospace;
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .15em;
}
[data-theme="futuriste"] .site-nav a.nav-cta {
  background: linear-gradient(135deg, var(--accent), var(--accent-2));
  color: #050912;
  box-shadow: 0 0 16px rgba(0,229,255,.5);
}

/* Theme switch */
[data-theme="futuriste"] .theme-switch {
  background: rgba(0,229,255,.05);
  border: 1px solid var(--accent);
  box-shadow: 0 0 12px rgba(0,229,255,.2);
}
[data-theme="futuriste"] .theme-btn { font-family: 'Major Mono Display', monospace; }
[data-theme="futuriste"] .theme-btn.is-active {
  background: linear-gradient(135deg, var(--accent), var(--accent-2));
  color: #050912;
}

/* Social rail & ctrls */
[data-theme="futuriste"] .social-rail {
  background: rgba(10,18,32,.7);
  border: 1px solid var(--accent);
  box-shadow: 0 0 24px rgba(0,229,255,.25);
}
[data-theme="futuriste"] .social-link { color: var(--accent); }
[data-theme="futuriste"] .social-link:hover {
  background: var(--accent);
  color: #050912;
  box-shadow: 0 0 18px var(--accent);
}
[data-theme="futuriste"] .social-tag { font-family: 'Major Mono Display', monospace; color: var(--accent-2); }
[data-theme="futuriste"] .ctrl-btn {
  background: var(--paper);
  color: var(--accent);
  border: 1px solid var(--accent);
  box-shadow: 0 0 16px rgba(0,229,255,.3);
}
[data-theme="futuriste"] .ctrl-btn:hover {
  background: var(--accent);
  color: #050912;
  box-shadow: 0 0 24px rgba(0,229,255,.7);
}

/* About */
[data-theme="futuriste"] .about, [data-theme="futuriste"] .advice, [data-theme="futuriste"] .site-footer {
  background: var(--paper);
}
[data-theme="futuriste"] .portrait-frame {
  background: linear-gradient(135deg, rgba(0,229,255,.2), rgba(179,136,255,.2));
  border: 1px solid var(--accent);
  box-shadow: 0 0 40px rgba(0,229,255,.3);
  transform: rotate(0);
}
[data-theme="futuriste"] .portrait-bg { fill: rgba(0,229,255,.15); }
[data-theme="futuriste"] .portrait-stroke path, [data-theme="futuriste"] .portrait-stroke circle { stroke: var(--accent); }
[data-theme="futuriste"] .portrait-tag {
  background: var(--accent);
  color: #050912;
  font-family: 'Major Mono Display', monospace;
  font-size: .75rem;
}
[data-theme="futuriste"] .portrait-caption { font-family: 'Major Mono Display', monospace; font-size: .9rem; color: var(--accent-2); letter-spacing: .15em; }
[data-theme="futuriste"] .badge { background: rgba(0,229,255,.1); color: var(--accent); border: 1px solid var(--accent); }

/* Services */
[data-theme="futuriste"] .services-grid {
  background: var(--accent);
  border: 1px solid var(--accent);
  box-shadow: 0 0 40px rgba(0,229,255,.15);
}
[data-theme="futuriste"] .service-card { background: var(--paper); }
[data-theme="futuriste"] .service-card::before { background: linear-gradient(135deg, var(--accent), var(--accent-2)); }
[data-theme="futuriste"] .service-card h3 { font-family: 'Orbitron', sans-serif; font-size: 1.2rem; text-transform: uppercase; letter-spacing: .04em; }
[data-theme="futuriste"] .service-icon { color: var(--accent); filter: drop-shadow(0 0 10px var(--accent)); }
[data-theme="futuriste"] .service-card:hover { color: #050912; }
[data-theme="futuriste"] .service-card:hover h3 { color: #050912; text-shadow: none; }
[data-theme="futuriste"] .service-card:hover .service-icon { color: #050912; filter: none; }

/* Premium */
[data-theme="futuriste"] .premium {
  background: linear-gradient(135deg, #050912 0%, #0c1d3a 100%);
}
[data-theme="futuriste"] .premium::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(0,229,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,255,.08) 1px, transparent 1px);
  background-size: 80px 80px;
  pointer-events: none;
  -webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 70%);
          mask-image: radial-gradient(ellipse at center, #000 30%, transparent 70%);
}
[data-theme="futuriste"] .opt-card {
  background: rgba(0,229,255,.04);
  border: 1px solid rgba(0,229,255,.2);
  border-radius: 4px;
  position: relative;
}
[data-theme="futuriste"] .opt-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; width: 24px; height: 1px; background: var(--accent);
}
[data-theme="futuriste"] .opt-card:hover {
  background: rgba(0,229,255,.08);
  border-color: var(--accent);
  box-shadow: 0 0 30px rgba(0,229,255,.4);
}
[data-theme="futuriste"] .opt-num {
  font-family: 'Major Mono Display', monospace;
  color: var(--accent);
  font-size: 2rem;
}
[data-theme="futuriste"] .opt-card h3 {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.05rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}
[data-theme="futuriste"] .opt-card::after {
  background: linear-gradient(135deg, var(--accent), var(--accent-3));
  color: #050912;
  font-family: 'Orbitron', sans-serif;
  text-transform: uppercase;
  border-radius: 4px;
  box-shadow: 0 0 30px rgba(0,229,255,.6);
}

/* BA / advice / reviews */
[data-theme="futuriste"] .ba-knob { background: var(--accent); color: #050912; box-shadow: 0 0 24px var(--accent); }
[data-theme="futuriste"] .ba-line, [data-theme="futuriste"] .ba-handle { background: var(--accent); box-shadow: 0 0 12px var(--accent); }
[data-theme="futuriste"] .ba-spec strong { font-family: 'Orbitron', sans-serif; font-size: 1.4rem; color: var(--accent); }

[data-theme="futuriste"] .advice-sim {
  background: linear-gradient(135deg, #0c1d3a, #1a0a3a);
  border: 1px solid var(--accent);
  box-shadow: 0 0 40px rgba(0,229,255,.3);
}
[data-theme="futuriste"] .advice-sim h3 { font-family: 'Orbitron', sans-serif; font-size: 1.4rem; color: var(--accent); }
[data-theme="futuriste"] .sim-result-value { color: var(--accent); text-shadow: 0 0 18px rgba(0,229,255,.5); }
[data-theme="futuriste"] .sim-toggle button.is-active {
  background: linear-gradient(135deg, var(--accent), var(--accent-2));
  color: #050912;
}

[data-theme="futuriste"] .rev-card {
  background: var(--paper);
  border: 1px solid rgba(0,229,255,.2);
  border-radius: 4px;
}
[data-theme="futuriste"] .rev-card:hover {
  border-color: var(--accent);
  box-shadow: 0 0 24px rgba(0,229,255,.3);
}
[data-theme="futuriste"] .rev-card p { font-family: 'Space Grotesk', sans-serif; font-style: normal; }
[data-theme="futuriste"] .rev-quote { color: var(--accent); }

/* Contact */
[data-theme="futuriste"] .contact {
  background:
    linear-gradient(135deg, #050912 0%, #0c1d3a 50%, #1a0a3a 100%);
}
[data-theme="futuriste"] .contact::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(0,229,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,255,.08) 1px, transparent 1px);
  background-size: 60px 60px;
  pointer-events: none;
  -webkit-mask-image: radial-gradient(ellipse at center, #000 40%, transparent 80%);
          mask-image: radial-gradient(ellipse at center, #000 40%, transparent 80%);
}
[data-theme="futuriste"] .contact-form {
  background: rgba(0,229,255,.04);
  border: 1px solid var(--accent);
  box-shadow: 0 0 40px rgba(0,229,255,.2);
  border-radius: 6px;
}
[data-theme="futuriste"] .ci-value {
  font-family: 'Orbitron', sans-serif;
  font-size: 1rem;
  color: var(--accent);
}
[data-theme="futuriste"] .field input,
[data-theme="futuriste"] .field select,
[data-theme="futuriste"] .field textarea { font-family: 'Orbitron', sans-serif; font-size: .95rem; letter-spacing: .04em; }

/* Footer */
[data-theme="futuriste"] .site-footer { border-top: 1px solid var(--accent); box-shadow: 0 -10px 40px -20px rgba(0,229,255,.4); }
[data-theme="futuriste"] .foot-mark { color: var(--accent); filter: drop-shadow(0 0 8px var(--accent)); }
[data-theme="futuriste"] .foot-tag { font-family: 'Orbitron', sans-serif; font-size: .9rem; }
[data-theme="futuriste"] .foot-grid ul a { font-family: 'Major Mono Display', monospace; text-transform: uppercase; font-size: .8rem; letter-spacing: .15em; }

[data-theme="futuriste"] .reviews { background: var(--bg); }
[data-theme="futuriste"] .ba { background: var(--bg); }
