
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg:            #07071a;
  --bg-alt:        #0b0b22;
  --purple:        #8b5cf6;
  --purple-deep:   #6d28d9;
  --purple-soft:   #a78bfa;
  --purple-glow:   rgba(139,92,246,0.3);
  --purple-tint:   rgba(139,92,246,0.08);
  --purple-tint2:  rgba(139,92,246,0.15);
  --green:         #10b981;
  --text:          #eeeeff;
  --text-2:        rgba(238,238,255,0.52);
  --text-3:        rgba(238,238,255,0.28);
  --border:        rgba(255,255,255,0.07);
  --border-2:      rgba(255,255,255,0.12);
  --border-purple: rgba(139,92,246,0.4);
  --card:          rgba(255,255,255,0.03);
  --r-sm:  8px;  --r-md: 12px;  --r-lg: 18px;  --r-xl: 24px;
  --max-w: 1140px;
}

html { scroll-behavior: smooth; }
body { font-family:'Inter',system-ui,sans-serif; background:var(--bg); color:var(--text); overflow-x:hidden; line-height:1.6; -webkit-font-smoothing:antialiased; transition:background .3s, color .3s; }

body::before { content:''; position:fixed; inset:0; background-image:radial-gradient(rgba(255,255,255,0.035) 1px, transparent 1px); background-size:32px 32px; pointer-events:none; z-index:0; transition:opacity .3s; }

.hidden{
  display: none !important;
}

.close-button {
  /* SCALING CONTROL: Adjust --size, and --thickness updates automatically */
  display: none;
  --size: 30px; 
  --thickness: calc(var(--size) * 0.067); 
  --color: rgb(238, 238, 255); 
  opacity: .52;
  /*background:var(--text-2);*/

  width: var(--size);
  height: var(--size);
  position: relative;
  cursor: pointer;
}

.close-button::before,
.close-button::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: var(--thickness);
  background-color: var(--color);
  transform: translateY(-50%) rotate(45deg);
}

.close-button::after { transform: translateY(-50%) rotate(-45deg); }

html.light .close-button{
  --color: rgba(12,12,30);
  opacity: .60;
}

html.light .brand-logo {
  content: url('./media_assets/v2-panchannel-logo-black.svg');
}

