/* Navigation partagée, chargée après les styles propres à chaque page. */
.site-nav .logo { color: inherit; text-decoration: none; white-space: nowrap; }
.site-nav .nav-menu { gap: clamp(16px, 2vw, 30px); }
.site-nav .menu-toggle { border: 0; background: transparent; padding: 10px; min-width: 44px; min-height: 44px; }
.site-nav a:focus-visible, .site-nav button:focus-visible, .site-footer a:focus-visible { outline: 3px solid #c9a84c; outline-offset: 4px; }
.site-footer { background: #203e35; color: #fff9ed; text-align: left; padding: 48px 0 24px; }
.site-footer .site-footer__intro > a { color: #fff9ed; font: 700 25px/1.3 Georgia, serif; text-decoration: none; }
.site-footer .site-footer__intro p { color: #fff9ed; margin: 12px 0 30px; line-height: 1.6; text-align: left; }
.site-footer__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.site-footer .site-footer__group h2 { color: #f0d39a; font: 700 16px/1.4 'Montserrat', Arial, sans-serif; margin: 0 0 12px; padding: 0; text-align: left; letter-spacing: 0; text-transform: none; }
.site-footer .site-footer__group h2::after { display: none; }
.site-footer__group ul { list-style: none; padding: 0; margin: 0; }
.site-footer__group li { margin: 0; padding: 0; }
.site-footer .site-footer__group a { display: inline-block; padding: 10px 0; color: #fff9ed; font-size: 14px; line-height: 1.7; text-decoration: none; overflow-wrap: anywhere; }
.site-footer .site-footer__group a:hover { color: #f0d39a; text-decoration: underline; }
.site-footer .site-footer__bottom { max-width: none; margin: 30px 0 0; padding-top: 20px; border-top: 1px solid #ffffff33; color: #fff9ed; font-size: 12px; text-align: left; }
#cours { scroll-margin-top: 150px; }
.course-formats { padding: 36px 0; }
.course-formats__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.course-formats__grid article { padding: 28px; border: 1px solid #e3d9ca; background: #fffdf8; }
.course-formats__grid h3 { margin-top: 0; }
.course-formats__grid p { line-height: 1.7; }
.course-formats__grid a { display: inline-block; padding: 10px 0; color: #674326; text-decoration: underline; }
@media (max-width: 1100px) {
  .site-nav .menu-toggle { display: flex; z-index: 1001; }
  .site-nav .nav-menu { position: absolute; top: 100%; left: 0; width: 100%; height: auto; max-height: calc(100dvh - 130px); overflow-y: auto; padding: 16px 24px 24px; background: #fff; flex-direction: column; align-items: stretch; gap: 0; visibility: hidden; pointer-events: none; box-shadow: 0 12px 20px #00000012; }
  .site-nav .nav-menu.active { visibility: visible; pointer-events: auto; left: 0; }
  .site-nav .nav-menu li { width: 100%; }
  .site-nav .nav-link { display: block; padding: 14px 0; font-size: 14px; color: #3e2c1c; border-bottom: 1px solid #eee; }
  .site-nav .nav-link::after { display: none; }
  .site-nav .nav-cta { margin-top: 12px; padding: 14px 18px; text-align: center; }
}
@media (min-width: 1101px) {
  .site-nav .menu-toggle { display: none; }
  .site-nav .nav-menu { position: static; flex-direction: row; width: auto; height: auto; padding: 0; background: transparent; overflow: visible; }
  .site-nav .nav-menu li { width: auto; }
  .site-nav .nav-link { font-size: 13px; white-space: nowrap; }
  .site-nav .nav-cta { margin-top: 0; }
}
@media (max-width: 850px) { .site-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .course-formats__grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 420px) { .site-footer__grid { grid-template-columns: minmax(0, 1fr); gap: 24px; } }
