/* terminal.css — All styles scoped under .tw-terminal */

/* Self-hosted fonts — same files local + deployed */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/geist-variable.woff2') format('woff2');
}

@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url('/assets/fonts/jetbrains-mono-variable.woff2') format('woff2');
}

@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('/assets/fonts/lora-variable.woff2') format('woff2');
}

@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 400 700;
  font-display: swap;
  src: url('/assets/fonts/lora-variable-italic.woff2') format('woff2');
}


html {
  overflow-x: clip;
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* ==============================================
   RESET & CUSTOM PROPERTIES
============================================== */
.tw-terminal *, .tw-terminal *::before, .tw-terminal *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.tw-terminal {
  --tw-green:           #0B1F1A;
  --tw-green-hover:     #143028;
  --tw-bg-panel:        #FFFFFF;
  --tw-bg-light:        #FAFAF7;
  --tw-bg-pure:         #FFFFFF;
  --tw-text-light:      #FFFFFF;
  --tw-text-dark:       #0A0A0A;
  --tw-text-muted:      rgba(0, 0, 0, 0.55);
  --tw-text-muted-dark: rgba(0, 0, 0, 0.55);
  --tw-body-text:       #333333;
  --tw-body-leading:    1.32;
  --tw-body-size:       clamp(0.8125rem, 0.15rem + 1vw, 0.96875rem);
  --tw-deck-size:       clamp(0.90625rem, 0.2rem + 0.88vw, 1.03125rem);
  --tw-deck-leading:    1.47;
  --tw-deck-weight:     450;
  --tw-deck-color:      rgba(10, 10, 10, 0.66);
  --tw-deck-color-on-dark: rgba(255, 255, 255, 0.58);
  --tw-ui-size:         clamp(0.6875rem, 0.15rem + 0.92vw, 0.875rem);
  --tw-gold:            #C9A961;
  --tw-ticker-green:    #16A34A;
  --tw-gold-bright:     #E5C079;
  --tw-rule:            rgba(0, 0, 0, 0.08);
  --tw-rule-dark:       rgba(0, 0, 0, 0.08);
  --tw-mono:            'JetBrains Mono', 'IBM Plex Mono', ui-monospace, monospace;
  --tw-display:         'Lora', Georgia, serif;
  --tw-body-font:       'Geist', system-ui, sans-serif;
  --tw-radius:          8px;
  --tw-max-w:           1600px;
  --tw-pad:             clamp(1.5rem, 5.5vw, 8rem);
  --tw-masthead-pad:    clamp(1.15rem, 1.4vw, 1.6rem);
  --tw-grid-line:       rgba(0, 0, 0, 0.16);
  --tw-mono-label:      0.68rem;
  --tw-frame-gutter:    clamp(0.6rem, 1.5vw, 1.1rem);
  --tw-section-pad-y:   clamp(4.25rem, 12vw, 7.25rem);
  --tw-section-pad-y-half: calc(var(--tw-section-pad-y) * 0.65);
  --tw-pillar-green:    #10392E;

  margin: 0;
  font-family: var(--tw-body-font);
  font-size: var(--tw-body-size);
  line-height: 1.6;
  background-color: #FFFFFF;
  color: var(--tw-text-dark);
  max-width: 100%;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ==============================================
   LAYOUT UTILITIES
============================================== */
.tw-terminal .tt-container {
  max-width: var(--tw-max-w);
  margin-inline: auto;
  padding-inline: var(--tw-pad);
  min-width: 0;
}

.tw-terminal .tt-container.tt-container--shift-left {
  padding-inline-start: var(--tw-pad);
  padding-inline-end: var(--tw-pad);
}

/* Shared vertical rhythm — adjacent sections share one full pad between them */
.tw-terminal .tt-problem,
.tw-terminal .tt-value-prop,
.tw-terminal .tt-pillars,
.tw-terminal .tt-stack,
.tw-terminal .tt-depth-layer {
  padding-block: var(--tw-section-pad-y-half);
}

.tw-terminal .tt-depth-layer + .tt-by-numbers {
  margin-top: 0;
}

.tw-terminal .tt-dark-section {
  background-color: #FFFFFF;
  color: var(--tw-text-dark);
}

.tw-terminal .tt-light-section {
  background-color: var(--tw-bg-light);
  color: var(--tw-text-dark);
}

/* ==============================================
   TYPOGRAPHY
============================================== */
.tw-terminal .tt-h1 {
  font-family: var(--tw-display);
  font-size: clamp(3.125rem, 6.25vw, 5.75rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: var(--tw-green);
}

.tw-terminal .tt-h2 {
  font-family: var(--tw-display);
  font-size: clamp(2rem, 3.6vw, 3.15rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: var(--tw-text-dark);
}

.tw-terminal .tt-h2--dark {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-body {
  font-family: var(--tw-body-font);
  font-size: var(--tw-body-size);
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  line-height: var(--tw-body-leading);
  letter-spacing: -0.011em;
  color: var(--tw-body-text);
}

/* Section deck — sans standfirst / description copy under headlines */
.tw-terminal .tt-deck,
.tw-terminal .tt-body.tt-vp-deck,
.tw-terminal .tt-body.tt-stack-sub,
.tw-terminal .tt-body.tt-hero-sub,
.tw-terminal .tt-body.tt-problem-subhead,
.tw-terminal .tt-body.tt-problem-card-body,
.tw-terminal .tt-depth-body,
.tw-terminal .tt-pr-left .tt-pc-desc,
.tw-terminal .tt-pr-left .tt-pc-desc p,
.tw-terminal .tt-value-prop-left .tt-use-list--grid li,
.tw-terminal .tt-value-prop-left .tt-use-list--grid .tt-use-label,
.tw-terminal .tt-pr-left .tt-use-list--grid li,
.tw-terminal .tt-pr-left .tt-use-list--grid .tt-use-label {
  font-family: var(--tw-body-font);
  font-size: var(--tw-deck-size);
  font-weight: var(--tw-deck-weight);
  font-variation-settings: 'wght' var(--tw-deck-weight);
  line-height: var(--tw-deck-leading);
  letter-spacing: -0.014em;
  color: var(--tw-deck-color);
}

.tw-terminal .tt-body.tt-problem-subhead,
.tw-terminal .tt-body.tt-problem-card-body {
  color: var(--tw-deck-color-on-dark);
}

.tw-terminal .tt-mono-eyebrow {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 1.25rem;
}

.tw-terminal .tt-mono-eyebrow--muted { color: var(--tw-green); }
.tw-terminal .tt-mono-eyebrow--gold  { color: var(--tw-gold); }
.tw-terminal .tt-mono-eyebrow--dark  { color: var(--tw-green); }

/* ==============================================
   BUTTONS
============================================== */
.tw-terminal .tt-btn-gold {
  display: inline-flex;
  align-items: center;
  padding: 0.65rem 1.4rem;
  background-color: #0A0A0A;
  color: #FFFFFF;
  font-family: var(--tw-body-font);
  font-size: var(--tw-ui-size);
  font-weight: 600;
  line-height: 1;
  border: 1.5px solid transparent;
  border-radius: 0;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 150ms ease;
}

.tw-terminal .tt-btn-gold:hover {
  background-color: #1A1A1A;
}

/* Nav "Book a demo" — bright yellow with black outline + text */
.tw-terminal .tt-nav-right .tt-btn-gold {
  background-color: #EAC24A;
  color: #0A0A0A;
  border: 1.5px solid #0A0A0A;
}

.tw-terminal .tt-nav-right .tt-btn-gold:hover {
  background-color: #F2CE5C;
}

.tw-terminal .tt-btn-ghost {
  display: inline-flex;
  align-items: center;
  padding: 0.65rem 1.4rem;
  background: transparent;
  color: #0A0A0A;
  font-family: var(--tw-body-font);
  font-size: var(--tw-ui-size);
  font-weight: 500;
  line-height: 1;
  border: 1.5px solid #0A0A0A;
  border-radius: 0;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 150ms ease, color 150ms ease;
}

.tw-terminal .tt-btn-ghost:hover {
  background-color: #0A0A0A;
  color: #FFFFFF;
}

.tw-terminal .tt-btn-sm {
  padding: 0.55rem 1.1rem;
}

.tw-terminal .tt-btn-lg {
  padding: 0.85rem 1.8rem;
  font-size: 0.9rem;
}

.tw-terminal .tt-cta-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

/* ==============================================
   NAV
============================================== */
.tw-terminal .tt-nav {
  position: sticky;
  top: 0;
  z-index: 100;
  width: 100%;
  max-width: 100%;
  background-color: #FFFFFF;
  border-bottom: 1px solid var(--tw-grid-line);
  padding: 0;
  overflow-x: clip;
  transition: background-color 280ms ease, border-color 280ms ease;
}

.tw-terminal .tt-nav--muted {
  background-color: var(--tw-bg-light);
}

/* Inverted masthead — applied by JS when the nav is over a dark section.
   Overriding --tw-grid-line recolours the vertical rules + wordmark borders. */
.tw-terminal .tt-nav--dark {
  background-color: #0A0A0A;
  border-bottom-color: rgba(255, 255, 255, 0.14);
  --tw-grid-line: rgba(255, 255, 255, 0.14);
}

.tw-terminal .tt-nav--dark .tt-logo-img {
  filter: none;
}

.tw-terminal .tt-nav--dark .tt-logo-name {
  color: #FFFFFF;
}

.tw-terminal .tt-nav--dark .tt-nav-link {
  color: rgba(255, 255, 255, 0.62);
}

.tw-terminal .tt-nav--dark .tt-nav-link:hover,
.tw-terminal .tt-nav--dark .tt-nav-link.is-active {
  color: #FFFFFF;
}

.tw-terminal .tt-nav--dark .tt-btn-ghost {
  color: #FFFFFF;
  border-color: rgba(255, 255, 255, 0.42);
}

.tw-terminal .tt-nav--dark .tt-btn-ghost:hover {
  background: #FFFFFF;
  color: #0A0A0A;
  border-color: #FFFFFF;
}

.tw-terminal .tt-nav--dark .tt-hamburger span {
  background-color: #FFFFFF;
}

/* Vertical grid rules — outer gutter + inner content edge, both sides.
   Shared across nav / hero / video so the columns line up vertically. */
.tw-terminal .tt-nav::before,
.tw-terminal .tt-folio::before,
.tw-terminal .tt-hero::before,
.tw-terminal .tt-video-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: 1px 100%, 1px 100%, 1px 100%;
  /* Outer gutters (left + right) plus an optional interior spine that runs
     continuously through the masthead, folio and hero at the hero's column
     split, so the three bands line up as one broadsheet grid. The spine
     stays transparent unless a band opts in via --tt-grid-spine. */
  background-image:
    linear-gradient(var(--tw-grid-line), var(--tw-grid-line)),
    linear-gradient(var(--tw-grid-line), var(--tw-grid-line)),
    linear-gradient(var(--tt-grid-spine, transparent), var(--tt-grid-spine, transparent));
  background-position:
    0 0,
    100% 0,
    var(--tt-grid-split, 56%) 0;
}

/* Folio / dateline bar under the nav — date, live counters */
.tw-terminal .tt-folio {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 1rem;
  width: 100%;
  max-width: 100%;
  padding-block: 0.5rem;
  padding-inline: var(--tw-masthead-pad);
  background: #FFFFFF;
  border-bottom: 1px solid var(--tw-grid-line);
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--tw-text-muted);
  white-space: nowrap;
  overflow-x: clip;
  box-sizing: border-box;
  transition: background-color 280ms ease, border-color 280ms ease;
}

.tw-terminal .tt-folio--muted {
  background-color: var(--tw-bg-light);
}

.tw-terminal .tt-folio--dark {
  background-color: #0A0A0A;
  border-bottom-color: rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.48);
  --tw-grid-line: rgba(255, 255, 255, 0.14);
}

.tw-terminal .tt-folio--dark strong {
  color: var(--tw-ticker-green);
}

.tw-terminal .tt-folio-item:first-child { justify-self: start; }
.tw-terminal .tt-folio-center           { justify-self: center; }
.tw-terminal .tt-folio-item:last-child  { justify-self: end; }

/* Stock-ticker style counters — green with an up-triangle */
.tw-terminal .tt-folio strong {
  color: var(--tw-ticker-green);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

.tw-terminal .tt-folio .tt-ticker-up::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-right: 0.4em;
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
  border-bottom: 5px solid currentColor;
  vertical-align: 0.12em;
}

.tw-terminal .tt-nav-inner {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  width: 100%;
  min-width: 0;
  height: 64px;
  padding-right: var(--tw-masthead-pad);
  box-sizing: border-box;
}

.tw-terminal .tt-wordmark {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  text-decoration: none;
  flex-shrink: 0;
  align-self: stretch;
  justify-self: start;
  width: max-content;
  padding-inline: clamp(0.95rem, 1.8vw, 1.5rem);
  border-inline-end: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-logo-img {
  height: 18px;
  width: auto;
  /* Logo SVG is white; invert it to dark so it shows on the white nav */
  filter: invert(1);
  transition: filter 280ms ease;
}

.tw-terminal .tt-logo-name {
  font-family: var(--tw-display);
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--tw-text-dark);
  letter-spacing: -0.01em;
  transition: color 280ms ease;
}

.tw-terminal .tt-nav-right {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  flex-shrink: 0;
  justify-self: end;
}

.tw-terminal .tt-nav-links {
  display: flex;
  gap: 0.4rem;
}

.tw-terminal .tt-nav-link {
  display: inline-flex;
  align-items: center;
  font-family: var(--tw-body-font);
  font-size: var(--tw-ui-size);
  font-weight: 500;
  color: var(--tw-text-muted);
  text-decoration: none;
  padding: 0.4rem 0.7rem;
  border-radius: 3px;
  transition: color 150ms;
}

.tw-terminal .tt-nav-link:hover,
.tw-terminal .tt-nav-link.is-active {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 36px;
  height: 36px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}

.tw-terminal .tt-hamburger span {
  display: block;
  width: 100%;
  height: 1.5px;
  background-color: var(--tw-text-dark);
  border-radius: 2px;
}

/* ==============================================
   HERO — two-column: headline left, subhead right
============================================== */
.tw-terminal .tt-hero {
  padding-top: clamp(4rem, 8vh, 7rem);
  padding-bottom: clamp(2.5rem, 5vh, 4rem);
  position: relative;
  border-bottom: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-home-edition .tt-hero {
  padding: 0;
  border-bottom: none;
}

.tw-terminal .tt-home-edition .tt-hero.tt-light-section {
  border-bottom-color: color-mix(in srgb, var(--tw-grid-line) 65%, transparent);
}

.tw-terminal .tt-hero:has(+ .tt-video-section) {
  border-bottom: none;
}

/* Homepage edition — unified grid rules + aligned column */
.tw-terminal.tt-page-home,
.tw-terminal .tt-home-edition {
  --tt-edition-rule: var(--tw-grid-line);
}

.tw-terminal.tt-page-home,
.tw-terminal .tt-home-edition {
  background-color: var(--tw-bg-light);
}

.tw-terminal.tt-page-home .tt-nav {
  border-bottom: 1px solid var(--tt-edition-rule);
  background: var(--tw-bg-light);
}

/* Live bar — override base .tt-folio grid/ticker so it reads as its own band */
.tw-terminal .tt-folio.tt-home-live {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.35rem 1.35rem;
  width: 100%;
  max-width: var(--tw-max-w);
  margin-inline: auto;
  padding-block: 0.5rem;
  padding-inline: var(--tw-pad);
  background: var(--tw-bg-light);
  border-bottom: none;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: normal;
  text-transform: none;
  color: inherit;
  white-space: normal;
}

.tw-terminal.tt-page-home .tt-folio.tt-home-live .tt-ticker-up::before {
  display: none;
}

.tw-terminal .tt-home-live {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.35rem 1.35rem;
  width: 100%;
  max-width: var(--tw-max-w);
  margin-inline: auto;
  padding-block: 0.5rem;
  padding-inline: var(--tw-pad);
  background: var(--tw-bg-light);
}

.tw-terminal .tt-home-live::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 100vw;
  height: 1px;
  transform: translateX(-50%);
  background: var(--tt-edition-rule);
  pointer-events: none;
}

.tw-terminal .tt-home-live__label {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  flex-shrink: 0;
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #b91c1c;
}

.tw-terminal .tt-home-live__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}

.tw-terminal .tt-home-live__sep {
  color: rgba(10, 10, 10, 0.28);
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
}

.tw-terminal .tt-home-live__updates {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(10, 10, 10, 0.55);
  line-height: 1.4;
  white-space: nowrap;
}

.tw-terminal .tt-home-live__updates strong {
  color: rgba(10, 10, 10, 0.82);
  font-weight: 600;
}

.tw-terminal.tt-page-home .tt-nav,
.tw-terminal.tt-page-home .tt-folio {
  background: var(--tw-bg-light);
}

/* Graph-paper field — hero through logos (opaque panels float on top) */
.tw-terminal .tt-home-edition .tt-home-fold {
  --tt-hero-cell: clamp(40px, 3vw, 52px);
  background-color: var(--tw-bg-light);
  background-image:
    linear-gradient(to right, rgba(10, 10, 10, 0.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(10, 10, 10, 0.05) 1px, transparent 1px);
  background-size: var(--tt-hero-cell) var(--tt-hero-cell);
}

.tw-terminal .tt-home-edition .tt-home-fold .tt-light-section {
  background-color: transparent;
}

/* Continuous interior grid spine — the masthead, folio and hero share one
   vertical rule at the hero's column split so they read as a single grid. */
.tw-terminal.tt-page-home .tt-nav,
.tw-terminal.tt-page-home .tt-folio,
.tw-terminal .tt-home-edition .tt-hero {
  --tt-grid-split: 52%;
  --tt-grid-spine: transparent;
}

.tw-terminal .tt-home-edition .tt-home-media,
.tw-terminal .tt-home-edition .tt-home-logos {
  padding-inline: var(--tw-pad);
  background: transparent;
}

.tw-terminal .tt-home-media {
  padding-top: 0;
  padding-bottom: 0;
}

.tw-terminal .tt-home-media .tt-video-wrap {
  border-bottom: 1px solid var(--tt-edition-rule);
}

.tw-terminal .tt-home-media .tt-video-inner {
  gap: 0;
  padding-inline: 0;
  max-width: var(--tw-max-w);
  margin-inline: auto;
  width: 100%;
}

.tw-terminal .tt-home-logos {
  padding-top: clamp(1rem, 2vh, 1.75rem);
  padding-bottom: clamp(2.5rem, 4.5vw, 4rem);
}

.tw-terminal .tt-home-logos .tt-video-inner {
  gap: 0;
  padding-inline: 0;
  max-width: var(--tw-max-w);
  margin-inline: auto;
  width: 100%;
}

.tw-terminal .tt-home-edition .tt-logo-carousel-wrap {
  background: var(--tw-bg-pure);
  border: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-home-edition .tt-video-section.tt-home-media {
  padding-top: 0;
  border-bottom: none;
}

.tw-terminal .tt-home-edition .tt-video-section.tt-home-logos {
  padding-top: 0;
  padding-bottom: clamp(2.5rem, 4.5vw, 4rem);
  border-bottom: none;
}

.tw-terminal.tt-page-home .tt-folio::before,
.tw-terminal .tt-home-edition .tt-hero::before,
.tw-terminal .tt-home-edition .tt-video-section::before,
.tw-terminal.tt-page-home .tt-nav::before {
  display: none;
}

/* Content-column vertical rules — align live / hero / media.
   The masthead floats full-width, so it carries no side rules of its own;
   the framed content column begins at the folio below it. */
.tw-terminal.tt-page-home .tt-home-live {
  border-inline: 1px solid var(--tt-edition-rule);
  box-sizing: border-box;
}

.tw-terminal .tt-home-edition .tt-home-media .tt-video-inner,
.tw-terminal .tt-home-edition .tt-home-logos .tt-video-inner {
  border-inline: 1px solid var(--tt-edition-rule);
  box-sizing: border-box;
}

.tw-terminal .tt-home-edition .tt-home-media {
  position: relative;
  border-bottom: none;
}

.tw-terminal .tt-home-edition .tt-home-logos {
  position: relative;
  border-bottom: none;
}

.tw-terminal .tt-home-edition .tt-home-logos::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 100vw;
  height: 1px;
  transform: translateX(-50%);
  background: var(--tt-edition-rule);
  pointer-events: none;
}

.tw-terminal.tt-page-home .tt-nav.tt-nav--muted,
.tw-terminal.tt-page-home .tt-folio.tt-folio--muted {
  background: var(--tw-bg-light);
}

/* Hero — white panel sits on first graph-paper row */
.tw-terminal .tt-home-edition .tt-hero {
  padding: var(--tt-hero-cell) var(--tw-pad) clamp(1rem, 2vw, 1.5rem);
  background: transparent;
}

.tw-terminal .tt-hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "lead deck"
    "cta  cta";
  width: 100%;
  max-width: var(--tw-max-w);
  margin-inline: auto;
  border: 1px solid var(--tt-edition-rule, var(--tw-grid-line));
  background-color: var(--tw-bg-pure);
}

.tw-terminal .tt-home-edition .tt-hero-grid {
  border-color: var(--tt-edition-rule);
}

.tw-terminal .tt-hero-lead {
  grid-area: lead;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  text-align: left;
  padding: clamp(1.25rem, 2vw, 1.65rem) clamp(1.5rem, 2.5vw, 2.25rem) clamp(1.5rem, 2.5vw, 2rem);
  border-right: 1px solid var(--tt-edition-rule, var(--tw-grid-line));
}

.tw-terminal .tt-hero-grid .tt-hero-headline {
  margin: 0;
  padding: 0;
  width: 100%;
}

.tw-terminal .tt-hero-grid .tt-hero-headline__text {
  display: block;
  font-family: var(--tw-display);
  font-size: clamp(2.15rem, 3.1vw, 3.15rem);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.032em;
  color: rgba(10, 10, 10, 0.94);
  text-wrap: balance;
}

.tw-terminal .tt-hero-grid .tt-hero-headline em {
  font-style: italic;
  font-weight: 500;
}

.tw-terminal .tt-hero-headline[data-reveal] .tt-text-highlighter--draw {
  transform: translateX(-50%) rotate(-1.4deg);
  opacity: 1;
  transition: none;
  clip-path: inset(-10% 100% -10% 0);
}

.tw-terminal .tt-hero-headline .tt-text-highlighter-pen {
  position: absolute;
  left: 0;
  bottom: 0.02em;
  width: 0.42em;
  height: 0.42em;
  z-index: 2;
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(145deg, #c9a030 0%, #9a7416 100%);
  border-radius: 55% 45% 55% 15%;
  box-shadow: 0 0 0 1px rgba(154, 116, 22, 0.25);
  transform: translate(-20%, 15%) rotate(-28deg) scale(0.85);
}

.tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter-pen {
  animation: tt-hero-pen-travel 1.05s cubic-bezier(0.42, 0.02, 0.18, 1) forwards;
  animation-delay: calc(var(--delay, 0ms) + 520ms);
}

@keyframes tt-hero-pen-travel {
  0% {
    left: 0;
    opacity: 0;
    transform: translate(-30%, 20%) rotate(-28deg) scale(0.7);
  }
  8% {
    opacity: 1;
    transform: translate(-10%, 12%) rotate(-28deg) scale(0.9);
  }
  88% {
    opacity: 1;
  }
  100% {
    left: calc(100% - 0.15em);
    opacity: 0;
    transform: translate(-10%, 8%) rotate(-24deg) scale(0.75);
  }
}

.tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter--draw {
  animation: tt-hero-highlight-reveal 1.05s cubic-bezier(0.42, 0.02, 0.18, 1) forwards;
  animation-delay: calc(var(--delay, 0ms) + 520ms);
}

@keyframes tt-hero-highlight-reveal {
  to { clip-path: inset(-10% 0% -10% 0); }
}

.tw-terminal .tt-hero-headline .tt-text-highlighter--draw .tt-text-highlighter-edge {
  stroke-dasharray: none;
  stroke-dashoffset: 0;
  stroke-width: 2;
  opacity: 0.85;
}

.tw-terminal .tt-hero-headline .tt-text-highlighter--draw .tt-text-highlighter-body {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter--draw .tt-text-highlighter-edge,
.tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter--draw .tt-text-highlighter-body {
  animation: none;
}

.tw-terminal .tt-hero-grid .tt-body.tt-hero-sub {
  grid-area: deck;
  margin: 0;
  max-width: none;
  padding: clamp(1.25rem, 2vw, 1.65rem) clamp(1.5rem, 2.5vw, 2.25rem) clamp(1.5rem, 2.5vw, 2rem);
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
  text-wrap: pretty;
  background-color: var(--tw-bg-pure);
}

.tw-terminal .tt-hero-grid .tt-hero-cta {
  grid-area: cta;
  justify-content: flex-start;
  align-self: stretch;
  padding: clamp(1rem, 2vw, 1.35rem) clamp(1.5rem, 2.5vw, 2.25rem);
  border-top: 1px solid var(--tt-edition-rule, var(--tw-grid-line));
  background-color: var(--tw-bg-pure);
}

@media (max-width: 900px) {
  .tw-terminal.tt-page-home .tt-nav,
  .tw-terminal.tt-page-home .tt-folio,
  .tw-terminal .tt-home-edition .tt-hero {
    --tt-grid-spine: transparent;
  }

  /* Hero collapses to one column — lead, deck and CTA stack. */
  .tw-terminal .tt-home-edition .tt-hero {
    padding: var(--tt-hero-cell) clamp(1rem, 4vw, 1.25rem) clamp(0.85rem, 2vw, 1rem);
  }

  .tw-terminal .tt-hero-grid {
    grid-template-columns: 1fr;
    grid-template-areas:
      "lead"
      "deck"
      "cta";
  }

  .tw-terminal .tt-hero-lead {
    border-right: none;
    border-bottom: 1px solid var(--tt-edition-rule, var(--tw-grid-line));
    padding: clamp(1rem, 3vw, 1.35rem) clamp(1.15rem, 5vw, 1.75rem) clamp(1.35rem, 4vw, 1.75rem);
    text-align: center;
  }

  .tw-terminal .tt-hero-grid .tt-hero-headline__text {
    font-size: clamp(2.1rem, 7.5vw, 3rem);
    line-height: 1.1;
    white-space: normal;
    text-wrap: balance;
  }

  .tw-terminal .tt-hero-grid .tt-body.tt-hero-sub {
    max-width: none;
    margin-inline: 0;
    align-self: stretch;
    text-align: center;
    padding-block: clamp(1.15rem, 4vw, 1.5rem);
    padding-inline: clamp(1.15rem, 5vw, 1.75rem);
  }

  .tw-terminal .tt-hero-grid .tt-hero-cta {
    justify-content: center;
    padding-inline: clamp(1.15rem, 5vw, 1.75rem);
  }
}

@media (max-width: 640px) {
  .tw-terminal .tt-home-live {
    justify-content: center;
    text-align: center;
    gap: 0.45rem 0.85rem;
    padding-inline: clamp(1rem, 4vw, 1.25rem);
  }

  .tw-terminal .tt-home-live__updates {
    white-space: normal;
    text-align: center;
  }

  .tw-terminal .tt-hero-grid .tt-hero-headline__text {
    font-size: clamp(2rem, 8.5vw, 2.65rem);
  }

  .tw-terminal .tt-hero-grid .tt-hero-cta {
    flex-direction: column;
    align-items: center;
    gap: 0.65rem;
  }

  .tw-terminal .tt-hero-grid .tt-hero-cta .tt-btn-lg {
    width: min(100%, 18rem);
    justify-content: center;
  }
}

.tw-terminal .tt-hero-inner {
  position: relative;
  z-index: 1;
}

.tw-terminal .tt-hero-eyebrow {
  margin-bottom: 0;
  color: var(--tw-text-muted);
  letter-spacing: 0.18em;
}

.tw-terminal .tt-hero-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: clamp(1.65rem, 3vw, 2.25rem);
}

.tw-terminal .tt-hero .tt-h1 em,
.tw-terminal .tt-hero .tt-h2 em {
  font-style: italic;
  font-weight: 500;
}

.tw-terminal .tt-hero .tt-h1 {
  font-size: clamp(2.25rem, 4vw, 4.75rem);
  white-space: nowrap;
}

.tw-terminal .tt-hero-cta {
  justify-content: center;
}

.tw-terminal .tt-hero-cta .tt-btn-gold {
  background-color: #000000;
  color: #FFFFFF;
  border-color: #000000;
}

.tw-terminal .tt-hero-cta .tt-btn-gold:hover {
  background-color: #1a1a1a;
}

.tw-terminal .tt-hero-cta .tt-btn-ghost {
  color: #0A0A0A;
  border-color: #0A0A0A;
}

.tw-terminal .tt-hero-cta .tt-btn-ghost:hover {
  background-color: #0A0A0A;
  color: #FFFFFF;
}


/* ==============================================
   VIDEO SECTION
============================================== */
.tw-terminal .tt-video-section {
  padding: 0 0 clamp(3rem, 5vw, 5rem);
  border-bottom: 1px solid var(--tw-grid-line);
  position: relative;
}

.tw-terminal .tt-video-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
  position: relative;
  z-index: 1;
}

.tw-terminal .tt-video-wrap {
  position: relative;
  width: 100%;
  display: block;
}

.tw-terminal .tt-video {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 0;
  display: block;
  background: #000;
  object-fit: cover;
}

/* Custom play button overlay — click to play with sound */
.tw-terminal .tt-video-play {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 110px;
  height: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: rgba(0, 0, 0, 0.45);
  border: 1.5px solid rgba(255, 255, 255, 0.9);
  color: #FFFFFF;
  cursor: pointer;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  transition: background-color 150ms ease, transform 150ms ease, opacity 200ms ease;
}

.tw-terminal .tt-video-play:hover {
  background: rgba(0, 0, 0, 0.65);
  transform: scale(1.05);
}

.tw-terminal .tt-video-play svg {
  width: 44px;
  height: 44px;
  fill: currentColor;
}

.tw-terminal .tt-video-play .tt-icon-play  { margin-left: 4px; }
.tw-terminal .tt-video-play .tt-icon-pause { display: none; }

/* Once playing with sound, the centered overlay is retired entirely — the
   browser's native control bar (added via JS) takes over pause/seek. */
.tw-terminal .tt-video-play.is-playing { display: none; }

.tw-terminal .tt-video-cta {
  justify-content: center;
}

/* Logo carousel (video section) */
.tw-terminal .tt-logo-carousel-wrap {
  width: 100%;
  background: #ffffff;
  border: 1px solid var(--tw-grid-line);
  border-radius: 0;
  padding: 1.75rem 0;
}

.tw-terminal .tt-logo-carousel-label {
  text-align: center;
  font-size: var(--tw-mono-label);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.45);
  margin-bottom: 1.6rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--tw-grid-line);
  font-family: var(--tw-mono);
}

.tw-terminal .tt-logo-track-mask {
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 12%, #000 88%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, #000 12%, #000 88%, transparent 100%);
}

.tw-terminal .tt-logo-track {
  display: flex;
  align-items: center;
  gap: clamp(2rem, 4vw, 3.5rem);
  width: max-content;
  animation: tt-logo-scroll 30s linear infinite;
}

.tw-terminal .tt-logo-track img {
  height: 26px;
  width: auto;
  object-fit: contain;
  filter: brightness(0);
  opacity: 0.65;
  flex-shrink: 0;
}

/* Per-logo size corrections for visual parity (from index.html, scaled to the 26px base) */
.tw-terminal .tt-logo-track img[alt="Notion"],
.tw-terminal .tt-logo-track img[alt="Berkeley"],
.tw-terminal .tt-logo-track img[alt="HP"]        { height: 40px; }

.tw-terminal .tt-logo-track img[alt="Zuora"],
.tw-terminal .tt-logo-track img[alt="Meta"],
.tw-terminal .tt-logo-track img[alt="Salesforce"],
.tw-terminal .tt-logo-track img[alt="MIT"]       { height: 54px; }

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

/* ==============================================
   VALUE PROP SECTION
============================================== */
.tw-terminal .tt-value-prop {
  background-color: #FFFFFF;
}

/* ==============================================
   BY THE NUMBERS — textured full-bleed panel
============================================== */
.tw-terminal .tt-by-numbers {
  padding: 0;
  margin: 0;
  width: 100%;
  max-width: 100%;
}

.tw-terminal .tt-by-numbers-panel {
  position: relative;
  width: 100%;
  color: #FFFFFF;
  background-color: var(--tw-green);
  background-image:
    linear-gradient(135deg, rgba(11, 31, 26, 0.9) 0%, rgba(16, 57, 46, 0.84) 45%, rgba(8, 22, 18, 0.93) 100%),
    url('/assets/engraving-bg.png');
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.tw-terminal .tt-by-numbers-panel::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(11, 31, 26, 0.48);
  pointer-events: none;
}

.tw-terminal .tt-by-numbers-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--tw-max-w);
  margin-inline: auto;
  padding-inline: clamp(3.5rem, 14vw, 16rem);
  padding-block: clamp(3.25rem, 6.5vw, 5.5rem);
}

.tw-terminal .tt-bn-head {
  margin-bottom: clamp(2.5rem, 4.5vw, 3.5rem);
}

.tw-terminal .tt-bn-eyebrow {
  margin-bottom: clamp(0.65rem, 1.2vw, 0.85rem);
}

.tw-terminal .tt-bn-title {
  margin: 0;
  font-family: var(--tw-display);
  font-size: clamp(2rem, 3.8vw, 3.25rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: #FFFFFF;
  text-shadow: 0 1px 18px rgba(0, 0, 0, 0.35);
}

.tw-terminal .tt-by-numbers-grid {
  display: grid;
  grid-template-columns: minmax(9.5rem, max-content) minmax(0, 1fr);
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.28);
}

.tw-terminal .tt-bn-cell {
  display: flex;
  align-items: center;
  min-height: clamp(4.25rem, 7.5vw, 6rem);
  padding-block: clamp(1.35rem, 2.5vw, 2.25rem);
  border-bottom: 1px solid rgba(255, 255, 255, 0.28);
}

.tw-terminal .tt-by-numbers-grid > .tt-bn-cell:nth-child(odd) {
  padding-left: clamp(1.5rem, 3vw, 2.5rem);
  padding-right: clamp(1.25rem, 2.5vw, 2rem);
}

.tw-terminal .tt-by-numbers-grid > .tt-bn-cell:nth-child(even) {
  padding-left: clamp(1.25rem, 2.5vw, 2rem);
  padding-right: clamp(1.5rem, 3vw, 2.5rem);
  border-left: 1px solid rgba(255, 255, 255, 0.28);
}

.tw-terminal .tt-by-numbers-grid > .tt-bn-cell:nth-last-child(-n + 2) {
  border-bottom: none;
}

.tw-terminal .tt-bn-fig-cell {
  align-items: center;
  justify-content: flex-start;
}

.tw-terminal .tt-bn-desc-cell {
  align-items: center;
}

.tw-terminal .tt-bn-metric {
  display: flex;
  align-items: center;
  gap: clamp(0.35rem, 0.8vw, 0.55rem);
  margin: 0;
  line-height: 1;
}

.tw-terminal .tt-bn-val,
.tw-terminal .tt-bn-unit {
  font-family: var(--tw-display);
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1;
  color: #FFFFFF;
  text-shadow: 0 1px 20px rgba(0, 0, 0, 0.4);
}

.tw-terminal .tt-bn-unit--times {
  font-family: var(--tw-display);
}

.tw-terminal .tt-bn-desc {
  margin: 0;
  font-family: var(--tw-body-font);
  font-size: clamp(0.9375rem, 1.15vw, 1.0625rem);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  line-height: 1.25;
  letter-spacing: -0.006em;
  color: rgba(255, 255, 255, 0.94);
  text-shadow: 0 1px 14px rgba(0, 0, 0, 0.32);
}

@media (max-width: 640px) {
  .tw-terminal .tt-by-numbers-inner {
    padding-inline: clamp(1.25rem, 5vw, 2rem);
    padding-block: clamp(2rem, 6vw, 3rem);
  }

  .tw-terminal .tt-by-numbers-grid {
    grid-template-columns: 1fr;
  }

  .tw-terminal .tt-by-numbers-grid > .tt-bn-cell:nth-child(even) {
    border-left: none;
    padding-left: clamp(1.25rem, 2.5vw, 2rem);
    padding-right: clamp(1.25rem, 2.5vw, 2rem);
    min-height: auto;
    padding-top: 0;
    padding-bottom: clamp(1.25rem, 2.5vw, 2rem);
  }

  .tw-terminal .tt-bn-fig-cell {
    border-bottom: none;
    min-height: auto;
    padding-bottom: 0.35rem;
  }

  .tw-terminal .tt-bn-desc-cell {
    padding-top: 0;
  }

  .tw-terminal .tt-by-numbers-grid > .tt-bn-cell:nth-last-child(-n + 2) {
    border-bottom: none;
  }
}

