/* ============================================================
   BRAINY NEURALS — AI for Construction & Infrastructure
   Editorial-engineering aesthetic. Anchor blue #0655FF.
   ============================================================ */
:root {
  --ink:#0A0A0B; --ink-2:#1A1A1D; --ink-3:#2A2A2E;
  --paper:#FFFFFF; --paper-2:#F4F4F2; --paper-3:#E8E8E4; --bone:#FAFAF8;
  --line:rgba(10,10,11,0.14); --line-soft:rgba(10,10,11,0.08); --line-dark:rgba(244,239,230,0.14);
  --muted:rgba(10,10,11,0.58); --muted-dark:rgba(244,239,230,0.62);
  --blue:#0655FF; --blue-2:#0444CC; --blue-tint:#DCE5FF; --blue-deep:#03257A;
  --signal:#B5FF3C; --rust:#C2410C;
  --r-sm:4px; --r:8px; --r-lg:14px; --r-xl:22px;
  --container:1320px; --gutter:32px;
  --t1:cubic-bezier(.2,.7,.2,1); --t2:cubic-bezier(.7,0,.3,1);
}
*,*::before,*::after { box-sizing: border-box; }
html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:80px; }
body { margin:0; font-family:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; font-weight:400; font-size:17px; line-height:1.5; color:var(--ink); background:var(--paper); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; font-feature-settings:"ss01","cv11"; }
img,svg { display:block; max-width:100%; }
a { color:inherit; text-decoration:none; }
button { font:inherit; color:inherit; background:none; border:0; cursor:pointer; padding:0; }
input,select,textarea { font:inherit; color:inherit; }
::selection { background:var(--ink); color:var(--paper); }
:focus-visible { outline:2px solid var(--blue); outline-offset:3px; border-radius:3px; }
p { margin:0 0 16px; text-wrap:pretty; }
hr { border:0; height:1px; background:var(--line); margin:0; }
.serif { font-family:"IBM Plex Serif",serif; font-weight:400; font-style:italic; letter-spacing:-0.01em; color:var(--blue); }
.mono { font-family:"IBM Plex Mono",monospace; font-feature-settings:"tnum"; }
.muted { color:var(--muted); }
.dark .muted { color:var(--muted-dark); }
.skip { position:absolute; left:-9999px; top:8px; background:var(--ink); color:var(--paper); padding:10px 14px; border-radius:var(--r); z-index:9999; }
.skip:focus { left:16px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; }
}

.wrap { max-width:var(--container); margin:0 auto; padding-left:var(--gutter); padding-right:var(--gutter); }
.section { padding:120px 0; position:relative; }
.section-tight { padding:80px 0; }
.dark { background:var(--ink); color:var(--bone); }
.dark a { color:var(--bone); }

/* Type */
.h-display { font-weight:500; font-size:clamp(40px,6.4vw,92px); line-height:0.96; letter-spacing:-0.035em; margin:0; }
.h-display em { font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; letter-spacing:-0.02em; }
.h-section { font-weight:500; font-size:clamp(32px,4.2vw,56px); line-height:1.04; letter-spacing:-0.028em; margin:0 0 24px; text-wrap:balance; }
.h-section em { font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; }
.h-card { font-weight:500; font-size:22px; line-height:1.25; letter-spacing:-0.015em; margin:0 0 10px; }
.lede { font-size:clamp(18px,1.4vw,22px); line-height:1.5; color:var(--ink); max-width:780px; margin:0 0 32px; text-wrap:pretty; }
.dark .lede { color:var(--bone); }
.micro { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); }
.dark .micro { color:var(--muted-dark); }
.micro-line { display:flex; align-items:center; gap:14px; margin-bottom:28px; }
.micro-line .rule { flex:1; height:1px; background:var(--line); }
.dark .micro-line .rule { background:var(--line-dark); }
.micro-line .sig { width:6px; height:6px; border-radius:50%; background:var(--signal); }

