/* Shared private-site visual language. Legible prose; original ASCII illustrations. */
@font-face {
  font-family: "BlockArrow Sans"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url("https://cdn.prod.website-files.com/63c75e43effd1af81e23e5e9/6ad626f70d52badbf6e2aaa5_ba-oct19-ibm-plex-sans-latin.woff2") format("woff2");
}
@font-face {
  font-family: "BlockArrow Roman"; font-style: normal; font-weight: 200 900; font-display: swap;
  src: url("https://cdn.prod.website-files.com/63c75e43effd1af81e23e5e9/6ad626f721caf0c95782b8c4_ba-oct19-source-serif-4-latin.woff2") format("woff2");
}
.ascii-site {
  --sans: "BlockArrow Sans", "Helvetica Neue", Arial, sans-serif;
  --roman: "BlockArrow Roman", Georgia, serif;
  background: #08090a; font-family: var(--sans);
}
/* Editorial Roman and a technical grotesk, rather than rounded geometric type.
   Existing logo artwork and the wordmark's established face remain untouched. */
.ascii-site .brand__word { font-family: "Space Grotesk", sans-serif; }
.ascii-site .nav__social, .ascii-site .nav__cta a {
  font-family: var(--sans); letter-spacing: 0; text-transform: none;
}
.ascii-site .btn { font-family: var(--sans); font-weight: 500; }
.ascii-site [data-magnetic] { transform: none !important; }
.ascii-site .brand__sub { display: none !important; }
.ascii-site .brand { gap: 10px; }
.film-page .pagehero > .container { display: block; }
.film-page .film-section { max-width: 1080px; margin-inline: auto; padding-bottom: 64px; }
.ascii-site > main, .ascii-site > footer { position: relative; z-index: 1; }
.ascii-atmosphere { position: fixed; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }
.ascii-site .ascii-art { isolation: isolate; }
.ascii-site .ascii-art canvas { height: 360px; }
.ascii-site .ascii-art figcaption { display: none; }
.ascii-site .ascii-fund-art canvas { height: 230px; }
.ascii-site .ascii-research-art canvas { height: 280px; }
.ascii-site .ascii-section-art canvas { height: 250px; }
.ascii-site .btn { border-radius: 2px; box-shadow: none; }
.ascii-site .eyebrow::before, .ascii-site .pagehero::before,
.ascii-site .pagehero::after, .ascii-site .page-hero::before,
.ascii-site .page-hero::after, .ascii-site .section::before { display: none !important; }
.ascii-site .reveal { opacity: 1 !important; transform: none !important; }
.ascii-site .pagehero, .ascii-site .page-hero { background: transparent !important; border: 0; padding-block: 52px 48px; }
.ascii-site .pagehero .container, .ascii-site .page-hero > .container {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.9fr);
  align-items: center; gap: 30px 64px;
}
.ascii-site .pagehero__inner { max-width: 620px !important; }
.ascii-site .pagehero .display, .ascii-site .page-hero__title {
  font: 400 clamp(36px,3.5vw,52px)/1.1 var(--roman) !important;
  letter-spacing: -.025em !important; max-width: 20ch !important; margin: 0;
}
.ascii-site .pagehero .lede, .ascii-site .page-hero__summary, .ascii-site .thesis-deck {
  font: 400 18px/1.62 var(--sans) !important; letter-spacing: 0; margin-top: 24px; max-width: 53ch;
}
.ascii-site .pagehero .eyebrow, .ascii-site .thesis-meta { display: none; }
.ascii-site .backlink { font: 400 14px/1.5 var(--sans); letter-spacing: 0; text-transform: none; margin-bottom: 24px; }
.ascii-site .pagehero__cta { margin-top: 24px; }
.ascii-site .ascii-art { min-width: 0; margin: 0; position: relative; }
.ascii-site .ascii-art canvas { display: none; width: 100%; height: 300px; }
.ascii-site .ascii-art.is-rendered canvas { display: block; }
.ascii-site .ascii-art.is-rendered .ascii-fallback { display: none; }
.ascii-site .ascii-fallback {
  color: #929c98; font: 12px/1.4 var(--mono); letter-spacing: 0;
  text-align: center; padding: 60px 0; margin: 0; overflow: hidden;
}
.ascii-site .ascii-art figcaption { display: flex; gap: 20px; align-items: center; justify-content: space-between; color: #aaaFA7; font: 400 14px/1.5 var(--sans); }
.ascii-site .ascii-art button { border: 0; background: transparent; color: #b6b9b0; padding: 12px 0; min-height: 44px; font: 400 13px/1.5 var(--sans); white-space: nowrap; }
.ascii-site .ascii-art button:focus-visible { outline: 2px solid #edece5; outline-offset: 4px; }
.ascii-site .ascii-art button[hidden] { display: none; }
.ascii-site .ascii-origin .container { border-top: 1px solid var(--ba-line-strong); padding-block: 46px 62px; }
.ascii-site .ascii-origin__inner { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 40px 64px; align-items: center; }
.ascii-site .ascii-origin__copy h2 { font: 500 clamp(28px,2.6vw,36px)/1.16 var(--sans); letter-spacing: -.028em; max-width: 24ch; margin: 0 0 24px; }
.ascii-site .ascii-origin__copy p { color: var(--text-2); font: 400 18px/1.65 var(--sans); max-width: 57ch; margin: 0; }
.ascii-site .ascii-storyline { display: flex; justify-content: space-between; gap: 20px; margin: 26px 0 0; padding: 18px 0; border-block: 1px solid var(--ba-line); color: var(--text-2); font: 400 15px/1.5 var(--sans); }
.ascii-site .ascii-storyline span:last-child { color: var(--ba-amber); }
.ascii-site .ascii-fund-art { grid-area: art; margin: 0 0 20px; }
.ascii-site .ascii-fund-art canvas { height: 175px; }
.ascii-site .ascii-fund-art .ascii-fallback { padding: 18px 0; }
.ascii-site .ascii-fund-art figcaption { font-size: 14px; color: #a2aaa4; }
.ascii-site section#strategies .os-card { grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); grid-template-areas: "top top" "name spec" "kick spec" "art spec" "diagram spec" "more spec"; }
.ascii-site section#strategies .os-architecture { grid-area: diagram; }
.ascii-site .ascii-research-art { margin-top: 28px; }
.ascii-site .ascii-research-art canvas { height: 190px; }
.ascii-site .ascii-research-art figcaption { max-width: 54ch; }
.ascii-site .section, .ascii-site .thesis-section { background: transparent !important; padding-block: 48px 64px; }
.ascii-site .section::after { display: none; }
.ascii-site .section .h2::before { display: none; }
.ascii-site .section .h2 { font-size: clamp(28px,2.6vw,36px); }
.ascii-site .ba-resp { background: transparent; border-radius: 0; }
.ascii-site .ba-resp__cell { background: transparent; }
.ascii-site .ba-resp__num { display: none; }
.ascii-site .thesis-section--ink { background: transparent; }
.ascii-site .thesis-kicker, .ascii-site .fund__term-label, .ascii-site .ba-contact dt {
  font: 400 14px/1.5 var(--sans) !important; letter-spacing: 0 !important; text-transform: none !important;
}
.ascii-site .fund__term-value { font: 400 17px/1.5 var(--sans); letter-spacing: 0; }
.ascii-site .fund__terms { border-radius: 0; background: transparent; }
.ascii-site .thesis-row p, .ascii-site .thesis-copy > p { font-size: 17px; }
.ascii-site .thesis-mandates { background: transparent; }
.ascii-site .thesis-mandate__label { font: 400 14px/1.5 var(--sans); letter-spacing: 0; text-transform: none; }
.ascii-site .ba-head__aside { display: none !important; }
.ascii-site .ba-head { display: block !important; }
.ascii-site .ba-team__plate-id { display: none; }
.ascii-site .ba-team__photo { border-radius: 0; }
.ascii-site .ba-team__bio { font-size: 17px; line-height: 1.6; }
.ascii-site .page-hero__title, .ascii-site .page-hero__summary { grid-column: 1; }
.ascii-site .page-hero .ascii-art { grid-column: 2; }
.ascii-site.ascii-quiet .pagehero > .container { display: block; }
.ascii-site.ascii-quiet .ascii-art { display: none; }
.ascii-site.ascii-quiet .eyebrow { display: inline; }
.ascii-site footer { border-top: 1px solid #242827; }
.ascii-site .ascii-footer-note { color: #939d96; font: 400 14px/1.5 var(--sans); margin: 0 0 20px; }
.ascii-site h1, .ascii-site .cipher-hero .display,
.ascii-site .ba-head__title, .ascii-site .section .h2,
.ascii-site section#strategies .os-card__name,
.ascii-site .thesis-section h2, .ascii-site .fund__section-title {
  font-family: var(--roman) !important; font-weight: 400 !important;
  letter-spacing: -.025em !important; line-height: 1.12 !important;
  font-optical-sizing: auto;
}
.ascii-site .cipher-hero .display { font-size: clamp(38px,3.9vw,56px) !important; max-width: 16ch !important; }
.ascii-site .ba-head__title { font-size: clamp(30px,2.8vw,40px) !important; }
.ascii-site section#strategies .os-card__name { font-size: clamp(28px,2.7vw,38px) !important; }
.ascii-site .lede, .ascii-site .os-card__kicker, .ascii-site .ba-head__sub,
.ascii-site .ed-team__bio, .ascii-site .ba-team__bio {
  font-family: var(--sans) !important; font-weight: 400 !important; letter-spacing: 0 !important;
}
@media (max-width: 880px) {
  .ascii-site .pagehero .container, .ascii-site .page-hero > .container, .ascii-site .ascii-origin__inner { grid-template-columns: 1fr; gap: 22px; }
  .ascii-site .pagehero .display, .ascii-site .page-hero__title { font-size: clamp(34px,8vw,44px) !important; }
  .ascii-site .page-hero .ascii-art { grid-column: auto; grid-row: auto; }
  .ascii-site .pagehero .ascii-art { max-width: 620px; width: 100%; }
  .ascii-site .ascii-art canvas { height: 250px; }
  .ascii-site .ascii-origin .container { padding-block: 38px 48px; }
  .ascii-site .ascii-origin__copy p { font-size: 17px; }
  .ascii-site section#strategies .os-card { grid-template-columns: 1fr; grid-template-areas: "top" "name" "kick" "art" "diagram" "spec" "more"; }
  .ascii-site .ascii-fund-art canvas { height: 175px; }
  .ascii-site .ascii-research-art canvas { height: 175px; }
  .ascii-site .ascii-storyline { flex-wrap: wrap; justify-content: start; gap: 8px 24px; }
}
@media (prefers-reduced-motion: reduce) { .ascii-site * { scroll-behavior: auto !important; } }
.ascii-site .ascii-art canvas { height: 360px; }
.ascii-site .ascii-fund-art canvas { height: 230px; }
.ascii-site .ascii-research-art canvas { height: 280px; }
.ascii-site .ascii-section-art canvas { height: 250px; }
@media (max-width:880px) {
  .ascii-site .ascii-art canvas { height: 280px; }
  .ascii-site .ascii-fund-art canvas { height: 200px; }
  .ascii-site .ascii-research-art canvas, .ascii-site .ascii-section-art canvas { height: 220px; }
}
