:root{
    --bg:#08080a; --bg-2:#101013; --ink:#f5f2ec; --ink-dim:#a7a4a0;
    --line:#22222a; --red:#c8102e; --red-2:#8b0000; --red-hot:#ff2b3f;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html,body{background:var(--bg);color:var(--ink);font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  a{color:inherit;text-decoration:none;cursor:pointer}
  img{display:block;max-width:100%}

  /* ============ CYBER LAYER ============ */
  /* Ambient grid — very subtle, only near top */
  body::before{
    content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.5;
    background-image:linear-gradient(rgba(200,16,46,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(200,16,46,.05) 1px,transparent 1px);
    background-size:56px 56px;
    mask-image:radial-gradient(ellipse at top,black 20%,transparent 70%);
  }
  /* Global scanline overlay */
  body::after{
    content:"";position:fixed;inset:0;pointer-events:none;z-index:2;opacity:.35;
    background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,rgba(255,255,255,.015) 3px,rgba(255,255,255,.015) 4px);
    mix-blend-mode:overlay;
  }

  /* Glowing "RESTRICTED" style — reusable */
  .glow-restricted{
    color:#ffb8bf !important;
    text-shadow:
      0 0 4px rgba(255,43,63,.9),
      0 0 10px rgba(255,43,63,.65),
      0 0 22px rgba(200,16,46,.5);
    animation:glow-pulse 2.4s ease-in-out infinite;
  }
  @keyframes glow-pulse{
    0%,100%{text-shadow:0 0 4px rgba(255,43,63,.9),0 0 10px rgba(255,43,63,.55),0 0 20px rgba(200,16,46,.4)}
    50%{text-shadow:0 0 6px rgba(255,43,63,1),0 0 16px rgba(255,43,63,.85),0 0 30px rgba(200,16,46,.7)}
  }
  .glow-box{
    box-shadow:0 0 8px rgba(255,43,63,.35),0 0 20px rgba(200,16,46,.25),inset 0 0 12px rgba(255,43,63,.15) !important;
    border-color:rgba(255,43,63,.7) !important;
    animation:box-pulse 2.4s ease-in-out infinite;
  }
  @keyframes box-pulse{
    0%,100%{box-shadow:0 0 8px rgba(255,43,63,.35),0 0 18px rgba(200,16,46,.2),inset 0 0 10px rgba(255,43,63,.12)}
    50%{box-shadow:0 0 14px rgba(255,43,63,.6),0 0 30px rgba(200,16,46,.45),inset 0 0 18px rgba(255,43,63,.25)}
  }

  /* ============ TOP STRIP + CLOCKS ============ */
  .top-strip{
    background:linear-gradient(90deg,#000 0%,#4a0511 30%,#8b0000 50%,#4a0511 70%,#000 100%);
    color:#fff;padding:10px 24px;
    display:flex;align-items:center;justify-content:space-between;gap:20px;
    font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.24em;text-transform:uppercase;
    border-bottom:1px solid rgba(255,43,63,.3);
    position:relative;z-index:11;
    box-shadow:0 0 20px rgba(200,16,46,.3);
  }
  .top-strip .dot{display:inline-block;width:8px;height:8px;background:#ff2b3f;border-radius:50%;margin-right:10px;box-shadow:0 0 12px #ff2b3f,0 0 24px rgba(255,43,63,.6);animation:blink 1.4s infinite;vertical-align:middle}
  .top-strip .center{flex:1;text-align:center}
  .top-strip .clocks{display:flex;gap:22px;align-items:center;color:#f5c1c8}
  .top-strip .clocks .lbl{color:#ff9aa5;letter-spacing:.28em;margin-right:8px;text-shadow:0 0 8px rgba(255,43,63,.6)}
  .top-strip .clocks .t{color:#fff;font-weight:700}
  .top-strip .fusion-link{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;margin-right:14px;background:linear-gradient(135deg,rgba(56,240,255,.15),rgba(77,208,225,.08));border:1px solid #4DD0E1;color:#4DD0E1;text-decoration:none;letter-spacing:.22em;font-weight:700;border-radius:2px;box-shadow:0 0 10px rgba(77,208,225,.35);transition:all .18s}
  .top-strip .fusion-link:hover{background:#4DD0E1;color:#000;box-shadow:0 0 18px rgba(77,208,225,.7)}
  .top-strip .fusion-link .fdot{width:6px;height:6px;background:#4DD0E1;border-radius:50%;box-shadow:0 0 8px #4DD0E1;animation:blink 1.4s infinite}
  @keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}

  /* ============ NAV ============ */
  header.nav{position:sticky;top:0;z-index:50;background:rgba(8,8,10,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
  header.nav::after{
    content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none;
    background:linear-gradient(90deg,transparent 0%,rgba(56,240,255,0) 6%,rgba(56,240,255,.75) 50%,rgba(56,240,255,0) 94%,transparent 100%);
    box-shadow:0 0 10px rgba(56,240,255,.55),0 0 22px rgba(56,240,255,.35);
    animation:nav-hairline 7s ease-in-out infinite;
  }
  @keyframes nav-hairline{
    0%,100%{opacity:.55;filter:blur(0px)}
    50%{opacity:1;filter:blur(.4px)}
  }
  .nav-in{max-width:1440px;margin:0 auto;display:flex;align-items:center;gap:24px;padding:14px 32px}
  .brand{display:flex;align-items:center;gap:14px;position:relative}
  .brand-logo-wrap{position:relative;width:46px;height:46px;display:flex;align-items:center;justify-content:center}
  .brand-logo-wrap::before{
    content:"";position:absolute;inset:-14px;border-radius:50%;pointer-events:none;z-index:0;
    background:radial-gradient(circle,rgba(255,43,63,.55) 0%,rgba(200,16,46,.35) 30%,rgba(200,16,46,.08) 55%,transparent 75%);
    filter:blur(6px);
    animation:logo-aura 3.6s ease-in-out infinite;
  }
  @keyframes logo-aura{
    0%,100%{opacity:.55;transform:scale(.92)}
    50%{opacity:1;transform:scale(1.08)}
  }
  .brand img{width:46px;height:46px;position:relative;z-index:1;filter:drop-shadow(0 0 10px rgba(255,43,63,.6)) drop-shadow(0 0 22px rgba(200,16,46,.35))}
  .brand-txt{line-height:1.05}
  .brand-txt .t1{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;letter-spacing:.16em;font-size:16px;color:#fff}
  .brand-txt .t2{font-family:'JetBrains Mono',monospace;font-size:10px;color:#ff9aa5;letter-spacing:.26em;margin-top:4px;text-shadow:0 0 6px rgba(255,43,63,.5)}
  nav.primary{margin-left:auto;display:flex;gap:22px;flex-wrap:wrap}
  nav.primary a{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:13px;color:#d6d3ce;padding:6px 0;border-bottom:1px solid transparent;transition:.2s}
  nav.primary a:hover{color:#fff;border-bottom-color:var(--red);text-shadow:0 0 8px rgba(255,43,63,.5)}
  .login-group{display:flex;gap:8px}
  .btn{
    display:inline-flex;align-items:center;gap:10px;padding:11px 18px;
    border:1px solid var(--red);background:linear-gradient(180deg,rgba(200,16,46,.20),rgba(200,16,46,.03));
    color:#fff;font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:12px;
    transition:.15s;clip-path:polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);
    position:relative;
  }
  .btn:hover{background:var(--red);box-shadow:0 0 24px rgba(255,43,63,.6),0 0 44px rgba(200,16,46,.3);text-shadow:0 0 8px rgba(255,255,255,.4)}
  .btn.ghost{border-color:#3a3a44;background:transparent;color:#d6d3ce}
  .btn.ghost:hover{border-color:var(--red-hot);color:#fff;background:rgba(200,16,46,.08);box-shadow:0 0 16px rgba(255,43,63,.35)}

  /* ============ HERO ============ */
  .hero{position:relative;background:#000;border-bottom:1px solid var(--line);overflow:hidden;z-index:3}
  .hero-in{position:relative;z-index:2;max-width:1440px;margin:0 auto;padding:60px 32px 70px}
  .hero-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:90px;gap:10px}

  /* Cyber tile — B&W by default, color on hover, corner brackets */
  .tile{position:relative;overflow:hidden;border:1px solid #1a1a20;background:#111;transition:.4s;cursor:pointer}
  a.tile-link{display:block;text-decoration:none;color:inherit}
  a.tile-link:hover{border-color:#ff2b3f;box-shadow:0 0 0 1px rgba(255,43,63,.35), 0 8px 40px -12px rgba(255,43,63,.6)}
  a.tile-link:hover img{filter:grayscale(0) contrast(1.05) brightness(1)}
  .tile-cta{position:absolute;left:0;right:0;bottom:-42px;z-index:5;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(255,43,63,.92) 100%);color:#fff;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;text-align:center;padding:10px 8px;transition:bottom .35s cubic-bezier(.2,.7,.2,1);border-top:1px solid rgba(255,255,255,.25)}
  a.tile-link:hover .tile-cta{bottom:0}
  .tile img{width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(1) contrast(1.1) brightness(.85);transition:.5s cubic-bezier(.2,.7,.2,1)}
  /* Tiles with burned-in photo signatures: pull framing up so faces are centered and the bottom signature stays out of the crop */
  .tile.t-a img{object-position:center 25%}
  /* t-b (KINETIC): image is landscape with a burned-in caption strip at bottom ~85-100%.
     Scale up ~1.25x and anchor to top so the caption falls below the tile crop entirely. */
  .tile.t-b img{object-position:center top;transform:scale(1.25);transform-origin:center top}
  .tile:hover img{filter:grayscale(0) contrast(1.05) brightness(1) saturate(1.05)}
  .tile:hover{border-color:var(--red);box-shadow:0 0 24px rgba(255,43,63,.3),inset 0 0 20px rgba(255,43,63,.1)}
  .tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.7));pointer-events:none;transition:.4s}
  .tile:hover::after{background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.5))}
  /* Cyber corner brackets */
  .tile::before{
    content:"";position:absolute;inset:6px;pointer-events:none;z-index:3;
    background:
      linear-gradient(90deg,var(--red-hot) 0 22px,transparent 22px) 0 0/100% 2px no-repeat,
      linear-gradient(0deg,var(--red-hot) 0 22px,transparent 22px) 0 0/2px 100% no-repeat,
      linear-gradient(90deg,transparent calc(100% - 22px),var(--red-hot) calc(100% - 22px)) 100% 100%/100% 2px no-repeat,
      linear-gradient(0deg,transparent calc(100% - 22px),var(--red-hot) calc(100% - 22px)) 100% 100%/2px 100% no-repeat;
    opacity:0;transition:.35s;
    filter:drop-shadow(0 0 6px rgba(255,43,63,.8));
  }
  .tile:hover::before{opacity:1}
  /* Scanline inside tile */
  .tile > .scan{position:absolute;inset:0;pointer-events:none;z-index:2;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,rgba(255,255,255,.03) 3px,rgba(255,255,255,.03) 4px);opacity:.5;transition:.3s}
  .tile:hover > .scan{opacity:.15}

  .tile .tag{position:absolute;left:10px;bottom:10px;z-index:4;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.24em;color:#fff;background:rgba(0,0,0,.75);border:1px solid rgba(255,255,255,.18);padding:4px 8px;text-transform:uppercase;backdrop-filter:blur(4px)}
  .tile .lock{
    position:absolute;top:10px;right:10px;z-index:4;
    font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.28em;
    background:rgba(200,16,46,.15);border:1px solid rgba(255,43,63,.7);padding:4px 8px;text-transform:uppercase;
    backdrop-filter:blur(4px);
  }

  .tile-title{grid-column:1 / span 7;grid-row:1 / span 6;background:transparent;border:0;padding:70px 0 20px;display:flex;flex-direction:column;justify-content:flex-start}
  .tile-title::before,.tile-title::after{display:none}
  .kicker{display:inline-flex;align-items:center;gap:12px;font-family:'JetBrains Mono',monospace;font-size:11px;color:#ffb8bf;letter-spacing:.32em;text-transform:uppercase;padding:6px 14px;border:1px solid rgba(255,43,63,.6);background:rgba(200,16,46,.08);align-self:flex-start;box-shadow:0 0 12px rgba(200,16,46,.2),inset 0 0 8px rgba(255,43,63,.08)}
  .kicker .pulse{width:8px;height:8px;background:var(--red-hot);border-radius:50%;box-shadow:0 0 12px var(--red-hot),0 0 24px rgba(255,43,63,.4);animation:blink 1.2s infinite}
  h1.hero-title{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:clamp(38px,4.6vw,62px);line-height:1.04;letter-spacing:.01em;text-transform:uppercase;color:#fff;margin:22px 0 20px;padding-top:8px;overflow:visible}
  h1.hero-title .red{color:var(--red-hot);text-shadow:0 0 30px rgba(255,43,63,.55),0 0 60px rgba(200,16,46,.3)}
  h1.hero-title .stencil-line{display:block;position:relative;padding:2px 0 2px 24px;line-height:1.04}
  h1.hero-title .stencil-line::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;background:var(--red);box-shadow:0 0 16px var(--red),0 0 32px rgba(200,16,46,.5)}
  .hero-sub{
    color:#ece9e3;font-size:15.5px;line-height:1.6;max-width:520px;margin-bottom:22px;
    text-shadow:0 0 6px rgba(255,255,255,.18),0 0 14px rgba(255,43,63,.18);
    animation:sub-glow 4.5s ease-in-out infinite;
  }
  @keyframes sub-glow{
    0%,100%{text-shadow:0 0 5px rgba(255,255,255,.14),0 0 12px rgba(255,43,63,.14)}
    50%{text-shadow:0 0 8px rgba(255,255,255,.28),0 0 20px rgba(255,43,63,.28)}
  }
  .hero-sub b{color:#fff;font-weight:600;text-shadow:0 0 8px rgba(255,43,63,.35)}
  .hero-ctas{display:flex;gap:12px;flex-wrap:wrap}

  .t-a{grid-column:8 / span 5;grid-row:1 / span 4}
  .t-b{grid-column:8 / span 3;grid-row:5 / span 3}
  .t-c{grid-column:11 / span 2;grid-row:5 / span 3}
  .t-d{grid-column:1 / span 3;grid-row:7 / span 3}
  .t-e{grid-column:4 / span 4;grid-row:7 / span 3}
  .t-f{grid-column:8 / span 3;grid-row:8 / span 2}
  .t-g{grid-column:11 / span 2;grid-row:8 / span 2}

  /* ============ STATUS STRIP ============ */
  .status-strip{background:linear-gradient(180deg,rgba(16,16,20,.95),rgba(8,8,10,.95));border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;z-index:3}
  .status-strip::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,var(--red-hot),transparent);box-shadow:0 0 10px rgba(255,43,63,.5)}
  .ss-in{max-width:1440px;margin:0 auto;padding:22px 32px;display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
  .ss-item{display:flex;flex-direction:column;gap:6px;padding:8px 16px;border-left:2px solid var(--red);position:relative}
  .ss-item::before{content:"";position:absolute;top:0;left:-2px;width:2px;height:100%;background:var(--red);box-shadow:0 0 10px rgba(255,43,63,.6)}
  .ss-item .k{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.2em;color:var(--ink-dim);text-transform:uppercase}
  .ss-item .v{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:18px;color:#fff;letter-spacing:.06em}
  .ss-item .v.on{color:#7bff9a;text-shadow:0 0 10px rgba(123,255,154,.4)}
  .ss-item .v.hot{color:#ff2b3f;text-shadow:0 0 10px rgba(255,43,63,.6)}
  /* Duty Officer live indicator — brighter cyber blue */
  .ss-item.duty{border-left-color:#38f0ff}
  .ss-item.duty::before{background:#38f0ff;box-shadow:0 0 18px rgba(56,240,255,.95),0 0 34px rgba(56,240,255,.6);animation:duty-rail 5s ease-in-out infinite}
  @keyframes duty-rail{0%,100%{box-shadow:0 0 12px rgba(56,240,255,.7),0 0 24px rgba(56,240,255,.4)}50%{box-shadow:0 0 24px rgba(56,240,255,1),0 0 48px rgba(56,240,255,.8),0 0 80px rgba(14,165,233,.5)}}
  .ss-item .v.duty-live{
    color:#eaf9ff;display:inline-flex;align-items:center;gap:10px;
    text-shadow:0 0 12px rgba(56,240,255,.8),0 0 26px rgba(56,240,255,.5);
    animation:duty-glow 5s ease-in-out infinite;
    letter-spacing:.08em;
  }
  @keyframes duty-glow{
    0%,100%{text-shadow:0 0 10px rgba(56,240,255,.65),0 0 22px rgba(56,240,255,.4);color:#eaf9ff}
    50%{text-shadow:0 0 18px rgba(56,240,255,1),0 0 36px rgba(56,240,255,.85),0 0 70px rgba(14,165,233,.6);color:#ffffff}
  }
  .ss-item .v.duty-live .live-dot{
    width:11px;height:11px;border-radius:50%;background:#38f0ff;
    box-shadow:0 0 14px #38f0ff,0 0 28px rgba(56,240,255,.8),0 0 52px rgba(56,240,255,.5);
    animation:live-blink 2.6s ease-in-out infinite;
  }
  @keyframes live-blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}

  /* Secondary cyber-blue values on TOC + K9 */
  .ss-item .v.cyber{
    color:#d6f7ff;
    text-shadow:0 0 8px rgba(56,240,255,.55),0 0 18px rgba(56,240,255,.3);
    animation:cyber-pulse 6s ease-in-out infinite;
    letter-spacing:.06em;
  }
  @keyframes cyber-pulse{
    0%,100%{text-shadow:0 0 6px rgba(56,240,255,.4),0 0 14px rgba(56,240,255,.22)}
    50%{text-shadow:0 0 12px rgba(56,240,255,.85),0 0 26px rgba(56,240,255,.55)}
  }

  /* ============ CATEGORIES ============ */
  section.categories{background:var(--bg-2);padding:90px 32px;border-bottom:1px solid var(--line);position:relative;z-index:3}
  .sec-head{max-width:1440px;margin:0 auto 44px;display:flex;align-items:end;justify-content:space-between;gap:32px;flex-wrap:wrap}
  .sec-eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--red-hot);letter-spacing:.32em;text-transform:uppercase;margin-bottom:12px;text-shadow:0 0 8px rgba(255,43,63,.5)}
  .sec-title{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:44px;line-height:1;letter-spacing:.02em;text-transform:uppercase;color:#fff}
  .sec-title .r{color:var(--red-hot);text-shadow:0 0 24px rgba(255,43,63,.5)}
  .sec-sub{color:var(--ink-dim);max-width:520px;font-size:15px;line-height:1.65}

  .cat-grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .cat{position:relative;overflow:hidden;background:#0a0a0c;border:1px solid var(--line);min-height:360px;transition:.35s;cursor:pointer}
  .cat-img{position:absolute;inset:0;z-index:0}
  .cat-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05) brightness(.55);transition:.6s cubic-bezier(.2,.7,.2,1)}
  .cat:hover .cat-img img{filter:grayscale(0) contrast(1.05) brightness(.75) saturate(1.05)}
  .cat-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,10,.65) 0%,rgba(8,8,10,.85) 100%);transition:.4s}
  .cat:hover .cat-img::after{background:linear-gradient(180deg,rgba(8,8,10,.5) 0%,rgba(8,8,10,.92) 100%)}
  .cat-body{position:relative;z-index:2;padding:36px 30px;display:flex;flex-direction:column;justify-content:space-between;height:100%;min-height:360px}
  .cat:hover{border-color:var(--red);transform:translateY(-4px);box-shadow:0 20px 60px rgba(200,16,46,.25),0 0 40px rgba(255,43,63,.15)}
  /* Cyber corner brackets on category */
  .cat::before{
    content:"";position:absolute;inset:8px;pointer-events:none;z-index:3;
    background:
      linear-gradient(90deg,var(--red-hot) 0 26px,transparent 26px) 0 0/100% 2px no-repeat,
      linear-gradient(0deg,var(--red-hot) 0 26px,transparent 26px) 0 0/2px 100% no-repeat,
      linear-gradient(90deg,transparent calc(100% - 26px),var(--red-hot) calc(100% - 26px)) 100% 100%/100% 2px no-repeat,
      linear-gradient(0deg,transparent calc(100% - 26px),var(--red-hot) calc(100% - 26px)) 100% 100%/2px 100% no-repeat;
    opacity:0;transition:.35s;filter:drop-shadow(0 0 6px rgba(255,43,63,.8));
  }
  .cat:hover::before{opacity:1}
  /* Top red hairline */
  .cat::after{content:"";position:absolute;top:0;left:0;width:60px;height:3px;background:var(--red-hot);box-shadow:0 0 12px var(--red-hot);z-index:4;transition:.4s}
  .cat:hover::after{width:120px}

  .cat-code{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--red-hot);letter-spacing:.28em;text-transform:uppercase;margin-bottom:16px;text-shadow:0 0 8px rgba(255,43,63,.4)}
  .cat-title{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:30px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px;line-height:1.05;color:#fff}
  .cat-sub{color:#d6d3ce;font-size:14px;line-height:1.65;margin-bottom:24px}
  .cat-lock{display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:1px dashed rgba(255,255,255,.14)}
  .cat-lock .l{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.22em;text-transform:uppercase}
  .cat-lock .arrow{color:var(--red-hot);font-size:18px;text-shadow:0 0 8px rgba(255,43,63,.6);transition:.3s}
  .cat:hover .cat-lock .arrow{transform:translateX(6px)}

  /* ============ MARQUEE ============ */
  .marquee{background:#000;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;overflow:hidden;position:relative;z-index:3}
  .marquee::before,.marquee::after{content:"";position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none}
  .marquee::before{left:0;background:linear-gradient(90deg,#000,transparent)}
  .marquee::after{right:0;background:linear-gradient(-90deg,#000,transparent)}
  .marquee-track{display:flex;gap:64px;animation:scroll 55s linear infinite;white-space:nowrap;font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;letter-spacing:.24em;font-size:14px;text-transform:uppercase;color:#5f5c58}
  .marquee-track span{color:#fff}
  .marquee-track .r{color:var(--red-hot);text-shadow:0 0 10px rgba(255,43,63,.5)}
  @keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

  /* ============ K9 ============ */
  section.k9{position:relative;min-height:520px;overflow:hidden;border-bottom:1px solid var(--line);z-index:3}
  .k9-bg{position:absolute;inset:0;background:url('images/k9-hero.jpg') center/cover no-repeat;filter:grayscale(.35) contrast(1.15) brightness(.7) saturate(1.1);transition:1.2s}
  section.k9:hover .k9-bg{filter:grayscale(0) contrast(1.2) brightness(.85) saturate(1.25)}
  .k9-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,6,9,.96) 0%,rgba(6,8,11,.78) 35%,rgba(10,10,12,.35) 65%,rgba(139,0,0,.42) 100%)}
  /* K9 patch dramatic watermark — layered in the smoke area, dark so the patch dog is still visible */
  .k9-bg::before{content:"";position:absolute;top:50%;right:6%;transform:translateY(-50%);width:560px;height:560px;background:url('images/patches/csog-k9-unit-color.jpg') center/contain no-repeat;opacity:.42;filter:grayscale(.35) contrast(1.55) brightness(.45) drop-shadow(0 0 50px rgba(255,43,63,.55));mix-blend-mode:multiply;pointer-events:none;z-index:1}
  @media (max-width:900px){.k9-bg::before{width:340px;height:340px;right:-40px;opacity:.22}}
  /* TOC tile — US-CSOG fusion center (image already branded in dark blue + red) */
  .tile.toc-tile img{filter:contrast(1.08) brightness(.95) saturate(1.1)}
  .tile.toc-tile::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.35) 100%);pointer-events:none;z-index:1}
  .tile.toc-tile .tag,.tile.toc-tile .tile-cta,.tile.toc-tile .lock,.tile.toc-tile .scan{position:relative;z-index:3}
  .tile.toc-tile .tag{background:rgba(0,20,60,.85)!important;border-color:#38f0ff!important;color:#38f0ff!important;text-shadow:0 0 8px rgba(56,240,255,.6)!important}
  .k9-in{position:relative;z-index:2;max-width:1440px;margin:0 auto;padding:100px 32px;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
  .k9-title{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:clamp(36px,4.6vw,64px);line-height:.95;letter-spacing:.02em;text-transform:uppercase;color:#fff;margin:20px 0}
  .k9-title .r{color:var(--red-hot);text-shadow:0 0 24px rgba(255,43,63,.5)}
  .k9-desc{color:#d6d3ce;font-size:16px;line-height:1.65;max-width:560px;margin-bottom:28px}

  /* ============ GATE ============ */
  section.gate{background:#050506;padding:90px 32px;text-align:center;position:relative;z-index:3}
  section.gate::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:40%;height:1px;background:linear-gradient(90deg,transparent,var(--red-hot),transparent);box-shadow:0 0 12px rgba(255,43,63,.5)}
  .gate h3{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:clamp(30px,3.4vw,44px);letter-spacing:.04em;text-transform:uppercase;color:#fff;margin-bottom:14px;line-height:1.1}
  .gate h3 .r{color:var(--red-hot);text-shadow:0 0 24px rgba(255,43,63,.5)}
  .gate p{color:var(--ink-dim);max-width:640px;margin:0 auto 30px;font-size:15px;line-height:1.7}
  .gate-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

  /* ============ FOOTER ============ */
  footer{background:#030304;padding:60px 32px 30px;border-top:1px solid var(--line);position:relative;z-index:3}
  .foot-in{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
  .foot h4{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:13px;margin-bottom:14px;color:#fff}
  .foot ul{list-style:none;font-size:13px}
  .foot li{padding:5px 0;color:var(--ink-dim);font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}
  .foot .name{font-family:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;font-weight:700;letter-spacing:.16em;color:#fff;font-size:15px;margin-bottom:10px}
  .disclaim{max-width:1440px;margin:40px auto 0;padding-top:20px;border-top:1px solid var(--line);font-family:'JetBrains Mono',monospace;font-size:10px;color:#5f5c58;letter-spacing:.2em;text-transform:uppercase;text-align:center;line-height:1.9}

  @media (max-width:1100px){
    .hero-grid{grid-template-columns:repeat(6,1fr);grid-auto-rows:110px}
    .tile-title,.t-a,.t-b,.t-c,.t-d,.t-e,.t-f,.t-g{grid-column:1 / span 6;grid-row:auto}
    .t-a{min-height:280px}
    .ss-in{grid-template-columns:repeat(3,1fr)}
    .cat-grid{grid-template-columns:1fr}
    .foot-in{grid-template-columns:1fr 1fr}
    .top-strip{flex-direction:column;gap:8px;text-align:center}
    .top-strip .clocks{gap:14px}
    nav.primary{display:none}
  }

/* ============================================================
   SESSION LOGGER PANEL — visible on every public form/registration
   ============================================================ */
.session-logger{
  max-width:960px;margin:24px auto 32px;
  border:1px solid #ff2b3f;
  background:linear-gradient(135deg,rgba(15,3,5,.92) 0%,rgba(30,8,12,.85) 100%);
  padding:22px 26px 18px;
  font-family:'JetBrains Mono','SF Mono',Consolas,monospace;
  position:relative;
  box-shadow:0 0 0 1px rgba(255,43,63,.15) inset, 0 12px 40px rgba(255,43,63,.12);
}
.session-logger::before{
  content:"◈ SESSION LOGGED · DIGITAL RECORD CAPTURED";
  display:block;color:#ff2b3f;font-weight:700;font-size:12px;
  letter-spacing:.16em;margin-bottom:6px;
}
.session-logger .sl-sub{
  color:rgba(255,255,255,.55);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:16px;
}
.session-logger .sl-grid{
  display:grid;grid-template-columns:170px 1fr;gap:8px 20px;
  font-size:12.5px;color:#e6e9ee;
}
.session-logger .sl-grid dt{
  color:rgba(255,255,255,.55);letter-spacing:.12em;text-transform:uppercase;font-size:10.5px;
  align-self:center;margin:0;
}
.session-logger .sl-grid dd{
  margin:0;color:#38f0ff;font-weight:600;overflow-wrap:anywhere;
}
.session-logger .sl-grid dd[data-log="ip"],
.session-logger .sl-grid dd[data-log="session-id"]{color:#ff2b3f}
.session-logger .sl-status{
  margin-top:16px;padding-top:12px;border-top:1px dashed rgba(255,43,63,.35);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;
}
.session-logger .sl-status .sl-badge{
  color:#38f0ff;font-size:11px;letter-spacing:.14em;
}
.session-logger .sl-status .sl-stamp{
  color:#ff2b3f;font-size:11px;letter-spacing:.14em;font-weight:700;
}
.session-logger .sl-legal{
  margin-top:14px;padding:10px 12px;background:rgba(255,43,63,.06);
  border-left:2px solid #ff2b3f;
  color:rgba(255,255,255,.72);font-size:11px;line-height:1.55;
  font-family:'Inter',system-ui,sans-serif;
}
@media (max-width:640px){
  .session-logger .sl-grid{grid-template-columns:1fr;gap:2px 0}
  .session-logger .sl-grid dt{margin-top:8px}
}

/* ============================================================
   LIVE OPS CLOCK — dramatic Zulu + Local module in the top strip
   ============================================================ */
.top-strip{position:relative}
.top-strip .live-ops-clock{
  display:flex;align-items:stretch;gap:10px;
  font-family:'JetBrains Mono','SF Mono',Consolas,monospace;
}
.top-strip .live-ops-clock .loc-box{
  position:relative;
  border:1px solid rgba(255,43,63,.55);
  background:linear-gradient(180deg,rgba(20,4,8,.85) 0%,rgba(8,2,4,.95) 100%);
  padding:4px 10px 4px 26px;
  min-width:132px;
  display:flex;flex-direction:column;justify-content:center;
  box-shadow:0 0 12px rgba(255,43,63,.25) inset, 0 0 6px rgba(255,43,63,.18);
  overflow:hidden;
}
.top-strip .live-ops-clock .loc-box.cyan{
  border-color:rgba(56,240,255,.55);
  box-shadow:0 0 12px rgba(56,240,255,.22) inset, 0 0 6px rgba(56,240,255,.18);
}
/* Pulsing LIVE dot on the left edge */
.top-strip .live-ops-clock .loc-box::before{
  content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);
  width:8px;height:8px;border-radius:50%;
  background:#ff2b3f;box-shadow:0 0 8px #ff2b3f, 0 0 14px rgba(255,43,63,.6);
  animation:locPulse 1.1s ease-in-out infinite;
}
.top-strip .live-ops-clock .loc-box.cyan::before{
  background:#38f0ff;box-shadow:0 0 8px #38f0ff, 0 0 14px rgba(56,240,255,.6);
}
@keyframes locPulse{
  0%,100%{opacity:1;transform:translateY(-50%) scale(1)}
  50%{opacity:.35;transform:translateY(-50%) scale(1.35)}
}
/* Header row inside the box */
.top-strip .live-ops-clock .loc-head{
  display:flex;justify-content:space-between;align-items:baseline;gap:6px;
  font-size:8.5px;letter-spacing:.18em;
  color:rgba(255,43,63,.85);text-transform:uppercase;line-height:1;
}
.top-strip .live-ops-clock .loc-box.cyan .loc-head{color:rgba(56,240,255,.85)}
.top-strip .live-ops-clock .loc-head .loc-date{color:rgba(255,255,255,.55);font-weight:400}
/* Main time */
.top-strip .live-ops-clock .loc-time{
  display:flex;align-items:baseline;gap:3px;margin-top:1px;line-height:1;
}
.top-strip .live-ops-clock .loc-time .big{
  font-size:15px;font-weight:700;color:#fff;letter-spacing:.06em;
  text-shadow:0 0 6px rgba(255,43,63,.6);
  font-variant-numeric:tabular-nums;
}
.top-strip .live-ops-clock .loc-box.cyan .loc-time .big{text-shadow:0 0 6px rgba(56,240,255,.55)}
.top-strip .live-ops-clock .loc-time .ms{
  font-size:10px;color:#ff2b3f;font-weight:600;font-variant-numeric:tabular-nums;
  min-width:44px;
}
.top-strip .live-ops-clock .loc-box.cyan .loc-time .ms{color:#38f0ff}
/* Scanline overlay for extra "live monitor" feel */
.top-strip .live-ops-clock .loc-box::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(to bottom,
    rgba(255,255,255,.03) 0 1px, transparent 1px 3px);
  mix-blend-mode:overlay;
}
/* Day counter chip */
.top-strip .live-ops-clock .loc-daychip{
  display:flex;flex-direction:column;justify-content:center;
  border:1px solid rgba(255,255,255,.2);
  padding:3px 10px;font-size:8.5px;letter-spacing:.18em;
  color:rgba(255,255,255,.65);text-transform:uppercase;
  background:rgba(0,0,0,.5);line-height:1.3;
}
.top-strip .live-ops-clock .loc-daychip .lo-jday{color:#ff2b3f;font-weight:700;font-size:10px}
.top-strip .live-ops-clock .loc-daychip .lo-doy{color:#38f0ff;font-weight:700;font-size:9px}

@media (max-width:900px){
  .top-strip .live-ops-clock{flex-wrap:wrap;gap:6px}
  .top-strip .live-ops-clock .loc-box{min-width:110px;padding:3px 8px 3px 22px}
  .top-strip .live-ops-clock .loc-daychip{display:none}
}

/* Placeholder for documents not yet published */
.pending-doc{color:#8a8a8a;font-style:italic;cursor:not-allowed}
