/* ============================================
   ASM Radar — Landing Page Styles
   ============================================ */
:root {
    --bg-primary: #0a0a0f;
    --bg-secondary: #12121a;
    --bg-tertiary: #1a1a2e;
    --bg-card: rgba(22, 22, 35, 0.7);
    --bg-card-hover: rgba(30, 30, 50, 0.8);
    --bg-glass: rgba(255, 255, 255, 0.03);
    --text-primary: #f0f0f5;
    --text-secondary: #a0a0b8;
    --text-muted: #6b6b85;
    --text-accent: #06b6d4;
    --accent-primary: #06b6d4; /* Teal */
    --accent-secondary: #10b981; /* Emerald */
    --accent-gradient: linear-gradient(135deg, #06b6d4, #3b82f6, #10b981);
    --accent-gradient-subtle: linear-gradient(135deg, rgba(6,182,212,0.15), rgba(16,185,129,0.15));
    --danger: #f43f5e;
    --success: #10b981;
    --warning: #f59e0b;
    --border-color: rgba(255,255,255,0.06);
    --border-hover: rgba(255,255,255,0.12);
    --border-accent: rgba(6,182,212,0.3);
    --section-spacing: 120px;
    --container-max: 1200px;
    --container-padding: 24px;
    --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
    --radius-sm: 8px; --radius-md: 12px; --radius-lg: 16px; --radius-xl: 24px;
    --shadow-sm: 0 2px 8px rgba(0,0,0,0.3);
    --shadow-md: 0 8px 32px rgba(0,0,0,0.4);
    --shadow-lg: 0 16px 64px rgba(0,0,0,0.5);
    --shadow-glow: 0 0 40px rgba(6,182,212,0.15);
    --transition-fast: 150ms ease;
    --transition-base: 250ms ease;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
body { font-family:var(--font-sans); background:var(--bg-primary); color:var(--text-primary); line-height:1.6; overflow-x:hidden; position:relative; }

/* Background */
.bg-grid { position:fixed; top:0; left:0; width:100%; height:100%; background-image:linear-gradient(rgba(255,255,255,0.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.02) 1px,transparent 1px); background-size:60px 60px; pointer-events:none; z-index:0; }
.bg-glow { position:fixed; border-radius:50%; filter:blur(120px); pointer-events:none; z-index:0; animation:float 20s ease-in-out infinite; }
.bg-glow-1 { width:600px; height:600px; background:rgba(6,182,212,0.08); top:-200px; right:-100px; }
.bg-glow-2 { width:500px; height:500px; background:rgba(16,185,129,0.06); bottom:200px; left:-150px; animation-delay:-7s; }
@keyframes float { 0%,100%{transform:translate(0,0) scale(1)} 33%{transform:translate(30px,-30px) scale(1.05)} 66%{transform:translate(-20px,20px) scale(0.95)} }

/* Typography */
.gradient-text { background:var(--accent-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.section-tag { display:inline-block; font-size:0.75rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:var(--accent-primary); background:rgba(6,182,212,0.1); border:1px solid rgba(6,182,212,0.2); padding:6px 16px; border-radius:100px; margin-bottom:20px; }
.section-header { text-align:center; max-width:800px; margin:0 auto 64px; }
.section-title { font-size:clamp(2rem,4vw,3rem); font-weight:800; line-height:1.2; margin-bottom:16px; letter-spacing:-0.02em; }
.section-subtitle { font-size:1.1rem; color:var(--text-secondary); line-height:1.7; }
.section-container { max-width:var(--container-max); margin:0 auto; padding:0 var(--container-padding); position:relative; z-index:1; }

/* Buttons */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; font-family:var(--font-sans); font-weight:600; font-size:0.95rem; padding:12px 28px; border-radius:var(--radius-md); border:none; cursor:pointer; text-decoration:none; transition:all var(--transition-base); position:relative; overflow:hidden; }
.btn-primary { background:var(--accent-gradient); color:white; box-shadow:0 4px 20px rgba(6,182,212,0.3); }
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 8px 30px rgba(6,182,212,0.4); }
.btn-primary:active { transform:translateY(0); }
.btn-outline { background:transparent; color:var(--text-primary); border:1px solid var(--border-hover); }
.btn-outline:hover { border-color:var(--accent-primary); background:rgba(6,182,212,0.05); transform:translateY(-2px); }
.btn-lg { padding:16px 36px; font-size:1.05rem; }
.btn-block { width:100%; }

/* Nav */
#main-nav { position:fixed; top:0; left:0; right:0; z-index:100; padding:16px 0; transition:all var(--transition-base); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); background:rgba(10,10,15,0.8); border-bottom:1px solid transparent; }
#main-nav.scrolled { border-bottom-color:var(--border-color); padding:12px 0; }
.nav-container { max-width:var(--container-max); margin:0 auto; padding:0 var(--container-padding); display:flex; align-items:center; justify-content:space-between; }
.nav-logo { display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--text-primary); font-weight:700; font-size:1.15rem; }
.logo-icon { width:32px; height:32px; }
.nav-links { display:flex; align-items:center; gap:32px; }
.nav-links a { color:var(--text-secondary); text-decoration:none; font-size:0.9rem; font-weight:500; transition:color var(--transition-fast); }
.nav-links a:hover { color:var(--text-primary); }
.nav-cta { background:var(--accent-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-weight:600 !important; }

/* Floating Urgency Banner */
.urgency-banner { position:fixed; bottom:-60px; left:0; right:0; z-index:99; transition:bottom 0.4s ease; }
.urgency-banner.visible { bottom:0; }
.urgency-banner-inner { max-width:var(--container-max); margin:0 auto; padding:14px var(--container-padding); background:rgba(6,182,212,0.95); backdrop-filter:blur(10px); display:flex; align-items:center; justify-content:center; gap:16px; font-size:0.9rem; color:white; font-weight:500; }
.urgency-pulse { width:8px; height:8px; border-radius:50%; background:#f43f5e; animation:pulse-dot 1.5s infinite; flex-shrink:0; }
.banner-cta { color:white; font-weight:700; text-decoration:underline; text-underline-offset:2px; white-space:nowrap; }

/* Hero */
#hero { padding:160px 0 100px; position:relative; z-index:1; overflow:hidden; }
.hero-container { max-width:var(--container-max); margin:0 auto; padding:0 var(--container-padding); display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.hero-content { text-align:left; }
.hero-badge { display:inline-flex; align-items:center; gap:8px; font-size:0.85rem; font-weight:500; color:var(--text-accent); background:rgba(6,182,212,0.08); border:1px solid rgba(6,182,212,0.2); padding:8px 20px; border-radius:100px; margin-bottom:24px; animation:fadeInDown 0.6s ease; }
.badge-dot { width:8px; height:8px; border-radius:50%; background:var(--success); animation:pulse-dot 2s ease-in-out infinite; }
@keyframes pulse-dot { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(0.8)} }
.hero-title { font-size:clamp(2.5rem,5vw,4.2rem); font-weight:900; line-height:1.1; margin-bottom:24px; letter-spacing:-0.03em; }
.hero-line { display:block; }
.hero-subtitle { font-size:1.15rem; color:var(--text-secondary); max-width:600px; margin-bottom:36px; line-height:1.8; }
.hero-subtitle strong { color:var(--text-primary); }
.hero-cta-group { display:flex; align-items:center; gap:16px; margin-bottom:24px; }
.hero-guarantee { font-size:0.85rem; color:var(--text-muted); display:flex; align-items:center; gap:6px; }

/* Hero Mockup (App UI Desktop) */
.hero-mockup { position:relative; z-index:2; perspective:1000px; width:100%; }
.mockup-window { background:var(--bg-secondary); border:1px solid rgba(255,255,255,0.08); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg), var(--shadow-glow); transform:rotateY(-5deg) rotateX(5deg); transition:transform 0.5s; display:flex; flex-direction:column; height:360px; }
.mockup-window:hover { transform:rotateY(0) rotateX(0); }
.mockup-header { background:rgba(255,255,255,0.03); border-bottom:1px solid rgba(255,255,255,0.05); padding:12px 16px; display:flex; gap:8px; align-items:center; }
.mockup-dot { width:10px; height:10px; border-radius:50%; }
.md-red { background:#f43f5e; } .md-yel { background:#f59e0b; } .md-grn { background:#10b981; }
.mockup-header-address { margin-left:16px; flex:1; background:rgba(0,0,0,0.2); border-radius:4px; height:20px; font-size:10px; font-family:var(--font-mono); color:var(--text-muted); padding:0 8px; display:flex; align-items:center; }
.mockup-body { flex:1; display:flex; background:var(--bg-primary); }
.mockup-sidebar { width:60px; background:rgba(255,255,255,0.02); border-right:1px solid rgba(255,255,255,0.05); padding:16px 0; display:flex; flex-direction:column; align-items:center; gap:16px; }
.mockup-nav-item { width:24px; height:24px; border-radius:6px; background:rgba(255,255,255,0.05); }
.mockup-nav-item.active { background:var(--accent-primary); }
.mockup-content { flex:1; padding:20px; display:flex; flex-direction:column; gap:16px; }
.mockup-widget-row { display:flex; gap:16px; }
.mockup-widget { background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.05); border-radius:8px; padding:12px; flex:1; display:flex; flex-direction:column; gap:8px; }
.mockup-w-title { width:40%; height:8px; background:rgba(255,255,255,0.1); border-radius:4px; }
.mockup-w-val { width:70%; height:16px; background:var(--accent-primary); border-radius:4px; opacity:0.8; }
.mockup-w-val.danger { background:var(--danger); }
.mockup-table { flex:1; background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.05); border-radius:8px; padding:12px; }
.mockup-t-row { display:flex; gap:12px; margin-bottom:12px; border-bottom:1px solid rgba(255,255,255,0.02); padding-bottom:12px; }
.mockup-t-cel { height:8px; background:rgba(255,255,255,0.1); border-radius:4px; }

/* Integrations / Trust Bar */
.trust-bar { border-top:1px solid var(--border-color); border-bottom:1px solid var(--border-color); background:rgba(0,0,0,0.3); backdrop-filter:blur(10px); padding:32px 0; overflow:hidden; }
.trust-container { max-width:var(--container-max); margin:0 auto; padding:0 var(--container-padding); display:flex; flex-direction:column; align-items:center; gap:24px; }
.trust-label { font-size:0.8rem; font-family:var(--font-mono); color:var(--text-muted); text-transform:uppercase; letter-spacing:0.1em; }
.trust-logos { display:flex; flex-wrap:wrap; justify-content:center; gap:48px; opacity:0.5; filter:grayscale(100%); transition:all 0.5s; cursor:default; }
.trust-logos:hover { opacity:1; filter:grayscale(0%); }
.trust-logo { display:flex; align-items:center; gap:8px; font-weight:700; font-size:1.2rem; color:var(--text-secondary); }

/* Onboarding Flow (3 Steps) */
.onboarding-section { padding:80px 0; background:linear-gradient(to bottom, var(--bg-primary), var(--bg-secondary)); border-bottom:1px solid var(--border-color); }
.onboarding-flow { display:flex; justify-content:center; align-items:flex-start; gap:20px; max-width:1000px; margin:0 auto; padding:0 24px; }
.onboarding-step { flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; position:relative; }
.onboarding-step:not(:last-child)::after { content:''; position:absolute; top:32px; right:-50%; width:100%; height:2px; background:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='0' y1='1' x2='100%25' y2='1' stroke='%23a0a0b8' stroke-width='2' stroke-dasharray='6 6' stroke-opacity='0.3' fill='none'/%3E%3C/svg%3E"); z-index:1; }
.step-icon { width:64px; height:64px; border-radius:16px; background:var(--bg-card); border:1px solid var(--border-color); display:flex; align-items:center; justify-content:center; margin-bottom:20px; position:relative; z-index:2; color:var(--accent-primary); box-shadow:var(--shadow-md); transition:transform 0.3s; }
.onboarding-step:hover .step-icon { transform:translateY(-5px) scale(1.05); border-color:var(--accent-primary); box-shadow:var(--shadow-glow); }
.step-title { font-weight:700; font-size:1.1rem; color:var(--text-primary); margin-bottom:8px; }
.step-desc { font-size:0.9rem; color:var(--text-secondary); line-height:1.5; }

/* Value/Pain Points Grid */
.value-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:24px; margin-top:40px; }
.value-card { background:transparent; border:1px solid var(--border-color); border-radius:var(--radius-xl); padding:40px 32px; transition:all var(--transition-base); }
.value-card:hover { border-color:var(--border-accent); background:rgba(255,255,255,0.02); }
.value-icon { font-size:2rem; margin-bottom:24px; }
.value-card h3 { font-size:1.3rem; margin-bottom:16px; color:var(--text-primary); }
.value-card p { color:var(--text-secondary); font-size:0.95rem; line-height:1.6; }

/* Engines Section (Features) */
.engines-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; }
.engine-card { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--radius-xl); padding:32px; position:relative; overflow:hidden; transition:all var(--transition-base); }
.engine-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-md); border-color:var(--border-accent); }
.engine-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:3px; background:var(--accent-gradient-subtle); opacity:0; transition:opacity 0.3s; }
.engine-card:hover::before { opacity:1; background:var(--accent-gradient); }
.engine-icon { width:48px; height:48px; border-radius:12px; background:rgba(6,182,212,0.1); display:flex; align-items:center; justify-content:center; margin-bottom:24px; color:var(--accent-primary); }
.engine-title { font-size:1.25rem; font-weight:700; margin-bottom:8px; color:var(--text-primary); }
.engine-quote { font-style:italic; font-size:0.9rem; color:var(--text-muted); margin-bottom:16px; }
.engine-list { list-style:none; }
.engine-list li { position:relative; padding-left:24px; margin-bottom:12px; font-size:0.9rem; color:var(--text-secondary); }
.engine-list li::before { content:'→'; position:absolute; left:0; color:var(--accent-primary); font-weight:bold; }

