:root {
  --green: #078c52;
  --green-2: #0bbf69;
  --green-3: #7cf2ad;
  --green-pale: #dff8e9;
  --ink: #07150d;
  --ink-2: #10261a;
  --paper: #edf4ef;
  --surface: #ffffff;
  --muted: #657168;
  --line: #c7d6cc;
  --line-dark: rgba(227, 255, 238, .16);
  --danger: #e24c4f;
  --shadow: 0 22px 60px rgba(7, 38, 21, .10);
  --max: 1220px;
  --nav-h: 72px;
}

[data-theme="dark"] {
  --ink: #effaf3;
  --ink-2: #dff5e8;
  --paper: #06100a;
  --surface: #0b1910;
  --muted: #9eaea4;
  --line: #203329;
  --green-pale: #102a1b;
  --shadow: 0 22px 65px rgba(0, 0, 0, .32);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
body {
  margin: 0;
  overflow-x: hidden;
  position: relative;
  isolation: isolate;
  color: var(--ink);
  background: var(--paper);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  transition: color .25s ease, background-color .25s ease;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background-image: linear-gradient(rgba(7, 140, 82, .082) 1px, transparent 1px), linear-gradient(90deg, rgba(7, 140, 82, .082) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to bottom, #000, transparent 78%);
}
body::after {
  content: "";
  position: fixed;
  width: 440px;
  height: 440px;
  top: -250px;
  right: -130px;
  z-index: -1;
  border-radius: 50%;
  background: rgba(11, 191, 105, .14);
  filter: blur(95px);
  pointer-events: none;
}
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
img { display: block; max-width: 100%; }
svg { display: block; }
:focus-visible { outline: 3px solid var(--green-2); outline-offset: 4px; }
.container { width: min(var(--max), calc(100% - 48px)); margin-inline: auto; }
.display { margin: 0; font-family: Sora, Inter, sans-serif; font-weight: 600; letter-spacing: -.055em; line-height: 1.02; }
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  color: var(--green);
  font: 600 .68rem/1 "JetBrains Mono", monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.eyebrow::before { content: "["; color: var(--green-2); }
.eyebrow::after { content: "]"; color: var(--green-2); }
.button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 0 22px;
  border: 1px solid var(--green);
  border-radius: 7px;
  color: #fff;
  background: var(--green);
  box-shadow: 6px 6px 0 rgba(7, 140, 82, .15);
  font-size: .86rem;
  font-weight: 700;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.button:hover { transform: translate(-2px, -2px); background: var(--green-2); box-shadow: 9px 9px 0 rgba(7, 140, 82, .13); }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--green); font-size: .82rem; font-weight: 700; }
.text-link span { transition: transform .18s ease; }
.text-link:hover span { transform: translateX(5px); }

