/* ==========================================================================
   Print stylesheet — Parallaxe
   Objectifs: fond blanc, texte lisible, zéro déco superflue, pas de gaspillage
   ========================================================================== */

@page {
  size: A4;
  margin: 12mm 12mm 15mm;
}

/* Base */
*,
*::before,
*::after { box-sizing: border-box !important; }
html, body { background: #fff !important; color: #000 !important; }
body {
  font: 12pt/1.4 "Nunito Sans", Arial, sans-serif;
  -webkit-print-color-adjust: economy;
  print-color-adjust: economy;
}

/* Masquer tout ce qui n’a pas d’intérêt à l’impression */
.no-print,
#wpadminbar,
#site-header,
#mobile-menu,
footer,
nav,
button,
[class*="button_"],
[class*="btn"],
[class*="swiper"],
[class*="splide"],
[class*="carousel"],
[class*="slider"] { display: none !important; }

/* Conteneur de page courant dans le site */
.sides-page-margin { width: 100% !important; margin: 0 !important; padding: 0 !important; }

/* Titres / Texte */
.h1, h1 { font-family: "Akatab", Arial, sans-serif; font-weight: 800; font-size: 22pt; margin: 0 0 10pt; }
.h2, h2 { font-family: "Akatab", Arial, sans-serif; font-weight: 800; font-size: 16pt; margin: 16pt 0 8pt; }
.h3, h3 { font-family: "Akatab", Arial, sans-serif; font-weight: 800; font-size: 13pt; margin: 14pt 0 6pt; }
.h4, h4 { font-weight: 700; font-size: 12pt; margin: 12pt 0 6pt; }
.paragraph-large, .paragraph-medium, .paragraph-small, p, li { font-size: 11pt; color: #000 !important; }

/* Liens : soulignés + URL visible pour liens externes uniquement */
a { color: #000 !important; text-decoration: underline !important; }
a[href^="http"]:after {
  content: " (" attr(href) ")";
  font-size: 9pt;
  word-break: break-all;
}

/* Images / médias */
img, svg, video, figure { max-width: 100% !important; height: auto !important; }
img[loading], img[decoding] { /* neutralise les attributs hint d’affichage */ }
figure { margin: 10pt 0; }
figcaption { font-size: 9pt; color: #333; }

/* Cartes & blocks décoratifs : fond blanc, pas d’ombre/bord lourd */
.card_primary,
[class*="card"],
[class*="shadow"],
[class*="bg-"],
[class*="border-"] {
  background: #fff !important;
  box-shadow: none !important;
  border: 1px solid #e5e5e5 !important;
}

/* Grilles -> flow vertical */
[class*="grid"],
[class*="flex"] { display: block !important; }
[class*="col-span-"],
[class*="w-["],
[class*="h-["] { width: auto !important; height: auto !important; }

/* Tableaux (ex. calculateur) */
table { width: 100% !important; border-collapse: collapse !important; }
th, td { border: 1px solid #ddd !important; padding: 6pt !important; text-align: left; }
thead { display: table-header-group; } /* répète l’en-tête sur chaque page */
tfoot { display: table-row-group; }

/* Éléments interactifs ou animés */
[data-animate],
[data-animate-from-left],
[data-animate-from-right],
[data-animate-header-badge] { opacity: 1 !important; transform: none !important; }

/* Sauts de page utiles */
.break-before { page-break-before: always !important; }
.break-after  { page-break-after:  always !important; }

/* Marges internes globales des sections */
section { margin: 10pt 0; }

/* Prose ACF/WYSIWYG */
.prose * { color: #000 !important; }
.prose a { text-decoration: underline !important; }

/* Badges/labels */
[class*="badge"],
[class*="rounded-"],
[class*="uppercase"] { color: #000 !important; background: transparent !important; }

/* Listes */
ul, ol { margin: 0 0 10pt 18pt; }
