    body {
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 17px;
      line-height: 1.7;
      color: #1f1f1f;
    }
    
    h1, h2, h3 {
      font-weight: 700;
      letter-spacing: -0.02em;
    }
    
    h1 {
      letter-spacing: -0.03em;
    }
    
    h2 {
      margin-bottom: 2rem;
    }
    
    p {
      max-width: 720px;
    }
    
    .section-padding {
      padding: 5rem 1rem;
    }
    
    .lead {
      font-size: 1.15rem;
      line-height: 1.8;
    }
    
    .btn-success {
      padding: 0.75rem 1.5rem;
      font-weight: 600;
      letter-spacing: 0.02em;
    }
    
    .hero h1 span {
      display: inline-block;
      margin-top: 0.25rem;
    }

    .hero {
      position: relative;
      min-height: 90vh;
      background-image: url("img/hero-mtb.jpg");
      background-size: cover;
      background-position: center;
      color: #fff;
    }

    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(0,0,0,0.55);
    }

    .hero-content {
      position: relative;
      z-index: 1;
    }

    .section-padding {
      padding: 4rem 1rem;
    }

    .icon-box {
      background: #f8f9fa;
      border-radius: 0.75rem;
      padding: 2rem;
      height: 100%;
    }

    footer {
      background: #111;
      color: #bbb;
    }
    
    .object-cover {
      object-fit: cover;
      width: 100%;
    }
    
    section img {
      transition: transform 0.3s ease;
    }
    
    section img:hover {
      transform: scale(1.01);
    }
    
    .section-title {
      font-family: 'Merriweather', serif;
      font-size: 2.4rem;
      margin-bottom: 0.5rem;
    }
    
    .section-subtitle {
      max-width: 700px;
      margin: 0 auto;
      color: #555;
      font-size: 1.05rem;
    }
    
    .activity-card {
      background: #fff;
      border-radius: 20px;
      overflow: hidden;
      box-shadow: 0 20px 40px rgba(0,0,0,0.08);
      height: 100%;
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    
    .activity-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 30px 60px rgba(0,0,0,0.12);
    }
    
    .activity-img {
      width: 100%;
      height: 420px;
      object-fit: cover;
    }
    
    .activity-body {
      padding: 24px;
    }
    
    .activity-body h3 {
      font-size: 1.4rem;
      margin-bottom: 12px;
    }
    
    .activity-body p {
      font-size: 0.95rem;
      color: #555;
      line-height: 1.6;
    }
    
    /* Evidenzia la scuola MTB */
    .activity-card.featured {
      border: 2px solid #111;
    }
    
    @media (max-width: 768px) {
      .activity-img {
        height: 360px;
      }
    }
    