:root{
  --bg-void:#0b0b0d;
  --bg-raised:#151517;
  --bg-raised-2:#1c1c1f;
  --text-primary:#ece8e2;
  --text-muted:#8d8a92;
  --ember:#9c1f28;
  --ember-bright:#c8323d;
  --steel:#35363b;
  --steel-line:rgba(236,232,226,0.08);
}

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

body{
  background:var(--bg-void);
  color:var(--text-primary);
  font-family:'Work Sans', sans-serif;
  font-weight:300;
  line-height:1.6;
}

h1,h2,h3,.display{
  font-family:'Big Shoulders Display', sans-serif;
  text-transform:uppercase;
  letter-spacing:0.02em;
  font-weight:900;
}

.mono{font-family:'IBM Plex Mono', monospace;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}

/* ---------- NAV ---------- */
header.site-nav{
  position:sticky;
  top:0;left:0;right:0;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:22px 5%;
  background:rgba(11,11,13,0.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--steel-line);
}

.site-nav .mark{
  font-family:'Big Shoulders Display', sans-serif;
  font-weight:700;
  font-size:1.1rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
}

.site-nav .mark span{color:var(--ember-bright);}

nav.links{display:flex;gap:34px;}

nav.links a{
  font-size:0.72rem;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--text-muted);
  font-weight:500;
  position:relative;
  padding-bottom:4px;
  transition:color 0.25s ease;
}

nav.links a:hover, nav.links a.active{color:var(--text-primary);}

nav.links a.active::after{
  content:"";
  position:absolute;
  left:0;bottom:0;
  width:100%;
  height:1px;
  background:var(--ember-bright);
}

/* ---------- PAGE HEADER ---------- */
.page-head{
  padding:80px 5% 50px;
  max-width:1300px;
  margin:0 auto;
}

.page-eyebrow{
  font-family:'IBM Plex Mono', monospace;
  font-size:0.72rem;
  letter-spacing:0.2em;
  text-transform:uppercase;
  color:var(--ember-bright);
  margin-bottom:16px;
  display:flex;
  align-items:center;
  gap:12px;
}

.page-eyebrow::before{content:"";width:26px;height:1px;background:var(--ember-bright);}

.page-head h1{
  font-size:clamp(2.6rem, 6vw, 4.6rem);
  line-height:0.92;
  margin-bottom:18px;
}

.page-head p{
  color:var(--text-muted);
  max-width:560px;
  font-size:0.98rem;
}

/* ---------- FOOTER ---------- */
footer{
  border-top:1px solid var(--steel-line);
  padding:60px 5% 40px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:24px;
}

footer .foot-left{
  font-family:'Big Shoulders Display', sans-serif;
  font-weight:700;
  font-size:1rem;
  text-transform:uppercase;
  letter-spacing:0.06em;
  color:var(--text-muted);
}

footer .foot-social{display:flex;gap:26px;}

footer .foot-social a{
  font-family:'IBM Plex Mono', monospace;
  font-size:0.72rem;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--text-muted);
  transition:color 0.2s ease;
}

footer .foot-social a:hover{color:var(--ember-bright);}

footer .foot-copy{
  width:100%;
  font-family:'IBM Plex Mono', monospace;
  font-size:0.68rem;
  color:#4a4950;
  letter-spacing:0.05em;
  padding-top:30px;
}

@media (max-width:800px){
  nav.links{display:none;}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
}