/* Buttons */
.btn { display:inline-flex; align-items:center; gap:10px; height:48px; min-height:44px; padding:0 22px; border-radius:999px; font-size:15px; font-weight:500; letter-spacing:-0.005em; white-space:nowrap; transition:background .2s var(--t1),color .2s var(--t1),border-color .2s var(--t1),transform .2s var(--t1); }
.btn .arr { transition:transform .25s var(--t1); display:inline-block; }
.btn:hover .arr { transform:translateX(4px); }
.btn-primary { background:var(--blue); color:#fff; }
.btn-primary:hover { background:var(--blue-2); }
.btn-ink { background:var(--ink); color:var(--bone); }
.btn-ink:hover { background:var(--ink-2); }
.btn-ghost { background:transparent; color:var(--ink); border:1px solid var(--line); }
.btn-ghost:hover { border-color:var(--ink); }
.dark .btn-ghost { color:var(--bone); border-color:var(--line-dark); }
.dark .btn-ghost:hover { border-color:var(--bone); }
.btn-light { background:#fff; color:var(--blue); }
.btn-light:hover { background:var(--ink); color:#fff; }

/* Nav */
.nav { position:sticky; top:0; z-index:50; background:rgba(255,255,255,0.78); backdrop-filter:blur(12px) saturate(140%); -webkit-backdrop-filter:blur(12px) saturate(140%); border-bottom:1px solid var(--line-soft); }
.nav-inner { display:flex; align-items:center; justify-content:space-between; height:64px; gap:24px; }
.brand { display:inline-flex; align-items:center; gap:10px; }
.brand-logo { height:34px; width:auto; display:block; }
.nav-links { display:flex; align-items:center; gap:4px; }
.nav-link { font-size:14.5px; color:var(--ink); padding:8px 12px; border-radius:8px; display:inline-flex; align-items:center; gap:6px; transition:background .15s var(--t1); }
.nav-link:hover { background:rgba(10,10,11,0.06); }
.nav-link .caret { font-size:10px; opacity:.5; }
.nav-cta { display:flex; align-items:center; gap:12px; }
.nav-mono { font-family:"IBM Plex Mono",monospace; font-size:11.5px; color:var(--muted); display:flex; align-items:center; gap:8px; }
.nav-mono .pulse { width:6px; height:6px; border-radius:50%; background:#16A34A; animation:pulse 2s infinite; }
@keyframes pulse { 0%{box-shadow:0 0 0 0 rgba(22,163,74,.5);} 70%{box-shadow:0 0 0 8px rgba(22,163,74,0);} 100%{box-shadow:0 0 0 0 rgba(22,163,74,0);} }
.nav-burger { display:none; width:44px; height:44px; border-radius:8px; border:1px solid var(--line); align-items:center; justify-content:center; }
.nav-burger span { display:block; width:18px; height:1.5px; background:var(--ink); position:relative; }
.nav-burger span::before, .nav-burger span::after { content:""; display:block; width:18px; height:1.5px; background:var(--ink); position:absolute; left:0; }
.nav-burger span::before { top:-6px; }
.nav-burger span::after { top:6px; }
@media (max-width:1080px) { .nav-links{display:none;} .nav-mono{display:none;} .nav-burger{display:inline-flex;} .nav-cta .btn-ink{display:none;} }
.mobile-menu { position:fixed; inset:64px 0 0 0; background:var(--paper); z-index:49; padding:32px var(--gutter); transform:translateY(-12px); opacity:0; pointer-events:none; transition:opacity .2s var(--t1),transform .25s var(--t1); overflow-y:auto; }
.mobile-menu.open { transform:translateY(0); opacity:1; pointer-events:auto; }
.mobile-menu nav { display:flex; flex-direction:column; gap:4px; }
.mobile-menu a { padding:14px 12px; font-size:18px; border-radius:8px; border-bottom:1px solid var(--line-soft); }
.mobile-menu .btn { margin-top:16px; align-self:flex-start; }

/* HERO */
.hero { position:relative; padding:64px 0 80px; overflow:hidden; }
.hero::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(10,10,11,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,11,0.025) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(180deg,transparent,black 30%,black 70%,transparent); -webkit-mask-image:linear-gradient(180deg,transparent,black 30%,black 70%,transparent); }
.hero .wrap { position:relative; }
.hero-grid { display:grid; grid-template-columns:1.35fr 0.95fr; gap:56px; align-items:start; }
.hero-eyebrow { display:inline-flex; align-items:center; gap:10px; padding:6px 14px 6px 8px; border:1px solid var(--line); border-radius:999px; font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:0.04em; background:var(--bone); margin-bottom:26px; }
.hero-eyebrow .badge { background:var(--ink); color:var(--paper); font-family:"IBM Plex Mono",monospace; font-size:10px; letter-spacing:0.06em; padding:3px 8px; border-radius:999px; text-transform:uppercase; }
.hero-eyebrow .dot { width:6px; height:6px; border-radius:50%; background:var(--signal); display:inline-block; animation:pulse-sig 2s infinite; }
@keyframes pulse-sig { 0%{box-shadow:0 0 0 0 rgba(181,255,60,.5);} 70%{box-shadow:0 0 0 8px rgba(181,255,60,0);} 100%{box-shadow:0 0 0 0 rgba(181,255,60,0);} }
.hero h1 { margin-bottom:28px; font-size:clamp(38px,5.6vw,76px); line-height:0.98; letter-spacing:-0.035em; font-weight:500; }
.hero h1 .blue { color:var(--blue); font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; }
.hero-sub { font-size:clamp(16.5px,1.25vw,19px); line-height:1.55; color:var(--ink); max-width:640px; margin-bottom:32px; }
.hero-sub .muted { color:var(--muted); }
.hero-cta { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.proof-grid { margin-top:56px; display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.proof-cell { padding:24px 20px; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:8px; position:relative; }
.proof-cell:last-child { border-right:0; }
.proof-cell .v { font-family:"IBM Plex Serif",serif; font-style:italic; font-weight:400; font-size:clamp(34px,3.4vw,52px); line-height:1; letter-spacing:-0.015em; color:var(--ink); display:inline-flex; align-items:baseline; gap:2px; }
.proof-cell .v .plus,.proof-cell .v .pct { color:var(--blue); font-size:0.7em; }
.proof-cell .v.text { font-family:"IBM Plex Sans",sans-serif; font-style:normal; font-size:clamp(18px,1.6vw,22px); font-weight:500; letter-spacing:-0.02em; line-height:1.15; }
.proof-cell .v.text::before { content:""; width:8px; height:8px; background:var(--blue); display:inline-block; margin-right:8px; transform:translateY(-2px); }
.proof-cell .l { font-family:"IBM Plex Mono",monospace; font-size:11px; text-transform:uppercase; letter-spacing:0.08em; color:var(--muted); line-height:1.3; }
@media (max-width:1080px) { .proof-grid{grid-template-columns:repeat(3,1fr);} .proof-cell{border-bottom:1px solid var(--line);} .proof-cell:nth-child(3n){border-right:0;} .proof-cell:nth-last-child(-n+3){border-bottom:0;} }
@media (max-width:600px) { .proof-grid{grid-template-columns:repeat(2,1fr);} .proof-cell{border-right:1px solid var(--line) !important; border-bottom:1px solid var(--line) !important;} .proof-cell:nth-child(2n){border-right:0 !important;} .proof-cell:nth-last-child(-n+2){border-bottom:0 !important;} }

.status-panel { position:relative; background:var(--ink); color:var(--bone); border-radius:var(--r-lg); padding:22px; border:1px solid var(--ink-3); font-family:"IBM Plex Mono",monospace; font-size:12.5px; overflow:hidden; box-shadow:0 30px 60px -30px rgba(10,10,11,0.45),0 2px 6px rgba(10,10,11,0.06); }
.status-panel::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(6,85,255,0.12),transparent 30%),radial-gradient(120% 60% at 100% 0%,rgba(6,85,255,0.18),transparent 50%); pointer-events:none; }
.sp-head { display:flex; align-items:center; justify-content:space-between; font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--muted-dark); position:relative; }
.sp-head .dots { display:flex; gap:6px; }
.sp-head .dots span { width:8px; height:8px; border-radius:50%; }
.sp-head .dots span:nth-child(1) { background:#5C5C66; }
.sp-head .dots span:nth-child(2) { background:#3B3B42; }
.sp-head .dots span:nth-child(3) { background:#2A2A2E; }
.sp-title { color:var(--bone); margin-top:14px; font-size:13.5px; letter-spacing:0.02em; position:relative; display:flex; align-items:center; gap:10px; }
.sp-title .sig-dot { width:7px; height:7px; border-radius:50%; background:var(--signal); animation:pulse-sig 2s infinite; }
.sp-sub { color:var(--muted-dark); margin-top:4px; font-size:11px; letter-spacing:0.06em; text-transform:uppercase; position:relative; }
.sp-rule { height:1px; background:var(--line-dark); margin:14px 0 12px; position:relative; }
.sp-rows { position:relative; display:flex; flex-direction:column; gap:9px; }
.sp-row { display:grid; grid-template-columns:60px 1fr auto; align-items:center; gap:12px; font-size:12px; }
.sp-row .ts { color:var(--muted-dark); }
.sp-row .ev { color:var(--bone); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sp-row .val { color:var(--signal); font-weight:500; }
.sp-row .val.blue { color:#7AA0FF; }
.sp-row .val.rust { color:#FFB089; }
.sp-meter { position:relative; margin-top:18px; border:1px solid var(--line-dark); border-radius:8px; padding:12px; }
.sp-meter .meter-lbl { display:flex; justify-content:space-between; font-size:10.5px; color:var(--muted-dark); letter-spacing:0.06em; text-transform:uppercase; margin-bottom:8px; }
.sp-meter .bars { display:grid; grid-template-columns:repeat(32,1fr); gap:2px; }
.sp-meter .bars i { display:block; height:22px; background:var(--ink-3); border-radius:1px; }
.sp-meter .bars i.on { background:var(--blue); }
.sp-meter .bars i.sig { background:var(--signal); }
.sp-foot { position:relative; margin-top:14px; display:flex; justify-content:space-between; font-size:10.5px; color:var(--muted-dark); letter-spacing:0.04em; }
.sp-foot .ok { color:var(--signal); }
@media (max-width:1080px) { .hero-grid{grid-template-columns:1fr; gap:48px;} }

/* TRUST BAR */
.trust { padding:80px 0 72px; background:var(--ink); color:var(--bone); position:relative; overflow:hidden; }
.trust::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(180deg,black,transparent 75%); -webkit-mask-image:linear-gradient(180deg,black,transparent 75%); opacity:0.55; }
.trust .wrap { position:relative; }
.trust-label { display:flex; align-items:center; gap:14px; font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted-dark); margin-bottom:36px; }
.trust-label .rule { flex:1; height:1px; background:var(--line-dark); }
.trust-label .count { color:var(--bone); }
.trust-label .sig { width:6px; height:6px; border-radius:50%; background:var(--signal); animation:pulse-sig 2s infinite; }
.cert-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; margin-bottom:32px; }
.cert-card { background:#fff; border:1px solid var(--line-dark); border-radius:var(--r); padding:18px 16px; display:flex; align-items:center; justify-content:center; min-height:110px; position:relative; transition:transform .25s var(--t1),box-shadow .25s var(--t1); }
.cert-card:hover { transform:translateY(-2px); box-shadow:0 12px 24px -10px rgba(0,0,0,0.4); }
.cert-card img { max-width:100%; max-height:64px; width:auto; height:auto; object-fit:contain; }
.cert-card .cert-tag { position:absolute; top:8px; left:10px; font-family:"IBM Plex Mono",monospace; font-size:8.5px; color:var(--muted); letter-spacing:0.1em; text-transform:uppercase; }
.cert-card::after { content:""; position:absolute; right:10px; bottom:8px; width:5px; height:5px; border:1px solid var(--line); border-left:0; border-top:0; }
@media (max-width:1100px) { .cert-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:600px) { .cert-grid{grid-template-columns:repeat(2,1fr);} }
.client-logos { display:grid; grid-template-columns:repeat(7,1fr); gap:1px; background:var(--line-dark); border:1px solid var(--line-dark); border-radius:var(--r-lg); overflow:hidden; margin-bottom:32px; }
.logo-slot { padding:22px 18px; display:flex; align-items:center; justify-content:center; background:var(--ink); position:relative; min-height:96px; transition:background .25s var(--t1); }
.logo-slot:hover { background:var(--ink-2); }
.logo-slot img { max-width:100%; max-height:38px; opacity:0.78; transition:opacity .25s var(--t1); }
.logo-slot:hover img { opacity:1; }
.logo-slot .micro { position:absolute; top:8px; left:10px; font-family:"IBM Plex Mono",monospace; font-size:9px; color:rgba(255,255,255,0.28); letter-spacing:0.1em; }
.logo-slot::after { content:""; position:absolute; right:10px; bottom:8px; width:5px; height:5px; border:1px solid rgba(255,255,255,0.18); border-left:0; border-top:0; }
@media (max-width:1100px) { .client-logos{grid-template-columns:repeat(4,1fr);} }
@media (max-width:700px) { .client-logos{grid-template-columns:repeat(2,1fr);} }
.founder-strip { padding:22px 24px; background:rgba(255,255,255,0.04); border:1px solid var(--line-dark); color:var(--bone); border-radius:var(--r-lg); display:flex; align-items:center; gap:22px; justify-content:space-between; flex-wrap:wrap; }
.founder-strip .who { display:flex; align-items:center; gap:16px; }
.founder-strip .avatar { width:52px; height:52px; border-radius:50%; background-image:url("assets/founder-mitesh-patel.jpeg"); background-size:cover; background-position:center 22%; border:1px solid var(--line-dark); }
.founder-strip .label { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted-dark); margin-bottom:4px; }
.founder-strip .name { font-size:17px; font-weight:500; color:var(--bone); }
.founder-strip .cred { font-size:13.5px; color:var(--muted-dark); margin-top:2px; }
.founder-strip .nvidia-pill { display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border:1px solid var(--line-dark); border-radius:999px; font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:0.04em; }
.founder-strip .nvidia-pill .nv-dot { width:7px; height:7px; background:#76B900; border-radius:50%; }

/* LANDSCAPE */
.landscape-grid { display:grid; grid-template-columns:5fr 7fr; gap:80px; align-items:start; }
.landscape-grid .body p { font-size:16.5px; line-height:1.65; margin-bottom:18px; color:var(--ink); }
.landscape-grid .body p:last-child { margin-bottom:0; }
.landscape-stats { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bone); margin-bottom:24px; overflow:hidden; }
.landscape-stats .ls { padding:24px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.landscape-stats .ls:nth-child(2n) { border-right:0; }
.landscape-stats .ls:nth-last-child(-n+2) { border-bottom:0; }
.landscape-stats .v { font-family:"IBM Plex Serif",serif; font-style:italic; font-weight:400; font-size:clamp(36px,4vw,56px); line-height:1; letter-spacing:-0.02em; }
.landscape-stats .v .pct { color:var(--blue); font-size:0.7em; }
.landscape-stats .l { margin-top:10px; font-family:"IBM Plex Mono",monospace; font-size:11px; text-transform:uppercase; letter-spacing:0.08em; color:var(--muted); line-height:1.4; }
.landscape-cite { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.04em; color:var(--muted); padding:16px 0; border-top:1px solid var(--line); }
@media (max-width:980px) { .landscape-grid{grid-template-columns:1fr; gap:32px;} }

/* INDUSTRY CHAPTER */
.industries-chapter { position:relative; background:var(--paper); }
.industries-chapter .wrap { position:relative; }
.chapter-head { padding:64px 0 24px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:5fr 7fr; gap:80px; align-items:end; }
.chapter-head .lede { margin:0; }
.chapter-grid { display:grid; grid-template-columns:260px 1fr; gap:64px; padding:64px 0 0; }
.chapter-index { position:sticky; top:88px; align-self:start; font-family:"IBM Plex Mono",monospace; font-size:12.5px; line-height:1.5; border-top:1px solid var(--line); padding-top:16px; }
.chapter-index .ix-head { font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted); margin-bottom:14px; display:flex; justify-content:space-between; }
.chapter-index ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:4px; }
.chapter-index li a { display:grid; grid-template-columns:28px 1fr 12px; align-items:start; gap:8px; padding:9px 6px; border-radius:6px; color:var(--muted); transition:background .15s var(--t1),color .15s var(--t1); }
.chapter-index li a:hover { background:var(--bone); color:var(--ink); }
.chapter-index li a .ix-n { font-size:10.5px; }
.chapter-index li a .ix-t { font-family:"IBM Plex Sans",sans-serif; font-size:13.5px; line-height:1.35; letter-spacing:-0.005em; color:inherit; }
.chapter-index li a .ix-mk { opacity:0; transition:opacity .15s var(--t1); color:var(--blue); }
.chapter-index li a.active { color:var(--ink); background:var(--bone); }
.chapter-index li a.active .ix-mk { opacity:1; }
.chapter-index li a.active .ix-n { color:var(--blue); font-weight:500; }
.industry-entries { display:flex; flex-direction:column; gap:80px; padding-bottom:96px; }
.industry-entry { scroll-margin-top:88px; position:relative; }
.industry-entry > header { display:grid; grid-template-columns:60px 1fr; gap:16px; align-items:baseline; margin-bottom:28px; }
.industry-entry .ie-num { font-family:"IBM Plex Mono",monospace; font-size:12.5px; color:var(--blue); letter-spacing:0.04em; padding-top:14px; position:relative; }
.industry-entry .ie-num::before { content:""; position:absolute; left:0; top:6px; width:8px; height:8px; background:var(--blue); }
.industry-entry .ie-num .ix-text { padding-left:18px; }
.industry-entry h2 { font-weight:500; font-size:clamp(28px,3.2vw,44px); line-height:1.06; letter-spacing:-0.025em; margin:0; text-wrap:balance; }
.industry-entry h2 em { font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; color:var(--blue); }
.industry-entry .lead { font-size:17px; line-height:1.6; max-width:760px; margin:0 0 32px; color:var(--ink); text-wrap:pretty; }
.industry-entry h3 { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted); margin:0 0 20px; display:flex; align-items:center; gap:12px; }
.industry-entry h3::before { content:""; width:16px; height:1px; background:var(--ink); }
.deploy-list { display:flex; flex-direction:column; gap:18px; margin-bottom:28px; }
.deploy-item { padding:22px 26px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bone); position:relative; transition:background .2s var(--t1),border-color .2s var(--t1); }
.deploy-item:hover { background:#fff; border-color:var(--ink); }
.deploy-item p { margin:0; font-size:15.5px; line-height:1.6; color:var(--ink); }
.deploy-item .di-lead { font-weight:500; color:var(--ink); display:inline; border-bottom:1px solid var(--blue); padding-bottom:1px; }
.compliance-row { padding:18px 22px; border:1px solid var(--line); border-radius:var(--r); background:var(--paper); display:grid; grid-template-columns:140px 1fr; gap:20px; align-items:start; }
.compliance-row .cl-label { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); padding-top:2px; }
.compliance-row .cl-body { font-size:14.5px; line-height:1.6; color:var(--ink); }
@media (max-width:980px) { .chapter-head{grid-template-columns:1fr; gap:24px; padding:48px 0 24px;} .chapter-grid{grid-template-columns:1fr; gap:32px; padding-top:36px;} .chapter-index{position:static;} .compliance-row{grid-template-columns:1fr; gap:8px;} }

/* DARK CTA #1 */
.dark-cta-1 { background:var(--ink); color:var(--bone); position:relative; overflow:hidden; }
.dark-cta-1::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px); background-size:56px 56px; mask-image:radial-gradient(circle at 20% 50%,black,transparent 80%); -webkit-mask-image:radial-gradient(circle at 20% 50%,black,transparent 80%); opacity:0.6; }
.dark-cta-1 .wrap { position:relative; }
.dark-cta-1-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; }
.dark-cta-1 h2 { font-weight:500; font-size:clamp(32px,3.6vw,52px); line-height:1.04; letter-spacing:-0.028em; margin:0 0 24px; text-wrap:balance; color:#fff; }
.dark-cta-1 h2 em { font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; color:rgba(255,255,255,0.78); }
.dark-cta-1 .cred { margin-top:24px; padding:14px 18px; border:1px solid var(--line-dark); border-radius:999px; display:inline-flex; align-items:center; gap:12px; font-size:14px; color:var(--bone); }
.dark-cta-1 .cred .nv-dot { width:7px; height:7px; border-radius:50%; background:#76B900; }
.dark-cta-1 .pri-cta { margin-top:28px; }
.inquiry-form { background:var(--ink-2); border:1px solid var(--ink-3); border-radius:var(--r-lg); padding:28px; }
.inquiry-form .form-head { display:flex; justify-content:space-between; align-items:center; padding-bottom:18px; margin-bottom:22px; border-bottom:1px solid var(--line-dark); font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted-dark); }
.inquiry-form .form-head .sig { color:var(--signal); display:inline-flex; align-items:center; gap:8px; }
.inquiry-form .form-head .sig::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--signal); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:12px; }
.form-row.single { grid-template-columns:1fr; }
.field { display:flex; flex-direction:column; gap:6px; }
.field label { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--muted-dark); }
.field input, .field select, .field textarea { background:rgba(255,255,255,0.04); border:1px solid var(--ink-3); border-radius:6px; padding:12px 14px; color:var(--bone); font-size:14.5px; font-family:inherit; min-height:44px; }
.field input::placeholder, .field textarea::placeholder { color:rgba(244,239,230,0.32); }
.field textarea { resize:vertical; min-height:100px; }
.field input:focus, .field select:focus, .field textarea:focus { outline:none; border-color:var(--blue); background:rgba(255,255,255,0.08); }
.field select { appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23bababa' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>"); background-repeat:no-repeat; background-position:right 14px center; padding-right:36px; }
.req { color:var(--blue); }
.form-foot { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:18px; flex-wrap:wrap; }
.form-fine { font-family:"IBM Plex Mono",monospace; font-size:10.5px; color:var(--muted-dark); letter-spacing:0.04em; }
.form-success { display:none; padding:22px; background:rgba(181,255,60,0.08); border:1px solid rgba(181,255,60,0.32); border-radius:var(--r); color:var(--bone); font-size:14.5px; line-height:1.55; }
.form-success.show { display:block; }
.form-success .ok { color:var(--signal); font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:8px; display:flex; align-items:center; gap:8px; }
.form-success .ok::before { content:""; width:8px; height:8px; background:var(--signal); border-radius:50%; }
.form-success a { color:var(--signal); border-bottom:1px solid currentColor; }
@media (max-width:980px) { .dark-cta-1-grid{grid-template-columns:1fr; gap:36px;} }
@media (max-width:600px) { .form-row{grid-template-columns:1fr;} }


/* SME */
.sme { background:var(--paper-2); position:relative; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.sme::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:repeating-linear-gradient(135deg,transparent 0 14px,rgba(10,10,11,0.018) 14px 15px); }
.sme .wrap { position:relative; }
.sme-head { max-width:880px; margin-bottom:56px; }
.sme-tag { display:inline-flex; align-items:center; gap:10px; padding:6px 12px 6px 8px; background:var(--ink); color:var(--bone); border-radius:999px; font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:22px; }
.sme-tag .sig { width:6px; height:6px; border-radius:50%; background:var(--signal); }
.sme h2 em { color:var(--blue); }
.sme-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.sme-card { background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:32px; display:flex; flex-direction:column; gap:18px; position:relative; }
.sme-card.full { grid-column:span 2; }
.sme-card .num { font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:0.06em; color:var(--blue); display:inline-flex; align-items:center; gap:8px; }
.sme-card .num::before { content:""; width:8px; height:8px; background:var(--blue); }
.sme-card h3 { font-weight:500; font-size:clamp(20px,1.8vw,26px); line-height:1.2; letter-spacing:-0.015em; margin:0; }
.sme-card .problem, .sme-card .solution { font-size:15px; line-height:1.6; color:var(--ink); padding:16px 0; border-top:1px solid var(--line); }
.sme-card .problem .lbl, .sme-card .solution .lbl { display:block; font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); margin-bottom:8px; }
.sme-card .solution .lbl { color:var(--blue); }
.sme-extras { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:0; }
.sme-extras li { padding:16px 0; border-top:1px solid var(--line); font-size:15px; line-height:1.6; }
.sme-extras li:first-child { border-top:0; padding-top:0; }
.sme-extras li strong { font-weight:500; color:var(--ink); }
@media (max-width:880px) { .sme-grid{grid-template-columns:1fr;} .sme-card.full{grid-column:auto;} }

