/* ==========================================================================
   The Aromaverse — "Heaven" theme
   Pearl, mist and champagne. Air around everything, light instead of shadow.
   Loaded after app.css and motion.css; overrides tokens and a few components.
   ========================================================================== */

:root {
  --limestone: #FCFBF8;   /* page: pearl */
  --vellum: #FFFFFF;
  --sandstone: #F2EFE9;   /* mist behind bottles */
  --oud: #1B1815;         /* ink */
  --smoke: #736D66;
  --ash: #A39D95;
  --hairline: #ECE8E1;
  --hairline-strong: #DAD4CA;
  --saffron: #B99A63;     /* champagne */
  --saffron-ink: #8C6E3C;
  --paper-2: #F5F3EF;
  --serif: "Cormorant Garamond", "Cormorant", Garamond, Georgia, serif;
  --sans: "Jost", "Figtree", system-ui, -apple-system, sans-serif;
  --gold-foil: linear-gradient(100deg, #A88A55 0%, #D9C29A 35%, #F4E9D2 50%, #CDB286 65%, #A88A55 100%);
  --shadow-lift: 0 30px 60px -40px rgba(60, 48, 30, .35);
}

body { letter-spacing: .005em; }
body::after { opacity: .025; }

/* Type: light, tall, generous */
.display, .h1, .h2, .h3, .wordmark, .pcard-name, .search-input, .mobile-nav a, .collection-frame-type span, .prose h2, .notes dt, .community-links strong, .product-price [data-price], .reviews-score > span, .totals .grand dd, .line-name, .account-stats dd, .finder-opt b, .houses-list a { font-family: var(--serif); font-weight: 400; }
.display { font-size: clamp(3rem, 1.8rem + 5vw, 6rem); font-weight: 300; line-height: .98; letter-spacing: -.015em; }
.h1 { font-weight: 300; font-size: clamp(2.5rem, 1.6rem + 3vw, 4rem); }
.h2 { font-weight: 300; font-size: clamp(2rem, 1.4rem + 2vw, 3rem); }
.h3 { font-size: 1.6rem; }
.lede { font-weight: 300; font-size: 1.15rem; color: var(--smoke); }
.wordmark { font-size: 2rem; font-weight: 400; letter-spacing: .06em; }
@media (max-width: 1020px) { .wordmark { font-size: 1.5rem; letter-spacing: .04em; } }
.pcard-name { font-size: 1.4rem; }
.primary-nav a { font-size: .82rem; letter-spacing: .09em; font-weight: 400; }
.btn { font-weight: 400; letter-spacing: .08em; font-size: .85rem; min-height: 52px; }
.btn-lg { min-height: 58px; padding: 0 40px; }
.announce { background: #F4F1EB; color: var(--smoke); letter-spacing: .04em; font-size: .78rem; border-bottom: 1px solid var(--hairline); }
.announce a { color: var(--oud); }

/* Header floats on pearl glass */
.site-header { background: rgba(252, 251, 248, .82); backdrop-filter: blur(18px) saturate(1.2); -webkit-backdrop-filter: blur(18px) saturate(1.2); }
.primary-nav { border-top-color: transparent; }

/* Buttons: ink, or a champagne outline */
.btn-primary { background: var(--oud); color: #FCFBF8; }
.btn-primary:hover { background: #2E2924; }
.btn-secondary { border-color: var(--hairline-strong); color: var(--oud); }
.btn-secondary:hover { background: transparent; border-color: var(--oud); color: var(--oud); }

/* Bottles float in mist, lit from above */
.pcard-media, .product-media, .line-media, .mini-media, .sheet-media, .search-result-media {
  background: radial-gradient(90% 60% at 50% 0%, #FFFFFF 0%, #F6F4F0 55%, #EEEAE3 100%) !important;
}
.pcard-media::before, .product-media::before { border-color: rgba(185, 154, 99, .35); }
.pcard-media img, .product-media img { filter: drop-shadow(0 22px 18px rgba(60, 48, 30, .14)); }
.pcard-body { padding-top: 20px; }
.pcard-brand { text-transform: none; letter-spacing: .08em; font-size: .72rem; color: var(--ash); }
.pcard-add { border-color: var(--hairline-strong); letter-spacing: .08em; font-weight: 400; font-size: .75rem; }
.flag { background: rgba(255, 255, 255, .9); font-weight: 400; letter-spacing: .06em; box-shadow: 0 0 0 1px var(--hairline); }
.flag-muted { background: var(--oud); box-shadow: none; }

/* Footer: pearl, not ink */
.site-footer { background: #F6F4EF; color: var(--smoke); border-top: 1px solid var(--hairline); }
.site-footer a { color: var(--oud); }
.footer-brand .wordmark { color: var(--oud); }
.footer-col h2 { color: var(--oud); font-weight: 500; letter-spacing: .06em; font-size: .78rem; }
.footer-bottom { border-top-color: var(--hairline); color: var(--ash); }
.footer-strips { border-color: var(--saffron); }

/* Intro + curtain become light */
.intro { background: #FCFBF8; color: var(--oud); }
.intro-word { color: var(--oud); }
.curtain::before { background: #FCFBF8; box-shadow: 0 -1px 0 rgba(185, 154, 99, .6); }
.curtain-word { color: var(--oud); }
.toast { background: rgba(27, 24, 21, .94); }

/* Quiet section heads */
.section-head .h2, .collections-title { font-weight: 300; }
.eyebrow-rule { display: block; width: 44px; height: 1px; background: var(--saffron); margin: 0 auto 22px; }

/* ---------- Product cards: a lit display case ---------- */
.pcard-media { border-radius: 22px; box-shadow: inset 0 0 0 1px rgba(185, 154, 99, .16); }
.pcard-media::before { display: none; }
.pcard { text-align: left; }
.pcard-body { align-items: flex-start; padding-top: 16px; }
.pcard-foot { flex-direction: row; justify-content: space-between; align-items: center; }
.pcard-name { font-size: 1.35rem; line-height: 1.15; }
.pcard-add { width: auto; max-width: none; padding: 0 16px; border-radius: 999px; background: #fff; box-shadow: inset 0 0 0 1px var(--hairline-strong); border: 0; }
.pcard-add:hover { background: var(--oud); color: #fff; box-shadow: none; }
.product-media { border-radius: 28px; }
.product-media::before { display: none; }
.line-media { border-radius: 16px; }
.sheet-media { border-radius: 14px; }
.pcard-add { white-space: nowrap; }
@media (max-width: 760px) {
  .pcard-foot { flex-direction: column; align-items: stretch; gap: 8px; }
  .pcard-add { justify-content: center; min-height: 36px; }
}
