/* ===== FONTS ===== */
@import url('https://fonts.googleapis.com/css2?family=Saira+Condensed:wght@500;700;900&family=DM+Sans:wght@400;500;700&family=JetBrains+Mono:wght@400;500;700&display=swap');

/* ===== TOKENS ===== */
:root {
  --lp-bg:           #08090B;
  --lp-elevated:     #111316;
  --lp-surface:      #1A1D21;
  --lp-border:       #22262B;
  --lp-border-strong:#2E3338;
  --lp-text:         #F5F6F7;
  --lp-muted:        #8B9098;
  --lp-faint:        #5A6068;
  --lp-green:        #3DD45D;
  --lp-green-deep:   #1F7A38;
  --lp-amber:        #E8A33D;
  --lp-red:          #D44A3D;
}

/* ===== RESET ===== */
.lp, .lp * { box-sizing: border-box; }

/* Override brand.css html/body overflow-x:hidden which breaks position:sticky */
body.lp { overflow-x: clip; }

/* ===== BASE ===== */
.lp {
  background: var(--lp-bg);
  color: var(--lp-text);
  font-family: 'DM Sans', -apple-system, system-ui, sans-serif;
  line-height: 1.5;
  overflow-x: clip;
}

/* Background grid texture */
.lp::before {
  content: '';
  position: fixed;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px);
  background-size: 60px 60px;
  pointer-events: none;
  z-index: 0;
  mask-image: radial-gradient(ellipse at center top, black 0%, transparent 70%);
}

/* Green ambient glow */
.lp::after {
  content: '';
  position: fixed;
  inset: 0;
  background:
    radial-gradient(circle at 20% 0%, rgba(61,212,93,0.06) 0%, transparent 40%),
    radial-gradient(circle at 80% 100%, rgba(61,212,93,0.03) 0%, transparent 40%);
  pointer-events: none;
  z-index: 0;
}

.lp main,
.site-footer-wrap { position: relative; z-index: 1; }

/* ===== UTILITY ===== */
.lp-container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 32px;
}

.lp-eyebrow {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--lp-green);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.lp-eyebrow::before {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--lp-green);
  border-radius: 50%;
  box-shadow: 0 0 12px var(--lp-green);
  animation: lp-pulse 2s ease-in-out infinite;
}

.lp-section-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--lp-faint);
  margin-bottom: 16px;
}

/* ===== KEYFRAMES ===== */
@keyframes lp-pulse {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.4; }
}
@keyframes lp-blink { to { opacity: 0; } }
@keyframes lp-scroll { to { transform: translateX(-50%); } }
@keyframes lp-fadeUp {
  to { opacity: 1; transform: translateY(0); }
}

/* ===== FADE-UP ANIMATION ===== */
.lp-fade-up {
  opacity: 0;
  transform: translateY(14px);
  animation: lp-fadeUp 0.8s ease forwards;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 900px) {
  .lp-container { padding: 0 20px; }
}
