/*
Theme Name: Kélidône
Theme URI: https://lakelidone.com
Author: La Kélidône
Description: Thème sur mesure de la compagnie La Kélidône — théâtre La Chélidoine et festival Altitude 707. Le théâtre qui fleurit à 707 mètres.
Version: 7.3.1
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kelidone
*/

/* ============================================================
   CHARTE KÉLIDÔNE v6.1 — « Le théâtre qui fleurit à 707 mètres »

   Sept encres, comme un programme imprimé :
   · Ivoire céruse  #F3EEE3 — le papier, fond du site
   · Encre          #17130F — l'écrit
   · Jaune chélidoine #E9C51D — l'identité (logo, pied-banderole)
   · Velours grenat #8E2437 — Réserver + catégorie Théâtre
   · Bleu nuit      #23395B — liens + Lecture-spectacle
   · Vert chélidoine #47663F — Exposition
   · Ocre terre     #C07A2B — Stage
   Chaque catégorie porte sa couleur. Chaque section a sa teinte.

   Typographies : Playfair Display (titres) · Manrope (texte).
   Animations : anime.js v4 — sobres et précises : rideau qui se
   lève sur le titre, traits jaunes qui se dessinent, affiches
   révélées au défilement. Sans JS ni motion : tout reste lisible.
   ============================================================ */

:root {
  --k-grain: var(--wp--custom--grain);
  --k-ceruse-fond: #F3EEE3;
  --k-papier: #FBF8F1;
  --k-encre: #17130F;
  --k-jaune: #E9C51D;
  --k-jaune-clair: #F2D64B;
  --k-jaune-encre: #6B5D00;
  --k-grenat: #8E2437;
  --k-nuit: #23395B;
  --k-vert: #47663F;
  --k-ocre: #C07A2B;
  --k-nuit-pale: #EAEEF5;
  --k-vert-pale: #EAF0E7;
  --k-grenat-pale: #F7E9E7;
  --k-granit-pale: #E9E4D9;
  --k-ceruse: #F4EEE1;
  --k-ligne: rgba(23, 19, 15, 0.14);
  --k-ombre-affiche: 0 22px 45px -16px rgba(23, 19, 15, 0.35);
  --k-marge: clamp(1.1rem, 4vw, 2.5rem);
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}

body {
  -webkit-font-smoothing: antialiased;
  background: var(--k-ceruse-fond);
  overflow-x: hidden;
}
/* Pas d'interstice entre en-tête, contenu et pied (blockGap racine WP) */
.wp-site-blocks > header,
.wp-site-blocks > main,
.wp-site-blocks > footer { margin-block-start: 0; }

/* ============================================================
   ÉTATS D'ANIMATION — appliqués seulement si JS présent
   (html.js) ET si l'utilisateur accepte le mouvement.
   ============================================================ */
@media (prefers-reduced-motion: no-preference) {
  html.js .k-anim { opacity: 0; }
  html.js .k-anim.k-anim-fait { opacity: 1; }
}

/* --- Accessibilité --------------------------------------- */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px; width: 1px;
  overflow: hidden; position: absolute !important;
  word-wrap: normal !important;
}
.skip-link:focus {
  clip: auto; clip-path: none;
  left: 1rem; top: 1rem; z-index: 100001;
  height: auto; width: auto;
  background: var(--k-encre);
  color: var(--k-ceruse); padding: 0.6rem 1.2rem;
  font-family: var(--wp--preset--font-family--label);
  text-transform: uppercase; letter-spacing: 0.08em;
  text-decoration: none;
}
a:focus-visible, button:focus-visible,
.wp-block-button__link:focus-visible {
  outline: 2px solid var(--k-nuit);
  outline-offset: 3px;
}

/* --- Grain granit ------------------------------------------ */
.k-grain { position: relative; isolation: isolate; }
.k-grain::after {
  content: "";
  position: absolute; inset: 0;
  background-image: var(--k-grain);
  opacity: 0.10;
  mix-blend-mode: overlay;
  pointer-events: none;
  z-index: 1;
}
.k-grain > * { position: relative; z-index: 2; }

/* --- Sur-titre (eyebrow) : affirmé, comme un petit titre --- */
.k-surtitre {
  font-family: var(--wp--preset--font-family--label);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 1.02rem;
  color: var(--k-grenat);
}

