/* ============================================================
   NekoTab Landing — Refined SaaS Design
   ============================================================ */
:root {
  --nt-bg: #ffffff;
  --nt-bg-alt: #f8fafc;
  --nt-bg-dark: #0b0f1a;
  --nt-primary: #6366f1;
  --nt-primary-hover: #4f46e5;
  --nt-primary-light: #eef2ff;
  --nt-accent: #8b5cf6;
  --nt-success: #10b981;
  --nt-warning: #f59e0b;
  --nt-text: #0f172a;
  --nt-text-secondary: #475569;
  --nt-text-muted: #94a3b8;
  --nt-border: #e2e8f0;
  --nt-border-light: #f1f5f9;
  --nt-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #a78bfa 100%);
  --nt-shadow-xs: 0 1px 2px rgba(0,0,0,0.04);
  --nt-shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  --nt-shadow-md: 0 4px 6px -1px rgba(0,0,0,0.07), 0 2px 4px -2px rgba(0,0,0,0.05);
  --nt-shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.08), 0 4px 6px -4px rgba(0,0,0,0.05);
  --nt-shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.08), 0 8px 10px -6px rgba(0,0,0,0.04);
  --nt-radius: 12px;
  --nt-radius-lg: 20px;
  --nt-radius-xl: 24px;
  --nt-radius-full: 9999px;
  --nt-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --nt-ease: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body.em-body {
  font-family: var(--nt-font); background: var(--nt-bg); color: var(--nt-text);
  line-height: 1.6; -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
img { max-width: 100%; display: block; }
a { color: inherit; }
.sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; border:0; clip:rect(0 0 0 0); overflow:hidden; }
html.no-scroll { overflow: hidden; }

/* Layout */
.em-container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
@media (min-width:768px) { .em-container { padding: 0 32px; } }
@media (min-width:1024px) { .em-container { padding: 0 48px; } }

/* ======================== NAVBAR ======================== */
.em-navbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  background: rgba(255,255,255,0.95); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid transparent; transition: border-color var(--nt-ease), box-shadow var(--nt-ease);
}
.em-navbar.scrolled { border-bottom-color: var(--nt-border); box-shadow: 0 1px 12px rgba(0,0,0,0.04); }
.em-nav-inner { display: flex; align-items: center; justify-content: space-between; min-height: 64px; gap: 8px; }
/* Spacer to prevent content from going under fixed navbar */
body.em-body { padding-top: 64px; }
.em-logo { display: flex; align-items: center; text-decoration: none; flex-shrink: 0; }
.em-logo-img { width: 130px; height: auto; object-fit: contain; transition: width var(--nt-ease); }
.em-navbar.scrolled .em-logo-img { width: 110px; }
.em-nav { display: flex; align-items: center; gap: 4px; }
.em-nav a:not(.em-btn) { padding: 8px 14px; text-decoration: none; color: var(--nt-text-secondary); font-weight: 500; font-size: 14px; border-radius: 8px; transition: all var(--nt-ease); }
.em-nav a:not(.em-btn):hover { color: var(--nt-text); background: var(--nt-bg-alt); }
@media (max-width:899px) { .em-nav > a:not(.em-btn) { display: none; } .em-nav .em-btn--sm, .em-nav .em-btn--secondary { display: none; } }

/* Burger */
.em-burger { display: none; flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 8px; }
.em-burger span { width: 20px; height: 2px; background: var(--nt-text); border-radius: 2px; transition: 0.3s; }
@media (max-width:899px) { .em-burger { display: inline-flex; } }

/* Mobile Menu - hidden by default */
.em-mobile-menu { position: fixed; inset: 0; display: none; flex-direction: column; padding: 80px 24px 24px; background: rgba(255,255,255,0.98); backdrop-filter: blur(20px); z-index: 999; }
.em-mobile-menu[hidden] { display: none !important; }
.em-mobile-menu.open { display: flex; }
.em-mobile-menu a { padding: 16px 0; border-bottom: 1px solid var(--nt-border-light); font-weight: 600; color: var(--nt-text); text-decoration: none; font-size: 18px; }

