/* ========== GÉNÉRAL ========== */
* {
  color: black !important;
  background: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

body {
  font-family: 'Times New Roman', serif;
  font-size: 12pt;
  line-height: 1.4;
  margin: 2cm;
}

/* ========== MASQUER ÉLÉMENTS NON IMPRIMABLES ========== */
nav,
footer,
.cta,
.material-symbols-outlined,
.services i,
.social {
  display: none !important;
}

/* ========== HEADER ========== */
header {
  text-align: center;
  margin-bottom: 2rem;
}

header figure img {
  width: 150px;
  height: auto;
}

/* ========== TITRE ACCROCHE ========== */
#title {
  font-size: 18pt;
  font-weight: bold;
  margin: 1.5rem 0;
  color: black;
}

/* ========== SECTION SERVICES ========== */
.services {
  margin-bottom: 2rem;
}

.services article {
  margin-bottom: 1.5rem;
}

.services h2 {
  font-size: 14pt;
  margin-bottom: 0.3rem;
  color: black;
}

.services p {
  font-size: 12pt;
}

/* ========== GALERIE ========== */
.galerie {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 2rem;
}

.galerie img {
  width: 100%;
  max-width: 250px;
  height: auto;
  border-radius: 4px;
}

/* ========== CONTENU 2 (image + texte) ========== */
.contenu2 {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 2rem;
  align-items: flex-start;
}

.contenu2 img {
  width: 100%;
  max-width: 300px;
  height: auto;
  border-radius: 4px;
}

.contenu2 .texte {
  max-width: 400px;
}

.contenu2 .texte h2 {
  font-size: 14pt;
  margin-bottom: 0.5rem;
}

.contenu2 .texte p {
  font-size: 12pt;
}

/* ========== EN-TÊTE DE PAGE (impression) ========== */
@page {
  margin: 2cm;
}