/* --- Titres de section : trait jaune qui se dessine -------- */
.k-titre-section {
  position: relative;
  display: inline-block;
  padding-bottom: 0.6rem;
  font-weight: 600;
}
.k-titre-section::after {
  content: "";
  position: absolute;
  left: 0; bottom: -2px;
  width: min(230px, 92%);
  height: 12px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 16" preserveAspectRatio="none"><path d="M3 10 C 42 4, 84 13, 122 8 S 182 5, 197 9" fill="none" stroke="%23E9C51D" stroke-width="7" stroke-linecap="round"/></svg>') no-repeat left center / 100% 100%;
}
@media (prefers-reduced-motion: no-preference) {
  html.js .k-titre-section::after {
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 1.1s cubic-bezier(0.22, 1.35, 0.36, 1);
  }
  html.js .k-titre-section.k-anim-fait::after { transform: scaleX(1); }
}

/* --- En-tête : céruse pleine, nette ------------------------ */
.k-entete {
  position: sticky;
  top: 0;
  z-index: 100000;
  background: var(--k-ceruse-fond);
  border-bottom: 2px solid var(--k-encre);
}
.k-entete > .k-entete-inner {
  padding-left: var(--k-marge);
  padding-right: var(--k-marge);
}
.k-logo { display: flex; align-items: center; gap: 0.9rem; text-decoration: none; }
.k-logo img { height: 46px; width: auto; display: block; transition: transform 0.3s ease; }
.k-logo:hover img { transform: rotate(-3deg) scale(1.05); }
.k-logo .k-logo-nom {
  font-family: var(--wp--preset--font-family--display);
  font-weight: 600;
  font-size: 1.65rem;
  line-height: 1;
  color: var(--k-encre);
}
.k-entete .k-surtitre { letter-spacing: 0.24em; font-size: 0.62rem; }
.k-entete .wp-block-navigation a {
  text-decoration: none;
  color: var(--k-encre);
  position: relative;
}
.k-entete .wp-block-navigation a:not(.wp-block-button__link)::after {
  content: "";
  position: absolute; left: 0; bottom: -4px;
  width: 100%; height: 2px;
  background: var(--k-jaune);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s ease;
}
.k-entete .wp-block-navigation a:hover::after { transform: scaleX(1); }
.k-entete .wp-block-navigation a:hover { color: var(--k-grenat); }
/* Bouton Réserver dans la nav */
.k-nav-reserver a {
  background: var(--k-grenat);
  color: #FFF7EF !important;
  border-radius: 999px;
  padding: 0.5rem 1.3rem !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.85rem !important;
  transition: background 0.25s ease;
}
.k-nav-reserver a::after { display: none; }
.k-nav-reserver a:hover { background: var(--k-encre); color: var(--k-jaune) !important; }
/* Menu mobile : panneau céruse, entrées géantes */
.wp-block-navigation__responsive-container.is-menu-open {
  background-color: var(--k-ceruse-fond) !important;
  color: var(--k-encre);
}
.wp-block-navigation__responsive-container.is-menu-open a {
  color: var(--k-encre);
  font-family: var(--wp--preset--font-family--display);
  font-size: 2.2rem;
  font-weight: 600;
}
.wp-block-navigation__responsive-container.is-menu-open .k-nav-reserver a {
  font-family: var(--wp--preset--font-family--label);
  font-size: 1.1rem !important;
}
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close { color: currentColor; }

