/* ScrollFree - shared styles (cached across all pages)
   Page-specific rules still live in each page's <style> block and override these. */

*{margin:0;padding:0;box-sizing:border-box}

:root{
  --o:#E8940A;
  --o2:#F5A623;
  --bg:#080808;
  --bg2:#101010;
  --bg3:#181818;
  --bg4:#1E1E1E;
  --text:#FFFFFF;
  --text2:#888;
  --border:rgba(255,255,255,0.07);
}

body{
  background:var(--bg);
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  overflow-x:hidden;
  scroll-behavior:smooth;
}

/* SCROLL PROGRESS */
.scroll-progress{
  position:fixed;top:0;left:0;
  width:0%;height:3px;
  background:linear-gradient(90deg,var(--o),var(--o2));
  z-index:1000;
  transition:width 0.1s linear;
}

/* ACCESSIBILITY */
:focus-visible{outline:2px solid var(--o);outline-offset:2px}
button:focus,a:focus,input:focus{outline:none}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--o);outline-offset:2px}

/* NAV */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  padding:1rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(8,8,8,0.92);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border);
}
.nav-logo{
  display:flex;align-items:center;gap:10px;
  font-size:1.15rem;font-weight:700;letter-spacing:-0.01em;
  text-decoration:none;color:var(--text);cursor:pointer;
}
.nav-logo img{width:34px;height:34px;object-fit:contain}
.nav-cta{
  background:var(--o);color:#000;
  font-weight:700;font-size:0.9rem;
  padding:0.6rem 1.3rem;
  border-radius:50px;
  letter-spacing:0.04em;
  cursor:pointer;border:none;
  transition:opacity 0.2s;
  white-space:nowrap;
}
.nav-cta:hover{opacity:0.85}

/* SITE LINKS / FOOTER */
.site-links{
  border-top:1px solid var(--border);
  padding:1.25rem 1.5rem;
  display:flex;flex-wrap:wrap;
  gap:0.75rem 1.5rem;
  justify-content:center;
}
.site-links a{
  color:var(--text2);
  font-size:0.8rem;
  text-decoration:none;
  transition:color 0.2s;
}
.site-links a:hover{color:#fff}

footer{
  padding:0.75rem;
  text-align:center;
  color:var(--text2);
  font-size:0.78rem;
}

/* GLOBAL REDUCED MOTION */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    transition:none !important;
    animation-duration:0.001s !important;
    animation-iteration-count:1 !important;
  }
}