/* ======================== BUTTONS ======================== */
.em-btn { display: inline-flex; align-items: center; justify-content: center; border-radius: var(--nt-radius); padding: 10px 24px; font-size: 14px; font-weight: 600; text-decoration: none; cursor: pointer; border: none; transition: all var(--nt-ease); line-height: 1.5; white-space: nowrap; font-family: var(--nt-font); }
.em-btn--primary { background: var(--nt-primary); color: #fff; box-shadow: 0 1px 3px rgba(99,102,241,0.3); }
.em-btn--primary:hover { background: var(--nt-primary-hover); box-shadow: 0 4px 12px rgba(99,102,241,0.35); transform: translateY(-1px); }
.em-btn--secondary { background: var(--nt-primary-light); color: var(--nt-primary); border: 1px solid transparent; }
.em-btn--secondary:hover { background: #e0e7ff; }
.em-btn--ghost { background: transparent; color: var(--nt-text-secondary); padding: 8px 16px; }
.em-btn--ghost:hover { color: var(--nt-primary); background: var(--nt-bg-alt); }
.em-btn--outline { background: transparent; color: var(--nt-primary); border: 1.5px solid var(--nt-primary); }
.em-btn--outline:hover { background: var(--nt-primary); color: #fff; }
.em-btn--outline-light { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,0.4); }
.em-btn--outline-light:hover { background: rgba(255,255,255,0.1); border-color: #fff; }
.em-btn--light { background: #fff; color: var(--nt-primary); }
.em-btn--light:hover { transform: translateY(-1px); box-shadow: var(--nt-shadow-lg); }
.em-btn--sm { padding: 8px 18px; font-size: 13px; }
.em-btn--xs { padding: 6px 14px; font-size: 12px; border-radius: 8px; }
.em-btn--lg { padding: 14px 32px; font-size: 15px; border-radius: 14px; }
.em-btn--block { display: flex; width: 100%; text-align: center; }
.em-btn svg { flex-shrink: 0; }

/* ======================== HERO ======================== */
.em-hero {
  padding: 100px 0 80px; text-align: center; position: relative; overflow: hidden;
  background: linear-gradient(180deg, var(--nt-primary-light) 0%, var(--nt-bg) 100%);
}
@media (min-width:768px) { .em-hero { padding: 120px 0 100px; } }
@media (min-width:1024px) { .em-hero { padding: 140px 0 100px; } }

.em-hero-blob { position: absolute; border-radius: 50%; filter: blur(100px); opacity: 0.08; pointer-events: none; }
.em-hero-blob--1 { width: 500px; height: 500px; background: var(--nt-primary); top: -200px; right: -100px; }
.em-hero-blob--2 { width: 400px; height: 400px; background: var(--nt-accent); bottom: -100px; left: -150px; }
.em-hero-inner { position: relative; z-index: 1; }

.em-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: #fff; padding: 8px 20px; border-radius: var(--nt-radius-full);
  font-size: 13px; font-weight: 600; color: var(--nt-primary);
  margin-bottom: 28px; border: 1px solid var(--nt-border); box-shadow: var(--nt-shadow-xs);
}
.em-badge-dot { width: 7px; height: 7px; background: var(--nt-success); border-radius: 50%; animation: pulse 2s infinite; }
@keyframes pulse { 0%,100% { opacity:1; } 50% { opacity:0.4; } }

.em-gradient-text { background: var(--nt-gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.em-hero-title { font-size: clamp(36px,6vw,68px); line-height: 1.08; font-weight: 800; margin: 0 0 20px; letter-spacing: -0.035em; max-width: 800px; margin-left: auto; margin-right: auto; }
.em-hero-sub { font-size: clamp(16px,2vw,19px); max-width: 620px; margin: 0 auto 40px; color: var(--nt-text-secondary); line-height: 1.7; }
.em-hero-ctas { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* Browser mockup */
.em-hero-visual { margin-top: 56px; position: relative; z-index: 1; }
.em-browser-frame { max-width: 860px; margin: 0 auto; border-radius: var(--nt-radius-lg); background: #fff; box-shadow: var(--nt-shadow-xl), 0 0 0 1px var(--nt-border); overflow: hidden; }
.em-browser-dots { display: flex; gap: 7px; padding: 14px 18px; background: var(--nt-bg-alt); border-bottom: 1px solid var(--nt-border-light); }
.em-browser-dots span { width: 11px; height: 11px; border-radius: 50%; }
.em-browser-dots span:nth-child(1) { background: #fca5a5; }
.em-browser-dots span:nth-child(2) { background: #fcd34d; }
.em-browser-dots span:nth-child(3) { background: #6ee7b7; }
.em-browser-content { background: var(--nt-primary-light); min-height: 200px; }
.em-browser-content img { width: 100%; height: auto; display: block; }

/* ======================== TRUST ======================== */
.em-trust { padding: 40px 0; background: var(--nt-bg); border-top: 1px solid var(--nt-border-light); border-bottom: 1px solid var(--nt-border-light); }
.em-trust-label { text-align: center; font-size: 12px; font-weight: 600; color: var(--nt-text-muted); text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 16px; }
.em-trust-logos { display: flex; justify-content: center; gap: 32px; flex-wrap: wrap; }
.em-trust-item { font-size: 14px; font-weight: 500; color: var(--nt-text-muted); display: flex; align-items: center; gap: 6px; }

/* ======================== SECTIONS ======================== */
.em-section { padding: 80px 0; }
@media (min-width:1024px) { .em-section { padding: 100px 0; } }
.em-section-eyebrow { text-align: center; font-size: 12px; font-weight: 700; color: var(--nt-primary); text-transform: uppercase; letter-spacing: 0.12em; margin-bottom: 12px; }
.em-section-title { font-size: clamp(28px,4vw,44px); font-weight: 800; line-height: 1.15; margin: 0 0 16px; text-align: center; letter-spacing: -0.025em; }
.em-section-title--left { text-align: left; }
.em-section-subtitle { text-align: center; font-size: 17px; color: var(--nt-text-secondary); max-width: 560px; margin: 0 auto 48px; line-height: 1.7; }
.em-section-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-bottom: 28px; }
.em-subsection-title { font-size: 20px; font-weight: 700; margin: 40px 0 20px; color: var(--nt-text-secondary); }

/* ======================== TOURNAMENTS ======================== */
.em-my-tournaments { background: var(--nt-bg-alt); }
.em-tournament-grid { display: grid; gap: 16px; grid-template-columns: 1fr; }
@media (min-width:600px) { .em-tournament-grid { grid-template-columns: repeat(2,1fr); } }
@media (min-width:1024px) { .em-tournament-grid { grid-template-columns: repeat(3,1fr); } }

.em-tournament-card { background: #fff; border: 1px solid var(--nt-border); border-radius: var(--nt-radius); padding: 20px; transition: all var(--nt-ease); }
.em-tournament-card:hover { box-shadow: var(--nt-shadow-md); transform: translateY(-2px); }
.em-tournament-card--active { border-left: 3px solid var(--nt-success); }
.em-tournament-card--inactive { border-left: 3px solid var(--nt-text-muted); opacity: 0.75; }
.em-tournament-card--unassigned { border-left: 3px solid var(--nt-warning); }
.em-tournament-status { font-size: 11px; font-weight: 600; color: var(--nt-text-muted); margin-bottom: 6px; display: flex; align-items: center; gap: 6px; text-transform: uppercase; letter-spacing: 0.04em; }
.em-status-dot { width: 7px; height: 7px; border-radius: 50%; }
.em-status-dot--active { background: var(--nt-success); }
.em-status-dot--inactive { background: var(--nt-text-muted); }
.em-tournament-name { font-size: 16px; font-weight: 700; margin: 0 0 14px; }
.em-tournament-actions { display: flex; gap: 6px; flex-wrap: wrap; }
.em-empty-state { text-align: center; padding: 40px 24px; background: #fff; border: 2px dashed var(--nt-border); border-radius: var(--nt-radius); }
.em-empty-icon { font-size: 40px; margin-bottom: 12px; }
.em-empty-state p { color: var(--nt-text-secondary); margin-bottom: 16px; }

/* ======================== FEATURES ======================== */
.em-features { background: var(--nt-bg); }
.em-feature-grid--3col { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width:600px) { .em-feature-grid--3col { grid-template-columns: repeat(2,1fr); } }
@media (min-width:1024px) { .em-feature-grid--3col { grid-template-columns: repeat(3,1fr); } }

.em-features .em-feature-card { background: #fff; border: 1px solid var(--nt-border); border-radius: var(--nt-radius); padding: 28px 24px; transition: all 0.3s; cursor: default; }
.em-features .em-feature-card:hover { transform: translateY(-4px); box-shadow: var(--nt-shadow-lg); border-color: #c7d2fe; }
.em-feature-icon { width: 48px; height: 48px; border-radius: var(--nt-radius); background: var(--nt-primary-light); display: flex; align-items: center; justify-content: center; font-size: 24px; margin-bottom: 16px; }
.em-feature-title { font-size: 17px; font-weight: 700; margin: 0 0 8px; }
.em-feature-desc { font-size: 14px; color: var(--nt-text-secondary); margin: 0; line-height: 1.65; }

/* ======================== COMPARE ======================== */
.em-compare { background: var(--nt-bg-alt); }
.em-compare-grid { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width:768px) { .em-compare-grid { grid-template-columns: repeat(2,1fr); } }
.em-card { border-radius: var(--nt-radius-lg); padding: 32px 28px; }
.em-card-header { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.em-card-emoji { font-size: 28px; }
.em-card h3 { font-size: 20px; font-weight: 700; margin: 0; }
.em-card ul { margin: 0; padding-left: 18px; line-height: 2; color: var(--nt-text-secondary); font-size: 14px; }
.em-card--danger { background: #fff7ed; border: 1px solid #fed7aa; }
.em-card--indigo { background: var(--nt-primary-light); border: 1px solid #c7d2fe; }

/* ======================== STEPS ======================== */
.em-steps-section { background: var(--nt-bg); }
.em-steps-grid { display: flex; align-items: flex-start; justify-content: center; gap: 0; flex-wrap: wrap; max-width: 760px; margin: 40px auto 0; }
.em-step { text-align: center; flex: 1; min-width: 180px; padding: 0 16px; }
.em-step-num { width: 48px; height: 48px; margin: 0 auto 16px; background: var(--nt-gradient); color: #fff; font-weight: 800; font-size: 20px; display: flex; align-items: center; justify-content: center; border-radius: var(--nt-radius); box-shadow: 0 4px 12px rgba(99,102,241,0.2); }
.em-step h3 { font-size: 16px; font-weight: 700; margin: 0 0 6px; }
.em-step p { font-size: 13px; color: var(--nt-text-secondary); line-height: 1.6; }
.em-step-connector { width: 48px; height: 2px; background: var(--nt-border); margin-top: 24px; flex-shrink: 0; }
@media (max-width:599px) { .em-step-connector { display: none; } }

/* ======================== STATS ======================== */
.em-stats { background: var(--nt-gradient); color: #fff; padding: 48px 0; }
.em-stats-inner { display: flex; flex-wrap: wrap; gap: 40px; justify-content: center; }
.em-stat { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.em-stat-icon { font-size: 24px; }
.em-stat-text { font-size: 14px; font-weight: 600; opacity: 0.95; }

/* ======================== FORMATS ======================== */
.em-cats { background: var(--nt-bg-alt); }
.em-cats-grid { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width:768px) { .em-cats-grid { grid-template-columns: repeat(3,1fr); } }
.em-cat { position: relative; overflow: hidden; border-radius: var(--nt-radius-lg); height: 220px; display: flex; align-items: flex-end; transition: transform 0.3s; }
.em-cat:hover { transform: translateY(-3px); }
.em-cat-overlay { position: absolute; inset: 0; }
.em-cat--bp .em-cat-overlay { background: linear-gradient(135deg, #4338ca, #6366f1); }
.em-cat--australs .em-cat-overlay { background: linear-gradient(135deg, #7c3aed, #a78bfa); }
.em-cat--wsdc .em-cat-overlay { background: linear-gradient(135deg, #2563eb, #60a5fa); }
.em-cat-content { position: relative; z-index: 1; padding: 24px; color: #fff; }
.em-cat-icon { font-size: 28px; margin-bottom: 6px; }
.em-cat-title { font-size: 18px; font-weight: 700; margin: 0 0 4px; }
.em-cat-desc { font-size: 13px; opacity: 0.85; margin: 0; }

/* ======================== FAQ ======================== */
.em-faq { background: var(--nt-bg); }
.em-faq-container { max-width: 680px; }
.em-faq-list { margin-top: 40px; }
.em-acc { border: 1px solid var(--nt-border); border-radius: var(--nt-radius); margin-bottom: 10px; overflow: hidden; transition: box-shadow var(--nt-ease); }
.em-acc:hover { box-shadow: var(--nt-shadow-sm); }
.em-acc summary { cursor: pointer; font-size: 15px; font-weight: 600; padding: 18px 20px; outline: none; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.em-acc summary::-webkit-details-marker { display: none; }
.em-acc summary::after { content: '+'; font-size: 18px; font-weight: 400; color: var(--nt-text-muted); transition: transform var(--nt-ease); flex-shrink: 0; margin-left: 16px; }
.em-acc[open] summary::after { content: '\2212'; }
.em-acc[open] { background: var(--nt-bg-alt); }
.em-acc p { margin: 0; padding: 0 20px 18px; color: var(--nt-text-secondary); font-size: 14px; line-height: 1.7; }

/* ======================== FINAL CTA ======================== */
.em-final { background: var(--nt-gradient); color: #fff; text-align: center; position: relative; overflow: hidden; }
.em-final-title { font-size: clamp(28px,4vw,44px); font-weight: 800; margin: 0 0 12px; letter-spacing: -0.02em; }
.em-final-sub { font-size: 17px; margin: 0 0 36px; opacity: 0.9; }

/* ======================== FOOTER ======================== */
.em-footer { background: var(--nt-bg-dark); color: #fff; padding: 64px 0 0; }
.em-footer-grid { display: grid; gap: 32px; grid-template-columns: 1fr; }
@media (min-width:768px) { .em-footer-grid { grid-template-columns: 2fr 1fr 1fr 1fr; } }
.em-footer .em-logo-img { width: 100px; margin-bottom: 12px; filter: brightness(0) invert(1); }
.em-foot-desc { font-size: 13px; opacity: 0.5; max-width: 260px; line-height: 1.7; }
.em-foot-title { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 14px; opacity: 0.4; }
.em-foot-links { list-style: none; }
.em-foot-links li { margin-bottom: 8px; }
.em-foot-links a { color: #fff; opacity: 0.6; text-decoration: none; font-size: 13px; transition: opacity var(--nt-ease); }
.em-foot-links a:hover { opacity: 1; }
.em-foot-bottom { margin-top: 40px; border-top: 1px solid rgba(255,255,255,0.06); }
.em-copy { font-size: 12px; padding: 20px 0; text-align: center; opacity: 0.4; }

/* ======================== ANIMATIONS ======================== */
@keyframes fadeInUp { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
.em-hero-inner > * { animation: fadeInUp 0.5s ease-out both; }
.em-hero-inner > *:nth-child(2) { animation-delay: 0.08s; }
.em-hero-inner > *:nth-child(3) { animation-delay: 0.16s; }
.em-hero-inner > *:nth-child(4) { animation-delay: 0.24s; }
.em-hero-inner > *:nth-child(5) { animation-delay: 0.32s; }
.em-in { opacity:1!important; transform:translateY(0)!important; transition: opacity 0.5s ease-out, transform 0.5s ease-out; }

/* Accessibility */
:focus-visible { outline: 2px solid var(--nt-primary); outline-offset: 2px; border-radius: 4px; }

/* ======================== ADS ======================== */
.em-ad-section { padding: 24px 0; background: var(--nt-bg-alt); }
.em-ad-banner { display: block; margin: 0 auto; min-height: 90px; background: var(--nt-border-light); border-radius: var(--nt-radius); overflow: hidden; }
@media (max-width:767px) { .em-ad-banner { min-height: 50px; } }

/* ======================== RESPONSIVE ======================== */
@media (max-width:767px) {
  .em-nav a:not(.em-btn) { display: none; }
  .em-nav .em-btn--sm, .em-nav .em-btn--secondary { display: none; }
}

/* ======================== DASHBOARD PREVIEW ======================== */
.em-dashboard-preview { background: #f8fafc; padding: 0; font-family: var(--nt-font); }
.em-dash-header { background: #fff; border-bottom: 1px solid var(--nt-border); padding: 10px 16px; }
.em-dash-nav { display: flex; align-items: center; gap: 16px; }
.em-dash-logo-pill { background: var(--nt-gradient); color: #fff; padding: 4px 12px; border-radius: 6px; font-size: 11px; font-weight: 700; }
.em-dash-nav-item { font-size: 11px; color: var(--nt-text-muted); font-weight: 500; cursor: default; }
.em-dash-nav-item--active { color: var(--nt-primary); font-weight: 700; border-bottom: 2px solid var(--nt-primary); padding-bottom: 2px; }
.em-dash-body { display: flex; min-height: 220px; }
.em-dash-sidebar { width: 140px; background: #fff; border-right: 1px solid var(--nt-border); padding: 12px 0; flex-shrink: 0; }
.em-dash-sidebar-item { padding: 6px 14px; font-size: 11px; color: var(--nt-text-secondary); cursor: default; }
.em-dash-sidebar-item--active { background: var(--nt-primary-light); color: var(--nt-primary); font-weight: 600; border-right: 2px solid var(--nt-primary); }
.em-dash-main { flex: 1; padding: 16px; }
.em-dash-stats-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 16px; }
.em-dash-stat-card { background: #fff; border: 1px solid var(--nt-border); border-radius: 8px; padding: 10px; text-align: center; }
.em-dash-stat-card--accent { background: var(--nt-primary-light); border-color: #c7d2fe; }
.em-dash-stat-num { font-size: 18px; font-weight: 800; color: var(--nt-text); }
.em-dash-stat-label { font-size: 10px; color: var(--nt-text-muted); font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; }
.em-dash-table { background: #fff; border: 1px solid var(--nt-border); border-radius: 8px; overflow: hidden; }
.em-dash-table-head { display: grid; grid-template-columns: 0.8fr 1fr 1fr 1fr 1fr 0.6fr; padding: 8px 12px; background: var(--nt-bg-alt); border-bottom: 1px solid var(--nt-border); font-size: 10px; font-weight: 700; color: var(--nt-text-muted); text-transform: uppercase; letter-spacing: 0.04em; }
.em-dash-table-row { display: grid; grid-template-columns: 0.8fr 1fr 1fr 1fr 1fr 0.6fr; padding: 8px 12px; border-bottom: 1px solid var(--nt-border-light); font-size: 11px; color: var(--nt-text-secondary); align-items: center; }
.em-dash-table-row:last-child { border-bottom: none; }
.em-dash-status { font-size: 12px; text-align: center; }
.em-dash-status--done { color: var(--nt-success); }
.em-dash-status--pending { color: var(--nt-warning); }
@media (max-width:599px) {
  .em-dash-sidebar { display: none; }
  .em-dash-stats-row { grid-template-columns: repeat(2, 1fr); }
  .em-dash-table-head, .em-dash-table-row { grid-template-columns: 1fr 1fr 0.5fr; }
  .em-dash-table-head span:nth-child(3), .em-dash-table-head span:nth-child(4),
  .em-dash-table-row span:nth-child(3), .em-dash-table-row span:nth-child(4) { display: none; }
}

/* ======================== TRUST SECTION ENHANCED ======================== */
.em-trust-icon { font-size: 20px; }
.em-trust-text { font-weight: 600; }

/* ======================== PLATFORM TOOLS ======================== */
.em-tools-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; margin-top: 40px; }
.em-tool-card { background: #fff; border: 1px solid var(--nt-border); border-radius: var(--nt-radius); padding: 28px 24px; position: relative; overflow: hidden; transition: all 0.3s; }
.em-tool-card:hover { transform: translateY(-4px); box-shadow: var(--nt-shadow-lg); }
.em-tool-card--indigo { border-left: 4px solid #6366F1; }
.em-tool-card--green { border-left: 4px solid #10B981; }
.em-tool-card--amber { border-left: 4px solid #F59E0B; }
.em-tool-card--red { border-left: 4px solid #EF4444; }
.em-tool-bg-icon { position: absolute; top: -10px; right: -10px; font-size: 4rem; opacity: 0.07; pointer-events: none; }
.em-feature-icon--lg { font-size: 2rem; }
.em-tool-title { font-size: 1.25rem; font-weight: 700; margin: 0 0 8px; }
.em-tool-tags { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 4px; }
.em-tag { display: inline-block; padding: 2px 8px; border-radius: 20px; font-size: 0.75rem; font-weight: 600; }
.em-tag--indigo { background: #EEF2FF; color: #6366F1; }
.em-tag--green { background: #ECFDF5; color: #10B981; }
.em-tag--amber { background: #FFFBEB; color: #F59E0B; }
.em-tag--red { background: #FEF2F2; color: #EF4444; }
.em-tool-cta { margin-top: 16px; }
.em-btn--green { background: #10B981; color: #fff; border: none; }
.em-btn--green:hover { background: #059669; }
.em-btn--amber { background: #F59E0B; color: #fff; border: none; }
.em-btn--amber:hover { background: #D97706; }
.em-btn--red { background: #EF4444; color: #fff; border: none; }
.em-btn--red:hover { background: #DC2626; }
.em-btn--bold { font-weight: 700; }

/* ======================== SPOTLIGHT ======================== */
.em-spotlight { background: linear-gradient(135deg, #312E81 0%, #4338CA 50%, #6366F1 100%); color: #fff; }
.em-spotlight-header { text-align: center; max-width: 800px; margin: 0 auto; }
.em-spotlight-eyebrow { color: #C7D2FE; }
.em-spotlight-title { font-size: 2.25rem; font-weight: 800; margin-bottom: 16px; color: #fff; }
.em-spotlight-sub { font-size: 1.1rem; color: #C7D2FE; margin-bottom: 40px; }
.em-spotlight-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; margin-bottom: 40px; }
.em-spotlight-card { background: rgba(255,255,255,0.1); border-radius: 12px; padding: 20px; backdrop-filter: blur(10px); }
.em-spotlight-card-icon { font-size: 2rem; margin-bottom: 8px; }
.em-spotlight-card-title { font-size: 1rem; font-weight: 700; margin-bottom: 6px; color: #fff; }
.em-spotlight-card-desc { font-size: 0.85rem; color: #C7D2FE; margin: 0; }
.em-spotlight-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; max-width: 700px; margin: 0 auto 32px; }
.em-spotlight-stat { text-align: center; padding: 12px; }
.em-spotlight-stat-num { font-size: 1.5rem; font-weight: 800; color: #fff; }
.em-spotlight-stat-label { font-size: 0.8rem; color: #C7D2FE; }
.em-spotlight-cta { text-align: center; }

/* ======================== LEARN PROMO ======================== */
.em-learn-promo { background: #f0fdf4; }
.em-learn-promo-inner { text-align: center; max-width: 700px; }
.em-learn-promo-eyebrow { color: #10B981; }
.em-learn-promo-cats { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; }
.em-btn--outline-green { background: #f0fdf4; color: #10B981; border: 1px solid #10B981; }
.em-btn--outline-green:hover { background: #10B981; color: #fff; }
.em-learn-promo-main-cta { margin-top: 24px; }

/* ======================== BACK TO TOP ======================== */
.em-back-to-top {
  position: fixed; bottom: 80px; right: 24px; z-index: 9998;
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--nt-primary); color: #fff;
  border: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 12px rgba(99,102,241,0.3);
  opacity: 0; visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
  transform: translateY(10px);
}
.em-back-to-top.visible { opacity: 1; visibility: visible; transform: translateY(0); }
.em-back-to-top:hover { background: var(--nt-primary-hover); transform: translateY(-2px); }

/* ======================== FOOTER RESPONSIVE (6-col) ======================== */
@media (min-width:768px) { .em-footer-grid { grid-template-columns: 1.8fr 1fr 1fr 1fr 1fr 1fr; } }
@media (max-width:767px) {
  .em-footer-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .em-footer-grid > div:first-child { grid-column: 1 / -1; }
}