/* Credentials Section */
#credentials { background:rgba(6,182,212,0.02); border-top:1px solid var(--border-color); border-bottom:1px solid var(--border-color); }
.cred-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:16px; margin-bottom:32px; }
.cred-card { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--radius-md); padding:20px; text-align:center; transition:all var(--transition-fast); }
.cred-card:hover { border-color:var(--accent-secondary); background:rgba(16,185,129,0.05); transform:translateY(-3px); box-shadow:0 10px 20px rgba(0,0,0,0.2); }
.cred-title { font-size:1.2rem; font-weight:800; font-family:var(--font-mono); color:var(--text-primary); margin-bottom:8px; letter-spacing:1px; }
.cred-desc { font-size:0.8rem; color:var(--text-secondary); line-height:1.4; }

/* Dashboard / Continuous Vigilance */
.vigilance-feature { display:flex; gap:20px; margin-bottom:40px; background:rgba(255,255,255,0.02); border:1px solid var(--border-color); padding:32px; border-radius:var(--radius-xl); align-items:center; }
.vigilance-feature.reverse { flex-direction:row-reverse; }
.vf-content { flex:1; }
.vf-content h3 { font-size:1.6rem; margin-bottom:12px; color:var(--text-primary); }
.vf-content p { color:var(--text-secondary); margin-bottom:16px; line-height:1.7; }
.vf-list { list-style:none; }
.vf-list li { padding-left:24px; position:relative; margin-bottom:8px; color:var(--text-primary); font-weight:500; }
.vf-list li::before { content:'✓'; color:var(--success); position:absolute; left:0; }
.vf-visual { flex:1; background:var(--bg-secondary); border-radius:var(--radius-md); padding:20px; border:1px solid var(--border-color); box-shadow:var(--shadow-md); }
.stat-box { display:flex; justify-content:space-between; padding:12px 0; border-bottom:1px solid rgba(255,255,255,0.05); }
.stat-box:last-child { border-bottom:none; }

