:root{
  --base:#0e1417; --text:#F2E8D5; --muted:#9fb0b7;
  --brandA:#123B6B; --brandB:#B22A2A;
}

@keyframes shimmer{0%{background-position:0% 50%}100%{background-position:200% 50%}}
@keyframes float{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(-14px) rotate(2deg)}}
@keyframes float2{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(-10px) rotate(-2deg)}}
@keyframes float3{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(-18px) rotate(1.5deg)}}

.animate-shimmer{animation:shimmer 2.2s linear infinite}
.animate-float{animation:float 24s ease-in-out infinite alternate}
.animate-float2{animation:float2 26s ease-in-out infinite alternate}
.animate-float3{animation:float3 28s ease-in-out infinite alternate}
.shadow-glass{box-shadow:0 10px 30px rgba(0,0,0,.25)}

.grain:before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.04;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="140" height="140" viewBox="0 0 140 140"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.8" numOctaves="4" stitchTiles="stitch"/></filter><rect width="100%" height="100%" filter="url(%23n)" opacity=".65"/></svg>');
  mix-blend-mode:overlay;
}

.scroll-shadow{box-shadow:0 0 0 rgba(0,0,0,0);transition:box-shadow .3s ease}
.scroll-shadow.is-scrolled{box-shadow:0 8px 24px rgba(0,0,0,.35)}

/* Optional shared styles for both pages */
* { box-sizing: border-box; }
html, body { height: 100%; }
:focus-visible { outline: none; }

/* Improve anchor focus visibility globally when not using Tailwind ring utils */
a:focus-visible, button:focus-visible {
  box-shadow: 0 0 0 0.15rem color-mix(in oklab, var(--rookie-red) 90%, transparent);
  border-radius: .75rem;
}

/* Reduce image dragging ghosting */
img { -webkit-user-drag: none; user-select: none; }

/* Utility: subtle elevation for main surfaces */
.surface {
  background: color-mix(in oklab, var(--rookie-navy) 60%, transparent);
  border: 1px solid rgba(255,255,255,0.08);
  backdrop-filter: blur(8px) saturate(140%);
  border-radius: 1.25rem;
}
