/* jeweler.css — МЕМО premium layer, injected after inline styles */
/* Source order wins on equal specificity — no !important needed except where noted */

:root {
  --btn-top: #d49a3a;
  --btn-mid: #c8892a;
  --btn-bot: #b5781e;
  --btn-border: #a07018;
  --btn-glow: rgba(180,118,28,.30);
  --btn-glow-h: rgba(180,118,28,.42);
  --ease-jewel: cubic-bezier(.22,1,.36,1);
  --shadow-sm: 0 2px 6px rgba(0,0,0,.07), 0 6px 20px rgba(0,0,0,.06);
  --shadow-md: 0 4px 12px rgba(0,0,0,.09), 0 14px 40px rgba(0,0,0,.09);
  --shadow-lg: 0 8px 24px rgba(0,0,0,.13), 0 24px 64px rgba(0,0,0,.11);
}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){
  --btn-top: #dba83e;
  --btn-mid: #d49a3a;
  --btn-bot: #c08025;
  --btn-border: #b88030;
  --btn-glow: rgba(200,148,48,.32);
  --btn-glow-h: rgba(200,148,48,.48);
  --shadow-sm: 0 2px 6px rgba(0,0,0,.20), 0 6px 20px rgba(0,0,0,.16);
  --shadow-md: 0 4px 12px rgba(0,0,0,.22), 0 14px 40px rgba(0,0,0,.18);
  --shadow-lg: 0 8px 24px rgba(0,0,0,.28), 0 24px 64px rgba(0,0,0,.22);
}}
:root[data-theme=dark]{
  --btn-top: #dba83e; --btn-mid: #d49a3a; --btn-bot: #c08025;
  --btn-border: #b88030; --btn-glow: rgba(200,148,48,.32); --btn-glow-h: rgba(200,148,48,.48);
  --shadow-sm: 0 2px 6px rgba(0,0,0,.20), 0 6px 20px rgba(0,0,0,.16);
  --shadow-md: 0 4px 12px rgba(0,0,0,.22), 0 14px 40px rgba(0,0,0,.18);
  --shadow-lg: 0 8px 24px rgba(0,0,0,.28), 0 24px 64px rgba(0,0,0,.22);
}

/* ── Nav shadow ─────────────────────────────────── */
.nav {
  box-shadow: 0 1px 0 rgba(255,255,255,.05), 0 2px 20px rgba(0,0,0,.25) !important;
}

