main { max-width: 1200px; margin: 40px auto; padding: 20px; font-family: sans-serif; line-height: 1.6; }
    .protractor-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 24px;
    }
    .protractor-item {
      border: 1px solid #ddd;
      border-radius: 10px;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 4px 8px rgba(0,0,0,0.05);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .protractor-item:hover {
      transform: translateY(-5px);
      box-shadow: 0 10px 16px rgba(0,0,0,0.1);
    }
    .protractor-item img {
      width: 100%;
      display: block;
      height: auto;
    }
    .protractor-item-content {
      padding: 15px;
      text-align: center;
    }
    .protractor-item-content h2 {
      margin: 10px 0;
      font-size: 1.1rem;
    }
    .download-btn {
      display: inline-block;
      margin-top: 10px;
      padding: 10px 20px;
      background-color: #007bff;
      color: #fff;
      text-decoration: none;
      border-radius: 6px;
      transition: background 0.3s ease;
    }
    .download-btn:hover {
      background-color: #0056b3;
    }
    
    body, main {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}

h1 {
  font-size: 2rem; /* 32px */
  font-weight: 700;
  margin-bottom: 1rem;
}

h2 {
  font-size: 1.5rem; /* 24px */
  font-weight: 600;
  margin-bottom: 0.75rem;
}

h3 {
  font-size: 1.2rem; /* 19px */
  font-weight: 600;
  margin-bottom: 0.5rem;
}

h4 {
  font-size: 1.05rem;     /* ~17px */
  font-weight: 600;
  margin-bottom: 0.5rem;
}

h5 {
  font-size: 1rem;        /* ~16px */
  font-weight: 600;
  margin-bottom: 0.4rem;
}

p {
  font-size: 1rem; /* 16px */
  margin-bottom: 1rem;
}

.download-btn {
  font-size: 1rem;
  padding: 10px 20px;
  border-radius: 6px;
  transition: background 0.3s ease;
}
