/* FRUSTLINER — styles maquette (conformes à la charte graphique) */

/* Fraunces Black (900) pour les titres — complète les poids chargés par les pages */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,900&display=swap');

:root {
  --bleu: #1a3d8f;    /* bleu marque / cœur */
  --marine: #14264f;  /* bleu marine / structure + encre */
  --orange: #f26a21;  /* accent / CTA */
  --vert: #8dc63f;     /* soutien / croissance */
  --vert-txt: #5f8a1a; /* vert lisible sur blanc */
  --fond: #f4f6fb;     /* fond clair */
  --gris-txt: #51607f;
  --gris-trait: #d9dee9;
}
html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, sans-serif; }
.font-display { font-family: 'Fraunces', Georgia, serif; }

/* Titres en Fraunces Black, conformément à la charte */
h1.font-display, h2.font-display { font-weight: 900; letter-spacing: -0.5px; }
h3.font-display { font-weight: 700; }

/* Vert lisible sur fond clair (le vert clair ne sert jamais de texte sur blanc) */
.text-greent { color: var(--vert-txt); }

/* Icônes SVG injectées via site.js (remplacent tous les emojis) */
[data-icon] { display: inline-grid; place-items: center; line-height: 0; }
[data-icon] svg { width: 1.4em; height: 1.4em; display: block; }

/* Soulignement animé sur les liens de navigation */
.nav-link { position: relative; }
.nav-link::after {
  content: '';
  position: absolute;
  left: 0; bottom: -4px;
  width: 0; height: 2px;
  background: var(--orange);
  transition: width .25s ease;
}
.nav-link:hover::after,
.nav-link.is-active::after { width: 100%; }

/* Cartes (œuvres / produits) : zoom doux au survol */
.art-card img { transition: transform .5s ease; }
.art-card:hover img { transform: scale(1.05); }

/* Apparition au scroll */
.reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.reveal.in { opacity: 1; transform: none; }