/* COMPLIANCE */
.compliance { background:var(--ink); color:var(--bone); position:relative; overflow:hidden; }
.compliance::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(180deg,black,transparent 80%); -webkit-mask-image:linear-gradient(180deg,black,transparent 80%); opacity:0.5; }
.compliance .wrap { position:relative; }
.compliance .lede { color:var(--bone); }
.compliance h2 em { color:var(--blue-tint); }
.compliance-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:1px; background:var(--line-dark); border:1px solid var(--line-dark); border-radius:var(--r-lg); overflow:hidden; margin-top:24px; }
.cmp-block { padding:32px; background:var(--ink); display:flex; flex-direction:column; gap:14px; transition:background .2s var(--t1); }
.cmp-block:hover { background:var(--ink-2); }
.cmp-block .tag { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.08em; text-transform:uppercase; color:var(--signal); display:flex; align-items:center; gap:10px; }
.cmp-block .tag::before { content:""; width:8px; height:8px; background:var(--signal); }
.cmp-block h3 { font-weight:500; font-size:18px; line-height:1.3; letter-spacing:-0.012em; margin:0; color:var(--bone); }
.cmp-block p { font-size:14.5px; line-height:1.6; color:var(--muted-dark); margin:0; }
.cmp-block.span-12 { grid-column:span 12; }
.cmp-block.span-8 { grid-column:span 8; }
.cmp-block.span-7 { grid-column:span 7; }
.cmp-block.span-6 { grid-column:span 6; }
.cmp-block.span-5 { grid-column:span 5; }
.cmp-block.span-4 { grid-column:span 4; }
@media (max-width:980px) { .cmp-block.span-8,.cmp-block.span-7,.cmp-block.span-6,.cmp-block.span-5,.cmp-block.span-4 { grid-column:span 12; } }

