/* Responsive styles for all devices */

/* Large Devices, Wide Screens */
@media only screen and (max-width: 1200px) {
  .hero-section {
    min-height: 80vh;
  }
}

/* Medium Devices, Desktops */
@media only screen and (max-width: 992px) {
  .section {
    padding: 4rem 0;
  }

  .hero-section {
    min-height: 70vh;
  }

  .hero-section h1 {
    font-size: calc(var(--font-size-xxlarge) * 0.9);
    padding-top: 200px;
}

  .hero-section p {
    font-size: calc(var(--font-size-medium) * 0.9);
  }

  .timeline:before {
    left: 0;
  }

  .timeline-item-content {
    width: 90%;
    margin-left: 30px !important;
  }

  .timeline-dot {
    left: 0;
    transform: none;
  }

  .process-connector {
    display: none;
  }
}

/* Small Devices, Tablets */
@media only screen and (max-width: 768px) {
  .section {
    padding: 3rem 0;
  }

  .section-title {
    font-size: calc(var(--font-size-xlarge) * 0.9);
  }

  .hero-section {
    padding: 2rem 0;
    min-height: auto;
    text-align: center;
  }

  .hero-section h1 {
    font-size: calc(var(--font-size-xxlarge) * 0.8);
    padding-top: 200px;
}

  .hero-image {
    margin-top: 2rem;
  }

  .contact-info {
    padding-left: 0;
    margin-top: 2rem;
  }

  .team-member img {
    width: 150px;
    height: 150px;
  }

  .footer {
    text-align: center;
  }

  .footer-title {
    margin-top: 2rem;
  }

  .gallery {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  }
}

/* Extra Small Devices, Phones */
@media only screen and (max-width: 576px) {
  .section {
    padding: 2.5rem 0;
  }

  .section-title {
    font-size: calc(var(--font-size-xlarge) * 0.8);
  }

  .hero-section h1 {
    font-size: calc(var(--font-size-xxlarge) * 0.7);
    padding-top: 200px;
}

  .hero-section p {
    font-size: var(--font-size-base);
  }

  .gallery {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }

  .timeline-item-content {
    width: 85%;
    margin-left: 25px !important;
  }
}

/* Extra Small Devices, Phones */
@media only screen and (max-width: 480px) {
  .section-title {
    font-size: calc(var(--font-size-large) * 1.2);
  }

  .section-subtitle {
    font-size: var(--font-size-base);
  }

  .hero-section h1 {
    font-size: calc(var(--font-size-xlarge) * 1.1);
    padding-top: 200px;
}

  .team-member img {
    width: 120px;
    height: 120px;
  }
}

/* For users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  .services-item:hover,
  .about-feature:hover,
  .priceplan-item:hover,
  .gallery-item:hover img {
    transform: none !important;
  }
} 