/* ═══════════════════════════════════════════════════════════
   LEISTUNGEN v2 · Distinct archetypes per service
═══════════════════════════════════════════════════════════ */

/* ── Tokens & base ────────────────────────────────────────── */
.lx2 {
  --cy:#22d3ee; --sky:#0ea5e9; --blue:#3b82f6; --lime:#a3e635;
  --pink:#f472b6; --amber:#fbbf24; --violet:#a78bfa; --rose:#fb7185;
  --emerald:#34d399;
  background:#000; color:#fff;
  font-family:'Inter',-apple-system,sans-serif;
  font-feature-settings:'ss01','cv11';
  letter-spacing:-0.011em;
}
.lx2 *::selection { background:rgba(34,211,238,0.3); }

/* ── Layout shell ────────────────────────────────────────── */
.lx2-shell { position:relative; }
.lx2-section {
  position:relative; padding:140px clamp(20px,4vw,56px);
  overflow:hidden;
}
.lx2-inner { max-width:1320px; margin:0 auto; position:relative; z-index:2; }

/* ── Sticky progress rail ────────────────────────────────── */
.lx2-rail {
  position:fixed; left:24px; top:50%; transform:translateY(-50%);
  z-index:50; display:flex; flex-direction:column; gap:14px;
  padding:18px 12px;
  background:rgba(0,0,0,0.6); backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:100px;
  opacity:0; transition:opacity .35s;
}
.lx2-rail.on { opacity:1; }
.lx2-rail-dot {
  position:relative; width:8px; height:8px; border-radius:50%;
  background:rgba(255,255,255,0.18);
  cursor:pointer; transition:all .25s;
}
.lx2-rail-dot::before {
  content:attr(data-num) ' ' attr(data-label);
  position:absolute; left:24px; top:50%; transform:translateY(-50%);
  white-space:nowrap; font-size:11px; font-weight:600;
  letter-spacing:0.08em; text-transform:uppercase;
  color:rgba(255,255,255,0.85);
  background:rgba(0,0,0,0.85); padding:6px 12px; border-radius:100px;
  border:1px solid rgba(255,255,255,0.1);
  opacity:0; pointer-events:none; transition:opacity .2s;
}
.lx2-rail-dot:hover::before { opacity:1; }
.lx2-rail-dot.active { background:var(--cy); box-shadow:0 0 18px var(--cy); transform:scale(1.5); }
@media (max-width:1100px) { .lx2-rail { display:none; } }

/* ── Reveal ─────────────────────────────────────────────── */
.r2 { opacity:0; transform:translateY(28px); transition:opacity .9s, transform .9s; transition-timing-function:cubic-bezier(.2,.7,.2,1); }
.r2.on { opacity:1; transform:translateY(0); }
.r2.d1 { transition-delay:.08s; } .r2.d2 { transition-delay:.16s; } .r2.d3 { transition-delay:.24s; } .r2.d4 { transition-delay:.32s; }

/* ── Aurora bgs (per archetype variant) ────────────────── */
.lx2-aurora { position:absolute; inset:0; pointer-events:none; overflow:hidden; }
.lx2-aurora .blob {
  position:absolute; border-radius:50%; filter:blur(110px); opacity:0.5;
  animation:lx2Float 24s ease-in-out infinite;
}
.lx2-grid-bg {
  position:absolute; inset:0; pointer-events:none; opacity:0.4;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size:80px 80px;
  mask-image:radial-gradient(ellipse 60% 60% at 50% 50%, black, transparent);
}
@keyframes lx2Float {
  0%,100% { transform:translate(0,0) scale(1); }
  50% { transform:translate(80px,-50px) scale(1.18); }
}

/* ── Type ───────────────────────────────────────────────── */
.lx2-eb {
  display:inline-flex; align-items:center; gap:10px;
  font-size:11px; font-weight:600; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--cy);
  padding:8px 16px; border-radius:100px;
  border:1px solid rgba(34,211,238,0.25);
  background:rgba(34,211,238,0.06);
}
.lx2-eb-dot { width:6px; height:6px; border-radius:50%; background:var(--cy); box-shadow:0 0 10px var(--cy); animation:lx2Pulse 1.8s ease-in-out infinite; }
@keyframes lx2Pulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:0.4; transform:scale(0.7); } }

