/* =====================================================================
   GIGI — Couche « luxe »
   Serif élégant pour les titres (Cormorant Garamond), doré subtil,
   typographie affinée et primitives réutilisables.
   Chargée sur toutes les pages, par-dessus le thème.
   ===================================================================== */

:root {
  --gigi-serif: "Marcellus", "Times New Roman", Georgia, serif;
  --gigi-sans: "Onest", system-ui, sans-serif;
  --gigi-gold: #d4a574;
  --gigi-gold-deep: #9e5b34;
  --gigi-ink: #452918;
  --gigi-ink-soft: #4f3020;
  --gigi-warm: #7f6a5b;
  --gigi-line: rgba(158, 91, 52, 0.16);
  --gigi-cream-card: #fffaf4;
  /* Surface claire premium — crème chaud + lueur dorée + profondeur */
  --gigi-surface:
    radial-gradient(
      ellipse 85% 60% at 12% -2%,
      rgba(212, 165, 116, 0.2),
      transparent 60%
    ),
    radial-gradient(
      ellipse 65% 55% at 92% 6%,
      rgba(188, 144, 106, 0.13),
      transparent 58%
    ),
    linear-gradient(180deg, #fbf5ee 0%, #f4e7d7 100%);
  /* Variante calme (bandes secondaires) */
  --gigi-surface-calm: linear-gradient(180deg, #faf3ec 0%, #f6ebdd 100%);
}

/* ---------------------------------------------------------------------
   1. Titres en serif élégant
   Sélecteurs préfixés par `body` pour battre les utilitaires du thème
   (font-semibold, font-bold, tracking-tighter) sans !important.
   On laisse les petits libellés (title-xs/sm/base/md, h4/h5/h6) en sans.
   --------------------------------------------------------------------- */
body h1,
body h2,
body h3,
body .entry-title,
body .title-lg,
body .title-xl,
body .title-2xl,
body .title-3xl,
body .title-4xl,
body .title-5xl,
body .title-6xl {
  font-family: var(--gigi-serif);
  font-weight: 400;
  letter-spacing: -0.005em;
  font-feature-settings: "liga", "kern";
}

/* Les très grands titres respirent mieux en graisse plus fine */
body .title-4xl,
body .title-5xl,
body .title-6xl {
  font-weight: 400;
  letter-spacing: 0;
}

/* ---------------------------------------------------------------------
   2. Corps de texte — rendu affiné
   --------------------------------------------------------------------- */
body {
  font-family: var(--gigi-sans);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

::selection {
  background: rgba(212, 165, 116, 0.28);
  color: var(--gigi-ink);
}

/* ---------------------------------------------------------------------
   3. Libellés / sur-titres (eyebrows) — fins, espacés, dorés
   --------------------------------------------------------------------- */
body .entry-subtitle,
body .badge.badge-text {
  font-family: var(--gigi-sans);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 600;
}

/* ---------------------------------------------------------------------
   4. Boutons — lettrage affiné (on garde le sans pour la lisibilité)
   --------------------------------------------------------------------- */
.btn {
  font-family: var(--gigi-sans);
  letter-spacing: 0.04em;
}

/* ---------------------------------------------------------------------
   5. Primitives réutilisables (en-tête de section signature)
   --------------------------------------------------------------------- */

/* Sur-titre doré encadré d'un filet fin */
.gigi-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  font-family: var(--gigi-sans);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gigi-gold-deep);
}

.gigi-eyebrow::before {
  content: "";
  width: 30px;
  height: 1px;
  background: rgba(158, 91, 52, 0.5);
}

/* variante centrée : un filet de chaque côté */
.gigi-eyebrow--center {
  justify-content: center;
}

.gigi-eyebrow--center::after {
  content: "";
  width: 30px;
  height: 1px;
  background: rgba(158, 91, 52, 0.5);
}

/* Filet doré dégradé — séparateur délicat */
.gigi-rule {
  width: 58px;
  height: 1px;
  border: 0;
  margin: 1.5rem 0;
  background: linear-gradient(90deg, rgba(158, 91, 52, 0.7), transparent);
}

.gigi-rule--center {
  margin-inline: auto;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(158, 91, 52, 0.7),
    transparent
  );
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