/* Comparison Table */
.compare-section { padding:80px 0; background:var(--bg-primary); border-bottom:1px solid var(--border-color); }
.compare-container { max-width:900px; margin:0 auto; padding:0 24px; }
.compare-table-wrapper { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg); }
.compare-table { width:100%; border-collapse:collapse; text-align:left; font-size:0.95rem; }
.compare-table th { padding:20px 24px; font-family:var(--font-mono); text-transform:uppercase; font-size:0.85rem; letter-spacing:0.05em; background:rgba(0,0,0,0.4); border-bottom:1px solid var(--border-color); }
.compare-table th:nth-child(2) { color:var(--accent-primary); font-weight:800; background:rgba(6,182,212,0.05); }
.compare-table th:nth-child(3) { color:var(--text-muted); }
.compare-table td { padding:20px 24px; border-bottom:1px solid rgba(255,255,255,0.03); color:var(--text-secondary); transition:background 0.2s; }
.compare-table tr:hover td { background:rgba(255,255,255,0.02); }
.compare-table tr:last-child td { border-bottom:none; }
.compare-table td:nth-child(1) { color:var(--text-primary); font-weight:600; }
.compare-table td:nth-child(2) { color:var(--text-primary); font-weight:600; background:rgba(6,182,212,0.02); }
.compare-table td:nth-child(3) { color:var(--text-muted); }
.compare-table svg { width:18px; height:18px; display:inline-block; vertical-align:middle; margin-right:8px; }
.compare-table .feature-yes { color:var(--success); }