/* SERVICE MAPPING */
.svc-map { border-top:1px solid var(--ink); border-bottom:1px solid var(--line); }
.svc-row { display:grid; grid-template-columns:1.2fr 1.7fr 1fr; gap:32px; padding:28px 0; border-bottom:1px solid var(--line); align-items:start; position:relative; transition:background .2s var(--t1); }
.svc-row:hover { background:var(--bone); }
.svc-row .col-problem { font-size:16px; font-weight:500; letter-spacing:-0.005em; line-height:1.4; color:var(--ink); text-wrap:pretty; }
.svc-row .col-solution { font-size:14.5px; line-height:1.6; color:var(--muted); text-wrap:pretty; }
.svc-row .col-service { justify-self:end; text-align:right; }
.svc-row .col-service a { display:inline-flex; align-items:center; gap:6px; padding:10px 14px; background:var(--bone); border:1px solid var(--line); border-radius:999px; font-family:"IBM Plex Mono",monospace; font-size:12px; letter-spacing:0.02em; transition:background .2s var(--t1),border-color .2s var(--t1); }
.svc-row .col-service a:hover { background:var(--ink); color:var(--bone); border-color:var(--ink); }
.svc-row .col-service a .arr { transition:transform .2s var(--t1); }
.svc-row:hover .col-service a .arr { transform:translateX(3px); }
@media (max-width:980px) { .svc-row{grid-template-columns:1fr; gap:12px;} .svc-row .col-service{justify-self:start; text-align:left;} }

