  *, *::before, *::after { box-sizing: border-box; }
  html { scroll-behavior: smooth; scroll-padding-top: 80px; }
  body { margin: 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
  img { display: block; max-width: 100%; }
  ::selection { background: rgba(52,212,176,0.2); color: #0A1628; }

  /* NAV */
  #site-header { background: transparent; }
  #site-header.scrolled { background: rgba(255,255,255,0.95); backdrop-filter: blur(12px); box-shadow: 0 1px 0 rgba(10,22,40,0.06); }
  #site-header.scrolled .nav-link { color: rgba(10,22,40,0.6) !important; }
  #site-header.scrolled .nav-link:hover { color: #0A1628 !important; }
  #site-header.scrolled .menu-line { background: #0A1628 !important; }

  .nav-link { position: relative; }
  .nav-link::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 1px; background: #34D4B0; transition: width 0.3s ease; }
  .nav-link:hover::after { width: 100%; }

  /* MOBILE MENU */
  #mobile-menu.open { opacity: 1 !important; pointer-events: all !important; }
  #mobile-menu.open .mobile-link { opacity: 1 !important; transform: translateY(0) !important; }
  #mobile-menu.open .mobile-link:nth-child(5) { transition-delay: 250ms !important; }
  #mobile-menu.open .mobile-link:nth-child(6) { transition-delay: 300ms !important; }

  body.menu-open { overflow: hidden; }

  /* HERO ANIMATIONS */
  .hero-eyebrow { animation: fadeUp 0.8s ease forwards; animation-delay: 0.2s; opacity: 0; }
  .hero-title { animation: fadeUp 0.8s ease forwards; animation-delay: 0.4s; opacity: 0; }
  .hero-subtitle { animation: fadeUp 0.8s ease forwards; animation-delay: 0.6s; opacity: 0; }
  .hero-cta { animation: fadeUp 0.8s ease forwards; animation-delay: 0.8s; opacity: 0; }
  .hero-orb { animation: float 8s ease-in-out infinite; }
  .hero-orb:nth-child(3) { animation-delay: -3s; animation-duration: 10s; }
  .hero-orb:nth-child(4) { animation-delay: -5s; animation-duration: 12s; }

  @keyframes fadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
  }
  @keyframes float {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(18px, -20px) scale(1.04); }
    66% { transform: translate(-12px, 14px) scale(0.97); }
  }

  /* SCROLL REVEAL */
  .reveal { opacity: 1; transform: none; transition: opacity 0.7s ease, transform 0.7s ease; }
  .reveal.fade-up { transform: translateY(0); }
  .reveal.fade-right { transform: translateX(0); }
  .reveal.fade-left { transform: translateX(0); }

  @media (prefers-reduced-motion: no-preference) {
    .reveal.is-hidden { opacity: 0; }
    .reveal.fade-up { transform: translateY(32px); }
    .reveal.fade-right { transform: translateX(-32px); }
    .reveal.fade-left { transform: translateX(32px); }
  }

  /* MENU LISTS */
  li { position: relative; }
  li:not(:last-child) { padding-bottom: 5px; }
  li::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: rgba(10,22,40,0.06); }

  /* SELECT */
  select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230A1628' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1rem center; padding-right: 2.5rem !important; }

  /* FOCUS */
  :focus-visible { outline: 2px solid #34D4B0; outline-offset: 2px; border-radius: 4px; }

  /* MOBILE */
  @media (max-width: 768px) {
    .hero-title { font-size: 2.2rem !important; }
    section { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
  }