/* ── Gold button mixin (applied via selector, not class) ─── */
.btn-reg,
.btn-primary, a.btn-primary, button.btn-primary,
.search-btn,
.btn-order, .btn-book {
  background: linear-gradient(175deg, var(--btn-top) 0%, var(--btn-mid) 50%, var(--btn-bot) 100%) !important;
  border: 1px solid var(--btn-border) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 1px 3px rgba(0,0,0,.18),
    0 4px 14px var(--btn-glow) !important;
  transition: transform 120ms var(--ease-jewel), box-shadow 120ms var(--ease-jewel), background 100ms ease-out !important;
  position: relative;
  color: #fff !important;
}
.btn-reg:hover,
.btn-primary:hover, a.btn-primary:hover, button.btn-primary:hover,
.search-btn:hover,
.btn-order:hover, .btn-book:hover {
  background: linear-gradient(175deg, #dba83e 0%, var(--btn-top) 50%, var(--btn-mid) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 2px 6px rgba(0,0,0,.22),
    0 8px 30px var(--btn-glow-h) !important;
  transform: translateY(-1px) !important;
}
.btn-reg:active,
.btn-primary:active, a.btn-primary:active, button.btn-primary:active,
.search-btn:active,
.btn-order:active, .btn-book:active {
  background: linear-gradient(175deg, var(--btn-bot) 0%, var(--btn-mid) 100%) !important;
  box-shadow:
    inset 0 2px 5px rgba(0,0,0,.24),
    0 1px 2px rgba(0,0,0,.14),
    0 2px 6px rgba(180,118,28,.14) !important;
  transform: translateY(1px) !important;
  transition-duration: 60ms !important;
}

/* ── Login btn ──────────────────────────────────── */
.btn-login {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
  transition: transform 120ms var(--ease-jewel), box-shadow 120ms var(--ease-jewel), border-color 120ms, color 120ms !important;
}
.btn-login:hover {
  transform: translateY(-1px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 2px 10px rgba(0,0,0,.22) !important;
  border-color: rgba(255,255,255,.38) !important;
  color: #fff !important;
}

/* ── Outline button ──────────────────────────────── */
.btn-outline {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 1px 3px rgba(0,0,0,.20),
    0 3px 12px rgba(0,0,0,.13) !important;
  transition: transform 120ms var(--ease-jewel), box-shadow 120ms var(--ease-jewel), border-color 120ms, color 120ms !important;
}
.btn-outline:hover {
  transform: translateY(-1px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 2px 6px rgba(0,0,0,.26),
    0 8px 26px rgba(0,0,0,.18) !important;
  border-color: rgba(255,255,255,.44) !important;
  color: #fff !important;
}
.btn-outline:active {
  transform: translateY(1px) !important;
  box-shadow: inset 0 2px 4px rgba(0,0,0,.22), 0 1px 2px rgba(0,0,0,.14) !important;
  transition-duration: 60ms !important;
}

/* ── Hero label glow ─────────────────────────────── */
.hero-label {
  box-shadow: 0 0 20px rgba(200,137,42,.12), inset 0 1px 0 rgba(200,137,42,.15) !important;
}

/* ── Search widget ───────────────────────────────── */
.search-wrap {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 4px 24px rgba(0,0,0,.20) !important;
}
.search-inp:focus {
  border-color: rgba(200,137,42,.5) !important;
  box-shadow: 0 0 0 3px rgba(200,137,42,.08) !important;
}
.stab.active {
  background: linear-gradient(175deg, var(--btn-top) 0%, var(--btn-mid) 55%, var(--btn-bot) 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.20), 0 2px 8px var(--btn-glow) !important;
}

/* ── Stats numbers glow ──────────────────────────── */
.stat-num {
  text-shadow: 0 0 28px rgba(200,137,42,.28) !important;
}

/* ── How-to cards ────────────────────────────────── */
.how-card {
  box-shadow: 0 1px 0 var(--border), var(--shadow-sm) !important;
  transition: transform 200ms var(--ease-jewel), box-shadow 200ms var(--ease-jewel), border-color 200ms !important;
}
.how-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(200,137,42,.25) !important;
  box-shadow: 0 1px 0 rgba(200,137,42,.12), var(--shadow-md), 0 0 0 1px rgba(200,137,42,.05) !important;
}
.how-icon {
  box-shadow: 0 1px 3px rgba(200,137,42,.10) !important;
}

/* ── Feature cards (dark bg) ─────────────────────── */
.feat-card {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 1px 3px rgba(0,0,0,.20),
    0 4px 16px rgba(0,0,0,.14) !important;
  transition: transform 200ms var(--ease-jewel), box-shadow 200ms var(--ease-jewel), border-color 200ms !important;
}
.feat-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(200,137,42,.30) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 2px 6px rgba(0,0,0,.26),
    0 14px 44px rgba(0,0,0,.22),
    0 0 40px rgba(200,137,42,.05) !important;
}

/* ── Pricing cards (if they exist on page) ───────── */
.plan-card, .pricing-card {
  box-shadow: 0 1px 0 var(--border), var(--shadow-sm) !important;
  transition: transform 200ms var(--ease-jewel), box-shadow 200ms var(--ease-jewel), border-color 200ms !important;
}
.plan-card:hover, .pricing-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 1px 0 rgba(200,137,42,.15), var(--shadow-md) !important;
}
.plan-card.popular, .plan-card.featured, .pricing-card.popular {
  box-shadow:
    0 1px 0 rgba(200,137,42,.2),
    var(--shadow-md),
    0 0 0 1px rgba(200,137,42,.12) !important;
}

/* ── Cemetery cards ──────────────────────────────── */
.cem-card {
  box-shadow: 0 1px 0 var(--border), var(--shadow-sm) !important;
  transition: transform 180ms var(--ease-jewel), box-shadow 200ms var(--ease-jewel), border-color 200ms !important;
}
.cem-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(200,137,42,.32) !important;
  box-shadow: 0 2px 4px rgba(0,0,0,.09), 0 10px 28px rgba(0,0,0,.12), 0 22px 56px rgba(0,0,0,.08) !important;
}

/* ── Guardian CTA ────────────────────────────────── */
.guardian-cta {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    var(--shadow-lg) !important;
  border: 1px solid rgba(255,255,255,.07) !important;
}

/* ── Generic cards ───────────────────────────────── */
.card, .service-card, .guardian-card, .grave-card, .blog-card {
  transition: transform 200ms var(--ease-jewel), box-shadow 200ms var(--ease-jewel), border-color 200ms !important;
}
.card:hover, .service-card:hover, .guardian-card:hover, .grave-card:hover, .blog-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: var(--shadow-md) !important;
  border-color: rgba(200,137,42,.22) !important;
}

/* ── Reduced motion override ─────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}
