 *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    html { scroll-behavior: smooth; }

    body {
      font-family: 'Inter', sans-serif;
      background: #0A0A0A;
      color: #ffffff;
      overflow-x: hidden;
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
    }

    .font-display { font-family: 'Syne', sans-serif; }

    @keyframes pulse-dot {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.4; }
    }
    .pulse-dot { animation: pulse-dot 2s infinite; }

    @keyframes fade-in-up {
      from { opacity: 0; transform: translateY(16px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    .animate-fade-in-up { animation: fade-in-up 0.55s ease both; }
    .animate-delay-100 { animation-delay: 0.1s; }
    .animate-delay-200 { animation-delay: 0.2s; }
    .animate-delay-300 { animation-delay: 0.3s; }
    .animate-delay-400 { animation-delay: 0.4s; }

    .card-hover {
      transition: border-color 0.25s, transform 0.25s;
      position: relative;
      overflow: hidden;
    }
    .card-hover:hover {
      border-color: rgba(255,255,255,0.18) !important;
      transform: translateY(-2px);
    }
    .card-hover::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 2px;
      background: #DF0816;
      transform: scaleX(0);
      transition: transform 0.3s;
      transform-origin: left;
      border-radius: 12px 12px 0 0;
    }
    .card-hover:hover::before { transform: scaleX(1); }

    .step-line { position: relative; }
    .step-line::after {
      content: '';
      position: absolute;
      top: 1.5rem;
      left: 60%;
      right: -40%;
      height: 1px;
      background: linear-gradient(90deg, rgba(255,255,255,0.1), transparent);
    }
    .step-line:last-child::after { display: none; }

    /* form base resets */
    input, select, textarea {
      -webkit-appearance: none;
      appearance: none;
    }
    select option { background: #1A1A1A; color: #fff; }

    /* Scrollbar */
    ::-webkit-scrollbar { width: 6px; }
    ::-webkit-scrollbar-track { background: #0A0A0A; }
    ::-webkit-scrollbar-thumb { background: #333; border-radius: 3px; }