/* ============================================
   TENNESSEE ENERGY CONSULTANTS
   Design tokens
   ============================================ */

:root {
  /* Color — Tennessee Energy Consultants brand: navy + gold */
  --c-ink:        #0A1628;   /* near-black navy, darkest background */
  --c-steel:      #0F2A4A;   /* deep navy, mid-dark sections */
  --c-steel-2:    #163A63;   /* lighter navy, used in gradients */
  --c-navy:       #004080;   /* exact brand navy from the TEC logo */
  --c-accent:     #C9972E;   /* warm gold/amber — the one accent color */
  --c-paper:      #F5F1E8;   /* warm off-white, light sections */
  --c-fog:        #8FA0B8;   /* muted steel-blue-gray, secondary text/lines */
  --c-brass:      #C9972E;   /* alias of accent, used for data/gauge numbers */
  --c-ink-soft:   #0D2038;

  /* Type */
  --f-display: 'Fraunces', serif;
  --f-body: 'Inter', -apple-system, sans-serif;
  --f-mono: 'JetBrains Mono', monospace;

  /* Scale */
  --container: 1280px;
  --gutter: clamp(24px, 5vw, 72px);

  /* Motion */
  --ease: cubic-bezier(.16,.8,.24,1);
}

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

html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

body {
  font-family: var(--f-body);
  background: var(--c-ink);
  color: var(--c-paper);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button { font-family: inherit; cursor: pointer; border: none; background: none; }
ul { list-style: none; }

.mono {
  font-family: var(--f-mono);
  letter-spacing: 0.04em;
  font-size: 0.72rem;
  text-transform: uppercase;
}

.eyebrow {
  display: block;
  color: var(--c-accent);
  margin-bottom: 18px;
  font-weight: 500;
}

:focus-visible {
  outline: 2px solid var(--c-accent);
  outline-offset: 3px;
}

h1, h2, h3, h4 {
  font-family: var(--f-display);
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.08;
}

h2 {
  font-size: clamp(2rem, 4vw, 3.4rem);
  font-weight: 500;
}

h3 { font-size: 1.5rem; font-weight: 600; }
h4 { font-size: 1.2rem; font-weight: 600; font-family: var(--f-body); }

p { color: var(--c-fog); }

.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--f-mono);
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 16px 28px;
  border-radius: 2px;
  transition: all 0.25s var(--ease);
}

.btn--primary {
  background: var(--c-accent);
  color: var(--c-ink);
  font-weight: 600;
}
.btn--primary:hover { background: #ddb15a; transform: translateY(-1px); }

.btn--ghost {
  border: 1px solid rgba(245,241,232,0.25);
  color: var(--c-paper);
}
.btn--ghost:hover { border-color: var(--c-accent); color: var(--c-accent); }

.btn--ghost-light {
  border: 1px solid rgba(10,22,40,0.2);
  color: var(--c-ink);
}
.btn--ghost-light:hover { border-color: var(--c-ink); background: rgba(10,22,40,0.06); }
