/* Responsive CSS */

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
  .hero-content h1 {
    font-size: 3.5rem;
  }
  
  .section-padding {
    padding: 80px 0;
  }
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
  .hero-content h1 {
    font-size: 3rem;
  }
  
  .section-padding {
    padding: 70px 0;
  }
  
  .about-img {
    margin-bottom: 30px;
  }
  
  .footer-widget {
    margin-bottom: 30px;
  }
  
  .team-img {
    height: 250px;
  }
  
  .navbar-nav .nav-link {
    padding: 10px 15px !important;
  }
  
  .service-img {
    height: 180px;
  }
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
  .hero-content h1 {
    font-size: 2.5rem;
  }
  
  .hero-content p {
    font-size: 1rem;
  }
  
  .section-padding {
    padding: 50px 0;
  }
  
  .section-title h2 {
    font-size: 2rem;
  }
  
  .section-title h2:after {
    width: 60px;
  }
  
  .service-img {
    height: 160px;
  }
  
  .team-img {
    height: 220px;
  }
  
  .navbar-collapse {
    background-color: var(--primary-color);
    padding: 15px;
    border-radius: 5px;
  }
  
  .navbar-toggler {
    border-color: white;
  }
  
  .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  }
  
  header.sticky .navbar-toggler {
    border-color: var(--primary-color);
  }
  
  header.sticky .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(58, 124, 165, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  }
  
  .hero-section {
    min-height: 600px;
    height: auto;
    padding: 100px 0 50px;
  }
  
  .contact-form {
    margin-top: 30px;
  }
  
  /* Disable animations on mobile for performance and accessibility */
  @media (prefers-reduced-motion: reduce) {
    * {
      animation: none !important;
      transition: none !important;
    }
  }
}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
  .hero-content h1 {
    font-size: 2rem;
  }
  
  .section-title h2 {
    font-size: 1.8rem;
  }
  
  .section-padding {
    padding: 40px 0;
  }
  
  .feature-box, 
  .info-box, 
  .service-card,
  .price-card,
  .team-card,
  .blog-card {
    margin-bottom: 20px;
  }
  
  .feature-icon {
    width: 60px;
    height: 60px;
    line-height: 60px;
    font-size: 24px;
  }
  
  .service-content,
  .price-content,
  .team-content,
  .blog-content,
  .review-card,
  .accordion-button,
  .accordion-body {
    padding: 15px;
  }
  
  .team-img {
    height: 200px;
  }
  
  .contact-form {
    padding: 20px;
  }
  
  footer {
    padding: 40px 0 20px;
  }
  
  .footer-widget h4 {
    font-size: 1.3rem;
  }
  
  .logo {
    font-size: 20px;
  }
  
  .breadcrumb-section {
    padding: 80px 0 20px;
  }
} 