@media (max-width: 1100px) {
  .srv-grid { grid-template-columns: repeat(2, 1fr); }
  .hero-inner { grid-template-columns: 1fr; }
  .srv-header {
    grid-template-columns: 1fr;
    gap: 1.5rem;
    align-items: flex-start;
  }
  .hero-card { display: none; }
  .filter-bar {
    padding: 1rem;
    gap: 0.75rem;
    margin-bottom: 2.5rem;
  }

  .filter-select, .btn-clear-filters {
    height: 48px;
    min-width: 140px;
    flex: 1 1 calc(50% - 0.75rem); /* Deux par ligne sur tablette */
  }

  .btn-clear-filters {
    flex: 1 1 100%;
  }

  .foot-grid { grid-template-columns: 1fr 1fr; }
  .stats-bar { grid-template-columns: 1fr 1fr; gap: 2rem; }
}

@media (max-width: 900px) {
  .about-grid { grid-template-columns: 1fr; gap: 4rem; }
  .contact { grid-template-columns: 1fr; gap: 3.5rem; }
  .proj-grid, .proj-ongoing-grid, .pres-grid { grid-template-columns: 1fr; }
  .proj-grid, .proj-ongoing-grid, .pres-grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .nav-links { display: none; }
  .logo { align-items: center; }
  .hamburger { display: flex; }

  /* Ajustement de la taille du logo sur mobile */
  .logo-img {
    height: 60px;
  }
  nav.scrolled .logo-img {
    height: 50px;
  }
}

@media (max-width: 640px) {
  .srv-grid { grid-template-columns: repeat(1, 1fr); }
  .hero h1 { font-size: 2.6rem; }
  section { padding: 3.5rem 6%; }
  .form-wrap { padding: 2rem; }
}

/* Mobile Menu Styles */
.mob { position: fixed; inset: 0; background: var(--deep-green); z-index: 998; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1.75rem; opacity: 0; pointer-events: none; transition: opacity 0.35s; }
.mob.open { opacity: 1; pointer-events: all; }
.mob a { font-family: var(--font-disp); font-size: 2.8rem; font-weight: 700; color: var(--white); text-decoration: none; }
.mob-x { position: absolute; top: 1.5rem; right: 6%; background: none; border: none; color: var(--gold); font-size: 1.5rem; cursor: pointer; }

.hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
}
.hamburger span { width: 25px; height: 2px; background: var(--white); }