:root {
  --geraldine-cream: rgba(255, 244, 226, 0.86);
  --geraldine-warm: #ff9f5f;
  --geraldine-gold: #ffd89a;
}

body {
  min-height: 100vh;
  color: #f9ead6;
  background:
    radial-gradient(circle at 68% 18%, rgba(255, 203, 125, 0.36), transparent 30rem),
    radial-gradient(circle at 12% 82%, rgba(255, 126, 92, 0.22), transparent 28rem),
    linear-gradient(135deg, #20130f 0%, #4e2c1c 42%, #8b5d3a 100%) !important;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(50, 25, 12, 0.82), transparent 36%, rgba(255, 222, 180, 0.18)),
    radial-gradient(circle at 50% 6%, rgba(255, 255, 255, 0.28), transparent 16rem);
  z-index: -1;
}

a[href],
button {
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

a[href]:hover,
button:hover {
  transform: translateY(-1px);
}

.rounded-md,
.rounded-lg,
.rounded-xl,
.rounded-2xl,
[class*="rounded"] {
  border-radius: 16px !important;
}

.bg-theme-800,
.bg-theme-900,
.bg-theme-950,
[class*="bg-theme"] {
  background-color: rgba(36, 20, 14, 0.42) !important;
  backdrop-filter: blur(22px) saturate(1.18);
}

.shadow,
.shadow-md,
.shadow-lg,
.shadow-xl,
[class*="shadow"] {
  box-shadow: 0 18px 55px rgba(44, 20, 8, 0.22) !important;
}

.text-theme-500,
.text-theme-600,
.text-theme-700,
[class*="text-theme"] {
  color: #ffe2b7 !important;
}

.border-theme-700,
.border-theme-800,
[class*="border-theme"] {
  border-color: rgba(255, 226, 186, 0.22) !important;
}

h1,
h2,
h3 {
  letter-spacing: 0 !important;
}