/* Pricing Override specifically for ASM */
/* Pricing */
#pricing { padding:var(--section-spacing) 0; position:relative; z-index:1; }
.pricing-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:24px; max-width:1200px; margin:0 auto; align-items:stretch; }
.pricing-grid-5 { grid-template-columns:repeat(5, 1fr); max-width:1400px; gap:16px; }
.pricing-card { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--radius-xl); padding:40px 28px; position:relative; transition:all var(--transition-base); display:flex; flex-direction:column; }
.pricing-card .pricing-features { flex:1; }
.pricing-card:hover { transform:translateY(-8px); box-shadow:var(--shadow-md); }
.pricing-popular { border-color:var(--accent-primary); background:rgba(6,182,212,0.05); box-shadow:var(--shadow-glow); transform:scale(1.02); }
.pricing-popular:hover { transform:scale(1.02) translateY(-8px); }
.pricing-card-free { border-color:rgba(6,182,212,0.25); background:rgba(6,182,212,0.03); }
.pricing-card-free:hover { border-color:var(--accent-primary); box-shadow:0 0 30px rgba(6,182,212,0.1); }
.popular-badge { position:absolute; top:-14px; left:50%; transform:translateX(-50%); background:var(--accent-gradient); color:white; font-size:0.75rem; font-weight:700; padding:6px 16px; border-radius:100px; text-transform:uppercase; letter-spacing:0.05em; white-space:nowrap; box-shadow:0 4px 12px rgba(6,182,212,0.4); }
.pricing-header { text-align:center; margin-bottom:32px; padding-bottom:32px; border-bottom:1px solid var(--border-color); }
.pricing-header h3 { font-size:1.4rem; font-weight:600; margin-bottom:12px; }
.price { display:flex; justify-content:center; align-items:baseline; margin-bottom:8px; }
.price-amount { font-size:3rem; font-weight:800; letter-spacing:-0.03em; line-height:1; }
.price-period { font-size:1rem; color:var(--text-muted); font-weight:500; margin-left:4px; }
.pricing-desc { font-size:0.9rem; color:var(--text-secondary); }
.pricing-features { list-style:none; margin-bottom:32px; }
.pricing-features li { display:flex; align-items:center; gap:12px; margin-bottom:16px; font-size:0.95rem; }
.pricing-features li svg { width:20px; height:20px; flex-shrink:0; }
.pricing-features li.included svg { color:var(--success); }
.pricing-features li.excluded { color:var(--text-muted); }
.pricing-features li.excluded svg { color:var(--text-muted); }
.pricing-features li.highlight { color:var(--text-primary); font-weight:500; }
.pricing-card-footer { margin-top:auto; }

