/* ============================================================
   SHARED CSS — cognisec-cra.com
   ============================================================ */
:root{
  --red:#dc2626;--red2:#b91c1c;--red3:#7f1d1d;
  --navy:#0b1f45;--navy2:#0a2a63;--blue:#2563eb;--blue2:#1d4ed8;
  --gold:#f59e0b;--gold2:#fbbf24;
  --green:#16a34a;
  --white:#ffffff;--off:#f8faff;--muted:#64748b;--border:#e2e8f0;
  --ink:#0f172a;
  --font-head:'Sora',sans-serif;
  --font-body:'DM Sans',sans-serif;
  --font-mono:'DM Mono',monospace;
  --shadow:0 20px 60px rgba(11,31,69,.18);
  --shadowSm:0 8px 24px rgba(11,31,69,.10);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);font-size:14px;color:var(--ink);background:var(--white);overflow-x:hidden;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px;}
.center{text-align:center;}
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.1;}
h2{font-size:32px;letter-spacing:-.5px;color:var(--navy);}
h3{font-size:18px;color:var(--navy);}
.lead{color:var(--muted);line-height:1.75;font-size:15px;max-width:72ch;margin:10px auto 0;}
.section{padding:72px 0;}
.sectionAlt{padding:72px 0;background:var(--off);}

