/* ===== PREFERS-REDUCED-MOTION: REDUCE ===== */
@media (prefers-reduced-motion: reduce){
  * { transition: none !important; }
}

/* ===== MAX-WIDTH: 480PX ===== */
@media (max-width: 480px) {
  .section { padding: 2.5rem 1rem; }
  .section h2 { font-size: 1.65rem; }
  .tuto-video { border-width: 2px; margin: 1.5rem 0; }
  .about-buttons .btn { min-width: 240px; padding: 0.9rem 1.6rem; font-size: 1.1rem; }
}

/* ===== MAX-WIDTH: 540PX ===== */
@media (max-width: 540px) {
  .contact-page,
  .confirmation-message {
    margin: 2rem 1rem;
    padding: 1.5rem;
  }

  .contact-page h1,
  .confirmation-message h1 { font-size: 1.6rem; }

  .confirmation-message p { font-size: 1rem; }

  .radio-group { grid-template-columns: 1fr; row-gap: 0.6rem; }
  .radio-group label:last-child { justify-self: start; }
  .form-row { grid-template-columns: 1fr; }

  .legal-wrap { margin: 2rem 1rem; padding: 1.5rem; }
  .legal-wrap h1 { font-size: 1.6rem; }
  .legal-wrap h2 { font-size: 1.1rem; }
}

/* ===== MAX-WIDTH: 576PX ===== */
@media (max-width: 576px) {
  .cert-logo { max-width: 100px; margin-bottom: 15px; }
}

/* ===== MAX-WIDTH: 600PX ===== */
@media (max-width: 600px) {
  .details-table { display: block; overflow-x: auto; white-space: nowrap; }
  .card .details.fullwidth.open { max-height: 350px; }
}

/* ===== MAX-WIDTH: 640PX ===== */
@media (max-width: 640px) {
  .container { padding: .75rem; }
  .table td.cell-body { max-width: 100%; }
  .admin-toolbar { gap: .4rem; }
}

/* ===== MAX-WIDTH: 768PX ===== */
@media (max-width: 768px) {
  .arrow-container { flex-direction: column; align-items: center; gap: 3rem; }
  .target { width: 200px; height: 200px; }
  .logo-tech { height: 60px; margin: 0 10px; }

  .section { padding: 2.5rem 1rem; }
  .section h2 { font-size: 2rem; }
  .intro { font-size: 1.2rem; }
  .text, .liste-ia li { font-size: 1rem; }
  .slider { padding: 1.5rem; }
  .datatable-split th, .datatable-split td { font-size: 14px; }
  .section { padding: 2.5rem 1rem; }
  .section h2 { font-size: 2rem; }
  .section h3 { font-size: 1.35rem; }
  .intro { font-size: 1.2rem; }
}


/* ===== MAX-WIDTH: 992PX ===== */
@media (max-width: 992px) {
  .gallery {grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));}
  .gallery--etudiant {grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));}
}


/* ===== MIN-WIDTH: 720PX ===== */
@media (min-width: 720px){
  .footer__container{
    grid-template-columns: minmax(260px, 1fr) auto;
    column-gap: clamp(1rem, 4vw, 3rem);
    align-items: start;
  }
  .footer__brand{ padding-right: clamp(.25rem, 1.5vw, 1rem); }
  .footer__nav ul{ justify-content: flex-end; gap: .6rem .8rem; }
  .footer__bottom{ flex-direction: row; justify-content: space-between; align-items: center; }
}

/* ===== MIN-WIDTH: 768PX ===== */
@media (min-width: 768px) {
  section.decouvrir, section.valeurs { padding: 150px 0; }
  section.experience, section.formation { padding: 150px 0; }
}

/* ===== MIN-WIDTH: 992PX ===== */
@media (min-width: 992px) {
  .about-header {
    height: 100vh;
    min-height: 650px;
    padding-top: 0;
    padding-bottom: 0;
  }
  section .col-lg-8 { max-width: 66.6667%; }
}

/* ===== MIN-WIDTH: 1024PX ===== */
@media (min-width: 1024px){
  .footer__nav ul{ gap: .6rem 1rem; }
}

