/**
 * Chez Charles — ambiances saisonnières.
 *
 * Les couleurs de la saison arrivent en variables, injectées par inc/saisons.php :
 *   --saison-accent   accent secondaire de la saison
 *   --beige           fond clair des sections
 *   --beige-fonce     variante soutenue
 * L'or (--or) et le noir restent la charte : la saison ne fait que l'accompagner.
 * Aucune règle ici ne modifie une dimension ni une position, pour que changer
 * d'ambiance ne déplace jamais la mise en page.
 */

:root {
  /* Repli si la feuille est servie sans les variables de saison. */
  --saison-accent: var(--or, #CFA670);
}

/* ---------------------------------------------------------------
   Couche d'animation
   --------------------------------------------------------------- */

.cc-saison-canvas {
  position: fixed;
  inset: 0;
  z-index: 1010;          /* au-dessus du contenu, sous la nav de la carte (1020)
                             et sous l'en-tête (1030) */
  pointer-events: none;   /* ne vole jamais un clic */
}

/* Rien ne bouge si le visiteur demande moins d'animations. Le script retire
   déjà le canvas ; cette règle couvre le cas où il n'aurait pas encore tourné. */
@media (prefers-reduced-motion: reduce) {
  .cc-saison-canvas { display: none !important; }
}

/* L'impression n'a que faire des feuilles qui tombent. */
@media print {
  .cc-saison-canvas { display: none !important; }
}

/* ---------------------------------------------------------------
   Accents de saison
   L'ambiance neutre ne reçoit aucune de ces règles : elle reste la charte nue.
   --------------------------------------------------------------- */

/* Sélection de texte : le premier endroit où la saison se remarque. */
body[class*="saison-"]:not(.saison-neutre) ::selection {
  background: color-mix(in srgb, var(--saison-accent) 35%, transparent);
  color: var(--noir, #000);
}

/* Voile coloré au-dessus du hero. On passe par ::after, qui porte déjà le
   voile sombre : ::before porte la photo, on n'y touche pas. */
body[class*="saison-"]:not(.saison-neutre) .hero::after,
body[class*="saison-"]:not(.saison-neutre) .carte-hero__bg {
  background-image:
    radial-gradient(ellipse at 50% 0%,
      color-mix(in srgb, var(--saison-accent) 26%, transparent) 0%,
      transparent 60%);
}

/* Le filet décoratif de la page carte : or, puis teinte de la saison. */
body[class*="saison-"]:not(.saison-neutre) .carte-hero__rule {
  background-image: linear-gradient(90deg,
    transparent,
    var(--or, #CFA670) 35%,
    var(--saison-accent) 65%,
    transparent);
}

/* Ornement de section et sur-titres manuscrits : dégradé or vers saison. */
body[class*="saison-"]:not(.saison-neutre) .carte-ornament {
  color: var(--saison-accent);
}

/* Le cœur décoratif de la page d'accueil prend la lueur de la saison. */
body[class*="saison-"]:not(.saison-neutre) .histoire-coeur {
  filter: drop-shadow(0 0 12px
    color-mix(in srgb, var(--saison-accent) 50%, transparent));
}

/* Survol des liens du pied de page. */
body[class*="saison-"]:not(.saison-neutre) .site-footer a:hover {
  color: var(--saison-accent);
}

/* Les navigateurs sans color-mix reçoivent un accent franc plutôt que rien. */
@supports not (color: color-mix(in srgb, red 50%, blue)) {
  body[class*="saison-"]:not(.saison-neutre) ::selection {
    background: var(--saison-accent);
    color: var(--blanc, #fff);
  }
  body[class*="saison-"]:not(.saison-neutre) .hero::after,
  body[class*="saison-"]:not(.saison-neutre) .carte-hero__bg {
    background-image: none;
  }
  body[class*="saison-"]:not(.saison-neutre) .histoire-coeur { filter: none; }
}

/* ---------------------------------------------------------------
   Touches propres à chaque saison
   Réglages volontairement bas : les photos doivent rester crédibles.
   --------------------------------------------------------------- */

/* Hiver : les bandeaux perdent un soupçon de chaleur. */
.saison-hiver .parallax-band { filter: saturate(0.88) brightness(1.03); }

/* Automne : l'inverse, ils se réchauffent. */
.saison-automne .parallax-band { filter: saturate(1.08) sepia(0.06); }

/* Été : lumière un peu plus franche. */
.saison-ete .parallax-band { filter: saturate(1.06) brightness(1.04); }

/* Printemps : rien sur les photos, la couleur vient des pétales. */
