/* ══ INAR GUIDE — Global Header Tokens & Styles ══════════════════════
     Mirrors the homepage design exactly. Injected into every page via
     header.php so the visual identity is consistent site-wide.
  ══════════════════════════════════════════════════════════════════════ */
  :root {
    --ig-dark:          #0f1117;
    --ig-dark-2:        #161820;
    --ig-dark-3:        #1c1e27;
    --ig-border-dark:   rgba(255,255,255,0.1);
    --ig-inv:           #f4f3f1;
    --ig-inv-muted:     #c4c6d0;
    --ig-accent:        #c2410c;
    --ig-accent-hover:  #9a3412;
    --ig-accent-bright: #ea580c;
    --font-display: 'Cabinet Grotesk', 'Arial Black', sans-serif;
    --font-body:    'Satoshi', 'Helvetica Neue', sans-serif;
    --s1:.25rem; --s2:.5rem; --s3:.75rem; --s4:1rem;
    --s5:1.25rem; --s6:1.5rem; --s8:2rem;
    --t-sm:clamp(.875rem,.8rem + .35vw,1rem);
    --t-base:clamp(1rem,.95rem + .25vw,1.125rem);
    --r-md:.5rem; --r-lg:.75rem; --r-full:9999px;
    --tr:180ms cubic-bezier(.16,1,.3,1);
    --ig-wide:1200px;
  }

  /* ── Reset basics (only what header needs) ── */
  *, *::before, *::after { box-sizing: border-box; }
  a, button { transition: color var(--tr), background var(--tr), transform var(--tr); }
  :focus-visible { outline: 2px solid var(--ig-accent); outline-offset: 3px; border-radius: var(--r-md); }

  /* ── Header shell ── */
  #ig-site-header {
    position: sticky;
    top: 0;
    z-index: 999;
    background: var(--ig-dark);
    border-bottom: 1px solid var(--ig-border-dark);
    height: 58px;
    display: flex;
    align-items: center;
    font-family: var(--font-body);
  }

  /* Hide any Blocksy header that might still render */
  .ct-header, #ct-header { display: none !important; }

  .ig-hdr-inner {
    max-width: var(--ig-wide);
    margin-inline: auto;
    padding-inline: clamp(var(--s4), 3vw, var(--s8));
    display: flex;
    align-items: center;
    gap: var(--s5);
    width: 100%;
  }

  /* ── Logo ── */
  .ig-hdr-logo {
    display: flex;
    align-items: center;
    gap: var(--s2);
    text-decoration: none;
    flex-shrink: 0;
  }
  .ig-hdr-logo-icon {
    width: 30px; height: 30px;
    background: var(--ig-accent);
    border-radius: var(--r-md);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
  }
  .ig-hdr-logo-text {
    font-family: var(--font-display);
    font-size: var(--t-base);
    font-weight: 800;
    color: var(--ig-inv);
    letter-spacing: -.01em;
    line-height: 1;
  }
  .ig-hdr-logo-text em { color: var(--ig-accent-bright); font-style: normal; }

  /* ── Search bar (header) ── */
  .ig-hdr-search {
    flex: 1;
    max-width: 340px;
    display: flex;
    align-items: center;
    background: var(--ig-dark-3);
    border: 1px solid var(--ig-border-dark);
    border-radius: var(--r-full);
    overflow: hidden;
    height: 36px;
    transition: border-color var(--tr), box-shadow var(--tr);
  }
  .ig-hdr-search:focus-within {
    border-color: var(--ig-accent-bright);
    box-shadow: 0 0 0 3px rgba(234,88,12,.18);
  }
  .ig-hdr-search input {
    flex: 1;
    background: none;
    border: none;
    outline: none;
    padding: 0 var(--s4);
    font-family: var(--font-body);
    font-size: var(--t-sm);
    /* Force light text — defeats Blocksy/browser overrides on dark bg */
    color: #f4f3f1 !important;
    -webkit-text-fill-color: #f4f3f1 !important;
    caret-color: var(--ig-accent-bright);
    min-width: 0;
    /* Remove default search-input browser chrome (cancel button etc.) */
    -webkit-appearance: none;
    appearance: none;
  }
  .ig-hdr-search input::placeholder {
    color: rgba(255,255,255,.55) !important;
    -webkit-text-fill-color: rgba(255,255,255,.55) !important;
    opacity: 1; /* Firefox needs this */
  }
  /* Autofill — keep dark bg + light text on Chrome autofill */
  .ig-hdr-search input:-webkit-autofill,
  .ig-hdr-search input:-webkit-autofill:hover,
  .ig-hdr-search input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px #1c1e27 inset !important;
    -webkit-text-fill-color: #f4f3f1 !important;
    caret-color: var(--ig-accent-bright);
  }
  .ig-hdr-search button {
    flex-shrink: 0;
    width: 38px; height: 36px;
    display: flex; align-items: center; justify-content: center;
    color: var(--ig-inv-muted);
    background: none; border: none; cursor: pointer;
  }
  .ig-hdr-search button:hover { color: var(--ig-inv); }

  /* ── Primary nav ── */
  .ig-hdr-nav {
    display: flex;
    align-items: center;
    gap: var(--s1);
    margin-left: auto;
    flex-shrink: 0;
  }
  .ig-hdr-nav a {
    font-size: var(--t-sm);
    font-weight: 500;
    color: var(--ig-inv-muted);
    padding: var(--s2) var(--s3);
    border-radius: var(--r-md);
    text-decoration: none;
    white-space: nowrap;
  }
  .ig-hdr-nav a:hover,
  .ig-hdr-nav a.ig-nav-active { color: var(--ig-inv); background: rgba(255,255,255,.07); }
  .ig-hdr-nav a.ig-nav-active { font-weight: 700; }
  .ig-hdr-cta {
    background: var(--ig-accent) !important;
    color: #fff !important;
    padding: var(--s2) var(--s5) !important;
    font-weight: 700 !important;
    border-radius: var(--r-full) !important;
  }
  .ig-hdr-cta:hover { background: var(--ig-accent-hover) !important; transform: translateY(-1px); }

  /* ── Hamburger ── */
  .ig-hdr-hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    padding: var(--s2);
    border-radius: var(--r-md);
    color: var(--ig-inv-muted);
    cursor: pointer;
    background: none; border: none;
    margin-left: auto;
  }
  .ig-hdr-hamburger span { display: block; width: 20px; height: 2px; background: currentColor; border-radius: 2px; }

  /* ── Mobile drawer ── */
  .ig-hdr-drawer {
    display: none;
    position: fixed; inset: 0;
    z-index: 1000;
    background: rgba(0,0,0,.75);
    backdrop-filter: blur(2px);
  }
  .ig-hdr-drawer.open { display: flex; justify-content: flex-end; }
  .ig-hdr-drawer-panel {
    width: min(300px, 85vw);
    background: var(--ig-dark-2);
    padding: var(--s6);
    display: flex;
    flex-direction: column;
    gap: var(--s2);
    overflow-y: auto;
  }
  .ig-hdr-drawer-close {
    align-self: flex-end;
    color: var(--ig-inv-muted);
    padding: var(--s2);
    margin-bottom: var(--s2);
    background: none; border: none; cursor: pointer;
  }
  .ig-hdr-drawer-close:hover { color: var(--ig-inv); }
  .ig-hdr-drawer-panel a {
    font-family: var(--font-body);
    font-size: var(--t-base);
    font-weight: 500;
    color: var(--ig-inv-muted);
    padding: var(--s3) var(--s4);
    border-radius: var(--r-md);
    text-decoration: none;
  }
  .ig-hdr-drawer-panel a:hover { color: var(--ig-inv); background: rgba(255,255,255,.07); }
  .ig-hdr-drawer-cta {
    margin-top: var(--s2);
    background: var(--ig-accent) !important;
    color: #fff !important;
    font-weight: 700 !important;
    text-align: center;
  }
  .ig-hdr-drawer-cta:hover { background: var(--ig-accent-hover) !important; }
  .ig-hdr-drawer-divider {
    height: 1px;
    background: var(--ig-border-dark);
    margin: var(--s2) 0;
  }

  /* ── Responsive ── */
  @media (max-width: 860px) {
    .ig-hdr-nav { display: none; }
    .ig-hdr-search { display: none; }
    .ig-hdr-hamburger { display: flex; }
  }
  @media (max-width: 480px) {
    .ig-hdr-logo-text { font-size: .9rem; }
  }