:root {
  color-scheme: dark;
  --black: #000000;
  --surface: #060609;
  --surface-raised: #0b0b10;
  --steel: #12131a;
  --ink: #f6f7f9;
  --muted: #a7abb5;
  --quiet: #747985;
  --line: rgba(203, 207, 218, 0.16);
  --line-strong: rgba(203, 207, 218, 0.28);
  --brand: #ff1745;
  --brand-bright: #ff5574;
  --brand-soft: rgba(255, 23, 69, 0.13);
  --cyan: #55d8ff;
  --amber: #ffc667;
  --violet: #ad88ff;
  --bio: #73e6ae;
  --max: 1200px;
  --reading: 790px;
  font-synthesis: none;
}

* { box-sizing: border-box; }

html {
  background: var(--black);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  scroll-behavior: smooth;
}

body {
  min-width: 300px;
  min-height: 100vh;
  margin: 0;
  background:
    linear-gradient(rgba(255, 23, 69, 0.024) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 23, 69, 0.024) 1px, transparent 1px),
    var(--black);
  background-size: 72px 72px;
}

body::before {
  position: fixed;
  z-index: -2;
  inset: 0;
  background:
    radial-gradient(circle at 24% 8%, rgba(255, 23, 69, 0.13), transparent 30%),
    radial-gradient(circle at 85% 55%, rgba(69, 42, 81, 0.08), transparent 32%);
  pointer-events: none;
  content: "";
}

a { color: inherit; }
img { max-width: 100%; }
h1, h2, h3, p, li { text-wrap: pretty; }

.skip-link {
  position: fixed;
  z-index: 100;
  top: 12px;
  left: 12px;
  padding: 11px 15px;
  color: #120006;
  background: var(--brand-bright);
  font-weight: 850;
  transform: translateY(-160%);
}
.skip-link:focus { transform: translateY(0); }

.ambient {
  position: absolute;
  z-index: -1;
  width: min(460px, 34vw);
  height: 460px;
  border-radius: 50%;
  background: var(--brand);
  filter: blur(130px);
  opacity: 0.1;
  pointer-events: none;
}
.ambient-one { top: -250px; right: 0; }
.ambient-two { top: 850px; left: -160px; background: var(--violet); opacity: .06; }

.masthead,
main,
footer {
  width: min(var(--max), calc(100% - 48px));
  margin-inline: auto;
}

.masthead {
  position: sticky;
  z-index: 20;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 86px;
  gap: 28px;
  border-bottom: 1px solid var(--line);
  background: #020204;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.34);
}

.brand {
  display: inline-flex;
  align-items: center;
  min-height: 56px;
  gap: 8px;
  color: var(--ink);
  font-size: 1rem;
  font-weight: 820;
  letter-spacing: 0.01em;
  text-decoration: none;
}

.brand-mark-image {
  width: 58px;
  height: 46px;
  object-fit: contain;
  filter: drop-shadow(0 0 12px rgba(255, 23, 69, .34));
}

.brand small {
  display: block;
  margin-top: 3px;
  color: var(--quiet);
  font: 650 0.55rem/1.15 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.site-nav,
.legal-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 24px;
  font: 730 0.66rem/1.2 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-nav > a,
.legal-links a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  color: var(--muted);
  text-decoration: none;
}

.site-nav > a:hover,
.site-nav > a:focus-visible,
.site-nav > a[aria-current="page"],
.legal-links a:hover,
.legal-links a:focus-visible { color: var(--brand-bright); }

a:focus-visible {
  outline: 2px solid var(--brand-bright);
  outline-offset: 4px;
}

.hero {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(330px, 0.6fr);
  gap: clamp(48px, 8vw, 104px);
  align-items: center;
  min-height: 710px;
  padding: 98px 0 110px;
  border-bottom: 1px solid var(--line);
}

.eyebrow,
.kicker {
  margin: 0 0 20px;
  color: var(--brand-bright);
  font: 760 0.65rem/1.45 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.eyebrow > span { display: inline-block; width: 24px; height: 1px; margin: 0 9px 3px 0; background: currentColor; box-shadow: 0 0 9px currentColor; }

h1 {
  max-width: 870px;
  margin: 0;
  font-size: clamp(3.7rem, 7.7vw, 7.25rem);
  font-weight: 590;
  line-height: 0.92;
  letter-spacing: -0.073em;
}

.hero-lede {
  max-width: 690px;
  margin: 31px 0 0;
  color: var(--muted);
  font-size: clamp(1rem, 1.5vw, 1.18rem);
  line-height: 1.75;
}

.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 38px; }
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 49px;
  gap: 25px;
  padding: 0 20px;
  border: 1px solid var(--line-strong);
  font: 800 0.66rem/1 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
}
.button-primary { border-color: var(--brand-bright); color: #120006; background: var(--brand-bright); box-shadow: 0 0 34px rgba(255, 23, 69, .19); }
.button-primary:hover { border-color: #ff7890; background: #ff7890; }
.button-secondary { color: var(--ink); background: rgba(255,255,255,.018); }
.button-secondary:hover { border-color: var(--brand-bright); color: var(--brand-bright); background: var(--brand-soft); }

.signal-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line-strong);
  background: linear-gradient(145deg, rgba(255, 23, 69, .052), rgba(4, 4, 7, .97) 55%);
  box-shadow: 0 34px 90px rgba(0,0,0,.62), inset 0 0 54px rgba(255,23,69,.025);
}
.signal-panel::after { position: absolute; top: -80px; right: -80px; width: 180px; height: 180px; border: 1px solid rgba(255,23,69,.18); border-radius: 50%; box-shadow: 0 0 70px rgba(255,23,69,.09); content: ""; }
.signal-top { display: flex; justify-content: space-between; padding: 18px 20px; border-bottom: 1px solid var(--line); color: var(--quiet); font: 700 .56rem/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .1em; }
.status { color: var(--brand-bright); }
.status i,
.product-status i { display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 10px currentColor; }
.signal-panel dl { margin: 0; }
.signal-panel dl div { display: grid; grid-template-columns: 42px 1fr; gap: 15px; padding: 22px 20px; border-bottom: 1px solid var(--line); }
.signal-panel dl div:last-child { border-bottom: 0; }
.signal-panel dt { color: var(--brand-bright); font: 700 .65rem/1.3 ui-monospace, SFMono-Regular, Menlo, monospace; }
.signal-panel dd { margin: 0; }
.signal-panel dd strong { display: block; margin-bottom: 5px; font-size: .9rem; }
.signal-panel dd span { color: var(--muted); font-size: .76rem; line-height: 1.5; }

.section-block { padding: 108px 0 116px; border-bottom: 1px solid var(--line); }
.section-heading { display: grid; grid-template-columns: 1.35fr .65fr; gap: 70px; align-items: end; margin-bottom: 48px; }
.section-heading h2,
.company-strip h2 { margin: 0; font-size: clamp(2.3rem, 4.7vw, 4.55rem); font-weight: 580; line-height: 1; letter-spacing: -.055em; }
.section-heading > p { margin: 0; color: var(--muted); font-size: .92rem; line-height: 1.7; }
.section-heading.compact { grid-template-columns: 1fr; }