/* CASES */
.cases-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; grid-auto-rows:minmax(320px,auto); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--r-lg); overflow:hidden; }
.case-card { background:var(--bone); padding:32px; display:flex; flex-direction:column; gap:14px; position:relative; transition:background .2s var(--t1); }
.case-card:hover { background:#fff; }
.case-card.featured { grid-row:span 2; background:var(--ink); color:var(--bone); padding:40px; }
.case-card.featured:hover { background:var(--ink-2); }
.case-tag { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted); display:flex; align-items:center; gap:8px; }
.case-tag .sq { width:8px; height:8px; background:var(--blue); }
.case-card.featured .case-tag { color:var(--muted-dark); }
.case-card.featured .case-tag .sq { background:var(--signal); }
.case-metric { font-weight:500; font-size:clamp(32px,3.6vw,48px); line-height:0.98; letter-spacing:-0.03em; margin:0; text-wrap:balance; }
.case-metric em { font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; }
.case-card.featured .case-metric { font-size:clamp(40px,4.6vw,64px); }
.case-desc { font-size:14.5px; line-height:1.6; color:var(--muted); }
.case-card.featured .case-desc { color:var(--muted-dark); font-size:15.5px; max-width:520px; }
.case-ba { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:8px; padding-top:16px; border-top:1px solid var(--line); }
.case-card.featured .case-ba { border-top-color:var(--line-dark); }
.case-ba .ba-cell .ba-l { font-family:"IBM Plex Mono",monospace; font-size:10px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); margin-bottom:6px; display:flex; align-items:center; gap:6px; }
.case-ba .ba-cell .ba-l .dot { width:5px; height:5px; border-radius:50%; background:var(--rust); }
.case-ba .ba-cell.after .ba-l .dot { background:var(--blue); }
.case-card.featured .case-ba .ba-cell.after .ba-l .dot { background:var(--signal); }
.case-card.featured .case-ba .ba-cell .ba-l { color:var(--muted-dark); }
.case-ba .ba-cell .ba-t { font-size:13.5px; line-height:1.45; color:var(--ink); }
.case-card.featured .case-ba .ba-cell .ba-t { color:var(--bone); }
.case-foot { margin-top:auto; padding-top:16px; border-top:1px solid var(--line); font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.04em; color:var(--muted); text-wrap:pretty; }
.case-card.featured .case-foot { border-top-color:var(--line-dark); color:var(--muted-dark); }
@media (max-width:980px) { .cases-grid{grid-template-columns:1fr 1fr;} .case-card.featured{grid-row:auto; grid-column:span 2;} }
@media (max-width:640px) { .cases-grid{grid-template-columns:1fr;} .case-card.featured{grid-column:auto;} }

