/* Compléments propres au site du guide (les styles de base, site.css, viennent de l'espace de l'Auto-école). */
.contenu-large { max-width: 92rem; margin: 0 auto; padding: 0 1.25rem; }

/* Bandeau : la marque est un texte, soulignée d'un filet bleu roi (pas de logo). */
.bandeau { border-top: 4px solid var(--accent); }
.bandeau .marque { flex-direction: column; align-items: flex-start; gap: 0; border-left: 4px solid var(--accent); padding-left: .6rem; }
.marque-titre { font-size: 1.05rem; }
.sous-marque { font-weight: 400; color: var(--neutre); font-size: .8rem; }
.menu { display: flex; flex-wrap: wrap; gap: .4rem 1.1rem; align-items: center; padding-top: .5rem; padding-bottom: .6rem; font-size: .9375rem; }
.menu a { color: var(--encre); text-decoration: none; }
.menu a:hover { color: var(--accent); }
.bouton-petit { font-size: .875rem; padding: .3rem .8rem; }

.deux-colonnes { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-top: 2.5rem; }
@media (max-width: 760px) { .deux-colonnes { grid-template-columns: 1fr; } }
.liste-simple { padding-left: 1.2rem; }
.liste-simple li { margin: .3rem 0; }
.discret { color: var(--neutre); font-size: .875rem; }
.tableau { width: 100%; border-collapse: collapse; background: var(--surface); font-size: .9375rem; margin: .5rem 0 1.5rem; }
.tableau th, .tableau td { border-bottom: 1px solid var(--filet); padding: .45rem .6rem; text-align: left; vertical-align: top; }
.tableau th { font-size: .8125rem; text-transform: uppercase; letter-spacing: .03em; color: var(--neutre); }
.message-warning { background: var(--accent-fond); border-left-color: var(--accent); }

/* Accueil public */
.presentation { background: var(--surface); border: 1px solid var(--filet); border-left: 6px solid var(--accent);
  border-radius: 10px; padding: 2rem 2rem 1.75rem; box-shadow: var(--ombre); }
.surtitre { margin: 0 0 .4rem; font-family: ui-monospace, "Courier New", monospace; font-size: .75rem;
  letter-spacing: .08em; text-transform: uppercase; color: var(--accent); }
.devise { margin: 0 0 1rem; font-family: Archivo, "Helvetica Neue", Arial, sans-serif; font-size: 1.15rem; color: var(--accent); font-weight: 600; }
.chapo { margin: 0 0 1.5rem; max-width: 42rem; }
.boutons-accueil { display: flex; flex-wrap: wrap; gap: .75rem; }
.acces dt { font-family: Archivo, "Helvetica Neue", Arial, sans-serif; font-weight: 600; margin-top: .8rem; }
.acces dd { margin: .2rem 0 0; font-size: .9375rem; }
.note-bas { margin-top: 2.5rem; font-size: .875rem; color: var(--neutre); }

/* Bandeau « projet » (conditions générales) */
.bandeau-projet { background: var(--accent-fond); border: 1px solid var(--accent); color: var(--encre);
  border-radius: 6px; padding: .6rem .9rem; margin: 0 0 1.5rem; font-weight: 600; }

/* Carnet de bord */
.carnet-fiche { background: var(--surface); border: 1px solid var(--filet); border-radius: 8px; padding: .7rem 1rem; margin: .7rem 0; }
.carnet-fiche h3 { margin: .1rem 0 .3rem; font-size: 1.05rem; }
.carnet-actions { display: flex; gap: .8rem; margin: 1.5rem 0 .5rem; }

/* Impression : seulement le contenu. Pour l'accès visiteur, l'impression des pages est masquée. */
.impression-refusee { display: none; }
@media print {
  .bandeau, .menu, .pied, .pas-imprime, form, .messages { display: none !important; }
  body { background: #fff; color: #000; font-size: 11pt; }
  main { padding: 0; }
  .carnet-fiche { border: none; border-bottom: 1px solid #999; border-radius: 0; break-inside: avoid; }
  body.sans-impression main { display: none !important; }
  body.sans-impression .impression-refusee { display: block !important; padding: 2cm; font-size: 14pt; }
}