/* Navigation */
.site-header { position: fixed; inset: 0 0 auto; z-index: 100; border-top: 4px solid var(--green-2); }
.nav-shell {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  min-height: var(--nav-h);
  margin-top: 14px;
  padding: 0 10px 0 17px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: color-mix(in srgb, var(--surface) 94%, transparent);
  box-shadow: 0 12px 35px rgba(7, 32, 18, .08);
  backdrop-filter: blur(16px);
}
.brand { display: inline-flex; align-items: center; gap: 10px; white-space: nowrap; font: 700 1.02rem Sora, sans-serif; letter-spacing: -.045em; }
.brand img { width: 32px; height: 32px; border-radius: 7px; }
.brand span span { color: var(--green); }
.nav-links { display: flex; align-items: center; justify-content: center; gap: clamp(15px, 2vw, 30px); padding-inline: 18px; }
.nav-links a { position: relative; padding: 25px 0 23px; color: var(--muted); font-size: .78rem; font-weight: 650; transition: color .18s ease; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color: var(--green); }
.nav-links a[aria-current="page"]::after { content: ""; position: absolute; right: 0; bottom: 15px; left: 0; height: 2px; background: var(--green-2); }
.nav-solutions { position:relative; display:flex; align-self:stretch; align-items:center; }
.nav-solutions-trigger {
  display:flex;
  height:38px;
  align-items:center;
  gap:8px;
  padding:0 12px !important;
  border-radius:12px;
  transition:color .18s ease,background .18s ease;
}
.nav-solutions-trigger[aria-current="page"]::after { display:none; }
.nav-solutions:hover .nav-solutions-trigger,
.nav-solutions:focus-within .nav-solutions-trigger,
.nav-solutions.is-open .nav-solutions-trigger {
  color:var(--green);
  background:color-mix(in srgb,var(--green-pale) 78%,var(--surface));
}
.nav-solutions-chevron {
  width:6px;
  height:6px;
  flex:0 0 auto;
  margin-top:-4px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);
  transition:transform .2s ease;
}
.nav-solutions:hover .nav-solutions-chevron,
.nav-solutions:focus-within .nav-solutions-chevron,
.nav-solutions.is-open .nav-solutions-chevron { transform:translateY(3px) rotate(225deg); }
.solutions-menu {
  position:absolute;
  top:calc(100% - 1px);
  left:50%;
  z-index:30;
  display:grid;
  width:440px;
  padding:17px 12px 11px;
  border:1px solid var(--line);
  border-radius:19px;
  background:color-mix(in srgb,var(--surface) 98%,transparent);
  box-shadow:0 18px 38px rgba(7,32,18,.1);
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,8px);
  pointer-events:none;
  backdrop-filter:blur(18px) saturate(1.08);
  transition:opacity .18s ease,visibility .18s ease,transform .18s ease;
}
.solutions-menu::before {
  content:"";
  position:absolute;
  top:-7px;
  left:50%;
  width:12px;
  height:12px;
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
  background:var(--surface);
  transform:translateX(-50%) rotate(45deg);
}
.nav-solutions:hover .solutions-menu,
.nav-solutions:focus-within .solutions-menu,
.nav-solutions.is-open .solutions-menu {
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
  pointer-events:auto;
}
.solutions-menu-heading {
  display:block;
  padding:2px 10px 10px;
  color:var(--muted);
  font:650 .56rem "JetBrains Mono",monospace;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.nav-links .solutions-menu a {
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:14px;
  min-height:59px;
  padding:8px 10px;
  border:0;
  border-radius:13px;
  color:color-mix(in srgb,var(--ink) 82%,var(--green));
  transition:color .18s ease,background .18s ease;
}
.nav-links .solutions-menu a::after { display:none; }
.nav-links .solutions-menu a:hover,
.nav-links .solutions-menu a:focus-visible {
  color:var(--ink);
  background:color-mix(in srgb,var(--green-pale) 58%,transparent);
}
.solutions-menu-code {
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border:0;
  border-radius:12px;
  font:700 .55rem "JetBrains Mono",monospace;
}
.solutions-code-oqtrix { color:#16754b; background:#dcefe6; }
.solutions-code-adversyn { color:#93475f; background:#f1dfe5; }
.solutions-code-tracefold { color:#545aa0; background:#e3e4f5; }
.solutions-code-ptaas { color:#866248; background:#f1e6dc; }
[data-theme="dark"] .solutions-code-oqtrix { color:#79d9a7; background:#173629; }
[data-theme="dark"] .solutions-code-adversyn { color:#efa1ba; background:#3d202b; }
[data-theme="dark"] .solutions-code-tracefold { color:#b8bcff; background:#292b4c; }
[data-theme="dark"] .solutions-code-ptaas { color:#e4bc9b; background:#3b2d24; }
.solutions-menu a > span:last-child { min-width:0; }
.solutions-menu b,
.solutions-menu small { display:block; }
.solutions-menu b { font:650 .8rem Sora,sans-serif; letter-spacing:-.02em; }
.solutions-menu small { margin-top:3px; color:var(--muted); font-size:.67rem; font-weight:500; line-height:1.4; }
.nav-links .solutions-menu a.solutions-menu-all {
  position:relative;
  display:flex;
  grid-template-columns:none;
  min-height:47px;
  align-items:center;
  justify-content:space-between;
  margin-top:8px;
  padding:11px 10px 5px;
  border-top:1px solid var(--line);
  border-radius:0;
  color:color-mix(in srgb,var(--muted) 78%,var(--green));
  font-size:.72rem;
}
.solutions-menu-all > span {
  display:block;
  padding-right:32px;
  white-space:nowrap;
}
.nav-links .solutions-menu a.solutions-menu-all:hover,
.nav-links .solutions-menu a.solutions-menu-all:focus-visible {
  color:var(--green);
  background:transparent;
}
.solutions-menu-all b {
  position:absolute;
  top:50%;
  right:10px;
  color:currentColor;
  font:500 1.05rem/1 Inter,sans-serif;
  transform:translateY(-50%);
  transition:transform .18s ease;
}
.solutions-menu-all:hover b { transform:translate(3px,-50%); }
.nav-actions { display: flex; align-items: center; gap: 5px; }
.theme-toggle, .menu-toggle { width: 44px; height: 44px; display: grid; place-items: center; border: 0; border-radius: 6px; background: transparent; cursor: pointer; }
.theme-toggle:hover, .menu-toggle:hover { background: var(--green-pale); }
.theme-toggle .sun, [data-theme="dark"] .theme-toggle .moon { display: none; }
[data-theme="dark"] .theme-toggle .sun { display: block; }
.nav-cta { min-height: 44px; padding-inline: 17px; box-shadow: none; }
.nav-cta:hover { box-shadow: none; }
.menu-toggle { display: none; }
.menu-toggle span { width: 20px; height: 1.5px; display: block; margin: 3px; background: currentColor; transition: transform .18s ease, opacity .18s ease; }

/* Homepage */
.home-hero { min-height: 820px; display: flex; align-items: center; padding: 170px 0 92px; }
.home-grid { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(480px, .94fr); align-items: center; gap: 70px; }
.home-copy h1 { max-width: 750px; font-size: clamp(3.5rem, 6.3vw, 6.5rem); }
.home-copy h1 em { color: var(--green); font-style: normal; }
.home-copy .lead { max-width: 655px; }
.scan-hook { display: flex; align-items: center; gap: 10px; margin-bottom: 25px; font: 600 .7rem "JetBrains Mono", monospace; letter-spacing: .05em; text-transform: uppercase; }
.scan-hook b { padding: 6px 9px; border-radius: 4px; color: #fff; background: var(--danger); font-size: .62rem; letter-spacing: .14em; }
.hero-actions { display: flex; align-items: center; gap: 21px; flex-wrap: wrap; }
.inline-proof { display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: .75rem; font-weight: 600; }
.inline-proof::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--green-2); box-shadow: 0 0 0 5px rgba(11, 191, 105, .12); }
.researcher-line { display: flex; align-items: center; gap: 14px; margin-top: 35px; }
.researcher-faces { display: flex; padding-left: 7px; }
.researcher-faces span { width: 35px; height: 35px; display: grid; place-items: center; margin-left: -7px; border: 2px solid var(--paper); border-radius: 50%; color: #dffff0; background: var(--ink-2); font: 600 .55rem "JetBrains Mono", monospace; }
.researcher-faces span:nth-child(even) { background: var(--green); }
.researcher-line p { max-width: 285px; margin: 0; color: var(--muted); font-size: .72rem; }
.attack-board { position: relative; padding: 10px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); box-shadow: var(--shadow); }
.attack-board::before { content: ""; position: absolute; width: 110px; height: 110px; top: -18px; right: -18px; z-index: -1; background: var(--green-3); opacity: .45; clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%); }
.board-inner { overflow: hidden; min-height: 510px; border-radius: 11px; color: #eafff1; background: #06120b; }
.board-head { display: flex; align-items: center; justify-content: space-between; padding: 18px 19px; border-bottom: 1px solid rgba(255,255,255,.1); }
.board-brand { display: flex; align-items: center; gap: 10px; font: 600 .68rem "JetBrains Mono", monospace; letter-spacing: .09em; }
.board-brand i { width: 9px; height: 9px; border-radius: 50%; background: var(--green-2); box-shadow: 0 0 0 6px rgba(11,191,105,.12); }
.board-status { color: var(--green-3); font: 600 .6rem "JetBrains Mono", monospace; letter-spacing: .08em; }
.board-target { display: flex; align-items: center; justify-content: space-between; padding: 18px 19px; border-bottom: 1px solid rgba(255,255,255,.09); }
.board-target small { display: block; color: #738a7d; font: 500 .55rem "JetBrains Mono", monospace; text-transform: uppercase; }
.board-target strong { display: block; margin-top: 4px; font: 600 .9rem Sora, sans-serif; }
.board-score { color: var(--green-3); font: 600 1.65rem Sora, sans-serif; letter-spacing: -.06em; }
.attack-path { padding: 21px 19px; }
.path-label { display: flex; align-items: center; justify-content: space-between; margin-bottom: 17px; color: #789083; font: 500 .57rem "JetBrains Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
.path-label span:last-child { color: var(--green-3); }
.path-steps { display: grid; grid-template-columns: 1fr 24px 1fr 24px 1fr; align-items: center; gap: 5px; }
.path-step { min-height: 93px; padding: 13px 11px; border: 1px solid rgba(255,255,255,.12); border-radius: 7px; background: rgba(255,255,255,.03); }
.path-step b { display: block; color: var(--green-3); font: 600 .55rem "JetBrains Mono", monospace; }
.path-step span { display: block; margin-top: 8px; font-size: .7rem; font-weight: 650; line-height: 1.35; }
.path-arrow { color: #53665b; text-align: center; }
.finding { margin: 0 19px 17px; padding: 17px; border: 1px solid rgba(226,76,79,.35); border-left: 3px solid var(--danger); border-radius: 7px; background: rgba(226,76,79,.07); }
.finding-top { display: flex; justify-content: space-between; gap: 15px; }
.finding small { color: #ff9a9d; font: 600 .57rem "JetBrains Mono", monospace; }
.finding strong { display: block; margin-top: 6px; font-size: .82rem; }
.cvss { color: #ff8a8e; font: 600 1.35rem Sora, sans-serif; }
.finding p { margin: 10px 0 0; color: #92a69a; font-size: .65rem; }
.verified-row { display: flex; align-items: center; justify-content: space-between; padding: 15px 19px; border-top: 1px solid rgba(255,255,255,.09); color: #a5bbb0; font-size: .65rem; }
.verified-row b { color: var(--green-3); font: 600 .6rem "JetBrains Mono", monospace; }
.float-chip { position: absolute; right: -24px; bottom: 53px; padding: 11px 14px; border: 1px solid var(--green-2); border-radius: 6px; color: #052114; background: var(--green-3); box-shadow: 8px 8px 0 rgba(4,35,18,.12); font-size: .72rem; font-weight: 750; }
.trust-rail { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface); }
.trust-inner { min-height: 96px; display: grid; grid-template-columns: .8fr 2fr; align-items: center; gap: 45px; }
.trust-inner p { margin: 0; color: var(--muted); font: 600 .67rem "JetBrains Mono", monospace; letter-spacing: .05em; text-transform: uppercase; }
.wordmarks { display: flex; align-items: center; justify-content: space-between; gap: 25px; color: var(--muted); opacity: .65; }
.wordmarks span { font: 650 clamp(.76rem, 1.5vw, 1.03rem) Sora, sans-serif; letter-spacing: -.04em; white-space: nowrap; }
.home-section { padding: 118px 0; }
.section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 50px; margin-bottom: 50px; }
.section-head h2 { max-width: 800px; font-size: clamp(2.35rem, 4.6vw, 4.4rem); }
.section-head p { max-width: 355px; margin: 0 0 4px; color: var(--muted); font-size: .9rem; }
.product-list { border-top: 1px solid var(--line); }
.product-row { position: relative; display: grid; grid-template-columns: 80px .65fr 1.05fr auto; align-items: center; gap: 25px; min-height: 145px; padding: 22px 25px 22px 0; border-bottom: 1px solid var(--line); transition: padding .2s ease, background .2s ease; }
.product-row:hover { padding-left: 20px; background: var(--surface); }
.product-index { color: var(--green); font: 600 .67rem "JetBrains Mono", monospace; }
.product-row h3 { margin: 0; font: 600 clamp(1.45rem, 2.5vw, 2.15rem) Sora, sans-serif; letter-spacing: -.045em; }
.product-row p { max-width: 540px; margin: 0; color: var(--muted); font-size: .86rem; }
.product-row .text-link { white-space: nowrap; }
.proof-panel { position: relative; overflow: hidden; padding: 78px; color: #effff5; background: #051009; clip-path: polygon(0 0, calc(100% - 34px) 0, 100% 34px, 100% 100%, 34px 100%, 0 calc(100% - 34px)); }
.proof-panel::after { content: ""; position: absolute; width: 520px; height: 520px; right: -220px; bottom: -330px; border-radius: 50%; background: rgba(11,191,105,.24); filter: blur(70px); }
.proof-grid { position: relative; z-index: 1; display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; }
.proof-panel .eyebrow { color: var(--green-3); }
.proof-panel h2 { font-size: clamp(2.4rem, 4.7vw, 4.5rem); }
.proof-panel h2 em { color: var(--green-3); font-style: normal; }
.proof-checks { display: grid; gap: 0; margin-top: 32px; border-top: 1px solid var(--line-dark); }
.proof-check { display: grid; grid-template-columns: 28px 1fr; gap: 10px; padding: 15px 0; border-bottom: 1px solid var(--line-dark); color: #b8c9bf; font-size: .78rem; }
.proof-check span:first-child { color: var(--green-3); font-family: "JetBrains Mono", monospace; }
.code-window { align-self: center; overflow: hidden; border: 1px solid rgba(255,255,255,.15); border-radius: 8px; background: #020704; box-shadow: 18px 18px 0 rgba(124,242,173,.055); }
.code-head { display: flex; align-items: center; justify-content: space-between; padding: 13px 15px; border-bottom: 1px solid rgba(255,255,255,.1); color: #718479; font: 500 .58rem "JetBrains Mono", monospace; }
.code-dots { display: flex; gap: 6px; }
.code-dots i { width: 7px; height: 7px; border-radius: 50%; background: #26342b; }
.code-dots i:first-child { background: var(--danger); }
.code-dots i:nth-child(2) { background: #dba233; }
.code-dots i:last-child { background: var(--green-2); }
.code-body { min-height: 330px; padding: 22px; color: #a4b7ab; font: 500 .69rem/2 "JetBrains Mono", monospace; }
.code-line .g { color: var(--green-3); }
.code-line .r { color: #ff878b; }
.code-line .w { color: #effff5; }
.metrics { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.metric { position: relative; padding: 45px 30px; border-right: 1px solid var(--line); }
.metric:first-child { padding-left: 0; }
.metric:last-child { border-right: 0; }
.metric b {
  display: flex;
  min-height: 1em;
  align-items: baseline;
  color: var(--green);
  font: 600 clamp(2.7rem, 4.8vw, 4.7rem)/1 Sora, sans-serif;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.07em;
}
.metric .count { display: inline; margin: 0; color: inherit; font: inherit; letter-spacing: inherit; }
.metric > span { display: block; margin-top: 12px; color: var(--muted); font-size: .73rem; font-weight: 650; }

/* Internal page hero */
.page-hero { min-height: 770px; display: flex; align-items: center; padding: 175px 0 100px; }
.page-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr); align-items: center; gap: 80px; }
.page-hero h1 { max-width: 790px; font-size: clamp(3.4rem, 6vw, 6rem); }
.page-hero h1 span { color: var(--green); }
.lead { max-width: 670px; margin: 28px 0 32px; color: var(--muted); font-size: clamp(1rem, 1.4vw, 1.13rem); }
.hero-meta { display: flex; align-items: center; gap: 25px; flex-wrap: wrap; margin-top: 32px; color: var(--muted); font-size: .8rem; font-weight: 650; }
.hero-meta span { display: flex; align-items: center; gap: 8px; }
.hero-meta i { width: 7px; height: 7px; border-radius: 50%; background: var(--green-2); box-shadow: 0 0 0 5px rgba(11,191,105,.1); }
.hero-catchline {
  max-width:560px;
  margin:30px 0 0;
  padding-left:17px;
  border-left:2px solid var(--green);
  color:var(--ink);
  font:650 clamp(.9rem,1.1vw,1.02rem)/1.55 Sora,sans-serif;
  letter-spacing:-.02em;
}
.visual { position: relative; min-height: 455px; padding: 9px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); box-shadow: var(--shadow); }
.visual::before { content: ""; position: absolute; width: 100px; height: 100px; top: -20px; right: -20px; z-index: -1; background: var(--green-3); opacity: .45; clip-path: polygon(50% 0,100% 50%,50% 100%,0 50%); }
.visual-top { display: flex; align-items: center; justify-content: space-between; padding: 17px 17px; border-radius: 9px 9px 0 0; color: #dfffee; background: #07140c; font: 600 .62rem "JetBrains Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
.live { display: inline-flex; align-items: center; gap: 8px; color: var(--green-3); }
.live::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--green-2); box-shadow: 0 0 0 5px rgba(11,191,105,.13); }
.visual-stack { display: grid; gap: 1px; background: var(--line); }
.visual-row { position: relative; min-height: 116px; padding: 18px; background: var(--surface); }
.visual-row small { color: var(--green); font: 600 .56rem "JetBrains Mono", monospace; letter-spacing: .07em; text-transform: uppercase; }
.visual-row strong { display: block; margin-top: 6px; font: 600 .94rem Sora, sans-serif; }
.visual-row p { margin: 4px 0 0; color: var(--muted); font-size: .69rem; }
.visual-score { position: absolute; top: 19px; right: 18px; color: var(--green); font: 600 1.45rem Sora, sans-serif; letter-spacing: -.06em; }
.visual-bar { height: 4px; margin-top: 14px; background: var(--line); }
.visual-bar i { display: block; width: var(--w,70%); height: 100%; background: var(--green-2); }
.orbit { position: absolute; right: -17px; bottom: 36px; padding: 10px 13px; border-radius: 5px; color: #06160d; background: var(--green-3); box-shadow: 7px 7px 0 rgba(5,38,19,.13); font-size: .68rem; font-weight: 750; }

/* Shared sections */
.section { padding: 112px 0; }
.section.alt { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface); }
.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.card { position: relative; min-height: 285px; padding: 30px; border: 1px solid var(--line); border-radius: 9px; background: var(--paper); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.section:not(.alt) .card { background: var(--surface); }
.card::after { content: ""; position: absolute; top: -1px; right: -1px; width: 28px; height: 28px; border-top: 2px solid var(--green-2); border-right: 2px solid var(--green-2); opacity: 0; transition: opacity .2s ease; }
.card:hover { transform: translateY(-5px); border-color: rgba(7,140,82,.4); box-shadow: var(--shadow); }
.card:hover::after { opacity: 1; }
.card-icon { width: 45px; height: 45px; display: grid; place-items: center; margin-bottom: 58px; border: 1px solid var(--green); border-radius: 5px; color: var(--green); background: var(--green-pale); font: 600 .67rem "JetBrains Mono", monospace; }
.card h3 { margin: 0 0 11px; font: 600 1.32rem Sora, sans-serif; letter-spacing: -.04em; }
.card p { margin: 0; color: var(--muted); font-size: .84rem; }
.card .text-link { margin-top: 23px; }
.dark-band { position: relative; overflow: hidden; padding: 76px; color: #effff5; background: #051009; clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 30px 100%, 0 calc(100% - 30px)); }
.dark-band::after { content: ""; position: absolute; width: 520px; height: 520px; right: -270px; bottom: -350px; border-radius: 50%; background: rgba(11,191,105,.25); filter: blur(70px); }
.dark-band > * { position: relative; z-index: 1; }
.dark-band .eyebrow { color: var(--green-3); }
.dark-band h2 { max-width: 830px; font-size: clamp(2.45rem, 4.8vw, 4.55rem); }
.dark-band > p { max-width: 720px; color: #a8baaf; }
.steps { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 52px; border-top: 1px solid var(--line-dark); }
.step { min-height: 185px; padding: 30px 30px 5px 0; }
.step + .step { padding-left: 30px; border-left: 1px solid var(--line-dark); }
.step span { color: var(--green-3); font: 600 .61rem "JetBrains Mono", monospace; letter-spacing: .08em; }
.step h3 { margin: 12px 0 9px; font: 600 1.08rem Sora, sans-serif; }
.step p { margin: 0; color: #9caea3; font-size: .77rem; }
.split { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
.split h2 { font-size: clamp(2.4rem, 4.5vw, 4.15rem); }
.checklist { border-top: 1px solid var(--line); }
.check { display: grid; grid-template-columns: 31px 1fr; gap: 12px; padding: 21px 0; border-bottom: 1px solid var(--line); }
.check svg { margin-top: 3px; color: var(--green); }
.check strong { display: block; font-size: .9rem; }
.check p { margin: 3px 0 0; color: var(--muted); font-size: .79rem; }
.quote { position: relative; padding: 50px 55px; border: 1px solid var(--line); border-left: 6px solid var(--green); background: var(--surface); }
.quote::before { content: "“"; position: absolute; top: 10px; right: 35px; color: var(--green-pale); font: 600 8rem/1 Georgia, serif; }
.quote p { position: relative; max-width: 960px; margin: 0; font: 500 clamp(1.4rem, 2.5vw, 2rem)/1.45 Sora, sans-serif; letter-spacing: -.035em; }
.quote footer { margin-top: 22px; color: var(--muted); font-size: .72rem; }
.table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
table { width: 100%; min-width: 720px; border-collapse: collapse; }
th, td { padding: 19px 22px; border-bottom: 1px solid var(--line); text-align: left; font-size: .79rem; }
th { color: var(--muted); background: var(--green-pale); font: 600 .61rem "JetBrains Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
tr:last-child td { border-bottom: 0; }
td:first-child { font-weight: 700; }
.yes { color: var(--green); font-weight: 750; }
.role-list { display: grid; gap: 10px; }
.role { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 28px; padding: 23px 25px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); transition: transform .18s ease, border-color .18s ease; }
.role:hover { transform: translateX(6px); border-color: var(--green); }
.role h3 { margin: 0; font: 600 1rem Sora, sans-serif; }
.role span { color: var(--muted); font-size: .72rem; }
.role b { color: var(--green); font-size: .78rem; }
.price-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.price-card { position: relative; display: flex; min-height: 465px; flex-direction: column; padding: 30px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); }
.price-card.featured { border: 2px solid var(--green); box-shadow: 10px 10px 0 var(--green-pale); }
.price-card.featured::before { content: "RECOMMENDED"; position: absolute; top: 20px; right: -1px; padding: 6px 9px; color: #fff; background: var(--green); font: 600 .55rem "JetBrains Mono", monospace; letter-spacing: .08em; }
.price-tag { align-self: flex-start; padding: 5px 7px; border: 1px solid rgba(7,140,82,.25); border-radius: 3px; color: var(--green); background: var(--green-pale); font: 600 .58rem "JetBrains Mono", monospace; letter-spacing: .07em; text-transform: uppercase; }
.price-card h3 { margin: 27px 0 7px; font: 600 1.5rem Sora, sans-serif; letter-spacing: -.04em; }
.price-card > p { margin: 0; color: var(--muted); font-size: .8rem; }
.price-card ul { display: grid; gap: 12px; margin: 28px 0 31px; padding: 23px 0 0; border-top: 1px solid var(--line); list-style: none; }
.price-card li { display: flex; gap: 9px; color: var(--muted); font-size: .77rem; }
.price-card li::before { content: "↳"; color: var(--green); font-weight: 750; }
.price-card .text-link { margin-top: auto; }

/* CTA and footer */
.cta { padding: 0 0 112px; }
.cta-shell { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: space-between; gap: 50px; padding: 65px 70px; color: #06170d; background: var(--green-3); clip-path: polygon(0 0, calc(100% - 25px) 0, 100% 25px, 100% 100%, 25px 100%, 0 calc(100% - 25px)); }
.cta-shell::after { content: "PS/SEC"; position: absolute; right: 28px; bottom: -36px; color: rgba(6,23,13,.07); font: 700 7.5rem Sora, sans-serif; letter-spacing: -.07em; }
.cta-shell > * { position: relative; z-index: 1; }
.cta .eyebrow { color: #075f39; }
.cta h2 { max-width: 750px; font-size: clamp(2.3rem, 4.5vw, 4.2rem); }
.cta .button { flex: 0 0 auto; color: #effff5; background: #06170d; border-color: #06170d; box-shadow: 6px 6px 0 rgba(6,23,13,.18); }
.footer { padding: 75px 0 28px; border-top: 4px solid var(--green-2); color: #dff4e7; background: #041009; }
.footer-grid { display: grid; grid-template-columns: 1.5fr .65fr .65fr 1.2fr; gap: 65px; padding-bottom: 62px; }
.footer .brand span span { color: var(--green-3); }
.footer-brand p { max-width: 310px; margin: 20px 0 0; color: #8da096; font-size: .8rem; }
.footer h3 { margin: 5px 0 19px; color: var(--green-3); font: 600 .62rem "JetBrains Mono", monospace; letter-spacing: .11em; text-transform: uppercase; }
.footer-links, .contact-list { display: grid; gap: 11px; }
.footer-links a, .contact-list a, .contact-list span { color: #91a499; font-size: .78rem; transition: color .18s ease; }
.footer-links a:hover, .contact-list a:hover { color: var(--green-3); }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.1); color: #73867b; font-size: .68rem; }
.legal { display: flex; gap: 25px; }
.legal a:hover { color: var(--green-3); }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1080px) {
  .nav-links { gap: 14px; }
  .nav-links a { font-size: .7rem; }
  .home-grid, .page-hero-grid { gap: 40px; }
  .proof-panel, .dark-band { padding: 60px; }
}

@media (max-width: 920px) {
  .nav-shell { grid-template-columns: 1fr auto; }
  .nav-links { position: absolute; inset: calc(100% + 8px) 0 auto; display: grid; justify-content: stretch; gap: 0; max-height: 0; overflow: hidden; padding: 0 15px; border: 1px solid transparent; border-radius: 8px; background: var(--surface); opacity: 0; box-shadow: var(--shadow); transition: max-height .3s ease, opacity .2s ease, padding .3s ease, border-color .3s ease; }
  .nav-links.open { max-height: min(680px,calc(100vh - 100px)); overflow-y:auto; padding: 12px 15px; border-color: var(--line); opacity: 1; }
  .nav-links a { padding: 11px 6px; border-bottom: 1px solid var(--line); font-size: .86rem; }
  .nav-links a:last-child { border-bottom: 0; }
  .nav-links a[aria-current="page"]::after { display: none; }
  .nav-solutions { display:block; border-bottom:1px solid var(--line); }
  .nav-solutions-trigger {
    width:100%;
    height:auto;
    padding:11px 6px !important;
    border-bottom:0 !important;
    border-radius:0;
  }
  .nav-solutions:hover .nav-solutions-trigger,
  .nav-solutions:focus-within .nav-solutions-trigger,
  .nav-solutions.is-open .nav-solutions-trigger { background:transparent; }
  .nav-solutions-chevron { margin-left:auto; }
  .solutions-menu,
  .nav-solutions:hover .solutions-menu,
  .nav-solutions:focus-within .solutions-menu,
  .nav-solutions.is-open .solutions-menu {
    position:static;
    width:auto;
    padding:1px 0 10px 10px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    transform:none;
    pointer-events:auto;
    backdrop-filter:none;
  }
  .solutions-menu::before { display:none; }
  .solutions-menu-heading { padding:3px 7px 7px; }
  .nav-links .solutions-menu a {
    grid-template-columns:34px minmax(0,1fr);
    min-height:48px;
    gap:10px;
    padding:6px 7px;
    border:0;
    border-radius:10px;
  }
  .solutions-menu-code { width:34px; height:34px; border-radius:9px; }
  .solutions-menu small { font-size:.58rem; }
  .nav-links .solutions-menu a.solutions-menu-all {
    min-height:40px;
    margin-top:5px;
    padding:9px 7px 1px;
    border-radius:0;
  }
  .solutions-menu-all b { right:7px; }
  .menu-toggle { display: grid; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(7.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-7.5px) rotate(-45deg); }
  .home-hero, .page-hero { padding-top: 160px; }
  .home-grid, .page-hero-grid { grid-template-columns: 1fr; gap: 70px; }
  .home-copy { max-width: 780px; }
  .attack-board, .visual { width: min(650px, 94%); margin-inline: auto; }
  .proof-grid { grid-template-columns: 1fr; }
  .trust-inner { grid-template-columns: 1fr; gap: 20px; padding-block: 25px; }
  .grid-3, .price-grid { grid-template-columns: repeat(2, 1fr); }
  .split { grid-template-columns: 1fr; gap: 50px; }
  .steps { grid-template-columns: 1fr; }
  .step, .step + .step { min-height: auto; padding: 24px 0; border-left: 0; border-bottom: 1px solid var(--line-dark); }
  .metrics { grid-template-columns: repeat(2, 1fr); }
  .metric:nth-child(2) { border-right: 0; }
  .metric:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .metric:nth-child(3) { padding-left: 0; }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-contact { grid-column: 1 / -1; }
}

@media (max-width: 680px) {
  .container { width: min(var(--max), calc(100% - 28px)); }
  .nav-shell { min-height: 60px; margin-top: 9px; padding-left: 11px; }
  .brand { font-size: .92rem; }
  .brand img { width: 28px; height: 28px; }
  .nav-cta { display: none; }
  .theme-toggle, .menu-toggle { width: 39px; height: 39px; }
  .home-hero, .page-hero { min-height: auto; padding: 132px 0 78px; }
  .home-copy h1, .page-hero h1 { font-size: clamp(2.8rem, 13vw, 4.2rem); }
  .hero-actions { align-items: flex-start; flex-direction: column; }
  .researcher-line { align-items: flex-start; flex-direction: column; }
  .attack-board, .visual { width: 100%; }
  .board-inner { min-height: 485px; }
  .path-steps { grid-template-columns: 1fr; }
  .path-step { min-height: 70px; }
  .path-arrow { transform: rotate(90deg); }
  .float-chip, .orbit { right: -3px; }
  .wordmarks { display: grid; grid-template-columns: repeat(2, 1fr); row-gap: 16px; }
  .home-section, .section { padding: 82px 0; }
  .section-head { align-items: flex-start; flex-direction: column; gap: 18px; margin-bottom: 36px; }
  .product-row { grid-template-columns: 42px 1fr auto; gap: 13px; padding-right: 4px; }
  .product-row p { grid-column: 2 / -1; }
  .product-row .text-link { grid-column: 2 / -1; }
  .proof-panel, .dark-band { padding: 47px 23px; clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px)); }
  .code-body { padding: 17px; font-size: .6rem; }
  .grid-2, .grid-3, .price-grid { grid-template-columns: 1fr; }
  .card { min-height: 250px; padding: 25px; }
  .card-icon { margin-bottom: 42px; }
  .role { grid-template-columns: 1fr auto; gap: 8px; }
  .role span { grid-row: 2; }
  .quote { padding: 38px 26px; }
  .cta { padding-bottom: 82px; }
  .cta-shell { align-items: flex-start; flex-direction: column; padding: 47px 24px; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 43px 28px; }
  .footer-brand, .footer-contact { grid-column: 1 / -1; }
  .footer-bottom { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 390px) {
  .home-copy h1, .page-hero h1 { font-size: 2.55rem; }
  .attack-board { padding: 6px; }
  .board-head, .board-target { padding-inline: 13px; }
  .attack-path { padding-inline: 13px; }
  .finding { margin-inline: 13px; }
  .metric { padding-inline: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Unified theme + pill language */
body {
  background:
    radial-gradient(circle at 12% 12%, rgba(11, 191, 105, .11), transparent 25rem),
    radial-gradient(circle at 88% 38%, rgba(124, 242, 173, .09), transparent 30rem),
    var(--paper);
}
body::before { animation: grid-drift 24s linear infinite; }
body::after {
  width: 520px;
  height: 520px;
  top: -300px;
  right: -160px;
  background: rgba(11, 191, 105, .16);
  animation: ambient-float 12s ease-in-out infinite alternate;
}
.site-header { border-top: 0; }
.nav-shell { border-radius: 999px; }
.nav-links a[aria-current="page"]::after { bottom: 13px; border-radius: 999px; }
.button, .nav-cta, .text-link, .price-tag { border-radius: 999px; }
.theme-toggle {
  position: relative;
  width: 68px;
  height: 36px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--green-pale);
}
.theme-toggle::before {
  content: "";
  position: absolute;
  width: 26px;
  height: 26px;
  top: 4px;
  left: 5px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 4px 12px rgba(7, 80, 42, .22);
  transition: transform .25s cubic-bezier(.2,.8,.2,1);
}
[data-theme="dark"] .theme-toggle::before { transform: translateX(31px); }
.theme-toggle svg { position: absolute; z-index: 1; color: #fff; }
.theme-toggle .moon { left: 9px; }
.theme-toggle .sun { right: 8px; }
.theme-toggle:hover { background: var(--green-pale); }
.menu-toggle { border-radius: 50%; }
.attack-board, .visual { border-radius: 30px; }
.attack-board { padding: 9px; }
.board-inner {
  border: 1px solid var(--line);
  border-radius: 22px;
  color: var(--ink);
  background: var(--surface);
}
.board-head, .board-target, .verified-row { border-color: var(--line); }
.board-brand { color: var(--ink); }
.board-status, .board-score { color: var(--green); }
.board-target small, .path-label { color: var(--muted); }
.path-label span:last-child { color: var(--green); }
.path-step { border-color: var(--line); border-radius: 18px; background: var(--green-pale); }
.path-step b { color: var(--green); }
.path-arrow { color: var(--green); }
.finding { border-radius: 18px; }
.finding p, .verified-row { color: var(--muted); }
.verified-row b { color: var(--green); }
.float-chip, .orbit { border-radius: 999px; }
.product-row:hover { border-radius: 24px; }
.proof-panel, .dark-band {
  color: var(--ink);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 34px;
  clip-path: none;
}
.proof-panel::after, .dark-band::after { background: rgba(11, 191, 105, .13); }
.proof-panel .eyebrow, .dark-band .eyebrow { color: var(--green); }
.proof-panel h2 em { color: var(--green); }
.proof-checks, .proof-check, .steps, .step + .step { border-color: var(--line); }
.proof-check, .dark-band > p, .step p { color: var(--muted); }
.proof-check span:first-child, .step span { color: var(--green); }
.code-window {
  border-color: var(--line);
  border-radius: 24px;
  color: var(--ink);
  background: var(--paper);
  box-shadow: 14px 14px 0 var(--green-pale);
}
.code-head { border-color: var(--line); color: var(--muted); }
.code-body { color: var(--muted); }
.code-line .w { color: var(--ink); }
.code-line .g { color: var(--green); }
.visual { border-radius: 30px; }
.visual-top {
  border: 1px solid var(--line);
  border-radius: 21px 21px 0 0;
  color: var(--ink);
  background: var(--green-pale);
}
.live { color: var(--green); }
.visual-stack { border-radius: 0 0 21px 21px; overflow: hidden; }
.visual-row { background: var(--surface); }
.card { border-radius: 28px; }
.card::after { border-radius: 0 27px 0 0; }
.card-icon { border-radius: 999px; }
.dark-band { border-radius: 34px; }
.step + .step { border-color: var(--line); }
.quote { border-radius: 28px; }
.table-wrap { border-radius: 26px; }
.role { border-radius: 999px; }
.price-card { border-radius: 30px; }
.price-card.featured { box-shadow: 10px 10px 0 var(--green-pale); }
.price-card.featured::before { border-radius: 999px 0 0 999px; }
.cta-shell {
  color: var(--ink);
  background: var(--green-pale);
  border: 1px solid rgba(7, 140, 82, .2);
  border-radius: 38px;
  clip-path: none;
}
.cta .button { color: #fff; background: var(--green); border-color: var(--green); }
.footer {
  border-top: 1px solid var(--line);
  color: var(--ink);
  background: var(--surface);
}
.footer .brand span span, .footer h3 { color: var(--green); }
.footer-brand p, .footer-links a, .contact-list a, .contact-list span, .footer-bottom { color: var(--muted); }
.footer-bottom { border-color: var(--line); }

@keyframes grid-drift {
  from { background-position: 0 0, 0 0; }
  to { background-position: 64px 64px, 64px 64px; }
}
@keyframes ambient-float {
  0% { transform: translate3d(0, 0, 0) scale(1); opacity: .65; }
  100% { transform: translate3d(-80px, 90px, 0) scale(1.16); opacity: 1; }
}

@media (max-width: 680px) {
  .theme-toggle { width: 62px; height: 34px; }
  .theme-toggle::before { width: 24px; height: 24px; }
  [data-theme="dark"] .theme-toggle::before { transform: translateX(27px); }
  .theme-toggle .moon { left: 8px; }
  .theme-toggle .sun { right: 7px; }
  .proof-panel, .dark-band { border-radius: 26px; clip-path: none; }
  .role { border-radius: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  body::before, body::after { animation: none !important; }
}

/* Route-specific hero compositions */
.page-hero { position: relative; isolation: isolate; }
.page-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

/* Bug bounty: angled live-program pulse */
.page-bounty .page-hero-grid { grid-template-columns: .88fr 1.12fr; gap: 72px; }
.page-bounty .page-hero::before { width: 520px; height: 520px; right: -210px; top: 100px; border: 1px solid rgba(7,140,82,.12); border-radius: 50%; box-shadow: 0 0 0 70px rgba(7,140,82,.035), 0 0 0 140px rgba(7,140,82,.025); animation: radar-breathe 8s ease-in-out infinite; }
.page-bounty .visual { transform: rotate(1.4deg); }
.page-bounty .visual-row:nth-child(1) { margin-right: 34px; }
.page-bounty .visual-row:nth-child(2) { margin-left: 26px; }
.page-bounty .visual-row:nth-child(3) { margin-right: 12px; }
.page-bounty .orbit { transform: rotate(-1.4deg); }

/* Solutions: wide blueprint, not a split hero */
.page-solutions .page-hero { padding-bottom: 125px; text-align: center; }
.page-solutions .page-hero::before { content: "SOLUTIONS / 04"; top: 142px; left: 50%; transform: translateX(-50%); color: rgba(7,140,82,.055); font: 700 clamp(5rem,14vw,13rem)/1 Sora,sans-serif; letter-spacing: -.08em; white-space: nowrap; }
.page-solutions .page-hero-grid { grid-template-columns: 1fr; gap: 58px; }
.page-solutions .page-hero-grid > div:first-child { max-width: 970px; margin-inline: auto; }
.page-solutions .page-hero h1 { max-width: 970px; }
.page-solutions .lead { margin-inline: auto; }
.page-solutions .hero-meta { justify-content: center; }
.page-solutions .visual { width: 100%; min-height: 0; margin: 0; text-align: left; }
.page-solutions .visual-stack { grid-template-columns: repeat(3,1fr); gap: 1px; }
.page-solutions .visual-row { min-height: 180px; padding: 27px; }
.page-solutions .visual-score { top: auto; right: 26px; bottom: 25px; font-size: 2rem; }
.page-solutions .orbit { right: 34px; bottom: -18px; }

/* Careers: loose editorial manifesto cards */
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .page-hero { overflow: hidden; }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .page-hero::before { content: "JOIN / BREAK / BUILD"; right: -20px; top: 165px; color: rgba(7,140,82,.06); font: 700 clamp(3rem,7vw,7rem)/.9 Sora,sans-serif; letter-spacing: -.06em; writing-mode: vertical-rl; }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .page-hero-grid { grid-template-columns: 1.05fr .95fr; }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual { min-height: 520px; border: 0; background: transparent; box-shadow: none; }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual::before { width: 330px; height: 330px; top: 80px; left: 80px; border: 1px solid var(--line); border-radius: 50%; background: transparent; clip-path: none; box-shadow: 0 0 0 55px rgba(11,191,105,.035); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-top { position: absolute; z-index: 3; top: 0; left: 70px; width: calc(100% - 120px); border-radius: 999px; }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-stack { position: relative; height: 460px; margin-top: 45px; overflow: visible; background: transparent; }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-row { position: absolute; width: 82%; min-height: 125px; border: 1px solid var(--line); border-radius: 999px; box-shadow: var(--shadow); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-row:nth-child(1) { top: 28px; left: 0; transform: rotate(-4deg); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-row:nth-child(2) { top: 166px; right: 0; transform: rotate(3deg); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-row:nth-child(3) { top: 306px; left: 7%; transform: rotate(-2deg); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .orbit { right: 18px; bottom: 6px; }

/* Partners: connected circular network */
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .page-hero-grid { grid-template-columns: 1fr minmax(460px,.78fr); }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual { width: 500px; min-height: 500px; aspect-ratio: 1; justify-self: end; border-radius: 50%; box-shadow: 0 0 0 22px var(--green-pale), var(--shadow); }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual::before { inset: 58px; width: auto; height: auto; border: 1px dashed rgba(7,140,82,.35); border-radius: 50%; background: transparent; clip-path: none; animation: slow-spin 30s linear infinite; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-top { position: absolute; top: 50%; left: 50%; z-index: 2; width: 190px; height: 74px; justify-content: center; flex-direction: column; gap: 6px; transform: translate(-50%,-50%); border: 1px solid var(--green); border-radius: 999px; text-align: center; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-stack { position: absolute; inset: 0; overflow: visible; background: transparent; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-row { position: absolute; width: 250px; min-height: 98px; border: 1px solid var(--line); border-radius: 999px; box-shadow: 0 12px 32px rgba(7,40,21,.1); }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-row:nth-child(1) { top: 38px; left: 15px; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-row:nth-child(2) { top: 205px; right: -42px; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-row:nth-child(3) { bottom: 35px; left: 20px; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-row p, body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-bar { display: none; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-score { font-size: 1.1rem; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .orbit { right: 8px; bottom: 38px; }

/* Company: reverse narrative and oversized metric ladder */
body:has(.nav-links a[href="company.html"][aria-current="page"]) .page-hero-grid { grid-template-columns: .9fr 1.1fr; }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .page-hero-grid > div:first-child { order: 2; padding-left: 25px; }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual { order: 1; min-height: 535px; transform: rotate(-1.2deg); }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual-row { display: grid; grid-template-columns: 1fr auto; align-items: center; min-height: 137px; padding: 24px; }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual-row strong { font-size: 1.15rem; }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual-score { position: static; grid-column: 2; grid-row: 1 / 3; font-size: 2.8rem; }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual-bar { grid-column: 1 / -1; }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .orbit { transform: rotate(1.2deg); }

/* Pricing: centered scope configurator */
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .page-hero { padding-bottom: 120px; text-align: center; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .page-hero::before { content: "01  /  02  /  03"; bottom: 160px; left: 4%; color: rgba(7,140,82,.07); font: 700 clamp(4rem,9vw,9rem) Sora,sans-serif; letter-spacing: .12em; white-space: nowrap; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .page-hero-grid { grid-template-columns: 1fr; gap: 58px; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .page-hero-grid > div:first-child { max-width: 930px; margin-inline: auto; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .page-hero h1 { max-width: 930px; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .lead { margin-inline: auto; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .hero-meta { justify-content: center; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual { width: 100%; min-height: 0; margin: 0; text-align: left; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual-stack { grid-template-columns: repeat(3,1fr); }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual-row { min-height: 170px; padding: 27px; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual-score { top: auto; right: 26px; bottom: 23px; font-size: 2rem; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .orbit { right: 38px; bottom: -18px; }

@keyframes radar-breathe { 50% { transform: scale(1.06); opacity: .7; } }
@keyframes slow-spin { to { transform: rotate(360deg); } }

@media (max-width: 920px) {
  .page-bounty .page-hero-grid,
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .page-hero-grid,
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .page-hero-grid,
  body:has(.nav-links a[href="company.html"][aria-current="page"]) .page-hero-grid { grid-template-columns: 1fr; }
  .page-bounty .visual { transform: none; }
  body:has(.nav-links a[href="company.html"][aria-current="page"]) .page-hero-grid > div:first-child { order: 1; padding-left: 0; }
  body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual { order: 2; transform: none; }
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual { justify-self: center; }
}

@media (max-width: 680px) {
  .page-solutions .visual-stack,
  body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual-stack { grid-template-columns: 1fr; }
  .page-solutions .visual-row,
  body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual-row { min-height: 135px; }
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual { min-height: 490px; }
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-top { left: 20px; width: calc(100% - 40px); }
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual-row { width: 94%; border-radius: 28px; }
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual { width: min(100%,430px); min-height: auto; }
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-row { width: 220px; padding: 15px; }
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual-row:nth-child(2) { right: -10px; }
  body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual-score { font-size: 2.1rem; }
}

@media (prefers-reduced-motion: reduce) {
  .page-bounty .page-hero::before,
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual::before { animation: none !important; }
}

/* Restrained liquid glass + depth */
:root {
  --glass: rgba(255, 255, 255, .59);
  --glass-strong: rgba(255, 255, 255, .75);
  --glass-soft: rgba(242, 250, 245, .53);
  --glass-edge: rgba(255, 255, 255, .83);
  --glass-gloss: rgba(255, 255, 255, .53);
  --glass-shadow: 0 22px 58px rgba(5, 48, 25, .11), 0 5px 16px rgba(5, 48, 25, .055);
  --glass-shadow-low: 0 12px 32px rgba(5, 48, 25, .08), 0 2px 8px rgba(5, 48, 25, .04);
}
[data-theme="dark"] {
  --glass: rgba(9, 23, 14, .68);
  --glass-strong: rgba(10, 25, 16, .82);
  --glass-soft: rgba(12, 32, 20, .60);
  --glass-edge: rgba(224, 255, 236, .105);
  --glass-gloss: rgba(182, 255, 211, .055);
  --glass-shadow: 0 24px 65px rgba(0, 0, 0, .32), 0 5px 18px rgba(0, 0, 0, .18);
  --glass-shadow-low: 0 13px 36px rgba(0, 0, 0, .23), 0 2px 8px rgba(0, 0, 0, .14);
}

.nav-shell,
.attack-board,
.visual,
.card,
.price-card,
.quote,
.table-wrap,
.role,
.proof-panel,
.dark-band,
.cta-shell {
  background-color: transparent;
  background-image:
    linear-gradient(135deg, var(--glass-gloss) 0%, transparent 34%, rgba(11, 191, 105, .025) 68%, transparent 100%);
  background-color: var(--glass);
  border-color: color-mix(in srgb, var(--line) 76%, var(--glass-edge));
  box-shadow: inset 0 1px 0 var(--glass-edge), var(--glass-shadow);
  -webkit-backdrop-filter: blur(18px) saturate(145%);
  backdrop-filter: blur(18px) saturate(145%);
}

.nav-shell {
  background-color: var(--glass-strong);
  box-shadow: inset 0 1px 0 var(--glass-edge), 0 12px 34px rgba(5, 48, 25, .08);
  -webkit-backdrop-filter: blur(22px) saturate(155%);
  backdrop-filter: blur(22px) saturate(155%);
}
.nav-shell::after {
  content: "";
  position: absolute;
  inset: 1px 8% auto;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--glass-edge), transparent);
  pointer-events: none;
}
.theme-toggle {
  background-image: linear-gradient(145deg, var(--glass-gloss), transparent 65%);
  background-color: var(--glass-soft);
  box-shadow: inset 0 1px 0 var(--glass-edge), var(--glass-shadow-low);
  -webkit-backdrop-filter: blur(12px) saturate(145%);
  backdrop-filter: blur(12px) saturate(145%);
}
.theme-toggle:hover { background-color: var(--glass-strong); }

.button {
  background-image: linear-gradient(145deg, rgba(255,255,255,.18), transparent 45%);
  background-color: var(--green);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.30), 0 11px 23px rgba(7,140,82,.19), 5px 6px 0 rgba(7,140,82,.10);
}
.button:hover {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32), 0 15px 30px rgba(7,140,82,.24), 7px 8px 0 rgba(7,140,82,.08);
}
.nav-cta { box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 8px 18px rgba(7,140,82,.16); }
.nav-cta:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 10px 22px rgba(7,140,82,.21); }

.attack-board,
.visual { background-color: var(--glass-soft); }
.board-inner,
.visual-row,
.path-step,
.finding,
.code-window {
  background-image: linear-gradient(145deg, var(--glass-gloss), transparent 40%);
  background-color: var(--glass-strong);
  border-color: color-mix(in srgb, var(--line) 80%, var(--glass-edge));
  box-shadow: inset 0 1px 0 var(--glass-edge), var(--glass-shadow-low);
  -webkit-backdrop-filter: blur(12px) saturate(135%);
  backdrop-filter: blur(12px) saturate(135%);
}
.board-head,
.visual-top,
.code-head {
  background-image: linear-gradient(120deg, var(--glass-gloss), transparent 45%);
  background-color: color-mix(in srgb, var(--green-pale) 74%, transparent);
  -webkit-backdrop-filter: blur(14px) saturate(150%);
  backdrop-filter: blur(14px) saturate(150%);
}
.finding { background-color: color-mix(in srgb, rgba(226,76,79,.10) 62%, var(--glass-strong)); }
.float-chip,
.orbit,
.scan-hook b,
.price-tag {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.36), 0 9px 22px rgba(7,75,39,.14);
}

.card,
.price-card,
.role,
.product-row,
.visual-row,
.path-step {
  transition: transform .24s cubic-bezier(.2,.8,.2,1), box-shadow .24s ease, border-color .24s ease, background-color .24s ease;
}
.card:hover,
.price-card:hover {
  transform: translateY(-7px);
  box-shadow: inset 0 1px 0 var(--glass-edge), 0 28px 65px rgba(5,48,25,.14), 0 8px 20px rgba(5,48,25,.07);
}
.role:hover { box-shadow: inset 0 1px 0 var(--glass-edge), 0 16px 36px rgba(5,48,25,.11); }
.product-row:hover {
  background-image: linear-gradient(120deg, var(--glass-gloss), transparent 48%);
  background-color: var(--glass);
  box-shadow: inset 0 1px 0 var(--glass-edge), var(--glass-shadow-low);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  backdrop-filter: blur(14px) saturate(140%);
}

.proof-panel::before,
.dark-band::before,
.cta-shell::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background:
    radial-gradient(circle at 12% 0%, var(--glass-gloss), transparent 30%),
    linear-gradient(115deg, transparent 55%, rgba(11,191,105,.055));
  pointer-events: none;
}
.proof-panel > *, .dark-band > *, .cta-shell > * { position: relative; z-index: 1; }
.cta-shell { background-color: color-mix(in srgb, var(--green-pale) 76%, var(--glass)); }
.footer {
  background-image: linear-gradient(180deg, var(--glass-gloss), transparent 22%);
  background-color: var(--glass-strong);
  box-shadow: inset 0 1px 0 var(--glass-edge), 0 -14px 45px rgba(5,48,25,.045);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  backdrop-filter: blur(18px) saturate(140%);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .nav-shell, .attack-board, .visual, .card, .price-card, .quote, .table-wrap, .role, .proof-panel, .dark-band, .cta-shell { background-color: var(--surface); }
}

@media (prefers-reduced-transparency: reduce) {
  .nav-shell, .attack-board, .visual, .card, .price-card, .quote, .table-wrap, .role, .proof-panel, .dark-band, .cta-shell, .board-inner, .visual-row, .path-step, .code-window { background-color: var(--surface); -webkit-backdrop-filter: none; backdrop-filter: none; }
}

/* Original SVG security personas */
.researcher-faces span {
  overflow: hidden;
  background-position: center;
  background-size: cover;
  box-shadow: 0 7px 15px rgba(5,48,25,.13);
}
.researcher-faces span:nth-child(1) { color: transparent; background-image: url("assets/avatar-operator.svg"); }
.researcher-faces span:nth-child(2) { color: transparent; background-image: url("assets/avatar-researcher.svg"); }
.researcher-faces span:nth-child(3) { color: transparent; background-image: url("assets/avatar-engineer.svg"); }
.researcher-faces span:nth-child(4) { color: transparent; background-image: url("assets/avatar-analyst.svg"); }

.page-hero .visual::after {
  content: "";
  position: absolute;
  z-index: 5;
  width: 64px;
  height: 64px;
  border: 5px solid var(--glass-strong);
  border-radius: 50%;
  background-position: center;
  background-size: cover;
  box-shadow: 0 13px 28px rgba(5,48,25,.16), 0 0 0 1px rgba(7,140,82,.16);
  animation: avatar-float 4.5s ease-in-out infinite alternate;
  pointer-events: none;
}
.page-bounty .visual::after { left: 28px; bottom: -25px; background-image: url("assets/avatar-researcher.svg"); }
.page-solutions .visual::after { left: 38px; bottom: -30px; background-image: url("assets/avatar-operator.svg"); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual::after { left: 28px; bottom: 14px; background-image: url("assets/avatar-engineer.svg"); }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual::after { top: 62px; right: 34px; background-image: url("assets/avatar-researcher.svg"); }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual::after { top: 68px; right: -24px; background-image: url("assets/avatar-operator.svg"); }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual::after { left: 38px; bottom: -30px; background-image: url("assets/avatar-analyst.svg"); }

@keyframes avatar-float {
  from { transform: translate3d(0,0,0) rotate(-2deg); }
  to { transform: translate3d(0,-8px,0) rotate(2deg); }
}

@media (max-width: 680px) {
  .page-hero .visual::after { width: 54px; height: 54px; border-width: 4px; }
  .page-bounty .visual::after,
  .page-solutions .visual::after,
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual::after,
  body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual::after { left: 18px; }
  body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual::after { right: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .page-hero .visual::after { animation: none !important; }
}

/* Downloaded SVG illustration system */
:root { --art-opacity: .18; }
[data-theme="dark"] { --art-opacity: .105; }
.page-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: var(--art-opacity);
  filter: saturate(.78);
  animation: art-drift 10s ease-in-out infinite alternate;
}
.page-bounty .page-hero::after { width: 260px; height: 260px; right: 1%; bottom: 60px; background-image: url("assets/Hacker-bro.svg"); }
.page-solutions .page-hero::after { width: 230px; height: 230px; right: 2%; top: 155px; background-image: url("assets/Artificial intelligence-pana.svg"); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .page-hero::after { width: 300px; height: 300px; right: 4%; bottom: 40px; background-image: url("assets/Programmer-bro.svg"); }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .page-hero::after { width: 310px; height: 220px; left: 43%; bottom: 28px; background-image: url("assets/Webinar-pana.svg"); }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .page-hero::after { width: 270px; height: 270px; left: 1%; bottom: 42px; background-image: url("assets/Innovation-amico.svg"); }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .page-hero::after { width: 260px; height: 260px; right: 2%; bottom: 75px; background-image: url("assets/Problem solving-bro.svg"); }

#oqtrix::before,
#adversyn::before,
#tracefold::before,
#ptaas::before,
#principles .card::before,
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card::before {
  content: "";
  position: absolute;
  width: 142px;
  height: 118px;
  top: 11px;
  right: 13px;
  z-index: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: calc(var(--art-opacity) + .06);
  filter: saturate(.72);
}
#oqtrix::before { background-image: url("assets/Website Creator-bro.svg"); }
#adversyn::before { background-image: url("assets/Cyber attack-amico.svg"); }
#tracefold::before { background-image: url("assets/Version control-bro.svg"); }
#ptaas::before { background-image: url("assets/Hacker-bro.svg"); }
#principles .card:nth-child(1)::before { background-image: url("assets/401 Error Unauthorized-pana.svg"); }
#principles .card:nth-child(2)::before { background-image: url("assets/Critical thinking-bro.svg"); }
#principles .card:nth-child(3)::before { background-image: url("assets/Innovation-amico.svg"); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card:nth-child(1)::before { background-image: url("assets/Critical thinking-bro.svg"); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card:nth-child(2)::before { background-image: url("assets/Multitasking-bro.svg"); }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card:nth-child(3)::before { background-image: url("assets/Problem solving-bro.svg"); }
.card > * { position: relative; z-index: 1; }

.page-bounty .split,
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .split,
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .split { position: relative; }
.page-bounty .split::after,
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .split::after,
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .split::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 190px;
  height: 190px;
  left: 28%;
  bottom: -38px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: calc(var(--art-opacity) - .035);
  pointer-events: none;
}
.page-bounty .split::after { background-image: url("assets/401 Error Unauthorized-pana.svg"); }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .split::after { background-image: url("assets/Webinar-pana.svg"); }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .split::after { background-image: url("assets/Questions-bro.svg"); }

@keyframes art-drift {
  from { transform: translate3d(0,0,0) rotate(-1deg); }
  to { transform: translate3d(0,-12px,0) rotate(1deg); }
}

@media (max-width: 920px) {
  .page-hero::after { width: 210px !important; height: 210px !important; right: -35px !important; left: auto !important; bottom: 25px !important; top: auto !important; opacity: calc(var(--art-opacity) - .045); }
}
@media (max-width: 680px) {
  .page-hero::after { width: 165px !important; height: 165px !important; right: -32px !important; bottom: 20px !important; }
  #oqtrix::before, #adversyn::before, #tracefold::before, #ptaas::before, #principles .card::before,
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card::before { width: 112px; height: 92px; opacity: var(--art-opacity); }
  .page-bounty .split::after,
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .split::after,
  body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .split::after { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .page-hero::after { animation: none !important; }
}

/* Illustration-first heroes: no oversized dashboard cards */
.main-hero-art {
  position: relative;
  min-height: 590px;
  display: grid;
  place-items: center;
  margin: 0;
  isolation: isolate;
}
.main-hero-art::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 88%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(11,191,105,.16), rgba(11,191,105,.055) 52%, transparent 70%);
  animation: radar-breathe 7s ease-in-out infinite;
}
.main-hero-art::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 76%;
  aspect-ratio: 1;
  border: 1px dashed rgba(7,140,82,.22);
  border-radius: 50%;
  animation: slow-spin 34s linear infinite;
}
.main-hero-art > img {
  width: min(100%, 590px);
  max-height: 570px;
  object-fit: contain;
  filter: drop-shadow(0 24px 32px rgba(5,48,25,.12));
  animation: art-drift 8s ease-in-out infinite alternate;
}
.art-status,
.art-signal {
  position: absolute;
  border: 1px solid color-mix(in srgb, var(--line) 76%, var(--glass-edge));
  border-radius: 999px;
  color: var(--ink);
  background-image: linear-gradient(135deg, var(--glass-gloss), transparent 55%);
  background-color: var(--glass-strong);
  box-shadow: inset 0 1px 0 var(--glass-edge), var(--glass-shadow-low);
  -webkit-backdrop-filter: blur(16px) saturate(145%);
  backdrop-filter: blur(16px) saturate(145%);
}
.art-status { right: 8px; bottom: 72px; display: flex; align-items: center; gap: 12px; padding: 10px 14px; font-size: .68rem; }
.art-status span { display: flex; align-items: center; gap: 7px; color: var(--muted); }
.art-status span::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--green-2); box-shadow: 0 0 0 5px rgba(11,191,105,.1); }
.art-status b { color: var(--green); font-family: "JetBrains Mono", monospace; font-size: .61rem; text-transform: uppercase; }
.art-signal { padding: 8px 12px; color: var(--green); font: 600 .58rem "JetBrains Mono", monospace; letter-spacing: .06em; text-transform: uppercase; }
.signal-one { left: 15px; top: 125px; }
.signal-two { right: 10px; top: 190px; }

.page-hero::after { display: none; }
.page-hero .visual {
  min-height: 520px;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.page-hero .visual > * { display: none !important; }
.page-hero .visual::before {
  inset: 8%;
  width: auto;
  height: auto;
  z-index: -1;
  border: 1px dashed rgba(7,140,82,.20);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(11,191,105,.12), rgba(11,191,105,.035) 58%, transparent 70%);
  box-shadow: none;
  clip-path: none;
  animation: slow-spin 38s linear infinite;
}
.page-bounty .visual { min-height: 570px; background-image: url("assets/Hacker-bro.svg"); background-size: 92% 92%; transform: rotate(1deg); }
.page-solutions .visual { min-height: 430px; background-image: url("assets/Artificial intelligence-pana.svg"); background-size: 400px 400px; }
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual { min-height: 560px; background-image: url("assets/Programmer-bro.svg"); background-size: 94% 94%; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual { min-height: 520px; background-image: url("assets/Webinar-pana.svg"); background-size: 108% auto; }
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual::before { inset: 4%; box-shadow: 0 0 0 24px rgba(11,191,105,.045); }
body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual { min-height: 560px; background-image: url("assets/Innovation-amico.svg"); background-size: 94% 94%; }
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual { min-height: 430px; background-image: url("assets/Problem solving-bro.svg"); background-size: 400px 400px; }

@media (max-width: 920px) {
  .main-hero-art { width: min(650px,100%); min-height: 570px; margin-inline: auto; }
  .page-hero .visual { width: min(620px,100%); min-height: 520px; margin-inline: auto; }
  .page-solutions .visual,
  body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual { min-height: 430px; }
}
@media (max-width: 680px) {
  .main-hero-art { min-height: 430px; }
  .main-hero-art > img { max-height: 410px; }
  .art-status { right: 4px; bottom: 20px; }
  .signal-one { left: 2px; top: 80px; }
  .signal-two { right: 2px; top: 132px; }
  .page-hero .visual,
  .page-bounty .visual,
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .visual,
  body:has(.nav-links a[href="partners.html"][aria-current="page"]) .visual,
  body:has(.nav-links a[href="company.html"][aria-current="page"]) .visual { min-height: 430px; background-size: contain; }
  .page-solutions .visual,
  body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .visual { min-height: 370px; background-size: 330px 330px; }
}
@media (prefers-reduced-motion: reduce) {
  .main-hero-art::before, .main-hero-art::after, .main-hero-art > img, .page-hero .visual::before { animation: none !important; }
}

/* Keep integrated SVGs crisp and intentionally placed */
.main-hero-art > img,
.page-hero .visual { opacity: 1; filter: none; }
.page-bounty .split::after,
body:has(.nav-links a[href="partners.html"][aria-current="page"]) .split::after,
body:has(.nav-links a[href="pricing.html"][aria-current="page"]) .split::after { display: none; }
#oqtrix::before,
#adversyn::before,
#tracefold::before,
#ptaas::before,
#principles .card::before,
body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card::before {
  width: 136px;
  height: 108px;
  top: 14px;
  right: 16px;
  opacity: .84;
  filter: none;
}
[data-theme="dark"] #oqtrix::before,
[data-theme="dark"] #adversyn::before,
[data-theme="dark"] #tracefold::before,
[data-theme="dark"] #ptaas::before,
[data-theme="dark"] #principles .card::before,
[data-theme="dark"] body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card::before { opacity: .72; }

@media (max-width: 680px) {
  #oqtrix::before, #adversyn::before, #tracefold::before, #ptaas::before, #principles .card::before,
  body:has(.nav-links a[href="careers.html"][aria-current="page"]) .section.alt .card::before { width: 104px; height: 86px; opacity: .76; }
}

/* Avatars belong to the researcher cluster, not as floating hero badges. */
.page-hero .visual::after { display: none !important; }

/* macOS-inspired materials and interaction polish */
:root {
  --material-stroke: rgba(255, 255, 255, .67);
  --material-sheen: rgba(255, 255, 255, .39);
  --material-hover: rgba(255, 255, 255, .73);
  --lift-shadow: 0 24px 54px rgba(18, 54, 34, .14), 0 8px 18px rgba(18, 54, 34, .07);
  --spring: cubic-bezier(.2, .8, .2, 1);
}

[data-theme="dark"] {
  --green: #25ce7b;
  --green-2: #47e49a;
  --green-3: #a0f3c7;
  --ink: #f7faf8;
  --ink-2: #e9efec;
  --paper: #171e1b;
  --surface: #242d29;
  --muted: #b6c3bb;
  --line: #3d4c44;
  --green-pale: #1d402e;
  --shadow: 0 20px 52px rgba(0, 0, 0, .25);
  --glass: rgba(34, 43, 39, .70);
  --glass-strong: rgba(40, 50, 45, .86);
  --glass-soft: rgba(29, 38, 34, .67);
  --glass-edge: rgba(255, 255, 255, .15);
  --glass-gloss: rgba(255, 255, 255, .10);
  --glass-shadow: 0 22px 54px rgba(0, 0, 0, .27), 0 5px 16px rgba(0, 0, 0, .14);
  --glass-shadow-low: 0 12px 30px rgba(0, 0, 0, .21), 0 2px 7px rgba(0, 0, 0, .12);
  --material-stroke: rgba(255, 255, 255, .15);
  --material-sheen: rgba(255, 255, 255, .10);
  --material-hover: rgba(49, 61, 56, .92);
  --lift-shadow: 0 24px 54px rgba(0, 0, 0, .29), 0 8px 18px rgba(0, 0, 0, .16);
}

[data-theme="dark"] body {
  background:
    radial-gradient(circle at 12% 8%, rgba(133, 157, 147, .13), transparent 30rem),
    radial-gradient(circle at 88% 36%, rgba(37, 206, 123, .075), transparent 31rem),
    var(--paper);
}

[data-theme="dark"] body::before {
  opacity: 1;
  background-image:
    linear-gradient(rgba(87, 157, 119, .07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(87, 157, 119, .07) 1px, transparent 1px);
}

[data-theme="dark"] body::after { background: rgba(37, 206, 123, .055); }

.nav-shell,
.card,
.price-card,
.quote,
.table-wrap,
.role,
.proof-panel,
.dark-band,
.cta-shell,
.art-status,
.art-signal {
  border-color: color-mix(in srgb, var(--line) 72%, var(--material-stroke));
  background-image:
    linear-gradient(150deg, var(--material-sheen), transparent 30%),
    linear-gradient(110deg, transparent 58%, rgba(11, 191, 105, .04));
  box-shadow:
    inset 0 1px 0 var(--material-stroke),
    inset 0 -1px 0 rgba(7, 60, 33, .035),
    var(--glass-shadow-low);
}

.nav-shell {
  box-shadow:
    inset 0 1px 0 var(--material-stroke),
    inset 0 -1px 0 rgba(7, 60, 33, .04),
    0 14px 34px rgba(5, 35, 19, .10);
}

.nav-links a {
  margin-block: 14px;
  padding: 10px 12px;
  border-radius: 999px;
  transition: color .2s ease, text-shadow .2s ease, transform .2s var(--spring);
}

.nav-links a:hover {
  transform: none;
  color: var(--green);
  background-image: linear-gradient(color-mix(in srgb, var(--green-2) 82%, transparent), color-mix(in srgb, var(--green-2) 82%, transparent));
  background-repeat: no-repeat;
  background-position: center calc(100% - 2px);
  background-size: calc(100% - 24px) 2px;
  box-shadow: none;
  text-shadow: 0 0 18px rgba(7, 140, 82, .18);
}

.nav-links a[aria-current="page"] {
  color: var(--green);
  background-image: linear-gradient(var(--green-2), var(--green-2));
  background-repeat: no-repeat;
  background-position: center calc(100% - 2px);
  background-size: calc(100% - 24px) 2px;
  box-shadow: none;
}

.nav-links a::after,
.nav-links a:hover::after,
.nav-links a[aria-current="page"]::after { display: none !important; }
.nav-links a:active { transform: scale(.955); transition-duration: .08s; }

[data-theme="dark"] .nav-links a:hover {
  color: var(--green-2);
  background-image: linear-gradient(color-mix(in srgb, var(--green-2) 78%, transparent), color-mix(in srgb, var(--green-2) 78%, transparent));
  box-shadow: none;
  text-shadow: 0 0 18px rgba(71, 228, 154, .20);
}

[data-theme="dark"] .nav-links a[aria-current="page"] {
  color: var(--green-2);
  background-image: linear-gradient(var(--green-2), var(--green-2));
  box-shadow: none;
}

.button,
.theme-toggle,
.menu-toggle,
.text-link,
.art-status,
.art-signal {
  -webkit-tap-highlight-color: transparent;
  transition:
    transform .24s var(--spring),
    box-shadow .24s ease,
    background-color .24s ease,
    border-color .24s ease,
    filter .24s ease;
}

.button:hover {
  transform: translateY(-3px) scale(1.015);
  filter: saturate(1.05);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.36), 0 17px 32px rgba(7,140,82,.25);
}

.button:active {
  transform: translateY(0) scale(.985);
  box-shadow: inset 0 2px 5px rgba(0,0,0,.14), 0 5px 12px rgba(7,140,82,.16);
  transition-duration: .09s;
}

.theme-toggle:hover,
.menu-toggle:hover { transform: scale(1.045); }
.theme-toggle:active,
.menu-toggle:active { transform: scale(.94); transition-duration: .09s; }

.card,
.price-card,
.role,
.product-row,
.proof-check,
.check,
.metric,
.art-status,
.art-signal {
  transition:
    transform .32s var(--spring),
    box-shadow .32s ease,
    border-color .32s ease,
    background-color .32s ease;
}

.card:hover,
.price-card:hover {
  transform: translateY(-8px) scale(1.008);
  border-color: color-mix(in srgb, var(--green) 38%, var(--material-stroke));
  background-color: var(--material-hover);
  box-shadow: inset 0 1px 0 var(--material-stroke), var(--lift-shadow);
}

.card::after {
  inset: 1px 12% auto;
  width: auto;
  height: 1px;
  border: 0;
  border-radius: 999px;
  opacity: .72;
  background: linear-gradient(90deg, transparent, var(--material-stroke), transparent);
  pointer-events: none;
}

.price-card.featured {
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 20px 48px rgba(7, 140, 82, .15);
}

.role:hover {
  transform: translateY(-4px) scale(1.004);
  border-color: color-mix(in srgb, var(--green) 42%, var(--line));
  background-color: var(--material-hover);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 18px 38px rgba(5,48,25,.12);
}

.product-row:hover {
  transform: translateY(-3px);
  padding-left: 20px;
  border-color: transparent;
  background-color: var(--glass-strong);
}

.proof-check:hover,
.check:hover {
  transform: translateX(5px);
  border-color: color-mix(in srgb, var(--green) 34%, var(--line));
}

.metric:hover { transform: translateY(-4px); }
.metric:hover b { text-shadow: 0 10px 28px rgba(7, 140, 82, .18); }

.table-wrap tbody tr { transition: background-color .2s ease; }
.table-wrap tbody tr:hover { background: color-mix(in srgb, var(--green-pale) 55%, transparent); }

.text-link:hover { transform: translateX(3px); }
.art-status:hover,
.art-signal:hover {
  transform: translateY(-3px) scale(1.025);
  background-color: var(--material-hover);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 16px 34px rgba(5,48,25,.13);
}

[data-theme="dark"] .footer {
  background-color: rgba(24, 29, 32, .90);
  background-image: linear-gradient(180deg, rgba(255,255,255,.06), transparent 22%);
}

@media (hover: none) {
  .button:hover,
  .theme-toggle:hover,
  .menu-toggle:hover,
  .card:hover,
  .price-card:hover,
  .role:hover,
  .product-row:hover,
  .proof-check:hover,
  .check:hover,
  .metric:hover,
  .art-status:hover,
  .art-signal:hover,
  .text-link:hover { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .button,
  .theme-toggle,
  .menu-toggle,
  .card,
  .price-card,
  .role,
  .product-row,
  .proof-check,
  .check,
  .metric,
  .art-status,
  .art-signal,
  .text-link { transition-duration: .01ms !important; }
}

/* Immersive landing stage and compact system navigation */
:root {
  --hero-stage: #edf5f0;
  --hero-stage-edge: rgba(7, 140, 82, .14);
  --hero-line: rgba(7, 140, 82, .20);
  --nav-capsule: rgba(255, 255, 255, .68);
}

[data-theme="dark"] {
  --hero-stage: #131b18;
  --hero-stage-edge: rgba(94, 235, 166, .22);
  --hero-line: rgba(94, 235, 166, .29);
  --nav-capsule: rgba(37, 47, 42, .84);
}

.nav-shell {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

.nav-shell::after { display: none; }

.nav-links {
  justify-self: center;
  gap: 2px;
  padding: 4px;
  border: 1px solid color-mix(in srgb, var(--line) 72%, var(--glass-edge));
  border-radius: 999px;
  background:
    linear-gradient(145deg, var(--material-sheen), transparent 58%),
    var(--nav-capsule);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 10px 25px rgba(5, 32, 18, .08);
  -webkit-backdrop-filter: blur(16px) saturate(135%);
  backdrop-filter: blur(16px) saturate(135%);
}

.nav-links a,
.nav-links a:hover,
.nav-links a[aria-current="page"],
[data-theme="dark"] .nav-links a:hover,
[data-theme="dark"] .nav-links a[aria-current="page"] {
  margin: 0;
  padding: 8px 11px;
  background-image: none;
  background-color: transparent;
  background-size: auto;
  box-shadow: none;
  text-shadow: none;
}

.nav-links a:hover {
  color: var(--ink);
  background-color: color-mix(in srgb, var(--surface) 72%, transparent);
  box-shadow: inset 0 1px 0 var(--material-stroke);
}

.nav-links a[aria-current="page"] {
  color: var(--green);
  background-color: color-mix(in srgb, var(--green-pale) 72%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--green) 14%, transparent), inset 0 1px 0 var(--material-stroke);
}

[data-theme="dark"] .nav-links a:hover {
  color: var(--ink);
  background-color: rgba(255, 255, 255, .07);
}

[data-theme="dark"] .nav-links a[aria-current="page"] {
  color: var(--green-2);
  background-color: rgba(37, 206, 123, .11);
}

.home-page main { padding-top: 0; }

.home-page .home-hero {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 970px;
  margin: 0;
  overflow: hidden;
  align-items: flex-start;
  padding: 152px 0 30px;
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 50% 82%, rgba(11, 191, 105, .13), transparent 29rem),
    linear-gradient(180deg, color-mix(in srgb, var(--hero-stage) 94%, white) 0%, var(--hero-stage) 78%, var(--paper) 100%);
  box-shadow: none;
}

[data-theme="dark"] .home-page .home-hero {
  background:
    radial-gradient(circle at 50% 82%, rgba(37, 206, 123, .16), transparent 30rem),
    radial-gradient(circle at 50% 8%, rgba(88, 116, 128, .12), transparent 24rem),
    linear-gradient(180deg, var(--hero-stage) 0%, var(--hero-stage) 80%, var(--paper) 100%);
  box-shadow: none;
}

.home-page .home-hero::before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 116%;
  height: 430px;
  bottom: -252px;
  left: -8%;
  border: 2px solid var(--hero-line);
  border-radius: 50%;
  box-shadow:
    0 -18px 48px rgba(11, 191, 105, .08),
    0 -52px 100px rgba(11, 191, 105, .06),
    inset 0 20px 60px rgba(11, 191, 105, .045);
  pointer-events: none;
}

.home-page .home-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 64%;
  height: 240px;
  bottom: -94px;
  left: 18%;
  border: 1px solid color-mix(in srgb, var(--hero-line) 72%, transparent);
  border-radius: 50%;
  filter: blur(.2px);
  pointer-events: none;
}

.home-page .home-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: 0;
  width: min(1040px, calc(100% - 48px));
  text-align: center;
}

.home-page .home-copy { position: relative; z-index: 3; display: grid; justify-items: center; }
.home-page .scan-hook { justify-content: center; margin-bottom: 18px; color: var(--muted); }
.home-page .scan-hook b {
  color: var(--green);
  border: 1px solid color-mix(in srgb, var(--green) 28%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--green-pale) 78%, transparent);
  box-shadow: inset 0 1px 0 var(--glass-edge);
}
.home-page .home-copy h1 { max-width: 960px; font-size: clamp(4rem, 7.1vw, 6.75rem); line-height: .96; }
.home-page .home-copy .lead { max-width: 670px; margin: 25px auto 0; }
.home-page .hero-actions { justify-content: center; margin-top: 26px; }
.home-page .researcher-line { justify-content: center; margin-top: 27px; }
.home-page .researcher-line p { text-align: left; }

.home-page .main-hero-art {
  width: min(560px, 100%);
  min-height: 330px;
  margin-top: -12px;
}
.home-page .main-hero-art::before { width: 72%; opacity: .70; }
.home-page .main-hero-art::after { width: 62%; }
.home-page .main-hero-art > img { width: min(100%, 430px); max-height: 340px; }
.home-page .signal-one { left: 35px; top: 72px; }
.home-page .signal-two { right: 24px; top: 108px; }


/* Capability rows use a directional spotlight, not a hover card. */
.product-list { border-top: 1px solid var(--line); }
.product-row {
  isolation: isolate;
  overflow: hidden;
  padding: 22px 18px;
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none;
  transition: border-color .25s ease, padding .3s var(--spring);
}
.product-row::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 8px 0;
  border-left: 3px solid var(--green-2);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--green-pale) 74%, transparent), transparent 74%),
    linear-gradient(90deg, transparent, rgba(255,255,255,.10), transparent);
  opacity: 0;
  transform: scaleX(.96);
  transform-origin: left center;
  transition: opacity .26s ease, transform .34s var(--spring);
}
.product-row::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 180px;
  height: 180px;
  right: 7%;
  border: 1px solid color-mix(in srgb, var(--green) 16%, transparent);
  border-radius: 50%;
  opacity: 0;
  transform: scale(.72);
  transition: opacity .3s ease, transform .4s var(--spring);
}
.product-row > * { position: relative; z-index: 1; }
.product-row h3 { transition: color .24s ease, transform .3s var(--spring); }
.product-row:hover {
  padding-left: 28px;
  border-color: color-mix(in srgb, var(--green) 28%, var(--line));
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none;
  transform: none;
}
.product-row:hover::before { opacity: 1; transform: scaleX(1); }
.product-row:hover::after { opacity: .7; transform: scale(1); }
.product-row:hover h3 { color: var(--green); transform: translateX(4px); }
.product-row .text-link {
  padding: 8px 12px;
  border: 1px solid transparent;
  transition: color .2s ease, border-color .2s ease, background-color .2s ease;
}
.product-row:hover .text-link {
  border-color: color-mix(in srgb, var(--green) 22%, transparent);
  background: color-mix(in srgb, var(--glass) 56%, transparent);
}

[data-theme="dark"] .product-row::before {
  background:
    linear-gradient(90deg, rgba(37,206,123,.10), transparent 74%),
    linear-gradient(90deg, transparent, rgba(255,255,255,.035), transparent);
}

@media (max-width: 920px) {
  .nav-shell {
    border: 1px solid color-mix(in srgb, var(--line) 72%, var(--glass-edge));
    background: var(--glass-strong);
    box-shadow: inset 0 1px 0 var(--material-stroke), var(--glass-shadow-low);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
    backdrop-filter: blur(18px) saturate(140%);
  }
  .nav-links {
    justify-self: stretch;
    gap: 0;
    border-color: transparent;
    border-radius: 24px;
    background: var(--glass-strong);
  }
  .nav-links.open { border-color: var(--line); }
  .nav-links a, .nav-links a:hover, .nav-links a[aria-current="page"] { margin: 0; padding: 12px 10px; border-radius: 10px; background-image: none; }
  .home-page .home-hero { min-height: auto; padding-top: 142px; }
  .home-page .home-grid { width: min(760px, calc(100% - 36px)); gap: 0; }
  .home-page .home-copy h1 { font-size: clamp(3.6rem, 10vw, 5.8rem); }
}

@media (max-width: 680px) {
  .home-page main { padding-top: 0; }
  .home-page .home-hero {
    width: 100%;
    padding: 118px 0 24px;
    border-radius: 0;
  }
  .home-page .home-grid { width: calc(100% - 28px); }
  .home-page .scan-hook { max-width: 310px; flex-wrap: wrap; line-height: 1.45; }
  .home-page .home-copy h1 { font-size: clamp(2.75rem, 13.3vw, 4.25rem); }
  .home-page .home-copy .lead { margin-top: 20px; }
  .home-page .hero-actions, .home-page .researcher-line { align-items: center; }
  .home-page .researcher-line p { text-align: center; }
  .home-page .main-hero-art { min-height: 335px; margin-top: 6px; }
  .home-page .main-hero-art > img { max-height: 315px; }
  .home-page .signal-one { left: 0; top: 68px; }
  .home-page .signal-two { right: 0; top: 114px; }
  .product-row { padding-inline: 5px; }
  .product-row:hover { padding-left: 12px; }
  .product-row::after { display: none; }
}

@media (prefers-reduced-motion: reduce) {
}

/* Final landing hierarchy refinement */
.home-page .home-hero {
  min-height: 900px;
  padding-top: 132px;
  padding-bottom: 0;
}

.home-page .home-grid { width: min(1100px, calc(100% - 48px)); }

.home-page .home-copy h1 {
  max-width: 1030px;
  font-size: clamp(3.8rem, 6.7vw, 6.35rem);
  line-height: .98;
}
.home-page .home-copy h1 em { color: var(--green); }
.home-page .home-copy .lead { margin-top: 20px; }
.home-page .hero-actions { margin-top: 21px; }

.home-page .main-hero-art {
  width: min(650px, 100%);
  min-height: 385px;
  margin-top: -35px;
}
.home-page .main-hero-art::before { width: 76%; }
.home-page .main-hero-art::after { width: 66%; }
.home-page .main-hero-art > img { width: min(100%, 515px); max-height: 395px; }

.home-page .home-copy.reveal { transition-delay: .08s; }
.home-page .main-hero-art.reveal { transition-delay: .16s; }

.home-page .nav-shell { min-height: 68px; }
.home-page .nav-links { min-height: 43px; }
.home-page .nav-cta,
.home-page .nav-cta:hover {
  min-height: 42px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 7px 17px rgba(7,140,82,.15);
}
.home-page .theme-toggle { box-shadow: inset 0 1px 0 var(--glass-edge), 0 7px 17px rgba(5,48,25,.07); }

.trust-rail {
  position: relative;
  z-index: 3;
  margin-top: -1px;
  border-top: 0;
  background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--surface) 84%, transparent) 38%);
  box-shadow: inset 0 -1px 0 var(--line);
}
.trust-inner { grid-template-columns: minmax(310px,.9fr) minmax(0,1.7fr); min-height: 112px; }
.trust-researchers { display: flex; align-items: center; gap: 17px; }
.trust-researchers .researcher-faces { flex: 0 0 auto; }
.trust-researchers p { max-width: 245px; margin: 0; line-height: 1.45; }
.trust-researchers .researcher-faces span { border-color: color-mix(in srgb, var(--surface) 76%, transparent); }

.product-row::after {
  width: 116px;
  height: 94px;
  right: 92px;
  border: 0;
  border-radius: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: drop-shadow(0 12px 17px rgba(5,48,25,.10));
  opacity: 0;
  transform: translateX(18px) scale(.88);
}
.product-row:nth-child(1)::after { background-image: url("assets/Website Creator-bro.svg"); }
.product-row:nth-child(2)::after { background-image: url("assets/Artificial intelligence-pana.svg"); }
.product-row:nth-child(3)::after { background-image: url("assets/Version control-bro.svg"); }
.product-row:nth-child(4)::after { background-image: url("assets/Hacker-bro.svg"); }
.product-row:hover::after { opacity: .78; transform: translateX(0) scale(1); }
.product-row p { transition: max-width .3s var(--spring), opacity .24s ease; }
.product-row:hover p { max-width: 430px; }
.product-row:hover .product-index { text-shadow: 0 0 18px rgba(11,191,105,.24); }

[data-theme="dark"] .trust-rail {
  background: linear-gradient(180deg, transparent, rgba(27,32,35,.76) 40%);
}
[data-theme="dark"] .product-row::after { filter: drop-shadow(0 14px 20px rgba(0,0,0,.24)); }

@media (max-width: 1080px) {
  .product-row::after { width: 92px; height: 76px; right: 74px; }
  .product-row:hover p { max-width: 370px; }
}

@media (max-width: 920px) {
  .home-page .home-hero { min-height: auto; padding-top: 122px; }
  .home-page .home-grid { width: min(780px, calc(100% - 36px)); }
  .home-page .home-copy h1 { font-size: clamp(3.35rem, 9.3vw, 5.25rem); }
  .home-page .main-hero-art { min-height: 360px; margin-top: -24px; }
  .trust-inner { grid-template-columns: 1fr; }
  .trust-researchers { justify-content: center; }
  .trust-researchers p { max-width: 360px; }
  .product-row::after { display: none; }
  .product-row:hover p { max-width: 540px; }
}

@media (max-width: 680px) {
  .home-page .home-hero { padding-top: 102px; }
  .home-page .home-copy h1 { font-size: clamp(2.55rem, 12.4vw, 3.8rem); line-height: 1; }
  .home-page .home-copy .lead { margin-top: 17px; }
  .home-page .hero-actions { margin-top: 18px; gap: 14px; }
  .home-page .main-hero-art { min-height: 315px; margin-top: -12px; }
  .home-page .main-hero-art > img { max-height: 325px; }
  .trust-inner { padding-block: 24px; }
  .trust-researchers { align-items: center; flex-direction: column; gap: 10px; }
  .trust-researchers p { max-width: 300px; text-align: center; }
  .wordmarks { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .home-copy.reveal,
  .home-page .main-hero-art.reveal { transition-delay: 0s; }
}

/* Hero composition cleanup */
.home-page .home-hero { min-height: 850px; padding-top: 174px; }
.home-page .home-copy h1 {
  max-width: 1010px;
  font-size: clamp(3.65rem, 6.25vw, 5.95rem);
  line-height: .97;
}
.home-page .home-copy .lead { max-width: 650px; margin-top: 18px; }
.home-page .hero-actions { margin-top: 23px; }
.home-page .main-hero-art {
  width: min(630px, 100%);
  min-height: 370px;
  margin-top: 10px;
}
.home-page .main-hero-art > img { width: min(100%, 500px); max-height: 385px; }

.trust-inner { grid-template-columns: minmax(340px,1fr) minmax(0,1.65fr); min-height: 124px; }
.trust-researchers p {
  max-width: 290px;
  color: var(--muted);
  font: 500 .75rem/1.5 Inter, sans-serif;
  letter-spacing: 0;
  text-transform: none;
}
.trust-researchers p strong { display: block; color: var(--ink); font-weight: 700; }
.wordmarks { opacity: .78; }

@media (max-width: 920px) {
  .home-page .home-hero { padding-top: 148px; }
  .home-page .home-copy h1 { font-size: clamp(3.25rem, 8.8vw, 5rem); }
  .home-page .main-hero-art { margin-top: 2px; }
  .trust-inner { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .home-page .home-hero { padding-top: 124px; }
  .home-page .home-copy h1 { font-size: clamp(2.5rem, 12vw, 3.65rem); }
  .home-page .home-copy h1 br { display: none; }
  .home-page .hero-actions { margin-top: 18px; }
  .home-page .main-hero-art { min-height: 310px; margin-top: 7px; }
  .home-page .main-hero-art > img { max-height: 315px; }
  .trust-researchers p { font-size: .72rem; }
}

/* Theme-native ambient globe and prompt-inspired motion */
.hero-video {
  position: absolute;
  z-index: 0;
  top: -4%;
  left: -5%;
  width: 110%;
  height: 110%;
  object-fit: cover;
  object-position: center 34%;
  opacity: .35;
  filter: grayscale(.5) sepia(.25) hue-rotate(82deg) saturate(1.42) contrast(1.12) brightness(1.08);
  -webkit-mask-image: radial-gradient(ellipse 43% 57% at 50% 42%, #000 0 47%, rgba(0,0,0,.92) 58%, rgba(0,0,0,.34) 70%, transparent 82%);
  mask-image: radial-gradient(ellipse 43% 57% at 50% 42%, #000 0 47%, rgba(0,0,0,.92) 58%, rgba(0,0,0,.34) 70%, transparent 82%);
  pointer-events: none;
}
.hero-video-wash {
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(240,247,242,.62) 0%, rgba(240,247,242,.36) 45%, rgba(240,247,242,.52) 100%),
    radial-gradient(circle at 50% 41%, transparent 0 20rem, rgba(240,247,242,.19) 36rem, rgba(240,247,242,.64) 58rem),
    radial-gradient(ellipse at 50% 76%, rgba(11,191,105,.13), transparent 34rem);
  pointer-events: none;
}
.hero-focus-blur {
  position: absolute;
  z-index: 1;
  top: 54px;
  left: 50%;
  width: min(880px, 70vw);
  aspect-ratio: 1;
  border: 1px solid rgba(8,148,86,.13);
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 44%, transparent 0 48%, rgba(8,148,86,.035) 66%, transparent 75%),
    radial-gradient(circle at 50% 50%, rgba(43,207,129,.05), transparent 64%);
  box-shadow:
    inset 0 0 90px rgba(11,191,105,.04),
    0 0 120px rgba(11,191,105,.09);
  transform: translateX(-50%);
  pointer-events: none;
  animation: globe-breathe 8s ease-in-out infinite;
}
.hero-focus-blur::before,
.hero-focus-blur::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(8,148,86,.09);
  border-radius: 50%;
}
.hero-focus-blur::before { inset: 8%; }
.hero-focus-blur::after { inset: 19%; border-color: rgba(8,148,86,.07); }

[data-theme="dark"] .hero-video {
  opacity: .48;
  filter: grayscale(.38) sepia(.15) hue-rotate(82deg) saturate(1.34) contrast(1.12) brightness(.94);
}
[data-theme="dark"] .hero-video-wash {
  background:
    linear-gradient(180deg, rgba(18,26,22,.42) 0%, rgba(18,26,22,.20) 46%, rgba(18,26,22,.44) 100%),
    radial-gradient(circle at 50% 41%, transparent 0 20rem, rgba(18,26,22,.10) 36rem, rgba(18,26,22,.52) 58rem),
    radial-gradient(ellipse at 50% 74%, rgba(55,220,138,.16), transparent 35rem);
}
[data-theme="dark"] .hero-focus-blur {
  border-color: rgba(62,221,145,.14);
  background:
    radial-gradient(circle at 50% 44%, transparent 0 48%, rgba(37,206,123,.045) 66%, transparent 75%),
    radial-gradient(circle at 50% 50%, rgba(37,206,123,.045), transparent 64%);
  box-shadow: inset 0 0 100px rgba(37,206,123,.035), 0 0 130px rgba(37,206,123,.08);
}
[data-theme="dark"] .hero-focus-blur::before { border-color: rgba(62,221,145,.1); }
[data-theme="dark"] .hero-focus-blur::after { border-color: rgba(62,221,145,.07); }
.home-page .home-hero::before,
.home-page .home-hero::after { z-index: 2; }
.home-page .home-grid { z-index: 3; }

@keyframes globe-breathe {
  0%, 100% { opacity: .72; transform: translateX(-50%) scale(.985); }
  50% { opacity: 1; transform: translateX(-50%) scale(1.015); }
}

@media (max-width: 920px) {
  .hero-focus-blur { top: 70px; width: min(760px, 92vw); }
  .hero-video {
    top: 0;
    left: -12%;
    width: 124%;
    height: 104%;
    -webkit-mask-image: radial-gradient(ellipse 52% 48% at 50% 34%, #000 0 46%, rgba(0,0,0,.82) 60%, transparent 82%);
    mask-image: radial-gradient(ellipse 52% 48% at 50% 34%, #000 0 46%, rgba(0,0,0,.82) 60%, transparent 82%);
  }
}

@media (max-width: 680px) {
  .hero-focus-blur { top: 78px; width: 112vw; }
  .hero-focus-blur::after { display: none; }
  .hero-video { opacity: .27; object-position: center 24%; }
  [data-theme="dark"] .hero-video { opacity: .32; }
}

.button-secondary {
  color: var(--ink);
  border-color: color-mix(in srgb, var(--line) 72%, var(--glass-edge));
  background-image: linear-gradient(145deg, var(--material-sheen), transparent 58%);
  background-color: color-mix(in srgb, var(--glass-strong) 72%, transparent);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 10px 24px rgba(5,48,25,.08);
  -webkit-backdrop-filter: blur(14px) saturate(135%);
  backdrop-filter: blur(14px) saturate(135%);
}
.button-secondary:hover {
  color: var(--green);
  border-color: color-mix(in srgb, var(--green) 28%, var(--line));
  background-color: var(--glass-strong);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 15px 30px rgba(5,48,25,.11);
}
[data-theme="dark"] .button-secondary { color: var(--ink); }

@keyframes hero-copy-up {
  from { opacity:0; transform:translateY(22px); filter:blur(6px); }
  to { opacity:1; transform:translateY(0); filter:blur(0); }
}
@keyframes hero-visual-rise {
  from { opacity:0; transform:translateY(52px) scale(.97); filter:blur(5px); }
  to { opacity:1; transform:translateY(0) scale(1); filter:blur(0); }
}
.home-page .home-copy.reveal.visible h1,
.home-page .home-copy.reveal.visible .lead,
.home-page .home-copy.reveal.visible .hero-actions {
  animation: hero-copy-up .9s cubic-bezier(.22,1,.36,1) both;
}
.home-page .home-copy.reveal.visible .lead { animation-delay: .11s; }
.home-page .home-copy.reveal.visible .hero-actions { animation-delay: .21s; }
.home-page .main-hero-art.reveal.visible { animation: hero-visual-rise 1.05s cubic-bezier(.22,1,.36,1) .31s both; }

/* Mobile navigation sheet */
.mobile-nav-cta { display: none; }

@media (max-width: 920px) {
  body.menu-open { overflow: hidden; }
  .site-header { isolation: isolate; pointer-events: none; }
  .site-header::after {
    content: "";
    position: fixed;
    z-index: -1;
    inset: 0;
    background: rgba(5,12,8,.24);
    opacity: 0;
    -webkit-backdrop-filter: blur(0);
    backdrop-filter: blur(0);
    transition: opacity .25s ease, backdrop-filter .25s ease;
    pointer-events: none;
  }
  body.menu-open .site-header::after {
    opacity: 1;
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
  }
  .nav-shell { z-index: 2; pointer-events: auto; }
  .menu-toggle {
    width: 42px;
    height: 42px;
    border: 1px solid color-mix(in srgb, var(--line) 72%, var(--glass-edge));
    background: color-mix(in srgb, var(--glass) 62%, transparent);
    box-shadow: inset 0 1px 0 var(--material-stroke);
  }
  .menu-toggle span { width: 18px; height: 1.5px; border-radius: 99px; }
  .nav-links {
    position: fixed;
    inset: 82px 14px auto;
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
    gap: 2px;
    max-height: calc(100svh - 98px);
    overflow-y: auto;
    padding: 13px;
    border: 1px solid color-mix(in srgb, var(--line) 72%, var(--glass-edge));
    border-radius: 28px;
    background:
      linear-gradient(145deg, var(--material-sheen), transparent 42%),
      var(--glass-strong);
    opacity: 0;
    visibility: hidden;
    box-shadow: inset 0 1px 0 var(--material-stroke), 0 30px 75px rgba(4,24,13,.20);
    transform: translateY(-12px) scale(.975);
    transform-origin: top center;
    transition: opacity .24s ease, transform .32s cubic-bezier(.22,1,.36,1), visibility .24s ease;
    -webkit-backdrop-filter: blur(24px) saturate(145%);
    backdrop-filter: blur(24px) saturate(145%);
    pointer-events: none;
  }
  .nav-links.open {
    max-height: calc(100svh - 98px);
    padding: 13px;
    border-color: color-mix(in srgb, var(--line) 72%, var(--glass-edge));
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    pointer-events: auto;
  }
  .nav-links::before {
    content: "Explore PentesterSpace";
    display: block;
    padding: 7px 12px 10px;
    color: var(--muted);
    font: 600 .6rem "JetBrains Mono", monospace;
    letter-spacing: .10em;
    text-transform: uppercase;
  }
  .nav-links a,
  .nav-links a:hover,
  .nav-links a[aria-current="page"] {
    min-height: 50px;
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    padding: 11px 13px;
    border: 0;
    border-radius: 14px;
    color: var(--ink);
    background-image: none;
    background-color: transparent;
    box-shadow: none;
    font: 650 .92rem Sora, sans-serif;
  }
  .nav-links a:hover { color: var(--green); background-color: color-mix(in srgb, var(--green-pale) 58%, transparent); }
  .nav-links a[aria-current="page"] { color: var(--green); background-color: color-mix(in srgb, var(--green-pale) 76%, transparent); }
  .nav-links a:not(.mobile-nav-cta)::before {
    width: 25px;
    color: var(--green);
    font: 600 .58rem "JetBrains Mono", monospace;
  }
  .nav-links a:nth-of-type(1)::before { content:"01"; }
  .nav-links a:nth-of-type(2)::before { content:"02"; }
  .nav-links a:nth-of-type(3)::before { content:"03"; }
  .nav-links a:nth-of-type(4)::before { content:"04"; }
  .nav-links a:nth-of-type(5)::before { content:"05"; }
  .nav-links a:nth-of-type(6)::before { content:"06"; }
  .nav-links a:nth-of-type(7)::before { content:"07"; }
  .nav-links .mobile-nav-cta {
    min-height: 52px;
    display: flex;
    justify-content: center;
    margin-top: 7px;
    color: #fff;
    background: var(--green);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 12px 25px rgba(7,140,82,.20);
  }
  .nav-links .mobile-nav-cta:hover { color:#fff; background:var(--green-2); }
}

@media (max-width: 680px) {
  .home-page .hero-actions { align-items: center; flex-direction: row; justify-content: center; }
  .home-page .hero-actions .button { min-height: 48px; padding-inline: 18px; }
}

@media (max-width: 390px) {
  .nav-links { inset: 75px 8px auto; border-radius: 23px; }
  .home-page .hero-actions { flex-direction: column; }
  .home-page .hero-actions .button { width: min(100%,260px); }
}

@media (max-width: 920px) {
  .menu-toggle { position: relative; display: block; }
  .menu-toggle span {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: 0;
    transform: translate(-50%,-50%);
  }
  .menu-toggle span:first-child { transform: translate(-50%,-7px); }
  .menu-toggle span:last-child { transform: translate(-50%,5px); }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translate(-50%,-50%) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; transform: translate(-50%,-50%) scaleX(.4); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translate(-50%,-50%) rotate(-45deg); }
}

@media (prefers-reduced-motion: reduce) {
  .hero-video { display: none; }
  .home-page .home-copy.reveal.visible h1,
  .home-page .home-copy.reveal.visible .lead,
  .home-page .home-copy.reveal.visible .hero-actions,
  .home-page .main-hero-art.reveal.visible { animation: none; }
}

/* Button interaction system */
.button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.button:not(.button-secondary)::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -45%;
  bottom: -45%;
  left: -72%;
  width: 48%;
  border-radius: 50%;
  background: linear-gradient(105deg, transparent 4%, rgba(255,255,255,.12) 28%, rgba(255,255,255,.62) 49%, rgba(255,255,255,.16) 68%, transparent 94%);
  filter: blur(2px);
  transform: skewX(-18deg);
  transition: left .7s cubic-bezier(.22,1,.36,1);
  pointer-events: none;
}

.button:not(.button-secondary):hover,
.button:not(.button-secondary):focus-visible {
  transform: none;
  filter: none;
  background-color: var(--green);
  border-color: var(--green);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32), 0 12px 26px rgba(7,140,82,.19);
}

.button:not(.button-secondary):hover::before,
.button:not(.button-secondary):focus-visible::before { left: 126%; }

.button-secondary {
  border-color: color-mix(in srgb, var(--ink) 76%, transparent);
  background-color: color-mix(in srgb, var(--glass-strong) 72%, transparent);
  transition: border-color .3s ease, color .3s ease, background-color .3s ease, box-shadow .3s ease;
}

.button-secondary::before { display: none; }

.button-secondary:hover,
.button-secondary:focus-visible {
  color: var(--ink);
  border-color: var(--green);
  background-color: color-mix(in srgb, var(--glass-strong) 72%, transparent);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 0 0 3px color-mix(in srgb, var(--green) 10%, transparent);
  transform: none;
  filter: none;
}

[data-theme="dark"] .button-secondary { border-color: color-mix(in srgb, var(--ink) 48%, transparent); }
[data-theme="dark"] .button-secondary:hover,
[data-theme="dark"] .button-secondary:focus-visible { color: var(--ink); border-color: var(--green-2); }

@media (prefers-reduced-motion: reduce) {
  .button:not(.button-secondary)::before { display: none; }
}

/* Original-site company trust rail */
.home-page .trust-inner {
  grid-template-columns: minmax(220px, .58fr) minmax(0, 2fr);
  gap: clamp(34px, 5vw, 78px);
}

.trust-context {
  display: grid;
  gap: 5px;
  padding-right: 28px;
  border-right: 1px solid var(--line);
}

.trust-context span {
  color: var(--green);
  font: 600 .6rem "JetBrains Mono", monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.trust-context p {
  margin: 0;
  color: var(--ink);
  font: 650 .82rem/1.35 Sora, sans-serif;
  letter-spacing: -.02em;
  text-transform: none;
}

.home-page .wordmarks {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: center;
  gap: clamp(20px, 3vw, 46px);
  color: var(--ink);
  opacity: 1;
}

.home-page .wordmarks span {
  color: color-mix(in srgb, var(--ink) 64%, var(--muted));
  font: 650 clamp(.85rem, 1.35vw, 1.05rem) Sora, sans-serif;
  letter-spacing: -.045em;
  text-align: center;
  transition: color .24s ease, opacity .24s ease;
}

.home-page .wordmarks span:nth-child(4) { font-weight: 700; }
.home-page .wordmarks span:nth-child(5) { font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.home-page .wordmarks span:hover { color: var(--green); }

@media (max-width: 920px) {
  .home-page .trust-inner { grid-template-columns: 1fr; gap: 24px; }
  .trust-context { justify-items: center; padding: 0 0 20px; border-right: 0; border-bottom: 1px solid var(--line); text-align: center; }
}

@media (max-width: 680px) {
  .home-page .wordmarks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px 24px; }
  .home-page .wordmarks span:last-child { grid-column: 1 / -1; }
}

/* Careers job board */
.careers-openings {
  position: relative;
  overflow: hidden;
}

.careers-openings::before {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  top: 16%;
  right: -310px;
  border-radius: 50%;
  background: rgba(11,191,105,.09);
  filter: blur(90px);
  pointer-events: none;
}

.job-board { position: relative; display: grid; gap: 24px; }

.job-posting {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 4vw, 52px);
  border: 1px solid color-mix(in srgb, var(--line) 76%, var(--glass-edge));
  border-radius: 32px;
  background:
    linear-gradient(145deg, var(--material-sheen), transparent 34%),
    color-mix(in srgb, var(--glass) 78%, transparent);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 18px 46px rgba(5,48,25,.08);
  -webkit-backdrop-filter: blur(16px) saturate(138%);
  backdrop-filter: blur(16px) saturate(138%);
}

.job-posting::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, var(--green-2), var(--green), transparent 92%);
}

.job-posting::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 340px;
  height: 340px;
  top: -230px;
  right: -150px;
  border: 1px solid color-mix(in srgb, var(--green) 16%, transparent);
  border-radius: 50%;
  box-shadow: 0 0 0 48px rgba(11,191,105,.025), 0 0 0 96px rgba(11,191,105,.018);
}

.job-heading {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) auto;
  align-items: start;
  gap: clamp(18px, 3vw, 38px);
}

.job-index,
.job-kicker {
  color: var(--green);
  font: 600 .61rem "JetBrains Mono", monospace;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.job-index { padding-top: 8px; }
.job-kicker { margin: 0 0 8px; }
.job-heading h3 { margin: 0; font: 600 clamp(1.7rem, 3.4vw, 3rem)/1.08 Sora, sans-serif; letter-spacing: -.055em; }
.job-heading h3 small { display: inline-block; color: var(--muted); font: inherit; white-space: nowrap; }

.job-status {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  padding: 0 13px;
  border: 1px solid color-mix(in srgb, var(--green) 25%, var(--line));
  border-radius: 999px;
  color: var(--green);
  background: color-mix(in srgb, var(--green-pale) 68%, transparent);
  font: 600 .6rem "JetBrains Mono", monospace;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.job-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 28px 0 0 130px;
}

.job-facts span,
.job-offer span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  background: color-mix(in srgb, var(--glass-strong) 60%, transparent);
  font-size: .7rem;
  font-weight: 650;
}

.job-summary {
  max-width: 900px;
  margin: 28px 0 0 130px;
  color: var(--ink);
  font: 500 clamp(.94rem, 1.35vw, 1.08rem)/1.75 Inter, sans-serif;
}

.job-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(34px, 6vw, 84px);
  margin-top: 34px;
  padding: 34px 0 0 130px;
  border-top: 1px solid var(--line);
}

.job-panel h4,
.job-offer strong {
  margin: 0 0 17px;
  color: var(--ink);
  font: 650 .88rem Sora, sans-serif;
  letter-spacing: -.02em;
}

.job-panel ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.job-panel li { position: relative; padding-left: 21px; color: var(--muted); font-size: .79rem; line-height: 1.62; }
.job-panel li::before { content: "↳"; position: absolute; left: 0; color: var(--green); font-weight: 750; }

.job-offer {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  margin: 32px 0 0 130px;
  padding-top: 27px;
  border-top: 1px solid var(--line);
}
.job-offer strong { margin: 0 12px 0 0; }

.job-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin: 36px 0 0 130px;
  padding-top: 28px;
  border-top: 1px solid var(--line);
}
.job-footer p { max-width: 570px; margin: 0; color: var(--muted); font-size: .76rem; }
.job-footer p strong { color: var(--ink); }
.job-footer .button { flex: 0 0 auto; }

[data-theme="dark"] .job-posting { box-shadow: inset 0 1px 0 var(--material-stroke), 0 22px 54px rgba(0,0,0,.2); }

@media (max-width: 800px) {
  .job-heading { grid-template-columns: 1fr auto; }
  .job-index { grid-column: 1 / -1; padding-top: 0; }
  .job-facts,
  .job-summary,
  .job-columns,
  .job-offer,
  .job-footer { margin-left: 0; }
  .job-columns { padding-left: 0; }
}

@media (max-width: 680px) {
  .job-posting { padding: 28px 22px; border-radius: 26px; }
  .job-heading { grid-template-columns: 1fr; }
  .job-status { justify-self: start; }
  .job-heading h3 { font-size: clamp(1.55rem, 8vw, 2.2rem); }
  .job-columns { grid-template-columns: 1fr; gap: 30px; }
  .job-footer { align-items: flex-start; flex-direction: column; }
  .job-footer .button { width: 100%; }
  .job-offer { align-items: flex-start; }
  .job-offer strong { width: 100%; }
}

/* Responsible disclosure marquee */
.disclosure-rail {
  overflow: hidden;
  background: color-mix(in srgb, var(--surface) 86%, transparent);
}

.disclosure-inner {
  min-height: 118px;
  display: grid;
  grid-template-columns: minmax(230px, .62fr) minmax(0, 2.38fr);
  align-items: center;
  gap: clamp(30px, 4vw, 58px);
}

.disclosure-label {
  margin: 0;
  padding-right: 32px;
  border-right: 1px solid var(--line);
  color: var(--green);
  font: 600 .61rem/1.65 "JetBrains Mono", monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.disclosure-marquee {
  min-width: 0;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.disclosure-track {
  width: max-content;
  display: flex;
  align-items: center;
  animation: disclosure-scroll 42s linear infinite;
  will-change: transform;
}

.disclosure-marquee:hover .disclosure-track { animation-play-state: paused; }

.disclosure-set {
  display: flex;
  align-items: center;
  gap: clamp(38px, 4.4vw, 70px);
  padding-right: clamp(38px, 4.4vw, 70px);
}

.disclosure-set span {
  position: relative;
  color: color-mix(in srgb, var(--ink) 64%, var(--muted));
  font: 650 clamp(.88rem, 1.3vw, 1.08rem) Sora, sans-serif;
  letter-spacing: -.045em;
  white-space: nowrap;
  transition: color .22s ease;
}

.disclosure-set span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(clamp(38px, 4.4vw, 70px) / -2);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--green) 48%, transparent);
  transform: translate(50%, -50%);
}

.disclosure-set span:hover { color: var(--green); }
.disclosure-set span:nth-child(5) { font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

@keyframes disclosure-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (max-width: 760px) {
  .disclosure-inner { min-height: 142px; grid-template-columns: 1fr; gap: 17px; padding-block: 23px; }
  .disclosure-label { padding: 0 0 15px; border-right: 0; border-bottom: 1px solid var(--line); text-align: center; }
  .disclosure-marquee { width: calc(100% + 28px); margin-left: -14px; }
}

@media (prefers-reduced-motion: reduce) {
  .disclosure-marquee { overflow-x: auto; -webkit-mask-image: none; mask-image: none; scrollbar-width: none; }
  .disclosure-marquee::-webkit-scrollbar { display: none; }
  .disclosure-track { animation: none; }
  .disclosure-set[aria-hidden="true"] { display: none; }
}

/* Compact careers carousel */
.job-browser { position: relative; }
.job-browser-bar { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 20px; }
.job-browser-bar > span { color: var(--muted); font: 600 .62rem "JetBrains Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
.job-browser-actions { display: flex; align-items: center; gap: 8px; }
.job-browser-actions > a { display: inline-flex; align-items: center; gap: 8px; margin-left: 8px; color: var(--green); font-size: .75rem; font-weight: 700; }
.job-browser-actions > a span { transition: transform .2s ease; }
.job-browser-actions > a:hover span { transform: translate(3px,-3px); }

.job-scroll {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--ink) 28%, var(--line));
  border-radius: 50%;
  color: var(--ink);
  background: color-mix(in srgb, var(--glass-strong) 68%, transparent);
  box-shadow: inset 0 1px 0 var(--material-stroke);
  cursor: pointer;
  transition: color .22s ease, border-color .22s ease, background-color .22s ease;
}
.job-scroll:hover { color: var(--green); border-color: var(--green); background-color: var(--glass-strong); }
.job-scroll:disabled { color: var(--muted); border-color: var(--line); opacity: .38; cursor: default; }
.job-scroll:disabled:hover { color: var(--muted); border-color: var(--line); background-color: color-mix(in srgb, var(--glass-strong) 68%, transparent); }

.job-carousel {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(320px, calc((100% - 40px) / 3));
  gap: 20px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  padding: 4px 3px 18px;
  scroll-behavior: smooth;
  scroll-snap-type: inline mandatory;
  scrollbar-color: color-mix(in srgb, var(--green) 35%, var(--line)) transparent;
  scrollbar-width: thin;
}
.job-carousel:not(:has(.job-card:nth-child(3))) {
  grid-auto-flow: initial;
  grid-auto-columns: auto;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.job-carousel:not(:has(.job-card:nth-child(2))) {
  grid-template-columns: minmax(320px, 560px);
  justify-content: center;
}
.job-carousel > .job-card:nth-child(n+4) { display: none; }
.job-carousel::-webkit-scrollbar { height: 5px; }
.job-carousel::-webkit-scrollbar-track { background: transparent; }
.job-carousel::-webkit-scrollbar-thumb { border-radius: 99px; background: color-mix(in srgb, var(--green) 35%, var(--line)); }
.job-scroll[hidden] { display: none; }

.job-card {
  position: relative;
  min-height: 355px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 26px;
  border: 1px solid color-mix(in srgb, var(--line) 76%, var(--glass-edge));
  border-radius: 27px;
  background:
    linear-gradient(145deg, var(--material-sheen), transparent 40%),
    color-mix(in srgb, var(--glass) 76%, transparent);
  box-shadow: inset 0 1px 0 var(--material-stroke), 0 14px 35px rgba(5,48,25,.07);
  scroll-snap-align: start;
  -webkit-backdrop-filter: blur(15px) saturate(138%);
  backdrop-filter: blur(15px) saturate(138%);
  transition: border-color .28s ease, box-shadow .28s ease, transform .28s var(--spring);
}
.job-card::after { content:""; position:absolute; width:180px; height:180px; top:-120px; right:-80px; border:1px solid rgba(11,191,105,.12); border-radius:50%; box-shadow:0 0 0 34px rgba(11,191,105,.025); }
.job-card:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--green) 35%, var(--line)); box-shadow: inset 0 1px 0 var(--material-stroke), 0 22px 46px rgba(5,48,25,.11); }
.job-card-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.job-card-top > span,
.job-card-team { color: var(--green); font: 600 .58rem "JetBrains Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
.job-card-top b { padding: 6px 9px; border: 1px solid color-mix(in srgb, var(--green) 24%, var(--line)); border-radius:999px; color:var(--green); background:color-mix(in srgb,var(--green-pale) 62%,transparent); font:600 .52rem "JetBrains Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }
.job-card-team { margin: 34px 0 8px; }
.job-card h3 { margin: 0; font: 600 clamp(1.35rem, 2vw, 1.75rem)/1.14 Sora, sans-serif; letter-spacing: -.05em; }
.job-card h3 small { display: inline-block; color: var(--muted); font: inherit; white-space: nowrap; }
.job-card > p:not(.job-card-team) { margin: 16px 0 0; color: var(--muted); font-size: .78rem; line-height: 1.6; }
.job-card-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 20px; }
.job-card-tags span { padding: 5px 8px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); font-size: .6rem; font-weight: 650; }
.job-card-link { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 22px; border-top: 1px solid var(--line); color: var(--ink); font-size: .75rem; font-weight: 750; }
.job-card-link span { color: var(--green); transition: transform .2s ease; }
.job-card-link:hover { color: var(--green); }
.job-card-link:hover span { transform: translateX(5px); }

[data-theme="dark"] .job-card { box-shadow: inset 0 1px 0 var(--material-stroke), 0 16px 40px rgba(0,0,0,.18); }

/* Scalable jobs directory */
.jobs-page main { padding-top: 0; }
.jobs-hero { position: relative; overflow: hidden; padding: 178px 0 102px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 78% 36%, rgba(11,191,105,.12), transparent 25rem); }
.jobs-hero::after { content:"02"; position:absolute; right:5%; bottom:-46px; color:rgba(7,140,82,.055); font:700 clamp(9rem,20vw,19rem)/1 Sora,sans-serif; letter-spacing:-.1em; pointer-events:none; }
.jobs-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr); align-items:end; gap:80px; }
.jobs-back { display:inline-flex; align-items:center; gap:9px; margin-bottom:30px; color:var(--muted); font-size:.72rem; font-weight:700; }
.jobs-back:hover { color:var(--green); }
.jobs-hero h1 { max-width:780px; font-size:clamp(3.3rem,6.3vw,6.1rem); }
.jobs-hero h1 span { color:var(--green); }
.jobs-hero-copy { padding-bottom:8px; }
.jobs-hero-copy > p { max-width:480px; margin:0; color:var(--muted); font-size:.92rem; line-height:1.75; }
.jobs-count { display:flex; align-items:end; gap:14px; margin-top:30px; padding-top:24px; border-top:1px solid var(--line); }
.jobs-count strong { color:var(--green); font:600 3.4rem/1 Sora,sans-serif; letter-spacing:-.08em; }
.jobs-count span { max-width:100px; color:var(--muted); font-size:.68rem; line-height:1.35; }

.jobs-directory { padding: 104px 0 118px; }
.jobs-directory-grid { display:grid; grid-template-columns:260px minmax(0,1fr); align-items:start; gap:clamp(50px,7vw,105px); }
.jobs-directory-aside { position:sticky; top:120px; padding-top:18px; border-top:2px solid var(--green); }
.jobs-directory-aside > span { color:var(--green); font:600 .6rem "JetBrains Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }
.jobs-directory-aside h2 { margin:16px 0 10px; font:600 1.65rem/1.15 Sora,sans-serif; letter-spacing:-.05em; }
.jobs-directory-aside p { margin:0; color:var(--muted); font-size:.76rem; line-height:1.65; }
.jobs-directory-aside a { display:inline-flex; gap:8px; margin-top:24px; color:var(--green); font-size:.72rem; font-weight:750; }
.jobs-list { border-top:1px solid var(--line); }

.job-listing { border-bottom:1px solid var(--line); background:transparent; transition:background-color .25s ease, box-shadow .25s ease; }
.job-listing[open] { margin-inline:-22px; padding-inline:22px; border-radius:24px; background:color-mix(in srgb,var(--glass) 62%,transparent); box-shadow:inset 0 1px 0 var(--material-stroke),0 18px 45px rgba(5,48,25,.07); }
.job-listing summary { display:grid; grid-template-columns:54px minmax(0,1fr) auto 42px; align-items:center; gap:24px; min-height:142px; padding:24px 0; cursor:pointer; list-style:none; }
.job-listing summary::-webkit-details-marker { display:none; }
.listing-index { color:var(--green); font:600 .64rem "JetBrains Mono",monospace; }
.listing-title > span { color:var(--green); font:600 .56rem "JetBrains Mono",monospace; letter-spacing:.09em; text-transform:uppercase; }
.listing-title h2 { margin:7px 0 0; font:600 clamp(1.35rem,2.3vw,2rem)/1.12 Sora,sans-serif; letter-spacing:-.05em; }
.listing-title h2 small { display:inline-block; color:var(--muted); font:inherit; white-space:nowrap; }
.listing-meta { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:6px; max-width:230px; }
.listing-meta span,
.listing-facts span,
.listing-offer span { padding:6px 9px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:.6rem; font-weight:650; white-space:nowrap; }
.listing-toggle { position:relative; width:38px; height:38px; border:1px solid color-mix(in srgb,var(--ink) 25%,var(--line)); border-radius:50%; }
.listing-toggle::before,
.listing-toggle::after { content:""; position:absolute; top:50%; left:50%; width:12px; height:1px; border-radius:99px; background:currentColor; transform:translate(-50%,-50%); transition:transform .24s ease,background-color .24s ease; }
.listing-toggle::after { transform:translate(-50%,-50%) rotate(90deg); }
.job-listing[open] .listing-toggle { color:var(--green); border-color:var(--green); }
.job-listing[open] .listing-toggle::after { transform:translate(-50%,-50%) rotate(0); }

.job-listing-body { padding:0 0 38px 78px; }
.listing-intro { max-width:760px; margin:0; color:var(--ink); font-size:.92rem; line-height:1.75; }
.listing-facts,
.listing-offer { display:flex; flex-wrap:wrap; gap:7px; margin-top:22px; }
.listing-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(38px,6vw,80px); margin-top:32px; padding-top:30px; border-top:1px solid var(--line); }
.listing-columns .job-panel h3 { margin:0 0 17px; font:650 .88rem Sora,sans-serif; }
.listing-offer { padding-top:25px; border-top:1px solid var(--line); }
.listing-apply { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:30px; padding-top:28px; border-top:1px solid var(--line); }
.listing-apply p { margin:0; color:var(--muted); font-size:.75rem; }
.listing-apply .button { flex:0 0 auto; }

@media (max-width: 920px) {
  .job-carousel { grid-auto-columns:minmax(300px,calc((100% - 20px) / 2)); }
  .jobs-hero-grid { grid-template-columns:1fr; gap:42px; }
  .jobs-hero-copy { display:grid; grid-template-columns:1fr auto; align-items:end; gap:30px; }
  .jobs-count { min-width:150px; margin-top:0; }
  .jobs-directory-grid { grid-template-columns:1fr; }
  .jobs-directory-aside { position:static; display:grid; grid-template-columns:1fr 1.4fr; gap:12px 30px; }
  .jobs-directory-aside > span,
  .jobs-directory-aside h2 { grid-column:1; }
  .jobs-directory-aside p { grid-column:2; grid-row:1 / span 2; }
}

@media (max-width: 680px) {
  .job-browser-bar { align-items:flex-end; }
  .job-browser-actions > a { margin-left:2px; font-size:.68rem; }
  .job-carousel { width:calc(100% + 14px); grid-auto-columns:minmax(285px,86vw); margin-right:-14px; }
  .job-carousel:not(:has(.job-card:nth-child(3))),
  .job-carousel:not(:has(.job-card:nth-child(2))) {
    grid-auto-flow: column;
    grid-auto-columns: minmax(285px,86vw);
    grid-template-columns: none;
    justify-content: start;
  }
  .job-card { min-height:340px; padding:23px; }
  .jobs-hero { padding:132px 0 76px; }
  .jobs-hero h1 { font-size:clamp(2.8rem,14vw,4.2rem); }
  .jobs-hero-copy { display:block; }
  .jobs-count { margin-top:25px; }
  .jobs-directory { padding:76px 0 88px; }
  .jobs-directory-aside { display:block; }
  .jobs-directory-aside p { margin-top:10px; }
  .job-listing[open] { margin-inline:-8px; padding-inline:8px; }
  .job-listing summary { grid-template-columns:38px minmax(0,1fr) 38px; gap:12px; min-height:128px; }
  .listing-meta { grid-column:2 / -1; justify-content:flex-start; max-width:none; }
  .job-listing-body { padding-left:50px; }
  .listing-columns { grid-template-columns:1fr; gap:30px; }
  .listing-apply { align-items:flex-start; flex-direction:column; }
  .listing-apply .button { width:100%; }
}

@media (prefers-reduced-motion: reduce) {
  .job-carousel { scroll-behavior:auto; }
}

/* Final depth, rhythm and contact-flow refinements */
:root {
  --shadow: 0 9px 26px rgba(7, 38, 21, .065);
  --glass-shadow: 0 13px 32px rgba(7, 38, 21, .075);
  --glass-shadow-low: 0 7px 20px rgba(7, 38, 21, .06);
  --lift-shadow: 0 12px 28px rgba(7, 38, 21, .095);
}

[data-theme="dark"] {
  --shadow: 0 10px 28px rgba(0, 0, 0, .2);
  --glass-shadow: 0 14px 34px rgba(0, 0, 0, .22);
  --glass-shadow-low: 0 7px 20px rgba(0, 0, 0, .18);
  --lift-shadow: 0 13px 30px rgba(0, 0, 0, .24);
}

.eyebrow::before,
.eyebrow::after { content: none; }

.nav-links { box-shadow: inset 0 1px 0 var(--material-stroke), 0 5px 16px rgba(5, 32, 18, .045); }
.card,
.price-card,
.role,
.quote,
.proof-panel,
.table-wrap,
.dark-band,
.cta-shell,
.job-posting,
.job-card,
.job-listing[open] { box-shadow: inset 0 1px 0 var(--material-stroke), 0 6px 18px rgba(5, 48, 25, .055); }

[data-theme="dark"] .card,
[data-theme="dark"] .price-card,
[data-theme="dark"] .role,
[data-theme="dark"] .quote,
[data-theme="dark"] .proof-panel,
[data-theme="dark"] .table-wrap,
[data-theme="dark"] .dark-band,
[data-theme="dark"] .cta-shell,
[data-theme="dark"] .job-posting,
[data-theme="dark"] .job-card,
[data-theme="dark"] .job-listing[open] { box-shadow: inset 0 1px 0 var(--material-stroke), 0 7px 20px rgba(0, 0, 0, .16); }

.card:hover,
.price-card:hover,
.role:hover,
.job-card:hover { transform: translateY(-3px); box-shadow: inset 0 1px 0 var(--material-stroke), var(--lift-shadow); }
.price-card.featured { box-shadow: inset 0 1px 0 var(--material-stroke), 0 7px 20px rgba(7, 140, 82, .10); }
.button:hover { transform: translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.32), 0 9px 22px rgba(7,140,82,.17); }
.cta .button { box-shadow: 0 5px 14px rgba(6,23,13,.12); }
.page-hero .visual { box-shadow: 0 7px 22px rgba(5,48,25,.055); }

.home-section { padding: 92px 0; }
.section { padding: 88px 0; }
.section-head { margin-bottom: 40px; }
.page-hero { min-height: 700px; padding: 148px 0 78px; }
.cta { padding-bottom: 88px; }
.cta-shell { padding: 54px 58px; }
.footer { padding-top: 62px; }
.footer-grid { padding-bottom: 50px; }
.home-page .trust-inner { min-height: 100px; }
.jobs-hero { padding: 150px 0 82px; }
.jobs-directory { padding: 84px 0 94px; }

/* Compact pricing cards with consistent content rhythm */
.price-grid { align-items: stretch; gap: 20px; }
.price-card {
  min-height: 0;
  height: 100%;
  overflow: hidden;
  padding: 28px;
}
.price-card h3 { margin: 21px 0 9px; }
.price-card > p { min-height: 2.8em; line-height: 1.6; }
.price-card ul {
  gap: 14px;
  margin: 22px 0 0;
  padding: 22px 0 0;
}
.price-card li { align-items: flex-start; gap: 11px; line-height: 1.45; }
.price-card li::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  margin-top: .38em;
  border: 2px solid var(--green);
  border-radius: 50%;
}
.price-card .text-link {
  margin-top: 28px;
  padding-top: 19px;
  border-top: 1px solid var(--line);
}
.price-card.featured::before { top: 16px; }

/* Book a demo page */
.demo-page main { padding-top: 0; }
.demo-intro { position: relative; overflow: hidden; padding: 168px 0 70px; border-bottom: 1px solid var(--line); }
.demo-intro::after { content: ""; position: absolute; width: 520px; height: 520px; top: 38px; right: -150px; border: 1px solid rgba(11,191,105,.13); border-radius: 50%; box-shadow: 0 0 0 70px rgba(11,191,105,.025), 0 0 0 150px rgba(11,191,105,.018); pointer-events: none; }
.demo-intro-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1.15fr) minmax(320px,.65fr); align-items: end; gap: clamp(45px,7vw,110px); }
.demo-intro h1 { max-width: 850px; font-size: clamp(3.25rem,6vw,6rem); }
.demo-intro h1 span { color: var(--green); }
.demo-intro-copy > p { max-width: 470px; margin: 0; color: var(--muted); font-size: .92rem; line-height: 1.75; }
.demo-intro-copy ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 26px 0 0; padding: 0; list-style: none; }
.demo-intro-copy li { padding: 7px 11px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: color-mix(in srgb,var(--surface) 72%,transparent); font-size: .66rem; font-weight: 650; }
.demo-form-section { padding: 76px 0 94px; }
.demo-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(280px,.55fr); gap: clamp(55px,8vw,125px); align-items: start; }
.demo-form { padding-top: 24px; border-top: 2px solid var(--green); }
.demo-form-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 25px; margin-bottom: 34px; }
.demo-form-heading > span { font: 600 1.3rem Sora,sans-serif; letter-spacing: -.035em; }
.demo-form-heading p { margin: 0; color: var(--muted); font-size: .68rem; }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 20px; }
.form-field { position: relative; display: grid; gap: 9px; }
.form-field-wide { grid-column: 1 / -1; }
.form-field > span { color: var(--ink-2); font-size: .68rem; font-weight: 700; }
.form-field input,
.form-field select,
.form-field textarea { width: 100%; border: 1px solid var(--line); border-radius: 15px; outline: 0; color: var(--ink); background: color-mix(in srgb,var(--surface) 78%,transparent); font: 500 .82rem Inter,sans-serif; transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease; }
.form-field input,
.form-field select { min-height: 52px; padding: 0 16px; }
.form-field textarea { min-height: 150px; padding: 15px 46px 15px 16px; resize: vertical; line-height: 1.6; }
.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus { border-color: var(--green); background: var(--surface); box-shadow: 0 0 0 3px rgba(11,191,105,.09); }
.form-field input::placeholder,
.form-field textarea::placeholder { color: color-mix(in srgb,var(--muted) 72%,transparent); }
.form-field small { position: absolute; right: 14px; bottom: 12px; color: var(--muted); font-size: .58rem; }
.form-submit-row { display: flex; align-items: center; gap: 22px; margin-top: 30px; }
.form-submit-row p { margin: 0; color: var(--muted); font-size: .7rem; line-height: 1.45; }
.form-submit-row p.is-success { color: var(--green); font-weight: 700; }
.form-submit-row p.is-error { color: #c84444; font-weight: 650; }
.demo-form button:disabled { cursor: wait; opacity: .72; }
.form-honeypot { position: fixed !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.demo-aside { padding-top: 24px; border-top: 1px solid var(--line); }
.demo-aside ol { display: grid; gap: 0; margin: 28px 0 0; padding: 0; list-style: none; counter-reset: demo-step; }
.demo-aside li { position: relative; display: grid; gap: 5px; padding: 0 0 25px 42px; counter-increment: demo-step; }
.demo-aside li:not(:last-child)::after { content: ""; position: absolute; left: 13px; top: 29px; bottom: 3px; width: 1px; background: var(--line); }
.demo-aside li::before { content: counter(demo-step,decimal-leading-zero); position: absolute; left: 0; top: -2px; width: 27px; height: 27px; display: grid; place-items: center; border: 1px solid var(--green); border-radius: 50%; color: var(--green); font: 600 .53rem "JetBrains Mono",monospace; }
.demo-aside li strong { font: 600 .86rem Sora,sans-serif; }
.demo-aside li span { color: var(--muted); font-size: .72rem; line-height: 1.55; }
.demo-aside > p { margin: 15px 0 0; padding-top: 20px; border-top: 1px solid var(--line); color: var(--muted); font-size: .7rem; line-height: 1.6; }
.demo-aside a { color: var(--green); font-weight: 700; }

@media (max-width: 920px) {
  .page-hero { min-height: auto; padding: 132px 0 72px; }
  .section, .home-section { padding: 76px 0; }
  .demo-intro { padding: 138px 0 62px; }
  .demo-intro-grid, .demo-layout { grid-template-columns: 1fr; }
  .demo-intro-grid { gap: 34px; }
  .demo-layout { gap: 54px; }
}

@media (max-width: 680px) {
  .section, .home-section { padding: 64px 0; }
  .section-head { margin-bottom: 32px; }
  .cta { padding-bottom: 68px; }
  .cta-shell { padding: 42px 24px; }
  .demo-intro { padding: 122px 0 52px; }
  .demo-form-section { padding: 60px 0 72px; }
  .form-grid { grid-template-columns: 1fr; gap: 20px; }
  .form-field-wide { grid-column: auto; }
  .demo-form-heading, .form-submit-row { align-items: flex-start; flex-direction: column; }
  .form-submit-row .button { width: 100%; }
  .price-card { padding: 24px; }
  .price-card > p { min-height: 0; }
}

/* Navigation geometry: equal visual weight and a shared baseline */
@media (min-width: 921px) {
  .nav-shell {
    grid-template-columns: minmax(205px,1fr) auto minmax(205px,1fr);
    min-height: 62px;
    padding: 0;
  }
  .nav-shell > .brand { justify-self: start; }
  .nav-links { height: 42px; padding: 4px; }
  .nav-links a,
  .nav-links a:hover,
  .nav-links a[aria-current="page"] { min-height: 32px; display: inline-flex; align-items: center; padding: 6px 10px; font-size: .72rem; }
  .nav-links a.mobile-nav-cta { display: none; }
  .nav-actions { justify-self: end; gap: 8px; }
  .theme-toggle { width: 58px; height: 38px; }
  .theme-toggle::before { width: 26px; height: 26px; top: 5px; left: 5px; }
  [data-theme="dark"] .theme-toggle::before { transform: translateX(20px); }
  .nav-cta { min-height: 38px; height: 38px; display: inline-flex; align-items: center; padding: 0 15px; font-size: .72rem; }
}

/* Trust signals and certifications */
.ict-backing { width: fit-content; display: flex; align-items: center; gap: 10px; margin-top: 22px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.94); }
.ict-backing > span { color: #53615a; font: 650 .54rem "JetBrains Mono",monospace; letter-spacing: .06em; text-transform: uppercase; }
.ict-backing img { width: 104px; height: auto; display: block; }
[data-theme="dark"] .ict-backing { border-color: rgba(255,255,255,.15); background: #f7faf8; }

.credentials-section { overflow:hidden; }
.credentials-heading { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(270px,.55fr); gap:clamp(36px,7vw,110px); align-items:end; }
.credentials-heading .eyebrow { grid-column:1/-1; }
.credentials-heading h2 { max-width:900px; margin-top:4px; font-size:clamp(2.45rem,5vw,4.9rem); }
.credentials-heading > p { max-width:560px; margin:0 0 8px; color:var(--muted); font-size:.9rem; line-height:1.75; }
.credential-ribbon { position:relative; display:grid; grid-template-columns:170px minmax(0,1fr); gap:clamp(24px,4vw,56px); align-items:stretch; margin-top:52px; padding:34px 0 38px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.credential-ribbon::before { content:""; position:absolute; left:150px; right:-18vw; top:50%; height:1px; background:linear-gradient(90deg,rgba(11,191,105,.32),rgba(11,191,105,0)); pointer-events:none; }
.credential-count { position:relative; z-index:1; display:flex; flex-direction:column; justify-content:center; border-right:1px solid var(--line); }
.credential-count strong { color:var(--green); font:600 clamp(3.8rem,6vw,6.6rem)/.82 Sora,sans-serif; letter-spacing:-.1em; }
.credential-count span { margin-top:14px; color:var(--muted); font:650 .56rem/1.6 "JetBrains Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.credential-gallery { position:relative; z-index:1; display:grid; grid-template-columns:repeat(6,minmax(105px,1fr)); gap:clamp(14px,2.5vw,34px); align-items:start; }
.credential-mark { min-width:0; margin:0; text-align:center; }
.credential-mark:nth-child(even) { transform:translateY(18px); }
.credential-halo { position:relative; width:clamp(82px,7.5vw,112px); height:clamp(82px,7.5vw,112px); display:grid; place-items:center; margin:0 auto 18px; }
.credential-halo::before,.credential-halo::after { content:""; position:absolute; border-radius:50%; pointer-events:none; }
.credential-halo::before { inset:-9px; background:radial-gradient(circle,rgba(11,191,105,.12),rgba(11,191,105,0) 70%); }
.credential-halo::after { inset:-2px; border:1px solid rgba(11,191,105,.16); transform:scale(.82); transition:transform .35s ease,border-color .35s ease; }
.credential-mark:hover .credential-halo::after { transform:scale(1); border-color:rgba(11,191,105,.52); }
.credential-mark img { position:relative; z-index:1; width:100%; height:100%; object-fit:contain; transition:transform .35s cubic-bezier(.2,.75,.25,1); }
.credential-mark:hover img { transform:translateY(-6px) scale(1.04); }
.credential-mark figcaption { display:flex; flex-direction:column; gap:4px; }
.credential-mark figcaption strong { font:650 .7rem/1.25 Sora,sans-serif; letter-spacing:-.02em; }
.credential-mark figcaption span { color:var(--muted); font:600 .48rem/1.35 "JetBrains Mono",monospace; letter-spacing:.03em; text-transform:uppercase; }
.recognition-line { display:flex; justify-content:space-between; align-items:center; gap:28px; padding:28px 0 0; }
.recognition-line > div { display:flex; align-items:baseline; gap:18px; }
.recognition-line span { color:var(--green); font:650 .56rem "JetBrains Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.recognition-line strong { font:600 clamp(1.25rem,2.2vw,2rem) Sora,sans-serif; letter-spacing:-.045em; }
.recognition-line b { color:var(--green); font:inherit; }
.recognition-line p { margin:0; color:var(--muted); font-size:.72rem; }
[data-theme="dark"] .credential-mark img[src$=".jpg"] { border-radius:50%; background:#fff; }

.partner-network { padding:34px 0 42px; border-bottom:1px solid var(--line); }
.partner-network-inner { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(0,1fr); gap:40px; align-items:center; }
.partner-network-inner p { max-width:430px; margin:12px 0 0; color:var(--muted); font-size:.78rem; line-height:1.55; }
.partner-company-list { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; }
.partner-company { display:inline-flex; align-items:center; gap:13px; padding:8px 18px 8px 9px; border:1px solid var(--line); border-radius:999px; background:color-mix(in srgb,var(--surface) 82%,transparent); backdrop-filter:blur(14px); }
.partner-company-logo { min-height:58px; padding:8px 18px; background:#fff; box-shadow:inset 0 1px 0 rgba(255,255,255,.75); }
.partner-company-logo img { display:block; width:192px; max-width:min(50vw,192px); height:auto; }
.partner-company-link { position:relative; padding-right:42px; transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease; }
.partner-company-link > i { position:absolute; right:16px; top:50%; color:var(--green); font:.85rem/1 Inter,sans-serif; font-style:normal; transform:translateY(-50%); transition:transform .2s ease; }
.partner-company-link:hover,
.partner-company-link:focus-visible { border-color:rgba(11,191,105,.48); transform:translateY(-2px); box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 8px 18px rgba(5,48,25,.07); }
.partner-company-link:hover > i,
.partner-company-link:focus-visible > i { transform:translate(2px,-62%); }
.partner-company-wordmark { position:relative; min-width:220px; justify-content:flex-start; flex-direction:row; align-items:center; gap:11px; padding:7px 42px 7px 10px; transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease; }
.partner-company-wordmark .partner-company-symbol { width:44px; height:44px; flex:0 0 44px; border-radius:50%; object-fit:contain; }
.partner-company-name { display:flex; min-width:0; flex-direction:column; }
.partner-company-wordmark strong { color:var(--green); font:750 1rem/1 Sora,sans-serif; letter-spacing:-.045em; }
.partner-company-wordmark small { margin-top:4px; color:#6b756f; font:600 .46rem/1 "JetBrains Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.partner-company-wordmark i { position:absolute; right:16px; top:50%; color:var(--green); font:.85rem/1 Inter,sans-serif; font-style:normal; transform:translateY(-50%); transition:transform .2s ease; }
.partner-company-wordmark:hover { border-color:rgba(11,191,105,.48); transform:translateY(-2px); box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 8px 18px rgba(5,48,25,.07); }
.partner-company-wordmark:hover i { transform:translate(2px,-62%); }
[data-theme="dark"] .partner-company-logo { border-color:rgba(255,255,255,.18); background:#fff; }

.ptaas-assessments { display:grid; gap:7px; margin-top:20px; }
.ptaas-assessments span { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:.68rem; line-height:1.4; }
.ptaas-assessments b { min-width:46px; padding:4px 6px; border:1px solid color-mix(in srgb,var(--green) 35%,var(--line)); border-radius:999px; color:var(--green); background:var(--green-pale); font:700 .52rem "JetBrains Mono",monospace; text-align:center; }

/* Oqtrix product page */
.oqtrix-page main { padding-top:0; }
.oqtrix-hero { position:relative; overflow:hidden; padding:170px 0 86px; border-bottom:1px solid var(--line); background:radial-gradient(circle at 78% 42%,rgba(11,191,105,.13),transparent 25rem); }
.oqtrix-hero::before { content:""; position:absolute; inset:0; opacity:.34; background-image:linear-gradient(rgba(11,191,105,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(11,191,105,.055) 1px,transparent 1px); background-size:64px 64px; pointer-events:none; }
.oqtrix-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(430px,.8fr); align-items:center; gap:clamp(50px,8vw,120px); }
.oqtrix-hero h1 { max-width:850px; font-size:clamp(3.5rem,6vw,6.2rem); }
.oqtrix-hero h1 span { color:var(--green); }
.oqtrix-hero .lead { max-width:690px; }
.oqtrix-hero .hero-actions { justify-content:flex-start; }
.oqtrix-hero-art { position:relative; min-height:540px; display:grid; place-items:center; }
.oqtrix-hero-art::before { content:""; position:absolute; width:390px; height:390px; border:1px solid rgba(11,191,105,.19); border-radius:50%; box-shadow:0 0 0 58px rgba(11,191,105,.035),0 0 0 116px rgba(11,191,105,.018); }
.oqtrix-hero-art > img { position:relative; z-index:2; width:min(100%,480px); max-height:460px; object-fit:contain; filter:drop-shadow(0 18px 24px rgba(5,48,25,.08)); }
.oqtrix-scan-ring { position:absolute; z-index:3; width:82px; height:82px; top:30px; left:38px; display:grid; place-items:center; border:1px solid var(--green); border-radius:50%; color:var(--green); background:var(--surface); box-shadow:0 8px 22px rgba(5,48,25,.08); font:700 1.15rem Sora,sans-serif; }
.oqtrix-scan-ring i { position:absolute; inset:-10px; border:1px dashed rgba(11,191,105,.22); border-radius:50%; }
.oqtrix-scan-ring i:nth-of-type(2) { inset:-22px; }
.oqtrix-scan-ring i:nth-of-type(3) { inset:-34px; }
.oqtrix-signal { position:absolute; z-index:4; padding:8px 11px; border:1px solid var(--line); border-radius:999px; color:var(--green); background:var(--glass-strong); box-shadow:0 7px 18px rgba(5,48,25,.07); backdrop-filter:blur(12px); font:650 .58rem "JetBrains Mono",monospace; letter-spacing:.04em; }
.signal-route { top:22%; right:0; }
.signal-proof { right:8%; bottom:11%; }

.oqtrix-demo-section { padding:92px 0; }
.oqtrix-demo { overflow:hidden; border:1px solid var(--line); border-radius:30px; background:var(--surface); box-shadow:inset 0 1px 0 var(--material-stroke),0 10px 28px rgba(5,48,25,.065); }
.oqtrix-demo-top { min-height:54px; display:flex; align-items:center; justify-content:space-between; padding:0 20px; border-bottom:1px solid var(--line); font:650 .6rem "JetBrains Mono",monospace; letter-spacing:.07em; text-transform:uppercase; }
.oqtrix-demo-top > span { display:flex; align-items:center; gap:8px; color:var(--muted); }
.oqtrix-demo-top i { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(11,191,105,.1); }
.oqtrix-demo-top > b { padding:6px 9px; border:1px solid var(--line); border-radius:999px; color:var(--green); font-size:.54rem; }
.oqtrix-target { padding:24px; border-bottom:1px solid var(--line); }
.oqtrix-target > label { display:block; margin-bottom:9px; color:var(--muted); font:650 .57rem "JetBrains Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.oqtrix-target > div { display:flex; align-items:center; border:1px solid var(--line); border-radius:17px; background:var(--paper); }
.oqtrix-target > div:focus-within { border-color:var(--green); box-shadow:0 0 0 3px rgba(11,191,105,.08); }
.oqtrix-target > div > span { padding-left:16px; color:var(--muted); font-size:.78rem; }
.oqtrix-target input { min-width:0; flex:1; height:54px; padding:0 10px 0 2px; border:0; outline:0; color:var(--ink); background:transparent; font:600 .85rem Inter,sans-serif; }
.oqtrix-target .button { min-height:42px; margin-right:6px; padding-inline:18px; }
.oqtrix-target small { display:block; margin-top:8px; color:var(--muted); font-size:.6rem; }
.oqtrix-phases { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid var(--line); }
.oqtrix-phases > div { position:relative; padding:18px 20px; border-right:1px solid var(--line); transition:background-color .25s ease; }
.oqtrix-phases > div:last-child { border-right:0; }
.oqtrix-phases span { color:var(--muted); font:650 .55rem "JetBrains Mono",monospace; }
.oqtrix-phases b { display:block; margin-top:7px; font:650 .88rem Sora,sans-serif; }
.oqtrix-phases small { color:var(--muted); font-size:.61rem; }
.oqtrix-phases .is-active { background:var(--green-pale); }
.oqtrix-phases .is-active::after,.oqtrix-phases .is-complete::after { content:""; position:absolute; right:14px; top:14px; width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(11,191,105,.09); }
.oqtrix-demo-grid { display:grid; grid-template-columns:.85fr 1.15fr; }
.oqtrix-activity,.oqtrix-findings { min-width:0; }
.oqtrix-activity { border-right:1px solid var(--line); }
.oqtrix-activity header,.oqtrix-findings header { min-height:48px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid var(--line); color:var(--muted); font:650 .57rem "JetBrains Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }
.oqtrix-activity header b { max-width:200px; overflow:hidden; color:var(--green); text-overflow:ellipsis; white-space:nowrap; }
.oqtrix-log { min-height:310px; padding:18px; background:color-mix(in srgb,var(--paper) 88%,var(--surface)); }
.oqtrix-log p { display:grid; grid-template-columns:42px 1fr; gap:10px; margin:0; padding:10px 0; border-bottom:1px dashed var(--line); color:var(--muted); font:500 .68rem/1.5 "JetBrains Mono",monospace; }
.oqtrix-log p span { color:var(--green); font-weight:750; }
.oqtrix-findings header b { display:flex; align-items:center; gap:7px; color:var(--green); }
.oqtrix-findings header i { width:7px; height:7px; border-radius:50%; background:var(--green); }
.oqtrix-findings article { display:grid; grid-template-columns:62px minmax(0,1fr) auto; align-items:start; gap:14px; padding:20px 18px; border-bottom:1px solid var(--line); opacity:.38; transform:translateY(5px); transition:opacity .3s ease,transform .3s ease,background-color .3s ease; }
.oqtrix-findings article.is-visible { opacity:1; transform:none; background:color-mix(in srgb,var(--green-pale) 26%,transparent); }
.severity { padding:5px 7px; border-radius:999px; color:#fff; font:700 .49rem "JetBrains Mono",monospace; text-align:center; text-transform:uppercase; }
.severity.critical { background:#d84c58; }
.severity.high { background:#d98a35; }
.oqtrix-findings article strong { display:block; font:650 .78rem/1.35 Sora,sans-serif; }
.oqtrix-findings article p { margin:6px 0 0; color:var(--muted); font-size:.65rem; line-height:1.5; }
.oqtrix-findings article > b { color:var(--green); font:650 1.25rem Sora,sans-serif; }
.oqtrix-summary { display:grid; grid-template-columns:repeat(4,110px) 1fr; align-items:center; gap:0; border-top:1px solid var(--line); }
.oqtrix-summary > div { padding:16px 18px; border-right:1px solid var(--line); }
.oqtrix-summary span { display:block; color:var(--muted); font-size:.55rem; text-transform:uppercase; }
.oqtrix-summary strong { display:block; margin-top:5px; color:var(--green); font:650 1.35rem Sora,sans-serif; }
.oqtrix-summary > p { margin:0; padding:16px 20px; color:var(--muted); font-size:.68rem; text-align:right; }
.oqtrix-demo.is-running .oqtrix-demo-top > b { animation:pulse-soft 1s ease-in-out infinite; }
@keyframes pulse-soft { 50% { opacity:.55; box-shadow:0 0 0 5px rgba(11,191,105,.09); } }

@media (max-width: 920px) {
  .credentials-heading,.oqtrix-hero-grid { grid-template-columns:1fr; }
  .credentials-heading .eyebrow { grid-column:auto; }
  .credentials-heading > p { max-width:680px; }
  .credential-ribbon { grid-template-columns:130px minmax(0,1fr); }
  .credential-gallery { grid-template-columns:repeat(3,minmax(105px,1fr)); row-gap:38px; }
  .partner-network-inner { grid-template-columns:1fr; gap:22px; }
  .partner-company-list { justify-content:flex-start; }
  .oqtrix-hero { padding:140px 0 70px; }
  .oqtrix-hero-art { width:min(620px,100%); min-height:460px; margin-inline:auto; }
  .oqtrix-demo-grid { grid-template-columns:1fr; }
  .oqtrix-activity { border-right:0; border-bottom:1px solid var(--line); }
  .oqtrix-summary { grid-template-columns:repeat(4,1fr); }
  .oqtrix-summary > p { grid-column:1 / -1; border-top:1px solid var(--line); text-align:left; }
}

@media (max-width: 680px) {
  .credential-ribbon { display:block; margin-top:36px; padding:24px 0 28px; }
  .credential-ribbon::before { display:none; }
  .credential-count { flex-direction:row; justify-content:flex-start; align-items:center; gap:18px; padding-bottom:24px; border-right:0; border-bottom:1px solid var(--line); }
  .credential-count strong { font-size:3.8rem; }
  .credential-count span { margin-top:0; }
  .credential-gallery { display:flex; gap:24px; margin-right:calc(var(--page-pad) * -1); padding:28px var(--page-pad) 22px 0; overflow-x:auto; scroll-snap-type:x proximity; scrollbar-width:none; }
  .credential-gallery::-webkit-scrollbar { display:none; }
  .credential-mark { flex:0 0 112px; scroll-snap-align:start; }
  .credential-mark:nth-child(even) { transform:none; }
  .recognition-line,.recognition-line > div { align-items:flex-start; flex-direction:column; }
  .recognition-line { gap:12px; padding-top:24px; }
  .recognition-line > div { gap:8px; }
  .partner-network { padding:28px 0 34px; }
  .partner-network-inner { gap:18px; }
  .ict-backing { margin-top:18px; }
  .oqtrix-hero { padding:124px 0 58px; }
  .oqtrix-hero-art { min-height:360px; }
  .oqtrix-hero-art > img { max-height:330px; }
  .oqtrix-scan-ring { width:66px; height:66px; top:25px; left:24px; }
  .signal-route { top:18%; }
  .oqtrix-demo-section { padding:68px 0; }
  .oqtrix-demo { border-radius:23px; }
  .oqtrix-target { padding:18px; }
  .oqtrix-target > div { align-items:stretch; flex-wrap:wrap; padding-top:3px; }
  .oqtrix-target input { width:calc(100% - 70px); }
  .oqtrix-target .button { width:calc(100% - 12px); margin:0 6px 6px; }
  .oqtrix-phases { grid-template-columns:repeat(2,1fr); }
  .oqtrix-phases > div:nth-child(2) { border-right:0; }
  .oqtrix-phases > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .oqtrix-findings article { grid-template-columns:58px minmax(0,1fr); }
  .oqtrix-findings article > b { grid-column:2; }
  .oqtrix-summary { grid-template-columns:repeat(2,1fr); }
  .oqtrix-summary > div:nth-child(2) { border-right:0; }
  .oqtrix-summary > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
}

/* Dedicated solution product pages */
@media (min-width: 921px) {
  .nav-links { flex-wrap:nowrap; white-space:nowrap; }
  .nav-links a { flex:0 0 auto; white-space:nowrap; }
  .nav-cta { flex:0 0 auto; white-space:nowrap; }
}

.solution-product-page { --max:1440px; }
.solution-product-page main { padding-top:0; }
.product-hero {
  position:relative;
  min-height:780px;
  display:flex;
  align-items:center;
  overflow:hidden;
  padding:132px 0 64px;
  border-bottom:1px solid var(--line);
  background-color:color-mix(in srgb,var(--paper) 90%,var(--green-pale));
}
.product-hero::before {
  content:"";
  position:absolute;
  inset:0;
  opacity:.86;
  background-image:
    linear-gradient(rgba(7,140,82,.075) 1px,transparent 1px),
    linear-gradient(90deg,rgba(7,140,82,.075) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(to bottom,#000 0 74%,transparent 100%);
  pointer-events:none;
}
.product-hero::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 86% 18%,rgba(124,242,173,.17),transparent 24rem),
    radial-gradient(circle at 8% 78%,rgba(11,191,105,.10),transparent 28rem);
  pointer-events:none;
}
.product-hero-grid {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(560px,.96fr) minmax(600px,1.04fr);
  align-items:center;
  gap:clamp(26px,3.2vw,54px);
}
.product-hero h1 { max-width:760px; font-size:clamp(3.4rem,5.15vw,5.35rem); }
.product-hero h1 span { color:var(--green); }
.product-hero .lead { max-width:690px; }
.product-hero .hero-actions { justify-content:flex-start; }
.product-hero-line {
  display:flex;
  align-items:flex-start;
  gap:11px;
  max-width:650px;
  margin:22px 0 -9px;
  color:var(--ink);
  font:650 clamp(.86rem,1.15vw,1rem)/1.55 Sora,sans-serif;
}
.product-hero-line::before {
  content:"";
  width:24px;
  height:2px;
  flex:0 0 auto;
  margin-top:.72em;
  border-radius:999px;
  background:var(--green);
}
.oqtrix-hero .product-hero-line { max-width:650px; }

/* Embedded product engines */
.product-visual-shell {
  position:relative;
  min-width:0;
  width:100%;
  height:clamp(520px,39vw,650px);
  padding:0;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  isolation:isolate;
}
.product-visual-shell::before {
  content:"";
  position:absolute;
  inset:2% -3% 2%;
  z-index:-1;
  border-radius:50%;
  opacity:.2;
  background:radial-gradient(circle,var(--green),transparent 64%);
  filter:blur(64px);
  pointer-events:none;
}
[data-theme="dark"] .product-visual-shell::before { opacity:.3; }
[data-theme="dark"] .adversyn-product-visual::before {
  background:radial-gradient(circle,rgba(255,77,109,.56),rgba(59,224,206,.18) 34%,transparent 68%);
}
[data-theme="dark"] .tracefold-product-visual::before {
  background:radial-gradient(circle,rgba(140,147,255,.52),transparent 66%);
}
.product-visual-label {
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:0 17px;
  color:var(--muted);
  font:650 .53rem "JetBrains Mono",monospace;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.product-visual-label span {
  display:flex;
  align-items:center;
  min-width:0;
  gap:8px;
}
.product-visual-label i {
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 5px rgba(11,191,105,.1);
  animation:pulse-soft 2.4s ease-in-out infinite;
}
.product-visual-label b {
  color:var(--ink);
  font:inherit;
  white-space:nowrap;
}
.product-visual-shell iframe {
  display:block;
  width:100%;
  height:100%;
  border:0;
  border-radius:0;
  background:transparent;
}
.oqtrix-hero-grid,
.adversyn-hero .product-hero-grid {
  grid-template-columns:minmax(560px,.96fr) minmax(600px,1.04fr);
  gap:clamp(26px,3.2vw,54px);
}
.tracefold-hero-grid {
  grid-template-columns:minmax(560px,.96fr) minmax(600px,1.04fr);
  gap:clamp(26px,3.2vw,54px);
}
.tracefold-product-visual { order:2; }
.tracefold-hero-copy { order:1; }

.product-demo-section { padding:72px 0; }
.product-demo { overflow:hidden; border:1px solid var(--line); border-radius:30px; background:var(--surface); box-shadow:inset 0 1px 0 var(--material-stroke),0 10px 28px rgba(5,48,25,.065); }
.product-demo-top { min-height:54px; display:flex; align-items:center; justify-content:space-between; padding:0 20px; border-bottom:1px solid var(--line); font:650 .6rem "JetBrains Mono",monospace; letter-spacing:.07em; text-transform:uppercase; }
.product-demo-top > span { display:flex; align-items:center; gap:8px; color:var(--muted); }
.product-demo-top i { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(11,191,105,.1); }
.product-demo-top > b { padding:6px 9px; border:1px solid var(--line); border-radius:999px; color:var(--green); font-size:.54rem; }
.product-demo-summary { display:grid; grid-template-columns:repeat(3,130px) 1fr; align-items:center; border-top:1px solid var(--line); }
.product-demo-summary > div { padding:16px 18px; border-right:1px solid var(--line); }
.product-demo-summary span { display:block; color:var(--muted); font-size:.55rem; text-transform:uppercase; }
.product-demo-summary strong { display:block; margin-top:5px; color:var(--green); font:650 1.35rem Sora,sans-serif; }
.product-demo-summary > p { margin:0; padding:16px 20px; color:var(--muted); font-size:.68rem; text-align:right; }
.product-demo.is-running .product-demo-top > b { animation:pulse-soft 1s ease-in-out infinite; }

/* Adversyn */
.adversyn-hero { background:radial-gradient(circle at 77% 43%,rgba(11,191,105,.15),transparent 28rem); }
.adversyn-hero-art { position:relative; min-height:570px; display:grid; place-items:center; isolation:isolate; }
.adversyn-hero-art::before,.adversyn-hero-art::after { content:""; position:absolute; border-radius:50%; pointer-events:none; }
.adversyn-hero-art::before { width:465px; height:465px; border:1px solid rgba(11,191,105,.18); background:radial-gradient(circle,rgba(11,191,105,.08),transparent 63%); box-shadow:0 0 0 58px rgba(11,191,105,.025); }
.adversyn-hero-art::after { width:340px; height:340px; border:1px dashed rgba(11,191,105,.24); animation:slow-spin 34s linear infinite; }
.adversyn-hero-art > img { position:relative; z-index:2; width:min(100%,470px); max-height:440px; object-fit:contain; filter:drop-shadow(0 18px 24px rgba(5,48,25,.08)); }
.adversyn-core { position:absolute; z-index:4; top:14px; right:16%; width:86px; height:86px; display:grid; place-items:center; border:1px solid var(--green); border-radius:50%; color:var(--green); background:var(--surface); font:700 1.12rem Sora,sans-serif; box-shadow:0 9px 24px rgba(5,48,25,.09); }
.adversyn-core i { position:absolute; inset:-13px; border:1px dashed rgba(11,191,105,.24); border-radius:50%; }
.adversyn-core i:nth-of-type(2) { inset:-26px; }
.adversyn-core i:nth-of-type(3) { inset:-39px; }
.adversyn-vector { position:absolute; z-index:4; padding:8px 12px; border:1px solid var(--line); border-radius:999px; color:var(--green); background:var(--glass-strong); box-shadow:0 7px 18px rgba(5,48,25,.065); backdrop-filter:blur(12px); font:650 .56rem "JetBrains Mono",monospace; }
.vector-one { top:24%; left:-2%; }
.vector-two { right:-3%; bottom:29%; }
.vector-three { left:8%; bottom:8%; }
.adversyn-controls { display:grid; grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto; gap:14px; align-items:end; padding:22px; border-bottom:1px solid var(--line); }
.adversyn-controls label,.tracefold-controls label,.ptaas-plan-controls label { display:grid; gap:8px; }
.adversyn-controls label > span,.tracefold-controls label > span,.ptaas-plan-controls label > span { color:var(--muted); font:650 .56rem "JetBrains Mono",monospace; letter-spacing:.06em; text-transform:uppercase; }
.adversyn-controls select,.tracefold-controls select,.ptaas-plan-controls select { width:100%; height:50px; padding:0 15px; border:1px solid var(--line); border-radius:15px; outline:0; color:var(--ink); background:var(--paper); font:600 .72rem Inter,sans-serif; }
.adversyn-controls select:focus,.tracefold-controls select:focus,.ptaas-plan-controls select:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(11,191,105,.08); }
.adversyn-controls .button { height:50px; }
.adversyn-lab-grid { display:grid; grid-template-columns:.86fr 1.14fr; }
.adversyn-radar { border-right:1px solid var(--line); }
.adversyn-radar header,.adversyn-scenarios header { min-height:48px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid var(--line); color:var(--muted); font:650 .57rem "JetBrains Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }
.adversyn-radar header b { color:var(--green); }
.radar-stage { position:relative; min-height:390px; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle,rgba(11,191,105,.11),transparent 40%); }
.radar-stage::before { content:""; position:absolute; width:1px; height:100%; background:var(--line); }
.radar-stage::after { content:""; position:absolute; width:100%; height:1px; background:var(--line); }
.radar-orbit { position:absolute; border:1px solid rgba(11,191,105,.24); border-radius:50%; }
.radar-orbit i { position:absolute; width:9px; height:9px; top:50%; left:-5px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(11,191,105,.1); }
.orbit-a { width:210px; height:210px; }
.orbit-b { width:330px; height:330px; border-style:dashed; transform:rotate(32deg); }
.adversyn-demo.is-running .orbit-a { animation:slow-spin 3.5s linear infinite; }
.adversyn-demo.is-running .orbit-b { animation:slow-spin 5s linear infinite reverse; }
.radar-core { position:relative; z-index:2; width:108px; height:108px; display:grid; place-content:center; border:1px solid var(--green); border-radius:50%; background:var(--surface); text-align:center; box-shadow:0 12px 34px rgba(5,48,25,.11); }
.radar-core span { color:var(--green); font:650 2.1rem/1 Sora,sans-serif; }
.radar-core small { margin-top:6px; color:var(--muted); font:.48rem "JetBrains Mono",monospace; text-transform:uppercase; }
.radar-node { position:absolute; z-index:3; padding:7px 10px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:var(--surface); font:650 .52rem "JetBrains Mono",monospace; transition:color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease; }
.radar-node.is-hit { color:var(--green); border-color:rgba(11,191,105,.42); transform:translateY(-3px); box-shadow:0 8px 20px rgba(5,48,25,.09); }
.node-a { top:15%; left:16%; }.node-b { top:17%; right:12%; }.node-c { right:8%; bottom:15%; }.node-d { left:12%; bottom:16%; }
.adversyn-scenarios header b { display:flex; align-items:center; gap:7px; color:var(--green); }
.adversyn-scenarios article { display:grid; grid-template-columns:54px minmax(0,1fr) auto; gap:14px; align-items:center; min-height:86px; padding:16px 18px; border-bottom:1px solid var(--line); transition:background-color .25s ease; }
.adversyn-scenarios article > span { color:var(--green); font:700 .5rem "JetBrains Mono",monospace; }
.adversyn-scenarios article strong { display:block; font:650 .74rem Sora,sans-serif; }
.adversyn-scenarios article p { margin:5px 0 0; color:var(--muted); font-size:.62rem; line-height:1.45; }
.adversyn-scenarios article > b { min-width:56px; color:var(--muted); font:650 .5rem "JetBrains Mono",monospace; text-transform:uppercase; }
.adversyn-scenarios article.is-running,.adversyn-scenarios article.is-complete { background:color-mix(in srgb,var(--green-pale) 28%,transparent); }
.adversyn-scenarios article.is-running > b,.adversyn-scenarios article.is-complete > b { color:var(--green); }

/* Tracefold */
.tracefold-hero { background-image:linear-gradient(90deg,rgba(11,191,105,.06),transparent 48%),radial-gradient(circle at 72% 48%,rgba(140,147,255,.12),transparent 28rem); }
.tracefold-hero-grid { grid-template-columns:minmax(560px,.96fr) minmax(600px,1.04fr); }
.tracefold-hero-copy { order:1; padding-left:0; }
.tracefold-hero-art { position:relative; order:1; min-height:590px; isolation:isolate; }
.tracefold-hero-art::before { content:""; position:absolute; inset:7% 3% 3%; border:1px solid rgba(11,191,105,.16); border-radius:38% 62% 54% 46% / 46% 42% 58% 54%; background:rgba(11,191,105,.045); transform:rotate(-5deg); }
.tracefold-hero-art > img { position:absolute; z-index:1; left:-5%; bottom:0; width:76%; max-height:350px; object-fit:contain; opacity:.96; filter:drop-shadow(0 16px 22px rgba(5,48,25,.07)); }
.tracefold-sheet { position:absolute; z-index:2; width:300px; height:370px; right:3%; top:9%; border:1px solid var(--line); border-radius:22px; background:var(--surface); box-shadow:0 18px 44px rgba(5,48,25,.1); }
.sheet-back { transform:rotate(7deg) translate(17px,-2px); background:var(--green-pale); }
.sheet-front { z-index:3; padding:35px 28px; transform:rotate(-2deg); }
.sheet-front > span { color:var(--green); font:650 .51rem "JetBrains Mono",monospace; letter-spacing:.08em; }
.sheet-front h3 { margin:36px 0 20px; font:650 1.55rem/1.1 Sora,sans-serif; letter-spacing:-.05em; }
.tracefold-sheet-rule { height:5px; width:72%; margin-bottom:16px; border-radius:999px; background:var(--green); }
.sheet-front p { color:var(--muted); font-size:.68rem; line-height:1.55; }
.tracefold-sheet-score { position:absolute; right:24px; bottom:27px; color:var(--green); font:650 2.3rem Sora,sans-serif; }
.tracefold-stamp { position:absolute; z-index:4; right:0; bottom:17%; padding:9px 12px; border:1px solid var(--green); border-radius:999px; color:var(--green); background:var(--surface); font:650 .55rem "JetBrains Mono",monospace; transform:rotate(4deg); box-shadow:0 8px 20px rgba(5,48,25,.08); }
.tracefold-controls { display:grid; grid-template-columns:minmax(260px,1fr) auto; gap:14px; align-items:end; padding:22px; border-bottom:1px solid var(--line); }
.tracefold-controls .button { height:50px; }
.tracefold-workspace { display:grid; grid-template-columns:245px minmax(0,1fr); min-height:590px; }
.tracefold-outline { padding:24px 16px; border-right:1px solid var(--line); background:color-mix(in srgb,var(--paper) 84%,var(--surface)); }
.tracefold-outline > span { display:block; padding:0 10px 14px; color:var(--muted); font:650 .53rem "JetBrains Mono",monospace; letter-spacing:.07em; text-transform:uppercase; }
.tracefold-outline > button { width:100%; display:flex; align-items:center; gap:11px; padding:13px 10px; border:0; border-radius:12px; color:var(--muted); background:transparent; font:600 .66rem Inter,sans-serif; text-align:left; cursor:pointer; }
.tracefold-outline > button i { color:var(--green); font:650 .5rem "JetBrains Mono",monospace; font-style:normal; }
.tracefold-outline > button:hover,.tracefold-outline > button.is-active { color:var(--ink); background:var(--surface); box-shadow:inset 0 0 0 1px var(--line); }
.tracefold-signature { margin:34px 6px 0; padding:15px; border:1px solid var(--line); border-radius:15px; background:var(--surface); }
.tracefold-signature > span { color:var(--muted); font:650 .48rem "JetBrains Mono",monospace; text-transform:uppercase; }
.tracefold-signature strong { display:flex; align-items:center; gap:7px; margin-top:9px; color:var(--green); font-size:.66rem; }
.tracefold-signature strong i { width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(11,191,105,.1); }
.tracefold-signature small { display:block; margin-top:6px; color:var(--muted); font-size:.54rem; }
.tracefold-preview { margin:30px clamp(24px,5vw,70px); padding:clamp(28px,4vw,52px); border:1px solid var(--line); border-radius:22px; background:var(--paper); box-shadow:0 13px 32px rgba(5,48,25,.065); }
.tracefold-preview > header { display:flex; justify-content:space-between; align-items:start; gap:22px; padding-bottom:25px; border-bottom:1px solid var(--line); }
.tracefold-preview > header span { color:var(--green); font:650 .52rem "JetBrains Mono",monospace; letter-spacing:.08em; }
.tracefold-preview > header h3 { max-width:650px; margin:10px 0 0; font:650 clamp(1.55rem,3vw,2.5rem)/1.1 Sora,sans-serif; letter-spacing:-.055em; }
.tracefold-preview > header > strong { color:var(--green); font:650 2.5rem Sora,sans-serif; }
.tracefold-preview-meta { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid var(--line); }
.tracefold-preview-meta span { padding:15px 0; }
.tracefold-preview-meta b,.tracefold-preview-meta i { display:block; font-style:normal; }
.tracefold-preview-meta b { color:var(--muted); font:650 .48rem "JetBrains Mono",monospace; text-transform:uppercase; }
.tracefold-preview-meta i { margin-top:5px; color:var(--green); font-size:.64rem; font-weight:700; }
.tracefold-preview > section { padding:30px 0 18px; }
.tracefold-preview > section > span { color:var(--green); font:650 .54rem "JetBrains Mono",monospace; letter-spacing:.07em; text-transform:uppercase; }
.tracefold-preview > section > p { margin:14px 0 0; color:var(--muted); font-size:.77rem; line-height:1.75; }
.tracefold-callout { margin-top:24px; padding:18px; border-left:3px solid var(--green); border-radius:0 14px 14px 0; background:var(--green-pale); }
.tracefold-callout b { font:650 .68rem Sora,sans-serif; }
.tracefold-callout p { margin:7px 0 0; color:var(--muted); font-size:.67rem; line-height:1.55; }
.tracefold-preview pre { overflow:auto; margin:18px 0 0; padding:20px; border:1px solid var(--line); border-radius:15px; color:var(--green); background:color-mix(in srgb,var(--paper) 82%,var(--surface)); font:500 .66rem/1.6 "JetBrains Mono",monospace; }
.tracefold-preview ol { margin:18px 0 0; padding-left:20px; color:var(--muted); font-size:.72rem; line-height:1.75; }
.tracefold-preview > footer { display:flex; justify-content:space-between; gap:20px; margin-top:20px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font:600 .52rem "JetBrains Mono",monospace; }
.tracefold-preview > footer b { color:var(--ink); }
.tracefold-demo.is-running .tracefold-preview { animation:report-refresh .45s ease both; }
@keyframes report-refresh { 50% { opacity:.58; transform:translateY(4px); } }

/* PTaaS */
.ptaas-hero { background:radial-gradient(ellipse at 76% 48%,rgba(11,191,105,.14),transparent 30rem); }
.ptaas-hero-art { position:relative; min-height:600px; display:grid; place-items:center; }
.ptaas-hero-art::before { content:""; position:absolute; inset:8% 1% 7%; border:1px solid rgba(11,191,105,.18); border-radius:50% 50% 18% 18% / 58% 58% 15% 15%; background:linear-gradient(180deg,rgba(11,191,105,.04),rgba(11,191,105,.1)); }
.ptaas-hero-art > img { position:relative; z-index:2; width:min(96%,480px); max-height:440px; object-fit:contain; filter:drop-shadow(0 18px 24px rgba(5,48,25,.08)); }
.ptaas-track { position:absolute; z-index:3; top:7%; left:4%; right:4%; display:grid; grid-template-columns:repeat(4,1fr); overflow:hidden; border:1px solid var(--line); border-radius:18px; background:var(--glass-strong); box-shadow:0 10px 28px rgba(5,48,25,.07); backdrop-filter:blur(14px); }
.ptaas-track span { position:relative; padding:14px 8px; border-right:1px solid var(--line); color:var(--muted); font:650 .52rem "JetBrains Mono",monospace; text-align:center; }
.ptaas-track span:last-child { border-right:0; }
.ptaas-track .is-complete,.ptaas-track .is-active { color:var(--green); background:var(--green-pale); }
.ptaas-track .is-active::after { content:""; position:absolute; left:20%; right:20%; bottom:5px; height:2px; border-radius:999px; background:var(--green); }
.ptaas-operator { position:absolute; z-index:4; left:1%; bottom:8%; display:grid; grid-template-columns:auto auto; gap:2px 8px; align-items:center; padding:10px 13px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:0 9px 24px rgba(5,48,25,.08); }
.ptaas-operator > i { grid-row:1/3; width:10px; height:10px; border-radius:50%; background:var(--green); box-shadow:0 0 0 6px rgba(11,191,105,.1); }
.ptaas-operator span { font:650 .61rem Sora,sans-serif; }
.ptaas-operator b { color:var(--muted); font:550 .48rem "JetBrains Mono",monospace; }
.ptaas-float { position:absolute; z-index:4; padding:8px 11px; border:1px solid var(--line); border-radius:999px; color:var(--green); background:var(--surface); font:650 .53rem "JetBrains Mono",monospace; box-shadow:0 8px 20px rgba(5,48,25,.07); }
.ptaas-float-a { top:28%; right:-2%; }.ptaas-float-b { right:4%; bottom:16%; }
.ptaas-planner { padding:24px; border-bottom:1px solid var(--line); }
.ptaas-planner fieldset { margin:0; padding:0; border:0; }
.ptaas-planner legend { margin-bottom:12px; color:var(--muted); font:650 .56rem "JetBrains Mono",monospace; letter-spacing:.07em; text-transform:uppercase; }
.ptaas-options { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; }
.ptaas-options label { position:relative; cursor:pointer; }
.ptaas-options input { position:absolute; opacity:0; pointer-events:none; }
.ptaas-options label > span { min-height:88px; display:flex; flex-direction:column; justify-content:center; padding:15px; border:1px solid var(--line); border-radius:16px; background:var(--paper); transition:border-color .2s ease,background-color .2s ease,transform .2s ease; }
.ptaas-options label:hover > span { transform:translateY(-2px); border-color:rgba(11,191,105,.34); }
.ptaas-options input:checked + span { border-color:var(--green); background:var(--green-pale); box-shadow:inset 0 0 0 1px rgba(11,191,105,.11); }
.ptaas-options b { font:650 .73rem Sora,sans-serif; }
.ptaas-options small { margin-top:6px; color:var(--muted); font-size:.55rem; line-height:1.4; }
.ptaas-plan-controls { display:grid; grid-template-columns:1fr 1fr auto; gap:12px; align-items:end; margin-top:18px; }
.ptaas-plan-controls .button { height:50px; }
.ptaas-plan-output { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(260px,.52fr); }
.ptaas-plan-output > section { border-right:1px solid var(--line); }
.ptaas-plan-output header { min-height:58px; display:flex; justify-content:space-between; align-items:center; padding:0 20px; border-bottom:1px solid var(--line); color:var(--muted); font:650 .56rem "JetBrains Mono",monospace; text-transform:uppercase; }
.ptaas-plan-output header b { color:var(--green); }
.ptaas-plan-steps { display:grid; grid-template-columns:repeat(4,1fr); min-height:260px; }
.ptaas-plan-steps article { position:relative; padding:27px 20px; border-right:1px solid var(--line); }
.ptaas-plan-steps article:last-child { border-right:0; }
.ptaas-plan-steps article::after { content:""; position:absolute; top:40px; left:48px; right:-12px; height:1px; background:var(--line); }
.ptaas-plan-steps article:last-child::after { display:none; }
.ptaas-plan-steps article > span { position:relative; z-index:1; width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--muted); background:var(--surface); font:650 .5rem "JetBrains Mono",monospace; }
.ptaas-plan-steps article.is-active > span,.ptaas-plan-steps article.is-complete > span { color:#fff; border-color:var(--green); background:var(--green); }
.ptaas-plan-steps article div { margin-top:28px; }
.ptaas-plan-steps article b { font:650 .7rem/1.35 Sora,sans-serif; }
.ptaas-plan-steps article p { margin:8px 0 0; color:var(--muted); font-size:.59rem; line-height:1.5; }
.ptaas-plan-output > aside { padding:24px; }
.ptaas-plan-output > aside > span { display:block; margin-bottom:12px; color:var(--muted); font:650 .54rem "JetBrains Mono",monospace; letter-spacing:.06em; text-transform:uppercase; }
.ptaas-plan-output > aside > div { display:flex; justify-content:space-between; gap:14px; padding:14px 0; border-bottom:1px solid var(--line); }
.ptaas-plan-output > aside small { color:var(--muted); font-size:.58rem; }
.ptaas-plan-output > aside strong { color:var(--green); font:650 .7rem Sora,sans-serif; text-align:right; }
.ptaas-plan-output > aside .ptaas-ai-assessments { display:grid; grid-template-columns:auto 1fr; justify-content:start; gap:7px 9px; margin-top:6px; padding:16px 0; }
.ptaas-ai-assessments span { align-self:start; padding:4px 6px; border:1px solid rgba(11,191,105,.3); border-radius:999px; color:var(--green); background:var(--green-pale); font:700 .5rem "JetBrains Mono",monospace; }
.ptaas-ai-assessments p { margin:0; color:var(--muted); font-size:.56rem; line-height:1.4; }
.ptaas-plan-output > aside > p { margin:16px 0 0; color:var(--muted); font-size:.61rem; line-height:1.5; }
.ptaas-demo.is-running .ptaas-plan-steps article > span { animation:pulse-soft .8s ease-in-out infinite; }

@media (max-width: 1080px) and (min-width: 921px) {
  .product-hero-grid { grid-template-columns:minmax(0,1fr) minmax(350px,.72fr); gap:44px; }
  .tracefold-hero-grid { grid-template-columns:minmax(350px,.75fr) minmax(0,1fr); }
  .product-hero h1 { font-size:clamp(3.2rem,5.8vw,5rem); }
  .ptaas-options { grid-template-columns:repeat(3,1fr); }
  .ptaas-plan-steps { grid-template-columns:repeat(2,1fr); }
  .ptaas-plan-steps article:nth-child(2) { border-right:0; }
  .ptaas-plan-steps article:nth-child(-n+2) { border-bottom:1px solid var(--line); }
}

@media (max-width: 920px) {
  .product-hero { min-height:0; padding:140px 0 70px; }
  .product-hero-grid,.tracefold-hero-grid { grid-template-columns:1fr; }
  .tracefold-hero-copy { order:1; padding-left:0; }
  .tracefold-hero-art { order:2; }
  .adversyn-hero-art,.tracefold-hero-art,.ptaas-hero-art { width:min(620px,100%); min-height:500px; margin-inline:auto; }
  .adversyn-lab-grid,.ptaas-plan-output { grid-template-columns:1fr; }
  .adversyn-radar,.ptaas-plan-output > section { border-right:0; border-bottom:1px solid var(--line); }
  .tracefold-workspace { grid-template-columns:210px minmax(0,1fr); }
  .tracefold-preview { margin:24px; }
  .ptaas-options { grid-template-columns:repeat(3,1fr); }
  .ptaas-plan-steps { min-height:0; }
}

@media (max-width: 680px) {
  .product-hero { padding:124px 0 58px; }
  .product-hero h1 { font-size:clamp(3rem,14vw,4.6rem); }
  .adversyn-hero-art,.tracefold-hero-art,.ptaas-hero-art { min-height:390px; }
  .adversyn-hero-art > img,.ptaas-hero-art > img { max-height:330px; }
  .adversyn-core { width:65px; height:65px; right:12%; }
  .adversyn-vector { font-size:.47rem; }
  .vector-one { left:0; }.vector-two { right:0; }
  .product-demo-section { padding:68px 0; }
  .product-demo { border-radius:23px; }
  .product-demo-summary { grid-template-columns:repeat(3,1fr); }
  .product-demo-summary > p { grid-column:1 / -1; border-top:1px solid var(--line); text-align:left; }
  .adversyn-controls,.tracefold-controls,.ptaas-plan-controls { grid-template-columns:1fr; }
  .adversyn-controls .button,.tracefold-controls .button,.ptaas-plan-controls .button { width:100%; }
  .radar-stage { min-height:340px; }
  .adversyn-scenarios article { grid-template-columns:48px minmax(0,1fr); }
  .adversyn-scenarios article > b { grid-column:2; }
  .tracefold-sheet { width:230px; height:300px; right:4%; }
  .sheet-front { padding:27px 21px; }
  .sheet-front h3 { margin-top:28px; font-size:1.18rem; }
  .tracefold-hero-art > img { width:70%; max-height:260px; }
  .tracefold-workspace { display:block; }
  .tracefold-outline { display:flex; gap:8px; padding:12px; overflow-x:auto; border-right:0; border-bottom:1px solid var(--line); scrollbar-width:none; }
  .tracefold-outline > span,.tracefold-signature { display:none; }
  .tracefold-outline > button { flex:0 0 auto; width:auto; }
  .tracefold-preview { margin:16px; padding:23px 19px; }
  .tracefold-preview > header { align-items:start; }
  .tracefold-preview > header > strong { font-size:1.8rem; }
  .tracefold-preview-meta { grid-template-columns:repeat(3,1fr); }
  .tracefold-preview > footer { flex-direction:column; }
  .ptaas-track { left:0; right:0; }
  .ptaas-operator { left:0; }
  .ptaas-float-a { right:0; }
  .ptaas-options { grid-template-columns:repeat(2,1fr); }
  .ptaas-plan-steps { grid-template-columns:repeat(2,1fr); }
  .ptaas-plan-steps article:nth-child(2) { border-right:0; }
  .ptaas-plan-steps article:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .ptaas-plan-output > aside { padding:20px; }
}

/* In-product application previews */
.product-showcase-section { position:relative; overflow:hidden; padding:74px 0 82px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--paper) 86%,var(--green-pale)); }
.product-showcase-section::before { content:""; position:absolute; width:620px; height:620px; right:-220px; bottom:-330px; border:1px solid rgba(11,191,105,.12); border-radius:50%; box-shadow:0 0 0 90px rgba(11,191,105,.02),0 0 0 180px rgba(11,191,105,.012); pointer-events:none; }
.product-showcase { position:relative; overflow:hidden; border:1px solid var(--line); border-radius:28px; background:var(--surface); box-shadow:inset 0 1px 0 var(--material-stroke),0 18px 45px rgba(5,48,25,.085); }
.showcase-chrome { min-height:58px; display:grid; grid-template-columns:110px minmax(150px,1fr) auto minmax(110px,1fr); align-items:center; gap:18px; padding:0 18px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--paper) 82%,var(--surface)); }
.showcase-dots { display:flex; gap:6px; }
.showcase-dots i { width:8px; height:8px; border:1px solid var(--line); border-radius:50%; background:var(--surface); }
.showcase-dots i:first-child { background:rgba(11,191,105,.18); border-color:rgba(11,191,105,.32); }
.showcase-chrome > strong { min-width:0; overflow:hidden; font:650 .64rem Sora,sans-serif; text-overflow:ellipsis; white-space:nowrap; }
.showcase-chrome > span { justify-self:end; color:var(--muted); font:600 .51rem "JetBrains Mono",monospace; }
.showcase-tabs { display:flex; gap:3px; padding:3px; border:1px solid var(--line); border-radius:999px; background:var(--surface); }
.showcase-tabs button { min-height:30px; padding:0 13px; border:0; border-radius:999px; color:var(--muted); background:transparent; font:650 .56rem Inter,sans-serif; cursor:pointer; transition:color .2s ease,background-color .2s ease,box-shadow .2s ease; }
.showcase-tabs button:hover { color:var(--green); }
.showcase-tabs button.is-active { color:var(--green); background:var(--green-pale); box-shadow:inset 0 0 0 1px rgba(11,191,105,.12); }
.showcase-app { display:grid; grid-template-columns:185px minmax(0,1fr); min-height:680px; }
.showcase-sidebar { display:flex; flex-direction:column; padding:23px 14px 18px; border-right:1px solid var(--line); background:color-mix(in srgb,var(--paper) 86%,var(--surface)); }
.showcase-product-mark { width:42px; height:42px; display:grid; place-items:center; margin:0 8px 26px; border:1px solid rgba(11,191,105,.28); border-radius:13px; color:var(--green); background:var(--green-pale); font:700 .7rem Sora,sans-serif; box-shadow:inset 0 1px 0 rgba(255,255,255,.3); }
.showcase-sidebar nav { display:grid; gap:3px; }
.showcase-sidebar nav span { min-height:40px; display:flex; align-items:center; justify-content:space-between; padding:0 11px; border-radius:11px; color:var(--muted); font:600 .6rem Inter,sans-serif; }
.showcase-sidebar nav span.is-active { color:var(--green); background:var(--surface); box-shadow:inset 0 0 0 1px var(--line); }
.showcase-sidebar nav b { min-width:20px; padding:3px 5px; border-radius:999px; color:var(--green); background:var(--green-pale); font:700 .46rem "JetBrains Mono",monospace; text-align:center; }
.showcase-operator { display:flex; align-items:center; gap:9px; margin-top:auto; padding:12px 10px; border:1px solid var(--line); border-radius:13px; background:var(--surface); }
.showcase-operator > i { flex:0 0 auto; width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(11,191,105,.09); }
.showcase-operator b,.showcase-operator small { display:block; }
.showcase-operator b { font-size:.55rem; }
.showcase-operator small { margin-top:2px; color:var(--muted); font-size:.46rem; }
.showcase-content { min-width:0; background:var(--surface); }
.showcase-panel { min-height:680px; animation:showcase-view-in .34s cubic-bezier(.22,1,.36,1) both; }
.showcase-panel[hidden] { display:none; }
@keyframes showcase-view-in { from { opacity:.45; transform:translateY(7px); } to { opacity:1; transform:none; } }
.showcase-page-head { min-height:104px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 28px; border-bottom:1px solid var(--line); }
.showcase-page-head > div { min-width:0; }
.showcase-page-head > div > span { color:var(--green); font:650 .5rem "JetBrains Mono",monospace; letter-spacing:.07em; }
.showcase-page-head h3 { overflow:hidden; margin:6px 0 0; font:650 clamp(1.1rem,2.1vw,1.7rem)/1.15 Sora,sans-serif; letter-spacing:-.04em; text-overflow:ellipsis; white-space:nowrap; }
.showcase-page-head p { margin:5px 0 0; color:var(--muted); font-size:.56rem; }
.showcase-page-head button,.finding-app-layout aside button,.trace-layout aside button,.live-finding-layout aside button { min-height:36px; flex:0 0 auto; padding:0 13px; border:1px solid var(--line); border-radius:11px; color:var(--ink); background:var(--paper); font:650 .55rem Inter,sans-serif; cursor:pointer; }
.showcase-page-head button:hover,.finding-app-layout aside button:hover,.trace-layout aside button:hover,.live-finding-layout aside button:hover { color:var(--green); border-color:var(--green); }
.app-risk-score { flex:0 0 auto; color:var(--green); font:650 2.15rem Sora,sans-serif; }
.showcase-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid var(--line); }
.showcase-stat-grid article { min-width:0; padding:18px 20px; border-right:1px solid var(--line); }
.showcase-stat-grid article:last-child { border-right:0; }
.showcase-stat-grid span,.showcase-stat-grid small { display:block; color:var(--muted); font-size:.5rem; }
.showcase-stat-grid span { text-transform:uppercase; }
.showcase-stat-grid strong { display:block; margin:7px 0 3px; color:var(--green); font:650 1.45rem Sora,sans-serif; }

/* Oqtrix application */
.oqtrix-app-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr); min-height:390px; }
.app-surface-map { border-right:1px solid var(--line); }
.app-surface-map > header,.app-finding-queue > header,.campaign-map > header,.campaign-stream > header,.engagement-timeline > header,.operator-board > header { min-height:47px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid var(--line); color:var(--muted); font:650 .5rem "JetBrains Mono",monospace; text-transform:uppercase; }
.app-surface-map > header b,.campaign-map > header b,.engagement-timeline > header b,.operator-board > header b { display:flex; align-items:center; gap:6px; color:var(--green); }
.app-surface-map > header i,.campaign-map > header i { width:6px; height:6px; border-radius:50%; background:var(--green); }
.surface-canvas { position:relative; min-height:343px; overflow:hidden; background-image:linear-gradient(rgba(11,191,105,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(11,191,105,.045) 1px,transparent 1px); background-size:34px 34px; }
.surface-canvas::before { content:""; position:absolute; width:230px; height:230px; left:50%; top:50%; border:1px dashed rgba(11,191,105,.18); border-radius:50%; transform:translate(-50%,-50%); }
.surface-node { position:absolute; z-index:2; min-width:108px; padding:10px 12px; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:0 7px 18px rgba(5,48,25,.06); font:650 .58rem Sora,sans-serif; }
.surface-node small { display:block; margin-top:3px; color:var(--muted); font:500 .45rem Inter,sans-serif; }
.root-node { left:8%; top:40%; color:var(--green); border-color:rgba(11,191,105,.4); }
.api-node { left:40%; top:13%; }.auth-node { right:7%; top:40%; }.cloud-node { left:40%; bottom:11%; }
.surface-line { position:absolute; z-index:1; height:1px; background:linear-gradient(90deg,rgba(11,191,105,.1),var(--green),rgba(11,191,105,.1)); transform-origin:left center; }
.line-a { width:32%; left:24%; top:45%; transform:rotate(-31deg); }.line-b { width:31%; left:53%; top:30%; transform:rotate(31deg); }.line-c { width:31%; left:54%; top:59%; transform:rotate(146deg); }
.surface-path { position:absolute; z-index:3; left:42%; top:46%; padding:6px 8px; border-radius:999px; color:#fff; background:var(--green); font:650 .44rem "JetBrains Mono",monospace; }
.app-finding-queue > header b,.campaign-stream > header b { color:var(--green); }
.app-finding-queue > div { display:grid; grid-template-columns:58px minmax(0,1fr) auto; gap:11px; align-items:start; padding:18px; border-bottom:1px solid var(--line); }
.app-finding-queue p { margin:0; }
.app-finding-queue p b,.app-finding-queue p small { display:block; }
.app-finding-queue p b { font:650 .62rem Sora,sans-serif; }
.app-finding-queue p small { margin-top:4px; color:var(--muted); font-size:.49rem; }
.app-finding-queue > div > strong { color:var(--green); font:650 .9rem Sora,sans-serif; }
.finding-app-layout,.trace-layout,.live-finding-layout { display:grid; grid-template-columns:minmax(0,1fr) 235px; min-height:575px; }
.finding-app-layout > main,.trace-layout > main,.live-finding-layout > main { min-width:0; padding:28px; border-right:1px solid var(--line); }
.finding-app-summary { display:flex; align-items:flex-start; gap:15px; }
.finding-app-summary p { max-width:760px; margin:0; color:var(--muted); font-size:.68rem; line-height:1.65; }
.app-path-flow { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:27px 0; padding:20px; border:1px solid var(--line); border-radius:17px; background:var(--paper); }
.app-path-flow > span { min-width:0; font:650 .6rem Sora,sans-serif; }
.app-path-flow small { display:block; margin-top:4px; color:var(--muted); font:500 .46rem Inter,sans-serif; }
.app-path-flow > i { color:var(--green); font-style:normal; }
.app-evidence { overflow:hidden; border:1px solid var(--line); border-radius:17px; }
.app-evidence header { min-height:42px; display:flex; align-items:center; justify-content:space-between; padding:0 15px; border-bottom:1px solid var(--line); color:var(--muted); font:650 .48rem "JetBrains Mono",monospace; text-transform:uppercase; }
.app-evidence header b { color:var(--green); }
.app-evidence pre { min-height:180px; margin:0; padding:19px; overflow:auto; color:var(--green); background:color-mix(in srgb,var(--paper) 88%,var(--surface)); font:500 .61rem/1.7 "JetBrains Mono",monospace; }
.finding-app-layout > aside,.trace-layout > aside,.live-finding-layout > aside { padding:26px 20px; background:color-mix(in srgb,var(--paper) 86%,var(--surface)); }
.finding-app-layout aside > span,.trace-layout aside > span,.live-finding-layout aside > span { color:var(--muted); font:650 .49rem "JetBrains Mono",monospace; text-transform:uppercase; }
.finding-app-layout aside > strong,.live-finding-layout aside > strong { display:flex; align-items:center; gap:7px; margin-top:14px; color:var(--green); font-size:.6rem; }
.finding-app-layout aside > strong i,.live-finding-layout aside > strong i { width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(11,191,105,.09); }
.finding-app-layout dl,.trace-layout dl,.live-finding-layout dl { margin:26px 0; }
.finding-app-layout dl div,.trace-layout dl div,.live-finding-layout dl div { display:flex; justify-content:space-between; gap:10px; padding:11px 0; border-bottom:1px solid var(--line); font-size:.56rem; }
.finding-app-layout dt,.trace-layout dt,.live-finding-layout dt { color:var(--muted); }
.finding-app-layout dd,.trace-layout dd,.live-finding-layout dd { margin:0; color:var(--green); font-weight:700; }

/* Adversyn application */
.adversyn-app-grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(280px,.98fr); min-height:390px; }
.campaign-map { border-right:1px solid var(--line); }
.campaign-map-canvas { position:relative; min-height:343px; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle,rgba(11,191,105,.09),transparent 42%); }
.campaign-map-canvas > i { position:absolute; border:1px solid rgba(11,191,105,.15); border-radius:50%; }
.campaign-map-canvas > i:nth-of-type(1) { width:150px; height:150px; }.campaign-map-canvas > i:nth-of-type(2) { width:240px; height:240px; border-style:dashed; }.campaign-map-canvas > i:nth-of-type(3) { width:330px; height:330px; }
.campaign-center { position:relative; z-index:2; width:100px; height:100px; display:grid; place-content:center; border:1px solid var(--green); border-radius:50%; background:var(--surface); text-align:center; box-shadow:0 12px 30px rgba(5,48,25,.09); }
.campaign-center strong { color:var(--green); font:650 1.9rem/1 Sora,sans-serif; }
.campaign-center small { margin-top:5px; color:var(--muted); font:.44rem "JetBrains Mono",monospace; }
.campaign-axis { position:absolute; z-index:3; min-width:110px; padding:9px 11px; border:1px solid var(--line); border-radius:12px; background:var(--surface); color:var(--muted); font:600 .5rem Inter,sans-serif; box-shadow:0 7px 18px rgba(5,48,25,.05); }
.campaign-axis b { display:block; margin-top:3px; color:var(--green); font:700 .61rem Sora,sans-serif; }
.axis-one { left:7%; top:14%; }.axis-two { right:7%; top:16%; }.axis-three { right:6%; bottom:12%; }.axis-four { left:7%; bottom:13%; }
.campaign-stream > div { display:grid; grid-template-columns:10px minmax(0,1fr) auto; align-items:start; gap:11px; padding:16px 18px; border-bottom:1px solid var(--line); }
.campaign-stream > div > i { width:7px; height:7px; margin-top:3px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(11,191,105,.08); }
.campaign-stream > div > i.is-risk { background:#d98a35; box-shadow:0 0 0 4px rgba(217,138,53,.1); }
.campaign-stream p { margin:0; }
.campaign-stream p b,.campaign-stream p small { display:block; }
.campaign-stream p b { font:650 .59rem Sora,sans-serif; }
.campaign-stream p small { margin-top:4px; color:var(--muted); font-size:.48rem; }
.campaign-stream > div > span { color:var(--green); font:700 .48rem "JetBrains Mono",monospace; text-transform:uppercase; }
.trace-layout > main { padding-block:20px; }
.trace-turn { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:start; gap:13px; padding:16px 0; border-bottom:1px solid var(--line); }
.trace-turn > span { width:30px; height:30px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--green); font:650 .48rem "JetBrains Mono",monospace; }
.trace-turn b { font:650 .62rem Sora,sans-serif; }
.trace-turn p { margin:5px 0 0; color:var(--muted); font-size:.55rem; line-height:1.5; }
.trace-turn pre { margin:7px 0 0; padding:10px; border:1px solid var(--line); border-radius:10px; color:var(--green); background:var(--paper); font:500 .53rem/1.45 "JetBrains Mono",monospace; }
.trace-turn > strong { color:var(--green); font:700 .47rem "JetBrains Mono",monospace; text-transform:uppercase; }
.trace-turn.is-critical { margin-inline:-14px; padding-inline:14px; background:color-mix(in srgb,var(--green-pale) 38%,transparent); }
.trace-layout aside > button { width:100%; }

/* Tracefold application */
.tracefold-library-toolbar { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 24px; border-bottom:1px solid var(--line); }
.tracefold-library-toolbar > div { display:flex; gap:6px; }
.tracefold-library-toolbar button { min-height:28px; padding:0 10px; border:0; border-radius:999px; color:var(--muted); background:transparent; font:600 .53rem Inter,sans-serif; }
.tracefold-library-toolbar button.is-active { color:var(--green); background:var(--green-pale); }
.tracefold-library-toolbar > span { min-width:210px; padding:7px 10px; border:1px solid var(--line); border-radius:9px; color:var(--muted); font-size:.49rem; }
.tracefold-report-table { padding:0 24px 24px; }
.report-table-head,.tracefold-report-table article { display:grid; grid-template-columns:minmax(260px,1.4fr) minmax(120px,.75fr) 70px 70px 90px; gap:14px; align-items:center; }
.report-table-head { min-height:42px; color:var(--muted); font:650 .46rem "JetBrains Mono",monospace; text-transform:uppercase; }
.tracefold-report-table article { min-height:79px; border-top:1px solid var(--line); }
.tracefold-report-table article > div:first-child { display:flex; align-items:center; gap:11px; }
.report-cover { flex:0 0 auto; width:34px; height:42px; display:grid; place-items:center; border-radius:6px 10px 10px 6px; color:var(--green); background:var(--green-pale); font:700 .5rem Sora,sans-serif; font-style:normal; box-shadow:inset 3px 0 0 rgba(11,191,105,.18); }
.cover-green { color:#fff; background:var(--green); }.cover-dark { color:var(--green-3); background:var(--ink-2); }.cover-pale { color:var(--ink); background:var(--paper); border:1px solid var(--line); }
.tracefold-report-table p { margin:0; }
.tracefold-report-table p b,.tracefold-report-table p small { display:block; }
.tracefold-report-table p b { font:650 .59rem Sora,sans-serif; }
.tracefold-report-table p small { margin-top:4px; color:var(--muted); font-size:.47rem; }
.tracefold-report-table article > span { display:grid; grid-template-columns:1fr auto; gap:7px; align-items:center; }
.tracefold-report-table article > span > i { position:relative; height:4px; overflow:hidden; border-radius:99px; background:var(--line); }
.tracefold-report-table article > span > i::after { content:""; position:absolute; inset:0 auto 0 0; width:var(--progress); border-radius:inherit; background:var(--green); }
.tracefold-report-table article > span small { color:var(--muted); font-size:.45rem; }
.tracefold-report-table article > strong { color:var(--green); font:650 .73rem Sora,sans-serif; }
.report-avatar { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; color:var(--green); background:var(--green-pale); font:700 .43rem Sora,sans-serif; }
.tracefold-report-table em { justify-self:start; padding:5px 7px; border-radius:999px; font:650 .44rem Inter,sans-serif; font-style:normal; }
.status-review { color:#9a641d; background:#fff0d7; }.status-draft { color:var(--muted); background:var(--paper); }.status-signed { color:var(--green); background:var(--green-pale); }
[data-theme="dark"] .status-review { color:#ffd59b; background:#3b2a16; }
.tracefold-app-editor { display:grid; grid-template-columns:minmax(0,1fr) 240px; min-height:575px; }
.tracefold-app-editor > main { min-width:0; border-right:1px solid var(--line); }
.editor-toolbar { min-height:46px; display:flex; align-items:center; gap:7px; padding:0 20px; border-bottom:1px solid var(--line); color:var(--muted); font-size:.5rem; }
.editor-toolbar > * { padding:4px 7px; border:1px solid var(--line); border-radius:6px; font-style:normal; }
.tracefold-app-editor main > article { max-width:710px; margin:0 auto; padding:30px 34px; }
.tracefold-app-editor main > article > span { color:var(--green); font:650 .5rem "JetBrains Mono",monospace; text-transform:uppercase; }
.tracefold-app-editor h4 { margin:11px 0 15px; font:650 1.25rem/1.25 Sora,sans-serif; letter-spacing:-.04em; }
.tracefold-app-editor main > article > p { margin:0 0 25px; color:var(--muted); font-size:.64rem; line-height:1.7; }
.editor-callout { margin-bottom:25px; padding:15px; border-left:3px solid var(--green); background:var(--green-pale); }
.editor-callout b { font-size:.58rem; }
.editor-callout p { margin:5px 0 0; color:var(--muted); font-size:.55rem; }
.tracefold-app-editor pre { overflow:auto; margin:10px 0 0; padding:16px; border:1px solid var(--line); border-radius:12px; color:var(--green); background:var(--paper); font:500 .55rem/1.6 "JetBrains Mono",monospace; }
.tracefold-app-editor > aside { padding:21px 17px; background:color-mix(in srgb,var(--paper) 86%,var(--surface)); }
.editor-property { padding:12px 0; border-bottom:1px solid var(--line); }
.editor-property span,.editor-property strong { display:block; }
.editor-property span,.editor-comments > span { color:var(--muted); font:650 .47rem "JetBrains Mono",monospace; text-transform:uppercase; }
.editor-property strong { margin-top:5px; color:var(--green); font-size:.57rem; }
.editor-comments { margin-top:24px; }
.editor-comments p { margin:10px 0 0; padding:10px; border:1px solid var(--line); border-radius:10px; color:var(--muted); background:var(--surface); font-size:.5rem; line-height:1.5; }
.editor-comments b { color:var(--ink); }

/* PTaaS application */
.ptaas-app-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); min-height:390px; }
.engagement-timeline { border-right:1px solid var(--line); }
.engagement-timeline > div { padding:10px 18px 18px; }
.engagement-timeline > div > span { position:relative; display:grid; grid-template-columns:18px minmax(0,1fr) auto; gap:11px; padding:14px 0; }
.engagement-timeline > div > span:not(:last-child)::after { content:""; position:absolute; width:1px; height:30px; left:8px; top:36px; background:var(--line); }
.engagement-timeline span > i { width:17px; height:17px; border:1px solid var(--line); border-radius:50%; background:var(--surface); }
.engagement-timeline span.is-complete > i,.engagement-timeline span.is-active > i { border-color:var(--green); background:var(--green); box-shadow:inset 0 0 0 4px var(--surface); }
.engagement-timeline span.is-active > i { box-shadow:0 0 0 5px rgba(11,191,105,.09),inset 0 0 0 4px var(--surface); }
.engagement-timeline p { margin:0; }
.engagement-timeline p b,.engagement-timeline p small { display:block; }
.engagement-timeline p b { font:650 .59rem Sora,sans-serif; }
.engagement-timeline p small { margin-top:4px; color:var(--muted); font-size:.48rem; }
.engagement-timeline em { color:var(--muted); font:600 .46rem "JetBrains Mono",monospace; font-style:normal; }
.operator-person { display:grid; grid-template-columns:34px minmax(0,1fr) auto; gap:10px; align-items:center; padding:15px 17px; border-bottom:1px solid var(--line); }
.operator-person > i { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; color:var(--green); background:var(--green-pale); font:700 .46rem Sora,sans-serif; font-style:normal; }
.operator-person p { margin:0; }.operator-person p b,.operator-person p small { display:block; }.operator-person p b { font:650 .57rem Sora,sans-serif; }.operator-person p small { margin-top:3px; color:var(--muted); font-size:.46rem; }
.operator-person > span { color:var(--green); font:650 .44rem "JetBrains Mono",monospace; }
.operator-message { margin:17px; padding:15px; border:1px solid var(--line); border-radius:13px; background:var(--paper); }
.operator-message > span { color:var(--green); font:650 .46rem "JetBrains Mono",monospace; text-transform:uppercase; }
.operator-message p { margin:8px 0; color:var(--muted); font-size:.54rem; line-height:1.5; }
.operator-message small { color:var(--muted); font-size:.45rem; }
.live-finding-layout > main { padding:0; }
.live-finding-banner { display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:13px; padding:18px 24px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--green-pale) 35%,transparent); }
.live-finding-banner p { margin:0; }.live-finding-banner p b,.live-finding-banner p small { display:block; }.live-finding-banner p b { font:650 .62rem Sora,sans-serif; }.live-finding-banner p small { margin-top:4px; color:var(--muted); font-size:.5rem; }
.live-finding-banner button { min-height:32px; padding:0 10px; border:1px solid var(--line); border-radius:9px; background:var(--surface); font-size:.5rem; }
.live-finding-tabs { min-height:45px; display:flex; align-items:end; gap:22px; padding:0 24px; border-bottom:1px solid var(--line); }
.live-finding-tabs span { padding-bottom:10px; color:var(--muted); font-size:.53rem; }
.live-finding-tabs span.is-active { color:var(--green); border-bottom:2px solid var(--green); }
.live-finding-layout main > article { padding:24px; }
.live-finding-layout main > article > span { color:var(--green); font:650 .49rem "JetBrains Mono",monospace; text-transform:uppercase; }
.live-finding-layout main > article > p { margin:10px 0 20px; color:var(--muted); font-size:.62rem; line-height:1.65; }
.live-evidence-row { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.live-evidence-row > div { min-width:0; padding:15px; border:1px solid var(--line); border-radius:13px; background:var(--paper); }
.live-evidence-row small { display:block; margin-bottom:8px; color:var(--muted); font-size:.47rem; text-transform:uppercase; }
.live-evidence-row pre { overflow:auto; margin:0; color:var(--green); font:500 .49rem/1.6 "JetBrains Mono",monospace; }
.live-evidence-row strong { display:block; color:var(--ink); font-size:.56rem; line-height:1.6; }
.live-finding-layout aside > button { width:100%; }

@media (max-width: 1000px) {
  .showcase-chrome { grid-template-columns:70px minmax(120px,1fr) auto; }
  .showcase-chrome > span { display:none; }
  .showcase-app { grid-template-columns:155px minmax(0,1fr); }
  .showcase-stat-grid { grid-template-columns:repeat(2,1fr); }
  .showcase-stat-grid article:nth-child(2) { border-right:0; }
  .showcase-stat-grid article:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .oqtrix-app-grid,.adversyn-app-grid,.ptaas-app-grid { grid-template-columns:1fr; }
  .app-surface-map,.campaign-map,.engagement-timeline { border-right:0; border-bottom:1px solid var(--line); }
  .finding-app-layout,.trace-layout,.live-finding-layout { grid-template-columns:minmax(0,1fr) 210px; }
  .tracefold-app-editor { grid-template-columns:minmax(0,1fr) 210px; }
  .report-table-head,.tracefold-report-table article { grid-template-columns:minmax(230px,1.4fr) minmax(100px,.7fr) 55px 55px 82px; }
}

@media (max-width: 680px) {
  .product-showcase-section { padding:68px 0 76px; }
  .product-showcase { border-radius:21px; }
  .showcase-chrome { display:flex; flex-wrap:wrap; gap:9px; min-height:0; padding:12px; }
  .showcase-dots { width:42px; }
  .showcase-chrome > strong { flex:1; }
  .showcase-tabs { width:100%; order:3; }
  .showcase-tabs button { flex:1; }
  .showcase-app { display:block; min-height:0; }
  .showcase-sidebar { display:none; }
  .showcase-panel { min-height:0; }
  .showcase-page-head { min-height:0; align-items:flex-start; padding:18px; }
  .showcase-page-head h3 { font-size:1.05rem; white-space:normal; }
  .showcase-page-head p { line-height:1.45; }
  .showcase-page-head button { display:none; }
  .app-risk-score { font-size:1.6rem; }
  .showcase-stat-grid article { padding:14px 16px; }
  .showcase-stat-grid strong { font-size:1.2rem; }
  .surface-canvas,.campaign-map-canvas { min-height:330px; }
  .surface-node { min-width:88px; padding:8px; font-size:.49rem; }
  .app-finding-queue > div { padding:15px; }
  .finding-app-layout,.trace-layout,.live-finding-layout,.tracefold-app-editor { display:block; min-height:0; }
  .finding-app-layout > main,.trace-layout > main,.live-finding-layout > main,.tracefold-app-editor > main { border-right:0; border-bottom:1px solid var(--line); }
  .finding-app-layout > main,.trace-layout > main { padding:19px; }
  .app-path-flow { display:grid; grid-template-columns:1fr auto 1fr; }
  .app-path-flow > span:nth-of-type(n+3),.app-path-flow > i:nth-of-type(n+2) { display:none; }
  .finding-app-layout > aside,.trace-layout > aside,.live-finding-layout > aside { padding:19px; }
  .campaign-axis { min-width:92px; font-size:.45rem; }
  .axis-one,.axis-four { left:3%; }.axis-two,.axis-three { right:3%; }
  .trace-turn { grid-template-columns:30px minmax(0,1fr); }
  .trace-turn > strong { grid-column:2; }
  .tracefold-library-toolbar { align-items:flex-start; flex-direction:column; height:auto; padding:14px 16px; }
  .tracefold-library-toolbar > span { width:100%; }
  .tracefold-report-table { padding:0 16px 16px; }
  .report-table-head { display:none; }
  .tracefold-report-table article { grid-template-columns:minmax(0,1fr) auto; gap:10px; padding:13px 0; }
  .tracefold-report-table article > span,.tracefold-report-table article > strong,.tracefold-report-table .report-avatar { display:none; }
  .tracefold-report-table em { justify-self:end; }
  .editor-toolbar { overflow-x:auto; }
  .tracefold-app-editor main > article { padding:22px 19px; }
  .live-finding-banner { grid-template-columns:54px minmax(0,1fr); padding:16px; }
  .live-finding-banner button { display:none; }
  .live-finding-tabs { gap:14px; padding-inline:16px; overflow-x:auto; }
  .live-finding-layout main > article { padding:19px; }
  .live-evidence-row { grid-template-columns:1fr; }
}

@media (max-width: 1120px) {
  .oqtrix-hero-grid,
  .adversyn-hero .product-hero-grid,
  .tracefold-hero-grid {
    grid-template-columns:1fr;
  }

  .tracefold-hero-copy {
    order:1;
    padding-left:0;
  }

  .tracefold-product-visual {
    order:2;
  }

  .product-visual-shell {
    width:min(820px,100%);
    height:640px;
    margin-inline:auto;
  }
}

@media (max-width: 680px) {
  .product-visual-shell {
    height:440px;
    padding:0;
    border-radius:0;
  }

  .product-visual-label {
    height:38px;
    padding-inline:13px;
    font-size:.47rem;
  }

  .product-visual-label b {
    display:none;
  }

  .product-visual-shell iframe {
    border-radius:0;
  }
}

@media (max-width: 430px) {
  .product-visual-shell {
    height:370px;
  }
}

/* Wider product canvases, tighter page rhythm and clearer light-mode depth */
html:not([data-theme="dark"]) {
  --paper:#e9f2ec;
  --line:#bfd2c5;
}

html[data-theme="dark"] {
  --paper:#171819;
  --surface:#222425;
  --ink:#f5f8f6;
  --ink-2:#e6ece8;
  --muted:#b5bcb8;
  --line:#414543;
  --green-pale:#26302a;
  --glass:rgba(34,36,37,.74);
  --glass-strong:rgba(39,42,42,.90);
  --glass-soft:rgba(29,31,32,.72);
  --material-hover:rgba(47,50,50,.95);
  --nav-capsule:rgba(34,37,37,.90);
  --hero-stage:#191a1b;
  --hero-stage-edge:rgba(154,163,158,.18);
  --hero-line:rgba(154,163,158,.18);
}

html[data-theme="dark"] body {
  background:
    radial-gradient(circle at 12% 8%,rgba(173,178,175,.065),transparent 30rem),
    radial-gradient(circle at 88% 36%,rgba(37,206,123,.015),transparent 31rem),
    var(--paper);
}

html[data-theme="dark"] body::before {
  background-image:
    linear-gradient(rgba(177,185,180,.052) 1px,transparent 1px),
    linear-gradient(90deg,rgba(177,185,180,.052) 1px,transparent 1px);
}

html[data-theme="dark"] body::after {
  background:rgba(178,188,182,.025);
}

html[data-theme="dark"] .home-page .home-hero {
  background:
    radial-gradient(circle at 50% 82%,rgba(37,206,123,.045),transparent 30rem),
    radial-gradient(circle at 50% 8%,rgba(132,145,151,.08),transparent 24rem),
    linear-gradient(180deg,var(--hero-stage) 0%,var(--hero-stage) 80%,var(--paper) 100%);
}

html[data-theme="dark"] .home-page .home-hero::before {
  box-shadow:
    0 -18px 48px rgba(190,198,193,.025),
    0 -52px 100px rgba(37,206,123,.025),
    inset 0 20px 60px rgba(185,193,188,.02);
}

html[data-theme="dark"] .hero-video {
  opacity:.4;
  filter:grayscale(.68) saturate(.72) contrast(1.2) brightness(.78);
}

html[data-theme="dark"] .hero-video-wash {
  background:
    linear-gradient(180deg,rgba(23,24,25,.48) 0%,rgba(23,24,25,.24) 46%,rgba(23,24,25,.55) 100%),
    radial-gradient(circle at 50% 41%,transparent 0 20rem,rgba(23,24,25,.12) 36rem,rgba(23,24,25,.58) 58rem),
    radial-gradient(ellipse at 50% 74%,rgba(37,206,123,.045),transparent 35rem);
}

html[data-theme="dark"] .hero-focus-blur {
  border-color:rgba(185,193,188,.1);
  background:
    radial-gradient(circle at 50% 44%,transparent 0 48%,rgba(185,193,188,.025) 66%,transparent 75%),
    radial-gradient(circle at 50% 50%,rgba(37,206,123,.025),transparent 64%);
  box-shadow:inset 0 0 100px rgba(185,193,188,.025),0 0 130px rgba(0,0,0,.18);
}

html[data-theme="dark"] .hero-focus-blur::before {
  border-color:rgba(185,193,188,.075);
}

html[data-theme="dark"] .hero-focus-blur::after {
  border-color:rgba(185,193,188,.05);
}

html[data-theme="dark"] .section.alt,
html[data-theme="dark"] .trust-rail {
  background:#202223;
}

html[data-theme="dark"] .product-showcase-section {
  background:#1b1d1e;
}

html[data-theme="dark"] .product-demo,
html[data-theme="dark"] .product-showcase {
  border-color:#424746;
  background-color:#222425;
}

html[data-theme="dark"] .page-hero .visual {
  border-color:transparent;
  background-color:transparent;
}

body:has(.page-hero):not(.home-page),
.page-solutions {
  --max:1360px;
}

.solution-product-page {
  --max:1460px;
}

.solution-product-page .product-hero,
.oqtrix-page .product-hero {
  min-height:760px;
  padding:126px 0 58px;
  background-color:color-mix(in srgb,var(--paper) 84%,var(--green-pale));
}

.solution-product-page .product-hero::before,
.oqtrix-page .product-hero::before {
  opacity:1;
  background-image:
    linear-gradient(rgba(7,140,82,.105) 1px,transparent 1px),
    linear-gradient(90deg,rgba(7,140,82,.105) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(to bottom,#000 0 82%,transparent 100%);
}

.solution-product-page .product-hero::after,
.oqtrix-page .product-hero::after {
  background:
    radial-gradient(circle at 88% 18%,rgba(124,242,173,.24),transparent 25rem),
    radial-gradient(circle at 8% 80%,rgba(11,191,105,.14),transparent 29rem);
}

html[data-theme="dark"] .solution-product-page .product-hero,
html[data-theme="dark"] .oqtrix-page .product-hero {
  background-color:#191b1b;
  background-image:none;
}

html[data-theme="dark"] .solution-product-page .product-hero::before,
html[data-theme="dark"] .oqtrix-page .product-hero::before {
  background-image:
    linear-gradient(rgba(179,187,182,.052) 1px,transparent 1px),
    linear-gradient(90deg,rgba(179,187,182,.052) 1px,transparent 1px);
}

html[data-theme="dark"] .solution-product-page .product-hero::after,
html[data-theme="dark"] .oqtrix-page .product-hero::after {
  background:
    radial-gradient(circle at 88% 18%,rgba(124,242,173,.045),transparent 25rem),
    radial-gradient(circle at 8% 80%,rgba(177,185,180,.045),transparent 29rem);
}

.solution-product-page .product-hero-grid,
.oqtrix-page .product-hero-grid,
.solution-product-page .oqtrix-hero-grid,
.solution-product-page .tracefold-hero-grid,
.solution-product-page .ptaas-hero-grid {
  grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
  gap:clamp(34px,4vw,64px);
}

.solution-product-page .product-hero-copy,
.oqtrix-page .product-hero-copy {
  min-width:0;
}

.solution-product-page .product-hero h1,
.oqtrix-page .product-hero h1 {
  max-width:790px;
  font-size:clamp(3.45rem,4.8vw,5.15rem);
  text-wrap:balance;
}

.solution-product-page .product-hero .lead,
.oqtrix-page .product-hero .lead {
  max-width:720px;
  margin-top:22px;
  margin-bottom:26px;
}

.solution-product-page .product-hero-line,
.oqtrix-page .product-hero-line {
  margin-top:19px;
}

.product-visual-shell {
  height:clamp(560px,42vw,700px);
  min-height:0;
}

.oqtrix-product-visual,
.adversyn-product-visual,
.tracefold-product-visual {
  width:calc(100% + 24px);
  margin-inline:-12px;
}

.ptaas-hero-art {
  width:100%;
  min-height:620px;
}

.ptaas-hero-art > img {
  width:min(100%,540px);
  max-height:500px;
}

.ptaas-float-a {
  right:1%;
}

.ptaas-operator {
  left:2%;
}

.solution-product-page .product-demo-section,
.oqtrix-page .product-demo-section {
  padding:64px 0;
}

.solution-product-page .product-showcase-section,
.oqtrix-page .product-showcase-section {
  padding:64px 0 70px;
}

.solution-product-page .section,
.oqtrix-page .section {
  padding:72px 0;
}

.page-solutions .page-hero {
  min-height:0;
  padding:132px 0 68px;
}

.page-solutions .page-hero-grid {
  gap:38px;
}

.page-solutions .visual-row {
  min-height:150px;
}

body:not(.home-page) > main > .section {
  padding-top:78px;
  padding-bottom:78px;
}

@media (max-width: 1120px) {
  .solution-product-page .product-hero,
  .oqtrix-page .product-hero {
    min-height:0;
    padding:132px 0 60px;
  }

  .product-visual-shell {
    width:min(900px,100%);
    height:clamp(540px,68vw,680px);
    margin-inline:auto;
  }

  .ptaas-hero-art {
    width:min(760px,100%);
    min-height:560px;
    margin-inline:auto;
  }
}

@media (max-width: 680px) {
  .solution-product-page .product-hero,
  .oqtrix-page .product-hero {
    padding:112px 0 44px;
  }

  .solution-product-page .product-hero h1,
  .oqtrix-page .product-hero h1 {
    font-size:clamp(2.75rem,13vw,4.1rem);
  }

  .product-visual-shell {
    width:calc(100% + 16px);
    height:420px;
    margin-inline:-8px;
  }

  .ptaas-hero-art {
    min-height:410px;
  }

  .solution-product-page .product-demo-section,
  .oqtrix-page .product-demo-section,
  .solution-product-page .product-showcase-section,
  .oqtrix-page .product-showcase-section,
  .solution-product-page .section,
  .oqtrix-page .section {
    padding-top:54px;
    padding-bottom:58px;
  }

  .page-solutions .page-hero {
    padding:112px 0 52px;
  }

  .page-solutions .page-hero-grid {
    gap:30px;
  }
}

/* Product identity marks */
.product-identity {
  display:inline-flex;
  align-items:center;
  gap:13px;
  margin-bottom:24px;
}

.product-identity > img {
  width:58px;
  height:58px;
  flex:0 0 58px;
  object-fit:contain;
}

.product-identity-oqtrix > img {
  padding:3px;
}

.product-identity > span {
  display:grid;
  gap:4px;
}

.product-identity strong {
  font:700 1rem/1 Sora,sans-serif;
  letter-spacing:-.035em;
}

.product-identity small {
  color:var(--muted);
  font:650 .68rem/1.4 "JetBrains Mono",monospace;
  letter-spacing:.075em;
  text-transform:uppercase;
}

.solutions-menu-code.has-product-logo {
  padding:6px;
  border-color:color-mix(in srgb,currentColor 24%,var(--line));
  background:color-mix(in srgb,var(--surface) 82%,transparent);
}

.solutions-menu-code.has-product-logo img {
  width:100%;
  height:100%;
  object-fit:contain;
}

.product-card-logo {
  padding:7px;
  border-color:var(--line);
  background:color-mix(in srgb,var(--surface) 80%,transparent);
}

.product-card-logo img {
  width:100%;
  height:100%;
  object-fit:contain;
}

.product-index-logo {
  display:grid;
  justify-items:start;
  gap:7px;
}

.product-index-logo img {
  width:34px;
  height:34px;
  object-fit:contain;
}

.product-index-logo small {
  color:var(--green);
  font:600 .62rem/1.15 "JetBrains Mono",monospace;
  letter-spacing:.04em;
}

.showcase-product-mark-logo {
  padding:7px;
  border-color:var(--line);
  background:var(--surface);
}

.showcase-product-mark-logo img {
  width:100%;
  height:100%;
  object-fit:contain;
}

html[data-theme="dark"] .product-card-logo,
html[data-theme="dark"] .solutions-menu-code.has-product-logo,
html[data-theme="dark"] .showcase-product-mark-logo {
  background:#292c2c;
}

@media (max-width: 680px) {
  .product-identity {
    margin-bottom:19px;
  }

  .product-identity > img {
    width:50px;
    height:50px;
    flex-basis:50px;
  }
}

/* Pricing page: open scoping rail instead of a decorative hero card */
.page-pricing {
  --max:1360px;
}

body.page-pricing .pricing-hero {
  min-height:0;
  padding:146px 0 74px !important;
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at 82% 18%,rgba(11,191,105,.12),transparent 26rem),
    radial-gradient(circle at 9% 84%,rgba(124,242,173,.09),transparent 25rem);
  text-align:left !important;
}

body.page-pricing .pricing-hero::before,
body.page-pricing .pricing-hero::after {
  content:none !important;
  display:none !important;
}

body.page-pricing .pricing-hero-grid {
  grid-template-columns:1fr !important;
  gap:44px !important;
}

.pricing-hero-copy {
  max-width:1120px;
}

body.page-pricing .pricing-hero h1 {
  max-width:1080px !important;
  font-size:clamp(3.7rem,6.15vw,6.45rem);
  text-wrap:balance;
}

body.page-pricing .pricing-hero .lead {
  max-width:760px;
  margin:25px 0 30px !important;
}

.pricing-hero .hero-actions {
  justify-content:flex-start;
}

body.page-pricing .pricing-hero .hero-meta {
  justify-content:flex-start !important;
  margin-top:25px;
}

.pricing-scope-rail {
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  overflow:hidden;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:color-mix(in srgb,var(--surface) 56%,transparent);
  isolation:isolate;
}

.pricing-scope-rail::before {
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  right:-170px;
  bottom:-300px;
  z-index:-1;
  border:1px solid rgba(11,191,105,.14);
  border-radius:50%;
  box-shadow:0 0 0 58px rgba(11,191,105,.025),0 0 0 116px rgba(11,191,105,.014);
  pointer-events:none;
}

.pricing-scope-rail article {
  position:relative;
  min-height:180px;
  padding:30px clamp(24px,3vw,42px);
}

.pricing-scope-rail article + article {
  border-left:1px solid var(--line);
}

.pricing-scope-rail article:not(:last-of-type)::after {
  content:"→";
  position:absolute;
  top:34px;
  right:-12px;
  z-index:2;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--green);
  background:var(--paper);
  font:650 .66rem/1 "JetBrains Mono",monospace;
}

.pricing-scope-rail article > span {
  color:var(--green);
  font:650 .58rem/1 "JetBrains Mono",monospace;
  letter-spacing:.09em;
}

.pricing-scope-rail article strong {
  display:block;
  margin-top:25px;
  font:650 clamp(1.05rem,1.6vw,1.35rem)/1.25 Sora,sans-serif;
  letter-spacing:-.035em;
}

.pricing-scope-rail article p {
  max-width:330px;
  margin:10px 0 0;
  color:var(--muted);
  font-size:.75rem;
  line-height:1.55;
}

.pricing-scope-rail footer {
  grid-column:1 / -1;
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:14px clamp(24px,3vw,42px);
  border-top:1px solid var(--line);
  background:color-mix(in srgb,var(--paper) 62%,transparent);
}

.pricing-scope-rail footer span {
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--muted);
  font-size:.68rem;
  font-weight:650;
}

.pricing-scope-rail footer i {
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green-2);
  box-shadow:0 0 0 5px rgba(11,191,105,.1);
}

.pricing-scope-rail footer b {
  color:var(--green);
  font:650 .61rem/1.4 "JetBrains Mono",monospace;
  letter-spacing:.035em;
  text-align:right;
}

.page-pricing .price-grid {
  gap:18px;
}

.page-pricing .price-card {
  min-height:430px;
  padding:31px;
  border-radius:24px;
  box-shadow:none;
}

.page-pricing .price-card:hover {
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--green) 42%,var(--line));
  box-shadow:0 10px 24px rgba(5,48,25,.06);
}

.page-pricing .price-card.featured {
  border-width:1px;
  border-color:var(--green);
  box-shadow:inset 0 0 0 1px rgba(11,191,105,.1);
}

.page-pricing .price-card.featured::before {
  top:20px;
  right:20px;
  border-radius:999px;
}

.page-pricing .price-tag {
  border-radius:999px;
  padding:6px 9px;
}

html[data-theme="dark"] body.page-pricing .pricing-hero {
  background:
    radial-gradient(circle at 82% 18%,rgba(37,206,123,.035),transparent 26rem),
    radial-gradient(circle at 9% 84%,rgba(180,188,184,.03),transparent 25rem);
}

html[data-theme="dark"] .pricing-scope-rail {
  background:rgba(34,36,37,.62);
}

html[data-theme="dark"] .pricing-scope-rail footer {
  background:rgba(23,24,25,.58);
}

html[data-theme="dark"] .pricing-scope-rail article:not(:last-of-type)::after {
  background:#1b1d1d;
}

html[data-theme="dark"] .page-pricing .price-card:hover {
  box-shadow:0 10px 24px rgba(0,0,0,.16);
}

@media (max-width: 920px) {
  body.page-pricing .pricing-hero {
    padding:132px 0 64px !important;
  }

  .pricing-scope-rail {
    grid-template-columns:1fr;
  }

  .pricing-scope-rail article {
    min-height:0;
    padding:25px 24px;
  }

  .pricing-scope-rail article + article {
    border-top:1px solid var(--line);
    border-left:0;
  }

  .pricing-scope-rail article:not(:last-of-type)::after {
    content:"↓";
    top:auto;
    right:24px;
    bottom:-12px;
  }
}

@media (max-width: 680px) {
  body.page-pricing .pricing-hero {
    padding:112px 0 52px !important;
  }

  body.page-pricing .pricing-hero h1 {
    font-size:clamp(2.8rem,13vw,4.2rem);
  }

  .pricing-scope-rail footer {
    align-items:flex-start;
    flex-direction:column;
  }

  .pricing-scope-rail footer b {
    text-align:left;
  }

  .page-pricing .price-card {
    min-height:0;
    padding:26px;
  }
}

/* Cross-page visual QA: open heroes, neutral dark surfaces and resilient scaling */
.page-careers,
.page-company,
.page-partners,
.jobs-page {
  --max:1360px;
}

.page-hero-grid {
  gap:clamp(42px,5vw,76px);
}

.page-hero .visual {
  width:100%;
  min-width:0;
  min-height:clamp(470px,39vw,590px);
  padding:0;
  border:0;
  border-radius:0;
  background-color:transparent;
  box-shadow:none;
  transform:none;
}

.page-hero .visual::before {
  inset:9%;
  border-color:rgba(7,140,82,.16);
  background:radial-gradient(circle,rgba(11,191,105,.09),rgba(11,191,105,.025) 58%,transparent 72%);
}

.page-bounty .visual {
  min-height:clamp(500px,42vw,620px);
  background-image:url("assets/Hacker-bro.svg");
  background-size:min(96%,650px) auto;
}

.page-solutions .visual {
  background-image:url("assets/Artificial intelligence-pana.svg");
  background-size:min(78%,520px) auto;
}

.page-careers .visual {
  background-image:url("assets/Programmer-bro.svg");
  background-size:min(96%,640px) auto;
}

.page-partners .visual {
  width:100%;
  min-height:clamp(470px,39vw,590px);
  aspect-ratio:auto;
  justify-self:stretch;
  border-radius:0;
  background-image:url("assets/Webinar-pana.svg");
  background-size:min(100%,660px) auto;
  box-shadow:none;
}

.page-company .visual {
  min-height:clamp(500px,42vw,620px);
  background-image:url("assets/Innovation-amico.svg");
  background-size:min(94%,640px) auto;
}

.page-company .page-hero-grid > div:first-child {
  padding-left:0;
}

html[data-theme="dark"] {
  --paper:#17191a;
  --surface:#222526;
  --ink:#f5f7f6;
  --ink-2:#e7ece9;
  --muted:#b2bbb6;
  --line:#3d4240;
  --green-pale:#252e29;
  --glass:rgba(34,37,38,.76);
  --glass-strong:rgba(39,42,43,.91);
  --glass-soft:rgba(30,32,33,.74);
  --material-hover:rgba(47,50,51,.96);
  --nav-capsule:rgba(35,38,39,.92);
}

html[data-theme="dark"] body {
  background:
    radial-gradient(circle at 12% 8%,rgba(184,191,187,.055),transparent 31rem),
    radial-gradient(circle at 88% 36%,rgba(37,206,123,.012),transparent 32rem),
    var(--paper);
}

html[data-theme="dark"] body::before {
  background-image:
    linear-gradient(rgba(181,189,184,.047) 1px,transparent 1px),
    linear-gradient(90deg,rgba(181,189,184,.047) 1px,transparent 1px);
}

html[data-theme="dark"] body::after {
  background:rgba(183,190,186,.018);
}

html[data-theme="dark"] .page-hero .visual {
  background-color:transparent;
  box-shadow:none;
  filter:saturate(.94) brightness(1.06);
}

html[data-theme="dark"] .page-hero .visual::before {
  border-color:rgba(184,192,187,.12);
  background:radial-gradient(circle,rgba(37,206,123,.035),rgba(183,191,186,.018) 58%,transparent 72%);
}

html[data-theme="dark"] .page-bounty .page-hero::before {
  border-color:rgba(185,193,188,.09);
  box-shadow:0 0 0 70px rgba(185,193,188,.018),0 0 0 140px rgba(37,206,123,.012);
}

html[data-theme="dark"] .section.alt,
html[data-theme="dark"] .trust-rail {
  background:#202223;
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .price-card,
html[data-theme="dark"] .quote,
html[data-theme="dark"] .table-wrap,
html[data-theme="dark"] .role,
html[data-theme="dark"] .proof-panel,
html[data-theme="dark"] .dark-band,
html[data-theme="dark"] .cta-shell,
html[data-theme="dark"] .job-card,
html[data-theme="dark"] .job-listing[open],
html[data-theme="dark"] .demo-form,
html[data-theme="dark"] .demo-aside {
  border-color:#404543;
  background-image:linear-gradient(145deg,rgba(255,255,255,.035),transparent 42%);
  background-color:rgba(34,37,38,.9);
}

html[data-theme="dark"] .dark-band,
html[data-theme="dark"] .proof-panel {
  background:
    radial-gradient(circle at 85% 110%,rgba(37,206,123,.045),transparent 27rem),
    linear-gradient(145deg,#242728,#1c1e1f);
}

html[data-theme="dark"] .cta-shell {
  color:var(--ink);
  background:
    radial-gradient(circle at 92% 125%,rgba(37,206,123,.055),transparent 24rem),
    linear-gradient(145deg,#272a29,#202322);
}

html[data-theme="dark"] .cta-shell .button {
  color:#fff;
}

html[data-theme="dark"] .form-field input,
html[data-theme="dark"] .form-field select,
html[data-theme="dark"] .form-field textarea {
  border-color:#444a47;
  background:#202324;
}

html[data-theme="dark"] .form-field input:focus,
html[data-theme="dark"] .form-field select:focus,
html[data-theme="dark"] .form-field textarea:focus {
  border-color:var(--green-2);
  background:#252829;
}

/* The jobs directory stays compact as the number of roles grows. */
.jobs-directory-grid {
  grid-template-columns:1fr;
  gap:28px;
}

.jobs-directory-aside {
  position:static;
  top:auto;
  display:grid;
  grid-template-columns:minmax(210px,.68fr) minmax(320px,1.2fr) auto;
  grid-template-rows:auto auto;
  align-items:center;
  gap:7px clamp(28px,5vw,76px);
  padding:24px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.jobs-directory-aside > span {
  grid-column:1;
  grid-row:1;
}

.jobs-directory-aside h2 {
  grid-column:1;
  grid-row:2;
  margin:4px 0 0;
}

.jobs-directory-aside p {
  grid-column:2;
  grid-row:1 / span 2;
  max-width:560px;
}

.jobs-directory-aside a {
  grid-column:3;
  grid-row:1 / span 2;
  justify-self:end;
  margin-top:0;
}

.job-listing[open] {
  margin-inline:0;
  padding-inline:28px;
  border-left:2px solid var(--green);
  border-radius:0;
  box-shadow:none;
}

.job-listing summary {
  min-height:122px;
}

.job-listing-body {
  padding:0 0 34px 78px;
}

.jobs-back,
.jobs-hero .eyebrow {
  display:flex;
  width:max-content;
}

.nav-cta {
  min-width:102px;
  flex:0 0 auto;
  white-space:nowrap;
}

.listing-intro {
  max-width:900px;
}

html[data-theme="dark"] .job-listing[open] {
  background-color:rgba(34,37,38,.54);
  box-shadow:none;
}

@media (max-width: 1120px) {
  .page-hero-grid,
  .page-bounty .page-hero-grid,
  .page-careers .page-hero-grid,
  .page-partners .page-hero-grid,
  .page-company .page-hero-grid {
    grid-template-columns:1fr !important;
    gap:34px;
  }

  .page-company .page-hero-grid > div:first-child {
    order:1;
  }

  .page-company .visual {
    order:2;
  }

  .page-hero .visual,
  .page-bounty .visual,
  .page-careers .visual,
  .page-partners .visual,
  .page-company .visual {
    width:min(760px,100%);
    min-height:540px;
    margin-inline:auto;
  }
}

@media (max-width: 820px) {
  .jobs-directory-aside {
    grid-template-columns:1fr auto;
  }

  .jobs-directory-aside > span,
  .jobs-directory-aside h2 {
    grid-column:1;
  }

  .jobs-directory-aside p {
    grid-column:1 / -1;
    grid-row:3;
    margin-top:8px;
  }

  .jobs-directory-aside a {
    grid-column:2;
    grid-row:1 / span 2;
  }
}

@media (max-width: 680px) {
  .page-hero .visual,
  .page-bounty .visual,
  .page-careers .visual,
  .page-partners .visual,
  .page-company .visual {
    width:100%;
    min-height:clamp(330px,88vw,440px);
    background-size:contain;
  }

  .page-hero .visual::before {
    inset:7%;
  }

  .jobs-directory-aside {
    display:block;
    padding:20px 0;
  }

  .jobs-directory-aside p {
    margin-top:10px;
  }

  .jobs-directory-aside a {
    margin-top:17px;
  }

  .job-listing[open] {
    margin-inline:0;
    padding-inline:12px;
  }

  .job-listing-body {
    padding-left:48px;
  }
}

/* Product marks and open-canvas illustration polish */
.product-identity {
  gap:15px;
}

.product-identity > img {
  width:68px;
  height:68px;
  flex-basis:68px;
}

.product-identity-oqtrix > img {
  padding:0;
  transform:scale(1.04);
}

.nav-links .solutions-menu a {
  grid-template-columns:48px minmax(0,1fr);
  min-height:65px;
}

.solutions-menu-code,
.solutions-menu-code.has-product-logo {
  width:48px;
  height:48px;
}

.solutions-menu-code.has-product-logo {
  padding:5px;
}

.product-card-logo {
  width:64px;
  height:64px;
  margin-bottom:40px;
  padding:5px;
}

#ptaas .card-icon {
  width:64px;
  height:64px;
  margin-bottom:40px;
}

.product-card-logo img {
  transform:scale(1.04);
}

.product-index-logo {
  gap:8px;
}

.product-index-logo img {
  width:48px;
  height:48px;
}

.product-row {
  grid-template-columns:96px .65fr 1.05fr auto;
  min-height:154px;
}

.showcase-product-mark-logo {
  width:52px;
  height:52px;
  margin-left:3px;
  padding:5px;
}

.ptaas-mark-image {
  filter:hue-rotate(290deg) saturate(.92);
}

.bug-bounty-mark {
  filter:sepia(.82) saturate(2.4) hue-rotate(82deg);
}

html[data-theme="dark"] .bug-bounty-mark {
  filter:sepia(.75) saturate(2.15) hue-rotate(82deg) brightness(1.18);
}

#oqtrix::before,
#adversyn::before,
#tracefold::before,
#ptaas::before,
#principles .card::before,
.page-careers .section.alt .card::before,
.product-row::after {
  display:none !important;
}

.home-page .main-hero-art::before,
.home-page .main-hero-art::after,
.page-bounty .visual::before,
.page-careers .visual::before,
.page-partners .visual::before,
.page-company .visual::before {
  display:none !important;
}

/* PTaaS pairs its copy with the architecture instead of leaving an empty desktop column. */
.ptaas-hero-grid,
.solution-product-page .ptaas-hero-grid {
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  align-items:center;
  gap:clamp(28px,3vw,52px);
}

.ptaas-hero .product-hero-copy {
  max-width:650px;
}

.ptaas-product-visual {
  width:100%;
  height:auto;
  aspect-ratio:1280 / 560;
  align-self:center;
  margin:24px 0 0;
}

.ptaas-product-visual::before {
  inset:-14% -4%;
  opacity:.22;
  background:
    radial-gradient(circle at 28% 48%,rgba(11,191,105,.32),transparent 32%),
    radial-gradient(circle at 72% 52%,rgba(140,147,255,.25),transparent 35%);
}

html[data-theme="dark"] .ptaas-product-visual::before {
  opacity:.34;
}

/* The four products solve different jobs, so compare decisions instead of feature parity. */
.solution-fit-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.solution-fit {
  min-width:0;
  padding:30px 26px 28px;
  border-left:1px solid var(--line);
  transition:background-color .22s ease;
}

.solution-fit:first-child {
  border-left:0;
}

.solution-fit:hover {
  background:color-mix(in srgb,var(--green-pale) 30%,transparent);
}

.solution-fit header {
  display:flex;
  align-items:center;
  gap:14px;
}

.solution-fit header > img {
  width:54px;
  height:54px;
  flex:0 0 54px;
  object-fit:contain;
}

.solution-fit header span {
  display:block;
  color:var(--green);
  font:650 .68rem/1.4 "JetBrains Mono",monospace;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.solution-fit h3 {
  margin:4px 0 0;
  font:650 1.48rem/1.12 Sora,sans-serif;
  letter-spacing:-.045em;
}

.solution-fit-prompt {
  min-height:126px;
  margin:24px 0 0;
  color:var(--ink);
  font-size:.96rem;
  font-weight:600;
  line-height:1.58;
}

.solution-fit dl {
  margin:10px 0 24px;
}

.solution-fit dl > div {
  min-height:114px;
  padding:16px 0;
  border-top:1px solid var(--line);
}

.solution-fit dt {
  color:var(--green);
  font:650 .68rem/1.4 "JetBrains Mono",monospace;
  letter-spacing:.055em;
  text-transform:uppercase;
}

.solution-fit dd {
  margin:7px 0 0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.56;
}

.solution-fit .text-link {
  font-size:.9rem;
}

html[data-theme="dark"] .solution-fit:hover {
  background:rgba(255,255,255,.025);
}

@media (max-width: 1120px) {
  .ptaas-hero-grid,
  .solution-product-page .ptaas-hero-grid {
    grid-template-columns:minmax(0,1fr);
    gap:18px;
  }

  .ptaas-hero .product-hero-copy {
    max-width:900px;
  }

  .ptaas-product-visual {
    width:100%;
    max-width:none;
    height:auto;
    margin:0;
  }

  .solution-fit-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .solution-fit:nth-child(odd) {
    border-left:0;
  }

  .solution-fit:nth-child(n+3) {
    border-top:1px solid var(--line);
  }
}

@media (max-width: 680px) {
  .product-identity > img {
    width:58px;
    height:58px;
    flex-basis:58px;
  }

  .solutions-menu-code,
  .solutions-menu-code.has-product-logo {
    width:38px;
    height:38px;
  }

  .solutions-menu-code.has-product-logo {
    padding:4px;
  }

  .nav-links .solutions-menu a {
    grid-template-columns:38px minmax(0,1fr);
    min-height:56px;
  }

  .product-row {
    grid-template-columns:60px 1fr auto;
  }

  .product-index-logo img {
    width:42px;
    height:42px;
  }

  .ptaas-product-visual {
    width:calc(100% + 16px);
    height:auto;
    margin:0 -8px -4px;
  }

  .solution-fit-grid {
    grid-template-columns:1fr;
  }

  .solution-fit,
  .solution-fit:nth-child(odd) {
    padding:25px 0;
    border-left:0;
  }

  .solution-fit:nth-child(n+2) {
    border-top:1px solid var(--line);
  }

  .solution-fit-prompt {
    min-height:0;
  }

  .solution-fit dl > div {
    min-height:0;
  }
}