/* DARK CTA #2 - ATMOSPHERIC BLUE */
.dark-cta-2 { position:relative; padding:96px 0; color:#fff; text-align:left; background:radial-gradient(60% 80% at 100% 0%,rgba(255,255,255,0.18),transparent 55%),radial-gradient(70% 100% at 0% 100%,rgba(2,30,120,0.55),transparent 65%),linear-gradient(115deg,#0858FF 0%,#0A48E0 55%,#0334B8 100%); overflow:hidden; }
.dark-cta-2::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,0.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.08) 1px,transparent 1px); background-size:56px 56px; mask-image:radial-gradient(circle at 30% 40%,black,transparent 85%); -webkit-mask-image:radial-gradient(circle at 30% 40%,black,transparent 85%); }
.dark-cta-2::after { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(10px 10px at 15% 25%,rgba(255,255,255,0.55),transparent 70%),radial-gradient(8px 8px at 85% 70%,rgba(181,255,60,0.85),transparent 70%); }
.dark-cta-2 .wrap { position:relative; }
.dark-cta-2 h2 { font-weight:500; font-size:clamp(32px,4.2vw,56px); line-height:1.04; letter-spacing:-0.028em; margin:0 0 16px; color:#fff; text-wrap:balance; max-width:18ch; }
.dark-cta-2 h2 em { font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; color:rgba(255,255,255,0.86); }
.dark-cta-2 .sub { color:rgba(255,255,255,0.82); font-size:16px; max-width:600px; margin:0 0 40px; }
.roi-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:40px 0; }
.roi-card { padding:28px; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.18); border-radius:var(--r-lg); display:flex; flex-direction:column; gap:10px; }
.roi-card .v { font-family:"IBM Plex Serif",serif; font-style:italic; font-weight:400; font-size:clamp(34px,3.6vw,48px); line-height:1; letter-spacing:-0.015em; color:#fff; }
.roi-card .v .accent { color:var(--signal); font-size:0.7em; }
.roi-card .l { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:rgba(255,255,255,0.76); line-height:1.4; }
.dark-cta-2 .btn-light { background:#fff; color:var(--blue); }
.dark-cta-2 .btn-light:hover { background:var(--ink); color:#fff; }
@media (max-width:980px) { .roi-stats{grid-template-columns:repeat(2,1fr);} }
@media (max-width:480px) { .roi-stats{grid-template-columns:1fr;} }

/* READINESS */
.readiness { background:var(--bone); position:relative; }
.readiness::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:repeating-linear-gradient(90deg,transparent 0 23px,rgba(10,10,11,0.025) 23px 24px); mask-image:linear-gradient(180deg,black,transparent 80%); -webkit-mask-image:linear-gradient(180deg,black,transparent 80%); }
.readiness .wrap { position:relative; }
.readiness h2 em { color:var(--blue); }
.assessment { display:grid; grid-template-columns:1.3fr 1fr; gap:48px; margin-top:48px; }
.assessment-form { display:flex; flex-direction:column; gap:18px; }
.dim { background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:22px 24px; transition:border-color .2s var(--t1); }
.dim:focus-within { border-color:var(--ink); }
.dim-head { display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin-bottom:14px; }
.dim-head h3 { font-weight:500; font-size:17px; line-height:1.3; letter-spacing:-0.01em; margin:0; display:flex; align-items:baseline; gap:12px; }
.dim-head h3 .ix { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.06em; color:var(--blue); }
.dim-head .score { font-family:"IBM Plex Mono",monospace; font-size:14px; font-weight:500; color:var(--ink); white-space:nowrap; }
.dim-head .score .max { color:var(--muted); }
.dim p { font-size:13.5px; line-height:1.55; color:var(--muted); margin:0 0 16px; }
.dim input[type="range"] { -webkit-appearance:none; appearance:none; width:100%; height:28px; background:transparent; cursor:pointer; padding:0; margin:0; }
.dim input[type="range"]::-webkit-slider-runnable-track { height:6px; background:var(--paper-3); border-radius:999px; background-image:linear-gradient(90deg,var(--blue) 0%,var(--blue) var(--pct,0%),var(--paper-3) var(--pct,0%)); }
.dim input[type="range"]::-moz-range-track { height:6px; background:var(--paper-3); border-radius:999px; }
.dim input[type="range"]::-moz-range-progress { height:6px; background:var(--blue); border-radius:999px; }
.dim input[type="range"]::-webkit-slider-thumb { -webkit-appearance:none; appearance:none; width:22px; height:22px; border-radius:50%; background:var(--ink); border:3px solid #fff; box-shadow:0 2px 6px rgba(10,10,11,0.18),0 0 0 1px var(--line); margin-top:-8px; cursor:grab; }
.dim input[type="range"]:active::-webkit-slider-thumb { cursor:grabbing; }
.dim input[type="range"]::-moz-range-thumb { width:22px; height:22px; border-radius:50%; background:var(--ink); border:3px solid #fff; box-shadow:0 2px 6px rgba(10,10,11,0.18),0 0 0 1px var(--line); }
.dim input[type="range"]:focus-visible { outline:none; }
.dim input[type="range"]:focus-visible::-webkit-slider-thumb { box-shadow:0 0 0 4px rgba(6,85,255,0.3),0 2px 6px rgba(10,10,11,0.18); }
.dim-scale { display:flex; justify-content:space-between; font-family:"IBM Plex Mono",monospace; font-size:10.5px; color:var(--muted); margin-top:8px; letter-spacing:0.04em; }
.score-panel { position:sticky; top:88px; background:var(--ink); color:var(--bone); border-radius:var(--r-lg); padding:32px; align-self:start; display:flex; flex-direction:column; gap:20px; }
.score-head { display:flex; justify-content:space-between; align-items:center; font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted-dark); padding-bottom:14px; border-bottom:1px solid var(--line-dark); }
.score-head .sig { color:var(--signal); display:inline-flex; align-items:center; gap:6px; }
.score-head .sig::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--signal); }
.score-display { display:flex; align-items:baseline; gap:12px; }
.score-display .num { font-family:"IBM Plex Serif",serif; font-style:italic; font-weight:400; font-size:88px; line-height:0.9; letter-spacing:-0.025em; color:#fff; font-variant-numeric:tabular-nums; }
.score-display .denom { font-family:"IBM Plex Mono",monospace; font-size:18px; color:var(--muted-dark); letter-spacing:0.04em; }
.gauge { height:8px; background:var(--ink-3); border-radius:999px; overflow:hidden; position:relative; }
.gauge .fill { height:100%; background:var(--blue); width:0%; transition:width .3s var(--t1),background .3s var(--t1); border-radius:999px; }
.gauge.tier-1 .fill { background:var(--blue); }
.gauge.tier-2 .fill { background:#7AA0FF; }
.gauge.tier-3 .fill { background:var(--rust); }
.gauge-ticks { display:grid; grid-template-columns:50fr 30fr 20fr; gap:0; margin-top:8px; }
.gauge-ticks span { font-family:"IBM Plex Mono",monospace; font-size:9.5px; letter-spacing:0.08em; color:var(--muted-dark); text-transform:uppercase; padding-right:4px; }
.tier-cards { display:flex; flex-direction:column; gap:10px; }
.tier-card { padding:14px 16px; border:1px solid var(--line-dark); border-radius:var(--r); display:flex; flex-direction:column; gap:4px; transition:border-color .2s var(--t1),background .2s var(--t1); }
.tier-card.active { border-color:var(--bone); background:rgba(255,255,255,0.04); }
.tier-card .t-label { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted-dark); display:flex; align-items:center; gap:10px; justify-content:space-between; }
.tier-card.active .t-label { color:var(--signal); }
.tier-card .t-name { font-size:14.5px; font-weight:500; color:var(--bone); }
.tier-card .t-desc { font-size:12.5px; line-height:1.5; color:var(--muted-dark); }
.tier-card .t-cta { display:inline-flex; align-items:center; gap:6px; margin-top:6px; font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:0.04em; color:var(--bone); border-bottom:1px solid var(--line-dark); padding-bottom:1px; align-self:flex-start; }
.tier-card.active .t-cta { color:var(--signal); border-color:var(--signal); }
.report-capture { margin-top:4px; padding-top:16px; border-top:1px solid var(--line-dark); display:flex; flex-direction:column; gap:10px; }
.report-capture .lbl { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; color:var(--muted-dark); }
.report-capture .row { display:flex; gap:8px; }
.report-capture input { flex:1; background:rgba(255,255,255,0.04); border:1px solid var(--line-dark); border-radius:999px; padding:10px 16px; color:var(--bone); font-size:13.5px; min-height:44px; }
.report-capture input::placeholder { color:rgba(244,239,230,0.42); }
.report-capture input:focus { outline:none; border-color:var(--blue); }
.report-capture button { background:var(--bone); color:var(--ink); border-radius:999px; padding:0 18px; font-family:"IBM Plex Mono",monospace; font-size:12px; letter-spacing:0.04em; text-transform:uppercase; min-height:44px; }
.report-capture button:hover { background:#fff; }
.report-capture .ok-msg { display:none; color:var(--signal); font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:0.04em; }
.report-capture.sent .ok-msg { display:block; }
.report-capture.sent .row { display:none; }
@media (max-width:1080px) { .assessment{grid-template-columns:1fr; gap:32px;} .score-panel{position:static;} }

/* INTEGRATIONS */
.integrations { display:grid; grid-template-columns:repeat(12,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--r-lg); overflow:hidden; margin-top:16px; }
.itg { padding:32px; background:var(--paper); display:flex; flex-direction:column; gap:14px; transition:background .2s var(--t1); }
.itg:hover { background:var(--bone); }
.itg .tag { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.08em; text-transform:uppercase; color:var(--blue); display:flex; align-items:center; gap:10px; }
.itg .tag::before { content:""; width:8px; height:8px; background:var(--blue); }
.itg h3 { font-weight:500; font-size:19px; line-height:1.25; letter-spacing:-0.012em; margin:0; }
.itg p { font-size:14.5px; line-height:1.6; color:var(--muted); margin:0; }
.itg .stack { display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.itg .stack .chip { padding:4px 10px; font-family:"IBM Plex Mono",monospace; font-size:11px; border:1px solid var(--line); border-radius:var(--r-sm); background:var(--bone); color:var(--ink); }
.itg.span-7 { grid-column:span 7; }
.itg.span-5 { grid-column:span 5; }
.itg.span-12 { grid-column:span 12; }
.itg.span-6 { grid-column:span 6; }
.itg.span-4 { grid-column:span 4; }
@media (max-width:980px) { .itg.span-7,.itg.span-5,.itg.span-6,.itg.span-4{grid-column:span 12;} }

/* FAQ */
.faq-wrap { display:grid; grid-template-columns:1fr 1.8fr; gap:64px; align-items:start; }
.faq-aside .lede { margin-bottom:16px; }
.faq-aside .mono-list { margin-top:24px; font-family:"IBM Plex Mono",monospace; font-size:11.5px; color:var(--muted); display:flex; flex-direction:column; gap:8px; }
.faq-aside .mono-list span { display:flex; gap:10px; }
.faq-aside .mono-list .n { color:var(--blue); }
.faq-list { border-top:1px solid var(--line); list-style:none; padding:0; margin:0; }
.faq-item { border-bottom:1px solid var(--line); }
.faq-item > summary { width:100%; display:grid; grid-template-columns:48px 1fr 32px; gap:16px; align-items:start; padding:22px 0; text-align:left; cursor:pointer; list-style:none; -webkit-tap-highlight-color:transparent; }
.faq-item > summary::-webkit-details-marker { display:none; }
.faq-item .q-ix { font-family:"IBM Plex Mono",monospace; font-size:12px; color:var(--muted); letter-spacing:0.04em; padding-top:6px; }
.faq-item .q-text { font-size:18px; font-weight:500; letter-spacing:-0.012em; line-height:1.4; color:var(--ink); padding-top:2px; }
.faq-item .q-icon { width:32px; height:32px; border-radius:50%; border:1px solid var(--line); display:grid; place-items:center; position:relative; transition:background .2s var(--t1),border-color .2s var(--t1); justify-self:end; }
.faq-item .q-icon::before, .faq-item .q-icon::after { content:""; position:absolute; background:var(--ink); transition:transform .25s var(--t1); }
.faq-item .q-icon::before { width:11px; height:1.5px; }
.faq-item .q-icon::after { width:1.5px; height:11px; }
.faq-item[open] .q-icon { background:var(--ink); border-color:var(--ink); }
.faq-item[open] .q-icon::before, .faq-item[open] .q-icon::after { background:var(--bone); }
.faq-item[open] .q-icon::after { transform:scaleY(0); }
.faq-answer { padding:0 0 24px 64px; font-size:15.5px; line-height:1.65; color:var(--ink); max-width:820px; }
.faq-answer p { margin:0 0 14px; color:var(--ink); }
.faq-answer ol { padding-left:22px; margin:0 0 14px; }
.faq-answer ol li { margin-bottom:6px; line-height:1.55; }
.faq-answer a.inline-link { border-bottom:1px solid var(--blue); color:var(--blue); padding-bottom:1px; font-weight:500; }
.faq-answer a.inline-link:hover { background:var(--blue-tint); }
@media (max-width:980px) { .faq-wrap{grid-template-columns:1fr; gap:32px;} .faq-answer{padding-left:64px;} }
@media (max-width:540px) { .faq-item > summary{grid-template-columns:32px 1fr 28px; gap:10px;} .faq-item .q-text{font-size:16.5px;} .faq-answer{padding-left:42px;} }

/* RELATED */
.related-table { border-top:1px solid var(--ink); border-bottom:1px solid var(--line); margin-top:16px; }
.rt-row { display:grid; grid-template-columns:1.1fr 0.9fr 2fr; gap:32px; padding:28px 0; border-bottom:1px solid var(--line); align-items:start; transition:background .2s var(--t1); }
.rt-row:hover { background:var(--bone); }
.rt-row .col-svc { font-size:17px; font-weight:500; letter-spacing:-0.005em; line-height:1.35; color:var(--ink); }
.rt-row .col-url a { font-family:"IBM Plex Mono",monospace; font-size:12.5px; color:var(--blue); letter-spacing:0.02em; border-bottom:1px solid var(--line); padding-bottom:1px; word-break:break-all; }
.rt-row .col-url a:hover { border-color:var(--blue); }
.rt-row .col-desc { font-size:14.5px; line-height:1.6; color:var(--muted); text-wrap:pretty; }
.rt-row.cross .col-svc::before { content:""; display:inline-block; width:6px; height:6px; background:var(--blue); margin-right:10px; vertical-align:middle; }
@media (max-width:980px) { .rt-row{grid-template-columns:1fr; gap:8px;} }

/* CONTACT */
.contact { background:var(--ink); color:var(--bone); position:relative; overflow:hidden; }
.contact::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px); background-size:64px 64px; mask-image:radial-gradient(circle at 80% 30%,black,transparent 80%); -webkit-mask-image:radial-gradient(circle at 80% 30%,black,transparent 80%); opacity:0.55; }
.contact .wrap { position:relative; }
.contact-grid { display:grid; grid-template-columns:1fr 1.05fr; gap:64px; }
.contact h2 { font-weight:500; font-size:clamp(34px,4.2vw,56px); line-height:1.04; letter-spacing:-0.028em; margin:0 0 22px; color:#fff; text-wrap:balance; }
.contact h2 em { font-style:italic; font-family:"IBM Plex Serif",serif; font-weight:400; color:rgba(255,255,255,0.82); }
.contact .sub { font-size:16.5px; line-height:1.6; color:var(--muted-dark); max-width:560px; margin:0 0 32px; }
.contact-promise { display:inline-flex; align-items:center; gap:12px; padding:12px 18px; border:1px solid var(--line-dark); border-radius:999px; font-size:13.5px; }
.contact-promise .ok-dot { width:8px; height:8px; border-radius:50%; background:var(--signal); }
.contact .founder-line { margin-top:28px; display:flex; align-items:center; gap:14px; }
.contact .founder-line .avatar { width:48px; height:48px; border-radius:50%; background-image:url("assets/founder-mitesh-patel.jpeg"); background-size:cover; background-position:center 22%; border:1px solid var(--line-dark); }
.contact .founder-line .who { display:flex; flex-direction:column; gap:2px; }
.contact .founder-line .nm { font-size:15.5px; font-weight:500; color:var(--bone); }
.contact .founder-line .ti { font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:0.04em; color:var(--muted-dark); }
.trust-marks { margin-top:36px; display:flex; gap:12px; flex-wrap:wrap; }
.trust-marks .tm { background:rgba(255,255,255,0.04); border:1px solid var(--line-dark); border-radius:var(--r); padding:14px 16px; display:flex; align-items:center; gap:12px; min-height:60px; }
.trust-marks .tm img { height:28px; width:auto; object-fit:contain; background:#fff; padding:4px 8px; border-radius:4px; }
.trust-marks .tm .nm { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.04em; color:var(--bone); }
.contact-right { background:var(--ink-2); border:1px solid var(--ink-3); border-radius:var(--r-lg); padding:32px; }
.calendly-slot { border:1px dashed var(--line-dark); border-radius:var(--r); padding:24px; text-align:center; margin-bottom:24px; position:relative; min-height:220px; display:flex; flex-direction:column; justify-content:center; gap:8px; }
.calendly-slot[data-calendly-url=""]::before { content:"PLACEHOLDER · DATA-CALENDLY-URL"; position:absolute; top:12px; left:12px; font-family:"IBM Plex Mono",monospace; font-size:9.5px; letter-spacing:0.08em; color:rgba(244,239,230,0.32); }
.calendly-slot .h { font-size:17px; font-weight:500; color:var(--bone); }
.calendly-slot .sub-cal { font-family:"IBM Plex Mono",monospace; font-size:11.5px; color:var(--muted-dark); letter-spacing:0.04em; }
.calendly-slot .btn { align-self:center; margin-top:8px; }
@media (max-width:980px) { .contact-grid{grid-template-columns:1fr; gap:32px;} }

/* FOOTER */
.footer { background:var(--ink); color:var(--bone); padding:80px 0 32px; border-top:1px solid var(--line-dark); }
.footer-top { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:48px; padding-bottom:48px; border-bottom:1px solid var(--line-dark); }
.footer-brand .brand-logo { height:48px; filter:brightness(0) invert(1); opacity:0.92; }
.footer-brand .desc { color:var(--muted-dark); font-size:14px; line-height:1.6; margin:20px 0 0; max-width:360px; }
.footer-brand .creds { margin-top:24px; display:flex; flex-wrap:wrap; gap:8px; }
.footer-brand .creds span { font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:0.04em; padding:5px 10px; border:1px solid var(--line-dark); border-radius:999px; color:var(--muted-dark); }
.footer-brand .creds span::before { content:""; display:inline-block; width:5px; height:5px; border-radius:50%; background:var(--blue); margin-right:8px; vertical-align:middle; }
.footer-col h4 { font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted-dark); margin:0 0 16px; font-weight:500; }
.footer-col ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:11px; }
.footer-col a { color:var(--bone); font-size:14px; transition:color .15s var(--t1); }
.footer-col a:hover { color:#7AA0FF; }
.footer-bot { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding-top:28px; gap:16px; font-family:"IBM Plex Mono",monospace; font-size:11px; color:var(--muted-dark); letter-spacing:0.04em; }
.footer-bot .copy { justify-self:start; }
.footer-bot .legal { justify-self:end; display:flex; gap:24px; }
.footer-bot .legal a:hover { color:var(--bone); }
.social-row { display:inline-flex; align-items:center; gap:8px; }
.social-row .social { width:36px; height:36px; display:inline-grid; place-items:center; border-radius:999px; background:rgba(255,255,255,0.04); border:1px solid var(--line-dark); transition:background .2s var(--t1),border-color .2s var(--t1); }
.social-row .social:hover { background:rgba(255,255,255,0.10); border-color:var(--bone); }
.social-row .social img { width:16px; height:16px; filter:invert(1) brightness(1.2); opacity:0.82; transition:opacity .2s var(--t1); }
.social-row .social:hover img { opacity:1; }
@media (max-width:980px) { .footer-top{grid-template-columns:1fr 1fr;} .footer-bot{grid-template-columns:1fr; justify-items:start; gap:18px;} .footer-bot .copy,.footer-bot .legal{justify-self:start;} }
@media (max-width:600px) { .footer-top{grid-template-columns:1fr;} }

/* STICKY CTA */
.sticky-cta { position:fixed; bottom:20px; left:50%; transform:translate(-50%,80px); z-index:60; display:inline-flex; align-items:center; gap:12px; padding:8px 8px 8px 18px; background:var(--ink); color:var(--bone); border-radius:999px; font-size:13.5px; box-shadow:0 18px 40px -10px rgba(10,10,11,0.4); transition:transform .35s var(--t1),opacity .25s var(--t1); opacity:0; pointer-events:none; }
.sticky-cta.show { transform:translate(-50%,0); opacity:1; pointer-events:auto; }
.sticky-cta .pulse-dot { width:7px; height:7px; border-radius:50%; background:var(--signal); animation:pulse-sig 2s infinite; }
.sticky-cta a.cta-btn { background:var(--blue); color:#fff; padding:8px 14px; border-radius:999px; font-weight:500; display:inline-flex; gap:6px; align-items:center; }
.sticky-cta a.cta-btn:hover { background:var(--blue-2); }
@media (max-width:600px) { .sticky-cta{left:16px; right:16px; transform:translate(0,80px);} .sticky-cta.show{transform:translate(0,0);} .sticky-cta .label{display:none;} }

.fade-up { opacity:0; transform:translateY(16px); transition:opacity .7s var(--t1),transform .7s var(--t1); }
.fade-up.in { opacity:1; transform:translateY(0); }
.center { text-align:center; }

