/* ==================================================================
   Infolytik - dark design system (v0.2)  -  grounded copy build
   Tokens per notes/website/DESIGN-DIRECTION.md
   ================================================================== */
:root{
  --ik-bg-sunken:#070A11; --ik-bg:#0A0E17; --ik-s1:#0F1420; --ik-s2:#161C2B; --ik-s3:#1E2740;
  --ik-bd:#1A2131; --ik-bd2:#29334A; --ik-bd3:#3B475F;
  --ik-tx:#F5F7FA; --ik-tx2:#AAB3C5; --ik-tx3:#6C7689; --ik-tx4:#495064;
  --ik-azure:#1C9AD6; --ik-amber:#F5A01E; --ik-crimson:#E1352B; --ik-emerald:#1BA34B; --ik-lime:#9DC63F;
  --ik-r1:6px; --ik-r2:10px; --ik-r3:16px; --ik-r4:24px;
  --ik-max:1160px;
}

/* ---- Front page: strip Blocksy chrome + go full-bleed dark ------- */
body.ik-dark{background:var(--ik-bg);color:var(--ik-tx);font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;}
body.ik-dark #header,body.ik-dark .ct-header,body.ik-dark #footer,body.ik-dark .ct-footer,
body.ik-dark .entry-header,body.ik-dark .ct-breadcrumbs,body.ik-dark .page-title,
body.ik-dark .hero-section{display:none!important;}
/* Force our heading colors over Blocksy's (protect amber highlight spans) */
body.ik-dark .ik-page h1,body.ik-dark .ik-page h2,body.ik-dark .ik-page h3,body.ik-dark .ik-page h4{color:var(--ik-tx)!important;}
body.ik-dark .ik-page .ik-hl{color:var(--ik-amber)!important;}
body.ik-dark #main,body.ik-dark #main-container,body.ik-dark .ct-container,body.ik-dark .ct-container-full,
body.ik-dark .entry-content,body.ik-dark .ct-content-block,body.ik-dark article,body.ik-dark #content,
body.ik-dark #dslc-theme-content,body.ik-dark #dslc-theme-content-inner{
  max-width:none!important;width:100%!important;margin:0!important;padding:0!important;min-height:0!important;}
body.ik-dark .entry-content>*{margin-block:0;}

.ik-page{font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--ik-bg);color:var(--ik-tx);-webkit-font-smoothing:antialiased;line-height:1.6;}
.ik-page *{box-sizing:border-box;}
.ik-wrap{max-width:var(--ik-max);margin-inline:auto;padding-inline:24px;}
.ik-page h2,.ik-page h3{margin:0;}

/* ---- Utility bar ------------------------------------------------- */
.ik-utilitybar{background:var(--ik-bg-sunken);color:var(--ik-tx3);border-bottom:1px solid var(--ik-bd);
  font-size:12.5px;letter-spacing:.01em;text-align:center;padding:8px 16px;}

/* ---- Nav --------------------------------------------------------- */
.ik-nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:32px;
  padding:16px 24px;max-width:var(--ik-max);margin-inline:auto;backdrop-filter:blur(8px);}
.ik-brand img{height:30px;width:auto;display:block;}
.ik-menu{display:flex;align-items:center;gap:2px;margin:0 0 0 12px;padding:0;list-style:none;}
.ik-menu>li{position:relative;}
.ik-menu a,.ik-menu-top{color:var(--ik-tx2);text-decoration:none;font-size:14.5px;font-weight:500;transition:color .15s;
  display:inline-flex;align-items:center;gap:5px;padding:10px 12px;background:none;border:0;cursor:pointer;font-family:inherit;}
.ik-menu a:hover,.ik-menu-top:hover,.ik-has-mega:hover .ik-menu-top,.ik-has-mega:focus-within .ik-menu-top{color:var(--ik-tx);}
.ik-caret{width:13px;height:13px;transition:transform .2s;opacity:.7;}
.ik-has-mega:hover .ik-caret,.ik-has-mega:focus-within .ik-caret{transform:rotate(180deg);}
.ik-mega{position:absolute;top:100%;left:0;padding-top:12px;opacity:0;visibility:hidden;transform:translateY(6px);
  transition:opacity .16s,transform .16s,visibility .16s;z-index:60;}
