/* Subtle motion and black + midnight-blue accent */
:root { --surface:#101a36; --white:#121d3d; --line:#33446f; --shadow:0 18px 45px rgba(0,0,0,.62); }
body { background:radial-gradient(circle at 82% 8%, #162a57 0, #090e1e 30%, #000 70%); background-size:160% 160%; animation:midnight-shift 14s ease-in-out infinite alternate; }
.surface { background:#101a36; }
.site-header { background:rgba(0,0,0,.88); }
.hero-card,.skill-card,.project-card { background:#121d3d; }
.contact,footer { background:#090e1e; }
.brand-mark { animation:icon-float 3.6s ease-in-out infinite; }
.hero-card { animation:card-breathe 5s ease-in-out infinite; }
.hero-card .orbit { border-style:dashed; will-change:transform; }
.hero-card .orbit-one { animation:orbit-spin 9s linear infinite; }
.hero-card .orbit-two { animation:orbit-spin 6s linear infinite reverse; }
.hero .button-primary { position:relative; overflow:hidden; }
.hero .button-primary::after { content:""; position:absolute; inset:0; background:linear-gradient(110deg, transparent 30%, rgba(0,0,0,.22) 48%, transparent 66%); transform:translateX(-130%); animation:button-shine 2.8s ease-in-out infinite; }
.button { transition:transform .22s ease, box-shadow .22s ease, background .22s ease; }
.button:hover { box-shadow:0 10px 25px rgba(245,245,245,.12); }
.project-card:nth-child(2n) { transition-delay:.06s; }
.project-card:nth-child(3n) { transition-delay:.12s; }
@keyframes midnight-shift { from { background-position:0% 50%; } to { background-position:100% 50%; } }
@keyframes orbit-spin { to { transform:rotate(360deg); } }
@keyframes button-shine { 20%,100% { transform:translateX(130%); } }
@keyframes icon-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-3px); } }
@keyframes card-breathe { 0%,100% { box-shadow:0 18px 45px rgba(0,0,0,.38); } 50% { box-shadow:0 22px 52px rgba(72,93,145,.22); } }
@media (prefers-reduced-motion:reduce) { body,.brand-mark,.hero-card,.hero-card .orbit,.hero .button-primary::after { animation:none; } }
