/* White Porcelain Theme — Minimal elegance */
body.theme-white_porcelain {
  --color-bg-primary: #faf9f7;
  --color-bg-section: #f0ede8;
  --color-bg-card: #ffffff;
  --color-text-primary: #1a1a1a;
  --color-text-secondary: #6b6b6b;
  --color-text-muted: #999999;
  --color-accent: #c9a96e;
  --color-accent-hover: #b8933f;
  --color-accent-glow: rgba(201, 169, 110, 0.12);
  --color-border: rgba(0, 0, 0, 0.06);
  --color-border-hover: rgba(0, 0, 0, 0.12);
  --color-overlay: rgba(250, 249, 247, 0.85);
  --radius-section: 0px;
  --radius-card: 12px;
  --font-weight-heading: 300;
  --transition-smooth: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Scroll reveal — gentle float up */
.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal.shown { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: 0.12s; }
.reveal-delay-2 { transition-delay: 0.24s; }
.reveal-delay-3 { transition-delay: 0.36s; }

/* Card hover — soft shadow lift */
.card-hover { transition: var(--transition-smooth); }
.card-hover:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.08);
  border-color: var(--color-border-hover);
}

/* Gradient text — champagne gold */
.gradient-text {
  background: linear-gradient(135deg, var(--color-accent) 0%, #e8d5b0 50%, var(--color-accent) 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}

/* Glass nav — warm white */
.glass-nav {
  background: rgba(250, 249, 247, 0.92);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

/* Glow button — subtle gold */
.glow-btn { position: relative; overflow: hidden; }
.glow-btn::after {
  content: ''; position: absolute; inset: -2px;
  background: linear-gradient(135deg, transparent 30%, var(--color-accent-glow) 50%, transparent 70%);
  opacity: 0; transition: opacity 0.4s;
}
.glow-btn:hover::after { opacity: 1; }

/* Marquee */
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.marquee-track { animation: marquee 35s linear infinite; }
.marquee-track:hover { animation-play-state: paused; }

/* Scrollbar — light style */
body.theme-white_porcelain::-webkit-scrollbar { width: 8px; }
body.theme-white_porcelain::-webkit-scrollbar-track { background: var(--color-bg-section); }
body.theme-white_porcelain::-webkit-scrollbar-thumb { background: #c0b8a8; border-radius: 4px; }