/* ── LIGHT MODE ── */
html.light {
  --bg:           #f8f7ff;
  --bg-alt:       #edeaf8;
  --text:         #0c0c1e;
  --text-2:       rgba(12,12,30,0.60);
  --text-3:       rgba(12,12,30,0.38);
  --border:       rgba(109,40,217,0.18);
  --border-2:     rgba(0,0,0,0.15);
  --card:         rgba(255,255,255,0.9);
  --purple-tint:  rgba(109,40,217,0.08);
  --purple-tint2: rgba(109,40,217,0.14);
  --border-purple:rgba(109,40,217,0.45);
}
/* aurora mesh background — replaces dots entirely */
html.light body {
  background:
    radial-gradient(ellipse 75% 60% at 5%  10%, rgba(167,139,250,.32) 0%, transparent 55%),
    radial-gradient(ellipse 60% 50% at 95%  5%, rgba(216,180,254,.26) 0%, transparent 52%),
    radial-gradient(ellipse 55% 55% at 88% 60%, rgba(232,121,249,.16) 0%, transparent 50%),
    radial-gradient(ellipse 65% 50% at 20% 88%, rgba(139,92,246,.20)  0%, transparent 55%),
    radial-gradient(ellipse 50% 45% at 60% 45%, rgba(99,179,237,.12)  0%, transparent 50%),
    #f4f2ff;
}
html.light body::before { display:none; }
/* sections transparent so aurora shows through */
html.light section { background:transparent; }
html.light section.alt-bg { background:rgba(220,215,248,.38); backdrop-filter:blur(0px); }
/* orbs — vivid pastel blobs layered on top */
html.light .orb-1 { background:radial-gradient(circle,rgba(167,139,250,.38),transparent 65%); }
html.light .orb-2 { background:radial-gradient(circle,rgba(232,121,249,.22),transparent 65%); }
html.light .orb-3 { background:radial-gradient(circle,rgba(99,179,237,.20),transparent 65%); }
/* nav */
html.light nav { background:rgba(244,241,255,.82) !important; backdrop-filter:blur(28px) saturate(180%); border-bottom:1px solid rgba(109,40,217,.22); }
/* hero */
html.light .hero-wrap { background:linear-gradient(150deg,#e9e2ff 0%,#f3f0ff 45%,#e5dfff 100%); }
html.light #ai-canvas { opacity:.45; }
html.light .g-text { background:linear-gradient(135deg,#4c1d95 0%,#6d28d9 55%,#8b5cf6 100%); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
html.light .hero-eyebrow { background:rgba(109,40,217,.12); border-color:rgba(109,40,217,.35); color:var(--purple-deep); }
/* section dividers */
html.light section { border-top:1px solid rgba(109,40,217,.14); }
html.light section.alt-bg { background:var(--bg-alt); border-top:2px solid rgba(109,40,217,.18); border-bottom:2px solid rgba(109,40,217,.18); }
/* marquee */
html.light .marquee-wrap { background:rgba(220,215,248,.5); backdrop-filter:blur(12px); border-top:1px solid rgba(109,40,217,.2); border-bottom:1px solid rgba(109,40,217,.2); }
html.light .marquee-wrap::before { background:linear-gradient(90deg,rgba(220,215,248,.8),transparent); }
html.light .marquee-wrap::after  { background:linear-gradient(-90deg,rgba(220,215,248,.8),transparent); }
/* browser chrome */
html.light .browser-bar { background:rgba(205,198,232,.97); }
/* dashboard card */
html.light .dash-card { background:#fff; border:1px solid rgba(109,40,217,.25); box-shadow:0 24px 64px rgba(109,40,217,.14),0 4px 20px rgba(0,0,0,.10); }
html.light .dash-header { background:rgba(109,40,217,.05); border-color:rgba(109,40,217,.15); }
html.light .dash-footer { background:rgba(109,40,217,.04); border-color:rgba(109,40,217,.12); }
html.light .dash-channel { background:rgba(109,40,217,.04); border-color:rgba(109,40,217,.14); }
/* comparison cards */
html.light .comp-card { background:#fff; border:1px solid rgba(109,40,217,.22); box-shadow:0 6px 28px rgba(109,40,217,.10),0 2px 8px rgba(0,0,0,.06); }
html.light .comp-card.featured { background:linear-gradient(160deg,rgba(109,40,217,.1),rgba(139,92,246,.05)); border-color:rgba(109,40,217,.4); box-shadow:0 10px 40px rgba(109,40,217,.2); }
html.light .comp-title.muted { color:var(--text-3); }
/* features grid */
html.light .feat-grid { border:2px solid rgba(109,40,217,.2); }
html.light .feat-item { background:#fff; border-right:1px solid rgba(109,40,217,.15); border-bottom:1px solid rgba(109,40,217,.15); box-shadow:inset 0 0 0 0 transparent; }
html.light .feat-item:hover { background:rgba(109,40,217,.07); }
/* AI cards */
html.light .ai-card { background:#fff; border:1px solid rgba(109,40,217,.22); box-shadow:0 4px 18px rgba(109,40,217,.09),0 1px 6px rgba(0,0,0,.06); }
html.light .ai-card:hover { background:rgba(109,40,217,.06); border-color:rgba(109,40,217,.45); box-shadow:0 8px 28px rgba(109,40,217,.16); }
/* team */
html.light .team-card { background:#fff; border:1px solid rgba(109,40,217,.22); box-shadow:0 6px 28px rgba(109,40,217,.10),0 2px 8px rgba(0,0,0,.06); }
/* ads */
html.light .ads-real-card .browser-frame { box-shadow:0 12px 40px rgba(109,40,217,.15),0 3px 12px rgba(0,0,0,.08); }
/* CTA band */
html.light .cta-band::before { background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(109,40,217,.15),transparent 70%); }
/* footer */
html.light footer { background:rgba(220,215,248,.45); border-top:2px solid rgba(109,40,217,.2); }
/* mobile menu */
html.light .mobile-menu { background:rgba(248,247,255,.99); }
html.light .mobile-menu a { color:var(--text); }

/* ORBS */
.orb { position:fixed; border-radius:50%; filter:blur(120px); pointer-events:none; z-index:0; animation:drift 22s ease-in-out infinite alternate; }
.orb-1 { width:700px; height:700px; background:radial-gradient(circle,rgba(76,29,149,.5),transparent 65%); top:-280px; left:-180px; }
.orb-2 { width:550px; height:550px; background:radial-gradient(circle,rgba(109,40,217,.38),transparent 65%); top:35%; right:-200px; animation-duration:17s; animation-delay:-7s; }
.orb-3 { width:450px; height:450px; background:radial-gradient(circle,rgba(76,29,149,.3),transparent 65%); bottom:5%; left:15%; animation-duration:25s; animation-delay:-12s; }
@keyframes drift { 0%{transform:translate(0,0) scale(1)} 100%{transform:translate(50px,70px) scale(1.06)} }

/* UTIL */
.container { max-width:var(--max-w); margin:0 auto; width:100%; }
.tc { text-align:center; }
.tc .section-lead, .section-lead.tc { margin:0 auto; text-align:center; }

/* NAV */
nav { position:fixed; top:0; left:0; right:0; z-index:100; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 32px; height:64px; background:rgba(7,7,26,.72); backdrop-filter:blur(24px) saturate(180%); border-bottom:1px solid var(--border); transition:background .3s; }
.nav-logo { width: 125px; font-size:1.25rem; font-weight:800; letter-spacing:-.5px; text-decoration:none; color:var(--text); }
.nav-logo em { font-style:italic; color:var(--purple-soft); }
#banner-logo { width: 7.5rem; }
.nav-links { display:flex; align-items:center; justify-content:center; gap:32px; list-style:none; }
.nav-links a { text-decoration:none; color:var(--text-2); font-size:.875rem; font-weight:500; transition:color .2s; }
.nav-links a:hover { color:var(--text); }
.nav-right { display:flex; align-items:center; gap:10px; justify-content:flex-end; }
.nav-ctas { display:flex; align-items:center; gap:10px; }
.btn-ghost { padding:8px 18px; border:1px solid var(--border-2); border-radius:var(--r-sm); background:transparent; color:var(--text-2); font-size:.85rem; font-weight:500; cursor:pointer; text-decoration:none; transition:all .2s; font-family:inherit; display:inline-block; }
.btn-ghost:hover { border-color:var(--border-purple); color:var(--text); background:var(--purple-tint); }
.btn-primary { padding:8px 20px; border-radius:var(--r-sm); background:var(--purple-deep); border:1px solid var(--border-purple); color:#fff; font-size:.85rem; font-weight:600; cursor:pointer; text-decoration:none; display:inline-block; box-shadow:0 1px 2px rgba(0,0,0,.4); transition:all .2s; font-family:inherit; }
.btn-primary:hover { background:var(--purple); box-shadow:0 0 24px var(--purple-glow); transform:translateY(-1px); }
.btn-lg  { padding:13px 32px; font-size:.95rem; border-radius:var(--r-md); }
.btn-xl  { padding:15px 36px; font-size:1rem;   border-radius:var(--r-md); }
.btn-outline { padding:13px 32px; font-size:.95rem; border-radius:var(--r-md); border:1px solid var(--border-2); background:transparent; color:var(--text); font-weight:600; cursor:pointer; text-decoration:none; transition:all .2s; font-family:inherit; display:inline-block; }
.btn-outline:hover { border-color:var(--border-purple); background:var(--purple-tint); }
.hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:4px; }
.hamburger span { display:block; width:22px; height:2px; background:var(--text-2); border-radius:2px; }
.theme-toggle { width:34px; height:34px; border-radius:50%; border:1px solid var(--border-2); background:transparent; color:var(--text-2); cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all .2s; flex-shrink:0; }
.theme-toggle:hover { border-color:var(--border-purple); color:var(--purple-soft); background:var(--purple-tint); }
.icon-sun  { display:none; }
.icon-moon { display:block; }
html.light .icon-sun  { display:block; }
html.light .icon-moon { display:none; }

/* SECTION TYPOGRAPHY */
section { position:relative; z-index:1; padding:72px 24px; }
section.alt-bg { background:var(--bg-alt); }

/* BROWSER FRAME */
.browser-frame {
  border-radius:var(--r-lg);
  overflow:hidden;
  box-shadow:0 24px 72px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.07);
  transition:transform .3s, box-shadow .3s;
}
.browser-frame:hover { transform:translateY(-6px); box-shadow:0 36px 80px rgba(0,0,0,.65), 0 0 40px var(--purple-glow), 0 0 0 1px rgba(139,92,246,.25); }
.browser-bar {
  background:rgba(16,16,32,.97);
  padding:10px 14px;
  display:flex; align-items:center; gap:12px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.browser-dots { display:flex; gap:6px; flex-shrink:0; }
.browser-dot { width:11px; height:11px; border-radius:50%; }
.browser-url {
  flex:1; background:rgba(255,255,255,.05); border-radius:5px;
  padding:4px 12px; font-size:.7rem; color:rgba(255,255,255,.28);
  text-align:center; letter-spacing:.02em;
}
.browser-frame img { width:100%; display:block; object-fit:cover; }
/* Product screenshots — enforce 16:9 */
.product-grid .browser-frame img { aspect-ratio:16/9; object-position:left top; }
/* Ad screenshots — near 16:9, minimal crop */
.ads-real-card .browser-frame img { aspect-ratio:16/9; }
.ads-lbar img  { object-position:center center; }
.ads-pip img   { object-position:center top; }

/* PRODUCT SCREENSHOTS */
.product-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:52px; }
.product-label { font-size:.78rem; font-weight:600; color:var(--text-2); margin-top:14px; text-align:center; }

/* REAL AD SCREENSHOTS */
.ads-real-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:52px; }
.ads-real-card { display:flex; flex-direction:column; gap:0; }
.ads-real-card .browser-frame { flex:1; }
.ads-real-body { padding:18px 4px 0; }
.ads-real-body h3 { font-size:.95rem; font-weight:700; margin-bottom:5px; }
.ads-real-body p { font-size:.83rem; color:var(--text-2); line-height:1.6; }
.section-label { font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--purple-soft); margin-bottom:12px; }
.section-h2 { font-size:clamp(1.8rem,3.5vw,2.75rem); font-weight:800; letter-spacing:-.035em; line-height:1.1; margin-bottom:14px; }
.section-lead { font-size:1.05rem; color:var(--text-2); max-width:520px; line-height:1.75; }

/* HERO */
.hero { position:relative; z-index:1; min-height:100vh; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:48px; padding:120px 5% 80px; max-width:1300px; margin:0 auto; }
.hero-copy { display:flex; flex-direction:column; align-items:flex-start; }
.hero-eyebrow { display:inline-flex; align-items:center; gap:8px; padding:5px 14px 5px 8px; border-radius:100px; background:var(--purple-tint); border:1px solid var(--border-purple); font-size:.75rem; font-weight:600; letter-spacing:.07em; text-transform:uppercase; color:var(--purple-soft); margin-bottom:28px; }
.live-dot { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 6px var(--green); animation:pulse 2.2s ease-in-out infinite; }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.45;transform:scale(.85)} }
.hero h1 { font-size:clamp(2.4rem,4.5vw,4.2rem); font-weight:900; line-height:1.04; letter-spacing:-.04em; margin-bottom:22px; }
.g-text { background:linear-gradient(135deg,#f0eeff 10%,#c4b5fd 50%,#8b5cf6 90%); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.hero-sub { font-size:1.05rem; color:var(--text-2); max-width:500px; margin-bottom:36px; line-height:1.8; }
.hero-ctas { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:44px; }
.hero-micro { display:flex; gap:24px; flex-wrap:wrap; }
.hero-micro-item { display:flex; align-items:center; gap:7px; font-size:.82rem; color:var(--text-2); }
.hero-micro-item svg { color:var(--green); flex-shrink:0; }

/* FLOATING DASHBOARD CARD */
#banner-logo2 { width: 5.625rem; }
.hero-visual { position:relative; }
.dash-card { background:rgba(13,13,35,.9); border:1px solid var(--border-2); border-radius:var(--r-xl); padding:0; overflow:hidden; box-shadow:0 32px 80px rgba(0,0,0,.5), 0 0 60px rgba(109,40,217,.12); backdrop-filter:blur(20px); animation:float 6s ease-in-out infinite; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
.dash-header { display:flex; align-items:center; justify-content:space-between; padding:16px 20px; border-bottom:1px solid var(--border); background:rgba(255,255,255,.02); }
.dash-logo { font-size:.88rem; font-weight:800; color:var(--text); }
.dash-logo em { font-style:italic; color:var(--purple-soft); }
.dash-status { display:flex; align-items:center; gap:6px; font-size:.72rem; font-weight:600; color:var(--green); }
.dash-status-dot { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 5px var(--green); animation:pulse 2s ease-in-out infinite; }
.dash-body { padding:16px 20px; display:flex; flex-direction:column; gap:10px; }
.dash-section-label { font-size:.65rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--text-3); margin-bottom:4px; }
.dash-channel { display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:var(--r-sm); background:var(--card); border:1px solid var(--border); }
.dash-channel:hover { border-color:var(--border-purple); background:var(--purple-tint); }
.ch-dot { width:7px; height:7px; border-radius:50%; flex-shrink:0; }
.ch-dot.live { background:var(--green); box-shadow:0 0 5px var(--green); animation:pulse 2s ease-in-out infinite; }
.ch-dot.vod  { background:var(--purple-soft); }
.ch-name { flex:1; font-size:.82rem; font-weight:600; color:var(--text); }
.ch-viewers { font-size:.72rem; color:var(--text-2); }
.ch-badge { font-size:.62rem; font-weight:700; padding:2px 7px; border-radius:100px; background:rgba(16,185,129,.12); color:var(--green); border:1px solid rgba(16,185,129,.25); }
.dash-ai-bar { margin-top:6px; padding:12px; border-radius:var(--r-sm); background:var(--purple-tint2); border:1px solid var(--border-purple); display:flex; align-items:center; gap:10px; }
.dash-ai-icon { width:28px; height:28px; border-radius:var(--r-sm); background:var(--purple-deep); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.dash-ai-text { flex:1; }
.dash-ai-title { font-size:.78rem; font-weight:700; color:var(--text); }
.dash-ai-sub   { font-size:.68rem; color:var(--purple-soft); }
.dash-ai-tasks { font-size:.72rem; font-weight:700; color:var(--green); white-space:nowrap; }
.dash-footer { padding:12px 20px 16px; border-top:1px solid var(--border); display:flex; gap:8px; }
.dash-stat { flex:1; text-align:center; }
.dash-stat-v { font-size:.88rem; font-weight:800; color:var(--text); letter-spacing:-.02em; }
.dash-stat-l { font-size:.62rem; color:var(--text-3); margin-top:1px; }
.dash-glow { position:absolute; bottom:-60px; left:50%; transform:translateX(-50%); width:80%; height:120px; background:radial-gradient(ellipse,rgba(109,40,217,.35),transparent 70%); filter:blur(20px); pointer-events:none; }

/* MARQUEE */
.marquee-wrap { position:sticky; top:64px; z-index:99; overflow:hidden; border-top:1px solid var(--border); border-bottom:1px solid var(--border); background:linear-gradient(90deg,var(--bg) 0%,var(--bg-alt) 50%,var(--bg) 100%); padding:14px 0; }
.marquee-wrap::before,.marquee-wrap::after { content:''; position:absolute; top:0; bottom:0; width:120px; z-index:2; pointer-events:none; }
.marquee-wrap::before { left:0; background:linear-gradient(90deg,var(--bg),transparent); }
.marquee-wrap::after  { right:0; background:linear-gradient(-90deg,var(--bg),transparent); }
.marquee-track { display:flex; align-items:center; gap:0; width:max-content; animation:marquee 40s linear infinite; }
.marquee-track:hover { animation-play-state:paused; }
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.m-item { display:flex; align-items:center; gap:8px; padding:0 28px; font-size:.8rem; font-weight:600; color:var(--text-2); white-space:nowrap; border-right:1px solid var(--border); }
.m-item .m-dot { width:5px; height:5px; border-radius:50%; background:var(--purple-soft); opacity:.6; }

/* COMPARISON */
#automaton_image { margin-top: 65px; justify-content: center; display: flex; }
.robot_image { width: 400px; }
.comp-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px; margin-top:52px; }
.comp-card { padding:32px 28px; border-radius:var(--r-lg); border:1px solid var(--border); background:var(--card); display:flex; flex-direction:column; transition:border-color .2s; }
.comp-card.featured { position:relative; border-color:transparent; background:linear-gradient(160deg,rgba(109,40,217,.14),rgba(139,92,246,.05) 100%); }
.comp-card.featured::before { content:''; position:absolute; inset:0; border-radius:var(--r-lg); padding:1px; background:linear-gradient(135deg,#8b5cf6,#6d28d9,#a78bfa,#6d28d9); background-size:300% 300%; animation:grad-shift 5s linear infinite; -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); -webkit-mask-composite:xor; mask-composite:exclude; pointer-events:none; }
@keyframes grad-shift { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
.comp-title { font-size:.95rem; font-weight:700; margin-bottom:22px; color:var(--text); }
.comp-title.muted { color:var(--text-2); }
.comp-list { list-style:none; display:flex; flex-direction:column; gap:10px; flex:1; }
.comp-list li { font-size:.875rem; color:var(--text-2); display:flex; gap:9px; align-items:flex-start; line-height:1.5; }
.check { flex-shrink:0; margin-top:1px; font-size:.8rem; font-weight:700; }
.check.x  { color:rgba(248,113,113,.7); }
.check.ok { color:var(--green); }
.comp-badge { margin-top:24px; padding:9px 14px; border-radius:var(--r-sm); font-size:.78rem; font-weight:700; text-align:center; letter-spacing:.02em; }
.comp-badge.bad  { background:rgba(239,68,68,.08); color:rgba(248,113,113,.8); border:1px solid rgba(239,68,68,.15); }
.comp-badge.good { background:rgba(16,185,129,.08); color:var(--green); border:1px solid rgba(16,185,129,.2); }

/* STATS BAND */
.stats-band { position:relative; z-index:1; background:var(--bg-alt); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:0 24px; }
.stats-inner { max-width:var(--max-w); margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); }
.stat-item { padding:36px 20px; text-align:center; border-right:1px solid var(--border); }
.stat-item:last-child { border-right:none; }
.stat-num { display:block; font-size:2.6rem; font-weight:900; letter-spacing:-.05em; line-height:1; }
.stat-lbl { display:block; font-size:.78rem; color:var(--text-2); margin-top:6px; letter-spacing:.02em; }
.stat-num.purple { color:var(--purple-soft); }
.stat-num.green  { color:var(--green); }

/* FEATURES GRID */
.feat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:52px; border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; }
.feat-item { padding:28px 24px; background:var(--bg-alt); display:flex; flex-direction:column; gap:12px; transition:background .2s; border-right:1px solid var(--border); border-bottom:1px solid var(--border); }
.feat-item:hover { background:var(--purple-tint); }
.feat-icon { width:36px; height:36px; border-radius:var(--r-sm); background:var(--purple-tint2); border:1px solid var(--border-purple); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.feat-name { font-size:.875rem; font-weight:600; color:var(--text); line-height:1.4; }
.feat-desc { font-size:.78rem; color:var(--text-2); line-height:1.55; }

/* STEPS */
.steps-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:20px; margin-top:52px; }
.step { padding:32px 28px; border-radius:var(--r-lg); border:1px solid var(--border); background:var(--card); position:relative; overflow:hidden; transition:border-color .25s, background .25s; }
.step:hover { border-color:var(--border-purple); background:var(--purple-tint); }
.step-n { font-size:6rem; font-weight:900; line-height:1; color:rgba(139,92,246,.06); position:absolute; top:8px; right:16px; user-select:none; pointer-events:none; letter-spacing:-.05em; }
.step-icon-wrap { width:44px; height:44px; border-radius:var(--r-md); background:var(--purple-tint2); border:1px solid var(--border-purple); display:flex; align-items:center; justify-content:center; margin-bottom:18px; }
.step h3 { font-size:1rem; font-weight:700; margin-bottom:9px; letter-spacing:-.01em; }
.step p  { font-size:.875rem; color:var(--text-2); line-height:1.65; }

/* AI */
.ai-layout { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; }
.ai-copy { display:flex; flex-direction:column; gap:20px; }
.ai-badge { display:inline-flex; align-items:center; gap:6px; width:fit-content; padding:4px 12px; border-radius:100px; background:rgba(16,185,129,.08); border:1px solid rgba(16,185,129,.22); color:var(--green); font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.ai-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.ai-card { padding:20px; border-radius:var(--r-md); border:1px solid var(--border); background:var(--card); transition:border-color .2s, background .2s; }
.ai-card:hover { border-color:var(--border-purple); background:var(--purple-tint); }
.ai-card-icon { margin-bottom:8px; display:block; }
.ai-card h4 { font-size:.875rem; font-weight:700; margin-bottom:5px; color:var(--text); letter-spacing:-.01em; }
.ai-card p  { font-size:.8rem; color:var(--text-2); line-height:1.6; }

/* PROTOCOLS */
.proto-wrap { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:52px; }
.proto-col-label { font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--text-3); margin-bottom:14px; }
.proto-list { display:flex; flex-direction:column; gap:8px; }
.proto-row { padding:14px 18px; border-radius:var(--r-md); border:1px solid var(--border); background:var(--card); font-size:.9rem; font-weight:600; color:var(--text-2); display:flex; align-items:center; gap:10px; transition:all .2s; }
.proto-row:hover { border-color:var(--border-purple); background:var(--purple-tint); color:var(--text); }
.proto-row.hi { border-color:var(--border-purple); background:var(--purple-tint2); color:var(--text); }
.proto-row-dot { width:7px; height:7px; border-radius:50%; background:var(--purple-soft); opacity:.6; flex-shrink:0; }
.proto-row.hi .proto-row-dot { opacity:1; box-shadow:0 0 5px var(--purple); }
.proto-foot { text-align:center; margin-top:36px; font-size:.875rem; color:var(--text-3); font-style:italic; }

/* ADS */
.ads-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:20px; margin-top:52px; }
.ad-card { border-radius:var(--r-lg); border:1px solid var(--border); background:var(--card); overflow:hidden; transition:border-color .25s, transform .25s; }
.ad-card:hover { border-color:var(--border-purple); transform:translateY(-4px); }
.ad-preview { aspect-ratio:16/9; position:relative; background:#0a0a1e; overflow:hidden; }
.ad-body { padding:22px 20px; }
.ad-body h3 { font-size:.95rem; font-weight:700; margin-bottom:7px; }
.ad-body p  { font-size:.825rem; color:var(--text-2); line-height:1.6; }
.lbar-video { position:absolute; left:0; top:0; right:36%; bottom:24%; background:#111230; display:flex; align-items:center; justify-content:center; }
.lbar-video span { font-size:.62rem; color:var(--text-3); font-weight:500; }
.lbar-side-ad { position:absolute; right:0; top:0; width:36%; bottom:24%; background:rgba(109,40,217,.22); border-left:1px solid var(--border-purple); display:flex; align-items:center; justify-content:center; }
.lbar-side-ad span { font-size:.58rem; font-weight:700; color:var(--purple-soft); text-align:center; line-height:1.4; }
.lbar-bar { position:absolute; bottom:0; left:0; right:0; height:24%; background:rgba(7,7,26,.92); border-top:1px solid var(--border); display:flex; align-items:center; padding:0 10px; gap:6px; }
.lbar-bar span { font-size:.6rem; font-weight:700; color:var(--purple-soft); letter-spacing:.05em; }
.pip-main-v { position:absolute; left:0; top:0; right:40%; bottom:0; background:#111230; display:flex; align-items:center; justify-content:center; }
.pip-main-v span { font-size:.62rem; color:var(--text-3); }
.pip-overlay { position:absolute; right:6px; top:6px; width:38%; bottom:6px; background:rgba(109,40,217,.18); border:1px solid var(--border-purple); border-radius:5px; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:3px; }
.pip-overlay span { font-size:.58rem; font-weight:700; color:var(--purple-soft); }
.com-top { position:absolute; top:0; left:0; right:0; height:28%; background:rgba(109,40,217,.6); display:flex; align-items:center; justify-content:center; }
.com-top span { font-size:.6rem; font-weight:700; color:rgba(255,255,255,.9); letter-spacing:.1em; text-transform:uppercase; }
.com-mid { position:absolute; top:28%; left:0; right:0; bottom:22%; background:#0b0b22; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; }
.com-mid .logo-sm { font-size:.72rem; font-weight:800; color:var(--text); }
.com-mid .logo-sm em { font-style:italic; color:var(--purple-soft); }
.com-mid span { font-size:.56rem; color:var(--text-3); }
.com-bot { position:absolute; bottom:0; left:0; right:0; height:22%; background:rgba(16,185,129,.07); border-top:1px solid rgba(16,185,129,.18); display:flex; align-items:center; justify-content:center; }
.com-bot span { font-size:.6rem; font-weight:700; color:var(--green); }

/* TEAM */
.team-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:52px; max-width:720px; margin-left:auto; margin-right:auto; }
.team-card { padding:36px 32px; border-radius:var(--r-xl); border:1px solid var(--border); background:var(--card); text-align:center; transition:border-color .2s, transform .2s; }
.team-card:hover { border-color:var(--border-purple); transform:translateY(-3px); }
.team-photo-wrap { width:140px; height:140px; border-radius:16px; overflow:hidden; margin:0 auto 20px; border:2px solid var(--border-purple); box-shadow:0 0 20px rgba(139,92,246,.25); }
.team-photo-wrap img { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; }
.team-card h3 { font-size:1.05rem; font-weight:700; margin-bottom:3px; }
.team-role { font-size:.82rem; color:var(--purple-soft); font-weight:600; margin-bottom:16px; }
.team-facts { list-style:none; display:flex; flex-direction:column; gap:6px; align-items:center; }
.team-facts li { font-size:.825rem; color:var(--text-2); text-align:center; }
.team-facts li::before { content:"·"; margin-right:6px; color:var(--purple-soft); }

/* CTA BAND */
.cta-band { position:relative; z-index:1; padding:96px 24px; text-align:center; overflow:hidden; }
.cta-band::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(109,40,217,.14),transparent 70%); pointer-events:none; }
.cta-band::after { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,var(--border-purple),transparent); }
.cta-band h2 { font-size:clamp(1.8rem,3.5vw,2.6rem); font-weight:800; letter-spacing:-.035em; margin-bottom:14px; position:relative; z-index:1; text-align:center; }
.cta-band p  { font-size:1.05rem; color:var(--text-2); max-width:480px; margin:0 auto 36px; line-height:1.75; position:relative; z-index:1; text-align:center; }
.cta-buttons { display:flex; gap:12px; flex-wrap:wrap; justify-content:center; position:relative; z-index:1; }

/* FOOTER */

.social-logo { width: 20px; line-height: 0;}
#social-logo-spacing { display:inline-flex; gap: 15px; transform: translateY(4px); }
#footer-logo { width: 7.5rem; margin-bottom: 10px; }
#contact-email { margin-right: 20px; }
footer { position:relative; z-index:1; padding:52px 24px 32px; border-top:1px solid var(--border); }
.footer-inner { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:40px; margin-bottom:44px; }
.footer-brand .f-logo { font-size:1.2rem; font-weight:800; letter-spacing:-.4px; text-decoration:none; color:var(--text); display:block; margin-bottom:10px; }
.footer-brand .f-logo em { font-style:italic; color:var(--purple-soft); }
.footer-brand p { font-size:.85rem; color:var(--text-2); max-width:240px; line-height:1.7; }
.footer-col h4 { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--text-3); margin-bottom:14px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:9px; }
.footer-col a { font-size:.875rem; color:var(--text-2); text-decoration:none; transition:color .2s; }
.footer-col a:hover { color:var(--text); }
.footer-bottom { padding-top:24px; border-top:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.footer-bottom p { font-size:.8rem; color:var(--text-3); }
.footer-bottom a { font-size:.8rem; color:var(--purple-soft); text-decoration:none; }

/* REVEAL */
.reveal { opacity:0; transform:translateY(22px); transition:opacity .65s ease, transform .65s ease; }
.reveal.in { opacity:1; transform:translateY(0); }
.d1{transition-delay:.08s} .d2{transition-delay:.16s} .d3{transition-delay:.24s} .d4{transition-delay:.32s}

/* MOBILE */
@media (max-width:960px) {
  .nav-links,.nav-ctas { display:none; }
  .hamburger { display:flex; }
  .close-button { display:flex; }
  .mobile-menu.open { display:flex; position:fixed; }
  nav { grid-template-columns:1fr auto; }
  .hero { grid-template-columns:1fr; text-align:center; padding:108px 24px 72px; }
  .hero-copy { align-items:center; }
  .hero-visual { display:none; }
  .comp-grid,.steps-grid,.ai-layout,.proto-wrap,.ads-grid,.team-grid,.product-grid,.ads-real-grid { grid-template-columns:1fr; }
  .browser-frame:hover { transform:none; }
  .stats-inner { grid-template-columns:1fr 1fr; }
  .stat-item:nth-child(2) { border-right:none; }
  .feat-grid { grid-template-columns:1fr 1fr; }
  .ai-layout { gap:40px; }
  .hero-ctas { flex-direction:column; align-items:stretch; width:100%; max-width:340px; }
  .hero-ctas .btn-primary, .hero-ctas .btn-outline { text-align:center; width:100%; }
  .hero-micro { flex-direction:column; align-items:center; gap:12px; }
}
@media (max-width:599px) {
  nav { padding:0 20px; }
  section { padding:72px 20px; }
  .stats-inner { grid-template-columns:1fr 1fr; }
  .footer-inner { flex-direction:column; }
  .hero { padding:108px 20px 64px; }
  .robot_image { width: 250px; }
}

/* MOBILE MENU */
.mobile-menu { display:none; position:fixed; inset:0; z-index:100; background:rgba(7,7,26,.97); backdrop-filter:blur(20px); flex-direction:column; align-items:center; justify-content:center; gap:28px; }
.mobile-menu a { font-size:1.25rem; font-weight:700; color:var(--text); text-decoration:none; }
.mobile-close { position:absolute; top:20px; right:22px; background:none; border:none; color:var(--text-2); font-size:1.5rem; cursor:pointer; }
#mobile-book-button{ color: white !important; }