.tw-terminal .tt-value-prop-inner {
  display: grid;
  grid-template-columns: minmax(0, 40fr) minmax(0, 60fr);
  gap: clamp(3.5rem, 8vw, 8rem);
  align-items: start;
}

.tw-terminal .tt-use-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

.tw-terminal .tt-use-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  font-family: var(--tw-body-font);
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  letter-spacing: -0.011em;
  color: var(--tw-body-text);
}

.tw-terminal .tt-use-list li::before {
  content: "";
  flex-shrink: 0;
  width: 5px;
  height: 5px;
  margin-top: 0.48em;
  background: var(--tw-gold);
  border-radius: 1px;
}

.tw-terminal .tt-value-prop-left .tt-use-list {
  max-width: none;
}

/* Section deck / standfirst — carries the headline above the capability list */
.tw-terminal .tt-value-prop-left .tt-vp-deck {
  margin-top: clamp(1.85rem, 3vw, 2.35rem);
}

.tw-terminal .tt-value-prop-left .tt-vp-runs {
  margin-top: 1.25rem;
}

.tw-terminal .tt-value-prop-left .tt-vp-runs strong {
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: rgba(10, 10, 10, 0.82);
}

.tw-terminal .tt-value-prop-left .tt-vp-capabilities {
  max-width: none;
}

.tw-terminal .tt-value-prop-left .tt-vp-capabilities li,
.tw-terminal .tt-value-prop-left .tt-vp-capabilities .tt-use-label {
  font-weight: var(--tw-deck-weight);
  font-variation-settings: 'wght' var(--tw-deck-weight);
  color: var(--tw-deck-color);
  letter-spacing: -0.014em;
}

