  html { scroll-behavior: smooth; }
  body { font-family: 'Inter', sans-serif; }
  h1,h2,h3,h4,.font-heading { font-family: 'Poppins', sans-serif; }

  .reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
  .reveal.in-view { opacity: 1; transform: translateY(0); }

  .glass { background: rgba(255,255,255,0.65); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }

  .gradient-hero {
    background: radial-gradient(circle at 15% 20%, rgba(56,189,248,0.18), transparent 45%),
                radial-gradient(circle at 85% 10%, rgba(37,99,235,0.15), transparent 40%),
                linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
  }

  .float-slow { animation: floaty 7s ease-in-out infinite; }
  .float-slower { animation: floaty 9s ease-in-out infinite; animation-delay: 1.2s; }
  @keyframes floaty { 0%,100% { transform: translateY(0px); } 50% { transform: translateY(-14px); } }

  .hover-lift { transition: transform .35s ease, box-shadow .35s ease; }
  .hover-lift:hover { transform: translateY(-6px); box-shadow: 0 20px 45px -12px rgba(10,77,155,0.25); }

  .card-scale { transition: transform .3s ease; }
  .card-scale:hover { transform: scale(1.03); }

  .badge-pulse { position: relative; }
  .badge-pulse::before {
    content: ''; position: absolute; inset: -4px; border-radius: 9999px;
    border: 1.5px solid #38BDF8; opacity: .6; animation: pulse-ring 2.4s ease-out infinite;
  }
  @keyframes pulse-ring { 0% { transform: scale(0.9); opacity: .6; } 100% { transform: scale(1.5); opacity: 0; } }

  .lang-dropdown { display: none; }
  .lang-open .lang-dropdown { display: block; }

  .path-line { stroke-dasharray: 6 8; animation: dash 30s linear infinite; }
  @keyframes dash { to { stroke-dashoffset: -400; } }

  ::selection { background: #38BDF8; color: #fff; }

  .skip-link:focus { transform: translateY(0); }
  .skip-link { transform: translateY(-150%); transition: transform .2s ease; }

  @media (prefers-reduced-motion: reduce) {
    .float-slow, .float-slower, .path-line, .badge-pulse::before { animation: none !important; }
    .reveal { transition: none !important; }
  }