.ik-has-mega:hover .ik-mega,.ik-has-mega:focus-within .ik-mega{opacity:1;visibility:visible;transform:translateY(0);}
.ik-mega-panel{width:410px;background:var(--ik-s2);border:1px solid var(--ik-bd2);border-radius:var(--ik-r3);
  padding:10px;box-shadow:0 30px 80px -30px rgba(0,0,0,.85);display:flex;flex-direction:column;gap:2px;}
.ik-mega-item{display:flex;gap:14px;align-items:flex-start;padding:12px 14px;border-radius:var(--ik-r2);transition:background .15s;text-decoration:none;}
.ik-mega-item:hover{background:var(--ik-s3);}
.ik-mega-ic{flex:none;width:38px;height:38px;border-radius:10px;background:var(--ik-bg);border:1px solid var(--ik-bd2);
  display:flex;align-items:center;justify-content:center;color:var(--ik-azure);}
.ik-mega-ic svg{width:20px;height:20px;}
.ik-mega-t{display:block;color:var(--ik-tx);font-weight:600;font-size:.95rem;margin-bottom:2px;}
.ik-mega-d{display:block;color:var(--ik-tx3);font-size:.82rem;line-height:1.4;}
.ik-nav-spacer{flex:1;}
.ik-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-weight:600;font-size:14.5px;border-radius:var(--ik-r1);padding:11px 20px;
  text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;border:1px solid transparent;white-space:nowrap;}
.ik-btn-primary{background:var(--ik-azure);color:#04121B;box-shadow:0 0 0 1px rgba(28,154,214,.4),0 8px 24px -10px rgba(28,154,214,.7);}
.ik-btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(28,154,214,.6),0 12px 30px -10px rgba(28,154,214,.85);}
.ik-btn-ghost{background:transparent;color:var(--ik-tx);border-color:var(--ik-bd3);}
.ik-btn-ghost:hover{border-color:var(--ik-tx3);background:rgba(255,255,255,.03);}

/* ---- Shared section furniture ----------------------------------- */
.ik-section{padding:96px 0;position:relative;}
.ik-section.alt{background:linear-gradient(180deg,var(--ik-bg),var(--ik-bg-sunken));}
.ik-eyebrow{display:inline-block;font-size:12.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  color:var(--ik-azure);margin-bottom:16px;}
.ik-shead{max-width:720px;margin:0 auto 48px;text-align:center;}
.ik-shead h2{font-size:clamp(1.9rem,3.4vw,2.75rem);font-weight:700;letter-spacing:-.02em;line-height:1.1;}
.ik-shead p{color:var(--ik-tx2);font-size:1.08rem;margin:16px auto 0;max-width:60ch;}
.ik-hl{color:var(--ik-amber);}

/* ---- Hero -------------------------------------------------------- */
.ik-hero{position:relative;overflow:hidden;padding:72px 0 40px;text-align:center;isolation:isolate;}
.ik-hero::before{content:"";position:absolute;inset:0;z-index:-2;
  background:
    radial-gradient(60% 55% at 22% 8%, rgba(28,154,214,.20), transparent 60%),
    radial-gradient(52% 50% at 85% 30%, rgba(245,160,30,.12), transparent 62%),
    radial-gradient(45% 45% at 50% 100%, rgba(157,198,63,.10), transparent 60%);}
.ik-hero::after{content:"";position:absolute;inset:0;z-index:-2;opacity:.5;
  background-image:linear-gradient(rgba(58,73,95,.09) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(58,73,95,.09) 1px,transparent 1px);
  background-size:48px 48px;mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent 80%);}
.ik-eyebrow-pill{display:inline-block;font-size:12.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  color:var(--ik-azure);padding:6px 14px;border:1px solid var(--ik-bd2);border-radius:999px;
  background:rgba(28,154,214,.06);margin-bottom:22px;}
.ik-hero h1{font-size:clamp(2.5rem,5.2vw,4.15rem);font-weight:700;line-height:1.04;letter-spacing:-.022em;
  margin:0 auto 18px;max-width:15ch;color:var(--ik-tx);}
.ik-sub{font-size:clamp(1rem,1.4vw,1.2rem);color:var(--ik-tx2);max-width:64ch;margin:0 auto 30px;line-height:1.6;}
.ik-cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:56px;}
.ik-frame{position:relative;max-width:960px;margin:0 auto;border:1px solid var(--ik-bd2);border-radius:var(--ik-r3);
  background:linear-gradient(180deg,var(--ik-s2),var(--ik-s1));
  box-shadow:0 40px 120px -40px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.02) inset;overflow:hidden;}