/* Enterprise Banner */
.enterprise-banner { margin-top:32px; background:var(--bg-card); border:1px solid var(--border-accent); border-radius:var(--radius-xl); padding:0; position:relative; overflow:hidden; }
.enterprise-banner::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--accent-gradient); }
.enterprise-banner-content { display:flex; align-items:center; justify-content:space-between; padding:40px 48px; gap:40px; }
.enterprise-banner-left { flex:1; }
.enterprise-banner-tag { font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:0.08em; color:var(--accent-primary); margin-bottom:12px; }
.enterprise-banner-title { font-size:1.4rem; font-weight:700; color:var(--text-primary); margin-bottom:8px; line-height:1.3; }
.enterprise-banner-desc { font-size:0.9rem; color:var(--text-secondary); line-height:1.6; margin:0; }
.enterprise-banner-right { display:flex; flex-direction:column; align-items:center; gap:10px; flex-shrink:0; }
.enterprise-banner-note { font-size:0.75rem; color:var(--text-muted); }

/* FOMO Tier Tracker */
#tier-tracker { padding:var(--section-spacing) 0; }
.tier-tracker-wrapper { max-width:800px; margin:0 auto; }
.tier-tracker-summary { display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; margin-bottom:40px; }
.tier-summary-stat { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--radius-lg); padding:28px 20px; text-align:center; transition:all var(--transition-fast); }
.tier-summary-stat:hover { border-color:var(--border-accent); transform:translateY(-3px); box-shadow:var(--shadow-md); }
.tier-summary-highlight { border-color:var(--accent-primary); background:rgba(6,182,212,0.05); box-shadow:var(--shadow-glow); }
.tier-summary-number { display:block; font-size:2.4rem; font-weight:800; color:var(--text-primary); letter-spacing:-0.03em; line-height:1; margin-bottom:8px; }
.tier-summary-highlight .tier-summary-number { color:var(--accent-primary); }
.tier-summary-label { font-size:0.8rem; font-weight:600; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.06em; }
.tier-tracker-grid { display:flex; flex-direction:column; gap:16px; }
.tier-row { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--radius-lg); padding:24px 28px; transition:all var(--transition-base); }
.tier-row:hover { border-color:var(--border-accent); }
.tier-row-active { border-color:var(--accent-primary); background:rgba(6,182,212,0.04); box-shadow:0 0 20px rgba(6,182,212,0.08); }
.tier-row-filled { opacity:0.5; }
.tier-row-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.tier-row-left { display:flex; align-items:center; gap:14px; }
.tier-row-name { font-size:1.05rem; font-weight:700; color:var(--text-primary); }
.tier-row-discount { font-size:0.8rem; font-weight:700; color:var(--accent-secondary); background:rgba(16,185,129,0.1); border:1px solid rgba(16,185,129,0.2); padding:3px 10px; border-radius:100px; }
.tier-row-filled .tier-row-discount { color:var(--text-muted); background:rgba(255,255,255,0.04); border-color:var(--border-color); }
.tier-status { font-size:0.7rem; font-weight:700; text-transform:uppercase; letter-spacing:0.08em; padding:4px 12px; border-radius:100px; }
.tier-status-active { color:var(--accent-primary); background:rgba(6,182,212,0.12); border:1px solid rgba(6,182,212,0.25); animation:pulse-glow 2s ease-in-out infinite; }
.tier-status-filled { color:var(--danger); background:rgba(239,68,68,0.1); border:1px solid rgba(239,68,68,0.2); }
.tier-status-upcoming { color:var(--text-muted); background:rgba(255,255,255,0.04); border:1px solid var(--border-color); }
@keyframes pulse-glow { 0%,100%{box-shadow:0 0 0 0 rgba(6,182,212,0)} 50%{box-shadow:0 0 12px 2px rgba(6,182,212,0.2)} }
.tier-progress-track { height:8px; background:rgba(255,255,255,0.06); border-radius:100px; overflow:hidden; margin-bottom:10px; }
.tier-progress-fill { height:100%; border-radius:100px; transition:width 0.8s cubic-bezier(0.4,0,0.2,1); background:var(--border-color); }
.tier-progress-active { background:var(--accent-gradient); }
.tier-progress-full { background:linear-gradient(135deg, var(--danger), #dc2626); }
.tier-row-meta { display:flex; justify-content:space-between; align-items:center; }
.tier-row-claimed { font-size:0.82rem; color:var(--text-muted); }
.tier-row-remaining { font-size:0.82rem; font-weight:600; color:var(--accent-primary); }
.tier-row-active .tier-row-remaining { animation:pulse-text 2s ease-in-out infinite; }
@keyframes pulse-text { 0%,100%{opacity:1} 50%{opacity:0.6} }

/* Lead Capture Form */
.capture-card { max-width:800px; margin:0 auto; background:var(--bg-card); border:1px solid var(--border-accent); border-radius:var(--radius-xl); padding:48px; box-shadow:var(--shadow-glow); position:relative; overflow:hidden; }
.capture-card::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:var(--accent-gradient); }
.coupon-rules { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:32px 0; padding:24px; background:rgba(255,255,255,0.02); border:1px solid var(--border-color); border-radius:var(--radius-lg); }
.coupon-rules .rule { display:flex; align-items:center; gap:12px; font-size:0.9rem; color:var(--text-secondary); }
.coupon-rules .rule span { font-size:1.2rem; }
.lead-form { max-width:100%; margin:0 auto; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:20px; }
.form-row-3 { grid-template-columns:1fr 1fr 1fr; }
.form-group select { appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23a0a0b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 16px center; padding-right:40px; cursor:pointer; }
.form-group { display:flex; flex-direction:column; gap:8px; text-align:left; }
.form-group label { font-size:0.85rem; font-weight:600; color:var(--text-secondary); }
.form-group label .required { color:var(--danger); }
.form-group input, .form-group select { width:100%; padding:14px 16px; background:var(--bg-secondary); border:1px solid var(--border-color); border-radius:var(--radius-md); color:var(--text-primary); font-family:var(--font-sans); font-size:1rem; outline:none; transition:all var(--transition-fast); }
.form-group input:focus, .form-group select:focus { border-color:var(--accent-primary); box-shadow:0 0 0 3px rgba(6,182,212,0.1); }
.form-select { appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23a0a0b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 16px center; cursor:pointer; }
.btn-submit { margin-top:12px; box-shadow:0 8px 24px rgba(6,182,212,0.3); }
.btn-submit:hover { box-shadow:0 12px 32px rgba(6,182,212,0.4); }
.form-note { font-size:0.8rem; color:var(--text-muted); margin-top:16px; text-align:center; }

/* Success State */
.success-state { text-align:center; padding:20px 0; }
.success-icon { width:64px; height:64px; margin:0 auto 24px; animation:scaleIn 0.5s cubic-bezier(0.175,0.885,0.32,1.275); }
.success-state h3 { font-size:1.8rem; font-weight:800; margin-bottom:12px; color:var(--text-primary); }
.success-state p { color:var(--text-secondary); font-size:1.05rem; margin-bottom:32px; }
.coupon-display { display:flex; justify-content:center; margin-bottom:32px; }
.coupon-card { background:linear-gradient(135deg, rgba(22,22,35,0.9), rgba(30,30,50,0.9)); border:2px dashed var(--accent-secondary); border-radius:var(--radius-lg); padding:24px 48px; text-align:center; position:relative; }
.coupon-label { font-size:0.85rem; color:var(--accent-secondary); font-weight:700; text-transform:uppercase; letter-spacing:0.1em; margin-bottom:8px; }
.coupon-code { font-family:var(--font-mono); font-size:2.5rem; font-weight:800; color:white; letter-spacing:4px; margin-bottom:16px; text-shadow:0 2px 10px rgba(16,185,129,0.3); }
.btn-copy { background:rgba(255,255,255,0.05); color:var(--text-primary); border:1px solid var(--border-color); padding:8px 16px; border-radius:100px; font-size:0.85rem; font-weight:600; cursor:pointer; transition:all 0.2s; display:inline-flex; align-items:center; gap:6px; }
.btn-copy:hover { background:rgba(255,255,255,0.1); color:white; }
.success-next-steps { text-align:left; background:rgba(255,255,255,0.02); border:1px solid var(--border-color); border-radius:var(--radius-md); padding:24px; }
.success-next-steps h4 { font-size:1rem; margin-bottom:16px; color:var(--text-primary); }
.success-next-steps ol { padding-left:20px; color:var(--text-secondary); font-size:0.95rem; }
.success-next-steps li { margin-bottom:12px; }

/* FAQ Section */
.faq-grid { max-width:800px; margin:0 auto; display:flex; flex-direction:column; gap:16px; }
.faq-item { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--radius-md); overflow:hidden; }
.faq-question { padding:20px 24px; font-size:1.05rem; font-weight:600; cursor:pointer; display:flex; justify-content:space-between; align-items:center; transition:background var(--transition-fast); }
.faq-question:hover { background:rgba(255,255,255,0.02); }
.faq-answer { padding:0 24px 24px; font-size:0.95rem; color:var(--text-secondary); line-height:1.6; display:none; }
.faq-item.active .faq-answer { display:block; }
.faq-icon { color:var(--accent-primary); transition:transform 0.3s; }
.faq-item.active .faq-icon { transform:rotate(180deg); }

