@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap');

    body {
      font-family: 'Montserrat', sans-serif;
      scroll-behavior: smooth;
      overflow-x: hidden;
    }

    .hero-section {
      position: relative;
      width: 100%;
      height: 100vh;
      overflow: hidden;
    }

    .slide {
      /* primeiro layer = seu overlay, segundo layer = a imagem dinâmica */
      background-image:
        linear-gradient(rgba(0, 39, 118, 0.8), rgba(0, 39, 118, 0.8)),
        var(--bg-img);
      background-size: cover;
      background-position: center;
      background-attachment: fixed;
    }

    .service-card {
      transition: all 0.3s ease;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }

    .service-card:hover {
      transform: translateY(-10px);
      box-shadow: 0 10px 20px rgba(0, 39, 118, 0.2);
    }

    .testimonial-card {
      background: linear-gradient(135deg, #f8fafc 0%, #E5E7EB 100%);
    }

    .nav-link {
      position: relative;
    }

    .nav-link::after {
      content: '';
      position: absolute;
      width: 0;
      height: 2px;
      bottom: -2px;
      left: 0;
      background-color: #002776;
      transition: width 0.3s ease;
    }

    .nav-link:hover::after {
      width: 100%;
    }

    .ripple {
      position: relative;
      overflow: hidden;
    }

    .ripple-effect {
      position: absolute;
      border-radius: 50%;
      background-color: rgba(255, 255, 255, 0.4);
      transform: scale(0);
      animation: ripple 0.6s linear;
      pointer-events: none;
    }

    @keyframes ripple {
      to {
        transform: scale(4);
        opacity: 0;
      }
    }

    .toast {
      animation: toast 3s ease forwards;
    }

    @keyframes toast {
      0% {
        transform: translateY(100%);
        opacity: 0;
      }

      10% {
        transform: translateY(0);
        opacity: 1;
      }

      90% {
        transform: translateY(0);
        opacity: 1;
      }

      100% {
        transform: translateY(100%);
        opacity: 0;
      }
    }

    .parallax-bg {
      background-attachment: fixed;
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
    }

    .scroll-margin {
      scroll-margin-top: 80px;
    }