.ik-frame-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid var(--ik-bd);background:var(--ik-s2);}
.ik-frame-bar i{width:11px;height:11px;border-radius:50%;background:var(--ik-bd3);display:block;}
.ik-frame-bar i:nth-child(1){background:#E1352B55;} .ik-frame-bar i:nth-child(2){background:#F5A01E55;} .ik-frame-bar i:nth-child(3){background:#1BA34B55;}
.ik-frame-bar span{margin-left:12px;font-size:12px;color:var(--ik-tx3);}
.ik-frame-body{position:relative;aspect-ratio:16/9;background:
  radial-gradient(50% 60% at 50% 40%,rgba(28,154,214,.10),transparent 70%),var(--ik-bg-sunken);
  display:flex;align-items:center;justify-content:center;}
.ik-frame-note{color:var(--ik-tx4);font-size:13px;letter-spacing:.03em;}
.ik-play{width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid var(--ik-bd3);
  display:flex;align-items:center;justify-content:center;position:absolute;box-shadow:0 0 40px rgba(28,154,214,.35);}
.ik-play::after{content:"";border-left:18px solid var(--ik-tx);border-top:11px solid transparent;border-bottom:11px solid transparent;margin-left:4px;}

/* ---- Logo wall -------------------------------------------------- */
.ik-trusted{padding:44px 0 8px;text-align:center;}
.ik-trusted p{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ik-tx3);margin:0 0 22px;}
.ik-logostrip{display:flex;gap:44px;justify-content:center;align-items:center;flex-wrap:wrap;opacity:.6;}
.ik-logostrip span{font-weight:700;font-size:17px;color:var(--ik-tx2);letter-spacing:.02em;}

/* ---- Cards / grids ---------------------------------------------- */
.ik-grid{display:grid;gap:20px;grid-template-columns:repeat(3,1fr);}
.ik-grid.two{grid-template-columns:repeat(2,1fr);}
.ik-card{background:var(--ik-s1);border:1px solid var(--ik-bd);border-radius:var(--ik-r3);padding:28px;
  transition:border-color .18s,transform .18s,box-shadow .18s;}
.ik-card:hover{border-color:var(--ik-bd2);transform:translateY(-2px);box-shadow:0 20px 50px -30px rgba(0,0,0,.9);}
.ik-card .ik-kicker{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ik-azure);margin-bottom:10px;}
.ik-card h3{font-size:1.3rem;font-weight:600;letter-spacing:-.01em;margin-bottom:10px;}
.ik-card p{color:var(--ik-tx2);font-size:.98rem;}
.ik-card .ik-proofline{margin-top:16px;padding-top:16px;border-top:1px solid var(--ik-bd);color:var(--ik-amber);font-weight:600;font-size:.92rem;}
.ik-num{color:var(--ik-lime);font-weight:700;font-size:1.05rem;margin-right:6px;}
.ik-card-link{display:block;text-decoration:none;color:inherit;}
.ik-cardlink{margin-top:16px;color:var(--ik-azure);font-weight:600;font-size:.92rem;}
.ik-card-link:hover .ik-cardlink{text-decoration:underline;}

/* ---- Flagship feature block (Convert) --------------------------- */
.ik-flagship{position:relative;border:1px solid var(--ik-bd2);border-radius:var(--ik-r4);padding:clamp(28px,4vw,52px);overflow:hidden;
  background:
    radial-gradient(120% 140% at 0% 0%,rgba(28,154,214,.15),transparent 55%),
    radial-gradient(120% 140% at 100% 100%,rgba(245,160,30,.10),transparent 55%),var(--ik-s1);}
.ik-badge{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ik-amber);
  border:1px solid var(--ik-bd2);border-radius:999px;padding:5px 12px;margin-bottom:16px;}