/* --- Héros : plein jour, la fleur s'ouvre ------------------ */
.k-hero {
  position: relative; isolation: isolate; overflow: hidden;
  background:
    radial-gradient(ellipse 75% 80% at 74% -8%, rgba(233, 197, 29, 0.42) 0%, transparent 55%),
    radial-gradient(ellipse 46% 55% at 4% 100%, rgba(142, 36, 55, 0.10) 0%, transparent 62%),
    radial-gradient(ellipse 50% 60% at 30% 110%, rgba(35, 57, 91, 0.08) 0%, transparent 60%),
    linear-gradient(180deg, #F0EADB 0%, var(--k-ceruse-fond) 100%);
  border-bottom: 2px solid var(--k-encre);
}
.k-hero > * { position: relative; z-index: 2; }
/* Halo qui respire, comme une lumière de scène */
@media (prefers-reduced-motion: no-preference) {
  @keyframes k-halo {
    from { opacity: 0.25; transform: scale(1); }
    to   { opacity: 0.7;  transform: scale(1.14); }
  }
  html.js .k-hero::before {
    content: "";
    position: absolute; inset: -15% -8%;
    z-index: 0;
    pointer-events: none;
    background: radial-gradient(ellipse 38% 42% at 72% 12%, rgba(233, 197, 29, 0.38) 0%, transparent 62%);
    animation: k-halo 8s ease-in-out infinite alternate;
  }
}
/* Le dernier mot du titre prend la lumière */
.k-hero .k-mot-accent { color: var(--k-grenat); font-style: italic; }
/* Parallaxe douce de la colonne affiche (pilotée par kelidone.js) */
.k-hero .wp-block-columns > .wp-block-column:last-child { will-change: transform; }
.k-hero .wp-block-post-title {
  font-size: clamp(3rem, 8vw, 6rem);
  line-height: 1.03;
  text-wrap: balance;
  color: var(--k-encre);
  font-weight: 600;
}
.k-hero .wp-block-post-title a { text-decoration: none; color: inherit; }
.k-hero .wp-block-post-title a:hover { color: var(--k-grenat); }
.k-hero .wp-block-post-date { color: var(--k-jaune-encre); }
.k-hero .wp-block-post-featured-image img {
  box-shadow: var(--k-ombre-affiche);
  border: 1px solid var(--k-ligne);
  border-radius: 10px;
}
.k-hero .wp-block-post-featured-image {
  transform: rotate(1.6deg);
  transition: transform 0.4s ease;
}
.k-hero .wp-block-post-featured-image:hover { transform: rotate(0deg) scale(1.015); }
.k-hero .wp-block-column:has(> .wp-block-post-featured-image:empty) { display: none; }
/* Titre du héros : masqué avant son entrée (un seul bloc, net) */
@media (prefers-reduced-motion: no-preference) {
  html.js .k-hero .wp-block-post-title { opacity: 0; }
}

/* Ciel du héros : trois hirondelles d'encre, fines et lointaines.
   Sans JS ou avec « réduire les animations » : posées, immobiles.
   Avec JS : kelidone.js les fait planer le long des chemins. */
.k-hirondelles {
  position: absolute; inset: 0;
  max-width: none; /* échappe à la colonne « constrained » du groupe héros */
  margin: 0;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
}
.k-vol-svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.k-hir { fill: var(--k-encre); }
.k-hir:nth-of-type(1) { opacity: 0.3;  transform: translate(600px, 45px) rotate(-8deg) scale(0.15); }
.k-hir:nth-of-type(2) { opacity: 0.25; transform: translate(950px, 130px) rotate(5deg) scale(-0.12, 0.12); }
.k-hir:nth-of-type(3) { opacity: 0.21; transform: translate(1180px, 30px) rotate(-14deg) scale(0.1); }
.k-hir:nth-of-type(4) { opacity: 0.18; transform: translate(780px, 180px) rotate(10deg) scale(0.085); }
.k-hir:nth-of-type(5) { opacity: 0.15; transform: translate(1310px, 150px) rotate(-5deg) scale(0.07); }

/* Calque fixe des hirondelles au défilement (créé par JS) ---- */
.k-ciel-scroll {
  position: fixed; inset: 0;
  pointer-events: none;
  z-index: 60;
  overflow: hidden;
}
.k-ciel-scroll svg {
  position: absolute; top: 0; left: 0;
  height: auto;
  will-change: transform, opacity;
}
@media (prefers-reduced-motion: reduce) { .k-ciel-scroll { display: none; } }

/* --- Sections teintées : les pages du programme ------------ */
.k-panneau-nuit { background: var(--k-nuit-pale); }
.k-panneau-vert { background: var(--k-vert-pale); }
.k-panneau-grenat { background: var(--k-grenat-pale); }
.k-panneau-granit { background: linear-gradient(165deg, #EBE6DB 0%, var(--k-granit-pale) 100%); }

/* --- Boutons : pilules grenat qui respirent ---------------- */
.wp-block-button__link, .wp-element-button {
  box-shadow: 0 12px 26px -14px rgba(142, 36, 55, 0.65);
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}
.wp-block-button__link:hover, .wp-element-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 32px -14px rgba(23, 19, 15, 0.5);
}

/* --- Cartes affiches --------------------------------------- */
.k-carte { transition: transform 0.3s ease; }
.k-carte .wp-block-post-featured-image, .k-carte .wp-block-image {
  overflow: hidden;
  border-radius: 10px;
  box-shadow: var(--k-ombre-affiche);
  border: 1px solid var(--k-ligne);
  background: #fff;
  transition: box-shadow 0.35s ease, border-color 0.35s ease;
}
.k-carte .wp-block-post-featured-image img, .k-carte .wp-block-image img { border-radius: 10px; }
/* Les k-surtitre utilisés comme méta de cartes restent discrets */
.k-carte .k-surtitre { font-size: 0.82rem; letter-spacing: 0.14em; color: var(--k-jaune-encre); }
.k-carte .wp-block-post-featured-image img { transition: transform 0.45s ease; display: block; }
.wp-block-post-template > li:nth-child(3n+1) .k-carte { transform: rotate(-0.7deg); }
.wp-block-post-template > li:nth-child(3n+2) .k-carte { transform: rotate(0.5deg); }
.wp-block-post-template > li:nth-child(3n) .k-carte { transform: rotate(-0.3deg); }
.k-carte:hover { transform: rotate(0deg) translateY(-8px) !important; }
.k-carte:hover .wp-block-post-featured-image {
  box-shadow: 0 30px 60px -18px rgba(23, 19, 15, 0.45), 0 10px 44px -8px rgba(233, 197, 29, 0.55);
  border-color: var(--k-jaune);
}
.k-carte:hover .wp-block-post-featured-image img { transform: scale(1.04); }
.k-carte .wp-block-post-title {
  font-size: 1.6rem;
  line-height: 1.1;
  font-weight: 600;
}
.k-carte .wp-block-post-title a { text-decoration: none; color: var(--k-encre); }
.k-carte .wp-block-post-title a:hover { color: var(--k-grenat); }
.k-carte .wp-block-post-featured-image:empty { display: none; }

/* Pastilles : chaque catégorie porte sa couleur ------------- */
.k-carte .wp-block-post-terms a, .k-pastilles a {
  display: inline-block;
  border-radius: 999px;
  padding: 0.22rem 0.85rem 0.26rem;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-decoration: none;
  color: #FFF7EF;
  background: var(--k-jaune-encre);
  transition: filter 0.2s ease, transform 0.2s ease;
}
.k-carte .wp-block-post-terms a:hover, .k-pastilles a:hover { filter: brightness(1.25); color: #fff; }
.k-carte .wp-block-post-terms .wp-block-post-terms__separator { display: none; }
.k-carte .wp-block-post-terms a:not(:first-child) { margin-inline-start: 0.35rem; }
.k-carte a[href*="/category/theatre"], .k-pastilles a[href*="/category/theatre"] { background: var(--k-grenat); }
.k-carte a[href*="/category/lecture-spectacle"], .k-pastilles a[href*="/category/lecture-spectacle"] { background: var(--k-nuit); }
.k-carte a[href*="/category/exposition"], .k-pastilles a[href*="/category/exposition"] { background: var(--k-vert); }
.k-carte a[href*="/category/stage"], .k-pastilles a[href*="/category/stage"] { background: var(--k-ocre); }
.k-carte a[href*="/category/programmation"], .k-pastilles a[href*="/category/programmation"] { background: var(--k-encre); color: var(--k-jaune); }
.k-carte a[href*="/category/musique"], .k-pastilles a[href*="/category/musique"] { background: #5B3A64; }
.k-carte a[href*="/category/humour"], .k-pastilles a[href*="/category/humour"] { background: var(--k-jaune); color: var(--k-encre); }
.k-carte a[href*="/category/divers"], .k-pastilles a[href*="/category/divers"] { background: var(--wp--preset--color--stone, #6E6459); }
.k-carte a[href*="/category/lettre-info"], .k-pastilles a[href*="/category/lettre-info"] { background: var(--k-jaune-encre); }

/* --- Médaillon granit (Altitude 707) ----------------------- */
.k-medaillon {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 150px; height: 150px;
  border-radius: 50%;
  background:
    var(--k-grain),
    radial-gradient(circle at 32% 28%, #efece4 0%, #b9b2a6 45%, #6f685e 100%);
  background-blend-mode: overlay, normal;
  color: #191511;
  font-family: var(--wp--preset--font-family--label);
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.06;
  text-align: center;
  box-shadow: inset 0 0 0 3px rgba(23, 19, 15, 0.9), var(--k-ombre-affiche);
}
.k-medaillon .k-medaillon-haut { font-size: 1.7rem; letter-spacing: 0.03em; }
.k-medaillon .k-medaillon-bas { font-size: 0.8rem; letter-spacing: 0.16em; opacity: 0.75; }

/* --- Bande festival : granit clair (identité A707) --------- */
.k-festival {
  position: relative; isolation: isolate; overflow: hidden;
  background: linear-gradient(165deg, #EBE6DB 0%, #DFD9CC 100%);
  border-top: 2px solid var(--k-encre);
  border-bottom: 2px solid var(--k-encre);
}
.k-festival > * { position: relative; z-index: 2; }
.k-festival-titre {
  font-size: clamp(3.4rem, 9vw, 7rem) !important;
  line-height: 0.98 !important;
  color: var(--k-encre) !important;
  font-weight: 600 !important;
}
.k-festival .k-surtitre { color: var(--wp--preset--color--stone); }
.k-festival a:not(.wp-block-button__link) { color: var(--k-nuit); }

/* --- Contenu des articles ---------------------------------- */
.k-colonne-affiche .wp-block-post-featured-image img {
  border-radius: 10px;
  border: 1px solid var(--k-ligne);
  box-shadow: var(--k-ombre-affiche);
  height: auto;
}
.k-colonne-affiche:has(> .wp-block-post-featured-image:empty) { display: none; }
.k-contenu-article > * { margin-block-start: 1.2rem; }
/* Textes d'articles : justifiés, avec césure propre */
.k-contenu-article p {
  text-align: justify;
  hyphens: auto;
  -webkit-hyphens: auto;
  line-height: 1.7;
}
/* Fiche spectacle : hiérarchie claire des informations */
.k-contenu-article .k-info-spectacle {
  font-family: var(--wp--preset--font-family--label);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.98rem;
  color: var(--k-grenat);
  text-align: left;
}
.k-contenu-article .k-distribution {
  color: var(--wp--preset--color--stone);
  font-size: 0.95rem;
  line-height: 1.75;
  text-align: left;
  border-left: 3px solid var(--k-jaune);
  padding-left: 1.1rem;
}
.k-contenu-article .k-reservations {
  border-top: 1px solid var(--k-ligne);
  padding-top: 1.1rem;
  margin-top: 2rem;
  font-weight: 600;
  text-align: left;
}
.k-contenu-article img {
  height: auto;
  border-radius: 3px;
  border: 1px solid var(--k-ligne);
  box-shadow: var(--k-ombre-affiche);
}
.k-contenu-article a { text-underline-offset: 3px; }

/* --- Archives par année ------------------------------------ */
.k-archives .wp-block-archives-list { list-style: none; padding: 0; margin: 0; }
.k-archives .wp-block-archives-list li {
  border-bottom: 1px solid var(--k-ligne);
  font-family: var(--wp--preset--font-family--label);
  color: var(--wp--preset--color--stone);
  font-size: 1rem;
}
.k-archives .wp-block-archives-list li a {
  display: inline-block;
  font-family: var(--wp--preset--font-family--display);
  font-weight: 600;
  font-size: clamp(2.8rem, 7vw, 4.8rem);
  line-height: 1.2;
  text-decoration: none;
  color: var(--k-encre);
  padding: 0.35rem 0;
  transition: color 0.2s ease, transform 0.25s ease;
}
.k-archives .wp-block-archives-list li:nth-child(5n+1) a:hover { color: var(--k-grenat); }
.k-archives .wp-block-archives-list li:nth-child(5n+2) a:hover { color: var(--k-nuit); }
.k-archives .wp-block-archives-list li:nth-child(5n+3) a:hover { color: var(--k-vert); }
.k-archives .wp-block-archives-list li:nth-child(5n+4) a:hover { color: var(--k-ocre); }
.k-archives .wp-block-archives-list li:nth-child(5n+5) a:hover { color: var(--k-jaune-encre); }
.k-archives .wp-block-archives-list li a:hover { transform: translateX(12px); }

/* --- Pied de page : la banderole jaune du logo ------------- */
.k-pied {
  border-top: 3px solid var(--k-encre);
  background: var(--k-jaune) !important;
  color: var(--k-encre) !important;
}
.k-pied :is(h1, h2, h3, h4) { color: var(--k-encre) !important; font-weight: 600; }
.k-pied a { color: var(--k-encre); }
.k-pied a:hover { color: var(--k-grenat); }
.k-pied .k-mentions { font-size: 0.82rem; opacity: 0.75; }
.k-pied .k-etymologie {
  display: flex; align-items: center; justify-content: center; gap: 1rem;
  flex-wrap: wrap;
  font-style: italic;
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.15rem;
  color: var(--k-encre);
  text-align: center;
}
.k-pied .k-etymologie svg { fill: var(--k-encre); width: 44px; height: auto; flex: none; }

/* --- Lettre-info : le billet sur fond grenat pâle ---------- */
.k-newsletter { background: var(--k-grenat-pale) !important; }
.k-billet {
  max-width: 720px;
  margin-inline: auto;
  border: 1.5px solid var(--k-jaune);
  outline: 1px solid rgba(233, 197, 29, 0.45);
  outline-offset: 6px;
  background: var(--k-papier);
  padding: clamp(1.8rem, 5vw, 3rem);
  box-shadow: var(--k-ombre-affiche);
}
.k-newsletter .mailpoet_form { padding: 0 !important; }
.k-newsletter form.mailpoet_form { background: transparent !important; }
.k-newsletter .mailpoet_text, .k-newsletter input[type="email"] {
  border: 1px solid var(--k-ligne) !important;
  background: #fff !important;
  color: var(--k-encre) !important;
  border-radius: 999px !important;
  padding: 0.75rem 1.2rem !important;
  font-family: var(--wp--preset--font-family--body) !important;
  font-size: 1rem !important;
  width: 100% !important;
}
.k-newsletter .mailpoet_submit, .k-newsletter button {
  background: var(--k-grenat) !important;
  color: #FFF7EF !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.75rem 1.9rem 0.8rem !important;
  font-family: var(--wp--preset--font-family--label) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  cursor: pointer;
}
.k-newsletter .mailpoet_submit:hover, .k-newsletter button:hover {
  background: var(--k-encre) !important;
  color: var(--k-jaune) !important;
}

/* --- Pagination -------------------------------------------- */
.wp-block-query-pagination {
  font-family: var(--wp--preset--font-family--label);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.9rem;
}
.wp-block-query-pagination a { text-decoration: none; color: var(--k-nuit); }
.wp-block-query-pagination a:hover { color: var(--k-grenat); }
.wp-block-query-pagination .page-numbers.current { color: var(--k-encre); font-weight: 700; }

/* --- Recherche --------------------------------------------- */
.wp-block-search__input {
  background: #fff;
  border: 1px solid var(--k-ligne);
  color: var(--k-encre);
  border-radius: 999px;
  padding: 0.6rem 1.2rem;
}
.wp-block-search__button {
  background: var(--k-grenat);
  color: #FFF7EF;
  border: none;
  border-radius: 999px;
  font-family: var(--wp--preset--font-family--label);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
  cursor: pointer;
}
.wp-block-search__button:hover { background: var(--k-encre); color: var(--k-jaune); }

/* --- Formulaires (WPForms, contact) ------------------------ */
.wpforms-container input[type="text"],
.wpforms-container input[type="email"],
.wpforms-container textarea {
  background: #fff !important;
  border: 1px solid var(--k-ligne) !important;
  color: var(--k-encre) !important;
  border-radius: 12px !important;
}
.wpforms-container button[type="submit"] {
  background: var(--k-grenat) !important;
  color: #FFF7EF !important;
  border: none !important;
  border-radius: 999px !important;
  font-family: var(--wp--preset--font-family--label) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  font-weight: 700 !important;
}
.wpforms-container button[type="submit"]:hover { background: var(--k-encre) !important; color: var(--k-jaune) !important; }

/* --- Divers ------------------------------------------------- */
::selection { background: var(--k-jaune); color: var(--k-encre); }
