/* FORGE — auto-repair / garage starter. Charcoal steel + safety orange on warm
   workshop gray, Oswald condensed display / IBM Plex Sans body. Industrial,
   utilitarian, a little grit. Tokens feed the CMS block library. */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap');

:root {
  --t-bg: #f4f2ee;
  --t-bg-alt: #e9e6df;
  --t-fg: #23262a;
  --t-muted: #5c6066;
  --t-brand: #d44e10;
  --t-brand-fg: #ffffff;
  --t-accent: #3e6b8c;
  --t-dark-bg: #1b1d20;
  --t-dark-fg: #f2efe9;
  --t-border: #d6d2c8;
  --t-radius: 5px;
  --t-font-display: "Oswald", "Arial Narrow", system-ui, sans-serif;
  --t-font-body: "IBM Plex Sans", system-ui, sans-serif;
  --t-maxw: 1140px;
  --t-shadow: 4px 4px 0 rgba(35, 38, 42, .14);
  --t-display-weight: 600;
  --t-display-tracking: 0.01em;
}

* { box-sizing: border-box; }
body { margin: 0; font-family: var(--t-font-body); color: var(--t-fg); background: var(--t-bg); }

/* header — riveted steel bar with a hazard-stripe underline */
.site-header {
  position: sticky; top: 0; z-index: 40;
  background: var(--t-dark-bg); color: var(--t-dark-fg);
  border-bottom: 4px solid var(--t-brand);
}
.site-header::after {
  content: ""; display: block; height: 5px;
  background: repeating-linear-gradient(135deg,
    var(--t-brand) 0 12px, var(--t-dark-bg) 12px 24px);
}
.site-header .bar {
  max-width: var(--t-maxw); margin: 0 auto; padding: 13px 24px;
  display: flex; align-items: center; gap: 28px;
}
.logo {
  font-family: var(--t-font-display); font-weight: 700; font-size: 24px;
  letter-spacing: .06em; text-transform: uppercase;
  color: var(--t-dark-fg); text-decoration: none;
}
.logo .spark { color: var(--t-brand); }
.site-nav { display: flex; gap: 24px; margin-left: auto; }
.site-nav a {
  color: #b9bcc0; text-decoration: none; font-weight: 600; font-size: 14px;
  letter-spacing: .08em; text-transform: uppercase;
}
.site-nav a:hover { color: var(--t-brand-fg); border-bottom: 2px solid var(--t-brand); }
.header-cta {
  background: var(--t-brand); color: var(--t-brand-fg);
  font-family: var(--t-font-display); font-weight: 600; font-size: 15px;
  letter-spacing: .06em; text-transform: uppercase;
  padding: 10px 20px; border-radius: var(--t-radius); text-decoration: none;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, .35);
}
.header-cta:hover { filter: brightness(1.1); transform: translate(-1px, -1px); }
@media (max-width: 760px) { .site-nav { display: none; } }

/* footer — dark steel with the same hazard stripe on top */
.site-footer { background: var(--t-dark-bg); color: var(--t-dark-fg); }
.site-footer::before {
  content: ""; display: block; height: 5px;
  background: repeating-linear-gradient(135deg,
    var(--t-brand) 0 12px, var(--t-dark-bg) 12px 24px);
}
.site-footer .inner {
  max-width: var(--t-maxw); margin: 0 auto; padding: 46px 24px;
  display: flex; flex-wrap: wrap; gap: 18px; align-items: center; justify-content: space-between;
}
.site-footer p { margin: 0; color: #93979d; font-size: 14px; }
.site-footer .foot-logo {
  font-family: var(--t-font-display); font-weight: 700; font-size: 20px;
  letter-spacing: .06em; text-transform: uppercase; color: var(--t-dark-fg);
}
.site-footer .foot-logo .spark { color: var(--t-brand); }
