/* ═══════════════════════════════════════════════════════════
   PrestaSAV Landing Page — Styles
   ═══════════════════════════════════════════════════════════ */

:root {
  --navy-950: #020617; --navy-900: #0a0e1a; --navy-800: #0f172a; --navy-700: #1e293b;
  --navy-600: #334155; --navy-500: #475569; --navy-400: #64748b; --navy-300: #94a3b8;
  --navy-200: #cbd5e1; --navy-100: #e2e8f0; --navy-50: #f1f5f9;
  --blue-600: #2563eb; --blue-500: #3b82f6; --blue-400: #60a5fa; --blue-300: #93c5fd;
  --indigo-400: #818cf8; --emerald-500: #10b981; --emerald-400: #34d399;
  --amber-400: #fbbf24; --rose-500: #f43f5e; --rose-400: #fb7185;
  --white: #ffffff;
  --glass-bg: rgba(255,255,255,0.04); --glass-border: rgba(255,255,255,0.08);
  --font-heading: 'Bricolage Grotesque', system-ui, sans-serif;
  --font-body: 'Plus Jakarta Sans', system-ui, sans-serif;
  --radius-sm: 8px; --radius-md: 12px; --radius-lg: 16px; --radius-xl: 24px;
  --transition: 0.3s cubic-bezier(0.4,0,0.2,1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { font-family: var(--font-body); color: var(--navy-800); background: var(--white); line-height: 1.7; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: inherit; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }
ul { list-style: none; }
h1,h2,h3,h4,h5 { font-family: var(--font-heading); line-height: 1.15; font-weight: 700; }
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--navy-50); }
::-webkit-scrollbar-thumb { background: var(--navy-300); border-radius: 4px; }

/* ── Animations ─────────────────────────────────────────── */
@keyframes fadeUp { from { opacity:0; transform:translateY(32px); } to { opacity:1; transform:translateY(0); } }
@keyframes float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-12px); } }
@keyframes pulse-glow { 0%,100% { box-shadow:0 0 20px rgba(59,130,246,0.2); } 50% { box-shadow:0 0 40px rgba(59,130,246,0.4); } }
@keyframes gradient-shift { 0% { background-position:0% 50%; } 50% { background-position:100% 50%; } 100% { background-position:0% 50%; } }
@keyframes shimmer { 0% { transform:translateX(-100%); } 100% { transform:translateX(100%); } }
@keyframes orbit1 { 0% { transform:translate(0,0) scale(1); } 33% { transform:translate(30px,-20px) scale(1.05); } 66% { transform:translate(-20px,15px) scale(0.95); } 100% { transform:translate(0,0) scale(1); } }
@keyframes orbit2 { 0% { transform:translate(0,0); } 33% { transform:translate(-25px,25px); } 66% { transform:translate(20px,-15px); } 100% { transform:translate(0,0); } }

.reveal { opacity:0; transform:translateY(32px); transition:opacity .7s var(--transition), transform .7s var(--transition); }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-d1 { transition-delay:.1s; } .reveal-d2 { transition-delay:.2s; } .reveal-d3 { transition-delay:.3s; }
.reveal-d4 { transition-delay:.4s; } .reveal-d5 { transition-delay:.5s; }

/* ── Layout ─────────────────────────────────────────────── */
.container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.section-pad { padding: 100px 0; }
.section-tag { display:inline-flex; align-items:center; gap:8px; font-size:.8rem; font-weight:600; color:var(--blue-500); text-transform:uppercase; letter-spacing:.08em; margin-bottom:16px; }
.section-tag::before { content:''; width:20px; height:2px; background:var(--blue-500); border-radius:2px; }
.section-title { font-size:clamp(1.8rem,3.5vw,2.6rem); color:var(--navy-800); margin-bottom:16px; letter-spacing:-.02em; }
.section-sub { font-size:1.05rem; color:var(--navy-500); max-width:600px; line-height:1.8; }
.text-center { text-align:center; } .mx-auto { margin-left:auto; margin-right:auto; }

