*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; background:#100f0d; }
body { overflow-x:hidden; background:transparent; }
img { max-width:100%; display:block; }

.reveal {
  opacity:0;
  transform:translateY(28px);
  transition:opacity 0.9s cubic-bezier(0.22,1,0.36,1), transform 0.9s cubic-bezier(0.22,1,0.36,1);
}
.reveal.visible { opacity:1; transform:none; }
.reveal-delay-1 { transition-delay:0.12s; }
.reveal-delay-2 { transition-delay:0.24s; }
.reveal-delay-3 { transition-delay:0.36s; }

/* Animated scroll mark */
@keyframes scrollMark {
  0%   { transform: translateY(-100%); opacity: 0; }
  20%  { opacity: 1; }
  80%  { opacity: 1; }
  100% { transform: translateY(100%); opacity: 0; }
}
.scroll-mark { position: relative; width: 1px; height: 64px; background: rgba(232,224,208,0.4); overflow: hidden; }
.scroll-mark::before {
  content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 40%;
  background: linear-gradient(180deg, transparent 0%, rgba(200,169,110,0.95) 100%);
  animation: scrollMark 2.6s cubic-bezier(0.45, 0, 0.55, 1) infinite;
}

/* Tweaks panel */
#tweaks-panel {
  position:fixed; bottom:24px; right:24px; z-index:9999;
  background:#1a1916; border:1px solid rgba(200,169,110,0.3);
  padding:20px 24px; width:240px;
  font-family:'DM Sans',sans-serif; font-size:13px;
  display:none; box-shadow:0 8px 40px rgba(0,0,0,0.4);
}
#tweaks-panel.open { display:block; }
#tweaks-panel h4 { color:#c8a96e; font-weight:400; letter-spacing:0.12em; text-transform:uppercase; font-size:10px; margin-bottom:16px; }
#tweaks-panel label { display:block; color:#9a9080; margin-bottom:6px; font-size:11px; letter-spacing:0.06em; text-transform:uppercase; }
.tweak-btn {
  display:block; width:100%; text-align:left;
  background:transparent; border:1px solid rgba(200,169,110,0.2);
  color:#e8e0d0; padding:8px 12px; margin-bottom:6px;
  font-family:'DM Sans',sans-serif; font-size:12px; cursor:pointer; transition:all 0.2s;
}
.tweak-btn:hover { border-color:#c8a96e; color:#c8a96e; }
.tweak-btn.active { background:#c8a96e; color:#100f0d; border-color:#c8a96e; font-weight:500; }