.expertise-section { display: grid; grid-template-columns: minmax(260px,.7fr) minmax(0,1.3fr); gap: clamp(56px,8vw,110px); padding: 94px 0 100px; border-bottom: 1px solid var(--line); }
.expertise-intro { align-self: start; }
.expertise-intro h2 { max-width: 460px; margin: 0; font-size: clamp(2.2rem,4.3vw,4rem); font-weight: 580; line-height: 1; letter-spacing: -.052em; }
.expertise-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.expertise-grid article { min-height: 230px; padding: 25px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); background: linear-gradient(150deg,rgba(255,23,69,.035),rgba(255,255,255,.009) 46%); }
.expertise-grid article:nth-child(2) { background: linear-gradient(150deg,rgba(85,216,255,.035),rgba(255,255,255,.009) 46%); }
.expertise-grid article:nth-child(3) { background: linear-gradient(150deg,rgba(255,198,103,.032),rgba(255,255,255,.009) 46%); }
.expertise-grid article:nth-child(4) { background: linear-gradient(150deg,rgba(115,230,174,.035),rgba(255,255,255,.009) 46%); }
.expertise-grid article:nth-child(5) { background: linear-gradient(150deg,rgba(173,136,255,.035),rgba(255,255,255,.009) 46%); }
.expertise-grid article:nth-child(6) { background: linear-gradient(150deg,rgba(255,23,69,.035),rgba(255,255,255,.009) 46%); }
.expertise-grid span { color: var(--brand-bright); font: 700 .58rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; }
.expertise-grid article:nth-child(2) span { color: var(--cyan); }
.expertise-grid article:nth-child(3) span { color: var(--amber); }
.expertise-grid article:nth-child(4) span { color: var(--bio); }
.expertise-grid article:nth-child(5) span { color: var(--violet); }
.expertise-grid article:nth-child(6) span { color: var(--brand-bright); }
.expertise-grid h3 { margin: 34px 0 11px; font-size: 1.28rem; font-weight: 600; letter-spacing: -.025em; }
.expertise-grid p { margin: 0; color: var(--muted); font-size: .8rem; line-height: 1.68; }
.expertise-grid .expertise-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 8px; color: #c7cad1; font: 700 .58rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .05em; text-decoration-color: rgba(199,202,209,.42); text-underline-offset: 4px; text-transform: uppercase; }
.expertise-grid .expertise-link:hover,.expertise-grid .expertise-link:focus-visible { color: var(--brand-bright); text-decoration-color: currentColor; }

