/* ════════════════════════════════════════════════════
   BASE — reset, body, typography utilities, containers
════════════════════════════════════════════════════ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}

body{
  background:var(--bg-0);
  color:var(--text-0);
  font-family:'Geist',-apple-system,BlinkMacSystemFont,'SF Pro Display',Inter,sans-serif;
  font-weight:400;
  font-size:15px;
  line-height:1.55;
  letter-spacing:-0.011em;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}

::selection{background:var(--gold);color:var(--bg-0)}
::-webkit-scrollbar{width:0}

a{color:inherit;text-decoration:none}
button{font-family:inherit;font-size:inherit;background:none;border:none;color:inherit;cursor:pointer}
img{max-width:100%;display:block}
/* <picture> stays layout-transparent so the inner <img> keeps component CSS */
picture{display:contents}

/* ════════ TYPOGRAPHY UTILITIES ════════ */
.mono{font-family:'Geist Mono',ui-monospace,monospace;font-feature-settings:'tnum' 1}
.eyebrow{
  font-family:'Geist Mono',ui-monospace,monospace;
  font-size:11px;font-weight:500;
  letter-spacing:0.14em;color:var(--gold-mute);
  text-transform:uppercase;
}
.eyebrow.dim{color:var(--text-2)}
.display{font-weight:500;letter-spacing:-0.04em;line-height:1.02;color:var(--text-0)}

/* ════════ CONTAINERS ════════ */
.wrap{max-width:1280px;margin:0 auto;padding:0 32px}
.wrap-tight{max-width:980px;margin:0 auto;padding:0 32px}

/* Page-in fade — replicates the reference's per-page transition on real loads */
main{animation:lfdPageIn 0.5s cubic-bezier(0.16,1,0.3,1)}
@keyframes lfdPageIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}

/* Accessible focus for keyboard users */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:3px;
}

/* Skip link */
.skip-link{
  position:absolute;left:8px;top:-48px;z-index:3000;
  background:var(--bg-3);color:var(--text-0);
  border:1px solid var(--line-gold);
  font-family:'Geist Mono',monospace;font-size:12px;
  padding:10px 16px;border-radius:8px;transition:top 0.2s;
}
.skip-link:focus{top:8px}

/* ════════ REDUCED MOTION (verbatim intent from reference) ════════ */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .particles{display:none}
  *{animation:none !important;transition:none !important}
}
