/* Aurora premium enhancement layer — augments the built storefront.
   Uses the store's own CSS variables so it adapts to light/dark themes. */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;600;700&display=swap');

/* ---- Premium display typography ---- */
.hero-title,
.section-title,
.page-title,
.promo-title,
.pdp-title,
.confirm h1 {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif !important;
  letter-spacing: -0.5px;
}

/* ---- Announcement bar ---- */
#aurora-annc {
  position: relative; display: flex; align-items: center; justify-content: center;
  gap: 8px; text-align: center; background: var(--accent); color: #0f0f10;
  font-size: 13px; font-weight: 600; padding: 9px 40px; letter-spacing: .2px;
}
#aurora-annc strong { font-weight: 800; }
#aurora-annc .x {
  position: absolute; right: 12px; top: 50%; transform: translateY(-50%);
  background: none; border: none; color: inherit; font-size: 17px; line-height: 1;
  cursor: pointer; opacity: .65;
}
#aurora-annc .x:hover { opacity: 1; }

/* ---- Header on scroll ---- */
.site-header { transition: box-shadow var(--anim-normal), background var(--anim-normal); }
.site-header.is-scrolled { box-shadow: 0 8px 30px rgba(0,0,0,.14); }
.site-header .header-inner { transition: height var(--anim-normal); }
.site-header.is-scrolled .header-inner { height: 58px; }

/* ---- Scroll reveal ---- */
.aurora-reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s cubic-bezier(.2,.7,.3,1); }
.aurora-reveal.in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .aurora-reveal { opacity: 1 !important; transform: none !important; transition: none; } }

/* ---- Card + PDP image polish ---- */
.product-card { transition: transform var(--anim-fast), box-shadow var(--anim-normal); }
.product-media img { transition: transform var(--anim-slow) cubic-bezier(.2,.7,.3,1); }
.pdp-main { overflow: hidden; }
.pdp-main img { transition: transform .6s cubic-bezier(.2,.7,.3,1); }
.pdp-main:hover img { transform: scale(1.06); }

/* ---- Image fade-in ---- */
img.aurora-fade { opacity: 0; transition: opacity .55s ease; }
img.aurora-fade.loaded { opacity: 1; }

/* ---- Benefits / trust strip ---- */
.aurora-benefits { max-width: var(--maxw); margin: 40px auto 0; padding: 0 24px; }
.aurora-benefits .row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.aurora-bi {
  display: flex; align-items: center; gap: 13px; padding: 18px 20px;
  background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--card-radius);
}
.aurora-bi .ic {
  width: 40px; height: 40px; flex: 0 0 40px; border-radius: 11px; display: grid; place-items: center;
  background: color-mix(in srgb, var(--accent) 16%, transparent); color: var(--accent); font-size: 19px;
}
.aurora-bi b { display: block; font-size: 14px; }
.aurora-bi span { color: var(--text-secondary); font-size: 12px; }

/* ---- Brand / press strip ---- */
.aurora-brands {
  max-width: var(--maxw); margin: 52px auto 0; padding: 26px 24px;
  border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
  display: flex; gap: 46px; justify-content: center; align-items: center; flex-wrap: wrap;
}
.aurora-brands span {
  font-family: 'Playfair Display', serif; font-size: 21px; letter-spacing: 2px;
  color: var(--text-muted); opacity: .85;
}

/* ---- Newsletter band ---- */
.aurora-news { max-width: var(--maxw); margin: 52px auto 0; padding: 0 24px; }
.aurora-news .inner {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--card-radius);
  padding: 44px 32px; text-align: center;
}
.aurora-news h3 { font-family: 'Playfair Display', serif; font-size: 28px; margin: 0 0 8px; }
.aurora-news p { color: var(--text-secondary); margin: 0 auto 22px; max-width: 460px; }
.aurora-news form { display: flex; gap: 10px; max-width: 460px; margin: 0 auto; }
.aurora-news input {
  flex: 1; background: var(--input-bg); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 13px 15px; color: var(--text); outline: none; font: inherit;
}
.aurora-news input:focus { border-color: var(--accent); }

/* ---- Back to top ---- */
#aurora-top {
  position: fixed; right: 18px; bottom: 66px; width: 46px; height: 46px; border-radius: 50%;
  background: var(--primary); color: var(--on-primary); border: none; font-size: 20px; cursor: pointer;
  opacity: 0; pointer-events: none; transform: translateY(8px);
  transition: opacity var(--anim-normal), transform var(--anim-normal); z-index: 90; box-shadow: var(--shadow-dark);
}
#aurora-top.show { opacity: 1; pointer-events: auto; transform: none; }
#aurora-top:hover { filter: brightness(1.08); }

@media (max-width: 860px) {
  .aurora-benefits .row { grid-template-columns: repeat(2, 1fr); }
  .aurora-brands { gap: 28px; }
  .aurora-brands span { font-size: 17px; }
  .aurora-news form { flex-direction: column; }
}