.ik-flagship h3{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:700;letter-spacing:-.02em;margin-bottom:14px;max-width:24ch;}
.ik-flagship p{color:var(--ik-tx2);max-width:66ch;font-size:1.05rem;}
.ik-phaselist{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
.ik-phaselist span{border:1px solid var(--ik-bd2);border-radius:999px;padding:7px 14px;font-size:13px;color:var(--ik-tx2);background:var(--ik-bg);}
.ik-phaselist span.on{color:#04121B;background:var(--ik-amber);border-color:transparent;font-weight:700;}

/* ---- Proof stat band -------------------------------------------- */
.ik-proof{background:var(--ik-bg-sunken);border-block:1px solid var(--ik-bd);}
.ik-proof .ik-wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:56px;}
.ik-stat{text-align:center;}
.ik-stat b{display:block;font-size:clamp(2rem,3.6vw,3rem);font-weight:700;color:var(--ik-amber);letter-spacing:-.02em;line-height:1;}
.ik-stat span{display:block;margin-top:10px;color:var(--ik-tx3);font-size:.86rem;line-height:1.4;}

/* ---- Comparison line -------------------------------------------- */
.ik-compare .ik-wrap{text-align:center;}
.ik-compare .ik-big{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:600;letter-spacing:-.015em;max-width:22ch;margin:0 auto 14px;line-height:1.2;}
.ik-compare .ik-big em{font-style:normal;color:var(--ik-azure);}
.ik-chips{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px;}
.ik-chip{border:1px solid var(--ik-bd2);border-radius:999px;padding:8px 16px;color:var(--ik-tx2);font-size:13.5px;background:var(--ik-s1);}

/* ---- CTA band --------------------------------------------------- */
.ik-ctaband{text-align:center;position:relative;overflow:hidden;}
.ik-ctaband::before{content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(60% 120% at 50% 0%,rgba(28,154,214,.16),transparent 60%);}
.ik-ctaband h2{font-size:clamp(1.8rem,3.4vw,2.7rem);font-weight:700;letter-spacing:-.02em;max-width:20ch;margin:0 auto 26px;line-height:1.1;}

/* ---- Footer ----------------------------------------------------- */
.ik-footer{border-top:1px solid var(--ik-bd);background:var(--ik-bg-sunken);padding:48px 0 40px;}
.ik-footer .ik-wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.ik-footer img{height:26px;}
.ik-footer nav{display:flex;gap:24px;flex-wrap:wrap;}
.ik-footer a{color:var(--ik-tx3);text-decoration:none;font-size:14px;}
.ik-footer a:hover{color:var(--ik-tx2);}
.ik-footer small{color:var(--ik-tx4);font-size:12.5px;}

/* ---- Accordion (native <details>, no JS) ------------------------ */
.ik-acc{border:1px solid var(--ik-bd);border-radius:var(--ik-r2);background:var(--ik-s1);margin-bottom:12px;overflow:hidden;transition:border-color .18s;}
.ik-acc[open]{border-color:var(--ik-bd2);}
.ik-acc summary{list-style:none;cursor:pointer;padding:20px 24px;display:flex;align-items:center;gap:16px;font-weight:600;font-size:1.06rem;color:var(--ik-tx);}
.ik-acc summary::-webkit-details-marker{display:none;}
.ik-acc summary .ik-acc-k{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ik-azure);margin-right:12px;}
.ik-acc summary::after{content:"+";color:var(--ik-azure);font-size:1.5rem;font-weight:300;line-height:1;margin-left:auto;}
.ik-acc[open] summary::after{content:"\2212";}
.ik-acc summary:hover{background:rgba(255,255,255,.02);}
.ik-acc .ik-acc-body{padding:0 24px 22px;color:var(--ik-tx2);font-size:.98rem;max-width:70ch;}

/* ---- Split layout (text + component) ---------------------------- */
.ik-split{display:grid;grid-template-columns:0.9fr 1.1fr;gap:48px;align-items:start;}
.ik-split .ik-eyebrow{margin-bottom:14px;}
.ik-split h2{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:700;letter-spacing:-.02em;line-height:1.1;margin-bottom:16px;}
.ik-split p{color:var(--ik-tx2);}

/* ---- Dark comparison table -------------------------------------- */
.ik-tbl{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--ik-bd);border-radius:var(--ik-r3);overflow:hidden;}
.ik-tbl th,.ik-tbl td{padding:16px 20px;text-align:left;font-size:.96rem;border-bottom:1px solid var(--ik-bd);}
.ik-tbl thead th{background:var(--ik-s2);color:var(--ik-tx);font-weight:600;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;}
.ik-tbl thead th:last-child{color:var(--ik-azure);}
.ik-tbl td{color:var(--ik-tx2);}
.ik-tbl td:first-child{color:var(--ik-tx);font-weight:500;}
.ik-tbl tr:last-child td{border-bottom:none;}
.ik-tbl td.mm{color:var(--ik-lime);font-weight:600;}
.ik-tbl td.dim{color:var(--ik-tx3);}

