@charset "UTF-8";
/* CSS Document */
 body {
      font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
      color: #212529;
    }

    /* TOPBAR */
    .topbar {
      font-size: .85rem;
    }
    .topbar a {
      color: #f8f9fa;
      text-decoration: none;
    }
    .topbar a:hover {
      text-decoration: underline;
    }

    /* NAVBAR */
    .navbar-brand {
      font-weight: 700;
      letter-spacing: .04em;
      text-transform: uppercase;
    }
    .navbar-nav .nav-link {
      font-weight: 500;
      font-size: .95rem;
    }

    /* HERO */
    .hero {
      padding: 4rem 0 3.5rem;
      background: #f7f9fc;
    }
    .hero-kicker {
      font-size: .8rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      font-weight: 700;
      color: #0d6efd;
    }
    .hero h1 {
      font-weight: 700;
      font-size: clamp(2rem, 3vw + 1rem, 2.8rem);
      margin-bottom: .75rem;
    }
    .hero-subtitle {
      font-size: 1.05rem;
      max-width: 36rem;
    }

    /* SEZIONI GENERICHE */
    .section-kicker {
      font-size: .8rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      font-weight: 700;
      color: #0d6efd;
      margin-bottom: .35rem;
    }
    .section-title {
      font-size: 1.6rem;
      font-weight: 700;
      margin-bottom: 1.2rem;
    }

    /* CLIENTI */
    .clients-logo {
      border-radius: .75rem;
      border: 1px solid #dee2e6;
      background: #fff;
      padding: 1.25rem;
      text-align: center;
      font-size: .9rem;
    }

    /* CARDS “COSA FACCIAMO / FOCUS” */
    .card-plain {
      border-radius: 1rem;
      border: 1px solid #e5e7eb;
      padding: 1.5rem;
      height: 100%;
      background: #fff;
    }
    .card-plain h3 {
      font-size: 1.1rem;
      font-weight: 700;
      margin-bottom: .4rem;
    }
    .card-plain h4 {
      font-size: 1rem;
      font-weight: 600;
      margin-bottom: .5rem;
    }
    .card-plain p {
      font-size: .95rem;
      margin-bottom: .75rem;
    }

    /* TEST BOX */
    .test-box {
      border-radius: 1.25rem;
      padding: 2rem 1.75rem;
      background: radial-gradient(circle at top left, #e0ecff 0, #f7f9fc 48%, #ffffff 100%);
      border: 1px solid #d0d8ea;
    }

    /* FOOTER */
    footer {
      font-size: .9rem;
    }
    footer a {
      color: #adb5bd;
      text-decoration: none;
    }
    footer a:hover {
      text-decoration: underline;
    }