/* ============================================================
         SOC & SIEM PAGE — design tokens matched to Compliance page
         #2454ff primary · #0b132b dark · #5b6478 muted · #00c8ff cyan
         Light backgrounds throughout, Inter / IBM Plex Mono fonts
      ============================================================ */
      .soc{ font-family:'Inter',sans-serif; background:#ffffff; color:#0b132b; }
      .soc-r{ opacity:0; transform:translateY(22px); transition:opacity .6s cubic-bezier(.16,.8,.4,1), transform .6s cubic-bezier(.16,.8,.4,1); }
      .soc-r.on{ opacity:1; transform:none; }

      .soc-sec{ padding:clamp(48px,6.5vw,84px) 0; }
      .soc-sec.tint{ background:#f6f8fd; }
      .soc-sec.border-t{ border-top:1px solid #e7ecf6; }
      .soc-wrap{ max-width:1180px; margin:0 auto; padding:0 24px; }

      /* eyebrow */
      .soc-kicker{ display:inline-flex; align-items:center; gap:9px; font-family:'IBM Plex Mono',monospace; font-size:11px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:#2454ff; margin-bottom:14px; }
      .soc-kicker::before{ content:""; width:22px; height:1.5px; background:#2454ff; display:inline-block; }
      .soc-kicker.center{ justify-content:center; }
      .soc-head{ max-width:660px; }
      .soc-head.center{ text-align:center; max-width:680px; margin:0 auto clamp(32px,4.2vw,48px); }
      .soc-h2{ font-family:'Inter',sans-serif !important; font-weight:800 !important; font-size:clamp(26px,3.2vw,36px) !important; line-height:1.2 !important; letter-spacing:-0.02em; color:#0b132b !important; margin:0 !important; }
      .soc-h2 em{ font-style:normal; color:#2454ff; }
      .soc-lead{ font-size:15px !important; line-height:1.78 !important; color:#5b6478 !important; margin:14px 0 0 !important; padding-top:0 !important; }

      /* ===== HERO ===== */
      .soc-hero{ background:linear-gradient(160deg,#f0f4ff 0%,#f8faff 55%,#ffffff 100%); border-bottom:1px solid #e7ecf6; padding:clamp(52px,7.5vw,88px) 0 clamp(44px,5vw,64px); }
      .soc-hero-grid{ display:grid; grid-template-columns:1.2fr 1fr; gap:44px; align-items:center; }
      @media(max-width:900px){ .soc-hero-grid{ grid-template-columns:1fr; } }
      .soc-hero-pill{ display:inline-flex; align-items:center; gap:8px; padding:6px 14px; border-radius:999px; background:#ffffff; border:1px solid #d8e0f4; font-family:'IBM Plex Mono',monospace; font-size:11px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:#2454ff; margin-bottom:18px; }
      .soc-hero-pill-dot{ width:7px; height:7px; border-radius:50%; background:#2454ff; flex:none; animation:soc-blink 1.8s infinite; }
      @keyframes soc-blink{ 0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(36,84,255,0.4)} 50%{opacity:.5;box-shadow:0 0 0 5px rgba(36,84,255,0)} }
      .soc-hero h1, .soc-hero h2{ font-family:'Inter',sans-serif !important; font-weight:800 !important; font-size:clamp(28px,3.8vw,44px) !important; line-height:1.16 !important; letter-spacing:-0.025em; color:#0b132b !important; margin:0 0 16px !important; }
      .soc-hero h1 span, .soc-hero h2 span{ color:#2454ff; }
      .soc-hero-desc{ font-size:15.5px !important; line-height:1.78 !important; color:#5b6478 !important; max-width:520px; padding-top:0 !important; margin:0 !important; }
      .soc-hero-btns{ display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
      .soc-btn{ display:inline-flex; align-items:center; gap:9px; padding:13px 24px; border-radius:11px; font-family:'Inter',sans-serif; font-weight:700; font-size:14px; cursor:pointer; text-decoration:none; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease; border:none; }
      .soc-btn-solid{ background:#2454ff; color:#fff !important; box-shadow:0 10px 22px -8px rgba(36,84,255,0.42); }
      .soc-btn-solid:hover{ transform:translateY(-2px); box-shadow:0 14px 26px -8px rgba(36,84,255,0.52); }
      .soc-btn-outline{ background:#fff; color:#0b132b !important; border:1.5px solid #d6dff0; }
      .soc-btn-outline:hover{ border-color:#2454ff; color:#2454ff !important; transform:translateY(-2px); }

      .soc-hero-highlights{ display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
      .soc-hero-hl{ display:inline-flex; align-items:center; gap:7px; padding:7px 14px; border-radius:8px; background:#fff; border:1px solid #e2eaf8; font-size:12.5px; font-weight:600; color:#0b132b; }
      .soc-hero-hl i{ color:#2454ff; font-size:11px; }

      /* Hero right — SVG illustration card */
      .soc-illus-card{ background:#fff; border:1px solid #e2eaf8; border-radius:20px; box-shadow:0 24px 56px -28px rgba(11,19,43,0.14); overflow:hidden; }
      .soc-illus-topbar{ background:linear-gradient(90deg,#0b132b 0%,#1a2a5e 100%); padding:14px 20px; display:flex; align-items:center; gap:10px; }
      .soc-illus-topbar-dot{ width:9px; height:9px; border-radius:50%; }
      .soc-illus-topbar span{ font-family:'IBM Plex Mono',monospace; font-size:11px; color:rgba(255,255,255,0.55); margin-left:6px; letter-spacing:.04em; }
      .soc-illus-body{ padding:24px; }

      /* ===== KEY HIGHLIGHTS STRIP ===== */
      .soc-highlights-strip{ background:#0b132b; padding:clamp(22px,3.5vw,32px) 0; }
      .soc-highlights-inner{ display:flex; flex-wrap:wrap; justify-content:center; gap:0; }
      .soc-hl-item{ display:flex; align-items:center; gap:11px; padding:10px 28px; border-right:1px solid rgba(255,255,255,0.1); }
      .soc-hl-item:last-child{ border-right:none; }
      .soc-hl-item i{ width:34px; height:34px; border-radius:9px; background:rgba(36,84,255,0.22); color:#7ba6ff; display:flex; align-items:center; justify-content:center; font-size:14px; flex:none; }
      .soc-hl-item span{ font-size:13px; font-weight:600; color:#e8edf8; line-height:1.35; }

      /* ===== ABOUT / INTRO TWO-COL ===== */
      .soc-intro-grid{ display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; }
      @media(max-width:860px){ .soc-intro-grid{ grid-template-columns:1fr; } }
      .soc-intro-desc{ font-size:15px !important; line-height:1.82 !important; color:#5b6478 !important; margin:0 !important; padding-top:0 !important; }

      /* ===== SERVICES GRID ===== */
      .soc-svc-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
      @media(max-width:900px){ .soc-svc-grid{ grid-template-columns:repeat(2,1fr); } }
      @media(max-width:580px){ .soc-svc-grid{ grid-template-columns:1fr; } }
      .soc-svc-card{ background:#fff; border:1px solid #e2eaf8; border-radius:16px; padding:26px 22px; transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
      .soc-svc-card:hover{ transform:translateY(-5px); border-color:rgba(36,84,255,0.28); box-shadow:0 18px 34px -20px rgba(11,19,43,0.16); }
      .soc-svc-ico{ width:46px; height:46px; border-radius:13px; background:rgba(36,84,255,0.08); color:#2454ff; display:flex; align-items:center; justify-content:center; font-size:18px; margin-bottom:15px; }
      .soc-svc-card h3{ font-family:'Inter',sans-serif !important; font-size:15px !important; font-weight:700 !important; color:#0b132b !important; margin:0 0 8px !important; line-height:1.35 !important; }
      .soc-svc-card p.primary{ font-size:13.5px !important; line-height:1.72 !important; color:#5b6478 !important; margin:0 !important; padding-top:0 !important; }
      .soc-svc-card p.secondary{ font-size:12.5px !important; line-height:1.65 !important; color:#8898b0 !important; margin:10px 0 0 !important; padding-top:0 !important; border-top:1px solid #edf1f9; padding-top:10px !important; }

      /* ===== SOC WORKFLOW ILLUSTRATION ===== */
      .soc-workflow-wrap{ background:#fff; border:1px solid #e2eaf8; border-radius:20px; overflow:hidden; box-shadow:0 20px 48px -28px rgba(11,19,43,0.12); }
      .soc-workflow-header{ background:linear-gradient(90deg,#0b132b 0%,#162050 100%); padding:18px 28px; display:flex; align-items:center; gap:14px; }
      .soc-workflow-header-dots{ display:flex; gap:7px; }
      .soc-workflow-header-dots span{ width:10px; height:10px; border-radius:50%; }
      .soc-workflow-title{ font-family:'IBM Plex Mono',monospace; font-size:12px; color:rgba(255,255,255,0.6); letter-spacing:.06em; }
      .soc-workflow-svg{ padding:32px 24px 28px; background:#f6f8fd; }

      /* ===== WORKFLOW STEPS (PROCESS) ===== */
      .soc-flow-rail{ display:grid; grid-template-columns:repeat(5,1fr); gap:0; position:relative; margin-top:42px; }
      .soc-flow-rail::before{ content:""; position:absolute; top:26px; left:10%; right:10%; height:1.5px; background:linear-gradient(90deg,rgba(36,84,255,0.15),rgba(36,84,255,0.38) 50%,rgba(36,84,255,0.15)); z-index:0; }
      .soc-flow-step{ text-align:center; position:relative; z-index:1; padding:0 8px; }
      .soc-flow-num{ width:52px; height:52px; border-radius:50%; background:#fff; border:2px solid #2454ff; margin:0 auto 14px; display:flex; align-items:center; justify-content:center; font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:700; color:#2454ff; box-shadow:0 0 0 5px rgba(36,84,255,0.07); }
      .soc-flow-step h4{ font-family:'Inter',sans-serif; font-size:13px; font-weight:700; color:#0b132b; margin:0 0 6px; }
      .soc-flow-step p{ font-size:11.5px !important; color:#7b87a0 !important; line-height:1.55 !important; margin:0 !important; padding-top:0 !important; }

      /* ===== WHY CHOOSE US ===== */
      .soc-why-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:32px; }
      @media(max-width:640px){ .soc-why-grid{ grid-template-columns:1fr; } }
      .soc-why-item{ display:flex; align-items:flex-start; gap:12px; padding:18px; background:#fff; border:1px solid #e2eaf8; border-radius:13px; transition:border-color .2s,box-shadow .2s; }
      .soc-why-item:hover{ border-color:rgba(36,84,255,0.26); box-shadow:0 10px 24px -14px rgba(11,19,43,0.12); }
      .soc-why-item i{ width:34px; height:34px; border-radius:9px; background:rgba(36,84,255,0.08); color:#2454ff; display:flex; align-items:center; justify-content:center; font-size:14px; flex:none; margin-top:1px; }
      .soc-why-item div b{ display:block; font-family:'Inter',sans-serif; font-size:13.5px; font-weight:700; color:#0b132b; margin-bottom:4px; }
      .soc-why-item div span{ font-size:12.5px; color:#7b87a0; line-height:1.55; }

      /* ===== BUILT FOR CONTINUOUS SECURITY ===== */
      .soc-built-grid{ display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
      .soc-built-pill{ display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border-radius:10px; background:#fff; border:1px solid #e2eaf8; font-size:13px; font-weight:600; color:#0b132b; transition:transform .2s,border-color .2s,box-shadow .2s; }
      .soc-built-pill:hover{ transform:translateY(-3px); border-color:rgba(36,84,255,0.3); box-shadow:0 10px 22px -14px rgba(11,19,43,0.16); }
      .soc-built-pill i{ width:26px; height:26px; border-radius:7px; background:rgba(36,84,255,0.08); color:#2454ff; display:flex; align-items:center; justify-content:center; font-size:12px; flex:none; }

      /* ===== CTA CLOSING BAND ===== */
      .soc-cta-band{ background:#fff; border:1px solid #e2eaf8; border-radius:22px; box-shadow:0 28px 56px -32px rgba(11,19,43,0.2); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; padding:clamp(28px,4vw,44px) clamp(24px,4vw,44px); }
      .soc-cta-band h3{ font-family:'Inter',sans-serif !important; font-weight:800 !important; font-size:clamp(20px,2.4vw,26px) !important; color:#0b132b !important; margin:0 0 8px !important; line-height:1.25 !important; }
      .soc-cta-band p{ font-size:14px !important; color:#5b6478 !important; margin:0 !important; padding-top:0 !important; line-height:1.7 !important; max-width:480px; }