/* Custom Animations */
@keyframes fadeInDown { from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:translateY(0)} }
@keyframes scaleIn { from{opacity:0;transform:scale(0.8)} to{opacity:1;transform:scale(1)} }
.spinner { width:20px; height:20px; animation:spin 1s linear infinite; }
@keyframes spin { 100%{transform:rotate(360deg)} }

/* Animations on Scroll */
.fade-in { opacity:0; transform:translateY(30px); transition:opacity 0.8s ease, transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1); }
.fade-in.visible { opacity:1; transform:translateY(0); }

/* Responsive Adjustments */
@media (max-width: 1280px) {
    .pricing-grid-5 { grid-template-columns:repeat(3, 1fr); max-width:960px; }
}
@media (max-width: 992px) {
    .hero-container { grid-template-columns:1fr; text-align:center; }
    .hero-content { text-align:center; }
    .hero-cta-group { justify-content:center; }
    .hero-guarantee { justify-content:center; }
    .onboarding-flow { flex-direction:column; gap:40px; }
    .onboarding-step:not(:last-child)::after { display:none; }
    .vigilance-feature, .vigilance-feature.reverse { flex-direction:column; }
    .pricing-grid { grid-template-columns:repeat(2, 1fr); max-width:800px; margin:0 auto; }
    .pricing-grid-5 { grid-template-columns:repeat(2, 1fr); max-width:800px; }
    .pricing-popular { transform:none; }
    .pricing-popular:hover { transform:translateY(-8px); }
}
@media (max-width: 768px) {
    :root { --section-spacing:80px; }
    .nav-links { display:none; }
    .hero-title { font-size:2.5rem; }
    .hero-cta-group { flex-direction:column; width:100%; }
    .hero-cta-group .btn { width:100%; }
    .form-row, .form-row-3 { grid-template-columns:1fr; gap:12px; }
    .coupon-rules { grid-template-columns:1fr; }
    .pricing-grid, .pricing-grid-5, .engines-grid, .value-grid, .cred-grid { grid-template-columns:1fr; max-width:400px; margin:0 auto; }
    .enterprise-banner-content { flex-direction:column; text-align:center; padding:32px 24px; }
    .tier-tracker-summary { grid-template-columns:1fr; gap:12px; }
    .tier-row { padding:20px; }
}