.lx2-h1 {
  font-size:clamp(36px,5.2vw,76px); font-weight:600;
  letter-spacing:-0.035em; line-height:1.0; color:#fff; margin:0;
}
.lx2-h2 {
  font-size:clamp(28px,3.6vw,52px); font-weight:600;
  letter-spacing:-0.03em; line-height:1.05; color:#fff; margin:0;
}
.lx2-h3 {
  font-size:clamp(22px,2.4vw,32px); font-weight:600;
  letter-spacing:-0.02em; line-height:1.15; color:#fff; margin:0;
}
.lx2-grad {
  background:linear-gradient(135deg,var(--cy) 0%,var(--sky) 50%,var(--blue) 100%);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.lx2-muted { color:rgba(255,255,255,0.42); display:block; }

.lx2-lede {
  font-size:clamp(15px,1.2vw,18px); line-height:1.6;
  color:rgba(255,255,255,0.72); max-width:580px; margin:20px 0 0;
}

.lx2-btn-primary, .lx2-btn-ghost {
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 26px; border-radius:100px;
  font-size:14px; font-weight:600; letter-spacing:-0.005em;
  text-decoration:none; transition:all .25s;
  cursor:pointer;
}
.lx2-btn-primary {
  background:linear-gradient(135deg,var(--cy),var(--sky) 60%,var(--lime));
  color:#001b22; box-shadow:0 6px 24px rgba(34,211,238,0.35);
}
.lx2-btn-primary:hover { transform:translateY(-2px); box-shadow:0 12px 36px rgba(34,211,238,0.5); }
.lx2-btn-ghost {
  border:1px solid rgba(255,255,255,0.16); color:rgba(255,255,255,0.85);
  background:rgba(255,255,255,0.03);
}
.lx2-btn-ghost:hover { border-color:rgba(255,255,255,0.32); background:rgba(255,255,255,0.06); }

/* ═══════════════════════════════════════════
   HERO
═══════════════════════════════════════════ */
.lx2-hero { padding:180px clamp(20px,4vw,56px) 100px; }
.lx2-hero .blob.a { width:520px; height:520px; background:var(--cy); top:-100px; left:-100px; opacity:0.35; }
.lx2-hero .blob.b { width:600px; height:600px; background:var(--blue); top:200px; right:-160px; opacity:0.32; animation-delay:-8s; }
.lx2-hero .blob.c { width:420px; height:420px; background:var(--lime); bottom:-100px; left:30%; opacity:0.18; animation-delay:-16s; }

.lx2-hero-grid {
  display:grid; grid-template-columns:1.15fr 1fr; gap:80px; align-items:center;
}
.lx2-hero-cta { display:flex; gap:14px; margin-top:36px; flex-wrap:wrap; }

.lx2-hero-stats {
  display:flex; gap:48px; margin-top:48px;
  padding-top:36px; border-top:1px solid rgba(255,255,255,0.08);
}
.lx2-hero-stat-num {
  font-size:48px; font-weight:700; letter-spacing:-0.04em;
  background:linear-gradient(135deg,var(--cy),var(--lime));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.lx2-hero-stat-lbl {
  font-size:12px; letter-spacing:0.12em; text-transform:uppercase;
  color:rgba(255,255,255,0.5); margin-top:4px;
}

/* Hero stage — orbiting service cards */
.lx2-stage {
  position:relative; aspect-ratio:1/1; max-width:560px; margin-left:auto;
}
.lx2-stage-core {
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:38%; aspect-ratio:1/1; border-radius:50%;
  background:radial-gradient(circle at 30% 30%,var(--cy),var(--blue) 60%,#000 100%);
  box-shadow:0 0 100px rgba(34,211,238,0.5), inset 0 0 60px rgba(0,0,0,0.4);
  display:flex; align-items:center; justify-content:center;
  font-size:60px; font-weight:800;
  background-clip:padding-box;
  animation:lx2CoreSpin 28s linear infinite;
}
@keyframes lx2CoreSpin {
  0% { transform:translate(-50%,-50%) rotate(0deg); }
  100% { transform:translate(-50%,-50%) rotate(360deg); }
}
.lx2-stage-core::before {
  content:'C'; font-family:'Inter',sans-serif; color:#fff;
  text-shadow:0 0 24px rgba(255,255,255,0.4);
  animation:lx2CoreAntiSpin 28s linear infinite;
}
@keyframes lx2CoreAntiSpin {
  0% { transform:rotate(0); } 100% { transform:rotate(-360deg); }
}
.lx2-orbit {
  position:absolute; inset:0;
  border:1px dashed rgba(255,255,255,0.08); border-radius:50%;
}
.lx2-orbit.r2 { transform:scale(0.74); border-color:rgba(34,211,238,0.12); }
.lx2-orbit.r3 { transform:scale(0.45); border-color:rgba(34,211,238,0.16); }

.lx2-svc {
  position:absolute; padding:10px 14px;
  background:rgba(15,15,20,0.85); backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,0.1); border-radius:100px;
  display:flex; align-items:center; gap:8px;
  font-size:13px; font-weight:600;
  white-space:nowrap;
  animation:lx2Float2 6s ease-in-out infinite;
  box-shadow:0 8px 28px rgba(0,0,0,0.35);
}
.lx2-svc-ico {
  width:22px; height:22px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:11px;
}
@keyframes lx2Float2 {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(-10px); }
}

/* ═══════════════════════════════════════════
   01 · KI-BERATUNG — BIG QUOTE LEFT, TIMELINE RIGHT
═══════════════════════════════════════════ */
.lx2-s01 { background:#000; }
.lx2-s01 .blob.a { width:600px; height:600px; background:var(--cy); top:-200px; right:-150px; opacity:0.18; }

.lx2-quote-layout {
  display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start;
}
.lx2-bignum {
  font-size:clamp(100px,15vw,200px); font-weight:200;
  line-height:0.85; letter-spacing:-0.06em;
  color:transparent;
  -webkit-text-stroke:2px rgba(34,211,238,0.5);
  margin:0 0 -20px; display:block;
}
.lx2-quote-h {
  font-size:clamp(28px,3.4vw,46px); font-weight:600;
  letter-spacing:-0.025em; line-height:1.1;
  color:#fff; margin:0 0 24px;
}
.lx2-quote-h em { font-style:italic; font-weight:400; color:var(--cy); }
.lx2-quote-attr {
  display:flex; gap:14px; align-items:center;
  padding-top:24px; border-top:1px solid rgba(255,255,255,0.08);
}
.lx2-quote-avatar {
  width:42px; height:42px; border-radius:50%;
  background:linear-gradient(135deg,var(--cy),var(--blue));
}
.lx2-quote-attr-name { font-size:14px; font-weight:600; color:#fff; }
.lx2-quote-attr-role { font-size:12px; color:rgba(255,255,255,0.5); }

/* Timeline right */
.lx2-tl { position:relative; padding-left:36px; }
.lx2-tl::before {
  content:''; position:absolute; left:8px; top:8px; bottom:8px;
  width:2px;
  background:linear-gradient(to bottom,var(--cy),var(--blue),transparent);
}
.lx2-tl-item { position:relative; margin-bottom:28px; }
.lx2-tl-item::before {
  content:''; position:absolute; left:-32px; top:6px;
  width:18px; height:18px; border-radius:50%;
  background:#000; border:2px solid var(--cy);
  box-shadow:0 0 16px rgba(34,211,238,0.4);
}
.lx2-tl-item.done::before { background:var(--cy); }
.lx2-tl-week {
  font-size:11px; font-weight:600; letter-spacing:0.1em;
  text-transform:uppercase; color:var(--cy); margin-bottom:6px;
}
.lx2-tl-h { font-size:18px; font-weight:600; color:#fff; margin:0 0 4px; }
.lx2-tl-p { font-size:14px; color:rgba(255,255,255,0.6); line-height:1.55; margin:0; }

/* ═══════════════════════════════════════════
   02 · VOICE — FULL-BLEED CALL UI
═══════════════════════════════════════════ */
.lx2-s02 {
  background:radial-gradient(ellipse at center, rgba(11,30,55,1) 0%, #000 70%);
  padding:160px clamp(20px,4vw,56px);
}
.lx2-s02 .blob.a { width:540px; height:540px; background:var(--blue); top:30%; left:50%; transform:translateX(-50%); opacity:0.22; }

.lx2-voice-layout {
  display:grid; grid-template-columns:1.25fr 1fr; gap:80px; align-items:center;
}
.lx2-voice-text { padding-right:0; }
.lx2-voice-num {
  font-size:14px; font-weight:600; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--cy); margin-bottom:16px;
  display:flex; align-items:center; gap:12px;
}
.lx2-voice-num::before {
  content:''; width:36px; height:1px;
  background:linear-gradient(90deg,var(--cy),transparent);
}

/* Phone-style call card */
.lx2-call {
  width:100%; max-width:420px; margin:0 auto;
  border-radius:42px; padding:32px;
  background:linear-gradient(180deg, rgba(20,30,55,0.98) 0%, rgba(8,15,28,1) 100%);
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:0 40px 80px rgba(0,0,0,0.6),
             0 0 0 12px rgba(255,255,255,0.02),
             inset 0 1px 0 rgba(255,255,255,0.08);
  position:relative;
}
.lx2-call-tag {
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 12px; border-radius:100px;
  background:rgba(34,197,94,0.15);
  border:1px solid rgba(34,197,94,0.3);
  font-size:11px; font-weight:700; letter-spacing:0.06em;
  text-transform:uppercase; color:#22c55e;
}
.lx2-call-tag-dot {
  width:6px; height:6px; border-radius:50%; background:#22c55e;
  box-shadow:0 0 8px #22c55e; animation:lx2Pulse 1.4s ease-in-out infinite;
}
.lx2-call-name {
  font-size:24px; font-weight:600; color:#fff; margin:24px 0 4px;
  letter-spacing:-0.02em;
}
.lx2-call-num { font-size:13px; color:rgba(255,255,255,0.5); margin:0; font-variant-numeric:tabular-nums; }
.lx2-call-time {
  margin-top:24px; font-size:32px; font-weight:300;
  font-variant-numeric:tabular-nums; color:#fff; letter-spacing:0.04em;
}
.lx2-call-wave {
  display:flex; gap:3px; align-items:center; height:54px;
  margin:18px 0 24px;
  justify-content:center;
}
.lx2-call-wave .b {
  width:3px; border-radius:2px;
  background:linear-gradient(180deg,var(--cy),var(--blue));
  animation:lx2Wave 1s ease-in-out infinite;
}
@keyframes lx2Wave {
  0%,100% { height:6px; }
  50% { height:48px; }
}
.lx2-call-msgs { display:flex; flex-direction:column; gap:10px; }
.lx2-call-msg {
  font-size:13px; padding:10px 14px; border-radius:14px;
  max-width:88%; line-height:1.5;
}
.lx2-call-msg.bot { background:rgba(255,255,255,0.07); color:rgba(255,255,255,0.92); align-self:flex-start; border-bottom-left-radius:4px; }
.lx2-call-msg.user { background:linear-gradient(135deg,var(--cy),var(--sky)); color:#001b22; align-self:flex-end; border-bottom-right-radius:4px; font-weight:500; }

/* ═══════════════════════════════════════════
   03 · AUTOMATION — DARK BENTO GRID
═══════════════════════════════════════════ */
.lx2-s03 {
  background:#0a0a0a;
}
.lx2-s03 .blob.a { width:480px; height:480px; background:var(--lime); top:0; right:-120px; opacity:0.14; }

.lx2-bento-head { max-width:680px; margin:0 0 60px; }
.lx2-bento {
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  grid-template-rows:repeat(2, 220px);
  gap:18px;
}
.lx2-bento-card {
  position:relative; padding:28px;
  background:rgba(255,255,255,0.025);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:24px;
  overflow:hidden;
  transition:all .35s;
}
.lx2-bento-card:hover {
  border-color:rgba(34,211,238,0.3);
  background:rgba(34,211,238,0.04);
  transform:translateY(-4px);
}
.lx2-bento-card.span-3 { grid-column:span 3; }
.lx2-bento-card.span-2 { grid-column:span 2; }
.lx2-bento-card.span-4 { grid-column:span 4; }
.lx2-bento-card.row-2 { grid-row:span 2; }

.lx2-bento-eb {
  font-size:11px; font-weight:600; letter-spacing:0.12em;
  text-transform:uppercase; color:var(--cy); margin-bottom:10px;
}
.lx2-bento-h {
  font-size:22px; font-weight:600; color:#fff;
  letter-spacing:-0.02em; line-height:1.2; margin:0 0 10px;
}
.lx2-bento-p {
  font-size:14px; color:rgba(255,255,255,0.6);
  line-height:1.55; margin:0;
}

.lx2-bento-bignum {
  font-size:96px; font-weight:200; letter-spacing:-0.04em;
  background:linear-gradient(135deg,var(--cy),var(--lime));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
  line-height:0.9; margin:auto 0 6px;
}
.lx2-bento-link-cta {
  position:absolute; bottom:24px; right:28px;
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 18px; border-radius:100px;
  background:linear-gradient(135deg,var(--cy),var(--sky));
  color:#001b22; font-size:13px; font-weight:600;
  text-decoration:none;
  box-shadow:0 6px 20px rgba(34,211,238,0.3);
}

/* Mini workflow visual inside bento */
.lx2-mini-flow {
  display:flex; gap:8px; align-items:center;
  margin-top:auto; flex-wrap:wrap;
}
.lx2-mini-flow .step {
  padding:6px 10px; border-radius:8px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.08);
  font-size:11px; color:rgba(255,255,255,0.85);
  display:inline-flex; align-items:center; gap:6px;
}
.lx2-mini-flow .arr { color:var(--cy); font-weight:700; font-size:14px; }

@media (max-width:980px) {
  .lx2-bento { grid-template-columns:1fr; grid-auto-rows:auto; }
  .lx2-bento-card.span-3, .lx2-bento-card.span-2, .lx2-bento-card.span-4 { grid-column:span 1; }
  .lx2-bento-card.row-2 { grid-row:span 1; }
}

/* ═══════════════════════════════════════════
   04 · TERMINBUCHUNG — MAGAZINE SPLIT W/ HUGE NUMBER
═══════════════════════════════════════════ */
.lx2-s04 {
  background:#fafafa; color:#0a0a0a;
}
.lx2-s04-bg {
  position:absolute; right:0; top:0; bottom:0; width:46%;
  background:linear-gradient(135deg,#0a1929 0%,#000 100%);
  clip-path:polygon(15% 0, 100% 0, 100% 100%, 0 100%);
}
.lx2-s04-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:80px;
  align-items:center;
}
.lx2-s04-num {
  font-family:'Inter',sans-serif;
  font-size:clamp(100px,14vw,180px); font-weight:200;
  line-height:0.85; letter-spacing:-0.06em;
  color:#0a0a0a; margin:0 0 -8px; opacity:0.12;
}
.lx2-s04-h2 {
  font-size:clamp(32px,4vw,58px); font-weight:600;
  letter-spacing:-0.03em; line-height:1.05;
  color:#0a0a0a; margin:0 0 24px;
}
.lx2-s04-h2 em {
  font-style:italic; font-weight:500;
  background:linear-gradient(135deg,var(--cy),var(--blue));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.lx2-s04-p {
  font-size:18px; line-height:1.65; color:rgba(10,10,10,0.65);
  max-width:480px; margin:0 0 32px;
}
.lx2-s04-feats {
  display:flex; flex-direction:column; gap:18px; margin-bottom:36px;
}
.lx2-s04-feat {
  display:flex; gap:14px; padding:14px 0;
  border-top:1px solid rgba(10,10,10,0.08);
  align-items:flex-start;
}
.lx2-s04-feat:first-child { border-top:none; padding-top:0; }
.lx2-s04-feat-num {
  font-size:14px; font-weight:700; color:var(--cy);
  font-variant-numeric:tabular-nums;
  letter-spacing:0.05em;
}
.lx2-s04-feat-h {
  font-size:16px; font-weight:600; color:#0a0a0a;
  margin:0 0 4px; letter-spacing:-0.01em;
}
.lx2-s04-feat-p {
  font-size:14px; color:rgba(10,10,10,0.55);
  line-height:1.55; margin:0;
}
.lx2-s04-cta {
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 26px; border-radius:100px;
  background:#0a0a0a; color:#fff;
  font-size:14px; font-weight:600; text-decoration:none;
  transition:all .25s;
}
.lx2-s04-cta:hover { background:linear-gradient(135deg,var(--cy),var(--sky)); color:#001b22; }

/* Calendar mockup right */
.lx2-s04-cal {
  background:#fff; border-radius:24px; padding:28px;
  box-shadow:0 30px 80px rgba(0,0,0,0.18), 0 0 0 1px rgba(0,0,0,0.04);
}
.lx2-s04-cal-h {
  display:flex; justify-content:space-between; align-items:center;
  margin-bottom:18px;
}
.lx2-s04-cal-month { font-size:18px; font-weight:600; color:#0a0a0a; letter-spacing:-0.01em; }
.lx2-s04-cal-grid {
  display:grid; grid-template-columns:repeat(7,1fr); gap:4px;
  margin-bottom:24px;
}
.lx2-s04-cal-d {
  aspect-ratio:1/1; display:flex; align-items:center; justify-content:center;
  font-size:13px; font-weight:500; color:#0a0a0a;
  border-radius:10px; cursor:pointer; position:relative;
}
.lx2-s04-cal-d.dh { font-size:10px; color:rgba(10,10,10,0.45); font-weight:600; letter-spacing:0.06em; text-transform:uppercase; }
.lx2-s04-cal-d.dot::after { content:''; position:absolute; bottom:5px; width:4px; height:4px; border-radius:50%; background:var(--cy); }
.lx2-s04-cal-d.sel { background:#0a0a0a; color:#fff; font-weight:600; }
.lx2-s04-cal-d.sel.dot::after { background:var(--cy); }
.lx2-s04-cal-d.muted { color:rgba(10,10,10,0.2); }
.lx2-s04-cal-d:not(.dh):hover { background:rgba(0,0,0,0.05); }
.lx2-s04-cal-d.sel:hover { background:#0a0a0a; }

.lx2-s04-cal-slots-h { font-size:11px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:rgba(10,10,10,0.55); margin-bottom:10px; }
.lx2-s04-cal-slots { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.lx2-s04-cal-slot {
  padding:10px; border-radius:10px;
  border:1px solid rgba(10,10,10,0.1);
  font-size:13px; font-weight:600; color:#0a0a0a;
  text-align:center; cursor:pointer; transition:all .2s;
  font-variant-numeric:tabular-nums;
}
.lx2-s04-cal-slot:hover { border-color:#0a0a0a; }
.lx2-s04-cal-slot.on {
  background:linear-gradient(135deg,var(--cy),var(--sky));
  color:#001b22; border-color:transparent;
  box-shadow:0 6px 18px rgba(34,211,238,0.4);
}

/* ═══════════════════════════════════════════
   05 · WEBDESIGN — DEVICE-STAGE FULL-WIDTH HORIZONTAL
═══════════════════════════════════════════ */
.lx2-s05 {
  background:#000;
  border-top:1px solid rgba(255,255,255,0.06);
}
.lx2-s05 .blob.a { width:700px; height:700px; background:var(--cy); top:-200px; left:-200px; opacity:0.16; }
.lx2-s05 .blob.b { width:500px; height:500px; background:var(--violet); bottom:-150px; right:-100px; opacity:0.18; }

.lx2-s05-head {
  text-align:center; max-width:780px; margin:0 auto 80px;
}
.lx2-s05-eb {
  display:inline-flex; align-items:center; gap:10px;
  padding:8px 16px; border-radius:100px;
  background:rgba(34,211,238,0.08);
  border:1px solid rgba(34,211,238,0.2);
  font-size:11px; font-weight:600; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--cy);
  margin-bottom:24px;
}
.lx2-s05-h2 {
  font-size:clamp(32px,4vw,58px); font-weight:600;
  letter-spacing:-0.03em; line-height:1.05;
  color:#fff; margin:0;
}
.lx2-s05-h2 em { font-style:italic; font-weight:500; }
.lx2-s05-p {
  font-size:19px; line-height:1.6; color:rgba(255,255,255,0.65);
  max-width:600px; margin:24px auto 0;
}
.lx2-s05-stage {
  position:relative; display:grid; grid-template-columns:1fr 1.6fr 1fr;
  gap:24px; align-items:end;
}
.lx2-device {
  background:rgba(20,20,28,0.5);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:24px; overflow:hidden;
  box-shadow:0 30px 60px rgba(0,0,0,0.5);
  transition:transform .4s;
}
.lx2-device:hover { transform:translateY(-8px); }
.lx2-device-bar {
  display:flex; align-items:center; padding:10px 14px;
  background:rgba(0,0,0,0.4);
  border-bottom:1px solid rgba(255,255,255,0.06);
  gap:8px;
}
.lx2-device-dots { display:flex; gap:4px; }
.lx2-device-dots span { width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,0.18); }
.lx2-device-url {
  flex:1; padding:4px 10px; margin:0 12px;
  background:rgba(255,255,255,0.06); border-radius:6px;
  font-size:10px; color:rgba(255,255,255,0.55);
  text-align:center; font-variant-numeric:tabular-nums;
}
.lx2-device-body {
  padding:20px; min-height:160px;
  background:linear-gradient(135deg,rgba(34,211,238,0.04),rgba(167,139,250,0.04));
}
.lx2-device-h {
  font-size:14px; font-weight:600; color:#fff; margin:0 0 6px;
  letter-spacing:-0.01em;
}
.lx2-device-p {
  font-size:11px; color:rgba(255,255,255,0.55); margin:0 0 14px;
  line-height:1.5;
}
.lx2-device-stat {
  font-size:32px; font-weight:700; line-height:1;
  background:linear-gradient(135deg,var(--cy),var(--lime));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
  margin:0 0 4px;
}
.lx2-device-statlbl {
  font-size:10px; letter-spacing:0.08em; text-transform:uppercase;
  color:rgba(255,255,255,0.45);
}
.lx2-device.center { transform:scale(1.08); z-index:2; }
.lx2-device.center:hover { transform:scale(1.08) translateY(-8px); }

.lx2-s05-foot {
  display:flex; justify-content:space-between; align-items:center;
  margin-top:80px; padding:32px;
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:24px;
}
.lx2-s05-foot-h {
  font-size:22px; font-weight:600; color:#fff; margin:0;
  letter-spacing:-0.02em;
}
.lx2-s05-foot-p {
  font-size:14px; color:rgba(255,255,255,0.55); margin:4px 0 0;
}

@media (max-width:900px) {
  .lx2-s05-stage { grid-template-columns:1fr; }
  .lx2-device.center { transform:none; }
  .lx2-s05-foot { flex-direction:column; gap:18px; align-items:flex-start; }
}

/* ═══════════════════════════════════════════
   06 · CHATBOT — VERTICAL CONVERSATION
═══════════════════════════════════════════ */
.lx2-s06 {
  background:radial-gradient(ellipse at 30% 50%, rgba(20,15,40,0.6), #000 70%);
  padding:160px clamp(20px,4vw,56px);
}
.lx2-s06 .blob.a { width:540px; height:540px; background:var(--violet); top:50%; left:0; transform:translateY(-50%); opacity:0.15; }

.lx2-s06-grid {
  display:grid; grid-template-columns:1fr 1.05fr; gap:80px; align-items:center;
}
.lx2-s06-eyebrow {
  display:inline-flex; align-items:center; gap:10px;
  font-size:11px; font-weight:600; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--violet);
  padding:8px 16px; border-radius:100px;
  background:rgba(167,139,250,0.08);
  border:1px solid rgba(167,139,250,0.2);
}
.lx2-s06-h2 {
  font-size:clamp(30px,3.8vw,54px); font-weight:600;
  letter-spacing:-0.03em; line-height:1.08;
  color:#fff; margin:24px 0 24px;
}
.lx2-s06-h2 em {
  font-style:italic;
  background:linear-gradient(135deg,var(--violet),var(--cy));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.lx2-s06-pills {
  display:flex; flex-wrap:wrap; gap:10px; margin:36px 0;
}
.lx2-s06-pill {
  padding:8px 14px; border-radius:100px;
  font-size:13px; font-weight:500; color:rgba(255,255,255,0.85);
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.1);
}

.lx2-s06-conv {
  display:flex; flex-direction:column; gap:14px;
  padding:32px;
  background:linear-gradient(180deg, rgba(20,18,35,0.8), rgba(8,8,15,0.8));
  border:1px solid rgba(255,255,255,0.08);
  border-radius:32px;
  position:relative;
  box-shadow:0 30px 80px rgba(0,0,0,0.5);
}
.lx2-s06-conv::before {
  content:'Helios · online · 24/7';
  position:absolute; top:-12px; left:24px;
  background:#000; padding:4px 12px; border-radius:100px;
  font-size:11px; font-weight:600; letter-spacing:0.06em;
  color:var(--cy);
  border:1px solid rgba(34,211,238,0.3);
}
.lx2-s06-msg {
  display:flex; gap:10px; align-items:flex-end;
}
.lx2-s06-msg.user { flex-direction:row-reverse; }
.lx2-s06-avatar {
  width:32px; height:32px; border-radius:50%;
  flex-shrink:0; display:flex; align-items:center; justify-content:center;
  font-size:13px; font-weight:700;
}
.lx2-s06-avatar.bot { background:linear-gradient(135deg,var(--violet),var(--cy)); color:#fff; }
.lx2-s06-avatar.usr { background:linear-gradient(135deg,var(--lime),var(--cy)); color:#001b22; }
.lx2-s06-bubble {
  padding:12px 16px; border-radius:18px;
  max-width:78%; font-size:14px; line-height:1.55;
}
.lx2-s06-bubble.bot { background:rgba(255,255,255,0.06); color:rgba(255,255,255,0.92); border-bottom-left-radius:4px; }
.lx2-s06-bubble.user { background:linear-gradient(135deg,var(--violet),var(--cy)); color:#fff; border-bottom-right-radius:4px; font-weight:500; }

/* ═══════════════════════════════════════════
   07 · IT-SERVICE — TILE GRID HORIZONTAL CARDS
═══════════════════════════════════════════ */
.lx2-s07 {
  background:#0a0a0a;
}
.lx2-s07 .blob.a { width:500px; height:500px; background:var(--blue); top:30%; right:-100px; opacity:0.16; }

.lx2-s07-head {
  display:grid; grid-template-columns:1.3fr 1fr; gap:60px; align-items:end;
  margin-bottom:60px;
}
.lx2-s07-h2 {
  font-size:clamp(30px,3.8vw,52px); font-weight:600;
  letter-spacing:-0.03em; line-height:1.05;
  color:#fff; margin:24px 0 0;
}
.lx2-s07-h2 em {
  font-style:italic; font-weight:500;
  background:linear-gradient(135deg,var(--cy),var(--blue));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.lx2-s07-p {
  font-size:18px; color:rgba(255,255,255,0.65);
  line-height:1.6; max-width:480px; margin:0 0 8px auto;
  text-align:right;
}

.lx2-s07-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:18px;
}
.lx2-tile {
  padding:32px; border-radius:24px;
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(255,255,255,0.08);
  position:relative; overflow:hidden;
  transition:all .35s;
}
.lx2-tile:hover {
  border-color:rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.04);
  transform:translateY(-4px);
}
.lx2-tile::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:var(--accent, var(--cy));
}
.lx2-tile.outlook { --accent:#0078d4; }
.lx2-tile.teams   { --accent:#5059c9; }
.lx2-tile.word    { --accent:#2b579a; }
.lx2-tile.excel   { --accent:#217346; }
.lx2-tile.ppt     { --accent:#d24726; }
.lx2-tile.onedrive{ --accent:#0364b8; }
.lx2-tile-ico {
  width:48px; height:48px; border-radius:12px;
  background:rgba(255,255,255,0.08);
  display:flex; align-items:center; justify-content:center;
  font-size:24px; margin-bottom:24px;
}
.lx2-tile-h {
  font-size:18px; font-weight:600; color:#fff; margin:0 0 8px;
  letter-spacing:-0.015em;
}
.lx2-tile-p {
  font-size:14px; color:rgba(255,255,255,0.55);
  line-height:1.5; margin:0;
}

@media (max-width:900px) {
  .lx2-s07-head { grid-template-columns:1fr; }
  .lx2-s07-p { text-align:left; margin-left:0; }
  .lx2-s07-grid { grid-template-columns:1fr; }
}

/* ═══════════════════════════════════════════
   08 · TOOLS — MARQUEE + GRID
═══════════════════════════════════════════ */
.lx2-s08 {
  background:#000;
  padding:160px 0;
  overflow:hidden;
}
.lx2-s08 .blob.a { width:540px; height:540px; background:var(--lime); top:-100px; left:50%; transform:translateX(-50%); opacity:0.12; }

.lx2-s08-head {
  text-align:center; max-width:680px; margin:0 auto 60px;
  padding:0 clamp(20px,4vw,56px);
}
.lx2-s08-eb {
  display:inline-flex; align-items:center; gap:10px;
  padding:8px 16px; border-radius:100px;
  background:rgba(163,230,53,0.08);
  border:1px solid rgba(163,230,53,0.25);
  font-size:11px; font-weight:600; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--lime);
  margin-bottom:20px;
}
.lx2-s08-h2 {
  font-size:clamp(32px,4vw,58px); font-weight:600;
  letter-spacing:-0.03em; line-height:1.05;
  color:#fff; margin:0 0 16px;
}
.lx2-s08-h2 em { font-style:italic; color:var(--lime); font-weight:500; }
.lx2-s08-p {
  font-size:18px; color:rgba(255,255,255,0.62);
  line-height:1.6; margin:0;
}
.lx2-marquee {
  display:flex; gap:18px; padding:8px 0;
  animation:lx2Mar 38s linear infinite;
  width:max-content;
}
.lx2-marquee.rev { animation-direction:reverse; animation-duration:46s; margin-top:18px; }
@keyframes lx2Mar {
  0% { transform:translateX(0); }
  100% { transform:translateX(-50%); }
}
.lx2-mar-card {
  flex:0 0 auto;
  display:flex; align-items:center; gap:14px;
  padding:18px 24px; border-radius:18px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  min-width:280px;
}
.lx2-mar-ico {
  width:36px; height:36px; border-radius:10px;
  background:rgba(163,230,53,0.1);
  border:1px solid rgba(163,230,53,0.25);
  display:flex; align-items:center; justify-content:center;
  font-size:18px;
}
.lx2-mar-h { font-size:15px; font-weight:600; color:#fff; margin:0; letter-spacing:-0.01em; }
.lx2-mar-p { font-size:12px; color:rgba(255,255,255,0.5); margin:2px 0 0; }
.lx2-s08-cta-wrap {
  text-align:center; margin-top:48px; padding:0 clamp(20px,4vw,56px);
}

/* ═══════════════════════════════════════════
   FINAL CTA
═══════════════════════════════════════════ */
.lx2-cta {
  position:relative; padding:160px clamp(20px,4vw,56px);
  background:radial-gradient(ellipse at center, rgba(11,30,55,0.8) 0%, #000 70%);
  text-align:center; overflow:hidden;
}
.lx2-cta .blob.a { width:600px; height:600px; background:var(--cy); top:50%; left:50%; transform:translate(-50%,-50%); opacity:0.15; }
.lx2-cta-inner { max-width:780px; margin:0 auto; position:relative; z-index:2; }
.lx2-cta-h {
  font-size:clamp(30px,3.8vw,52px); font-weight:600;
  letter-spacing:-0.03em; line-height:1.1; color:#fff;
  margin:0 0 20px;
}
.lx2-cta-h em {
  font-style:italic; font-weight:500;
  background:linear-gradient(135deg,var(--cy),var(--lime));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.lx2-cta-p {
  font-size:19px; color:rgba(255,255,255,0.65);
  line-height:1.55; margin:0 0 36px;
}
.lx2-cta-row {
  display:flex; gap:14px; justify-content:center; flex-wrap:wrap;
}

/* Responsive */
@media (max-width:980px) {
  .lx2-section { padding:100px clamp(20px,4vw,40px); }
  .lx2-hero { padding:140px clamp(20px,4vw,40px) 80px; }
  .lx2-hero-grid,
  .lx2-quote-layout,
  .lx2-voice-layout,
  .lx2-s04-grid,
  .lx2-s06-grid {
    grid-template-columns:1fr; gap:60px;
  }
  .lx2-stage { max-width:380px; margin:0 auto; }
  .lx2-hero-stats { flex-wrap:wrap; gap:24px; }
}
