html { scroll-padding-top: 6rem; }
body { background-color: #0B0B0F; }
::selection { background: #C9A24D; color: #0B0B0F; }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #0B0B0F; }
::-webkit-scrollbar-thumb { background: #2A2A33; border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: #C9A24D; }

#site-header { background: linear-gradient(to bottom, rgba(11,11,15,.85), rgba(11,11,15,0)); }
#site-header.is-scrolled { background: rgba(11,11,15,.92); backdrop-filter: blur(14px); border-bottom-color: #2A2A33; }

.nav-link { position: relative; color: #B8B8C0; transition: color .25s; }
.nav-link::after { content: ""; position: absolute; left: 0; right: 0; bottom: -6px; height: 1px; background: #C9A24D; transform: scaleX(0); transform-origin: left; transition: transform .3s; }
.nav-link:hover, .nav-link[aria-current="page"] { color: #FAF7F2; }
.nav-link:hover::after, .nav-link[aria-current="page"]::after { transform: scaleX(1); }

.text-gold-gradient { background: linear-gradient(135deg, #E3C57A 0%, #C9A24D 50%, #A8853A 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: none; }
.reveal-delay-1 { transition-delay: .12s; }
.reveal-delay-2 { transition-delay: .24s; }
.reveal-delay-3 { transition-delay: .36s; }

.hero-grid { background-image: linear-gradient(rgba(201,162,77,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(201,162,77,.06) 1px, transparent 1px); background-size: 64px 64px; }

.card-hover { transition: transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s, border-color .4s; }
.card-hover:hover { transform: translateY(-6px); border-color: rgba(201,162,77,.5); box-shadow: 0 30px 60px -30px rgba(201,162,77,.35); }

.toast { transform: translateY(16px); opacity: 0; transition: transform .35s, opacity .35s; }
.toast.is-on { transform: none; opacity: 1; }

.chip[aria-pressed="true"] { background: #C9A24D; color: #0B0B0F; border-color: #C9A24D; }

details.accordion summary { list-style: none; cursor: pointer; }
details.accordion summary::-webkit-details-marker { display: none; }
details.accordion[open] .acc-icon { transform: rotate(45deg); }
.acc-icon { transition: transform .3s; }

.dar-letter { transition: transform .4s cubic-bezier(.2,.7,.2,1), color .4s, text-shadow .4s; }
.dar-letter:hover { transform: translateY(-8px) scale(1.04); color: #E3C57A; text-shadow: 0 20px 50px rgba(201,162,77,.45); }

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; transition: none; }
  .animate-float { animation: none; }
}