/* ── Navbar ─────────────────────────────────────────────── */
.navbar { position:fixed; top:0; left:0; right:0; z-index:1000; padding:16px 0; transition:background var(--transition), border-color var(--transition), backdrop-filter var(--transition); }
.navbar.scrolled { background:rgba(10,14,26,.92); backdrop-filter:blur(20px); border-bottom:1px solid var(--glass-border); }
.navbar .container { display:flex; align-items:center; justify-content:space-between; }
/* ── Beta Badge ─────────────────────────────────────────── */
.beta-badge { display:inline-block; background:linear-gradient(135deg,#FF6B35,#ff8f5e); color:var(--white); font-family:var(--font-heading); font-size:.6rem; font-weight:800; padding:3px 10px; border-radius:100px; text-transform:uppercase; letter-spacing:.08em; margin-left:10px; position:relative; top:-12px; animation:beta-glow 2s ease-in-out infinite alternate; }
@keyframes beta-glow { 0% { box-shadow:0 0 4px rgba(255,107,53,.3); } 100% { box-shadow:0 0 12px rgba(255,107,53,.6); } }
.beta-card { border-color:#FF6B35!important; box-shadow:0 8px 40px rgba(255,107,53,.12)!important; }
.beta-pulse { background:linear-gradient(135deg,#FF6B35,#ff8f5e)!important; }
.beta-offer { display:flex; align-items:center; justify-content:center; gap:10px; background:rgba(255,107,53,.06); border:1px dashed rgba(255,107,53,.3); border-radius:var(--radius-sm); padding:16px 24px; margin:16px 0; }
.beta-offer i { font-size:1.5rem; color:#FF6B35; }
.beta-offer span { font-size:1.1rem; font-weight:700; color:var(--navy-800); }
.beta-counter { margin:24px 0 20px; text-align:center; }
.beta-counter-bar { height:8px; background:var(--navy-100); border-radius:100px; overflow:hidden; margin-bottom:10px; }
.beta-counter-fill { height:100%; background:linear-gradient(90deg,#FF6B35,#ff8f5e); border-radius:100px; transition:width .6s ease; }
.beta-counter-text { font-size:.85rem; color:var(--navy-500); }
.beta-btn-secondary { background:var(--navy-100)!important; color:var(--navy-600)!important; }
.beta-btn-secondary:hover { background:var(--navy-200)!important; }
.navbar-logo { display:flex; align-items:center; }
.navbar-logo img { display:block; height:28px; width:auto; }
.navbar .navbar-logo img { height:40px; position:relative; top:-10px; }
.nav-links { display:flex; align-items:center; gap:32px; }
.nav-links a { color:var(--navy-300); font-size:.875rem; font-weight:500; transition:color var(--transition); }
.nav-links a:hover { color:var(--white); }
.nav-cta { background:var(--blue-500); color:var(--white)!important; padding:10px 24px; border-radius:100px; font-weight:600; transition:all var(--transition); }
.nav-cta:hover { background:var(--blue-600); transform:translateY(-1px); box-shadow:0 8px 24px rgba(59,130,246,.3); }
.mobile-toggle { display:none; color:var(--white); font-size:1.5rem; }

/* Language Switcher */
.lang-switch { display:flex; align-items:center; gap:2px; margin-left:16px; background:rgba(255,255,255,.06); border-radius:6px; padding:2px; }
.lang-switch a { color:var(--navy-400); font-size:.7rem; font-weight:700; padding:4px 10px; border-radius:4px; transition:all var(--transition); text-transform:uppercase; letter-spacing:.05em; }
.lang-switch a:hover { color:var(--white); }
.lang-switch a.active { color:var(--blue-400); background:rgba(59,130,246,.15); }

/* ── Hero ───────────────────────────────────────────────── */
.hero { position:relative; min-height:100vh; display:flex; align-items:center; background:var(--navy-900); overflow:hidden; padding:120px 0 80px; }
.hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 80% 60% at 20% 40%,rgba(59,130,246,.12) 0%,transparent 60%),radial-gradient(ellipse 60% 50% at 80% 30%,rgba(129,140,248,.08) 0%,transparent 50%); }
.hero-orb { position:absolute; border-radius:50%; filter:blur(80px); opacity:.5; pointer-events:none; }
.hero-orb-1 { width:500px; height:500px; background:rgba(59,130,246,.15); top:-10%; left:-5%; animation:orbit1 20s ease-in-out infinite; }
.hero-orb-2 { width:400px; height:400px; background:rgba(129,140,248,.1); bottom:-5%; right:-5%; animation:orbit2 25s ease-in-out infinite; }
.hero .container { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.hero-content { animation:fadeUp 1s ease-out; }
.hero-badge { display:inline-flex; align-items:center; gap:8px; background:var(--glass-bg); border:1px solid var(--glass-border); border-radius:100px; padding:6px 16px; font-size:.8rem; color:var(--blue-300); margin-bottom:28px; backdrop-filter:blur(10px); }
.hero h1 { font-size:clamp(2.4rem,4.5vw,3.6rem); color:var(--white); margin-bottom:24px; letter-spacing:-.03em; }
.hero .gradient-text { background:linear-gradient(135deg,var(--blue-400),var(--indigo-400),var(--emerald-400)); background-size:200% 200%; animation:gradient-shift 4s ease-in-out infinite; -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.hero-sub { font-size:1.15rem; color:var(--navy-300); margin-bottom:36px; max-width:520px; line-height:1.8; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; }
.btn-primary { background:linear-gradient(135deg,var(--blue-500),var(--blue-600)); color:var(--white); padding:14px 32px; border-radius:100px; font-weight:700; font-size:.95rem; transition:all var(--transition); position:relative; overflow:hidden; display:inline-block; }
.btn-primary::after { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent); animation:shimmer 3s infinite; }
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 12px 32px rgba(59,130,246,.35); }
.btn-outline { background:transparent; color:var(--navy-200); padding:14px 32px; border-radius:100px; font-weight:600; font-size:.95rem; border:1px solid var(--navy-600); transition:all var(--transition); display:inline-block; }
.btn-outline:hover { border-color:var(--blue-400); color:var(--blue-400); transform:translateY(-2px); }
.hero-visual { animation:fadeUp 1s ease-out .3s both; }
.hero-mockup { background:var(--glass-bg); border:1px solid var(--glass-border); border-radius:var(--radius-xl); padding:16px; backdrop-filter:blur(20px); animation:float 6s ease-in-out infinite; box-shadow:0 0 60px rgba(59,130,246,.15); }
.mockup-header { display:flex; gap:6px; padding:8px 4px; margin-bottom:12px; }
.mockup-dot { width:10px; height:10px; border-radius:50%; }
.mockup-dot:nth-child(1) { background:#f43f5e; } .mockup-dot:nth-child(2) { background:#fbbf24; } .mockup-dot:nth-child(3) { background:#10b981; }
.mockup-body { background:rgba(15,23,42,.8); border-radius:var(--radius-md); padding:20px; }
.mockup-row { display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:var(--radius-sm); margin-bottom:6px; }
.mockup-row:hover { background:rgba(255,255,255,.03); }
.mockup-urg { width:28px; height:28px; border-radius:6px; display:flex; align-items:center; justify-content:center; font-size:.75rem; font-weight:800; color:var(--white); flex-shrink:0; }
.mockup-urg.u5 { background:var(--rose-500); } .mockup-urg.u4 { background:#ef4444; } .mockup-urg.u3 { background:#f59e0b; } .mockup-urg.u2 { background:var(--emerald-500); }
.mockup-info { flex:1; min-width:0; }
.mockup-name { color:var(--navy-200); font-size:.8rem; font-weight:600; }
.mockup-subj { color:var(--navy-400); font-size:.7rem; margin-top:2px; }
.mockup-tag { font-size:.65rem; padding:3px 8px; border-radius:100px; background:rgba(59,130,246,.15); color:var(--blue-400); flex-shrink:0; }

/* ── Transformation ─────────────────────────────────────── */
.transformation { background:var(--navy-50); }
.transform-card { margin-top:48px; border-radius:var(--radius-xl); overflow:hidden; border:1px solid var(--navy-100); box-shadow:0 8px 40px rgba(0,0,0,.06); }
.transform-top { display:grid; grid-template-columns:1fr auto 1fr; background:var(--white); }
.transform-side { padding:40px; }
.transform-side.before { background:linear-gradient(135deg,#fef2f2,#fff7ed); }
.transform-side.after { background:linear-gradient(135deg,#eff6ff,#eef2ff); }
.transform-label { display:inline-flex; align-items:center; gap:8px; font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; margin-bottom:16px; padding:4px 14px; border-radius:100px; }
.before .transform-label { background:rgba(244,63,94,.1); color:var(--rose-500); }
.after .transform-label { background:rgba(59,130,246,.1); color:var(--blue-500); }
.transform-time { font-family:var(--font-heading); font-size:2.8rem; font-weight:800; letter-spacing:-.03em; margin-bottom:4px; }
.before .transform-time { color:var(--rose-500); text-decoration:line-through; text-decoration-thickness:3px; }
.after .transform-time { color:var(--blue-500); }
.transform-per { font-size:.85rem; color:var(--navy-400); margin-bottom:24px; }
.transform-steps { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px; }
.transform-step { display:flex; align-items:center; gap:6px; padding:6px 14px; border-radius:100px; font-size:.78rem; font-weight:600; }
.before .transform-step { background:rgba(244,63,94,.06); color:var(--navy-600); border:1px solid rgba(244,63,94,.12); }
.after .transform-step { background:rgba(59,130,246,.06); color:var(--navy-600); border:1px solid rgba(59,130,246,.12); }
.transform-step i { font-size:.9rem; }
.before .transform-step i { color:var(--rose-400); }
.after .transform-step i { color:var(--blue-500); }
.transform-list li { display:flex; align-items:center; gap:10px; font-size:.88rem; color:var(--navy-600); padding:6px 0; }
.transform-list li i { font-size:1rem; flex-shrink:0; }
.before .transform-list li i { color:var(--rose-400); }
.after .transform-list li i { color:var(--emerald-500); }
.transform-divider { display:flex; align-items:center; justify-content:center; width:64px; background:linear-gradient(180deg,#fef2f2,var(--white),#eff6ff); position:relative; }
.transform-arrow { width:48px; height:48px; border-radius:50%; background:linear-gradient(135deg,var(--blue-500),var(--indigo-400)); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:1.3rem; box-shadow:0 4px 16px rgba(59,130,246,.3); }
.transform-bottom { display:grid; grid-template-columns:repeat(4,1fr); background:var(--navy-800); }
.transform-stat { padding:24px; text-align:center; border-right:1px solid rgba(255,255,255,.06); }
.transform-stat:last-child { border-right:none; }
.transform-stat-value { font-family:var(--font-heading); font-size:1.4rem; font-weight:800; color:var(--emerald-400); }
.transform-stat-label { font-size:.78rem; color:var(--navy-400); margin-top:4px; }

/* ── Features (Bento Grid) ──────────────────────────────── */
.features { background:var(--white); }
.features-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:20px; margin-top:60px; counter-reset:feature-count; }

.feature-card {
  padding:36px 32px 32px; border-radius:var(--radius-xl); background:var(--white); transition:all .4s cubic-bezier(.25,.46,.45,.94);
  position:relative; overflow:hidden; counter-increment:feature-count;
  border:1px solid var(--navy-100);
}

/* ── Decorative counter number ── */
.feature-card::before {
  content:counter(feature-count, decimal-leading-zero); position:absolute; top:16px; right:20px;
  font-family:var(--font-heading); font-size:4rem; font-weight:800; line-height:1; letter-spacing:-.04em;
  color:var(--navy-50); transition:color .4s ease; pointer-events:none; z-index:0;
}

/* ── Subtle glow on hover (bottom-right corner) ── */
.feature-card::after {
  content:''; position:absolute; bottom:-40px; right:-40px; width:160px; height:160px;
  border-radius:50%; opacity:0; transition:opacity .5s ease; pointer-events:none; z-index:0;
}

.feature-card:hover { transform:translateY(-6px); box-shadow:0 20px 60px rgba(0,0,0,.07); }
.feature-card:hover::before { color:var(--navy-100); }
.feature-card:hover::after { opacity:1; }

/* ── Bento spans ── */
.feature-card:nth-child(1) { grid-column:span 7; }
.feature-card:nth-child(2) { grid-column:span 5; }
.feature-card:nth-child(3) { grid-column:span 5; }
.feature-card:nth-child(4) { grid-column:span 7; }
.feature-card:nth-child(5) { grid-column:span 6; }
.feature-card:nth-child(6) { grid-column:span 6; }

/* ── Per-card accent colors ── */
.feature-card:nth-child(1)::after { background:radial-gradient(circle,rgba(59,130,246,.08),transparent 70%); }
.feature-card:nth-child(2)::after { background:radial-gradient(circle,rgba(129,140,248,.08),transparent 70%); }
.feature-card:nth-child(3)::after { background:radial-gradient(circle,rgba(16,185,129,.08),transparent 70%); }
.feature-card:nth-child(4)::after { background:radial-gradient(circle,rgba(251,191,36,.08),transparent 70%); }
.feature-card:nth-child(5)::after { background:radial-gradient(circle,rgba(244,63,94,.06),transparent 70%); }
.feature-card:nth-child(6)::after { background:radial-gradient(circle,rgba(51,65,85,.06),transparent 70%); }

/* ── Icon + title inline ── */
.feature-head { display:flex; align-items:center; gap:14px; margin-bottom:14px; position:relative; z-index:1; }
.feature-head i { font-size:1.5rem; flex-shrink:0; transition:transform .3s ease; }
.feature-card:hover .feature-head i { transform:scale(1.15); }

.feature-card:nth-child(1) .feature-head i { color:var(--blue-500); }
.feature-card:nth-child(2) .feature-head i { color:var(--indigo-400); }
.feature-card:nth-child(3) .feature-head i { color:var(--emerald-500); }
.feature-card:nth-child(4) .feature-head i { color:var(--amber-400); }
.feature-card:nth-child(5) .feature-head i { color:var(--rose-500); }
.feature-card:nth-child(6) .feature-head i { color:var(--navy-600); }

.feature-card h3 { font-size:1.1rem; margin:0; }
.feature-card p { font-size:.88rem; color:var(--navy-500); line-height:1.7; position:relative; z-index:1; }

/* ── Mini-illustration: urgency scale (card 1 — large) ── */
.feature-urgency-scale { display:flex; gap:6px; margin-top:18px; position:relative; z-index:1; }
.feature-urgency-dot {
  width:32px; height:32px; border-radius:8px; display:flex; align-items:center; justify-content:center;
  font-size:.7rem; font-weight:800; color:var(--white); transition:transform .3s ease;
}
.feature-urgency-dot:nth-child(1) { background:var(--emerald-500); }
.feature-urgency-dot:nth-child(2) { background:var(--emerald-400); }
.feature-urgency-dot:nth-child(3) { background:var(--amber-400); color:var(--navy-800); }
.feature-urgency-dot:nth-child(4) { background:#ef4444; }
.feature-urgency-dot:nth-child(5) { background:var(--rose-500); }
.feature-card:nth-child(1):hover .feature-urgency-dot { transform:translateY(-3px); }

/* ── Mini-illustration: bar chart (card 4 — large) ── */
.feature-bars { display:flex; align-items:flex-end; gap:5px; height:44px; margin-top:18px; position:relative; z-index:1; }
.feature-bar {
  width:18px; border-radius:4px 4px 0 0; transition:height .5s cubic-bezier(.34,1.56,.64,1);
  background:linear-gradient(180deg,var(--amber-400),rgba(251,191,36,.4));
}
.feature-bar:nth-child(1) { height:50%; } .feature-bar:nth-child(2) { height:75%; }
.feature-bar:nth-child(3) { height:40%; } .feature-bar:nth-child(4) { height:90%; }
.feature-bar:nth-child(5) { height:60%; } .feature-bar:nth-child(6) { height:100%; }
.feature-bar:nth-child(7) { height:55%; }
.feature-card:nth-child(4):hover .feature-bar { height:100%; }

/* ── MCP ────────────────────────────────────────────────── */
.mcp-section { background:linear-gradient(135deg,var(--navy-900),#0c1629); color:var(--white); position:relative; overflow:hidden; }
.mcp-section::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 60% 50% at 70% 50%,rgba(59,130,246,.08) 0%,transparent 60%); }
.mcp-section .container { position:relative; z-index:2; }
.mcp-section .section-title { color:var(--white); }
.mcp-section .section-sub { color:var(--navy-300); }
.mcp-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; margin-top:48px; align-items:center; }
.mcp-text p { color:var(--navy-300); font-size:.95rem; line-height:1.8; margin-bottom:20px; }
.mcp-note { background:rgba(59,130,246,.08); border-left:3px solid var(--blue-500); padding:16px 20px; border-radius:0 var(--radius-sm) var(--radius-sm) 0; font-size:.88rem; color:var(--blue-300); line-height:1.7; }
.compat-table { background:var(--glass-bg); border:1px solid var(--glass-border); border-radius:var(--radius-lg); padding:32px; backdrop-filter:blur(10px); }
.compat-row { display:flex; align-items:center; justify-content:space-between; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.06); }
.compat-row:last-child { border-bottom:none; }
.compat-version { font-weight:700; font-size:.95rem; color:var(--white); }
.compat-badges { display:flex; gap:10px; }
.compat-badge { font-size:.7rem; padding:4px 12px; border-radius:100px; font-weight:600; display:inline-flex; align-items:center; gap:4px; }
.compat-badge.yes { background:rgba(16,185,129,.15); color:var(--emerald-400); }
.compat-badge.no { background:rgba(244,63,94,.1); color:rgba(244,63,94,.5); }
.compat-badge.mcp { background:rgba(129,140,248,.15); color:var(--indigo-400); }

/* ── Steps ──────────────────────────────────────────────── */
.how-it-works { background:var(--navy-50); }
.steps-timeline { display:grid; grid-template-columns:repeat(5,1fr); gap:24px; margin-top:60px; position:relative; }
.steps-timeline::before { content:''; position:absolute; top:36px; left:10%; right:10%; height:2px; background:linear-gradient(90deg,var(--blue-500),var(--indigo-400),var(--emerald-400)); }
.step-item { text-align:center; position:relative; z-index:1; }
.step-num { width:72px; height:72px; border-radius:50%; background:var(--white); border:3px solid var(--blue-500); display:flex; align-items:center; justify-content:center; margin:0 auto 20px; font-size:1.3rem; color:var(--blue-500); box-shadow:0 4px 16px rgba(59,130,246,.15); transition:all var(--transition); }
.step-item:hover .step-num { background:var(--blue-500); color:var(--white); transform:scale(1.1); }
.step-item h3 { font-size:.95rem; margin-bottom:8px; }
.step-item p { font-size:.8rem; color:var(--navy-500); }

/* ── Video ──────────────────────────────────────────────── */
.video-section { background:var(--white); }
.video-wrapper { max-width:800px; margin:48px auto 0; border-radius:var(--radius-xl); overflow:hidden; position:relative; aspect-ratio:16/9; background:var(--navy-900); border:1px solid var(--navy-700); box-shadow:0 24px 64px rgba(0,0,0,.15); }
.video-placeholder { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; background:radial-gradient(ellipse 60% 60% at 50% 50%,rgba(59,130,246,.1) 0%,transparent 60%),var(--navy-900); }
.play-btn { width:80px; height:80px; border-radius:50%; background:var(--blue-500); display:flex; align-items:center; justify-content:center; font-size:1.5rem; color:var(--white); transition:all var(--transition); animation:pulse-glow 2s ease-in-out infinite; }
.play-btn:hover { transform:scale(1.1); background:var(--blue-600); }
.video-label { color:var(--navy-400); font-size:.85rem; margin-top:16px; }

/* ── Pricing ────────────────────────────────────────────── */
.pricing { background:var(--white); }
.pricing.alt-bg { background:var(--navy-50); }
.pricing-single { max-width:520px; margin:60px auto 0; }
.pricing-card { background:var(--white); border-radius:var(--radius-xl); padding:48px 40px; border:2px solid var(--blue-500); box-shadow:0 8px 40px rgba(59,130,246,.12); text-align:center; position:relative; }
.pricing-badge { position:absolute; top:-14px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg,var(--blue-500),var(--indigo-400)); color:var(--white); padding:6px 24px; border-radius:100px; font-size:.78rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.pricing-name { font-size:1.3rem; font-weight:700; color:var(--navy-800); margin-top:8px; }
.pricing-amount { font-family:var(--font-heading); font-size:3.5rem; font-weight:800; color:var(--navy-800); letter-spacing:-.03em; margin:16px 0 4px; }
.pricing-period { font-size:.9rem; color:var(--navy-400); }
.pricing-desc { font-size:.9rem; color:var(--navy-500); margin:16px 0 28px; }
.pricing-features { text-align:left; margin-bottom:32px; }
.pricing-features li { display:flex; align-items:center; gap:10px; padding:8px 0; font-size:.9rem; color:var(--navy-600); }
.pricing-features li i { color:var(--emerald-500); font-size:1rem; width:20px; flex-shrink:0; }
.pricing-btn { display:block; width:100%; text-align:center; padding:16px 32px; border-radius:100px; font-weight:700; font-size:1rem; background:linear-gradient(135deg,var(--blue-500),var(--blue-600)); color:var(--white); transition:all var(--transition); position:relative; overflow:hidden; }
.pricing-btn::after { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent); animation:shimmer 3s infinite; }
.pricing-btn:hover { transform:translateY(-2px); box-shadow:0 12px 32px rgba(59,130,246,.35); }
.pricing-note { text-align:center; margin-top:24px; font-size:.85rem; color:var(--navy-500); }
.pricing-note i { color:var(--emerald-500); margin-right:6px; }
.pricing-enterprise { text-align:center; margin-top:20px; font-size:.9rem; color:var(--navy-500); }
.pricing-enterprise a { color:var(--blue-500); font-weight:600; transition:color var(--transition); }
.pricing-enterprise a:hover { color:var(--blue-600); }

/* ── Testimonials ───────────────────────────────────────── */
.testimonials { background:var(--white); }
.testimonials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:60px; }
.testimonial-card { background:var(--navy-50); border-radius:var(--radius-lg); padding:32px; border:1px solid var(--navy-100); transition:all var(--transition); }
.testimonial-card:hover { transform:translateY(-4px); box-shadow:0 4px 24px rgba(0,0,0,.06); }
.testimonial-stars { color:var(--amber-400); font-size:.85rem; margin-bottom:16px; letter-spacing:2px; }
.testimonial-text { font-size:.92rem; color:var(--navy-600); line-height:1.8; margin-bottom:20px; font-style:italic; }
.testimonial-author { display:flex; align-items:center; gap:12px; }
.testimonial-avatar { width:44px; height:44px; border-radius:50%; background:linear-gradient(135deg,var(--blue-500),var(--indigo-400)); display:flex; align-items:center; justify-content:center; color:var(--white); font-weight:700; font-size:.95rem; flex-shrink:0; }
.testimonial-name { font-weight:700; font-size:.9rem; color:var(--navy-800); }
.testimonial-role { font-size:.8rem; color:var(--navy-500); }

/* ── Security ───────────────────────────────────────────── */
.security { background:linear-gradient(135deg,var(--navy-800),var(--navy-900)); color:var(--white); }
.security .section-title { color:var(--white); } .security .section-sub { color:var(--navy-300); }
.security-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:60px; }
.security-card { background:var(--glass-bg); border:1px solid var(--glass-border); border-radius:var(--radius-lg); padding:28px; text-align:center; backdrop-filter:blur(10px); transition:all var(--transition); }
.security-card:hover { background:rgba(255,255,255,.06); transform:translateY(-4px); }
.security-icon { width:56px; height:56px; border-radius:50%; background:rgba(59,130,246,.12); display:flex; align-items:center; justify-content:center; margin:0 auto 16px; font-size:1.4rem; color:var(--blue-400); }
.security-card h3 { font-size:.95rem; color:var(--white); margin-bottom:8px; }
.security-card p { font-size:.8rem; color:var(--navy-400); line-height:1.6; }

/* ── Partner ────────────────────────────────────────────── */
.partner { background:var(--navy-50); }
.partner-block { max-width:1060px; margin:0 auto; background:var(--white); border:1px solid var(--navy-100); border-radius:var(--radius-xl); display:grid; grid-template-columns:360px 1fr; position:relative; overflow:hidden; box-shadow:0 4px 32px rgba(15,23,42,.06); }
.partner-block h3 a { color:inherit; transition:color var(--transition); }
.partner-block h3 a:hover { color:#FF6B35; }
.partner-left { background:linear-gradient(160deg,#1a1f36 0%,#263445 100%); padding:44px 28px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:32px; }
.partner-logo-wrap { filter:brightness(0) invert(1); }
.partner-logo-wrap img { display:block; width:220px; height:auto; }
.partner-stats { display:flex; gap:0; background:rgba(255,255,255,.04); border-radius:12px; border:1px solid rgba(255,255,255,.08); overflow:hidden; width:100%; }
.partner-stat { flex:1; text-align:center; padding:14px 8px; position:relative; min-width:0; }
.partner-stat + .partner-stat::before { content:''; position:absolute; left:0; top:20%; height:60%; width:1px; background:rgba(255,255,255,.1); }
.partner-stat-number { display:block; font-family:var(--font-heading); font-size:1.7rem; font-weight:800; color:#FF6B35; line-height:1; }
.partner-stat-label { display:block; font-size:.65rem; color:rgba(255,255,255,.5); text-transform:uppercase; letter-spacing:.03em; margin-top:6px; line-height:1.3; }
.partner-right { padding:44px 48px; display:flex; flex-direction:column; justify-content:center; }
.partner-badge { display:inline-flex; align-items:center; gap:8px; background:rgba(255,107,53,.08); border-radius:100px; padding:6px 16px; font-size:.72rem; font-weight:700; color:#FF6B35; text-transform:uppercase; letter-spacing:.05em; margin-bottom:16px; width:fit-content; }
.partner-block h3 { font-size:1.35rem; color:var(--navy-800); margin-bottom:12px; line-height:1.35; }
.partner-block p { color:var(--navy-500); font-size:.9rem; line-height:1.75; margin-bottom:20px; }
.partner-services { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
a.partner-tag { display:inline-flex; align-items:center; gap:6px; background:var(--navy-50); border:1px solid var(--navy-100); border-radius:100px; padding:5px 14px; font-size:.78rem; font-weight:600; color:var(--navy-600); transition:all var(--transition); text-decoration:none; }
.partner-tag:hover { background:rgba(255,107,53,.06); border-color:rgba(255,107,53,.3); color:#FF6B35; }
.partner-tag i { font-size:.85rem; color:#FF6B35; }
.partner-cta { display:inline-flex; align-items:center; gap:8px; background:#FF6B35; color:var(--white); font-weight:700; font-size:.88rem; padding:10px 24px; border-radius:var(--radius-sm); transition:all var(--transition); width:fit-content; }
.partner-cta:hover { background:#e55a28; gap:12px; box-shadow:0 4px 16px rgba(255,107,53,.3); }

/* ── Contact ────────────────────────────────────────────── */
.contact { background:var(--white); }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; margin-top:60px; }
.contact-info h3 { font-size:1.4rem; color:var(--navy-800); margin-bottom:16px; }
.contact-info p { color:var(--navy-500); font-size:.95rem; line-height:1.8; margin-bottom:28px; }
.contact-detail { display:flex; align-items:center; gap:14px; margin-bottom:18px; }
.contact-detail-icon { width:44px; height:44px; border-radius:var(--radius-sm); background:rgba(59,130,246,.08); display:flex; align-items:center; justify-content:center; color:var(--blue-500); font-size:1.1rem; flex-shrink:0; }
.contact-detail-text { font-size:.9rem; color:var(--navy-600); }
.contact-detail-label { font-size:.75rem; color:var(--navy-400); text-transform:uppercase; letter-spacing:.05em; }
.contact-form { background:var(--navy-50); border-radius:var(--radius-xl); padding:40px; border:1px solid var(--navy-100); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-group { margin-bottom:18px; }
.form-group label { display:block; font-size:.85rem; font-weight:600; color:var(--navy-700); margin-bottom:6px; }
.form-group input, .form-group textarea, .form-group select { width:100%; padding:12px 16px; border:1px solid var(--navy-200); border-radius:var(--radius-sm); font-family:var(--font-body); font-size:.9rem; color:var(--navy-800); transition:border-color var(--transition); background:var(--white); }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { outline:none; border-color:var(--blue-500); box-shadow:0 0 0 3px rgba(59,130,246,.1); }
.form-group textarea { resize:vertical; min-height:100px; }
.form-checkbox { display:flex; align-items:flex-start; gap:10px; margin-bottom:24px; }
.form-checkbox input[type="checkbox"] { width:18px; height:18px; margin-top:2px; accent-color:var(--blue-500); flex-shrink:0; }
.form-checkbox label { font-size:.82rem; color:var(--navy-500); line-height:1.5; }
.form-submit { width:100%; padding:14px 32px; background:linear-gradient(135deg,var(--blue-500),var(--blue-600)); color:var(--white); border-radius:100px; font-weight:700; font-size:.95rem; transition:all var(--transition); }
.form-submit:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(59,130,246,.3); }
.form-submit:disabled { opacity:.6; cursor:not-allowed; transform:none; }
.form-error { color:var(--rose-500); font-size:.78rem; margin-top:4px; display:none; }
.form-group.has-error input, .form-group.has-error textarea, .form-group.has-error select { border-color:var(--rose-500); box-shadow:0 0 0 3px rgba(244,63,94,.08); }
.form-group.has-error .form-error, .form-checkbox.has-error + .form-error { display:block; }
.form-success { background:linear-gradient(135deg,rgba(16,185,129,.06),rgba(52,211,153,.06)); border:1px solid rgba(16,185,129,.25); border-radius:var(--radius-xl); padding:48px 32px; text-align:center; }
.form-success i { font-size:3rem; color:var(--emerald-500); display:block; margin-bottom:16px; }
.form-success h4 { font-size:1.2rem; color:var(--navy-800); margin-bottom:8px; }
.form-success p { font-size:.92rem; color:var(--navy-500); line-height:1.7; }

/* ── FAQ ────────────────────────────────────────────────── */
.faq { background:var(--navy-50); }
.faq-list { max-width:800px; margin:60px auto 0; }
.faq-item { border:1px solid var(--navy-100); border-radius:var(--radius-md); margin-bottom:12px; overflow:hidden; background:var(--white); transition:border-color var(--transition); }
.faq-item.active { border-color:var(--blue-300); }
.faq-question { width:100%; display:flex; align-items:center; justify-content:space-between; padding:20px 24px; font-size:.95rem; font-weight:600; color:var(--navy-800); text-align:left; transition:all var(--transition); }
.faq-question:hover { color:var(--blue-500); }
.faq-question i { font-size:1rem; color:var(--navy-400); transition:transform var(--transition); flex-shrink:0; margin-left:16px; }
.faq-item.active .faq-question i { transform:rotate(180deg); color:var(--blue-500); }
.faq-answer { max-height:0; overflow:hidden; transition:max-height .4s ease; }
.faq-answer-inner { padding:0 24px 20px; font-size:.9rem; color:var(--navy-500); line-height:1.8; }

/* ── Footer ─────────────────────────────────────────────── */
.footer { background:var(--navy-900); color:var(--navy-300); padding:80px 0 0; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; padding-bottom:48px; border-bottom:1px solid rgba(255,255,255,.06); }
.footer-brand p { font-size:.88rem; line-height:1.7; margin:16px 0 24px; color:var(--navy-400); }
.footer-social { display:flex; gap:12px; }
.footer-social a { width:36px; height:36px; border-radius:50%; background:rgba(255,255,255,.06); display:flex; align-items:center; justify-content:center; color:var(--navy-400); font-size:.9rem; transition:all var(--transition); }
.footer-social a:hover { background:var(--blue-500); color:var(--white); }
.footer-col h4 { color:var(--white); font-size:.9rem; font-weight:700; margin-bottom:20px; }
.footer-col ul li { margin-bottom:10px; }
.footer-col ul li a { font-size:.85rem; color:var(--navy-400); transition:color var(--transition); }
.footer-col ul li a:hover { color:var(--blue-400); }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; padding:24px 0; font-size:.8rem; color:var(--navy-500); }
.footer-bottom a { color:var(--blue-400); }

/* ── Responsive ─────────────────────────────────────────── */
@media(max-width:1024px) {
  .hero .container { grid-template-columns:1fr; text-align:center; }
  .hero-sub { margin-left:auto; margin-right:auto; }
  .hero-actions { justify-content:center; }
  .hero-visual { display:none; }
  .mcp-grid, .contact-grid { grid-template-columns:1fr; }
  .features-grid { grid-template-columns:repeat(2,1fr); }
  .features-grid .feature-card { grid-column:span 1; }
  .security-grid { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .steps-timeline { grid-template-columns:repeat(3,1fr); }
  .steps-timeline::before { display:none; }
  .transform-top { grid-template-columns:1fr; }
  .transform-divider { width:100%; height:48px; background:linear-gradient(90deg,#fef2f2,var(--white),#eff6ff); }
  .transform-bottom { grid-template-columns:repeat(2,1fr); }
  .partner-block { grid-template-columns:1fr; }
  .partner-left { padding:36px 32px; }
  .partner-right { padding:32px; }
}
@media(max-width:768px) {
  .section-pad { padding:64px 0; }
  .nav-links { display:none; }
  .nav-links.open { display:flex; flex-direction:column; position:absolute; top:100%; left:0; right:0; background:rgba(10,14,26,.98); backdrop-filter:blur(20px); padding:24px; gap:16px; border-bottom:1px solid var(--glass-border); }
  .mobile-toggle { display:block; }
  .features-grid, .testimonials-grid, .security-grid { grid-template-columns:1fr; }
  .features-grid .feature-card { grid-column:span 1; }
  .steps-timeline { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; gap:8px; text-align:center; }
  .form-row { grid-template-columns:1fr; }
  .transform-bottom { grid-template-columns:1fr 1fr; }
  .lang-switch { margin-left:0; justify-content:center; }
  .partner-block { grid-template-columns:1fr; }
  .partner-left { padding:32px 24px; gap:24px; }
  .partner-logo-wrap img { width:180px; }
  .partner-stats { gap:16px; }
  .partner-stat-number { font-size:1.25rem; }
  .partner-right { padding:28px 24px; }
  .partner-block h3 { font-size:1.2rem; }
}
@media(max-width:480px) {
  .steps-timeline { grid-template-columns:1fr; }
  .hero-actions { flex-direction:column; align-items:center; }
  .btn-primary, .btn-outline { width:100%; text-align:center; }
  .transform-bottom { grid-template-columns:1fr; }
  .partner-cta { width:100%; justify-content:center; }
}

/* ── Legal Pages ────────────────────────────────────────── */
.legal-hero { background:var(--navy-900); padding:140px 0 60px; text-align:center; position:relative; overflow:hidden; }
.legal-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(59,130,246,.1) 0%,transparent 60%); }
.legal-hero .container { position:relative; z-index:2; }
.legal-hero h1 { font-size:clamp(1.8rem,3vw,2.4rem); color:var(--white); margin-bottom:8px; letter-spacing:-.02em; }
.legal-hero .update-date { font-size:.88rem; color:var(--navy-400); }
.legal-body { max-width:800px; margin:0 auto; padding:60px 0 100px; }
.legal-body h2 { font-size:1.25rem; margin:40px 0 12px; color:var(--navy-800); padding-bottom:8px; border-bottom:1px solid var(--navy-100); }
.legal-body h3 { font-size:1.05rem; margin:28px 0 8px; color:var(--navy-700); }
.legal-body p { margin-bottom:16px; color:var(--navy-600); font-size:.92rem; line-height:1.85; }
.legal-body ul, .legal-body ol { margin:0 0 16px 24px; color:var(--navy-600); font-size:.92rem; line-height:1.85; }
.legal-body ul { list-style:disc; } .legal-body ol { list-style:decimal; }
.legal-body li { margin-bottom:6px; }
.legal-body a { color:var(--blue-500); text-decoration:underline; }
.legal-body a:hover { color:var(--blue-600); }
.legal-body table { width:100%; border-collapse:collapse; margin:16px 0; }
.legal-body th, .legal-body td { padding:10px 14px; border:1px solid var(--navy-200); font-size:.88rem; text-align:left; }
.legal-body th { background:var(--navy-50); font-weight:700; color:var(--navy-700); }
.legal-body strong { color:var(--navy-800); }
.legal-body .placeholder { background:var(--navy-50); border:1px dashed var(--navy-300); border-radius:var(--radius-sm); padding:12px 16px; font-size:.88rem; color:var(--navy-500); margin-bottom:16px; }
