/* 
==============================================
RESPONSIVE STYLESHEET - CENTIMANE
==============================================
*/

/* 
==============================================
TABLE OF CONTENTS:
----------------------------------------------
    1. Large Screens (up to 1200px)
    2. Medium Screens (up to 1024px)
    3. Tablets (up to 768px)
    4. Mobile Landscape (up to 576px)
    5. Mobile Portrait (up to 480px)
==============================================
*/

/* 
==============================================
1. Large Screens (up to 1200px)
==============================================
*/
@media (max-width: 1200px) {
    .container {
      max-width: 95%;
    }
    
    .hero-content {
      max-width: 550px;
    }
    
    .hero-title {
      font-size: 2.8rem;
    }
    
    .section-title {
      font-size: 2.3rem;
    }
  }
  
  /* 
  ==============================================
  2. Medium Screens (up to 1024px)
  ==============================================
  */
  @media (max-width: 1024px) {
    section {
      padding: 4rem 1.5rem;
    }
    
    .about-content, 
    .contact-container {
      grid-template-columns: 1fr;
    }
    
    .about-image {
      order: -1;
      margin-bottom: 2rem;
    }
    
    .footer-container {
      grid-template-columns: 1fr 1fr;
      gap: 2rem;
    }
    
    .hero-title {
      font-size: 2.5rem;
      letter-spacing: 5px;
    }
    
    .hero-subtitle {
      font-size: 1.3rem;
    }
    
    .about-text h3,
    .contact-info h3 {
      font-size: 2rem;
    }
  }
  
  /* 
  ==============================================
  3. Tablets (up to 768px)
  ==============================================
  */
  @media (max-width: 768px) {
    section {
      padding: 3.5rem 1.25rem;
    }
    
    .nav-links {
      display: none;
    }
    
    .mobile-menu-btn {
      display: block;
    }
    
    .cta-button {
      padding: 0.7rem 1.5rem;
      font-size: 0.85rem;
    }
    
    .secondary-button {
      padding: 0.7rem 1.5rem;
      font-size: 0.85rem;
      margin-left: 0.5rem;
    }
    
    .hero-content {
      text-align: center;
      margin: 0 auto;
    }
    
    .hero-buttons {
      justify-content: center;
    }
    
    .section-title {
      font-size: 2rem;
    }
    
    .service-card,
    .industry-card,
    .case-card {
      padding: 2rem;
    }
    
    .service-title,
    .industry-title,
    .case-title {
      font-size: 1.3rem;
    }
    
    .contact-form {
      padding: 2rem;
    }
    
    .footer-container {
      grid-template-columns: 1fr;
    }
    
    .case-study-title {
      font-size: 1.7rem;
    }
    
    .case-study-client {
      font-size: 1rem;
    }
    
    .case-study-results {
      grid-template-columns: 1fr;
      gap: 1.5rem;
    }
    
    .metric-value {
      font-size: 2.2rem;
    }
  }
  
  /* 
  ==============================================
  4. Mobile Landscape (up to 576px)
  ==============================================
  */
  @media (max-width: 576px) {
    .logo {
      padding-left: 10px;
      padding-right: 10px;
    }
    
    nav {
      padding: 1rem;
    }
    
    .mobile-menu {
      width: 85%;
    }
    
    .hero-title {
      font-size: 2rem;
      letter-spacing: 3px;
    }
    
    .hero-subtitle {
      font-size: 1.2rem;
      margin-bottom: 2rem;
    }
    
    .hero-buttons {
      flex-direction: column;
      align-items: center;
      gap: 1rem;
    }
    
    .secondary-button {
      margin-left: 0;
    }
    
    .services-grid,
    .industries-grid,
    .case-studies-grid {
      grid-template-columns: 1fr;
    }
    
    .about-text h3,
    .contact-info h3 {
      font-size: 1.8rem;
    }
    
    .case-result {
      flex-direction: column;
      gap: 1rem;
    }
    
    .result-item {
      border-bottom: 1px solid rgba(0,0,0,0.1);
      padding-bottom: 1rem;
      width: 100%;
    }
    
    .result-item:last-child {
      border-bottom: none;
    }
    
    .case-study-title {
      font-size: 1.5rem;
    }
    
    .case-study-description p {
      font-size: 1rem;
    }
    
    .metric-value {
      font-size: 2rem;
    }
    
    .case-study-divider {
      margin: 3rem 0;
    }
  }
  
  /* 
  ==============================================
  5. Mobile Portrait (up to 480px)
  ==============================================
  */
  @media (max-width: 480px) {
    section {
      padding: 3rem 1rem;
    }
    
    .service-card,
    .industry-card,
    .case-card,
    .contact-form {
      padding: 1.5rem;
    }
    
    .hero-title {
      font-size: 1.8rem;
      letter-spacing: 2px;
    }
    
    .hero-subtitle {
      font-size: 1.1rem;
    }
    
    .section-title {
      font-size: 1.8rem;
    }
    
    .about-image::before {
      transform: translate(10px, 10px);
    }
    
    .about-image:hover::before {
      transform: translate(5px, 5px);
    }
    
    .advantage-item {
      flex-direction: column;
    }
    
    .advantage-icon {
      margin-bottom: 0.5rem;
    }
    
    .footer-social {
      flex-wrap: wrap;
    }
    
    .case-study-title {
      font-size: 1.4rem;
    }
    
    .case-study-tech {
      flex-direction: column;
      gap: 0.4rem;
    }
    
    .tech-tag {
      display: inline-block;
      width: fit-content;
    }
    
    .case-study-divider {
      margin: 2.5rem 0;
    }
  }