/* ═══════════════════════════════════════════════════════════
   MELIORAS · HOMEPAGE POLISH
   Premium, agency-grade reveal animations + micro-interactions.
   Fully additive — applied only after polish.js sets html.pl-ready,
   so content is never hidden if JS fails or motion is reduced.
═══════════════════════════════════════════════════════════ */

@media (prefers-reduced-motion: no-preference) {

  /* ── Core reveal: fade + rise + soft de-blur ── */
  html.pl-ready .pl-reveal {
    opacity: 0;
    transform: translateY(32px);
    filter: blur(7px);
    transition:
      opacity 1000ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 1000ms cubic-bezier(0.16, 1, 0.3, 1),
      filter 1000ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--pl-d, 0ms);
    will-change: opacity, transform;
  }
  html.pl-ready .pl-reveal.is-in {
    opacity: 1;
    transform: none;
    filter: blur(0);
  }

  /* Centered hero-style blocks rise with a gentle scale instead */
  html.pl-ready .pl-reveal--scale {
    transform: translateY(20px) scale(0.97);
  }

  /* Opacity-only fade — for buttons, so transform-based hover stays intact */
  html.pl-ready .pl-fade {
    opacity: 0;
    filter: blur(6px);
    transition:
      opacity 1000ms cubic-bezier(0.16, 1, 0.3, 1),
      filter 1000ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--pl-d, 0ms);
  }
  html.pl-ready .pl-fade.is-in {
    opacity: 1;
    filter: blur(0);
  }

  /* Eyebrows do a refined letter-spacing settle */
  html.pl-ready .pl-reveal.section-eyebrow {
    letter-spacing: 0.28em;
    transition:
      opacity 1000ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 1000ms cubic-bezier(0.16, 1, 0.3, 1),
      filter 1000ms cubic-bezier(0.16, 1, 0.3, 1),
      letter-spacing 1100ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--pl-d, 0ms);
  }
  html.pl-ready .pl-reveal.section-eyebrow.is-in {
    letter-spacing: 0.13em;
  }
}

/* ── Smooth anchor scrolling (Scroll to Explore, Learn More, etc.) ── */
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

/* ── Brand logo: subtle living hover ── */
.brand img {
  transition: transform 600ms cubic-bezier(0.16, 1, 0.3, 1);
}
.brand:hover img {
  transform: scale(1.035);
}

/* ── About portrait: slow editorial zoom on hover ── */
.about-portrait {
  overflow: hidden;
}
.about-portrait img {
  transition: transform 1400ms cubic-bezier(0.16, 1, 0.3, 1);
}
.about-portrait:hover img {
  transform: scale(1.05);
}

/* ── Quote card: gentle lift ── */
.quote-card {
  transition: transform 600ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 600ms ease;
}
.quote-card:hover {
  transform: translateY(-4px);
}

/* ── Footer links: refined slide on hover ── */
.site-footer__nav a {
  display: inline-block;
  transition: color 220ms ease, transform 360ms cubic-bezier(0.16, 1, 0.3, 1);
}
.site-footer__nav a:hover {
  transform: translateY(-2px);
}