/* ── TOP TICKER ── */
.topTicker{background:var(--red2);overflow:hidden;padding:9px 0;}
.tickerTrack{display:flex;white-space:nowrap;animation:tick 35s linear infinite;}
.tickerTrack:hover{animation-play-state:paused;}
.tItem{display:inline-flex;align-items:center;gap:10px;padding:0 36px;font-size:11px;font-weight:700;font-family:var(--font-head);color:#fff;letter-spacing:.05em;}
.tItem::after{content:"⚡";color:#fca5a5;}
@keyframes tick{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ── NAV ── */
.nav{position:sticky;top:0;z-index:200;background:rgba(11,31,69,.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.08);}
.navInner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:16px;}
.brand{display:flex;align-items:center;gap:12px;}
.brandLogo{width:38px;height:38px;background:linear-gradient(135deg,var(--red),var(--red2));border-radius:10px;display:grid;place-items:center;font-family:var(--font-head);font-weight:900;font-size:16px;color:#fff;flex-shrink:0;}
.brandText{line-height:1.1;}
.brandName{font-family:var(--font-head);font-weight:800;font-size:15px;color:#fff;letter-spacing:.3px;}
.brandSub{font-size:9px;color:rgba(255,255,255,.5);letter-spacing:.08em;text-transform:uppercase;}
.navLinks{display:flex;align-items:center;gap:4px;}
.navLinks a{color:rgba(255,255,255,.8);font-weight:600;font-size:12px;padding:8px 12px;border-radius:8px;transition:all .2s;}
.navLinks a:hover,.navLinks a.active{background:rgba(255,255,255,.1);color:#fff;}
.navCta{background:linear-gradient(135deg,var(--red),var(--red2))!important;color:#fff!important;padding:9px 18px!important;border-radius:10px!important;font-weight:800!important;}
.navCta:hover{opacity:.9;transform:translateY(-1px);}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:12px;font-weight:800;font-size:13px;font-family:var(--font-head);cursor:pointer;border:none;transition:all .2s;text-decoration:none;}
.btnRed{background:linear-gradient(135deg,var(--red),var(--red2));color:#fff;box-shadow:0 8px 24px rgba(220,38,38,.35);}
.btnRed:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(220,38,38,.45);}
.btnNavy{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;box-shadow:0 8px 24px rgba(11,31,69,.3);}
.btnNavy:hover{transform:translateY(-2px);}
.btnGhost{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2);}
.btnGhost:hover{background:rgba(255,255,255,.18);}
.btnGold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#1a0800;box-shadow:0 8px 24px rgba(245,158,11,.35);}
.btnGold:hover{transform:translateY(-2px);}
.btnOutline{background:transparent;color:var(--navy);border:2px solid var(--navy);border-radius:12px;}
.btnOutline:hover{background:var(--navy);color:#fff;}

/* ── BADGE ── */
.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:99px;font-size:11px;font-weight:800;font-family:var(--font-head);letter-spacing:.06em;text-transform:uppercase;}
.badgeRed{background:#fee2e2;color:var(--red2);border:1px solid #fca5a5;}
.badgeGold{background:#fef9c3;color:#92400e;border:1px solid #fde68a;}
.badgeGreen{background:#dcfce7;color:var(--green2);border:1px solid #86efac;}
.badgeNavy{background:#dbeafe;color:var(--navy);border:1px solid #93c5fd;}

/* ── FOOTER ── */
.footer{background:var(--navy);color:rgba(255,255,255,.6);padding:48px 0 28px;}
.footGrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:36px;}
.footBrand .brandName{color:#fff;font-size:18px;margin-bottom:8px;}
.footBrand p{font-size:12px;line-height:1.7;max-width:28ch;margin-top:10px;}
.footCol h4{font-family:var(--font-head);font-size:12px;font-weight:800;color:#fff;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px;}
.footCol a{display:block;font-size:12px;color:rgba(255,255,255,.55);padding:4px 0;transition:color .2s;}
.footCol a:hover{color:#fff;}
.footBottom{border-top:1px solid rgba(255,255,255,.08);padding-top:22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.footBottom p{font-size:11px;}
.footTrust{display:flex;gap:16px;flex-wrap:wrap;}
.footTrust span{font-size:10px;color:rgba(255,255,255,.4);font-family:var(--font-head);font-weight:700;letter-spacing:.05em;}

@media(max-width:900px){
  .footGrid{grid-template-columns:1fr 1fr;}
  h2{font-size:26px;}
}
@media(max-width:600px){
  .footGrid{grid-template-columns:1fr;}
  .navLinks{display:none;}
  h2{font-size:22px;}
  .section,.sectionAlt{padding:48px 0;}
}

/* ── WHATSAPP FLOATING BUTTON ── */
.waFloat{
  position:fixed;bottom:28px;right:28px;z-index:9999;
  display:flex;flex-direction:column;align-items:flex-end;gap:8px;
}
.waBubble{
  background:#25D366;color:#fff;
  border-radius:99px;padding:13px 20px 13px 16px;
  display:flex;align-items:center;gap:10px;
  box-shadow:0 8px 32px rgba(37,211,102,.45);
  cursor:pointer;text-decoration:none;
  font-family:var(--font-head);font-weight:800;font-size:13px;
  animation:waPulse 2s infinite;
  transition:transform .2s;
}
.waBubble:hover{transform:scale(1.05);animation:none;}
@keyframes waPulse{
  0%,100%{box-shadow:0 8px 32px rgba(37,211,102,.45);}
  50%{box-shadow:0 8px 48px rgba(37,211,102,.75),0 0 0 12px rgba(37,211,102,.15);}
}
.waIcon{width:26px;height:26px;flex-shrink:0;}
.waTooltip{
  background:rgba(0,0,0,.75);color:#fff;font-size:10px;font-weight:700;
  padding:5px 10px;border-radius:8px;font-family:var(--font-head);
  letter-spacing:.04em;white-space:nowrap;
}

/* ── NAV update — logo image ── */
.brandLogoImg{width:38px;height:38px;border-radius:10px;object-fit:cover;flex-shrink:0;}

/* ── Tab buttons fix ── */
.tab{background:rgba(255,255,255,.06);color:rgba(255,255,255,.6);border:none;padding:12px 24px;font-family:var(--font-head);font-size:12px;font-weight:800;cursor:pointer;transition:all .2s;letter-spacing:.04em;}
.tab.active{background:linear-gradient(135deg,var(--red),var(--red2));color:#fff;}
.tab:hover{color:#fff;}

/* ── PARTNERS BANNER ── */
.partnersBanner{background:linear-gradient(135deg,#0f2557,#1a3a80);padding:32px 0;text-align:center;border-top:3px solid var(--gold);}
.partnersBanner h3{color:#fff;font-size:18px;margin-bottom:8px;}
.partnersBanner p{color:rgba(255,255,255,.7);font-size:13px;margin-bottom:20px;max-width:70ch;margin-left:auto;margin-right:auto;}

/* ── ACCOUNTABILITY HIGHLIGHT ── */
.accountBox{background:linear-gradient(135deg,#1a0000,#3b0000);border:2px solid var(--red);border-radius:22px;padding:36px;color:#fff;position:relative;overflow:hidden;}
.accountBox::before{content:'⚖️';position:absolute;right:20px;top:10px;font-size:80px;opacity:.08;}
.accountBox h3{color:#fff;font-size:22px;margin-bottom:14px;}
.accountBox p{color:rgba(255,255,255,.8);font-size:13px;line-height:1.8;}
.accountBox .aBullets{margin-top:18px;display:flex;flex-direction:column;gap:10px;}
.accountBox .aBullet{display:flex;gap:12px;align-items:flex-start;font-size:12.5px;color:rgba(255,255,255,.8);}
.accountBox .aBullet::before{content:"⚡";flex-shrink:0;margin-top:1px;}

/* ── Font color fixes — dark text on light backgrounds ── */
.sectionAlt h2,.sectionAlt h3{color:var(--navy);}
.sectionAlt p{color:var(--muted);}
.section h2,.section h3{color:var(--navy);}
