@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Cormorant+Garamond:wght@500;600;700&display=swap');

:root {
  --site-bg: #f6f2eb;
  --site-bg-2: #efe8de;
  --site-surface: rgba(255, 255, 255, 0.78);
  --site-surface-strong: rgba(255, 255, 255, 0.92);
  --site-line: rgba(41, 33, 24, 0.09);
  --site-text: #201a16;
  --site-muted: #75695f;
  --site-brand: #4b4dbf;
  --site-brand-2: #6366f1;
  --site-gold: #b07a2a;
  --site-shadow: 0 20px 50px rgba(38, 28, 19, 0.07);
}

html { scroll-behavior: smooth; }
body {
  font-family: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: var(--site-text) !important;
  background:
    radial-gradient(circle at top left, rgba(99, 102, 241, 0.10), transparent 25%),
    radial-gradient(circle at top right, rgba(176, 122, 42, 0.10), transparent 22%),
    linear-gradient(180deg, #fcfaf7 0%, var(--site-bg) 48%, var(--site-bg-2) 100%) !important;
}

h1, h2, h3, .serif-display {
  font-family: 'Cormorant Garamond', serif !important;
  letter-spacing: -0.03em;
}

.text-white,
.text-slate-950,
.text-slate-900,
.text-slate-800,
.text-gray-900,
.text-gray-800 {
  color: var(--site-text) !important;
}

.text-gray-300,
.text-gray-400,
.text-slate-300,
.text-slate-400,
.text-slate-500,
.text-gray-500,
.text-gray-600 {
  color: var(--site-muted) !important;
}

.bg-slate-950,
.bg-\[\#0a0a1a\],
.bg-black\/20,
.bg-white\/5,
.bg-white\/\[0\.02\],
.bg-white\/\[0\.03\],
.bg-white\/\[0\.04\],
.bg-white\/\[0\.05\],
.bg-white\/\[0\.06\],
.bg-white\/10 {
  background: var(--site-surface) !important;
}

.border-white\/10,
.border-white\/15,
.border-white\/20,
.border-white\/\[0\.05\],
.border-white\/\[0\.06\],
.border-white\/\[0\.08\],
.border-slate-800,
.border-slate-700 {
  border-color: var(--site-line) !important;
}

.rounded-2xl,
.rounded-3xl,
.rounded-xl {
  box-shadow: var(--site-shadow);
}

.bg-gradient-to-r.from-\[\#667eea\].to-\[\#764ba2\],
.cta-btn,
button[class*='cta-btn'],
a[class*='cta-btn'] {
  background: linear-gradient(135deg, var(--site-brand) 0%, var(--site-brand-2) 100%) !important;
  color: #fff !important;
  box-shadow: 0 16px 36px rgba(75, 77, 191, 0.24) !important;
}

.wechat-green {
  box-shadow: 0 14px 30px rgba(7, 193, 96, 0.18) !important;
}

.price-card,
[class*='price-card'],
.card-glow,
details,
.modal-box {
  box-shadow: var(--site-shadow) !important;
}

summary { list-style: none; }
summary::-webkit-details-marker { display: none; }

img { image-rendering: auto; }

@media (max-width: 768px) {
  h1 { line-height: 1.02 !important; }
}
