/* ============================================================
   SHARED CSS — iso27001.cognisecsecurity.com
   ISO 27001 Engine — Royal Blue theme
   ============================================================ */
:root{
  --accent:#1d4ed8;--accent2:#1e40af;--accent3:#1e3a8a;
  --navy:#0b1f45;--navy2:#0a2a63;--blue:#2563eb;--blue2:#1d4ed8;
  --gold:#f59e0b;--gold2:#fbbf24;
  --green:#16a34a;
  --white:#ffffff;--off:#eff6ff;--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(--accent2);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:#93c5fd;}
@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(--accent),var(--accent2));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(--accent),var(--accent2))!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;}
.btnBlue{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 8px 24px rgba(29,78,216,.35);}
.btnBlue:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(29,78,216,.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;}
.badgeBlue{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd;}
.badgeGold{background:#fef9c3;color:#92400e;border:1px solid #fde68a;}
.badgeNavy{background:#dbeafe;color:var(--navy);border:1px solid #93c5fd;}
.badgeAccent{background:#dbeafe;color:var(--accent2);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;}
.brandLogoImg{width:38px;height:38px;border-radius:10px;object-fit:cover;flex-shrink:0;}
.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(--accent),var(--accent2));color:#fff;}
.tab:hover{color:#fff;}
.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;}
.sectionAlt h2,.sectionAlt h3{color:var(--navy);}
.sectionAlt p{color:var(--muted);}
.section h2,.section h3{color:var(--navy);}
