/* Desktop-down (<=1200px / 75em) */
@media (max-width: 75em) {
  .menu-items li {
    font-size: 0.8rem;
  }
  .membre-plan {
    grid-template-columns: repeat(2, 1fr);
  }
  .past-webinaires-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-4);
  }
  .past-title {
    font-size: 1.05rem;
  }
  .tooltiptext {
    left: 0;
    top: calc(100% + 10px);
    transform: none;
    width: min(90vw, 360px);
  }
}

/* Tablet (<=944px / 59em) */
@media (max-width: 59em) {
  .menu-items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  .home p {
    font-size: 2rem;
  }
  .notremission-text,
  .notremission ul li {
    font-size: 1rem;
  }
  .notreconseil,
  .audio,
  .avantages-list,
  .membre-plan,
  .formations-grid,
  .formation-card {
    grid-template-columns: 1fr;
  }
  .ca-box img {
    height: 360px;
  }
  .audio-header {
    height: 100px;
  }
  .audio-header .audio-icon {
    width: 50px;
    height: 50px;
    font-size: 1.4rem;
  }
  .audio figcaption {
    font-size: 1.1rem;
  }
  .avantages-list li {
    font-size: 1.1rem;
  }
  .plan-price {
    font-size: 1.6rem;
  }
  .plan-name {
    font-size: 1.2rem;
  }
  .plan-person {
    font-size: 1rem;
  }
  .formation-card {
    row-gap: var(--space-3);
    text-align: center;
  }
  .formation-icon {
    margin: 0 auto;
  }
  .past-webinaires-grid {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }

  /* Carte : évite le stacking agressif au hover sur mobile */
  .past-webinaire-card:hover {
    transform: none; /* tu peux le laisser si tu préfères l'effet, mais sur mobile ça bouge */
    box-shadow: var(--shadow-lg);
  }
  .tooltiptext {
    left: 10px;
    top: calc(100% + 10px);
    transform: none;
    width: min(90vw, 360px);
  }

  /* Navigation hamburgers (menu mobile) */
  .navbar-container {
    display: block;
    position: relative;
    height: 90px;
  }
  .navbar-container input[type="checkbox"] {
    position: absolute;
    display: block;
    height: 32px;
    width: 30px;
    top: 20px;
    left: 20px;
    z-index: 5;
    opacity: 0;
  }
  .navbar-container .hamburger-lines {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 23px;
    width: 35px;
    position: absolute;
    top: 17px;
    left: 20px;
    z-index: 2;
  }
  .navbar-container .hamburger-lines .line {
    display: block;
    height: 4px;
    width: 100%;
    border-radius: 10px;
    background: #333;
  }
  .navbar-container .hamburger-lines .line1 {
    transform-origin: 0% 0%;
    transition: transform 0.4s ease-in-out;
  }
  .navbar-container .hamburger-lines .line2 {
    transition: transform 0.2s ease-in-out;
  }
  .navbar-container .hamburger-lines .line3 {
    transform-origin: 0% 100%;
    transition: transform 0.4s ease-in-out;
  }

  .navbar .menu-items {
    padding-top: 100px;
    background: var(--white);
    height: 100vh;
    max-width: 300px;
    transform: translate(-150%);
    display: flex;
    flex-direction: column;
    margin-left: -40px;
    padding-left: 50px;
    transition: transform 0.5s ease-in-out;
    box-shadow: 5px 0 10px 0 #aaa;
  }
  .navbar .menu-items li {
    margin-bottom: 1rem;
    font-size: 0.8rem;
    font-weight: 500;
  }

  .navbar-container input[type="checkbox"]:checked ~ .menu-items {
    transform: translateX(0);
  }
  .navbar-container input[type="checkbox"]:checked ~ .hamburger-lines .line1 {
    transform: rotate(35deg);
  }
  .navbar-container input[type="checkbox"]:checked ~ .hamburger-lines .line2 {
    transform: scaleY(0);
  }
  .navbar-container input[type="checkbox"]:checked ~ .hamburger-lines .line3 {
    transform: rotate(-35deg);
  }

  .logo {
    position: absolute;
    top: 5px;
    right: 5px;
    padding: 0;
    margin: 0;
  }
}

/* Small tablet / large phone (<=704px / 44em) */
@media (max-width: 44em) {
  .home {
    background-size: contain;
  }
  .home p {
    font-size: 2rem;
  }
  .notremission ul {
    grid-template-columns: 1fr;
  }
  .audio-header {
    height: 80px;
  }
  .audio-header .audio-icon {
    width: 45px;
    height: 45px;
    font-size: 1.2rem;
  }
  .audio figcaption {
    font-size: 1rem;
  }
  .past-title {
    font-size: 1rem;
    line-height: 1.45;
  }
  .past-date {
    font-size: 0.95rem;
  }
  .past-webinaires-grid {
    gap: var(--space-3);
  }
  .past-webinaire-card {
    padding: var(--space-3);
  }
  .login-section {
    margin: var(--space-5) auto;
  }
  .login-form {
    padding: var(--space-5) var(--space-4);
  }
}

/* Phone (<=544px / 34em) */
@media (max-width: 34em) {
  .home {
    height: 60vh;
  }
  .home p {
    font-size: 1.5rem;
  }
  .footer {
    flex-direction: column;
    gap: 1rem;
    height: 280px;
  }
  .footer img {
    height: 15px;
  }
  .ca-box {
    padding: 3.4rem;
  }
  .ca-box img {
    height: 320px;
  }
  .audio figure {
    padding: 0.8rem 0;
  }
  .audio audio {
    width: 95%;
  }
  .avantages-list li {
    padding: 1rem 1.1rem;
  }
  .avantages-list li i {
    top: 1rem;
  }
  .past-title {
    font-size: 0.98rem;
  }
  .tooltip .tooltiptext {
    max-width: 94vw;
    left: 10px;
    padding: var(--space-2);
    font-size: 0.95rem;
  }
  .login-form {
    padding: var(--space-4) var(--space-3);
  }
}
