/*
  313SEC static SEO build stylesheet.
  Extracted from the former SPA index.html during the static-page migration.
  Keep visual changes here minimal; this file exists so each crawlable page can share the original design.
*/

        /* CUSTOM FONT LOADING */
        

        :root { --bg-color: #050505; --text-main: #f1f1f1; --text-dim: #c6c6c6; --text-muted: #a8a8a8; --accent: #bf00ff; --accent-glow: rgba(191, 0, 255, 0.3); --paper-line: #4a4a4a; --alert-red: #ff3333; --font-type: 'Courier Prime', monospace; --font-head: 'Oswald', sans-serif; }
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body { background-color: var(--bg-color); color: var(--text-main); font-family: var(--font-type); overflow-x: hidden; width: 100vw; min-height: 100vh; line-height: 1.6; display: flex; flex-direction: column; }
        
        /* BACKGROUNDS */
        #network-canvas { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; }
        #glitch-canvas { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 2000; opacity: 0; mix-blend-mode: exclusion; transition: opacity 0.2s ease-out; }
        .grain { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 900; opacity: 0.04; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E"); }
        .scanlines { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%); background-size: 100% 3px; pointer-events: none; z-index: 901; opacity: 0.4; }

        /* TYPE */
        h2, h3, h4 { font-family: var(--font-head); text-transform: uppercase; line-height: 1; margin-bottom: 15px; }
        
        .seo-h1 {
            font-family: var(--font-head);
            font-size: 1.1rem;
            color: var(--accent);
            margin-bottom: 15px;
            text-transform: uppercase;
            letter-spacing: 1px;
            line-height: 1.4;
        }

        p { margin-bottom: 15px; }
        .mono { font-family: var(--font-type); letter-spacing: -0.5px; }
        .text-purple { color: var(--accent); }
        .text-dim { color: var(--text-dim); }
        .redacted { background: #000; color: #000; display: inline-block; padding: 0 4px; position: relative; cursor: help; border-bottom: 1px solid #444; transition: 0.3s; }
        .redacted::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; opacity: 0.1; }
        .redacted:hover { background: transparent; color: var(--accent); text-decoration: line-through; }
        .signal-chip { display: inline-block; padding: 2px 8px; margin: 0 2px; border: 1px solid rgba(191, 0, 255, 0.45); background: rgba(191, 0, 255, 0.08); color: #fff; text-transform: uppercase; letter-spacing: 0.6px; box-shadow: inset 0 0 10px rgba(191, 0, 255, 0.08), 0 0 10px rgba(191, 0, 255, 0.12); }
        .signal-chip.subtle { text-transform: none; letter-spacing: 0.3px; font-size: 0.95em; }
        .glow-phrase { color: #fff; text-shadow: 0 0 8px rgba(191, 0, 255, 0.35), 0 0 18px rgba(191, 0, 255, 0.18); font-weight: 700; }
        .signal-underline { color: #fff; border-bottom: 1px solid var(--accent); box-shadow: inset 0 -6px 0 rgba(191, 0, 255, 0.12); padding: 0 2px; }
        .signal-key { color: var(--accent); font-weight: 700; position: relative; white-space: nowrap; }
        .signal-key::before { content: '//'; color: rgba(191, 0, 255, 0.45); margin-right: 4px; }

        /* NAV */
        nav { position: fixed; top: 0; left: 0; width: 100%; height: 70px; display: flex; justify-content: space-between; align-items: center; padding: 0 30px; z-index: 2000; background: linear-gradient(to bottom, rgba(5,5,5,1), rgba(5,5,5,0)); }
        
        .logo { 
            font-family: 'Skrappa', sans-serif; 
            font-size: 2.2rem; 
            color: #fff; 
            letter-spacing: 1px; 
            padding: 4px 10px; 
            cursor: pointer; 
            text-shadow: 0 0 10px rgba(191, 0, 255, 0.5);
        }

        .menu-btn { cursor: pointer; width: 40px; height: 30px; position: relative; z-index: 2100; }
        .menu-btn span { display: block; position: absolute; height: 2px; width: 100%; background: var(--accent); opacity: 1; left: 0; transition: .25s ease-in-out; box-shadow: 0 0 5px var(--accent); }
        .menu-btn span:nth-child(1) { top: 0px; } .menu-btn span:nth-child(2) { top: 12px; } .menu-btn span:nth-child(3) { top: 24px; }
        .menu-btn.open span:nth-child(1) { top: 12px; transform: rotate(135deg); } .menu-btn.open span:nth-child(2) { opacity: 0; left: -60px; } .menu-btn.open span:nth-child(3) { top: 12px; transform: rotate(-135deg); }
        /* PRIMARY VISIBLE NAV (desktop) */
        .nav-primary { display: flex; align-items: center; gap: 4px; margin-left: auto; margin-right: 20px; }
        .np-link { font-family: var(--font-head); font-size: 0.82rem; letter-spacing: 1px; text-transform: uppercase; color: #cfcfcf; text-decoration: none; padding: 8px 12px; border: 1px solid transparent; transition: color .2s, border-color .2s, background .2s; cursor: pointer; white-space: nowrap; }
        .np-link:hover { color: #fff; border-color: rgba(191,0,255,0.35); background: rgba(191,0,255,0.06); }
        .np-link.np-cta { color: var(--accent); border-color: var(--accent); }
        .np-link.np-cta:hover { background: var(--accent); color: #000; box-shadow: 0 0 14px rgba(191,0,255,0.4); }
        .np-link.np-breach { color: #ff7a7a; }
        .np-link.np-breach:hover { color: #fff; border-color: var(--alert-red); background: rgba(255,51,51,0.1); }
        @media (max-width: 980px) { .nav-primary { display: none; } }
        .menu-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: rgba(5, 5, 10, 0.97); backdrop-filter: blur(10px); z-index: 1900; display: flex; flex-direction: column; padding-top: 70px; opacity: 0; pointer-events: none; transition: opacity 0.3s; }
        .menu-overlay.active { opacity: 1; pointer-events: all; }
        .term-bar { display: flex; justify-content: space-between; align-items: center; padding: 6px 20px; background: var(--accent); opacity: 0; transform: translateY(-10px); transition: all 0.3s; }
        .menu-overlay.active .term-bar { opacity: 1; transform: translateY(0); }
        .term-bar-title { font-family: var(--font-type); font-size: 0.6rem; font-weight: 700; color: #000; letter-spacing: 2px; }
        .term-bar-ver { font-family: var(--font-type); font-size: 0.55rem; color: rgba(0,0,0,0.5); letter-spacing: 1px; }
        .term-nav-body { flex: 1; overflow-y: auto; padding: 10px 20px 6px; }
        .term-init { color: var(--accent); font-family: var(--font-type); font-size: 0.65rem; margin-bottom: 2px; }
        .term-init-sub { color: #333; font-family: var(--font-type); font-size: 0.6rem; margin-bottom: 8px; }
        .term-item { display: flex; align-items: center; gap: 12px; padding: 9px 14px; cursor: pointer; transition: 0.2s; border-left: 2px solid transparent; text-decoration: none; opacity: 0; transform: translateX(-10px); }
        .menu-overlay.active .term-item { opacity: 1; transform: translateX(0); }
        .term-item:hover, .term-item:focus { background: rgba(191, 0, 255, 0.06); border-left-color: var(--accent); outline: none; }
        .term-item .t-idx { font-family: var(--font-type); font-size: 0.6rem; color: var(--accent); min-width: 24px; opacity: 0.5; }
        .term-item .t-label { font-family: var(--font-head); font-size: 1rem; color: #ccc; letter-spacing: 1px; text-transform: uppercase; transition: 0.2s; }
        .term-item:hover .t-label { color: #fff; letter-spacing: 2px; }
        .term-item .t-arrow { margin-left: auto; color: var(--accent); opacity: 0; transition: 0.2s; font-size: 0.7rem; font-family: var(--font-type); }
        .term-item:hover .t-arrow { opacity: 1; }
        .term-item.ext .t-label::after { content: ' ↗'; font-size: 0.55rem; color: #444; }
        .term-item.ext:hover .t-label::after { color: var(--accent); }
        .term-item.hidden { display: none; }
        .ops-caret { margin-left: auto; color: var(--accent); font-size: 0.85rem; cursor: pointer; transition: transform 0.28s ease; user-select: none; padding: 2px 8px; line-height: 1; }
        .ops-caret:hover { color: #fff; }
        .ops-caret.rot { transform: rotate(180deg); }
        .term-subwrap { overflow: hidden; max-height: 0; transition: max-height 0.32s ease; }
        .term-subwrap.open { max-height: 280px; }
        .term-item.term-sub { padding-left: 32px; border-left: 2px solid rgba(191,0,255,0.18); margin-left: 6px; }
        .term-item.term-sub .t-idx { color: var(--accent); opacity: 0.7; min-width: 18px; }
        .term-item.term-sub .t-label { font-size: 0.92rem; color: #b8b8b8; }
        .term-item.term-sub.ext .t-label::after { content: ' ↗'; }
        .term-footer { padding: 10px 20px; border-top: 1px solid #1a1a2a; background: rgba(0,0,0,0.4); opacity: 0; transform: translateY(10px); transition: all 0.3s 0.1s; }
        .menu-overlay.active .term-footer { opacity: 1; transform: translateY(0); }
        .term-input-row { display: flex; align-items: center; gap: 6px; }
        .term-prompt { color: var(--accent); font-family: var(--font-type); font-size: 0.7rem; }
        .term-prefix { color: #333; font-family: var(--font-type); font-size: 0.6rem; }
        #navFilter { background: rgba(255,255,255,0.05); border: 1px solid #333; color: #fff; font-family: var(--font-type); font-size: 0.75rem; outline: none; flex: 1; padding: 6px 8px; border-radius: 0; transition: border-color 0.3s; }
        #navFilter:focus { border-color: var(--accent); background: rgba(255,255,255,0.08); }
        .term-cursor { color: var(--accent); font-size: 0.85rem; animation: blink 1s infinite; }
        .term-count { font-family: var(--font-type); font-size: 0.55rem; color: #333; margin-top: 4px; letter-spacing: 1px; display: flex; justify-content: space-between; }
        .term-count span { color: #222; }

        /* MAIN */
        main { position: relative; z-index: 100; flex: 1; padding-top: 100px; padding-bottom: 50px; }
        .page-view { display: none; animation: fadeIn 0.5s forwards; }
        .page-view.active { display: block; }
        @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
        .container { max-width: 1000px; margin: 0 auto; padding: 0 20px; }

        /* COMPONENTS */
        .hero-title { font-family: var(--font-head); text-transform: uppercase; line-height: 1; font-size: clamp(3.5rem, 10vw, 7rem); font-weight: 700; margin-bottom: 10px; display: flex; flex-direction: column; }
        .word-1 { -webkit-text-stroke: 2px #fff; color: transparent; margin-bottom: 5px; }
        .word-2 { background: var(--accent); color: #000; padding: 0 15px; transform: skewX(-10deg); display: inline-block; }
        
        .content-block { margin-bottom: 40px; border-bottom: 1px dashed var(--paper-line); padding-bottom: 40px; }
        .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 2px; background: var(--paper-line); border: 1px solid var(--paper-line); margin-top: 20px; }
        .file-card { background: rgba(10, 10, 10, 0.8); padding: 30px; transition: 0.3s; position: relative; border: 1px solid transparent; }
        .file-card:hover { border-color: var(--accent); background: rgba(20, 20, 20, 0.9); }

        /* Featured / hero dossier card */
        .file-card.featured {
            grid-column: 1 / -1;
            padding: 48px 40px 44px;
            background:
                linear-gradient(135deg, rgba(191, 0, 255, 0.10) 0%, rgba(10, 10, 10, 0.85) 55%),
                radial-gradient(circle at 92% 8%, rgba(191, 0, 255, 0.18), transparent 40%);
            border-left: 3px solid var(--accent);
            border-top: 1px solid rgba(191, 0, 255, 0.25);
            position: relative;
            overflow: hidden;
        }
        .file-card.featured::after {
            content: "";
            position: absolute;
            top: 0; right: 0; bottom: 0;
            width: 1px;
            background: linear-gradient(to bottom, transparent, rgba(191, 0, 255, 0.35), transparent);
        }
        .file-card.featured:hover { background:
                linear-gradient(135deg, rgba(191, 0, 255, 0.16) 0%, rgba(20, 20, 20, 0.9) 55%),
                radial-gradient(circle at 92% 8%, rgba(191, 0, 255, 0.24), transparent 40%);
            border-left-color: var(--accent);
            box-shadow: inset 0 0 60px rgba(191, 0, 255, 0.08);
        }
        .file-card.featured .hero-flag {
            font-family: var(--font-type);
            font-size: 0.7rem;
            letter-spacing: 3px;
            color: var(--accent);
            text-transform: uppercase;
            margin-bottom: 18px;
            opacity: 0.85;
        }
        .file-card.featured .hero-tag {
            border-color: var(--accent);
            color: var(--accent);
        }
        .file-card.featured .hero-pulse {
            color: var(--accent);
            font-size: 0.72rem;
            letter-spacing: 2px;
        }
        .file-card.featured .hero-title {
            font-size: 1.7rem;
            line-height: 1.18;
            margin: 14px 0 18px;
            letter-spacing: 0.5px;
        }
        .file-card.featured .hero-summary {
            font-size: 0.95rem;
            line-height: 1.7;
            color: #c0c0c0;
            margin-bottom: 28px;
            max-width: 760px;
        }
        .file-card.featured .hero-btn {
            margin-top: 0;
            font-size: 0.85rem;
            padding: 12px 22px;
            display: inline-block;
            letter-spacing: 2px;
            border-color: var(--accent);
            color: var(--accent);
        }
        .file-card.featured .hero-btn:hover {
            background: var(--accent);
            color: #050505;
            box-shadow: 0 0 24px rgba(191, 0, 255, 0.5);
        }
        @media (max-width: 600px) {
            .file-card.featured { padding: 32px 24px; }
            .file-card.featured .hero-title { font-size: 1.3rem; }
            .file-card.featured .hero-summary { font-size: 0.85rem; }
            .file-card.featured .blog-meta { flex-wrap: wrap; }
            .file-card.featured .blog-meta > span { white-space: nowrap; }
        }
        .btn { margin-top: 30px; display: inline-block; border: 1px solid var(--accent); color: var(--accent); padding: 15px 30px; text-transform: uppercase; text-decoration: none; font-weight: bold; transition: 0.3s; cursor: pointer; background: rgba(191, 0, 255, 0.05); }
        .btn:hover { background: var(--accent); color: #000; box-shadow: 0 0 15px var(--accent); }
        .hero-actions { margin-top: 40px; display: flex; gap: 14px; flex-wrap: wrap; align-items: center; }
        .hero-actions .btn { margin-top: 0; display: inline-flex; align-items: center; justify-content: center; min-height: 47px; line-height: 1; box-sizing: border-box; }
        .hero-actions .breach-cta { border-color: var(--alert-red); color: var(--alert-red); background: rgba(255,51,51,0.06); }
        .hero-actions .breach-cta:hover { background: var(--alert-red); color: #000; box-shadow: 0 0 15px var(--alert-red); }
        .blog-meta { font-size: 0.8rem; color: var(--text-dim); margin-bottom: 10px; display: flex; gap: 10px; }
        .blog-tag { border: 1px solid var(--text-dim); padding: 2px 6px; border-radius: 2px; }
        
        /* SERVICE LISTS */
        .service-list { list-style: none; margin-top: 20px; border-top: 1px dotted #333; padding-top: 15px; }
        .service-list li { position: relative; padding-left: 15px; margin-bottom: 8px; font-size: 0.85rem; color: #aaa; }
        .service-list li::before { content: '>'; position: absolute; left: 0; color: var(--accent); font-weight: bold; }
        .founder-file { background: rgba(10, 10, 10, 0.6); border: 1px solid var(--accent); padding: 40px; position: relative; margin-bottom: 40px; }
        .founder-file::before { content: 'TOP SECRET'; position: absolute; top: -10px; right: 20px; background: var(--bg-color); color: var(--accent); padding: 0 10px; font-family: var(--font-head); border: 1px solid var(--accent); font-size: 0.8rem; }

        /* FOOTER */
        #global-footer { width: 100%; padding: 40px 20px; background: rgba(5, 5, 5, 0.9); border-top: 1px solid var(--paper-line); display: none; flex-direction: column; justify-content: center; align-items: center; margin-top: auto; position: relative; z-index: 150; }
        .footer-logos { display: flex; gap: 40px; flex-wrap: wrap; justify-content: center; align-items: center; margin-bottom: 30px; }
        .footer-legal { font-size: 0.75rem; color: var(--text-dim); text-align: center; letter-spacing: 1px; line-height: 1.8; margin-top: 20px;}
        .accred-logo { height: 60px; width: auto; opacity: 0.9; transition: 0.3s; cursor: pointer; }
        .accred-logo:hover { opacity: 1; transform: scale(1.05); box-shadow: 0 0 15px rgba(255, 255, 255, 0.1); }

        /* SYSTEM SCANNER UI */
        .scanner-box { font-family: var(--font-type); background: rgba(0,0,0,0.8); border: 1px solid #333; padding: 15px; max-width: 350px; margin-bottom: 30px; display:inline-block; text-align: left; }
        .scan-line { font-size: 0.8rem; margin-bottom: 5px; opacity: 0.8; display: flex; justify-content: space-between; align-items: center; }
        .scan-status { font-weight: bold; }
        .scan-status.pass { color: #00ff00; }
        .scan-status.fail { color: var(--alert-red); }
        .scan-header { border-bottom: 1px solid var(--accent); margin-bottom: 10px; color: var(--accent); font-weight: bold; font-size: 0.9rem; }

        /* GLITCH UI */
        .terminal-popup { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%; max-width: 450px; background: #000; border: 2px solid var(--accent); box-shadow: 0 0 30px var(--accent); z-index: 3000; display: none; opacity: 0; font-family: var(--font-type); }
        .popup-active { display: block; animation: popIn 0.1s forwards; }
        @keyframes popIn { 0% { opacity: 0; transform: translate(-50%, -40%) scaleY(0.1); } 100% { opacity: 1; transform: translate(-50%, -50%) scaleY(1); } }
        .term-header { background: var(--accent); color: #fff; padding: 5px 10px; font-weight: bold; display: flex; justify-content: space-between; }
        .term-body { padding: 20px; color: var(--accent); }
        .term-btn { width: 100%; background: transparent; border: 1px solid var(--accent); color: var(--accent); padding: 10px; cursor: pointer; font-family: var(--font-type); text-transform: uppercase; font-weight: bold; }
        .term-btn:hover { background: var(--accent); color: #000; }
        .blink { animation: blink 1s infinite; }
        @keyframes blink { 0%, 100% {opacity: 1;} 50% {opacity: 0;} }
        .system-crash { animation: tear 0.2s steps(3) infinite; filter: contrast(150%) brightness(120%); }
        @keyframes tear { 0% { clip-path: inset(0 0 0 0); transform: translate(0,0); } 50% { clip-path: inset(50% 0 10% -5px); transform: translate(5px, -2px); } 100% { clip-path: inset(0 0 0 0); transform: translate(0,0); } }
        
        /* UPDATED TRIGGER ZONE: FORCES SCROLL */
        .trigger-zone { 
            min-height: 100vh; /* KEY FIX: Forces page to be taller than screen */
            margin-top: 100px; 
            display: flex; 
            flex-direction: column; 
            align-items: center; 
            justify-content: center; 
            opacity: 0.6; 
            cursor: pointer; /* Suggests interactivity */
        }
        
        input, textarea { border-radius: 0; outline: none; border:1px solid #333; background:rgba(255,255,255,0.05); color:#fff; padding:15px; width:100%; font-family:var(--font-type); }
        input:focus, textarea:focus { border-color: var(--accent); box-shadow: 0 0 8px var(--accent-glow); }

        /* BOOKING BUTTON */
        .booking-btn {
            position: fixed;
            bottom: 30px;
            right: 30px;
            z-index: 1800;
            background: #000;
            border: 1px solid var(--accent);
            color: #ffffff; 
            font-family: var(--font-head);
            padding: 12px 25px;
            text-decoration: none;
            text-transform: uppercase;
            font-size: 1rem;
            letter-spacing: 1px;
            display: flex;
            align-items: center;
            gap: 10px;
            transition: 0.3s;
            box-shadow: 0 0 15px rgba(0,0,0,0.8);
        }
        .booking-btn::before {
            content: '';
            display: inline-block;
            width: 8px;
            height: 8px;
            background: #00ff00;
            border-radius: 50%;
            animation: pulse 2s infinite;
        }
        .booking-btn:hover {
            background: var(--accent);
            color: #000;
            box-shadow: 0 0 20px var(--accent-glow);
            transform: translateY(-2px);
        }
        @keyframes pulse { 0% { opacity: 1; box-shadow: 0 0 0 0 rgba(0, 255, 0, 0.7); } 70% { opacity: 0.5; box-shadow: 0 0 0 10px rgba(0, 255, 0, 0); } 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(0, 255, 0, 0); } }
        

        /* PRICING / PROCUREMENT PAGE */
        .pricing-header { text-align: center; margin-bottom: 50px; }
        .pricing-toggle { display: flex; align-items: center; justify-content: center; gap: 15px; margin: 30px 0 40px; }
        .pricing-toggle span { font-family: var(--font-type); font-size: 0.85rem; color: var(--text-dim); transition: color 0.3s; cursor: pointer; }
        .pricing-toggle span.active { color: #fff; }
        .toggle-switch { width: 48px; height: 24px; background: #222; border: 1px solid var(--accent); border-radius: 12px; cursor: pointer; position: relative; transition: 0.3s; }
        .toggle-switch::after { content: ''; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; background: var(--accent); border-radius: 50%; transition: transform 0.3s; box-shadow: 0 0 8px var(--accent-glow); }
        .toggle-switch.annual::after { transform: translateX(24px); }
        .save-tag { font-family: var(--font-type); font-size: 0.7rem; background: var(--accent); color: #000; padding: 2px 8px; font-weight: bold; letter-spacing: 1px; }
        .pricing-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; background: var(--paper-line); border: 1px solid var(--paper-line); margin-bottom: 50px; }
        .price-card { background: rgba(10, 10, 10, 0.85); padding: 30px 25px; position: relative; border: 1px solid transparent; transition: 0.3s; display: flex; flex-direction: column; }
        .price-card:hover { border-color: var(--accent); background: rgba(20, 20, 20, 0.95); }
        .price-card.featured { border-color: var(--accent); background: rgba(30, 10, 40, 0.6); }
        .price-card.featured::before { content: 'RECOMMENDED'; position: absolute; top: 0; right: 0; background: var(--accent); color: #000; font-family: var(--font-type); font-size: 0.65rem; padding: 3px 10px; font-weight: bold; letter-spacing: 1px; }
        .price-card-level { font-family: var(--font-type); font-size: 0.75rem; color: var(--text-dim); margin-bottom: 8px; }
        .price-card-name { font-family: var(--font-head); font-size: 1.4rem; color: #fff; text-transform: uppercase; margin-bottom: 4px; letter-spacing: 1px; }
        .price-card-tagline { font-family: var(--font-type); font-size: 0.8rem; color: var(--text-dim); margin-bottom: 20px; min-height: 36px; }
        .price-card-amount { font-family: var(--font-head); font-size: 2.4rem; color: #fff; line-height: 1; margin-bottom: 2px; }
        .price-card-amount .was { font-size: 1rem; color: var(--text-dim); text-decoration: line-through; display: none; margin-right: 8px; }
        .price-card-amount .was.show { display: inline; }
        .price-card-period { font-family: var(--font-type); font-size: 0.75rem; color: var(--text-dim); margin-bottom: 5px; }
        .price-card-endpoints { font-family: var(--font-type); font-size: 0.75rem; color: var(--accent); margin-bottom: 20px; }
        .price-card-divider { height: 1px; background: var(--paper-line); margin: 0 0 20px; }
        .price-feature-list { list-style: none; margin-bottom: 25px; flex-grow: 1; }
        .price-feature-list li { font-family: var(--font-type); font-size: 0.8rem; padding: 4px 0 4px 18px; position: relative; color: #aaa; }
        .price-feature-list li::before { content: '>'; position: absolute; left: 0; color: var(--accent); font-weight: bold; }
        .price-feature-list li.disabled { color: #444; }
        .price-feature-list li.disabled::before { color: #333; content: '\2014'; }
        .price-cta { display: block; width: 100%; padding: 12px; text-align: center; border: 1px solid var(--accent); color: var(--accent); background: rgba(191, 0, 255, 0.05); font-family: var(--font-head); font-size: 0.9rem; text-transform: uppercase; letter-spacing: 2px; text-decoration: none; cursor: pointer; transition: 0.3s; }
        .price-cta:hover { background: var(--accent); color: #000; box-shadow: 0 0 15px var(--accent-glow); }
        .price-card.featured .price-cta { background: var(--accent); color: #000; }
        .price-card.featured .price-cta:hover { box-shadow: 0 0 20px var(--accent-glow); }
        .sprint-cta-row { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; margin-top: 16px; }
        .sprint-cta-row .price-cta { width: auto; display: inline-block; }
        .buy-cta { background: var(--accent); color: #000; border-color: var(--accent); font-weight: 700; box-shadow: 0 0 12px var(--accent-glow); }
        .buy-cta:hover { background: var(--accent); color: #000; box-shadow: 0 0 22px var(--accent); }
        .buy-cta .lock { font-size: 0.78rem; margin-right: 6px; opacity: 0.85; }
        .secure-note { font-family: var(--font-type); font-size: 0.7rem; letter-spacing: 1px; color: var(--text-dim); margin-top: 10px; }
        .addon-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 2px; background: var(--paper-line); border: 1px solid var(--paper-line); margin-top: 20px; }
        .addon-item { background: rgba(10, 10, 10, 0.8); padding: 22px; transition: 0.3s; border: 1px solid transparent; }
        .addon-item:hover { border-color: var(--accent); }
        .addon-item-name { font-family: var(--font-head); font-size: 0.95rem; color: #fff; text-transform: uppercase; margin-bottom: 4px; }
        .addon-item-price { font-family: var(--font-type); font-size: 0.85rem; color: var(--accent); margin-bottom: 8px; }
        .addon-item-desc { font-family: var(--font-type); font-size: 0.75rem; color: var(--text-dim); line-height: 1.5; }
        .compare-wrap { overflow-x: auto; margin-top: 20px; }
        .compare-tbl { width: 100%; border-collapse: collapse; font-family: var(--font-type); font-size: 0.8rem; }
        .compare-tbl th { font-family: var(--font-head); font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1px; padding: 12px 10px; text-align: center; color: #fff; background: rgba(10, 10, 10, 0.9); border-bottom: 2px solid var(--accent); }
        .compare-tbl th:first-child { text-align: left; }
        .compare-tbl th.ft { background: rgba(191, 0, 255, 0.08); }
        .compare-tbl td { padding: 10px; border-bottom: 1px solid #222; text-align: center; color: #aaa; }
        .compare-tbl td:first-child { text-align: left; color: var(--text-dim); }
        .compare-tbl td.ft { background: rgba(191, 0, 255, 0.03); }
        .compare-tbl .ck { color: var(--accent); font-weight: bold; }
        .compare-tbl .na { color: #333; }
        .compare-tbl tr:hover td { background: rgba(191, 0, 255, 0.02); }
        .faq-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 2px; background: var(--paper-line); border: 1px solid var(--paper-line); margin-top: 20px; }
        .faq-item { background: rgba(10, 10, 10, 0.8); padding: 22px; }
        .faq-q { font-family: var(--font-head); font-size: 0.9rem; color: #fff; text-transform: uppercase; margin-bottom: 8px; }
        .faq-a { font-family: var(--font-type); font-size: 0.8rem; color: var(--text-dim); line-height: 1.6; }
        /* CASE STUDY CARDS */
        .case-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(420px, 1fr)); gap: 2px; background: var(--paper-line); border: 1px solid var(--paper-line); margin-top: 20px; }
        .case-card { background: rgba(10, 10, 10, 0.8); padding: 0; transition: 0.3s; position: relative; border: 1px solid transparent; overflow: hidden; cursor: pointer; text-decoration: none; display: block; }
        .case-card:hover { border-color: var(--accent); background: rgba(20, 20, 20, 0.9); }
        .case-card-inner { padding: 30px; }
        .case-card-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 16px; }
        .case-card-tags { display: flex; gap: 8px; flex-wrap: wrap; }
        .case-tag { font-family: var(--font-type); font-size: 0.7rem; letter-spacing: 1px; text-transform: uppercase; border: 1px solid var(--text-dim); color: var(--text-dim); padding: 2px 8px; transition: 0.3s; }
        .case-card:hover .case-tag { border-color: var(--accent); color: var(--accent); }
        .case-tag-sector { border-color: rgba(0, 255, 136, 0.4); color: rgba(0, 255, 136, 0.7); }
        .case-card:hover .case-tag-sector { border-color: rgba(0, 255, 136, 0.7); color: rgba(0, 255, 136, 1); }
        .case-card-id { font-family: var(--font-type); font-size: 0.75rem; color: var(--text-dim); }
        .case-card h3 { font-family: var(--font-head); font-size: 1.3rem; color: #fff; text-transform: uppercase; margin-bottom: 8px; line-height: 1.2; letter-spacing: 0.5px; }
        .case-card-summary { font-family: var(--font-type); font-size: 0.85rem; color: var(--text-dim); line-height: 1.6; margin-bottom: 20px; }
        .case-card-metrics { display: flex; gap: 24px; border-top: 1px dashed #333; padding-top: 16px; margin-bottom: 16px; }
        .case-metric { display: flex; flex-direction: column; gap: 2px; }
        .case-metric-val { font-family: var(--font-head); font-size: 1.2rem; color: var(--accent); line-height: 1; }
        .case-metric-label { font-family: var(--font-type); font-size: 0.65rem; color: var(--text-dim); letter-spacing: 0.5px; text-transform: uppercase; }
        .case-card-cta { display: flex; align-items: center; gap: 8px; font-family: var(--font-head); font-size: 0.85rem; color: var(--accent); text-transform: uppercase; letter-spacing: 1px; transition: 0.3s; }
        .case-card:hover .case-card-cta { letter-spacing: 2px; }
        .case-card-cta::after { content: '→'; transition: transform 0.3s; }
        .case-card:hover .case-card-cta::after { transform: translateX(4px); }
        .case-card-accent { position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: var(--accent); transform: scaleX(0); transform-origin: left; transition: transform 0.4s ease; }
        .case-card:hover .case-card-accent { transform: scaleX(1); }
        @media (max-width: 500px) { .case-grid { grid-template-columns: 1fr; } .case-card-metrics { flex-wrap: wrap; gap: 16px; } }

        @media (max-width: 900px) { .pricing-grid-3 { grid-template-columns: 1fr; } }

        @media (max-width: 768px) {
            .booking-btn { bottom: 20px; right: 20px; font-size: 0.85rem; padding: 10px 15px; }
        }
    

        /* SIGNAL WIRE / MICROBLOG */
        .intel-shell { border: 1px solid rgba(191, 0, 255, 0.18); background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.28)); box-shadow: 0 0 35px rgba(191, 0, 255, 0.08); }
        .intel-shell-top { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.7fr); gap: 18px; padding: 24px; border-bottom: 1px solid rgba(191, 0, 255, 0.12); }
        .intel-lead p { margin-bottom: 0; }
        .intel-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
        .intel-stat { border: 1px solid rgba(191, 0, 255, 0.18); background: rgba(191, 0, 255, 0.06); padding: 14px; min-height: 90px; }
        .intel-stat-value { display: block; font-family: var(--font-head); font-size: 1.8rem; line-height: 1; color: #fff; margin-bottom: 8px; }
        .intel-stat-label { display: block; font-size: 0.72rem; letter-spacing: 1px; color: var(--text-dim); text-transform: uppercase; }
        .intel-controls { padding: 24px 24px 14px; }
        .intel-tabs { display: flex; gap: 12px; flex-wrap: wrap; }
        .intel-tab-btn { border: 1px solid rgba(191, 0, 255, 0.2); background: rgba(255,255,255,0.02); color: #ddd; font-family: var(--font-type); padding: 11px 16px; text-transform: uppercase; letter-spacing: 1px; cursor: pointer; transition: all 0.25s ease; }
        .intel-tab-btn:hover, .intel-tab-btn.active { color: #fff; border-color: rgba(191, 0, 255, 0.45); background: rgba(191, 0, 255, 0.12); box-shadow: inset 0 0 14px rgba(191, 0, 255, 0.08), 0 0 18px rgba(191, 0, 255, 0.08); }
        .intel-tab-meta { margin-top: 14px; display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
        .intel-tab-panels { padding: 0 24px 24px; }
        .intel-panel { display: none; }
        .intel-panel.active { display: block; }
        .signal-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 320px); gap: 16px; align-items: end; margin-bottom: 20px; }
        .signal-filter-wrap { display: flex; flex-direction: column; gap: 10px; }
        .signal-filter-row { display: flex; gap: 10px; flex-wrap: wrap; }
        .filter-chip-btn { border: 1px solid rgba(191, 0, 255, 0.18); background: rgba(255,255,255,0.02); color: #ddd; padding: 8px 12px; font-family: var(--font-type); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.8px; cursor: pointer; transition: all 0.2s ease; }
        .filter-chip-btn:hover, .filter-chip-btn.active { color: #fff; border-color: rgba(191, 0, 255, 0.45); background: rgba(191, 0, 255, 0.14); }
        .signal-search-wrap label { display: block; margin-bottom: 8px; font-size: 0.72rem; }
        .signal-search-wrap input { width: 100%; background: rgba(0,0,0,0.55); border: 1px solid rgba(191, 0, 255, 0.18); color: #fff; padding: 12px 14px; font-family: var(--font-type); }
        .signal-search-wrap input:focus { outline: none; border-color: rgba(191, 0, 255, 0.5); box-shadow: 0 0 0 1px rgba(191, 0, 255, 0.18), 0 0 18px rgba(191, 0, 255, 0.08); }
        .signal-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 18px; }
        .signal-card { position: relative; border: 1px solid rgba(191, 0, 255, 0.16); background: linear-gradient(180deg, rgba(255,255,255,0.025), rgba(0,0,0,0.32)); padding: 18px; overflow: hidden; transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease; }
        .signal-card::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 3px; background: rgba(191, 0, 255, 0.35); }
        .signal-card:hover { transform: translateY(-3px); border-color: rgba(191, 0, 255, 0.42); box-shadow: 0 10px 30px rgba(191, 0, 255, 0.08); }
        .signal-card-head { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; margin-bottom: 12px; }
        .signal-card-meta { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
        .signal-type, .signal-pill { display: inline-flex; align-items: center; border: 1px solid rgba(191, 0, 255, 0.16); background: rgba(255,255,255,0.03); padding: 5px 8px; font-size: 0.68rem; line-height: 1; text-transform: uppercase; letter-spacing: 0.8px; }
        .signal-pill { color: #bbb; }
        .signal-type { color: #fff; }
        .severity-badge { padding: 6px 9px; font-size: 0.68rem; text-transform: uppercase; letter-spacing: 1px; border: 1px solid; white-space: nowrap; }
        .severity-low { border-color: rgba(79, 208, 144, 0.4); color: #97f0bf; background: rgba(79, 208, 144, 0.08); }
        .severity-medium { border-color: rgba(247, 193, 64, 0.35); color: #f7d56e; background: rgba(247, 193, 64, 0.08); }
        .severity-high { border-color: rgba(255, 111, 97, 0.35); color: #ff9d92; background: rgba(255, 111, 97, 0.08); }
        .severity-critical { border-color: rgba(255, 51, 51, 0.45); color: #ff7f7f; background: rgba(255, 51, 51, 0.12); box-shadow: 0 0 16px rgba(255, 51, 51, 0.1); }
        .signal-card h3 { margin-bottom: 12px; font-size: 1.25rem; }
        .signal-card p { margin-bottom: 0; }
        .signal-split { display: grid; gap: 10px; margin-top: 16px; }
        .signal-note { border-left: 2px solid rgba(191, 0, 255, 0.35); padding-left: 12px; }
        .signal-note-label { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 1px; color: var(--accent); margin-bottom: 4px; display: block; }
        .signal-status-bar { margin-top: 14px; display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
        .signal-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
        .mini-btn { border: 1px solid rgba(191, 0, 255, 0.22); background: rgba(255,255,255,0.03); color: #fff; padding: 10px 12px; font-family: var(--font-type); font-size: 0.74rem; letter-spacing: 0.8px; text-transform: uppercase; cursor: pointer; transition: all 0.2s ease; }
        .mini-btn:hover { border-color: rgba(191, 0, 255, 0.48); background: rgba(191, 0, 255, 0.12); }
        .mini-btn[disabled] { cursor: not-allowed; opacity: 0.45; }
        .signal-drawer { max-height: 0; overflow: hidden; opacity: 0; transition: max-height 0.35s ease, opacity 0.25s ease, margin 0.25s ease, padding 0.25s ease; margin-top: 0; padding-top: 0; }
        .signal-card.open .signal-drawer { max-height: 520px; opacity: 1; margin-top: 16px; padding-top: 16px; border-top: 1px dashed rgba(191, 0, 255, 0.18); }
        .drawer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
        .drawer-box { border: 1px solid rgba(191, 0, 255, 0.16); background: rgba(0,0,0,0.22); padding: 12px; }
        .drawer-box ul { list-style: none; margin: 0; padding: 0; }
        .drawer-box li { padding: 4px 0; font-size: 0.85rem; border-bottom: 1px dotted rgba(255,255,255,0.08); }
        .drawer-box li:last-child { border-bottom: none; }
        .drawer-box-title { display: block; font-size: 0.7rem; margin-bottom: 8px; color: var(--accent); text-transform: uppercase; letter-spacing: 1px; }
        .drawer-empty { color: var(--text-dim); font-size: 0.85rem; }
        .signal-empty { border: 1px dashed rgba(191, 0, 255, 0.22); padding: 24px; text-align: center; color: var(--text-dim); }
        .homepage-signal-block { margin-top: 70px; padding-top: 10px; }
        .home-signal-shell { border: 1px solid rgba(191, 0, 255, 0.18); background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.28)); padding: 22px; box-shadow: 0 0 24px rgba(191, 0, 255, 0.06); }
        .home-signal-head { display: flex; justify-content: space-between; gap: 20px; align-items: end; flex-wrap: wrap; margin-bottom: 18px; }
        .home-signal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
        .home-signal-card { border: 1px solid rgba(191, 0, 255, 0.14); background: rgba(255,255,255,0.02); padding: 16px; transition: transform 0.22s ease, border-color 0.22s ease; }
        .home-signal-card:hover { transform: translateY(-3px); border-color: rgba(191, 0, 255, 0.35); }
        .home-signal-card h4 { font-size: 1.05rem; margin-bottom: 10px; }
        .home-signal-card p { font-size: 0.88rem; margin-bottom: 0; }
        .home-signal-footer { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-top: 18px; padding-top: 16px; border-top: 1px dashed rgba(191, 0, 255, 0.18); flex-wrap: wrap; }
        .home-signal-link { margin-top: 14px; display: inline-block; font-size: 0.75rem; color: #fff; text-decoration: none; text-transform: uppercase; letter-spacing: 0.8px; border-bottom: 1px solid rgba(191, 0, 255, 0.35); }
        @media (max-width: 980px) {
            .intel-shell-top, .signal-controls { grid-template-columns: 1fr; }
            .home-signal-grid, .drawer-grid { grid-template-columns: 1fr; }
        }
        @media (max-width: 700px) {
            .intel-stats { grid-template-columns: 1fr; }
            .signal-grid { grid-template-columns: 1fr; }
            .intel-controls, .intel-tab-panels, .intel-shell-top, .home-signal-shell { padding-left: 16px; padding-right: 16px; }
        }

        /* SIGNAL WIRE TICKER */
        .signal-ticker-banner { margin: 0 0 28px; border: 1px solid rgba(182, 146, 212, 0.42); background: #6e3ca3; color: #fff; overflow: hidden; box-shadow: none; }
        .signal-ticker-top { display: flex; justify-content: space-between; gap: 14px; align-items: center; padding: 8px 14px; background: rgba(0,0,0,0.16); border-bottom: 1px solid rgba(255,255,255,0.14); }
        .signal-ticker-label { font-family: var(--font-type); font-size: 0.74rem; letter-spacing: 1.3px; text-transform: uppercase; color: #fff; }
        .signal-ticker-status { font-family: var(--font-type); font-size: 0.68rem; letter-spacing: 1px; color: rgba(255,255,255,0.78); text-transform: uppercase; }
        .signal-ticker-window { position: relative; white-space: nowrap; overflow: hidden; padding: 12px 0; }
        .signal-ticker-track { display: inline-flex; align-items: center; gap: 34px; min-width: max-content; animation: signalTicker 42s linear infinite; }
        @media (hover: hover) and (pointer: fine) {
            .signal-ticker-banner:hover .signal-ticker-track { animation-play-state: paused; }
        }
        .signal-ticker-item { display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-type); font-size: 0.88rem; color: #fff; }
        .signal-ticker-item strong { color: #fff; }
        .signal-ticker-pill { border: 1px solid rgba(255,255,255,0.32); background: rgba(255,255,255,0.10); padding: 3px 7px; font-size: 0.68rem; text-transform: uppercase; letter-spacing: 1px; }
        .signal-ticker-open { display: inline-flex; align-items: center; text-decoration: none; color: #fff; border-left: 1px solid rgba(255,255,255,0.22); padding-left: 12px; text-transform: uppercase; letter-spacing: 1px; font-size: 0.72rem; }
        
        @media (hover: none), (pointer: coarse) {
            .signal-ticker-banner { touch-action: pan-y; }
            .signal-ticker-track { animation-play-state: running !important; }
        }
        @keyframes signalTicker { from { transform: translateX(0); } to { transform: translateX(-50%); } }

    
/* 313SEC WORDMARK FONT FIX */
/* Brand display font: keep the existing Skrappa font file on the live site root.
   The build references both the original filename and the lowercase fallback so Netlify/Linux paths resolve correctly. */
@font-face {
  font-family: 'Skrappa';
  src:
    local('Skrappa'),
    local('WTSkrappa-WideItalicTight'),
    url('/WTSkrappa-WideItalicTight.otf') format('opentype'),
    url('/wtskrappa-wideitalictight.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

.logo,
#nav-logo,
.brand,
.brand-logo,
.cs-brand-logo,
.logo-wordmark,
.site-logo,
.line1 {
  font-family: 'Skrappa', 'Oswald', 'Barlow Condensed', 'Arial Narrow', sans-serif !important;
  font-weight: normal !important;
  letter-spacing: 1px;
}

.section-subtitle {
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  color: var(--dim, #666);
  margin: -0.4em 0 1em 0;
  text-transform: uppercase;
  opacity: 0.7;
}

/* ═══ FREE RESOURCES HUB ═══ */
.res-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 16px; margin: 24px 0; }
.res-card { border: 1px solid #2a2a2a; background: rgba(10,10,10,0.7); padding: 22px; transition: 0.25s; position: relative; display: flex; flex-direction: column; cursor: pointer; }
.res-card:hover { border-color: var(--accent); background: rgba(191,0,255,0.04); transform: translateY(-3px); }
.res-card-ic { width: 44px; height: 44px; border: 1px solid rgba(191,0,255,0.3); background: rgba(191,0,255,0.07); display: flex; align-items: center; justify-content: center; color: var(--accent); margin-bottom: 14px; }
.res-card h3 { font-family: var(--font-head); font-size: 1.05rem; letter-spacing: 0.5px; margin-bottom: 8px; color: #fff; text-transform: uppercase; }
.res-card p { font-family: var(--font-type); font-size: 0.82rem; color: var(--text-dim); line-height: 1.6; margin-bottom: 16px; flex: 1; }
.res-status { display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-type); font-size: 0.62rem; padding: 3px 8px; margin-bottom: 12px; width: fit-content; letter-spacing: 1px; text-transform: uppercase; }
.res-status.open { color: #00ff88; border: 1px solid rgba(0,255,136,0.25); background: rgba(0,255,136,0.06); }
.res-status.gated { color: #ffaa00; border: 1px solid rgba(255,170,0,0.25); background: rgba(255,170,0,0.06); }
.res-cta { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-type); font-size: 0.72rem; color: var(--accent); font-weight: bold; padding: 8px 14px; border: 1px solid rgba(191,0,255,0.3); background: rgba(0,0,0,0.3); transition: 0.15s; width: fit-content; text-transform: uppercase; letter-spacing: 0.5px; }
.res-card:hover .res-cta { background: rgba(191,0,255,0.1); }

/* Tool detail pages */
.tool-back { display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-type); font-size: 0.78rem; color: var(--text-dim); margin-bottom: 22px; cursor: pointer; transition: color 0.15s; }
.tool-back:hover { color: var(--accent); }
.tool-detail-head { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.tool-detail-head .res-card-ic { width: 54px; height: 54px; margin-bottom: 0; flex-shrink: 0; }
.tool-detail-head h2 { margin: 0; }
.tool-lede { font-family: var(--font-type); font-size: 1rem; color: #cfcfcf; line-height: 1.7; margin-bottom: 8px; max-width: 70ch; }
.tool-detail h3 { font-family: var(--font-head); font-size: 1.1rem; letter-spacing: 0.5px; text-transform: uppercase; color: var(--accent); margin: 28px 0 12px; }
.tool-detail p { font-family: var(--font-type); font-size: 0.92rem; color: #bbb; line-height: 1.8; margin-bottom: 12px; max-width: 70ch; }
.tool-steps { list-style: none; counter-reset: ts; padding: 0; margin: 12px 0; }
.tool-steps li { counter-increment: ts; position: relative; padding: 0 0 16px 46px; font-family: var(--font-type); font-size: 0.9rem; color: #bbb; line-height: 1.7; max-width: 68ch; }
.tool-steps li::before { content: counter(ts, decimal-leading-zero); position: absolute; left: 0; top: -2px; width: 32px; height: 32px; border: 1px solid rgba(191,0,255,0.3); background: rgba(191,0,255,0.06); color: var(--accent); font-family: var(--font-type); font-weight: bold; font-size: 0.75rem; display: flex; align-items: center; justify-content: center; }
.tool-steps li b { color: #fff; }
.tool-unlock { margin: 28px 0; padding: 26px; border: 1px solid rgba(191,0,255,0.25); background: rgba(191,0,255,0.04); text-align: center; }
.tool-unlock h4 { font-family: var(--font-head); font-size: 1.1rem; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; color: #fff; }
.tool-unlock p { font-family: var(--font-type); font-size: 0.85rem; color: var(--text-dim); margin: 0 auto 18px; max-width: 50ch; }
.tool-privacy { display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-type); font-size: 0.68rem; color: #00ff88; margin-top: 14px; letter-spacing: 0.5px; }

/* Tool runner */
.tool-runner { border: 1px solid rgba(191,0,255,0.2); background: rgba(0,0,0,0.4); margin: 20px 0; display: none; }
.tool-runner.show { display: block; }
.tr-head { padding: 14px 18px; background: rgba(191,0,255,0.06); border-bottom: 1px solid rgba(191,0,255,0.12); display: flex; align-items: center; gap: 8px; font-family: var(--font-head); font-size: 1rem; letter-spacing: 0.5px; text-transform: uppercase; color: #fff; }
.tr-body { padding: 18px; }
.tr-body label { font-family: var(--font-type); font-size: 0.72rem; color: var(--text-dim); display: block; margin-bottom: 5px; text-transform: uppercase; letter-spacing: 0.5px; }
.tr-result { margin-top: 14px; padding: 16px; border: 1px solid #2a2a2a; background: rgba(0,0,0,0.4); font-family: var(--font-type); font-size: 0.85rem; line-height: 1.7; color: #bbb; display: none; }
.tr-result.show { display: block; }
.tr-result b { color: #fff; }
.btn.sm { margin-top: 0; padding: 10px 20px; font-size: 0.78rem; }
.score-meter { height: 12px; background: rgba(255,255,255,0.06); overflow: hidden; margin: 10px 0; border: 1px solid #2a2a2a; }
.score-fill { height: 100%; transition: width 0.5s ease, background 0.5s ease; }
.risk-flag { display: flex; align-items: flex-start; gap: 10px; padding: 8px 0; border-bottom: 1px dotted rgba(255,255,255,0.07); }
.risk-flag:last-child { border-bottom: none; }
.rf-ico { flex-shrink: 0; font-family: var(--font-type); width: 18px; color: var(--accent); }
.res-form-grid { display: grid; gap: 12px; }
.res-form-grid.two { grid-template-columns: 1fr 1fr; }
@media(max-width: 560px) { .res-form-grid.two { grid-template-columns: 1fr; } }

/* Lead gate modal */
.gate-bg { position: fixed; inset: 0; background: rgba(0,0,0,0.85); backdrop-filter: blur(6px); z-index: 9000; display: none; align-items: center; justify-content: center; padding: 20px; }
.gate-bg.show { display: flex; }
.gate { width: min(440px, 100%); border: 1px solid var(--accent); background: #0a0a0f; box-shadow: 0 0 40px rgba(191,0,255,0.15); }
.gate-head { padding: 20px; border-bottom: 1px solid #2a2a2a; position: relative; }
.gate-head h3 { font-family: var(--font-head); font-size: 1.2rem; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 4px; color: #fff; }
.gate-head p { font-family: var(--font-type); font-size: 0.75rem; color: var(--text-dim); margin: 0; }
.gate-close { position: absolute; top: 16px; right: 16px; width: 28px; height: 28px; border: 1px solid #333; color: var(--text-dim); display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 16px; background: none; }
.gate-close:hover { color: #fff; border-color: var(--accent); }
.gate-body { padding: 20px; display: grid; gap: 12px; }
.gate-body label { font-family: var(--font-type); font-size: 0.7rem; color: var(--text-dim); text-transform: uppercase; letter-spacing: 0.5px; display: block; margin-bottom: 5px; }
.gate-body label .req { color: var(--alert-red); }
.gate-err { font-family: var(--font-type); font-size: 0.75rem; color: var(--alert-red); display: none; }
.gate-err.show { display: block; }
.gate-foot { padding: 16px 20px; border-top: 1px solid #2a2a2a; }
.gate-note { font-family: var(--font-type); font-size: 0.7rem; color: var(--text-dim); margin-top: 10px; line-height: 1.5; text-align: center; }
.res-intro { font-family: var(--font-type); font-size: 0.9rem; color: #aaa; max-width: 720px; line-height: 1.7; margin-bottom: 10px; }

/* Incident simulator */
.sim-stage { border: 1px solid rgba(191,0,255,0.2); background: rgba(0,0,0,0.4); padding: 22px; margin: 14px 0; }
.sim-scene { font-family: var(--font-type); font-size: 0.92rem; color: #ddd; line-height: 1.75; margin-bottom: 18px; }
.sim-scene .tag { display: inline-block; font-size: 0.68rem; color: var(--accent); border: 1px solid rgba(191,0,255,0.3); padding: 2px 8px; margin-bottom: 12px; letter-spacing: 1px; }
.sim-choice { display: block; width: 100%; text-align: left; border: 1px solid #2a2a2a; background: rgba(255,255,255,0.02); color: #ccc; padding: 14px 16px; margin-bottom: 10px; font-family: var(--font-type); font-size: 0.88rem; cursor: pointer; transition: 0.15s; }
.sim-choice:hover { border-color: var(--accent); background: rgba(191,0,255,0.05); color: #fff; }
.sim-feedback { padding: 16px; margin: 12px 0; font-family: var(--font-type); font-size: 0.85rem; line-height: 1.7; }
.sim-feedback.good { border-left: 3px solid #00ff88; background: rgba(0,255,136,0.05); }
.sim-feedback.bad { border-left: 3px solid var(--alert-red); background: rgba(255,51,51,0.05); }
.sim-feedback.mixed { border-left: 3px solid #ffaa00; background: rgba(255,170,0,0.05); }
.sim-progress { font-family: var(--font-type); font-size: 0.7rem; color: var(--text-dim); letter-spacing: 1px; margin-bottom: 12px; text-transform: uppercase; }
.sim-meter-row { display: flex; gap: 16px; margin-bottom: 16px; flex-wrap: wrap; }
.sim-meter { flex: 1; min-width: 120px; }
.sim-meter-label { font-family: var(--font-type); font-size: 0.65rem; color: var(--text-dim); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }

/* ═══ SECURE UPLINK FORM ═══ */
.uplink-form select { border-radius: 0; outline: none; border:1px solid #333; background:rgba(255,255,255,0.05); color:#fff; padding:14px; width:100%; font-family:var(--font-type); }
.uplink-form select:focus { border-color: var(--accent); box-shadow: 0 0 8px var(--accent-glow); }
.uplink-form .uplink-field { margin-bottom: 20px; }
.uplink-form label.mono { display:block; font-size:0.8rem; margin-bottom: 7px; }
.uplink-checks { display:grid; grid-template-columns: 1fr 1fr; gap: 4px 16px; margin-top: 6px; }
@media(max-width:560px){ .uplink-checks { grid-template-columns: 1fr; } .uplink-grid { grid-template-columns: 1fr !important; } }
.uplink-checks label { display:flex; align-items:flex-start; gap:9px; cursor:pointer; font-family:var(--font-type); font-size:0.82rem; color:#cfcfcf; padding:6px 0; }
.uplink-checks input[type=checkbox], .uplink-consent input[type=checkbox] { width:auto; margin-top:3px; accent-color: var(--accent); flex-shrink:0; }
.uplink-consent { display:flex; align-items:flex-start; gap:10px; cursor:pointer; font-family:var(--font-type); font-size:0.78rem; color:#aaa; margin-top:4px; line-height:1.5; }
.uplink-err { font-family:var(--font-type); font-size:0.78rem; color:var(--alert-red); display:none; margin-top:10px; }
.uplink-err.show { display:block; }
.uplink-panel-grid { display:grid; grid-template-columns: minmax(240px, 0.8fr) minmax(320px, 1.2fr); gap:24px; align-items:start; max-width:980px; }
.uplink-info-card { border:1px solid var(--paper-line); padding:28px; background:linear-gradient(135deg, rgba(191,0,255,0.08), rgba(0,0,0,0.55)); }
.uplink-info-card h3 { font-family:var(--font-head); font-size:1.1rem; letter-spacing:1px; text-transform:uppercase; color:#fff; margin:0 0 14px; }
.uplink-info-card .office-address { font-family:var(--font-type); color:#cfcfcf; line-height:1.7; font-size:0.86rem; margin:10px 0 18px; }
.uplink-info-card .uplink-note { font-family:var(--font-type); color:var(--text-dim); line-height:1.65; font-size:0.78rem; margin-bottom:18px; }
.uplink-live-btn { width:100%; margin-top:8px; font-size:0.8rem; padding:12px 14px; }
@media(max-width:760px){ .uplink-panel-grid { grid-template-columns:1fr; } .uplink-info-card { padding:22px; } }



/* 313SEC WORDMARK OVERRIDE */
.logo,
#nav-logo,
.brand,
.brand-logo,
.cs-brand-logo,
.logo-wordmark,
.site-logo,
.line1 {
  font-family: 'Skrappa', 'Oswald', 'Barlow Condensed', 'Arial Narrow', sans-serif !important;
  font-weight: normal !important;
}



/* 313SEC responsive navigation, Signal Wire and mobile action repair */
nav {
  right: 0;
  width: auto;
  min-width: 0;
  box-sizing: border-box;
}
.menu-btn {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  flex: 0 0 auto;
}
.menu-btn:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 5px;
}
.booking-btn {
  max-width: calc(100vw - 40px);
  white-space: nowrap;
}

@media (max-width: 720px) {
  body {
    width: 100%;
  }
  nav {
    height: 58px;
    padding: 8px 14px;
    z-index: 5000;
    background: linear-gradient(to bottom, rgba(5,5,5,0.98), rgba(5,5,5,0.55) 70%, rgba(5,5,5,0));
  }
  .logo {
    font-size: clamp(1.65rem, 9vw, 2.15rem) !important;
    line-height: 1;
    padding: 2px 0;
    max-width: calc(100vw - 86px);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: clip;
  }
  .menu-btn {
    width: 46px;
    height: 42px;
    margin-left: auto;
    position: relative;
    display: block;
    border: 1px solid rgba(191,0,255,0.45);
    background: rgba(0,0,0,0.78);
    box-shadow: 0 0 14px rgba(191,0,255,0.15), inset 0 0 18px rgba(191,0,255,0.06);
  }
  .menu-btn span {
    width: 24px;
    left: 10px;
    height: 2px;
  }
  .menu-btn span:nth-child(1) { top: 10px; }
  .menu-btn span:nth-child(2) { top: 19px; }
  .menu-btn span:nth-child(3) { top: 28px; }
  .menu-btn.open span:nth-child(1),
  .menu-btn.open span:nth-child(3) { top: 19px; }
  .menu-btn.open span:nth-child(2) { left: -22px; }
  .menu-overlay {
    padding-top: 58px;
    z-index: 4900;
  }
  .term-bar {
    padding: 6px 14px;
  }
  .term-nav-body {
    padding: 8px 14px 5px;
  }
  .term-item {
    padding: 10px 12px;
    gap: 10px;
  }
  .term-item .t-label {
    font-size: 0.94rem;
    letter-spacing: 0.8px;
  }
  .term-footer {
    padding: 8px 14px calc(8px + env(safe-area-inset-bottom));
  }
  main {
    padding-top: 78px;
  }
  .container {
    padding-left: 18px;
    padding-right: 18px;
  }
  .signal-ticker-banner {
    margin: 0 0 18px;
    width: 100%;
    max-width: 100%;
  }
  .signal-ticker-top {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2px;
    padding: 7px 10px;
  }
  .signal-ticker-label {
    font-size: 0.62rem;
    letter-spacing: 1px;
    line-height: 1.35;
  }
  .signal-ticker-status {
    font-size: 0.58rem;
    letter-spacing: 0.65px;
    line-height: 1.35;
  }
  .signal-ticker-window {
    padding: 8px 0;
  }
  .signal-ticker-track {
    gap: 18px;
    animation-duration: 34s;
  }
  .signal-ticker-item {
    gap: 8px;
    font-size: 0.72rem;
  }
  .signal-ticker-pill {
    font-size: 0.56rem;
    padding: 2px 5px;
    letter-spacing: 0.6px;
  }
  .signal-ticker-open {
    display: none;
  }
  .hero-container {
    margin-top: 4vh !important;
  }
  .hero-title {
    font-size: clamp(3.2rem, 17vw, 4.65rem);
    max-width: 100%;
  }
  .word-2 {
    align-self: flex-start;
    max-width: 100%;
    padding: 0 12px;
    white-space: nowrap;
  }
  .seo-h1 {
    font-size: 0.92rem;
    line-height: 1.35;
  }
  .hero-desc {
    margin-top: 22px !important;
    padding-left: 14px !important;
    font-size: 0.9rem;
  }
  .hero-actions {
    margin-top: 28px;
    gap: 10px;
  }
  .hero-actions .btn {
    min-height: 42px;
    padding: 12px 14px;
    font-size: 0.78rem;
  }
  .booking-btn {
    left: 14px;
    right: 14px;
    bottom: calc(14px + env(safe-area-inset-bottom));
    width: auto;
    max-width: none;
    min-height: 42px;
    justify-content: center;
    z-index: 4800;
    font-size: 0.76rem;
    letter-spacing: 1.5px;
    padding: 10px 12px;
  }
  .booking-btn::before {
    width: 7px;
    height: 7px;
  }
  body.menu-open .booking-btn,
  body.menu-open #bit-root {
    opacity: 0;
    pointer-events: none;
  }
}

@media (min-width: 721px) {
  .menu-overlay {
    z-index: 1900;
  }
}



.sh-tag{font-family:var(--font-type);font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:var(--accent);display:block;margin-bottom:8px}
.sh-hint{display:inline-block;font-family:var(--font-type);font-size:.62rem;letter-spacing:1px;color:#fff;background:rgba(191,0,255,.18);border:1px solid var(--accent);padding:2px 8px;margin-left:6px;animation:shpulse 2s infinite}
@keyframes shpulse{0%,100%{opacity:.65}50%{opacity:1}}
.sh-journey{border:1px solid var(--paper-line);background:rgba(0,0,0,.4);padding:22px;margin-top:6px}
.sh-steps{display:flex;align-items:flex-start;justify-content:space-between;gap:0;margin-bottom:24px}
.sh-step{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:none;cursor:pointer;text-align:center;padding:4px;font-family:var(--font-type);transition:.2s}
.sh-num{width:42px;height:42px;border-radius:50%;border:2px solid var(--paper-line);display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:700;font-size:1.2rem;color:#777;background:#0a0a0a;transition:.25s}
.sh-step:hover .sh-num{border-color:var(--accent);color:#fff}
.sh-step.active .sh-num{border-color:var(--accent);color:#fff;background:rgba(191,0,255,.18);box-shadow:0 0 18px rgba(191,0,255,.4)}
.sh-step.done .sh-num{border-color:#33ffa6;color:#33ffa6}
.sh-st-label{font-family:var(--font-head);text-transform:uppercase;letter-spacing:.5px;font-size:.82rem;color:#999}
.sh-step.active .sh-st-label{color:#fff}
.sh-st-sub{font-size:.6rem;color:#555;letter-spacing:.5px}
.sh-conn{flex:0 0 auto;width:14%;height:2px;background:var(--paper-line);position:relative;margin-top:20px;align-self:flex-start}
.sh-conn .sh-fill{position:absolute;inset:0;width:0;background:linear-gradient(90deg,var(--accent),#33ffa6);transition:width .4s ease}
.sh-conn .sh-fill.on{width:100%}
.sh-stage{position:relative;min-height:60px}
.sh-panel{display:none;animation:shfade .35s ease}
.sh-panel.active{display:block}
@keyframes shfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sh-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;gap:8px}
.sh-step-chip{font-family:var(--font-type);font-size:.6rem;letter-spacing:2px;color:var(--accent);border:1px solid var(--accent);padding:3px 9px}
.sh-time{font-family:var(--font-type);font-size:.66rem;color:#33ffa6;letter-spacing:1px}
.sh-panel h4{font-family:var(--font-head);text-transform:uppercase;color:#fff;font-size:1.35rem;letter-spacing:.5px;margin:0 0 10px}
.sh-panel p{font-family:var(--font-type);font-size:.92rem;color:#cfcfcf;margin-bottom:12px}
.sh-price-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.sh-price{font-family:var(--font-head);font-size:2rem;color:var(--accent);font-weight:700}
.sh-was{text-decoration:line-through;color:#666}
.sh-credit{font-family:var(--font-type);font-size:.7rem;color:#33ffa6;letter-spacing:.5px}
.sh-list{list-style:none;margin:0 0 14px;padding:0}
.sh-list li{font-family:var(--font-type);font-size:.86rem;color:#bbb;padding:7px 0 7px 24px;border-bottom:1px solid rgba(255,255,255,.05);position:relative}
.sh-list li::before{content:'\25B8';position:absolute;left:2px;color:var(--accent)}
.sh-out{font-family:var(--font-type);font-size:.86rem;color:#ddd;border-left:2px solid var(--accent);background:rgba(191,0,255,.05);padding:11px 14px;margin-bottom:16px}
.sh-out strong{color:#fff}
.sh-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.sh-tier{border:1px solid var(--paper-line);background:#0a0a0a;padding:13px;position:relative}
.sh-tier.feat{border-color:var(--accent);box-shadow:0 0 16px rgba(191,0,255,.12)}
.sh-tier-badge{position:absolute;top:-9px;right:8px;font-family:var(--font-type);font-size:.52rem;letter-spacing:1px;text-transform:uppercase;background:var(--accent);color:#000;padding:2px 7px}
.sh-tier-name{display:block;font-family:var(--font-head);text-transform:uppercase;color:#fff;font-size:.95rem;margin-bottom:5px}
.sh-tier-desc{font-family:var(--font-type);font-size:.72rem;color:#999;line-height:1.45}
.sh-cta-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.sh-ghost{font-family:var(--font-head);text-transform:uppercase;letter-spacing:1px;font-size:.82rem;padding:11px 18px;background:none;border:1px solid var(--paper-line);color:#bbb;cursor:pointer;transition:.2s}
.sh-ghost:hover{border-color:var(--accent);color:#fff}
.sh-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid var(--paper-line)}
.sh-nav-btn{font-family:var(--font-head);text-transform:uppercase;letter-spacing:1px;font-size:.82rem;padding:9px 16px;background:none;border:1px solid var(--paper-line);color:#bbb;cursor:pointer;transition:.2s}
.sh-nav-btn:hover:not(:disabled){border-color:var(--accent);color:#fff}
.sh-nav-btn.primary{border-color:var(--accent);color:#fff;background:rgba(191,0,255,.1)}
.sh-nav-btn:disabled{opacity:.3;cursor:not-allowed}
.sh-dots{display:flex;gap:8px}
.sh-dot{width:9px;height:9px;border-radius:50%;background:var(--paper-line);cursor:pointer;transition:.2s}
.sh-dot.active{background:var(--accent);box-shadow:0 0 8px var(--accent)}
.sh-where-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.sh-where-btn{text-align:left;font-family:var(--font-type);font-size:.85rem;color:#cfcfcf;background:rgba(0,0,0,.4);border:1px solid var(--paper-line);padding:14px;cursor:pointer;transition:.2s}
.sh-where-btn:hover{border-color:var(--accent);color:#fff;background:rgba(191,0,255,.06);transform:translateY(-2px)}
.sh-where-btn.active{border-color:var(--accent);background:rgba(191,0,255,.1);color:#fff}
.sh-where-btn.alert:hover,.sh-where-btn.alert.active{border-color:var(--alert-red);background:rgba(255,51,51,.08);color:#fff}
.sh-rec{border:1px solid var(--accent);background:rgba(191,0,255,.06);padding:18px;animation:shfade .35s ease}
.sh-rec-label{font-family:var(--font-type);font-size:.62rem;letter-spacing:2px;color:var(--accent)}
.sh-rec h4{font-family:var(--font-head);text-transform:uppercase;color:#fff;font-size:1.15rem;margin:8px 0 8px}
.sh-rec p{font-family:var(--font-type);font-size:.88rem;color:#cfcfcf;margin-bottom:14px}
.sh-rec a.sh-reclink{font-family:var(--font-head);text-transform:uppercase;letter-spacing:1px;font-size:.82rem;padding:11px 18px;border:1px solid var(--accent);color:#fff;background:rgba(191,0,255,.1);transition:.2s;text-decoration:none}
.sh-rec a.sh-reclink:hover{background:var(--accent);color:#000}
.sh-rec a.sh-reclink.red{border-color:var(--alert-red);color:#ff7a7a}
.sh-rec a.sh-reclink.red:hover{background:var(--alert-red);color:#fff}
@media(max-width:680px){.sh-tiers{grid-template-columns:1fr}.sh-where-opts{grid-template-columns:1fr}.sh-st-sub{display:none}.sh-conn{width:8%}}
/* Secure Uplink (start-here) */
#su-uplink{background:linear-gradient(180deg,rgba(191,0,255,.05),transparent 60%);border:1px solid var(--paper-line);padding:34px 24px}
#su-uplink .su-eyebrow{font-family:var(--font-type);font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:var(--accent);display:block;margin-bottom:12px}
#su-uplink h2.su-h{font-family:var(--font-head);text-transform:uppercase;color:#fff;font-size:clamp(22px,4vw,30px);margin:0 0 12px}
#su-uplink .su-lede{font-family:var(--font-type);font-size:.95rem;color:#cfcfcf;max-width:60ch;margin:0 0 6px}
#su-uplink .su-sub{font-family:var(--font-type);font-size:.68rem;letter-spacing:1px;text-transform:uppercase;color:#33ffa6;margin:0 0 24px}
#su-uplink .su-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:28px}
#su-uplink .su-act{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid #2a2a2a;background:rgba(191,0,255,.03);transition:.18s;text-align:left;cursor:pointer;text-decoration:none;font-family:inherit;width:100%}
#su-uplink .su-act:hover{border-color:var(--accent);background:rgba(191,0,255,.07);transform:translateY(-2px)}
#su-uplink .su-act .su-ic{font-size:1.25rem}
#su-uplink .su-act .su-t{font-family:var(--font-head);font-size:1rem;text-transform:uppercase;letter-spacing:.5px;color:#fff}
#su-uplink .su-act .su-d{font-family:var(--font-type);font-size:.66rem;color:#8a8a8a;line-height:1.45}
#su-uplink .su-act.call,#su-uplink .su-act.wa{border-color:rgba(51,255,166,.25);background:rgba(51,255,166,.04)}
#su-uplink .su-act.call .su-t,#su-uplink .su-act.wa .su-t{color:#33ffa6}
#su-uplink .su-act.chat{border-color:rgba(255,200,87,.25);background:rgba(255,200,87,.04)}
#su-uplink .su-act.form{border-color:rgba(191,0,255,.4);background:rgba(191,0,255,.06)}
#su-uplink .su-card{border:1px solid #2a2a2a;background:rgba(0,0,0,.4);padding:24px}
#su-uplink label{display:block;font-family:var(--font-type);font-size:.64rem;letter-spacing:1px;text-transform:uppercase;color:#8a8a8a;margin-bottom:6px}
#su-uplink label .su-req{color:var(--alert-red)}
#su-uplink input,#su-uplink select,#su-uplink textarea{width:100%;background:#0a0a0a;border:1px solid #2a2a2a;color:#fff;font-family:var(--font-type);font-size:.9rem;padding:11px 12px;outline:none}
#su-uplink input:focus,#su-uplink select:focus,#su-uplink textarea:focus{border-color:var(--accent)}
#su-uplink .su-fg{margin-bottom:14px}
#su-uplink .su-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#su-uplink .su-send{width:100%;margin-top:4px;padding:14px;font-family:var(--font-head);font-size:1rem;letter-spacing:2px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,rgba(191,0,255,.22),rgba(51,255,166,.12));border:1px solid var(--accent);cursor:pointer}
#su-uplink .su-note{font-family:var(--font-type);font-size:.7rem;color:#33ffa6;margin-top:12px;text-align:center;min-height:16px}
@media(max-width:560px){#su-uplink .su-actions,#su-uplink .su-row{grid-template-columns:1fr}}



/* === ENGAGEMENT TRACE (replaces split intro) === */
.eg{border:1px solid var(--paper-line);background:rgba(0,0,0,.45);padding:22px;margin-top:20px;position:relative;overflow:hidden}
.eg-scan{position:absolute;top:0;left:0;height:2px;width:100%;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:0;transform:translateX(-100%);pointer-events:none}
.eg.run .eg-scan{animation:egscan 1.4s ease-out forwards}
@keyframes egscan{0%{opacity:.9;transform:translateX(-100%)}100%{opacity:0;transform:translateX(100%)}}
.eg-bar{display:flex;align-items:center;gap:10px;font-family:var(--font-type);font-size:.62rem;letter-spacing:2px;color:var(--text-dim);text-transform:uppercase;margin-bottom:18px}
.eg-led{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent);animation:egblink 1.6s infinite;flex:none}
@keyframes egblink{0%,100%{opacity:1}50%{opacity:.25}}
.eg-nodes{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.eg-node{flex:1 1 120px;min-width:120px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;background:rgba(12,12,12,.85);border:1px solid var(--paper-line);padding:12px 14px;cursor:pointer;font-family:var(--font-type);text-align:left;transition:border-color .25s,background .25s}
.eg-node:hover{border-color:var(--accent)}
.eg-node.on{border-color:var(--accent);background:rgba(191,0,255,.12);box-shadow:0 0 16px rgba(191,0,255,.28)}
.eg-node.armed{animation:egpop .55s ease}
@keyframes egpop{0%{box-shadow:0 0 0 0 rgba(191,0,255,0)}45%{box-shadow:0 0 18px 0 rgba(191,0,255,.5)}100%{box-shadow:0 0 0 0 rgba(191,0,255,0)}}
.eg-node .k{font-size:.56rem;letter-spacing:2px;color:var(--text-dim)}
.eg-node.on .k{color:var(--accent)}
.eg-node .t{font-family:var(--font-head);text-transform:uppercase;font-size:1rem;letter-spacing:1px;color:#ddd}
.eg-node.on .t{color:#fff}
.eg-readout{border-left:2px solid var(--accent);background:rgba(191,0,255,.05);padding:14px 16px;min-height:74px}
.eg-readout .ro-h{font-family:var(--font-type);font-size:.6rem;letter-spacing:2px;color:var(--accent);text-transform:uppercase;margin-bottom:8px}
.eg-readout p{font-family:var(--font-type);font-size:.92rem;color:#cfcfcf;margin:0;line-height:1.65}
.eg-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px}
.eg-foot .note{font-family:var(--font-type);font-size:.72rem;color:var(--text-dim);letter-spacing:.5px}
@media (max-width:560px){.eg-node{flex:1 1 calc(50% - 5px);min-width:0}}
@media (prefers-reduced-motion:reduce){.eg-scan{display:none}.eg-node.armed{animation:none}}
/* === WHO IT'S FOR TOGGLE (replaces 2-col split) === */
.wf{border:1px solid var(--paper-line);background:rgba(0,0,0,.4);padding:22px;margin-top:6px}
.wf-tabs{display:flex;border:1px solid var(--paper-line);width:fit-content;max-width:100%;margin-bottom:20px}
.wf-tab{font-family:var(--font-type);font-size:.72rem;letter-spacing:1.5px;text-transform:uppercase;color:#999;background:none;border:none;padding:11px 18px;cursor:pointer;transition:.2s;border-right:1px solid var(--paper-line)}
.wf-tab:last-child{border-right:none}
.wf-tab:hover{color:#fff}
.wf-tab.on{background:rgba(191,0,255,.14);color:#fff;box-shadow:inset 0 -2px 0 var(--accent)}
.wf-panel{display:none;animation:egfade .3s ease}
.wf-panel.on{display:block}
@keyframes egfade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.wf-panel .lead{font-family:var(--font-type);font-size:.8rem;color:var(--text-dim);margin-bottom:12px;letter-spacing:.5px}
@media (max-width:420px){.wf-tab{flex:1 1 50%;text-align:center;padding:11px 8px}}



/* 313SEC wordmark treatment. Do not let Google font fallback override the brand logo. */
.logo,
#nav-logo,
.brand,
.brand-logo,
.cs-brand-logo,
.logo-wordmark,
.site-logo,
.line1 {
  font-family: 'Skrappa', 'Oswald', 'Barlow Condensed', 'Arial Narrow', sans-serif !important;
  font-weight: normal !important;
  font-synthesis: none;
}

/* SEO migration visual regression fix: card links are now real crawlable anchors,
   so explicitly remove browser-default blue underlines from card-style links. */
a.res-card,
a.res-card:visited,
a.res-card:hover,
a.res-card:focus,
a.case-card,
a.case-card:visited,
a.case-card:hover,
a.case-card:focus,
a.service-card,
a.service-card:visited,
a.service-card:hover,
a.service-card:focus,
a.blog-card,
a.blog-card:visited,
a.blog-card:hover,
a.blog-card:focus {
  color: inherit;
  text-decoration: none !important;
}

.res-card *,
.case-card *,
.service-card *,
.blog-card * {
  text-decoration: none !important;
}

.res-card p,
.res-card h3,
.res-card span,
.res-card div {
  color: inherit;
}

.res-card h3 { color: #fff; }
.res-card p { color: var(--text-dim); }
.res-card .res-cta { color: var(--accent); }


/* Readability and SEO-static link fixes.
   During the SPA to static-page migration, many former div/card click targets became real anchors.
   This keeps them crawlable without allowing browser-default blue links/underlines to leak into the design. */
a {
  color: inherit;
  text-decoration-color: rgba(191, 0, 255, 0.45);
  text-underline-offset: 0.18em;
}

a:hover,
a:focus {
  color: #ffffff;
  text-decoration-color: var(--accent);
}

body,
p,
li,
label,
small,
.file-card p,
.service-card p,
.case-card p,
.blog-card p,
.resource-card p,
.tool-body p,
.tool-body li,
.article-body p,
.article-body li,
.dossier-body p,
.dossier-body li,
.content-block p,
.content-block li {
  color: var(--text-main);
}

.text-dim,
.term-init-sub,
.term-prefix,
.term-count,
.card-meta,
.micro-meta,
.dossier-meta,
.scan-line.text-dim {
  color: var(--text-muted) !important;
}

.res-card,
a.res-card,
a.res-card:visited,
a.res-card:hover,
a.res-card:focus,
.case-card,
a.case-card,
a.case-card:visited,
a.case-card:hover,
a.case-card:focus,
.service-card,
a.service-card,
a.service-card:visited,
a.service-card:hover,
a.service-card:focus,
.blog-card,
a.blog-card,
a.blog-card:visited,
a.blog-card:hover,
a.blog-card:focus {
  color: inherit;
  text-decoration: none !important;
}

.res-card *,
.case-card *,
.service-card *,
.blog-card *,
.file-card *,
.price-card * {
  text-decoration: none !important;
}

.res-card p,
.file-card p,
.case-card p,
.service-card p,
.blog-card p,
.price-card p,
.lead,
.subtitle,
.section-intro {
  color: #e2e2e2 !important;
}

.res-card h3,
.file-card h3,
.case-card h3,
.service-card h3,
.blog-card h3,
.price-card h3,
h1,
h2,
h3,
h4 {
  color: #ffffff;
}

.res-card .res-cta,
.file-card .res-cta,
.case-card .case-card-cta,
.service-card .service-card-cta,
.blog-card .blog-card-cta,
.price-cta,
.buy-cta {
  color: var(--accent) !important;
  text-decoration: none !important;
}

.tag,
.badge,
.res-tag,
.status-pill,
.signal-chip {
  color: #ffffff;
}

.np-link,
.term-item .t-label {
  color: #eeeeee;
}

.term-item.term-sub .t-label {
  color: #dddddd;
}

input,
select,
textarea {
  color: #ffffff;
}
