/* ==========================
   PAGE HEADER
========================== */

.page-header {
  background: linear-gradient(135deg, #1848ff, #6610f2);

  padding: 80px 0;

  color: white;
}

.breadcrumb-box h1 {
  font-size: 48px;
  font-weight: 800;
  margin-bottom: 10px;
}

.breadcrumb {
  font-size: 15px;
}

.breadcrumb a {
  color: white;
  text-decoration: none;
}

/* TITLES */

.page-title {
  text-align: center;
  margin-bottom: 50px;
}

.page-title h1 {
  font-size: 48px;
  font-weight: 800;
  color: #19214f;
}

.page-title p {
  font-size: 18px;
  color: #666;
}

/* BUTTONS */

.btn-primary-custom {
  background: #5c22ff;
  color: white;

  border: none;

  padding: 12px 25px;

  border-radius: 8px;

  font-weight: 600;

  transition: 0.3s;
}

.btn-primary-custom:hover {
  background: #4c18df;
}

/* CARDS */

.card-custom {
  background: white;

  border-radius: 15px;

  overflow: hidden;

  border: 1px solid #eee;

  transition: 0.3s;
}

.card-custom:hover {
  transform: translateY(-5px);

  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08);
}

@media (max-width: 992px) {
  .news-grid {
    grid-template-columns: 1fr;
  }

  .plans {
    grid-template-columns: 1fr;
  }

  .timeline::before {
    display: none;
  }

  .timeline-item {
    flex-direction: column;
  }

  .timeline-content {
    margin-left: 0;
    margin-top: 20px;
  }

  .article-header h1 {
    font-size: 32px;
  }

  .page-title h1,
  .breadcrumb-box h1 {
    font-size: 36px;
  }
}

@media (max-width: 768px) {
  .article img {
    height: 250px;
  }

  .news-card img {
    height: 200px;
  }

  .video-card img {
    height: 200px;
  }
}
