/* Olympus Cyber – DFIR & MDR Partner | Static Landing Page
   Author: Olympus Cyber with help, of course.
   Notes: Pure CSS (no frameworks).
*/
:root{
  --blue-900:#0B2A4A;
  --blue-800:#102F57;
  --blue-700:#123662;
  --slate-900:#0f1f33;
  --slate-800:#1F2937;
  --silver:#C5D1E0;
  --cta:#5FA8FF;
  --white:#FFFFFF;
  --muted:#9FB1C6;
  --red:#C91937;
  --maxw:1100px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  color:var(--silver);
  background: radial-gradient(1200px 800px at 75% -10%, rgba(95,168,255,.12), transparent 70%) ,
              linear-gradient(180deg,var(--blue-900) 0%, var(--blue-900) 60%, var(--slate-900) 100%);
  line-height:1.6;
}

.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}

header.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(10,27,54,.85); backdrop-filter: blur(6px);
  border-bottom:1px solid rgba(197,209,224,.08);
}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--white)}
.brand .logo{width:32px;height:32px;display:grid;place-items:center;background:#1b3b66;border-radius:10px;border:1px solid rgba(255,255,255,.08)}
.brand .wordmark{font-weight:700;letter-spacing:.2px}
.badge{font-size:12px;font-weight:600;color:var(--silver);opacity:.85;border:1px solid rgba(197,209,224,.25);padding:3px 8px;border-radius:999px;margin-left:8px}

nav ul{list-style:none;margin:0;padding:0;display:flex;gap:18px;align-items:center}
nav a{color:var(--silver);text-decoration:none;font-weight:500;opacity:.9}
nav a:hover{opacity:1}
nav .btn{margin-left:8px}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 18px;border-radius:12px;font-weight:700;
  border:1px solid rgba(197,209,224,.35);
  background:transparent;color:var(--silver);text-decoration:none;
  transition:transform .12s ease, background-color .12s ease, border-color .12s ease, color .12s ease;
}
.btn.primary{background:var(--cta);color:#0b2240;border-color:transparent}
.btn.ghost{background:transparent}
.btn.danger{background:var(--red);border-color:transparent;color:#fff}
.btn:hover{transform:translateY(-1px)}
/* Optional hover polish */
.btn.primary:hover{filter:brightness(1.08)}
.btn.ghost:hover{border-color:#C5D1E0}

/* Hero */
.hero{position:relative;overflow:hidden;padding:80px 0 64px;}
.hero .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;}
.hero h1{color:var(--white);font-size:clamp(34px, 5vw, 54px);line-height:1.1;margin:0 0 16px;letter-spacing:-.018em;}
.hero p.lead{font-size:18px;color:#D6E2F2;max-width:640px;margin-bottom:28px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap}

/* ART PANEL with image drift + animated grid */
.hero .art{
  position:relative;
  min-height:360px;
  border-left:1px solid rgba(197,209,224,.08);
  border-radius:20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 70% 40%, rgba(95,168,255,.35), transparent 60%),
    linear-gradient(180deg, rgba(16,47,87,.6), rgba(15,31,51,.8));
}
.hero .art::before{
  content:"";
  position:absolute; inset:0;
  background-image:url('assets/hero-circuit.png');
  background-size:cover;
  background-position:60% 0;       /* start slightly to the right */
  opacity:.45;
  mix-blend-mode:lighten;
  z-index:0;
  animation:drift 24s linear infinite; /* gentle motion */
}
.hero .art::after{
  content:""; position:absolute; inset:0;
  background:
    repeating-linear-gradient(90deg, rgba(197,209,224,.08) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(0deg, rgba(197,209,224,.06) 0 1px, transparent 1px 42px);
  z-index:1;
  animation:scan 5s linear infinite;   /* grid scan */
}

/* Keyframes */
@keyframes scan{
  from{background-position:0 0, 0 0;}
  to{background-position:42px 42px, 42px 42px;}
}
@keyframes drift{
  0%  {background-position:60% 0;}
  50% {background-position:65% 10%;}
  100%{background-position:60% 0;}
}

/* Sections */
.section{padding:64px 0;border-top:1px solid rgba(197,209,224,.08)}
.section h2{color:var(--white);margin:0 0 12px;font-size:28px;letter-spacing:-.01em}
.section p.section-lead{color:#D6E2F2;margin:0 0 24px}

.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{padding:20px;border-radius:16px;background:rgba(255,255,255,.02);border:1px solid rgba(197,209,224,.12);}
.card h3{color:var(--white);margin:0 0 8px;font-size:18px}
.card p{margin:0;color:var(--muted);font-size:15px}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.step{padding:20px;border-radius:16px;background:rgba(255,255,255,.02);border:1px solid rgba(197,209,224,.12)}
.step .num{width:32px;height:32px;border-radius:8px;background:#173659;display:grid;place-items:center;color:#fff;font-weight:700;margin-bottom:10px}

.cta-band{padding:28px;border-radius:16px;background:linear-gradient(180deg,#0E2F56,#0C2748);border:1px solid rgba(197,209,224,.15);display:flex;align-items:center;gap:16px;justify-content:space-between;flex-wrap:wrap}

.footer{padding:36px 0;color:var(--muted);border-top:1px solid rgba(197,209,224,.08);margin-top:40px;}
.footer a{color:var(--silver);text-decoration:none}
small.muted{opacity:.8}

#hotline{position:fixed;right:18px;bottom:18px;z-index:9999;box-shadow:0 12px 30px rgba(0,0,0,.25);}

/* Responsive */
@media (max-width:920px){
  .hero .grid{grid-template-columns:1fr;gap:24px}
  .cards{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr}
  nav ul{display:none}
  .menu-toggle{display:inline-flex}
}
@media (min-width:921px){ .menu-toggle{display:none} }

/* Simple hamburger */
.menu-toggle{
  border:1px solid rgba(197,209,224,.35);
  background:transparent;color:var(--silver);
  padding:8px 10px;border-radius:10px;font-weight:700
}
.mobile-nav{display:none;background:rgba(10,27,54,.98);border-top:1px solid rgba(197,209,224,.1)}
.mobile-nav a{display:block;padding:14px 24px;border-bottom:1px solid rgba(197,209,224,.08);text-decoration:none;color:var(--silver)}
.mobile-nav .btn{margin:12px 24px}