/* ---- Code / formula callout ------------------------------------- */
.ik-code{font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:.88rem;color:var(--ik-lime);
  background:var(--ik-bg-sunken);border:1px solid var(--ik-bd);border-radius:8px;padding:12px 14px;display:block;margin-top:12px;white-space:pre-wrap;line-height:1.55;}
.ik-card.muted{background:transparent;border-style:dashed;}
.ik-card.muted h3,.ik-card.muted p{color:var(--ik-tx3);}
.ik-card.win{border-color:var(--ik-bd2);box-shadow:0 0 0 1px rgba(157,198,63,.15),0 20px 50px -30px rgba(0,0,0,.9);}

/* ---- Systems diagram (Control Plane, Atlan-style, native) ------- */
.ik-diagram{border:1px solid var(--ik-bd2);border-radius:var(--ik-r4);background:var(--ik-s1);padding:26px 28px;max-width:1000px;margin:0 auto;
  background-image:linear-gradient(rgba(58,73,95,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(58,73,95,.07) 1px,transparent 1px);background-size:34px 34px;}
.ik-lane{display:grid;grid-template-columns:170px 1fr;gap:22px;align-items:center;}
.ik-lane-label{color:var(--ik-tx3);font-size:1rem;line-height:1.25;}
.ik-lane-label b{display:block;color:var(--ik-azure);font-weight:600;}
.ik-lane-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.ik-dcard{background:var(--ik-s2);border:1px solid var(--ik-bd);border-radius:12px;padding:16px 10px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;transition:border-color .15s,transform .15s;}
.ik-dcard:hover{border-color:var(--ik-bd2);transform:translateY(-2px);}
.ik-dtile{width:46px;height:46px;border-radius:11px;background:var(--ik-bg);border:1px solid var(--ik-bd2);display:flex;align-items:center;justify-content:center;color:var(--ik-tx2);}
.ik-dtile svg{width:24px;height:24px;}
.ik-dcard span{font-size:.84rem;color:var(--ik-tx2);font-weight:500;line-height:1.25;}
.ik-conn{padding-left:192px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;height:26px;}
.ik-conn i{justify-self:center;width:2px;height:100%;border-radius:2px;opacity:.55;
  background:repeating-linear-gradient(180deg,var(--ik-azure) 0 5px,transparent 5px 11px);
  animation:ikflow 1.1s linear infinite;}
@keyframes ikflow{to{background-position:0 11px;}}
@media (prefers-reduced-motion: reduce){.ik-conn i{animation:none;}}
.ik-lane-cards.ai .ik-dtile{color:var(--ik-azure);border-color:var(--ik-bd2);background:rgba(28,154,214,.07);}
.ik-band{border:1px solid var(--ik-azure);border-radius:16px;background:linear-gradient(180deg,rgba(28,154,214,.11),rgba(28,154,214,.02));padding:20px 22px;box-shadow:0 0 0 1px rgba(28,154,214,.15),0 12px 44px -12px rgba(28,154,214,.32);}
.ik-band-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.ik-band-head img{height:26px;width:auto;}
.ik-band-head b{font-size:1.18rem;color:var(--ik-tx);font-weight:600;}
.ik-pills{display:flex;flex-wrap:wrap;gap:8px;}
.ik-pill{border:1px solid var(--ik-bd2);background:var(--ik-s2);border-radius:999px;padding:6px 13px;font-size:.75rem;font-weight:600;letter-spacing:.04em;color:var(--ik-tx2);text-transform:uppercase;display:inline-flex;align-items:center;gap:7px;}
.ik-pill::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--ik-azure);opacity:.85;flex:none;}
@media(max-width:760px){
  .ik-lane{grid-template-columns:1fr;gap:12px;}
  .ik-lane-cards{grid-template-columns:repeat(2,1fr);}
  .ik-conn{padding-left:0;}
}

/* ---- Responsive ------------------------------------------------- */
@media(max-width:860px){
  .ik-menu{display:none;}
  .ik-hero{padding-top:48px;}
  .ik-grid,.ik-grid.two,.ik-proof .ik-wrap,.ik-split{grid-template-columns:1fr;}
  .ik-split{gap:28px;}
  .ik-proof .ik-wrap{gap:36px;}
  .ik-section{padding:64px 0;}
  .ik-logostrip{gap:26px;}
  .ik-tbl th,.ik-tbl td{padding:12px 14px;font-size:.9rem;}
}
