/* master-forensic.css */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap');

:root {
    --bg: #0f1117;
    --s1: #171921;
    --s2: #1e2130;
    --bdr: rgba(255,255,255,.08);
    --tx: #ebedf2;
    --dm: #b0b4c4;
    --br: #f8f9fc;
    --gold: #c8a855;
    --red: #e85555;
    --amb: #e0a040;
    --grn: #40b882;
    --blu: #5a9cf0;
    
    /* Header Variables */
    --primary-nav: #86c8ff;
    --primary-2-nav: #4ea3ff;
    --accent-nav: #9be3c0;
}

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

/* Global typography override – use mockup fonts everywhere */
body, p, li, input, textarea, button, .nav-links a, .back-link, .btn-primary {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
}

h1, h2, h3, h4, h5 {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
    color: var(--br);
    font-weight: 700;
    line-height: 1.2;
}

.mono, label, .nav-brand, .nav-logo, .sub-head {
    font-family: 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

body {
    background: var(--bg);
    color: var(--tx);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

/* Intake Desk Styles */
.intake-container { max-width: 600px; width: 100%; background: var(--s1); border: 1px solid var(--bdr); border-radius: 8px; padding: 40px; margin: 40px auto; box-shadow: 0 10px 30px rgba(0,0,0,0.5); }
.sub-head { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--gold); margin-bottom: 16px; }
p { font-size: 0.9rem; color: var(--dm); margin-bottom: 24px; }
.form-group { margin-bottom: 20px; }
label { display: block; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--dm); margin-bottom: 8px; }
input, textarea { width: 100%; background: var(--bg); border: 1px solid var(--bdr); color: var(--tx); padding: 12px 16px; font-size: 0.9rem; border-radius: 4px; outline: none; transition: border 0.2s ease; }
input:focus, textarea:focus { border-color: var(--gold); }
.btn-primary { display: inline-block; width: 100%; text-align: center; background: rgba(200, 168, 85, 0.1); border: 1px solid var(--gold); color: var(--gold); padding: 14px 24px; font-size: 0.8rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; text-decoration: none; border-radius: 4px; cursor: pointer; transition: all 0.2s ease; margin-top: 10px; }
.btn-primary:hover { background: var(--gold); color: var(--bg); }
.back-link { display: inline-block; margin-top: 24px; font-size: 0.7rem; color: var(--dm); text-decoration: none; text-transform: uppercase; letter-spacing: 0.05em; transition: color 0.2s ease; }
.back-link:hover { color: var(--br); }

/* ── GLOBAL HYBRID HEADER STYLES (Cleaned & Synced to Index) ── */
.site-header { position: fixed; top: 0; left: 0; right: 0; z-index: 100; backdrop-filter: blur(14px); background: rgba(2, 6, 23, 0.95); border-bottom: 1px solid rgba(255,255,255,0.15); font-family: 'Inter', sans-serif;}
.site-header .inner { display: flex; justify-content: space-between; align-items: center; min-height: 72px; width: min(calc(100% - 32px), 1180px); margin: 0 auto; padding: 12px 0; }
.brand { display: flex; align-items: center; gap: 14px; text-decoration: none; }
.brand-mark { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; color: #0d1117; font-weight: 900; font-size: 18px; background: linear-gradient(135deg, var(--accent-nav), var(--primary-nav)); flex-shrink: 0; }
.brand-name { font-size: 15px; font-weight: 800; letter-spacing: -0.01em; color: #ffffff; }
.brand-sub { font-size: 11px; color: #cbd5e1; font-weight: 500; }

.header-nav { display: flex; gap: 24px; align-items: center; }
.header-actions { display: flex; gap: 12px; align-items: center; }

/* Buttons */
.header-actions .btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 18px; border-radius: 999px; font-weight: 600; font-size: 13px; border: 1px solid rgba(255,255,255,0.15); transition: .2s ease; cursor: pointer; text-decoration: none; color: #ffffff; }
.header-actions .btn:hover { transform: translateY(-1px); }
.header-actions .btn-primary { background: linear-gradient(135deg, var(--primary-nav), var(--primary-2-nav)); color: #08111b; border-color: transparent; }
.header-actions .btn-primary:hover { background: #a8d8ff; }
.header-actions .btn-secondary { background: rgba(255,255,255,0.04); }
.header-actions .btn-secondary:hover { border-color: #cbd5e1; }

/* Dropdowns */
.radial-menu{position:relative}.radial-toggle{display:none}
.radial-label{font-size:13px;font-weight:600;color:#cbd5e1;cursor:pointer;display:flex;align-items:center;gap:4px;user-select:none;transition:color .2s; }
.radial-label:hover{color:#ffffff}
.radial-label .chevron{font-size:10px;opacity:.8;transition:transform .2s}
.radial-toggle:checked~.radial-label{color:#ffffff}.radial-toggle:checked~.radial-label .chevron{transform:rotate(180deg)}
.nav-drop{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(-4px);background: #0f172a;border:1px solid rgba(255,255,255,0.3);border-radius:12px;padding:8px;min-width:220px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 20px 60px rgba(0,0,0,.8)}
.radial-toggle:checked~.nav-drop{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nd-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:8px;text-decoration:none;color:#cbd5e1;transition:all .15s}
.nd-item:hover{background:#1e293b;color:#ffffff}
.nd-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.nd-title{font-size:14px;font-weight:700;letter-spacing:.2px; }
.nd-sep{height:1px;background:rgba(255,255,255,0.15);margin:6px 12px}
.nd-group{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#cbd5e1;padding:10px 14px 4px}

/* Mobile Dropdown Nav Base */
.mobile-nav{display:none;position:absolute;top:100%;left:0;right:0;background: #020617;border-bottom:1px solid rgba(255,255,255,0.3);padding:1rem 1.5rem;z-index:99;flex-direction:column; max-height: calc(100vh - 80px); overflow-y: auto;}
.mobile-nav.open{display:flex}
.mobile-nav a{display:block;padding:12px 0;font-size:15px;font-weight:600;color:#cbd5e1;text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.15)}
.mobile-nav a:last-child{border-bottom:none}
.mobile-nav-divider{height:1px;background:rgba(255,255,255,0.3);margin:8px 0}
.mobile-nav-group{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fbbf24;padding:16px 0 6px}
.mobile-nav a span{font-weight:900;font-size:18px;margin-right:8px}

/* Show/Hide Triggers */
@media (min-width: 1001px) {
  .mobile-only { display: none !important; }
}
@media (max-width: 1000px) {
  .header-nav { display: none; }
  .mobile-only { display: block !important; }
}

/* MOBILE GRID MAGIC: Hamburger + Full Width Buttons */
@media (max-width: 720px) {
  .site-header .inner { 
    display: grid; 
    grid-template-columns: 1fr auto; 
    gap: 16px; 
    padding: 12px 16px; /* Bring back padding purely for mobile edges */
  }
  .brand { grid-column: 1; align-self: center; }
  .nav-toggle-btn { grid-column: 2; align-self: center; }
  
  .header-actions { 
    grid-column: 1 / -1; 
    display: flex; 
    gap: 12px; 
    width: 100%; 
  }
  .header-actions .btn { flex: 1; } 
}