/* ============================================================
   Uber Concrete — site header only, scoped for pages built with
   the Tailwind export (styles.css). Do NOT load /assets/style.css
   on those pages: its unlayered global resets (* { margin/padding },
   .grid, h1, a …) override every Tailwind @layer utility.
   ============================================================ */

@import url('/fonts/fonts.css');

.site-header {
  --ink: #0e1113;
  --green: #2fa84f;
  --green-600: #26903f;
  --font-display: "Barlow Condensed", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --font-body: "Barlow", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --wrap: 1200px;
  font-family: var(--font-body);
  line-height: 1.5;
}
.site-header *, .site-header *::before, .site-header *::after { box-sizing: border-box; margin: 0; padding: 0; }
.site-header img { display: block; max-width: 100%; }
.site-header a { color: inherit; text-decoration: none; }
.site-header svg { display: inline-block; vertical-align: middle; }

.site-header .wrap { max-width: 100%; margin: 0 auto; padding-left: 1.5rem; padding-right: 1.5rem; }

.site-header .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  border-radius: 10px; font-weight: 700; cursor: pointer; border: 1px solid transparent;
  transition: background-color .2s, color .2s, border-color .2s; text-align: center;
  font-family: var(--font-body); line-height: 1.2;
}
.site-header .btn-sm { padding: 0.625rem 1rem; font-size: 0.875rem; }
.site-header .btn-green { background: var(--green); color: #fff; }
.site-header .btn-green:hover { background: var(--green-600); }

.site-header { position: sticky; top: 0; z-index: 50; background: var(--ink); transition: background .2s, border-color .2s; border-bottom: 1px solid transparent; }
.site-header.scrolled { background: rgba(14,17,19,.95); backdrop-filter: blur(8px); border-bottom: 1px solid rgba(255,255,255,.1); }
.site-header .nav-inner { display: flex; align-items: center; justify-content: space-between; padding-top: .75rem; padding-bottom: .75rem; }
.site-header .brand { display: flex; align-items: center; gap: .625rem; flex-shrink: 0; }
.site-header .brand img { height: 44px; width: 44px; border-radius: 9999px; }
.site-header .brand-text { font-family: var(--font-display); font-size: 1.125rem; font-weight: 800; letter-spacing: -0.02em; line-height: 1; color: #fff; }
.site-header .brand-text span { color: var(--green); }
.site-header .nav-links { display: none; align-items: center; gap: 1.5rem; margin-left: 2rem; }
.site-header .nav-links a { font-family: var(--font-display); font-size: .9375rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; color: rgba(255,255,255,.7); transition: color .2s; white-space: nowrap; }
.site-header .nav-links a:hover, .site-header .nav-links a.active { color: var(--green); }
.site-header .nav-actions { display: none; align-items: center; gap: .75rem; flex-shrink: 0; margin-left: auto; }
.site-header .nav-call { display: flex; align-items: center; gap: .375rem; white-space: nowrap; font-family: var(--font-display); font-size: .9375rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; color: rgba(255,255,255,.8); }
.site-header .nav-call:hover { color: #fff; }
.site-header .nav-call svg { width: 1rem; height: 1rem; }
.site-header .nav-toggle { background: none; border: none; color: #fff; cursor: pointer; display: inline-flex; }
.site-header .nav-toggle svg { width: 1.75rem; height: 1.75rem; }
.site-header .mobile-menu { display: none; border-top: 1px solid rgba(255,255,255,.1); background: var(--ink); }
.site-header .mobile-menu.open { display: block; }
.site-header .mobile-menu nav { display: flex; flex-direction: column; padding: .75rem 20px; max-width: var(--wrap); margin: 0 auto; }
.site-header .mobile-menu a { border-bottom: 1px solid rgba(255,255,255,.06); padding: .75rem 0; font-family: var(--font-display); font-size: .9375rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: rgba(255,255,255,.85); }
@media (min-width: 1280px) {
  .site-header .nav-links, .site-header .nav-actions { display: flex; }
  .site-header .nav-toggle { display: none; }
}