.platform-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.platform-grid-four { grid-template-columns: repeat(2,1fr); }
.platform-grid-five { grid-template-columns: repeat(6,minmax(0,1fr)); }
.platform-grid-five .product-card { grid-column: span 2; }
.platform-grid-five .product-card:nth-last-child(-n+2) { grid-column: span 3; }
.product-card {
  --accent: var(--cyan);
  --accent-rgb: 85,216,255;
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 540px;
  overflow: hidden;
  padding: 28px;
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  color: var(--ink);
  background: linear-gradient(155deg,rgba(var(--accent-rgb),.045),rgba(3,3,6,.97) 34%);
  text-decoration: none;
  transition: background 180ms ease, transform 180ms ease, border-color 180ms ease;
}
.product-card::before { position: absolute; inset: auto -80px -140px; height: 250px; border-radius: 50%; background: rgba(var(--accent-rgb),.07); filter: blur(55px); content: ""; }
.product-card:hover { z-index: 2; border-color: rgba(var(--accent-rgb),.72); background: linear-gradient(155deg,rgba(var(--accent-rgb),.09),rgba(3,3,6,.97) 40%); transform: translateY(-4px); box-shadow: 0 20px 70px rgba(var(--accent-rgb),.1); }
.product-markets { --accent: var(--amber); --accent-rgb: 255,198,103; }
.product-ai { --accent: var(--violet); --accent-rgb: 173,136,255; }
.product-bio { --accent: var(--bio); --accent-rgb: 115,230,174; }
.product-consilium { --accent: var(--brand-bright); --accent-rgb: 255,85,116; }
.card-top { display: flex; align-items: center; justify-content: space-between; }
.product-index { color: var(--accent); font: 700 .58rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .12em; }
.arrow { display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid var(--line); color: var(--accent); font-size: .88rem; }
.product-card:hover .arrow { border-color: var(--accent); background: rgba(var(--accent-rgb),.1); }
.product-card h3 { margin: 34px 0 14px; font-size: clamp(1.65rem,2.4vw,2.25rem); font-weight: 590; letter-spacing: -.04em; }
.product-card > p { margin: 0 0 22px; color: var(--muted); font-size: .86rem; line-height: 1.7; }
.product-card ul { display: grid; gap: 8px; margin: 0 0 28px; padding: 0; list-style: none; color: var(--quiet); font: 650 .61rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .04em; text-transform: uppercase; }
.product-card li::before { margin-right: 8px; color: var(--accent); content: "•"; }
.product-status { position: relative; z-index: 1; margin-top: auto; color: var(--accent); font: 700 .59rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.product-icon { display: flex; align-items: end; gap: 5px; width: 102px; height: 84px; margin-top: 35px; padding: 14px; border: 1px solid rgba(var(--accent-rgb),.24); background: rgba(var(--accent-rgb),.025); }
.product-icon i { width: 13px; height: 18px; background: rgba(var(--accent-rgb),.25); box-shadow: 0 0 12px rgba(var(--accent-rgb),.08); }
.product-icon i:nth-child(2) { height: 37px; }.product-icon i:nth-child(3) { height: 26px; }.product-icon i:nth-child(4) { height: 50px; background: var(--accent); box-shadow: 0 0 18px rgba(var(--accent-rgb),.35); }
.market-orbit { position: relative; width: 102px; height: 84px; margin-top: 35px; border: 1px solid rgba(var(--accent-rgb),.24); background: radial-gradient(circle,rgba(var(--accent-rgb),.12),transparent 48%); }
.market-orbit::before,.market-orbit::after { position: absolute; inset: 18px; border: 1px solid rgba(var(--accent-rgb),.22); border-radius: 50%; content: ""; }
.market-orbit::after { inset: 29px; background: var(--accent); box-shadow: 0 0 18px rgba(var(--accent-rgb),.45); }
.market-orbit span { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 8px var(--accent); }
.market-orbit span:nth-child(1) { top:15px; left:49px; }.market-orbit span:nth-child(2) { right:15px; bottom:20px; }.market-orbit span:nth-child(3) { bottom:13px; left:26px; }
.compendium-glyph { position: relative; display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; width: 102px; height: 84px; margin-top: 35px; padding: 14px; border: 1px solid rgba(var(--accent-rgb),.24); }
.compendium-glyph span { align-self: center; height: 6px; background: rgba(var(--accent-rgb),.42); box-shadow: 0 0 10px rgba(var(--accent-rgb),.2); }
.compendium-glyph span:nth-child(2) { height:22px; }.compendium-glyph span:nth-child(3) { height:12px; }.compendium-glyph span:nth-child(4) { height:30px; background:var(--accent); }.compendium-glyph span:nth-child(5) { height:15px; }
.pathway-glyph { position: relative; width: 102px; height: 84px; margin-top: 35px; border: 1px solid rgba(var(--accent-rgb),.24); background: radial-gradient(circle at 50% 50%,rgba(var(--accent-rgb),.1),transparent 52%); }
.pathway-glyph::before { position: absolute; inset: 17px 23px; border: 1px solid rgba(var(--accent-rgb),.48); border-radius: 50%; content: ""; }
.pathway-glyph::after { position: absolute; top: 41px; right: 5px; left: 5px; height: 1px; background: linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.55) 22%,rgba(var(--accent-rgb),.55) 78%,transparent); content: ""; }
.pathway-glyph span { position: absolute; z-index: 1; width: 7px; height: 7px; border: 1px solid var(--accent); border-radius: 50%; background: #050709; box-shadow: 0 0 10px rgba(var(--accent-rgb),.38); }
.pathway-glyph span:nth-child(1) { top: 12px; left: 47px; }.pathway-glyph span:nth-child(2) { top: 27px; right: 17px; }.pathway-glyph span:nth-child(3) { right: 21px; bottom: 18px; }.pathway-glyph span:nth-child(4) { bottom: 9px; left: 47px; }.pathway-glyph span:nth-child(5) { bottom: 22px; left: 17px; }.pathway-glyph span:nth-child(6) { top: 26px; left: 19px; }
.consilium-glyph { position: relative; display: grid; grid-template-columns: repeat(3,1fr); align-items: center; gap: 8px; width: 102px; height: 84px; margin-top: 35px; padding: 14px; border: 1px solid rgba(var(--accent-rgb),.24); background: radial-gradient(circle at center,rgba(var(--accent-rgb),.08),transparent 65%); }
.consilium-glyph::before,.consilium-glyph::after { position: absolute; top: 50%; height: 1px; background: rgba(var(--accent-rgb),.55); content: ""; }
.consilium-glyph::before { right: 50%; left: 19px; }.consilium-glyph::after { right: 19px; left: 50%; }
.consilium-glyph span { z-index: 1; display: block; width: 10px; height: 10px; margin: auto; border: 1px solid var(--accent); background: #08080d; box-shadow: 0 0 10px rgba(var(--accent-rgb),.22); transform: rotate(45deg); }
.consilium-glyph span:nth-child(2) { width: 18px; height: 18px; background: rgba(var(--accent-rgb),.2); box-shadow: 0 0 18px rgba(var(--accent-rgb),.35); }

.opensource-spotlight { position: relative; display: grid; grid-template-columns: minmax(0,.65fr) minmax(0,1.2fr) auto; gap: clamp(28px,5vw,70px); align-items: center; margin-top: 18px; padding: 31px; overflow: hidden; border: 1px solid rgba(255,85,116,.38); color: var(--ink); background: linear-gradient(115deg,rgba(255,23,69,.105),rgba(7,7,12,.94) 46%,rgba(173,136,255,.045)); text-decoration: none; }
.opensource-spotlight::after { position: absolute; top: -75px; right: 12%; width: 180px; height: 180px; border: 1px solid rgba(255,85,116,.12); border-radius: 50%; box-shadow: 0 0 60px rgba(255,23,69,.08),inset 0 0 45px rgba(255,23,69,.06); content: ""; }
.opensource-spotlight:hover,.opensource-spotlight:focus-visible { border-color: var(--brand-bright); background: linear-gradient(115deg,rgba(255,23,69,.15),rgba(7,7,12,.94) 48%,rgba(173,136,255,.07)); }
.opensource-spotlight .spotlight-code { color: var(--brand-bright); font: 760 .6rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .12em; }
.opensource-spotlight h3 { margin: 0 0 9px; font-size: clamp(1.55rem,2.7vw,2.4rem); font-weight: 600; letter-spacing: -.04em; }
.opensource-spotlight p { max-width: 680px; margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.7; }
.opensource-spotlight .spotlight-link { position: relative; z-index: 1; color: var(--brand-bright); font: 760 .62rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.bio-spotlight { margin: 0 0 92px; border-color: rgba(115,230,174,.38); background: linear-gradient(115deg,rgba(115,230,174,.1),rgba(7,7,12,.96) 46%,rgba(85,216,255,.045)); }
.bio-spotlight:hover,.bio-spotlight:focus-visible { border-color: var(--bio); background: linear-gradient(115deg,rgba(115,230,174,.15),rgba(7,7,12,.96) 48%,rgba(85,216,255,.07)); }
.bio-spotlight .spotlight-code,.bio-spotlight .spotlight-link { color: var(--bio); }
.bio-spotlight::after { border-color: rgba(115,230,174,.16); box-shadow: 0 0 60px rgba(115,230,174,.08),inset 0 0 45px rgba(115,230,174,.05); }

.utility-section { padding-top: 92px; }
.utility-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.utility-card { display: grid; grid-template-columns: 80px 1fr auto; gap: 24px; align-items: center; min-height: 155px; padding: 26px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); color: var(--ink); background: rgba(255,255,255,.012); text-decoration: none; }
.utility-card:hover { border-color: rgba(255,23,69,.62); background: var(--brand-soft); }
.utility-code { color: var(--brand-bright); font: 700 .61rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; }
.utility-card h3 { margin: 0 0 7px; font-size: 1.3rem; font-weight: 590; }
.utility-card p { margin: 0; color: var(--muted); font-size: .82rem; line-height: 1.55; }
.utility-card > span:last-child { color: var(--brand-bright); }

.company-strip { display: grid; grid-template-columns: .65fr 1.35fr auto; gap: 48px; align-items: center; padding: 90px 0; border-bottom: 1px solid var(--line); }
.company-strip > p { color: var(--brand-bright); font: 700 .61rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; }
.company-strip > p span { margin: 0 8px; color: var(--quiet); }
.company-strip h2 { font-size: clamp(2rem,3.6vw,3.45rem); }
.experiments-note { display: grid; grid-template-columns: 190px 1fr; gap: 28px; align-items: baseline; padding: 24px 0; border-bottom: 1px solid var(--line); color: var(--quiet); }
.experiments-note > span { font: 700 .55rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .12em; }
.experiments-note p { margin: 0; font-size: .67rem; line-height: 1.7; }
.experiments-note a { color: var(--muted); text-decoration-color: rgba(167,171,181,.42); text-underline-offset: 3px; }
.experiments-note a:hover { color: var(--brand-bright); }

/* Substantive company, portfolio, and methodology pages */
.page-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 38px 0 0; color: var(--quiet); font: 680 .59rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.page-breadcrumb a { color: var(--muted); text-decoration: none; }
.page-breadcrumb a:hover { color: var(--brand-bright); }
.page-breadcrumb span[aria-hidden="true"] { color: #4e515b; }
.article-hero { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(260px,.65fr); gap: clamp(48px,8vw,104px); align-items: end; padding: 86px 0 82px; border-bottom: 1px solid var(--line); }
.article-hero h1 { font-size: clamp(3.2rem,6.5vw,6.4rem); }
.article-deck { max-width: 700px; margin: 27px 0 0; color: var(--muted); font-size: clamp(1rem,1.6vw,1.17rem); line-height: 1.78; }
.article-meta { margin: 0; padding: 23px; border: 1px solid var(--line-strong); background: linear-gradient(145deg,rgba(255,23,69,.045),rgba(5,5,8,.96)); }
.article-meta div { display: grid; grid-template-columns: 92px 1fr; gap: 18px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.article-meta div:last-child { border-bottom: 0; }
.article-meta dt { color: var(--quiet); font: 700 .57rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.article-meta dd { margin: 0; color: var(--muted); font-size: .75rem; line-height: 1.5; }
.content-layout { display: grid; grid-template-columns: minmax(0,var(--reading)) minmax(230px,1fr); gap: clamp(52px,8vw,105px); padding: 76px 0 120px; }
.article-body h2 { margin: 58px 0 16px; color: var(--ink); font-size: clamp(1.6rem,2.8vw,2.2rem); font-weight: 620; letter-spacing: -.035em; }
.article-body h2:first-child { margin-top: 0; }
.article-body h3 { margin: 36px 0 12px; font-size: 1.15rem; font-weight: 680; }
.article-body [id], main section[id], main h2[id], main h3[id] { scroll-margin-top: 118px; }
.article-body p,.article-body li { color: var(--muted); font-size: .98rem; line-height: 1.88; }
.article-body > p:first-child { color: #c4c7ce; font-size: 1.08rem; }
.article-body ul,.article-body ol { padding-left: 1.25rem; }
.article-body li { margin-bottom: 9px; }
.article-body a,.prose a { color: var(--brand-bright); text-decoration-color: rgba(255,85,116,.48); text-underline-offset: 4px; }
.article-body strong,.prose strong { color: #d9dbe1; }
.article-aside { align-self: start; position: sticky; top: 115px; }
.aside-block { margin-bottom: 20px; padding: 22px; border: 1px solid var(--line); background: rgba(7,7,11,.82); }
.aside-block h2 { margin: 0 0 14px; color: var(--brand-bright); font: 760 .61rem/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; text-transform: uppercase; }
.aside-block p,.aside-block li { color: var(--quiet); font-size: .72rem; line-height: 1.7; }
.aside-block ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.aside-block a { color: var(--muted); text-decoration-color: rgba(167,171,181,.42); text-underline-offset: 3px; }
.boundary-note { margin: 34px 0; padding: 25px 27px; border-left: 3px solid var(--brand); background: linear-gradient(90deg,rgba(255,23,69,.09),rgba(255,255,255,.014)); }
.boundary-note strong { display: block; margin-bottom: 7px; color: var(--brand-bright); font: 760 .62rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; text-transform: uppercase; }
.boundary-note p { margin: 0; font-size: .83rem; }
.source-list { margin-top: 25px; padding-top: 20px; border-top: 1px solid var(--line); }
.source-list li { padding-left: 5px; font-size: .82rem; }
.source-list cite { color: #c7cad1; font-style: normal; }
.revision-note { margin-top: 56px; padding-top: 22px; border-top: 1px solid var(--line); color: var(--quiet) !important; font: 650 .7rem/1.7 ui-monospace,SFMono-Regular,Menlo,monospace !important; }

.index-grid,.method-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.index-card,.method-card { min-height: 300px; padding: 27px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); background: linear-gradient(150deg,rgba(255,23,69,.025),rgba(255,255,255,.008)); }
.index-card { display: flex; flex-direction: column; text-decoration: none; }
.index-card:hover { border-color: rgba(255,23,69,.65); background: var(--brand-soft); }
.index-card .card-code,.method-card .card-code { color: var(--brand-bright); font: 720 .58rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; }
.index-card h2,.method-card h2 { margin: 58px 0 13px; font-size: 1.48rem; font-weight: 610; letter-spacing: -.03em; }
.index-card p,.method-card p { margin: 0; color: var(--muted); font-size: .82rem; line-height: 1.72; }
.index-card .text-link { margin-top: auto; padding-top: 28px; color: var(--brand-bright); font: 720 .61rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.method-grid { grid-template-columns: repeat(2,1fr); }
.method-card { min-height: 260px; }
.method-card h2 { margin-top: 35px; }
.method-card a { color: var(--brand-bright); text-underline-offset: 4px; }

.metric-strip { display: grid; grid-template-columns: repeat(4,1fr); margin: 52px 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.metric-strip div { min-height: 135px; padding: 22px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); }
.metric-strip strong { display: block; margin-bottom: 19px; color: var(--brand-bright); font: 760 .6rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; text-transform: uppercase; }
.metric-strip span { color: var(--muted); font-size: .76rem; line-height: 1.55; }

/* Biochemistry learning library */
.learning-hero { grid-template-columns: minmax(0,1.16fr) minmax(330px,.84fr); align-items: center; padding-top: 76px; }
.learning-hero h1 { max-width: 760px; font-size: clamp(3.45rem,6.6vw,6.55rem); }
.learning-hero .article-deck { max-width: 760px; }
.learning-library-preview { position: relative; overflow: hidden; border: 1px solid rgba(115,230,174,.38); background: linear-gradient(145deg,rgba(115,230,174,.075),rgba(4,7,7,.97) 47%,rgba(85,216,255,.035)); box-shadow: 0 34px 90px rgba(0,0,0,.58),inset 0 0 62px rgba(115,230,174,.025); }
.learning-library-preview::after { position: absolute; top: -86px; right: -72px; width: 190px; height: 190px; border: 1px solid rgba(115,230,174,.17); border-radius: 50%; box-shadow: 0 0 70px rgba(115,230,174,.08); content: ""; }
.learning-preview-top { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 22px; padding: 17px 19px; border-bottom: 1px solid var(--line); color: var(--bio); font: 720 .53rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; }
.learning-preview-top span:last-child { color: var(--muted); white-space: nowrap; }
.learning-document-stack { position: relative; min-height: 285px; margin: 30px 30px 22px; }
.learning-document-stack > span { position: absolute; display: flex; flex-direction: column; justify-content: flex-end; width: min(230px,72%); height: 218px; padding: 23px; border: 1px solid rgba(115,230,174,.34); background: linear-gradient(155deg,rgba(115,230,174,.11),rgba(6,9,9,.98) 58%); box-shadow: 0 20px 46px rgba(0,0,0,.54); transform-origin: bottom center; }
.learning-document-stack > span:nth-child(1) { top: 22px; left: 2%; opacity: .68; transform: rotate(-7deg); }
.learning-document-stack > span:nth-child(2) { top: 14px; right: 2%; border-color: rgba(85,216,255,.3); opacity: .78; transform: rotate(7deg); }
.learning-document-stack > span:nth-child(3) { z-index: 2; top: 0; left: 50%; border-color: rgba(115,230,174,.62); background: linear-gradient(155deg,rgba(115,230,174,.15),rgba(5,8,8,.99) 58%); transform: translateX(-50%); }
.learning-document-stack i { position: absolute; top: 18px; left: 20px; color: var(--bio); font: normal 760 .57rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; }
.learning-document-stack b { color: var(--ink); font: 760 .76rem/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; }
.learning-document-stack small { margin-top: 8px; color: var(--quiet); font: 680 .48rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .07em; }
.learning-preview-data { margin: 0; border-top: 1px solid var(--line); }
.learning-preview-data div { display: grid; grid-template-columns: 92px 1fr; gap: 18px; padding: 13px 19px; border-bottom: 1px solid var(--line); }
.learning-preview-data div:last-child { border-bottom: 0; }
.learning-preview-data dt { color: var(--quiet); font: 700 .54rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.learning-preview-data dd { margin: 0; color: var(--muted); font-size: .72rem; line-height: 1.5; }

.learning-stat-strip { display: grid; grid-template-columns: repeat(4,1fr); border-bottom: 1px solid var(--line); border-left: 1px solid var(--line-strong); }
.learning-stat-strip div { min-height: 154px; padding: 24px; border-right: 1px solid var(--line-strong); background: linear-gradient(145deg,rgba(115,230,174,.035),rgba(255,255,255,.008)); }
.learning-stat-strip strong { display: block; margin-bottom: 18px; color: var(--bio); font: 660 clamp(1.75rem,3.2vw,2.65rem)/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: -.045em; }
.learning-stat-strip span { color: var(--muted); font-size: .75rem; line-height: 1.6; }

.learning-free-section { padding-top: 96px; }
.learning-resource-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.learning-resource-card { --learning-accent: var(--bio); --learning-rgb: 115,230,174; position: relative; display: flex; flex-direction: column; min-height: 495px; overflow: hidden; padding: 28px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); color: var(--ink); background: linear-gradient(155deg,rgba(var(--learning-rgb),.05),rgba(3,5,6,.98) 38%); text-decoration: none; transition: transform .18s ease,border-color .18s ease,background .18s ease; }
.learning-resource-card::after { position: absolute; right: -70px; bottom: -105px; width: 210px; height: 210px; border: 1px solid rgba(var(--learning-rgb),.1); border-radius: 50%; box-shadow: 0 0 48px rgba(var(--learning-rgb),.04); content: ""; }
.learning-resource-card:hover,.learning-resource-card:focus-visible { z-index: 1; border-color: rgba(var(--learning-rgb),.7); background: linear-gradient(155deg,rgba(var(--learning-rgb),.1),rgba(3,5,6,.98) 43%); transform: translateY(-4px); }
.resource-mechanisms { --learning-accent: var(--cyan); --learning-rgb: 85,216,255; }
.resource-cards { --learning-accent: var(--violet); --learning-rgb: 173,136,255; }
.learning-resource-index { color: var(--learning-accent); font: 730 .58rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; }
.learning-resource-card h3 { margin: 36px 0 13px; font-size: clamp(1.55rem,2.6vw,2.15rem); font-weight: 600; line-height: 1.04; letter-spacing: -.04em; }
.learning-resource-card p { margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.73; }
.learning-resource-link { position: relative; z-index: 1; display: inline-flex; align-items: center; min-height: 42px; margin-top: auto; padding-top: 25px; color: var(--learning-accent,var(--bio)); font: 740 .59rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .075em; text-transform: uppercase; }
.learning-map-glyph,.learning-mechanism-glyph,.learning-card-glyph { position: relative; width: 112px; height: 86px; margin-top: 39px; border: 1px solid rgba(var(--learning-rgb),.28); background: rgba(var(--learning-rgb),.025); }
.learning-map-glyph::before,.learning-map-glyph::after { position: absolute; content: ""; }
.learning-map-glyph::before { top: 16px; right: 18px; bottom: 16px; left: 18px; border: 1px solid rgba(var(--learning-rgb),.35); border-radius: 50%; }
.learning-map-glyph::after { top: 42px; right: 9px; left: 9px; height: 1px; background: rgba(var(--learning-rgb),.5); }
.learning-map-glyph i { position: absolute; z-index: 1; width: 7px; height: 7px; border: 1px solid var(--learning-accent); border-radius: 50%; background: #040606; box-shadow: 0 0 9px rgba(var(--learning-rgb),.35); }
.learning-map-glyph i:nth-child(1) { top: 10px; left: 52px; }.learning-map-glyph i:nth-child(2) { top: 28px; right: 14px; }.learning-map-glyph i:nth-child(3) { right: 22px; bottom: 12px; }.learning-map-glyph i:nth-child(4) { bottom: 14px; left: 19px; }.learning-map-glyph i:nth-child(5) { top: 25px; left: 14px; }
.learning-mechanism-glyph { display: flex; align-items: center; justify-content: center; gap: 8px; }
.learning-mechanism-glyph::before { position: absolute; right: 17px; left: 17px; height: 1px; background: rgba(var(--learning-rgb),.48); content: ""; }
.learning-mechanism-glyph i { z-index: 1; display: block; width: 11px; height: 11px; border: 1px solid var(--learning-accent); border-radius: 50%; background: #040606; box-shadow: 0 0 9px rgba(var(--learning-rgb),.26); }
.learning-mechanism-glyph i:nth-child(2) { width: 17px; height: 17px; background: rgba(var(--learning-rgb),.12); }
.learning-mechanism-glyph b { position: absolute; right: 13px; top: 10px; color: var(--learning-accent); font: 650 .72rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; }
.learning-card-glyph { border: 0; background: transparent; }
.learning-card-glyph i { position: absolute; top: 7px; left: 14px; width: 82px; height: 65px; border: 1px solid rgba(var(--learning-rgb),.46); background: linear-gradient(145deg,rgba(var(--learning-rgb),.1),#050508); box-shadow: 0 12px 30px rgba(0,0,0,.42); }
.learning-card-glyph i:nth-child(1) { opacity: .45; transform: rotate(-8deg); }.learning-card-glyph i:nth-child(2) { opacity: .65; transform: rotate(7deg); }.learning-card-glyph i:nth-child(3) { border-color: var(--learning-accent); transform: none; }
.learning-card-glyph i:nth-child(3)::before,.learning-card-glyph i:nth-child(3)::after { position: absolute; left: 15px; height: 1px; background: rgba(var(--learning-rgb),.5); content: ""; }
.learning-card-glyph i:nth-child(3)::before { top: 23px; width: 49px; }.learning-card-glyph i:nth-child(3)::after { top: 34px; width: 34px; }

.learning-bundle-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.learning-bundle-card { display: flex; flex-direction: column; min-height: 375px; padding: 31px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); background: linear-gradient(150deg,rgba(115,230,174,.035),rgba(255,255,255,.008)); }
.learning-bundle-card > span { color: var(--bio); font: 730 .58rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; }
.learning-bundle-card h3 { margin: 50px 0 14px; font-size: clamp(1.7rem,3vw,2.45rem); font-weight: 600; line-height: 1.04; letter-spacing: -.042em; }
.learning-bundle-card p { max-width: 510px; margin: 0; color: var(--muted); font-size: .86rem; line-height: 1.75; }
.learning-bundle-card ul { display: grid; gap: 8px; margin: auto 0 0; padding: 32px 0 0; list-style: none; color: var(--quiet); font: 650 .59rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .045em; text-transform: uppercase; }
.learning-bundle-card li::before { margin-right: 8px; color: var(--bio); content: "•"; }
.learning-bundle-complete { border-color: rgba(115,230,174,.35); background: linear-gradient(145deg,rgba(115,230,174,.1),rgba(4,7,7,.97) 54%,rgba(85,216,255,.035)); }
.learning-bundle-complete .button { align-self: flex-start; margin-top: auto; }
.learning-calculus-callout { display: grid; grid-template-columns: minmax(180px,.6fr) minmax(0,1fr) auto; gap: clamp(28px,5vw,66px); align-items: center; margin-top: 18px; padding: 30px; border: 1px solid rgba(173,136,255,.34); color: var(--ink); background: linear-gradient(115deg,rgba(173,136,255,.08),rgba(6,5,9,.96) 48%); text-decoration: none; }
.learning-calculus-callout:hover,.learning-calculus-callout:focus-visible { border-color: var(--violet); background: linear-gradient(115deg,rgba(173,136,255,.13),rgba(6,5,9,.96) 50%); }
.learning-calculus-code { color: var(--violet); font: 730 .58rem/1.55 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; }
.learning-calculus-callout h3 { margin: 0 0 9px; font-size: clamp(1.45rem,2.6vw,2.2rem); font-weight: 600; letter-spacing: -.04em; }
.learning-calculus-callout p { max-width: 700px; margin: 0; color: var(--muted); font-size: .83rem; line-height: 1.68; }
.learning-calculus-callout .learning-resource-link { --learning-accent: var(--violet); margin: 0; padding: 0; white-space: nowrap; }

.learning-mcat-section { position: relative; display: grid; grid-template-columns: minmax(240px,.65fr) minmax(0,1.35fr); gap: clamp(48px,8vw,100px); align-items: center; margin: 22px 0; padding: clamp(46px,7vw,78px); overflow: hidden; border: 1px solid rgba(85,216,255,.38); background: linear-gradient(125deg,rgba(85,216,255,.1),rgba(4,7,9,.97) 48%,rgba(115,230,174,.055)); }
.learning-mcat-section::after { position: absolute; right: -110px; bottom: -150px; width: 310px; height: 310px; border: 1px solid rgba(85,216,255,.12); border-radius: 50%; box-shadow: 0 0 80px rgba(85,216,255,.06); content: ""; }
.learning-mcat-marker { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3,1fr); align-items: center; min-height: 168px; border: 1px solid rgba(85,216,255,.25); background: radial-gradient(circle,rgba(85,216,255,.08),transparent 63%); }
.learning-mcat-marker::before { position: absolute; right: 18px; left: 18px; height: 1px; background: rgba(85,216,255,.43); content: ""; }
.learning-mcat-marker span { z-index: 1; display: grid; width: 54px; height: 54px; place-items: center; margin: auto; border: 1px solid rgba(85,216,255,.6); border-radius: 50%; color: var(--cyan); background: #05090b; font: 720 .71rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; box-shadow: 0 0 22px rgba(85,216,255,.11); }
.learning-mcat-section > div:last-child { position: relative; z-index: 1; }
.learning-mcat-section h2 { margin: 0; max-width: 690px; font-size: clamp(2.15rem,4.5vw,4.2rem); font-weight: 590; line-height: 1; letter-spacing: -.052em; }
.learning-mcat-section p:not(.eyebrow) { max-width: 750px; margin: 24px 0 0; color: var(--muted); font-size: .94rem; line-height: 1.78; }
.learning-mcat-links { display: flex; flex-wrap: wrap; gap: 14px 26px; margin-top: 28px; }
.learning-mcat-links a { display: inline-flex; align-items: center; min-height: 40px; color: var(--cyan); font: 730 .6rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .07em; text-underline-offset: 4px; text-transform: uppercase; }

.learning-workflow ol { display: grid; grid-template-columns: repeat(4,1fr); margin: 0; padding: 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); list-style: none; }
.learning-workflow li { min-height: 265px; padding: 26px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); background: rgba(255,255,255,.01); }
.learning-workflow li > span { color: var(--bio); font: 730 .58rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; }
.learning-workflow li div { margin-top: 61px; }
.learning-workflow strong { display: block; margin-bottom: 11px; font-size: 1.08rem; font-weight: 640; }
.learning-workflow p { margin: 0; color: var(--muted); font-size: .78rem; line-height: 1.68; }
.learning-final-cta { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 60px; align-items: center; margin-bottom: 24px; padding: clamp(42px,7vw,72px); border: 1px solid rgba(115,230,174,.36); background: linear-gradient(115deg,rgba(115,230,174,.11),rgba(5,8,8,.97) 54%,rgba(85,216,255,.04)); }
.learning-final-cta h2 { margin: 0; font-size: clamp(2.2rem,4.7vw,4.45rem); font-weight: 590; line-height: 1; letter-spacing: -.052em; }
.learning-final-cta p:not(.eyebrow) { max-width: 700px; margin: 19px 0 0; color: var(--muted); font-size: .88rem; line-height: 1.72; }
.learning-final-cta p a { color: var(--bio); text-decoration-color: rgba(115,230,174,.45); text-underline-offset: 4px; }
.learning-final-cta .hero-actions { justify-content: flex-end; margin: 0; }
.learning-home-spotlight { margin: 18px 0 0; }

/* Published browser-extension directory */
.extension-hero h1 { max-width: 890px; font-size: clamp(3.25rem,6.7vw,6.5rem); }
.extension-collection { padding-bottom: 28px; }
.extension-collection + .extension-collection { padding-top: 88px; }
.extension-collection-last { padding-bottom: 116px; }
.extension-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.extension-card { position: relative; display: flex; flex-direction: column; min-height: 310px; padding: 27px; overflow: hidden; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); color: var(--ink); background: linear-gradient(150deg,rgba(255,23,69,.025),rgba(255,255,255,.008)); text-decoration: none; }
.extension-card::after { position: absolute; right: -45px; bottom: -65px; width: 145px; height: 145px; border: 1px solid rgba(255,85,116,.09); border-radius: 50%; box-shadow: 0 0 36px rgba(255,23,69,.045); content: ""; transition: border-color .2s ease,box-shadow .2s ease; }
.extension-card:hover,.extension-card:focus-visible { border-color: rgba(255,23,69,.65); background: linear-gradient(150deg,rgba(255,23,69,.09),rgba(255,255,255,.012)); }
.extension-card:hover::after,.extension-card:focus-visible::after { border-color: rgba(255,85,116,.26); box-shadow: 0 0 45px rgba(255,23,69,.1); }
.extension-code { position: relative; z-index: 1; color: var(--brand-bright); font: 720 .57rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; }
.extension-card h3 { position: relative; z-index: 1; margin: 54px 0 13px; max-width: 290px; font-size: clamp(1.35rem,2.1vw,1.75rem); font-weight: 610; letter-spacing: -.035em; }
.extension-card p { position: relative; z-index: 1; margin: 0; color: var(--muted); font-size: .83rem; line-height: 1.72; }
.extension-link { position: relative; z-index: 1; margin-top: auto; padding-top: 30px; color: var(--brand-bright); font: 720 .59rem/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .075em; text-transform: uppercase; }
.extension-grid-single { grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1fr); }
.extension-grid-single .extension-card { grid-column: 1/2; }
.extension-verification-note { margin: 26px 0 0; color: var(--quiet); font: 660 .61rem/1.7 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .045em; }

/* Consilium project page */
.consilium-hero { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(270px,.65fr); gap: clamp(48px,8vw,104px); align-items: end; padding: 92px 0 88px; border-bottom: 1px solid var(--line); }
.consilium-hero h1 { max-width: 800px; font-size: clamp(3.8rem,7.5vw,7.1rem); }
.consilium-hero .article-deck { max-width: 760px; }
.consilium-license-note { margin: 20px 0 0; color: var(--quiet); font: 680 .59rem/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .055em; text-transform: uppercase; }
.consilium-meta { position: relative; overflow: hidden; }
.consilium-meta::before { position: absolute; top: -80px; right: -70px; width: 180px; height: 180px; border: 1px solid rgba(255,85,116,.18); border-radius: 50%; box-shadow: 0 0 65px rgba(255,23,69,.12); content: ""; }

.consilium-stage { padding: 100px 0 16px; }
.consilium-stage-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,.62fr); gap: 50px; align-items: end; margin-bottom: 40px; }
.consilium-stage-heading h2 { max-width: 690px; font-size: clamp(2.3rem,4.7vw,4.5rem); }
.consilium-stage-heading > p { max-width: 500px; margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.78; }
.consilium-window { overflow: hidden; border: 1px solid rgba(255,85,116,.32); background: rgba(3,3,6,.96); box-shadow: 0 34px 95px rgba(0,0,0,.62),inset 0 0 80px rgba(255,23,69,.025); }
.consilium-window-bar,.consilium-window-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 19px; color: var(--quiet); background: rgba(255,255,255,.018); font: 720 .57rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; }
.consilium-window-bar { border-bottom: 1px solid var(--line); }
.route-live { color: var(--brand-bright); }.route-live i { display: inline-block; width: 6px; height: 6px; margin-right: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 10px currentColor; }
.consilium-route-map { display: grid; grid-template-columns: minmax(155px,.7fr) minmax(90px,.35fr) minmax(190px,.9fr) minmax(90px,.35fr) minmax(170px,.75fr); align-items: stretch; min-height: 235px; padding: 38px; }
.route-request,.route-selection,.route-candidates { display: flex; flex-direction: column; justify-content: center; padding: 23px; border: 1px solid var(--line-strong); background: linear-gradient(145deg,rgba(255,255,255,.022),rgba(3,3,6,.94)); }
.route-selection { border-color: rgba(255,85,116,.58); background: linear-gradient(145deg,rgba(255,23,69,.12),rgba(3,3,6,.95)); box-shadow: 0 0 38px rgba(255,23,69,.08); }
.route-request > span,.route-selection > span,.route-candidates > span { margin-bottom: 18px; color: var(--quiet); font: 740 .54rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .11em; }
.route-selection > span { color: var(--brand-bright); }
.route-request strong,.route-selection strong { font-size: clamp(1rem,1.8vw,1.35rem); font-weight: 620; letter-spacing: -.025em; }
.route-request small,.route-selection small { margin-top: 8px; color: var(--quiet); font-size: .65rem; line-height: 1.5; }
.route-candidates { gap: 8px; }.route-candidates > span { margin-bottom: 8px; }.route-candidates strong { padding: 7px 9px; border-left: 1px solid var(--line-strong); color: var(--muted); font: 670 .63rem/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; }
.route-path { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; color: var(--brand-bright); }
.route-path i { height: 1px; background: currentColor; box-shadow: 0 0 8px currentColor; opacity: .58; }.route-path span { padding: 0 7px; font: 720 .5rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.route-path-secondary { color: var(--quiet); }
.consilium-window-foot { justify-content: flex-start; gap: clamp(24px,6vw,80px); border-top: 1px solid var(--line); font-size: .52rem; }

.consilium-fact-strip { display: grid; grid-template-columns: repeat(4,1fr); padding: 72px 0 0; border-left: 1px solid var(--line-strong); }
.consilium-fact-strip div { min-height: 132px; padding: 22px; border-top: 1px solid var(--line-strong); border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); }
.consilium-fact-strip strong { display: block; margin-bottom: 18px; color: var(--brand-bright); font: 760 .61rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .1em; text-transform: uppercase; }
.consilium-fact-strip span { color: var(--muted); font-size: .77rem; line-height: 1.6; }

.consilium-overview { padding-bottom: 82px; }
.consilium-capability-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.consilium-capability-grid article { display: flex; flex-direction: column; min-height: 555px; padding: 28px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); background: linear-gradient(155deg,rgba(255,23,69,.04),rgba(3,3,6,.97) 36%); }
.capability-index { color: var(--brand-bright); font: 730 .58rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .12em; }
.consilium-capability-grid h3 { margin: 35px 0 14px; font-size: clamp(1.55rem,2.4vw,2.2rem); font-weight: 590; letter-spacing: -.04em; }
.consilium-capability-grid p { margin: 0 0 24px; color: var(--muted); font-size: .84rem; line-height: 1.76; }
.consilium-capability-grid ul { display: grid; gap: 9px; margin: auto 0 0; padding: 0; list-style: none; color: var(--quiet); font: 660 .59rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .035em; text-transform: uppercase; }
.consilium-capability-grid li::before { margin-right: 8px; color: var(--brand-bright); content: "•"; }
.local-glyph,.cli-glyph,.api-glyph { display: flex; align-items: center; justify-content: center; width: 102px; height: 84px; margin-top: 36px; border: 1px solid rgba(255,85,116,.25); background: rgba(255,23,69,.025); }
.local-glyph { gap: 7px; }.local-glyph i { display: block; width: 14px; height: 36px; border: 1px solid rgba(255,85,116,.42); background: rgba(255,23,69,.08); }.local-glyph i:nth-child(2) { height: 52px; border-color: var(--brand-bright); box-shadow: 0 0 16px rgba(255,23,69,.2); }
.cli-glyph span { color: var(--brand-bright); font: 720 1.15rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; text-shadow: 0 0 15px rgba(255,23,69,.42); }
.api-glyph { position: relative; gap: 9px; }.api-glyph::before { position: absolute; right: 15px; left: 15px; height: 1px; background: rgba(255,85,116,.45); content: ""; }.api-glyph i { z-index: 1; display: block; width: 10px; height: 10px; border: 1px solid var(--brand-bright); border-radius: 50%; background: #07070b; box-shadow: 0 0 11px rgba(255,23,69,.22); }

.profile-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.profile-grid div { min-height: 145px; padding: 24px; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); background: rgba(255,255,255,.01); }
.profile-grid strong { display: block; margin-bottom: 18px; color: var(--ink); font-size: .92rem; font-weight: 640; }
.profile-grid span { color: var(--quiet); font-size: .7rem; line-height: 1.55; }
.profile-grid div:nth-child(2),.profile-grid div:nth-child(3),.profile-grid div:nth-child(7) { background: linear-gradient(145deg,rgba(255,23,69,.055),rgba(255,255,255,.008)); }
.profile-grid div:nth-child(2) strong,.profile-grid div:nth-child(3) strong,.profile-grid div:nth-child(7) strong { color: var(--brand-bright); }

.consilium-content { border-top: 1px solid var(--line); }
.consilium-support { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 50px; align-items: center; margin-bottom: 36px; padding: 56px; border: 1px solid rgba(255,85,116,.34); background: linear-gradient(120deg,rgba(255,23,69,.11),rgba(5,5,9,.96) 58%,rgba(173,136,255,.045)); }
.consilium-support h2 { max-width: 700px; font-size: clamp(2rem,4vw,3.7rem); }
.consilium-support p:not(.eyebrow) { max-width: 750px; margin: 18px 0 0; color: var(--muted); font-size: .88rem; line-height: 1.75; }

.prose { width: min(var(--reading),calc(100% - 48px)); margin: 0 auto; padding: 48px 0 120px; }
.prose .page-breadcrumb { margin: 0 0 66px; }
.prose .eyebrow { margin-bottom: 18px; }
.prose h1 { margin-bottom: 42px; font-size: clamp(3.3rem,7vw,6.4rem); }
.prose h2 { margin: 54px 0 16px; color: var(--ink); font-size: clamp(1.35rem,2.4vw,1.9rem); font-weight: 610; letter-spacing: -.025em; }
.prose p,.prose li { color: var(--muted); font-size: .98rem; line-height: 1.85; }
.prose > p:first-of-type:not(.eyebrow) { font-size: 1.1rem; }
.prose ul { padding-left: 1.2rem; }
.prose li { margin-bottom: 8px; }
.contact-card { margin-top: 38px; padding: 28px; border: 1px solid var(--line-strong); background: linear-gradient(135deg,rgba(255,23,69,.065),rgba(4,4,7,.96)); box-shadow: inset 0 0 35px rgba(255,23,69,.03); }
.contact-card strong { display: block; margin-bottom: 9px; color: var(--brand-bright); font: 800 .62rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .12em; }
.contact-card p { margin: 0; }
.minor-note { margin-top: 54px; padding-top: 20px; border-top: 1px solid var(--line); color: var(--quiet) !important; font-size: .75rem !important; }
.minor-note a { color: var(--muted); text-decoration-color: rgba(167,171,181,.4); }

footer { display: grid; grid-template-columns: 1fr auto auto; gap: 36px; align-items: center; padding: 40px 0 54px; color: var(--quiet); font: 650 .61rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .07em; }
.footer-identity { display: flex; align-items: center; gap: 10px; }
.footer-mark { width: 44px; height: 34px; object-fit: contain; filter: drop-shadow(0 0 9px rgba(255,23,69,.28)); }
.footer-brand { color: var(--ink); font-weight: 900; text-decoration: none; letter-spacing: .13em; }
footer p { margin: 5px 0 0; color: var(--quiet); font-size: .6rem; letter-spacing: .03em; }

@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) {
  .masthead { background: linear-gradient(180deg,rgba(5,5,8,.91),rgba(2,2,4,.78)); -webkit-backdrop-filter: blur(18px) saturate(112%); backdrop-filter: blur(18px) saturate(112%); }
  .signal-panel,.article-meta,.aside-block { -webkit-backdrop-filter: blur(12px) saturate(108%); backdrop-filter: blur(12px) saturate(108%); }
}

@media (max-width: 1020px) {
  .masthead { align-items: flex-start; padding: 18px 0; }
  .site-nav { justify-content: flex-end; gap: 14px 18px; }
  .hero,.article-hero { grid-template-columns: minmax(0,1fr); min-height: 0; }
  .signal-panel,.article-meta { max-width: 650px; }
  .platform-grid,.index-grid { grid-template-columns: 1fr; }
  .platform-grid-five .product-card,.platform-grid-five .product-card:nth-last-child(-n+2) { grid-column: auto; }
  .opensource-spotlight { grid-template-columns: minmax(0,.5fr) minmax(0,1fr); }
  .opensource-spotlight .spotlight-link { grid-column: 2; }
  .product-card { min-height: 430px; }
  .section-heading { grid-template-columns: 1fr; gap: 24px; }
  .expertise-section { grid-template-columns: 1fr; gap: 46px; }
  .company-strip { grid-template-columns: 1fr; gap: 25px; }
  .content-layout { grid-template-columns: minmax(0,1fr); }
  .article-aside { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
  .aside-block { margin: 0; }
  .consilium-hero { grid-template-columns: minmax(0,1fr); }
  .consilium-meta { max-width: 650px; }
  .consilium-route-map { grid-template-columns: 1fr 70px 1fr; }
  .route-path-secondary { display: none; }
  .route-candidates { grid-column: 1/-1; display: grid; grid-template-columns: repeat(3,1fr); margin-top: 18px; }
  .route-candidates > span { grid-column: 1/-1; }
  .consilium-capability-grid { grid-template-columns: 1fr; }
  .consilium-capability-grid article { min-height: 430px; }
  .profile-grid { grid-template-columns: repeat(2,1fr); }
  .extension-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .extension-grid-single { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .learning-hero { grid-template-columns: minmax(0,1fr); }
  .learning-library-preview { max-width: 650px; }
  .learning-stat-strip { grid-template-columns: repeat(2,1fr); }
  .learning-stat-strip div:nth-child(-n+2) { border-bottom: 1px solid var(--line-strong); }
  .learning-resource-grid { grid-template-columns: 1fr; }
  .learning-resource-card { min-height: 410px; }
  .learning-calculus-callout { grid-template-columns: minmax(180px,.55fr) minmax(0,1fr); }
  .learning-calculus-callout .learning-resource-link { grid-column: 2; }
  .learning-mcat-section { grid-template-columns: 1fr; }
  .learning-mcat-marker { max-width: 520px; }
  .learning-workflow ol { grid-template-columns: repeat(2,1fr); }
  .learning-final-cta { grid-template-columns: 1fr; gap: 30px; }
  .learning-final-cta .hero-actions { justify-content: flex-start; }
}

@media (max-width: 760px) {
  .masthead,main,footer { width: min(100% - 30px,var(--max)); }
  .masthead {
    position: relative;
    top: auto;
    flex-direction: column;
    background: #020204;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .site-nav { width: 100%; justify-content: flex-start; }
  .hero { padding: 72px 0 82px; }
  h1 { font-size: clamp(3.2rem,16vw,5.7rem); }
  .section-block,.expertise-section { padding: 82px 0; }
  .utility-grid,.method-grid { grid-template-columns: 1fr; }
  .utility-card { grid-template-columns: 62px 1fr auto; }
  .company-strip { padding: 75px 0; }
  .experiments-note { grid-template-columns: 1fr; gap: 8px; }
  .article-hero { padding: 66px 0 68px; }
  .content-layout { padding: 58px 0 95px; }
  .article-aside { grid-template-columns: 1fr; }
  .metric-strip { grid-template-columns: 1fr 1fr; }
  .opensource-spotlight { grid-template-columns: 1fr; padding: 26px; }
  .opensource-spotlight .spotlight-link { grid-column: auto; }
  .consilium-hero { padding: 68px 0 70px; }
  .consilium-stage { padding-top: 78px; }
  .consilium-stage-heading { grid-template-columns: 1fr; gap: 22px; }
  .consilium-route-map { grid-template-columns: 1fr; gap: 13px; padding: 22px; }
  .route-path { display: none; }
  .route-candidates { grid-column: auto; grid-template-columns: 1fr; margin: 0; }
  .route-candidates > span { grid-column: auto; }
  .consilium-fact-strip { grid-template-columns: 1fr 1fr; }
  .consilium-support { grid-template-columns: 1fr; padding: 34px; }
  .extension-grid,.extension-grid-single { grid-template-columns: 1fr; }
  .extension-grid-single .extension-card { grid-column: auto; }
  .learning-bundle-grid { grid-template-columns: 1fr; }
  .learning-bundle-card { min-height: 345px; }
  .learning-calculus-callout { grid-template-columns: 1fr; }
  .learning-calculus-callout .learning-resource-link { grid-column: auto; }
  .learning-mcat-section { padding: 38px 28px; }
  .learning-workflow ol { grid-template-columns: 1fr; }
  .learning-workflow li { min-height: 220px; }
  .learning-workflow li div { margin-top: 44px; }
  .learning-final-cta { padding: 38px 28px; }
  footer { grid-template-columns: 1fr; gap: 24px; }
}

@media (max-width: 480px) {
  .brand-mark-image { width: 50px; height: 40px; }
  .site-nav { gap: 6px 13px; font-size: .57rem; letter-spacing: .055em; }
  .hero-actions { display: grid; }
  .button { justify-content: space-between; }
  .product-card { min-height: 470px; padding: 23px; }
  .utility-card { grid-template-columns: 1fr auto; }
  .utility-code { grid-column: 1/-1; }
  .expertise-grid { grid-template-columns: 1fr; }
  .article-hero h1 { font-size: clamp(2.45rem,13vw,3.2rem); }
  .article-meta div { grid-template-columns: 78px 1fr; }
  .metric-strip { grid-template-columns: 1fr; }
  .consilium-hero h1 { font-size: clamp(3rem,16vw,4.2rem); }
  .consilium-fact-strip,.profile-grid { grid-template-columns: 1fr; }
  .consilium-capability-grid article { min-height: 500px; padding: 23px; }
  .consilium-window-bar { align-items: flex-start; flex-direction: column; }
  .consilium-support { padding: 27px; }
  .learning-hero h1 { font-size: clamp(2.65rem,14vw,3.35rem); }
  .learning-preview-top { align-items: flex-start; flex-direction: column; }
  .learning-document-stack { min-height: 245px; margin-inline: 18px; }
  .learning-document-stack > span { width: 78%; height: 188px; padding: 19px; }
  .learning-stat-strip { grid-template-columns: 1fr; }
  .learning-stat-strip div { min-height: 135px; border-bottom: 1px solid var(--line-strong); }
  .learning-stat-strip div:last-child { border-bottom: 0; }
  .learning-resource-card { min-height: 455px; padding: 23px; }
  .learning-bundle-card { min-height: 380px; padding: 25px; }
  .learning-bundle-complete .button { align-self: stretch; }
  .learning-mcat-section { padding: 32px 22px; }
  .learning-mcat-marker { min-height: 130px; }
  .learning-mcat-marker span { width: 43px; height: 43px; }
  .learning-final-cta { padding: 32px 22px; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { transition-duration: .01ms !important; }
}

@media (forced-colors:active) {
  .brand-mark-image,.footer-mark { filter: none; }
  .button,.signal-panel,.product-card,.utility-card,.article-meta,.aside-block,.boundary-note,.opensource-spotlight,.consilium-window,.consilium-support,.extension-card,.learning-library-preview,.learning-resource-card,.learning-bundle-card,.learning-calculus-callout,.learning-mcat-section,.learning-final-cta { forced-color-adjust: auto; }
}