/* Capability list — engraved spec rows, hairline-divided */
.tw-terminal .tt-use-list--grid {
  gap: 0;
  margin-top: 1rem;
  border-top: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-use-list--grid li {
  align-items: center;
  gap: 0.95rem;
  padding-block: 0.95rem;
  border-bottom: 1px solid var(--tw-grid-line);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  letter-spacing: -0.012em;
  color: var(--tw-body-text);
  transition: color 0.2s ease;
}

.tw-terminal .tt-use-list--grid li::before {
  content: none;
  display: none;
}

.tw-terminal .tt-use-mark {
  flex-shrink: 0;
  width: 1.9rem;
  height: 1.9rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--tw-grid-line);
  border-radius: 2px;
  background-color: #fff;
  color: var(--tw-gold);
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.tw-terminal .tt-use-mark svg {
  width: 14px;
  height: 14px;
}

.tw-terminal .tt-use-label {
  flex: 1;
  min-width: 0;
}

.tw-terminal .tt-use-list--grid li:hover {
  color: var(--tw-green);
}

.tw-terminal .tt-value-prop-left .tt-use-list--grid li:hover {
  color: var(--tw-deck-color);
}

.tw-terminal .tt-use-list--grid li:hover .tt-use-mark {
  border-color: var(--tw-gold);
  background-color: rgba(201, 169, 97, 0.12);
}

.tw-terminal .tt-value-prop-left .tt-use-list--grid {
  max-width: none;
}

.tw-terminal .tt-value-prop-right {
  display: flex;
  flex-direction: column;
  padding-top: 0;
}

.tw-terminal .tt-vp-cta {
  margin-top: 2.25rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
}

.tw-terminal .tt-vp-cta-line {
  font-family: var(--tw-display);
  font-style: italic;
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  color: var(--tw-text-dark);
}

.tw-terminal .tt-image-placeholder {
  width: 100%;
  height: 100%;
  min-height: 360px;
  background-color: rgba(0, 0, 0, 0.05);
  border: 1px dashed rgba(0, 0, 0, 0.18);
  border-radius: var(--tw-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
}

/* ==============================================
   DEPTH LAYER
============================================== */
.tw-terminal .tt-depth-stats {
  display: flex;
  gap: 0.55rem;
  flex-wrap: wrap;
  align-items: center;
  margin: clamp(1.75rem, 3vw, 2.25rem) 0 clamp(2.5rem, 4.5vw, 3.75rem);
}

.tw-terminal .tt-depth-stat {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--tw-body-font);
  font-size: 0.82rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.01em;
  padding: 0.42rem 0.75rem;
  border: 1px solid transparent;
  white-space: nowrap;
}

.tw-terminal .tt-depth-stat strong {
  font-weight: 700;
  letter-spacing: -0.02em;
}

.tw-terminal .tt-depth-stat:nth-child(1) {
  color: #0B3D32;
  background: color-mix(in srgb, var(--tw-pillar-green) 12%, #fff);
  border-color: color-mix(in srgb, var(--tw-pillar-green) 30%, transparent);
}

.tw-terminal .tt-depth-stat:nth-child(1) strong {
  color: var(--tw-pillar-green);
}

.tw-terminal .tt-depth-stat:nth-child(2) {
  color: #6B4F0F;
  background: color-mix(in srgb, #EAC24A 32%, #fff);
  border-color: color-mix(in srgb, var(--tw-gold) 50%, transparent);
}

.tw-terminal .tt-depth-stat:nth-child(2) strong {
  color: #9A7416;
}

.tw-terminal .tt-depth-stat:nth-child(3) {
  color: var(--tw-pillar-green);
  background: #fff;
  border-color: color-mix(in srgb, var(--tw-pillar-green) 35%, transparent);
}

.tw-terminal .tt-depth-stat:nth-child(3) strong {
  color: var(--tw-pillar-green);
}

/* Tab navigation — bordered grid cells, full-width top + bottom rules */
.tw-terminal .tt-depth-frame {
  --tw-depth-line: rgba(0, 0, 0, 0.22);
  --depth-accent-continuous: color-mix(in srgb, #1E40C4 22%, #080e1c);
  --depth-accent-specific: color-mix(in srgb, #9A7416 74%, #1a1200);
  --depth-accent-synthesis: var(--tw-pillar-green);
  /* Tab line + number — match pillar icon colors (research / outreach / meetings) */
  --depth-tab-accent-continuous: color-mix(in srgb, #1E40C4 88%, #142050);
  --depth-tab-accent-specific: color-mix(in srgb, #EAC24A 72%, #c9a030);
  --depth-tab-accent-synthesis: var(--tw-pillar-green);
  /* Research blue tones */
  --tw-continuous-accent: #1E40C4;
  --tw-continuous-bright: color-mix(in srgb, #1E40C4 58%, #6a8ed8);
  --tw-continuous-mid: color-mix(in srgb, #1E40C4 82%, #3858b8);
  /* Outreach yellow tones */
  --tw-specific-accent: #9A7416;
  --tw-specific-bright: color-mix(in srgb, #EAC24A 70%, #c9a030);
  --tw-specific-mid: color-mix(in srgb, #9A7416 78%, #a08020);
  --tw-specific-soft: color-mix(in srgb, #EAC24A 62%, #c9a030);
  /* Meetings green tones */
  --tw-synthesis-accent: #16A34A;
  --tw-synthesis-bright: color-mix(in srgb, #16A34A 50%, #8fd4a8);
  --tw-synthesis-mid: color-mix(in srgb, var(--tw-pillar-green) 68%, #5a9a82);
  --tw-synthesis-card: color-mix(in srgb, var(--tw-pillar-green) 88%, #061810);
}

/* Folder-style tabs that sit on top of the content box */
.tw-terminal .tt-depth-tabs-wrap {
  position: relative;
  width: 100%;
  margin-bottom: -1px;
  z-index: 2;
  overflow: visible;
}

.tw-terminal .tt-depth-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.35rem;
  width: 100%;
  position: relative;
}

.tw-terminal .tt-depth-tab-indicator {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 4px;
  background: color-mix(in srgb, var(--indicator-accent, var(--tw-pillar-green)) 18%, transparent);
  z-index: 10;
  pointer-events: none;
  overflow: hidden;
  transition: left 320ms cubic-bezier(0.16, 1, 0.3, 1);
}

.tw-terminal .tt-depth-tab-indicator-fill {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--indicator-accent, var(--tw-pillar-green));
  transform: scaleX(0);
  transform-origin: left center;
}

.tw-terminal .tt-depth-tab-indicator-fill.is-animating {
  animation: ttDepthTabFill 7s linear forwards;
}

@keyframes ttDepthTabFill {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

.tw-terminal .tt-depth-tab[data-panel="continuous"] { --tt-depth-accent: var(--depth-tab-accent-continuous); }
.tw-terminal .tt-depth-tab[data-panel="specific"] { --tt-depth-accent: var(--depth-tab-accent-specific); }
.tw-terminal .tt-depth-tab[data-panel="synthesis"] { --tt-depth-accent: var(--depth-tab-accent-synthesis); }

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-depth-tab-indicator { transition: none; }
  .tw-terminal .tt-depth-tab-indicator-fill.is-animating {
    animation: none;
    transform: scaleX(1);
  }
}

.tw-terminal .tt-depth-tab {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.22rem;
  width: 100%;
  min-width: 0;
  font-family: var(--tw-body-font);
  font-size: 1.05em;
  font-weight: 600;
  color: var(--tw-text-muted);
  background: #EFEBE3;
  border: 1px solid var(--tw-depth-line);
  padding: 0.8rem 1rem 0.75rem;
  text-align: left;
  cursor: pointer;
  letter-spacing: -0.01em;
  transition: color 200ms ease, background-color 200ms ease;
}

.tw-terminal .tt-depth-tab-top {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  width: 100%;
  min-width: 0;
}

.tw-terminal .tt-depth-tab-title {
  line-height: 1.2;
}

.tw-terminal .tt-depth-tab-desc {
  font-size: 1em;
  font-weight: 400;
  line-height: 1.4;
  color: var(--tw-text-muted);
  letter-spacing: 0;
}

.tw-terminal .tt-depth-num {
  font-family: var(--tw-mono);
  font-size: 0.82rem;
  font-weight: 500;
  color: var(--tw-text-muted);
  letter-spacing: 0.01em;
  flex-shrink: 0;
  transition: color 200ms ease;
}

.tw-terminal .tt-depth-tab:hover { color: var(--tw-text-dark); }

.tw-terminal .tt-depth-tab.is-active .tt-depth-num {
  color: var(--tt-depth-accent, #C9A961);
}

.tw-terminal .tt-depth-tab.is-active {
  color: var(--tw-text-dark);
  background: #FFFFFF;
  border-bottom-color: #FFFFFF;
  z-index: 3;
}

.tw-terminal .tt-depth-tab.is-active .tt-depth-tab-desc {
  color: var(--tw-text-muted);
}

/* Tab panels container — the content box the tabs stick out of */
.tw-terminal .tt-depth-panels {
  position: relative;
  z-index: 1;
  border: 1px solid var(--tw-depth-line);
  background: var(--tw-bg-panel);
}

/* Individual panel */
.tw-terminal .tt-depth-panel {
  display: none;
  flex-direction: column;
}

.tw-terminal .tt-depth-panel.is-active {
  display: flex;
}

.tw-terminal .tt-depth-panel-left {
  padding: clamp(2rem, 4vw, 3rem) clamp(1.5rem, 3vw, 2.5rem);
  display: flex;
  align-items: flex-start;
}

.tw-terminal .tt-depth-body {
  max-width: 62ch;
}

/* Visual area */
.tw-terminal .tt-depth-panel-right {
  border-radius: 0;
  overflow: hidden;
  position: relative;
  min-height: 0;
  margin: 0 clamp(1.5rem, 3vw, 2.5rem) clamp(1.5rem, 3vw, 2.5rem);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1rem, 2vw, 1.75rem) clamp(2rem, 4vw, 3.5rem);
}

.tw-terminal .tt-depth-panel-right svg {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

/* Depth diagram typography — research timeline pattern, scaled up */
.tw-terminal .tt-depth-panel-right svg .tt-dg-label {
  font-family: var(--tw-body-font);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.015em;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-eyebrow {
  font-family: var(--tw-mono);
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-axis {
  font-family: var(--tw-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-tag {
  font-family: var(--tw-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-caption {
  font-family: var(--tw-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-stage {
  font-family: var(--tw-mono);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-metric {
  font-family: var(--tw-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.06em;
}

/* Specific panel — sieve lens labels */
.tw-terminal .tt-depth-panel-right svg .tt-dg-sieve-name {
  font-family: var(--tw-body-font);
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-sieve-sub {
  font-family: var(--tw-body-font);
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: -0.005em;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-sieve-line-halo {
  stroke: rgba(255, 255, 255, 0.06);
  stroke-width: 5;
  stroke-linecap: round;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-sieve-line {
  stroke: rgba(255, 255, 255, 0.34);
  stroke-width: 1;
  stroke-linecap: round;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-stuck-dot {
  pointer-events: none;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-payoff {
  font-family: var(--tw-body-font);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: -0.01em;
}

/* Specific panel — gold pile accumulates via JS */
.tw-terminal #ttSpecPile:not(.is-ready) .tt-dg-pile-dot {
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal #ttSpecPile .tt-dg-pile-dot { opacity: 0.85; }
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-thesis-status {
  font-family: var(--tw-body-font);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: -0.01em;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-thesis-summary {
  font-family: var(--tw-body-font);
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: -0.01em;
}

/* Continuous diagram — live signal feed into the Thinkwell "NOW" node */

/* Ambient density ticks + minor (logged) events */
.tw-terminal .tt-depth-panel-right svg .tt-dg-tick {
  stroke: rgba(255, 255, 255, 0.22);
  stroke-width: 0.75;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-min-label {
  font-family: var(--tw-body-font);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: -0.01em;
  fill: rgba(255, 255, 255, 0.5);
}

/* Signal markers */
.tw-terminal .tt-depth-panel-right svg .tt-dg-sig-tag {
  font-family: var(--tw-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.14em;
  fill: #C9A961;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-sig-label {
  font-family: var(--tw-body-font);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: -0.01em;
  fill: rgba(255, 255, 255, 0.92);
  transition: fill 0.4s ease;
}

.tw-terminal .tt-dg-sig-stem { transition: stroke 0.4s ease; }
.tw-terminal .tt-dg-sig-dot { transition: fill 0.4s ease; }

.tw-terminal .tt-dg-sig-halo { opacity: 0; }
.tw-terminal .tt-dg-sig.is-updating .tt-dg-sig-halo {
  animation: tt-dg-sig-ping 1s ease-out infinite;
}

/* Timeline dot has no checkmark — the dot itself just turns green when logged */
.tw-terminal .tt-dg-sig-check { opacity: 0; }

/* After crossing NOW: signal is logged — dot goes green, label dims to history */
.tw-terminal .tt-dg-sig.is-updated .tt-dg-sig-dot { fill: #7CB8A0; }
.tw-terminal .tt-dg-sig.is-updated .tt-dg-sig-label { fill: rgba(255, 255, 255, 0.5); }
.tw-terminal .tt-dg-sig.is-updated .tt-dg-sig-stem { stroke: rgba(124, 184, 160, 0.28); }

@keyframes tt-dg-sig-ping {
  0% { r: 4; opacity: 0.85; }
  100% { r: 17; opacity: 0; }
}

/* NOW · Thinkwell node */
.tw-terminal #tt-panel-continuous .tt-dg-now-logo {
  filter: none;
}

/* Ticker selector (CANOPY chosen) */
.tw-terminal .tt-depth-panel-right svg .tt-dg-ticker-sel {
  font-family: var(--tw-mono);
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-ticker-opt {
  font-family: var(--tw-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
}

/* Signals-logged counter (ticker style) */
.tw-terminal .tt-depth-panel-right svg .tt-dg-counter-num {
  font-family: var(--tw-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-variant-numeric: tabular-nums;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-counter-lbl {
  font-family: var(--tw-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.1em;
}

/* Thesis-update badge — appears below a signal once it crosses NOW, then travels with it */
.tw-terminal .tt-dg-sig-badge {
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.tw-terminal .tt-dg-sig.is-updating .tt-dg-sig-badge,
.tw-terminal .tt-dg-sig.is-updated .tt-dg-sig-badge { opacity: 1; }

.tw-terminal .tt-dg-sig-badge-ing,
.tw-terminal .tt-dg-sig-badge-done {
  transition: opacity 0.3s ease;
}
.tw-terminal .tt-dg-sig-badge-done { opacity: 0; }
.tw-terminal .tt-dg-sig.is-updating .tt-dg-sig-badge-ing { opacity: 1; }
.tw-terminal .tt-dg-sig.is-updating .tt-dg-sig-badge-done { opacity: 0; }
.tw-terminal .tt-dg-sig.is-updated .tt-dg-sig-badge-ing { opacity: 0; }
.tw-terminal .tt-dg-sig.is-updated .tt-dg-sig-badge-done { opacity: 1; }

.tw-terminal .tt-depth-panel-right svg .tt-dg-sig-status {
  font-family: var(--tw-body-font);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: -0.01em;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-sig-badge-tag {
  font-family: var(--tw-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.tw-terminal .tt-depth-panel-right svg .tt-dg-sig-summary {
  font-family: var(--tw-body-font);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: -0.01em;
}

/* "Updating thesis…" animated dots */
.tw-terminal .tt-dg-sig.is-updating .tt-dg-sig-dot1 { animation: tt-dg-ellipsis 0.9s ease-in-out infinite; }
.tw-terminal .tt-dg-sig.is-updating .tt-dg-sig-dot2 { animation: tt-dg-ellipsis 0.9s ease-in-out 0.15s infinite; }
.tw-terminal .tt-dg-sig.is-updating .tt-dg-sig-dot3 { animation: tt-dg-ellipsis 0.9s ease-in-out 0.3s infinite; }

@keyframes tt-dg-ellipsis {
  0%, 70%, 100% { opacity: 0.2; }
  35% { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-dg-sig-halo { animation: none; }
  .tw-terminal .tt-dg-sig-dot1,
  .tw-terminal .tt-dg-sig-dot2,
  .tw-terminal .tt-dg-sig-dot3 { animation: none; }
}

/* Subtle depth gradient overlay */
.tw-terminal .tt-depth-panel-right::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 25% 40%, rgba(255,255,255,0.06) 0%, transparent 60%),
    radial-gradient(ellipse at 75% 70%, rgba(255,255,255,0.03) 0%, transparent 50%);
  pointer-events: none;
  z-index: 1;
}

.tw-terminal .tt-depth-panel-right > * {
  position: relative;
  z-index: 2;
}

/* Per-tab background colors */
.tw-terminal .tt-depth-panel--continuous .tt-depth-panel-right { background-color: var(--depth-accent-continuous); }
.tw-terminal .tt-depth-panel--continuous .tt-depth-panel-right::before { display: none; }

/* Edge vignettes — match panel bg so they don’t read as a mismatched shadow */
.tw-terminal #tt-panel-continuous #ttFadeL stop,
.tw-terminal #tt-panel-continuous #ttFadeR stop {
  stop-color: var(--depth-accent-continuous);
}
.tw-terminal .tt-depth-panel--specific   .tt-depth-panel-right { background-color: var(--depth-accent-specific); }
.tw-terminal .tt-depth-panel--synthesis  .tt-depth-panel-right { background-color: var(--depth-accent-synthesis); }

/* Continuous diagram — blue theme */
.tw-terminal #tt-panel-continuous .tt-depth-panel-right > svg > circle {
  fill: var(--tw-continuous-bright);
}

.tw-terminal #tt-panel-continuous #ttFeedLabel {
  fill: var(--tw-continuous-bright);
}

.tw-terminal #tt-panel-continuous #ttCanopySel {
  fill: var(--tw-continuous-mid);
}

.tw-terminal #tt-panel-continuous #ttCanopyCaret {
  stroke: var(--tw-continuous-mid);
}

.tw-terminal #tt-panel-continuous #ttContTri {
  fill: var(--tw-continuous-bright);
}

.tw-terminal #tt-panel-continuous #ttContCounter {
  fill: var(--tw-continuous-bright);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig-tag {
  fill: var(--tw-continuous-bright);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig-dot {
  fill: var(--tw-continuous-mid);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig-halo {
  stroke: var(--tw-continuous-bright);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig-stem {
  stroke: rgba(90, 127, 217, 0.35);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig [stroke="#C9A961"] {
  stroke: var(--tw-continuous-mid);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig [fill="#C9A961"] {
  fill: var(--tw-continuous-mid);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig [fill="rgba(201,169,97,0.14)"] {
  fill: rgba(90, 127, 217, 0.14);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig.is-updated .tt-dg-sig-dot {
  fill: var(--tw-continuous-bright);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig.is-updated .tt-dg-sig-stem {
  stroke: rgba(139, 180, 245, 0.3);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig [stroke="#7CB8A0"] {
  stroke: #6B9AE8;
}

.tw-terminal #tt-panel-continuous .tt-dg-sig [fill="#7CB8A0"] {
  fill: #6B9AE8;
}

.tw-terminal #tt-panel-continuous .tt-dg-sig [fill="rgba(124,184,160,0.12)"] {
  fill: rgba(107, 154, 232, 0.12);
}

.tw-terminal #tt-panel-continuous .tt-dg-sig [stroke="#10392E"] {
  stroke: var(--depth-accent-continuous);
}

.tw-terminal #tt-panel-continuous .tt-dg-now-dot {
  fill: rgba(255, 255, 255, 0.95);
}

.tw-terminal #tt-panel-continuous .tt-dg-now [fill="#C9A961"] {
  fill: rgba(255, 255, 255, 0.95);
}

.tw-terminal #tt-panel-continuous .tt-dg-now [stroke="#C9A961"] {
  stroke: rgba(255, 255, 255, 0.5);
}

.tw-terminal #tt-panel-continuous .tt-dg-now line {
  stroke: rgba(90, 127, 217, 0.35);
}

/* Specific diagram — outreach yellow theme */
.tw-terminal #tt-panel-specific .tt-depth-panel-right > svg > circle {
  fill: var(--tw-specific-bright);
}

.tw-terminal #tt-panel-specific .tt-dg-eyebrow > tspan:first-child {
  fill: var(--tw-specific-bright);
}

.tw-terminal #tt-panel-specific #ttSpecTri {
  fill: var(--tw-specific-bright);
}

.tw-terminal #tt-panel-specific #ttSpecCounter {
  fill: var(--tw-specific-bright);
}

.tw-terminal #tt-panel-specific .tt-dg-payoff {
  fill: var(--tw-specific-bright);
}

.tw-terminal #tt-panel-specific ellipse[fill="#C9A961"] {
  fill: var(--tw-specific-soft);
}

.tw-terminal #tt-panel-specific line[stroke="#C9A961"] {
  stroke: var(--tw-specific-mid);
}

.tw-terminal #tt-panel-specific #ttSpecPile .tt-dg-pile-dot {
  fill: var(--tw-specific-bright);
}

/* Synthesis diagram — green theme */
.tw-terminal #tt-panel-synthesis .tt-depth-panel-right > svg > circle {
  fill: var(--tw-synthesis-accent);
}

.tw-terminal #tt-panel-synthesis .tt-dg-synth-header-signals {
  fill: var(--tw-synthesis-accent);
}

.tw-terminal #tt-panel-synthesis .tt-dg-synth-header-converge {
  fill: var(--tw-synthesis-bright);
}

.tw-terminal #tt-panel-synthesis .tt-dg-synth-header-pov {
  fill: rgba(255, 255, 255, 0.95);
}

.tw-terminal #tt-panel-synthesis .tt-dg-synth-diagram > g[stroke="#C9A961"] {
  stroke: var(--tw-synthesis-mid);
}

.tw-terminal #tt-panel-synthesis .tt-dg-synth-diagram [stroke="#C9A961"] {
  stroke: var(--tw-synthesis-mid);
}

.tw-terminal #tt-panel-synthesis .tt-dg-synth-diagram [fill="#C9A961"] {
  fill: var(--tw-synthesis-mid);
}

.tw-terminal #tt-panel-synthesis .tt-dg-synth-diagram [fill="#5C440E"] {
  fill: var(--tw-synthesis-card);
}

/* ==============================================
   FOUR AGENTS — LIGHT SECTION
============================================== */
.tw-terminal .tt-agents {
  padding: clamp(4rem, 10vw, 8rem) 0;
}

.tw-terminal .tt-agents-sub {
  font-family: var(--tw-body-font);
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  letter-spacing: -0.011em;
  color: var(--tw-text-muted);
  max-width: 52ch;
  margin-top: 1rem;
  margin-bottom: 3.5rem;
}

.tw-terminal .tt-agents-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}

.tw-terminal .tt-agent-card {
  background-color: #FFFFFF;
  border: 1px solid var(--tw-rule);
  border-radius: var(--tw-radius);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.tw-terminal .tt-portrait {
  position: relative;
  width: 100%;
  max-width: 240px;
  aspect-ratio: 1;
  border: 1px solid var(--tw-rule);
  border-radius: 4px;
  background-color: rgba(11, 31, 26, 0.04);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}

.tw-terminal .tt-portrait-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tw-terminal .tt-portrait-initial {
  font-family: var(--tw-display);
  font-size: 5rem;
  font-weight: 500;
  color: rgba(11, 31, 26, 0.15);
  line-height: 1;
  user-select: none;
}

.tw-terminal .tt-portrait-label {
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  letter-spacing: 0.1em;
  color: rgba(11, 31, 26, 0.3);
  margin-top: 0.5rem;
  text-align: center;
}

.tw-terminal .tt-agent-tagline {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  color: var(--tw-green);
}

.tw-terminal .tt-agent-name {
  font-family: var(--tw-display);
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--tw-text-dark);
  line-height: 1.1;
}

.tw-terminal .tt-agent-dates {
  font-size: 1rem;
  font-weight: 400;
  color: var(--tw-text-muted);
  letter-spacing: 0;
}

.tw-terminal .tt-agent-body {
  font-size: 0.93rem;
  line-height: 1.75;
  color: var(--tw-text-muted);
}

/* ==============================================
   FOUR PILLARS — HOW IT WORKS
============================================== */
.tw-terminal .tt-pillars {
  background-color: var(--tw-bg-light);
}

.tw-terminal .tt-pillars-scroll { position: relative; }

.tw-terminal .tt-pillar-stack {
  --pillar-line: rgba(0, 0, 0, 0.22);
  --pr-visual-h: clamp(22rem, 33vw, 26rem);
  --pr-diagram-h: var(--pr-visual-h);
  margin-top: clamp(2rem, 3.2vw, 2.75rem);
  display: flex;
  flex-direction: column;
  gap: clamp(2rem, 3.2vw, 2.85rem);
}

.tw-terminal .tt-pillar-row {
  --pc-accent: #9A7416;
  --pc-bar: var(--pc-accent);
  --pc-on-bar: #FFFFFF;
  --pc-text: #141414;
  --pc-muted: rgba(0, 0, 0, 0.56);
  --pc-line: rgba(0, 0, 0, 0.12);
  --pc-stage-bg: var(--pc-bar);
  color: var(--pc-text);
  background-color: #FFFFFF;
  border: 1px solid var(--pillar-line);
  border-radius: 0;
  padding: 0;
  box-shadow: none;
}

/* Collapsed line: icon chip + big title + number + toggle */
.tw-terminal .tt-pr-head {
  width: 100%;
  display: flex;
  align-items: center;
  gap: clamp(0.85rem, 1.6vw, 1.25rem);
  padding: clamp(1.15rem, 2vw, 1.5rem) clamp(1.5rem, 2.6vw, 2rem);
  background: none;
  border: none;
  border-bottom: 1px solid transparent;
  text-align: left;
  cursor: pointer;
  color: inherit;
}

.tw-terminal .tt-pillar-row.is-open .tt-pr-head {
  padding-block: clamp(1rem, 1.75vw, 1.35rem);
  border-bottom-color: var(--pc-line);
}

.tw-terminal .tt-pr-head .tt-pc-title {
  font-family: var(--tw-display);
  font-size: clamp(1.65rem, 2.7vw, 2.25rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.12;
  color: var(--pc-text);
  transition: color 200ms ease;
}

.tw-terminal .tt-pillar-row.is-open .tt-pr-head .tt-pc-title {
  font-size: clamp(1.25rem, 2vw, 1.65rem);
}

.tw-terminal .tt-pr-head:hover .tt-pc-title { color: var(--pc-accent); }

.tw-terminal .tt-pr-head .tt-pc-num {
  margin-left: auto;
  font-family: var(--tw-mono);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  color: var(--pc-accent);
  opacity: 1;
}

.tw-terminal .tt-pr-toggle {
  position: relative;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.tw-terminal .tt-pr-toggle::before,
.tw-terminal .tt-pr-toggle::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 1.5px;
  background: var(--pc-accent);
  transform: translate(-50%, -50%);
  transition: transform 320ms cubic-bezier(0.16, 1, 0.3, 1), opacity 320ms ease;
}

.tw-terminal .tt-pr-toggle::after { transform: translate(-50%, -50%) rotate(90deg); }
.tw-terminal .tt-pillar-row.is-open .tt-pr-toggle::after { opacity: 0; }

/* Expanding body: desc (left) + diagram (right). max-height is set
   precisely in JS; the value here is a no-JS / fallback ceiling. */
.tw-terminal .tt-pr-body {
  overflow: hidden;
  max-height: 0;
  transition: max-height 520ms cubic-bezier(0.16, 1, 0.3, 1);
}

.tw-terminal .tt-pillar-row.is-open .tt-pr-body { max-height: none; }

.tw-terminal .tt-pr-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
  gap: 0;
  min-width: 0;
  align-items: start;
}

.tw-terminal .tt-pr-left {
  align-self: start;
  min-width: 0;
  padding: clamp(2.1rem, 3.5vw, 3rem) clamp(2rem, 3.4vw, 3rem) clamp(1.35rem, 2.2vw, 1.85rem);
  border-right: 1px solid var(--pc-line);
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
}

.tw-terminal .tt-pr-right {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.tw-terminal .tt-pr-visual-stage {
  flex: 1;
  background: var(--pc-stage-bg);
  padding: clamp(1.65rem, 2.8vw, 2.35rem) clamp(1.85rem, 3.2vw, 2.65rem) clamp(1.15rem, 1.9vw, 1.55rem);
  display: flex;
  align-items: stretch;
  min-height: var(--pr-visual-h);
}

.tw-terminal .tt-pr-visual-card {
  flex: 1;
  min-width: 0;
  background: transparent;
  border: none;
  padding: 0;
  display: flex;
  flex-direction: column;
}

/* Pillar stage — solid white inner components (pop on colored stage) */
.tw-terminal .tt-pr-visual-stage .tt-ot-email,
.tw-terminal .tt-pr-visual-stage .tt-ot-carousel-viewport .tt-ot-email,
.tw-terminal .tt-pr-visual-stage .tt-ot-carousel-viewport .tt-ot-email--tw {
  background: #fff;
  border: 1px solid color-mix(in srgb, var(--pc-accent) 18%, rgba(0, 0, 0, 0.1));
  border-left: 3px solid var(--pc-accent);
}

.tw-terminal .tt-pr-visual-stage .tt-ot-carousel-viewport {
  background: #fff;
  border: 1px solid color-mix(in srgb, var(--pc-accent) 18%, rgba(0, 0, 0, 0.1));
  border-left: 3px solid var(--pc-accent);
}

.tw-terminal .tt-pr-visual-stage .tt-ot-chrome {
  background: #f0f0f0;
  border-bottom-color: rgba(0, 0, 0, 0.08);
}

.tw-terminal .tt-pr-visual-stage .tt-ot-recipient,
.tw-terminal .tt-pr-visual-stage .tt-ot-email-meta,
.tw-terminal .tt-pr-visual-stage .tt-ot-email-body {
  background: #fff;
}

.tw-terminal .tt-pr-visual-stage .tt-ot-avatar {
  background: color-mix(in srgb, var(--pc-accent) 7%, #fff);
  border-color: color-mix(in srgb, var(--pc-accent) 18%, rgba(0, 0, 0, 0.1));
}

.tw-terminal .tt-pr-visual-stage .tt-mt-event,
.tw-terminal .tt-pr-visual-stage .tt-mt-card {
  background: #fff;
}

.tw-terminal .tt-pr-visual-stage .tt-mt-recipient {
  background: #fafafa;
}

.tw-terminal .tt-pr-visual-stage .tt-mt-event-cal {
  background: #f5f5f5;
}

/* Meetings pillar — brief connector + rows visible on green stage */
.tw-terminal .tt-pr-visual-stage .tt-mt .tt-mt-event,
.tw-terminal .tt-pr-visual-stage .tt-mt .tt-mt-brief-row,
.tw-terminal .tt-pr-visual-stage .tt-mt .tt-mt-card,
.tw-terminal .tt-pr-visual-stage .tt-mt .tt-mt-signals .tt-rsx-signal {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-pr-visual-stage .tt-mt .tt-mt-connector {
  border-left-color: rgba(255, 255, 255, 0.92);
  border-bottom-color: rgba(255, 255, 255, 0.92);
  opacity: 1;
  transform: scale(1);
}

.tw-terminal .tt-pr-visual-stage .tt-p-attach-featured,
.tw-terminal .tt-pr-visual-stage .tt-p-attach-tile {
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.tw-terminal .tt-pr-visual-stage .tt-lh-tile {
  background: color-mix(in srgb, var(--lh-hot) calc(var(--fit) * 55%), var(--lh-cold));
}

.tw-terminal .tt-pr-left .tt-pc-desc {
  margin-bottom: 0;
  max-width: 42ch;
}

.tw-terminal .tt-pr-left .tt-pc-desc p + p,
.tw-terminal .tt-pr-left .tt-pc-desc ul + p {
  margin-top: 1.35rem;
}

.tw-terminal .tt-pr-left .tt-pc-pov {
  margin-top: clamp(1.25rem, 2vw, 1.65rem);
  margin-bottom: 0;
  background: color-mix(in srgb, var(--pc-accent) 6%, #fff);
  border: 1px solid var(--pc-line);
  border-left: 3px solid var(--pc-accent);
  padding: 1.15rem 1.2rem;
}

.tw-terminal .tt-pr-left .tt-pc-pov p {
  font-family: var(--tw-body-font);
  font-size: clamp(0.8125rem, 0.14rem + 0.78vw, 0.90625rem);
  font-weight: var(--tw-deck-weight);
  font-variation-settings: 'wght' var(--tw-deck-weight);
  line-height: 1.44;
  letter-spacing: -0.012em;
  color: rgba(10, 10, 10, 0.72);
}

/* Pillar bullets — deck typography (see shared .tt-deck rules) */
.tw-terminal .tt-pr-left .tt-use-list--grid {
  gap: 0;
  margin: 1.35rem 0 0;
  border-top: 1px solid var(--pc-line);
}

.tw-terminal .tt-pr-left .tt-use-list--grid li {
  align-items: center;
  gap: 0.9rem;
  padding-block: 1.1rem;
  border-bottom: 1px solid var(--pc-line);
}

.tw-terminal .tt-pr-left .tt-use-list--grid li::before {
  content: none;
  display: none;
}

.tw-terminal .tt-pr-left .tt-use-list--grid .tt-use-mark {
  width: 1.75rem;
  height: 1.75rem;
  color: var(--pc-accent);
  border-color: var(--pc-line);
  border-radius: 2px;
}

.tw-terminal .tt-pr-left .tt-use-list--grid .tt-use-mark svg {
  width: 13px;
  height: 13px;
}

.tw-terminal .tt-pr-left .tt-use-list--grid li:hover .tt-use-mark {
  border-color: color-mix(in srgb, var(--pc-accent) 45%, var(--pc-line));
  background: color-mix(in srgb, var(--pc-accent) 8%, #fff);
}

/* When the panel is narrow, stack copy above visual so demos get full width */
.tw-terminal .tt-pr-body {
  container-type: inline-size;
  container-name: pillar-panel;
}

@container pillar-panel (max-width: 1000px) {
  .tw-terminal .tt-pr-inner {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .tw-terminal .tt-pr-left {
    border-right: none;
    border-bottom: 1px solid var(--pc-line);
    padding-bottom: clamp(1.25rem, 3.5vw, 1.65rem);
    min-height: 0;
  }

  .tw-terminal .tt-pr-left .tt-pc-desc {
    max-width: none;
  }

  .tw-terminal .tt-pr-visual-stage {
    min-height: 0;
    padding-top: clamp(0.85rem, 2.5vw, 1.15rem);
  }
}

.tw-terminal .tt-pr-head .tt-pc-icon {
  background: var(--pc-bar);
  border: none;
  color: var(--pc-on-bar);
}

.tw-terminal .tt-pc--research { --pc-accent: #1E40C4; }                                          /* blue */
.tw-terminal .tt-pc--leads { --pc-accent: #1E40C4; --pc-bar: #1E40C4; --pc-on-bar: #fff; }        /* research blue */
.tw-terminal .tt-pc--outreach { --pc-accent: #9A7416; --pc-bar: #EAC24A; }                      /* yellow */

.tw-terminal .tt-pr-right .tt-pc-visual {
  margin-top: 0;
  border-top: none;
  padding-top: 0;
  flex: 1;
}

.tw-terminal .tt-pc--outreach .tt-ot {
  --ot-green: var(--pc-accent);
  --ot-green-mid: color-mix(in srgb, var(--pc-accent) 72%, #c9a030);
  --ot-green-soft: color-mix(in srgb, var(--pc-bar) 55%, #f0d060);
  --ot-green-bg: color-mix(in srgb, var(--pc-bar) 14%, transparent);
  --ot-green-bg-soft: color-mix(in srgb, var(--pc-bar) 9%, transparent);
  --ot-green-border: color-mix(in srgb, var(--pc-accent) 32%, transparent);
}
.tw-terminal .tt-pc--attach   { --pc-accent: #CF2D00; --pc-bar: #CF2D00; --pc-on-bar: #fff; }       /* red */

/* Attachments — red palette (lighter tints for doc cards) */
.tw-terminal .tt-pc--attach .tt-at {
  --at-gold: var(--pc-accent);
  --at-gold-mid: color-mix(in srgb, var(--pc-accent) 72%, #e85a40);
  --at-gold-soft: color-mix(in srgb, var(--pc-bar) 55%, #ff8a70);
  --at-gold-bg: color-mix(in srgb, var(--pc-bar) 14%, transparent);
  --at-gold-bg-soft: color-mix(in srgb, var(--pc-bar) 9%, transparent);
  --at-gold-border: color-mix(in srgb, var(--pc-accent) 32%, transparent);
  --at-stack-card: 6.25rem;
  --at-stack-peek: 4.85rem;
  --at-stack-total: calc(var(--at-stack-card) + var(--at-stack-peek) * 2);
  --at-layout-h: var(--pr-diagram-h);
}
.tw-terminal .tt-pc--meetings { --pc-accent: var(--tw-pillar-green); --pc-bar: var(--tw-pillar-green); --pc-on-bar: #fff; }     /* green */

/* Meetings — light green tints on cards (icon chip uses dark --pc-bar) */
.tw-terminal .tt-pc--meetings .tt-mt {
  --mt-green: var(--pc-accent);
  --mt-green-mid: color-mix(in srgb, var(--pc-accent) 68%, #5a9a82);
  --mt-green-border: color-mix(in srgb, var(--pc-accent) 22%, transparent);
  --mt-green-tint: color-mix(in srgb, var(--pc-accent) 7%, #fff);
  --mt-gold: #9A7416;
}

/* Header — icon/index meta row + title, left-aligned */
.tw-terminal .tt-pc-band {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin-bottom: 1rem;
}

.tw-terminal .tt-pc-meta {
  display: flex;
  align-items: center;
  gap: 0.7rem;
}

.tw-terminal .tt-pc-icon {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  padding: 10px;
  box-sizing: border-box;
  background: var(--pc-bar);
  color: var(--pc-on-bar);
}

.tw-terminal .tt-pc-meta .tt-pc-num {
  margin-left: auto;
}

.tw-terminal .tt-pc-num {
  font-family: var(--tw-mono);
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  color: var(--pc-accent);
  opacity: 0.2;
}

.tw-terminal .tt-pc-title {
  font-family: var(--tw-body-font);
  font-size: clamp(1.65rem, 2.7vw, 2.25rem);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--pc-text);
}

.tw-terminal .tt-pc-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.tw-terminal .tt-pc-desc {
  font-family: var(--tw-body-font);
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  letter-spacing: -0.011em;
  color: var(--tw-body-text);
  max-width: 52ch;
  margin-bottom: 1.5rem;
}

/* Example — clean, hairline-ruled, no filled box */
.tw-terminal .tt-pc-visual {
  margin-top: auto;
  border-top: 1px solid var(--pc-line);
  padding-top: 1.15rem;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.tw-terminal .tt-pc-vlabel {
  font-family: var(--tw-mono);
  font-size: 0.6rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--pc-muted);
  margin-bottom: 0.95rem;
}

.tw-terminal .tt-pc-vlabel--strike {
  font-family: var(--tw-body-font);
  font-size: 0.78rem;
  font-style: italic;
  letter-spacing: 0;
  text-transform: none;
  text-decoration: line-through;
  color: var(--pc-muted);
  opacity: 0.8;
}

/* Research — signal chain → POV */
.tw-terminal .tt-pc-chain {
  list-style: none;
  margin: 0 0 1.1rem;
  padding: 0;
}

.tw-terminal .tt-pc-chain li {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
  font-size: 0.84rem;
  line-height: 1.45;
  color: var(--pc-text);
  padding: 0.6rem 0;
  border-top: 1px solid var(--pc-line);
}

.tw-terminal .tt-pc-chain li:first-child {
  border-top: none;
  padding-top: 0;
}

.tw-terminal .tt-pc-tag {
  flex-shrink: 0;
  min-width: 5.6em;
  text-align: center;
  font-family: var(--tw-mono);
  font-size: 0.53rem;
  letter-spacing: 0.08em;
  color: var(--pc-accent);
  background: color-mix(in srgb, var(--pc-bar) 13%, transparent);
  padding: 0.3rem 0.45rem;
}

.tw-terminal .tt-pc-pov {
  margin-top: auto;
  background: color-mix(in srgb, var(--pc-bar) 8%, transparent);
  border-left: 3px solid var(--pc-bar);
  padding: 0.7rem 0.9rem;
}

.tw-terminal .tt-pc-pov-label {
  display: block;
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--pc-accent);
  margin-bottom: 0.35rem;
}

.tw-terminal .tt-pc-pov p {
  font-family: var(--tw-body-font);
  font-style: normal;
  font-size: 0.92rem;
  font-weight: 500;
  line-height: 1.38;
  letter-spacing: -0.01em;
  color: var(--pc-text);
}

/* Research — animated pipeline scan → POV */
.tw-terminal .tt-rsx-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.65rem;
}

.tw-terminal .tt-rsx-scan {
  display: flex;
  align-items: center;
  min-width: 0;
}

.tw-terminal .tt-rsx-shortlist-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.55rem;
  margin-left: auto;
  flex-shrink: 0;
}

.tw-terminal .tt-rsx-scan-label {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--pc-muted);
}

.tw-terminal .tt-rsx-scan-meta {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--pc-accent);
  white-space: nowrap;
}

/* shortlist — 3 of 247 that fit right now */
.tw-terminal .tt-rsx-shortlist {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.35rem;
}

.tw-terminal .tt-rsx-chip {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.03em;
  padding: 0.25rem 0.55rem;
  border: 1px solid var(--pc-line);
  color: var(--pc-muted);
}

.tw-terminal .tt-rsx-chip--pick {
  color: var(--pc-accent);
  border-color: var(--pc-accent);
  background: color-mix(in srgb, var(--pc-accent) 10%, transparent);
}

/* deep-dive label */
.tw-terminal .tt-rsx-dd {
  font-family: var(--tw-mono);
  font-size: 0.6rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--pc-accent);
  margin-bottom: 0.55rem;
}

.tw-terminal .tt-rsx-pulse {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--pc-accent);
  flex-shrink: 0;
}

.tw-terminal .tt-rsx.is-armed:not(.is-shortlisted) .tt-rsx-pulse {
  animation: ttRsxPulse 0.7s ease-in-out infinite;
}

@keyframes ttRsxPulse { 0%, 100% { opacity: 0.25; } 50% { opacity: 1; } }

/* connected signal thread — horizontal Canopy timeline */
.tw-terminal .tt-rsx-timeline-wrap {
  margin-bottom: 0.75rem;
}

.tw-terminal .tt-rsx-timeline-viewport {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  mask-image: linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
}

.tw-terminal .tt-rsx-timeline-viewport::-webkit-scrollbar {
  display: none;
}

.tw-terminal .tt-rsx-timeline-track {
  display: flex;
  align-items: flex-start;
  gap: 0;
  min-width: max-content;
  padding: 0.35rem 0.5rem 0.15rem;
  position: relative;
}

.tw-terminal .tt-rsx-timeline-track::before {
  content: '';
  position: absolute;
  left: 0.5rem;
  right: 0.5rem;
  top: 0.62rem;
  height: 2px;
  background: var(--pc-line);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.85s cubic-bezier(0.16, 1, 0.3, 1) 0.08s;
}

.tw-terminal .tt-rsx.is-built .tt-rsx-timeline-track::before {
  transform: scaleX(1);
}

.tw-terminal .tt-rsx-ev {
  flex: 0 0 auto;
  width: 3.15rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
  text-align: center;
  position: relative;
  z-index: 1;
  padding: 0 0.05rem;
}

.tw-terminal .tt-rsx-ev--signal {
  width: 4.35rem;
}

.tw-terminal .tt-rsx-ev-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--pc-muted);
  opacity: 0.28;
  flex-shrink: 0;
  transition: transform 0.35s ease, opacity 0.35s ease, box-shadow 0.35s ease;
}

.tw-terminal .tt-rsx-ev--signal .tt-rsx-ev-dot {
  width: 9px;
  height: 9px;
  background: var(--pc-accent);
  opacity: 0.35;
}

.tw-terminal .tt-rsx.is-built .tt-rsx-ev--signal.is-lit .tt-rsx-ev-dot {
  opacity: 1;
  transform: scale(1.12);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--pc-accent) 22%, transparent);
}

.tw-terminal .tt-rsx-ev-when {
  font-family: var(--tw-mono);
  font-size: 0.46rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--pc-muted);
  opacity: 0.55;
  line-height: 1.2;
}

.tw-terminal .tt-rsx-ev--signal .tt-rsx-ev-when {
  opacity: 0.85;
  color: var(--pc-accent);
}

.tw-terminal .tt-rsx-ev-label {
  font-family: var(--tw-body-font);
  font-size: 0.48rem;
  line-height: 1.25;
  color: var(--pc-muted);
  opacity: 0.45;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

.tw-terminal .tt-rsx-ev--signal .tt-rsx-ev-label {
  opacity: 0.9;
  color: var(--pc-text);
  font-size: 0.5rem;
}

.tw-terminal .tt-rsx-ev--signal .tt-pc-tag {
  font-size: 0.44rem;
  padding: 0.1rem 0.28rem;
}

.tw-terminal .tt-rsx-timeline-axis {
  display: flex;
  justify-content: space-between;
  font-family: var(--tw-mono);
  font-size: 0.48rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--pc-muted);
  opacity: 0.45;
  padding: 0.15rem 0.35rem 0;
}

.tw-terminal .tt-rsx-signals {
  list-style: none;
  margin: 0 0 0.75rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.tw-terminal .tt-rsx-signal {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.38rem 0;
  border-top: 1px solid var(--pc-line);
  font-size: 0.78rem;
  line-height: 1.38;
  color: var(--pc-text);
}

.tw-terminal .tt-rsx-signal:first-child {
  border-top: none;
  padding-top: 0;
}

.tw-terminal .tt-rsx-text { flex: 1; min-width: 0; }

.tw-terminal .tt-rsx-signal .tt-pc-tag {
  width: 8.5em;
  min-width: 8.5em;
  max-width: 8.5em;
  box-sizing: border-box;
}

/* reveal states (only when JS arms the animation) */
.tw-terminal .tt-rsx .tt-rsx-timeline-wrap,
.tw-terminal .tt-rsx .tt-rsx-signal,
.tw-terminal .tt-rsx .tt-rsx-pov,
.tw-terminal .tt-rsx .tt-rsx-shortlist-row,
.tw-terminal .tt-rsx .tt-rsx-dd {
  transition: opacity 0.4s ease, transform 0.4s ease;
}

.tw-terminal .tt-rsx.is-armed .tt-rsx-timeline-wrap,
.tw-terminal .tt-rsx.is-armed .tt-rsx-signal,
.tw-terminal .tt-rsx.is-armed .tt-rsx-pov,
.tw-terminal .tt-rsx.is-armed .tt-rsx-shortlist-row,
.tw-terminal .tt-rsx.is-armed .tt-rsx-dd {
  opacity: 0;
  transform: translateY(7px);
}

.tw-terminal .tt-rsx.is-shortlisted .tt-rsx-shortlist-row { opacity: 1; transform: none; }
.tw-terminal .tt-rsx.is-built .tt-rsx-dd { opacity: 1; transform: none; }
.tw-terminal .tt-rsx.is-built .tt-rsx-timeline-wrap { opacity: 1; transform: none; }

.tw-terminal .tt-rsx.is-built .tt-rsx-signal { opacity: 1; transform: none; }
.tw-terminal .tt-rsx.is-built .tt-rsx-signal:nth-child(1) { transition-delay: 0.35s; }
.tw-terminal .tt-rsx.is-built .tt-rsx-signal:nth-child(2) { transition-delay: 0.44s; }
.tw-terminal .tt-rsx.is-built .tt-rsx-signal:nth-child(3) { transition-delay: 0.53s; }
.tw-terminal .tt-rsx.is-built .tt-rsx-signal:nth-child(4) { transition-delay: 0.62s; }
.tw-terminal .tt-rsx.is-built .tt-rsx-signal:nth-child(5) { transition-delay: 0.71s; }

.tw-terminal .tt-rsx.is-povd .tt-rsx-pov { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-rsx .tt-rsx-timeline-wrap,
  .tw-terminal .tt-rsx .tt-rsx-signal,
  .tw-terminal .tt-rsx .tt-rsx-pov,
  .tw-terminal .tt-rsx .tt-rsx-shortlist-row,
  .tw-terminal .tt-rsx .tt-rsx-dd { transition: none; }
  .tw-terminal .tt-rsx-timeline-track::before { transition: none; transform: scaleX(1); }
  .tw-terminal .tt-rsx-ev--signal .tt-rsx-ev-dot { opacity: 1; }
}

/* Outreach — per-stakeholder threads */
.tw-terminal .tt-pc-mail {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tw-terminal .tt-pc-mail li {
  display: flex;
  flex-direction: column;
  gap: 0.22rem;
  padding: 0.8rem 0;
  border-top: 1px solid var(--pc-line);
}

.tw-terminal .tt-pc-mail li:first-child {
  border-top: none;
  padding-top: 0;
}

.tw-terminal .tt-pc-to {
  font-family: var(--tw-mono);
  font-size: 0.57rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--pc-accent);
}

.tw-terminal .tt-pc-subj {
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--pc-text);
}

.tw-terminal .tt-pc-snip {
  font-size: 0.8rem;
  line-height: 1.45;
  color: var(--pc-muted);
}

/* Outreach — split before/after + stakeholder carousel */
.tw-terminal .tt-ot { display: block; }

.tw-terminal .tt-ot-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: clamp(0.85rem, 2vw, 1.25rem);
  align-items: stretch;
}

.tw-terminal .tt-ot-pane-head {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.55rem;
}

.tw-terminal .tt-ot-pane-label {
  display: block;
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--pc-muted);
  margin-bottom: 0.65rem;
}

.tw-terminal .tt-ot-pane-label--tw { color: var(--pc-accent); }

.tw-terminal .tt-ot-pane-head-slot {
  min-height: 2.25rem;
  display: flex;
  align-items: center;
}

.tw-terminal .tt-ot-pane--after {
  opacity: 0;
  transform: translateX(10px);
  pointer-events: none;
  transition: opacity 0.5s ease, transform 0.5s ease;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.tw-terminal .tt-ot-pane--before {
  display: flex;
  flex-direction: column;
  min-height: 0;
  opacity: 0;
  transform: translateX(-10px);
  pointer-events: none;
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.tw-terminal .tt-ot.is-show-before .tt-ot-pane--before,
.tw-terminal .tt-ot.is-ready .tt-ot-pane--before {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

.tw-terminal .tt-ot-pane--before .tt-ot-email--before {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.tw-terminal .tt-ot-pane--after .tt-ot-carousel-viewport {
  flex: 1;
  min-height: 0;
}

.tw-terminal .tt-ot.is-ready .tt-ot-pane--after {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

/* Email window — shared */
.tw-terminal .tt-ot-email {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--pc-line);
  background: #f8f8f8;
}

.tw-terminal .tt-ot-chrome {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0.42rem 0.65rem;
  background: #ececec;
  border-bottom: 1px solid var(--pc-line);
}

.tw-terminal .tt-ot-chrome span {
  width: 7px;
  height: 7px;
  background: color-mix(in srgb, var(--pc-muted) 35%, #ccc);
}

.tw-terminal .tt-ot-recipient {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.5rem 0.65rem;
  border-bottom: 1px solid var(--pc-line);
  background: #fff;
}

.tw-terminal .tt-ot-email-meta {
  display: flex;
  flex-direction: column;
  gap: 0.12rem;
  padding: 0.45rem 0.65rem 0.4rem;
  border-bottom: 1px solid var(--pc-line);
  background: #fff;
}

.tw-terminal .tt-ot-recipient--before .tt-ot-name {
  color: var(--pc-text);
}

.tw-terminal .tt-ot-avatar--muted {
  color: var(--pc-muted);
  background: color-mix(in srgb, var(--pc-muted) 12%, transparent);
  border-color: var(--pc-line);
}

.tw-terminal .tt-ot-email--before .tt-ot-recipient {
  background: #fff;
}

.tw-terminal .tt-ot-from,
.tw-terminal .tt-ot-email .tt-ot-to {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.04em;
  line-height: 1.35;
  color: var(--pc-muted);
}

.tw-terminal .tt-ot-email .tt-ot-subj {
  font-size: 0.84rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--pc-text);
  padding-top: 0.08rem;
}

.tw-terminal .tt-ot-email-body {
  padding: 0.55rem 0.65rem 0.65rem;
  background: #fff;
  min-height: 2.5rem;
}

.tw-terminal .tt-ot-body {
  display: block;
  font-size: 0.8rem;
  line-height: 1.35;
  color: var(--pc-muted);
}

.tw-terminal .tt-ot-email--tw {
  border: 1px solid var(--ot-green-border, color-mix(in srgb, var(--pc-accent) 32%, transparent));
  border-left: 3px solid var(--ot-green-mid, var(--pc-accent));
  background: var(--ot-green-bg-soft, color-mix(in srgb, var(--pc-accent) 9%, transparent));
  flex: 1;
  min-height: 100%;
}

.tw-terminal .tt-ot-email--tw .tt-ot-chrome {
  background: color-mix(in srgb, var(--pc-accent) 14%, #ececec);
  border-bottom-color: var(--ot-green-border);
}

.tw-terminal .tt-ot-email--tw .tt-ot-recipient {
  background: var(--ot-green-bg, color-mix(in srgb, var(--pc-accent) 14%, transparent));
  border-bottom-color: var(--ot-green-border);
}

.tw-terminal .tt-ot-email--tw .tt-ot-email-meta {
  background: color-mix(in srgb, var(--pc-accent) 6%, #fff);
  border-bottom-color: color-mix(in srgb, var(--pc-accent) 18%, var(--pc-line));
}

.tw-terminal .tt-ot-email--tw .tt-ot-email-body {
  flex: 1;
  background: color-mix(in srgb, var(--pc-accent) 5%, #fff);
}

.tw-terminal .tt-ot-carousel-viewport .tt-ot-email--tw {
  border: none;
  border-left: none;
  background: transparent;
  flex: 1;
  min-height: 100%;
}

.tw-terminal .tt-ot-carousel-viewport .tt-ot-email {
  background: transparent;
  border: none;
}

.tw-terminal .tt-ot-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: var(--ot-green, var(--pc-accent));
  background: var(--ot-green-bg, color-mix(in srgb, var(--pc-accent) 11%, transparent));
  border: 1px solid var(--ot-green-border, color-mix(in srgb, var(--pc-accent) 22%, transparent));
}

.tw-terminal .tt-ot-who {
  display: flex;
  flex-direction: column;
  gap: 0.05rem;
  min-width: 0;
}

.tw-terminal .tt-ot-name {
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--ot-green, var(--pc-accent));
}

.tw-terminal .tt-ot-role {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.25;
  color: var(--pc-muted);
}

.tw-terminal .tt-ot-attach {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  margin-top: 0.45rem;
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.03em;
  color: var(--ot-green-mid, var(--pc-accent));
}

.tw-terminal .tt-ot-clip { font-size: 0.7rem; }

/* Carousel — one slide visible */
.tw-terminal .tt-ot-carousel-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  width: 100%;
}

.tw-terminal .tt-ot-pane-head-slot .tt-ot-carousel-controls {
  margin-bottom: 0;
}

.tw-terminal .tt-ot-carousel-count {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.06em;
  color: var(--ot-green-mid, var(--pc-accent));
  white-space: nowrap;
}

.tw-terminal .tt-ot-dots {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.tw-terminal .tt-ot-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.65rem;
  height: 1.65rem;
  padding: 0;
  font-family: var(--tw-mono);
  font-size: 0.5rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--ot-green-mid, var(--pc-accent));
  border: 1px solid var(--ot-green-border);
  background: #fff;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.tw-terminal .tt-ot-dot.is-active {
  background: var(--pc-accent);
  border-color: var(--pc-accent);
  color: #fff;
  transform: scale(1.05);
}

.tw-terminal .tt-ot-nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.85rem;
  height: 1.85rem;
  padding: 0;
  border: 1px solid var(--ot-green-border);
  background: var(--ot-green-bg);
  color: var(--ot-green, var(--pc-accent));
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.tw-terminal .tt-ot-nav svg {
  width: 0.9rem;
  height: 0.9rem;
}

.tw-terminal .tt-ot-nav:hover {
  background: color-mix(in srgb, var(--pc-accent) 20%, transparent);
  border-color: var(--pc-accent);
  color: var(--pc-accent);
}

.tw-terminal .tt-ot-carousel-viewport {
  display: grid;
  position: relative;
  overflow: hidden;
  background: var(--ot-green-bg-soft, color-mix(in srgb, var(--pc-accent) 9%, transparent));
  border: 1px solid var(--ot-green-border, color-mix(in srgb, var(--pc-accent) 32%, transparent));
  border-left: 3px solid var(--ot-green-mid, var(--pc-accent));
}

.tw-terminal .tt-ot-slide {
  grid-area: 1 / 1;
  display: none;
  flex-direction: column;
  min-height: 100%;
}

.tw-terminal .tt-ot-slide.is-active {
  display: flex;
  min-height: 100%;
}

.tw-terminal .tt-ot-slide.is-active.is-from-right {
  animation: ttOtSlideFromRight 0.28s ease-out;
}

.tw-terminal .tt-ot-slide.is-active.is-from-left {
  animation: ttOtSlideFromLeft 0.28s ease-out;
}

@keyframes ttOtSlideFromRight {
  from { transform: translateX(14px); }
  to   { transform: translateX(0); }
}

@keyframes ttOtSlideFromLeft {
  from { transform: translateX(-14px); }
  to   { transform: translateX(0); }
}

@media (max-width: 900px) {
  .tw-terminal .tt-ot-split { grid-template-columns: 1fr; }

  /* Desktop alignment spacer — not needed when panes stack */
  .tw-terminal .tt-ot-pane--before .tt-ot-pane-head-slot {
    display: none;
  }

  /* Yellow block — full final height once the before pane appears; content fills on is-ready */
  .tw-terminal .tt-ot.is-show-before .tt-ot-pane--after,
  .tw-terminal .tt-ot.is-ready .tt-ot-pane--after {
    opacity: 1;
    transform: none;
    max-height: none;
    overflow: visible;
    pointer-events: none;
  }

  .tw-terminal .tt-ot.is-ready .tt-ot-pane--after {
    pointer-events: auto;
  }

  .tw-terminal .tt-ot.is-show-before:not(.is-ready) .tt-ot-pane--after .tt-ot-pane-head,
  .tw-terminal .tt-ot.is-show-before:not(.is-ready) .tt-ot-pane--after .tt-ot-slide {
    opacity: 0;
    visibility: hidden;
  }
}

@container pillar-panel (max-width: 1000px) {
  .tw-terminal .tt-ot-split { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-ot-slide.is-active.is-from-right,
  .tw-terminal .tt-ot-slide.is-active.is-from-left { animation: none; }
  .tw-terminal .tt-ot-pane--before,
  .tw-terminal .tt-ot-pane--after { transition: none; transform: none; }
  .tw-terminal .tt-ot.is-show-before .tt-ot-pane--before,
  .tw-terminal .tt-ot.is-ready .tt-ot-pane--before,
  .tw-terminal .tt-ot.is-ready .tt-ot-pane--after { opacity: 1; pointer-events: auto; }
}

/* Attachments pillar — fade in doc, then stack after scroll */
.tw-terminal .tt-at .tt-p-attach-featured,
.tw-terminal .tt-at .tt-p-attach-tile,
.tw-terminal .tt-at .tt-p-attach-lib-label {
  transition: opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1), transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.tw-terminal .tt-at.is-armed .tt-p-attach-featured-wrap .tt-p-attach-lib-label,
.tw-terminal .tt-at.is-armed .tt-p-attach-featured {
  opacity: 0;
  transform: translateY(6px);
}

.tw-terminal .tt-at:not(.is-revealed) .tt-p-attach-library .tt-p-attach-lib-label {
  opacity: 0;
  transform: translateY(6px);
}

.tw-terminal .tt-at:not(.is-revealed) .tt-p-attach-stack .tt-p-attach-tile {
  opacity: 0;
  transform: translateY(12px);
}

.tw-terminal .tt-at.is-built .tt-p-attach-featured,
.tw-terminal .tt-at.is-scrolling .tt-p-attach-featured,
.tw-terminal .tt-at.is-revealed .tt-p-attach-featured {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-at.is-revealed .tt-p-attach-stack .tt-p-attach-tile {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-at.is-revealed .tt-p-attach-stack .tt-p-attach-tile:nth-child(1) { transition-delay: 0s; }
.tw-terminal .tt-at.is-revealed .tt-p-attach-stack .tt-p-attach-tile:nth-child(2) { transition-delay: 0.14s; }
.tw-terminal .tt-at.is-revealed .tt-p-attach-stack .tt-p-attach-tile:nth-child(3) { transition-delay: 0.28s; }

.tw-terminal .tt-at.is-built .tt-p-attach-featured-wrap .tt-p-attach-lib-label,
.tw-terminal .tt-at.is-scrolling .tt-p-attach-featured-wrap .tt-p-attach-lib-label,
.tw-terminal .tt-at.is-revealed .tt-p-attach-featured-wrap .tt-p-attach-lib-label {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-at.is-revealed .tt-p-attach-library .tt-p-attach-lib-label {
  opacity: 1;
  transition-delay: 0.03s;
}

.tw-terminal .tt-at .tt-at-viewport::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2.75rem;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.92) 55%, #fff 100%);
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-at .tt-p-attach-featured,
  .tw-terminal .tt-at .tt-p-attach-tile,
  .tw-terminal .tt-at .tt-p-attach-lib-label { transition: none; opacity: 1; transform: none; }
  .tw-terminal .tt-at .tt-at-inner { transform: none !important; }
}

/* Attachments — case file (legacy) */
.tw-terminal .tt-pc-doc-tag {
  font-family: var(--tw-mono);
  font-size: 0.57rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--pc-accent);
}

.tw-terminal .tt-pc-doc-title {
  font-family: var(--tw-display);
  font-size: 1.05rem;
  line-height: 1.3;
  color: var(--pc-text);
  margin: 0.4rem 0 0.9rem;
}

.tw-terminal .tt-pc-toc {
  list-style: none;
  counter-reset: toc;
  margin: 0;
  padding: 0;
}

.tw-terminal .tt-pc-toc li {
  counter-increment: toc;
  display: flex;
  gap: 0.7rem;
  font-size: 0.8rem;
  line-height: 1.4;
  color: var(--pc-text);
  padding: 0.5rem 0;
  border-top: 1px solid var(--pc-line);
}

.tw-terminal .tt-pc-toc li:first-child {
  border-top: none;
  padding-top: 0;
}

.tw-terminal .tt-pc-toc li::before {
  content: counter(toc, decimal-leading-zero);
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  color: var(--pc-accent);
  flex-shrink: 0;
}

.tw-terminal .tt-pc-excerpt {
  margin: 1rem 0 0;
  background: color-mix(in srgb, var(--pc-bar) 8%, transparent);
  border-left: 3px solid var(--pc-bar);
  padding: 0.85rem 1rem;
  font-family: var(--tw-body-font);
  font-style: normal;
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--pc-text);
}

.tw-terminal .tt-pc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin-top: 0.95rem;
}

.tw-terminal .tt-pc-chips span {
  font-family: var(--tw-mono);
  font-size: 0.55rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--pc-accent);
}

/* Meetings — full room briefs */
.tw-terminal .tt-mt {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.tw-terminal .tt-mt-top {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex-shrink: 0;
}

.tw-terminal .tt-mt-event {
  display: flex;
  align-items: stretch;
  gap: 0.65rem;
  padding: 0.55rem 0.65rem;
  border: 1px solid var(--mt-green-border);
  border-left: 3px solid var(--mt-green-mid);
  background: #fff;
}

.tw-terminal .tt-mt-event-cal {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.4rem;
  padding: 0.28rem 0.2rem;
  border: 1px solid var(--mt-green-border);
  background: var(--mt-green-tint);
  text-align: center;
  line-height: 1.1;
}

.tw-terminal .tt-mt-event-mon {
  font-family: var(--tw-mono);
  font-size: 0.5rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--pc-muted);
}

.tw-terminal .tt-mt-event-date {
  font-size: 1.02rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--mt-green-mid);
}

.tw-terminal .tt-mt-event-dow {
  font-family: var(--tw-mono);
  font-size: 0.48rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--pc-muted);
}

.tw-terminal .tt-mt-event-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.18rem;
  min-width: 0;
}

.tw-terminal .tt-mt-event-title {
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--pc-text);
}

.tw-terminal .tt-mt-event-meta {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.02em;
  color: var(--pc-muted);
}

.tw-terminal .tt-mt-brief-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.38rem 0 0.12rem 0.9rem;
}

.tw-terminal .tt-mt-connector {
  flex-shrink: 0;
  width: 0.65rem;
  height: 0.65rem;
  margin-top: -0.2rem;
  border-left: 1.5px solid var(--mt-green-mid);
  border-bottom: 1.5px solid var(--mt-green-mid);
  opacity: 0.45;
  transform-origin: top left;
  transform: scale(0.35);
  transition: transform 0.42s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease;
}

.tw-terminal .tt-mt-label {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--pc-accent);
  flex-shrink: 0;
}

.tw-terminal .tt-mt-stack {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.tw-terminal .tt-mt-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--mt-green-border);
  border-left: 3px solid var(--mt-green-mid);
  background: color-mix(in srgb, var(--pc-accent) 4%, #fff);
}

.tw-terminal .tt-mt-recipient {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.5rem 0.65rem;
  border-bottom: 1px solid var(--mt-green-border);
  background: var(--mt-green-tint);
}

.tw-terminal .tt-mt-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: var(--mt-green-mid);
  background: color-mix(in srgb, var(--pc-accent) 11%, #fff);
  border: 1px solid var(--mt-green-border);
}

.tw-terminal .tt-mt-who {
  display: flex;
  flex-direction: column;
  gap: 0.05rem;
  min-width: 0;
}

.tw-terminal .tt-mt-name {
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--mt-green-mid);
}

.tw-terminal .tt-mt-role {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.25;
  color: var(--pc-muted);
}

.tw-terminal .tt-mt-focus {
  padding: 0.5rem 0.65rem;
  border-bottom: 1px solid var(--pc-line);
  background: #fff;
}

.tw-terminal .tt-mt-focus-k {
  display: block;
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--pc-muted);
  margin-bottom: 0.22rem;
}

.tw-terminal .tt-mt-need {
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--pc-text);
  margin: 0;
}

.tw-terminal .tt-mt-signals {
  list-style: none;
  margin: 0;
  padding: 0.45rem 0.65rem 0.55rem 1.35rem;
  background: #fff;
  border-left: 2px solid var(--mt-green-border);
  margin-left: 0.65rem;
}

.tw-terminal .tt-mt-signals .tt-rsx-signal {
  align-items: center;
  font-size: 0.72rem;
  line-height: 1.35;
}

.tw-terminal .tt-mt-signals .tt-pc-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  padding: 0.28rem 0.45rem;
}

/* Meetings — phased reveal */
.tw-terminal .tt-mt .tt-mt-event,
.tw-terminal .tt-mt .tt-mt-brief-row,
.tw-terminal .tt-mt .tt-mt-card,
.tw-terminal .tt-mt .tt-rsx-signal {
  transition:
    opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.tw-terminal .tt-mt .tt-mt-event,
.tw-terminal .tt-mt .tt-mt-brief-row,
.tw-terminal .tt-mt .tt-mt-card,
.tw-terminal .tt-mt .tt-mt-signals .tt-rsx-signal {
  opacity: 0;
}

.tw-terminal .tt-mt .tt-mt-event { transform: translateY(8px); }
.tw-terminal .tt-mt .tt-mt-brief-row { transform: translateY(6px); }
.tw-terminal .tt-mt .tt-mt-card { transform: translateY(12px); }
.tw-terminal .tt-mt .tt-mt-signals .tt-rsx-signal { transform: translateX(-6px); }

.tw-terminal .tt-mt .tt-mt-connector {
  opacity: 0;
  transform: scale(0.35);
}

.tw-terminal .tt-mt.is-event .tt-mt-event {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-mt.is-linked .tt-mt-brief-row {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-mt.is-linked .tt-mt-connector {
  opacity: 0.45;
  transform: scale(1);
}

.tw-terminal .tt-mt.is-card-1 .tt-mt-card:nth-child(1) {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-mt.is-card-2 .tt-mt-card:nth-child(2) {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-mt.is-signals .tt-mt-signals .tt-rsx-signal {
  opacity: 1;
  transform: none;
}

.tw-terminal .tt-mt.is-signals .tt-mt-card:nth-child(1) .tt-rsx-signal:nth-child(1) { transition-delay: 0s; }
.tw-terminal .tt-mt.is-signals .tt-mt-card:nth-child(1) .tt-rsx-signal:nth-child(2) { transition-delay: 0.1s; }
.tw-terminal .tt-mt.is-signals .tt-mt-card:nth-child(2) .tt-rsx-signal:nth-child(1) { transition-delay: 0.22s; }
.tw-terminal .tt-mt.is-signals .tt-mt-card:nth-child(2) .tt-rsx-signal:nth-child(2) { transition-delay: 0.32s; }

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-mt .tt-mt-event,
  .tw-terminal .tt-mt .tt-mt-brief-row,
  .tw-terminal .tt-mt .tt-mt-card,
  .tw-terminal .tt-mt .tt-rsx-signal,
  .tw-terminal .tt-mt .tt-mt-connector {
    transition: none;
    opacity: 1;
    transform: none;
  }
}

.tw-terminal .tt-pc-more {
  margin-top: 0.9rem;
  padding-top: 0.7rem;
  border-top: 1px solid var(--pc-line);
  font-size: 0.78rem;
  font-style: italic;
  color: var(--pc-muted);
}

@media (max-width: 768px) {
  .tw-terminal .tt-pr-inner { grid-template-columns: 1fr; gap: 0; }
  .tw-terminal .tt-pr-left {
    padding: clamp(1.65rem, 5vw, 2.25rem) clamp(1.15rem, 4vw, 1.5rem) clamp(1.35rem, 4vw, 1.75rem);
  }
  .tw-terminal .tt-pr-visual-stage {
    padding: clamp(0.85rem, 2.8vw, 1.15rem) clamp(0.85rem, 3vw, 1.15rem) clamp(0.75rem, 2.5vw, 1rem);
  }
  .tw-terminal .tt-pr-head .tt-pc-title { font-size: clamp(1.65rem, 7vw, 2.25rem); }
}

.tw-terminal .tt-pillars-tab-nav {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--tw-rule);
  margin-top: 2.75rem;
}

.tw-terminal .tt-pillars-tab {
  display: flex;
  align-items: baseline;
  gap: 0.35rem;
  font-family: var(--tw-body-font);
  font-size: 1em;
  font-weight: 500;
  color: var(--tw-text-muted);
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 0.65rem 1.75rem 0.65rem 0;
  margin-bottom: -1px;
  cursor: pointer;
  letter-spacing: -0.01em;
  transition: color 150ms;
  white-space: nowrap;
  flex-shrink: 0;
}

.tw-terminal .tt-pillars-tab:hover { color: var(--tw-text-dark); }

.tw-terminal .tt-pillars-tab.is-active {
  color: var(--tw-green);
  border-bottom-color: var(--tw-green);
}

.tw-terminal .tt-pillar-letter {
  font-family: var(--tw-mono);
  font-size: 0.72rem;
  color: var(--tw-gold);
}

.tw-terminal .tt-pillar-panel {
  display: none;
  padding: clamp(2rem, 4vw, 3rem) 0 0.5rem;
}

.tw-terminal .tt-pillar-panel.is-active {
  display: block;
}

.tw-terminal .tt-pillar-desc {
  font-family: var(--tw-body-font);
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  letter-spacing: -0.011em;
  color: var(--tw-text-muted);
  max-width: 62ch;
  margin-bottom: 2rem;
}

/* Research / Artifacts two-column layout */
.tw-terminal .tt-p-find-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  align-items: start;
}

.tw-terminal .tt-p-heatmap {
  background: #ffffff;
  border: 1px solid var(--tw-rule);
  border-radius: 10px;
  padding: 1.1rem 1.25rem;
}

.tw-terminal .tt-p-hm-label {
  font-family: var(--tw-mono);
  font-size: 0.57rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.3);
  margin-bottom: 0.75rem;
}

.tw-terminal .tt-p-treemap {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  grid-template-rows: 110px 82px 62px 48px 36px;
  gap: 3px;
}

.tw-terminal .tt-p-tm-tile {
  grid-column: span var(--span, 2);
  border-radius: 4px;
  padding: 0.4rem 0.5rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 2px;
  overflow: hidden;
  position: relative;
}

.tw-terminal .tt-p-tm-name {
  font-family: var(--tw-body-font);
  font-size: 0.58rem;
  font-weight: 400;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tw-terminal .tt-p-tm-deal {
  font-family: var(--tw-mono);
  font-size: 0.5rem;
  opacity: 0.7;
}

.tw-terminal .tt-p-tm-tile.cold { background: rgba(0,0,0,0.04); }
.tw-terminal .tt-p-tm-tile.cold .tt-p-tm-name { color: rgba(0,0,0,0.35); }
.tw-terminal .tt-p-tm-tile.cold .tt-p-tm-deal { color: rgba(0,0,0,0.25); }

.tw-terminal .tt-p-tm-tile.warm { background: rgba(201,169,97,0.12); }
.tw-terminal .tt-p-tm-tile.warm .tt-p-tm-name { color: #9a7730; }
.tw-terminal .tt-p-tm-tile.warm .tt-p-tm-deal { color: #b08840; }

.tw-terminal .tt-p-tm-tile.hot {
  background: rgba(11,31,26,0.08);
  outline: 1px solid rgba(11,31,26,0.3);
}
.tw-terminal .tt-p-tm-tile.hot .tt-p-tm-name { color: var(--tw-green); }
.tw-terminal .tt-p-tm-tile.hot .tt-p-tm-deal { color: #2a7864; }

.tw-terminal .tt-p-tm-tile.hot.selected::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 4px;
  animation: tt-p-pulse 2.2s ease-in-out infinite;
}

@keyframes tt-p-pulse {
  0%, 100% { box-shadow: 0 0 0 2px rgba(11,31,26,0.2); }
  50%       { box-shadow: 0 0 0 5px rgba(11,31,26,0.06); }
}

/* POV synthesis chain */
.tw-terminal .tt-p-chain-wrap {
  background: var(--tw-green);
  border-radius: 10px;
  padding: 1.1rem 1.25rem;
  display: flex;
  flex-direction: column;
}

.tw-terminal .tt-p-chain-wrap .tt-p-hm-label {
  color: rgba(255,255,255,0.35);
}

.tw-terminal .tt-p-chain {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.tw-terminal .tt-p-node {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: 0.75rem 1rem;
}

.tw-terminal .tt-p-node-insight {
  background: #1A1A1A;
  border-color: rgba(201,169,97,0.45);
}

.tw-terminal .tt-p-node-cat {
  display: inline-block;
  font-family: var(--tw-mono);
  font-size: 0.52rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: rgba(255,255,255,0.45);
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 999px;
  padding: 0.1rem 0.45rem;
  margin-bottom: 0.3rem;
}

.tw-terminal .tt-p-node-insight .tt-p-node-cat {
  color: var(--tw-gold);
  border-color: rgba(201,169,97,0.32);
}

.tw-terminal .tt-p-node-text {
  font-family: var(--tw-body-font);
  font-size: 0.76rem;
  color: rgba(255,255,255,0.58);
  line-height: 1.6;
}

.tw-terminal .tt-p-node-insight .tt-p-node-text {
  color: rgba(255,255,255,0.82);
}

.tw-terminal .tt-p-connector {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.tw-terminal .tt-p-conn-line {
  width: 1px;
  height: 0.65rem;
  background: rgba(255,255,255,0.14);
}

.tw-terminal .tt-p-conn-label {
  font-family: var(--tw-mono);
  font-size: 0.5rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: rgba(255,255,255,0.2);
  padding: 0.04rem 0;
}

/* Outreach compare layout */
.tw-terminal .tt-p-compare {
  display: grid;
  grid-template-columns: 1fr 1.55fr;
  gap: 1.25rem;
  align-items: start;
}

.tw-terminal .tt-p-compare-label {
  font-family: var(--tw-mono);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
  color: rgba(0,0,0,0.5);
}

.tw-terminal .tt-p-compare-before,
.tw-terminal .tt-p-compare-after {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.tw-terminal .tt-p-email-card {
  border-radius: 8px;
  overflow: hidden;
}

.tw-terminal .tt-p-email-chrome {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0.45rem 0.85rem;
}

.tw-terminal .tt-p-email-generic .tt-p-email-chrome {
  background: #f5f5f5;
  border-bottom: 1px solid rgba(0,0,0,0.07);
}

.tw-terminal .tt-p-email-tw .tt-p-email-chrome {
  background: rgba(255,255,255,0.06);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.tw-terminal .tt-p-email-chrome-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.tw-terminal .tt-p-email-generic {
  background: #ffffff;
  border: 1px solid var(--tw-rule);
}

.tw-terminal .tt-p-email-tw {
  background: var(--tw-green);
  border: 1px solid rgba(255,255,255,0.05);
}

.tw-terminal .tt-p-email-to {
  font-family: var(--tw-mono);
  font-size: 0.57rem;
  color: rgba(0,0,0,0.38);
  padding: 0.8rem 1rem 0;
  display: block;
}

.tw-terminal .tt-p-email-tw .tt-p-email-to {
  color: rgba(255,255,255,0.32);
}

.tw-terminal .tt-p-email-subject {
  font-family: var(--tw-body-font);
  font-size: 0.77rem;
  font-weight: 600;
  margin-bottom: 0.45rem;
  padding: 0.35rem 1rem 0;
  display: block;
}

.tw-terminal .tt-p-email-generic .tt-p-email-subject { color: var(--tw-text-dark); }
.tw-terminal .tt-p-email-tw      .tt-p-email-subject { color: rgba(255,255,255,0.92); }

.tw-terminal .tt-p-email-body {
  font-family: var(--tw-body-font);
  font-size: 0.72rem;
  line-height: 1.6;
  padding: 0 1rem 1rem;
  display: block;
}

.tw-terminal .tt-p-email-generic .tt-p-email-body { color: rgba(0,0,0,0.52); }
.tw-terminal .tt-p-email-tw      .tt-p-email-body { color: rgba(255,255,255,0.52); }

.tw-terminal .tt-p-email-attach {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  margin: 0 1rem 0.9rem;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 4px;
  padding: 0.28rem 0.5rem;
  width: fit-content;
}

.tw-terminal .tt-p-email-attach-icon {
  font-size: 0.6rem;
  line-height: 1;
}

.tw-terminal .tt-p-email-attach-name {
  font-family: var(--tw-mono);
  font-size: 0.55rem;
  color: rgba(255,255,255,0.42);
  letter-spacing: 0.01em;
}

/* Meetings — dossier cards */
.tw-terminal .tt-p-meet-card {
  border-radius: 8px;
  overflow: hidden;
  padding: 0.95rem 1.1rem 1.05rem;
}

.tw-terminal .tt-p-meet-card--generic {
  background: #ffffff;
  border: 1px solid var(--tw-rule);
}

.tw-terminal .tt-p-meet-card--tw {
  background: var(--tw-green);
  border: 1px solid rgba(255,255,255,0.05);
}

.tw-terminal .tt-p-meet-header {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  padding-bottom: 0.6rem;
  margin-bottom: 0.6rem;
}

.tw-terminal .tt-p-meet-card--generic .tt-p-meet-header {
  border-bottom: 1px solid var(--tw-rule);
}

.tw-terminal .tt-p-meet-card--tw .tt-p-meet-header {
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.tw-terminal .tt-p-meet-name {
  font-family: var(--tw-body-font);
  font-size: 0.8rem;
  font-weight: 600;
}

.tw-terminal .tt-p-meet-card--generic .tt-p-meet-name { color: var(--tw-text-dark); }
.tw-terminal .tt-p-meet-card--tw      .tt-p-meet-name { color: rgba(255,255,255,0.92); }

.tw-terminal .tt-p-meet-role {
  font-family: var(--tw-mono);
  font-size: 0.57rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.tw-terminal .tt-p-meet-card--generic .tt-p-meet-role { color: rgba(0,0,0,0.38); }
.tw-terminal .tt-p-meet-card--tw      .tt-p-meet-role { color: rgba(255,255,255,0.32); }

.tw-terminal .tt-p-meet-tenure {
  font-family: var(--tw-mono);
  font-size: 0.59rem;
  color: rgba(0,0,0,0.35);
  margin: 0 0 0.35rem;
}

.tw-terminal .tt-p-meet-bio {
  font-family: var(--tw-body-font);
  font-size: 0.75rem;
  line-height: 1.55;
  color: rgba(0,0,0,0.45);
  margin: 0;
}

.tw-terminal .tt-p-meet-solving {
  font-family: var(--tw-body-font);
  font-style: italic;
  font-size: 0.74rem;
  line-height: 1.55;
  color: rgba(255,255,255,0.52);
  margin: 0 0 0.7rem;
}

.tw-terminal .tt-p-meet-signals {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.tw-terminal .tt-p-meet-signal {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.tw-terminal .tt-p-meet-source {
  font-family: var(--tw-mono);
  font-size: 0.57rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.28);
}

.tw-terminal .tt-p-meet-takeaway {
  font-family: var(--tw-body-font);
  font-style: italic;
  font-size: 0.72rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.7);
  margin: 0;
}

.tw-terminal .tt-p-meet-brand {
  color: var(--tw-gold);
  font-weight: 500;
  font-style: normal;
  margin-right: 0.3em;
}

.tw-terminal .tt-p-meet-open-with {
  margin-top: 0.5rem;
  padding: 0.75rem 1rem;
  background: rgba(201,169,97,0.06);
  border: 1px solid rgba(201,169,97,0.16);
  border-radius: 6px;
}

.tw-terminal .tt-p-meet-ow-label {
  font-family: var(--tw-mono);
  font-size: 0.54rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tw-gold);
  display: block;
  margin-bottom: 0.3rem;
}

.tw-terminal .tt-p-meet-ow-text {
  font-family: var(--tw-body-font);
  font-size: 0.77rem;
  line-height: 1.55;
  color: rgba(0,0,0,0.58);
  margin: 0;
}

/* ==============================================
   FOOTER — MANIFESTO SCROLL + CTA
============================================== */
.tw-terminal .tt-footer-region {
  position: relative;
  background: #0A0A0A;
}

.tw-terminal .tt-footer-manifesto {
  --ft-progress: 0;
  --ft-enter: 0;
  --ft-invert: 0;
  --ft-punch: 0;
  --ft-highlight: 0;
  --ft-img: 0;
  position: relative;
  min-height: 220vh;
}

.tw-terminal .tt-footer-manifesto-sticky {
  position: sticky;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  min-height: 22rem;
  overflow: hidden;
  box-sizing: border-box;
  padding-bottom: 0;
}

.tw-terminal .tt-footer-manifesto-layout {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(1.5rem, 3.5vw, 3.25rem);
  align-items: center;
  width: 100%;
  padding-block: 0;
  box-sizing: border-box;
}

.tw-terminal .tt-footer-manifesto-quote {
  margin: 0;
  padding: 0;
  border: 0;
  max-width: none;
  min-width: 0;
  container-type: inline-size;
  box-sizing: border-box;
}

.tw-terminal .tt-footer-manifesto-lead,
.tw-terminal .tt-footer-manifesto-punch {
  margin: 0;
  font-family: var(--tw-display);
  font-size: clamp(2.1rem, 3.8vw, 3.65rem);
  letter-spacing: -0.03em;
  line-height: 1.06;
  color: color-mix(in srgb, #FFFFFF calc(var(--ft-invert) * 100%), #0A0A0A);
  transition: color 80ms linear;
  overflow-wrap: break-word;
}

.tw-terminal .tt-footer-manifesto-lead {
  font-weight: 400;
}

.tw-terminal .tt-footer-manifesto-punch {
  overflow-x: clip;
  overflow-y: hidden;
  line-height: 1.12;
  max-height: calc(var(--ft-punch, 0) * 1.2em);
  padding-bottom: calc(var(--ft-punch, 0) * 0.16em);
  margin-top: calc(var(--ft-punch, 0) * 0.22em);
  font-weight: 500;
  font-style: italic;
  white-space: nowrap;
  opacity: var(--ft-punch, 0);
  transform: translate3d(0, calc((1 - var(--ft-punch, 0)) * 1.15rem), 0);
  filter: blur(calc((1 - var(--ft-punch, 0)) * 3px));
}

.tw-terminal .tt-footer-manifesto-mark {
  position: relative;
  display: inline;
}

.tw-terminal .tt-footer-manifesto-highlighter {
  display: block;
  position: absolute;
  left: 50%;
  bottom: -0.1em;
  width: 108%;
  height: 0.88em;
  z-index: -1;
  pointer-events: none;
  overflow: visible;
  transform: translateX(-50%) scaleX(var(--ft-highlight, 0)) rotate(-1.4deg);
  transform-origin: center 72%;
  opacity: calc(0.2 + var(--ft-highlight, 0) * 0.8);
}

.tw-terminal .tt-footer-manifesto-highlighter-body {
  fill: rgba(234, 194, 74, 0.5);
}

.tw-terminal .tt-footer-manifesto-highlighter-edge {
  stroke: rgba(154, 116, 22, 0.42);
  stroke-width: 1.15;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.tw-terminal .tt-footer-manifesto-art {
  margin: 0;
  align-self: center;
  width: clamp(24rem, 42vw, 40rem);
  justify-self: end;
  opacity: calc(0.15 + var(--ft-enter) * 0.85);
  transform: translate3d(0, calc((1 - var(--ft-enter)) * 1.5rem), 0) scale(calc(0.97 + var(--ft-enter) * 0.03));
  transition: opacity 80ms linear, transform 80ms linear;
}

.tw-terminal .tt-footer-manifesto-art-frame {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1 / 1;
  /* Deep charcoal mat — the photo emerges out of darkness as it wipes open */
  background: #0C0C0C;
  border: 1px solid color-mix(in srgb, rgba(255, 255, 255, 0.20) calc(var(--ft-enter) * 100%), rgba(0, 0, 0, 0.16));
  box-shadow:
    0 24px 60px rgba(0, 0, 0, calc(var(--ft-enter) * 0.34)),
    0 0 0 1px color-mix(in srgb, rgba(255, 255, 255, 0.05) calc(var(--ft-enter) * 100%), transparent);
}

.tw-terminal .tt-footer-manifesto-art-frame::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(155deg, rgba(0, 0, 0, 0.30) 0%, transparent 44%, transparent 100%);
  pointer-events: none;
  opacity: calc(var(--ft-invert) * 0.85);
  z-index: 2;
}

.tw-terminal .tt-footer-manifesto-art img {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  object-position: center 38%;
  /* Curtain wipe: a crisp vertical edge travels right -> left, opening from the
     buyer's side first, then expanding to show the whole handshake. */
  clip-path: inset(0 0 0 calc((1 - var(--ft-img, 0)) * 100%));
  filter: grayscale(1) contrast(1.07) brightness(calc(0.74 + var(--ft-invert) * 0.26));
}

/* Travelling gold seam at the wipe edge — the meeting point. Bell-curve opacity:
   fades in as the wipe begins, peaks mid-reveal, fades out as it completes. */
.tw-terminal .tt-footer-manifesto-art-seam {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc((1 - var(--ft-img, 0)) * 100%);
  width: 2px;
  transform: translateX(-1px);
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(234, 194, 74, 0.85) 18%,
    rgba(201, 169, 97, 0.95) 50%,
    rgba(234, 194, 74, 0.85) 82%,
    transparent 100%
  );
  box-shadow: 0 0 12px rgba(234, 194, 74, 0.55);
  opacity: calc(var(--ft-img, 0) * (1 - var(--ft-img, 0)) * 4);
}

.tw-terminal .tt-footer-manifesto-bg {
  position: absolute;
  inset: 0;
  background: color-mix(in srgb, #0A0A0A calc(var(--ft-invert) * 100%), #FFFFFF);
  transition: background 80ms linear;
}

.tw-terminal .tt-footer-manifesto-bg::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 70% 60% at 78% 58%, rgba(201, 169, 97, 0.07) 0%, transparent 68%);
  opacity: var(--ft-invert);
  pointer-events: none;
}

@media (max-width: 960px) {
  .tw-terminal .tt-footer-manifesto-layout {
    grid-template-columns: 1fr;
    gap: clamp(1.75rem, 4vh, 2.25rem);
    padding-block: 0;
  }

  .tw-terminal .tt-footer-manifesto-quote {
    max-width: none;
  }

  .tw-terminal .tt-footer-manifesto-art {
    width: clamp(20rem, 74vw, 30rem);
    margin-inline: 0;
    justify-self: start;
  }
}

.tw-terminal .tt-footer-cta--dark {
  position: relative;
  z-index: 2;
  background: #0A0A0A;
  color: #FFFFFF;
  padding: clamp(4rem, 12vh, 7rem) 0 clamp(3rem, 8vh, 5rem);
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.tw-terminal .tt-footer-cta-title {
  color: #FFFFFF;
}

.tw-terminal .tt-footer-cta--dark .tt-footer-cta-sub {
  color: rgba(255, 255, 255, 0.58);
}

.tw-terminal .tt-btn-ghost--on-dark {
  color: #FFFFFF;
  border-color: rgba(255, 255, 255, 0.38);
}

.tw-terminal .tt-btn-ghost--on-dark:hover {
  color: #0A0A0A;
  background: #FFFFFF;
  border-color: #FFFFFF;
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-footer-manifesto {
    min-height: auto;
  }

  .tw-terminal .tt-footer-manifesto-sticky {
    position: relative;
    height: auto;
    min-height: clamp(22rem, 70vh, 32rem);
  }

  .tw-terminal .tt-footer-manifesto-quote {
    transform: none;
  }

  .tw-terminal .tt-footer-manifesto-punch {
    overflow: visible;
    max-height: none;
    padding-bottom: 0;
    margin-top: 0.22em;
    opacity: 1;
    transform: none;
    filter: none;
  }

  .tw-terminal .tt-footer-manifesto-highlighter {
    transform: translateX(-50%) rotate(-1.4deg);
    opacity: 1;
  }
}

/* Cookie consent bar */
.tw-terminal .tt-cookie-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1rem, 3vw, 2.5rem);
  flex-wrap: wrap;
  padding: 1rem clamp(1.25rem, 4vw, 3rem);
  background: #0A0A0A;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.tw-terminal .tt-cookie-bar.is-visible {
  transform: translateY(0);
}

.tw-terminal .tt-cookie-text {
  font-family: var(--tw-body-font);
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
  line-height: 1.5;
}

.tw-terminal .tt-cookie-actions {
  display: flex;
  gap: 0.6rem;
  flex-shrink: 0;
}

.tw-terminal .tt-cookie-btn {
  font-family: var(--tw-body-font);
  font-size: 0.85rem;
  font-weight: 500;
  line-height: 1;
  padding: 0.55rem 1.2rem;
  border: 1.5px solid transparent;
  border-radius: 0;
  cursor: pointer;
  transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease;
}

.tw-terminal .tt-cookie-btn--accept {
  background: #EAC24A;
  color: #0A0A0A;
}

.tw-terminal .tt-cookie-btn--accept:hover {
  background: #F2CE5C;
}

.tw-terminal .tt-cookie-btn--decline {
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  border-color: rgba(255, 255, 255, 0.28);
}

.tw-terminal .tt-cookie-btn--decline:hover {
  color: #FFFFFF;
  border-color: rgba(255, 255, 255, 0.55);
}

.tw-terminal .tt-footer-cta {
  text-align: center;
}

/* Footer "Book a demo" — same yellow as the nav CTA */
.tw-terminal .tt-footer-cta .tt-btn-gold {
  background-color: #EAC24A;
  color: #0A0A0A;
  border: 1.5px solid #0A0A0A;
}

.tw-terminal .tt-footer-cta .tt-btn-gold:hover {
  background-color: #F2CE5C;
}

.tw-terminal .tt-footer-cta-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}

.tw-terminal .tt-footer-cta-sub {
  font-family: var(--tw-body-font);
  font-size: clamp(0.78125rem, 0.175rem + 1.05vw, 1rem);
  color: var(--tw-body-text);
  line-height: var(--tw-body-leading);
  letter-spacing: -0.011em;
}

/* ==============================================
   FREE-BRIEF FORM (footer CTA)
============================================== */
.tw-terminal .tt-brief-form {
  width: 100%;
  max-width: 40rem;
  margin: 0.5rem auto 0;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.tw-terminal .tt-form-honey {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.tw-terminal .tt-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.1rem;
}

.tw-terminal .tt-field {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.tw-terminal .tt-field label {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
}

.tw-terminal .tt-field input {
  width: 100%;
  padding: 0.7rem 0.85rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 0;
  color: #FFFFFF;
  font-family: var(--tw-body-font);
  font-size: 0.95rem;
  line-height: 1.3;
  transition: border-color 150ms ease, background-color 150ms ease;
}

.tw-terminal .tt-field input::placeholder {
  color: rgba(255, 255, 255, 0.34);
}

.tw-terminal .tt-field input:hover {
  border-color: rgba(255, 255, 255, 0.32);
}

.tw-terminal .tt-field input:focus {
  outline: none;
  border-color: var(--tw-gold-bright);
  background: rgba(255, 255, 255, 0.05);
}

.tw-terminal .tt-field input:user-invalid {
  border-color: rgba(220, 100, 92, 0.7);
}

.tw-terminal .tt-brief-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 0.6rem;
}

.tw-terminal .tt-brief-submit {
  background-color: #EAC24A;
  color: #0A0A0A;
  border: 1.5px solid #EAC24A;
  font-weight: 600;
}

.tw-terminal .tt-brief-submit:hover {
  background-color: #F2CE5E;
  border-color: #F2CE5E;
}

.tw-terminal .tt-brief-submit:disabled {
  opacity: 0.6;
  cursor: progress;
}

.tw-terminal .tt-form-status {
  margin: 0;
  min-height: 1.2em;
  font-family: var(--tw-mono);
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-align: center;
}

.tw-terminal .tt-form-status.is-success {
  color: var(--tw-gold-bright);
}

.tw-terminal .tt-form-status.is-error {
  color: #E08A82;
}

/* When sent, collapse the fields and center the confirmation */
.tw-terminal .tt-brief-form.is-sent .tt-form-row,
.tw-terminal .tt-brief-form.is-sent .tt-field,
.tw-terminal .tt-brief-form.is-sent .tt-brief-actions {
  display: none;
}

.tw-terminal .tt-brief-form.is-sent {
  align-items: center;
  text-align: center;
}

.tw-terminal .tt-brief-form.is-sent .tt-form-status {
  font-size: 0.95rem;
  font-family: var(--tw-body-font);
  letter-spacing: -0.01em;
}

.tw-terminal .tt-cta-or {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
}

@media (max-width: 560px) {
  .tw-terminal .tt-form-row {
    grid-template-columns: 1fr;
  }

  .tw-terminal .tt-brief-actions {
    flex-direction: column;
  }

  .tw-terminal .tt-brief-actions .tt-btn-gold,
  .tw-terminal .tt-brief-actions .tt-btn-ghost {
    align-self: stretch;
    justify-content: center;
  }
}

/* ==============================================
   FOOTER
============================================== */
.tw-terminal .tt-footer--dark {
  background: #0A0A0A;
  border-top: none;
}

.tw-terminal .tt-footer--dark .tt-footer-brand {
  color: #FFFFFF;
}

.tw-terminal .tt-footer--dark .tt-footer-logo {
  filter: none;
}

.tw-terminal .tt-footer {
  padding: 0;
}

/* Grid footer — Minerva-style bento cells */
.tw-terminal .tt-footer--grid {
  --tt-footer-line: var(--tw-grid-line);
  padding-block: clamp(0.75rem, 2vw, 1.25rem);
}

.tw-terminal .tt-footer--grid.tt-footer--dark {
  --tt-footer-line: rgba(255, 255, 255, 0.12);
  background: #0A0A0A;
}

.tw-terminal .tt-footer--grid .tt-container {
  padding-inline: var(--tw-pad);
}

.tw-terminal .tt-footer-grid {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(11rem, 1.55fr) repeat(5, minmax(0, 1fr));
  grid-template-rows: minmax(2.35rem, auto) minmax(2.35rem, auto);
  border-top: 1px solid var(--tt-footer-line);
  border-left: 1px solid var(--tt-footer-line);
}

.tw-terminal .tt-footer-cell {
  border-right: 1px solid var(--tt-footer-line);
  border-bottom: 1px solid var(--tt-footer-line);
  padding: 0.4rem clamp(0.85rem, 1.5vw, 1.35rem);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 2.35rem;
  box-sizing: border-box;
}

.tw-terminal .tt-footer-cell--brand {
  grid-column: 1;
  grid-row: 1 / 3;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  text-align: left;
  gap: 0.45rem;
  padding: 0.55rem 1.35rem;
}

.tw-terminal .tt-footer-cell--spacer {
  grid-column: 2 / 6;
  grid-row: 2;
  padding: 0;
}

.tw-terminal .tt-footer-cell--copy {
  grid-column: 6;
  grid-row: 2;
}

/* "Do Not Sell…" fills the otherwise-empty bottom-left cells (row 2) */
.tw-terminal .tt-footer-cell--legal {
  grid-column: 2 / 6;
  grid-row: 2;
  justify-content: flex-start;
  text-align: left;
}

.tw-terminal .tt-footer-tagline {
  margin: 0;
  font-family: var(--tw-body-font);
  font-size: 0.72rem;
  line-height: 1.25;
  letter-spacing: -0.008em;
  color: var(--tw-text-muted);
  max-width: 15rem;
}

.tw-terminal .tt-footer--dark .tt-footer-tagline {
  color: rgba(255, 255, 255, 0.42);
}

.tw-terminal .tt-footer-cell--link {
  font-family: var(--tw-body-font);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: -0.008em;
  color: var(--tw-text-muted);
  text-decoration: none;
  transition: color 150ms ease, background-color 150ms ease;
}

.tw-terminal .tt-footer--dark .tt-footer-cell--link {
  color: rgba(255, 255, 255, 0.55);
}

.tw-terminal .tt-footer-cell--link:hover {
  color: var(--tw-text-dark);
  background-color: rgba(0, 0, 0, 0.03);
}

.tw-terminal .tt-footer--dark .tt-footer-cell--link:hover {
  color: #FFFFFF;
  background-color: rgba(255, 255, 255, 0.04);
}

.tw-terminal .tt-footer-cell--link.is-active {
  color: var(--tw-text-dark);
  background-color: rgba(0, 0, 0, 0.04);
}

.tw-terminal .tt-footer--dark .tt-footer-cell--link.is-active {
  color: rgba(255, 255, 255, 0.82);
  background-color: rgba(255, 255, 255, 0.05);
}

.tw-terminal .tt-footer-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  text-decoration: none;
  font-family: var(--tw-display);
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--tw-text-dark);
}

.tw-terminal .tt-footer-logo {
  height: 13px;
  width: auto;
  filter: invert(1);
}

.tw-terminal .tt-footer-copy {
  font-family: var(--tw-mono);
  font-size: 0.6rem;
  color: var(--tw-text-muted);
  letter-spacing: 0.02em;
}

.tw-terminal .tt-footer--dark .tt-footer-copy {
  color: rgba(255, 255, 255, 0.48);
}

/* ==============================================
   LEGAL PAGES
============================================== */
.tw-terminal .tt-legal {
  padding: var(--tw-section-pad-y) 0 clamp(3rem, 8vw, 5rem);
}

.tw-terminal .tt-legal-inner {
  max-width: 52rem;
}

.tw-terminal .tt-legal-updated {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--tw-text-muted);
  margin: 0.75rem 0 2rem;
}

.tw-terminal .tt-legal-body h2 {
  font-family: var(--tw-body-font);
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: -0.011em;
  color: var(--tw-text-dark);
  margin: 2rem 0 0.75rem;
}

.tw-terminal .tt-legal-body p,
.tw-terminal .tt-legal-body ul {
  color: var(--tw-body-text);
}

.tw-terminal .tt-legal-body p {
  margin-bottom: 1rem;
}

.tw-terminal .tt-legal-body ul {
  margin-bottom: 1rem;
  padding-left: 1.25rem;
}

.tw-terminal .tt-legal-body li {
  margin-bottom: 0.5rem;
}

.tw-terminal .tt-legal-body a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.tw-terminal .tt-legal-body a:hover {
  color: var(--tw-text-dark);
}

@media (max-width: 768px) {
  .tw-terminal .tt-footer-grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: none;
  }

  .tw-terminal .tt-footer-cell--brand {
    grid-column: 1 / -1;
    grid-row: auto;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: auto;
  }

  .tw-terminal .tt-footer-tagline {
    max-width: none;
    text-align: right;
  }

  .tw-terminal .tt-footer-cell--spacer {
    display: none;
  }

  .tw-terminal .tt-footer-cell--legal {
    grid-column: 1 / -1;
    grid-row: auto;
    justify-content: center;
    text-align: center;
  }

  .tw-terminal .tt-footer-cell--copy {
    grid-column: 1 / -1;
    grid-row: auto;
    justify-content: center;
  }
}

/* ==============================================
   MOBILE MENU OVERLAY
============================================== */
.tw-terminal .tt-mobile-menu {
  position: fixed;
  inset: 0;
  background-color: #FFFFFF;
  z-index: 200;
  display: flex;
  flex-direction: column;
  padding: 64px var(--tw-pad) clamp(1.75rem, 5vw, 2.5rem);
  opacity: 0;
  pointer-events: none;
  transition: opacity 200ms ease;
  overflow-y: auto;
}

.tw-terminal .tt-mobile-menu.is-open {
  opacity: 1;
  pointer-events: all;
}

.tw-terminal .tt-mobile-menu-head {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  height: 64px;
  padding-right: var(--tw-masthead-pad);
  border-bottom: 1px solid var(--tw-grid-line);
  background: #FFFFFF;
}

.tw-terminal .tt-mobile-menu-brand {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  align-self: stretch;
  width: max-content;
  padding-inline: clamp(0.95rem, 1.8vw, 1.5rem);
  border-inline-end: 1px solid var(--tw-grid-line);
  text-decoration: none;
}

.tw-terminal .tt-mobile-close {
  position: static;
  width: 44px;
  height: 44px;
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.tw-terminal .tt-mobile-close span {
  display: block;
  width: 22px;
  height: 1.5px;
  background-color: var(--tw-text-dark);
  border-radius: 2px;
}

.tw-terminal .tt-mobile-close span:first-child {
  transform: translateY(0.75px) rotate(45deg);
}

.tw-terminal .tt-mobile-close span:last-child {
  transform: translateY(-0.75px) rotate(-45deg);
}

.tw-terminal .tt-mobile-menu nav {
  display: flex;
  flex-direction: column;
  flex: 1;
  width: 100%;
  max-width: 22rem;
  margin-inline: auto;
  min-height: 0;
}

.tw-terminal .tt-mobile-nav-links {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
  justify-content: center;
  padding-block: 1rem;
}

.tw-terminal .tt-mobile-nav-links a {
  font-family: var(--tw-display);
  font-size: clamp(1.85rem, 7vw, 2.35rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: var(--tw-text-muted);
  text-decoration: none;
  padding: 0.7rem 0;
  border-bottom: 1px solid var(--tw-grid-line);
  transition: color 150ms ease;
}

.tw-terminal .tt-mobile-nav-links a:first-child {
  border-top: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-mobile-nav-links a:hover,
.tw-terminal .tt-mobile-nav-links a:focus-visible {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-mobile-nav-ctas {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  width: 100%;
  margin-top: auto;
  padding-top: 1.5rem;
  border-top: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-mobile-nav-ctas .tt-btn-gold,
.tw-terminal .tt-mobile-nav-ctas .tt-btn-ghost {
  width: 100%;
  justify-content: center;
  text-align: center;
  white-space: normal;
  line-height: 1.3;
  min-height: 2.85rem;
  padding-block: 0.85rem;
}

.tw-terminal .tt-mobile-nav-ctas .tt-btn-gold {
  background-color: #EAC24A;
  color: #0A0A0A;
  border-color: #0A0A0A;
}

.tw-terminal .tt-mobile-nav-ctas .tt-btn-gold:hover {
  background-color: #F2CE5C;
}

/* ==============================================
   SCROLL REVEAL
============================================== */
.tw-terminal [data-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 600ms ease, transform 600ms ease;
  transition-delay: var(--delay, 0ms);
}

.tw-terminal [data-reveal].is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* Text highlighter (gold swipe under emphasis) */
.tw-terminal .tt-text-mark {
  position: relative;
  display: inline-block;
  white-space: nowrap;
}

.tw-terminal .tt-text-highlighter {
  display: block;
  position: absolute;
  left: 50%;
  bottom: -0.08em;
  width: 108%;
  height: 0.88em;
  z-index: -1;
  pointer-events: none;
  overflow: visible;
  transform: translateX(-50%) scaleX(0) rotate(-1.4deg);
  transform-origin: center 72%;
  opacity: 0.2;
  transition:
    transform 720ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 520ms ease;
}

.tw-terminal [data-reveal] .tt-text-highlighter {
  transition-delay: calc(var(--delay, 0ms) + 200ms);
}

.tw-terminal [data-reveal].is-revealed .tt-text-highlighter {
  transform: translateX(-50%) scaleX(1) rotate(-1.4deg);
  opacity: 1;
}

.tw-terminal .tt-hero-headline[data-reveal].is-revealed .tt-text-highlighter--draw {
  transform: translateX(-50%) rotate(-1.4deg);
  opacity: 1;
}

.tw-terminal .tt-text-highlighter-body {
  fill: rgba(234, 194, 74, 0.5);
}

.tw-terminal .tt-text-highlighter-edge {
  stroke: rgba(154, 116, 22, 0.42);
  stroke-width: 1.15;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

/* ==============================================
   THE PROBLEM
============================================== */
.tw-terminal .tt-problem {
  background-color: #0A0A0A;
}

.tw-terminal .tt-problem .tt-body {
  color: var(--tw-deck-color-on-dark);
}

.tw-terminal .tt-problem .tt-h2 {
  color: var(--tw-text-light);
  margin-bottom: clamp(2rem, 3.5vw, 2.75rem);
}

.tw-terminal .tt-problem-headline-bold {
  font-weight: 600;
}

.tw-terminal .tt-problem-subhead {
  max-width: 64ch;
  margin-bottom: clamp(2.5rem, 4vw, 3.25rem);
}

.tw-terminal .tt-br-mobile {
  display: none;
}

.tw-terminal .tt-problem-connector {
  font-family: var(--tw-mono);
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.35);
  margin-bottom: 2.25rem;
}

.tw-terminal .tt-problem-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(2rem, 3.5vw, 2.75rem);
}

.tw-terminal .tt-problem-card {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
  padding-top: 0.9rem;
}

/* Newspaper-style card header: index number + section tag */
.tw-terminal .tt-problem-card-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 1.25rem;
}

.tw-terminal .tt-problem-card-num {
  color: var(--tw-gold);
  font-weight: 500;
}

.tw-terminal .tt-problem-card-tag {
  color: rgba(255, 255, 255, 0.4);
}

.tw-terminal .tt-problem-card-img-wrap {
  border-radius: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  aspect-ratio: 1;
  margin-bottom: 1.25rem;
}

.tw-terminal .tt-problem-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100%) opacity(0.85);
  display: block;
}

.tw-terminal .tt-problem-card-title {
  font-family: var(--tw-body-font);
  font-size: 1.4em;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--tw-text-light);
  line-height: 1.25;
  margin-bottom: 0.85rem;
}

/* Card body — deck typography (see .tt-body.tt-problem-card-body) */

/* ==============================================
   RESPONSIVE
============================================== */
@media (max-width: 900px) {
  .tw-terminal .tt-hero .tt-h1 {
    white-space: normal;
  }

  .tw-terminal .tt-problem-grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .tw-terminal .tt-value-prop-inner {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .tw-terminal .tt-container.tt-container--shift-left {
    padding-inline-start: var(--tw-pad);
  }

  .tw-terminal .tt-image-placeholder {
    min-height: 240px;
  }

  .tw-terminal .tt-depth-panel-left {
    padding: 1.5rem 1.25rem 1.25rem;
  }

  .tw-terminal .tt-depth-panel-right {
    min-height: 0;
    margin: 0 1.25rem 1.25rem;
    padding: 1rem 1.25rem;
  }

}

@media (max-width: 768px) {
  .tw-terminal .tt-nav-links,
  .tw-terminal .tt-nav-right .tt-btn-ghost,
  .tw-terminal .tt-nav-right .tt-btn-gold {
    display: none;
  }

  .tw-terminal .tt-hamburger {
    display: flex;
  }

  .tw-terminal .tt-folio:not(.tt-home-live) {
    grid-template-columns: 1fr;
    justify-items: center;
    white-space: normal;
    text-align: center;
    gap: 0.2rem;
    padding-block: 0.45rem;
    font-size: 0.62rem;
    letter-spacing: 0.1em;
  }

  .tw-terminal .tt-folio:not(.tt-home-live) .tt-folio-item:first-child {
    display: none;
  }

  .tw-terminal .tt-folio:not(.tt-home-live) .tt-folio-center,
  .tw-terminal .tt-folio:not(.tt-home-live) .tt-folio-item:last-child {
    justify-self: center;
  }

  .tw-terminal .tt-agents-grid {
    grid-template-columns: 1fr;
  }

  /* Depth tabs — equal thirds, compact on small screens */
  .tw-terminal .tt-depth-tabs {
    gap: 0.25rem;
  }

  .tw-terminal .tt-depth-tab {
    padding: 0.7rem 0.55rem 0.65rem;
    font-size: 0.9em;
  }

  .tw-terminal .tt-depth-tab-desc {
    font-size: 0.9rem;
  }

  .tw-terminal .tt-depth-num {
    margin-right: 0;
    font-size: 0.72rem;
  }

  .tw-terminal .tt-depth-tab-top {
    gap: 0.3rem;
  }

  .tw-terminal .tt-br-mobile {
    display: block;
  }

  .tw-terminal .tt-problem-headline .tt-br-mobile {
    line-height: 0;
    margin-top: 0.55em;
  }

  .tw-terminal .tt-hero-sub {
    max-width: 34ch;
    text-wrap: pretty;
  }

  .tw-terminal .tt-pc--research .tt-rsx-top {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.45rem;
  }

  .tw-terminal .tt-pc--research .tt-rsx-shortlist-row {
    margin-left: 0;
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.4rem;
  }

  .tw-terminal .tt-pc--research .tt-rsx-shortlist {
    justify-content: flex-start;
  }

  .tw-terminal .tt-pc--research .tt-rsx-timeline-wrap {
    margin-bottom: 0.55rem;
  }

  .tw-terminal .tt-pc--research .tt-rsx-timeline-viewport {
    height: 4.35rem;
    mask-image: linear-gradient(to right, #000 0%, #000 92%, transparent 100%);
  }

  .tw-terminal .tt-pc--research .tt-rsx-ev {
    min-width: 3.15rem;
    padding-inline: 0.15rem;
  }

  .tw-terminal .tt-pc--research .tt-rsx-ev-label {
    font-size: 0.58rem;
    line-height: 1.2;
  }

  .tw-terminal .tt-pc--research .tt-rsx-pov {
    margin-top: 0.35rem;
  }

  .tw-terminal .tt-pc--research .tt-pc-pov p {
    font-size: 0.84rem;
    line-height: 1.42;
  }

  .tw-terminal .tt-p-compare { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .tw-terminal .tt-p-find-layout { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .tw-terminal .tt-cta-row {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 20rem;
    margin-inline: auto;
  }

  .tw-terminal .tt-cta-row .tt-btn-gold,
  .tw-terminal .tt-cta-row .tt-btn-ghost {
    width: 100%;
    justify-content: center;
    text-align: center;
    white-space: normal;
    line-height: 1.3;
    min-height: 2.85rem;
    padding-block: 0.85rem;
  }
}

@media (max-width: 540px) {
  .tw-terminal .tt-footer-manifesto {
    min-height: 185vh;
  }

  .tw-terminal .tt-footer-manifesto-lead,
  .tw-terminal .tt-footer-manifesto-punch {
    font-size: clamp(1.7rem, 7.2vw, 2.2rem);
    line-height: 1.04;
  }

  .tw-terminal .tt-footer-manifesto-art {
    width: clamp(17rem, 88vw, 27rem);
    margin-inline: 0;
  }
}

@media (max-width: 380px) {
  .tw-terminal {
    --tw-pad: 1rem;
  }
}

/* ==============================================
   REDUCED MOTION
============================================== */
@media (prefers-reduced-motion: reduce) {
  .tw-terminal [data-reveal] { transition: none; }

  .tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter-pen {
    animation: none;
    opacity: 0;
  }

  .tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter--draw {
    animation: none;
    clip-path: inset(-10% 0% -10% 0);
  }

  .tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter--draw .tt-text-highlighter-edge,
  .tw-terminal .tt-hero-headline.is-revealed .tt-text-highlighter--draw .tt-text-highlighter-body {
    animation: none;
  }
}

/* ==============================================
   Evidence column
============================================== */
.tw-terminal .tt-evidence-column {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.tw-terminal .tt-evidence-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 0.6rem;
}

.tw-terminal .tt-evidence-account {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.55);
}

.tw-terminal .tt-evidence-updated {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.625rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.35);
}

.tw-terminal .tt-evidence-pulse {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #C9A961;
  position: relative;
  flex-shrink: 0;
}

.tw-terminal .tt-evidence-pulse::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #C9A961;
  animation: tt-pulse-ring 2.4s ease-out infinite;
}

@keyframes tt-pulse-ring {
  0%   { transform: scale(1); opacity: 0.5; }
  100% { transform: scale(2.8); opacity: 0; }
}

.tw-terminal .tt-evidence-rule {
  border: none;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin: 0 0 1.25rem;
}

.tw-terminal .tt-evidence-stack {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.tw-terminal .tt-evidence-spine {
  position: absolute;
  left: 18px;
  top: 0;
  bottom: 0;
  width: 1px;
  background: repeating-linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.10) 0px,
    rgba(0, 0, 0, 0.10) 4px,
    transparent 4px,
    transparent 8px
  );
  pointer-events: none;
  z-index: 0;
}

.tw-terminal .tt-evidence-card {
  position: relative;
  z-index: 1;
  background: rgba(0, 0, 0, 0.015);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 5px;
  padding: 0.875rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-left: 0;
}

.tw-terminal .tt-evidence-source {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.625rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.40);
  margin: 0;
}

.tw-terminal .tt-evidence-excerpt {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: rgba(0, 0, 0, 0.80);
  border-left: 3px solid #C9A961;
  padding: 0.4rem 0.75rem;
  margin: 0.25rem 0 0;
  background: rgba(0, 0, 0, 0.02);
  border-radius: 0 3px 3px 0;
}

.tw-terminal .tt-evidence-excerpt code {
  font-family: inherit;
  font-size: inherit;
  background: none;
  padding: 0;
}

.tw-terminal .tt-evidence-note {
  font-family: 'Geist', 'Inter', sans-serif;
  font-style: italic;
  font-size: 0.75rem;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.55);
  margin: 0;
}

.tw-terminal .tt-evidence-brand {
  color: #C9A961;
  font-weight: 500;
  margin-right: 0.3em;
  font-style: normal;
}

/* Thesis card — charcoal to visually separate the POV output from input evidence */
.tw-terminal .tt-evidence-card--thesis {
  border: 2px solid rgba(201, 169, 97, 0.5);
  background: #1A1A1A;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  padding: 1.125rem 1.125rem;
  margin-top: 4px;
}

.tw-terminal .tt-evidence-eyebrow {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.5625rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tw-gold);
  margin: 0 0 0.25rem;
}

.tw-terminal .tt-evidence-card--thesis .tt-evidence-excerpt {
  font-size: 0.875rem;
  border-left-width: 3px;
  border-left-color: rgba(201, 169, 97, 0.45);
  color: rgba(255, 255, 255, 0.88);
}

/* Mobile */
@media (max-width: 767px) {
  .tw-terminal .tt-evidence-spine {
    display: none;
  }

  .tw-terminal .tt-evidence-card {
    padding: 0.75rem 0.875rem;
  }

  .tw-terminal .tt-evidence-excerpt {
    font-size: 0.75rem;
  }

  .tw-terminal .tt-evidence-card--thesis .tt-evidence-excerpt {
    font-size: 0.8125rem;
  }
}

/* ==============================================
   Evidence tabs + painting overlay
============================================== */

/* Painting background — bridge at Argenteuil on a gray day */
.tw-terminal .tt-evidence-column {
  background-image: url('assets/bridge_at_argenteuil_on_a_gray_day_1970.17.44.jpg');
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 0;
  padding: 36px 40px 40px;
  position: relative;
  overflow: hidden;
}

/* Warm cream overlay so card text reads cleanly without losing painting atmosphere */
.tw-terminal .tt-evidence-column::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(250, 246, 236, 0.55);
  pointer-events: none;
  z-index: 0;
}

/* Lift all direct children above the overlay */
.tw-terminal .tt-evidence-column > * {
  position: relative;
  z-index: 1;
}

/* Cards: translucent + blur so painting shows through */
.tw-terminal .tt-evidence-card {
  background: rgba(255, 250, 244, 0.88);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* Thesis card: dark green — visually distinct from input evidence cards */
.tw-terminal .tt-evidence-card--thesis {
  background: #1A1A1A !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  margin-top: 16px;
}

/* Spine: solid translucent line reads against painting */
.tw-terminal .tt-evidence-stack .tt-evidence-spine {
  background: rgba(0,0,0,0.18);
}

/* Tab navigation bar — mirrors .tt-pillars-tab pattern, mono+gold variant */
.tw-terminal .tt-evidence-tab-nav {
  display: flex;
  gap: 0;
  border-bottom: 1px solid rgba(0,0,0,0.10);
  margin-bottom: 1rem;
}

.tw-terminal .tt-evidence-tab {
  font-family: var(--tw-mono);
  font-size: 0.625rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 500;
  color: rgba(0,0,0,0.42);
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 0.55rem 1rem 0.55rem 0;
  margin-bottom: -1px;
  cursor: pointer;
  transition: color 150ms;
  white-space: nowrap;
  flex-shrink: 0;
}

.tw-terminal .tt-evidence-tab:hover {
  color: rgba(0,0,0,0.68);
}

.tw-terminal .tt-evidence-tab.is-active {
  color: rgba(0,0,0,0.78);
  border-bottom-color: var(--tw-gold);
}

/* Panels: hide by default, fixed min-height so 2-card panels don't collapse */
.tw-terminal .tt-evidence-panel {
  display: none;
  min-height: 460px;
}

.tw-terminal .tt-evidence-panel.is-active {
  display: block;
}

/* Responsive */
@media (max-width: 960px) {
  .tw-terminal .tt-evidence-tab-nav {
    flex-wrap: wrap;
  }
}

@media (max-width: 640px) {
  .tw-terminal .tt-evidence-column::before {
    background: rgba(250, 246, 236, 0.78);
  }

  .tw-terminal .tt-evidence-card {
    background: rgba(255, 250, 244, 0.96);
  }

  .tw-terminal .tt-evidence-card--thesis {
    background: #1A1A1A;
  }
}

/* ==============================================
   PILLAR: ATTACHMENTS
============================================== */

/* Attachments — tall main doc, stack top-right; body clipped in viewport */
.tw-terminal .tt-pc--attach .tt-pc-visual.tt-at {
  overflow: hidden;
}

.tw-terminal .tt-p-attach-layout {
  display: grid;
  grid-template-columns: 1.25fr 0.95fr;
  gap: 0.75rem;
  align-items: stretch;
  min-height: var(--at-layout-h);
}

.tw-terminal .tt-pc--attach .tt-p-attach-title {
  font-size: clamp(0.95rem, 1.5vw, 1.15rem);
}

/* Featured column — label above card, like the library stack */
.tw-terminal .tt-p-attach-featured-wrap {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  min-height: var(--at-layout-h);
  min-width: 0;
}

.tw-terminal .tt-p-attach-featured-wrap .tt-p-attach-featured {
  flex: 1;
  min-height: 0;
}

/* Featured artifact: fills layout height (taller than stack column) */
.tw-terminal .tt-p-attach-featured {
  background: #ffffff;
  border: 1px solid var(--at-gold-border, var(--tw-rule));
  border-left: 3px solid var(--at-gold-mid, var(--pc-accent));
  border-radius: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Viewport — fixed height, clips overflow; content stays full width */
.tw-terminal .tt-at-viewport {
  position: relative;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.tw-terminal .tt-at-inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  padding-bottom: 0.5rem;
  will-change: transform;
}

.tw-terminal .tt-at-body {
  padding: 0.65rem 1rem 0.75rem;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  margin-top: 0.25rem;
}

.tw-terminal .tt-at-body p {
  font-family: var(--tw-body-font);
  font-size: 0.68rem;
  line-height: 1.45;
  color: rgba(0, 0, 0, 0.68);
  margin: 0 0 0.55rem;
}

.tw-terminal .tt-at-body p:last-child {
  margin-bottom: 0;
}

/* PDF chrome — toolbar header instead of window dots */
.tw-terminal .tt-p-attach-pdf-chrome {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.42rem 0.75rem;
  background: #ececec;
  border-bottom: 1px solid rgba(0, 0, 0, 0.09);
  flex-shrink: 0;
  min-width: 0;
}

.tw-terminal .tt-p-attach-featured .tt-p-attach-pdf-chrome {
  background: color-mix(in srgb, var(--pc-bar) 10%, #e8e8e8);
  border-bottom: 1px solid var(--at-gold-border, rgba(0, 0, 0, 0.08));
}

.tw-terminal .tt-p-attach-pdf-chrome--tile {
  padding: 0.28rem 0.55rem;
  gap: 0.35rem;
}

.tw-terminal .tt-p-attach-pdf-badge {
  flex-shrink: 0;
  font-family: var(--tw-mono);
  font-size: 0.48rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #fff;
  background: #c62828;
  padding: 0.18rem 0.3rem;
  border-radius: 2px;
}

.tw-terminal .tt-p-attach-pdf-filename {
  font-family: var(--tw-mono);
  font-size: 0.56rem;
  letter-spacing: 0.02em;
  color: rgba(0, 0, 0, 0.52);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

.tw-terminal .tt-p-attach-pdf-chrome--tile .tt-p-attach-pdf-filename {
  font-size: 0.5rem;
}

/* Document title in Lora serif */
.tw-terminal .tt-p-attach-title {
  font-family: var(--tw-display);
  font-size: clamp(1.5rem, 2.4vw, 2.1rem);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--tw-text-dark);
  padding: 0.65rem 1rem 0;
  margin: 0;
}

/* File ID subtitle below the title */
.tw-terminal .tt-p-attach-fileid {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--pc-muted);
  padding: 0.3rem 1rem 0;
  display: block;
}

/* Table of contents block */
.tw-terminal .tt-p-attach-toc {
  margin: 0.65rem 1rem 0;
  border-top: 1px solid rgba(0,0,0,0.08);
}

.tw-terminal .tt-p-attach-toc-row {
  display: grid;
  grid-template-columns: 1.6rem 1fr;
  gap: 0.4rem;
  align-items: baseline;
  padding: 0.35rem 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
}

/* Gold section number in TOC */
.tw-terminal .tt-p-attach-toc-num {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  color: var(--tw-gold);
}

.tw-terminal .tt-p-attach-toc-title {
  font-family: var(--tw-body-font);
  font-size: 0.65rem;
  color: rgba(0,0,0,0.72);
  line-height: 1.35;
}

/* Pulled excerpt: Lora italic with 2px gold left rule */
.tw-terminal .tt-p-attach-excerpt {
  font-family: var(--tw-display);
  font-size: 0.7rem;
  font-style: italic;
  line-height: 1.45;
  color: rgba(0,0,0,0.80);
  border-left: 2px solid var(--pc-bar, var(--tw-gold));
  margin: 0.65rem 1rem 0.5rem;
  padding: 0.35rem 0.6rem;
  background: rgba(0,0,0,0.02);
}

/* Footer status line at bottom of featured card */
.tw-terminal .tt-p-attach-footer {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--tw-mono);
  font-size: 0.5rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.35);
  padding: 0.5rem 1rem 0.65rem;
  margin-top: auto;
  flex-shrink: 0;
}

/* Gold pulse dot before the footer text */
.tw-terminal .tt-p-attach-footer-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--tw-gold);
  flex-shrink: 0;
  box-shadow: 0 0 6px rgba(201,169,97,0.55);
}

/* Right column: stacked doc library — top-aligned, does not stretch */
.tw-terminal .tt-p-attach-library {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  align-self: start;
}

/* Overlapping doc stack — sets the row height for both columns */
.tw-terminal .tt-p-attach-stack {
  --stack-card-h: var(--at-stack-card);
  --stack-peek: var(--at-stack-peek);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: var(--at-stack-total);
}

.tw-terminal .tt-p-attach-stack .tt-p-attach-tile {
  position: relative;
  height: var(--stack-card-h);
  flex-shrink: 0;
  margin-top: 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.07);
}

.tw-terminal .tt-p-attach-stack .tt-p-attach-tile + .tt-p-attach-tile {
  margin-top: calc(var(--stack-peek) - var(--stack-card-h));
}

.tw-terminal .tt-p-attach-stack .tt-p-attach-tile:nth-child(1) { z-index: 1; }
.tw-terminal .tt-p-attach-stack .tt-p-attach-tile:nth-child(2) { z-index: 2; }
.tw-terminal .tt-p-attach-stack .tt-p-attach-tile:nth-child(3) { z-index: 3; }

.tw-terminal .tt-p-attach-stack .tt-p-attach-tile:hover {
  z-index: 5;
  transform: translateY(-2px);
}

/* Section label — matches pillar mono eyebrows */
.tw-terminal .tt-pc--attach .tt-p-attach-lib-label {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--pc-muted);
  flex-shrink: 0;
}

/* Mini PDF/doc tile */
.tw-terminal .tt-pc--attach .tt-p-attach-tile {
  background: #fff;
  border: 1px solid var(--at-gold-border);
  border-left: 3px solid var(--at-gold-mid);
  border-radius: 0;
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  transition: border-color 150ms ease, box-shadow 150ms ease, opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1), transform 150ms ease;
}

.tw-terminal .tt-pc--attach .tt-p-attach-tile:hover {
  border-color: color-mix(in srgb, var(--pc-accent) 45%, transparent);
}


.tw-terminal .tt-p-attach-tile-page {
  padding: 0.45rem 0.7rem 0.55rem;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

/* Gold artifact type on white doc */
.tw-terminal .tt-pc--attach .tt-p-attach-tile-tag {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--at-gold);
  line-height: 1.2;
}

/* Tile document title in Lora */
.tw-terminal .tt-pc--attach .tt-p-attach-tile-title {
  font-family: var(--tw-display);
  font-size: 0.76rem;
  font-weight: 500;
  line-height: 1.28;
  color: var(--tw-text-dark);
}

.tw-terminal .tt-pc--attach .tt-p-attach-tile--front .tt-p-attach-tile-title {
  font-size: 0.8rem;
}

/* Bottom artifact kind label */
.tw-terminal .tt-pc--attach .tt-p-attach-tile-meta {
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--pc-muted);
  line-height: 1.2;
}

/* Fake body lines — PDF preview */
.tw-terminal .tt-p-attach-tile-preview {
  margin-top: 0.22rem;
  padding-top: 0.35rem;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  display: flex;
  flex-direction: column;
  gap: 0.24rem;
  flex-shrink: 0;
}

.tw-terminal .tt-p-attach-tile-line {
  display: block;
  height: 3px;
  background: color-mix(in srgb, var(--pc-bar) 12%, rgba(0, 0, 0, 0.07));
  border-radius: 1px;
}

.tw-terminal .tt-p-attach-tile-line--short {
  width: 58%;
}

@media (max-width: 768px) {
  .tw-terminal .tt-p-attach-layout {
    grid-template-columns: 1fr;
    min-height: auto;
    gap: 1rem;
  }

  .tw-terminal .tt-pc--attach .tt-at {
    --at-stack-card: 5.75rem;
    --at-stack-peek: 4.5rem;
    --at-layout-h: auto;
  }

  .tw-terminal .tt-pc--attach .tt-pc-visual.tt-at {
    overflow: visible;
  }

  .tw-terminal .tt-p-attach-featured-wrap {
    min-height: auto;
  }

  .tw-terminal .tt-p-attach-featured-wrap .tt-p-attach-featured {
    min-height: clamp(14rem, 52vw, 17rem);
  }

  .tw-terminal .tt-p-attach-library {
    width: 100%;
    align-self: stretch;
  }

  .tw-terminal .tt-p-attach-stack {
    min-height: auto;
  }
}

/* ==============================================
   BUYERS PAGE — sections + comparison table
============================================== */
.tw-terminal.tt-page-buyers .tt-buyers-fold {
  min-height: calc(100svh - 6.25rem);
  display: flex;
  flex-direction: column;
}

.tw-terminal.tt-page-buyers .tt-buyers-hero {
  background-color: var(--tw-bg-light);
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  padding-top: clamp(1.25rem, 3vh, 2.25rem);
  padding-bottom: clamp(0.75rem, 2vh, 1.5rem);
  border-bottom: none;
}

.tw-terminal.tt-page-buyers .tt-buyers-hero .tt-hero-inner {
  width: 100%;
  gap: clamp(1rem, 2.2vh, 1.35rem);
}

@media (max-width: 768px) {
  .tw-terminal.tt-page-buyers .tt-buyers-hero br,
  .tw-terminal.tt-page-buyers .tt-buyers-problem .tt-problem-headline br {
    display: none;
  }
}

.tw-terminal.tt-page-buyers .tt-buyers-logos {
  flex: 0 0 auto;
  background-color: var(--tw-bg-light);
  padding-top: clamp(1rem, 2vh, 1.75rem);
  padding-bottom: clamp(1.25rem, 2.5vh, 2rem);
  border-bottom: 1px solid var(--tw-grid-line);
}

.tw-terminal.tt-page-buyers .tt-buyers-logos .tt-video-inner {
  gap: 0;
}

.tw-terminal.tt-page-buyers .tt-buyers-logos .tt-logo-carousel-wrap {
  padding: 1.15rem 0;
  background: transparent;
}

.tw-terminal.tt-page-buyers .tt-buyers-logos .tt-logo-carousel-label {
  margin-bottom: 0.85rem;
  padding-bottom: 0.75rem;
}

.tw-terminal.tt-page-buyers .tt-buyers-logos .tt-logo-track img {
  height: 22px;
}

/* Buyers problem — black section + stacked panel (copy above, diagram below) */
.tw-terminal .tt-buyers-problem .tt-problem-headline {
  margin-bottom: 1rem;
}

.tw-terminal .tt-buyers-problem-frame {
  --depth-accent-continuous: color-mix(in srgb, #1E40C4 22%, #080e1c);
  border: 1px solid rgba(255, 255, 255, 0.22);
  margin-top: 2.25rem;
  display: flex;
  flex-direction: column;
}

.tw-terminal #ttBuyersPile:not(.is-ready) .tt-dg-pile-dot {
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal #ttBuyersPile .tt-dg-pile-dot { opacity: 0.85; }
}

.tw-terminal .tt-buyers-problem-visual #ttBuyersPile .tt-dg-pile-dot {
  fill: #8BB4F5;
}

.tw-terminal .tt-buyers-problem-copy {
  padding: clamp(2rem, 4vw, 3rem) clamp(1.5rem, 3vw, 2.5rem) 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.tw-terminal .tt-buyers-problem-copy .tt-body {
  color: rgba(255, 255, 255, 0.62);
  max-width: 62ch;
}

.tw-terminal .tt-buyers-problem-visual.tt-depth-panel-right {
  margin: 0 clamp(1.5rem, 3vw, 2.5rem) clamp(1.5rem, 3vw, 2.5rem);
  min-height: 0;
  padding: clamp(0.65rem, 1.25vw, 1rem) clamp(1rem, 2vw, 1.5rem);
  background-color: var(--depth-accent-continuous);
}

.tw-terminal .tt-buyers-problem-visual.tt-depth-panel-right::before {
  display: none;
}

.tw-terminal .tt-buyers-problem-visual.tt-depth-panel-right svg {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

/* Buyers — How it works (free pilot) */
.tw-terminal .tt-buyers-pilot {
  padding: clamp(4rem, 9vw, 8rem) 0;
}

.tw-terminal .tt-buyers-pilot-inner {
  text-align: center;
}

.tw-terminal .tt-buyers-pilot-head {
  margin-inline: auto;
  max-width: 28ch;
  overflow: visible;
  line-height: 1.12;
}

.tw-terminal .tt-buyers-pilot-frame {
  --bv-line: rgba(0, 0, 0, 0.22);
  border: 1px solid var(--bv-line);
  margin-top: 2.5rem;
  max-width: 52rem;
  margin-inline: auto;
  text-align: left;
  background: #fff;
}

.tw-terminal .tt-buyers-pilot-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tw-terminal .tt-buyers-pilot-panel {
  padding: clamp(1.5rem, 3vw, 2rem) clamp(1.25rem, 2.5vw, 1.75rem);
}

.tw-terminal .tt-buyers-pilot-panel + .tt-buyers-pilot-panel {
  border-left: 1px solid var(--bv-line);
}

.tw-terminal .tt-buyers-pilot-step {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  letter-spacing: 0.12em;
  color: var(--tw-gold);
  margin-bottom: 0.85rem;
}

.tw-terminal .tt-buyers-pilot-label {
  font-family: var(--tw-serif);
  font-size: clamp(1.15rem, 2vw, 1.35rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: var(--tw-text-dark);
  margin-bottom: 0.75rem;
}

.tw-terminal .tt-buyers-pilot-panel .tt-body {
  color: var(--tw-body-text);
  max-width: 42ch;
}

.tw-terminal .tt-buyers-pilot-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1rem 1.25rem;
  border-top: 1px solid var(--bv-line);
  background: color-mix(in srgb, var(--tw-bg-light) 55%, #fff);
}

.tw-terminal .tt-buyers-pilot-foot-label {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.42);
}

/* Buyers — How Thinkwell works (centered compare grid) */
.tw-terminal .tt-buyers-works {
  background-color: #FFFFFF;
  padding: clamp(4rem, 9vw, 8rem) 0;
}

.tw-terminal .tt-buyers-works-inner {
  text-align: center;
}

.tw-terminal .tt-buyers-works-head {
  margin-inline: auto;
  max-width: 34ch;
}

.tw-terminal .tt-buyers-works-lede {
  max-width: 48ch;
  margin: 1.25rem auto 0;
  color: var(--tw-body-text);
}

.tw-terminal .tt-buyers-compare-frame {
  --bv-line: rgba(0, 0, 0, 0.22);
  --bv-accent: #1E40C4;
  --bv-fit: #0B6B4A;
  --bv-watch: #9A7416;
  --bv-gap: #B4452F;
  border: 1px solid var(--bv-line);
  margin-top: 2.5rem;
  max-width: 56rem;
  margin-inline: auto;
  text-align: left;
}

.tw-terminal .tt-buyers-compare-cap,
.tw-terminal .tt-buyers-compare-foot {
  padding: 0.7rem 1rem;
  border-bottom: 1px solid var(--bv-line);
  background: #fff;
}

.tw-terminal .tt-buyers-compare-foot {
  border-bottom: none;
  border-top: 1px solid var(--bv-line);
}

.tw-terminal .tt-buyers-compare-cap-label,
.tw-terminal .tt-buyers-compare-foot-label {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.42);
}

.tw-terminal .tt-bv-compare-grid {
  display: grid;
  grid-template-columns: minmax(8.5rem, 1.1fr) repeat(3, minmax(0, 1fr));
  background: #fff;
  border-left: 1px solid var(--bv-line);
}

.tw-terminal .tt-bv-cell {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0.35rem;
  min-height: 3.25rem;
  padding: 0.7rem 0.85rem;
  border-right: 1px solid var(--bv-line);
  border-bottom: 1px solid var(--bv-line);
  font-family: var(--tw-body-font);
  font-size: 0.78rem;
  line-height: 1.4;
  letter-spacing: -0.008em;
  color: var(--tw-text-muted);
}

.tw-terminal .tt-bv-cell:nth-child(4n) {
  border-right: none;
}

.tw-terminal .tt-bv-cell--corner {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.35);
  background: color-mix(in srgb, var(--bv-accent) 4%, #fff);
}

.tw-terminal .tt-bv-cell--vendor {
  padding: 0.65rem 0.85rem;
  background: color-mix(in srgb, var(--bv-accent) 4%, #fff);
}

.tw-terminal .tt-bv-vendor-head {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  min-width: 0;
}

.tw-terminal .tt-bv-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: color-mix(in srgb, var(--bv-accent) 72%, #142050);
  background: color-mix(in srgb, var(--bv-accent) 9%, #fff);
  border: 1px solid color-mix(in srgb, var(--bv-accent) 18%, transparent);
}

.tw-terminal .tt-bv-vendor-who {
  display: flex;
  flex-direction: column;
  gap: 0.08rem;
  min-width: 0;
}

.tw-terminal .tt-bv-vendor-name {
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--tw-text-dark);
}

.tw-terminal .tt-bv-vendor-sub {
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.42);
}

.tw-terminal .tt-bv-cell--dim {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.5);
  background: #fff;
}

.tw-terminal .tt-bv-cell--summary {
  background: color-mix(in srgb, var(--bv-accent) 3%, #fff);
  min-height: 3.5rem;
}

.tw-terminal .tt-bv-val {
  color: var(--tw-text-muted);
}

.tw-terminal .tt-bv-tag {
  display: inline-block;
  font-family: var(--tw-mono);
  font-size: 0.53rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  padding: 0.22rem 0.4rem;
  line-height: 1;
}

.tw-terminal .tt-bv-cell--fit .tt-bv-tag {
  color: var(--bv-fit);
  background: color-mix(in srgb, var(--bv-fit) 12%, #fff);
}

.tw-terminal .tt-bv-cell--fit .tt-bv-val {
  color: color-mix(in srgb, var(--bv-fit) 82%, #000);
  font-weight: 500;
}

.tw-terminal .tt-bv-cell--watch .tt-bv-tag {
  color: var(--bv-watch);
  background: color-mix(in srgb, var(--bv-watch) 14%, #fff);
}

.tw-terminal .tt-bv-cell--watch .tt-bv-val {
  color: color-mix(in srgb, var(--bv-watch) 78%, #000);
  font-weight: 500;
}

.tw-terminal .tt-bv-cell--gap .tt-bv-tag {
  color: var(--bv-gap);
  background: color-mix(in srgb, var(--bv-gap) 10%, #fff);
}

.tw-terminal .tt-bv-cell--gap .tt-bv-val {
  color: var(--bv-gap);
  font-weight: 500;
}

.tw-terminal .tt-buyers-compare-frame .tt-compare-mobile { display: none; }

.tw-terminal .tt-buyers-compare-frame .tt-compare-card {
  border: none;
  border-bottom: 1px solid var(--bv-line);
  margin: 0;
}

.tw-terminal .tt-buyers-compare-frame .tt-compare-card:last-child {
  border-bottom: none;
}

.tw-terminal .tt-buyers-compare-frame .tt-compare-card-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.65rem 1rem;
  border-bottom: 1px solid var(--bv-line);
  font-family: var(--tw-body-font);
  font-size: 0.85rem;
}

.tw-terminal .tt-buyers-compare-frame .tt-compare-card-row:last-child {
  border-bottom: none;
}

.tw-terminal .tt-buyers-compare-frame .tt-compare-card-head {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--tw-text-dark);
  padding: 0.75rem 1rem;
  background: color-mix(in srgb, var(--bv-accent) 4%, #fff);
  border-bottom: 1px solid var(--bv-line);
}

.tw-terminal .tt-ccr-dim {
  color: rgba(0, 0, 0, 0.4);
  flex-shrink: 0;
  max-width: 45%;
}

.tw-terminal .tt-ccr-val {
  color: var(--tw-text-muted);
  text-align: right;
}

.tw-terminal .tt-ccr-val--fit { color: color-mix(in srgb, var(--bv-fit) 82%, #000); font-weight: 500; }
.tw-terminal .tt-ccr-val--watch { color: color-mix(in srgb, var(--bv-watch) 78%, #000); font-weight: 500; }
.tw-terminal .tt-ccr-val--gap { color: var(--bv-gap); font-weight: 500; }

@media (max-width: 900px) {
  .tw-terminal .tt-bv-compare-grid { display: none; }
  .tw-terminal .tt-buyers-compare-frame .tt-compare-mobile { display: block; }
  .tw-terminal .tt-buyers-works-head { max-width: none; }

  .tw-terminal .tt-buyers-pilot-head { max-width: none; }
  .tw-terminal .tt-buyers-pilot-split { grid-template-columns: 1fr; }
  .tw-terminal .tt-buyers-pilot-panel + .tt-buyers-pilot-panel {
    border-left: none;
    border-top: 1px solid var(--bv-line);
  }
  .tw-terminal .tt-buyers-pilot-foot {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
  }
  .tw-terminal .tt-buyers-pilot-foot .tt-btn-gold { width: 100%; }
}

/* ==============================================
   LIVING — Bloomberg-style blob terminal (value-prop)
============================================== */
.tw-terminal .tt-living {
  /* Research blue — buyer priorities */
  --living-customer: #1E40C4;
  --living-customer-mid: color-mix(in srgb, #1E40C4 82%, #3858b8);
  --living-customer-bright: color-mix(in srgb, #1E40C4 58%, #6a8ed8);
  /* Outreach yellow — your offering */
  --living-offering-text: #9A7416;
  --living-offering: #EAC24A;
  --living-offering-mid: color-mix(in srgb, #9A7416 78%, #a08020);
  --living-offering-bright: color-mix(in srgb, #EAC24A 70%, #c9a030);
  /* Meetings green — intersection / fit */
  --living-intersect: #1aab5c;
  --living-intersect-mid: #22c55e;
  --living-intersect-bright: #6ee7a8;
  --living-thesis: var(--living-intersect-mid);
  --living-buyer: var(--living-customer);
  --living-gold: var(--living-offering-mid);
  --living-signal: var(--living-customer-bright);
  --living-blue: var(--living-customer-mid);
  --living-pillar: var(--living-offering);
  position: relative;
  width: 100%;
  max-width: 600px;
  margin-inline: auto;
  aspect-ratio: 1 / 1.12;
  display: flex;
  flex-direction: column;
  background: var(--tw-bg-pure);
  border: 1px solid var(--tw-rule);
  overflow: hidden;
}

.tw-terminal .tt-living-bar,
.tw-terminal .tt-living-foot {
  flex-shrink: 0;
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: var(--tw-bg-pure);
}

.tw-terminal .tt-living-bar {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 0.75rem;
  padding: 0.65rem 0.85rem;
  border-bottom: 1px solid var(--tw-rule);
}

.tw-terminal .tt-living-live {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: #b91c1c;
}

.tw-terminal .tt-living-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  animation: tt-living-blink 1.4s step-end infinite;
}

@keyframes tt-living-blink {
  0%, 100% { opacity: 1; }
  50%      { opacity: 0.2; }
}

.tw-terminal .tt-living-ticker {
  justify-self: center;
  color: var(--tw-text-dark);
  font-weight: 500;
  font-size: clamp(0.5rem, 0.72vw, 0.58rem);
  padding-bottom: 0.15rem;
  border-bottom: 2px solid rgba(10, 10, 10, 0.14);
  text-align: center;
  line-height: 1.2;
}

.tw-terminal .tt-living-stat {
  color: var(--tw-text-muted);
  text-align: right;
}

.tw-terminal .tt-living-stat-num {
  color: var(--living-intersect);
  font-weight: 500;
  display: inline-block;
  min-width: 1.5ch;
  text-align: right;
  transition: color 0.25s ease;
}

.tw-terminal .tt-living-stat-num.is-tick {
  animation: tt-living-stat-pop 0.42s ease-out;
}

@keyframes tt-living-stat-pop {
  0%   { transform: scale(1); }
  35%  { transform: scale(1.22); color: var(--living-intersect-bright); }
  100% { transform: scale(1); }
}

.tw-terminal .tt-living-stage {
  position: relative;
  flex: 1;
  min-height: 0;
  background: var(--tw-bg-pure);
}

.tw-terminal .tt-living-stage-bg,
.tw-terminal .tt-living-stage-bg-buyer,
.tw-terminal .tt-living-stage-bg-offering {
  display: none;
}

.tw-terminal .tt-living-grid {
  display: none;
}

.tw-terminal .tt-living-field {
  isolation: isolate;
}

.tw-terminal .tt-living-goo {
  transform-origin: 50% 50%;
}

.tw-terminal .tt-living-goo--buyer {
  animation: tt-living-goo-drift-buyer 16s -6s ease-in-out infinite;
}

.tw-terminal .tt-living-goo--offering {
  mix-blend-mode: multiply;
  animation: tt-living-goo-drift-offering 18s -9s ease-in-out infinite;
}

@keyframes tt-living-goo-drift-buyer {
  0%, 100% { transform: translate(-6px, -2px) scale(0.99); }
  25%      { transform: translate(16px, -6px) scale(1.03); }
  50%      { transform: translate(6px, 4px) scale(1.01); }
  75%      { transform: translate(12px, 2px) scale(1.025); }
}

@keyframes tt-living-goo-drift-offering {
  0%, 100% { transform: translate(6px, 2px) scale(0.99); }
  25%      { transform: translate(-16px, 4px) scale(1.03); }
  50%      { transform: translate(-6px, -2px) scale(1.01); }
  75%      { transform: translate(-12px, -3px) scale(1.025); }
}

.tw-terminal .tt-living-blob--buyer,
.tw-terminal .tt-living-blob--offering {
  fill: inherit;
}

.tw-terminal .tt-living-blob--buyer {
  fill: var(--living-customer-bright);
  fill-opacity: 0.8;
}

.tw-terminal .tt-living-blob--offering {
  fill: var(--living-offering);
  fill-opacity: 0.78;
}

.tw-terminal .tt-living-blob--buyer circle,
.tw-terminal .tt-living-blob--buyer ellipse,
.tw-terminal .tt-living-blob--offering circle,
.tw-terminal .tt-living-blob--offering ellipse {
  fill: inherit;
  fill-opacity: inherit;
}

.tw-terminal .tt-living-circle-labels {
  display: none;
}

.tw-terminal .tt-living-zones {
  position: absolute;
  inset: 0.65rem 0.85rem auto;
  z-index: 5;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
  pointer-events: none;
}

.tw-terminal .tt-living-zone {
  font-family: var(--tw-body-font);
  font-size: clamp(0.72rem, 1.15vw, 0.92rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  text-transform: none;
  line-height: 1.2;
  padding: 0.42rem 0.65rem;
  border-radius: 4px;
  width: fit-content;
  max-width: min(100%, 11rem);
  text-wrap: balance;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 2px 12px rgba(10, 10, 10, 0.08);
}

.tw-terminal .tt-living-zone--buyer {
  justify-self: start;
  color: color-mix(in srgb, var(--living-customer) 92%, #0a1638);
  border: 1px solid color-mix(in srgb, var(--living-customer) 22%, var(--tw-rule));
  border-left: 3px solid var(--living-customer);
}

.tw-terminal .tt-living-zone--offering {
  justify-self: end;
  text-align: right;
  color: var(--living-offering-text);
  border: 1px solid color-mix(in srgb, var(--living-offering) 32%, var(--tw-rule));
  border-right: 3px solid var(--living-offering);
}

.tw-terminal .tt-living-blob--pillar   { fill: var(--living-pillar); }
.tw-terminal .tt-living-blob--signal   { fill: var(--living-signal); fill-opacity: 0.72; }
.tw-terminal .tt-living-blob--gold     { fill: var(--living-gold); fill-opacity: 0.72; }
.tw-terminal .tt-living-blob--blue     { fill: var(--living-blue); fill-opacity: 0.72; }

.tw-terminal .tt-living-svg {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
}

.tw-terminal .tt-living-svg > rect {
  fill: transparent;
}

.tw-terminal .tt-living-mark {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
  pointer-events: none;
  text-align: center;
}

.tw-terminal .tt-living-fit-zone {
  position: absolute;
  left: 50%;
  top: 51.5%;
  width: clamp(128px, 32%, 168px);
  height: clamp(108px, 28%, 140px);
  transform: translate(-50%, -50%);
  z-index: 4;
  pointer-events: none;
  border-radius: 50%;
  overflow: hidden;
}

.tw-terminal .tt-living-fit-points {
  position: absolute;
  inset: 0;
}

.tw-terminal .tt-living-fit-point {
  position: absolute;
  left: var(--pt-x, 50%);
  top: var(--pt-y, 50%);
  width: var(--pt-size, 10px);
  height: var(--pt-size, 10px);
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(0);
  opacity: 0;
  pointer-events: none;
  animation: tt-living-point-pop 0.7s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.tw-terminal .tt-living-fit-point.is-settled {
  animation: tt-living-point-float 5s ease-in-out infinite;
  opacity: var(--pt-opacity, 0.5);
  transform: translate(-50%, -50%) scale(1);
}

.tw-terminal .tt-living-fit-point--green,
.tw-terminal .tt-living-fit-point--green-soft,
.tw-terminal .tt-living-fit-point--green-bright {
  background: radial-gradient(circle at 42% 38%, color-mix(in srgb, var(--living-intersect-bright) 68%, transparent) 0%, color-mix(in srgb, var(--living-intersect-mid) 36%, transparent) 44%, transparent 72%);
  box-shadow: 0 0 12px color-mix(in srgb, var(--living-intersect-mid) 26%, transparent);
}

.tw-terminal .tt-living-fit-point--green-soft {
  background: radial-gradient(circle at 42% 38%, color-mix(in srgb, var(--living-intersect-mid) 52%, transparent) 0%, color-mix(in srgb, var(--living-intersect) 24%, transparent) 46%, transparent 74%);
  box-shadow: 0 0 10px color-mix(in srgb, var(--living-intersect) 18%, transparent);
}

.tw-terminal .tt-living-fit-point--green-bright {
  background: radial-gradient(circle at 42% 38%, color-mix(in srgb, var(--living-intersect-bright) 82%, transparent) 0%, color-mix(in srgb, var(--living-intersect-bright) 40%, transparent) 40%, transparent 70%);
  box-shadow: 0 0 16px color-mix(in srgb, var(--living-intersect-bright) 32%, transparent);
}

@keyframes tt-living-point-pop {
  0% {
    transform: translate(-50%, -50%) scale(0.15);
    opacity: 0;
  }
  45% {
    opacity: 0.82;
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: var(--pt-opacity, 0.52);
  }
}

@keyframes tt-living-point-float {
  0%, 100% { transform: translate(-50%, -50%) scale(1); }
  50%      { transform: translate(calc(-50% + var(--pt-dx, 0px)), calc(-50% + var(--pt-dy, -1px))) scale(1.04); }
}

.tw-terminal .tt-living-mark-chip {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.18rem;
  padding: 0.55rem 0.85rem;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid var(--tw-rule);
  border-radius: 4px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: border-color 0.8s ease, box-shadow 0.8s ease;
  animation: tt-living-chip-breathe 3.6s ease-in-out infinite;
}

@keyframes tt-living-chip-breathe {
  0%, 100% { transform: scale(1); }
  50%      { transform: scale(1.035); }
}

.tw-terminal .tt-living.is-fit .tt-living-mark-chip {
  background: color-mix(in srgb, var(--living-intersect-bright) 24%, #fff);
  border-color: color-mix(in srgb, var(--living-intersect-mid) 62%, var(--tw-rule));
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--living-intersect-mid) 18%, transparent),
    0 0 24px color-mix(in srgb, var(--living-intersect-mid) 34%, transparent);
  animation: tt-living-chip-fit 2.2s ease-in-out infinite;
}

@keyframes tt-living-chip-fit {
  0%, 100% {
    transform: scale(1);
    box-shadow:
      0 0 0 1px color-mix(in srgb, var(--living-intersect-mid) 18%, transparent),
      0 0 18px color-mix(in srgb, var(--living-intersect-mid) 26%, transparent);
  }
  50% {
    transform: scale(1.055);
    box-shadow:
      0 0 0 1px color-mix(in srgb, var(--living-intersect-bright) 28%, transparent),
      0 0 30px color-mix(in srgb, var(--living-intersect-mid) 42%, transparent);
  }
}

.tw-terminal .tt-living.is-fit .tt-living-mark-brand {
  color: color-mix(in srgb, var(--living-intersect) 88%, #064e2a);
}

.tw-terminal .tt-living.is-fit .tt-living-mark-pov {
  color: color-mix(in srgb, var(--living-intersect) 72%, #022c18);
}

.tw-terminal .tt-living.is-fit .tt-living-stat-num {
  color: var(--living-intersect-mid);
  text-shadow: 0 0 12px color-mix(in srgb, var(--living-intersect-bright) 45%, transparent);
}

.tw-terminal .tt-living-mark-brand {
  font-family: var(--tw-mono);
  font-size: clamp(0.4rem, 0.58vw, 0.48rem);
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--living-intersect);
  line-height: 1;
}

.tw-terminal .tt-living-mark-pov {
  font-family: var(--tw-display);
  font-size: clamp(0.72rem, 1.05vw, 0.88rem);
  font-weight: 600;
  letter-spacing: -0.025em;
  color: color-mix(in srgb, var(--living-intersect) 82%, #061810);
  line-height: 1.05;
  white-space: nowrap;
}

.tw-terminal .tt-living-labels {
  position: absolute;
  inset: 2rem 0 0.25rem;
  pointer-events: none;
  z-index: 4;
}

.tw-terminal .tt-living-labels-arc {
  position: absolute;
  inset: 0;
}

/* Buyer signals — even arc around left blob */
.tw-terminal .tt-living-labels-arc--buyer .tt-living-lbl:nth-child(1) { left: 20%; top: 22%; }
.tw-terminal .tt-living-labels-arc--buyer .tt-living-lbl:nth-child(2) { left: 8%;  top: 34%; }
.tw-terminal .tt-living-labels-arc--buyer .tt-living-lbl:nth-child(3) { left: 23%; top: 44%; }
.tw-terminal .tt-living-labels-arc--buyer .tt-living-lbl:nth-child(4) { left: 7%;  top: 54%; }
.tw-terminal .tt-living-labels-arc--buyer .tt-living-lbl:nth-child(5) { left: 19%; top: 64%; }
.tw-terminal .tt-living-labels-arc--buyer .tt-living-lbl:nth-child(6) { left: 9%;  top: 74%; }
.tw-terminal .tt-living-labels-arc--buyer .tt-living-lbl:nth-child(7) { left: 21%; top: 84%; }

/* Offering signals — even arc around right blob */
.tw-terminal .tt-living-labels-arc--offering .tt-living-lbl:nth-child(1) { left: 80%; top: 24%; }
.tw-terminal .tt-living-labels-arc--offering .tt-living-lbl:nth-child(2) { left: 92%; top: 38%; }
.tw-terminal .tt-living-labels-arc--offering .tt-living-lbl:nth-child(3) { left: 77%; top: 54%; }
.tw-terminal .tt-living-labels-arc--offering .tt-living-lbl:nth-child(4) { left: 90%; top: 72%; }

.tw-terminal .tt-living-lbl {
  position: absolute;
  transform: translate(-50%, -50%);
  font-family: var(--tw-mono);
  font-size: clamp(0.46rem, 0.68vw, 0.54rem);
  font-weight: 500;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 0.24rem 0.42rem;
  background: var(--tw-bg-light);
  border: 1px solid var(--tw-rule);
}

.tw-terminal .tt-living-lbl--thesis {
  font-size: clamp(0.5rem, 0.78vw, 0.6rem);
  color: var(--tw-green);
  background: color-mix(in srgb, var(--tw-green) 6%, #fff);
  border-color: color-mix(in srgb, var(--tw-green) 16%, var(--tw-rule));
}

.tw-terminal .tt-living-lbl--thesis::before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 4px;
  margin-right: 0.32rem;
  background: var(--tw-ticker-green);
  vertical-align: middle;
  animation: tt-living-blink 1.4s step-end infinite;
}

.tw-terminal .tt-living-lbl--track {
  color: var(--tw-pillar-green);
  background: color-mix(in srgb, var(--tw-pillar-green) 7%, #fff);
  border-color: color-mix(in srgb, var(--tw-pillar-green) 18%, var(--tw-rule));
}

.tw-terminal .tt-living-lbl--news {
  color: color-mix(in srgb, var(--tw-gold) 82%, #5c440e);
  background: color-mix(in srgb, var(--tw-gold) 12%, #fff);
  border-color: color-mix(in srgb, var(--tw-gold) 28%, var(--tw-rule));
}

.tw-terminal .tt-living-lbl--wide {
  font-size: clamp(0.42rem, 0.62vw, 0.5rem);
  letter-spacing: 0.05em;
}

.tw-terminal .tt-living-lbl--blue {
  color: var(--living-blue);
  background: color-mix(in srgb, var(--living-blue) 7%, #fff);
  border-color: color-mix(in srgb, var(--living-blue) 20%, var(--tw-rule));
}

.tw-terminal .tt-living-lbl--buyer {
  color: var(--living-customer);
  background: color-mix(in srgb, var(--living-customer-bright) 14%, #fff);
  border-color: color-mix(in srgb, var(--living-customer) 24%, var(--tw-rule));
  transition: background-color 0.35s ease, border-color 0.35s ease, opacity 0.35s ease;
}

.tw-terminal .tt-living-lbl--offering {
  color: var(--living-offering-text);
  background: color-mix(in srgb, var(--living-offering-bright) 28%, #fff);
  border-color: color-mix(in srgb, var(--living-offering) 42%, var(--tw-rule));
  transition: background-color 0.35s ease, border-color 0.35s ease, opacity 0.35s ease;
}

.tw-terminal .tt-living-lbl[data-living-signal]:not(.is-active) {
  opacity: 0.5;
}

.tw-terminal .tt-living-lbl--buyer.is-active {
  opacity: 1;
  background: color-mix(in srgb, var(--living-customer-bright) 22%, #fff);
  border-color: color-mix(in srgb, var(--living-customer) 36%, var(--tw-rule));
}

.tw-terminal .tt-living-lbl--offering.is-active {
  opacity: 1;
  background: color-mix(in srgb, var(--living-offering-bright) 38%, #fff);
  border-color: color-mix(in srgb, var(--living-offering) 52%, var(--tw-rule));
}

.tw-terminal .tt-living-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.6rem 0.85rem;
  border-top: 1px solid var(--tw-rule);
  color: var(--tw-text-muted);
}

.tw-terminal .tt-living-foot-status {
  color: var(--living-offering-text);
  text-align: right;
}

.tw-terminal .tt-living-status-fit {
  display: none;
  color: var(--living-intersect-mid);
  font-weight: 600;
  letter-spacing: 0.1em;
}

.tw-terminal .tt-living.is-fit .tt-living-status-synth {
  display: none;
}

.tw-terminal .tt-living.is-fit .tt-living-status-fit {
  display: inline;
  animation: tt-living-fit-status 1.8s ease-in-out infinite;
}

@keyframes tt-living-fit-status {
  0%, 100% { color: var(--living-intersect-mid); }
  50%      { color: var(--living-intersect-bright); }
}

.tw-terminal .tt-living-ellipsis .tt-living-ed1 { animation: tt-living-ellipsis 0.9s ease-in-out infinite; }
.tw-terminal .tt-living-ellipsis .tt-living-ed2 { animation: tt-living-ellipsis 0.9s ease-in-out 0.15s infinite; }
.tw-terminal .tt-living-ellipsis .tt-living-ed3 { animation: tt-living-ellipsis 0.9s ease-in-out 0.3s infinite; }

@keyframes tt-living-ellipsis {
  0%, 70%, 100% { opacity: 0.15; }
  35% { opacity: 1; }
}

@media (max-width: 768px) {
  .tw-terminal .tt-living { max-width: none; }
  .tw-terminal .tt-living-bar {
    grid-template-columns: auto 1fr auto;
    row-gap: 0.35rem;
  }
  .tw-terminal .tt-living-ticker { grid-column: 1 / -1; }
  .tw-terminal .tt-living-lbl {
    font-size: clamp(0.4rem, 2.8vw, 0.5rem);
    padding: 0.2rem 0.34rem;
  }
  .tw-terminal .tt-living-zone {
    font-size: clamp(0.66rem, 3.2vw, 0.82rem);
    padding: 0.34rem 0.5rem;
    max-width: min(100%, 9.5rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-living-dot,
  .tw-terminal .tt-living-lbl--thesis::before { animation: none; }
  .tw-terminal .tt-living-svg animate { display: none; }
  .tw-terminal .tt-living-goo--buyer,
  .tw-terminal .tt-living-goo--offering,
  .tw-terminal .tt-living-mark-chip,
  .tw-terminal .tt-living-fit-point,
  .tw-terminal .tt-living-stat-num.is-tick,
  .tw-terminal .tt-living.is-fit .tt-living-status-fit { animation: none; }
  .tw-terminal .tt-living-ed1,
  .tw-terminal .tt-living-ed2,
  .tw-terminal .tt-living-ed3 { animation: none; opacity: 1; }
}



.tw-terminal .tt-depth-layer,
.tw-terminal .tt-stack {
  background-color: #FFFFFF;
}

.tw-terminal .tt-stack-sub {
  max-width: 62ch;
  margin-top: clamp(1.5rem, 2.5vw, 2rem);
}
.tw-terminal .tt-stack .tt-h2 em { font-style: italic; font-weight: 500; color: var(--tw-text-dark); }



/* ==============================================
   THE STACK — four-circle Venn with Thinkwell at intersection
============================================== */
.tw-terminal .tt-stack-venn {
  --stack-venn-stroke: rgba(0, 0, 0, 0.2);
  --stack-venn-fill: rgba(0, 0, 0, 0.035);
  position: relative;
  width: 100%;
  max-width: 920px;
  margin: clamp(2rem, 4vw, 3rem) auto 0;
  aspect-ratio: 900 / 560;
  min-height: clamp(340px, 54vw, 540px);
}

.tw-terminal .tt-stack-venn-diagram {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.tw-terminal .tt-stack-venn-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.tw-terminal .tt-stack-venn-svg--mobile {
  display: none;
}

.tw-terminal .tt-stack-venn-circle {
  fill: var(--stack-venn-fill);
  fill-opacity: 1;
  stroke: var(--stack-venn-stroke);
  stroke-width: 1.5;
}

.tw-terminal .tt-stack-venn-ray {
  stroke: var(--stack-venn-stroke);
  stroke-dasharray: 5 5;
  opacity: 0.45;
}

.tw-terminal .tt-stack-venn-core-ring {
  fill: #fff;
  stroke: var(--stack-venn-stroke);
  stroke-width: 1.5;
  opacity: 0.95;
}

.tw-terminal .tt-stack-lobe {
  position: absolute;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  max-width: 38%;
  min-width: 0;
}

.tw-terminal .tt-stack-lobe--tl { top: 8%; left: 3.5%; align-items: flex-start; }
.tw-terminal .tt-stack-lobe--tr { top: 8%; right: 3.5%; align-items: flex-end; text-align: right; }
.tw-terminal .tt-stack-lobe--bl { bottom: 8%; left: 3.5%; align-items: flex-start; }
.tw-terminal .tt-stack-lobe--br { bottom: 8%; right: 3.5%; align-items: flex-end; text-align: right; }

.tw-terminal .tt-stack-qlabel {
  font-family: var(--tw-mono);
  font-size: clamp(0.68rem, 1.2vw, 0.88rem);
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--tw-text-dark);
  display: inline-flex;
  align-items: baseline;
  gap: 0.45em;
}

.tw-terminal .tt-stack-qnum { color: var(--tw-gold); font-size: 0.68rem; }

.tw-terminal .tt-stack-qtools {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.tw-terminal .tt-stack-lobe--tr .tt-stack-qtools,
.tw-terminal .tt-stack-lobe--br .tt-stack-qtools { justify-content: flex-end; }

.tw-terminal .tt-stack-qtool {
  display: inline-flex;
  align-items: center;
  gap: 0.38em;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid var(--tw-grid-line);
  border-radius: 999px;
  padding: 0.32em 0.62em 0.32em 0.42em;
  font-family: var(--tw-body-font);
  font-size: clamp(0.58rem, 1vw, 0.78rem);
  font-weight: 500;
  letter-spacing: -0.01em;
  color: rgba(10, 10, 10, 0.72);
  white-space: nowrap;
  filter: grayscale(0.35);
  opacity: 0.88;
  backdrop-filter: blur(4px);
}

.tw-terminal .tt-stack-qtool img {
  width: clamp(14px, 1.8vw, 18px);
  height: clamp(14px, 1.8vw, 18px);
  object-fit: contain;
  border-radius: 4px;
}

.tw-terminal .tt-stack-hub {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.22rem;
  text-align: center;
  width: clamp(7.25rem, 17vw, 10.25rem);
  height: clamp(7.25rem, 17vw, 10.25rem);
  border-radius: 50%;
  background: #FFFFFF;
  border: 2px solid var(--tw-pillar-green);
  padding: 0.85rem;
  box-shadow:
    0 0 0 6px rgba(255, 255, 255, 0.85),
    0 12px 36px rgba(16, 57, 46, 0.14);
}

.tw-terminal .tt-stack-core-logo {
  width: clamp(26px, 3.8vw, 38px);
  height: auto;
  filter: invert(1);
}

.tw-terminal .tt-stack-core-name {
  font-family: var(--tw-display);
  font-size: clamp(0.92rem, 1.8vw, 1.25rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: var(--tw-pillar-green);
}

.tw-terminal .tt-stack-core-tag {
  font-family: var(--tw-mono);
  font-size: clamp(0.42rem, 0.78vw, 0.54rem);
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--tw-gold);
  line-height: 1.25;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .tw-terminal .tt-stack-venn {
    aspect-ratio: 1;
    min-height: 0;
    max-width: min(100%, 22.5rem);
    margin-top: clamp(1.5rem, 4vw, 2rem);
    border: none;
    background: transparent;
  }

  .tw-terminal .tt-stack-venn-diagram {
    position: absolute;
    inset: 0;
    max-width: none;
    margin: 0;
    aspect-ratio: 1;
  }

  .tw-terminal .tt-stack-venn-svg--desktop {
    display: none;
  }

  .tw-terminal .tt-stack-venn-svg--mobile {
    display: block;
  }

  .tw-terminal .tt-stack-lobe {
    position: absolute;
    z-index: 2;
    max-width: 36%;
    min-width: 0;
    padding: 0;
    border: none;
    background: transparent;
    gap: 0.35rem;
    pointer-events: none;
  }

  .tw-terminal .tt-stack-lobe--tl {
    top: 7%;
    left: 3%;
    align-items: flex-start;
    text-align: left;
  }

  .tw-terminal .tt-stack-lobe--tr {
    top: 7%;
    right: 3%;
    align-items: flex-end;
    text-align: right;
  }

  .tw-terminal .tt-stack-lobe--bl {
    bottom: 7%;
    left: 3%;
    align-items: flex-start;
    text-align: left;
  }

  .tw-terminal .tt-stack-lobe--br {
    bottom: 7%;
    right: 3%;
    align-items: flex-end;
    text-align: right;
  }

  .tw-terminal .tt-stack-lobe--tr .tt-stack-qtools,
  .tw-terminal .tt-stack-lobe--br .tt-stack-qtools {
    justify-content: flex-end;
  }

  .tw-terminal .tt-stack-qlabel {
    font-size: 0.54rem;
    letter-spacing: 0.05em;
    line-height: 1.2;
    padding: 0.2em 0.45em;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid var(--tw-grid-line);
    border-radius: 4px;
    backdrop-filter: blur(4px);
  }

  .tw-terminal .tt-stack-qnum {
    display: none;
  }

  .tw-terminal .tt-stack-qtools {
    gap: 0.22rem;
    flex-wrap: nowrap;
  }

  .tw-terminal .tt-stack-qtool {
    padding: 0.22em;
    border-radius: 6px;
    filter: none;
    opacity: 1;
  }

  .tw-terminal .tt-stack-qtool b {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .tw-terminal .tt-stack-qtool img {
    width: 16px;
    height: 16px;
  }

  .tw-terminal .tt-stack-hub {
    width: clamp(5.75rem, 42vw, 7.25rem);
    height: clamp(5.75rem, 42vw, 7.25rem);
    padding: 0.65rem;
    box-shadow:
      0 0 0 4px rgba(255, 255, 255, 0.9),
      0 8px 24px rgba(16, 57, 46, 0.12);
  }

  .tw-terminal .tt-stack-core-logo {
    width: clamp(22px, 6vw, 28px);
  }

  .tw-terminal .tt-stack-core-name {
    font-size: clamp(0.82rem, 3.2vw, 0.95rem);
  }

  .tw-terminal .tt-stack-core-tag {
    font-size: 0.42rem;
    letter-spacing: 0.08em;
  }
}


/* ==============================================
   PILLAR 02 · LEADS — light fit heatmap (matches other pillars)
============================================== */
.tw-terminal .tt-pc--leads .tt-lh {
  --lh-cold: #ffffff;
  --lh-hot: #c5d0ea;
}

.tw-terminal .tt-lh-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.7rem;
}
.tw-terminal .tt-lh-live {
  font-family: var(--tw-mono);
  font-size: 0.6rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--pc-muted);
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
}
.tw-terminal .tt-lh-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--pc-accent);
  animation: ttLhPulse 1.8s ease-out infinite;
}
@keyframes ttLhPulse {
  0%   { box-shadow: 0 0 0 0 color-mix(in srgb, var(--pc-accent) 50%, transparent); }
  70%  { box-shadow: 0 0 0 5px color-mix(in srgb, var(--pc-accent) 0%, transparent); }
  100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--pc-accent) 0%, transparent); }
}
.tw-terminal .tt-lh-legend { display: inline-flex; align-items: center; gap: 0.45em; flex: 0 0 auto; }
.tw-terminal .tt-lh-legend-lbl { font-family: var(--tw-mono); font-size: 0.54rem; letter-spacing: 0.12em; color: var(--pc-muted); }
.tw-terminal .tt-lh-legend-ramp {
  width: clamp(40px, 6vw, 60px); height: 7px; border-radius: 2px;
  border: 1px solid var(--pc-line);
  background: linear-gradient(90deg, var(--lh-cold), var(--lh-hot));
}

.tw-terminal .tt-lh-diagram {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  background: transparent;
}

/* light hairline grid */
.tw-terminal .tt-lh-diagram .tt-lh-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-auto-rows: clamp(28px, 3.5vw, 36px);
  gap: 1px;
  background: var(--pc-line);
  padding: 1px;
  border: 1px solid var(--pc-line);
  border-radius: 0;
}

/* light hairline grid */
.tw-terminal .tt-lh-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-auto-rows: clamp(34px, 4.6vw, 46px);
  gap: 1px;
  background: var(--pc-line);
  padding: 1px;
  border: 1px solid var(--pc-line);
  border-radius: var(--tw-radius);
}
.tw-terminal .tt-lh-tile {
  position: relative;
  overflow: hidden;
  background: color-mix(in srgb, var(--lh-hot) calc(var(--fit) * 88%), var(--lh-cold));
  padding: 0.4rem 0.5rem;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.tw-terminal .tt-pc--leads .tt-lh-tile {
  background: color-mix(in srgb, var(--lh-hot) calc(var(--fit) * 68%), var(--lh-cold));
  padding: 0.28rem 0.42rem;
}
.tw-terminal .tt-lh-tile--wide { grid-column: span 2; }
.tw-terminal .tt-lh-tile--xl { grid-column: span 3; grid-row: span 2; }
.tw-terminal .tt-lh-badge {
  align-self: flex-start;
  font-family: var(--tw-mono);
  font-size: 0.5rem; font-weight: 500; letter-spacing: 0.12em;
  color: #1A1408; background: var(--tw-gold);
  padding: 0.18em 0.42em; border-radius: 2px;
}
.tw-terminal .tt-lh-name {
  margin-top: auto;
  font-family: var(--tw-body-font);
  font-weight: 600;
  font-size: clamp(0.66rem, 1vw, 0.82rem);
  letter-spacing: -0.01em;
  color: var(--pc-text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  line-height: 1.15;
}
.tw-terminal .tt-lh-why {
  font-family: var(--tw-body-font);
  font-size: 0.66rem; line-height: 1.25;
  color: rgba(0, 0, 0, 0.6);
  margin-top: 0.25rem;
  max-width: 92%;
}
.tw-terminal .tt-lh-score {
  position: absolute; top: 0.4rem; right: 0.5rem;
  font-family: var(--tw-mono); font-weight: 500;
  font-size: clamp(0.56rem, 0.9vw, 0.72rem);
  color: rgba(0, 0, 0, 0.5);
}
/* high-fit tiles read better with white text (not on leads white-toned ramp) */
.tw-terminal .tt-lh-tile[style*="--fit:.9"] .tt-lh-name,
.tw-terminal .tt-lh-tile[style*="--fit:.8"] .tt-lh-name { color: #fff; }
.tw-terminal .tt-lh-tile[style*="--fit:.9"] .tt-lh-why,
.tw-terminal .tt-lh-tile[style*="--fit:.9"] .tt-lh-score,
.tw-terminal .tt-lh-tile[style*="--fit:.8"] .tt-lh-score { color: rgba(255,255,255,0.85); }
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.9"] .tt-lh-name,
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.8"] .tt-lh-name,
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.9"] .tt-lh-why,
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.9"] .tt-lh-score,
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.8"] .tt-lh-score {
  color: var(--pc-text);
}
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.9"] .tt-lh-why {
  color: rgba(0, 0, 0, 0.55);
}
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.9"] .tt-lh-score,
.tw-terminal .tt-pc--leads .tt-lh-tile[style*="--fit:.8"] .tt-lh-score {
  color: rgba(0, 0, 0, 0.45);
}
.tw-terminal .tt-lh-tile--top { box-shadow: inset 0 0 0 1.5px var(--tw-gold); }

/* Leads heatmap — explicit diagram height (matches attachments inner layout) */
.tw-terminal .tt-pc--leads .tt-lh-grid {
  min-height: var(--pr-diagram-h);
  grid-auto-rows: 1fr;
  background: rgba(255, 255, 255, 0.22);
  border-color: rgba(255, 255, 255, 0.32);
}

/* Stage chrome text — labels sit on colored stage, not a white card */
.tw-terminal .tt-pc--leads .tt-pr-visual-stage .tt-lh-live,
.tw-terminal .tt-pc--leads .tt-pr-visual-stage .tt-lh-legend-lbl {
  color: rgba(255, 255, 255, 0.72);
}
.tw-terminal .tt-pc--leads .tt-pr-visual-stage .tt-lh-legend-ramp {
  border-color: rgba(255, 255, 255, 0.35);
}
.tw-terminal .tt-pc--attach .tt-pr-visual-stage .tt-p-attach-lib-label {
  color: rgba(255, 255, 255, 0.72);
}
.tw-terminal .tt-pc--meetings .tt-pr-visual-stage .tt-mt-label {
  color: var(--tw-gold);
}
.tw-terminal .tt-pc--meetings .tt-pr-visual-stage .tt-mt.is-linked .tt-mt-connector {
  border-left-color: rgba(255, 255, 255, 0.92);
  border-bottom-color: rgba(255, 255, 255, 0.92);
  opacity: 1;
  transform: scale(1);
}

.tw-terminal .tt-pr-visual-card .tt-lh-grid,
.tw-terminal .tt-pr-visual-card .tt-lh-diagram,
.tw-terminal .tt-pr-visual-card .tt-ot-email,
.tw-terminal .tt-pr-visual-card .tt-mt-card,
.tw-terminal .tt-pr-visual-card .tt-p-attach-featured {
  border-radius: 0;
}

.tw-terminal .tt-lh-diagram .tt-lh-pov {
  margin: 0;
  border: 1px solid var(--pc-line);
  border-left: 3px solid var(--pc-accent);
  border-radius: 0;
  background: color-mix(in srgb, var(--pc-accent) 6%, #fff);
  padding: 0.85rem 0.95rem;
}

.tw-terminal .tt-lh-diagram .tt-lh-pov .tt-pc-pov-label {
  margin-bottom: 0.3rem;
}

.tw-terminal .tt-lh-diagram .tt-lh-pov p {
  font-family: var(--tw-body-font);
  font-size: clamp(0.8125rem, 0.14rem + 0.78vw, 0.90625rem);
  font-weight: var(--tw-deck-weight);
  font-variation-settings: 'wght' var(--tw-deck-weight);
  line-height: 1.44;
  letter-spacing: -0.012em;
  color: rgba(10, 10, 10, 0.72);
}

@media (max-width: 420px) {
  .tw-terminal .tt-lh-tile--xl .tt-lh-why,
  .tw-terminal .tt-lh-tile--wide .tt-lh-why { display: none; }
}

/* BY THE NUMBERS — "see for yourself" CTA */
.tw-terminal .tt-bn-cta {
  margin-top: clamp(2rem, 4vw, 3rem);
  padding-top: clamp(1.5rem, 3vw, 2.25rem);
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  flex-wrap: wrap;
}
.tw-terminal .tt-bn-cta-line {
  margin: 0;
  font-family: var(--tw-body-font);
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  letter-spacing: -0.011em;
  color: rgba(255, 255, 255, 0.82);
  max-width: 48ch;
}
.tw-terminal .tt-bn-cta-btn { flex: 0 0 auto; }
@media (max-width: 620px) {
  .tw-terminal .tt-bn-cta {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    margin-top: clamp(1.5rem, 4vw, 2rem);
    padding-top: clamp(1rem, 2.5vw, 1.35rem);
  }

  .tw-terminal .tt-bn-cta-line {
    flex: 0 1 auto;
    max-width: none;
  }

  .tw-terminal .tt-bn-cta-btn {
    width: 100%;
    max-width: 20rem;
    justify-content: center;
    text-align: center;
    white-space: normal;
    line-height: 1.3;
    min-height: 2.85rem;
    padding-block: 0.85rem;
  }
}

/* ==============================================
   EMBEROS BRIEF — password-gated account brief
============================================== */
.tw-terminal.tt-page-emberos {
  background-color: var(--tw-bg-light);
}

.tw-terminal .tt-brief-gate[hidden],
.tw-terminal #ttEmberosNav[hidden],
.tw-terminal #ttEmberosBrief[hidden] {
  display: none !important;
}

/* Brief page — account playbook (source report typography + Thinkwell shell) */
.tw-terminal.tt-page-emberos-brief {
  --tt-brief-serif: 'Instrument Serif', Georgia, serif;
  --tt-brief-sans: 'DM Sans', system-ui, sans-serif;
  --tt-brief-mono-font: var(--tw-mono);
  --tt-brief-body-size: 0.9375rem;
  --tt-brief-body-leading: 1.65;
  --tt-brief-sans-sm: 0.875rem;
  --tt-brief-ink: #1c1e26;
  --tt-brief-ink-80: #3a3d48;
  --tt-brief-ink-50: #7b7e8a;
  --tt-brief-ink-30: #a9abb4;
  --tt-brief-ink-10: #e8e9ec;
  --tt-brief-paper: #faf9f7;
  --tt-brief-accent: #b5372b;
  --tt-brief-accent-soft: #f5e8e6;
  --tt-brief-teal: #1a7a6d;
  --tt-brief-teal-soft: #e6f4f1;
  --tt-brief-blue: var(--tw-continuous-accent, #1E40C4);
  --tt-brief-blue-soft: color-mix(in srgb, var(--tw-continuous-accent, #1E40C4) 10%, var(--tt-brief-paper));
  --tt-brief-warm: #f4f2ee;
  --tt-brief-page: 52rem;
  --tt-brief-radius: 4px;
  --tt-brief-inset-pad: 0.75rem;
  --tt-brief-inset-gutter: 0;
  background-color: var(--tt-brief-paper);
  color: var(--tt-brief-ink);
  scroll-behavior: smooth;
}

.tw-terminal.tt-page-emberos-brief .tt-nav--muted {
  background-color: var(--tt-brief-paper);
  border-bottom-color: var(--tt-brief-ink-10);
}

.tw-terminal.tt-page-emberos-brief .tt-nav--brief .tt-nav-inner {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 0.75rem;
  height: auto;
  min-height: 64px;
  padding-block: 0.55rem;
}

.tw-terminal.tt-page-emberos-brief .tt-nav--brief .tt-wordmark {
  grid-column: 1;
  justify-self: start;
}

.tw-terminal.tt-page-emberos-brief .tt-nav--brief .tt-nav-right {
  grid-column: 3;
  justify-self: end;
  padding-right: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc {
  grid-column: 2;
  justify-self: center;
  min-width: 0;
  max-width: 100%;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc ol {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.125rem;
  margin: 0;
  padding: 0.2rem;
  list-style: none;
  background: var(--tt-brief-warm);
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc li {
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc a {
  display: inline-flex;
  align-items: center;
  padding: 0.38rem 0.72rem;
  border-radius: 999px;
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.07em;
  line-height: 1.2;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--tt-brief-ink-50);
  text-decoration: none;
  transition: background-color 140ms ease, color 140ms ease, box-shadow 140ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc a:hover {
  color: var(--tt-brief-ink);
  background: rgba(255, 255, 255, 0.72);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc a.is-active {
  background: #fff;
  color: var(--tt-brief-blue);
  box-shadow: 0 1px 4px rgba(28, 30, 38, 0.08);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-article {
  font-family: var(--tt-brief-sans);
  font-size: var(--tt-brief-body-size);
  line-height: var(--tt-brief-body-leading);
  color: var(--tt-brief-ink-80);
  min-width: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-article p:not(.tt-brief-dek),
.tw-terminal.tt-page-emberos-brief .tt-brief-card p,
.tw-terminal.tt-page-emberos-brief .tt-brief-beats li,
.tw-terminal.tt-page-emberos-brief .tt-brief-aside,
.tw-terminal.tt-page-emberos-brief .tt-brief-proof,
.tw-terminal.tt-page-emberos-brief .tt-brief-test-cell p,
.tw-terminal.tt-page-emberos-brief .tt-brief-source-list,
.tw-terminal.tt-page-emberos-brief .tt-brief-source-note,
.tw-terminal.tt-page-emberos-brief .tt-brief-stake > p,
.tw-terminal.tt-page-emberos-brief .tt-brief-person-title {
  font-size: var(--tt-brief-body-size);
  line-height: var(--tt-brief-body-leading);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-canvas {
  padding: clamp(2.75rem, 5.5vw, 3.75rem) clamp(1.25rem, 3vw, 2rem) clamp(3rem, 6vw, 4rem);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-layout {
  display: block;
  max-width: var(--tt-brief-page);
  margin-inline: auto;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-doc {
  padding: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-masthead {
  padding: 0 0 2.125rem;
  margin: 0 0 2.125rem;
  border-bottom: 1px solid var(--tt-brief-ink-10);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-masthead-card {
  padding: 0 0 2.125rem;
  background: transparent;
  border: none;
  border-bottom: 2px solid var(--tt-brief-ink);
  border-radius: 0;
  box-shadow: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-masthead-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem 1.5rem;
  margin-bottom: 0.25rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partnership {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 0;
  padding: 0;
  background: none;
  border: none;
  box-shadow: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner {
  display: flex;
  align-items: center;
  line-height: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner--emberos {
  text-decoration: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner--emberos img {
  display: block;
  height: 1.15rem;
  width: auto;
  filter: grayscale(1);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partnership-x {
  flex-shrink: 0;
  font-family: var(--tw-display);
  font-size: 1.15rem;
  font-weight: 300;
  line-height: 1;
  color: rgba(10, 10, 10, 0.28);
  user-select: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-rh-mark {
  display: block;
  height: 1.55rem;
  width: auto;
  color: #1a1a1a;
  filter: grayscale(1);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner--owlery,
.tw-terminal.tt-page-emberos-brief .tt-brief-partner--poppi,
.tw-terminal.tt-page-emberos-brief .tt-brief-partner--goodles,
.tw-terminal.tt-page-emberos-brief .tt-brief-partner--conduit,
.tw-terminal.tt-page-emberos-brief .tt-brief-partner--localvr {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  text-decoration: none;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner--conduit img {
  display: block;
  height: 1rem;
  width: auto;
  filter: grayscale(1);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-owlery-mark,
.tw-terminal.tt-page-emberos-brief .tt-brief-poppi-mark,
.tw-terminal.tt-page-emberos-brief .tt-brief-goodles-mark,
.tw-terminal.tt-page-emberos-brief .tt-brief-localvr-mark {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  filter: grayscale(1);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-owlery-mark {
  border-radius: 0.25rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-poppi-mark {
  border-radius: 50%;
  object-fit: cover;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-goodles-mark {
  border-radius: 0.25rem;
  object-fit: contain;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-localvr-mark {
  border-radius: 0.35rem;
  object-fit: contain;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner-wordmark--goodles {
  font-family: var(--tt-brief-sans);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner-wordmark--localvr {
  font-family: var(--tt-brief-sans);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner-wordmark {
  font-family: var(--tt-brief-sans);
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-partner-wordmark--poppi {
  font-family: var(--tt-brief-serif);
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-transform: lowercase;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-article p:not(.tt-brief-dek):not(.tt-brief-deeper-lead):not(.tt-brief-deeper-body) {
  margin: 0 0 0.875rem;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-topbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: baseline;
  gap: 0.5rem 1.125rem;
  margin: 0;
  padding: 0;
  border: none;
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
  color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-doc .tt-brief-h1 {
  font-family: var(--tt-brief-serif);
  font-size: 2.5rem;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.02;
  margin: 2.75rem 0 0;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-dek {
  margin: 1.125rem 0 1.125rem;
  padding: 0;
  background: transparent;
  font-family: var(--tt-brief-serif);
  font-style: italic;
  font-size: 1.1875rem;
  line-height: 1.35;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-summary {
  margin: 1.25rem 0 0;
  padding: 1.125rem 1.25rem 1rem;
  background: var(--tt-brief-warm);
  border: 1px solid var(--tt-brief-ink-10);
  border-left: 3px solid var(--tt-brief-blue);
  border-radius: var(--tt-brief-radius);
  scroll-margin-top: 5.5rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-summary-label {
  margin-bottom: 0.625rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--tt-brief-blue);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-summary .tt-brief-dek {
  margin: 0 0 0.875rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-summary .tt-brief-scope-list {
  margin: 0;
  padding: 0.875rem 0 0;
  border-top: 1px solid var(--tt-brief-ink-10);
  list-style: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-scope-list li {
  position: relative;
  padding: 0.3rem 0 0.3rem 1rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.55;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-scope-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62rem;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--tt-brief-blue);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-scope-list li:last-child {
  padding-bottom: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-scope-list strong,
.tw-terminal.tt-page-emberos-brief .tt-brief-scope strong {
  font-family: var(--tt-brief-mono-font);
  font-size: inherit;
  font-weight: 500;
  letter-spacing: normal;
  text-transform: none;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-scope-list .tt-brief-mono,
.tw-terminal.tt-page-emberos-brief .tt-brief-scope .tt-brief-mono {
  font-family: var(--tt-brief-mono-font);
  font-size: inherit;
  font-weight: 500;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-mono {
  font-family: var(--tt-brief-mono-font);
  font-weight: 500;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.55rem;
  border: 1px solid var(--tw-grid-line);
  border-radius: 0;
  font-family: var(--tw-body-font);
  font-size: 0.75rem;
  line-height: 1.35;
  background: var(--tw-bg-pure);
  color: var(--tw-text-muted);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-chip b {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
  color: var(--tw-text-dark);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-doc a.tt-brief-src {
  color: inherit;
  font-weight: inherit;
  text-decoration: underline;
  text-decoration-color: var(--tt-brief-ink-30);
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-doc a.tt-brief-src:hover {
  color: inherit;
  text-decoration-color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-section {
  padding: 1.65rem 0 2.75rem;
  margin: 0 0 2.75rem;
  border-top: none;
  border-bottom: 1px solid var(--tt-brief-ink-10);
  scroll-margin-top: 5.5rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-section-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 2.15rem;
  padding-top: 0.35rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-section-head .tt-brief-h2 {
  max-width: 34rem;
  margin: 0 auto;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin: 0 0 1.1rem;
  padding: 0.55rem 1rem 0.55rem 0.9rem;
  background: var(--tt-brief-blue-soft);
  border: 1px solid color-mix(in srgb, var(--tt-brief-blue) 14%, transparent);
  border-radius: 999px;
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--tt-brief-blue);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-kicker-icon {
  width: 0.95rem;
  height: 0.95rem;
  flex-shrink: 0;
  opacity: 0.92;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-doc .tt-brief-h2 {
  font-family: var(--tt-brief-serif);
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.12;
  color: var(--tt-brief-ink);
  margin: 0 0 1.25rem;
  padding: 0;
  border: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-doc .tt-brief-h3 {
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.115em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--tt-brief-ink);
  margin: 2rem 0 0.875rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body .tt-brief-h3 {
  margin-top: 2.35rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body .tt-brief-beats {
  margin-bottom: 0.35rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake .tt-brief-h3 {
  margin-top: 0;
  font-size: 0.8125rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-card-title {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--tw-text-dark);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-card p + p {
  margin-top: 0.65rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-beats li {
  padding: 0.5rem 0 0.5rem 1.375rem;
  border-bottom: none;
  color: var(--tt-brief-ink-80);
  font-size: var(--tt-brief-body-size);
  line-height: 1.55;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-beats li::before {
  left: 2px;
  top: 1.125rem;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--tt-brief-accent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-lead {
  color: var(--tt-brief-ink);
  font-weight: 700;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-beats li .tt-brief-quote {
  margin: 0.75rem 0 0.875rem;
  padding: 0.95rem 1rem 0.8rem 1.15rem;
  background: #fff;
  border: 1px solid var(--tt-brief-ink-10);
  border-left: 3px solid var(--tt-brief-blue);
  border-radius: var(--tt-brief-radius);
  box-shadow: 0 2px 12px rgba(28, 30, 38, 0.05);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-quote {
  position: relative;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-quote::before {
  content: "\201C";
  position: absolute;
  left: 0.7rem;
  top: 0.15rem;
  font-family: var(--tt-brief-serif);
  font-size: 2.35rem;
  line-height: 1;
  color: var(--tt-brief-blue);
  opacity: 0.28;
  pointer-events: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-quote blockquote {
  margin: 0;
  padding: 0 0 0 1.35rem;
  border: none;
  font-family: var(--tt-brief-serif);
  font-style: italic;
  font-size: 1.0625rem;
  line-height: 1.48;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-quote figcaption {
  margin-top: 0.6rem;
  padding-top: 0.55rem;
  padding-left: 1.35rem;
  border-top: 1px solid var(--tt-brief-ink-10);
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-quote figcaption a.tt-brief-src {
  font-weight: 600;
  text-transform: none;
  letter-spacing: normal;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-proof {
  font-size: var(--tt-brief-body-size);
  line-height: var(--tt-brief-body-leading);
  background: var(--tt-brief-warm);
  border: none;
  border-radius: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-proof b {
  color: var(--tw-text-dark);
  font-family: var(--tw-mono);
  font-size: 1.125rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-grid-2,
.tw-terminal.tt-page-emberos-brief .tt-brief-grid-3 {
  gap: 0.65rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-card {
  padding: 1rem 1.05rem;
  background: var(--tw-bg-pure);
  border: 1px solid var(--tw-grid-line);
  border-radius: 0;
  box-shadow: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-aside {
  margin: 1.375rem 0;
  padding: 1rem 1.25rem;
  background: var(--tt-brief-warm);
  border-left: 3px solid var(--tt-brief-accent);
  border-radius: var(--tt-brief-radius);
  font-size: var(--tt-brief-body-size);
  line-height: 1.6;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-test {
  border-radius: 0;
  border-color: var(--tw-grid-line);
  overflow: hidden;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-test-head {
  background: var(--tw-bg-light);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-test-stat .tt-brief-mono {
  color: var(--tt-brief-accent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-person--strong {
  border-left-color: var(--tt-brief-teal);
  background: var(--tt-brief-teal-soft);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-person--gate {
  border-left-color: #9a7b2d;
  background: #fef7e0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-callout {
  margin: 1.35rem 0 0.65rem;
  padding: 1.2rem 1.35rem 1.05rem;
  background: linear-gradient(160deg, var(--tt-brief-accent-soft), #fff 78%);
  border: 1px solid color-mix(in srgb, var(--tt-brief-accent) 24%, var(--tt-brief-ink-10));
  border-radius: var(--tt-brief-radius);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-callout-label {
  margin-bottom: 0.5rem;
  font-family: var(--tt-brief-mono-font);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tt-brief-accent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-callout-q {
  margin: 0 0 0.5rem;
  font-family: var(--tt-brief-serif);
  font-size: clamp(1.3rem, 2.7vw, 1.6rem);
  line-height: 1.16;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-callout-body {
  margin: 0 0 0.55rem;
  font-family: var(--tt-brief-sans);
  font-size: var(--tt-brief-body-size);
  line-height: 1.55;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-summary .tt-brief-cite {
  font-family: var(--tt-brief-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 0.6875rem;
  line-height: 1.5;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-summary .tt-brief-cite .tt-brief-src {
  font-family: var(--tt-brief-sans);
  font-style: normal;
  font-size: 0.6875rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-summary .tt-brief-dek .tt-brief-cite {
  display: block;
  margin-top: 0.4rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-scope-list .tt-brief-cite {
  display: inline;
  margin-top: 0;
  margin-left: 0.2rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-deeper {
  margin: 0;
  padding: 0;
  text-align: center;
  background: transparent;
  border: none;
  border-radius: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-deeper-panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 36rem;
  margin: 0 auto;
  padding: 0;
  text-align: center;
  background: transparent;
  border: none;
  border-radius: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-deeper-logo {
  display: block;
  height: 1.125rem;
  width: auto;
  margin: 0 0 0.85rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-deeper-title {
  font-family: var(--tt-brief-serif);
  font-size: clamp(1.625rem, 3.5vw, 1.875rem);
  font-weight: 400;
  line-height: 1.12;
  text-align: center;
  color: #fff;
  margin: 0 0 1.1rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-deeper .tt-brief-deeper-lead {
  width: 100%;
  max-width: 32rem;
  margin: 0 auto 0.9rem;
  font-family: var(--tt-brief-serif);
  font-style: italic;
  font-size: 1.0625rem;
  line-height: 1.45;
  text-align: center;
  text-wrap: balance;
  color: rgba(255, 255, 255, 0.9);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-deeper .tt-brief-deeper-body {
  width: 100%;
  max-width: 30rem;
  margin: 0 auto 1.35rem;
  font-family: var(--tt-brief-sans);
  font-size: var(--tt-brief-sans-sm);
  line-height: 1.55;
  text-align: center;
  text-wrap: balance;
  color: rgba(255, 255, 255, 0.74);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-deeper-cta {
  margin-top: 0.15rem;
  font-family: var(--tt-brief-mono-font);
  font-size: 0.8125rem;
  letter-spacing: 0.02em;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-foot {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.5rem 1.125rem;
  align-items: baseline;
  margin: 0;
  padding-top: 0.875rem;
  border-top: 2px solid var(--tt-brief-ink);
  border-bottom: none;
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  letter-spacing: normal;
  text-transform: none;
  text-align: center;
  color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-brand {
  font-size: 0.6875rem;
  letter-spacing: 0.27em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-date {
  font-size: 0.6875rem;
  color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin: 1.25rem 0 1.75rem;
  padding: 0;
  background: transparent;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary summary {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  cursor: pointer;
  list-style: none;
  padding: 0.4rem 0.65rem;
  background: var(--tt-brief-ink-10);
  border: 1px solid color-mix(in srgb, var(--tt-brief-ink) 8%, transparent);
  border-radius: var(--tt-brief-radius);
  font-family: var(--tt-brief-sans);
  font-size: 0.71875rem;
  font-weight: 500;
  line-height: 1.3;
  color: var(--tt-brief-ink-50);
  transition: color 150ms ease, border-color 150ms ease, background-color 150ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary summary::-webkit-details-marker {
  display: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary summary:hover {
  color: var(--tt-brief-ink-80);
  background: color-mix(in srgb, var(--tt-brief-ink) 6%, var(--tt-brief-paper));
  border-color: color-mix(in srgb, var(--tt-brief-ink) 14%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary-icon {
  width: 0.85rem;
  height: 0.85rem;
  flex-shrink: 0;
  color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary[open] summary {
  margin-bottom: 0.55rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary-body {
  width: min(100%, 30rem);
  padding: 0.85rem 0.95rem 0.95rem;
  background: color-mix(in srgb, var(--tt-brief-ink) 4%, var(--tt-brief-paper));
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: var(--tt-brief-radius);
  text-align: left;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary-lead {
  margin: 0 0 0.75rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary dl {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary dt {
  display: block;
  margin-top: 0.7rem;
  font-weight: 700;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary dt:first-child {
  margin-top: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-glossary dd {
  display: block;
  margin: 0.2rem 0 0;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp {
  margin-bottom: 0.875rem;
  border: 1px solid var(--tt-brief-ink-10);
  background: #fff;
  border-radius: var(--tt-brief-radius);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp summary {
  cursor: pointer;
  list-style: none;
  padding: 1rem 1.125rem;
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr) 1.75rem;
  gap: 1rem;
  align-items: center;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-head {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp summary::after {
  content: "";
  grid-column: 3;
  grid-row: 1;
  width: 1.75rem;
  height: 1.75rem;
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: 50%;
  background-color: var(--tt-brief-warm);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath stroke='%237b7e8a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.72rem;
  transition: transform 220ms ease, background-color 150ms ease, border-color 150ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp[open] > summary::after {
  transform: rotate(180deg);
  background-color: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp summary:hover::after {
  border-color: var(--tt-brief-ink-30);
  background-color: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  width: 4.5rem;
  aspect-ratio: 1;
  padding: 0.45rem 0.35rem 0.4rem;
  border: 1px solid transparent;
  border-radius: 4px;
  text-align: center;
  flex-shrink: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-letter {
  font-family: var(--tt-brief-mono-font);
  font-size: 1.45rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.04em;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-caption {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.15rem;
  min-width: 0;
  max-width: 100%;
  font-family: var(--tt-brief-sans);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-sep {
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1;
  opacity: 0.5;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-label {
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.1;
  text-transform: uppercase;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-badge--ok {
  background: var(--tt-brief-teal-soft);
  color: var(--tt-brief-teal);
  border-color: color-mix(in srgb, var(--tt-brief-teal) 22%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-badge--blue {
  background: var(--tt-brief-blue-soft);
  color: var(--tt-brief-blue);
  border-color: color-mix(in srgb, var(--tt-brief-blue) 22%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-badge--warn {
  background: #fef7e0;
  color: #9a7b2d;
  border-color: color-mix(in srgb, #9a7b2d 22%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-badge--neutral {
  background: var(--tt-brief-ink-10);
  color: var(--tt-brief-ink-80);
  border-color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp summary::-webkit-details-marker {
  display: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-title {
  display: block;
  font-family: var(--tt-brief-serif);
  font-size: 1.375rem;
  line-height: 1.1;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-meta {
  display: block;
  margin-top: 0.3125rem;
  font-size: 0.75rem;
  line-height: 1.45;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body {
  padding: 0.875rem 1rem 1.125rem;
  border-top: 1px solid var(--tt-brief-ink-10);
  background: color-mix(in srgb, var(--tt-brief-warm) 35%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-tag {
  display: inline-block;
  padding: 0.2rem 0.375rem;
  border-radius: 3px;
  font-family: var(--tt-brief-sans);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-tag--ok {
  background: var(--tt-brief-teal-soft);
  color: var(--tt-brief-teal);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-tag--warn {
  background: #fef7e0;
  color: #9a7b2d;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-tag--risk {
  background: var(--tt-brief-accent-soft);
  color: var(--tt-brief-accent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-tag--neutral {
  background: var(--tt-brief-ink-10);
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-tag--user {
  background: var(--tt-brief-blue-soft);
  color: var(--tt-brief-blue);
  border: 1px solid color-mix(in srgb, var(--tt-brief-blue) 20%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway {
  margin: 0.5rem 0 2rem;
  padding: 0;
  background: linear-gradient(135deg, #23252f 0%, var(--tt-brief-ink) 52%, #171920 100%);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-left: 4px solid var(--tt-brief-blue);
  border-radius: var(--tt-brief-radius);
  display: grid;
  gap: 0;
  overflow: hidden;
  box-shadow:
    0 10px 28px rgba(28, 30, 38, 0.16),
    0 0 0 1px rgba(30, 64, 196, 0.08);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway-head {
  padding: 0.6rem 1.15rem;
  background: rgba(255, 255, 255, 0.06);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  font-family: var(--tt-brief-sans);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway-row {
  display: grid;
  grid-template-columns: 7rem minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
  padding: 1rem 1.15rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway-row + .tt-brief-takeaway-row {
  border-top: 1px solid rgba(255, 255, 255, 0.11);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway-label {
  padding: 0.12rem 0 0;
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: 1.3;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.58);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway-text {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway a.tt-brief-src {
  color: rgba(255, 255, 255, 0.92);
  text-decoration-color: rgba(255, 255, 255, 0.32);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-takeaway .tt-brief-mono {
  color: rgba(255, 255, 255, 0.82);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table {
  width: 100%;
  border-collapse: collapse;
  margin: 0.875rem 0;
  font-size: 0.8125rem;
  table-layout: auto;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table th {
  background: var(--tt-brief-warm);
  border-bottom: 2px solid var(--tt-brief-ink);
  color: var(--tt-brief-ink-50);
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 1px;
  text-align: left;
  text-transform: uppercase;
  padding: 0.625rem 0.75rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table td {
  border-bottom: 1px solid var(--tt-brief-ink-10);
  color: var(--tt-brief-ink-80);
  padding: 0.625rem 0.75rem;
  vertical-align: top;
  line-height: 1.45;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-key-signals {
  margin: 0 0 0.35rem;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body .tt-brief-h3 + .tt-brief-key-signals {
  margin-top: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-key-signals + .tt-brief-h3 {
  margin-top: 2.35rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-key-signals .tt-brief-table {
  margin: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals {
  border-collapse: separate;
  border-spacing: 0 0.55rem;
  padding: 0;
  background: transparent;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals thead {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody td {
  background: color-mix(in srgb, var(--tt-brief-blue) 3.5%, #fff);
  border-top: 1px solid color-mix(in srgb, var(--tt-brief-blue) 11%, transparent);
  border-bottom: 1px solid color-mix(in srgb, var(--tt-brief-blue) 11%, transparent);
  padding: 0.72rem 0.8rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td:first-child {
  border-left: 3px solid var(--tt-brief-blue);
  border-radius: 2px 0 0 2px;
  font-weight: 500;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td:not(:first-child) {
  border-left: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td:last-child {
  border-right: 1px solid color-mix(in srgb, var(--tt-brief-blue) 11%, transparent);
  border-radius: 0 2px 2px 0;
  font-size: 0.75rem;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr:hover td {
  background: color-mix(in srgb, var(--tt-brief-blue) 6%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr:last-child td {
  border-bottom: 1px solid color-mix(in srgb, var(--tt-brief-blue) 11%, transparent);
}

@media (max-width: 720px) {
  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals,
  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody,
  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tr,
  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals td {
    display: block;
    width: 100%;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr {
    margin-bottom: 0.5rem;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td {
    border-right: 1px solid color-mix(in srgb, var(--tt-brief-blue) 11%, transparent);
    border-radius: 0;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td:first-child {
    border-radius: 2px 2px 0 0;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td:last-child {
    border-radius: 0 0 2px 2px;
    border-top: none;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td + td {
    border-top: none;
    padding-top: 0.35rem;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-table--signals tbody tr td:nth-child(2) {
    padding-top: 0.65rem;
  }
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier {
  margin: 0;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  font-size: var(--tt-brief-sans-sm);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier thead th {
  padding: 0.5rem 0.6rem;
  background: color-mix(in srgb, var(--tt-brief-ink) 3.5%, var(--tt-brief-paper));
  border-bottom: 1px solid var(--tt-brief-ink-10);
  font-size: 0.625rem;
  letter-spacing: 0.08em;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier tbody td {
  border-bottom: 1px solid var(--tt-brief-ink-10);
  padding: 0.625rem 0.6rem;
  background: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier tbody tr:last-child td {
  border-bottom: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier tbody tr:hover td {
  background: color-mix(in srgb, var(--tt-brief-ink) 2.5%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-name {
  width: 16%;
  min-width: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-person {
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
  font-size: var(--tt-brief-sans-sm);
  font-weight: 600;
  line-height: 1.35;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-name-type {
  flex-shrink: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-name-type .tt-brief-tag {
  vertical-align: middle;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-why {
  width: 34%;
  min-width: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-why .tt-brief-source-note {
  margin-top: 0;
  font-size: var(--tt-brief-sans-sm);
  line-height: 1.45;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-person strong {
  font-weight: 600;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-title {
  width: 15%;
  min-width: 0;
  font-size: var(--tt-brief-sans-sm);
  line-height: 1.45;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier th:nth-child(4),
.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier td:nth-child(4) {
  width: 12%;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-opps {
  position: relative;
  white-space: nowrap;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-tags {
  white-space: nowrap;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-tags .tt-brief-tag + .tt-brief-tag {
  margin-left: 0.2rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-icon-col,
.tw-terminal.tt-page-emberos-brief .tt-brief-table-icon {
  width: 2rem;
  min-width: 2rem;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  text-align: center;
  vertical-align: middle;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-li-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 4px;
  color: #0a66c2;
  background: color-mix(in srgb, #0a66c2 10%, #fff);
  border: 1px solid color-mix(in srgb, #0a66c2 18%, transparent);
  transition: background-color 150ms ease, color 150ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-li-icon:hover {
  background: color-mix(in srgb, #0a66c2 16%, #fff);
  color: #004182;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-li-icon svg {
  width: 0.9rem;
  height: 0.9rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-li-unverified {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 4px;
  color: #9a7b2d;
  background: #fef7e0;
  border: 1px solid color-mix(in srgb, #9a7b2d 28%, transparent);
  cursor: help;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-li-unverified svg {
  width: 0.95rem;
  height: 0.95rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-row--key td {
  background: color-mix(in srgb, var(--tt-brief-teal) 4%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-row--key:hover td {
  background: color-mix(in srgb, var(--tt-brief-teal) 7%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-row--user td {
  background: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-row--user .tt-brief-table-person {
  color: var(--tt-brief-ink-80);
  font-weight: 500;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-row--future td {
  background: color-mix(in srgb, var(--tt-brief-warm) 55%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table-row--legal td {
  background: color-mix(in srgb, var(--tt-brief-accent-soft) 35%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.85rem;
  margin: 1.1rem 0 1.65rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-col {
  background: var(--tt-brief-warm);
  padding: 0.875rem 1rem;
  border-radius: var(--tt-brief-radius);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-title {
  margin-bottom: 0.5rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: normal;
  text-transform: uppercase;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-title--yes {
  color: var(--tt-brief-teal);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-title--but {
  color: var(--tt-brief-accent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing ul,
.tw-terminal.tt-page-emberos-brief .tt-brief-timing-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-col .tt-brief-beats li,
.tw-terminal.tt-page-emberos-brief .tt-brief-timing-list li,
.tw-terminal.tt-page-emberos-brief .tt-brief-timing li {
  position: relative;
  display: block;
  padding: 0.3125rem 0 0.3125rem 0.85rem;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: var(--tt-brief-ink-80);
  border-bottom: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-col .tt-brief-beats li::before,
.tw-terminal.tt-page-emberos-brief .tt-brief-timing-list li::before,
.tw-terminal.tt-page-emberos-brief .tt-brief-timing li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.4;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-title--yes + ul li::before {
  background: var(--tt-brief-teal);
  opacity: 0.85;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-title--but + ul li::before {
  background: var(--tt-brief-accent);
  opacity: 0.85;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-net-call {
  margin: 1.35rem 0 1.65rem;
  padding: 0 1.15rem 1rem;
  background: linear-gradient(135deg, #23252f 0%, var(--tt-brief-ink) 52%, #171920 100%);
  color: #fff;
  font-size: 0.9375rem;
  line-height: 1.5;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-left: 4px solid var(--tt-brief-blue);
  border-radius: var(--tt-brief-radius);
  overflow: hidden;
  box-shadow:
    0 10px 28px rgba(28, 30, 38, 0.16),
    0 0 0 1px rgba(30, 64, 196, 0.08);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-net-call > span:first-child {
  display: block;
  margin: 0 -1.15rem 0.75rem;
  padding: 0.6rem 1.15rem;
  background: rgba(255, 255, 255, 0.06);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  font-family: var(--tt-brief-sans);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body .tt-brief-net-call {
  margin-bottom: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body .tt-brief-net-call + .tt-brief-h3 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body .tt-brief-net-call + .tt-brief-pitch,
.tw-terminal.tt-page-emberos-brief .tt-brief-opp-body .tt-brief-net-call + .tt-brief-h3 + .tt-brief-pitch,
.tw-terminal.tt-page-emberos-brief .tt-brief-profile-body .tt-brief-h3 + .tt-brief-pitch {
  margin-top: 2rem;
  margin-bottom: 0.5rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-body ul + .tt-brief-h3 {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-pitch {
  margin-top: 0;
  padding: 1.125rem 1.375rem;
  border-left: 3px solid var(--tt-brief-teal);
  background: var(--tt-brief-teal-soft);
  font-family: var(--tt-brief-serif);
  font-style: italic;
  font-size: 1.0625rem;
  line-height: 1.55;
  color: var(--tt-brief-ink-80);
  border-radius: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-aside strong {
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-section-head .tt-brief-section-dek {
  max-width: 36rem;
  margin: 0.9rem auto 0;
  font-family: var(--tt-brief-sans);
  font-size: var(--tt-brief-body-size);
  line-height: var(--tt-brief-body-leading);
  text-align: center;
  text-wrap: balance;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key {
  margin: 1.5rem 0 1.25rem;
  padding: 0;
  background: linear-gradient(135deg, #23252f 0%, var(--tt-brief-ink) 52%, #171920 100%);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-left: 4px solid var(--tt-brief-blue);
  border-radius: var(--tt-brief-radius);
  overflow: hidden;
  box-shadow:
    0 10px 28px rgba(28, 30, 38, 0.14),
    0 0 0 1px color-mix(in srgb, var(--tt-brief-blue) 12%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-head {
  padding: 0.6rem 1.15rem;
  background: rgba(255, 255, 255, 0.06);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  font-family: var(--tt-brief-sans);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-list {
  padding: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-row {
  display: grid;
  grid-template-columns: 1.5rem minmax(8.5rem, 11rem) minmax(0, 1fr);
  gap: 0.75rem;
  align-items: start;
  padding: 0.72rem 1.15rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-size: var(--tt-brief-sans-sm);
  line-height: 1.45;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-num {
  font-family: var(--tt-brief-sans);
  font-size: var(--tt-brief-sans-sm);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.02em;
  color: color-mix(in srgb, var(--tt-brief-blue) 78%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-row:last-of-type {
  border-bottom: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-name {
  font-size: var(--tt-brief-sans-sm);
  font-weight: 600;
  line-height: 1.35;
  color: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-name a.tt-brief-src {
  color: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-text {
  font-size: var(--tt-brief-sans-sm);
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.72);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-key-text a.tt-brief-src {
  color: rgba(255, 255, 255, 0.88);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-flow--key {
  padding: 0.2rem 0;
  margin: 0;
  background: rgba(255, 255, 255, 0.03);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: color-mix(in srgb, var(--tt-brief-blue) 72%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-flow--key .tt-brief-org-flow-track {
  height: 0.55rem;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.12),
    color-mix(in srgb, var(--tt-brief-blue) 55%, transparent)
  );
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-org {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 1.25rem 0 1.5rem;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-stake-details-head {
  margin: 0 0 0.85rem;
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  color: var(--tt-brief-ink);
}

/* Inset shell — stacks detail cards at full article width (Emberos pattern) */
.tw-terminal.tt-page-emberos-brief .tt-brief-inset:not(.tt-brief-inset--deeper),
.tw-terminal.tt-page-emberos-brief .tt-brief-profiles {
  margin: 1.25rem 0 1.5rem;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset--stack,
.tw-terminal.tt-page-emberos-brief .tt-brief-profiles {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-section > .tt-brief-inset:not(.tt-brief-inset--deeper):not(.tt-brief-profiles) {
  margin-top: 0;
  margin-bottom: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-section--stake > .tt-brief-inset.tt-brief-profiles {
  margin-top: 0;
  padding-top: 2.75rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset--deeper {
  margin: 2rem 0 0;
  padding: clamp(1.75rem, 4vw, 2.5rem) clamp(1rem, 3vw, 1.5rem);
  background-color: #101218;
  background-image:
    linear-gradient(to right, rgba(255, 255, 255, 0.07) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, 0.07) 1px, transparent 1px);
  background-size: 40px 40px;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset--deeper .tt-brief-deeper {
  width: 100%;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset .tt-brief-stake-details-head {
  margin: 0 0 0.65rem;
  padding: 0 0.15rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset .tt-brief-opp {
  margin-bottom: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset .tt-brief-stake-key {
  margin: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset .tt-brief-net-call {
  margin: 0 0 0.5rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-inset .tt-brief-aside {
  margin: 0.5rem 0 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-pilot-block {
  margin: 0.5rem 0 1rem;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile {
  border: 1px solid var(--tt-brief-ink-10);
  background: #fff;
  border-radius: var(--tt-brief-radius);
  overflow: hidden;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile summary {
  cursor: pointer;
  list-style: none;
  padding: 0.875rem 1rem;
  display: grid;
  grid-template-columns: 3.25rem minmax(0, 1fr) 1.75rem;
  gap: 0.875rem;
  align-items: center;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile summary::-webkit-details-marker {
  display: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-head {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile summary::after {
  content: "";
  grid-column: 3;
  grid-row: 1;
  width: 1.75rem;
  height: 1.75rem;
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: 50%;
  background-color: var(--tt-brief-warm);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath stroke='%237b7e8a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.72rem;
  transition: transform 220ms ease, background-color 150ms ease, border-color 150ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile[open] > summary::after {
  transform: rotate(180deg);
  background-color: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile summary:hover {
  background: rgba(244, 242, 238, 0.55);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile summary:hover::after {
  border-color: var(--tt-brief-ink-30);
  background-color: #fff;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  aspect-ratio: 1;
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: 4px;
  background: var(--tt-brief-warm);
  flex-shrink: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-num {
  font-family: var(--tt-brief-mono-font);
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.04em;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-title {
  display: block;
  font-family: var(--tt-brief-serif);
  font-size: 1.2rem;
  line-height: 1.15;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-meta {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.75rem;
  line-height: 1.45;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-body {
  padding: 0 1rem 1.125rem;
  border-top: 1px solid var(--tt-brief-ink-10);
  background: color-mix(in srgb, var(--tt-brief-warm) 35%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-body .tt-brief-h3 {
  margin-top: 1rem;
  font-size: 0.8125rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-body .tt-brief-h3:first-child {
  margin-top: 0.875rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-body .tt-brief-beats {
  margin-bottom: 0.35rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile[open] {
  box-shadow: 0 6px 18px rgba(28, 30, 38, 0.07);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-profile-title .tt-brief-tag {
  vertical-align: middle;
  margin-left: 0.25rem;
  transform: translateY(-0.05em);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group {
  border: 1px solid var(--tt-brief-ink-10);
  background: #fff;
  padding: 0.75rem 0.85rem 0.85rem;
  border-radius: var(--tt-brief-radius);
  overflow: visible;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier tbody tr {
  position: relative;
  z-index: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier tbody tr:has(.tt-brief-opp-tip:hover),
.tw-terminal.tt-page-emberos-brief .tt-brief-org-group .tt-brief-table--tier tbody tr:has(.tt-brief-opp-tip:focus-within) {
  z-index: 12;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  margin-left: 0.2rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip:hover,
.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip:focus-within {
  z-index: 200;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  color: var(--tt-brief-ink-50);
  cursor: help;
  line-height: 1;
  flex-shrink: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-trigger svg {
  width: 0.85rem;
  height: 0.85rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-trigger:hover,
.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip:focus-within .tt-brief-opp-tip-trigger {
  color: var(--tt-brief-blue);
  background: transparent;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-panel {
  position: absolute;
  z-index: 201;
  right: 0;
  top: calc(100% + 0.3rem);
  width: 16rem;
  max-width: 16rem;
  padding: 0.3rem 0;
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: var(--tt-brief-radius);
  background: #fff;
  box-shadow: 0 8px 24px rgba(28, 30, 38, 0.14);
  box-sizing: border-box;
  white-space: normal;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 120ms ease, visibility 120ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip:hover .tt-brief-opp-tip-panel,
.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip:focus-within .tt-brief-opp-tip-panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item {
  display: block;
  padding: 0.32rem 0.65rem;
  border-left: 2px solid transparent;
  opacity: 0.38;
  min-width: 0;
  white-space: normal;
  overflow-wrap: break-word;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item + .tt-brief-opp-tip-item {
  border-top: 1px solid var(--tt-brief-ink-10);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active {
  opacity: 1;
  background: color-mix(in srgb, var(--tt-brief-ink) 3%, #fff);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active.tt-brief-opp-tip-item--ok {
  border-left-color: var(--tt-brief-teal);
  background: var(--tt-brief-teal-soft);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active.tt-brief-opp-tip-item--blue {
  border-left-color: var(--tt-brief-blue);
  background: var(--tt-brief-blue-soft);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active.tt-brief-opp-tip-item--neutral {
  border-left-color: var(--tt-brief-ink-50);
  background: var(--tt-brief-ink-10);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-meta {
  display: block;
  margin-bottom: 0.12rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--tt-brief-ink-50);
  white-space: normal;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active .tt-brief-opp-tip-meta {
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active.tt-brief-opp-tip-item--ok .tt-brief-opp-tip-meta {
  color: var(--tt-brief-teal);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active.tt-brief-opp-tip-item--blue .tt-brief-opp-tip-meta {
  color: var(--tt-brief-blue);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-title {
  display: block;
  max-width: 100%;
  font-family: var(--tt-brief-serif);
  font-style: italic;
  font-size: 0.8125rem;
  line-height: 1.3;
  color: var(--tt-brief-ink-50);
  white-space: normal;
  overflow-wrap: break-word;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp-tip-item.is-active .tt-brief-opp-tip-title {
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-head {
  margin-bottom: 0.65rem;
  padding-bottom: 0;
  border-bottom: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-flow {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0.35rem 0;
  color: color-mix(in srgb, var(--tt-brief-blue) 62%, var(--tt-brief-ink-30));
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-flow-track {
  display: block;
  width: 1px;
  height: 0.85rem;
  background: linear-gradient(
    to bottom,
    var(--tt-brief-ink-10),
    color-mix(in srgb, var(--tt-brief-blue) 38%, transparent)
  );
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-flow-icon {
  width: 1.2rem;
  height: 1.2rem;
  margin-top: -0.05rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-dek {
  margin: 0.35rem 0 0;
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-doc .tt-brief-org-head .tt-brief-h3,
.tw-terminal.tt-page-emberos-brief .tt-brief-doc .tt-brief-h3--org {
  margin: 0;
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-h4 {
  margin: 0 0 0.75rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.115em;
  text-transform: uppercase;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  align-items: stretch;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  align-items: stretch;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node {
  display: flex;
  flex-direction: column;
  border: 1px solid color-mix(in srgb, var(--tt-brief-ink) 10%, transparent);
  border-left: 3px solid color-mix(in srgb, var(--tt-brief-ink) 20%, transparent);
  background: color-mix(in srgb, var(--tt-brief-ink) 5%, var(--tt-brief-paper));
  padding: 0.65rem 0.75rem;
  border-radius: var(--tt-brief-radius);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node--key {
  border-color: color-mix(in srgb, var(--tt-brief-teal) 42%, transparent);
  border-left: 4px solid var(--tt-brief-teal);
  background: color-mix(in srgb, var(--tt-brief-teal) 16%, #fff);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--tt-brief-teal) 28%, transparent),
    0 3px 12px color-mix(in srgb, var(--tt-brief-teal) 18%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node--key .tt-brief-node-name {
  color: color-mix(in srgb, var(--tt-brief-teal) 82%, var(--tt-brief-ink));
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-name {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-title {
  margin-top: 0.3rem;
  margin-bottom: 0.4rem;
  flex: 0 1 auto;
  font-size: 0.71875rem;
  line-height: 1.4;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-why {
  margin: 0 0 0.6rem;
  flex: 1 1 auto;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-why .tt-brief-source-note {
  display: block;
  margin: 0;
  font-size: 0.71875rem;
  line-height: 1.45;
  font-style: italic;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.28rem;
  margin-bottom: 0.55rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-note {
  display: inline-flex;
  align-items: center;
  gap: 0.32rem;
  align-self: flex-start;
  margin-top: auto;
  padding: 0.28rem 0.55rem 0.28rem 0.42rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid color-mix(in srgb, var(--tt-brief-ink) 12%, transparent);
  font-family: var(--tt-brief-sans);
  font-size: 0.5625rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
  color: var(--tt-brief-ink-50);
  white-space: nowrap;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-note-icon {
  width: 0.72rem;
  height: 0.72rem;
  flex-shrink: 0;
  opacity: 0.82;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-note-star {
  width: 0.62rem;
  height: 0.62rem;
  flex-shrink: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-note--key {
  background: #fff;
  border-color: color-mix(in srgb, var(--tt-brief-teal) 50%, transparent);
  color: var(--tt-brief-teal);
  font-weight: 700;
  box-shadow: 0 1px 3px color-mix(in srgb, var(--tt-brief-teal) 16%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-note--key .tt-brief-node-note-icon {
  opacity: 1;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-note--legal {
  background: var(--tt-brief-accent-soft);
  border-color: color-mix(in srgb, var(--tt-brief-accent) 42%, transparent);
  color: var(--tt-brief-accent);
  font-weight: 700;
  box-shadow: 0 1px 3px color-mix(in srgb, var(--tt-brief-accent) 14%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node-note--legal .tt-brief-node-note-icon {
  opacity: 1;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-source-note {
  margin: 0.85rem 0 0.25rem;
  font-size: 0.75rem;
  font-style: italic;
  line-height: 1.55;
  color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-table .tt-brief-source-note {
  display: block;
  margin-top: 0;
  font-size: var(--tt-brief-sans-sm);
  line-height: 1.45;
  font-style: normal;
  color: var(--tt-brief-ink-50);
}

/* Playbook — card polish and TOC utilities */
.tw-terminal.tt-page-emberos-brief .tt-brief-opp {
  box-shadow: 0 1px 2px rgba(28, 30, 38, 0.04);
  transition: box-shadow 200ms ease, border-color 200ms ease, transform 200ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp:hover {
  border-color: var(--tt-brief-ink-30);
  box-shadow: 0 6px 18px rgba(28, 30, 38, 0.07);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp[open] {
  box-shadow: 0 8px 22px rgba(28, 30, 38, 0.08);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp summary {
  transition: background-color 150ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-opp summary:hover {
  background: rgba(244, 242, 238, 0.55);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-timing-col {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group {
  box-shadow: 0 1px 3px rgba(28, 30, 38, 0.05);
  transition: box-shadow 180ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-org-group:hover {
  box-shadow: 0 4px 14px rgba(28, 30, 38, 0.06);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node {
  transition: box-shadow 180ms ease, transform 180ms ease, border-color 180ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node:hover {
  border-color: var(--tt-brief-ink-30);
  box-shadow: 0 4px 12px rgba(28, 30, 38, 0.06);
  transform: translateY(-1px);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-node--key:hover {
  border-color: color-mix(in srgb, var(--tt-brief-teal) 55%, transparent);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--tt-brief-teal) 30%, transparent),
    0 6px 16px color-mix(in srgb, var(--tt-brief-teal) 22%, transparent);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-aside {
  box-shadow: none;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-pitch {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-back-top {
  display: none;
  position: fixed;
  right: clamp(1rem, 3vw, 1.5rem);
  bottom: clamp(1rem, 3vw, 1.5rem);
  z-index: 90;
  padding: 0.55rem 0.75rem;
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: var(--tt-brief-radius);
  background: #fff;
  color: var(--tt-brief-ink-50);
  font-family: var(--tw-body-font);
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(28, 30, 38, 0.1);
  transition: opacity 180ms ease, transform 180ms ease;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-back-top.is-visible {
  display: block;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-back-top:hover {
  color: var(--tt-brief-ink);
  transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal.tt-page-emberos-brief {
    scroll-behavior: auto;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-opp,
  .tw-terminal.tt-page-emberos-brief .tt-brief-node,
  .tw-terminal.tt-page-emberos-brief .tt-brief-org-group {
    transition: none;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-node:hover {
    transform: none;
  }
}

.tw-terminal .tt-brief-gate {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--tw-pad);
  background-color: var(--tw-bg-light);
  background-image:
    linear-gradient(to right, rgba(10, 10, 10, 0.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(10, 10, 10, 0.05) 1px, transparent 1px);
  background-size: clamp(40px, 3vw, 52px) clamp(40px, 3vw, 52px);
}

.tw-terminal .tt-brief-gate-panel {
  width: 100%;
  max-width: 26rem;
  padding: clamp(1.5rem, 4vw, 2rem);
  background: var(--tw-bg-pure);
  border: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-brief-gate-panel .tt-mono-eyebrow {
  margin-bottom: 0.85rem;
}

.tw-terminal .tt-brief-gate-title {
  font-family: var(--tw-display);
  font-size: clamp(1.5rem, 3vw, 1.85rem);
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1.15;
  color: var(--tw-text-dark);
  margin: 0 0 0.65rem;
}

.tw-terminal .tt-brief-gate-sub {
  font-size: var(--tw-deck-size);
  line-height: var(--tw-deck-leading);
  color: var(--tw-deck-color);
  margin: 0 0 1.35rem;
}

.tw-terminal .tt-brief-gate-form {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit {
  position: relative;
  width: 100%;
  justify-content: center;
  gap: 0.4rem;
  margin-top: 0.15rem;
  overflow: hidden;
  isolation: isolate;
  transition:
    transform 220ms cubic-bezier(0.34, 1.2, 0.64, 1),
    background-color 150ms ease,
    box-shadow 220ms ease;
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    105deg,
    transparent 38%,
    rgba(255, 255, 255, 0.2) 50%,
    transparent 62%
  );
  transform: translateX(-130%);
  pointer-events: none;
}

.tw-terminal .tt-brief-gate-submit-arrow {
  display: inline-block;
  transition: transform 180ms ease, opacity 180ms ease;
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit:hover .tt-brief-gate-submit-arrow {
  transform: translateX(2px);
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit:active:not(:disabled) {
  transform: scale(0.985);
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit.is-unlocking {
  pointer-events: none;
  background-color: #1a1a1a;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit.is-unlocking::after {
  animation: tt-gate-submit-shimmer 520ms ease forwards;
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit.is-unlocking .tt-brief-gate-submit-arrow {
  animation: tt-gate-submit-arrow 520ms cubic-bezier(0.34, 1.3, 0.64, 1) forwards;
}

.tw-terminal .tt-brief-gate-form .tt-brief-gate-submit.is-shake {
  animation: tt-gate-submit-shake 380ms ease;
}

@keyframes tt-gate-submit-shimmer {
  to { transform: translateX(130%); }
}

@keyframes tt-gate-submit-arrow {
  0% { opacity: 1; transform: translateX(0); }
  100% { opacity: 0; transform: translateX(0.4rem); }
}

@keyframes tt-gate-submit-shake {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-4px); }
  40% { transform: translateX(4px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal .tt-brief-gate-form .tt-brief-gate-submit,
  .tw-terminal .tt-brief-gate-submit-arrow {
    transition: none;
  }

  .tw-terminal .tt-brief-gate-form .tt-brief-gate-submit.is-unlocking::after,
  .tw-terminal .tt-brief-gate-form .tt-brief-gate-submit.is-unlocking .tt-brief-gate-submit-arrow,
  .tw-terminal .tt-brief-gate-form .tt-brief-gate-submit.is-shake {
    animation: none;
  }
}

.tw-terminal .tt-brief-gate-panel .tt-field--light label {
  color: rgba(10, 10, 10, 0.55);
}

.tw-terminal .tt-brief-gate-panel .tt-field--light input {
  color: var(--tw-text-dark);
  -webkit-text-fill-color: var(--tw-text-dark);
  caret-color: var(--tw-text-dark);
  background: var(--tw-bg-light);
  border-color: var(--tw-grid-line);
}

.tw-terminal .tt-brief-gate-panel .tt-field--light input::placeholder {
  color: rgba(10, 10, 10, 0.34);
}

.tw-terminal .tt-brief-gate-panel .tt-field--light input:hover {
  border-color: rgba(10, 10, 10, 0.28);
}

.tw-terminal .tt-brief-gate-panel .tt-field--light input:focus {
  border-color: var(--tw-green);
  background: #fff;
}

.tw-terminal .tt-brief-gate-panel .tt-field--light input:user-invalid {
  border-color: rgba(185, 28, 28, 0.7);
}

.tw-terminal .tt-pass-wrap {
  position: relative;
}

.tw-terminal .tt-pass-wrap input {
  padding-right: 2.75rem;
}

.tw-terminal .tt-brief-gate-panel .tt-pass-wrap input {
  padding-left: 0.85rem;
}

.tw-terminal .tt-brief-gate-panel .tt-pass-wrap input::-webkit-credentials-auto-fill-button,
.tw-terminal .tt-brief-gate-panel .tt-pass-wrap input::-webkit-strong-password-auto-fill-button,
.tw-terminal .tt-brief-gate-panel .tt-pass-wrap input::-webkit-contacts-auto-fill-button {
  visibility: hidden;
  display: none !important;
  pointer-events: none;
  position: absolute;
  right: 0;
}

.tw-terminal .tt-brief-gate-panel .tt-pass-wrap input::-ms-reveal {
  display: none;
}

.tw-terminal .tt-pass-toggle {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(10, 10, 10, 0.45);
  cursor: pointer;
  transition: color 150ms ease;
  -webkit-appearance: none;
  appearance: none;
}

.tw-terminal .tt-pass-toggle:hover {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-pass-toggle:focus-visible {
  outline: 2px solid var(--tw-green);
  outline-offset: -2px;
}

.tw-terminal .tt-pass-toggle-icon {
  display: block;
  flex-shrink: 0;
}

.tw-terminal .tt-pass-toggle-icon--hide {
  display: none;
}

.tw-terminal .tt-pass-toggle.is-visible .tt-pass-toggle-icon--show {
  display: none;
}

.tw-terminal .tt-pass-toggle.is-visible .tt-pass-toggle-icon--hide {
  display: block;
}

.tw-terminal .tt-brief-gate-error {
  font-family: var(--tw-mono);
  font-size: 0.62rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #b91c1c;
  margin: 0;
}

.tw-terminal .tt-brief-gate-error[hidden] {
  display: none;
}

.tw-terminal .tt-brief-doc {
  padding-bottom: clamp(3rem, 8vw, 5rem);
}

.tw-terminal .tt-brief-inner {
  max-width: 48rem;
}

.tw-terminal .tt-brief-masthead {
  padding: var(--tw-section-pad-y-half) 0 clamp(1.5rem, 3vw, 2rem);
  border-bottom: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-brief-topbar {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--tw-text-muted);
  margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
}

.tw-terminal .tt-brief-doc .tt-brief-h1 {
  font-family: var(--tw-display);
  font-size: clamp(2rem, 4.2vw, 2.65rem);
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.1;
  color: var(--tw-text-dark);
  margin: 0;
  text-wrap: balance;
}

.tw-terminal .tt-brief-dek {
  margin: 1rem 0 1.15rem;
  font-family: var(--tw-display);
  font-style: italic;
  font-size: clamp(1rem, 1.4vw, 1.15rem);
  line-height: 1.45;
  color: var(--tw-deck-color);
}

.tw-terminal .tt-brief-scope {
  font-size: var(--tw-body-size);
  color: var(--tw-deck-color);
  line-height: 1.5;
}

.tw-terminal .tt-brief-scope b {
  color: var(--tw-text-dark);
  font-weight: 600;
}

.tw-terminal .tt-brief-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.15rem;
}

.tw-terminal .tt-brief-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.65rem;
  border: 1px solid var(--tw-grid-line);
  background: var(--tw-bg-pure);
  font-size: 0.75rem;
  color: var(--tw-deck-color);
}

.tw-terminal .tt-brief-chip b {
  color: var(--tw-text-dark);
  font-weight: 600;
}

.tw-terminal .tt-brief-toc {
  margin-top: 1.5rem;
  padding: 1rem 1.15rem;
  border: 1px solid var(--tw-grid-line);
  background: var(--tw-bg-pure);
}

.tw-terminal .tt-brief-toc-title {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tw-pillar-green);
  margin-bottom: 0.65rem;
}

.tw-terminal .tt-brief-toc ol {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.35rem 1.25rem;
  margin: 0;
  padding-left: 1.15rem;
  font-size: 0.8125rem;
  color: var(--tw-text-muted);
}

.tw-terminal .tt-brief-toc a {
  color: var(--tw-body-text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.tw-terminal .tt-brief-toc a:hover {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-brief-section {
  padding: clamp(1.75rem, 3.5vw, 2.25rem) 0;
  border-bottom: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-brief-kicker {
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tw-pillar-green);
  margin-bottom: 0.5rem;
}

.tw-terminal .tt-brief-doc .tt-brief-h2 {
  font-family: var(--tw-display);
  font-size: clamp(1.5rem, 2.8vw, 1.85rem);
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1.12;
  color: var(--tw-text-dark);
  margin: 0 0 1.15rem;
}

.tw-terminal .tt-brief-doc .tt-brief-h3 {
  font-family: var(--tw-mono);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--tw-text-dark);
  margin: 1.15rem 0 0.45rem;
}

.tw-terminal .tt-brief-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.85rem;
  margin: 1rem 0;
}

.tw-terminal .tt-brief-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.85rem;
  margin: 1rem 0;
}

.tw-terminal .tt-brief-card {
  padding: 1rem 1.1rem;
  border: 1px solid var(--tw-grid-line);
  background: var(--tw-bg-pure);
  break-inside: avoid;
}

.tw-terminal .tt-brief-card-title {
  font-family: var(--tw-mono);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tw-text-dark);
}

.tw-terminal .tt-brief-card p {
  margin: 0.5rem 0 0;
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  color: var(--tw-body-text);
}

.tw-terminal .tt-brief-aside {
  margin: 1.15rem 0;
  padding: 1rem 1.15rem;
  background: color-mix(in srgb, var(--tw-pillar-green) 6%, var(--tw-bg-light));
  border-left: 3px solid var(--tw-pillar-green);
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  color: var(--tw-body-text);
}

.tw-terminal .tt-brief-aside b {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-brief-beats {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tw-terminal .tt-brief-beats li {
  position: relative;
  padding: 0.55rem 0 0.55rem 1.35rem;
  border-bottom: 1px solid var(--tw-grid-line);
  font-size: var(--tw-body-size);
  line-height: var(--tw-body-leading);
  color: var(--tw-body-text);
}

.tw-terminal .tt-brief-beats li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1rem;
  width: 5px;
  height: 5px;
  background: var(--tw-gold);
  border-radius: 1px;
}

.tw-terminal .tt-brief-lead {
  color: var(--tw-text-dark);
  font-weight: 600;
}

.tw-terminal .tt-brief-mono {
  font-family: var(--tw-mono);
  font-weight: 500;
}

.tw-terminal .tt-brief-proof-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.65rem;
  margin: 1.15rem 0;
}

.tw-terminal .tt-brief-proof {
  padding: 0.85rem;
  background: var(--tw-bg-pure);
  border: 1px solid var(--tw-grid-line);
  font-size: 0.75rem;
  line-height: 1.45;
  color: var(--tw-body-text);
}

.tw-terminal .tt-brief-proof b {
  display: block;
  font-family: var(--tw-mono);
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--tw-text-dark);
  margin-bottom: 0.25rem;
}

.tw-terminal .tt-brief-test {
  border: 1px solid var(--tw-grid-line);
  background: var(--tw-bg-pure);
  margin: 1.15rem 0;
  overflow: hidden;
}

.tw-terminal .tt-brief-test-head {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--tw-grid-line);
}

.tw-terminal .tt-brief-test-stat {
  padding: 0.85rem 1rem;
  background: var(--tw-bg-pure);
  text-align: center;
}

.tw-terminal .tt-brief-test-stat .tt-brief-mono {
  display: block;
  font-size: 1.35rem;
  color: var(--tw-pillar-green);
  line-height: 1.1;
}

.tw-terminal .tt-brief-test-stat span:last-child {
  display: block;
  margin-top: 0.2rem;
  font-family: var(--tw-mono);
  font-size: 0.58rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tw-text-muted);
}

.tw-terminal .tt-brief-test-body {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-brief-test-cell {
  padding: 1rem 1.1rem;
  border-right: 1px solid var(--tw-grid-line);
  border-bottom: 1px solid var(--tw-grid-line);
}

.tw-terminal .tt-brief-test-cell:nth-child(even) {
  border-right: none;
}

.tw-terminal .tt-brief-test-cell p {
  margin: 0.35rem 0 0;
  font-size: var(--tw-body-size);
  color: var(--tw-body-text);
}

.tw-terminal .tt-brief-source-note {
  margin: 0.65rem 0 0;
  font-size: 0.75rem;
  font-style: italic;
  line-height: 1.5;
  color: var(--tw-text-muted);
}

.tw-terminal .tt-brief-doc a.tt-brief-src {
  color: var(--tw-pillar-green);
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: color-mix(in srgb, var(--tw-pillar-green) 35%, transparent);
}

.tw-terminal .tt-brief-doc a.tt-brief-src:hover {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-brief-stake {
  margin: 0.85rem 0;
  padding: 1rem 1.1rem;
  border: 1px solid var(--tw-grid-line);
  background: var(--tw-bg-pure);
}

.tw-terminal .tt-brief-stake .tt-brief-h3 {
  margin-top: 0;
}

.tw-terminal .tt-brief-stake > p {
  margin: 0;
  font-size: var(--tw-body-size);
  color: var(--tw-body-text);
}

.tw-terminal .tt-brief-names {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.55rem;
  margin-top: 0.85rem;
}

.tw-terminal .tt-brief-person {
  padding: 0.65rem 0.75rem;
  border-left: 3px solid var(--tw-grid-line);
  background: var(--tw-bg-light);
}

.tw-terminal .tt-brief-person--strong {
  border-left-color: var(--tw-pillar-green);
  background: color-mix(in srgb, var(--tw-pillar-green) 7%, #fff);
}

.tw-terminal .tt-brief-person--gate {
  border-left-color: var(--tw-gold);
  background: color-mix(in srgb, var(--tw-gold) 10%, #fff);
}

.tw-terminal .tt-brief-person-name {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--tw-text-dark);
}

.tw-terminal .tt-brief-person-title {
  margin-top: 0.2rem;
  font-size: 0.7rem;
  line-height: 1.4;
  color: var(--tw-text-muted);
}

.tw-terminal .tt-brief-source-list {
  margin-top: 0.85rem;
  padding: 0.85rem 1rem;
  border: 1px solid var(--tw-grid-line);
  background: var(--tw-bg-pure);
  font-size: 0.75rem;
  line-height: 1.55;
  color: var(--tw-text-muted);
}

.tw-terminal .tt-brief-source-list b {
  color: var(--tw-text-dark);
}

.tw-terminal .tt-brief-source-list a {
  margin-right: 0.35rem;
}

.tw-terminal .tt-brief-foot {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 1.25rem 0 0;
  border-top: 2px solid var(--tw-text-dark);
  font-family: var(--tw-mono);
  font-size: var(--tw-mono-label);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--tw-text-muted);
}

@media (max-width: 640px) {
  .tw-terminal.tt-page-emberos-brief .tt-brief-doc .tt-brief-h1 {
    font-size: 1.75rem;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-topbar {
    display: block;
  }
}

@media (max-width: 900px) {
  .tw-terminal.tt-page-emberos-brief .tt-nav--brief .tt-nav-inner {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    row-gap: 0.55rem;
    padding-block: 0.65rem;
  }

  .tw-terminal.tt-page-emberos-brief .tt-nav--brief .tt-wordmark {
    grid-column: 1;
    grid-row: 1;
  }

  .tw-terminal.tt-page-emberos-brief .tt-nav--brief .tt-nav-right {
    grid-column: 2;
    grid-row: 1;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: stretch;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc::-webkit-scrollbar {
    display: none;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-nav-toc ol {
    width: max-content;
    margin-inline: auto;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-masthead-toolbar {
    flex-direction: column;
    align-items: flex-start;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-topbar {
    justify-content: space-between;
    width: 100%;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-timing,
  .tw-terminal.tt-page-emberos-brief .tt-brief-takeaway-row,
  .tw-terminal.tt-page-emberos-brief .tt-brief-org-grid,
  .tw-terminal.tt-page-emberos-brief .tt-brief-org-row {
    grid-template-columns: 1fr;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-takeaway-row {
    gap: 0.35rem;
    padding: 0.8rem 1rem;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-opp summary {
    grid-template-columns: 4.5rem minmax(0, 1fr) 1.75rem;
    gap: 0.75rem;
    align-items: center;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-opp-badge {
    width: 4rem;
    aspect-ratio: 1;
    padding: 0.4rem 0.3rem;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-opp-letter {
    font-size: 1.25rem;
  }

  .tw-terminal.tt-page-emberos-brief .tt-brief-opp-label {
    font-size: 0.625rem;
    letter-spacing: 0.03em;
  }
}

@media (max-width: 720px) {
  .tw-terminal .tt-brief-grid-2,
  .tw-terminal .tt-brief-grid-3,
  .tw-terminal .tt-brief-proof-strip,
  .tw-terminal .tt-brief-test-head,
  .tw-terminal .tt-brief-test-body,
  .tw-terminal .tt-brief-names,
  .tw-terminal .tt-brief-toc ol {
    grid-template-columns: 1fr;
  }

  .tw-terminal .tt-brief-test-cell {
    border-right: none;
  }
}

@media print {
  .tw-terminal .tt-nav,
  .tw-terminal .tt-brief-gate,
  .tw-terminal .tt-brief-back-top { display: none !important; }
  .tw-terminal .tt-brief-doc { display: block !important; }
  .tw-terminal .tt-brief-section,
  .tw-terminal .tt-brief-card,
  .tw-terminal .tt-brief-aside,
  .tw-terminal .tt-brief-test,
  .tw-terminal .tt-brief-stake,
  .tw-terminal .tt-brief-opp { break-inside: avoid; }
  .tw-terminal .tt-brief-opp:not([open]) .tt-brief-opp-body { display: block; }
  .tw-terminal .tt-brief-opp:not([open]) summary { border-bottom: 1px solid var(--tw-grid-line); }
  .tw-terminal.tt-page-emberos-brief { background: #fff; }
  .tw-terminal.tt-page-emberos-brief .tt-brief-layout {
    display: block;
    max-width: none;
  }
  .tw-terminal.tt-page-emberos-brief .tt-brief-opp:not([open]) summary {
    border-bottom: 1px solid var(--tt-brief-ink-10);
  }
}

/* Brief library (multi-brief picker) */
.tw-terminal.tt-page-brief-library .tt-nav--brief-library .tt-nav-inner {
  grid-template-columns: minmax(0, 1fr) auto;
}

.tw-terminal.tt-page-brief-library .tt-nav--brief-library .tt-wordmark {
  grid-column: 1;
}

.tw-terminal.tt-page-brief-library .tt-nav--brief-library .tt-nav-right {
  grid-column: 2;
}

.tw-terminal.tt-page-brief-library {
  --tt-brief-library-card-size: 18.5rem;
  --tt-brief-library-grid-gap: 0.875rem;
  --tt-brief-library-panel: min(
    calc(4 * var(--tt-brief-library-card-size) + 3 * var(--tt-brief-library-grid-gap)),
    calc(100vw - 2.5rem)
  );
  min-height: 100vh;
  background-color: var(--tw-bg-light, #f5f4f0);
  background-image:
    linear-gradient(to right, rgba(10, 10, 10, 0.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(10, 10, 10, 0.045) 1px, transparent 1px);
  background-size: clamp(40px, 3vw, 52px) clamp(40px, 3vw, 52px);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-stage {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 64px);
  min-height: calc(100dvh - 64px);
  padding: clamp(1.5rem, 4vw, 2.5rem) clamp(1.25rem, 4vw, 2rem);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-panel {
  width: 100%;
  max-width: var(--tt-brief-library-panel);
  margin-inline: auto;
  text-align: center;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-hero {
  margin-bottom: clamp(1.75rem, 4vw, 2.25rem);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-eyebrow {
  margin: 0 0 0.75rem;
  font-family: var(--tt-brief-mono-font);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--tt-brief-ink-50);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-title {
  margin: 0 0 0.625rem;
  font-family: var(--tt-brief-serif);
  font-size: clamp(2rem, 5vw, 2.625rem);
  font-weight: 400;
  letter-spacing: -0.025em;
  line-height: 1.05;
  color: var(--tt-brief-ink);
  text-wrap: balance;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-dek {
  margin: 0 auto;
  max-width: 26rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--tt-brief-ink-50);
  text-wrap: balance;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--tt-brief-library-grid-gap);
  width: 100%;
  max-width: calc(4 * var(--tt-brief-library-card-size) + 3 * var(--tt-brief-library-grid-gap));
  margin-inline: auto;
  margin-bottom: 1.75rem;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1 1 var(--tt-brief-library-card-size);
  width: min(100%, var(--tt-brief-library-card-size));
  max-width: var(--tt-brief-library-card-size);
  min-width: min(100%, 16rem);
  gap: 0.75rem;
  padding: clamp(1.5rem, 3vw, 2rem) clamp(1.25rem, 3vw, 1.5rem);
  background: #fff;
  border: 1px solid var(--tt-brief-ink-10);
  border-radius: 2px;
  text-align: center;
  text-decoration: none;
  color: inherit;
  outline: none;
  transition:
    border-color 200ms ease,
    box-shadow 220ms ease,
    transform 220ms cubic-bezier(0.34, 1.15, 0.64, 1);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card:hover,
.tw-terminal.tt-page-brief-library .tt-brief-library-card:focus-visible {
  border-color: var(--tt-brief-ink);
  box-shadow: 0 16px 40px rgba(10, 10, 10, 0.09);
  transform: translateY(-3px);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card:focus-visible {
  outline: 2px solid var(--tt-brief-blue);
  outline-offset: 3px;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 0.25rem;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos img {
  display: block;
  width: 2rem;
  height: 2rem;
  filter: grayscale(1);
  object-fit: contain;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos .tt-brief-poppi-mark {
  border-radius: 50%;
  object-fit: cover;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos .tt-brief-rh-mark {
  width: auto;
  max-width: 3.25rem;
  height: 1.25rem;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos .tt-brief-emberos-logo {
  width: auto;
  max-width: 5.5rem;
  height: 1rem;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos .tt-brief-conduit-mark {
  width: auto;
  max-width: 5rem;
  height: 1rem;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos .tt-brief-localvr-mark {
  border-radius: 0.35rem;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-logos .tt-brief-partnership-x {
  font-family: var(--tt-brief-serif);
  font-size: 1.125rem;
  font-weight: 300;
  line-height: 1;
  color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-name {
  margin: 0;
  font-size: clamp(1.5rem, 3vw, 1.75rem);
  line-height: 1;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-name.tt-brief-partner-wordmark--poppi {
  font-family: var(--tt-brief-serif);
  font-weight: 400;
  text-transform: lowercase;
  letter-spacing: 0.02em;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-name.tt-brief-partner-wordmark--goodles {
  font-family: var(--tt-brief-sans);
  font-size: clamp(1.125rem, 2.5vw, 1.375rem);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-name:not(.tt-brief-partner-wordmark--poppi):not(.tt-brief-partner-wordmark--goodles) {
  font-family: var(--tt-brief-serif);
  font-weight: 400;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-hook {
  margin: 0;
  flex: 1 1 auto;
  max-width: 100%;
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--tt-brief-ink-50);
  text-wrap: balance;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  margin-top: 0.5rem;
  padding: 0.72rem 1.15rem;
  width: 100%;
  background: var(--tt-brief-blue);
  color: #fff;
  border-radius: 2px;
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  overflow: hidden;
  isolation: isolate;
  box-shadow:
    0 1px 0 color-mix(in srgb, #fff 18%, transparent) inset,
    0 6px 18px color-mix(in srgb, var(--tt-brief-blue) 32%, transparent);
  transition:
    background-color 180ms ease,
    box-shadow 220ms ease,
    transform 220ms cubic-bezier(0.34, 1.15, 0.64, 1);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-btn::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    105deg,
    transparent 38%,
    rgba(255, 255, 255, 0.22) 50%,
    transparent 62%
  );
  transform: translateX(-130%);
  pointer-events: none;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card-btn-arrow {
  display: inline-block;
  transition: transform 180ms ease;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card:hover .tt-brief-library-card-btn,
.tw-terminal.tt-page-brief-library .tt-brief-library-card:focus-visible .tt-brief-library-card-btn {
  background: color-mix(in srgb, var(--tt-brief-blue) 86%, #0a0a0a);
  box-shadow:
    0 1px 0 color-mix(in srgb, #fff 22%, transparent) inset,
    0 10px 24px color-mix(in srgb, var(--tt-brief-blue) 38%, transparent);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card:hover .tt-brief-library-card-btn::after,
.tw-terminal.tt-page-brief-library .tt-brief-library-card:focus-visible .tt-brief-library-card-btn::after {
  transform: translateX(130%);
  transition: transform 520ms ease;
}

.tw-terminal.tt-page-brief-library .tt-brief-library-card:hover .tt-brief-library-card-btn-arrow,
.tw-terminal.tt-page-brief-library .tt-brief-library-card:focus-visible .tt-brief-library-card-btn-arrow {
  transform: translateX(3px);
}

.tw-terminal.tt-page-brief-library .tt-brief-library-foot {
  margin: 0;
  font-family: var(--tt-brief-mono-font);
  font-size: 0.625rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tt-brief-ink-30);
}

@media (max-width: 560px) {
  .tw-terminal.tt-page-brief-library .tt-brief-library-grid {
    max-width: 20rem;
  }

  .tw-terminal.tt-page-brief-library .tt-brief-library-card {
    flex-basis: 100%;
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .tw-terminal.tt-page-brief-library .tt-brief-library-card,
  .tw-terminal.tt-page-brief-library .tt-brief-library-card-btn,
  .tw-terminal.tt-page-brief-library .tt-brief-library-card-btn-arrow {
    transition: none;
  }

  .tw-terminal.tt-page-brief-library .tt-brief-library-card:hover .tt-brief-library-card-btn::after,
  .tw-terminal.tt-page-brief-library .tt-brief-library-card:focus-visible .tt-brief-library-card-btn::after {
    transform: translateX(-130%);
  }

  .tw-terminal.tt-page-brief-library .tt-brief-library-card:hover {
    transform: none;
  }
}

.tw-terminal.tt-page-emberos-brief .tt-brief-seq {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.5rem 0.375rem;
  margin: 1.25rem 0 1.5rem;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-seq-step {
  flex: 1 1 9rem;
  min-width: 8rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-seq-label {
  font-family: var(--tt-brief-sans);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--tt-brief-ink-40);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-seq-name {
  margin-top: 0.25rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-seq-desc {
  margin-top: 0.25rem;
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  line-height: 1.4;
  color: var(--tt-brief-ink-60);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-seq-arrow {
  display: flex;
  align-items: center;
  align-self: center;
  font-size: 1.125rem;
  color: var(--tt-brief-ink-30);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-proof-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  gap: 0.625rem;
  margin: 0.875rem 0 1rem;
}

.tw-terminal.tt-page-emberos-brief .tt-brief-proof-chip {
  padding: 0 0 0.75rem;
  background: transparent;
  border: none;
  border-radius: 0;
  font-family: var(--tt-brief-sans);
  font-size: 0.8125rem;
  line-height: 1.45;
  color: var(--tt-brief-ink-80);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-proof-chip strong {
  display: block;
  margin-bottom: 0.25rem;
  font-weight: 600;
  color: var(--tt-brief-ink);
}

.tw-terminal.tt-page-emberos-brief .tt-brief-proof-source {
  display: block;
  margin-top: 0.375rem;
  font-size: 0.6875rem;
}

.tw-terminal.tt-page-emberos-brief .tt-nav-right .tt-brief-all-link {
  margin-right: 0.375rem;
}

@media (min-width: 621px) {
  .tw-terminal .tt-bn-cta-line { flex: 1 1 320px; }
}

