/* Responsive CSS for Rural Outreach Benefit Clinics */

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
  .hero-content h1 {
    font-size: 2.5rem;
  }
  
  .page-title {
    font-size: 2.5rem;
  }
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
  section {
    padding: 60px 0;
  }
  
  .hero-section {
    height: 80vh;
  }
  
  .hero-content h1 {
    font-size: 2.2rem;
  }
  
  .contact-info {
    margin-top: 30px;
  }
  
  .about-feature-box,
  .service-box,
  .price-box,
  .team-member,
  .coreinfo-box,
  .blog-post {
    margin-bottom: 30px;
  }
  
  .footer {
    padding: 60px 0 30px;
  }
  
  .footer-widget {
    margin-bottom: 30px;
  }
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
  section {
    padding: 50px 0;
  }
  
  .hero-section {
    height: 60vh;
  }
  
  .hero-content h1 {
    font-size: 2rem;
  }
  
  .hero-content p {
    font-size: 1rem;
  }
  
  .section-title h2 {
    font-size: 1rem;
  }
  
  .navbar-brand {
    color: var(--text-dark);
  }
  
  .navbar-nav .nav-link {
    color: var(--text-dark);
    padding: 10px 0;
  }
  
  .header:not(.sticky) .navbar-toggler {
    border-color: var(--bg-white);
  }
  
  .header:not(.sticky) .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  }
  
  .review-box {
    margin: 15px 0;
  }
  
  .page-header {
    height: 300px;
  }
  
  .page-title {
    font-size: 2rem;
  }
  
  #space {
    height: 400px;
  }
  
  /* Disable animations on small screens */
  @media (prefers-reduced-motion) {
    .fade-up {
      opacity: 1;
      transform: translateY(0);
      transition: none;
    }
  }
}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
  section {
    padding: 40px 0;
  }
  
  .hero-section {
    height: 50vh;
  }
  
  .hero-content h1 {
    font-size: 1rem;
  }
  
  .section-title h2 {
    font-size: 1.6rem;
  }
  
  .btn {
    padding: 10px 20px;
    font-size: 0.875rem;
  }
  
  .service-box,
  .price-box,
  .contact-form {
    padding: 20px;
  }
  
  .page-header {
    height: 200px;
  }
  
  .page-title {
    font-size: 1rem;
  }
  
  #space {
    height: 300px;
  }
} 