/* Premium Protection - Anti-Corrosion Services Template
   Responsive CSS - 2025
   ========================================================================== */

/* Large Devices (Desktops, less than 1200px) */
@media (max-width: 1199.98px) {
  h1 {
    font-size: 3rem;
  }
  
  h2 {
    font-size: 2.2rem;
  }
  
  .hero-content h1 {
    font-size: 3.5rem;
  }
  
  .section-padding {
    padding: 80px 0;
  }
}

/* Medium Devices (Tablets, less than 992px) */
@media (max-width: 991.98px) {
  h1 {
    font-size: 2.5rem;
  }
  
  h2 {
    font-size: 2rem;
  }
  
  h3 {
    font-size: 1.75rem;
  }
  
  .hero-content h1 {
    font-size: 3rem;
  }
  
  .hero-content p {
    font-size: 1.1rem;
  }
  
  .section-padding {
    padding: 70px 0;
  }
  
  .about-img {
    margin-bottom: 30px;
  }
  
  .service-img {
    height: 220px;
  }
  
  .contact-info {
    margin-top: 40px;
  }
  
  .team-card {
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
  }
  
  /* Respect prefers-reduced-motion */
  @media (prefers-reduced-motion: reduce) {
    .service-card:hover {
      transform: none;
    }
    
    .price-card:hover {
      transform: none;
    }
    
    .team-card:hover {
      transform: none;
    }
    
    .team-card:hover .team-img img,
    .service-card:hover .service-img img,
    .about-img:hover img {
      transform: none;
    }
    
    .btn-primary:hover {
      transform: none;
    }
    
    .coreinfo-item:hover::after {
      transform: none;
    }
  }
}

/* Small Devices (Landscape Phones, less than 768px) */
@media (max-width: 767.98px) {
  h1 {
    font-size: 2.25rem;
  }
  
  h2 {
    font-size: 1.8rem;
  }
  
  h3 {
    font-size: 1.5rem;
  }
  
  .hero-content h1 {
    font-size: 2.5rem;
  }
  
  .hero-content p {
    font-size: 1rem;
  }
  
  .section-padding {
    padding: 60px 0;
  }
  
  .section-title {
    margin-bottom: 2rem;
  }
  
  .service-card,
  .feature-card,
  .price-card,
  .coreinfo-item {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
  
  /* Disable animations and transforms on mobile */
  .service-card:hover,
  .price-card:hover,
  .team-card:hover {
    transform: none;
  }
  
  .service-img {
    height: 200px;
  }
  
  /* Adjust hero section for mobile */
  .hero-section,
  .hero-slider .swiper-slide {
    height: 80vh;
  }
  
  /* Full width container for better mobile experience */
  .container {
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
  
  /* Fix Swiper autoplay */
  .swiper-container {
    --swiper-theme-color: var(--primary-3);
  }
  
  .swiper-container.swiper-no-autoplay-mobile {
    --swiper-autoplay: false;
  }
}

/* Extra Small Devices (Portrait Phones, less than 576px) */
@media (max-width: 575.98px) {
  h1 {
    font-size: 2rem;
  }
  
  h2 {
    font-size: 1.6rem;
  }
  
  h3 {
    font-size: 1.4rem;
  }
  
  h4 {
    font-size: 1.2rem;
  }
  
  .hero-content h1 {
    font-size: 2rem;
  }
  
  .section-padding {
    padding: 50px 0;
  }
  
  .contact-form,
  .contact-info {
    padding: 25px;
  }
  
  .service-img {
    height: 180px;
  }
  
  .price-header {
    padding: 20px;
  }
  
  .price-content {
    padding: 20px;
  }
  
  .review-card {
    margin: 10px 0;
  }
  
  /* Adjust hero for smaller screens */
  .hero-section,
  .hero-slider .swiper-slide {
    height: 70vh;
    min-height: 500px;
  }
  
  /* Optimize footer for mobile */
  .footer {
    padding: 60px 0 0;
  }
  
  .footer-widget {
    margin-bottom: 30px;
  }
  
  .footer-bottom {
    margin-top: 30px;
  }
  
  /* Make buttons more tappable */
  .btn {
    padding: 0.75rem 1.25rem;
  }
}

/* Specific adjustments for very small devices (iPhone SE, etc.) */
@media (max-width: 374.98px) {
  .hero-content h1 {
    font-size: 1.8rem;
  }
  
  .service-img {
    height: 160px;
  }
  
  .hero-section,
  .hero-slider .swiper-slide {
    min-height: 450px;
  }
}

/* Specific adjustments for large screens */
@media (min-width: 1400px) {
  .container {
    max-width: 1320px;
  }
  
  .hero-content h1 {
    font-size: 4.5rem;
  }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
  :root {
    --text-dark: #f0f0f0;
    --text-light: #f0f0f0;
    --text-muted: #a0a0a0;
    --background: #1a1a1a;
    --border-color: rgba(255, 255, 255, 0.1);
    --overlay-dark: rgba(0, 0, 0, 0.7);
    --overlay-light: rgba(40, 40, 40, 0.85);
  }
  
  .service-card,
  .feature-card,
  .price-card,
  .team-card,
  .review-card,
  .coreinfo-item,
  .contact-form {
    background: #252525;
  }
  
  .price-header {
    background: #333;
  }
  
  .header {
    background: #1a1a1a;
  }
  
  .footer {
    background-color: #111;
  }
  
  .contact-info-icon {
    background: #333;
  }
}

/* Respect reduced motion */
@media (prefers-reduced-motion) {
  * {
    transition: none !important;
    animation: none !important;
  }
  
  .hero-slider .swiper-slide,
  .reviews-slider .swiper-slide {
    transition: opacity 0.1s linear !important;
  }
} 