/* Coeur de Bijoux — styles complémentaires (Tailwind Play CDN + CSS maison) */

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Public Sans", ui-sans-serif, system-ui, sans-serif;
  background-color: #FAF6F2;
  color: #36252B;
  -webkit-font-smoothing: antialiased;
}

::selection {
  background-color: #DDAAB2;
  color: #36252B;
}

/* Sur-titres & étiquettes */
.label-condensed {
  font-family: "Open Sans Condensed", "Arial Narrow", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.22em;
}

/* Boutons */
.btn-primary {
  display: inline-block;
  background-color: #B76E79;
  color: #FAF6F2;
  font-family: "Public Sans", sans-serif;
  font-weight: 600;
  font-size: 0.95rem;
  padding: 0.8rem 1.8rem;
  border-radius: 6px;
  transition: background-color 0.25s ease, transform 0.25s ease;
}
.btn-primary:hover {
  background-color: #95525F;
  transform: translateY(-1px);
}

.btn-ghost {
  display: inline-block;
  border: 1px solid #BFA06A;
  color: #36252B;
  font-family: "Public Sans", sans-serif;
  font-weight: 600;
  font-size: 0.95rem;
  padding: 0.8rem 1.8rem;
  border-radius: 6px;
  transition: background-color 0.25s ease, border-color 0.25s ease;
}
.btn-ghost:hover {
  background-color: #F3E3E6;
  border-color: #BFA06A;
}

/* Header : état « solidifié » au scroll */
#site-header.is-scrolled #header-inner {
  box-shadow: 0 8px 24px -12px rgba(54, 37, 43, 0.18);
}

/* Lien de navigation */
.nav-link {
  position: relative;
  color: #36252B;
  font-weight: 500;
  font-size: 0.95rem;
  transition: color 0.2s ease;
}
.nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  height: 1px;
  width: 100%;
  background-color: #B76E79;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s ease;
}
.nav-link:hover::after,
.nav-link[aria-current="page"]::after {
  transform: scaleX(1);
}
.nav-link[aria-current="page"] {
  color: #95525F;
}

/* Dropdown desktop (au survol) */
.nav-dropdown {
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
}
.nav-dropdown-item:hover .nav-dropdown,
.nav-dropdown-item:focus-within .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Cards univers */
.card-univers img {
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.card-univers:hover img {
  transform: scale(1.03);
}
.card-univers .card-link {
  transition: color 0.2s ease;
}
.card-univers:hover .card-link {
  color: #95525F;
}

/* Révélation en cascade du hero */
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.hero-reveal {
  opacity: 0;
  animation: fadeUp 0.9s ease forwards;
}
.hero-reveal-1 { animation-delay: 0.15s; }
.hero-reveal-2 { animation-delay: 0.3s; }
.hero-reveal-3 { animation-delay: 0.45s; }

/* Révélation au scroll (élément léger) */
.reveal {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Ligne fine décorative */
.rule-gold {
  height: 1px;
  background: linear-gradient(90deg, transparent, #BFA06A, transparent);
}

/* Accessibilité : focus visible */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid #B76E79;
  outline-offset: 2px;
}
