/* WORDPRESS GLOBAL ADDITIONAL CSS */

/* Prevent standalone hero viz styles from locking the page */
html, body { overflow: visible !important; overflow-x: hidden !important; height: auto !important; }

/* Remove the grey/green tap-highlight flash shown on tap/click, site-wide */
* { -webkit-tap-highlight-color: transparent; }

/* Global mobile body padding fix (overrides inline padding-top: 100px) */
@media (max-width: 768px) {
  body[style*="padding-top: 100px"] { padding-top: 72px !important; }
}
@media (max-width: 480px) {
  body[style*="padding-top: 100px"] { padding-top: 60px !important; }
}

/* ============================================
   DEV: Preview bar (block copy / theme toggle)
   ============================================ */
.preview-bar { display: flex; align-items: center; justify-content: space-between; max-width: none; margin: 0; padding: 4px 16px; position: relative; z-index: 50; background: transparent; border-bottom: 1px dashed rgba(209,213,219,.4); }
.preview-bar-name { font-family: 'SF Mono','Fira Code',monospace; font-size: 11px; color: #9ca3af; letter-spacing: 0.02em; }
.preview-bar-actions { display: flex; align-items: center; gap: 6px; }
.preview-bar-copy, .preview-bar-theme { display: inline-flex; align-items: center; gap: 4px; background: none; border: 1px solid #e5e7eb; border-radius: 4px; padding: 3px 8px; font-size: 10px; font-family: 'SF Mono','Fira Code',monospace; color: #9ca3af; cursor: pointer; transition: all 0.15s; }
.preview-bar-copy:hover, .preview-bar-theme:hover { background: #f3f4f6; color: #374151; border-color: #9ca3af; }
.preview-bar-copy.copied { background: #ecfdf5; color: #059669; border-color: #6ee7b7; }
.preview-bar-theme.active { background: #1e293b; color: #e2e8f0; border-color: #475569; }
.preview-bar-copy svg, .preview-bar-theme svg { width: 12px; height: 12px; }
.tacit-section-number[title] { cursor: help; border-bottom: 1px dashed #d1d5db; display: inline-block; }

/* ═══════════════════════════════════════════════════════════
   Risk Cloud — component styles (shared by preview + block)
   ═══════════════════════════════════════════════════════════ */
:root {
  --trc-bg: 246, 248, 251; --trc-bg-2: 235, 241, 248;
  --trc-surface: 255, 255, 255; --trc-surface-a: .45; --trc-surface-strong-a: .91;
  --trc-border: 12, 18, 31; --trc-border-a: .10;
  --trc-grid: 12, 18, 31; --trc-grid-a: .045;
  --trc-text: 8, 13, 24; --trc-text-a: 1;
  --trc-muted: 8, 13, 24; --trc-muted-a: .78;
  --trc-faint: 8, 13, 24; --trc-faint-a: .55;
  --trc-shadow: 15, 23, 42; --trc-shadow-a: .16;
  --trc-blue: 46, 118, 255; --trc-orange: 245, 158, 11; --trc-teal: 56, 211, 168;
  --trc-red: 239, 68, 68; --trc-purple: 147, 51, 234; --trc-white: 255, 255, 255;
  --trc-pink: 236, 72, 153;
}
.tacit-risk-cloud[data-theme="dark"] {
  --trc-bg: 3, 7, 18; --trc-bg-2: 3, 7, 18;
  --trc-surface: 6, 11, 22; --trc-surface-a: .40; --trc-surface-strong-a: .84;
  --trc-border: 226, 232, 240; --trc-border-a: .10;
  --trc-grid: 226, 232, 240; --trc-grid-a: .055;
  --trc-text: 248, 250, 252; --trc-text-a: 1;
  --trc-muted: 220, 228, 238; --trc-muted-a: .92;
  --trc-faint: 210, 218, 230; --trc-faint-a: .70;
  --trc-shadow: 0, 0, 0; --trc-shadow-a: .42;
  --trc-blue: 96, 165, 250; --trc-orange: 251, 191, 36; --trc-teal: 56, 211, 168;
  --trc-red: 248, 113, 113; --trc-purple: 192, 132, 252; --trc-white: 248, 250, 252;
  --trc-pink: 244, 114, 182;
}
@media (prefers-color-scheme: dark) {
  .tacit-risk-cloud[data-theme="auto"] {
    --trc-bg: 3, 7, 18; --trc-bg-2: 3, 7, 18;
    --trc-surface: 6, 11, 22; --trc-surface-a: .40; --trc-surface-strong-a: .84;
    --trc-border: 226, 232, 240; --trc-border-a: .10;
    --trc-grid: 226, 232, 240; --trc-grid-a: .055;
    --trc-text: 248, 250, 252; --trc-text-a: 1;
    --trc-muted: 220, 228, 238; --trc-muted-a: .92;
    --trc-faint: 210, 218, 230; --trc-faint-a: .70;
    --trc-shadow: 0, 0, 0; --trc-shadow-a: .42;
    --trc-blue: 96, 165, 250; --trc-orange: 251, 191, 36; --trc-teal: 56, 211, 168;
    --trc-red: 248, 113, 113; --trc-purple: 192, 132, 252; --trc-white: 248, 250, 252;
    --trc-pink: 244, 114, 182;
  }
}
.tacit-risk-cloud { position: relative; width: 100%; height: clamp(728px, 89svh, 977px); min-height: 728px; margin: 0 auto; overflow: hidden; border: none; border-radius: 0; color: rgba(var(--trc-text), var(--trc-text-a)); background: radial-gradient(circle at 58% 42%, rgba(var(--trc-blue), .15), transparent 34%), radial-gradient(circle at 76% 28%, rgba(var(--trc-orange), .09), transparent 28%), radial-gradient(circle at 18% 56%, rgba(var(--trc-purple), .09), transparent 30%), radial-gradient(circle at 30% 82%, rgba(var(--trc-teal), .1), transparent 30%), linear-gradient(180deg, rgba(var(--trc-bg), 1) 0%, rgba(var(--trc-bg-2), 1) 100%); box-shadow: none; isolation: isolate; }
.tacit-risk-cloud *, .tacit-risk-cloud *::before, .tacit-risk-cloud *::after { box-sizing: border-box; }
.trc-canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 4; }
.trc-grid { --gx:56%; --gy:52%; position: absolute; inset: 0; z-index: 2; background-image: linear-gradient(rgba(var(--trc-grid), calc(var(--trc-grid-a) * .5)) .63px, transparent .63px), linear-gradient(90deg, rgba(var(--trc-grid), calc(var(--trc-grid-a) * .5)) .63px, transparent .63px); background-size: 54px 54px; mask-image: radial-gradient(circle at 50% 50%, black 0 66%, transparent 88%), radial-gradient(circle 140px at var(--gx) var(--gy), rgba(0,0,0,.6) 0%, transparent 100%); pointer-events: none; transition: background-position .15s ease; }
.trc-vignette { position: absolute; inset: 0; z-index: 8; pointer-events: none; background: radial-gradient(circle at 50% 50%, transparent 0 62%, rgba(255,255,255,.2) 82%, rgba(255,255,255,.55) 100%), linear-gradient(180deg, rgba(255,255,255,.92) 0%, transparent 14%, transparent 80%, rgba(255,255,255,.88) 100%); mix-blend-mode: normal; }
.tacit-risk-cloud[data-theme="dark"] .trc-vignette { background: radial-gradient(circle at 50% 50%, transparent 0 62%, rgba(3,7,18,.2) 82%, rgba(3,7,18,.75) 100%), linear-gradient(180deg, rgba(3,7,18,1) 0%, transparent 12%, transparent 82%, rgba(3,7,18,1) 100%); mix-blend-mode: normal; }
@media (prefers-color-scheme: dark) { .tacit-risk-cloud[data-theme="auto"] .trc-vignette { background: radial-gradient(circle at 50% 50%, transparent 0 62%, rgba(3,7,18,.2) 82%, rgba(3,7,18,.75) 100%), linear-gradient(180deg, rgba(3,7,18,1) 0%, transparent 12%, transparent 82%, rgba(3,7,18,1) 100%); mix-blend-mode: normal; } }
.trc-topbar, .trc-copy, .trc-bottom { position: absolute; z-index: 16; }
.trc-topbar { bottom: 44px; left: 0; right: 0; display: flex; justify-content: center; align-items: center; pointer-events: none; }
.trc-controls { border: .25px solid rgba(var(--trc-border), var(--trc-border-a)); background: rgba(var(--trc-surface), var(--trc-surface-a)); backdrop-filter: blur(22px) saturate(1.12); -webkit-backdrop-filter: blur(22px) saturate(1.12); box-shadow: 0 4px 12px rgba(var(--trc-shadow), calc(var(--trc-shadow-a) * .3)); }
.trc-controls { position: relative; display: inline-flex; align-items: center; gap: 4px; padding: 4px 5px; border-radius: 999px; pointer-events: auto; overflow: hidden; }
.trc-controls__glider { position: absolute; top: 4px; height: 32px; border-radius: 999px; background: rgba(var(--trc-surface), var(--trc-surface-strong-a)); border: .25px solid rgba(var(--trc-border), var(--trc-border-a)); box-shadow: 0 1px 3px rgba(var(--trc-shadow), calc(var(--trc-shadow-a) * .5)), 0 1px 1px rgba(var(--trc-shadow), calc(var(--trc-shadow-a) * .25)); transition: left .3s cubic-bezier(.4,0,.2,1), width .26s cubic-bezier(.4,0,.2,1), opacity .2s ease; z-index: 0; }
.tacit-risk-cloud::before { content: ''; position: absolute; inset: 0; z-index: 10; pointer-events: none; background: linear-gradient(90deg, rgba(var(--trc-bg), .9) 0%, transparent 7%, transparent 93%, rgba(var(--trc-bg), .9) 100%); }
.trc-chip { position: relative; z-index: 1; appearance: none; border: 0; border-radius: 999px; height: 32px; width: 82px; min-width: 82px; padding: 0; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; background: transparent; color: rgba(var(--trc-text), .95); font: 500 12.5px/1 Inter, Avenir, -apple-system, system-ui, sans-serif; letter-spacing: -.01em; cursor: pointer; transition: color .3s ease, transform .2s ease; -webkit-user-select: none; user-select: none; }
.trc-chip:hover:not(.is-active) { color: rgba(var(--trc-text), 1); transform: scale(1.02); }
.trc-chip.is-active { color: rgba(var(--trc-text), var(--trc-text-a)); font-weight: 600; }
.trc-dot { position: relative; z-index: 1; width: 32px; height: 32px; min-width: 32px; min-height: 32px; aspect-ratio: 1; border-radius: 50%; background: transparent; flex-shrink: 0; flex-grow: 0; margin: 0 0; cursor: pointer; transition: background .35s ease, box-shadow .35s ease, transform .25s ease, color .35s ease; -webkit-user-select: none; user-select: none; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; line-height: 1; color: rgba(var(--trc-text), .9); border: none; padding: 0; box-sizing: border-box; }
.trc-dot:first-child { margin-left: 0; }
.trc-dot:last-child { margin-right: 0; }
.trc-dot:not(.trc-dot--gap):hover { background: transparent; color: rgba(var(--trc-text), 1); transform: scale(1.02); }
.trc-dot:not(.trc-dot--gap).is-active { background: transparent; color: rgba(var(--trc-text), .95); transform: scale(1.15); }
.trc-dot--gap { color: transparent; font-size: 13px; background-image: linear-gradient(160deg, rgba(var(--trc-red), .95), rgba(var(--trc-orange), .85)); -webkit-background-clip: text; background-clip: text; filter: drop-shadow(0 1px 3px rgba(var(--trc-red), .35)) drop-shadow(0 0 6px rgba(var(--trc-red), .15)); }
.trc-dot--gap:hover { transform: scale(1.02); filter: drop-shadow(0 1px 4px rgba(var(--trc-red), .5)) drop-shadow(0 0 10px rgba(var(--trc-red), .25)); }
.trc-dot--gap.is-active { background-image: none; color: rgba(var(--trc-red), 1); -webkit-background-clip: unset; background-clip: unset; transform: scale(1.15); filter: drop-shadow(0 2px 8px rgba(var(--trc-red), .7)) drop-shadow(0 0 18px rgba(var(--trc-red), .5)) drop-shadow(0 0 32px rgba(var(--trc-red), .2)); animation: gapPulse 1.8s ease-in-out infinite; }
@keyframes gapPulse { 0%,100% { filter: drop-shadow(0 2px 8px rgba(var(--trc-red), .7)) drop-shadow(0 0 18px rgba(var(--trc-red), .5)) drop-shadow(0 0 32px rgba(var(--trc-red), .2)); } 50% { filter: drop-shadow(0 2px 10px rgba(var(--trc-red), .85)) drop-shadow(0 0 24px rgba(var(--trc-red), .6)) drop-shadow(0 0 40px rgba(var(--trc-red), .3)); } }
.trc-dot--gap.is-processing { color: rgba(var(--trc-teal), .8); background-image: none; -webkit-background-clip: unset; background-clip: unset; filter: drop-shadow(0 1px 4px rgba(var(--trc-teal), .4)) drop-shadow(0 0 8px rgba(var(--trc-teal), .2)); }
.trc-dot--gap.is-processing .trc-gap-spinner { display: block; animation: gapSpin .9s linear infinite; }
.trc-dot--gap.is-processing .trc-gap-graph { display: none; }
.trc-dot--gap.is-processing .trc-gap-check { display: none; }
.trc-dot--gap.is-mapping { color: rgba(var(--trc-teal), .9); background-image: none; -webkit-background-clip: unset; background-clip: unset; filter: drop-shadow(0 1px 5px rgba(var(--trc-teal), .5)) drop-shadow(0 0 12px rgba(var(--trc-teal), .25)); }
.trc-dot--gap.is-mapping .trc-gap-spinner { display: none; }
.trc-dot--gap.is-mapping .trc-gap-graph { display: block; animation: gapFadeIn .4s ease-out; }
.trc-dot--gap.is-mapping .trc-gap-check { display: none; }
.trc-dot--gap.is-solved { color: rgba(var(--trc-teal), .95); background-image: none; -webkit-background-clip: unset; background-clip: unset; filter: drop-shadow(0 1px 3px rgba(var(--trc-teal), .35)) drop-shadow(0 0 6px rgba(var(--trc-teal), .15)); transition: color .5s ease, filter .5s ease; }
.trc-dot--gap.is-solved .trc-gap-spinner { display: none; }
.trc-dot--gap.is-solved .trc-gap-graph { display: none; }
.trc-dot--gap.is-solved .trc-gap-check { display: block; animation: gapFadeIn .4s ease-out; }
.trc-dot--gap.is-solved:hover { filter: drop-shadow(0 1px 4px rgba(var(--trc-teal), .5)) drop-shadow(0 0 10px rgba(var(--trc-teal), .25)); }
.trc-dot--gap.is-solved.is-active { filter: drop-shadow(0 2px 5px rgba(var(--trc-teal), .55)) drop-shadow(0 0 12px rgba(var(--trc-teal), .3)); }
.trc-gap-spinner, .trc-gap-graph, .trc-gap-check { display: none; }
@keyframes gapSpin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes gapFadeIn { 0% { opacity: 0; transform: scale(.6); } 100% { opacity: 1; transform: scale(1); } }
.trc-dot--end { color: rgba(var(--trc-text), .9); background: none !important; box-shadow: none !important; }
.trc-dot--end:hover { color: rgba(var(--trc-text), 1); }
.trc-dot--end.is-active { color: rgba(var(--trc-text), 1); }
.trc-copy { top: 12px; left: 50%; transform: translateX(-50%); text-align: center; width: min(640px, calc(100% - 80px)); pointer-events: none; }
.trc-copy { transition: opacity .35s cubic-bezier(.22,.8,.2,1), transform .35s cubic-bezier(.22,.8,.2,1), filter .35s cubic-bezier(.22,.8,.2,1), top .5s cubic-bezier(.22,.8,.2,1), width .5s cubic-bezier(.22,.8,.2,1); }
.tacit-risk-cloud.is-copy-transition .trc-copy { opacity: .5; filter: blur(2px); }
.trc-eyebrow { margin-bottom: 20px; color: rgba(var(--trc-text), .68); font: 600 10px/1 Inter, Avenir, -apple-system, system-ui, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.trc-ey-logo { display: inline-block; height: 10px; max-height: 10px; width: auto; vertical-align: middle; }
.trc-ey-txt { display: none; }
.trc-ey-logo--dark { display: none; }
.trc-ey-logo--light { display: inline-block; }
.tacit-risk-cloud[data-theme="dark"] .trc-ey-logo--dark { display: inline-block; }
.tacit-risk-cloud[data-theme="dark"] .trc-ey-logo--light { display: none; }
@media (prefers-color-scheme: dark) { .tacit-risk-cloud[data-theme="auto"] .trc-ey-logo--dark { display: inline-block; } .tacit-risk-cloud[data-theme="auto"] .trc-ey-logo--light { display: none; } }
.trc-title { color: rgba(var(--trc-text), var(--trc-text-a)); font: 700 clamp(24px, 3vw, 34px)/1.12 Inter, Avenir, -apple-system, system-ui, sans-serif; letter-spacing: -.025em; text-wrap: balance; }
.trc-subtitle { max-width: 480px; margin: 14px auto 0; color: rgba(var(--trc-muted), var(--trc-muted-a)); font: 470 clamp(13px, 1.2vw, 15px)/1.48 Inter, Avenir, -apple-system, system-ui, sans-serif; letter-spacing: -.012em; }
.trc-bottom { right: 20px; bottom: 44px; display: flex; align-items: center; justify-content: flex-end; }
.trc-cta { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 38px; width: 180px; padding: 0; border-radius: 10px; background: transparent; border: none; color: rgba(var(--trc-text), var(--trc-text-a)); font: 600 13px/1 Inter, Avenir, -apple-system, system-ui, sans-serif; text-decoration: none; pointer-events: auto; cursor: pointer; box-shadow: none; transition: color .18s ease, transform .2s ease; }
.trc-cta:hover { color: rgba(var(--trc-text), 1); }
.trc-cta__label { display: inline-block; transition: transform .18s ease; }
.trc-cta:active::before { transform: scale(.95); }
.trc-cta::before { content: ''; display: inline-block; width: 12px; height: 12px; mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E") no-repeat center / contain; -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E") no-repeat center / contain; background: rgb(var(--trc-teal)); flex-shrink: 0; transition: transform .18s ease; }
.trc-cta:hover::before { transform: scale(1.1); }
.trc-cta:hover .trc-cta__label { transform: scale(1.01); }
.trc-footnote { position: absolute; z-index: 16; bottom: 10px; left: 0; right: 0; text-align: center; color: rgba(var(--trc-muted), .48); font: 400 8.5px/1 Inter, Avenir, -apple-system, system-ui, sans-serif; letter-spacing: .01em; pointer-events: none; }
@media (max-width: 980px) { .tacit-risk-cloud { height: 832px; } .trc-topbar { bottom: 38px; } .trc-bottom { display: none; } .trc-controls { max-width: 100%; overflow-x: auto; border-radius: 12px; } .trc-copy { top: 8px; left: 50%; transform: translateX(-50%); width: min(580px, calc(100% - 44px)); } }
@media (max-width: 680px) { .tacit-risk-cloud { height: 618px; min-height: 580px; border-radius: 0; } .trc-chip { width: auto; min-width: 0; padding: 0 9px; font-size: 11px; height: 30px; } .trc-controls { gap: 2px; padding: 4px; border-radius: 999px; overflow: hidden; max-width: 100%; } .trc-topbar { bottom: 22px; } .trc-copy { top: 4px; left: 50%; transform: translateX(-50%); width: calc(100% - 32px); } .trc-title { font-size: 20px; } .trc-subtitle { max-width: 92%; font-size: 11.5px; } .trc-bottom { display: none; } .trc-footnote { bottom: 4px; font-size: 7px; } }

@media (prefers-reduced-motion: reduce) { .tacit-risk-cloud *, .tacit-risk-cloud *::before, .tacit-risk-cloud *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; } }

/* ============================================
   GLOBAL OVERRIDES (Exponent / Tatsu)
   Hide old WP theme chrome so new blocks render cleanly.
   Leave #tatsu-header-wrap alone — it has its own
   padding / sticky-padding set in Tatsu's editor.
   ============================================ */
.exponent-header-logo { max-width: 100px; }
#footer, .footer-wrapper, .tatsu-footer, footer.site-footer { display: none !important; }
.tatsu-hide-desktop { display: none !important; }
.tatsu-BJDshE8jp { display: none !important; }
.tatsu-button-wrap { border-radius: 999px; }

/* Strip Tatsu wrapper spacing ONLY inside the content area */
#content-wrap .tatsu-section,
#content-wrap .tatsu-row,
#content-wrap .tatsu-column,
#content-wrap .tatsu-column > .tatsu-column-inner,
#content-wrap .tatsu-module { padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; }
#content-wrap .tatsu-section > .tatsu-section-pad { padding: 0 !important; }
#content-wrap .tatsu-row > .tatsu-row-inner { margin: 0 !important; padding: 0 !important; max-width: 100% !important; width: 100% !important; }
#content-wrap .tatsu-column { width: 100% !important; max-width: 100% !important; }
#content-wrap .tatsu-section .tatsu-section-inner { max-width: 100% !important; width: 100% !important; padding: 0 !important; }
#content-wrap .tatsu-module,
#content-wrap .tatsu-code { width: 100% !important; max-width: 100% !important; }
#content-wrap { padding: 0 !important; }
#content-wrap .tatsu-section-offset { padding: 0 !important; }
/* Kill wpautop() phantom <p>/<br> inside ALL custom containers + card internals.
   Uses :not([class]) to spare legitimate <p> elements that have classes. */
.tatsu-code > br,
.tatsu-code > p:empty,
.cs-index > p:not([class]),
.cs-index > br,
.cs-index-grid p,
.cs-index-grid br,
.tacit-cs-card p,
.tacit-cs-card br,
.tacit-cs-overlay p,
.tacit-cs-overlay br,
.tacit-cs-top p,
.tacit-cs-top br,
.tacit-cs-bottom p,
.tacit-cs-bottom br,
.tacit-cs-row p,
.tacit-cs-row br,
.tv2-del-grid > p:not([class]),
.tv2-del-grid > br,
.tv2-stats > p:not([class]),
.tv2-stats > br,
.tv2-solutions > p:not([class]),
.tv2-solutions > br,
.tv2-nav-grid > p:not([class]),
.tv2-nav-grid > br,
.tv2-roles > p:not([class]),
.tv2-roles > br,
.tv2-maturity > p:not([class]),
.tv2-maturity > br,
.tv2-maturity-level > br,
.tv2-maturity-caps > br,
.tv2-compliance-grid > p:not([class]),
.tv2-compliance-grid > br,
.tv2-footer-links > p:not([class]),
.tv2-footer-links > br,
.tv2-ftabs-panel > p:not([class]),
.tv2-ftabs-panel > br,
.tv2-process > p:not([class]),
.tv2-process > br,
.tv2-footer-top > p:not([class]),
.tv2-footer-top > br,
.blog-index > p:not([class]),
.blog-index > br,
.blog-index-grid > p,
.blog-index-grid > br,
.blog-index-filters > p,
.blog-index-filters > br,
.blog-card > br,
.blog-card-body > br {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
}
/* Hide ghost / empty cards WordPress injects into grids */
.cs-index-grid > :not(.tacit-cs-card):not(.cs-index-coming-soon):not(.tacit-cs-request-card),
.tacit-industry-cs > :not(.tacit-section-eyebrow):not(.tacit-section-title):not(.tacit-cs-card):not(.tacit-cs-request-card):not(h2),
.blog-index-grid > :not(.blog-card):not(a) {
  display: none !important;
}
.tacit-cs-card:not(:has(.tacit-cs-overlay)) {
  display: none !important;
}
.blog-card:not(:has(.blog-card-title)),
a.blog-card:not(:has(.blog-card-title)) {
  display: none !important;
}

/* ============================================
   ELEMENT RESETS — Isolate custom components from
   Exponent theme base styles (h1, h2, p, a, etc.)
   ============================================ */
.tacit-nav,
.tacitx-hero-wrapper-a1,
.tacit-trust-banner,
.tacit-costhook,
.tacit-gap,
.tacit-block,
.tacit-casestudies,
.tv2-block,
.tv2-inline-proof,
.tv2-roles,
.tv2-cta,
.tv2-footer,
.tacit-faq,
.tacit-security-section,
.tacit-pipeline,
.tacit-about-founder {
  font-family: Inter, Avenir, -apple-system, system-ui, sans-serif !important;
  line-height: 1.5;
  box-sizing: border-box;
  color: #020617 !important;
}
[data-theme="dark"] .tacit-nav,
[data-theme="dark"] .tacitx-hero-wrapper-a1,
[data-theme="dark"] .tacit-trust-banner,
[data-theme="dark"] .tacit-costhook,
[data-theme="dark"] .tacit-gap,
[data-theme="dark"] .tacit-block,
[data-theme="dark"] .tacit-casestudies,
[data-theme="dark"] .tv2-block,
[data-theme="dark"] .tv2-inline-proof,
[data-theme="dark"] .tv2-roles,
[data-theme="dark"] .tv2-cta,
[data-theme="dark"] .tv2-footer,
[data-theme="dark"] .tacit-faq,
[data-theme="dark"] .tacit-security-section,
[data-theme="dark"] .tacit-pipeline,
[data-theme="dark"] .tacit-about-founder {
  color: #e8ecf1 !important;
}
@media (prefers-color-scheme: dark) {
  .tacit-nav, .tacitx-hero-wrapper-a1, .tacit-trust-banner, .tacit-costhook,
  .tacit-gap, .tacit-block, .tacit-casestudies, .tv2-block, .tv2-inline-proof,
  .tv2-roles, .tv2-cta, .tv2-footer, .tacit-faq, .tacit-security-section, .tacit-pipeline,
  .tacit-about-founder {
    color: #e8ecf1 !important;
  }
}

/* THEME ISOLATION — :where() gives zero element specificity so component
   classes (same specificity 0,1,0) win by source order.  !important on
   color + font-family beats Exponent's #page h1 / .entry-content h2 etc.
   font-size / font-weight / line-height left WITHOUT !important so that
   component classes can override them without needing !important. */
.tacit-nav :where(h1,h2,h3,h4,h5,h6,p,a,span,li,div,button),
.tacitx-hero-wrapper-a1 :where(h1,h2,h3,h4,p,a,span,div),
.tacit-trust-banner :where(h1,h2,h3,p,a,span,div),
.tacit-costhook :where(h1,h2,h3,p,a,span,div),
.tacit-gap :where(h1,h2,h3,p,a,span,div),
.tacit-block :where(h1,h2,h3,h4,p,a,span,li,button,div),
.tacit-casestudies :where(h1,h2,h3,p,a,span,div),
.tv2-block :where(h1,h2,h3,h4,p,a,span,li,button,div),
.tv2-inline-proof :where(h1,h2,h3,p,a,span,div,blockquote,cite),
.tv2-roles :where(h1,h2,h3,p,a,span,li,button,div),
.tv2-cta :where(h1,h2,h3,p,a,span,div,blockquote,cite),
.tv2-footer :where(h1,h2,h3,h4,p,a,span,li,div),
.tacit-faq :where(h1,h2,h3,p,a,span,li,button,div),
.tacit-pipeline :where(h1,h2,h3,p,a,span,div),
.tacit-security-section :where(h1,h2,h3,p,a,span,div),
.tacit-about-founder :where(h1,h2,h3,h4,p,a,span,li,div) {
  font-family: inherit !important;
  color: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
  box-sizing: border-box !important;
}
a[class*="tacitx-btn-primary"],
a[class*="tacit-timeline-btn"],
a[class*="tacit-nav-cta-signup"],
a[class*="tacit-nav-mobile-cta"],
a[class*="tacit-blog-cta-btn"],
a[class*="tv2-btn--primary"],
button[class*="tacitx-btn-primary"],
button[class*="tacit-timeline-btn"],
button[class*="tv2-btn--primary"],
[class*="tacitx-btn-primary"],
[class*="tacit-timeline-btn"],
[class*="tacit-nav-cta-signup"],
[class*="tacit-nav-mobile-cta"],
[class*="tacit-blog-cta-btn"],
[class*="tv2-btn--primary"] { color: #fff !important; }

/* WPAUTOP PROTECTION — WordPress injects <br> and empty <p> into
   Custom HTML blocks. Kill them inside every custom component. */
.tacit-nav p:empty, .tacit-nav > br,
.tacitx-hero-wrapper-a1 p:empty, .tacitx-hero-wrapper-a1 br,
.tacit-trust-banner p:empty, .tacit-trust-banner br,
.tacit-costhook p:empty, .tacit-costhook br,
.tacit-risk-cloud p:empty, .tacit-risk-cloud > br,
.tacit-gap p:empty, .tacit-gap br,
.tacit-gap-card p:empty, .tacit-gap-card br,
.tacit-block p:empty, .tacit-block > br,
.tv2-demo-card-who p:empty, .tv2-demo-card-who br,
.tv2-demo-card-footer p:empty, .tv2-demo-card-footer br,
.tv2-demo-card p:empty, .tv2-demo-card > br,
.tacit-industry-metric p:empty, .tacit-industry-metric br,
.tacit-industry-metrics-strip p:empty, .tacit-industry-metrics-strip > br,
.tacit-casestudies p:empty, .tacit-casestudies > br,
.tv2-block p:empty, .tv2-block > br,
.tv2-inline-proof p:empty, .tv2-inline-proof > br,
.tv2-roles p:empty, .tv2-roles br,
.tv2-roles-sidebar p:empty, .tv2-roles-sidebar br,
.tv2-cta p:empty, .tv2-cta > br,
.tv2-footer p:empty, .tv2-footer > br,
.tacit-faq p:empty, .tacit-faq br,
.tacit-faq-list p:empty, .tacit-faq-list br,
.tacit-pipeline p:empty, .tacit-pipeline > br,
.tacit-security-section p:empty, .tacit-security-section > br,
.tacit-about-founder p:empty, .tacit-about-founder > br,
.tacit-results p:empty, .tacit-results > br,
.tacit-results-item br, .tacit-results-strip > p,
.tacit-ftabs p:empty, .tacit-ftabs br,
.tacit-ftabs-sidebar p:empty, .tacit-ftabs-sidebar br,
.tacit-ftabs-btn p:empty, .tacit-ftabs-btn br,
.cmp-hero p:empty, .cmp-hero > br,
.cmp-table-section p:empty, .cmp-table-section > br,
.tacit-compare-table p:empty, .tacit-compare-table br,
.tacit-agentic-grid p:empty, .tacit-agentic-grid br,
.cmp-bottom p:empty, .cmp-bottom > br {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  height: 0 !important;
}

/* ============================================
   SHARED VARIABLES
   ============================================ */
:root {
  --tacit-accent: #38d3a8;
  --tacit-accent-deep: #0f766e;
  --tacit-accent-soft: rgba(56, 211, 168, 0.12);
  --tacit-fg: #020617;
  --tacit-fg-muted: #6b7280;
  --tacit-fg-light: #9ca3af;
  --tacit-border: rgba(11, 11, 13, 0.06);
  --tacit-bg: #ffffff;
  --tacit-bg-subtle: #fcfcfd;
  --tacit-bg-deep: #f7f8fa;
  --tacit-bg-alt: #fafafb;
  /* Border radius scale */
  --radius-xs:   2px;
  --radius-sm:   4px;
  --radius:      6px;
  --radius-md:   8px;
  --radius-lg:   10px;
  --radius-xl:   12px;
  --radius-2xl:  12px;
  --radius-3xl:  12px;
  --radius-4xl:  12px;
  --radius-5xl:  32px;
  --radius-pill: 999px;
  /* Aliases (legacy compat) */
  --tacit-radius: var(--radius-xl);
  --tacit-radius-lg: var(--radius-xl);
  --tacit-radius-pill: var(--radius-pill);

  /* Button heights */
  --btn-sm:  32px;
  --btn-md:  36px;
  --btn-lg:  40px;
  --btn-xl:  44px;

  /* Spacing scale */
  --sp-0:  0px;
  --sp-1:  2px;
  --sp-2:  4px;
  --sp-3:  6px;
  --sp-4:  8px;
  --sp-5:  10px;
  --sp-6:  12px;
  --sp-7:  14px;
  --sp-8:  16px;
  --sp-9:  20px;
  --sp-10: 24px;
  --sp-11: 28px;
  --sp-12: 32px;
  --sp-13: 40px;
  --sp-14: 48px;
  --sp-15: 56px;
  --sp-16: 64px;
  --sp-17: 80px;
  --tacit-font: "Inter", "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  --tacit-font-display: var(--tacit-font);
  --tacit-max-width: 90%;
  --tacit-max-width-v2: 90%;
  --tacit-shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06);
  --tacit-shadow-md: 0 10px 26px rgba(15, 23, 42, 0.08);
  --tacit-shadow-lg: 0 18px 40px rgba(15, 23, 42, 0.12);
  --tacit-card-bg: #ffffff;
  --tacit-card-border: rgba(11,11,13,.05);
  --tacit-pill-bg: rgba(56,211,168,.08);
  --tacit-pill-color: #38d3a8;
  --tacit-error: #dc2626;
  --tacit-error-light: #ef4444;
  --tacit-dark-bg: #0b1121;
  --tacit-dark-card: rgba(255,255,255,.06);
  --tacit-dark-border: rgba(255,255,255,.08);
  --tacit-section-gap: 120px;
  --tacit-section-gap-sm: 80px;

  /* ── Type scale ── */
  /* Responsive headings */
  --fs-display:    clamp(28px, 4vw, 48px);
  --fs-display-sm: clamp(26px, 3.5vw, 40px);
  --fs-h1:         clamp(24px, 3vw, 34px);
  --fs-h2:         clamp(22px, 2.8vw, 30px);
  --fs-h3:         clamp(20px, 2.5vw, 26px);
  --fs-h4:         clamp(18px, 2vw, 22px);
  /* Static sizes */
  --fs-stat:       36px;
  --fs-stat-sm:    32px;
  --fs-title-lg:   26px;
  --fs-title:      24px;
  --fs-title-sm:   22px;
  --fs-component:  20px;
  --fs-body-lg:    18px;
  --fs-body:       16px;
  --fs-body-sm:    15px;
  --fs-caption:    14px;
  --fs-small:      13px;
  --fs-xs:         12px;
  --fs-xxs:        11px;
  --fs-micro:      10px;
  --fs-pip:        9px;
}

/* ============================================
   DARK MODE — ALL OVERRIDES UNIFIED
   [data-theme="dark"] on any block or wrapper
   Auto-detect via prefers-color-scheme
   ============================================ */
@media (prefers-color-scheme: dark) {
  :root {
    --tacit-bg: #030712;
    --tacit-bg-subtle: #030712;
    --tacit-bg-deep: #030712;
    --tacit-bg-alt: #0a0f1a;
    --tacit-fg: #e8ecf1;
    --tacit-fg-muted: #a8b1bf;
    --tacit-fg-light: #8291a3;
    --tacit-border: rgba(255,255,255,.08);
    --tacit-shadow-sm: 0 1px 3px rgba(0,0,0,.3);
    --tacit-shadow-md: 0 10px 26px rgba(0,0,0,.4);
    --tacit-shadow-lg: 0 18px 40px rgba(0,0,0,.5);
    --tacit-card-bg: rgba(255,255,255,.04);
    --tacit-card-border: rgba(255,255,255,.06);
    --tacit-accent-soft: rgba(56,211,168,.15);
    --tacit-pill-bg: rgba(56,211,168,.12);
    --tacit-pill-color: #5ee8c0;
    --tacit-error: #f87171;
    --tacit-error-light: #fca5a5;
    color-scheme: dark;
  }
  body { background-color: #030712; color: #e8ecf1; }
}
[data-theme="dark"] {
  --tacit-bg: #030712;
  --tacit-bg-subtle: #030712;
  --tacit-bg-deep: #030712;
  --tacit-fg: #e8ecf1;
  --tacit-fg-muted: #a8b1bf;
  --tacit-fg-light: #8291a3;
  --tacit-border: rgba(255,255,255,.08);
  --tacit-shadow-sm: 0 1px 3px rgba(0,0,0,.3);
  --tacit-shadow-md: 0 10px 26px rgba(0,0,0,.4);
  --tacit-shadow-lg: 0 18px 40px rgba(0,0,0,.5);
  --tacit-card-bg: rgba(255,255,255,.04);
  --tacit-card-border: rgba(255,255,255,.06);
  --tacit-accent-soft: rgba(56,211,168,.15);
  --tacit-pill-bg: rgba(56,211,168,.12);
  --tacit-pill-color: #5ee8c0;
  --tacit-error: #f87171;
  --tacit-error-light: #fca5a5;
  color: var(--tacit-fg);
  background: var(--tacit-bg);
}

/* -- Block Base -------------------------------- */
[data-theme="dark"] .tacit-block { background: var(--tacit-bg-deep); }
[data-theme="dark"] .tv2-block { background: var(--tacit-bg-deep); }
[data-theme="dark"] .tacit-section-title,
[data-theme="dark"] .tacit-feature-title { color: #e8ecf1 !important; }
[data-theme="dark"] .tacit-section-desc,
[data-theme="dark"] .tacit-feature-desc { color: #c4cdd8 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .tacit-section-eyebrow { color: #dce4ec !important; }
[data-theme="dark"] .tacit-section-number { color: #8291a3 !important; }
[data-theme="dark"] .tacit-feature-eyebrow { color: #38d3a8 !important; }
[data-theme="dark"] .tacit-feature-number { background: none; color: var(--tacit-accent); }
[data-theme="dark"] .tacit-feature-pill { background: transparent !important; color: rgba(255,255,255,.65) !important; border-color: rgba(255,255,255,.18) !important; }
[data-theme="dark"] .tacit-feature-pill:hover { border-color: rgba(255,255,255,.35) !important; color: rgba(255,255,255,.9) !important; }
[data-theme="dark"] .tacit-feature-visual { background: rgba(255,255,255,.03) !important; border-color: rgba(255,255,255,.06) !important; scrollbar-color: rgba(255,255,255,.15) transparent; }
[data-theme="dark"] .tacit-feature-visual:has(> img) { background: transparent !important; border-color: transparent !important; }

/* -- Logo Switching ---------------------------- */
.tacit-logo-dark { display: none; }
[data-theme="dark"] .tacit-logo-light { display: none; }
[data-theme="dark"] .tacit-logo-dark { display: inline; }

/* -- Navigation -------------------------------- */
[data-theme="dark"] .tacit-nav { background: var(--tacit-bg) !important; }
[data-theme="dark"] .tacit-nav.scrolled { background: transparent !important; }
[data-theme="dark"] .tacit-nav.scrolled .tacit-nav-container { background: rgba(5,8,18,.95) !important; border-color: rgba(255,255,255,.06) !important; border-radius: 999px !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border: 1px solid rgba(255,255,255,.06) !important; }
[data-theme="dark"] .tacit-nav-btn { color: rgba(255,255,255,.9) !important; }
[data-theme="dark"] .tacit-nav-btn:hover { color: #fff !important; opacity: 1; }
/* NAV PANEL — dark mode overrides with !important to beat Exponent theme's ID-scoped selectors */
[data-theme="dark"] .tacit-nav-panel { background: #060a16 !important; border: 1px solid rgba(255,255,255,.08) !important; box-shadow: 0 20px 60px -12px rgba(0,0,0,.8), 0 4px 16px -2px rgba(0,0,0,.5) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
[data-theme="dark"] .tacit-nav-panel * { font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .tacit-nav-section-title { color: rgba(56,211,168,.7) !important; font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.08em !important; }
[data-theme="dark"] .tacit-nav-link:hover { background: rgba(255,255,255,.06) !important; }
[data-theme="dark"] .tacit-nav-link-title { color: #f1f5f9 !important; font-size: 13px !important; font-weight: 500 !important; }
[data-theme="dark"] .tacit-nav-link:hover .tacit-nav-link-title { color: #fff !important; }
[data-theme="dark"] .tacit-nav-link-desc { color: rgba(255,255,255,.6) !important; font-size: 11px !important; font-weight: 400 !important; }
[data-theme="dark"] .tacit-nav-link-arrow { color: var(--tacit-accent, #38d3a8) !important; }
[data-theme="dark"] .tacit-nav-icon-img-sm { filter: brightness(0) invert(1) !important; opacity: 1 !important; }
[data-theme="dark"] .tacit-nav-link:hover .tacit-nav-icon-img-sm { opacity: 1 !important; filter: brightness(0) invert(80%) sepia(45%) saturate(700%) hue-rotate(110deg) brightness(1.05) !important; }
[data-theme="dark"] .tacit-nav-icon-img-sm.tacit-icon-no-invert,
[data-theme="dark"] .tacit-nav-link:hover .tacit-nav-icon-img-sm.tacit-icon-no-invert,
[data-theme="dark"] .tacit-nav-link:focus .tacit-nav-icon-img-sm.tacit-icon-no-invert { filter: none !important; opacity: 1 !important; }
[data-theme="dark"] .tacit-industry-icon-img { filter: brightness(0) invert(1) !important; opacity: 1 !important; }
[data-theme="dark"] .tacit-industry:hover .tacit-industry-icon-img { opacity: 1 !important; filter: brightness(0) invert(80%) sepia(45%) saturate(700%) hue-rotate(110deg) brightness(1.05) !important; }
[data-theme="dark"] .tacit-nav-role:hover { background: rgba(255,255,255,.04) !important; }
[data-theme="dark"] .tacit-nav-role-icon { color: rgba(255,255,255,1) !important; }
[data-theme="dark"] .tacit-nav-role:hover .tacit-nav-role-icon { color: rgba(255,255,255,.85) !important; }
[data-theme="dark"] .tacit-nav-role-title { color: #fff !important; font-weight: 500 !important; }
[data-theme="dark"] .tacit-nav-role-desc { color: rgba(255,255,255,.5) !important; }
[data-theme="dark"] .tacit-nav-role-group-label { color: rgba(255,255,255,.4) !important; font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; }
[data-theme="dark"] .tacit-nav-role::after { color: rgba(255,255,255,.5) !important; }
[data-theme="dark"] .tacit-industry:hover { background: rgba(56,211,168,.06) !important; }
[data-theme="dark"] .tacit-industry.is-active { background: rgba(56,211,168,.10) !important; }
[data-theme="dark"] .tacit-industry-title { color: #f1f5f9 !important; font-size: 13px !important; font-weight: 500 !important; }
[data-theme="dark"] .tacit-industry:hover .tacit-industry-title { color: #fff !important; }
[data-theme="dark"] .tacit-industry.is-active .tacit-industry-title { color: #fff !important; font-weight: 600 !important; }
[data-theme="dark"] .tacit-industry.is-active .tacit-industry-icon-img { filter: brightness(0) invert(80%) sepia(45%) saturate(700%) hue-rotate(110deg) brightness(1.05) !important; opacity: 1 !important; }
[data-theme="dark"] .tacit-nav-detail-title { color: #fff !important; font-weight: 650 !important; }
[data-theme="dark"] .tacit-nav-detail-item { color: rgba(255,255,255,.85) !important; }
[data-theme="dark"] .tacit-nav-detail-cta { color: rgba(255,255,255,.5) !important; }
[data-theme="dark"] .tacit-nav-detail-more { color: rgba(255,255,255,.4) !important; }
[data-theme="dark"] .tacit-nav-detail-cta:hover { color: rgba(255,255,255,.8) !important; }
[data-theme="dark"] .tacit-nav-divider { background: rgba(255,255,255,.06) !important; }
[data-theme="dark"] .tacit-nav-cta-login { color: #fff !important; }
[data-theme="dark"] .tacit-nav-cta-login:hover { color: rgba(255,255,255,.7) !important; }
[data-theme="dark"] .tacit-nav-cta-signup { background: var(--tacit-accent, #38d3a8) !important; border: none !important; box-shadow: none !important; color: #fff !important; }
[data-theme="dark"] .tacit-nav-cta-signup:hover { background: #2ec49c !important; }
[data-theme="dark"] .tacit-nav-chevron { color: rgba(255,255,255,.9) !important; }
[data-theme="dark"] .tacit-nav-btn:hover .tacit-nav-chevron { color: var(--tacit-accent, #38d3a8) !important; }
[data-theme="dark"] .tacit-nav-mobile { background: #080d1a; border-top-color: rgba(255,255,255,.06); }
[data-theme="dark"] .tacit-nav-mobile-btn { color: #fff; }
[data-theme="dark"] .tacit-nav-mobile-standalone { color: #fff; border-top-color: var(--tacit-border); }
[data-theme="dark"] .tacit-nav-btn--link { color: #fff !important; }
[data-theme="dark"] .tacit-nav-mobile-toggle { color: #fff; }
[data-theme="dark"] .tacit-nav-mobile-link { color: rgba(255,255,255,.8); }
[data-theme="dark"] .tacit-nav-mobile-link:hover { background: rgba(255,255,255,.05); }
[data-theme="dark"] .tacit-nav-mobile-link-sm { color: rgba(255,255,255,.75); }
[data-theme="dark"] .tacit-nav-mobile-link-sm:hover { background: rgba(255,255,255,.05); }
[data-theme="dark"] .tacit-nav-mobile-label { color: rgba(255,255,255,.45); }
[data-theme="dark"] .tacit-nav-mobile-section { border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .tacit-nav-mobile-chevron { color: rgba(255,255,255,.5); }

/* -- Case Studies ------------------------------ */
[data-theme="dark"] .tacit-case-imgcard-overlay { background: linear-gradient(0deg, rgba(0,0,0,.75) 0%, transparent 100%); }
[data-theme="dark"] .tacit-case-grid-label { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-case-view-all { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-case-view-all:hover { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-casestudies { background: var(--tacit-bg); }
[data-theme="dark"] .tacit-cs-grid { border-color: var(--tacit-border); }
/* Case study pages */
[data-theme="dark"] .tacit-combined-section { background-color: var(--tacit-bg); color: var(--tacit-fg); }
[data-theme="dark"] .tacit-combined-section .tacit-section-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-case-study-headline h1,
[data-theme="dark"] .tacit-case-study-headline h2 { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-cs-subtitle { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-info-label { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-info-value { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-challenge-description p { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-challenge-pill { background: rgba(239,68,68,.08); border-color: rgba(239,68,68,.2); color: #f87171; }
[data-theme="dark"] .tacit-solution-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-solution-subtitle { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-solution-list li { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-solution-list li:first-child { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-solution-image img { border-radius: var(--radius-xl); box-shadow: 0 0 0 1px rgba(255,255,255,.06); }
[data-theme="dark"] .tacit-kpi-block { background: var(--tacit-bg-subtle); border-color: var(--tacit-border); box-shadow: none; }
[data-theme="dark"] .tacit-kpi-description { color: var(--tacit-fg-muted); }
[data-theme="dark"] .mx-quote-inner { background: var(--tacit-bg-subtle); border-color: var(--tacit-border); box-shadow: none; }
[data-theme="dark"] .mx-logo { filter: brightness(0) invert(1); }
[data-theme="dark"] .mx-quote-text { color: var(--tacit-fg); }
[data-theme="dark"] .mx-quote-inner .mx-name { color: var(--tacit-fg); }
[data-theme="dark"] .mx-quote-inner .mx-role { color: var(--tacit-fg-muted); }
[data-theme="dark"] .mx-card-inner { background: var(--tacit-bg-subtle); border-color: var(--tacit-border); box-shadow: 0 6px 20px rgba(0,0,0,.3); }
[data-theme="dark"] .mx-card-inner .mx-name { color: var(--tacit-fg); }
[data-theme="dark"] .mx-card-inner .mx-role { color: var(--tacit-fg-muted); }
[data-theme="dark"] .mx-quote { color: var(--tacit-fg); }
[data-theme="dark"] .mx-person-meta .mx-name { color: var(--tacit-fg); }
[data-theme="dark"] .mx-person-meta .mx-role { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-highlight { color: var(--tacit-accent); }
.mx-company-label { margin-bottom: 22px; }
.mx-company-label span { font-size: 16px; font-weight: 800; color: var(--tacit-fg); letter-spacing: 0.02em; }
[data-theme="dark"] .mx-company-label span { color: var(--tacit-fg); }
/* Case study section spacing */
.tacit-cs-gap-sm { margin-top: 80px; }
.tacit-cs-gap-lg { margin-top: 140px; }
/* Case study bottom CTA */
.tacit-cs-cta-block { max-width: 1200px; margin: var(--sp-14) auto var(--sp-17); text-align: center; padding: 0 var(--sp-12); }
.tacit-cs-cta-block h3 { font-size: var(--fs-h4); font-weight: 700; color: var(--tacit-fg, #111827); margin: 0 0 var(--sp-4); }
.tacit-cs-cta-block p { font-size: var(--fs-body); color: var(--tacit-fg-muted, rgba(11,11,13,.55)); margin: 0 0 var(--sp-10); }
.tacit-cs-cta-actions { display: flex; align-items: center; justify-content: center; gap: var(--sp-6); flex-wrap: wrap; }
[data-theme="dark"] .tacit-cs-cta-block h3 { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-cs-cta-block p { color: var(--tacit-fg-muted); }
/* ── Case study index page ─────────────────── */
.cs-index {
  max-width: 960px;
  margin: 0 auto;
  padding: var(--sp-17) var(--sp-13);
  text-align: center;
}
.cs-index-eyebrow {
  font-size: var(--fs-small);
  font-weight: 650;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--tacit-accent);
  margin-bottom: var(--sp-6);
}
.cs-index-title {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-display);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -.03em;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-8);
}
.cs-index-sub {
  font-size: var(--fs-body-lg);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  max-width: 600px;
  margin: 0 auto var(--sp-16);
}
.cs-index-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: var(--sp-10) !important;
}
.cs-index-grid .tacit-cs-card {
  flex: none !important;
  scroll-snap-align: unset !important;
  width: 100% !important;
  aspect-ratio: 3 / 2 !important;
}
.cs-index-coming-soon {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-3xl);
  aspect-ratio: 3 / 2;
  border: 1px dashed rgba(11,11,13,.10);
}
.cs-index-coming-label {
  font-size: var(--fs-small);
  font-weight: 500;
  color: rgba(11,11,13,.25);
}
.cs-index-bottom {
  margin-top: var(--sp-16);
  text-align: center;
}
@media (max-width: 1024px) {
  .cs-index-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .cs-index-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 640px) {
  .cs-index { padding: var(--sp-14) var(--sp-8); }
  .cs-index-grid { grid-template-columns: 1fr !important; gap: var(--sp-8) !important; }
  .cs-index-grid .tacit-cs-card { aspect-ratio: 16 / 10; }
}
/* dark mode */
[data-theme="dark"] .cs-index-title { color: var(--tacit-fg); }
[data-theme="dark"] .cs-index-sub { color: var(--tacit-fg-muted); }
[data-theme="dark"] .cs-index-coming-soon { border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .cs-index-coming-label { color: rgba(255,255,255,.2); }

/* -- Timeline ---------------------------------- */
[data-theme="dark"] .tacit-timeline-day { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-timeline-dot { border-color: var(--tacit-fg-light); background: var(--tacit-bg); }
[data-theme="dark"] .tacit-timeline-line { background: var(--tacit-card-border); }
[data-theme="dark"] .tacit-timeline-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-timeline-desc { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-timeline-output-item { background: transparent; border-color: rgba(255,255,255,.14); color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-timeline-output--final .tacit-timeline-output-item { background: transparent; border-color: rgba(255,255,255,.18); color: rgba(255,255,255,.8); }
[data-theme="dark"] .tacit-timeline-note { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-timeline-output-label { color: rgba(255,255,255,.35); }
[data-theme="dark"] .tacit-timeline-btn { background: var(--tacit-accent); color: #fff; }

/* -- Comparison Table -------------------------- */
[data-theme="dark"] .tacit-compare-row { border-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-compare-feature { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-compare-row:first-child .tacit-compare-feature { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-compare-cell { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-compare-head { border-color: var(--tacit-border); color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-compare-check { color: var(--tacit-fg); font-weight: 400; }
[data-theme="dark"] .tacit-compare-tick { color: var(--tacit-accent); }
[data-theme="dark"] .tacit-compare-cross { color: rgba(255,255,255,.75); }
[data-theme="dark"] .tacit-compare-x { color: var(--tacit-error); }
[data-theme="dark"] .tacit-compare-text { color: rgba(255,255,255,.75); }
[data-theme="dark"] .tacit-compare-table th .tacit-logo-dark { display: inline; }
[data-theme="dark"] .tacit-compare-col-risk { color: rgba(255,255,255,.55); }

/* -- FAQ --------------------------------------- */
[data-theme="dark"] .tacit-faq .tacit-section-title { color: #f1f5f9 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .tacit-faq .tacit-section-eyebrow { color: #dce4ec !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .tacit-faq-item { border-color: rgba(255,255,255,.06) !important; }
[data-theme="dark"] .tacit-faq-question { color: #e8ecf1 !important; }
[data-theme="dark"] .tacit-faq-question:hover { color: #fff !important; }
[data-theme="dark"] .tacit-faq-answer { color: #a8b1bf !important; }
[data-theme="dark"] .tacit-faq-answer-inner { color: #a8b1bf !important; }
[data-theme="dark"] .tacit-faq-toggle { color: #8291a3 !important; }

/* -- Security ---------------------------------- */
[data-theme="dark"] .tacit-security-card { background: var(--tacit-card-bg); border-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-security-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-security-desc { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-security-badges-label { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-security-badge { color: var(--tacit-fg-muted); border-color: var(--tacit-card-border); }

/* -- Results ----------------------------------- */
[data-theme="dark"] .tacit-results-card { background: var(--tacit-card-bg); border-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-results-value { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-results-label { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-results-metric { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-results-source { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-results-link { color: rgba(255,255,255,.75); }
[data-theme="dark"] .tacit-results-link:hover { color: var(--tacit-fg); }

/* -- Build vs Buy ------------------------------ */
[data-theme="dark"] .tacit-build-card { background: var(--tacit-card-bg); border-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-build-card-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-build-row-label { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-build-row-value { color: var(--tacit-fg); }

/* -- Gap Diagram ------------------------------- */
[data-theme="dark"] .tacit-gap { background: radial-gradient(circle, rgba(255,255,255,.06) 0.5px, transparent 0.5px) 0 0 / 16px 16px, linear-gradient(180deg, #070d1a 0%, var(--tacit-bg-deep) 50%, var(--tacit-bg) 100%); border-radius: var(--radius-5xl) var(--radius-5xl) 0 0; }
[data-theme="dark"] .tacit-gap-glow { background: radial-gradient(circle, rgba(255,255,255,.25) 0.5px, transparent 0.5px) 0 0 / 16px 16px; }
[data-theme="dark"] .tacit-gap::after { background: linear-gradient(to bottom, transparent, var(--tacit-bg)); }
[data-theme="dark"] .tacit-gap-card { background: transparent; }
[data-theme="dark"] .tacit-gap-toggle { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.08); }
[data-theme="dark"] .tacit-gap-btn { color: rgba(255,255,255,.6); border-color: rgba(255,255,255,.10); }
[data-theme="dark"] .tacit-gap-btn:hover:not(.active) { color: rgba(255,255,255,.8); }
[data-theme="dark"] .tacit-gap-btn.active { color: #fff; background: var(--tacit-bg-deep); border-color: rgba(255,255,255,.08); box-shadow: 0 1px 3px rgba(0,0,0,.3); }
[data-theme="dark"] .tacit-gap-stat { color: var(--tacit-fg-muted); }
/* Gap SVG text classes (moved from SVG <defs> to avoid WP stripping) */
.tacit-gap-svg .gt { font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.tacit-gap-svg .gn { fill: rgba(11,11,13,.80); font-weight: 600; letter-spacing: -0.01em; }
.tacit-gap-svg .gd { fill: rgba(11,11,13,.56); font-weight: 420; }
.tacit-gap-svg .gs { fill: rgba(11,11,13,.52); font-weight: 560; text-transform: uppercase; letter-spacing: 0.06em; }
.tacit-gap-svg .gp { fill: rgba(11,11,13,.58); font-weight: 480; }
.tacit-gap-svg .gb { fill: #e06030; font-weight: 580; }
.tacit-gap-svg .gc { fill: rgba(11,11,13,.40); font-weight: 480; font-style: italic; }
.tacit-gap-svg .ga { fill: rgba(11,11,13,.60); font-weight: 520; letter-spacing: -0.005em; }
[data-theme="dark"] .tacit-gap-svg .gn { fill: rgba(255,255,255,.95); }
[data-theme="dark"] .tacit-gap-svg .gd { fill: rgba(255,255,255,.78); }
[data-theme="dark"] .tacit-gap-svg .gs { fill: rgba(255,255,255,.82); }
[data-theme="dark"] .tacit-gap-svg .gp { fill: rgba(255,255,255,.82); }
[data-theme="dark"] .tacit-gap-svg rect[fill="#fff"] { fill: #0b1120; stroke: rgba(255,255,255,.20); }[data-theme="dark"] .tacit-gap-svg g[filter="url(#gapSh)"] { filter: none; }
[data-theme="dark"] .tacit-gap-svg .gap-badge-bg { fill: #0b1120; }
[data-theme="dark"] .tacit-gap-svg .gap-alert-icon { filter: url(#gapGlow) !important; }
[data-theme="dark"] .tacit-gap-svg .gc { fill: rgba(255,255,255,.62); }
[data-theme="dark"] .tacit-gap-svg path[stroke-dasharray] { stroke: rgba(255,255,255,.25); }
[data-theme="dark"] .tacit-gap-svg #gapDots circle { fill: rgba(255,255,255,.10); }
[data-theme="dark"] .tacit-gap-svg > rect[fill="url(#gapDots)"] { opacity: 1; }
[data-theme="dark"] .tacit-gap-svg path:not([stroke-dasharray]):not([stroke="#f0843d"]) { stroke: rgba(255,255,255,.38); }
[data-theme="dark"] .tacit-gap-svg circle[r="2.5"] { fill: rgba(255,255,255,.35); }
[data-theme="dark"] .tacit-gap-svg polygon { fill: rgba(255,255,255,.30); }
[data-theme="dark"] .tacit-gap-svg .gap-alert-icon circle { fill: none; stroke: #ff8c42 !important; }
[data-theme="dark"] .tacit-gap-svg .gap-alert-icon line { stroke: #ff8c42 !important; }
[data-theme="dark"] .tacit-gap-svg .gap-alert-icon ellipse { display: none; }
[data-theme="dark"] .tacit-gap-svg .ga { fill: #fff; }
[data-theme="dark"] .tacit-gap-cta { color: var(--tacit-accent); }
[data-theme="dark"] .tacit-gap-cta:hover { color: #38d3a8; }
[data-theme="dark"] .tacit-gap-citation { color: var(--tacit-fg-muted); }

/* -- Footer CTA -------------------------------- */
[data-theme="dark"] .tacit-cta-section { background: var(--tacit-bg-deep); }
[data-theme="dark"] .tacit-cta-headline { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-cta-desc { color: var(--tacit-fg-muted); }

/* -- Hero -------------------------------------- */
[data-theme="dark"] .tacitx-hero-wrapper-a1 { --fg: #f1f5f9; --fg-muted: #b0bac8; --fg-primary: #f1f5f9; --border-subtle: rgba(255,255,255,.10); color: #f1f5f9; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 { background: var(--tacit-bg); background: linear-gradient(180deg, var(--tacit-bg) 0%, rgba(15,23,42,.95) 50%, var(--tacit-bg) 100%); }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-a1 { background: transparent; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-line-a1 { color: #f1f5f9 !important; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-sub-a1 { color: #dbe4ee !important; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-kpi-card-a1 { background: none; border: none; box-shadow: none; }
[data-theme="dark"] .tacitx-kpi-divider-a1 { background: rgba(255,255,255,.1); }
[data-theme="dark"] .tacitx-hero-costline-a1 { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-eyebrow-pill-a1 {
  background: linear-gradient(105deg, #5ee8c0 0%, #5ee8c0 35%, #8af0d8 50%, #5ee8c0 65%, #5ee8c0 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-logos-label-a1 { color: rgba(226,232,240,.72) !important; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-reassurance-a1 { color: rgba(226,232,240,.82) !important; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-logo-name-a1 { color: rgba(255,255,255,.8); }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-logo-a1 { border-color: var(--tacit-border); }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-hero-video-a1 { box-shadow: 0 20px 60px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.08); }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-btn-primary-a1 { background: var(--tacit-accent, #38d3a8); border: none; box-shadow: none; color: #fff; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-btn-primary-a1:hover { background: #2ec49c; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-btn-secondary-a1 { color: rgba(255,255,255,.9); border: 1px solid rgba(255,255,255,.14); background: rgba(0,0,0,.4); border-radius: 999px; box-shadow: none; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-btn-secondary-a1:hover { background: rgba(0,0,0,.55); border-color: rgba(255,255,255,.25); color: #fff; }
[data-theme="dark"] .tacitx-hero-wrapper-a1 .tacitx-divider-arrow-a1 { color: rgba(255,255,255,.6); }
[data-theme="dark"] .tacitx-hero-tab-a1 { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.12); color: var(--tacit-fg-light); box-shadow: none; }
[data-theme="dark"] .tacitx-hero-tab-a1:hover { border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.65); }
[data-theme="dark"] .tacitx-hero-tab-a1.active { background: var(--tacit-pill-bg); border-color: rgba(56,211,168,.25); color: var(--tacit-accent); box-shadow: none; }
[data-theme="dark"] .tacitx-hero-showcase-a1 { background: var(--tacit-card-bg); box-shadow: 0 20px 60px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.08); }
[data-theme="dark"] .tacitx-hero-showcase-placeholder-a1 span { color: rgba(255,255,255,.3); }
[data-theme="dark"] .tacitx-hero-eyebrow-pill-track { color: var(--tacit-color, var(--tacit-accent)); }
[data-theme="dark"] .tacitx-hero-wrapper-a1::before {
  background-image: radial-gradient(circle, rgba(255,255,255,.06) 0.5px, transparent 0.5px) !important;
}
[data-theme="dark"] .tacitx-hero-wrapper-a1::after {
  background: radial-gradient(circle, rgba(255,255,255,.25) 0.5px, transparent 0.5px) 0 0 / 16px 16px !important;
}

/* -- Buttons (standalone, outside hero) -------- */
[data-theme="dark"] .tacitx-btn-primary-a1 { background: var(--tacit-accent, #38d3a8); border: none; color: #fff; box-shadow: none; }
[data-theme="dark"] .tacitx-btn-primary-a1:hover { background: #2ec49c; }
[data-theme="dark"] .tacitx-btn-secondary-a1 { background: rgba(0,0,0,.4); color: rgba(255,255,255,.9); border: 1px solid rgba(255,255,255,.14); border-radius: 999px; box-shadow: none; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
[data-theme="dark"] .tacitx-btn-secondary-a1:hover { background: rgba(0,0,0,.55); border-color: rgba(255,255,255,.25); color: #fff; }

/* -- CTA v2 ------------------------------------ */
[data-theme="dark"] .tv2-cta { background: linear-gradient(180deg, var(--tacit-bg) 0%, var(--tacit-bg-deep) 100%); }
[data-theme="dark"] .tv2-cta::after { background: radial-gradient(circle, rgba(255,255,255,.06) 0.5px, transparent 0.5px) 0 0 / 16px 16px; }
[data-theme="dark"] .tv2-cta::before { background: radial-gradient(circle, rgba(255,255,255,.25) 0.5px, transparent 0.5px) 0 0 / 16px 16px; }

/* -- Subscribe --------------------------------- */
[data-theme="dark"] .tv2-subscribe-form { background: rgba(255,255,255,.05); box-shadow: 0 0 0 1px rgba(255,255,255,.1); }
[data-theme="dark"] .tv2-subscribe-form:focus-within { box-shadow: 0 0 0 1px var(--tacit-accent), 0 0 0 4px rgba(56,211,168,.12); }
[data-theme="dark"] .tv2-subscribe-input { color: #fff; }
[data-theme="dark"] .tv2-subscribe-input::placeholder { color: rgba(255,255,255,.3); }

/* -- Footer ------------------------------------ */
[data-theme="dark"] .tv2-footer { background: var(--tacit-bg-deep); border-color: var(--tacit-border); }
[data-theme="dark"] .tv2-footer::after { background: radial-gradient(circle, rgba(255,255,255,.06) 0.5px, transparent 0.5px) 0 0 / 16px 16px; }
[data-theme="dark"] .tv2-footer::before { background: radial-gradient(circle, rgba(255,255,255,.25) 0.5px, transparent 0.5px) 0 0 / 16px 16px; }
[data-theme="dark"] .tv2-footer-mission { color: rgba(255,255,255,.85); }
[data-theme="dark"] .tv2-footer-location { color: rgba(255,255,255,.6); }
[data-theme="dark"] .tv2-footer-heading { color: #fff !important; }
[data-theme="dark"] .tv2-footer-link { color: rgba(255,255,255,.8) !important; }
[data-theme="dark"] .tv2-footer-link:hover { color: #fff !important; }
[data-theme="dark"] .tv2-footer-social-link { color: rgba(255,255,255,.65); }
[data-theme="dark"] .tv2-footer-social-link:hover { color: #fff; }
[data-theme="dark"] .tv2-footer-bottom { border-color: rgba(255,255,255,.1); color: rgba(255,255,255,.65); }

/* -- Before/After Cards ------------------------ */
[data-theme="dark"] .tacit-ba-card { border-color: var(--tacit-border); background: var(--tacit-bg-subtle); box-shadow: 0 1px 3px rgba(0,0,0,.2); }
[data-theme="dark"] .tacit-ba-tag { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-ba-col:first-child { border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-ba-col:last-child { background: none; }
[data-theme="dark"] .tacit-ba-label { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-ba-label--after { color: var(--tacit-accent); }
[data-theme="dark"] .tacit-ba-col p { color: rgba(255,255,255,.82); }
[data-theme="dark"] .tacit-ba-col:last-child p { color: var(--tacit-fg); }

/* -- Deliverables ------------------------------ */
[data-theme="dark"] .tacit-del-grid { border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-del-card { background: var(--tacit-bg); }
[data-theme="dark"] .tacit-del-icon-img { opacity: 0.6; }
[data-theme="dark"] .tacit-del-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-del-desc { color: var(--tacit-fg-muted); }

/* -- Pilot ------------------------------------- */
[data-theme="dark"] .tacit-pilot-callout { background: var(--tacit-bg-deep); border-left-color: var(--tacit-accent); }
[data-theme="dark"] .tacit-pilot-callout-text { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-pilot-card { background: var(--tacit-card-bg); border-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-pilot-card:hover { border-color: rgba(56, 211, 168, .30); box-shadow: 0 4px 20px rgba(56, 211, 168, .08); }
[data-theme="dark"] .tacit-pilot-card-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-pilot-card-desc { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-pilot-note { color: var(--tacit-fg-light); }

/* -- Phases ------------------------------------ */
[data-theme="dark"] .tacit-phases-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-phases-card { background: transparent; border-color: rgba(255,255,255,.08); }
[data-theme="dark"] .tacit-phases-name { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-phases-duration { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-phases-desc { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-phases-gate-divider { background: var(--tacit-border); }
[data-theme="dark"] .tacit-phases-gate-label { color: rgba(255,255,255,.35); }
[data-theme="dark"] .tacit-phases-gate-text { color: rgba(255,255,255,.55); }
[data-theme="dark"] .tacit-phases-pricing { color: var(--tacit-fg-muted); }

/* -- Feature Tracks ---------------------------- */
[data-theme="dark"] .tacit-feature-tracks { border-top-color: var(--tacit-border); }
[data-theme="dark"] .tacit-feature-track-label { color: rgba(255,255,255,.75); }
[data-theme="dark"] .tacit-feature-track-ex { color: var(--tacit-fg-muted); }

/* -- Pricing ----------------------------------- */
[data-theme="dark"] .tacit-pricing-card { background: #111827; border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-pricing-card:hover { box-shadow: 0 8px 32px -8px rgba(0,0,0,.3); border-color: rgba(255,255,255,.12); }
[data-theme="dark"] .tacit-pricing-card--featured { border-color: var(--tacit-accent); box-shadow: 0 0 0 1px var(--tacit-accent), 0 8px 32px -8px rgba(56,211,168,.1); }
[data-theme="dark"] .tacit-pricing-card--featured:hover { box-shadow: 0 0 0 1px var(--tacit-accent), 0 12px 40px -8px rgba(56,211,168,.15); }
[data-theme="dark"] .tacit-pricing-step { background: rgba(255,255,255,.06); color: var(--tacit-fg); }
[data-theme="dark"] .tacit-pricing-card--featured .tacit-pricing-step { background: var(--tacit-pill-bg); color: var(--tacit-accent); }
[data-theme="dark"] .tacit-pricing-card-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-pricing-card-desc { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-pricing-features li { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-pricing-perk { border-color: rgba(255,255,255,.1); }
[data-theme="dark"] .tacit-pricing-perk:hover { border-color: rgba(255,255,255,.18); box-shadow: 0 2px 8px rgba(0,0,0,.2); }
[data-theme="dark"] .tacit-pricing-perk-title { color: rgba(255,255,255,.85); }
[data-theme="dark"] .tacit-pricing-perk-desc { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-trust-pill { border-color: rgba(255,255,255,.15); color: rgba(255,255,255,.82); }
[data-theme="dark"] .tacit-trust-pill svg { color: var(--tacit-accent); }

/* -- Demo Form --------------------------------- */
[data-theme="dark"] .tacit-demo-hero { background: var(--tacit-bg); }
[data-theme="dark"] .tacit-demo-form-card { background: #111827; border-color: var(--tacit-border); box-shadow: 0 4px 24px rgba(0,0,0,.3); }
[data-theme="dark"] .tacit-demo-form-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-demo-form-subtitle { color: rgba(255,255,255,.35); }
[data-theme="dark"] .tacit-demo-label { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-demo-input,
[data-theme="dark"] .tacit-demo-select,
[data-theme="dark"] .tacit-demo-textarea { background: var(--tacit-card-bg); border-color: rgba(255,255,255,.1); color: var(--tacit-fg); }
[data-theme="dark"] .tacit-demo-input::placeholder,
[data-theme="dark"] .tacit-demo-textarea::placeholder { color: rgba(255,255,255,.2); }
[data-theme="dark"] .tacit-demo-input:focus,
[data-theme="dark"] .tacit-demo-select:focus,
[data-theme="dark"] .tacit-demo-textarea:focus { border-color: var(--tacit-accent); }
[data-theme="dark"] .tacit-demo-step-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-demo-step-desc { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-demo-consent-label { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-demo-step-num { background: var(--tacit-pill-bg); }
[data-theme="dark"] .tacit-demo-select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); }

/* -- WPForms / WordPress form dark mode -------- */
[data-theme="dark"] .wpforms-container,
[data-theme="dark"] .wpforms-form { color: #e8ecf1 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .wpforms-title,
[data-theme="dark"] .wpforms-form h4,
[data-theme="dark"] .wpforms-head-container .wpforms-title { color: #f1f5f9 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .wpforms-form .wpforms-field-label,
[data-theme="dark"] .wpforms-form label { color: #e8ecf1 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; font-weight: 500 !important; }
[data-theme="dark"] .wpforms-form .wpforms-field-sublabel,
[data-theme="dark"] .wpforms-form .wpforms-field-description { color: rgba(255,255,255,.45) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .wpforms-form input[type="text"],
[data-theme="dark"] .wpforms-form input[type="email"],
[data-theme="dark"] .wpforms-form input[type="tel"],
[data-theme="dark"] .wpforms-form input[type="url"],
[data-theme="dark"] .wpforms-form input[type="number"],
[data-theme="dark"] .wpforms-form input[type="password"],
[data-theme="dark"] .wpforms-form textarea,
[data-theme="dark"] .wpforms-form select {
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(255,255,255,.12) !important;
  color: #e8ecf1 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}
[data-theme="dark"] .wpforms-form input::placeholder,
[data-theme="dark"] .wpforms-form textarea::placeholder { color: rgba(255,255,255,.25) !important; }
[data-theme="dark"] .wpforms-form input:focus,
[data-theme="dark"] .wpforms-form textarea:focus,
[data-theme="dark"] .wpforms-form select:focus { border-color: #38d3a8 !important; outline: none !important; }
[data-theme="dark"] .wpforms-form .wpforms-field-required { color: #f87171 !important; }
[data-theme="dark"] .wpforms-form .wpforms-submit-container button,
[data-theme="dark"] .wpforms-form button[type="submit"],
[data-theme="dark"] .wpforms-form input[type="submit"] {
  background: #38d3a8 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}
[data-theme="dark"] .wpforms-form .wpforms-submit-container button:hover,
[data-theme="dark"] .wpforms-form button[type="submit"]:hover { background: #2ec49c !important; }
[data-theme="dark"] .wpforms-form .wpforms-field-limit-text { color: rgba(255,255,255,.35) !important; }
[data-theme="dark"] .wpforms-confirmation-container-full { color: #e8ecf1 !important; }
[data-theme="dark"] .wpforms-form .wpforms-page-indicator { color: rgba(255,255,255,.5) !important; }
[data-theme="dark"] .wpforms-form a { color: #5ee8c0 !important; }

/* -- Forminator form — theme-responsive, compact, shadcn/Cursor-like ----- */
/* Tatsu containers — light by default, dark in dark mode */
.tatsu-text-block-wrap:has(#forminator-module-2915),
.tatsu-column-pad-wrap:has(#forminator-module-2915),
.tatsu-column-pad:has(#forminator-module-2915),
.tatsu-text-block-wrap:has(#forminator-module-2813),
.tatsu-column-pad-wrap:has(#forminator-module-2813),
.tatsu-column-pad:has(#forminator-module-2813) {
  background: #fff !important;
}
[data-theme="dark"] .tatsu-text-block-wrap:has(#forminator-module-2915),
[data-theme="dark"] .tatsu-column-pad-wrap:has(#forminator-module-2915),
[data-theme="dark"] .tatsu-column-pad:has(#forminator-module-2915),
[data-theme="dark"] .tatsu-text-block-wrap:has(#forminator-module-2813),
[data-theme="dark"] .tatsu-column-pad-wrap:has(#forminator-module-2813),
[data-theme="dark"] .tatsu-column-pad:has(#forminator-module-2813) {
  background: #030712 !important;
}
.tatsu-column-pad-wrap:has(#forminator-module-2915),
.tatsu-column-pad-wrap:has(#forminator-module-2813) {
  display: flex !important; align-items: center !important;
  justify-content: center !important; min-height: 100% !important;
}
.tatsu-column-pad:has(#forminator-module-2915),
.tatsu-column-pad:has(#forminator-module-2813) {
  display: flex !important; align-items: center !important;
  justify-content: center !important; width: 100% !important;
}
#forminator-module-2915,
#forminator-module-2915 *,
#forminator-module-2813,
#forminator-module-2813 * { font-family: Inter, -apple-system, system-ui, sans-serif !important; box-sizing: border-box !important; }
#forminator-module-2915,
#forminator-module-2813 {
  max-width: 480px !important; width: 100% !important; margin: 0 auto !important;
  padding: 32px 0 !important; color: #111827 !important;
  text-align: left !important;
}
[data-theme="dark"] #forminator-module-2915,
[data-theme="dark"] #forminator-module-2813 { color: rgba(255,255,255,.88) !important; }
#forminator-module-2915 .forminator-row .forminator-col-md-6,
#forminator-module-2813 .forminator-row .forminator-col-md-6 {
  width: 50% !important; flex: 0 0 50% !important; max-width: 50% !important;
  display: inline-block !important; vertical-align: top !important;
  padding-right: 6px !important;
}
#forminator-module-2915 .forminator-row .forminator-col-md-6 + .forminator-col-md-6,
#forminator-module-2813 .forminator-row .forminator-col-md-6 + .forminator-col-md-6 {
  padding-right: 0 !important; padding-left: 6px !important;
}
#forminator-module-2915 .forminator-row[data-multiple="true"],
#forminator-module-2915 .forminator-row .forminator-no-margin,
#forminator-module-2813 .forminator-row[data-multiple="true"],
#forminator-module-2813 .forminator-row .forminator-no-margin {
  display: flex !important; gap: 12px !important; flex-wrap: nowrap !important;
}
#forminator-module-2915 .forminator-row .forminator-no-margin > .forminator-col-md-6,
#forminator-module-2813 .forminator-row .forminator-no-margin > .forminator-col-md-6 {
  width: 50% !important; flex: 1 1 50% !important; padding: 0 !important;
}
#forminator-module-2915 .forminator-row,
#forminator-module-2813 .forminator-row { margin-bottom: 14px !important; }
#forminator-module-2915 .forminator-field,
#forminator-module-2813 .forminator-field { margin-bottom: 0 !important; }
#forminator-module-2915 .forminator-label,
#forminator-module-2915 .forminator-label.forminator-floating--input,
#forminator-module-2813 .forminator-label,
#forminator-module-2813 .forminator-label.forminator-floating--input {
  position: static !important; float: none !important; display: block !important;
  font-size: 13px !important; font-weight: 500 !important; letter-spacing: 0 !important;
  color: #374151 !important; margin-bottom: 6px !important;
  transform: none !important; opacity: 1 !important; line-height: 1.3 !important;
  top: auto !important; left: auto !important; right: auto !important;
  width: auto !important; max-width: none !important; padding: 0 !important;
  background: none !important; border: none !important; height: auto !important;
  overflow: visible !important; white-space: normal !important; text-overflow: unset !important;
  pointer-events: auto !important;
}
[data-theme="dark"] #forminator-module-2915 .forminator-label,
[data-theme="dark"] #forminator-module-2915 .forminator-label.forminator-floating--input,
[data-theme="dark"] #forminator-module-2813 .forminator-label,
[data-theme="dark"] #forminator-module-2813 .forminator-label.forminator-floating--input { color: rgba(255,255,255,.88) !important; }
#forminator-module-2915 .forminator-input,
#forminator-module-2915 textarea,
#forminator-module-2915 .forminator-input--wrap .forminator-input,
#forminator-module-2813 .forminator-input,
#forminator-module-2813 textarea,
#forminator-module-2813 .forminator-input--wrap .forminator-input {
  font-size: 14px !important; line-height: 1.5 !important;
  border-radius: 0 !important; padding: 8px 0 !important;
  border: none !important; border-bottom: 1px solid rgba(11,11,13,.15) !important;
  background: transparent !important; color: #111827 !important;
  outline: none !important; width: 100% !important; height: auto !important;
  -webkit-appearance: none !important; appearance: none !important;
  transition: border-color .2s !important;
}
[data-theme="dark"] #forminator-module-2915 .forminator-input,
[data-theme="dark"] #forminator-module-2915 textarea,
[data-theme="dark"] #forminator-module-2915 .forminator-input--wrap .forminator-input,
[data-theme="dark"] #forminator-module-2813 .forminator-input,
[data-theme="dark"] #forminator-module-2813 textarea,
[data-theme="dark"] #forminator-module-2813 .forminator-input--wrap .forminator-input {
  border-bottom-color: rgba(255,255,255,.15) !important; color: #f0f2f5 !important;
}
#forminator-module-2915 .forminator-input::placeholder,
#forminator-module-2915 textarea::placeholder,
#forminator-module-2813 .forminator-input::placeholder,
#forminator-module-2813 textarea::placeholder { color: rgba(11,11,13,.3) !important; opacity: 1 !important; }
[data-theme="dark"] #forminator-module-2915 .forminator-input::placeholder,
[data-theme="dark"] #forminator-module-2915 textarea::placeholder,
[data-theme="dark"] #forminator-module-2813 .forminator-input::placeholder,
[data-theme="dark"] #forminator-module-2813 textarea::placeholder { color: rgba(255,255,255,.25) !important; }
#forminator-module-2915 .forminator-input:hover,
#forminator-module-2915 textarea:hover,
#forminator-module-2813 .forminator-input:hover,
#forminator-module-2813 textarea:hover { border-bottom-color: rgba(11,11,13,.3) !important; }
[data-theme="dark"] #forminator-module-2915 .forminator-input:hover,
[data-theme="dark"] #forminator-module-2915 textarea:hover,
[data-theme="dark"] #forminator-module-2813 .forminator-input:hover,
[data-theme="dark"] #forminator-module-2813 textarea:hover { border-bottom-color: rgba(255,255,255,.3) !important; }
#forminator-module-2915 .forminator-input:focus,
#forminator-module-2915 textarea:focus,
#forminator-module-2813 .forminator-input:focus,
#forminator-module-2813 textarea:focus { border-bottom-color: #38d3a8 !important; box-shadow: none !important; }
#forminator-module-2915 .forminator-input--wrap,
#forminator-module-2813 .forminator-input--wrap {
  border: none !important; border-bottom: none !important; background: none !important;
  padding: 0 !important; margin: 0 !important; min-height: 0 !important;
}
#forminator-module-2915 .forminator-input--wrap::before,
#forminator-module-2915 .forminator-input--wrap::after,
#forminator-module-2813 .forminator-input--wrap::before,
#forminator-module-2813 .forminator-input--wrap::after { display: none !important; content: none !important; }
#forminator-module-2915 .forminator-row-last,
#forminator-module-2813 .forminator-row-last {
  margin-top: -48px !important; display: flex !important; justify-content: flex-end !important;
  align-items: center !important; min-height: 48px !important;
}
#forminator-module-2915 .forminator-row-last .forminator-col,
#forminator-module-2915 .forminator-row-last .forminator-field,
#forminator-module-2813 .forminator-row-last .forminator-col,
#forminator-module-2813 .forminator-row-last .forminator-field { margin: 0 !important; padding: 0 !important; }
#forminator-module-2915 .forminator-button-submit,
#forminator-module-2915 .forminator-button.forminator-button-submit,
#forminator-module-2813 .forminator-button-submit,
#forminator-module-2813 .forminator-button.forminator-button-submit {
  font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0.01em !important;
  background: #38d3a8 !important; color: #fff !important; border: none !important;
  border-radius: 999px !important; padding: 0 6px 0 18px !important; cursor: pointer !important;
  width: auto !important; display: inline-flex !important; align-items: center !important; gap: 8px !important;
  line-height: 1 !important; text-transform: none !important; height: 36px !important;
  transition: background .2s, transform .15s, box-shadow .2s !important;
  flex-shrink: 0 !important; white-space: nowrap !important;
}
#forminator-module-2915 .forminator-button-submit::after,
#forminator-module-2813 .forminator-button-submit::after {
  content: '' !important; display: inline-flex !important;
  width: 24px !important; height: 24px !important; border-radius: 50% !important;
  background: rgba(255,255,255,.2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3l5 5-5 5'/%3E%3C/svg%3E") center/10px no-repeat !important;
  flex-shrink: 0 !important;
}
#forminator-module-2915 .forminator-button-submit span[aria-hidden],
#forminator-module-2813 .forminator-button-submit span[aria-hidden] { display: none !important; }
#forminator-module-2915 .forminator-button-submit:hover,
#forminator-module-2813 .forminator-button-submit:hover { background: #2ec49c !important; transform: translateY(-1px) !important; box-shadow: 0 4px 16px rgba(56,211,168,.25) !important; }
#forminator-module-2915 .forminator-required,
#forminator-module-2813 .forminator-required { color: #38d3a8 !important; font-size: 12px !important; }
#forminator-module-2915 .forminator-description,
#forminator-module-2813 .forminator-description { font-size: 11px !important; color: rgba(11,11,13,.4) !important; margin-top: 4px !important; }
[data-theme="dark"] #forminator-module-2915 .forminator-description,
[data-theme="dark"] #forminator-module-2813 .forminator-description { color: rgba(255,255,255,.4) !important; }
#forminator-module-2915 .forminator-field-consent,
#forminator-module-2813 .forminator-field-consent {
  display: flex !important; align-items: center !important; justify-content: space-between !important;
  flex-wrap: nowrap !important; gap: 16px !important;
}
#forminator-module-2915 .forminator-field-consent > .forminator-field,
#forminator-module-2813 .forminator-field-consent > .forminator-field {
  display: flex !important; align-items: center !important; justify-content: space-between !important;
  width: 100% !important; flex-wrap: nowrap !important; gap: 16px !important;
}
#forminator-module-2915 .forminator-field-consent .forminator-label,
#forminator-module-2813 .forminator-field-consent .forminator-label { display: none !important; }
#forminator-module-2915 .forminator-checkbox__wrapper,
#forminator-module-2813 .forminator-checkbox__wrapper { display: flex !important; align-items: center !important; gap: 8px !important; flex: 1 !important; }
#forminator-module-2915 .forminator-checkbox.forminator-consent,
#forminator-module-2813 .forminator-checkbox.forminator-consent { flex-shrink: 0 !important; }
#forminator-module-2915 .forminator-checkbox-box,
#forminator-module-2813 .forminator-checkbox-box { display: none !important; }
#forminator-module-2915 input[type="checkbox"]:checked + .forminator-checkbox-box,
#forminator-module-2813 input[type="checkbox"]:checked + .forminator-checkbox-box {
  background: transparent !important; border-color: #38d3a8 !important;
}
#forminator-module-2915 .forminator-checkbox,
#forminator-module-2915 .forminator-checkbox.forminator-consent,
#forminator-module-2813 .forminator-checkbox,
#forminator-module-2813 .forminator-checkbox.forminator-consent {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  margin: 0 !important; padding: 0 !important; border: none !important;
  background: transparent !important; min-height: 0 !important;
}
#forminator-module-2915 input[type="checkbox"],
#forminator-module-2813 input[type="checkbox"] {
  -webkit-appearance: none !important; appearance: none !important;
  width: 16px !important; height: 16px !important; border: 1.5px solid rgba(11,11,13,.2) !important;
  border-radius: 4px !important; background: transparent !important; cursor: pointer !important;
  margin: 0 !important; padding: 0 !important; flex-shrink: 0 !important;
  transition: border-color .15s !important; position: relative !important;
}
[data-theme="dark"] #forminator-module-2915 input[type="checkbox"],
[data-theme="dark"] #forminator-module-2813 input[type="checkbox"] { border-color: rgba(255,255,255,.18) !important; }
#forminator-module-2915 input[type="checkbox"]:checked,
#forminator-module-2813 input[type="checkbox"]:checked {
  border-color: #38d3a8 !important; background: transparent !important;
}
#forminator-module-2915 input[type="checkbox"]:checked::after,
#forminator-module-2813 input[type="checkbox"]:checked::after {
  content: '✓' !important; position: absolute !important;
  top: 50% !important; left: 50% !important; transform: translate(-50%, -50%) !important;
  font-size: 11px !important; color: #38d3a8 !important; line-height: 1 !important;
}
#forminator-module-2915 .forminator-checkbox__label,
#forminator-module-2915 .forminator-consent__label,
#forminator-module-2813 .forminator-checkbox__label,
#forminator-module-2813 .forminator-consent__label { font-size: 13px !important; line-height: 1.5 !important; color: rgba(11,11,13,.6) !important; }
#forminator-module-2915 .forminator-consent__label p,
#forminator-module-2813 .forminator-consent__label p { margin: 0 !important; color: rgba(11,11,13,.6) !important; }
[data-theme="dark"] #forminator-module-2915 .forminator-checkbox__label,
[data-theme="dark"] #forminator-module-2915 .forminator-consent__label,
[data-theme="dark"] #forminator-module-2813 .forminator-checkbox__label,
[data-theme="dark"] #forminator-module-2813 .forminator-consent__label { color: rgba(255,255,255,.65) !important; }
[data-theme="dark"] #forminator-module-2915 .forminator-consent__label p,
[data-theme="dark"] #forminator-module-2813 .forminator-consent__label p { color: rgba(255,255,255,.65) !important; }
#forminator-module-2915 .forminator-consent__label a,
#forminator-module-2813 .forminator-consent__label a { color: #38d3a8 !important; text-decoration: none !important; }
#forminator-module-2915 .forminator-consent__label a:hover,
#forminator-module-2813 .forminator-consent__label a:hover { text-decoration: underline !important; }
#forminator-module-2915 .select2-container,
#forminator-module-2813 .select2-container { width: 100% !important; }
#forminator-module-2915 .select2-container .select2-selection--single,
#forminator-module-2813 .select2-container .select2-selection--single {
  border-radius: 0 !important; border: none !important;
  border-bottom: 1px solid rgba(11,11,13,.15) !important;
  background: transparent !important; height: 36px !important;
  padding: 0 !important; font-size: 14px !important; transition: border-color .2s !important;
}
[data-theme="dark"] #forminator-module-2915 .select2-container .select2-selection--single,
[data-theme="dark"] #forminator-module-2813 .select2-container .select2-selection--single { border-bottom-color: rgba(255,255,255,.15) !important; }
#forminator-module-2915 .select2-container .select2-selection--single:hover,
#forminator-module-2813 .select2-container .select2-selection--single:hover { border-bottom-color: rgba(11,11,13,.3) !important; }
[data-theme="dark"] #forminator-module-2915 .select2-container .select2-selection--single:hover,
[data-theme="dark"] #forminator-module-2813 .select2-container .select2-selection--single:hover { border-bottom-color: rgba(255,255,255,.3) !important; }
#forminator-module-2915 .select2-container .select2-selection--single .select2-selection__rendered,
#forminator-module-2813 .select2-container .select2-selection--single .select2-selection__rendered,
#forminator-module-2915 .select2-container .select2-selection__rendered span,
#forminator-module-2813 .select2-container .select2-selection__rendered span { line-height: 36px !important; padding: 0 !important; color: #111827 !important; text-align: left !important; opacity: 1 !important; filter: none !important; }
#forminator-module-2915 .select2-container .select2-selection--single .select2-selection__placeholder,
#forminator-module-2813 .select2-container .select2-selection--single .select2-selection__placeholder { color: rgba(11,11,13,.3) !important; text-align: left !important; }
#forminator-module-2915 .select2-container .select2-selection__rendered[title],
#forminator-module-2813 .select2-container .select2-selection__rendered[title] { color: #111827 !important; opacity: 1 !important; }
[data-theme="dark"] #forminator-module-2915 .select2-container .select2-selection--single .select2-selection__rendered,
[data-theme="dark"] #forminator-module-2813 .select2-container .select2-selection--single .select2-selection__rendered,
[data-theme="dark"] #forminator-module-2915 .select2-container .select2-selection__rendered span,
[data-theme="dark"] #forminator-module-2813 .select2-container .select2-selection__rendered span { color: #f0f2f5 !important; }
[data-theme="dark"] #forminator-module-2915 .select2-container .select2-selection--single .select2-selection__placeholder,
[data-theme="dark"] #forminator-module-2813 .select2-container .select2-selection--single .select2-selection__placeholder { color: rgba(255,255,255,.25) !important; }
[data-theme="dark"] #forminator-module-2915 .select2-container .select2-selection__rendered[title],
[data-theme="dark"] #forminator-module-2813 .select2-container .select2-selection__rendered[title] { color: #f0f2f5 !important; }
#forminator-module-2915 .select2-container .select2-selection--single .select2-selection__arrow,
#forminator-module-2813 .select2-container .select2-selection--single .select2-selection__arrow { height: 36px !important; right: 0 !important; }
#forminator-module-2915 .select2-container .select2-selection--single .select2-selection__arrow .forminator-icon-chevron-down,
#forminator-module-2813 .select2-container .select2-selection--single .select2-selection__arrow .forminator-icon-chevron-down { color: rgba(11,11,13,.35) !important; }
[data-theme="dark"] #forminator-module-2915 .select2-container .select2-selection--single .select2-selection__arrow .forminator-icon-chevron-down,
[data-theme="dark"] #forminator-module-2813 .select2-container .select2-selection--single .select2-selection__arrow .forminator-icon-chevron-down { color: rgba(255,255,255,.3) !important; }
#forminator-module-2915 .select2-container--open .select2-selection--single,
#forminator-module-2813 .select2-container--open .select2-selection--single { border-bottom-color: #38d3a8 !important; box-shadow: none !important; }
#forminator-module-2915 .forminator-response-message,
#forminator-module-2813 .forminator-response-message { border-radius: 8px !important; font-size: 13px !important; }
#forminator-module-2915 .forminator-response-message.forminator-error,
#forminator-module-2915 .forminator-response-message.forminator-show,
#forminator-module-2813 .forminator-response-message.forminator-error,
#forminator-module-2813 .forminator-response-message.forminator-show {
  display: none !important;
}
#forminator-module-2915 .forminator-error-message,
#forminator-module-2813 .forminator-error-message {
  font-size: 10px !important;
  color: rgba(248,113,113,.55) !important;
  margin-top: 3px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}
#forminator-module-2915 .forminator-has_error .forminator-input,
#forminator-module-2915 .forminator-has_error textarea,
#forminator-module-2813 .forminator-has_error .forminator-input,
#forminator-module-2813 .forminator-has_error textarea {
  border-bottom-color: rgba(248,113,113,.4) !important;
}
#forminator-module-2915:has(input.forminator-input:placeholder-shown) .forminator-button-submit,
#forminator-module-2915:has(input[type="checkbox"]:not(:checked)) .forminator-button-submit,
#forminator-module-2813:has(input.forminator-input:placeholder-shown) .forminator-button-submit,
#forminator-module-2813:has(input[type="checkbox"]:not(:checked)) .forminator-button-submit {
  opacity: 0.3 !important;
  pointer-events: none !important;
  filter: grayscale(.4) !important;
  cursor: not-allowed !important;
  transition: opacity .3s, filter .3s !important;
}
@media (max-width: 680px) {
  #forminator-module-2915 .forminator-field-consent,
  #forminator-module-2813 .forminator-field-consent {
    flex-wrap: wrap !important; justify-content: center !important;
  }
  #forminator-module-2915 .forminator-field-consent > .forminator-field,
  #forminator-module-2813 .forminator-field-consent > .forminator-field {
    flex-wrap: wrap !important; justify-content: center !important;
  }
  #forminator-module-2915 .forminator-button-submit,
  #forminator-module-2915 .forminator-button.forminator-button-submit,
  #forminator-module-2813 .forminator-button-submit,
  #forminator-module-2813 .forminator-button.forminator-button-submit {
    margin-top: 12px !important; width: 100% !important; justify-content: center !important;
  }
}
.grecaptcha-badge { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
/* Request-demo page — hide nav CTA */
.page-id-3341 .tacit-nav-cta-signup { display: none !important; }
.page-id-3341,
.page-id-3341 #content,
.page-id-3341 .tatsu-section,
.page-id-3341 .tatsu-row,
.page-id-3341 .tatsu-column,
.page-id-3341 .tatsu-column-pad-wrap,
.page-id-3341 .tatsu-column-pad,
.page-id-3341 .tatsu-module,
.page-id-3341 .tatsu-text-block-wrap,
.page-id-3341 .tatsu-text-inner { background-color: var(--tacit-bg, #fff) !important; }

/* Select2 dropdown */
.select2-dropdown {
  border-radius: 8px !important;
  border: 1px solid rgba(11,11,13,.10) !important;
  background: #fff !important;
  overflow: hidden !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.1) !important;
}
.select2-results__option {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: 13px !important;
  padding: 8px 12px !important;
  color: #374151 !important;
  transition: background 0.1s ease !important;
}
.select2-results__option--highlighted {
  background: rgba(56,211,168,.10) !important;
  color: #020617 !important;
}
.select2-results__option--selected {
  background: rgba(56,211,168,.08) !important;
  color: #38d3a8 !important;
}
.select2-search--dropdown .select2-search__field {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: 13px !important;
  border-radius: 6px !important;
  border: 1px solid rgba(11,11,13,.12) !important;
  background: #f9fafb !important;
  color: #020617 !important;
  padding: 8px 12px !important;
  outline: none !important;
  margin: 8px !important;
  width: calc(100% - 16px) !important;
  box-sizing: border-box !important;
}
[data-theme="dark"] .select2-dropdown { border-color: rgba(255,255,255,.10) !important; background: #111119 !important; box-shadow: 0 8px 32px rgba(0,0,0,.5) !important; }
[data-theme="dark"] .select2-results__option { color: rgba(255,255,255,.7) !important; }
[data-theme="dark"] .select2-results__option--highlighted { color: #fff !important; }
[data-theme="dark"] .select2-search--dropdown .select2-search__field { border-color: rgba(255,255,255,.12) !important; background: rgba(255,255,255,.04) !important; color: #e8ecf1 !important; }
.select2-search--dropdown .select2-search__field:focus {
  border-color: #38d3a8 !important;
}

/* -- AWSM Jobs — careers listing & single job ---- */
.awsm-job-wrap,
.awsm-job-main {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}
.awsm-job-wrap *,
.awsm-job-main * {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}

/* Filter bar */
.awsm-filter-wrap {
  margin-bottom: 24px !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.awsm-filter-wrap > *:not(.awsm-filter-items) {
  background: transparent !important;
  box-shadow: none !important;
}
.awsm-filter-toggle {
  display: none !important;
}
.awsm-filter-items {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
}

/* Selectric custom selects */
.awsm-selectric-wrapper { min-width: 0 !important; }
.awsm-selectric {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 4px !important;
  padding: 5px 10px !important;
  cursor: pointer !important;
  transition: border-color 0.15s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6px !important;
}
.awsm-selectric:hover { border-color: rgba(255,255,255,.2) !important; }
.awsm-selectric .label { font-size: 12px !important; font-weight: 500 !important; color: rgba(255,255,255,.5) !important; }
.awsm-selectric .awsm-selectric-arrow-drop { font-size: 10px !important; color: rgba(255,255,255,.3) !important; line-height: 1 !important; }
.awsm-selectric-items {
  background: #141418 !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.5) !important;
  overflow: hidden !important;
  margin-top: 2px !important;
  z-index: 999 !important;
}
.awsm-selectric-items ul { list-style: none !important; padding: 2px !important; margin: 0 !important; }
.awsm-selectric-items li { font-size: 12px !important; font-weight: 500 !important; color: rgba(255,255,255,.55) !important; padding: 6px 10px !important; border-radius: 3px !important; cursor: pointer !important; transition: background 0.1s, color 0.1s !important; }
.awsm-selectric-items li:hover { background: rgba(255,255,255,.06) !important; color: #fff !important; }
.awsm-selectric-items li.selected { color: var(--tacit-accent, #38d3a8) !important; background: rgba(56,211,168,.06) !important; }

/* Job listing grid */
.awsm-job-listings {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}
.awsm-job-listing-item,
.awsm-grid-item {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.awsm-job-item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 14px 20px !important;
  background: rgba(255,255,255,.02) !important;
  border: 1px solid rgba(255,255,255,.06) !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  transition: background 0.15s, border-color 0.15s !important;
  color: inherit !important;
}
.awsm-job-item:hover {
  background: rgba(255,255,255,.05) !important;
  border-color: rgba(255,255,255,.12) !important;
}
.awsm-job-post-title {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #fff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
}

/* Spec pills on listing */
.awsm-job-specification-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}
.awsm-job-specification-item {
  display: inline-flex !important;
  gap: 4px !important;
}
.awsm-job-specification-term {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  color: rgba(255,255,255,.5) !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 999px !important;
  padding: 4px 10px !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
}

.awsm-grid-right-col {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex-shrink: 0 !important;
}

/* "More Details" link */
.awsm-job-more-container { flex-shrink: 0 !important; }
.awsm-job-more {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--tacit-accent, #38d3a8) !important;
  white-space: nowrap !important;
  transition: opacity 0.15s ease !important;
}
.awsm-job-item:hover .awsm-job-more { opacity: .8 !important; }

/* Expired job indication */
.awsm-job-expired-item .awsm-job-item {
  opacity: .5 !important;
}
.awsm-job-expired-item .awsm-job-item:hover {
  opacity: .7 !important;
}

/* ---- Single job detail page ---- */
.awsm-job-container {
  max-width: 640px !important;
  margin: 0 auto !important;
  padding: 80px 24px 60px !important;
}
.awsm-job-single-wrap { background: transparent !important; border: none !important; box-shadow: none !important; padding: 0 !important; }
.awsm-job-content { background: transparent !important; padding: 0 !important; }
.awsm-job-head { background: transparent !important; padding: 0 !important; margin: 0 0 20px !important; }
.awsm-jobs-single-title,
h1.entry-title.awsm-jobs-single-title {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: var(--tacit-fg, #fff) !important;
  letter-spacing: -0.02em !important;
  line-height: 1.25 !important;
  margin: 0 0 16px 0 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}

/* Expiry badge */
.awsm-job-expiry-details {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
}
.awsm-job-expiration-label {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: rgba(255,80,80,.5) !important;
}
.awsm-job-expiration-content {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: rgba(255,80,80,.65) !important;
}

/* Job description content */
.awsm-job-entry-content {
  color: rgba(255,255,255,.72) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}
.awsm-job-entry-content:empty::before {
  content: 'No job description available.';
  display: block;
  font-size: 13px;
  color: rgba(255,255,255,.25);
  font-style: italic;
  padding: 12px 0;
}
.awsm-job-entry-content p {
  margin: 0 0 14px 0 !important;
  color: rgba(255,255,255,.72) !important;
}
.awsm-job-entry-content strong {
  color: #fff !important;
  font-weight: 650 !important;
}
.awsm-job-entry-content ul,
.awsm-job-entry-content ol {
  padding-left: 18px !important;
  margin: 0 0 16px 0 !important;
}
.awsm-job-entry-content li {
  color: rgba(255,255,255,.65) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  margin-bottom: 6px !important;
  padding-left: 4px !important;
}
.awsm-job-entry-content li::marker {
  color: var(--tacit-accent, #38d3a8) !important;
}

/* Spec labels on single page */
.awsm-job-specifications-container {
  margin-top: 24px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
}
.awsm-job-specifications-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px 16px !important;
  align-items: baseline !important;
}
.awsm-job-specification-item { display: inline-flex !important; align-items: baseline !important; gap: 3px !important; }
.awsm-job-specification-label,
.awsm-job-specification-label strong {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,.3) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}
.awsm-job-specification-term,
.awsm-job-single-content .awsm-job-specification-term,
.awsm-job-container .awsm-job-specification-term {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: rgba(255,255,255,.6) !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Application form */
.awsm-job-form {
  margin-top: 32px !important;
  padding-top: 32px !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
}
.awsm-job-form-inner {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,.7) !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
.awsm-job-form-inner h2 {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 24px !important;
  letter-spacing: -0.01em !important;
}
.awsm-job-form-group {
  margin-bottom: 16px !important;
}
.awsm-job-form-group label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,.5) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  margin-bottom: 6px !important;
}
.awsm-job-form-group label .awsm-job-form-error { color: var(--tacit-accent, #38d3a8) !important; }
.awsm-job-form-control {
  width: 100% !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 6px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  color: #fff !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  transition: border-color .15s !important;
  box-sizing: border-box !important;
}
.awsm-job-form-control:focus {
  outline: none !important;
  border-color: var(--tacit-accent, #38d3a8) !important;
}
.awsm-job-form-control::placeholder { color: rgba(255,255,255,.25) !important; }
textarea.awsm-job-form-control { resize: vertical !important; min-height: 100px !important; }
.awsm-job-form-group small {
  display: block !important;
  font-size: 11px !important;
  color: rgba(255,255,255,.3) !important;
  margin-top: 4px !important;
}
.awsm-job-inline-group {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
}
.awsm-job-inline-group label {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  font-size: 12px !important;
  color: rgba(255,255,255,.4) !important;
  line-height: 1.5 !important;
}
.awsm-job-inline-group input[type="checkbox"] {
  accent-color: var(--tacit-accent, #38d3a8) !important;
  margin-top: 2px !important;
  flex-shrink: 0 !important;
}
.awsm-job-form-group:last-of-type { margin-top: 24px !important; }
.awsm-application-submit-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--tacit-accent, #38d3a8) url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='16' cy='16' r='12' fill='rgba(255,255,255,.28)'/%3E%3Cpath d='M11 16h10M17.5 12l4 4-4 4' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 6px center / 28px 28px !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  height: var(--btn-md, 44px) !important;
  padding: 0 40px 0 var(--sp-9, 20px) !important;
  font-size: var(--fs-caption, 14px) !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: background-color .18s ease, box-shadow .18s ease, transform .12s ease !important;
  font-family: var(--tacit-font, Inter, -apple-system, system-ui, sans-serif) !important;
  box-shadow: 0 1px 2px rgba(0,0,0,.06) !important;
}
.awsm-application-submit-btn:hover { background-color: #2ec49c !important; box-shadow: 0 2px 8px rgba(0,0,0,.12) !important; }
.awsm-application-submit-btn:active { background-color: #28b590 !important; box-shadow: none !important; transform: scale(.97) !important; }

/* -- AWSM Jobs — light mode overrides ---------- */
html:not([data-theme="dark"]) .awsm-filter-toggle { color: rgba(11,11,13,.45) !important; }
html:not([data-theme="dark"]) .awsm-filter-toggle:hover { color: rgba(11,11,13,.7) !important; }
html:not([data-theme="dark"]) .awsm-selectric {
  background: #fff !important;
  border-color: rgba(11,11,13,.12) !important;
}
html:not([data-theme="dark"]) .awsm-selectric .label { color: rgba(11,11,13,.6) !important; }
html:not([data-theme="dark"]) .awsm-selectric .awsm-selectric-arrow-drop { color: rgba(11,11,13,.3) !important; }
html:not([data-theme="dark"]) .awsm-selectric-items {
  background: #fff !important;
  border-color: rgba(11,11,13,.1) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.1) !important;
}
html:not([data-theme="dark"]) .awsm-selectric-items li { color: rgba(11,11,13,.6) !important; }
html:not([data-theme="dark"]) .awsm-selectric-items li:hover { color: #0b0b0d !important; }
html:not([data-theme="dark"]) .awsm-selectric-items li.selected { color: var(--tacit-accent, #38d3a8) !important; }
html:not([data-theme="dark"]) .awsm-job-item {
  background: #fff !important;
  border-color: rgba(11,11,13,.08) !important;
}
html:not([data-theme="dark"]) .awsm-job-item:hover {
  background: rgba(11,11,13,.02) !important;
  border-color: rgba(11,11,13,.14) !important;
}
html:not([data-theme="dark"]) .awsm-job-post-title { color: #0b0b0d !important; }
html:not([data-theme="dark"]) .awsm-job-specification-term {
  color: rgba(11,11,13,.5) !important;
  background: rgba(11,11,13,.04) !important;
  border-color: rgba(11,11,13,.08) !important;
}
html:not([data-theme="dark"]) .awsm-jobs-single-title { color: #0b0b0d !important; }
html:not([data-theme="dark"]) .awsm-job-entry-content,
html:not([data-theme="dark"]) .awsm-job-entry-content p { color: rgba(11,11,13,.7) !important; }
html:not([data-theme="dark"]) .awsm-job-entry-content strong { color: #0b0b0d !important; }
html:not([data-theme="dark"]) .awsm-job-entry-content li { color: rgba(11,11,13,.6) !important; }
html:not([data-theme="dark"]) .awsm-job-specification-label strong { color: rgba(11,11,13,.4) !important; }
html:not([data-theme="dark"]) .awsm-job-single-content .awsm-job-specification-term { color: rgba(11,11,13,.6) !important; }
html:not([data-theme="dark"]) .awsm-job-form { border-top-color: rgba(11,11,13,.08) !important; }
html:not([data-theme="dark"]) .awsm-job-form-inner { color: rgba(11,11,13,.7) !important; }
html:not([data-theme="dark"]) .awsm-job-form-inner h2 { color: #0b0b0d !important; }
html:not([data-theme="dark"]) .awsm-job-form-group label { color: rgba(11,11,13,.5) !important; }
html:not([data-theme="dark"]) .awsm-job-form-control {
  background: #fff !important;
  border-color: rgba(11,11,13,.12) !important;
  color: #0b0b0d !important;
}
html:not([data-theme="dark"]) .awsm-job-form-control::placeholder { color: rgba(11,11,13,.3) !important; }
html:not([data-theme="dark"]) .awsm-job-form-group small { color: rgba(11,11,13,.35) !important; }
html:not([data-theme="dark"]) .awsm-job-inline-group label { color: rgba(11,11,13,.45) !important; }
html:not([data-theme="dark"]) .awsm-application-submit-btn { color: #fff !important; }
html:not([data-theme="dark"]) .awsm-application-submit-btn:hover { background: #2ec49c !important; }
html:not([data-theme="dark"]) .awsm-job-entry-content:empty::before { color: rgba(11,11,13,.3); }
html:not([data-theme="dark"]) .awsm-job-expiry-details {
  background: rgba(220,50,50,.05) !important;
  border-color: rgba(220,50,50,.12) !important;
}
html:not([data-theme="dark"]) .awsm-job-expiration-label { color: rgba(200,50,50,.6) !important; }
html:not([data-theme="dark"]) .awsm-job-expiration-content { color: rgba(200,50,50,.75) !important; }
html:not([data-theme="dark"]) .awsm-job-specifications-container { border-top-color: rgba(11,11,13,.08) !important; }

/* Responsive — AWSM Jobs */
@media (max-width: 640px) {
  .awsm-job-item {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 16px 18px !important;
  }
  .awsm-grid-right-col {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }
  .awsm-filter-items {
    flex-direction: column !important;
    gap: 8px !important;
  }
  .awsm-job-container {
    padding: 56px 16px 40px !important;
  }
  .awsm-jobs-single-title {
    font-size: 24px !important;
  }
}

/* Generic WordPress page content dark mode */
[data-theme="dark"] .entry-content,
[data-theme="dark"] .page-content,
[data-theme="dark"] .tatsu-module { color: #e8ecf1 !important; }
[data-theme="dark"] .entry-content h1,
[data-theme="dark"] .entry-content h2,
[data-theme="dark"] .entry-content h3,
[data-theme="dark"] .entry-content h4 { color: #f1f5f9 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .entry-content a { color: #5ee8c0 !important; }

/* -- About ------------------------------------- */
[data-theme="dark"] .tacit-about-card { border-color: var(--tacit-border); background: rgba(255,255,255,.03); }
[data-theme="dark"] .tacit-about-card-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-about-card-desc { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-about-heading { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-about-body { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-about-list-item { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-about-logo-pill { border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.85); }
[data-theme="dark"] .tfs-headline { color: #fff; text-shadow: 0 18px 54px rgba(255,255,255,.06); }
[data-theme="dark"] .tfs-card {
  border-color: rgba(255,255,255,.1);
  background: transparent;
  box-shadow: none;
}
[data-theme="dark"] .tfs-eyebrow { color: var(--tacit-accent); }
[data-theme="dark"] .tfs-subline { color: rgba(255,255,255,.82); }
[data-theme="dark"] .tfs-name { color: #fff; }
[data-theme="dark"] .tfs-role { color: #fff; }
[data-theme="dark"] .tfs-credentials { border-top-color: rgba(255,255,255,.15); border-bottom-color: rgba(255,255,255,.10); }
[data-theme="dark"] .tfs-credentials .tfs-cred-row { border-color: rgba(255,255,255,.11); color: rgba(255,255,255,.82); }
[data-theme="dark"] .tfs-cred-row span + span { border-color: rgba(255,255,255,.14); }
[data-theme="dark"] .tfs-copy p { color: rgba(242,245,247,.92); }
[data-theme="dark"] .tfs-copy p:last-child { color: #fff; }
[data-theme="light"] .tfs-step-body { background: rgba(255,255,255,.85); }
[data-theme="light"] .tfs-step-body::before { background: linear-gradient(180deg, transparent, rgba(255,255,255,.85)); }
[data-theme="light"] .tfs-step-title { color: var(--tacit-fg); }
[data-theme="light"] .tfs-step-desc { color: rgba(11,11,13,.65); }
[data-theme="dark"] .tfs-step { box-shadow: 0 0 0 1px rgba(255,255,255,.08); }
[data-theme="dark"] .tfs-team-impact { color: rgba(255,255,255,.7); }
[data-theme="dark"] .tfs-trust span { color: rgba(255,255,255,.9); }
[data-theme="dark"] .tfs-trust span::before { background: rgba(255,255,255,.12) !important; }
[data-theme="dark"] .tacit-about-future-card { border-color: var(--tacit-border); background: rgba(255,255,255,.03); }
[data-theme="dark"] .tacit-about-future-card-title { color: var(--tacit-pill-color); }
[data-theme="dark"] .tacit-about-future-card-desc { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-about-locations-text { color: var(--tacit-fg-light); }

/* -- Industry Case Study ----------------------- */
[data-theme="dark"] .tacit-industry-cs-card { border-color: rgba(255,255,255,.08); background: transparent; }
[data-theme="dark"] .tacit-industry-cs-card:hover { border-color: rgba(255,255,255,.14); box-shadow: 0 8px 32px rgba(0,0,0,.3); }
[data-theme="dark"] .tacit-industry-cs-quote { color: rgba(255,255,255,.75); }

/* -- Pullquote --------------------------------- */
[data-theme="dark"] .tacit-pullquote { border-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-pullquote-text { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-pullquote-company { color: var(--tacit-fg-light); }

/* -- Agentic Cards ----------------------------- */
[data-theme="dark"] .tacit-agentic-card { border-color: rgba(255,255,255,.06); background: rgba(255,255,255,.02); }
[data-theme="dark"] .tacit-agentic-label { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-agentic-desc { color: var(--tacit-fg-light); }

/* -- Blog -------------------------------------- */
[data-theme="dark"] .tacit-blog-content,
[data-theme="dark"] .tacit-blog-post .entry-content,
[data-theme="dark"] .tacit-blog-wrap .entry-content { color: var(--tacit-fg-muted) !important; }
[data-theme="dark"] .tacit-blog-content h2,
[data-theme="dark"] .tacit-blog-content h3,
[data-theme="dark"] .tacit-blog-post h2,
[data-theme="dark"] .tacit-blog-wrap h2,
[data-theme="dark"] .tacit-blog-post .entry-content h2,
[data-theme="dark"] .tacit-blog-wrap .entry-content h2,
[data-theme="dark"] .tacit-blog-post .entry-content h3,
[data-theme="dark"] .tacit-blog-wrap .entry-content h3 { color: #fff !important; }
[data-theme="dark"] .tacit-blog-content strong,
[data-theme="dark"] .tacit-blog-post .entry-content strong,
[data-theme="dark"] .tacit-blog-wrap .entry-content strong { color: #fff !important; }
[data-theme="dark"] .tacit-blog-content blockquote { background: var(--tacit-bg-subtle); color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-blog-content code { background: rgba(255,255,255,.06); color: var(--tacit-fg); }
[data-theme="dark"] .tacit-blog-content th { color: var(--tacit-fg-muted); border-bottom-color: var(--tacit-border); }
[data-theme="dark"] .tacit-blog-content td { border-bottom-color: var(--tacit-border); }
[data-theme="dark"] .tacit-blog-content tr:hover td { background: var(--tacit-bg-subtle); }
[data-theme="dark"] .tacit-blog-header { border-bottom-color: var(--tacit-border); }
[data-theme="dark"] .tacit-blog-meta { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-blog-toc { background: var(--tacit-bg-subtle); border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-blog-toc-title { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-blog-toc a { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-blog-faq-item { border-bottom-color: var(--tacit-border); }
[data-theme="dark"] .tacit-blog-faq-q { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-blog-faq-a { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-blog-lead-magnet { background: var(--tacit-bg-subtle); border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-blog-lead-magnet h4 { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-blog-lead-magnet p { color: var(--tacit-fg-muted); }

body { font-family: var(--tacit-font); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; background-color: var(--tacit-bg); color: var(--tacit-fg); }
html { overflow-x: hidden; }

/* ============================================
   GRADIENT UTILITIES
   ============================================ */
.main-header-text-gradient-old {
  font-size: var(--fs-display);
  background: -webkit-linear-gradient(right, #6ee7b7, #38d3a8, #2c2c2c, #000000);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.main-header-text-gradient-disabled {
  background: linear-gradient(74deg, #000000 0%, #000000 23%, #20cbd4 25%, #38d3a8 30%, #38d3a8 80%);
  background-size: 200% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.main-header-text-gradient-first,
.main-header-text-gradient-second {
  background: linear-gradient(74deg, #20cbd4 0%, #38d3a8 40%, #38d3a8 80%);
  background-size: 200% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.main-header-text-gradient-problem {
  background: linear-gradient(74deg, #ff9301 0%, #ff9301 23%, #f94e1e 50%, #ee220d 80%);
  background-size: 200% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.main-header-text-gradient-problem-alt {
  background: linear-gradient(74deg, #ff9301 0%, #ff9301 25%, #f94e1e 50%, #ee220d 70%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ============================================
   HERO SECTION
   ============================================ */
.tacitx-hero-wrapper-a1 {
  --accent: var(--tacit-accent);
  --accent-deep: var(--tacit-accent-deep);
  --accent-soft: var(--tacit-accent-soft);
  --fg: #020617;
  --fg-muted: #475569;
  --fg-primary: #020617;
  --border-subtle: rgba(11,11,13,.08);
  --shadow-soft: var(--tacit-shadow-lg);
  --hero-radius: var(--tacit-radius);
  --hero-radius-pill: var(--tacit-radius-pill);
  position: relative;
  overflow: hidden;
  min-height: 80vh;
  background: #fff;
  background: linear-gradient(180deg, #fff 0%, #f8fafc 50%, #fff 100%);
  color: #020617;
  --dot-x: -999px;
  --dot-y: -999px;
}
.tacitx-hero-wrapper-a1::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: radial-gradient(circle, rgba(11,11,13,.06) 0.5px, transparent 0.5px) !important;
  background-size: 16px 16px !important;
  -webkit-mask-image: radial-gradient(ellipse 100% 90% at 50% 40%, black 30%, transparent 100%) !important;
  mask-image: radial-gradient(ellipse 100% 90% at 50% 40%, black 30%, transparent 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  display: block !important;
}
.tacitx-hero-wrapper-a1::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(circle, rgba(11,11,13,.18) 0.5px, transparent 0.5px) 0 0 / 16px 16px !important;
  -webkit-mask-image: radial-gradient(circle 160px at var(--dot-x) var(--dot-y), black 0%, transparent 100%) !important;
  mask-image: radial-gradient(circle 160px at var(--dot-x) var(--dot-y), black 0%, transparent 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  transition: opacity 0.3s ease;
  display: block !important;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-a1 {
  position: relative;
  z-index: 2;
  min-height: auto;
  padding: 2em 30px 3em;
  display: flex;
  align-items: center;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-inner-a1 {
  max-width: 90%;
  margin: 0 auto;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0;
}
@media (min-width: 1600px) { .tacitx-hero-wrapper-a1 .tacitx-hero-inner-a1 { max-width: 1440px; } }
.tacitx-hero-wrapper-a1 .tacitx-hero-eyebrow-a1 {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-4);
  font-size: var(--fs-micro);
  margin-bottom: var(--sp-11);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--fg-muted);
  -webkit-font-smoothing: antialiased;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-eyebrow-pill-a1 {
  display: inline-flex !important;
  align-items: center !important;
  gap: var(--sp-3) !important;
  padding: 0 !important;
  border-radius: 0 !important;
  border: none !important;
  font-size: var(--fs-caption) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  background: linear-gradient(105deg, #5ee8c0 0%, #5ee8c0 35%, #8af0d8 50%, #5ee8c0 65%, #5ee8c0 100%) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: var(--tacit-accent) !important;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-eyebrow-dot-a1 {
  width: 7px; height: 7px;
  border-radius: var(--radius-pill);
  background: var(--accent-deep);
  flex-shrink: 0;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-eyebrow-pill-a1:hover {
  box-shadow: none;
  transform: none;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-title-a1 {
  font-family: var(--tacit-font-display) !important;
  font-size: var(--fs-display) !important;
  line-height: 1.12 !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column;
  gap: var(--sp-2);
  background: none !important;
  border: none !important;
  color: rgba(148,163,184,.55) !important;
}
.tacitx-hero-title-a1 > br,
.tacitx-hero-title-a1 > p,
.tacitx-hero-sub-a1 > br {
  display: none !important;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-line-a1 { display: block !important; background: none !important; padding: 0 !important; margin: 0 !important; border: none !important; color: #020617 !important; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 {
  position: relative;
  display: inline-block;
  color: var(--fg-primary, #020617);
}
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char {
  display: inline-block;
  opacity: 0;
  transform: translateY(6px);
  color: #94a3b8;
  text-shadow: 0 0 0 rgba(56, 211, 168, 0);
  animation: tacitx-char-glow 0.38s ease-out forwards;
  will-change: opacity, transform, color, text-shadow;
}
@keyframes tacitx-char-glow {
  0% { opacity: 0; transform: translateY(6px); color: #94a3b8; text-shadow: 0 0 0 rgba(56, 211, 168, 0); }
  55% { opacity: 1; transform: translateY(0); color: var(--accent-deep, #38d3a8); text-shadow: 0 0 10px rgba(56, 211, 168, 0.5); }
  100% { opacity: 1; transform: translateY(0); color: var(--fg-primary, #020617); text-shadow: 0 0 3px rgba(56, 211, 168, 0.18); }
}
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(1) { animation-delay: 0.14s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(2) { animation-delay: 0.17s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(3) { animation-delay: 0.2s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(4) { animation-delay: 0.23s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(5) { animation-delay: 0.26s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(6) { animation-delay: 0.29s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(7) { animation-delay: 0.32s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(8) { animation-delay: 0.35s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(9) { animation-delay: 0.38s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(10) { animation-delay: 0.41s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(11) { animation-delay: 0.44s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(12) { animation-delay: 0.47s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(13) { animation-delay: 0.5s; }
.tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char:nth-of-type(14) { animation-delay: 0.53s; }
@media (prefers-reduced-motion: reduce) {
  .tacitx-hero-wrapper-a1 .tacitx-hero-powered-a1 .tacitx-hero-char {
    opacity: 1; transform: none; animation: none; color: var(--fg-primary, #020617); text-shadow: none;
  }
}
.tacitx-hero-wrapper-a1 .tacitx-hero-sub-a1 {
  margin: var(--sp-10) auto 0 !important;
  font-size: var(--fs-body-lg) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.6 !important;
  color: rgba(71,85,105,.75) !important;
  max-width: 600px;
  font-weight: 400 !important;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-cycle-a1 {
  position: relative;
  height: 1.8em;
  margin: var(--sp-6) auto 0;
  max-width: 600px;
  overflow: hidden;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-cycle-line {
  position: absolute;
  inset: 0;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: var(--fs-body-lg) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.6 !important;
  color: #5ee8c0 !important;
  font-weight: 500 !important;
  opacity: 0;
  transform: translateY(40%);
  transition: opacity 0.5s ease, transform 0.5s ease;
  white-space: nowrap !important;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-cycle-line.active {
  opacity: 1;
  transform: translateY(0);
}
.tacitx-hero-wrapper-a1 .tacitx-hero-cycle-line.exit {
  opacity: 0;
  transform: translateY(-40%);
}
.tacitx-hero-wrapper-a1 .tacitx-hero-kpis-a1 {
  margin-top: var(--sp-12);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  width: 100%;
}
@media (max-width: 900px) {
  .tacitx-hero-wrapper-a1 .tacitx-hero-kpis-a1 { flex-wrap: wrap; gap: var(--sp-8); }
  .tacitx-kpi-divider-a1 { display: none; }
  .tacitx-hero-wrapper-a1 .tacitx-kpi-card-a1 { padding: 0 16px; }
  }
@media (max-width: 900px) and (min-width: 601px) {
  .tacitx-hero-wrapper-a1 .tacitx-hero-title-a1 { font-size: var(--fs-stat); line-height: 1.12; }
  }
@media (max-width: 600px) {
  .tacitx-hero-wrapper-a1 .tacitx-hero-kpis-a1 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-6) 0; }
  .tacitx-kpi-divider-a1 { display: none; }
  .tacitx-hero-wrapper-a1 .tacitx-kpi-card-a1 { padding: var(--sp-3) 0; }
  .tacitx-hero-wrapper-a1 .tacitx-kpi-value-a1 { font-size: var(--fs-body-sm); }
  .tacitx-hero-wrapper-a1 .tacitx-kpi-label-a1 { font-size: var(--fs-pip); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-eyebrow-pill-a1 { font-size: var(--fs-body-sm); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-title-a1 { font-size: clamp(34px, 8vw, 42px); line-height: 1.12; gap: var(--sp-5); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-title-a1 .tacitx-hero-line-a1:last-child { font-size: clamp(26px, 6vw, 32px); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-sub-a1 { font-size: var(--fs-small); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-cycle-line { font-size: var(--fs-small); white-space: normal; text-align: center; }
  .tacitx-hero-wrapper-a1 .tacitx-hero-cycle-a1 { height: 2.4em; }
  .tacitx-hero-wrapper-a1 .tacitx-hero-visual-a1 { max-width: 100%; margin-left: -16px; margin-right: -16px; width: calc(100% + 32px); }
  .tacitx-hero-showcase-a1 { border-radius: 0; }
}
@media (max-width: 480px) {
  .tacitx-hero-wrapper-a1 .tacitx-hero-a1 { padding: 4em 16px 0; }
  .tacitx-hero-wrapper-a1 .tacitx-hero-title-a1 { font-size: clamp(32px, 8vw, 38px); gap: var(--sp-4); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-title-a1 .tacitx-hero-line-a1:last-child { font-size: clamp(24px, 6vw, 28px); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-sub-a1 { font-size: var(--fs-xs); }
  .tacitx-hero-wrapper-a1 .tacitx-btn-a1 { font-size: var(--fs-small); height: var(--btn-md); padding: 0 var(--sp-9); }
  .tacitx-hero-wrapper-a1 .tacitx-btn-primary-a1 { padding-right: 6px; }
  .tacitx-hero-wrapper-a1 .tacitx-hero-costline-a1 { font-size: var(--fs-xxs); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-visual-a1 { margin-left: -16px; margin-right: -16px; width: calc(100% + 32px); }
}
.tacitx-hero-wrapper-a1 .tacitx-kpi-card-a1 {
  padding: 0 var(--sp-11);
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: var(--sp-2);
}
.tacitx-hero-wrapper-a1 .tacitx-kpi-value-a1 { font-size: var(--fs-component); font-weight: 700; color: var(--fg); letter-spacing: -0.02em; }
.tacitx-hero-wrapper-a1 .tacitx-kpi-label-a1 { font-size: var(--fs-micro); font-weight: 500; letter-spacing: 0.06em; color: var(--fg-muted); text-transform: uppercase; }
.tacitx-kpi-divider-a1 { width: 1px; height: var(--sp-12); background: rgba(148, 163, 184, 0.25); flex-shrink: 0; align-self: center; }
.tacitx-hero-costline-a1 { margin-top: var(--sp-9); font-size: var(--fs-caption); font-weight: 450; color: var(--fg-muted); text-align: center; letter-spacing: 0.01em; }
.tacitx-hero-wrapper-a1 .tacitx-hero-actions-a1 { margin-top: var(--sp-12); margin-bottom: 0; display: flex; flex-direction: column; align-items: center; gap: var(--sp-7); }
.tacitx-hero-wrapper-a1 .tacitx-hero-buttons-a1 { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--sp-5); }
.tacitx-hero-wrapper-a1 .tacitx-hero-reassurance-a1 { font-size: 12px !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; margin-top: var(--sp-6) !important; color: rgba(148,163,184,.6) !important; text-align: center !important; letter-spacing: .01em !important; font-weight: 400 !important; }
.tacitx-hero-wrapper-a1 .tacitx-hero-note-a1 { font-size: var(--fs-xs); margin-top: var(--sp-5); color: var(--fg-muted); text-align: center; max-width: 600px; }
.tacitx-hero-wrapper-a1 .tacitx-btn-a1 {
  border-radius: 999px;
  margin-top: 0;
  margin-bottom: 0 !important;
  font-size: var(--fs-caption);
  font-weight: 600;
  height: var(--btn-md);
  padding: 0 var(--sp-9);
  border: none;
  cursor: pointer;
  background: transparent;
  color: var(--fg);
  display: inline-flex;
  align-items: center;
  gap: var(--sp-4);
  text-decoration: none;
  font-family: var(--tacit-font);
  transition: all 0.2s;
  box-sizing: border-box;
}
.tacitx-hero-wrapper-a1 .tacitx-btn-a1:active { transform: scale(0.97); }
.tacitx-hero-wrapper-a1 .tacitx-btn-primary-a1 {
  background: var(--tacit-accent, #38d3a8);
  color: #fff !important;
  padding-right: 6px;
}
.tacitx-hero-wrapper-a1 .tacitx-btn-primary-a1:hover { background: #2ec49c; box-shadow: 0 1px 3px rgba(0,0,0,.1); }
.tacitx-hero-wrapper-a1 .tacitx-btn-primary-a1:active { transform: scale(0.97); }
.tacitx-hero-wrapper-a1 .tacitx-btn-secondary-a1 { background: #fff; color: #111827; border: 1px solid rgba(11,11,13,.15); box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.tacitx-hero-wrapper-a1 .tacitx-btn-secondary-a1:hover { background: #f8fafc; border-color: rgba(11,11,13,.25); box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.tacitx-hero-wrapper-a1 .tacitx-hero-visual-a1 { margin-top: var(--sp-9); width: 100%; max-width: 1320px; margin-left: auto; margin-right: auto; }
.tacitx-hero-video-a1 {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  border-radius: var(--radius-2xl);
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,.1), 0 0 0 1px rgba(11,11,13,.06);
}
.tacitx-hero-video-a1 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Hero tabbed showcase */
.tacitx-hero-tabs-a1 {
  display: flex;
  justify-content: center;
  gap: var(--sp-4);
  margin-top: var(--sp-9);
  margin-bottom: 0;
}
.tacitx-hero-tab-a1 {
  font-family: var(--tacit-font);
  font-size: var(--fs-small);
  font-weight: 500;
  height: var(--btn-md);
  padding: 0 var(--sp-9);
  border-radius: var(--radius-pill);
  border: 1px solid rgba(11,11,13,.1);
  background: #fff;
  color: rgba(11,11,13,.45);
  cursor: pointer;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
}
.tacitx-hero-tab-a1:hover {
  border-color: rgba(11,11,13,.18);
  color: rgba(11,11,13,.65);
  transform: scale(1.03);
}
.tacitx-hero-tab-a1.active {
  background: #38d3a8;
  border-color: #38d3a8;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(56, 211, 168, 0.25);
}
.tacitx-hero-showcase-a1 {
  position: relative;
  width: 100%;
  border-radius: var(--radius-2xl);
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,.1), 0 0 0 1px rgba(11,11,13,.06);
  background: #f0f1f3;
  aspect-ratio: 16 / 9.5;
}
.tacitx-hero-showcase-panel-a1 {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}
.tacitx-hero-showcase-panel-a1.active {
  opacity: 1;
  pointer-events: auto;
}
.tacitx-hero-showcase-img-a1 {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tacitx-hero-showcase-placeholder-a1 {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--sp-14);
  text-align: center;
  background: #f0f1f3;
}
.tacitx-hero-showcase-placeholder-a1 span {
  font-size: var(--fs-body-sm);
  font-weight: 500;
  color: rgba(11,11,13,.3);
  max-width: 460px;
  line-height: 1.6;
}
@media (max-width: 600px) {
  .tacitx-hero-tabs-a1 { flex-wrap: wrap; gap: var(--sp-3); }
  .tacitx-hero-tab-a1 { font-size: var(--fs-xxs); height: 30px; padding: 0 var(--sp-7); }
}
@media (max-width: 480px) {
  .tacitx-hero-tab-a1 { font-size: var(--fs-micro); height: 28px; padding: 0 10px; min-width: auto; }
  .tacit-hero-tab-switch { width: 28px; height: 28px; }
}

/* Hero character slot animation */
.tacitx-hero-wrapper-a1 .tacitx-hero-title-a1,
.tacitx-hero-wrapper-a1 .tacitx-hero-line-a1,
.tacitx-hero-wrapper-a1 .tacitx-hero-sub-a1,
.tacitx-hero-wrapper-a1 .tacitx-hero-reassurance-a1,
.tacitx-hero-wrapper-a1 .tacitx-hero-actions-a1,
.tacitx-hero-wrapper-a1 .tacitx-hero-buttons-a1 { background: none !important; }
.tacitx-hero-slot {
  display: inline-block !important;
  overflow: hidden !important;
  vertical-align: top !important;
  width: 0;
  height: 1.15em;
  transition: width 0.4s cubic-bezier(.22,1,.36,1);
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}
.tacitx-hero-slot-char {
  display: inline-block;
  color: #38d3a8 !important;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.22s cubic-bezier(.4,0,.2,1), transform 0.38s cubic-bezier(.22,1,.36,1);
}
.tacitx-hero-slot-char.is-exit {
  opacity: 0;
  transform: translateY(-100%);
}
.tacitx-hero-slot-char.is-enter {
  opacity: 0;
  transform: translateY(100%);
}
@media (prefers-reduced-motion: reduce) {
  .tacitx-hero-slot,
  .tacitx-hero-slot-char { transition: none; }
  .tacitx-hero-slot-char.is-exit,
  .tacitx-hero-slot-char.is-enter { opacity: 1; transform: none; }
}

.tacitx-hero-wrapper-a1 .tacitx-hero-logos-a1 { margin-top: var(--sp-13); margin-bottom: var(--sp-12); text-align: center; width: 100%; overflow: hidden; }
.tacitx-hero-logos-a1 > .tv2-proof-marquee { width: 100%; flex: none; }
.tacitx-hero-wrapper-a1 .tacitx-hero-logos-label-a1 { font-size: 10px !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; color: rgba(148,163,184,.55) !important; font-weight: 500 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; margin-bottom: calc(var(--sp-10) + 10px) !important; text-align: center !important; width: 100% !important; display: block !important; }
.tacitx-hero-wrapper-a1 .tacitx-hero-logos-row-a1 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  flex-wrap: nowrap;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-logo-a1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 0 var(--sp-9);
  border-right: 1px solid rgba(11,11,13,.08);
  text-decoration: none;
}
.tacitx-hero-wrapper-a1 .tacitx-hero-logo-a1:last-child { border-right: none; }
.tacitx-hero-wrapper-a1 .tacitx-hero-logo-name-a1 { font-size: var(--fs-body-sm); font-weight: 640; color: var(--fg, #18181b); letter-spacing: -0.01em; white-space: nowrap; }
.tacitx-hero-wrapper-a1 .tacitx-hero-logo-industry-a1 { font-size: var(--fs-micro); font-weight: 500; color: var(--fg-muted, #9ca3af); text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; }
.tacitx-hero-wrapper-a1 .tacitx-hero-logo-others-a1 .tacitx-hero-logo-name-a1 { font-weight: 480; color: var(--fg-muted, #9ca3af); font-size: var(--fs-small); }
@media (max-width: 900px) {
  .tacitx-hero-wrapper-a1 .tacitx-hero-logos-row-a1 { flex-wrap: wrap; justify-content: center; gap: var(--sp-4) 0; }
  .tacitx-hero-wrapper-a1 .tacitx-hero-logo-a1 { padding: var(--sp-2) var(--sp-6); border-right: none; }
  .tacitx-hero-wrapper-a1 .tacitx-hero-logo-name-a1 { font-size: var(--fs-small); }
}
.tacitx-hero-wrapper-a1 .tacitx-divider-arrow-a1 { margin-top: var(--sp-2); font-size: var(--fs-body-lg); color: var(--fg-muted); }

/* ============================================
   HERO TABS / SWITCH
   ============================================ */
.tacit-hero-tabs-root { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: var(--sp-9); }
.tacit-hero-toggle-radio { position: absolute; opacity: 0; pointer-events: none; }
.tacit-hero-tabs-container { display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-6); background: transparent; border-radius: var(--radius-pill); padding: var(--sp-2); margin-bottom: var(--sp-5); }
.tacit-hero-tabs-container p { margin: 0; padding: 0; display: contents; }
.tacit-hero-tab { display: inline-flex; align-items: center; height: var(--btn-md); padding: 0 16px; border-radius: var(--radius-pill); cursor: pointer; transition: all 0.2s ease-in-out; font-size: var(--fs-xs); font-weight: 500; color: #666666; gap: var(--sp-4); background: #ffffff; min-width: 140px; justify-content: center; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.04); user-select: none; box-sizing: border-box; }
.tacit-hero-tab:hover { box-shadow: 0 5px 14px rgba(0, 0, 0, 0.08); transform: translateY(-1px); }
.tacit-hero-tab-icon { width: 22px; height: 22px; transition: transform 0.2s ease-in-out; }
.tacit-hero-tab-icon--dashboard { width: 28px; height: 13px; }
.tacit-hero-tab-icon--companion { width: 20px; height: 20px; }
.tacit-hero-tab-switch { width: var(--sp-12); height: var(--sp-12); border-radius: var(--radius-pill); background: #ffffff; display: flex; align-items: center; justify-content: center; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.04); flex-shrink: 0; }
.tacit-hero-tab-arrow { font-size: var(--fs-caption); line-height: 1; display: block; }
.tacit-hero-tagline { margin-top: var(--sp-5); margin-bottom: 0; font-size: var(--fs-xxs); font-weight: 500; text-align: center; color: #333333; line-height: 1.4; }
.tacit-hero-image-container { position: relative; width: 100%; max-width: 80%; margin: -10px auto 0; aspect-ratio: 16 / 9; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.tacit-hero-image { position: absolute; inset: 0; margin: auto; width: 100%; height: 100%; object-fit: contain; display: none; }
#tacit-hero-toggle-dashboard:checked ~ .tacit-hero-tabs-container .tacit-hero-tab--dashboard { border-color: #38d3a8; box-shadow: 0 7px 18px rgba(56, 211, 168, 0.35); color: #111111; font-weight: 600; }
#tacit-hero-toggle-dashboard:checked ~ .tacit-hero-tabs-container .tacit-hero-tab--dashboard .tacit-hero-tab-icon { transform: scale(1.1); }
#tacit-hero-toggle-dashboard:checked ~ .tacit-hero-image-container #tacit-hero-image-dashboard { display: block; }
#tacit-hero-toggle-companion:checked ~ .tacit-hero-tabs-container .tacit-hero-tab--companion { border-color: #38d3a8; box-shadow: 0 7px 18px rgba(56, 211, 168, 0.35); color: #111111; font-weight: 600; }
#tacit-hero-toggle-companion:checked ~ .tacit-hero-tabs-container .tacit-hero-tab--companion .tacit-hero-tab-icon { transform: scale(1.1); }
#tacit-hero-toggle-companion:checked ~ .tacit-hero-image-container #tacit-hero-image-companion { display: block; }


/* ============================================
   SHARED BLOCK BASE
   All new blocks use .tacit-block as wrapper
   ============================================ */
.tacit-block {
  max-width: var(--tacit-max-width);
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0;
  margin-bottom: 0;
  padding: 104px var(--sp-12);
  box-sizing: border-box;
  float: none !important;
  font-family: var(--tacit-font);
  color: var(--tacit-fg);
  -webkit-font-smoothing: antialiased;
}
.tacit-block * { box-sizing: border-box; }
@media (min-width: 1600px) { .tacit-block { max-width: 1440px; } }

.tacit-section-number {
  font-size: var(--fs-xxs);
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--tacit-accent);
  margin-bottom: var(--sp-3);
}
.tacit-section-eyebrow {
  font-size: 11px !important;
  font-weight: 600 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: inherit !important;
  opacity: 0.55;
  margin-top: var(--sp-6) !important;
  margin-bottom: var(--sp-8) !important;
  text-align: center;
}
.tacit-section-title {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: var(--fs-h1) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  color: inherit !important;
  margin: 0 auto calc(var(--sp-9) + 12px) auto !important;
  text-align: center;
}
.tacit-section-desc {
  font-size: var(--fs-body) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.6 !important;
  color: var(--tacit-fg-muted) !important;
  max-width: 620px;
  margin: 0 auto !important;
  text-align: center;
  font-weight: 400 !important;
}
.tacit-standards-line {
  margin-top: var(--sp-12) !important;
  padding-top: var(--sp-8);
  border-top: 1px solid rgba(255,255,255,.06);
  font-size: var(--fs-xs);
  font-weight: 600;
  letter-spacing: .08em;
  color: var(--tacit-accent, #38d3a8) !important;
  opacity: .5;
}
.tacit-build-card {
  max-width: 680px;
  margin: 0 auto;
  padding: var(--sp-16) var(--sp-14);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: var(--radius-3xl, 20px);
  background: rgba(255,255,255,.02);
  text-align: center;
}
.tacit-build-card .tacit-section-title {
  font-size: var(--fs-h2) !important;
  margin-bottom: var(--sp-10) !important;
}
.tacit-build-card .tacit-section-desc strong {
  color: var(--tacit-accent, #38d3a8) !important;
  font-weight: 700 !important;
}
@media (max-width: 640px) {
  .tacit-build-card { padding: var(--sp-12) var(--sp-8); }
}

/* ============================================
   SOCIAL PROOF BAR
   ============================================ */
.tacit-proof-logos {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-12);
  flex-wrap: wrap;
}

/* ============================================
   FEATURE SECTIONS (Numbered, with GIF area)
   ============================================ */
.tacit-feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-15);
  align-items: center;
  margin-bottom: var(--sp-15);
}
.tacit-feature:last-child { margin-bottom: 0; }
.tacit-feature--reverse { direction: rtl; }
.tacit-feature--reverse > * { direction: ltr; }
.tacit-feature-text { display: flex; flex-direction: column; gap: var(--sp-5); }
.tacit-feature-number {
  display: inline-block;
  font-size: var(--fs-micro);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(11,11,13,.25);
  letter-spacing: .04em;
}
.tacit-feature-eyebrow {
  font-size: 11px !important;
  font-weight: 600 !important;
  font-style: normal !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: var(--tacit-accent, #38d3a8) !important;
  line-height: 1.4 !important;
  margin-bottom: 8px !important;
}
.tacit-feature-title {
  font-size: var(--fs-h2) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  letter-spacing: -0.02em !important;
  color: inherit !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  margin: 0;
}
.tacit-feature-desc {
  font-size: var(--fs-body-sm) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.65 !important;
  color: rgba(11,11,13,.6) !important;
  max-width: 480px;
}
.tacit-feature-visual {
  border-radius: var(--radius-2xl);
  overflow-y: auto;
  overflow-x: hidden;
  background: #fff;
  border: 1px solid rgba(11,11,13,.04);
  aspect-ratio: 4 / 3;
  display: block;
  position: relative;
  scrollbar-width: thin;
  scrollbar-color: rgba(11,11,13,.15) transparent;
}
.tacit-feature-visual img,
.tacit-feature-visual video {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--radius-2xl);
}
.tacit-feature-visual:has(> img) {
  background: transparent;
  border-color: transparent;
}
.tacit-feature-visual > img {
  margin-bottom: 0;
}
.tacit-feature-visual:has(.tacit-feature-placeholder) {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.tacit-feature-visual:has(.tacit-feature-grid) {
  background: transparent;
  border-color: transparent;
}
.tacit-feature-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  width: 100%;
}
.tacit-feature-grid img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid rgba(11,11,13,.08);
  transition: transform .25s ease, box-shadow .25s ease;
}
.tacit-feature-grid img:hover {
  transform: scale(1.02);
  box-shadow: 0 4px 20px rgba(0,0,0,.1);
  z-index: 1;
  position: relative;
}
[data-theme="dark"] .tacit-feature-grid img {
  border-color: rgba(255,255,255,.1);
}
[data-theme="dark"] .tacit-feature-grid img:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,.4);
}
.tacit-feature-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: var(--sp-9);
  text-align: center;
  width: 100%;
  height: 100%;
  background: rgba(11,11,13,.025);
  border-radius: var(--radius-2xl);
}
.tacit-feature-placeholder svg {
  width: 32px;
  height: 32px;
  opacity: .2;
}
.tacit-feature-placeholder span {
  font-size: var(--fs-micro);
  line-height: 1.5;
  color: rgba(11,11,13,.3);
  max-width: 280px;
}
[data-theme="dark"] .tacit-feature-placeholder { background: rgba(255,255,255,.025); }
[data-theme="dark"] .tacit-feature-placeholder span { color: rgba(255,255,255,.3); }
[data-theme="dark"] .tacit-feature-placeholder svg { stroke: rgba(255,255,255,.2); }
.tacit-companion-visual {
  margin-top: var(--sp-12);
  border-radius: var(--radius-2xl);
  overflow: hidden;
  background: #fafafa;
  border: 1px solid rgba(11,11,13,.06);
  aspect-ratio: 16 / 9;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.tacit-companion-visual img,
.tacit-companion-visual video { width: 100%; height: 100%; object-fit: cover; border-radius: var(--radius-2xl); }
[data-theme="dark"] .tacit-companion-visual { background: var(--tacit-bg-deep); border-color: var(--tacit-card-border); }
.tacit-feature-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: var(--sp-5);
}
.tacit-feature-pill {
  font-size: 11px;
  font-weight: 520;
  padding: 4px 8px;
  border-radius: var(--radius-pill);
  background: transparent;
  color: rgba(11,11,13,.55);
  letter-spacing: 0.01em;
  transition: all .2s ease;
  border: 1px solid rgba(11,11,13,.14);
}
.tacit-feature-pill:hover {
  border-color: rgba(11,11,13,.32);
  color: rgba(11,11,13,.82);
}

#features { padding-left: calc(var(--sp-12) * 0.9); padding-right: calc(var(--sp-12) * 0.9); }

.tacit-ftabs.no-transition *,
.tacit-ftabs.no-transition *::before,
.tacit-ftabs.no-transition *::after { transition: none !important; animation: none !important; }
.tv2-roles.no-transition *,
.tv2-roles.no-transition *::before,
.tv2-roles.no-transition *::after { transition: none !important; animation: none !important; }

/* ============================================
   FEATURE TABS (Vertical sidebar + large visual)
   ============================================ */
.tacit-ftabs {
  display: grid;
  grid-template-columns: 400px 1fr;
  grid-template-rows: 1fr;
  align-items: stretch;
  gap: 0;
  margin-top: var(--sp-15);
  height: 520px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

/* -- Sidebar (vertical tab list) -------------- */
.tacit-ftabs-sidebar {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 10px;
  overflow-y: auto;
  scrollbar-width: none;
  min-height: 0;
  padding-top: 24px;
}
.tacit-ftabs > p, .tacit-ftabs-sidebar > p, .tacit-ftabs > br, .tacit-ftabs-sidebar > br { display: none !important; pointer-events: none !important; position: absolute !important; width: 0 !important; height: 0 !important; }
.tacit-ftabs-sidebar::-webkit-scrollbar { display: none; }
.tacit-ftabs-btn {
  display: flex;
  align-items: flex-start;
  gap: var(--sp-6);
  padding: 12px var(--sp-8) 12px 0;
  border: none;
  background: none;
  text-align: left;
  cursor: pointer;
  font-family: var(--tacit-font);
}
.tacit-ftabs-indicator {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 2px;
  background: rgba(11,11,13,.08);
  border-radius: var(--radius-xs);
  transition: background 0.15s;
}
.tacit-ftabs-btn.active .tacit-ftabs-indicator {
  background: var(--tacit-accent, #38d3a8);
  width: 3px;
}
.tacit-ftabs-btn-inner {
  padding-left: var(--sp-7);
}
.tacit-ftabs-btn-title {
  font-size: var(--fs-body-sm);
  font-weight: 650;
  color: var(--tacit-fg-light);
  line-height: 1.3;
  transition: color 0.2s;
}
.tacit-ftabs-btn:hover .tacit-ftabs-btn-title { color: var(--tacit-fg); }
.tacit-ftabs-btn.active .tacit-ftabs-btn-title {
  color: var(--tacit-fg);
  font-size: var(--fs-body);
}
.tacit-ftabs-btn-desc {
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--tacit-fg-muted);
  margin: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.18s ease;
}
.tacit-ftabs-btn.active .tacit-ftabs-btn-desc {
  max-height: 200px;
  opacity: 1;
  margin: var(--sp-3) 0 0;
  transition: opacity 0.2s 0.05s ease;
}
.tacit-ftabs-btn-pills {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  margin-top: 0;
  transition: opacity 0.18s ease;
}
.tacit-ftabs-btn.active .tacit-ftabs-btn-pills {
  max-height: 200px;
  opacity: 1;
  margin-top: var(--sp-4);
  transition: opacity 0.2s 0.08s ease;
}

/* -- Stage (large visual area) ---------------- */
.tacit-ftabs-stage {
  border-radius: var(--radius-3xl);
  overflow: hidden;
  background: transparent;
  border: none;
  position: relative;
  height: 100%;
}
@media (min-width: 1200px) { .tacit-ftabs-stage { height: 100%; } }
.tacit-ftabs-panel {
  display: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  animation: ftabFadeIn 0.3s ease;
}
.tacit-ftabs-panel.active { display: flex; align-items: center; justify-content: center; }
.tacit-ftabs-panel img,
.tacit-ftabs-panel video { width: 100%; height: 100%; object-fit: cover; }
video.tacit-ftabs-video { width: 100%; height: 100%; object-fit: cover; object-position: center center; display: block; border: none; outline: none; border-radius: 12px; }
.tacit-ftabs-panel .tacit-ftabs-hint { position: absolute; bottom: 10px; right: 12px; display: flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 500; font-family: var(--tacit-font, sans-serif); color: #fff; background: rgba(0,0,0,0.4); backdrop-filter: blur(4px); padding: 4px 10px; border-radius: 6px; opacity: 0; transition: opacity 0.25s; pointer-events: none; z-index: 2; }
.tacit-ftabs-panel .tacit-ftabs-hint svg { width: 13px; height: 13px; }
.tacit-ftabs-panel:hover .tacit-ftabs-hint { opacity: 1; }
.tacit-ftabs-panel.is-paused .tacit-ftabs-hint { opacity: 1; }
#vid-connect { clip-path: inset(0 0 5px 0 round 0 0 var(--radius-3xl) var(--radius-3xl)); }
#vid-analyze { clip-path: inset(0 0 5px 0 round 0 0 var(--radius-3xl) var(--radius-3xl)); }
#vid-generate { clip-path: inset(0 3px 3px 0 round 0 0 var(--radius-3xl) var(--radius-3xl)); }
@keyframes ftabFadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* -- Dark mode -------------------------------- */
[data-theme="dark"] .tacit-ftabs-indicator { background: rgba(255,255,255,.08); }
[data-theme="dark"] .tacit-ftabs-btn.active .tacit-ftabs-indicator { background: var(--tacit-accent); }
[data-theme="dark"] .tacit-ftabs-btn-title { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-ftabs-btn:hover .tacit-ftabs-btn-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-ftabs-btn.active .tacit-ftabs-btn-title { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-ftabs-btn-desc { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-ftabs-stage { background: var(--tacit-bg-deep); border-color: var(--tacit-card-border); }

/* -- Mobile detail mirror (below video) ------- */
.tacit-ftabs-mobile-detail { display: none; grid-column: 1 / -1; }
.tacit-ftabs-mobile-desc {
  font-size: var(--fs-body-sm); line-height: 1.55; color: var(--tacit-fg-soft);
  margin: 0 0 var(--sp-5) 0;
}
.tacit-ftabs-mobile-detail .tacit-feature-pills { display: flex; flex-wrap: wrap; gap: 6px; }

/* -- Responsive ------------------------------- */
@media (max-width: 1024px) {
  .tacit-ftabs { grid-template-columns: 1fr !important; gap: var(--sp-8); height: auto !important; overflow: visible !important; }
  .tacit-ftabs-sidebar { position: static !important; flex-direction: column !important; overflow-x: visible !important; gap: 0; border-bottom: none; padding-bottom: 0; }
  .tacit-ftabs-btn { flex-shrink: 1; padding: var(--sp-5) 0; border-bottom: 1px solid var(--tacit-card-border, rgba(255,255,255,.06)); }
  .tacit-ftabs-btn:last-child { border-bottom: none; }
  .tacit-ftabs-indicator { left: 0; top: 0; bottom: 0; right: auto; width: 2px !important; height: auto !important; }
  .tacit-ftabs-btn.active .tacit-ftabs-indicator { width: 3px !important; height: auto !important; }
  .tacit-ftabs-btn-inner { padding-left: var(--sp-6); }
  .tacit-ftabs-btn-desc { display: block; }
  .tacit-ftabs-btn-pills { display: flex; flex-wrap: wrap; gap: 6px; }
  .tacit-ftabs-btn-title { font-size: var(--fs-body-sm); white-space: normal; }
  .tacit-ftabs-btn.active .tacit-ftabs-btn-title { font-size: var(--fs-body-sm); }
  .tacit-ftabs-stage { aspect-ratio: 16 / 9; height: auto; border-radius: var(--radius-xl); }
  .tacit-ftabs-mobile-detail { display: none !important; }
}
@media (max-width: 480px) {
  .tacit-ftabs { margin-top: var(--sp-12); gap: var(--sp-6); }
  .tacit-ftabs-btn-title { font-size: var(--fs-small); }
  .tacit-ftabs-stage { aspect-ratio: 16 / 9; }
}

@media (max-width: 768px) {
  .tacit-block { padding: 72px var(--sp-8); }
  .tacit-block-wrap { padding: 72px var(--sp-8); }
  .tacit-section-title { font-size: var(--fs-title-lg) !important; line-height: 1.18 !important; }
  .tacit-section-desc { font-size: var(--fs-body-sm) !important; }
  .tacit-feature { grid-template-columns: 1fr; gap: var(--sp-11); }
  .tacit-feature--reverse { direction: ltr; }
  .tacit-feature-title { font-size: var(--fs-h3) !important; }
  .tacit-feature-desc { font-size: var(--fs-caption) !important; }
  .tacit-feature-visual { width: 100%; max-width: 100%; border-radius: var(--radius-lg); }
  .tacit-feature-placeholder { width: 100%; }
  .tacit-feature-grid { gap: 4px; }
  .tacit-feature-grid img { border-radius: 6px; }
  .tacit-feature-pills { display: none; }
}
@media (max-width: 480px) {
  .tacit-block { padding: 56px var(--sp-7); }
  .tacit-block-wrap { padding: 56px var(--sp-7); }
  .tacit-section-title { font-size: var(--fs-title-sm) !important; line-height: 1.2 !important; }
  .tacit-section-eyebrow { font-size: var(--fs-micro) !important; }
  .tacit-section-desc { font-size: var(--fs-body-sm) !important; line-height: 1.6 !important; }
  .tacit-feature-title { font-size: var(--fs-body-lg) !important; }
  .tacit-feature-desc { font-size: var(--fs-small) !important; }
}

/* ============================================
   PRIVATE AI / SECURITY SECTION
   ============================================ */
.tacit-security {
  border-radius: var(--tacit-radius);
  background: #fff;
  color: #18181b;
  padding: var(--sp-14);
  max-width: var(--tacit-max-width);
  margin: 0 auto;
}
.tacit-security-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-9);
  margin-top: var(--sp-13);
  margin-top: var(--sp-12);
}
.tacit-security-card {
  border-radius: var(--radius-2xl);
  border: 1px solid rgba(11,11,13,.05);
  background: #fff;
  padding: var(--sp-10);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.tacit-security-card:hover {
  border-color: rgba(56, 211, 168, 0.3);
  box-shadow: var(--tacit-shadow-sm);
}
.tacit-security-icon {
  width: var(--sp-12);
  height: var(--sp-12);
  border-radius: var(--radius-lg);
  background: rgba(56, 211, 168, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--sp-7);
  font-size: var(--fs-body-lg);
}
.tacit-security-card-title {
  font-size: var(--fs-caption);
  font-weight: 600;
  color: #0a0a0a;
  margin-bottom: var(--sp-3);
}
.tacit-security-card-desc {
  font-size: var(--fs-xs);
  line-height: 1.5;
  color: #52525b;
}
.tacit-security-badges {
  display: flex;
  justify-content: center;
  gap: var(--sp-14);
  margin-top: var(--sp-12);
}
.tacit-security-badges-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--sp-4);
}
.tacit-security-badges-label {
  font-size: var(--fs-pip);
  font-weight: 650;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: rgba(11,11,13,.3);
}
.tacit-security-badges-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--sp-3);
}
.tacit-security-badge {
  display: inline-flex;
  align-items: center;
  padding: var(--sp-2) var(--sp-5);
  border-radius: var(--radius);
  border: 1px solid rgba(11,11,13,.06);
  font-size: var(--fs-xxs);
  font-weight: 560;
  color: rgba(11,11,13,.55);
  letter-spacing: 0.01em;
}
@media (max-width: 768px) {
  .tacit-security { padding: var(--sp-12) var(--sp-9); }
  .tacit-security-grid { grid-template-columns: 1fr; }
  .tacit-security-badges { flex-direction: column; gap: var(--sp-9); }
}
@media (max-width: 480px) {
  .tacit-security { padding: var(--sp-10) var(--sp-8); }
  .tacit-security-title { font-size: var(--fs-body-sm); }
  .tacit-security-desc { font-size: var(--fs-xs); }
}

/* ============================================
   CASE STUDIES
   ============================================ */
.tacit-casestudies { overflow: hidden; }
.tacit-casestudies > .tacit-section-eyebrow,
.tacit-casestudies > .tacit-section-title,
.tacit-casestudies > .tacit-cs-viewall { text-align: center; }
.tacit-casestudies > .tacit-section-title { color: var(--tacit-fg); font-weight: 700; }
.tacit-cs-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  margin-top: var(--sp-14);
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid var(--tacit-card-border, rgba(11,11,13,.08));
  border-radius: var(--tacit-radius-lg, 16px);
  overflow: hidden;
}
.tacit-cs-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: var(--sp-12) var(--sp-8);
  text-decoration: none;
  position: relative;
  transition: background 0.2s;
  border-right: 1px solid var(--tacit-card-border, rgba(11,11,13,.08));
}
.tacit-cs-tile:last-child { border-right: none; }
.tacit-cs-tile:hover { background: var(--tacit-bg-alt, #f8fafc); }
.tacit-cs-tile-tag {
  font-size: var(--fs-xxs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--tacit-fg-light, #9ca3af);
  margin-bottom: var(--sp-8);
}
.tacit-cs-tile-name {
  font-size: var(--fs-body-sm);
  font-weight: 700;
  color: var(--tacit-fg, #18181b);
  line-height: 1.25;
  margin-bottom: var(--sp-4);
}
.tacit-cs-tile-stat {
  font-size: var(--fs-small);
  font-weight: 500;
  color: var(--tacit-accent, #38d3a8);
  margin-bottom: var(--sp-6);
}
.tacit-cs-tile-arrow {
  font-size: var(--fs-body);
  color: var(--tacit-fg-light, #9ca3af);
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity 0.2s, transform 0.2s;
}
.tacit-cs-tile:hover .tacit-cs-tile-arrow {
  opacity: 1;
  transform: translateX(0);
}
[data-theme="dark"] .tacit-cs-tile { border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-cs-grid { border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-cs-tile:hover { background: var(--tacit-bg-subtle); }
[data-theme="dark"] .tacit-cs-tile-name { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-cs-tile-tag { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-cs-tile-arrow { color: var(--tacit-fg-light); }
@media (max-width: 768px) {
  .tacit-cs-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .tacit-cs-tile:nth-child(3) { border-right: none; }
  .tacit-cs-tile:nth-child(n+4) { border-top: 1px solid var(--tacit-card-border, rgba(11,11,13,.08)); }
}
@media (max-width: 480px) {
  .tacit-cs-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .tacit-cs-tile { padding: var(--sp-10) var(--sp-6); }
  .tacit-cs-tile:nth-child(3) { border-right: 1px solid var(--tacit-card-border, rgba(11,11,13,.08)); }
  .tacit-cs-tile:nth-child(2n) { border-right: none; }
  .tacit-cs-tile:nth-child(n+3) { border-top: 1px solid var(--tacit-card-border, rgba(11,11,13,.08)); }
  .tacit-cs-tile-name { font-size: var(--fs-caption); }
}

/* ============================================
   CASE STUDY CARDS (carousel – maintenance, design, process pages)
   ============================================ */
.tacit-cs-wrap {
  display: flex;
  align-items: center;
  gap: var(--sp-6);
  max-width: 100%;
  margin: var(--sp-14) auto 0;
  padding: 0 var(--sp-10);
  position: relative;
}
.tacit-cs-row {
  display: flex;
  gap: var(--sp-8);
  justify-content: flex-start;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: var(--sp-4) 0;
  flex: 1;
  min-width: 0;
}
.tacit-cs-row::-webkit-scrollbar { display: none; }
.tacit-cs-nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--btn-md);
  height: var(--btn-md);
  border-radius: 50%;
  border: 1px solid var(--tacit-border);
  background: var(--tacit-bg);
  color: var(--tacit-fg-muted);
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.15s, color 0.15s, box-shadow 0.15s;
}
.tacit-cs-nav-btn:hover {
  border-color: var(--tacit-fg-light);
  color: var(--tacit-fg);
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.tacit-cs-card {
  flex: 0 0 clamp(280px, 38vw, 480px);
  scroll-snap-align: start;
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  display: block;
  text-decoration: none;
  color: #fff;
  aspect-ratio: 55 / 38;
  background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
}
.tacit-cs-img {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  overflow: hidden !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  height: 100% !important;
}
.tacit-cs-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-width: none !important;
  max-height: none !important;
  transition: transform .4s ease;
}
.tacit-cs-card:hover .tacit-cs-img img {
  transform: scale(1.05);
}
.tacit-cs-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(to top, rgba(0,0,0,.88) 0%, rgba(0,0,0,.55) 40%, transparent 65%);
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: var(--sp-9) !important;
  text-align: left;
  transition: background .3s;
}
.tacit-cs-card:hover .tacit-cs-overlay {
  background: linear-gradient(to top, rgba(0,0,0,.92) 0%, rgba(0,0,0,.6) 45%, rgba(0,0,0,.15) 70%);
}
.tacit-cs-top {
  position: absolute !important;
  top: 20px !important;
  left: 20px !important;
  right: 20px !important;
  display: flex !important;
  align-items: flex-start !important;
  z-index: 2 !important;
}
.tacit-cs-logo {
  height: 28px;
  max-height: 28px;
  width: auto;
  max-width: 120px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: .85;
}
.tacit-cs-company {
  font-size: var(--fs-body-sm);
  font-weight: 700;
  letter-spacing: 0;
  opacity: .95;
}
.tacit-cs-bottom {
  display: flex !important;
  flex-direction: column !important;
  gap: var(--sp-2) !important;
  text-align: left;
  z-index: 2 !important;
}
.tacit-cs-industry {
  display: inline-block;
  font-size: var(--fs-micro);
  font-weight: 650;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(255,255,255,.8);
  background: rgba(255,255,255,.15);
  backdrop-filter: blur(6px);
  padding: var(--sp-2) var(--sp-5);
  border-radius: var(--radius-pill);
  align-self: flex-start;
  margin-bottom: var(--sp-3);
}
.tacit-cs-metric {
  font-size: var(--fs-title-lg);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -.02em;
}
.tacit-cs-what {
  font-size: var(--fs-xs);
  line-height: 1.45;
  opacity: .85;
  margin-top: var(--sp-1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tacit-cs-cta {
  font-size: var(--fs-small);
  font-weight: 600;
  margin-top: var(--sp-4);
  opacity: .7;
  transition: opacity .2s;
  align-self: flex-end;
}
.tacit-cs-card:hover .tacit-cs-cta {
  opacity: 1;
}
.tacit-cs-card--request .tacit-cs-cta { display: none; }
.tacit-cs-card--request::after {
  content: 'Request details →';
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.55);
  color: #fff;
  font-family: var(--tacit-font);
  font-size: var(--fs-small);
  font-weight: 600;
  border-radius: var(--radius-xl);
  opacity: 0;
  transition: opacity .25s ease;
}
.tacit-cs-card--request:hover::after { opacity: 1; }
.tacit-cs-viewall {
  display: block;
  margin-top: var(--sp-10);
  font-size: var(--fs-caption);
  font-weight: 600;
  color: var(--tacit-fg-light, #6b7280);
  text-decoration: none;
  transition: color .2s;
  text-align: center;
}
.tacit-cs-viewall:hover {
  color: var(--tacit-fg, #0b0b0d);
}

/* dark mode */
.tacit-cs-card,
a.tacit-cs-card,
a.tacit-cs-card:link,
a.tacit-cs-card:visited,
a.tacit-cs-card:hover,
a.tacit-cs-card:active { color: #fff !important; text-decoration: none !important; }
.tacit-cs-overlay { z-index: 1 !important; }
.tacit-cs-industry,
.tacit-cs-metric,
.tacit-cs-what,
.tacit-cs-cta,
.tacit-cs-company { color: #fff !important; }
[data-theme="dark"] .tacit-cs-card { background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%) !important; }
[data-theme="dark"] .tacit-cs-viewall {
  color: rgba(255,255,255,.5) !important;
}
[data-theme="dark"] .tacit-cs-viewall:hover {
  color: rgba(255,255,255,.9) !important;
}

/* case studies index page */
[data-theme="dark"] .cs-index { background: var(--tacit-bg) !important; }
[data-theme="dark"] .cs-index-title { color: rgba(255,255,255,.95) !important; }
[data-theme="dark"] .cs-index-sub { color: rgba(255,255,255,.6) !important; }
[data-theme="dark"] .cs-index-eyebrow { color: var(--tacit-accent) !important; }
[data-theme="dark"] .cs-index-coming-soon { border-color: rgba(255,255,255,.06) !important; }
[data-theme="dark"] .cs-index-coming-label { color: rgba(255,255,255,.2) !important; }

/* cx-study detailed layout */
[data-theme="dark"] .cx-study { border-color: rgba(255,255,255,.06) !important; }
[data-theme="dark"] .cx-study-company { color: rgba(255,255,255,.95) !important; }
[data-theme="dark"] .cx-study-headline { color: rgba(255,255,255,.95) !important; }
[data-theme="dark"] .cx-study-desc { color: rgba(255,255,255,.6) !important; }
[data-theme="dark"] .cx-study-meta { color: rgba(255,255,255,.4) !important; }
[data-theme="dark"] .cx-study-kpi-value { color: rgba(255,255,255,.95) !important; }
[data-theme="dark"] .cx-study-kpi-label { color: rgba(255,255,255,.5) !important; }
[data-theme="dark"] .cx-study-link { color: var(--tacit-accent) !important; }

/* responsive */
@media (max-width: 900px) {
  .tacit-cs-card { flex: 0 0 clamp(260px, 55vw, 360px); }
  .tacit-cs-wrap { padding: 0; margin-left: calc(var(--sp-8) * -1); margin-right: calc(var(--sp-8) * -1); max-width: none; }
}
@media (max-width: 600px) {
  .tacit-cs-wrap { margin-left: calc(var(--sp-7) * -1); margin-right: calc(var(--sp-7) * -1); }
  .tacit-cs-card { flex: 0 0 clamp(260px, 88vw, 380px); }
  .tacit-cs-row { gap: var(--sp-5); padding: var(--sp-3) 0; }
  .tacit-cs-metric { font-size: var(--fs-body-lg); }
  .tacit-cs-what { font-size: var(--fs-xs); }
  .tacit-cs-nav-btn { display: none; }
}
@media (max-width: 400px) {
  .tacit-cs-card { flex: 0 0 92vw; }
}

/* ============================================
   COST HOOK (above risk cloud)
   ============================================ */
.tacit-costhook {
  text-align: center;
  min-height: 65vh;
  position: relative;
  overflow: hidden;
}
.tacit-costhook-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 1;
  width: 100%;
  padding: 0 var(--sp-10);
  box-sizing: border-box;
}
.tacit-costhook-title {
  font-family: Inter, Avenir, -apple-system, system-ui, sans-serif !important;
  font-size: clamp(24px, 3vw, 34px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  color: inherit !important;
  margin: 0 !important;
  max-width: 680px;
  text-wrap: balance;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .6s ease, transform .6s ease;
}
.tacit-costhook-source {
  font-family: Inter, Avenir, -apple-system, system-ui, sans-serif !important;
  font-size: clamp(11px, 1vw, 13px) !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: -.008em !important;
  color: inherit !important;
  opacity: 0;
  margin: 8px 0 0 !important;
  transform: translateY(8px);
  transition: opacity .5s ease .3s, transform .5s ease .3s;
}
.tacit-costhook-bottom {
  position: absolute;
  bottom: var(--sp-16);
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 1;
  width: 100%;
  padding: 0 var(--sp-10);
  box-sizing: border-box;
}
.tacit-costhook-sub {
  font-family: Inter, Avenir, -apple-system, system-ui, sans-serif !important;
  font-size: clamp(13px, 1.2vw, 15px) !important;
  font-weight: 470 !important;
  line-height: 1.48 !important;
  letter-spacing: -.012em !important;
  color: inherit !important;
  opacity: 0;
  margin: 0 !important;
  max-width: 480px;
  transform: translateY(8px);
  transition: opacity .5s ease .6s, transform .5s ease .6s;
}
.tacit-costhook-arrow {
  display: block;
  margin-top: var(--sp-8);
  color: inherit !important;
  opacity: 0;
  transition: opacity .4s ease .9s;
}
.tacit-costhook-arrow:hover { opacity: .9 !important; }
.tacit-costhook-arrow svg { width: 20px; height: 20px; animation: costhook-v 2.2s ease-in-out infinite; }
@media (max-width: 680px) {
  .tacit-costhook { min-height: auto !important; padding: var(--sp-14) var(--sp-8) !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: var(--sp-10) !important; }
  .tacit-costhook-center { position: static !important; transform: none !important; padding: 0 !important; }
  .tacit-costhook-bottom { position: static !important; transform: none !important; padding: 0 !important; }
  .tacit-costhook-title { font-size: clamp(20px, 6vw, 26px) !important; }
  .tacit-costhook-source { font-size: 11px !important; }
  .tacit-costhook-sub { font-size: 12px !important; max-width: 90%; }
}
@keyframes costhook-v { 0%,100% { transform: translateY(0); } 50% { transform: translateY(3px); } }
.tacit-costhook.is-visible .tacit-costhook-title { opacity: 1; transform: translateY(0); }
.tacit-costhook.is-visible .tacit-costhook-source { opacity: .5; transform: translateY(0); }
.tacit-costhook.is-visible .tacit-costhook-sub { opacity: .78; transform: translateY(0); }
.tacit-costhook.is-visible .tacit-costhook-arrow { opacity: .78; }

/* ============================================
   COMPARISON TABLE
   ============================================ */
.tacit-compare-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-top: var(--sp-12);
  font-size: var(--fs-small);
  table-layout: fixed;
}
.tacit-compare-table col:nth-child(1) { width: 17%; }
.tacit-compare-table col:nth-child(2) { width: 23%; }
.tacit-compare-table col:nth-child(3) { width: 22%; }
.tacit-compare-table col:nth-child(4) { width: 23%; }
.tacit-compare-table col:nth-child(5) { width: 15%; }
.tacit-compare-table th,
.tacit-compare-table td {
  padding: 14px 16px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--tacit-border);
  font-size: 13px;
  line-height: 1.5;
}
.tacit-compare-table th {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--tacit-fg-muted);
  background: var(--tacit-bg-subtle);
  vertical-align: middle;
  padding: 12px 16px;
}
.tacit-compare-table th:first-child { border-radius: var(--radius-xl) 0 0 0; }
.tacit-compare-table th:last-child { border-radius: 0 12px 0 0; }
.tacit-compare-col-highlight {
  background: rgba(56,211,168,.03) !important;
}
.tacit-compare-table th.tacit-compare-col-highlight {
  background: rgba(56,211,168,.06) !important;
  color: var(--tacit-accent);
}
.tacit-compare-row-label {
  font-weight: 600;
  font-size: 13px;
  color: var(--tacit-fg);
  white-space: normal;
  word-break: break-word;
}
.tacit-compare-check { color: var(--tacit-fg); font-weight: 400; }
.tacit-compare-tick { color: var(--tacit-accent); }
.tacit-compare-cross { color: rgba(11,11,13,.55); font-size: 12px; }
.tacit-compare-x { color: var(--tacit-error); }
.tacit-compare-text { color: rgba(11,11,13,.55); font-size: 12px; }
@media (max-width: 768px) {
  .tacit-compare-text { color: rgba(11,11,13,.75) !important; font-size: 14px !important; }
  .tacit-compare-cross { color: rgba(11,11,13,.75) !important; font-size: 14px !important; }
  .tacit-compare-check { font-size: 14px !important; }
}
@media (max-width: 768px) and (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .tacit-compare-text { color: rgba(255,255,255,.85) !important; }
  :root:not([data-theme="light"]) .tacit-compare-cross { color: rgba(255,255,255,.85) !important; }
}
@media (max-width: 768px) {
  [data-theme="dark"] .tacit-compare-text { color: rgba(255,255,255,.85) !important; }
  [data-theme="dark"] .tacit-compare-cross { color: rgba(255,255,255,.85) !important; }
}

.tacit-compare-link {
  font-size: var(--fs-caption);
  font-weight: 400;
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color .2s, border-color .2s;
}
.tacit-compare-link:hover { color: #38d3a8; border-color: #38d3a8; }

/* ============================================
   FAQ SECTION
   ============================================ */
.tacit-faq-list {
  max-width: 720px;
  margin: var(--sp-12) auto 0;
}
.tacit-faq-item {
  border-bottom: 1px solid rgba(11,11,13,.05) !important;
}
.tacit-faq-question {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: var(--sp-9) 0 !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  text-align: left !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: inherit !important;
  gap: var(--sp-8) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.4 !important;
}
.tacit-faq-chevron {
  width: 20px !important;
  height: 20px !important;
  flex-shrink: 0 !important;
  stroke-width: 1.5;
  opacity: 0.35;
  color: inherit !important;
  transition: transform 0.25s;
}
.tacit-faq-question:hover .tacit-faq-chevron { opacity: 0.6; }
.tacit-faq-item.active .tacit-faq-chevron { transform: rotate(180deg); opacity: 0.5; }
.tacit-faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
.tacit-faq-item.active .tacit-faq-answer {
  max-height: var(--faq-h, 500px);
}
.tacit-faq-answer-inner {
  padding: 0 0 18px !important;
  font-size: 14px !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.65 !important;
  color: var(--tacit-fg-muted) !important;
}
.tacit-faq-toggle-more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-3);
  width: 100%;
  padding: var(--sp-8) 0;
  margin-top: var(--sp-4);
  background: none;
  border: none;
  border-top: 1px solid var(--tacit-border);
  cursor: pointer;
  font-family: var(--tacit-font);
  font-size: var(--fs-caption);
  font-weight: 600;
  color: var(--tacit-fg-light);
  transition: color 0.2s;
}
.tacit-faq-toggle-more:hover { color: var(--tacit-fg); }
.tacit-faq-toggle-more svg { transition: transform 0.25s; }
[data-theme="dark"] .tacit-faq-toggle-more { border-color: rgba(255,255,255,.08) !important; color: #8291a3 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .tacit-faq-toggle-more:hover { color: #e8ecf1 !important; }

/* ============================================
   TIMELINE / HOW IT WORKS
   ============================================ */
.tacit-timeline { margin-top: var(--sp-14); position: relative; display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; }
.tacit-timeline::before { content: ''; position: absolute; top: 28px; left: 10%; right: 10%; height: 2px; background: var(--tacit-border); z-index: 0; }
.tacit-timeline-step { display: flex; flex-direction: column; align-items: center; text-align: center; position: relative; padding: 0 var(--sp-4); }
.tacit-timeline-marker { display: flex; flex-direction: column; align-items: center; margin-bottom: var(--sp-8); }
.tacit-timeline-day { font-size: var(--fs-xxs); font-weight: 700; color: var(--tacit-fg-muted); margin-bottom: var(--sp-4); white-space: nowrap; text-transform: uppercase; letter-spacing: .04em; }
.tacit-timeline-dot { width: 12px; height: 12px; border-radius: 50%; border: 2.5px solid var(--tacit-border); background: var(--tacit-bg); position: relative; z-index: 2; flex-shrink: 0; }
.tacit-timeline-dot--highlight { border-color: var(--tacit-accent); background: var(--tacit-accent); box-shadow: 0 0 0 3px var(--tacit-accent-soft); }
.tacit-timeline-dot--final { border-color: var(--tacit-accent); background: var(--tacit-accent); width: 14px; height: 14px; box-shadow: 0 0 0 3px var(--tacit-accent-soft); }
.tacit-timeline-line { display: none; }
.tacit-timeline-content { padding: 0; }
.tacit-timeline-title { font-size: var(--fs-caption); font-weight: 700; color: var(--tacit-fg); margin-bottom: var(--sp-2); letter-spacing: -0.01em; }
.tacit-timeline-desc { font-size: var(--fs-small); line-height: 1.5; color: var(--tacit-fg-muted); max-width: 200px; margin: 0 auto; }
.tacit-timeline-output { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-top: var(--sp-5); justify-content: center; }
.tacit-timeline-output-label { font-size: var(--fs-pip); font-weight: 650; text-transform: uppercase; letter-spacing: .06em; color: rgba(11,11,13,.32); width: 100%; text-align: center; }
.tacit-timeline-output-value { display: none; }
.tacit-timeline-output-items { display: flex; flex-wrap: wrap; gap: var(--sp-2); justify-content: center; }
.tacit-timeline-output-item { display: inline-flex; align-items: center; gap: var(--sp-2); padding: 3px var(--sp-4); border-radius: var(--radius-pill); background: transparent; border: 1px solid rgba(11,11,13,.1); font-size: var(--fs-micro); font-weight: 560; color: rgba(11,11,13,.45); }
.tacit-timeline-output--highlight .tacit-timeline-output-item { border-color: rgba(11,11,13,.12); color: rgba(11,11,13,.50); }
.tacit-timeline-output--final .tacit-timeline-output-item { border-color: rgba(11,11,13,.14); color: rgba(11,11,13,.55); }
.tacit-timeline-output-item svg { width: 11px; height: 11px; flex-shrink: 0; }
.tacit-timeline-cta { margin-top: var(--sp-12); display: flex; flex-direction: column; align-items: center; gap: var(--sp-8); text-align: center; }
a.tacit-timeline-btn,
.tacit-timeline-btn { display: inline-flex; align-items: center; gap: var(--sp-4); height: var(--btn-md); padding: 0 var(--sp-9); border-radius: 999px; background: var(--tacit-accent); color: #fff !important; font-size: var(--fs-caption); font-weight: 600; text-decoration: none; transition: all 0.2s; border: none; font-family: var(--tacit-font); box-sizing: border-box; }
.tacit-timeline-btn:hover { background: #2ec49c; box-shadow: 0 1px 3px rgba(0,0,0,.1); }
.tacit-timeline-note { font-size: var(--fs-small); color: var(--tacit-fg-muted); }

@media (max-width: 768px) {
  .tacit-timeline { grid-template-columns: 1fr; gap: 0; }
  .tacit-timeline::before { display: none; }
  .tacit-timeline-step {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 0 14px;
    text-align: left;
    padding: 0 0 28px;
    position: relative;
  }
  .tacit-timeline-step::before {
    content: '';
    position: absolute;
    left: 27px;
    top: 12px;
    bottom: 0;
    width: 2px;
    background: var(--tacit-border);
  }
  .tacit-timeline-step:last-child::before { display: none; }
  .tacit-timeline-marker {
    grid-column: 1;
    grid-row: 1 / 3;
    flex-direction: column;
    align-items: center;
    margin-bottom: 0;
    gap: var(--sp-3);
    min-width: auto;
  }
  .tacit-timeline-content { grid-column: 2; padding-top: 0; }
  .tacit-timeline-day { margin-bottom: var(--sp-2); }
  .tacit-timeline-desc { max-width: none; margin: 0; }
  .tacit-timeline-output { justify-content: flex-start; display: none; }
  .tacit-timeline-output-items { justify-content: flex-start; }
  .tacit-timeline-output-label { text-align: left; }
  .tacit-timeline-cta { margin-top: var(--sp-11); gap: var(--sp-6); }
  .tacitx-hero-wrapper-a1 .tacitx-hero-actions-a1 { margin-top: var(--sp-10); margin-bottom: var(--sp-10); gap: var(--sp-5); }
}
@media (max-width: 480px) {
  .tacit-timeline-step { grid-template-columns: 48px 1fr; gap: 0 10px; padding-bottom: var(--sp-10); }
  .tacit-timeline-step::before { left: 23px; }
  .tacit-timeline-title { font-size: var(--fs-small); }
  .tacit-timeline-desc { font-size: var(--fs-xs); }
  .tacit-timeline-day { font-size: var(--fs-micro); }
  .tacit-timeline-btn { font-size: var(--fs-small); height: var(--btn-sm); padding: 0 16px; }
  .tacit-timeline-cta { margin-top: var(--sp-10); }
}

/* ============================================
   PHASES — Gated engagement model
   ============================================ */
.tacit-phases-grid {
  margin-top: var(--sp-14);
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
}
.tacit-phase-card {
  flex: 1;
  max-width: 320px;
  background: var(--tacit-bg);
  border: 1px solid var(--tacit-border);
  border-radius: var(--radius-2xl);
  padding: var(--sp-11) var(--sp-10) var(--sp-10);
  display: flex;
  flex-direction: column;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.tacit-phase-card:hover {
  border-color: rgba(56, 211, 168, .25);
  box-shadow: 0 4px 20px rgba(56, 211, 168, .06);
}
.tacit-phase-card--active {
  border-color: rgba(56, 211, 168, .30);
  box-shadow: 0 0 0 1px rgba(56, 211, 168, .10), 0 6px 24px rgba(56, 211, 168, .08);
}
.tacit-phase-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--sp-5);
}
.tacit-phase-number {
  font-size: var(--fs-xxs);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tacit-accent);
}
.tacit-phase-timing {
  font-size: var(--fs-xxs);
  font-weight: 600;
  color: var(--tacit-fg-light);
  letter-spacing: 0.02em;
}
.tacit-phase-name {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-title-sm);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-4);
}
.tacit-phase-desc {
  font-size: 13.5px;
  line-height: 1.65;
  color: var(--tacit-fg-muted);
  margin: 0;
  flex: 1;
}
.tacit-phase-delivers {
  margin-top: var(--sp-9);
  padding-top: var(--sp-7);
  border-top: 1px solid var(--tacit-border);
}
.tacit-phase-delivers-label {
  font-size: var(--fs-pip);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tacit-fg-light);
  margin-bottom: var(--sp-4);
  display: block;
}
.tacit-phase-delivers-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
}
.tacit-phase-delivers-list li {
  font-size: 12.5px;
  color: var(--tacit-fg-muted);
  padding-left: var(--sp-8);
  position: relative;
  line-height: 1.5;
}
.tacit-phase-delivers-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 7px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--tacit-accent);
  opacity: .5;
}
.tacit-phase-gate {
  margin-top: var(--sp-9);
  padding: var(--sp-6) var(--sp-7);
  background: rgba(56, 211, 168, .04);
  border: 1px solid rgba(56, 211, 168, .12);
  border-radius: var(--radius-lg);
  display: flex;
  align-items: flex-start;
  gap: var(--sp-5);
}
.tacit-phase-gate-icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  color: var(--tacit-accent);
  margin-top: 1px;
}
.tacit-phase-gate-icon svg { width: 100%; height: 100%; }
.tacit-phase-gate-text {
  display: flex;
  flex-direction: column;
  gap: var(--sp-1);
}
.tacit-phase-gate-label {
  font-size: var(--fs-pip);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tacit-accent);
}
.tacit-phase-gate-criteria {
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--tacit-fg-muted);
  font-weight: 500;
}
.tacit-phase-connector {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--sp-12);
  flex-shrink: 0;
  color: var(--tacit-border);
}
.tacit-phase-connector svg {
  width: 20px;
  height: 20px;
}
.tacit-phases-cta {
  margin-top: var(--sp-13);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--sp-5);
  text-align: center;
}
.tacit-phases-note {
  font-size: var(--fs-small);
  color: var(--tacit-fg-muted);
}

@media (max-width: 768px) {
  .tacit-phases-grid {
    flex-direction: column;
    align-items: center;
    gap: var(--sp-6);
  }
  .tacit-phase-card { max-width: 100%; }
  .tacit-phase-connector {
    transform: rotate(90deg);
    width: auto;
    height: 28px;
  }
}

/* -- Phases dark overrides -- */
[data-theme="dark"] .tacit-phase-card { background: var(--tacit-card-bg); border-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-phase-card:hover { border-color: rgba(56, 211, 168, .30); box-shadow: 0 4px 20px rgba(56, 211, 168, .08); }
[data-theme="dark"] .tacit-phase-card--active { border-color: rgba(56, 211, 168, .35); box-shadow: 0 0 0 1px rgba(56, 211, 168, .12), 0 6px 24px rgba(56, 211, 168, .10); }
[data-theme="dark"] .tacit-phase-delivers { border-top-color: var(--tacit-card-border); }
[data-theme="dark"] .tacit-phase-gate { background: rgba(56, 211, 168, .06); border-color: rgba(56, 211, 168, .15); }
[data-theme="dark"] .tacit-phase-connector { color: rgba(255,255,255,.15); }

/* ============================================
   FOOTER CTA
   ============================================ */
.tacit-footer-cta {
  margin: 0;
  padding: 60px var(--sp-10) 0;
  width: 100%;
  box-sizing: border-box;
}
.tacit-footer-cta-inner {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  border-radius: var(--radius-4xl);
  border: 2px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  background: linear-gradient(90deg, #38d3a8 0%, #2abf9d 50%, #169b7f 100%);
  max-width: 1000px;
}
.tacit-footer-cta-grid {
  position: relative;
  display: grid;
  gap: 19.2px;
  padding: var(--sp-12) var(--sp-12);
  grid-template-columns: 1fr 1fr;
  box-sizing: border-box;
}
.tacit-footer-cta-title {
  font-size: var(--fs-h2);
  font-weight: 600;
  line-height: 1.2;
  color: white;
  margin: 0;
  padding: 0;
  font-family: var(--tacit-font);
}
.tacit-footer-cta-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--sp-8);
  color: rgba(255, 255, 255, 0.95);
  margin: 0;
  padding: 0;
}
.tacit-footer-cta-desc {
  font-size: var(--fs-caption);
  line-height: 1.5;
  margin: 0 0 8px 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.95);
  font-family: var(--tacit-font);
}
.tacit-footer-cta-note {
  font-size: var(--fs-small);
  color: rgba(255, 255, 255, 0.8);
  margin: 0 0 20px 0;
  padding: 0;
  font-family: var(--tacit-font);
}
.tacit-footer-cta-link {
  font-size: var(--fs-body-sm);
  font-weight: 500;
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: opacity 0.2s;
}
.tacit-footer-cta-link:hover { opacity: 0.8; }
.tacit-footer-cta-actions {
  display: flex;
  align-items: center;
  gap: var(--sp-8);
  padding: 0;
}

@media (max-width: 768px) {
  .tacit-footer-cta-grid {
    grid-template-columns: 1fr !important;
    gap: var(--sp-10) !important;
    padding: var(--sp-10) var(--sp-9) !important;
  }
}
@media (max-width: 480px) {
  .tacit-footer-cta-grid { padding: var(--sp-11) var(--sp-9) !important; gap: var(--sp-9) !important; }
  .tacit-footer-cta-title { font-size: var(--fs-component); line-height: 1.3; }
  .tacit-footer-cta-desc { font-size: var(--fs-small); line-height: 1.5; }
  .tacit-footer-cta-note { font-size: var(--fs-xxs); }
  .tacit-footer-cta-actions { flex-direction: column; gap: var(--sp-7); width: 100%; }
  .tacit-footer-cta-actions .tacitx-btn-a1 { width: 100%; justify-content: center; }
}

/* ============================================
   BUILD VS BUY
   ============================================ */
.tacit-build-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-8);
  margin-top: var(--sp-12);
}
.tacit-build-card {
  background: var(--tacit-bg-subtle);
  border: 1px solid var(--tacit-border);
  border-radius: var(--tacit-radius);
  padding: var(--sp-10);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.tacit-build-card:hover {
  border-color: var(--tacit-accent);
  box-shadow: var(--tacit-shadow-md);
}
.tacit-build-card-icon {
  margin-bottom: var(--sp-7);
}
.tacit-build-card-title {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-body-sm);
  font-weight: 700;
  color: var(--tacit-fg);
  margin-bottom: var(--sp-4);
  line-height: 1.35;
}
.tacit-build-card-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
}
.tacit-build-bottom {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-8);
  margin-top: var(--sp-10);
  padding: var(--sp-10);
  background: var(--tacit-fg);
  border-radius: var(--tacit-radius);
}
.tacit-build-bottom-stat {
  text-align: center;
}
.tacit-build-bottom-value {
  display: block;
  font-family: var(--tacit-font-display);
  font-size: var(--fs-title-sm);
  font-weight: 700;
  color: var(--tacit-accent);
  margin-bottom: var(--sp-2);
}
.tacit-build-bottom-label {
  font-size: var(--fs-xs);
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.4;
}

@media (max-width: 768px) {
  .tacit-build-grid {
    grid-template-columns: 1fr;
  }
  .tacit-build-bottom {
    grid-template-columns: 1fr;
    gap: var(--sp-9);
  }
}


/* ============================================
   RESULTS STRIP (replaces testimonials)
   ============================================ */
.tacit-results {
  max-width: 1320px;
  margin: 0 auto;
  padding: var(--sp-13) var(--sp-10);
  text-align: center;
}
.tacit-results-label {
  font-size: var(--fs-xxs) !important;
  font-weight: 600 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: var(--tacit-fg-light) !important;
  display: block !important;
  margin-bottom: var(--sp-10) !important;
}
.tacit-results-strip {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: var(--sp-10) !important;
  flex-wrap: nowrap !important;
}
.tacit-results-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: var(--sp-1) !important;
  flex: 1 1 0 !important;
  min-width: 0;
}
.tacit-results-value {
  font-family: var(--tacit-font-display) !important;
  font-size: var(--fs-body-lg) !important;
  font-weight: 650 !important;
  color: var(--tacit-fg) !important;
}
.tacit-results-metric {
  font-size: var(--fs-xs) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  color: var(--tacit-fg-muted) !important;
  text-align: center;
  line-height: 1.3 !important;
  white-space: nowrap;
}
.tacit-results-source {
  font-size: var(--fs-micro) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  color: var(--tacit-fg-light) !important;
  text-align: center;
  line-height: 1.3 !important;
  margin-top: var(--sp-1);
}
.tacit-results-divider {
  width: 1px;
  height: 48px;
  background: var(--tacit-border) !important;
  flex-shrink: 0;
  align-self: center;
}
.tacit-results-link {
  display: inline-block;
  margin-top: var(--sp-10);
  font-size: var(--fs-small);
  font-weight: 500;
  color: var(--tacit-fg-light);
  text-decoration: none;
  transition: color 0.2s ease;
}
.tacit-results-link:hover {
  color: var(--tacit-fg-muted);
}

@media (max-width: 1024px) {
  .tacit-results-strip {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: var(--sp-10) var(--sp-8) !important;
  }
  .tacit-results-item { flex: none; }
  .tacit-results-divider { display: none; }
  .tacit-results-value { font-size: var(--fs-body); }
  .tacit-results-metric { font-size: var(--fs-small); white-space: normal; }
}
@media (max-width: 680px) {
  .tacit-results-strip {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: var(--sp-11) var(--sp-9) !important;
  }
  .tacit-results-metric { font-size: var(--fs-xs); }
}
@media (max-width: 480px) {
  .tacit-results { padding: var(--sp-12) var(--sp-8); }
  .tacit-results-strip { gap: var(--sp-10) var(--sp-8) !important; }
  .tacit-results-value { font-size: var(--fs-body-sm); }
  .tacit-results-metric { font-size: var(--fs-xs); }
}


/* ============================================
   COMPARISON TABLE – RESPONSIVE
   ============================================ */
.tacit-compare-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-top: var(--sp-13);
}
@media (max-width: 768px) {
  .tacit-compare-wrap { margin: var(--sp-12) 0 0 !important; padding: 0 !important; overflow-x: visible !important; }
  .tacit-compare-table { min-width: 0 !important; display: block !important; width: 100% !important; }
  .tacit-compare-table thead { display: none !important; }
  .tacit-compare-table tbody { display: flex !important; flex-direction: column !important; gap: 24px !important; }
  .tacit-compare-table tr { display: flex !important; flex-direction: column !important; border: none !important; border-radius: 0 !important; padding: 0 !important; gap: 10px !important; border-bottom: 1px solid rgba(11,11,13,.08) !important; padding-bottom: 24px !important; }
  .tacit-compare-table tr:last-child { border-bottom: none !important; padding-bottom: 0 !important; }
  .tacit-compare-table td { display: block !important; padding: 0 !important; border: none !important; font-size: 14px !important; line-height: 1.55 !important; width: 100% !important; color: rgba(11,11,13,.8) !important; }
  .tacit-compare-table td.tacit-compare-row-label { font-size: 16px !important; font-weight: 700 !important; margin-bottom: 6px !important; min-width: 0 !important; color: inherit !important; text-align: center !important; }
  .tacit-compare-table td:nth-child(2)::before { content: 'ChatGPT / Claude / Copilot'; display: block; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: rgba(11,11,13,.5); margin-bottom: 4px; }
  .tacit-compare-table td:nth-child(3)::before { content: 'Tacit AI'; display: block; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: #38d3a8; margin-bottom: 4px; }
  .tacit-compare-table td.tacit-compare-col-highlight { background: rgba(56,211,168,.06) !important; border-radius: 8px !important; padding: 12px 14px !important; }
  .tacit-compare-table td:nth-child(2) { padding: 12px 14px !important; border-radius: 8px !important; background: rgba(11,11,13,.04) !important; }
  /* Static vs Living table */
  .tacit-compare-table--static td:nth-child(2)::before { content: 'Static FMEA tools'; }
  /* 4-col comparison table — td2 is Tacit AI, td3-5 are alternatives */
  .tacit-compare-table--4col td:nth-child(2) { background: rgba(56,211,168,.06) !important; padding: 12px 14px !important; }
  .tacit-compare-table--4col td:nth-child(2)::before { content: 'Tacit AI' !important; color: #38d3a8 !important; display: block !important; font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .06em !important; margin-bottom: 4px !important; }
  .tacit-compare-table--4col td:nth-child(3)::before { content: 'Internal (your engineers)' !important; color: rgba(11,11,13,.5) !important; display: block !important; font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .06em !important; margin-bottom: 4px !important; }
  .tacit-compare-table--4col td:nth-child(4)::before { content: 'Consultants' !important; color: rgba(11,11,13,.5) !important; display: block !important; font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .06em !important; margin-bottom: 4px !important; }
  .tacit-compare-table--4col td:nth-child(5)::before { content: 'Not done' !important; color: rgba(11,11,13,.5) !important; display: block !important; font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .06em !important; margin-bottom: 4px !important; }
  .tacit-compare-table--4col td:nth-child(3),
  .tacit-compare-table--4col td:nth-child(4),
  .tacit-compare-table--4col td:nth-child(5) { padding: 12px 14px !important; border-radius: 8px !important; background: rgba(11,11,13,.04) !important; }
}
@media (max-width: 768px) and (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .tacit-compare-table tr { border-bottom-color: rgba(255,255,255,.10) !important; }
  :root:not([data-theme="light"]) .tacit-compare-table td { color: rgba(255,255,255,.85) !important; }
  :root:not([data-theme="light"]) .tacit-compare-table td.tacit-compare-row-label { color: #fff !important; }
  :root:not([data-theme="light"]) .tacit-compare-table td:nth-child(2)::before { color: rgba(255,255,255,.6) !important; }
  :root:not([data-theme="light"]) .tacit-compare-table td:nth-child(2) { background: rgba(255,255,255,.07) !important; }
  :root:not([data-theme="light"]) .tacit-compare-table td.tacit-compare-col-highlight { background: rgba(56,211,168,.10) !important; color: #fff !important; }
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(2) { background: rgba(56,211,168,.10) !important; }
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(2)::before { color: #38d3a8 !important; }
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(3),
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(4),
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(5) { background: rgba(255,255,255,.07) !important; }
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(3)::before,
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(4)::before,
  :root:not([data-theme="light"]) .tacit-compare-table--4col td:nth-child(5)::before { color: rgba(255,255,255,.6) !important; }
}
@media (max-width: 768px) {
  [data-theme="dark"] .tacit-compare-table tr { border-bottom-color: rgba(255,255,255,.10) !important; }
  [data-theme="dark"] .tacit-compare-table td { color: rgba(255,255,255,.85) !important; }
  [data-theme="dark"] .tacit-compare-table td.tacit-compare-row-label { color: #fff !important; }
  [data-theme="dark"] .tacit-compare-table td:nth-child(2)::before { color: rgba(255,255,255,.6) !important; }
  [data-theme="dark"] .tacit-compare-table td:nth-child(2) { background: rgba(255,255,255,.07) !important; }
  [data-theme="dark"] .tacit-compare-table td.tacit-compare-col-highlight { background: rgba(56,211,168,.10) !important; color: #fff !important; }
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(2) { background: rgba(56,211,168,.10) !important; }
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(2)::before { color: #38d3a8 !important; }
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(3),
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(4),
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(5) { background: rgba(255,255,255,.07) !important; }
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(3)::before,
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(4)::before,
  [data-theme="dark"] .tacit-compare-table--4col td:nth-child(5)::before { color: rgba(255,255,255,.6) !important; }
}
@media (max-width: 480px) {
  .tacit-faq-question { font-size: var(--fs-body-sm); padding: var(--sp-9) 0; }
  .tacit-faq-answer-inner { font-size: var(--fs-caption); }
}


/* ============================================
   NAVIGATION (from top_bar.html)
   ============================================ */
.tacit-nav * { box-sizing: border-box; }
#tatsu-header-wrap.stuck .tatsu-header:last-child { -webkit-box-shadow: none !important; box-shadow: none !important; }
/* Force EVERY Tatsu header ancestor to stay visible at all times */
.tatsu-header,
#tatsu-header-wrap,
.tatsu-header-row,
.tatsu-header-col,
.tatsu-header .tatsu-code,
.tatsu-header .tatsu-module {
  display: block !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  pointer-events: auto !important;
  clip: auto !important;
  clip-path: none !important;
}
#tatsu-header-wrap { position: relative !important; z-index: 9999 !important; background: transparent !important; }
.tatsu-header,
.tatsu-header-row,
.tatsu-header-col {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
/* Nav is FIXED — ignores all Tatsu wrapper nonsense */
.tacit-nav { position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; z-index: 9999 !important; width: 100% !important; background: transparent !important; border-bottom: none; }
body.admin-bar .tacit-nav { top: 32px !important; }
@media screen and (max-width: 782px) { body.admin-bar .tacit-nav { top: 0 !important; } }
/* Body spacer for fixed nav */
body:has(.tacit-nav) { padding-top: 64px !important; }
/* Hero sections: pull background under nav, add top breathing room */
.hero-viz-wrap,
.tacitx-hero-wrapper-a1 { margin-top: -64px !important; padding-top: 100px !important; }
.tacit-trust-hero { margin-top: -64px !important; }
.tacit-nav-inner { margin: 0; transition: margin 0.25s ease; }
.tacit-nav-container { max-width: none; margin: 0 auto; padding: 0 40px; border: 1px solid transparent; transition: background 0.25s ease, border-color 0.25s ease, border-radius 0.25s ease, box-shadow 0.25s ease; }
.tacit-nav-flex { display: grid; grid-template-columns: 1fr auto 1fr; height: 64px; align-items: center; }
.tacit-nav.scrolled { background: transparent; border-bottom: none; }
.tacit-nav.scrolled .tacit-nav-inner { margin: var(--sp-4) var(--sp-8); }
.tacit-nav.scrolled .tacit-nav-container { background: rgba(255, 255, 255, 0.95) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border-radius: 999px !important; border: 1px solid rgba(0,0,0,.06) !important; max-width: none !important; padding: 0 var(--sp-12) !important; }
.tacit-nav-brand { display: flex; align-items: center; gap: var(--sp-6); }
.tacit-nav-brand a { display: flex; align-items: center; gap: var(--sp-4); text-decoration: none; }
.tacit-nav-brand img { height: 15px; width: auto; transition: opacity 0.3s ease; }
.tacit-nav-brand img:not([src]) { opacity: 0; }
.tacit-nav-desktop { display: none; align-items: center; gap: var(--sp-2); justify-content: center; }
.tacit-nav-dropdown { position: relative; display: flex; align-items: center; height: 100%; }
.tacit-nav-btn { display: inline-flex; align-items: center; gap: var(--sp-3); border-radius: var(--radius); height: var(--btn-md); padding: 0 var(--sp-6); font-size: 13px !important; font-weight: 500 !important; color: #111827 !important; background: transparent !important; border: none !important; cursor: pointer; text-decoration: none !important; white-space: nowrap; box-sizing: border-box; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-nav-btn:hover { color: inherit !important; opacity: 1; }
.tacit-nav-btn--link { text-decoration: none !important; font-weight: 500 !important; transition: color 0.15s ease !important; position: relative !important; }
.tacit-nav-btn--link::after {
  content: '' !important;
  position: absolute !important;
  bottom: 9px !important;
  left: 50% !important;
  transform: translateX(-50%) scaleX(0) !important;
  width: calc(100% - 24px) !important;
  height: 1.5px !important;
  background: var(--tacit-accent, #38d3a8) !important;
  border-radius: 1px !important;
  transition: transform 0.2s cubic-bezier(.4,0,.2,1) !important;
  transform-origin: center !important;
  display: block !important;
  pointer-events: none !important;
}
.tacit-nav-btn--link:hover::after { transform: translateX(-50%) scaleX(1) !important; }
.tacit-nav-chevron { height: 14px; width: 14px; transition: transform 0.2s, color 0.15s; flex-shrink: 0; }
.tacit-nav-btn:hover .tacit-nav-chevron { color: var(--tacit-accent, #38d3a8) !important; }
.tacit-nav-btn[aria-expanded="true"] .tacit-nav-chevron { transform: rotate(180deg); color: var(--tacit-accent, #38d3a8) !important; }
.tacit-nav-panel { position: absolute !important; left: 50% !important; transform: translateX(-50%) translateY(-6px); top: 100% !important; margin-top: 0 !important; z-index: 9999 !important; background: #fff !important; border: 1px solid rgba(11,11,13,.06) !important; border-radius: 16px !important; box-shadow: 0 12px 40px -8px rgba(0, 0, 0, 0.1), 0 4px 12px -2px rgba(0, 0, 0, 0.04) !important; transition: opacity 0.2s, transform 0.2s; pointer-events: none; opacity: 0; width: 1100px !important; max-width: calc(100vw - 40px) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-nav-panel.show { pointer-events: auto; transform: translateX(-50%) translateY(0); opacity: 1; }
.tacit-nav-panel-inner { width: 100%; padding: 8px; }
.tacit-nav-grid-3 { display: grid !important; grid-template-columns: 0.7fr 1fr 1fr !important; gap: var(--sp-4) !important; }
.tacit-nav-grid-4 { display: grid !important; grid-template-columns: 253px 1fr !important; gap: var(--sp-9) !important; }
.tacit-nav-grid-solutions { display: flex !important; gap: var(--sp-3) !important; align-items: stretch !important; }
.tacit-nav-grid-solutions > .tacit-nav-section:first-child { width: 180px !important; flex-shrink: 0 !important; }
.tacit-nav-grid-2 { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: var(--sp-4) !important; }
#product-panel {
  width: 520px !important;
  max-width: 95vw !important;
}
#company-panel { width: 200px !important; max-width: 90vw !important; left: auto !important; right: 0 !important; transform: translateX(0) translateY(-6px) !important; }
#company-panel.show { transform: translateX(0) translateY(0) !important; }
#solutions-panel {
  width: auto !important;
  max-width: 95vw !important;
}
.tacit-nav-role { display: flex; align-items: center; gap: var(--sp-5); border-radius: var(--radius-md); padding: var(--sp-3) var(--sp-4); text-decoration: none; color: inherit; transition: all 0.2s ease; position: relative; }
.tacit-nav-role:hover { background: rgba(11,11,13,.03); transform: translateX(2px); }
.tacit-nav-role::after { content: '→'; position: absolute; top: 4px; right: 5px; color: #9ca3af; font-size: var(--fs-pip); font-weight: 200; transform: rotate(-45deg) translate(0, 0); opacity: 0; transition: all 0.2s ease; pointer-events: none; }
.tacit-nav-role:hover::after { opacity: 1; transform: rotate(-45deg) translate(2px, -2px); }
.tacit-nav-role-icon { width: 16px; height: 16px; flex-shrink: 0; color: var(--tacit-accent, #38d3a8); transition: color 0.2s ease; }
.tacit-nav-role:hover .tacit-nav-role-icon { color: #2ec49c; }
.tacit-nav-role-text { display: flex; flex-direction: column; gap: 0; }
.tacit-nav-role-title { font-size: var(--fs-xxs); font-weight: 500; color: #111827; line-height: 1.4; }
.tacit-nav-role-desc { font-size: var(--fs-micro); color: #9ca3af; line-height: 1.3; }
.tacit-nav-role-group-label { font-size: var(--fs-pip); font-weight: 700; color: #b0b5bf; text-transform: uppercase; letter-spacing: 0.08em; padding: var(--sp-4) var(--sp-4) var(--sp-1); margin-top: var(--sp-1); }
.tacit-nav-role-group-label:first-child { margin-top: 0; padding-top: 0; }
.tacit-nav-section { padding: var(--sp-3) var(--sp-4); }
.tacit-nav-section-title { padding: 0 6px 6px !important; font-size: 10px !important; font-weight: 700 !important; color: rgba(11,11,13,.45) !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-nav-link { display: flex !important; align-items: center !important; gap: 10px !important; border-radius: 8px !important; padding: 6px 8px !important; transition: background 0.15s ease, transform 0.15s ease; text-decoration: none !important; color: inherit; position: relative; }
.tacit-nav-link:hover { background: transparent !important; transform: none; }
.tacit-nav-link:hover .tacit-nav-link-title { color: #0f172a !important; }
.tacit-nav-icon { display: flex; height: 20px; width: 20px; align-items: center; justify-content: center; flex-shrink: 0; }
.tacit-nav-icon-dot { height: 14px; width: 14px; border-radius: var(--radius-xs); background: #111827; }
.tacit-nav-link-title { font-size: 13px !important; font-weight: 500 !important; color: #111827 !important; line-height: 1.4 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-nav-link-desc { font-size: 11px !important; line-height: 1.3 !important; color: rgba(11,11,13,.55) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-nav-link--compact { padding-top: 4px; padding-bottom: 4px; }
.tacit-nav-link--compact .tacit-nav-link-title { font-weight: 500 !important; font-size: 12px !important; }
.tacit-social-link { align-items: center; }
.tacit-nav-cta { display: none; align-items: center; gap: var(--sp-7); justify-content: flex-end; }
.tacit-theme-toggle { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: none; background: none; cursor: pointer; color: var(--tacit-fg, #111827); opacity: .45; border-radius: 50%; transition: opacity .2s, background .2s; padding: 0; }
.tacit-theme-toggle:hover { opacity: 1; background: rgba(128,128,128,.1); }
.tacit-theme-toggle .tacit-theme-icon { font-size: 18px; }
[data-theme="dark"] .tacit-theme-toggle { color: #fff; }
.tacit-nav-cta-login { display: inline-flex; align-items: center; border-radius: var(--radius); height: var(--btn-md); padding: 0 var(--sp-6); font-size: var(--fs-caption); font-weight: 500; color: var(--tacit-fg, #111827); text-decoration: none; cursor: pointer; transition: color 0.2s; box-sizing: border-box; }
.tacit-nav-cta-login:hover { opacity: .7; }
.tacit-nav-cta-signup { display: inline-flex; align-items: center; gap: var(--sp-4); border-radius: 999px; border: none; background: var(--tacit-accent, #38d3a8); height: var(--btn-md); padding: 0 6px 0 var(--sp-7); font-size: var(--fs-caption); font-weight: 600; color: #fff !important; text-decoration: none; cursor: pointer; transition: all 0.2s; font-family: var(--tacit-font); box-sizing: border-box; white-space: nowrap; flex-shrink: 0; }
.tacit-nav-cta-signup::before { display: none; }
.tacit-nav-cta-signup::after {
  content: '';
  display: inline-flex;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255,255,255,.28) url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.333 8h9.334M8.667 4l4 4-4 4' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 13px;
  flex-shrink: 0;
}
.tacit-nav-cta-signup:hover { background: #2ec49c; }
.tacit-nav-mobile-btn { display: none; align-items: center; justify-content: center; border-radius: var(--radius-md); width: var(--btn-md); height: var(--btn-md); padding: 0; color: #111827; background: transparent; border: none; cursor: pointer; transition: background 0.2s; box-sizing: border-box; }
.tacit-nav-mobile-btn:hover { background: rgba(11,11,13,.03); }
.tacit-nav-burger { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 20px; width: 20px; gap: 5px; }
.tacit-nav-burger span { display: block; height: 1.5px; width: 18px; background: currentColor; transition: all 0.3s ease; border-radius: 1px; transform-origin: center; }
.tacit-nav-mobile { position: static; width: 100%; z-index: 40; background: #fff; border-top: 1px solid rgba(11,11,13,.06); transition: all 0.3s ease; pointer-events: none; transform: translateY(-10px); opacity: 0; max-height: 0; overflow: hidden; }
.tacit-nav-mobile.show { pointer-events: auto; transform: translateY(0); opacity: 1; max-height: 90vh; overflow-y: auto; }
.tacit-nav-mobile-inner { width: 100%; padding: var(--sp-9) var(--sp-8); margin: 0; }
.tacit-nav-mobile a:hover { background: rgba(11,11,13,.04); transform: translateX(2px); }
.tacit-nav-mobile button:hover { background: rgba(11,11,13,.02); }

.tacit-nav-divider { height: 1px; background: rgba(11,11,13,.06); margin: var(--sp-2) var(--sp-3); }

.tacit-industry { display: flex; align-items: center; gap: var(--sp-4); border-radius: 8px; border: none; padding: 6px 10px; background: transparent; text-decoration: none; color: inherit; transition: background 0.15s ease; position: relative; cursor: pointer; }
.tacit-industry:hover { background: rgba(11,11,13,.03); }
.tacit-industry.is-active { background: rgba(56,211,168,.05); }
.tacit-industry.is-active .tacit-industry-title { font-weight: 600; color: #0f172a !important; }
.tacit-industry:hover .tacit-industry-icon-img { filter: brightness(0) invert(40%) sepia(85%) saturate(500%) hue-rotate(125deg) brightness(95%) !important; opacity: 1 !important; }
.tacit-industry.is-active .tacit-industry-icon-img { filter: brightness(0) invert(40%) sepia(85%) saturate(500%) hue-rotate(125deg) brightness(95%) !important; opacity: 1 !important; }
.tacit-industry-icon { display: flex; height: 18px; width: 18px; align-items: center; justify-content: center; flex-shrink: 0; }
.tacit-industry-title { font-size: 13px !important; font-weight: 500 !important; color: #111827 !important; line-height: 1.4 !important; transition: color 0.15s ease; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-nav-grid-solutions > .tacit-nav-section:first-child .tacit-industry-desc,
.tacit-nav-grid-solutions > .tacit-nav-section:first-child .tacit-industry-arrow { display: none; }

/* Detail panel (middle column) */
.tacit-nav-detail-title { font-size: var(--fs-xxs); font-weight: 650; color: #0b0b0d; line-height: 1.3; margin-bottom: var(--sp-4); letter-spacing: .01em; }
.tacit-nav-detail-list { display: flex; flex-direction: column; gap: 0; list-style: none; margin: 0; padding: 0; }
.tacit-nav-detail-item { font-size: var(--fs-xxs); color: rgba(11,11,13,.7); line-height: 1.2; padding: 3px 0; }
.tacit-nav-detail-more { font-size: var(--fs-micro); color: rgba(11,11,13,.3); line-height: 1.3; padding: 5px 0 0; font-style: italic; list-style: none; }
.tacit-nav-detail-cta { display: inline-flex; align-items: center; font-size: var(--fs-xxs); font-weight: 550; color: rgba(11,11,13,.35); text-decoration: none; transition: color 0.15s ease; margin-top: auto; padding-top: var(--sp-5); }
.tacit-nav-detail-cta:hover { color: rgba(11,11,13,.7); }

/* Case study highlight/dim */
.tacit-nav-link-arrow { position: absolute; top: 50%; right: 10px; transform: translateY(-50%) translateX(-4px); color: var(--tacit-accent, #38d3a8); font-size: 13px; font-weight: 400; opacity: 0; transition: opacity 0.15s ease, transform 0.15s ease; pointer-events: none; z-index: 10; display: inline-block; }
.tacit-nav-link:hover .tacit-nav-link-arrow { opacity: 1; transform: translateY(-50%) translateX(0); }

/* Case study text links */
.tacit-case-list { display: flex; flex-direction: column; gap: var(--sp-3); }
.tacit-case-card {
  display: flex;
  flex-direction: column;
  gap: var(--sp-1);
  padding: var(--sp-5) var(--sp-6);
  border-radius: var(--radius-lg);
  background: #fff;
  border: 1px solid rgba(11,11,13,.04);
  text-decoration: none;
  color: #18181b;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.tacit-case-card:hover {
  background: #fff;
  border-color: rgba(56,211,168,.25);
  box-shadow: 0 2px 8px rgba(56,211,168,.08);
}
.tacit-case-card-top {
  display: flex;
  align-items: center;
  gap: var(--sp-3);
}
.tacit-case-card-industry {
  font-size: var(--fs-pip) !important;
  font-weight: 650 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: #38d3a8 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}
.tacit-case-card-nda {
  font-size: var(--fs-pip) !important;
  font-weight: 700 !important;
  color: #d97706 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  background: rgba(217,119,6,.08);
  border: 1px solid rgba(217,119,6,.15);
  border-radius: var(--radius-xs);
  padding: 1px var(--sp-2);
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}
.tacit-case-card-arrow {
  margin-left: auto;
  font-size: var(--fs-xxs) !important;
  color: rgba(11,11,13,.15) !important;
  transition: color .2s ease, transform .2s ease;
}
.tacit-case-card:hover .tacit-case-card-arrow { color: #38d3a8; transform: translateX(2px); }
.tacit-case-card-name {
  font-size: var(--fs-small) !important;
  font-weight: 650 !important;
  color: #18181b !important;
  line-height: 1.3 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}
.tacit-case-card-metric {
  font-size: var(--fs-xxs) !important;
  font-weight: 600 !important;
  color: rgba(11,11,13,.55) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}
.tacit-case-card-stat {
  font-size: var(--fs-micro) !important;
  font-weight: 450 !important;
  color: rgba(11,11,13,.36) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}
.tacit-nav-section--cases { display: flex; flex-direction: column; align-self: stretch; width: 525px; flex-shrink: 0; }
.tacit-case-grid { display: flex; gap: var(--sp-6); flex: 1; }
.tacit-case-grid-col { display: flex; flex-direction: column; gap: var(--sp-4); flex: 1; min-width: 0; }
.tacit-case-grid-label {
  font-size: var(--fs-pip) !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: rgba(11,11,13,.2) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  padding: 0 2px 2px;
}
.tacit-case-imgcard {
  display: block;
  position: relative;
  border-radius: var(--radius-2xl);
  overflow: hidden;
  min-height: 90px;
  text-decoration: none;
  transition: none;
  box-shadow: none !important;
}
.tacit-case-imgcard::before {
  content: '';
  position: absolute;
  inset: 0;
  background: inherit;
  background-size: cover;
  background-position: center;
  transition: transform .3s ease;
}
.tacit-case-imgcard:hover::before {
  transform: scale(1.03);
}
.tacit-case-imgcard:hover {
  transform: none;
}
.tacit-case-imgcard-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(2,3,6,.15) 0%, rgba(2,3,6,.70) 60%, rgba(2,3,6,.92) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: var(--sp-5) var(--sp-6);
  gap: var(--sp-1);
}
.tacit-case-imgcard-logo { position: absolute; top: 8px; left: 10px; height: 22px; width: auto; max-width: 100px; display: block; object-fit: contain; object-position: left; filter: brightness(0) invert(1); z-index: 2; }
.tacit-case-imgcard-name { font-size: var(--fs-xs) !important; font-weight: 640 !important; color: #fff !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; line-height: 1.3 !important; }
.tacit-case-imgcard-tag {
  position: absolute;
  top: 8px;
  right: 8px;
  font-size: 7px !important;
  font-weight: 620 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
  color: rgba(255,255,255,.85) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(6px);
  padding: 3px var(--sp-4);
  border-radius: var(--radius-sm);
}
.tacit-case-imgcard-nda {
  position: absolute;
  top: 7px;
  right: 8px;
  z-index: 2;
  font-size: var(--fs-pip) !important;
  font-weight: 700 !important;
  color: #fbbf24 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  background: rgba(0,0,0,.82);
  border-radius: var(--radius-xs);
  padding: 2.5px 5px;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}
.tacit-case-imgcard--request { cursor: pointer; }
.tacit-case-imgcard--request::after {
  content: 'Request details →';
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.55);
  color: #fff;
  font-family: var(--tacit-font);
  font-size: var(--fs-xs);
  font-weight: 640;
  letter-spacing: .01em;
  border-radius: var(--radius-2xl);
  opacity: 0;
  transition: opacity .25s ease;
}
.tacit-case-imgcard--request:hover::after { opacity: 1; }
.tacit-case-imgcard-metric {
  font-size: var(--fs-micro) !important;
  font-weight: 460 !important;
  color: rgba(255,255,255,.65) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  margin-top: 1px !important;
  line-height: 1.3 !important;
}
.tacit-case-view-all {
  display: block;
  margin-top: var(--sp-3);
  padding: 0;
  font-size: var(--fs-pip) !important;
  font-weight: 420 !important;
  color: rgba(11,11,13,.28) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  text-decoration: none !important;
  text-align: right !important;
  background: none !important;
  border: none;
  transition: color .2s ease;
}
.tacit-case-view-all:hover { color: rgba(11,11,13,.65); }

.tacit-nav-section--detail { display: none; width: 160px; flex-shrink: 0; overflow: hidden; }
.tacit-nav-section--detail.is-visible { display: flex; flex-direction: column; border-left: 1px solid rgba(11,11,13,.06); padding-left: var(--sp-6); align-self: stretch; }
.tacit-industry-detail { display: none; }
.tacit-industry-detail-title { font-size: var(--fs-xxs) !important; font-weight: 700 !important; color: var(--tacit-fg) !important; margin-bottom: var(--sp-4) !important; letter-spacing: -0.01em !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-industry-detail-items { display: flex; flex-direction: column; gap: 0; }
.tacit-industry-detail-items span { font-size: var(--fs-micro) !important; color: var(--tacit-fg-muted, rgba(11,11,13,.72)) !important; font-weight: 500 !important; line-height: 1.4 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; padding: 5px 0; border-bottom: 1px solid rgba(11,11,13,.04); }
.tacit-industry-detail-items span:last-child { border-bottom: none; }
[data-theme="dark"] .tacit-nav-section--detail { border-left-color: rgba(255,255,255,.06) !important; background: transparent !important; border-radius: 0 !important; }
[data-theme="dark"] .tacit-industry-detail-items span { color: rgba(255,255,255,.7) !important; border-bottom-color: rgba(255,255,255,.08) !important; }
[data-theme="dark"] .tacit-industry-detail-title { color: #fff !important; font-weight: 700 !important; font-size: 13px !important; letter-spacing: -0.01em !important; }

/* Nav icon image sizes */
.tacit-nav-icon-img,
.tacit-nav-icon-img-sm { width: 20px; height: 20px; object-fit: contain; filter: brightness(0) !important; opacity: 1 !important; }
.tacit-nav-link:hover .tacit-nav-icon-img-sm { opacity: 1 !important; filter: brightness(0) !important; }
.tacit-nav-icon-img-sm.tacit-icon-no-invert,
.tacit-nav-link:hover .tacit-nav-icon-img-sm.tacit-icon-no-invert { filter: none !important; opacity: 1 !important; }
.tacit-nav-icon-svg { width: 20px; height: 20px; flex-shrink: 0; color: rgba(11,11,13,.5) !important; }
[data-theme="dark"] .tacit-nav-icon-svg { color: rgba(255,255,255,1) !important; }
.tacit-industry-icon-img { width: 100%; height: 100%; object-fit: contain; filter: contrast(1.6) brightness(0.85); opacity: 0.92; }
@media (prefers-color-scheme: dark) { .tacit-industry-icon-img { filter: invert(1) brightness(2.4) contrast(2.2) drop-shadow(0 0 .5px #fff) drop-shadow(0 0 .3px #fff); opacity: 0.97; mix-blend-mode: screen; } }

/* ----------------------------------------
   RESPONSIVE NAV: Mobile-first breakpoints
   ---------------------------------------- */

/* Mobile: <= 768px - hamburger menu */
@media (max-width: 768px) {
  .tacit-nav-desktop { display: none; }
  .tacit-nav-cta { display: none; }
  .tacit-nav-mobile-btn { display: inline-flex; }
  .tacit-nav-container { padding: 0 16px; }
  .tacit-nav-inner { margin: 0 !important; }
  .tacit-nav-container { border-radius: 0 !important; }
  .tacit-nav-flex { display: flex; justify-content: space-between; height: 60px; }
  .tacit-nav-brand { width: auto; }
  .tacit-nav-brand img { height: 15px; }
  body:has(.tacit-nav) { padding-top: 60px !important; }
  .hero-viz-wrap,
  .tacitx-hero-wrapper-a1 { margin-top: -60px !important; padding-top: 60px !important; }
  .tacit-trust-hero { margin-top: -60px !important; }
  .tacit-nav.scrolled .tacit-nav-inner { margin: 0 !important; }
  .tacit-nav.scrolled .tacit-nav-container { border-radius: 0 !important; background: rgba(255,255,255,.97) !important; backdrop-filter: blur(12px) !important; border: none !important; border-bottom: 1px solid rgba(11,11,13,.06) !important; max-width: 100% !important; padding: 0 16px !important; }
  [data-theme="dark"] .tacit-nav.scrolled .tacit-nav-container { background: rgba(5,8,18,.97) !important; border-bottom: 1px solid rgba(255,255,255,.06) !important; border-radius: 0 !important; }
  .tacit-nav-mobile a, .tacit-nav-mobile button, .tacit-nav-mobile-btn, .tacit-nav-brand a { -webkit-tap-highlight-color: transparent; }
}
@media (max-width: 480px) {
  .tacit-nav-brand img { height: 13px; }
  .tacit-nav-flex { height: 52px; }
  body:has(.tacit-nav) { padding-top: 52px !important; }
  .hero-viz-wrap,
  .tacitx-hero-wrapper-a1 { margin-top: -52px !important; padding-top: 52px !important; }
  .tacit-trust-hero { margin-top: -52px !important; }
  .tacit-nav-mobile-link { font-size: var(--fs-caption); padding: var(--sp-5) var(--sp-8); }
  .tacit-nav-mobile-link-sm { font-size: var(--fs-small); }
  .tacit-nav-mobile-cta { font-size: var(--fs-small); height: 34px; padding: 0 var(--sp-9); line-height: 34px; }
}

/* Tablet: 769px - 1100px - desktop nav with adapted panels */
@media (min-width: 769px) and (max-width: 1100px) {
  .tacit-nav-desktop { display: flex; gap: var(--sp-1); }
  .tacit-nav-cta { display: flex; }
  .tacit-nav-mobile-btn { display: none; }
  .tacit-nav-mobile { display: none; }
  .tacit-nav-container { padding: 0 16px; }
  .tacit-nav-inner { margin: var(--sp-2) var(--sp-4); margin-bottom: 0; }
  .tacit-nav-btn { height: var(--btn-sm); padding: 0 var(--sp-3); font-size: var(--fs-small); }
  .tacit-nav-cta-login { font-size: var(--fs-small); height: var(--btn-sm); padding: 0 var(--sp-4); }
  .tacit-nav-cta-signup { font-size: var(--fs-small); height: var(--btn-sm); padding: 0 4px 0 12px; }
  .tacit-nav-cta-signup::after { width: 22px; height: 22px; background-size: 11px; }
  .tacit-nav.scrolled .tacit-nav-container { border-radius: var(--radius-pill); max-width: 100%; padding: 0 var(--sp-9); }

  /* Adapted panel widths and grids for tablet */
  .tacit-nav-panel { left: 50%; transform: translateX(-50%) translateY(-8px); }
  .tacit-nav-panel.show { transform: translateX(-50%) translateY(0); }
  #product-panel { width: min(90vw, 580px); }
  #solutions-panel { width: min(95vw, 880px); left: 0; }
  #company-panel { width: min(85vw, 190px) !important; }
  .tacit-nav-grid-2 { grid-template-columns: 1fr 1fr; gap: var(--sp-4); }
  .tacit-nav-grid-solutions, .tacit-nav-grid-solutions.has-detail { display: flex; flex-direction: column; gap: var(--sp-4); }
  .tacit-nav-section--cases { display: none !important; }
  .tacit-nav-section--detail, .tacit-nav-section--detail.is-visible { display: none !important; }
  .tacit-nav-link-title { font-size: var(--fs-xxs); }
  .tacit-nav-link-desc { font-size: var(--fs-pip); }
  .tacit-nav-role-title { font-size: var(--fs-xxs); }
  .tacit-nav-role-desc { font-size: var(--fs-pip); }
  .tacit-industry-title { font-size: var(--fs-xxs); }
  .tacit-industry-desc { font-size: var(--fs-pip); }
  .tacit-nav-section-title { font-size: var(--fs-pip); }
}
@media (min-width: 1000px) {
  .tacit-nav-section--cases { display: flex !important; flex-direction: column; align-self: stretch; width: 555px; flex-shrink: 0; }
  .tacit-nav-grid-solutions { display: flex !important; gap: var(--sp-3); }
  #solutions-panel { width: auto; max-width: 95vw; }
}

/* Desktop: 1101px+ - full nav */
@media (min-width: 1101px) {
  .tacit-nav-desktop { display: flex; }
  .tacit-nav-cta { display: flex; }
  .tacit-nav-mobile-btn { display: none; }
  .tacit-nav-mobile { display: none; }
}

/* ============================================
   GLOBAL BUTTONS (work outside hero wrapper)
   ============================================ */
.tacitx-btn-a1 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-4);
  border-radius: 999px;
  font-size: var(--fs-caption);
  font-weight: 600;
  height: var(--btn-md);
  padding: 0 var(--sp-9);
  border: none;
  cursor: pointer;
  text-decoration: none;
  font-family: var(--tacit-font);
  transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease;
  box-sizing: border-box;
}
.tacitx-btn-a1:active { transform: scale(0.97); }
.tacitx-btn-primary-a1::before,
.tacitx-btn-secondary-a1::before { display: none; }
.tacitx-btn-secondary-a1::after { display: none; }
.tacitx-btn-primary-a1::after {
  content: '';
  display: inline-flex;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255,255,255,.28) url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.333 8h9.334M8.667 4l4 4-4 4' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 14px;
  flex-shrink: 0;
}
a.tacitx-btn-primary-a1,
button.tacitx-btn-primary-a1,
.tacitx-btn-primary-a1 {
  background: var(--tacit-accent, #38d3a8);
  color: #fff !important;
  border-radius: 999px;
  padding-right: 6px;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
}
.tacitx-btn-primary-a1:hover {
  background: #2ec49c;
  box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.tacitx-btn-primary-a1:active {
}
.tacitx-btn-secondary-a1 {
  background: var(--tacit-bg, #fff);
  color: var(--tacit-fg, #111827);
  border: none;
  border-radius: 999px;
  box-shadow: 0 0 0 1px rgba(11,11,13,.06), 0 1px 3px rgba(0,0,0,.04);
}
.tacitx-btn-secondary-a1:hover {
  background: var(--tacit-bg, #fff);
  box-shadow: 0 0 0 1px rgba(11,11,13,.08), 0 2px 8px rgba(0,0,0,.06);
}
.tacitx-btn-secondary-a1:active {
}

/* ============================================
   PRICING PAGE
   ============================================ */
.tacit-pricing-tiers { padding-top: 0; }
.tacit-pricing-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-10);
  max-width: 1100px;
  margin: 0 auto;
}
.tacit-pricing-card {
  position: relative;
  background: #fff;
  border: 1px solid rgba(229, 231, 235, 0.8);
  border-radius: var(--radius-2xl);
  padding: var(--sp-12) var(--sp-12);
  display: flex;
  flex-direction: column;
  transition: box-shadow 0.2s, border-color 0.2s;
}
.tacit-pricing-card:hover {
  box-shadow: 0 8px 32px -8px rgba(0, 0, 0, 0.08);
  border-color: rgba(229, 231, 235, 1);
}
.tacit-pricing-card--featured {
  border-color: #38d3a8;
  box-shadow: 0 0 0 1px #38d3a8, 0 8px 32px -8px rgba(56, 211, 168, 0.15);
}
.tacit-pricing-card--featured:hover {
  box-shadow: 0 0 0 1px #38d3a8, 0 12px 40px -8px rgba(56, 211, 168, 0.2);
  border-color: #38d3a8;
}
.tacit-pricing-badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: #38d3a8;
  color: #fff;
  font-size: var(--fs-xs);
  font-weight: 600;
  padding: var(--sp-2) var(--sp-8);
  border-radius: var(--radius-4xl);
  white-space: nowrap;
  letter-spacing: 0.02em;
}
.tacit-pricing-step {
  width: var(--sp-12);
  height: var(--sp-12);
  border-radius: var(--radius-lg);
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--fs-body-sm);
  font-weight: 700;
  color: #111827;
  margin-bottom: var(--sp-8);
}
.tacit-pricing-card--featured .tacit-pricing-step {
  background: rgba(56, 211, 168, 0.12);
  color: #0d9373;
}
.tacit-pricing-card-title {
  font-size: var(--fs-title-sm);
  font-weight: 700;
  color: #111827;
  margin: 0 0 var(--sp-6);
}
.tacit-pricing-card-desc {
  font-size: var(--fs-caption);
  line-height: 1.6;
  color: #6b7280;
  margin: 0 0 var(--sp-10);
  flex: 1;
}
.tacit-pricing-features {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--sp-11);
}
.tacit-pricing-features li {
  position: relative;
  padding-left: var(--sp-9);
  font-size: var(--fs-caption);
  color: #374151;
  line-height: 1.5;
  margin-bottom: var(--sp-5);
}
.tacit-pricing-features li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 5px;
  width: 14px;
  height: 14px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%2338d3a8' stroke-width='3' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
}
.tacit-pricing-cta {
  display: block;
  text-align: center;
  margin-top: auto;
  width: 100%;
  box-sizing: border-box;
}

/* Perks grid */
.tacit-pricing-perks-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-9);
  max-width: 960px;
  margin: 0 auto 40px;
}
.tacit-pricing-perk {
  padding: var(--sp-10);
  border-radius: var(--radius-2xl);
  border: 1px solid #e5e7eb;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.tacit-pricing-perk:hover {
  border-color: #d1d5db;
  box-shadow: var(--tacit-shadow-sm);
}
.tacit-pricing-perk-title {
  font-size: var(--fs-body-sm);
  font-weight: 600;
  color: #111827;
  line-height: 1.4;
  margin-bottom: var(--sp-3);
}
.tacit-pricing-perk-desc {
  font-size: var(--fs-small);
  color: #6b7280;
  line-height: 1.5;
}

/* Trust pills */
.tacit-pricing-trust-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--sp-5);
  max-width: 800px;
  margin: 0 auto;
}
.tacit-trust-pill {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-3);
  padding: var(--sp-3) var(--sp-8);
  border: 1px solid #d1d5db;
  border-radius: var(--radius-pill);
  font-size: var(--fs-small);
  font-weight: 500;
  color: #4b5563;
  background: transparent;
  white-space: nowrap;
}
.tacit-trust-pill svg {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  color: #38d3a8;
}


/* Pricing responsive */
@media (max-width: 900px) {
  .tacit-pricing-grid { grid-template-columns: 1fr; max-width: 480px; }
  .tacit-pricing-perks-grid { grid-template-columns: repeat(2, 1fr); }
  .tacit-pricing-trust-pills { gap: var(--sp-4); }
}
@media (max-width: 600px) {
  .tacit-pricing-perks-grid { grid-template-columns: 1fr; }
  .tacit-pricing-trust-pills { gap: var(--sp-3); }
  .tacit-pricing-card { padding: var(--sp-11) var(--sp-10); }
}
@media (max-width: 480px) {
  .tacit-pricing-card { padding: var(--sp-9) var(--sp-7); }
  .tacit-pricing-card-title { font-size: 18px; }
  .tacit-pricing-card-desc { font-size: 12px; }
  .tacit-pricing-features li { font-size: 12px; }
  .tacit-pricing-step { font-size: 9px; padding: 3px 8px; }
}

/* ============================================
   INLINE STYLE REPLACEMENTS
   ============================================ */
.tacit-proof-item { text-decoration: none; }
.tacit-feature-placeholder img { width: 100%; height: 100%; object-fit: contain; padding: var(--sp-9); }

/* ============================================
   PREVIEW-ONLY STYLES
   ============================================ */
[data-block] { transition: background .3s ease, color .3s ease; }
[data-block][data-theme="dark"] { background: #0a0f19; border-radius: var(--radius-xl); overflow: hidden; }
[data-block="topbar"][data-theme="dark"] { overflow: visible; position: relative; z-index: 100; }
[data-block="before-after"] { overflow: visible !important; }
.preview-divider { max-width: 1000px; margin: 0 auto; padding: 0 var(--sp-10); }
.preview-divider::after { content: ''; display: block; height: 1px; background: linear-gradient(90deg, transparent, rgba(148, 163, 184, 0.3), transparent); }


/* ============================================
   MOBILE NAVIGATION
   ============================================ */
.tacit-nav-mobile-section { border-bottom: 1px solid rgba(11,11,13,.06); padding: 0; }
.tacit-nav-mobile-toggle { display: flex; width: 100%; align-items: center; justify-content: space-between; border-radius: 0; padding: var(--sp-6) var(--sp-4); text-align: left; font-size: var(--fs-body-sm); font-weight: 600; color: #111827; background: transparent; border: none; cursor: pointer; }
.tacit-nav-mobile-chevron { height: 18px; width: 18px; transition: transform 0.3s ease; }
.tacit-nav-mobile-collapse { overflow: hidden; transition: max-height 0.3s ease, opacity 0.3s ease; max-height: 0; opacity: 0; }
.tacit-nav-mobile-pad { padding: var(--sp-4) var(--sp-6); }
.tacit-nav-mobile-grid { display: grid; gap: var(--sp-4); }
.tacit-nav-mobile-grid-sm { display: grid; gap: var(--sp-3); }
.tacit-nav-mobile-link { display: block; border-radius: var(--radius-md); padding: var(--sp-5) var(--sp-6); font-size: var(--fs-body-sm); text-decoration: none; color: #374151; background: transparent; transition: background 0.2s; }
.tacit-nav-mobile-link:hover { background: rgba(11,11,13,.03); }
.tacit-nav-mobile-link-sm { display: block; border-radius: var(--radius); padding: var(--sp-4) var(--sp-6); font-size: var(--fs-caption); text-decoration: none; color: #374151; background: transparent; transition: background 0.2s; }
.tacit-nav-mobile-link-sm:hover { background: rgba(11,11,13,.03); }
.tacit-nav-mobile-label { font-size: var(--fs-xs); font-weight: 600; color: #6b7280; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: var(--sp-4); }
.tacit-nav-mobile-group-label { display: block; font-size: var(--fs-micro); font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: 0.08em; padding: var(--sp-3) var(--sp-2) var(--sp-1); grid-column: 1 / -1; }
.tacit-nav-mobile-group-label:first-child { padding-top: 0; }
.tacit-nav-mobile-group { margin-bottom: var(--sp-6); }
.tacit-nav-mobile-standalone { display: block; padding: var(--sp-6) var(--sp-4); font-size: var(--fs-body-sm); font-weight: 500; color: #111827; text-decoration: none; border-bottom: 1px solid rgba(11,11,13,.06); }
.tacit-nav-mobile-standalone:hover { color: #38d3a8; }
.tacit-nav-mobile-cta-wrap { margin-top: var(--sp-9); text-align: center; padding: 0 var(--sp-6); }
.tacit-nav-mobile-cta { display: block; border-radius: 999px; background: #38d3a8; height: var(--btn-md); padding: 0 var(--sp-9); font-size: var(--fs-caption); font-weight: 600; color: #fff !important; text-decoration: none; transition: background 0.2s; line-height: var(--btn-md); text-align: center; box-sizing: border-box; }
.tacit-nav-mobile-cta:hover { background: var(--tacit-accent-deep); }
.tacit-nav-social-svg { height: 16px; width: 16px; }
.tacit-case-hover-arrow { font-size: var(--fs-pip); }

/* ============================================
   MISC UTILITY CLASSES
   ============================================ */
.tacit-block-wrap { padding: var(--sp-17) var(--sp-10); }
.tacit-block-line { display: block; }
.tacit-preview-footer { max-width: 1000px; margin: 0 auto; padding: var(--sp-13) var(--sp-10) var(--sp-16); text-align: center; font-size: var(--fs-xs); color: #9ca3af; }
.tacit-preview-footer-copy { margin-top: var(--sp-3); }

/* ============================================
   GAP DIAGRAM (3-mode toggle)
   ============================================ */
.tacit-gap { padding: 104px 0; background: radial-gradient(circle, rgba(11,11,13,.07) 0.5px, transparent 0.5px) 0 0 / 16px 16px, linear-gradient(180deg, #f9fafb 0%, #fcfcfd 50%, #fff 100%); text-align: center; border-radius: var(--radius-5xl) var(--radius-5xl) 0 0; position: relative; --dot-x: -999px; --dot-y: -999px; }
.tacit-gap-glow { position: absolute; inset: 0; background: radial-gradient(circle, rgba(11,11,13,.22) 0.5px, transparent 0.5px) 0 0 / 16px 16px; -webkit-mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%); mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%); pointer-events: none; border-radius: inherit; z-index: 0; transition: opacity 0.3s ease; opacity: 0; }
.tacit-gap:hover .tacit-gap-glow { opacity: 1; }
.tacit-gap::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 140px; background: linear-gradient(to bottom, transparent, #fff); pointer-events: none; z-index: 0; }
.tacit-gap-header, .tacit-gap-toggle, .tacit-gap-card, .tacit-gap-stat, .tacit-gap-cta-wrap { position: relative; z-index: 1; }
.tacit-gap-header { max-width: 860px; margin: 0 auto 28px; min-height: 148px; display: flex; flex-direction: column; justify-content: center; }
.tacit-gap-toggle { display: inline-flex; gap: 2px; background: rgba(255,255,255,.5); border: 1px solid rgba(11,11,13,.06); border-radius: var(--radius-pill); padding: 3px; margin: 0 auto var(--sp-8); position: relative; box-shadow: 0 4px 16px rgba(0,0,0,.03); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.tacit-gap-slider { display: none; }
.tacit-gap-btn { height: var(--btn-md); padding: 0 16px; width: 110px; min-width: 110px; border: 1px solid rgba(11,11,13,.08); background: transparent; border-radius: var(--radius-pill); font-size: var(--fs-small); font-weight: 500; color: rgba(11,11,13,.32); cursor: pointer; transition: color 0.3s ease, background 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; font-family: inherit; letter-spacing: -0.01em; text-align: center; position: relative; z-index: 1; -webkit-user-select: none; user-select: none; isolation: isolate; box-sizing: border-box; }
.tacit-gap-btn.active { color: #0b0b0d; font-weight: 600; background: #fff; border-color: rgba(11,11,13,.06); box-shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 1px rgba(0,0,0,.04); }
.tacit-gap-btn:hover:not(.active) { color: rgba(11,11,13,.55); }
.tacit-gap-btn::before { content: ''; position: absolute; z-index: -1; inset: -1px; border-radius: inherit; padding: 1px; background: linear-gradient(90deg, transparent 0%, transparent 44%, rgba(56,211,168,.2) 46.5%, rgba(56,211,168,.45) 49%, rgba(56,211,168,.55) 50%, rgba(56,211,168,.45) 51%, rgba(56,211,168,.2) 53.5%, transparent 56%, transparent 100%); background-size: 300% 100%; background-position: var(--sweep-pos, 50%) 0; -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; opacity: var(--sweep-on, 0); }
.tacit-gap-card { border-radius: 0; border: none; background: transparent; box-shadow: none; overflow: visible; position: relative; max-width: none; width: 100%; margin: 0 auto; }
.tacit-gap-card::before { display: none; }
.tacit-gap-card::after { display: none; }
.tacit-gap-card-inner { padding: 0; position: relative; z-index: 1; overflow: hidden; -webkit-mask-image: linear-gradient(to right, transparent, black 80px, black calc(100% - 80px), transparent); mask-image: linear-gradient(to right, transparent, black 80px, black calc(100% - 80px), transparent); }
.tacit-gap-svg { width: 235%; height: auto; display: block; transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1); transform: translateX(0); }
.tacit-gap-svg[data-phase="dfmea"] { transform: translateX(5.8%); }
.tacit-gap-svg[data-phase="pfmea"] { transform: translateX(-28.8%); }
.tacit-gap-svg[data-phase="maintenance"] { transform: translateX(-63.3%); }
.tacit-gap-header, .tacit-gap-stat { transition: opacity 0.2s ease; }
.tacit-gap-header.is-fading, .tacit-gap-stat.is-fading { opacity: 0; }
.tacit-gap-stat { max-width: 820px; margin: clamp(28px, 3.2vw, 48px) auto 0; text-align: center; font-size: var(--fs-caption); font-weight: 450; letter-spacing: -0.005em; color: rgba(11,11,13,.7); line-height: 1.7; font-style: normal; }
.tacit-gap-cta-wrap { text-align: center; margin-top: clamp(16px, 2vw, 28px); position: relative; z-index: 1; }
.tacit-gap-cta { text-decoration: none; }
.tacit-gap-cta.is-fading { opacity: 0; }
@media (max-width: 768px) {
  .tacit-gap { padding: 72px 0; }
  .tacit-gap-header { min-height: 120px; }
  .tacit-gap-card { border-radius: 0; }
  .tacit-gap-card-inner { overflow: hidden; border-radius: 12px; }
  .tacit-gap-svg { width: 235%; }
}
@media (max-width: 480px) {
  .tacit-gap { padding: 56px 0; }
  .tacit-gap-header { min-height: 110px; }
  .tacit-gap-toggle { margin-bottom: var(--sp-6); }
  .tacit-gap-btn { font-size: var(--fs-xs); min-width: 80px; }
  .tacit-gap-svg { width: 235%; }
  .tacit-gap-card-inner { border-radius: 12px; }
}

/* ============================================
   INDUSTRY PAGES
   ============================================ */
.tacit-industry-hero { text-align: center; padding-top: 120px; padding-bottom: var(--sp-14); }
.tacit-industry-hero .tacit-section-title { font-size: var(--fs-display); max-width: 800px; margin: 0 auto; }
.tacit-industry-hero .tacit-section-desc { max-width: 640px; margin: var(--sp-9) auto 0; font-size: var(--fs-body); line-height: 1.7; }
.tacit-industry-hero-actions { display: flex; gap: var(--sp-6); justify-content: center; margin-top: var(--sp-12); }

/* Hero with background image */
.tacit-industry-hero-bg {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  margin-top: 40px;
  border-radius: var(--radius-4xl);
  overflow: hidden;
  background-size: cover;
  background-position: center 40%;
  min-height: 440px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  outline: none;
}
.tacit-industry-hero-bg-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 15, 25, .68) 0%, rgba(10, 15, 25, .82) 100%);
  z-index: 1;
}
.tacit-industry-hero-bg-content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: var(--sp-17) var(--sp-13);
  max-width: 740px;
}
.tacit-industry-hero-bg-content .tacit-section-title {
  font-size: var(--fs-display);
  color: #fff !important;
  margin: 0 auto;
  max-width: 720px;
}
.tacit-industry-hero-bg-content .tacit-section-desc {
  max-width: 580px;
  margin: var(--sp-8) auto 0;
  font-size: var(--fs-body);
  line-height: 1.7;
  color: rgba(255, 255, 255, .92) !important;
}
.tacit-industry-hero-bg-content .tacit-section-eyebrow { color: rgba(255,255,255,.7) !important; opacity: 1 !important; }
.tacit-industry-hero-bg-content .tacit-industry-hero-actions {
  display: flex;
  gap: var(--sp-6);
  justify-content: center;
  margin-top: var(--sp-11);
}
.tacit-industry-hero-bg-content .tacitx-btn-secondary-a1 {
  background: rgba(255, 255, 255, .08);
  color: #fff !important;
  border-color: rgba(255, 255, 255, .3);
  box-shadow: none;
}
.tacit-industry-hero-bg-content .tacitx-btn-secondary-a1:hover {
  background: rgba(255, 255, 255, .15);
  border-color: rgba(255, 255, 255, .45);
}

/* Legacy hero image block (for pages not yet converted) */
.tacit-industry-image-block { padding-top: 0; padding-bottom: 0; text-align: center; }
.tacit-industry-hero-img {
  width: 100%;
  max-width: 960px;
  height: 320px;
  object-fit: cover;
  border-radius: var(--radius-3xl);
  margin: 0 auto;
  display: block;
}

/* Metrics — matches block_results.html strip */
.tacit-industry-metrics {
  max-width: 1320px;
  margin: 0 auto;
  padding: var(--sp-13) var(--sp-10);
  text-align: center;
}
.tacit-industry-metrics .tacit-section-eyebrow { margin-bottom: var(--sp-8); }
.tacit-industry-metrics-strip {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--sp-12);
  flex-wrap: wrap;
}
.tacit-industry-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  position: relative;
}
.tacit-industry-metric + .tacit-industry-metric::before {
  content: '';
  position: absolute;
  left: calc(var(--sp-12) / -2);
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 48px;
  background: var(--tacit-border, rgba(11,11,13,.08));
}
.tacit-industry-metric-value {
  display: block;
  font-family: var(--tacit-font-display);
  font-size: var(--fs-body-lg);
  font-weight: 650;
  color: var(--tacit-fg, #0b0b0d);
  letter-spacing: -0.02em;
  line-height: 1.3;
}
.tacit-industry-metric-label {
  display: block;
  font-size: var(--fs-xs);
  color: var(--tacit-fg-muted, rgba(11,11,13,.45));
  text-align: center;
  line-height: 1.4;
}
.tacit-industry-metrics--equal .tacit-industry-metrics-strip {
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  gap: 24px;
}
.tacit-industry-metrics--equal .tacit-industry-metric {
  flex: 1 1 0;
  min-width: 0;
  max-width: 280px;
}
.tacit-industry-metrics--equal .tacit-industry-metric-value {
  font-size: clamp(20px, 2vw, 26px);
  font-weight: 700;
}
.tacit-industry-metrics--equal .tacit-industry-metric-label {
  width: 280px;
  max-width: 100%;
  min-height: 2.8em;
}
.tacit-industry-metrics--equal .tacit-industry-metric-label > span {
  display: block;
}
.tacit-industry-metrics--equal .tacit-industry-metric + .tacit-industry-metric::before {
  left: -12px;
}

/* Industry proof stats (inline failure story cards) */
.tacit-industry-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 28px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 640px) { .tacit-industry-proof-grid { grid-template-columns: 1fr; } }
.tacit-industry-proof-card {
  text-align: center;
  padding: 16px;
  border-radius: 12px;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
}
[data-theme="dark"] .tacit-industry-proof-card { background: #111827; border-color: rgba(255,255,255,.08); }
.tacit-industry-proof-value {
  display: block;
  font-size: var(--fs-title-sm);
  font-weight: 700;
  color: #0b0b0d;
}
[data-theme="dark"] .tacit-industry-proof-value { color: #f1f5f9; }
.tacit-industry-proof-label {
  font-size: 12px;
  color: rgba(11,11,13,.5);
  line-height: 1.4;
}
[data-theme="dark"] .tacit-industry-proof-label { color: rgba(255,255,255,.45); }

/* Industry audience callout cards */
.tacit-industry-callouts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-7);
  max-width: 640px;
  margin: var(--sp-10) auto 0;
}
@media (max-width: 640px) { .tacit-industry-callouts { grid-template-columns: 1fr; } }
.tacit-industry-callout {
  padding: var(--sp-9);
  border-radius: var(--radius-xl);
  background: #fff;
  border: 1px solid rgba(11,11,13,.06);
  text-align: center; cursor: default;
}
[data-theme="dark"] .tacit-industry-callout { background: var(--tacit-card-bg); border-color: var(--tacit-card-border); }
.tacit-industry-callout strong {
  display: block;
  margin-bottom: var(--sp-4);
  font-size: var(--fs-body-sm);
  font-weight: 680;
  color: #0b0b0d;
}
[data-theme="dark"] .tacit-industry-callout strong { color: var(--tacit-fg); }
.tacit-industry-callout span {
  color: rgba(11,11,13,.52);
  font-size: var(--fs-small);
  line-height: 1.6;
}
[data-theme="dark"] .tacit-industry-callout span { color: rgba(255,255,255,.55); }

/* Capabilities grid */
.tacit-industry-capabilities { padding-top: var(--sp-17); }
.tacit-industry-capabilities--centered > .tacit-section-eyebrow,
.tacit-industry-capabilities--centered > .tacit-section-title {
  text-align: center;
}
.tacit-industry-capabilities--centered > .tacit-section-eyebrow {
  margin-bottom: var(--sp-4) !important;
}
.tacit-industry-capabilities--centered > .tacit-section-title {
  max-width: 760px;
  margin-bottom: var(--sp-6) !important;
  text-wrap: balance;
}
.tacit-industry-capabilities--centered > .tacit-industry-caps-grid {
  margin-top: var(--sp-7);
}
.tacit-industry-caps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-7);
  margin-top: var(--sp-12);
}
.tacit-industry-cap-card {
  padding: var(--sp-9) var(--sp-9);
  border-radius: var(--radius-xl);
  border: 1px solid var(--tacit-card-border, rgba(11,11,13,.06));
  background: transparent;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.tacit-industry-cap-card:hover {
  border-color: rgba(11,11,13,.12);
  box-shadow: 0 4px 16px -4px rgba(0,0,0,.06);
}
.tacit-industry-cap-title {
  font-size: var(--fs-body-sm);
  font-weight: 680;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-4);
}
.tacit-industry-cap-desc {
  font-size: var(--fs-small);
  line-height: 1.65;
  color: var(--tacit-fg-muted);
  margin: 0;
}
[data-theme="dark"] .tacit-industry-cap-card { background: transparent; border-color: rgba(255,255,255,.08); }
[data-theme="dark"] .tacit-industry-cap-card:hover { border-color: rgba(255,255,255,.14); box-shadow: none; }

/* Audience */
.tacit-industry-audience { text-align: center; padding-top: var(--sp-17); }
.tacit-industry-audience .tacit-section-desc { max-width: 640px; margin: var(--sp-8) auto 0; }
.tacit-industry-audience--compact > .tacit-section-eyebrow {
  margin-bottom: var(--sp-4) !important;
}
.tacit-industry-audience--compact > .tacit-section-title {
  max-width: 760px;
  margin-bottom: var(--sp-5) !important;
  text-wrap: balance;
}
.tacit-industry-audience--compact > .tacit-section-desc {
  margin-top: 0 !important;
}
.tacit-industry-paths {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--sp-7);
  max-width: 640px;
  margin-top: var(--sp-9);
  margin: var(--sp-11) auto 0;
}
.tacit-industry-path {
  padding: var(--sp-9) var(--sp-9);
  border-radius: var(--radius-xl);
  border: 1px solid var(--tacit-card-border, rgba(11,11,13,.06));
  background: var(--tacit-bg, #fff);
  text-align: center;
  cursor: default;
}
.tacit-industry-path-label {
  display: inline-block;
  font-size: var(--fs-xxs);
  font-weight: 650;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #38d3a8;
  margin-bottom: var(--sp-4);
}
.tacit-industry-path-title {
  font-size: var(--fs-body-sm);
  font-weight: 680;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-4);
}
.tacit-industry-path-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  margin: 0;
}
[data-theme="dark"] .tacit-industry-path { background: transparent; border-color: rgba(255,255,255,.08); }
@media (max-width: 600px) { .tacit-industry-paths { grid-template-columns: 1fr; } }
.tacit-industry-audience-quals {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--sp-9);
  max-width: 800px;
  margin: var(--sp-13) auto 0;
}
.tacit-industry-qual { text-align: center; }
.tacit-industry-qual-title {
  display: block;
  font-size: var(--fs-caption);
  font-weight: 680;
  color: #0b0b0d;
  margin-bottom: var(--sp-2);
}
.tacit-industry-qual-desc {
  display: block;
  font-size: var(--fs-small);
  color: rgba(11,11,13,.45);
  line-height: 1.5;
}

/* Standards */
.tacit-industry-standards { padding-top: var(--sp-14); padding-bottom: var(--sp-14); }
.tacit-industry-standards-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--sp-6);
  margin-top: var(--sp-9);
}

/* Getting started steps */
.tacit-industry-start { text-align: center; padding-top: var(--sp-17); }
.tacit-industry-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-10);
  margin-top: var(--sp-12);
  text-align: center;
}
.tacit-industry-step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--sp-13);
  height: var(--sp-13);
  border-radius: var(--radius-xl);
  background: var(--tacit-accent-soft);
  color: var(--tacit-accent);
  font-size: var(--fs-body-sm);
  font-weight: 700;
}
.tacit-industry-step-title {
  font-size: var(--fs-body-lg);
  font-weight: 680;
  margin: var(--sp-8) 0 var(--sp-4);
  color: #0b0b0d;
}
.tacit-industry-step-desc {
  font-size: var(--fs-small);
  line-height: 1.65;
  color: rgba(11,11,13,.52);
  margin: 0;
}
.tacit-industry-start-cta { margin-top: var(--sp-13); }

/* Industry dark mode */

/* Industry responsive */
@media (max-width: 768px) {
  .tacit-industry-caps-grid { grid-template-columns: 1fr; }
  .tacit-industry-steps { grid-template-columns: 1fr; gap: var(--sp-9); }
  .tacit-industry-metrics-strip { flex-direction: column; gap: var(--sp-9); }
  .tacit-industry-metric + .tacit-industry-metric::before { width: var(--sp-13); height: 1px; left: 50%; top: calc(var(--sp-9) / -2); transform: translateX(-50%); }
  .tacit-industry-hero-actions { flex-direction: column; align-items: center; }
  .tacit-industry-audience-quals { grid-template-columns: repeat(2, 1fr); }
  .tacit-industry-hero-img { height: 200px; border-radius: var(--radius-xl); }
  .tacit-industry-hero-bg { min-height: 360px; border-radius: var(--radius-3xl); margin-left: var(--sp-8); margin-right: var(--sp-8); }
  .tacit-industry-hero-bg-content { padding: var(--sp-14) var(--sp-9); }
  .tacit-industry-hero-bg-content .tacit-industry-hero-actions { flex-direction: column; align-items: center; }
}
@media (max-width: 480px) {
  .tacit-industry-audience-quals { grid-template-columns: 1fr; }
  .tacit-industry-hero-bg { min-height: 280px; border-radius: var(--radius-xl); }
  .tacit-industry-hero-bg-content { padding: var(--sp-12) var(--sp-8); }
}

/* ============================================
   CAPABILITY PAGES
   ============================================ */
.tacit-cap-hero { text-align: center; padding-top: 120px; padding-bottom: 80px; }
.tacit-cap-hero .tacit-section-title { font-size: var(--fs-display); max-width: 800px; margin: 0 auto !important; }
.tacit-cap-hero .tacit-section-desc { max-width: 640px; margin: var(--sp-8) auto 0 !important; }
.tacit-cap-hero-actions { display: flex; gap: var(--sp-6); justify-content: center; margin-top: var(--sp-12); }
.tacit-cap-hero + .tacit-block,
.tacit-cap-hero + .tv2-inline-proof,
.tacit-cap-hero + .tacit-cap-visual { margin-top: var(--sp-6); }
.tacit-cap-features { padding-top: 80px !important; padding-bottom: 80px !important; }
.tacit-cap-industries { padding-top: 64px !important; padding-bottom: 64px !important; }
.tacit-cap-industries .tacit-section-title { margin-bottom: var(--sp-6) !important; }
.tacit-cap-cta { padding-top: 96px !important; padding-bottom: 96px !important; }
.tacit-cap-visual {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 var(--sp-10);
}
.tacit-cap-visual-inner {
  position: relative;
  width: 100%;
  border-radius: var(--radius-3xl);
  overflow: hidden;
}
.tacit-cap-visual-inner:has(.tacit-cap-visual-placeholder) {
  background: #f5f5f7;
  border: 1px solid rgba(11,11,13,.06);
  box-shadow: 0 8px 32px rgba(0,0,0,.06);
}
.tacit-cap-visual-inner img,
.tacit-cap-visual-inner video {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
}
.tacit-cap-visual-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: var(--sp-17) var(--sp-10);
  color: rgba(11,11,13,.28);
  gap: var(--sp-4);
}
.tacit-cap-visual-placeholder-icon {
  width: 48px;
  height: 48px;
  opacity: .4;
}
.tacit-cap-visual-placeholder-text {
  font-size: var(--fs-caption);
  font-weight: 500;
}
.tacit-cap-features-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--sp-9);
  margin-top: var(--sp-12);
}
.tacit-cap-feature {
  padding: var(--sp-11) var(--sp-10);
  border-radius: var(--radius-2xl);
  border: 1px solid var(--tacit-card-border, rgba(11,11,13,.06));
  background: transparent;
}
.tacit-cap-feature-title {
  font-size: var(--fs-body-sm);
  font-weight: 680;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-4);
}
.tacit-cap-feature-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  margin: 0;
}
[data-theme="dark"] .tacit-cap-feature { background: transparent; border-color: rgba(255,255,255,.08); }
@media (prefers-color-scheme: dark) {
  .tacit-cap-feature { background: transparent; border-color: rgba(255,255,255,.08); }
}
.tacit-cap-industries-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: var(--sp-8);
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}
.tacit-cap-cta { text-align: center; }
.tacit-cap-cta .tacit-section-title { margin-bottom: var(--sp-6) !important; }
.tacit-cap-cta .tacit-section-desc { max-width: 520px; margin: var(--sp-6) auto 0; }
.tacit-cap-cta .tacitx-btn-a1 { margin-top: var(--sp-10); }
.tacit-cta-partnership {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--tacit-fg-light);
  margin: var(--sp-8) auto 0;
  max-width: 480px;
}
.tacit-cap-features-grid--3col { grid-template-columns: repeat(3, 1fr) !important; }
.tacit-std-split-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: var(--sp-12) !important; align-items: start; text-align: center; }
@media (max-width: 768px) {
  .tacit-cap-features-grid { grid-template-columns: 1fr; }
  .tacit-cap-features-grid--3col { grid-template-columns: 1fr; }
  .tacit-std-split-grid { grid-template-columns: 1fr; }
  .tacit-cap-hero-actions { flex-direction: column; align-items: center; gap: var(--sp-3); margin-top: var(--sp-8); }
  .tacit-cap-visual { padding: 0 !important; }
  .tacit-cap-visual-inner { border-radius: 0 !important; }
  .tacit-cap-visual-inner img,
  .tacit-cap-visual-inner video { border-radius: 0 !important; }
}
@media (max-width: 480px) {
  .tacit-cap-hero { padding-top: 80px; padding-bottom: 56px; }
  .tacit-cap-hero .tacit-section-title { font-size: 22px; }
  .tacit-cap-features { padding-top: 56px !important; padding-bottom: 56px !important; }
  .tacit-cap-hero .tacit-section-desc { font-size: 13px; }
  .tacit-cap-visual { padding: 0 !important; }
  .tacit-cap-features-grid { gap: var(--sp-6); }
}
[data-theme="dark"] .tacit-cap-visual-inner:has(.tacit-cap-visual-placeholder) {
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
  box-shadow: 0 8px 32px rgba(0,0,0,.25);
}
[data-theme="dark"] .tacit-cap-visual-placeholder { color: rgba(255,255,255,.18); }

/* ============================================
   ROLE PAGES
   ============================================ */
.tacit-role-hero { text-align: center; padding-top: 120px; }
.tacit-role-hero .tacit-section-title { font-size: var(--fs-display); max-width: 800px; margin: 0 auto; }
.tacit-role-hero .tacit-section-desc { max-width: 640px; margin: var(--sp-8) auto 0; }
.tacit-role-hero-actions { display: flex; gap: var(--sp-6); justify-content: center; margin-top: var(--sp-12); }
.tacit-role-problems-grid,
.tacit-role-solution-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--sp-7);
  margin-top: var(--sp-10);
}
.tacit-role-problem,
.tacit-role-solution-item {
  padding: var(--sp-9) var(--sp-9);
  border-radius: var(--radius-xl);
  border: 1px solid rgba(11,11,13,.06);
  background: #fff;
}
.tacit-role-problem-title,
.tacit-role-solution-title {
  font-size: var(--fs-body-sm);
  font-weight: 680;
  color: #0b0b0d;
  margin: 0 0 var(--sp-3);
}
.tacit-role-problem-desc,
.tacit-role-solution-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: rgba(11,11,13,.52);
  margin: 0;
}
.tacit-role-metrics { max-width: 840px; padding-top: var(--sp-12); padding-bottom: var(--sp-12); }
.tacit-role-metrics-strip {
  display: flex;
  justify-content: center;
  gap: var(--sp-12);
  margin-top: var(--sp-10);
  flex-wrap: wrap;
}
.tacit-role-metric { text-align: center; }
.tacit-role-metric-value {
  display: block;
  font-size: var(--fs-h3);
  font-weight: 750;
  letter-spacing: -.02em;
  color: #0b0b0d;
}
.tacit-role-metric-label {
  display: block;
  font-size: var(--fs-xs);
  color: rgba(11,11,13,.42);
  margin-top: var(--sp-2);
}
.tacit-role-cta { text-align: center; max-width: 840px; padding-top: var(--sp-14); padding-bottom: var(--sp-14); }
.tacit-role-cta .tacit-section-desc { max-width: 480px; margin: var(--sp-5) auto 0; }
.tacit-role-cta .tacitx-btn-a1 { margin-top: var(--sp-9); }
.tacit-role-closer {
  max-width: 840px;
  margin: 0 auto;
  text-align: center;
}
.tacit-role-closer .tacit-section-eyebrow { margin-bottom: 0; }
.tacit-role-closer-metrics {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  margin-top: var(--sp-10);
  padding: var(--sp-11) 0;
  border-top: 1px solid rgba(11,11,13,.08);
  border-bottom: 1px solid rgba(11,11,13,.08);
}
.tacit-role-closer-metric {
  text-align: center;
  flex: 1;
  padding: 0 var(--sp-9);
}
.tacit-role-closer-value {
  display: block;
  font-size: var(--fs-h3);
  font-weight: 750;
  letter-spacing: -.02em;
  color: #0b0b0d;
}
.tacit-role-closer-label {
  display: block;
  font-size: var(--fs-xs);
  color: rgba(11,11,13,.42);
  margin-top: var(--sp-2);
}
.tacit-role-closer-divider {
  width: 1px;
  height: var(--sp-12);
  background: rgba(11,11,13,.10);
  flex-shrink: 0;
}
.tacit-role-closer-body {
  text-align: center;
  padding: var(--sp-15) var(--sp-10) 0;
}
.tacit-role-closer-body .tacit-section-title { margin: 0; }
.tacit-role-closer-body .tacit-section-desc { max-width: 480px; margin: var(--sp-6) auto 0; }
.tacit-role-closer-body .tacitx-btn-a1 { margin-top: var(--sp-10); }
.tacit-role-closer-body .tacit-cta-partnership { margin-top: var(--sp-9); }
@media (max-width: 768px) {
  .tacit-role-problems-grid,
  .tacit-role-solution-grid { grid-template-columns: 1fr; }
  .tacit-role-hero-actions { flex-direction: column; align-items: center; }
  .tacit-role-metrics-strip { gap: var(--sp-9); }
  .tacit-role-closer-metrics { flex-wrap: wrap; gap: var(--sp-10) 0; padding: var(--sp-10) 0; }
  .tacit-role-closer-metric { min-width: 40%; }
  .tacit-role-closer-divider { display: none; }
  .tacit-role-closer-body { padding: var(--sp-13) var(--sp-8) 0; }
}
@media (max-width: 480px) {
  .tacit-role-hero { padding-top: var(--sp-15); }
  .tacit-role-closer-metrics { gap: var(--sp-8) 0; padding: var(--sp-8) 0; }
  .tacit-role-closer-metric { min-width: 100%; padding: 0; }
  .tacit-role-closer-value { font-size: 20px; }
  .tacit-role-closer-label { font-size: 11px; }
  .tacit-role-closer-body { padding: var(--sp-10) var(--sp-6) 0; }
}

/* ============================================
   BEFORE / AFTER SECTION
   ============================================ */
.tacit-before-after { padding: var(--sp-17) var(--sp-10) var(--sp-13); display: block; text-align: center; overflow: visible !important; }
.tacit-ba-stack {
  display: block;
  margin-top: var(--sp-13);
  overflow: visible !important;
}
.tacit-ba-card {
  padding: var(--sp-11) var(--sp-10);
  border-radius: var(--radius-2xl);
  border: 1px solid rgba(11,11,13,.08);
  background: #ffffff;
  box-shadow: 0 2px 12px rgba(11,11,13,.06), 0 0 0 1px rgba(11,11,13,.03);
  margin-bottom: var(--sp-9);
  transition: box-shadow 0.25s ease, transform 0.35s ease, opacity 0.35s ease, filter 0.35s ease;
  transform-origin: center top;
}
.tacit-ba-tag {
  display: block;
  font-size: var(--fs-xxs);
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(11,11,13,.88);
  text-align: center;
  margin-top: -10px;
  margin-bottom: var(--sp-9);
}
.tacit-ba-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
}
.tacit-ba-col {
  padding: 0 var(--sp-11);
  text-align: left;
}
.tacit-ba-col:first-child {
  padding-left: 0;
  border-right: 1px solid rgba(11,11,13,.07);
}
.tacit-ba-col:last-child {
  padding-right: 0;
  padding: var(--sp-9) var(--sp-10);
  margin: -18px 0;
  background: rgba(56, 211, 168, 0.04);
  border-radius: 0 12px 12px 0;
}
.tacit-ba-label {
  display: block;
  font-size: var(--fs-xxs);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(11,11,13,.38);
  margin-bottom: var(--sp-5);
}
.tacit-ba-label--after { color: #38d3a8; }
.tacit-ba-col p {
  font-size: var(--fs-body-sm);
  line-height: 1.7;
  color: rgba(11,11,13,.68);
  margin: 0;
}
.tacit-ba-col:last-child p {
  color: rgba(11,11,13,.82);
}
@media (max-width: 768px) {
  .tacit-before-after { padding: var(--sp-15) var(--sp-8); }
  .tacit-ba-card { padding: var(--sp-9); }
  .tacit-ba-cols { grid-template-columns: 1fr; gap: var(--sp-9); }
  .tacit-ba-col { padding: 0 !important; text-align: left; }
  .tacit-ba-col:first-child { padding-bottom: var(--sp-9) !important; border-right: none; border-bottom: 1px solid rgba(11,11,13,.08); }
  .tacit-ba-col:last-child { margin: 0; padding: var(--sp-8) !important; border-radius: var(--radius-lg); background: rgba(56, 211, 168, 0.05); }
}
@media (max-width: 480px) {
  .tacit-before-after { padding: var(--sp-13) var(--sp-7); }
  .tacit-ba-card { padding: var(--sp-8); }
  .tacit-ba-tag { font-size: var(--fs-xs); padding: var(--sp-2) var(--sp-5); }
  .tacit-ba-label { font-size: var(--fs-micro); }
  .tacit-ba-col p { font-size: var(--fs-small); }
  .tacit-ba-col:last-child { padding: var(--sp-7) !important; }
}

/* ============================================
   DELIVERABLES (shared styles for track pages)
   ============================================ */
.tacit-deliverables { text-align: center; }
.tacit-del-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border: 1px solid var(--tacit-border);
  border-radius: var(--radius-xl);
  overflow: hidden;
  margin-top: var(--sp-13);
  text-align: left;
}
.tacit-del-card {
  background: #ffffff;
  padding: var(--sp-11) var(--sp-10);
  display: flex;
  flex-direction: column;
  gap: var(--sp-6);
  border-right: 1px solid var(--tacit-border);
  border-bottom: 1px solid var(--tacit-border);
}
.tacit-del-card:nth-child(3n) { border-right: none; }
.tacit-del-card:nth-last-child(-n+3) { border-bottom: none; }
.tacit-del-icon { flex-shrink: 0; }
.tacit-del-icon-img {
  width: var(--sp-12);
  height: var(--sp-12);
  object-fit: contain;
  opacity: 0.7;
}
.tacit-del-title { font-size: var(--fs-body-sm); font-weight: 650; color: #0b0b0d; margin: 0 0 var(--sp-2); }
.tacit-del-desc { font-size: var(--fs-caption); line-height: 1.55; color: rgba(11,11,13,.45); margin: 0; }
.tacit-del-cta { display: flex; gap: var(--sp-6); justify-content: center; margin-top: var(--sp-11); }
@media (max-width: 768px) {
  .tacit-del-grid { grid-template-columns: repeat(2, 1fr); }
  .tacit-del-card:nth-child(3n) { border-right: 1px solid var(--tacit-border); }
  .tacit-del-card:nth-child(2n) { border-right: none; }
  .tacit-del-card:nth-last-child(-n+3) { border-bottom: 1px solid var(--tacit-border); }
  .tacit-del-card:nth-last-child(-n+2) { border-bottom: none; }
}
@media (max-width: 480px) {
  .tacit-del-grid { grid-template-columns: 1fr; }
  .tacit-del-card { border-right: none !important; }
  .tacit-del-card:nth-last-child(-n+2) { border-bottom: 1px solid var(--tacit-border); }
  .tacit-del-card:last-child { border-bottom: none; }
}
/* ============================================
   PILOT BLOCK
   ============================================ */
.tacit-pilot-callout {
  margin-top: var(--sp-12);
  padding: var(--sp-11) var(--sp-12);
  border-left: 3px solid var(--tacit-accent);
  background: var(--tacit-bg-deep);
  border-radius: 0 var(--tacit-radius) var(--tacit-radius) 0;
}
.tacit-pilot-callout-text {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--tacit-fg-muted);
  margin: 0;
  font-style: italic;
}
.tacit-pilot-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-9);
  margin-top: var(--sp-12);
}
.tacit-pilot-card {
  background: var(--tacit-card-bg);
  border: 1px solid var(--tacit-card-border);
  border-radius: var(--tacit-radius);
  padding: var(--sp-10) var(--sp-9);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.tacit-pilot-card:hover {
  border-color: rgba(56, 211, 168, .25);
  box-shadow: var(--tacit-shadow-sm);
}
.tacit-pilot-icon {
  width: var(--sp-12);
  height: var(--sp-12);
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--tacit-accent-soft);
  border-radius: var(--radius-lg);
  color: var(--tacit-accent);
  margin-bottom: var(--sp-7);
}
.tacit-pilot-icon svg {
  width: 20px;
  height: 20px;
}
.tacit-pilot-card-title {
  font-size: var(--fs-body-sm);
  font-weight: 650;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-3);
  letter-spacing: -0.01em;
}
.tacit-pilot-card-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  margin: 0;
}
.tacit-pilot-cta {
  margin-top: var(--sp-12);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--sp-5);
}
.tacit-pilot-note {
  font-size: var(--fs-small);
  color: var(--tacit-fg-light);
}
@media (max-width: 768px) {
  .tacit-pilot-grid { grid-template-columns: 1fr; max-width: 420px; margin-left: auto; margin-right: auto; }
  .tacit-pilot-callout { padding: var(--sp-9); }
}
@media (max-width: 480px) {
  .tacit-pilot-callout { padding: var(--sp-8) var(--sp-7); }
  .tacit-pilot-callout-text { font-size: 13.5px; }
}

/* ============================================
   GATED PROGRAM PHASES
   ============================================ */
.tacit-phases-title {
  font-size: var(--fs-h4);
  font-weight: 700;
  letter-spacing: -.02em;
  color: #0b0b0d;
  text-align: center;
  margin: 0 0 var(--sp-11);
}
.tacit-phases-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-9);
  margin-top: var(--sp-13);
}
.tacit-phases-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(11,11,13,.06);
  border-radius: var(--radius-2xl);
  padding: var(--sp-11) var(--sp-10);
  text-align: center;
  cursor: default;
}
.tacit-phases-label {
  display: inline-block;
  font-size: var(--fs-micro);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #38d3a8;
  margin-bottom: var(--sp-3);
}
.tacit-phases-name {
  font-size: var(--fs-body-lg);
  font-weight: 720;
  color: #0b0b0d;
  margin: 0 0 var(--sp-2);
}
.tacit-phases-duration {
  display: block;
  font-size: var(--fs-xs);
  font-weight: 600;
  color: rgba(11,11,13,.38);
  margin-bottom: var(--sp-6);
}
.tacit-phases-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: rgba(11,11,13,.52);
  margin: 0;
  flex: 1;
}
.tacit-phases-gate-wrap {
  margin-top: var(--sp-7);
  text-align: center;
}
.tacit-phases-gate-divider {
  height: 1px;
  background: rgba(11,11,13,.06);
  margin: 0 0 var(--sp-6);
}
.tacit-phases-gate-label {
  display: block;
  font-size: var(--fs-pip);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: rgba(11,11,13,.35);
  margin-bottom: var(--sp-2);
}
.tacit-phases-gate-text {
  display: block;
  font-size: var(--fs-xs);
  line-height: 1.5;
  color: rgba(11,11,13,.5);
  font-weight: 400;
}
.tacit-phases-pricing {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: rgba(11,11,13,.48);
  text-align: center;
  max-width: 720px;
  margin: var(--sp-11) auto 0;
}
@media (max-width: 768px) {
  .tacit-phases-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .tacit-phase-card { padding: var(--sp-8) var(--sp-7); }
  .tacit-phase-name { font-size: 16px; }
  .tacit-phase-desc { font-size: 12px; }
  .tacit-phase-delivers { padding: var(--sp-5); }
  .tacit-phase-gate { padding: var(--sp-5) var(--sp-6); }
  .tacit-phase-gate-label { font-size: 10px; }
  .tacit-phase-gate-criteria { font-size: 11px; }
}


/* Gap citation */
.tacit-gap-citation {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: rgba(11,11,13,.36);
  margin: var(--sp-5) auto 0;
  max-width: 640px;
  text-align: center;
  font-style: italic;
}

/* ========================================
   FEATURE TRACK ROWS
   ======================================== */
.tacit-feature-tracks {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-6);
  margin-top: var(--sp-9);
  padding-top: var(--sp-8);
  border-top: 1px solid rgba(11,11,13,.06);
}
.tacit-feature-track-col {
  display: flex;
  flex-direction: column;
  gap: var(--sp-2);
}
.tacit-feature-track-label {
  font-size: var(--fs-xxs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(11,11,13,.36);
}
.tacit-feature-track-ex {
  font-size: var(--fs-small);
  line-height: 1.45;
  color: rgba(11,11,13,.58);
}
@media (max-width: 640px) {
  .tacit-feature-tracks { grid-template-columns: 1fr; gap: var(--sp-8); }
}

/* ========================================
   TRACK PAGE HERO OVERRIDES
   ======================================== */
.tacitx-hero-eyebrow-pill-track {
  font-size: var(--fs-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--tacit-color, #38d3a8);
}
.tacitx-hero-wrapper-a1:has(.tacitx-hero-eyebrow-pill-track) {
  min-height: auto !important;
  padding-top: 140px !important;
  padding-bottom: 80px !important;
}

/* ============================================
   REQUEST DEMO PAGE
   ============================================ */
.tacit-demo-hero {
  padding-top: var(--sp-9);
  padding-bottom: var(--sp-16);
}
.tacit-demo-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-16);
  max-width: 1060px;
  margin: 0 auto;
  align-items: start;
}
.tacit-demo-left .tacit-section-title {
  text-align: left;
  font-size: var(--fs-display-sm);
}
.tacit-demo-left .tacit-section-desc {
  text-align: left;
  max-width: 480px;
}
.tacit-demo-left .tacit-section-eyebrow {
  text-align: left;
}

/* Steps */
.tacit-demo-steps {
  display: flex;
  flex-direction: column;
  gap: var(--sp-9);
  margin-top: var(--sp-12);
}
.tacit-demo-step {
  display: flex;
  gap: var(--sp-7);
  align-items: flex-start;
}
.tacit-demo-step-num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--tacit-accent-soft);
  color: var(--tacit-accent);
  font-size: var(--fs-small);
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}
.tacit-demo-step-title {
  font-size: var(--fs-caption);
  font-weight: 600;
  color: #111827;
  margin: 0 0 2px;
}
.tacit-demo-step-desc {
  font-size: var(--fs-small);
  color: #6b7280;
  line-height: 1.5;
  margin: 0;
}

/* Trust pills row under steps */
.tacit-demo-trust-pills {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-4);
  margin-top: var(--sp-12);
}

/* Form card */
.tacit-demo-form-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: var(--radius-2xl);
  padding: var(--sp-11) var(--sp-10);
  box-shadow: var(--tacit-shadow-md);
}
.tacit-demo-form-title {
  font-size: var(--fs-component);
  font-weight: 700;
  color: #111827;
  margin: 0 0 var(--sp-2);
}
.tacit-demo-form-subtitle {
  font-size: var(--fs-small);
  color: #9ca3af;
  margin: 0 0 var(--sp-10);
}

/* Form fields */
.tacit-demo-form {
  display: flex;
  flex-direction: column;
  gap: var(--sp-8);
}
.tacit-demo-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-6);
}
.tacit-demo-field {
  display: flex;
  flex-direction: column;
  gap: var(--sp-2);
}
.tacit-demo-label {
  font-size: var(--fs-xs);
  font-weight: 600;
  color: #374151;
  letter-spacing: 0.02em;
}
.tacit-demo-req {
  color: var(--tacit-error-light);
}
.tacit-demo-input,
.tacit-demo-select,
.tacit-demo-textarea {
  font-family: inherit;
  font-size: var(--fs-caption);
  color: #111827;
  padding: var(--sp-5) var(--sp-7);
  border: 1px solid #d1d5db;
  border-radius: var(--radius-lg);
  background: #fafafa;
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.tacit-demo-input:focus,
.tacit-demo-select:focus,
.tacit-demo-textarea:focus {
  border-color: var(--tacit-accent);
  box-shadow: 0 0 0 3px var(--tacit-accent-soft);
}
.tacit-demo-input::placeholder,
.tacit-demo-textarea::placeholder {
  color: #c5c8cd;
}
.tacit-demo-select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: var(--sp-12);
}
.tacit-demo-textarea {
  resize: vertical;
  min-height: 72px;
}

/* Consent */
.tacit-demo-consent {
  display: flex;
  align-items: flex-start;
  gap: var(--sp-4);
}
.tacit-demo-checkbox {
  margin-top: var(--sp-1);
  accent-color: var(--tacit-accent);
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.tacit-demo-consent-label {
  font-size: var(--fs-xs);
  color: #6b7280;
  line-height: 1.5;
}
.tacit-demo-consent-label a {
  color: var(--tacit-accent);
  text-decoration: none;
}
.tacit-demo-consent-label a:hover {
  text-decoration: underline;
}

/* Submit */
.tacit-demo-submit {
  width: 100%;
  justify-content: center;
  margin-top: var(--sp-2);
  cursor: pointer;
  border: none;
}


/* Demo page responsive */
@media (max-width: 860px) {
  .tacit-demo-layout {
    grid-template-columns: 1fr;
    gap: var(--sp-13);
    max-width: 520px;
  }
  .tacit-demo-left .tacit-section-title { text-align: center; }
  .tacit-demo-left .tacit-section-desc { text-align: center; max-width: 100%; }
  .tacit-demo-left .tacit-section-eyebrow { text-align: center; }
  .tacit-demo-trust-pills { justify-content: center; }
}
@media (max-width: 480px) {
  .tacit-demo-form-card { padding: var(--sp-9) var(--sp-8); }
  .tacit-demo-form-row { grid-template-columns: 1fr; }
  .tacit-demo-layout { gap: var(--sp-12); }
}

/* ============================================
   ABOUT PAGE
   ============================================ */
.tacit-about-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-9);
  max-width: 1140px;
  margin: 0 auto;
}
.tacit-about-card {
  padding: var(--sp-11) var(--sp-10);
  border: 1px solid var(--tacit-card-border);
  border-radius: var(--radius-2xl);
  text-align: center;
}
.tacit-about-card-icon {
  width: var(--sp-12);
  height: var(--sp-12);
  margin: 0 auto 14px;
  color: var(--tacit-accent);
}
.tacit-about-card-icon svg { width: 100%; height: 100%; }
.tacit-about-card-title {
  font-size: var(--fs-body);
  font-weight: 700;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-4);
}
.tacit-about-card-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  margin: 0;
}
.tacit-about-section { padding-top: var(--sp-15); padding-bottom: var(--sp-15); }
.tacit-about-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-14);
  max-width: 960px;
  margin: 0 auto;
  align-items: start;
}
.tacit-about-heading {
  font-size: var(--fs-h2);
  font-weight: 800;
  color: var(--tacit-fg);
  line-height: 1.25;
  margin: var(--sp-4) 0 var(--sp-7);
  letter-spacing: -0.02em;
}
.tacit-about-body {
  font-size: var(--fs-caption);
  line-height: 1.7;
  color: var(--tacit-fg-muted);
  margin: 0 0 var(--sp-6);
}
.tacit-about-col-list { display: flex; flex-direction: column; gap: var(--sp-8); }
.tacit-about-list-item {
  display: flex;
  gap: var(--sp-6);
  align-items: flex-start;
  font-size: var(--fs-caption);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
}
.tacit-about-list-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--tacit-accent);
  margin-top: var(--sp-1);
}
.tacit-about-team-logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--sp-5);
  max-width: 700px;
  margin: var(--sp-11) auto 0;
}
.tacit-about-logo-pill {
  display: inline-flex;
  align-items: center;
  padding: var(--sp-2) var(--sp-5);
  border: 1px solid rgba(11,11,13,.18);
  border-radius: var(--radius-pill);
  font-size: var(--fs-micro);
  font-weight: 600;
  color: #1a1a1a;
  background: transparent;
  line-height: 1.3;
}

.tacit-about-duo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
  max-width: 1200px;
  margin: 0 auto;
}
.tacit-about-duo__card {
  position: relative;
  padding: 56px 48px 52px;
  overflow: hidden;
}
.tacit-about-duo__card--dark {
  background: #0f172a;
  color: #f1f5f9;
  border-radius: var(--radius-3xl) 0 0 var(--radius-3xl);
}
.tacit-about-duo__card--light {
  background: #f8fafc;
  color: #111827;
  border-radius: 0 var(--radius-3xl) var(--radius-3xl) 0;
}
.tacit-about-duo__num {
  position: absolute;
  top: -18px;
  right: 28px;
  font-size: 128px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.04em;
  opacity: .045;
  pointer-events: none;
  user-select: none;
}
.tacit-about-duo__card--dark .tacit-about-duo__num { color: #fff; }
.tacit-about-duo__card--light .tacit-about-duo__num { color: #0f172a; opacity: .04; }
.tacit-about-duo__accent {
  width: 32px;
  height: 3px;
  background: var(--tacit-accent, #38d3a8);
  border-radius: 2px;
  margin-bottom: 20px;
}
.tacit-about-duo__ey {
  display: block;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-bottom: 12px;
}
.tacit-about-duo__card--dark .tacit-about-duo__ey { color: rgba(56,211,168,.8); }
.tacit-about-duo__card--light .tacit-about-duo__ey { color: var(--tacit-accent, #38d3a8); }
.tacit-about-duo__title {
  font-size: clamp(1.6rem, 2.4vw, 2.2rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.025em;
  margin: 0 0 20px;
}
.tacit-about-duo__card--dark .tacit-about-duo__title { color: #fff; }
.tacit-about-duo__body {
  font-size: 15px;
  line-height: 1.7;
  margin: 0 0 14px;
  max-width: 440px;
}
.tacit-about-duo__card--dark .tacit-about-duo__body { color: rgba(226,232,240,.78); }
.tacit-about-duo__card--light .tacit-about-duo__body { color: #4b5563; }
.tacit-about-duo__body:last-child { margin-bottom: 0; }
@media (max-width: 768px) {
  .tacit-about-duo { grid-template-columns: 1fr; gap: 0; }
  .tacit-about-duo__card--dark { border-radius: var(--radius-3xl) var(--radius-3xl) 0 0; }
  .tacit-about-duo__card--light { border-radius: 0 0 var(--radius-3xl) var(--radius-3xl); }
  .tacit-about-duo__card { padding: 40px 28px 36px; }
  .tacit-about-duo__title { font-size: 1.5rem; }
}
.tacit-about-future { text-align: center; }
.tacit-about-future-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-10);
  max-width: 640px;
  margin: var(--sp-12) auto 0;
}
.tacit-about-future-card {
  padding: var(--sp-11) var(--sp-10);
  border: 1px solid var(--tacit-card-border);
  border-radius: var(--radius-2xl);
  text-align: left;
}
.tacit-about-future-card-title {
  font-size: var(--fs-small);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--tacit-accent);
  margin: 0 0 10px;
}
.tacit-about-future-card-desc {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  margin: 0;
}
.tacit-about-logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--sp-2);
  max-width: 700px;
  margin: var(--sp-11) auto 0;
}
/* ── About Hero Cover ── */
.tacit-accent { color: var(--tacit-accent); }
.tacit-about-hero-cover {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.tacit-about-hero-img {
  display: block;
  width: 100%;
  height: auto;
}
.tacit-about-hero-text {
  position: absolute;
  bottom: var(--sp-12);
  left: 0;
  width: 100%;
  text-align: center;
  pointer-events: none;
}
.tacit-about-hero-title,
.tacit-about-hero-subtitle {
  font-weight: 800;
  color: var(--tacit-fg);
  margin: 0;
  line-height: 1.15;
}
.tacit-about-hero-title { font-size: var(--fs-h2); }
.tacit-about-hero-subtitle { font-size: var(--fs-h3); }
@media (max-width: 768px) {
  .tacit-about-hero-text { bottom: var(--sp-8); }
  .tacit-about-hero-title { font-size: var(--fs-h3); }
  .tacit-about-hero-subtitle { font-size: var(--fs-h4); }
}
@media (max-width: 480px) {
  .tacit-about-hero-text { bottom: var(--sp-6); }
  .tacit-about-hero-title { font-size: var(--fs-h4); }
  .tacit-about-hero-subtitle { font-size: var(--fs-body); }
}

/* ── About Hero ── */
.tacit-about-hero-wrap { position: relative; width: 100%; min-height: 100vh; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; margin-top: -64px !important; }
.tacit-about-hero-wrap .tacit-about-hero-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 10%; }
[data-theme="dark"] .tacit-about-hero-img { filter: invert(1) hue-rotate(180deg); opacity: 1; }
.tacit-about-hero-wrap .tacitx-hero-eyebrow-a1 { display: none !important; }
.tacit-about-hero-overlay { position: relative; z-index: 1; background: linear-gradient(to bottom, transparent 0%, transparent 50%, rgba(255,255,255,.5) 60%, rgba(255,255,255,.9) 72%, rgba(255,255,255,1) 82%, rgba(255,255,255,1) 100%) !important; padding-top: calc(55vh + 140px) !important; padding-bottom: 100px !important; }
.tacit-about-hero-overlay .tacitx-hero-line-a1 { color: #020617 !important; }
.tacit-about-hero-overlay .tacitx-hero-sub-a1 { color: rgba(71,85,105,.75) !important; }
[data-theme="dark"] .tacit-about-hero-overlay { background: linear-gradient(to bottom, transparent 0%, transparent 55%, rgba(8,13,26,.6) 65%, rgba(8,13,26,.95) 78%, rgba(8,13,26,1) 88%, rgba(8,13,26,1) 100%) !important; }
[data-theme="dark"] .tacit-about-hero-overlay .tacitx-hero-line-a1 { color: #f1f5f9 !important; }
[data-theme="dark"] .tacit-about-hero-overlay .tacitx-hero-sub-a1 { color: rgba(255,255,255,.86) !important; }
@media (max-width: 768px) {
  .tacit-about-hero-wrap { min-height: 100vh; }
  .tacit-about-hero-wrap .tacit-about-hero-img { object-position: center 25%; }
  .tacit-about-hero-overlay { padding-top: 52vh !important; padding-bottom: 40px !important; }
  .tacit-about-hero-overlay .tacitx-hero-sub-a1 { font-size: 14px !important; line-height: 1.55 !important; }
}

.tacit-about-hero-arrow { margin-top: var(--sp-8); text-align: center; opacity: .4; }
.tacit-about-subtext { margin-top: var(--sp-6); opacity: .7; }
.tacit-about-standards { margin-top: var(--sp-6); opacity: .55; font-size: var(--fs-micro); letter-spacing: .04em; }
.tacit-about-team-eyebrow { text-align: center; margin-top: var(--sp-14); }
.tacit-about-team-desc { text-align: center; }

/* ── Founder's Story (v3 – polished editorial) ─────────────────────── */
.tacit-about-founder {
  text-align: center;
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 4%;
  padding-right: 4%;
}

/* -- Hero split --------------------------------- */
.tfs-hero {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--sp-10);
  align-items: start;
}

.tfs-hero-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Eyebrow */
.tfs-eyebrow {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  font-size: var(--fs-small) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--tacit-accent-deep) !important;
  margin-bottom: var(--sp-10);
}
.tfs-eyebrow::after {
  content: "";
  width: 34px;
  height: 2px;
  border-radius: var(--radius-pill);
  background: linear-gradient(90deg, var(--tacit-accent-deep), transparent);
}

/* Headline */
.tfs-headline {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: var(--fs-h1) !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
  letter-spacing: -.025em !important;
  color: var(--tacit-fg) !important;
  margin: 0 !important;
  max-width: 620px;
  text-wrap: balance;
}
h2.tfs-headline { font-size: var(--fs-h1) !important; font-weight: 700 !important; line-height: 1.18 !important; letter-spacing: -.025em !important; color: var(--tacit-fg) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }

/* Subline */
.tfs-subline {
  margin: var(--sp-7) auto 0 !important;
  font-size: var(--fs-body) !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  letter-spacing: -.01em !important;
  color: var(--tacit-fg-muted) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  max-width: 520px;
}

/* Hero body: card + copy side by side */
.tfs-hero-body {
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap: clamp(28px, 3vw, 44px);
  align-items: start;
  max-width: 850px;
  margin: 0 auto;
  margin-top: var(--sp-14) !important;
}

/* Body copy */
.tfs-copy {
  margin-top: 0;
  max-width: 744px;
  text-align: left;
}
.tfs-copy p {
  font-size: var(--fs-body) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.7 !important;
  letter-spacing: -.01em !important;
  color: var(--tacit-fg) !important;
  font-weight: 400 !important;
  margin: 0 0 var(--sp-8) !important;
}
.tfs-copy p:last-child {
  font-weight: 600 !important;
  color: var(--tacit-fg) !important;
  margin-bottom: 0 !important;
}
.tfs-copy p:nth-last-child(2) {
  font-weight: 400 !important;
}

/* -- Founder card ----------------------- */
.tfs-card {
  position: relative;
  min-height: 360px;
  border-radius: var(--radius-2xl);
  overflow: hidden;
  border: none;
  background: transparent;
  box-shadow: none;
  isolation: isolate;
}
.tfs-card::before {
  display: none;
}
.tfs-portrait {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 170px;
  overflow: hidden;
}
.tfs-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 15%;
  display: block;
}
.tfs-portrait::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 58%, rgba(255,255,255,.6) 100%);
  pointer-events: none;
}
[data-theme="dark"] .tfs-portrait::after {
  background: linear-gradient(180deg, transparent 58%, rgba(5,10,18,.52) 100%);
}
.tfs-card-meta {
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 24px;
}
.tfs-name {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: var(--fs-body-lg) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: -.02em !important;
  color: var(--tacit-fg) !important;
  margin: 0 0 var(--sp-3) !important;
}
.tfs-role {
  font-size: var(--fs-small) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  color: var(--tacit-accent-deep) !important;
  margin: 5px 0 var(--sp-9) !important;
}
.tfs-linkedin {
  display: inline-flex;
  align-items: center;
  color: var(--tacit-fg-muted);
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -2px;
  transition: color .2s;
}
.tfs-linkedin:hover { color: var(--tacit-accent); }
.tfs-credentials {
  border-top: 0.5px solid rgba(255,255,255,.08);
  border-bottom: 0.5px solid rgba(255,255,255,.08);
}
.tfs-cred-row {
  display: grid;
  align-items: center;
  min-height: 34px;
  border-bottom: 0.5px solid rgba(255,255,255,.08);
  color: var(--tacit-fg-muted) !important;
  font-size: var(--fs-small) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-weight: 500 !important;
  text-align: center;
}
.tfs-cred-row:last-child { border-bottom: 0; }
.tfs-cred-2 { grid-template-columns: repeat(2, 1fr); }
.tfs-cred-3 { grid-template-columns: 1.2fr .6fr 1fr; }
.tfs-cred-3-wide { grid-template-columns: .7fr .5fr 1.2fr; }
.tfs-cred-row span + span {
  border-left: 0.5px solid rgba(255,255,255,.08);
}

/* -- Timeline ----------------------------------- */
.tfs-timeline {
  position: relative;
  margin-top: var(--sp-16);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sp-8);
  align-items: end;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.tfs-step {
  position: relative;
  border-radius: var(--radius-2xl);
  overflow: hidden;
  aspect-ratio: 5 / 5;
  box-shadow: 0 0 0 1px var(--tacit-border);
}
.tfs-step-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tfs-step-body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: var(--sp-6) var(--sp-5);
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 1;
}
.tfs-step-body::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: 32px;
  background: linear-gradient(180deg, transparent, rgba(255,255,255,.88));
  pointer-events: none;
}
[data-theme="dark"] .tfs-step-body { background: rgba(0,0,0,.82); }
[data-theme="dark"] .tfs-step-body::before { background: linear-gradient(180deg, transparent, rgba(0,0,0,.82)); }

.tfs-step-title {
  margin: 0 0 var(--sp-2) !important;
  color: #020617 !important;
  font-size: var(--fs-body-sm) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.3 !important;
  letter-spacing: -.02em !important;
  font-weight: 650 !important;
}
h3.tfs-step-title { font-size: var(--fs-body-sm) !important; font-weight: 650 !important; }
[data-theme="dark"] .tfs-step-title { color: #fff !important; }
.tfs-step-desc {
  margin: 0 !important;
  color: rgba(11,11,13,.7) !important;
  font-size: var(--fs-small) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.48 !important;
  letter-spacing: -.005em !important;
  font-weight: 400 !important;
}
[data-theme="dark"] .tfs-step-desc { color: rgba(255,255,255,.82) !important; }

/* -- Team section (centered) -------------------- */
.tfs-team-section {
  text-align: center;
  max-width: 720px;
  margin: 0 auto;
}
.tfs-team-label {
  font-size: var(--fs-small);
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
  color: var(--tacit-accent-deep);
  line-height: 1;
  margin-bottom: var(--sp-8);
}
.tfs-team-headline {
  font-family: var(--tacit-font);
  font-size: var(--fs-h2);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -.03em;
  color: var(--tacit-fg);
  margin: 0 auto var(--sp-6);
  max-width: 640px;
}
.tfs-team-impact {
  font-size: var(--fs-body);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -.01em;
  color: var(--tacit-fg-muted);
  margin: var(--sp-11) auto 0;
  text-align: center;
  white-space: nowrap;
}

.tfs-trust {
  margin-top: var(--sp-12);
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.tfs-trust > br,
.tfs-trust > p {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.tfs-trust span {
  color: var(--tacit-fg-muted);
  font-size: var(--fs-small);
  font-weight: 650;
  line-height: 1;
  letter-spacing: -.01em;
  padding: var(--sp-5) 0;
  text-align: center;
  position: relative;
  white-space: nowrap;
}
.tfs-trust span:not(:nth-child(5n+1))::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 16px;
  background: var(--tacit-border);
}

.sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* -- Responsive --------------------------------- */
@media (max-width: 1160px) {
  .tfs-hero-body {
    grid-template-columns: 260px minmax(0, 1fr);
    gap: var(--sp-9);
  }
  .tfs-card { min-height: 340px; }
  .tfs-timeline {
    grid-template-columns: 1fr 1fr;
    gap: var(--sp-7);
  }
  .tfs-step { aspect-ratio: 5 / 5; }
}
@media (max-width: 860px) {
  .tfs-hero-body {
    grid-template-columns: 1fr;
    gap: var(--sp-12);
  }
  .tfs-card {
    display: grid;
    grid-template-columns: 200px 1fr;
    min-height: auto;
    max-width: 520px;
    margin: 0 auto;
    border-radius: var(--radius-2xl);
  }
  .tfs-portrait {
    position: relative;
    height: auto;
    aspect-ratio: 3 / 4;
  }
  .tfs-portrait::after { display: none; }
  .tfs-card-meta {
    position: relative;
    left: auto; right: auto; bottom: auto;
    padding: var(--sp-10);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .tfs-team-headline { font-size: var(--fs-title-sm); }
}
@media (max-width: 600px) {
  .tfs-subline { font-size: var(--fs-body); }
  .tfs-copy p { font-size: var(--fs-body-sm); }
  .tfs-card {
    grid-template-columns: 1fr;
    max-width: 100%;
  }
  .tfs-portrait { aspect-ratio: 16 / 9; }
  .tfs-card-meta { padding: var(--sp-9); }
  .tfs-name { font-size: var(--fs-body); }
  .tfs-timeline { gap: var(--sp-5); margin-top: var(--sp-12); }
  .tfs-step { aspect-ratio: 1 / 1; }
  .tfs-step-title { font-size: var(--fs-caption); }
  .tfs-step-desc { font-size: var(--fs-xs); }
  .tfs-step-body { padding: var(--sp-6) var(--sp-7); }
  .tfs-trust { grid-template-columns: repeat(2, 1fr); max-width: 100%; }
  .tfs-trust span { font-size: var(--fs-xs); }
  .tfs-trust span:not(:nth-child(5n+1))::before { display: none; }
  .tfs-trust span:nth-child(even)::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 16px; background: var(--tacit-border); display: block; }
}
@media (max-width: 400px) {
  .tfs-timeline { grid-template-columns: 1fr; }
  .tfs-step { aspect-ratio: 5 / 3; }
  .tfs-step-title { font-size: var(--fs-body-sm); }
  .tfs-step-desc { font-size: var(--fs-small); }
}

.tacit-about-locations { text-align: center; padding-top: 0; }
.tacit-about-locations-text {
  font-size: var(--fs-caption);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  margin: 0;
}
@media (max-width: 768px) {
  .tacit-about-cards-grid { grid-template-columns: 1fr; max-width: 400px; }
  .tacit-about-two-col { grid-template-columns: 1fr; gap: var(--sp-11); }
  .tacit-about-grid { grid-template-columns: 1fr; max-width: 480px; }
  .tacit-about-future-grid { grid-template-columns: 1fr; max-width: 400px; }
}
@media (max-width: 480px) {
  .tacit-about-cards-grid { max-width: 100%; }
  .tacit-about-card { padding: var(--sp-9) var(--sp-8); }
  .tacit-about-card-title { font-size: var(--fs-body); }
  .tacit-about-card-desc { font-size: var(--fs-small); }
  .tacit-about-future-card { padding: var(--sp-9) var(--sp-8); }
  .tacit-about-future-card-title { font-size: var(--fs-body); }
  .tacit-about-future-card-desc { font-size: var(--fs-small); }
}

/* ============================================
   INDUSTRY CASE STUDY BLOCK
   ============================================ */
.tacit-industry-cs {
  padding-top: var(--sp-13);
  padding-bottom: var(--sp-13);
  max-width: 1000px;
}
.tacit-industry-cs-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  max-width: 760px;
  margin: var(--sp-11) auto 0;
  border-radius: var(--radius-2xl);
  overflow: hidden;
  border: 1px solid var(--tacit-card-border);
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s, border-color 0.2s;
}
.tacit-industry-cs-card:hover {
  box-shadow: var(--tacit-shadow-md);
  border-color: rgba(11,11,13,.15);
}
.tacit-industry-cs-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 240px;
}
.tacit-industry-cs-body {
  padding: var(--sp-12) var(--sp-12);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.tacit-industry-cs-company {
  font-size: var(--fs-xxs);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tacit-accent);
  margin-bottom: var(--sp-4);
}
.tacit-industry-cs-quote {
  font-size: var(--fs-body-sm);
  font-weight: 400;
  color: var(--tacit-fg-muted);
  line-height: 1.65;
  margin: 0 0 var(--sp-9);
}
.tacit-industry-cs-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: var(--fs-small);
  font-weight: 600;
  color: var(--tacit-accent);
  text-decoration: none;
  padding: 10px 20px;
  border: 1px solid var(--tacit-accent);
  border-radius: var(--radius-pill);
  transition: background .15s, color .15s;
}
.tacit-industry-cs-link:hover { background: var(--tacit-accent); color: #fff; }


@media (max-width: 700px) {
  .tacit-industry-cs-card { grid-template-columns: 1fr; }
  .tacit-industry-cs-img { min-height: 180px; max-height: 200px; }
  .tacit-industry-cs-body { padding: var(--sp-10) var(--sp-9); }
}
@media (max-width: 480px) {
  .tacit-industry-cs-img { min-height: 140px; max-height: 160px; }
  .tacit-industry-cs-body { padding: var(--sp-9) var(--sp-8); }
  .tacit-industry-cs-quote { font-size: var(--fs-body-sm); }
}

/* ============================================
   PULLQUOTE BLOCK
   ============================================ */
.tacit-pullquote {
  text-align: center;
  padding-top: var(--sp-16);
  padding-bottom: 64px;
  border-top: 1px solid rgba(11,11,13,.06);
  border-bottom: 1px solid rgba(11,11,13,.06);
}
.tacit-pullquote-text {
  font-size: var(--fs-h3);
  font-weight: 520;
  line-height: 1.6;
  letter-spacing: -0.01em;
  font-style: italic;
  color: rgba(11,11,13,.72);
  max-width: 800px;
  margin: 0 auto;
  border: none;
  padding: 0;
}
.tacit-pullquote-source { margin-top: var(--sp-9); }
.tacit-pullquote-company {
  font-size: var(--fs-xs);
  font-weight: 620;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(11,11,13,.36);
}
@media (max-width: 768px) {
  .tacit-pullquote { padding-top: var(--sp-14); padding-bottom: var(--sp-14); }
}
@media (max-width: 480px) {
  .tacit-pullquote { padding-top: var(--sp-12); padding-bottom: var(--sp-12); }
  .tacit-pullquote-text { font-size: var(--fs-body); }
}

/* ============================================
   COMPARISON TABLE – LOGO IN HEADER
   ============================================ */
.tacit-compare-table th .tacit-logo-light,
.tacit-compare-table th .tacit-logo-dark { vertical-align: middle; height: 18px !important; width: auto !important; max-height: 18px !important; }
.tacit-compare-table--3col col:nth-child(1) { width: 20%; }
.tacit-compare-table--3col col:nth-child(2) { width: 40%; }
.tacit-compare-table--3col col:nth-child(3) { width: 40%; }
.tacit-compare-col-risk { color: rgba(11,11,13,.42); font-size: var(--fs-xs); font-style: italic; }

/* ============================================
   TIER CARDS – AI ACCURACY PROGRESSION
   ============================================ */
.tacit-tiers { max-width: 680px; margin: 0 auto; }
.tacit-tier-row { margin-bottom: var(--sp-8); }
.tacit-tier-card {
  display: flex; align-items: center; gap: var(--sp-10);
  padding: var(--sp-10); border-radius: var(--radius-2xl);
  border: 1px solid rgba(11,11,13,.06);
  background: #fff;
  transition: box-shadow .2s, border-color .2s;
}
.tacit-tier-card:hover { box-shadow: var(--tacit-shadow-sm); }
.tacit-tier-card--highlight {
  border-color: rgba(56,211,168,.25);
  background: linear-gradient(135deg, rgba(56,211,168,.03) 0%, rgba(255,255,255,1) 100%);
  box-shadow: 0 2px 16px rgba(56,211,168,.08);
}
.tacit-tier-card--highlight:hover { box-shadow: var(--tacit-shadow-md); }
.tacit-tier-pct {
  font-size: var(--fs-stat); font-weight: 800; color: #0f172a; letter-spacing: -0.02em;
  line-height: 1; min-width: 80px; flex-shrink: 0;
}
.tacit-tier-pct-unit { font-size: var(--fs-component); font-weight: 700; color: #9ca3af; margin-left: 1px; }
.tacit-tier-pct--accent { color: #38d3a8; }
.tacit-tier-pct--accent .tacit-tier-pct-unit { color: #38d3a8; }
.tacit-tier-info { flex: 1; min-width: 0; }
.tacit-tier-name {
  font-size: var(--fs-body-sm); font-weight: 650; color: #0f172a; margin-bottom: var(--sp-1);
  display: flex; align-items: center; gap: var(--sp-4);
}
.tacit-tier-icon { height: 20px; width: 20px; border-radius: 50%; flex-shrink: 0; }
.tacit-tier-providers { font-size: var(--fs-small); color: #6b7280; margin-bottom: var(--sp-5); }
.tacit-tier-bar {
  height: 4px; border-radius: var(--radius-sm); background: rgba(11,11,13,.06); width: 100%; overflow: hidden;
}
.tacit-tier-fill {
  height: 100%; border-radius: var(--radius-sm);
  background: #d1d5db;
  transition: width .6s cubic-bezier(.4,0,.2,1);
}
.tacit-tier-bar--accent { background: rgba(56,211,168,.12); }
.tacit-tier-fill--accent { background: #38d3a8; }
.tacit-tier-label {
  font-size: var(--fs-xxs); font-weight: 700; color: #9ca3af; text-transform: uppercase;
  letter-spacing: .08em; white-space: nowrap; flex-shrink: 0; writing-mode: vertical-lr;
  transform: rotate(180deg);
}
.tacit-tier-label--accent { color: #38d3a8; }
.tacit-tier-techs { display: flex; justify-content: center; gap: var(--sp-12); margin-top: var(--sp-9); }
.tacit-tier-tech { font-size: var(--fs-xs); font-weight: 600; color: #9ca3af; letter-spacing: .04em; }
.tacit-tier-footnote {
  font-size: var(--fs-xs); color: #9ca3af; line-height: 1.6; max-width: 620px;
  margin: var(--sp-10) auto 0; text-align: center;
}
@media (max-width: 768px) {
  .tacit-tier-card { flex-direction: row; gap: var(--sp-8); padding: var(--sp-8) var(--sp-9); }
  .tacit-tier-pct { font-size: var(--fs-title-lg); min-width: 64px; }
  .tacit-tier-pct-unit { font-size: var(--fs-body); }
  .tacit-tier-label { writing-mode: horizontal-tb; transform: none; }
  .tacit-tier-providers { font-size: var(--fs-xxs); }
  .tacit-tier-techs { flex-wrap: wrap; gap: var(--sp-8); }
}
@media (max-width: 480px) {
  .tacit-tier-card { gap: var(--sp-6); padding: var(--sp-7) var(--sp-8); }
  .tacit-tier-pct { font-size: 24px; min-width: 56px; }
  .tacit-tier-pct-unit { font-size: var(--fs-caption); }
  .tacit-tier-name { font-size: var(--fs-caption); }
  .tacit-tier-providers { font-size: var(--fs-micro); }
  .tacit-tier-techs { gap: var(--sp-6); }
  .tacit-tier-tech { font-size: var(--fs-micro); }
  .tacit-tier-footnote { font-size: var(--fs-xxs); }
}
[data-theme="dark"] .tacit-tier-card { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.08); }
[data-theme="dark"] .tacit-tier-card:hover { box-shadow: 0 2px 12px rgba(0,0,0,.2); }
[data-theme="dark"] .tacit-tier-card--highlight { background: rgba(56,211,168,.04); border-color: rgba(56,211,168,.2); }
[data-theme="dark"] .tacit-tier-pct { color: #f1f5f9; }
[data-theme="dark"] .tacit-tier-pct-unit { color: rgba(255,255,255,.4); }
[data-theme="dark"] .tacit-tier-pct--accent { color: #38d3a8; }
[data-theme="dark"] .tacit-tier-pct--accent .tacit-tier-pct-unit { color: #38d3a8; }
[data-theme="dark"] .tacit-tier-name { color: #f1f5f9; }
[data-theme="dark"] .tacit-tier-providers { color: rgba(255,255,255,.5); }
[data-theme="dark"] .tacit-tier-bar { background: rgba(255,255,255,.08); }
[data-theme="dark"] .tacit-tier-fill { background: rgba(255,255,255,.2); }
[data-theme="dark"] .tacit-tier-bar--accent { background: rgba(56,211,168,.1); }
[data-theme="dark"] .tacit-tier-fill--accent { background: #38d3a8; }

/* ============================================
   AGENTIC LEARNING – SELF-IMPROVING AI CARDS
   ============================================ */
.tacit-agentic-grid {
  max-width: 860px; margin: var(--sp-12) auto 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--sp-9);
  padding: 0 var(--sp-10);
}
.tacit-agentic-card {
  border: none; border-radius: var(--radius-2xl); padding: var(--sp-11) var(--sp-9); text-align: left; box-shadow: none; background: transparent;
}
.tacit-agentic-stat { font-size: var(--fs-title-lg); font-weight: 800; color: #38d3a8; margin-bottom: var(--sp-4); }
.tacit-agentic-label { font-size: var(--fs-caption); font-weight: 600; color: #111827; margin-bottom: var(--sp-3); }
.tacit-agentic-desc { font-size: var(--fs-small); color: #6b7280; line-height: 1.5; }
@media (max-width: 768px) {
  .tacit-agentic-grid { grid-template-columns: repeat(2, 1fr); padding: 0 16px; }
}
@media (max-width: 420px) {
  .tacit-agentic-grid { grid-template-columns: 1fr; }
}

/* ============================================
   COMPARISON PAGE – HERO & CTA
   ============================================ */
.cmp-hero { max-width: 780px; margin: 0 auto; padding: 120px var(--sp-10) 0; text-align: center; }
.cmp-hero-eyebrow { font-size: var(--fs-micro); font-weight: 650; letter-spacing: .16em; text-transform: uppercase; color: #38d3a8 !important; margin-bottom: var(--sp-6); }
.cmp-hero-title { font-size: var(--fs-display); font-weight: 800; letter-spacing: -.03em; line-height: 1.1; margin: 0 0 var(--sp-8); color: var(--tacit-fg, #0b0b0d) !important; }
.cmp-hero-desc { font-size: var(--fs-body); color: var(--tacit-fg-muted, rgba(11,11,13,.6)) !important; line-height: 1.65; max-width: 620px; margin: 0 auto 0; }
.cmp-hero-link { color: var(--tacit-accent, #38d3a8) !important; text-decoration: none !important; border-bottom: 1px solid var(--tacit-accent, #38d3a8) !important; }
.cmp-table-section { max-width: 1000px; margin: 0 auto; padding: 48px var(--sp-10) 0; }
.cmp-bottom { max-width: 620px; margin: 0 auto; padding: var(--sp-16) var(--sp-10) var(--sp-17); text-align: center; }
.cmp-bottom-title { font-size: 24px; font-weight: 700; margin: 0 0 var(--sp-6); color: var(--tacit-fg, #0b0b0d) !important; }
.cmp-bottom-desc { font-size: var(--fs-body-sm); color: var(--tacit-fg-muted, rgba(11,11,13,.55)) !important; margin: 0 0 var(--sp-11); line-height: 1.6; }
@media (max-width: 768px) {
  .cmp-hero { padding: 100px var(--sp-8) 0; }
  .cmp-table-section { padding: var(--sp-14) var(--sp-8) 0; }
  .cmp-bottom { padding: var(--sp-13) var(--sp-8) var(--sp-15); }
}
@media (max-width: 480px) {
  .cmp-hero { padding: var(--sp-17) var(--sp-7) 0; }
  .cmp-hero-title { font-size: 24px; }
  .cmp-hero-desc { font-size: var(--fs-caption); }
  .cmp-table-section { padding: var(--sp-12) var(--sp-6) 0; }
  .cmp-bottom { padding: var(--sp-12) var(--sp-6) var(--sp-13); }
  .cmp-bottom-title { font-size: var(--fs-component); }
  .cmp-bottom-desc { font-size: var(--fs-small); }
}

/* -- Comparison Page – Dark Mode --------------- */
[data-theme="dark"] .cmp-hero-title { color: #fff !important; }
[data-theme="dark"] .cmp-hero-desc { color: rgba(255,255,255,.6) !important; }
[data-theme="dark"] .cmp-hero-desc a { color: #38d3a8 !important; }
[data-theme="dark"] .cmp-hero-desc u { color: rgba(255,255,255,.85) !important; }
[data-theme="dark"] .cmp-bottom-title { color: #fff !important; }
[data-theme="dark"] .cmp-bottom-desc { color: rgba(255,255,255,.55) !important; }
[data-theme="dark"] .cmp-table-section { color: #fff !important; }
[data-theme="dark"] .tacit-compare-row-label { color: #fff !important; }
[data-theme="dark"] .tacit-compare-table th { color: rgba(255,255,255,.7) !important; background: rgba(255,255,255,.04) !important; border-color: rgba(255,255,255,.06) !important; }
[data-theme="dark"] .tacit-compare-table td { border-color: rgba(255,255,255,.06) !important; color: rgba(255,255,255,.7) !important; }
[data-theme="dark"] .tacit-compare-table td.tacit-compare-col-highlight { color: #fff !important; background: rgba(56,211,168,.04) !important; }
[data-theme="dark"] .tacit-compare-table th.tacit-compare-col-highlight { background: rgba(56,211,168,.08) !important; }
[data-theme="dark"] .tacit-compare-link { color: rgba(255,255,255,.65) !important; }
[data-theme="dark"] .tacit-compare-link:hover { color: #38d3a8 !important; }
[data-theme="dark"] .tacit-tier-label { color: rgba(255,255,255,.4) !important; }
[data-theme="dark"] .tacit-tier-tech { color: rgba(255,255,255,.35) !important; }
[data-theme="dark"] .tacit-tier-footnote { color: rgba(255,255,255,.4) !important; }

/* -- Shared utilities -------------------------------- */
.tacit-block--center { text-align: center; }
.tacit-block--center .tacit-section-desc { max-width: 660px; margin-left: auto; margin-right: auto; }
.tacit-agentic-grid--2col { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 768px) { .tacit-agentic-grid--2col { grid-template-columns: 1fr; padding: 0 16px; } }

/* -- Comparison output cards (vs-chatgpt) ------------ */
.cmp-output-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-8); margin-top: var(--sp-12); text-align: left; }
.cmp-output-card { border: 1px solid rgba(11,11,13,.06); border-radius: var(--radius-2xl); padding: var(--sp-10) var(--sp-9); background: var(--tacit-bg, #fff); }
.cmp-output-card--accent { border-color: rgba(56,211,168,.25); }
.cmp-output-label { font-size: var(--fs-caption); font-weight: 600; color: var(--tacit-fg); margin-bottom: var(--sp-7); }
.cmp-output-label--accent { color: var(--tacit-accent, #38d3a8); }
.cmp-output-code { font-family: var(--tacit-font-mono, 'SF Mono','Fira Code','Fira Mono',Menlo,monospace); font-size: 12px; line-height: 1.7; color: var(--tacit-fg-muted); }
.cmp-output-verdict { margin-top: var(--sp-10); font-size: var(--fs-small); color: var(--tacit-fg-muted); }
.cmp-output-card--visual { display: flex; flex-direction: column; padding: var(--sp-7) var(--sp-7) var(--sp-9); }
.cmp-output-img { width: 100%; border-radius: var(--radius-lg); object-fit: cover; object-position: top left; }
.cmp-flag { position: relative; color: var(--tacit-fg-muted); }
.cmp-flag-tag { display: inline-block; font-family: var(--tacit-font, sans-serif); font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: #d97706; background: rgba(217,119,6,.08); padding: 1px 5px; border-radius: 3px; margin-left: 6px; vertical-align: middle; }
.cmp-flag--red { color: #dc2626; }
.cmp-output-note { font-family: var(--tacit-font, sans-serif); font-size: 11px; color: var(--tacit-fg-light); margin-top: var(--sp-6); font-style: italic; line-height: 1.5; }
.cmp-output-note--accent { color: var(--tacit-accent, #38d3a8); font-style: normal; font-weight: 500; margin-top: var(--sp-7); }
@media (max-width: 768px) { .cmp-output-grid { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .cmp-output-card { padding: var(--sp-8) var(--sp-7); } .cmp-output-code { font-size: 11px; } }
[data-theme="dark"] .cmp-output-card { background: rgba(255,255,255,.02); border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .cmp-output-card--accent { border-color: rgba(56,211,168,.2); }

/* -- vs-chatgpt: Architecture section ---------- */
.cmp-arch { text-align: center; padding: 48px 24px; max-width: 800px; margin: 0 auto; }
.cmp-arch-title { font-size: var(--fs-h1); font-weight: 700; letter-spacing: -0.03em; color: var(--tacit-fg); line-height: 1.15; margin: 0 0 12px; }
.cmp-arch-sub { font-size: 16px; line-height: 1.6; color: var(--tacit-fg-muted); margin: 0 0 56px; max-width: 560px; margin-left: auto; margin-right: auto; }
.cmp-arch-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 32px; text-align: left; }
.cmp-arch-label { font-size: 14px; font-weight: 650; color: var(--tacit-fg); margin-bottom: 8px; }
.cmp-arch-desc { font-size: 13px; line-height: 1.6; color: var(--tacit-fg-muted); }
@media (max-width: 768px) { .cmp-arch-grid { grid-template-columns: 1fr; gap: 24px; } }

/* -- vs-chatgpt: Divergence chart section ------ */
.cmp-diverge { text-align: center; padding: 48px 24px; max-width: 760px; margin: 0 auto; }
.cmp-diverge-title { font-size: var(--fs-h1); font-weight: 700; letter-spacing: -0.03em; color: var(--tacit-fg); line-height: 1.15; margin: 0 0 16px; }
.cmp-diverge-sub { font-size: 16px; line-height: 1.6; color: var(--tacit-fg-muted); margin: 0 0 48px; }
.cmp-diverge-chart { position: relative; width: 100%; max-width: 620px; margin: 0 auto 32px; }
.cmp-diverge-chart svg { width: 100%; height: auto; }
.cmp-diverge-axis-label { font-size: 10px; fill: #c4c7cc; font-family: -apple-system, BlinkMacSystemFont, 'Inter', sans-serif; letter-spacing: 0.06em; text-transform: uppercase; }
.cmp-diverge-line-label { font-size: 11px; font-family: -apple-system, BlinkMacSystemFont, 'Inter', sans-serif; font-weight: 600; }
.cmp-diverge-foot { font-size: 13px; line-height: 1.6; color: var(--tacit-fg-light); max-width: 520px; margin: 0 auto; }

/* -- vs-chatgpt: Real-test section ------------- */
.cmp-realtest { text-align: center; padding: 48px 16px; }
.cmp-realtest-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 36px; text-align: left; max-width: 1800px; margin-left: auto; margin-right: auto; }
.cmp-realtest-card { border: 1px solid rgba(11,11,13,.06); border-radius: 12px; padding: 16px 16px 14px; background: var(--tacit-bg, #fff); display: flex; flex-direction: column; overflow: hidden; }
.cmp-realtest-card--accent { border-color: rgba(11,11,13,.06); }
.cmp-realtest-label { font-size: 14px; font-weight: 700; color: var(--tacit-fg); margin-bottom: 10px; }
.cmp-realtest-label--accent { color: var(--tacit-fg); }
.cmp-realtest-video { width: 100%; border-radius: 8px; object-fit: cover; object-position: top left; cursor: pointer; display: block; }
.cmp-realtest-note { font-size: 11px; line-height: 1.5; margin-top: 6px; color: var(--tacit-fg-muted); font-style: italic; }
.cmp-realtest-note--accent { color: var(--tacit-fg-muted); font-style: italic; font-weight: 400; }
.cmp-realtest-verdict { margin-top: 40px; font-size: 14px; color: var(--tacit-fg-muted); }
@media (max-width: 768px) {
  .cmp-realtest { padding: 32px 8px !important; }
  .cmp-realtest-grid { grid-template-columns: 1fr; gap: 20px; margin-top: 32px; }
  .cmp-realtest-card { padding: 16px 10px; border-radius: 10px; }
  .cmp-realtest-video { border-radius: 8px; width: 100%; }
}

/* -- vs-chatgpt: Table footnote ---------------- */
.cmp-table-footnote { text-align: center; margin-top: 24px; font-size: 13px; line-height: 1.6; color: var(--tacit-fg-light); max-width: 560px; margin-left: auto; margin-right: auto; }

/* -- vs-chatgpt: Dark mode --------------------- */
[data-theme="dark"] .cmp-realtest-card { background: rgba(255,255,255,.02); border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .cmp-realtest-card--accent { border-color: rgba(56,211,168,.15); }
.cmp-diverge-chart img { display: block; }

/* ============================================
   AI COMPANION PAGE (tools grid)
   ============================================ */
.tacit-tools-category { margin-top: var(--sp-15); }
.tacit-tools-category:first-child { margin-top: 0; }
.tacit-tools-category-header { display: flex; align-items: center; gap: var(--sp-5); margin-bottom: var(--sp-9); }
.tacit-tools-category-icon { width: 36px; height: 36px; border-radius: var(--radius-lg); background: var(--tacit-accent-soft); color: var(--tacit-accent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.tacit-tools-category-icon .material-icons { font-size: 18px; }
.tacit-tools-category-name { font-size: var(--fs-body); font-weight: 700; color: var(--tacit-fg); letter-spacing: -0.01em; }
.tacit-tools-category-count { font-size: var(--fs-micro); font-weight: 600; color: var(--tacit-fg-muted); background: rgba(11,11,13,.05); border-radius: var(--radius-pill); padding: 2px 8px; }
.tacit-tools-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--tacit-border); border: 1px solid var(--tacit-border); border-radius: var(--radius-xl); overflow: hidden; }
.tacit-tool-card { background: #ffffff; padding: var(--sp-9); }
.tacit-tool-name { font-family: var(--tacit-font-mono, 'SF Mono','Fira Code',monospace); font-size: 12.5px; font-weight: 600; color: var(--tacit-fg); letter-spacing: 0.01em; margin-bottom: var(--sp-3); }
.tacit-tool-desc { font-size: var(--fs-small); color: var(--tacit-fg-muted); line-height: 1.55; }
.tacit-tool-profiles { display: flex; gap: var(--sp-2); margin-top: var(--sp-4); flex-wrap: wrap; }
.tacit-tool-profile { font-size: 9.5px; font-weight: 700; letter-spacing: 0.06em; color: var(--tacit-accent); background: var(--tacit-accent-soft); border-radius: var(--radius-sm); padding: 1px 5px; text-transform: uppercase; }
.tacit-tool-profile--all { color: rgba(11,11,13,.4); background: rgba(11,11,13,.04); }
.tacit-commands-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--sp-4); margin-top: var(--sp-9); }
.tacit-command-chip { font-family: var(--tacit-font-mono, 'SF Mono','Fira Code',monospace); font-size: 11px; font-weight: 500; color: var(--tacit-fg-muted); background: rgba(11,11,13,.03); border: 1px solid var(--tacit-border); border-radius: var(--radius-md); padding: var(--sp-4) var(--sp-5); text-align: center; }
.tacit-stat-strip { display: flex; justify-content: center; gap: var(--sp-14); padding: var(--sp-12) 0; }
.tacit-stat-item { text-align: center; }
.tacit-stat-value { font-size: var(--fs-stat); font-weight: 800; color: var(--tacit-fg); letter-spacing: -0.03em; }
.tacit-stat-label { font-size: var(--fs-micro); font-weight: 600; color: var(--tacit-fg-muted); text-transform: uppercase; letter-spacing: 0.04em; margin-top: var(--sp-2); }
[data-theme="dark"] .tacit-tool-card { background: var(--tacit-bg); }
@media (max-width: 768px) {
  .tacit-tools-grid { grid-template-columns: repeat(2, 1fr); }
  .tacit-commands-grid { grid-template-columns: repeat(2, 1fr); }
  .tacit-stat-strip { flex-wrap: wrap; gap: var(--sp-9); }
}
@media (max-width: 480px) {
  .tacit-tools-grid { grid-template-columns: 1fr; }
  .tacit-commands-grid { grid-template-columns: 1fr 1fr; }
  .tacit-stat-strip { gap: var(--sp-7); }
  .tacit-stat-value { font-size: var(--fs-title); }
}

/* ============================================
   CUSTOMERS PAGE
   ============================================ */
.cx-hero { text-align: center; max-width: 780px; margin: 0 auto; padding: 80px 24px 0; }
.cx-hero-eyebrow { font-size: var(--fs-micro); font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--tacit-accent, #14b8a6); margin-bottom: 16px; }
.cx-hero h1 { font-size: clamp(28px, 4vw, 42px); font-weight: 800; line-height: 1.15; letter-spacing: -0.025em; color: var(--tacit-fg); margin: 0 0 16px; }
.cx-hero p { font-size: 17px; line-height: 1.65; color: var(--tacit-fg-muted); max-width: 600px; margin: 0 auto; }
.cx-studies { display: flex; flex-direction: column; gap: 0; max-width: 960px; margin: 0 auto; }
.cx-study { display: grid; grid-template-columns: 220px 1fr; gap: 40px; padding: 48px 0; border-bottom: 1px solid rgba(209,213,219,0.4); }
.cx-study:last-child { border-bottom: none; }
.cx-study-info { display: flex; flex-direction: column; gap: 12px; }
.cx-study-logo { height: 26px; width: auto; object-fit: contain; object-position: left; }
.cx-study-company { font-size: 16px; font-weight: 700; color: var(--tacit-fg); line-height: 1.3; }
.cx-study-meta { font-size: 13px; color: var(--tacit-fg-light, #9ca3af); line-height: 1.5; }
.cx-study-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.cx-study-tag { display: inline-block; padding: 2px 10px; font-size: 11px; font-weight: 600; letter-spacing: 0.02em; border-radius: 999px; background: rgba(20,184,166,0.08); color: var(--tacit-accent, #14b8a6); }
.cx-study-body { display: flex; flex-direction: column; }
.cx-study-headline { font-size: 18px; font-weight: 700; color: var(--tacit-fg); line-height: 1.4; margin: 0 0 10px; }
.cx-study-desc { font-size: 15px; color: var(--tacit-fg-muted); line-height: 1.7; margin: 0 0 24px; }
.cx-study-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.cx-study-kpi { text-align: center; padding: 16px 8px; background: var(--tacit-bg-deep, #f9fafb); border-radius: 8px; }
.cx-study-kpi-value { font-size: 22px; font-weight: 800; color: var(--tacit-accent, #14b8a6); line-height: 1.2; }
.cx-study-kpi-label { font-size: 12px; color: var(--tacit-fg-light, #9ca3af); margin-top: 4px; line-height: 1.4; }
.cx-study-link { display: inline-flex; align-items: center; gap: 6px; margin-top: 20px; font-size: 14px; font-weight: 600; color: var(--tacit-accent, #14b8a6); text-decoration: none; transition: gap 0.2s; }
.cx-study-link:hover { gap: 10px; }
[data-theme="dark"] .cx-study { border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .cx-study-kpi { background: rgba(255,255,255,.03); }
@media (max-width: 768px) {
  .cx-hero { padding: 48px 20px 0; }
  .cx-study { grid-template-columns: 1fr; gap: 16px; padding: 32px 0; }
  .cx-study-kpis { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .cx-study-kpi { padding: 12px 4px; }
  .cx-study-kpi-value { font-size: 18px; }
}

/* ============================================
   BLOG POST LAYOUT
   ============================================ */
.tacit-blog-post { max-width: 780px; margin: 0 auto; padding: 90px 24px 80px; }
.tacit-blog-header { text-align: center; margin-bottom: var(--sp-14); padding-bottom: var(--sp-12); border-bottom: 1px solid #e5e7eb; }
.tacit-blog-header .tacit-section-eyebrow { margin-bottom: var(--sp-8); }
.tacit-blog-header .tacit-section-title { font-size: var(--fs-stat); line-height: 1.2; max-width: 680px; margin: 0 auto var(--sp-8); }
.tacit-blog-meta { font-size: var(--fs-caption); color: #6b7280; letter-spacing: 0.01em; }
.tacit-blog-meta span + span::before { content: "·"; margin: 0 8px; }

.tacit-blog-content { font-size: var(--fs-body-lg); line-height: 1.75; color: #1f2937; }
h2.tacit-blog-content h2,
.tacit-blog-content h2,
.tacit-blog-post h2,
.tacit-blog-wrap h2,
.tacit-blog-post .entry-content h2,
.tacit-blog-wrap .entry-content h2,
#page .tacit-blog-post h2,
#page .tacit-blog-wrap h2 { font-size: 24px !important; font-weight: 650 !important; margin: var(--sp-14) 0 var(--sp-8) !important; line-height: 1.3 !important; color: #111827 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tacit-blog-content h3,
.tacit-blog-post h3,
.tacit-blog-wrap h3,
.tacit-blog-post .entry-content h3,
.tacit-blog-wrap .entry-content h3,
#page .tacit-blog-post h3,
#page .tacit-blog-wrap h3 { font-size: var(--fs-component) !important; font-weight: 600 !important; margin: var(--sp-12) 0 var(--sp-6) !important; line-height: 1.35 !important; color: #111827 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .tacit-blog-post h2,
[data-theme="dark"] .tacit-blog-wrap h2,
[data-theme="dark"] #page .tacit-blog-post h2,
[data-theme="dark"] #page .tacit-blog-wrap h2 { color: #fff !important; }
[data-theme="dark"] .tacit-blog-post h3,
[data-theme="dark"] .tacit-blog-wrap h3,
[data-theme="dark"] #page .tacit-blog-post h3,
[data-theme="dark"] #page .tacit-blog-wrap h3 { color: #fff !important; }
.tacit-blog-content p { margin: 0 0 var(--sp-9); }
.tacit-blog-content ul, .tacit-blog-content ol { margin: 0 0 var(--sp-9); padding-left: var(--sp-10); }
.tacit-blog-content li { margin-bottom: var(--sp-4); }
.tacit-blog-content strong { font-weight: 600; color: #111827; }
.tacit-blog-content a { color: #38d3a8; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.2s; }
.tacit-blog-content a:hover { border-bottom-color: #38d3a8; }
.tacit-blog-content blockquote { margin: var(--sp-12) 0; padding: var(--sp-9) var(--sp-10); border-left: 3px solid #38d3a8; background: #f9fafb; border-radius: 0 8px 8px 0; font-style: italic; color: #374151; }
.tacit-blog-content code { font-family: 'SF Mono', 'Fira Code', monospace; font-size: var(--fs-caption); background: #f3f4f6; padding: var(--sp-1) var(--sp-3); border-radius: var(--radius-sm); }
.tacit-blog-content img { max-width: 100%; height: auto; border-radius: var(--radius-xl); margin: var(--sp-10) 0; }

/* Blog tables */
.tacit-blog-content table { width: 100%; border-collapse: collapse; margin: var(--sp-10) 0; font-size: var(--fs-body-sm); }
.tacit-blog-content th { text-align: left; font-weight: 600; font-size: var(--fs-small); text-transform: uppercase; letter-spacing: 0.04em; color: #6b7280; padding: var(--sp-5) var(--sp-7); border-bottom: 2px solid #e5e7eb; }
.tacit-blog-content td { padding: var(--sp-5) var(--sp-7); border-bottom: 1px solid #f3f4f6; vertical-align: top; }
.tacit-blog-content tr:hover td { background: #f9fafb; }

/* Blog TOC (inline fallback - kept for compat) */
.tacit-blog-toc { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: var(--radius-xl); padding: var(--sp-10) var(--sp-11); margin: 0 0 40px; }
.tacit-blog-toc-title { font-size: var(--fs-caption); font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: #6b7280; margin: 0 0 var(--sp-6); }
.tacit-blog-toc ol { margin: 0; padding-left: var(--sp-9); }
.tacit-blog-toc li { margin-bottom: var(--sp-3); font-size: var(--fs-body-sm); }
.tacit-blog-toc a { color: #374151; text-decoration: none; border: none; }
.tacit-blog-toc a:hover { color: #38d3a8; }

/* Blog sidebar TOC layout */
.tacit-blog-wrap { display: grid; grid-template-columns: 220px 1fr; gap: 0; max-width: 1120px; margin: 0 auto; padding: 90px 24px 80px; overflow: visible !important; align-items: start !important; }
.tacit-blog-wrap,
.tacit-blog-wrap *:not(.tacit-blog-sidetoc),
#page:has(.tacit-blog-wrap),
#page:has(.tacit-blog-wrap) > *,
.entry-content:has(.tacit-blog-wrap),
.tatsu-section:has(.tacit-blog-wrap),
.tatsu-row:has(.tacit-blog-wrap),
.tatsu-column:has(.tacit-blog-wrap),
.tatsu-module:has(.tacit-blog-wrap),  
.tatsu-module-inner:has(.tacit-blog-wrap),
.tatsu-text-inner:has(.tacit-blog-wrap) { overflow: visible !important; }
.tacit-blog-wrap .tacit-blog-post { max-width: none; margin: 0; padding: 0 0 0 var(--sp-14); }
.tacit-blog-sidetoc { position: -webkit-sticky !important; position: sticky !important; top: 100px !important; left: auto !important; width: auto !important; align-self: start; max-height: calc(100vh - 120px); overflow-y: auto; padding-right: var(--sp-12); border-right: 1px solid #e5e7eb; z-index: 100; }
.tacit-blog-sidetoc::-webkit-scrollbar { width: 0; }
.tacit-blog-sidetoc-title { font-size: var(--fs-xxs); font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: #9ca3af; margin: 0 0 var(--sp-8); }
.tacit-blog-sidetoc > p { display: contents !important; margin: 0 !important; padding: 0 !important; }
.tacit-blog-sidetoc br { display: none !important; }
.tacit-blog-sidetoc a { display: block; font-size: var(--fs-small); line-height: 1.4; color: #6b7280; text-decoration: none; padding: var(--sp-3) 0 var(--sp-3) var(--sp-6); border-left: 2px solid transparent; margin-left: -1px; transition: color 0.15s, border-color 0.15s; }
.tacit-blog-sidetoc a:hover { color: #111827; }
.tacit-blog-sidetoc a.active { color: #111827; font-weight: 600; border-left-color: #38d3a8; }
[data-theme="dark"] .tacit-blog-sidetoc { border-right-color: var(--tacit-border); }
[data-theme="dark"] .tacit-blog-sidetoc-title { color: var(--tacit-fg-light); }
[data-theme="dark"] .tacit-blog-sidetoc a { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-blog-sidetoc a:hover { color: var(--tacit-fg); }
[data-theme="dark"] .tacit-blog-sidetoc a.active { color: var(--tacit-fg); border-left-color: var(--tacit-accent); }

/* Blog CTA block */
.tacit-blog-cta { background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%); border-radius: var(--radius-3xl); padding: var(--sp-13) var(--sp-12); margin: var(--sp-14) 0; text-align: center; color: #fff; }
.tacit-blog-cta h3 { font-size: var(--fs-title-sm); font-weight: 650; margin: 0 0 var(--sp-6); color: #fff; }
.tacit-blog-cta p { font-size: var(--fs-body-sm); color: rgba(255,255,255,.7); margin: 0 0 var(--sp-10); max-width: 480px; margin-left: auto; margin-right: auto; }
.tacit-blog-cta .tacit-blog-cta-btn { display: inline-flex; align-items: center; height: var(--btn-md); padding: 0 var(--sp-9); background: #38d3a8; color: #fff !important; font-weight: 600; font-size: var(--fs-caption); border-radius: 999px; text-decoration: none; transition: background 0.2s; box-sizing: border-box; }
.tacit-blog-cta .tacit-blog-cta-btn:hover { background: #2ec49b; }
.tacit-blog-cta .tacit-blog-cta-link { display: block; margin-top: var(--sp-6); font-size: var(--fs-caption); color: rgba(255,255,255,.6); text-decoration: none; }
.tacit-blog-cta .tacit-blog-cta-link:hover { color: #fff; }

/* Blog lead magnet inline */
.tacit-blog-lead-magnet { border: 1px solid #e5e7eb; border-radius: var(--radius-xl); padding: var(--sp-10) var(--sp-11); margin: var(--sp-12) 0; background: #f0fdf9; }
.tacit-blog-lead-magnet h4 { font-size: var(--fs-body); font-weight: 600; margin: 0 0 var(--sp-4); color: #111827; }
.tacit-blog-lead-magnet p { font-size: var(--fs-caption); color: #6b7280; margin: 0; }

/* Blog FAQ */
.tacit-blog-faq { margin: var(--sp-14) 0 0; }
.tacit-blog-faq h2 { font-size: 24px; font-weight: 650; margin: 0 0 var(--sp-10); }
.tacit-blog-faq-item { border-bottom: 1px solid #e5e7eb; padding: var(--sp-9) 0; }
.tacit-blog-faq-q { font-weight: 600; font-size: var(--fs-body); color: #111827; margin: 0 0 var(--sp-4); }
.tacit-blog-faq-a { font-size: var(--fs-body-sm); color: #4b5563; line-height: 1.65; margin: 0; }

/* Blog responsive */
@media (max-width: 960px) {
  .tacit-blog-wrap { grid-template-columns: 1fr; padding: 0 24px 60px; }
  .tacit-blog-wrap .tacit-blog-post { padding: 0; }
  .tacit-blog-sidetoc { position: relative !important; top: 0 !important; width: auto !important; max-height: none; border-right: none; border-bottom: 1px solid #e5e7eb; padding: 0 0 var(--sp-8); margin-bottom: var(--sp-12); }
  [data-theme="dark"] .tacit-blog-sidetoc { border-bottom-color: var(--tacit-border); }
}
@media (max-width: 768px) {
  .tacit-blog-header .tacit-section-title { font-size: var(--fs-title-lg); }
  .tacit-blog-content { font-size: var(--fs-body); }
  .tacit-blog-content h2 { font-size: var(--fs-component); }
  .tacit-blog-content h3 { font-size: var(--fs-body-lg); }
  .tacit-blog-cta { padding: var(--sp-12) var(--sp-10); }
  .tacit-blog-content table { font-size: var(--fs-small); }
  .tacit-blog-content th, .tacit-blog-content td { padding: var(--sp-4) var(--sp-5); }
}
@media (max-width: 480px) {
  .tacit-blog-post { padding: 0 16px 48px; }
  .tacit-blog-header .tacit-section-title { font-size: var(--fs-title-sm); }
  .tacit-blog-content { font-size: var(--fs-body-sm); }
  .tacit-blog-content h2 { font-size: var(--fs-body-lg); }
  .tacit-blog-content h3 { font-size: var(--fs-body); }
  .tacit-blog-content blockquote { padding: var(--sp-8) var(--sp-9); }
  .tacit-blog-toc { padding: var(--sp-9) var(--sp-9); }
  .tacit-blog-cta { padding: var(--sp-10) var(--sp-9); border-radius: var(--radius-xl); }
  .tacit-blog-cta h3 { font-size: var(--fs-body-lg); }
  .tacit-blog-cta p { font-size: var(--fs-small); }
  .tacit-blog-lead-magnet { padding: var(--sp-9) var(--sp-9); }
  .tacit-blog-faq h2 { font-size: var(--fs-component); }
  .tacit-blog-faq-q { font-size: var(--fs-caption); }
  .tacit-blog-faq-a { font-size: var(--fs-small); }
  .tacit-blog-content table { font-size: var(--fs-xs); }
  .tacit-blog-content th, .tacit-blog-content td { padding: var(--sp-3) var(--sp-4); }
}


/* ============================================
   V2 REDESIGN — Flow-inspired design system
   All new blocks use .tv2- prefix
   ============================================ */

/* -- V2 Layout -------------------------------- */
.tv2-section { max-width: var(--tacit-max-width-v2); margin: 0 auto; padding: 0 var(--sp-12); box-sizing: border-box; }
@media (min-width: 1600px) { .tv2-section { max-width: 1440px; } }
@media (max-width: 768px) { .tv2-section { padding: 0 var(--sp-8); } }
@media (max-width: 480px) { .tv2-section { padding: 0 var(--sp-6); } }
.tv2-block { padding: var(--tacit-section-gap) 0; }
/* Collapse double padding between same-background adjacent blocks */
.tv2-block + .tv2-block:not(.tv2-block--alt):not(.tv2-block--dark) { padding-top: 0; }
[data-block] + [data-block] > .tv2-block:not(.tv2-block--alt):not(.tv2-block--dark) { padding-top: 0; }
.tv2-block--alt { background: var(--tacit-bg-alt); }
.tv2-block--dark { background: var(--tacit-dark-bg); color: #e8ecf1; }

/* -- V2 Typography ---------------------------- */
.tv2-display-xl { font-family: var(--tacit-font-display) !important; font-size: var(--fs-display) !important; font-weight: 700 !important; line-height: 1.08 !important; letter-spacing: -0.03em !important; color: var(--tacit-fg) !important; margin: 0 !important; }
.tv2-display-lg { font-family: Inter, -apple-system, system-ui, sans-serif !important; font-size: var(--fs-h1) !important; font-weight: 700 !important; line-height: 1.12 !important; letter-spacing: -0.025em !important; color: inherit !important; margin: 0 !important; }
h2.tv2-display-lg, .tv2-block h2.tv2-display-lg, .tv2-cta h2.tv2-display-lg { font-family: Inter, -apple-system, system-ui, sans-serif !important; font-size: var(--fs-h1) !important; font-weight: 700 !important; line-height: 1.12 !important; letter-spacing: -0.025em !important; color: inherit !important; margin: 0 0 20px 0 !important; }
.tv2-display-md { font-family: var(--tacit-font-display) !important; font-size: var(--fs-h2) !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: -0.02em !important; color: var(--tacit-fg) !important; margin-bottom: var(--sp-6) !important; }
h2.tv2-display-md, h3.tv2-display-md, .tv2-block h2.tv2-display-md, .tv2-block h3.tv2-display-md { font-family: var(--tacit-font-display) !important; font-size: var(--fs-h2) !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: -0.02em !important; color: var(--tacit-fg) !important; margin: 0 0 10px 0 !important; }
.tv2-body-lg { font-size: var(--fs-body-lg) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; line-height: 1.6 !important; color: var(--tacit-fg-muted) !important; font-weight: 400 !important; }
.tv2-body { font-size: var(--fs-body-lg) !important; line-height: 1.6 !important; color: var(--tacit-fg-muted) !important; font-weight: 400 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tv2-body-sm { font-size: var(--fs-caption) !important; line-height: 1.6 !important; color: var(--tacit-fg-light) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
.tv2-eyebrow { font-size: 11px !important; font-weight: 600 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; color: var(--tacit-fg-light) !important; opacity: 0.55; font-family: Inter, -apple-system, system-ui, sans-serif !important; }
[data-theme="dark"] .tv2-eyebrow { color: #dce4ec !important; opacity: 0.85; }
.tv2-eyebrow--accent { color: var(--tacit-accent) !important; }

/* -- V2 Buttons ------------------------------- */
.tv2-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-4); height: var(--btn-md); padding: 0 var(--sp-9); border-radius: 999px; font-size: var(--fs-caption); font-weight: 600; text-decoration: none; transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease; cursor: pointer; border: none; font-family: var(--tacit-font); box-sizing: border-box; }
.tv2-btn--primary { background: var(--tacit-accent, #38d3a8); color: #fff !important; border-radius: 999px; padding-right: 6px; box-shadow: 0 1px 2px rgba(0,0,0,.06); }
.tv2-btn--primary:hover { background: #2ec49c; box-shadow: 0 2px 8px rgba(0,0,0,.12); }
.tv2-btn--primary:active { transform: scale(0.97); }
.tv2-btn--primary::before { display: none; }
.tv2-btn--secondary { background: var(--tacit-bg, #fff); color: var(--tacit-fg); border: none; border-radius: 999px; box-shadow: 0 0 0 1px rgba(11,11,13,.06), 0 1px 3px rgba(0,0,0,.04); }
.tv2-btn--secondary:hover { background: var(--tacit-bg, #fff); box-shadow: 0 0 0 1px rgba(11,11,13,.08), 0 2px 8px rgba(0,0,0,.06); }
.tv2-btn--secondary:active { transform: scale(0.97); }
.tv2-btn--ghost { background: transparent; color: var(--tacit-fg-muted); padding: 0 16px; }
.tv2-btn--ghost:hover { color: var(--tacit-fg); }
.tv2-btn--play svg { width: 16px; height: 16px; }
.tv2-btn--primary::after {
  content: '';
  display: inline-flex;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255,255,255,.28) url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.333 8h9.334M8.667 4l4 4-4 4' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 14px;
  flex-shrink: 0;
}
.tv2-btn--secondary:not(.tv2-btn--play)::before { display: none; }
.tv2-btn--secondary:not(.tv2-btn--play)::after { display: none; }
[data-theme="dark"] .tv2-btn--primary { background: var(--tacit-accent, #38d3a8); color: #fff; box-shadow: none; }
[data-theme="dark"] .tv2-btn--primary:hover { background: #2ec49c; }
[data-theme="dark"] .tv2-btn--secondary { color: rgba(255,255,255,.9); border: 1px solid rgba(255,255,255,.14); background: rgba(0,0,0,.4); border-radius: 999px; box-shadow: none; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
[data-theme="dark"] .tv2-btn--secondary:hover { background: rgba(0,0,0,.55); border-color: rgba(255,255,255,.25); color: #fff; }
[data-theme="dark"] .tv2-btn--ghost { color: rgba(255,255,255,.5); }
[data-theme="dark"] .tv2-btn--ghost:hover { color: #fff; }

/* -- V2 Cards --------------------------------- */
.tv2-card { background: var(--tacit-card-bg); border: 1px solid var(--tacit-card-border); border-radius: var(--tacit-radius-lg); padding: var(--sp-12); transition: box-shadow 0.2s, transform 0.2s; }
.tv2-card:hover { box-shadow: var(--tacit-shadow-md); transform: translateY(-2px); }
.tv2-card--flat { border: none; box-shadow: none; }
.tv2-card--flat:hover { box-shadow: none; transform: none; }

/* -- V2 Pills --------------------------------- */
.tv2-pill { display: inline-flex; align-items: center; gap: var(--sp-3); font-size: var(--fs-xs); font-weight: 560; color: var(--tacit-accent, #38d3a8); text-decoration: none; letter-spacing: 0.02em; }
.tv2-pill::before { content: '—'; margin-right: var(--sp-2); opacity: 0.4; }
.tv2-pill--dark { color: var(--tacit-accent, #38d3a8); }
[data-theme="dark"] .tv2-pill { color: var(--tacit-accent, #38d3a8); }

/* -- V2 Section Headers ----------------------- */
.tv2-header { text-align: center; max-width: 720px; margin: 0 auto 48px; }
.tv2-header--left { text-align: left; margin-left: 0; margin-right: auto; max-width: 100%; }
.tv2-header .tv2-eyebrow { margin-top: var(--sp-6); margin-bottom: var(--sp-8); }
.tv2-header .tv2-display-lg { margin-bottom: calc(var(--sp-9) + 12px) !important; }
.tv2-header .tv2-body-lg { margin-top: 0; }

/* ============================================
   BLOCK: Nav v2 (simplified Flow-style)
   ============================================ */
.tv2-nav { background: rgba(255,255,255,.92); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-bottom: 1px solid var(--tacit-border); position: sticky; top: 0; z-index: 100; }
.tv2-nav-inner { display: flex; align-items: center; justify-content: space-between; max-width: var(--tacit-max-w, 1200px); margin: 0 auto; padding: 0 var(--sp-12); height: 64px; }
.tv2-nav-brand img { height: 28px; display: block; }
.tv2-nav-links { display: flex; align-items: center; gap: var(--sp-2); }
.tv2-nav-link { display: inline-flex; align-items: center; font-size: var(--fs-caption); font-weight: 500; color: var(--tacit-fg-muted); text-decoration: none; transition: color 0.15s; height: var(--btn-md); padding: 0 var(--sp-7); border-radius: var(--radius-md); box-sizing: border-box; }
.tv2-nav-link:hover { color: var(--tacit-fg); background: var(--tacit-bg-alt); }
.tv2-nav-actions { display: flex; align-items: center; gap: var(--sp-6); }

/* Dropdown trigger */
.tv2-nav-item { position: relative; }
.tv2-nav-trigger { display: flex; align-items: center; gap: var(--sp-2); font-size: var(--fs-caption); font-weight: 500; color: var(--tacit-fg-muted); background: none; border: none; cursor: pointer; height: var(--btn-md); padding: 0 var(--sp-7); border-radius: var(--radius-md); transition: all 0.15s; box-sizing: border-box; }
.tv2-nav-trigger:hover, .tv2-nav-item:hover .tv2-nav-trigger { color: var(--tacit-fg); background: var(--tacit-bg-alt); }
.tv2-nav-trigger svg { width: 12px; height: 12px; transition: transform 0.2s; }
.tv2-nav-item:hover .tv2-nav-trigger svg { transform: rotate(180deg); }

/* Dropdown panel */
.tv2-nav-drop { position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%) translateY(4px); min-width: 260px; background: #fff; border: 1px solid var(--tacit-border); border-radius: var(--radius-xl); box-shadow: 0 12px 40px rgba(0,0,0,.08), 0 2px 8px rgba(0,0,0,.04); padding: var(--sp-4); opacity: 0; visibility: hidden; transition: opacity 0.2s, transform 0.2s, visibility 0.2s; pointer-events: none; }
.tv2-nav-item:hover .tv2-nav-drop { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); pointer-events: auto; }

/* Dropdown: wide 2-col for Product */
.tv2-nav-drop--wide { min-width: 520px; display: grid; grid-template-columns: 1fr 1fr; gap: 0; padding: var(--sp-6); }

/* Dropdown section label */
.tv2-nav-drop-label { font-size: var(--fs-xxs); font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: var(--tacit-fg-light); padding: var(--sp-4) var(--sp-6) var(--sp-3); }

/* Dropdown links */
.tv2-nav-drop-link { display: flex; align-items: flex-start; gap: var(--sp-6); padding: var(--sp-5) var(--sp-6); border-radius: var(--radius-md); text-decoration: none; color: var(--tacit-fg); transition: background 0.15s; }
.tv2-nav-drop-link:hover { background: var(--tacit-bg-alt); }
.tv2-nav-drop-icon { width: var(--sp-12); height: var(--sp-12); border-radius: var(--radius-md); background: var(--tacit-accent-soft); color: var(--tacit-accent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.tv2-nav-drop-icon svg { width: 16px; height: 16px; }
.tv2-nav-drop-text { display: flex; flex-direction: column; gap: 1px; }
.tv2-nav-drop-title { font-size: var(--fs-caption); font-weight: 600; color: var(--tacit-fg); }
.tv2-nav-drop-desc { font-size: var(--fs-xs); color: var(--tacit-fg-muted); line-height: 1.4; }
.tv2-nav-drop-badge { display: inline-flex; font-size: var(--fs-micro); font-weight: 700; padding: var(--sp-1) var(--sp-3); border-radius: var(--radius-sm); background: var(--tacit-accent); color: #064e3b; margin-left: var(--sp-3); vertical-align: middle; text-transform: uppercase; letter-spacing: 0.03em; }

/* Dropdown divider */
.tv2-nav-drop-divider { height: 1px; background: var(--tacit-border); margin: var(--sp-2) var(--sp-4); }

/* Mobile hamburger */
.tv2-nav-mobile { display: none; background: none; border: none; cursor: pointer; width: var(--btn-md); height: var(--btn-md); padding: 0; color: var(--tacit-fg); box-sizing: border-box; align-items: center; justify-content: center; }
.tv2-nav-mobile svg { width: 24px; height: 24px; }

@media (max-width: 960px) {
  .tv2-nav-links { display: none; }
  .tv2-nav-mobile { display: flex; }
  .tv2-nav-actions .tv2-nav-link { display: none; }
}

/* ============================================
   BLOCK: Banner (social proof strip above nav)
   ============================================ */
.tv2-banner { background: var(--tacit-accent); padding: var(--sp-5) var(--sp-10); text-align: center; font-size: var(--fs-caption); font-weight: 500; color: #064e3b; }
.tv2-banner a { color: #064e3b; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; margin-left: var(--sp-3); }
.tv2-banner a:hover { color: #022c22; }

/* ============================================
   BLOCK: Hero v2
   ============================================ */
.tv2-hero { padding: var(--sp-17) 0 var(--sp-16); text-align: center; position: relative; overflow: hidden; }
.tv2-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(11,11,13,.07) 0.5px, transparent 0.5px);
  background-size: 16px 16px;
  -webkit-mask-image: radial-gradient(ellipse 90% 80% at 50% 40%, black 40%, transparent 100%);
  mask-image: radial-gradient(ellipse 90% 80% at 50% 40%, black 40%, transparent 100%);
  pointer-events: none;
  z-index: 0;
}
[data-theme="dark"] .tv2-hero::before {
  background-image: radial-gradient(circle, rgba(255,255,255,.06) 0.5px, transparent 0.5px);
}
.tv2-hero .tv2-section { display: flex; flex-direction: column; align-items: center; position: relative; z-index: 1; }
.tv2-hero .tv2-pill { margin-bottom: var(--sp-11); }
.tv2-hero .tv2-display-xl { max-width: 800px; margin-bottom: var(--sp-10); }
.tv2-hero .tv2-body-lg { max-width: 600px; margin-bottom: var(--sp-9); }
.tv2-hero-actions { display: flex; align-items: center; gap: var(--sp-6); margin-bottom: var(--sp-15); }
.tv2-hero-visual { width: 100%; max-width: 1320px; aspect-ratio: 16/9; background: var(--tacit-bg-deep); border: 1px solid var(--tacit-card-border); border-radius: var(--tacit-radius-lg); overflow: hidden; position: relative; }
.tv2-hero-visual img, .tv2-hero-visual video { width: 100%; height: 100%; object-fit: cover; }
.tv2-hero-visual-ph { font-size: var(--fs-body-sm); color: var(--tacit-fg-muted); opacity: 0.35; font-style: italic; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }

/* ============================================
   BLOCK: Social proof marquee
   ============================================ */
.tv2-proof { display: flex; align-items: center; justify-content: center; gap: var(--sp-10); padding: var(--sp-8) var(--sp-10); overflow: hidden; max-width: 1200px; margin: 0 auto; }
.tv2-proof-label { font-size: var(--fs-xxs); color: var(--tacit-fg-light); font-weight: 500; white-space: nowrap; text-transform: uppercase; letter-spacing: 0.06em; flex-shrink: 0; }
.tv2-proof-marquee { overflow: hidden; flex: 1; min-width: 0; mask-image: linear-gradient(to right, transparent, black 60px, black calc(100% - 60px), transparent); -webkit-mask-image: linear-gradient(to right, transparent, black 60px, black calc(100% - 60px), transparent); cursor: grab; }
.tv2-proof-marquee.is-dragging { cursor: grabbing; }
.tv2-proof-track { display: flex; gap: 0; align-items: center; flex-wrap: nowrap; width: max-content; will-change: transform; }
.tv2-proof-item { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 2px !important; text-decoration: none !important; opacity: 0.7; transition: opacity 0.2s; padding: 0 var(--sp-9) !important; border-right: 1px solid var(--tacit-border) !important; white-space: nowrap !important; flex-shrink: 0 !important; }
.tv2-proof-item:hover { opacity: 1; }
.tv2-proof-name { font-size: 13px !important; font-weight: 600 !important; color: inherit !important; font-family: Inter, -apple-system, sans-serif !important; }
.tv2-proof-tag { font-size: 10px !important; font-weight: 500 !important; color: var(--tacit-fg-light) !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; font-family: Inter, -apple-system, sans-serif !important; }

/* ============================================
   BLOCK: Problem / Solution stats
   ============================================ */
.tv2-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--sp-10); margin-bottom: var(--sp-14); }
.tv2-stat-card { background: var(--tacit-card-bg); border: 1px solid var(--tacit-card-border); border-radius: var(--tacit-radius-lg); padding: var(--sp-12) var(--sp-11); position: relative; }
.tv2-stat-icon { width: var(--sp-13); height: var(--sp-13); border-radius: var(--radius-lg); background: var(--tacit-bg-deep); display: flex; align-items: center; justify-content: center; margin-bottom: var(--sp-9); position: absolute; top: 28px; right: 28px; }
.tv2-stat-icon svg { width: 20px; height: 20px; color: var(--tacit-fg-light); }
.tv2-stat-value { font-size: var(--fs-stat); font-weight: 700; letter-spacing: -0.02em; color: var(--tacit-fg); margin-bottom: var(--sp-4); }
.tv2-stat-label { font-size: var(--fs-body-sm); color: var(--tacit-fg-muted); line-height: 1.5; }
.tv2-stat-source { font-size: var(--fs-xs); color: var(--tacit-fg-light); margin-top: var(--sp-6); }
.tv2-solutions { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--sp-10); }
.tv2-solution-item { display: flex; align-items: flex-start; gap: var(--sp-5); padding: var(--sp-8) 0; }
.tv2-solution-check { width: 20px; height: 20px; border-radius: 50%; background: var(--tacit-accent-soft); color: var(--tacit-accent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: var(--sp-1); }
.tv2-solution-check svg { width: 12px; height: 12px; }
.tv2-solution-text { font-size: var(--fs-caption); color: var(--tacit-fg); font-weight: 500; line-height: 1.5; }

/* ============================================
   BLOCK: Feature tabs (Flow-style)
   ============================================ */
.tv2-ftabs-bar { display: flex; align-items: center; justify-content: center; gap: var(--sp-2); margin-bottom: var(--sp-14); border: 1px solid var(--tacit-card-border); border-radius: var(--tacit-radius-pill); padding: var(--sp-2); background: var(--tacit-bg-alt); width: fit-content; margin-left: auto; margin-right: auto; }
.tv2-ftabs-btn { display: flex; align-items: center; gap: var(--sp-4); height: var(--btn-md); padding: 0 var(--sp-9); border-radius: var(--tacit-radius-pill); font-size: var(--fs-caption); font-weight: 500; color: var(--tacit-fg-muted); background: transparent; border: none; cursor: pointer; transition: all 0.2s; font-family: var(--tacit-font); white-space: nowrap; box-sizing: border-box; }
.tv2-ftabs-btn:hover { color: var(--tacit-fg); }
.tv2-ftabs-btn.active { background: var(--tacit-card-bg); color: var(--tacit-fg); box-shadow: var(--tacit-shadow-sm); font-weight: 600; }
.tv2-ftabs-num { font-size: var(--fs-xxs); font-weight: 700; color: var(--tacit-accent); opacity: 0.5; }
.tv2-ftabs-btn.active .tv2-ftabs-num { opacity: 1; }
.tv2-ftabs-module { font-size: var(--fs-xs); font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--tacit-accent); margin-bottom: var(--sp-6); }
.tv2-ftabs-panel { display: none; }
.tv2-ftabs-panel.active { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-14); align-items: center; }
.tv2-ftabs-content { display: flex; flex-direction: column; gap: var(--sp-8); }
.tv2-ftabs-title { font-size: var(--fs-h2); font-weight: 700; letter-spacing: -0.02em; color: var(--tacit-fg); }
.tv2-ftabs-desc { font-size: var(--fs-body); line-height: 1.65; color: var(--tacit-fg-muted); }
.tv2-ftabs-pills { display: flex; flex-wrap: wrap; gap: var(--sp-4); margin-top: var(--sp-4); }
.tv2-ftabs-pill { font-size: var(--fs-xs); font-weight: 500; padding: var(--sp-3) var(--sp-6); border-radius: var(--tacit-radius-pill); border: 1px solid var(--tacit-card-border); color: var(--tacit-fg-muted); background: transparent; }
.tv2-ftabs-visual { aspect-ratio: 4/3; background: var(--tacit-bg-deep); border: 1px solid var(--tacit-card-border); border-radius: var(--tacit-radius-lg); overflow: hidden; position: relative; display: flex; align-items: center; justify-content: center; }
.tv2-ftabs-visual img { width: 100%; height: 100%; object-fit: cover; }
.tv2-ftabs-placeholder { font-size: var(--fs-caption); color: var(--tacit-fg-light); text-align: center; padding: var(--sp-10); }

/* ============================================
   BLOCK: Agent roles grid
   ============================================ */
/* Agent tabs — Flow-style horizontal navigation */
.tv2-nav-section { margin-bottom: var(--sp-13); }
.tv2-nav-section:last-child { margin-bottom: 0; }
.tv2-nav-label { font-size: var(--fs-xxs); font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: var(--tacit-fg-light); margin-bottom: var(--sp-8); }
.tv2-nav-grid { display: grid; gap: 1px; background: var(--tacit-border); border: 1px solid var(--tacit-border); border-radius: var(--radius-xl); overflow: hidden; }
.tv2-nav-grid--3 { grid-template-columns: repeat(3, 1fr); }
.tv2-nav-grid--5 { grid-template-columns: repeat(5, 1fr); }
.tv2-nav-card { display: flex; flex-direction: column; background: var(--tacit-bg); padding: var(--sp-10); text-decoration: none; transition: background 0.15s; position: relative; }
.tv2-nav-card:hover { background: var(--tacit-bg-subtle, #fafbfc); }
.tv2-nav-card-title { font-size: var(--fs-body-sm); font-weight: 700; color: var(--tacit-fg); margin-bottom: var(--sp-4); letter-spacing: -0.01em; line-height: 1.3; }
.tv2-nav-card-desc { font-size: var(--fs-small); color: var(--tacit-fg-muted); line-height: 1.55; flex: 1; }
.tv2-nav-card-arrow { font-size: var(--fs-body); color: var(--tacit-fg-light); margin-top: var(--sp-8); align-self: flex-end; transition: color 0.15s, transform 0.15s; }
.tv2-nav-card:hover .tv2-nav-card-arrow { color: var(--tacit-accent); transform: translateX(3px); }
.tv2-nav-card--compact { padding: var(--sp-9); }
.tv2-nav-card--compact .tv2-nav-card-title { font-size: var(--fs-caption); }
.tv2-nav-card--compact .tv2-nav-card-desc { font-size: 12.5px; }
.tv2-nav-card--compact .tv2-nav-card-arrow { margin-top: var(--sp-6); }

/* ============================================
   BLOCK: Roles — left sidebar + right visual (ftabs-style)
   ============================================ */
.tv2-roles { display: grid; grid-template-columns: 400px 1fr; align-items: stretch; gap: 0; min-height: 600px; }

/* Sidebar */
.tv2-roles-sidebar { display: flex; flex-direction: column; justify-content: flex-start; gap: 10px; padding-top: 24px; }
.tv2-roles > p, .tv2-roles-sidebar > p, .tv2-roles-group > p, .tv2-roles > br, .tv2-roles-sidebar > br { display: none !important; pointer-events: none !important; position: absolute !important; width: 0 !important; height: 0 !important; }
.tv2-roles-group { display: flex; flex-direction: column; gap: 10px; }
.tv2-roles-group-label { font-size: 10px !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; font-weight: 600 !important; color: inherit !important; text-transform: uppercase !important; letter-spacing: 0.12em !important; opacity: 0.4; margin-bottom: var(--sp-2) !important; padding-left: var(--sp-7) !important; margin-top: var(--sp-7) !important; }
.tv2-roles-group:first-child .tv2-roles-group-label { margin-top: 0; }
.tv2-roles-nav { display: flex !important; align-items: flex-start !important; width: 100% !important; text-align: left !important; padding: 12px var(--sp-8) 12px 0 !important; font-size: 15px !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; font-weight: 500 !important; color: var(--tacit-fg-muted) !important; background: none !important; border: none !important; cursor: pointer !important; transition: color 0.15s; border-radius: 0 !important; box-sizing: border-box !important; }
.tv2-roles-indicator { position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: rgba(11,11,13,.06); border-radius: var(--radius-xs); transition: background 0.15s; }
.tv2-roles-nav.active .tv2-roles-indicator { background: var(--tacit-accent, #38d3a8); width: 3px; }
.tv2-roles-nav-inner { padding-left: var(--sp-7); }
.tv2-roles-nav-title { font-size: var(--fs-body-sm) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; font-weight: 650 !important; color: var(--tacit-fg-light) !important; line-height: 1.3 !important; transition: color 0.2s; }
.tv2-roles-nav:hover .tv2-roles-nav-title { color: var(--tacit-fg) !important; }
.tv2-roles-nav.active .tv2-roles-nav-title { color: var(--tacit-fg) !important; font-size: var(--fs-body) !important; }
.tv2-roles-nav-desc { font-size: var(--fs-small) !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; line-height: 1.5 !important; color: var(--tacit-fg-muted) !important; opacity: 0; max-height: 0; overflow: hidden; margin: 0; transition: opacity 0.18s ease; }
.tv2-roles-nav.active .tv2-roles-nav-desc { max-height: 80px; opacity: 1; margin: var(--sp-3) 0 0; transition: opacity 0.2s 0.05s ease; }

/* Stage (visual area) */
.tv2-roles-stage { align-self: start; border-radius: var(--radius-3xl); overflow: hidden; background: transparent; border: none; position: relative; aspect-ratio: 16/9; }
.tv2-roles-panel { display: none; position: absolute; inset: 0; width: 100%; height: 100%; font-size: 0 !important; color: transparent !important; overflow: hidden; }
.tv2-roles-panel.active { display: flex; align-items: center; justify-content: center; animation: tv2Fade 0.25s ease-out; }
.tv2-roles-panel .tv2-roles-coming-soon { font-size: 15px !important; }
.tv2-roles-panel img, .tv2-roles-panel video { width: 100%; height: auto; object-fit: contain; object-position: top center; margin-bottom: -15px; }
.tv2-roles-placeholder { font-size: var(--fs-caption); color: #6b7280; opacity: 1; font-style: italic; padding: var(--sp-9); }
.tv2-roles-coming-soon { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: 400px; border: 2px dashed rgba(11,11,13,.1); border-radius: var(--radius-xl); margin: var(--sp-6); box-sizing: border-box; font-size: 15px; font-weight: 500; letter-spacing: 0.05em; color: rgba(11,11,13,.18); font-family: Inter, -apple-system, system-ui, sans-serif; }
[data-theme="dark"] .tv2-roles-coming-soon { border-color: rgba(255,255,255,.08); color: rgba(255,255,255,.15); }
.tv2-roles-mobile-desc { display: none; }

/* Dark mode */
[data-theme="dark"] .tv2-roles-stage { background: transparent; }
[data-theme="dark"] .tv2-roles-placeholder { color: rgba(255, 255, 255, 0.6); }
[data-theme="dark"] .tv2-roles-indicator { background: rgba(255,255,255,.08); }
[data-theme="dark"] .tv2-roles-nav.active .tv2-roles-indicator { background: #38d3a8 !important; }
[data-theme="dark"] .tv2-roles-nav-title { color: rgba(255,255,255,.85) !important; }
[data-theme="dark"] .tv2-roles-nav:hover .tv2-roles-nav-title { color: var(--tacit-fg) !important; }
[data-theme="dark"] .tv2-roles-nav.active .tv2-roles-nav-title { color: var(--tacit-fg) !important; }
[data-theme="dark"] .tv2-roles-nav-desc { color: var(--tacit-fg-muted) !important; }
[data-theme="dark"] .tv2-roles-group-label { color: rgba(255,255,255,.7) !important; opacity: 1 !important; }

/* Roles responsive */
@media (max-width: 900px) {
  .tv2-roles { grid-template-columns: 1fr !important; min-height: auto; gap: var(--sp-8); }
  .tv2-roles-sidebar { position: static !important; flex-direction: column !important; overflow-x: visible !important; gap: 0; padding-bottom: 0; margin-bottom: 0; border-bottom: none; }
  .tv2-roles-group { flex-direction: column; gap: 0; }
  .tv2-roles-group-label { display: block; padding-left: var(--sp-6) !important; }
  .tv2-roles-indicator { left: 0; top: 0; bottom: 0; right: auto; width: 2px !important; height: auto !important; }
  .tv2-roles-nav.active .tv2-roles-indicator { width: 3px !important; height: auto !important; }
  .tv2-roles-nav { white-space: normal !important; padding: var(--sp-5) var(--sp-7) !important; border-bottom: 1px solid var(--tacit-card-border, rgba(255,255,255,.06)); position: relative; }
  .tv2-roles-nav:last-child { border-bottom: none; }
  .tv2-roles-nav.active { padding-top: var(--sp-5) !important; padding-bottom: var(--sp-5) !important; }
  .tv2-roles-nav-inner { padding-left: var(--sp-6); }
  .tv2-roles-nav-desc { display: block !important; }
  .tv2-roles-stage { position: relative; top: 0; min-height: 0 !important; border-radius: var(--radius-xl); overflow: hidden; aspect-ratio: 16/9; border: none; background: transparent; margin-top: 0; }
  .tv2-roles-panel img, .tv2-roles-panel video { object-fit: cover; object-position: top left; }
  .tv2-roles-mobile-desc { display: none !important; }
}
@media (max-width: 480px) {
  .tv2-roles-nav { padding: var(--sp-4) var(--sp-6) !important; font-size: var(--fs-small) !important; }
  .tv2-roles-stage { border-radius: var(--radius-lg); aspect-ratio: 4/3; }
}

/* ============================================
   BLOCK: Process (How it works) — Flow-style rows
   ============================================ */
.tv2-process { display: flex; flex-direction: column; gap: 0; }
.tv2-process-row { display: grid; grid-template-columns: 100px 1fr 1.2fr; gap: var(--sp-12); align-items: center; padding: var(--sp-13) 0; border-bottom: 1px solid var(--tacit-border); }
.tv2-process-row:last-child { border-bottom: none; }
.tv2-process-meta { display: flex; flex-direction: column; gap: var(--sp-3); }
.tv2-process-num { font-size: var(--fs-stat-sm); font-weight: 800; color: var(--tacit-accent); letter-spacing: -0.03em; line-height: 1; }
.tv2-process-time { font-size: var(--fs-xs); font-weight: 600; color: var(--tacit-fg-light); text-transform: uppercase; letter-spacing: 0.04em; }
[data-theme="dark"] .tv2-process-time { color: var(--tacit-fg-light); }
.tv2-process-title { font-size: var(--fs-component); font-weight: 700; color: var(--tacit-fg); margin-bottom: var(--sp-4); letter-spacing: -0.01em; }
.tv2-process-desc { font-size: var(--fs-body-sm); color: var(--tacit-fg-muted); line-height: 1.65; }
.tv2-process-visual { border-radius: var(--tacit-radius-lg); background: var(--tacit-card-bg); border: 1px solid var(--tacit-card-border); min-height: 160px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.tv2-process-visual img { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.tv2-process-placeholder { font-size: var(--fs-small); color: var(--tacit-fg-muted); opacity: 0.35; font-style: italic; }

/* ============================================
   BLOCK: Maturity model
   ============================================ */
.tv2-maturity-wrap { position: relative; background: transparent; border-radius: 0; padding: var(--sp-14) 0 var(--sp-12); }
.tv2-maturity-track { display: none; }
.tv2-maturity { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; position: relative; }
.tv2-maturity::before, .tv2-maturity::after { display: none; }
.tv2-maturity-level { position: relative; z-index: 1; padding: var(--sp-10) var(--sp-9); border-radius: 0; display: flex; flex-direction: column; gap: var(--sp-5); transition: all 0.25s ease; cursor: default; background: transparent; border: none; border-right: 1px solid rgba(11,11,13,.08); }
.tv2-maturity-level:last-child { border-right: none; }
.tv2-maturity-level:hover { background: rgba(11,11,13,.015); }
.tv2-maturity-level--active { background: transparent; border-right: none; }
.tv2-maturity-level--active:hover { background: rgba(var(--tacit-accent-rgb, 0,168,150),.03); }
.tv2-maturity-caps br, .tv2-maturity-caps p:empty,
.tv2-maturity-level br, .tv2-maturity-level p:empty { display: none !important; margin: 0 !important; padding: 0 !important; }
.tv2-maturity-tag { font-family: var(--tacit-font-mono, 'SF Mono', 'Fira Code', monospace); font-size: 11px; font-weight: 700; letter-spacing: 0.06em; color: rgba(11,11,13,.28); text-transform: uppercase; }
.tv2-maturity-level--active .tv2-maturity-tag { color: var(--tacit-accent); font-weight: 800; }
.tv2-maturity-level--active .tv2-maturity-name { color: var(--tacit-accent); }
.tv2-maturity-name { font-size: var(--fs-body-sm); font-weight: 700; color: var(--tacit-fg); letter-spacing: -0.01em; }
.tv2-maturity-desc { display: block !important; font-size: 13px !important; color: var(--tacit-fg-muted) !important; line-height: 1.55 !important; visibility: visible !important; opacity: 1 !important; height: auto !important; overflow: visible !important; }
.tv2-maturity-caps { display: flex; flex-direction: column; gap: 6px; margin-top: auto; padding-top: calc(var(--sp-6) + 3px); border-top: 1px solid rgba(11,11,13,.06); }
.tv2-maturity-cap { font-size: 11.5px; color: rgba(11,11,13,.22); display: flex; align-items: center; gap: var(--sp-3); letter-spacing: 0.01em; }
.tv2-maturity-cap--on { color: var(--tacit-accent); font-weight: 550; }
.tv2-maturity-cap svg { width: 12px; height: 12px; flex-shrink: 0; }

[data-theme="dark"] .tv2-maturity-wrap { background: transparent; }
[data-theme="dark"] .tv2-maturity-level { border-color: transparent; border-right-color: rgba(255,255,255,.08); }
[data-theme="dark"] .tv2-maturity-level:last-child { border-right-color: transparent; }
[data-theme="dark"] .tv2-maturity-level:hover { background: rgba(255,255,255,.03); }
[data-theme="dark"] .tv2-maturity-level--active { background: transparent; border-right-color: transparent; }
[data-theme="dark"] .tv2-maturity-level--active:hover { background: rgba(56,211,168,.04); }
[data-theme="dark"] .tv2-maturity-tag { color: rgba(255,255,255,.4); }
[data-theme="dark"] .tv2-maturity-name { color: rgba(255,255,255,.95); }
[data-theme="dark"] .tv2-maturity-desc { color: rgba(255,255,255,.6) !important; }
[data-theme="dark"] .tv2-maturity-caps { border-top-color: rgba(255,255,255,.08); }
[data-theme="dark"] .tv2-maturity-cap { color: rgba(255,255,255,.25); }
[data-theme="dark"] .tv2-maturity-cap--on { color: var(--tacit-accent); }

/* ============================================
   BLOCK: Testimonial cards (Flow-style horizontal scroll)
   ============================================ */
.tv2-tcard-row {
  display: flex;
  gap: var(--sp-9);
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding: var(--sp-2) 0 var(--sp-8);
  scrollbar-width: none;
}
.tv2-tcard-row::-webkit-scrollbar { display: none; }
.tv2-tcard {
  flex: 0 0 320px;
  min-width: 280px;
  max-width: 360px;
  scroll-snap-align: start;
  background: var(--tacit-bg, #fff);
  border: 1px solid rgba(11,11,13,.04);
  border-radius: var(--radius-xl);
  padding: var(--sp-9) var(--sp-9) var(--sp-8);
  display: flex;
  flex-direction: column;
  box-shadow: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.tv2-tcard:hover { border-color: rgba(11,11,13,.08); }
.tv2-tcard-quote {
  font-family: var(--tacit-font-display);
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: -0.01em;
  color: var(--tacit-fg);
  margin-bottom: var(--sp-7);
  flex: 1;
}
.tv2-tcard-footer { display: flex; flex-direction: column; gap: 0; }
.tv2-tcard-author { font-size: var(--fs-small); font-weight: 600; color: var(--tacit-fg); line-height: 1.3; }
.tv2-tcard-role { font-size: var(--fs-xs); color: rgba(11,11,13,.5); margin-top: var(--sp-1); }
[data-theme="dark"] .tv2-tcard { background: transparent; border-color: rgba(255,255,255,.06); box-shadow: none; }
[data-theme="dark"] .tv2-tcard:hover { border-color: rgba(255,255,255,.10); }
[data-theme="dark"] .tv2-tcard-role { color: rgba(255,255,255,.45); }
@media (prefers-color-scheme: light) {
  [data-theme="dark"] .tv2-tcard { background: transparent; border-color: rgba(255,255,255,.06); box-shadow: none; }
  [data-theme="dark"] .tv2-tcard:hover { border-color: rgba(255,255,255,.10); }
}

/* Testimonial card metric chips */
.tv2-tcard-metrics {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sp-2) var(--sp-5);
  padding-top: var(--sp-5);
  margin-top: var(--sp-6);
  border-top: 1px solid rgba(11,11,13,.06);
  opacity: 0.7;
}
.tv2-tcard-metric {
  font-size: var(--fs-xs);
  font-weight: 600;
  color: var(--tacit-fg);
  line-height: 1.3;
}
.tv2-tcard-metric + .tv2-tcard-metric::before {
  content: '|';
  margin-right: var(--sp-5);
  font-weight: 300;
  color: rgba(11,11,13,.18);
}
[data-theme="dark"] .tv2-tcard-metrics {
  border-top-color: rgba(255,255,255,.08);
}
[data-theme="dark"] .tv2-tcard-metric + .tv2-tcard-metric::before {
  color: rgba(255,255,255,.15);
}
.tv2-tcard-logo {
  display: block;
  height: 18px;
  width: auto;
  margin-bottom: var(--sp-4);
  opacity: 0.55;
}
[data-theme="dark"] .tv2-tcard-logo {
  filter: brightness(0) invert(1);
  opacity: 0.7;
}
/* Testimonial scroll hint for mobile */
.tv2-tcard-scroll-hint {
  display: none;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: var(--sp-4) 0 0;
  color: var(--tacit-fg-muted, rgba(11,11,13,.35));
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.tv2-tcard-scroll-hint svg { opacity: 0.5; }
@media (max-width: 900px) {
  .tv2-tcard-scroll-hint { display: flex; }
}
[data-theme="dark"] .tv2-tcard-scroll-hint { color: rgba(255,255,255,.3); }

.tv2-tcard-portrait {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: var(--sp-3);
  filter: grayscale(100%);
}

/* Inline proof quote (between sections) */
.tv2-inline-proof {
  text-align: center;
  padding: 80px var(--sp-10);
  max-width: 640px;
  margin: 0 auto;
}
.tv2-inline-proof--cta {
  margin-top: var(--sp-14);
  max-width: 460px;
  padding: var(--sp-14) var(--sp-8) var(--sp-7);
  background-image: linear-gradient(rgba(11,11,13,.08), rgba(11,11,13,.08));
  background-size: 60px 1px;
  background-repeat: no-repeat;
  background-position: center top;
}
[data-theme="dark"] .tv2-inline-proof--cta {
  background-image: linear-gradient(rgba(255,255,255,.08), rgba(255,255,255,.08));
}
.tv2-inline-proof--cta .tv2-inline-proof-quote {
  font-size: var(--fs-small);
  font-style: normal;
  color: var(--tacit-fg-light);
  line-height: 1.55;
}
.tv2-inline-proof--cta .tv2-inline-proof-cite {
  font-size: var(--fs-xs);
}
.tv2-inline-proof-quote {
  font-family: var(--tacit-font-display) !important;
  font-size: clamp(1.05rem, 1.8vw, 1.25rem) !important;
  font-weight: 450 !important;
  font-style: italic !important;
  color: rgba(11,11,13,.75) !important;
  line-height: 1.6 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 var(--sp-4) !important;
  padding: 0 !important;
  border: none !important;
  border-left: none !important;
  background: none !important;
  text-align: center !important;
  quotes: none;
}
.tv2-inline-proof-cite {
  display: block !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: 0.8rem !important;
  color: rgba(11,11,13,.5) !important;
  font-style: normal !important;
  letter-spacing: 0.02em !important;
  text-align: center !important;
  border: none !important;
  padding: 0 !important;
  background: none !important;
}
[data-theme="dark"] .tv2-inline-proof-quote { color: rgba(255,255,255,.85) !important; border: none !important; background: none !important; }
[data-theme="dark"] .tv2-inline-proof-cite { color: rgba(255,255,255,.55) !important; }

/* CTA proof quote */
.tv2-cta-proof {
  margin-top: var(--sp-9);
  text-align: center;
  max-width: 460px;
  margin-left: auto;
  margin-right: auto;
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(11,11,13,.06);
  border-radius: var(--radius-lg);
  padding: var(--sp-7) var(--sp-8);
}
.tv2-cta-proof-quote {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-small);
  font-style: normal;
  color: var(--tacit-fg);
  line-height: 1.55;
  margin: 0 0 var(--sp-4);
}
.tv2-cta-proof-author {
  font-size: var(--fs-xs);
  font-weight: 500;
  color: var(--tacit-fg-light);
}
[data-theme="dark"] .tv2-cta-proof {
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
}

/* ============================================
   BLOCK: Resources (featured doc + blog posts)
   ============================================ */
.tv2-resources {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: var(--sp-9) !important;
  align-items: stretch !important;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}
.tv2-resources > :not(.tv2-res-featured):not(.tv2-res-posts-wrap):not(.tv2-res-posts) { display: none !important; }
.tv2-res-posts > br,
.tv2-res-posts > p > br,
.tv2-res-posts-wrap > br,
.tv2-res-post > br,
.tv2-res-post-body > br { display: none !important; height: 0 !important; margin: 0 !important; }
.tv2-res-posts > p,
.tv2-res-posts-wrap > p {
  display: contents !important;
  margin: 0 !important;
  padding: 0 !important;
}
a.tv2-res-post:not(:has(.tv2-res-post-body)),
.tv2-res-post:not(:has(.tv2-res-post-img)) {
  display: none !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  overflow: hidden !important;
}
.tv2-res-featured {
  display: flex !important;
  flex-direction: column !important;
  text-decoration: none !important;
  border-radius: var(--radius-md) !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--tacit-card-border, rgba(11,11,13,.08)) !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.04), 0 6px 20px rgba(0,0,0,.05) !important;
}
.tv2-res-featured-img-wrap {
  background: var(--tacit-bg-deep, #f7f8fa);
  padding: var(--sp-10) var(--sp-10) 0;
  display: flex;
  justify-content: center;
  overflow: hidden;
  max-height: 200px;
}
.tv2-res-featured-img {
  width: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: top center;
  display: block;
  border-radius: var(--radius) var(--radius) 0 0;
  box-shadow: 0 2px 12px rgba(0,0,0,.08);
}
.tv2-res-featured-inner {
  display: flex;
  flex-direction: column;
  padding: var(--sp-7) var(--sp-9) var(--sp-8);
}
.tv2-res-featured-tag {
  font-size: var(--fs-xxs) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: var(--tacit-fg-muted) !important;
  margin-bottom: var(--sp-3) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
}
.tv2-res-featured-title {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: inherit !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
  margin-bottom: var(--sp-3) !important;
}
.tv2-res-featured-desc {
  font-size: 13px !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.45 !important;
  color: var(--tacit-fg-muted) !important;
  margin-bottom: var(--sp-5) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden !important;
}
.tv2-res-featured-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: var(--fs-small);
  font-weight: 500;
  color: var(--tacit-fg-muted);
  transition: color 0.15s;
}
.tv2-res-featured-link svg { transition: color 0.15s, transform 0.15s; }
.tv2-res-featured:hover .tv2-res-featured-link { color: var(--tacit-fg); }
.tv2-res-featured:hover .tv2-res-featured-link svg { color: var(--tacit-accent); transform: translateX(2px); }

.tv2-res-posts {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--tacit-card-border, rgba(11,11,13,.08));
  border-radius: var(--radius-md);
  box-shadow: 0 1px 4px rgba(0,0,0,.04), 0 6px 20px rgba(0,0,0,.05);
  overflow: hidden;
}
.tv2-res-post {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: var(--sp-5);
  align-items: start;
  padding: var(--sp-4) var(--sp-7);
  text-decoration: none;
  border-bottom: 1px solid var(--tacit-card-border, rgba(11,11,13,.06));
}
.tv2-res-post:last-child { border-bottom: none; }
.tv2-res-posts-wrap { position: relative !important; background: #fff !important; border: 1px solid var(--tacit-card-border, rgba(11,11,13,.08)) !important; border-radius: var(--radius-md) !important; box-shadow: 0 1px 4px rgba(0,0,0,.04), 0 6px 20px rgba(0,0,0,.05) !important; max-height: 520px; overflow-y: auto !important; scrollbar-width: thin; scrollbar-color: rgba(0,0,0,.12) transparent; }
.tv2-res-posts-wrap::-webkit-scrollbar { width: 4px; }
.tv2-res-posts-wrap::-webkit-scrollbar-track { background: transparent; }
.tv2-res-posts-wrap::-webkit-scrollbar-thumb { background: rgba(0,0,0,.12); border-radius: 2px; }
.tv2-res-posts-wrap .tv2-res-posts { background: none; border: none; box-shadow: none; border-radius: 0; }
.tv2-res-posts-wrap .tv2-res-posts::-webkit-scrollbar { width: 4px; }
.tv2-res-posts-wrap .tv2-res-posts::-webkit-scrollbar-track { background: transparent; }
.tv2-res-posts-wrap .tv2-res-posts::-webkit-scrollbar-thumb { background: rgba(0,0,0,.12); border-radius: 2px; }
.tv2-res-posts-scroll-hint { position: absolute; bottom: 0; left: 0; right: 0; height: 40px; display: flex; align-items: flex-end; justify-content: center; padding-bottom: 6px; background: linear-gradient(to bottom, transparent, #fff 70%); pointer-events: none; transition: opacity 0.25s; color: #9ca3af; }
.tv2-res-posts-scroll-hint.hidden { opacity: 0; }
[data-theme="dark"] .tv2-res-posts-wrap { background: #030712 !important; border-color: rgba(255,255,255,.06) !important; box-shadow: 0 1px 4px rgba(0,0,0,.2), 0 6px 24px rgba(0,0,0,.25) !important; }
[data-theme="dark"] .tv2-res-posts-wrap .tv2-res-posts { scrollbar-color: rgba(255,255,255,.15) transparent; }
[data-theme="dark"] .tv2-res-posts-wrap .tv2-res-posts::-webkit-scrollbar-thumb { background: rgba(255,255,255,.15); }
[data-theme="dark"] .tv2-res-posts-scroll-hint { background: linear-gradient(to bottom, transparent, var(--tacit-bg, #0b0b0d) 70%); color: var(--tacit-fg-light); }
.tv2-res-post:hover { background: var(--tacit-bg-deep, #fafafa); }
.tv2-res-post-img {
  width: 100%;
  aspect-ratio: 4/3;
  border-radius: var(--radius);
  flex-shrink: 0;
  overflow: hidden;
}
.tv2-res-post-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.tv2-res-post-body { display: flex; flex-direction: column; justify-content: flex-start; align-self: start; min-width: 0; gap: 0; padding-top: 0; }
.tv2-res-post-title {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  font-size: var(--fs-body-sm) !important;
  font-weight: 700 !important;
  color: var(--tacit-fg) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.015em !important;
  margin: 0 0 2px !important;
}
.tv2-res-post-desc {
  font-size: var(--fs-small) !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  line-height: 1.35 !important;
  color: var(--tacit-fg-muted) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.tv2-res-post-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-size: var(--fs-xxs, 11px) !important;
  font-weight: 500 !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  color: var(--tacit-fg-muted) !important;
  transition: color 0.15s;
}
.tv2-res-post-link svg { transition: color 0.15s, transform 0.15s; }
.tv2-res-post:hover .tv2-res-post-link { color: var(--tacit-fg); }
.tv2-res-post:hover .tv2-res-post-link svg { color: var(--tacit-accent); transform: translateX(2px); }

[data-theme="dark"] .tv2-res-featured { background: #030712 !important; border-color: rgba(255,255,255,.06) !important; box-shadow: 0 1px 4px rgba(0,0,0,.2), 0 6px 24px rgba(0,0,0,.25) !important; }
[data-theme="dark"] .tv2-res-featured-img-wrap { background: rgba(255,255,255,.03) !important; }
[data-theme="dark"] .tv2-res-featured-img { box-shadow: 0 2px 12px rgba(0,0,0,.4) !important; }
[data-theme="dark"] .tv2-res-featured-title { color: #fff !important; }
[data-theme="dark"] .tv2-res-featured-tag { color: #8291a3 !important; }
[data-theme="dark"] .tv2-res-featured-desc { color: #a8b1bf !important; }
[data-theme="dark"] .tv2-res-featured-link { color: rgba(255,255,255,.45) !important; }
[data-theme="dark"] .tv2-res-featured:hover .tv2-res-featured-link { color: #fff !important; }
[data-theme="dark"] .tv2-res-featured:hover .tv2-res-featured-link svg { color: #38d3a8 !important; }
[data-theme="dark"] .tv2-res-posts { background: #030712 !important; border-color: rgba(255,255,255,.06) !important; box-shadow: 0 1px 4px rgba(0,0,0,.2), 0 6px 24px rgba(0,0,0,.25) !important; }
[data-theme="dark"] .tv2-res-post { border-color: rgba(255,255,255,.04) !important; }
[data-theme="dark"] .tv2-res-post:hover { background: rgba(255,255,255,.03) !important; }
[data-theme="dark"] .tv2-res-post-title { color: #fff !important; font-family: Inter, -apple-system, sans-serif !important; }
[data-theme="dark"] .tv2-res-post-desc { color: #a8b1bf !important; }
[data-theme="dark"] .tv2-res-post-link { color: rgba(255,255,255,.4) !important; }
[data-theme="dark"] .tv2-res-post:hover .tv2-res-post-link { color: #fff !important; }
[data-theme="dark"] .tv2-res-post:hover .tv2-res-post-link svg { color: #38d3a8 !important; }

/* Resources / Blog responsive */
@media (max-width: 900px) {
  .tv2-resources { grid-template-columns: 1fr !important; gap: var(--sp-8) !important; max-width: 100% !important; }
  .tv2-res-featured-img { max-width: 100%; }
  .tv2-res-posts-wrap { max-height: 360px; }
}
@media (max-width: 600px) {
  .tv2-res-featured-inner { padding: var(--sp-7) var(--sp-7) var(--sp-8); }
  .tv2-res-featured-img-wrap { padding: var(--sp-7) var(--sp-7) 0; }
  .tv2-res-post { grid-template-columns: 80px 1fr; padding: var(--sp-4) var(--sp-5); }
  .tv2-res-posts-wrap { max-height: 320px; }
}
@media (max-width: 480px) {
  .tv2-res-post { grid-template-columns: 1fr; }
  .tv2-res-post-img { height: 140px; border-radius: var(--radius); overflow: hidden; }
}

/* ============================================
   BLOCK: AI Feature Card (Flow-style standalone)
   ============================================ */
.tv2-aicard {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-radius: var(--radius-3xl);
  overflow: hidden;
  border: 1px solid rgba(11,11,13,.04);
  background: var(--tacit-bg, #fff);
  min-height: 400px;
  box-shadow: none;
}
.tv2-aicard-info {
  padding: var(--sp-14) var(--sp-13);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@keyframes tv2-shimmer {
  0%   { background-position: 200% center; }
  100% { background-position: -200% center; }
}
.tv2-aicard-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-3);
  font-size: var(--fs-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: var(--sp-9);
  width: fit-content;
  color: var(--tacit-accent, #38d3a8);
}
.tv2-aicard-badge svg {
  width: 15px;
  height: 15px;
  color: var(--tacit-accent, #38d3a8);
  filter: drop-shadow(0 0 4px rgba(56,211,168,.2));
}
.tv2-aicard-badge svg path:nth-child(1) { animation: layerIn 3s ease-in-out infinite; animation-delay: 0s; }
.tv2-aicard-badge svg path:nth-child(2) { animation: layerIn 3s ease-in-out infinite; animation-delay: 0.3s; }
.tv2-aicard-badge svg path:nth-child(3) { animation: layerIn 3s ease-in-out infinite; animation-delay: 0.6s; }
@keyframes layerIn {
  0%, 20% { opacity: 0.3; transform: translateY(2px); }
  30%, 70% { opacity: 1; transform: translateY(0); }
  80%, 100% { opacity: 0.3; transform: translateY(2px); }
}
[data-theme="dark"] .tv2-aicard-badge {
  color: var(--tacit-accent, #5ee8c0);
}
[data-theme="dark"] .tv2-aicard-badge svg { color: var(--tacit-accent, #5ee8c0); filter: drop-shadow(0 0 6px rgba(94,232,192,.25)); }
.tv2-aicard-title {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-h2);
  font-weight: 750;
  letter-spacing: -0.025em;
  line-height: 1.15;
  color: var(--tacit-fg);
  margin-bottom: var(--sp-8);
}
.tv2-aicard-desc {
  font-size: var(--fs-body);
  line-height: 1.6;
  color: var(--tacit-fg-muted);
  margin-bottom: var(--sp-10);
  max-width: 440px;
}
.tv2-aicard-caps {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-4);
}
.tv2-aicard-cap {
  font-size: var(--fs-xs);
  font-weight: 500;
  color: var(--tacit-fg-muted);
  background: transparent;
  padding: var(--sp-3) var(--sp-7);
  border-radius: var(--radius-pill);
  border: 1px solid rgba(11,11,13,.14);
}
.tv2-aicard-visual {
  background: var(--tacit-bg-deep, #f7f8fa);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--sp-12);
  position: relative;
  overflow: hidden;
}
.tv2-aicard-visual img { width: 100%; height: 100%; object-fit: cover; border-radius: var(--radius-md); }
.tv2-aicard-visual .tv2-aicard-placeholder {
  color: var(--tacit-fg-light);
  font-size: var(--fs-small);
  text-align: center;
  padding: var(--sp-13);
}
.tv2-aicard-link {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-3);
  font-size: var(--fs-small);
  font-weight: 400;
  color: var(--tacit-fg-muted);
  text-decoration: none;
  margin-left: auto;
  margin-top: calc(var(--sp-4) + 10px);
  transition: gap 0.2s;
}
.tv2-aicard-link:hover { gap: var(--sp-5); }
.tv2-aicard-link svg { width: 14px; height: 14px; }
[data-theme="dark"] .tv2-aicard { background: transparent; border-color: rgba(255,255,255,.06); box-shadow: none; }
[data-theme="dark"] .tv2-aicard-cap { background: transparent; border-color: rgba(255,255,255,.16); color: rgba(255,255,255,.5); }
[data-theme="dark"] .tv2-aicard-visual { background: var(--tacit-bg-deep, rgba(255,255,255,.04)); }
@media (prefers-color-scheme: light) {
  [data-theme="dark"] .tv2-aicard { background: transparent; border-color: rgba(255,255,255,.06); box-shadow: none; }
  [data-theme="dark"] .tv2-aicard-cap { background: transparent; border-color: rgba(255,255,255,.16); color: rgba(255,255,255,.5); }
}

/* AI Card responsive */
@media (max-width: 900px) {
  .tv2-aicard { grid-template-columns: 1fr; margin-left: calc(var(--sp-8) * -0.5); margin-right: calc(var(--sp-8) * -0.5); }
  .tv2-aicard-info { padding: var(--sp-11) var(--sp-9); }
  .tv2-aicard-visual { min-height: 280px; }
  .tv2-aicard-title { font-size: var(--fs-h3); }
}
@media (max-width: 480px) {
  .tv2-aicard { margin-left: calc(var(--sp-6) * -0.6); margin-right: calc(var(--sp-6) * -0.6); }
  .tv2-aicard-info { padding: var(--sp-9) var(--sp-7); }
  .tv2-aicard-visual { min-height: 220px; padding: var(--sp-8); }
  .tv2-aicard-title { font-size: var(--fs-body-lg); }
  .tv2-aicard-desc { font-size: var(--fs-small); }
}

/* ============================================
   BLOCK: How It Works — steps
   ============================================ */
.tv2-steps { display: flex; gap: 16px; margin-top: var(--sp-14); justify-content: center; margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); padding: 4px 0 8px; }
.tv2-step { flex: 0 0 200px; width: 200px; height: 234px; padding: 18px; border: 1px solid var(--tacit-border); border-radius: 12px; background: var(--tacit-bg); box-shadow: 0 11px 30px rgba(0,0,0,.045); transition: transform 0.3s ease, box-shadow 0.3s ease; cursor: default; display: flex; flex-direction: column; overflow: hidden; }
.tv2-step:hover { transform: translateY(-1.5px); box-shadow: 0 16px 42px rgba(0,0,0,.055); }

.tv2-step-spark { height: 38px; margin: 0 -6px 0; flex-shrink: 0; }
.tv2-step-spark svg { width: 100%; height: 100%; overflow: visible; }

.tv2-spark-grid line { stroke: rgba(11,11,13,.04); stroke-width: 0.4; }
.tv2-step--accent .tv2-spark-grid line { stroke: rgba(56,211,168,.06); }

.tv2-spark-base {
  fill: none; stroke: rgba(11,11,13,.06); stroke-width: 1.2; stroke-linecap: round; stroke-linejoin: round;
  stroke-dasharray: 400; stroke-dashoffset: 400;
  animation: tv2-spark-draw 2s ease-out forwards;
}
.tv2-step--accent .tv2-spark-base { stroke: rgba(56,211,168,.12); }

.tv2-spark-seg {
  fill: none; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round;
  stroke-dasharray: 1; stroke-dashoffset: 1;
  animation: tv2-seg-draw 720ms cubic-bezier(0.22,1,0.36,1) both;
}
.tv2-step--accent .tv2-spark-seg { stroke-width: 2.5; }

.tv2-spark-dot { opacity: 0; fill: #fff; animation: tv2-dot-fade 360ms ease-out both; }
.tv2-step--accent .tv2-spark-dot { fill: var(--tacit-accent, #38d3a8); }

[data-progress="1"] .tv2-spark-seg { animation-delay: 44ms; }
[data-progress="1"] .tv2-spark-dot { animation-delay: 354ms; }
[data-progress="2"] .tv2-spark-seg { animation-delay: 88ms; }
[data-progress="2"] .tv2-spark-dot { animation-delay: 398ms; }
[data-progress="3"] .tv2-spark-seg { animation-delay: 132ms; }
[data-progress="3"] .tv2-spark-dot { animation-delay: 442ms; }
[data-progress="4"] .tv2-spark-seg { animation-delay: 176ms; }
[data-progress="4"] .tv2-spark-dot { animation-delay: 486ms; }
[data-progress="5"] .tv2-spark-seg { animation-delay: 220ms; }
[data-progress="5"] .tv2-spark-dot { animation-delay: 530ms; }
[data-progress="6"] .tv2-spark-seg { animation-delay: 264ms; }
[data-progress="6"] .tv2-spark-dot { animation-delay: 574ms; }

@keyframes tv2-spark-draw { to { stroke-dashoffset: 0; } }
@keyframes tv2-seg-draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes tv2-dot-fade { from { opacity: 0; } to { opacity: 1; } }

.tv2-step:hover .tv2-spark-grid line { stroke: rgba(11,11,13,.07); }

.tv2-step--accent { border-color: rgba(56,211,168,.2); background: linear-gradient(180deg, rgba(56,211,168,.03) 0%, transparent 100%); }
.tv2-step--accent:hover { transform: translateY(-2px); box-shadow: 0 20px 52px rgba(56,211,168,.08); }

.tv2-step-badge { font-size: 8.5px; font-weight: 600; text-transform: uppercase; letter-spacing: .22em; color: rgba(11,11,13,.35); margin-top: 16px; margin-bottom: 0; flex-shrink: 0; line-height: 1; }
.tv2-step--accent .tv2-step-badge { color: var(--tacit-accent, #38d3a8); }

.tv2-step-title { font-size: var(--fs-body-sm); font-weight: 600; color: var(--tacit-fg); margin-top: 13px; margin-bottom: 0; letter-spacing: -0.03em; line-height: 1.15; flex-shrink: 0; }
.tv2-step-desc { font-size: var(--fs-small); line-height: 1.5; color: var(--tacit-fg-muted); margin: 10px 0 0; letter-spacing: -0.01em; flex: 1 1 auto; min-height: 0; overflow: hidden; }

.tv2-step-footer { margin-top: auto; padding-top: 10px; border-top: 1px solid rgba(11,11,13,.06); font-size: 10px; font-weight: 500; color: rgba(11,11,13,.28); letter-spacing: -0.01em; line-height: 1; flex-shrink: 0; }
.tv2-step--accent .tv2-step-footer { color: var(--tacit-accent, #38d3a8); font-weight: 600; }

.tv2-step-num { font-size: 10px; font-weight: 700; color: rgba(11,11,13,.25); letter-spacing: .06em; margin-bottom: var(--sp-3); flex-shrink: 0; }
[data-theme="dark"] .tv2-step-num { color: rgba(255,255,255,.25); }

.tv2-step-arrow { display: none; }

.tv2-steps { overflow-x: auto; -webkit-overflow-scrolling: touch; }
@media (max-width: 1300px) and (min-width: 851px) {
  .tv2-step { flex: 0 1 160px; min-width: 140px; width: auto; height: 210px; padding: 12px; }
  .tv2-step-title { font-size: var(--fs-caption); }
  .tv2-step-desc { font-size: var(--fs-xs); }
}

[data-theme="dark"] .tv2-step { background: var(--tacit-bg-deep); border-color: var(--tacit-card-border); box-shadow: none; }
[data-theme="dark"] .tv2-step:hover { box-shadow: none; }
[data-theme="dark"] .tv2-spark-grid line { stroke: rgba(255,255,255,.04); }
[data-theme="dark"] .tv2-spark-base { stroke: rgba(255,255,255,.06); }
[data-theme="dark"] .tv2-step--accent { border-color: rgba(56,211,168,.3); background: linear-gradient(180deg, rgba(56,211,168,.06) 0%, transparent 100%); }
[data-theme="dark"] .tv2-step-badge { color: rgba(255,255,255,.5); }
[data-theme="dark"] .tv2-step--accent .tv2-step-badge { color: var(--tacit-accent, #38d3a8); }
[data-theme="dark"] .tv2-step-title { color: #fff; }
[data-theme="dark"] .tv2-step-desc { color: rgba(255,255,255,.72); }
[data-theme="dark"] .tv2-step-footer { color: rgba(255,255,255,.35); border-top-color: rgba(255,255,255,.06); }

@media (max-width: 850px) {
  .tv2-steps { flex-direction: column; gap: 12px; margin-left: 0; margin-right: 0; padding: 0; justify-content: stretch; align-items: center; }
  .tv2-step { flex: 1 1 auto; width: 100%; max-width: 360px; height: auto; padding: var(--sp-8) var(--sp-7); }
  .tv2-step-spark { height: 28px; }
  .tv2-step-title { font-size: var(--fs-body-sm); }
}

@keyframes tv2-border-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.tv2-step.tv2-step-alive {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--tacit-border);
}
.tv2-step-alive-border {
  position: absolute;
  inset: -50%;
  background: conic-gradient(from 0deg, transparent 0%, transparent 60%, rgba(56,211,168,.45) 75%, var(--tacit-accent, #38d3a8) 80%, rgba(56,211,168,.45) 85%, transparent 100%);
  animation: tv2-border-spin 4s linear infinite;
  z-index: 0;
}
.tv2-step.tv2-step-alive > .tv2-step-spark,
.tv2-step.tv2-step-alive > .tv2-step-badge,
.tv2-step.tv2-step-alive > .tv2-step-title,
.tv2-step.tv2-step-alive > .tv2-step-desc,
.tv2-step.tv2-step-alive > .tv2-step-footer {
  position: relative;
  z-index: 1;
}
.tv2-step.tv2-step-alive::after {
  content: '';
  position: absolute;
  inset: 1px;
  background: #fff;
  border-radius: 11px;
  z-index: 0;
}
.tv2-step.tv2-step-alive .tv2-step-badge { color: var(--tacit-accent, #38d3a8); }
.tv2-step.tv2-step-alive .tv2-step-footer { color: var(--tacit-accent, #38d3a8); font-weight: 600; }
.tv2-step.tv2-step-alive:hover { box-shadow: 0 20px 52px rgba(56,211,168,.08); }
[data-theme="dark"] .tv2-step.tv2-step-alive::after { background: var(--tacit-bg-deep); }
@media (prefers-reduced-motion: reduce) {
  .tv2-step-alive-border { animation: none; background: var(--tacit-accent, #38d3a8); }
}

/* ============================================
   BLOCK: Deliverables — numbered list
   ============================================ */
.tv2-del-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border: 1px solid var(--tacit-border); border-radius: var(--radius-xl); overflow: hidden; }
.tv2-del-card { background: #ffffff; padding: var(--sp-11) var(--sp-11) var(--sp-12); text-align: left; border-right: 1px solid var(--tacit-border); border-bottom: 1px solid var(--tacit-border); }
.tv2-del-card:nth-child(3n) { border-right: none; }
.tv2-del-card:nth-last-child(-n+3) { border-bottom: none; }
[data-theme="dark"] .tv2-del-card { background: var(--tacit-bg); }
.tv2-del-tag { display: inline-block; font-family: var(--tacit-font-mono, 'SF Mono', 'Fira Code', 'Fira Mono', Menlo, monospace); font-size: var(--fs-xxs); font-weight: 600; letter-spacing: 0.04em; color: var(--tacit-accent); background: var(--tacit-accent-soft); border-radius: var(--radius-sm); padding: 3px var(--sp-4); margin-bottom: var(--sp-7); }
.tv2-del-title { font-size: var(--fs-body-sm); font-weight: 700; color: var(--tacit-fg); margin-bottom: var(--sp-4); letter-spacing: -0.01em; line-height: 1.3; }
.tv2-del-desc { display: block !important; font-size: 13.5px !important; color: var(--tacit-fg-muted) !important; line-height: 1.6 !important; visibility: visible !important; opacity: 1 !important; }
.tv2-del-gate { display: block !important; text-align: center; margin-top: var(--sp-12); font-size: var(--fs-caption); font-weight: 500; color: var(--tacit-fg-muted); letter-spacing: -0.01em; }

/* ============================================
   BLOCK: Security (compact Flow-style)
   ============================================ */
.tv2-compliance { text-align: center; }
.tv2-compliance-header { margin-bottom: var(--sp-14); }
.tv2-compliance-header .tv2-eyebrow { margin-bottom: var(--sp-6); }
.tv2-compliance-sub { max-width: 480px; margin: 0 auto; color: var(--tacit-fg-muted); font-size: var(--fs-body-sm); line-height: 1.55; }
.tv2-compliance-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background: rgba(11,11,13,.06);
  border: 1px solid rgba(11,11,13,.06);
  border-radius: var(--radius-2xl);
  overflow: hidden;
}
.tv2-compliance-card {
  position: relative;
  background: #fff;
  border: none;
  padding: var(--sp-10) var(--sp-10) var(--sp-11);
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
}
.tv2-compliance-num {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-xs);
  font-weight: 600;
  color: var(--tacit-fg-light);
  opacity: 0.35;
  letter-spacing: 0.02em;
}
.tv2-compliance-title {
  font-family: var(--tacit-font-display);
  font-size: clamp(17px, 1.4vw, 20px);
  font-weight: 620;
  color: var(--tacit-fg);
  line-height: 1.25;
  letter-spacing: -0.02em;
}
.tv2-compliance-desc {
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--tacit-fg-muted);
}
[data-theme="dark"] .tv2-compliance-grid { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.04); }
[data-theme="dark"] .tv2-compliance-card { background: var(--tacit-bg-deep, #030712); border-color: rgba(255,255,255,.04); }
[data-theme="dark"] .tv2-compliance-num { color: var(--tacit-accent); opacity: .7; }
[data-theme="dark"] .tv2-compliance-title { color: #fff; }
[data-theme="dark"] .tv2-compliance-desc { color: rgba(255,255,255,.55); }

/* Private AI / Security responsive */
@media (max-width: 600px) {
  .tv2-compliance-grid { grid-template-columns: 1fr; }
  .tv2-compliance-card { padding: var(--sp-8) var(--sp-7); }
  .tv2-compliance-title { font-size: 16px; }
}

/* ============================================
   BLOCK: Comparison v2 (clean table)
   ============================================ */
.tv2-compare-table { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--tacit-card-border); border-radius: var(--tacit-radius-lg); overflow: hidden; }
.tv2-compare-table th,
.tv2-compare-table td { padding: var(--sp-9) var(--sp-11); text-align: left; font-size: var(--fs-body-sm); line-height: 1.5; }
.tv2-compare-table thead th { font-size: var(--fs-xs); font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; border-bottom: 1px solid var(--tacit-card-border); }
.tv2-compare-table thead th:first-child { background: transparent; color: transparent; }
.tv2-compare-th--old { background: var(--tacit-bg-deep); color: var(--tacit-fg-light); }
.tv2-compare-th--new { background: var(--tacit-accent-soft); color: var(--tacit-accent); }
.tv2-compare-table tbody tr { border-top: 1px solid var(--tacit-card-border); }
.tv2-compare-table tbody tr:first-child td { border-top: none; }
.tv2-compare-table tbody td { border-top: 1px solid var(--tacit-card-border); }
.tv2-compare-label { font-size: var(--fs-small); font-weight: 600; color: var(--tacit-fg); white-space: nowrap; width: 1%; }
.tv2-compare-old { color: var(--tacit-fg-muted); }
.tv2-compare-new { color: var(--tacit-accent); font-weight: 500; background: rgba(56, 211, 168, 0.04); }

/* Compare table responsive */
@media (max-width: 600px) {
  .tv2-compare-table th,
  .tv2-compare-table td { padding: var(--sp-6) var(--sp-5); font-size: var(--fs-small); }
  .tv2-compare-label { white-space: normal; width: auto; }
}

/* Deliverables grid responsive */
@media (max-width: 768px) {
  .tv2-del-grid { grid-template-columns: 1fr 1fr; }
  .tv2-del-card:nth-child(2n) { border-right: none; }
}
@media (max-width: 480px) {
  .tv2-del-grid { grid-template-columns: 1fr; }
  .tv2-del-card { border-right: none; }
  .tv2-del-card { padding: var(--sp-9) var(--sp-8) var(--sp-10); }
}

/* ============================================
   BLOCK: FAQ v2
   ============================================ */
.tv2-faq-list { max-width: 684px; margin: 0 auto; }
.tv2-faq-item { border-bottom: 1px solid var(--tacit-border); }
.tv2-faq-q { width: 100%; display: flex; align-items: center; justify-content: space-between; padding: var(--sp-10) 0; background: none; border: none; cursor: pointer; text-align: left; font-family: var(--tacit-font); font-size: var(--fs-body-lg); font-weight: 600; color: var(--tacit-fg); gap: var(--sp-8); }
.tv2-faq-q svg { width: 20px; height: 20px; flex-shrink: 0; color: var(--tacit-fg-light); stroke-width: 1.5; opacity: 0.35; transition: transform 0.25s, opacity 0.2s; }
.tv2-faq-q:hover svg { opacity: 0.6; }
.tv2-faq-item.active .tv2-faq-q svg { transform: rotate(180deg); opacity: 0.5; }
.tv2-faq-a { max-height: 0; overflow: hidden; transition: max-height 0.35s ease; }
.tv2-faq-item.active .tv2-faq-a { max-height: var(--faq-h, 500px); }
.tv2-faq-a-inner { padding: 0 0 24px; font-size: var(--fs-body-sm); line-height: 1.7; color: var(--tacit-fg-muted); }

/* ============================================
   BLOCK: CTA v2
   ============================================ */
.tv2-cta { text-align: center; padding: 140px 32px; position: relative; background: linear-gradient(180deg, #fff 0%, #f9fafb 50%, #fcfcfd 100%); --dot-x: -999px; --dot-y: -999px; }
.tv2-cta::after { content: ''; position: absolute; inset: 0; background: radial-gradient(circle, rgba(11,11,13,.07) 0.5px, transparent 0.5px) 0 0 / 16px 16px; -webkit-mask-image: radial-gradient(ellipse 60% 50% at 50% 50%, rgba(0,0,0,.7) 0%, rgba(0,0,0,.3) 50%, transparent 100%); mask-image: radial-gradient(ellipse 60% 50% at 50% 50%, rgba(0,0,0,.7) 0%, rgba(0,0,0,.3) 50%, transparent 100%); pointer-events: none; }
.tv2-cta::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle, rgba(11,11,13,.40) 0.5px, transparent 0.5px) 0 0 / 16px 16px; -webkit-mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%); mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%); pointer-events: none; z-index: 0; transition: opacity 0.3s ease; }
.tv2-cta > * { position: relative; z-index: 1; }
.tv2-cta .tv2-display-lg { margin-bottom: 32px !important; }
.tv2-cta .tv2-body-lg { max-width: 560px; margin: 0 auto 36px; }
.tv2-cta-actions { display: flex; align-items: center; justify-content: center; gap: var(--sp-6); margin-top: 20px; flex-wrap: wrap; }
.tv2-cta-note { font-size: var(--fs-small); color: var(--tacit-fg-light); margin-top: var(--sp-9); }

/* ============================================
   BLOCK: Subscribe bar
   ============================================ */
.tv2-subscribe { padding: var(--sp-12) 0; }
.tv2-subscribe-inner { max-width: 480px; margin: 0 auto; padding: 0 var(--sp-12); display: flex; flex-direction: column; align-items: center; gap: var(--sp-6); text-align: center; }
.tv2-subscribe-title { font-size: var(--fs-caption); font-weight: 700; color: var(--tacit-fg); margin: 0; letter-spacing: -0.01em; }
.tv2-subscribe-desc { font-size: var(--fs-xs); color: var(--tacit-fg-muted); margin: var(--sp-1) 0 0; line-height: 1.45; }
.tv2-subscribe-form { display: flex; align-items: center; width: 100%; max-width: 380px; border-radius: var(--radius-pill); overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(11,11,13,.08), 0 1px 3px rgba(0,0,0,.04); transition: box-shadow 0.15s; }
.tv2-subscribe-form:focus-within { box-shadow: 0 0 0 1px var(--tacit-accent), 0 0 0 4px rgba(56,211,168,.1); }
.tv2-subscribe-input { height: var(--btn-md); padding: 0 var(--sp-8); border: none; font-size: var(--fs-small); font-family: var(--tacit-font); color: #111827; background: transparent; flex: 1; min-width: 0; box-sizing: border-box; }
.tv2-subscribe-input::placeholder { color: #9ca3af; }
.tv2-subscribe-input:focus { outline: none; }
.tv2-subscribe-btn { height: var(--btn-md); padding: 0 var(--sp-9); border: none; border-radius: var(--radius-pill); margin: 4px 4px 4px 0; background: var(--tacit-accent); color: #fff; font-size: var(--fs-small); font-weight: 600; font-family: var(--tacit-font); cursor: pointer; white-space: nowrap; transition: background 0.15s; }
.tv2-subscribe-btn:hover { background: #2ec49c; }
@media (max-width: 480px) {
  .tv2-subscribe { padding: var(--sp-10) 0; }
  .tv2-subscribe-inner { padding: 0 var(--sp-7); }
}

/* ============================================
   BLOCK: Footer
   ============================================ */
.tv2-footer { background: linear-gradient(180deg, #fcfcfd 0%, #f9fafb 100%); border-top: none; padding: 106px 0 20px; position: relative; --dot-x: -999px; --dot-y: -999px; }
.tv2-footer a, .tv2-footer button { -webkit-tap-highlight-color: transparent; }
.tv2-footer a:active, .tv2-footer button:active { background-color: transparent !important; }
.tv2-footer::after { content: ''; position: absolute; inset: 0; background: radial-gradient(circle, rgba(11,11,13,.07) 0.5px, transparent 0.5px) 0 0 / 16px 16px; -webkit-mask-image: linear-gradient(to bottom, transparent 0%, transparent 40%, rgba(0,0,0,.4) 70%, rgba(0,0,0,.7) 100%); mask-image: linear-gradient(to bottom, transparent 0%, transparent 40%, rgba(0,0,0,.4) 70%, rgba(0,0,0,.7) 100%); pointer-events: none; }
.tv2-footer::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle, rgba(11,11,13,.40) 0.5px, transparent 0.5px) 0 0 / 16px 16px; -webkit-mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%); mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%); pointer-events: none; z-index: 0; transition: opacity 0.3s ease; }
.tv2-footer > .tv2-section { position: relative; z-index: 1; }
.tv2-footer-top { display: grid; grid-template-columns: 1.2fr 3fr; gap: var(--sp-16); margin-bottom: var(--sp-14); }
.tv2-footer-brand { display: flex; flex-direction: column; gap: var(--sp-6); }
.tv2-footer-brand img { display: block; height: 26px; margin-left: -4px; }
.tv2-footer-brand .tacit-logo-dark { display: none; }
[data-theme="dark"] .tv2-footer-brand .tacit-logo-light { display: none; }
[data-theme="dark"] .tv2-footer-brand .tacit-logo-dark { display: block; }
.tv2-footer-mission { font-size: var(--fs-small); color: #6b7280; line-height: 1.6; margin: 0; max-width: 280px; overflow-wrap: break-word; word-wrap: break-word; }
.tv2-footer-location { font-size: var(--fs-small); color: #9ca3af; line-height: 1.5; margin: 0; }
.tv2-footer-social { display: flex; gap: var(--sp-4); margin-top: var(--sp-2); }
.tv2-footer-social-link { display: flex; align-items: center; justify-content: center; width: var(--sp-12); height: var(--sp-12); border-radius: var(--radius); color: #111827; transition: all 0.2s; -webkit-tap-highlight-color: transparent; }
.tv2-footer-social-link:hover { color: #0A66C2; }
.tv2-footer-social-link:active { background: none !important; }
.tv2-footer-links { display: grid !important; grid-template-columns: minmax(140px, 1fr) minmax(240px, 1.6fr) minmax(140px, 1fr) minmax(140px, 1fr) !important; gap: var(--sp-11) !important; }
.tv2-footer-heading { font-size: 11px !important; font-weight: 600 !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; color: inherit !important; margin-bottom: var(--sp-7) !important; }
.tv2-footer-heading--sub { margin-top: var(--sp-9); }
.tv2-footer-col { display: flex; flex-direction: column; gap: var(--sp-3); }
.tv2-footer-industries { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-2) 12px; }
.tv2-footer-link { display: block !important; font-size: 13px !important; font-family: Inter, -apple-system, system-ui, sans-serif !important; color: #374151 !important; text-decoration: none !important; padding: 3px 0 !important; transition: color 0.15s; -webkit-tap-highlight-color: transparent; }
.tv2-footer-link:hover { color: #020617 !important; }
.tv2-footer-link:active { background: none !important; }
.tv2-footer-bottom { display: flex; justify-content: center; align-items: center; padding-top: var(--sp-9); font-size: var(--fs-xs); color: #9ca3af; }

/* Problem/Solution stats responsive */
@media (max-width: 900px) {
  .tv2-stats { grid-template-columns: repeat(2, 1fr); }
  .tv2-solutions { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .tv2-stats { grid-template-columns: 1fr; }
  .tv2-solutions { grid-template-columns: 1fr; }
}

/* Feature tabs panel responsive */
@media (max-width: 768px) {
  .tv2-ftabs-panel.active { grid-template-columns: 1fr; gap: var(--sp-10); }
  .tv2-ftabs-bar { flex-wrap: wrap; width: auto; border-radius: var(--radius-lg); overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .tv2-ftabs-bar::-webkit-scrollbar { display: none; }
  .tv2-ftabs-placeholder { display: none; }
  .tv2-ftabs-visual::after { content: 'Coming soon'; font-size: var(--fs-caption); color: var(--tacit-fg-light); }
  .tv2-ftabs-visual:has(img)::after { display: none; }
  .tv2-block { padding: calc(var(--tacit-section-gap) * 0.7) 0; }
  .tv2-block + .tv2-block:not(.tv2-block--alt):not(.tv2-block--dark) { padding-top: 0; }
}

/* Nav grid responsive */
@media (max-width: 768px) {
  .tv2-nav-grid--3 { grid-template-columns: 1fr; }
  .tv2-nav-grid--5 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .tv2-nav-grid--5 { grid-template-columns: 1fr; }
}

/* Process rows responsive */
@media (max-width: 768px) {
  .tv2-process-row { grid-template-columns: 80px 1fr; gap: var(--sp-8); }
  .tv2-process-detail { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
  .tv2-process-row { grid-template-columns: 1fr; gap: var(--sp-5); }
}

/* Maturity model responsive */
@media (max-width: 1024px) {
  .tv2-maturity { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
  .tv2-maturity { grid-template-columns: 1fr; }
  .tv2-maturity::before, .tv2-maturity::after { display: none; }
  .tv2-maturity-wrap { padding: var(--sp-10) 0; }
  .tv2-maturity-level { border-right: none !important; border-bottom: 1px solid rgba(11,11,13,.06); }
  .tv2-maturity-level:last-child { border-bottom: none; }
  [data-theme="dark"] .tv2-maturity-level { border-bottom-color: rgba(255,255,255,.06); border-right-color: transparent; }
  [data-theme="dark"] .tv2-maturity-level:last-child { border-bottom-color: transparent; }
}

/* Case study KPI container responsive */
@media (max-width: 768px) {
  .tacit-kpi-container { grid-template-columns: repeat(2, 1fr); gap: var(--sp-8); }
}
@media (max-width: 480px) {
  .tacit-kpi-container { grid-template-columns: 1fr; }
}

/* Footer responsive */
@media (max-width: 1100px) {
  .tv2-footer-top { grid-template-columns: 1fr; gap: var(--sp-11); }
  .tv2-footer-brand { flex-direction: row; align-items: center; gap: var(--sp-9); flex-wrap: wrap; }
  .tv2-footer-mission { max-width: none; }
  .tv2-footer-links { grid-template-columns: minmax(120px, 1fr) minmax(200px, 1.5fr) minmax(120px, 1fr) minmax(120px, 1fr); gap: var(--sp-8); }
}
@media (max-width: 900px) {
  .tv2-footer-links { grid-template-columns: repeat(2, minmax(160px, 1fr)); gap: var(--sp-10) var(--sp-9); }
  .tv2-footer-industries { grid-template-columns: 1fr 1fr; gap: var(--sp-2) 12px; }
}
@media (max-width: 640px) {
  .tv2-footer { padding: 60px 0 20px; overflow: hidden; }
  .tv2-footer-links { grid-template-columns: 1fr 1fr !important; gap: var(--sp-9) var(--sp-8) !important; }
  .tv2-footer-industries { grid-template-columns: 1fr; gap: var(--sp-2); }
  .tv2-footer-brand { flex-direction: column; align-items: flex-start; }
  .tv2-footer-mission { max-width: 100%; }
  .tv2-footer-top { gap: var(--sp-9); }
}
@media (max-width: 420px) {
  .tv2-footer-links { grid-template-columns: 1fr !important; gap: var(--sp-10) !important; }
  .tv2-footer-bottom { font-size: var(--fs-micro); }
}

/* ============================================
   CASE STUDY DETAIL PAGES
   ============================================ */
.tacit-combined-section { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0; font-family: var(--tacit-font); background-color: #fff; color: #111827; box-sizing: border-box; }
.tacit-combined-section .tv2-btn { height: 36px; padding-top: 0; padding-bottom: 0; font-size: 13px; }
.tacit-combined-section .tacit-section { display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: var(--sp-8) !important; margin: 0 0 40px 0; padding: 0; text-align: left !important; }
.tacit-combined-section .tacit-section:hover { transform: none; }
.tacit-combined-section .tacit-section-line { width: 15px !important; height: 3px !important; background-color: #38d3a8 !important; flex-shrink: 0; }
.tacit-combined-section .tacit-section-title { margin: 0 !important; padding: 0 !important; font-weight: 600 !important; font-size: 12px !important; line-height: 1.2 !important; text-align: left !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; }
.tacit-case-study-headline { margin-bottom: var(--sp-12); }
.tacit-case-study-headline h1,
.tacit-case-study-headline h2 { font-family: var(--tacit-font); font-size: var(--fs-h1); font-weight: 600; line-height: 1.25; color: #111827; margin: 0; letter-spacing: -0.02em; }
.tacit-cs-subtitle { font-family: var(--tacit-font); font-size: var(--fs-body); font-weight: 500; color: #6b7280; margin-top: 10px; letter-spacing: 0.02em; }
.tacit-highlight { color: #38d3a8 !important; }
.tacit-company-info { display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--sp-9); margin: var(--sp-13) auto var(--sp-14) auto; max-width: 100%; }
.tacit-info-item { text-align: left; }
.tacit-info-label { font-family: var(--tacit-font); font-size: var(--fs-xs); font-weight: 500; color: #64748b; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: var(--sp-2); }
.tacit-info-value { font-family: var(--tacit-font); font-size: var(--fs-body); font-weight: 600; color: #111827; line-height: 1.3; }
.tacit-challenge-description { margin-bottom: var(--sp-14); }
.tacit-challenge-description p { font-family: var(--tacit-font); font-size: var(--fs-h2); font-weight: 400; line-height: 1.3; color: #111827; margin: 0; }
.tacit-challenge-pills { display: flex; flex-wrap: wrap; gap: var(--sp-8); margin-bottom: var(--sp-14); justify-content: center; }
.tacit-challenge-pill { background: #fef2f2; border: 1px solid #fecaca; border-radius: var(--radius-xl); padding: var(--sp-4) var(--sp-8); font-family: var(--tacit-font); font-size: var(--fs-xs); font-weight: 600; color: #dc2626; transition: transform 0.3s ease; cursor: pointer; flex: 0 0 auto; line-height: 1.3; }
.tacit-challenge-pill:hover { transform: scale(1.03); }
.mx-testimonial { padding: 0; font-family: var(--tacit-font); max-width: 100%; margin: 0 auto 48px auto; }
.mx-hero { position: relative; border-radius: var(--radius-xl); overflow: hidden; box-shadow: none; height: 580px; width: 100%; margin: 0; }
.mx-bg { position: absolute; top: -30px; left: 0; width: 100%; height: calc(100% + 60px); object-fit: cover; object-position: center top; }
.mx-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,.10); }
.mx-card { position: absolute; left: 8px; right: 12px; bottom: 8px; }
.mx-card-inner { max-width: 410px !important; background: #fff; border-radius: var(--radius-xl); padding: var(--sp-9) var(--sp-9); box-shadow: 0 6px 20px rgba(0,0,0,.08); border: 1px solid rgba(0,0,0,.06); overflow: hidden; }
.mx-card-inner > * { margin-left: 0; }
.mx-logo { display: block; height: 28px; width: auto; margin-bottom: var(--sp-9); margin-left: 0; }
.mx-quote { margin: 0; color: #111827; line-height: 1.45; font-size: var(--fs-caption); font-weight: 500; }
.mx-highlight { color: #38d3a8 !important; font-weight: 500; }
.mx-visit-website { position: absolute; bottom: 16px; right: 16px; z-index: 10; }
.mx-website-link { color: white; text-decoration: none; font-size: var(--fs-caption); font-weight: 600; font-family: var(--tacit-font); transition: all 0.3s ease; display: inline-flex; align-items: center; gap: var(--sp-2); }
.mx-website-link:hover { color: #38d3a8; text-decoration: none; transform: translateX(2px); }
.mx-arrow { font-size: var(--fs-body); transition: transform 0.3s ease; }
.mx-website-link:hover .mx-arrow { transform: translateX(3px); }
.mx-person { display: flex; align-items: center; gap: var(--sp-4); margin-top: var(--sp-9); }
.mx-headshot { width: 21px !important; height: 21px !important; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.mx-name { font-weight: 600; color: #0f172a; font-size: var(--fs-small); line-height: 1.3; margin-bottom: var(--sp-1); }
.mx-role { color: #64748b; font-size: var(--fs-xs); line-height: 1.3; font-weight: 400; }
@media (min-width: 640px) {
  .mx-card { left: 12px; right: 24px; bottom: 12px; }
  .mx-card-inner { padding: var(--sp-9) var(--sp-9); max-width: 410px !important; }
  .mx-logo { height: 30px; margin-bottom: var(--sp-10); }
  .mx-quote { font-size: var(--fs-body-sm); }
  .mx-website-link { font-size: var(--fs-small); }
  .mx-person { margin-top: var(--sp-9); gap: var(--sp-5); }
  .mx-headshot { width: 34px !important; height: 34px !important; }
}
@media (min-width: 768px) {
  .mx-card { left: 16px; right: auto; bottom: 16px; }
  .mx-card-inner { padding: var(--sp-9) var(--sp-10); max-width: 410px !important; }
  .mx-logo { height: var(--sp-12); margin-bottom: var(--sp-10); }
  .mx-quote { font-size: var(--fs-body); }
  .mx-website-link { font-size: var(--fs-caption); }
  .mx-visit-website { display: block; }
}
.tacit-solution-block { margin: 0 0 80px 0; }
.tacit-solution-header { width: 100%; margin-bottom: var(--sp-14); }
.tacit-solution-content { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-17); align-items: flex-start; }
.tacit-solution-text { padding-right: 0; }
.tacit-solution-title { font-family: var(--tacit-font); font-size: var(--fs-h1); font-weight: 400; color: #111827; margin: 0 0 32px 0; line-height: 1.1; letter-spacing: -0.01em; }
.tacit-solution-subtitle { font-family: var(--tacit-font); font-size: var(--fs-body); font-weight: 400; color: #374151; margin: 0 0 30px 0; line-height: 1.4; max-width: 80%; }
.tacit-solution-list { list-style: none; padding: 0; margin: 0; }
.tacit-solution-list li { font-family: var(--tacit-font); font-size: var(--fs-body); font-weight: 400; color: #374151; margin: 0 0 32px 0; line-height: 1.6; position: relative; padding-left: 0; }
.tacit-solution-list li:first-child { font-weight: 500; margin-left: 0; margin-bottom: var(--sp-16); }
.tacit-solution-list li:not(:first-child) { margin-left: 0; padding-left: var(--sp-9); }
.tacit-solution-list li:not(:first-child)::before { content: "\25B6"; position: absolute; left: 0; top: 3px; color: #38d3a8 !important; font-size: var(--fs-xs); line-height: 1.6; }
.tacit-solution-list li:last-child { margin-bottom: var(--sp-12); }
.tacit-solution-image { display: flex; justify-content: center; align-items: center; margin-left: 0; width: 100%; }
.tacit-solution-image img { width: auto !important; height: auto !important; max-width: 500px !important; max-height: 400px !important; object-fit: contain !important; border-radius: var(--radius-xl) !important; box-shadow: none !important; transform: scale(1); transition: transform 0.3s ease; cursor: pointer; }
.tacit-solution-image:hover img { transform: scale(1.05); }
.tacit-divider { width: 90%; height: 1px; background: #e5e7eb; margin: var(--sp-16) auto var(--sp-14) auto; }
.tacit-kpi-container { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--sp-12); margin: 0 0 32px 0; padding: 0; }
.tacit-kpi-block { background: #fff; border-radius: var(--radius-xl); padding: var(--sp-12) var(--sp-10); text-align: left; border: 1px solid rgba(0,0,0,0.06); box-shadow: 0 4px 12px rgba(0,0,0,.08); transition: transform 0.3s ease; cursor: pointer; }
.tacit-kpi-block:hover { transform: scale(1.005); }
.tacit-kpi-number { font-size: var(--fs-display); font-weight: 300; line-height: 1.1; color: #38d3a8; margin-bottom: var(--sp-6); font-family: var(--tacit-font); }
.tacit-kpi-description { font-size: var(--fs-body-lg); font-weight: 400; line-height: 1.4; color: #374151; margin: 0; font-family: var(--tacit-font); }
.mx-quote-block { width: 100%; padding: 0; margin: 0; }
.mx-quote-inner { background: #fff; border-radius: var(--radius-xl); padding: var(--sp-12) var(--sp-12); box-shadow: 0 4px 12px rgba(0,0,0,.08); border: 1px solid rgba(0,0,0,.06); width: 100%; max-width: 100%; box-sizing: border-box; transition: transform 0.3s ease; cursor: pointer; }
.mx-quote-inner:hover { transform: scale(1.01); }
.mx-quote-inner .mx-logo { display: block; height: var(--sp-12); width: auto; margin-bottom: var(--sp-10); margin-left: var(--sp-3); }
.mx-quote-text { margin: 0 0 24px 0; color: #111827; line-height: 1.4; font-size: var(--fs-body-lg); font-weight: 400; }
.mx-quote-inner .mx-person { display: flex; align-items: center; gap: var(--sp-6); }
.mx-quote-inner .mx-name { font-weight: 600; font-size: var(--fs-caption); line-height: 1.3; }
.mx-quote-inner .mx-role { font-size: var(--fs-xs); line-height: 1.3; font-weight: 500; }
@media (max-width: 1024px) {
  .tacit-solution-content { display: flex !important; flex-direction: column !important; gap: var(--sp-13) !important; }
  .tacit-company-info { grid-template-columns: repeat(3, 1fr) !important; gap: var(--sp-10) !important; }
}
@media (max-width: 768px) {
  .tacit-combined-section { padding: var(--sp-9) !important; width: 100% !important; max-width: 100% !important; }
  .tacit-solution-content { gap: var(--sp-12) !important; }
  .tacit-combined-section .tacit-section { margin-bottom: var(--sp-9) !important; }
  .tacit-combined-section .tacit-section-title { font-size: var(--fs-body) !important; }
  .tacit-solution-title { font-size: 24px !important; }
  .tacit-solution-subtitle { font-size: var(--fs-body) !important; }
  .tacit-solution-list li { font-size: var(--fs-caption) !important; margin: var(--sp-5) 0 !important; }
  .tacit-solution-image img { width: 100% !important; max-width: 100% !important; height: auto !important; transform: scale(0.9) !important; }
  .tacit-challenge-description p { font-size: var(--fs-body) !important; }
  .tacit-challenge-pills { gap: var(--sp-4) !important; }
  .tacit-challenge-pill { padding: var(--sp-2) var(--sp-4) !important; border-radius: var(--radius-md) !important; }
}

/* ============================================
   BLOCK: Demo page (request-demo)
   ============================================ */
.tv2-demo-page-left {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  min-height: 80vh;
  --dot-x: -999px;
  --dot-y: -999px;
}
.tv2-demo-page-left::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle, rgba(11,11,13,.07) 0.5px, transparent 0.5px) 0 0 / 16px 16px;
  mask-image: radial-gradient(ellipse 60% 50% at 50% 50%, rgba(0,0,0,.7) 0%, rgba(0,0,0,.3) 50%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 60% 50% at 50% 50%, rgba(0,0,0,.7) 0%, rgba(0,0,0,.3) 50%, transparent 100%);
  pointer-events: none;
}
.tv2-demo-page-left::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle, rgba(11,11,13,.22) 0.5px, transparent 0.5px) 0 0 / 16px 16px;
  mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%);
  -webkit-mask-image: radial-gradient(circle 140px at var(--dot-x) var(--dot-y), black 0%, transparent 100%);
  pointer-events: none;
  z-index: 0;
  transition: opacity 0.3s ease;
}
[data-theme="dark"] .tv2-demo-page-left::after { background: radial-gradient(circle, rgba(255,255,255,.06) 0.5px, transparent 0.5px) 0 0 / 16px 16px; }
[data-theme="dark"] .tv2-demo-page-left::before { background: radial-gradient(circle, rgba(255,255,255,.25) 0.5px, transparent 0.5px) 0 0 / 16px 16px; }
.tv2-demo-left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: var(--sp-8);
  padding: var(--sp-17) var(--sp-14);
  max-width: 600px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.tv2-demo-left-title {
  font-family: var(--tacit-font-display);
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.15;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-6);
}
.tv2-demo-left-sub {
  font-size: var(--fs-small);
  color: var(--tacit-fg-muted);
  line-height: 1.55;
  margin: 0;
}

.tv2-demo-social {
  display: grid;
  grid-template-rows: 1fr auto auto;
}
.tv2-demo-slide {
  grid-row: 1;
  grid-column: 1;
  display: flex;
  align-items: flex-end;
  visibility: hidden;
  opacity: 0;
  transition: opacity .35s ease;
}
.tv2-demo-slide.active {
  visibility: visible;
  opacity: 1;
}
.tv2-demo-social > .tv2-demo-stats { grid-row: 2; grid-column: 1; }
.tv2-demo-dots { grid-row: 3; }

.tv2-demo-card {
  background: none;
  border: none;
  padding: var(--sp-8) 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
}
.tv2-demo-card-text {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-small, 14px);
  font-style: italic;
  line-height: 1.65;
  color: var(--tacit-fg);
  margin: 0 0 var(--sp-5);
}
.tv2-demo-card-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-6);
}
.tv2-demo-card-who {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1px;
}
.tv2-demo-card-name {
  font-size: var(--fs-xs, 12px);
  font-weight: 600;
  color: var(--tacit-fg);
}
.tv2-demo-card-org {
  font-size: var(--fs-xs, 12px);
  color: var(--tacit-fg-muted);
}

.tv2-demo-dots {
  display: flex;
  justify-content: center;
  gap: var(--sp-4);
  margin-top: var(--sp-8);
}
.tv2-demo-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  border: none;
  background: rgba(11,11,13,.12);
  cursor: pointer;
  padding: 0;
  transition: background .2s;
}
.tv2-demo-dot.active { background: var(--tacit-accent); }

.tv2-demo-stats {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0;
  margin-top: var(--sp-5);
}
.tv2-demo-stat {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
  font-size: var(--fs-xs, 12px);
  font-weight: 500;
  padding: var(--sp-2) var(--sp-5);
  border-radius: 0;
  border: none;
  border-right: .5px solid rgba(11,11,13,.15);
  color: var(--tacit-fg-muted);
  background: transparent;
  white-space: nowrap;
}
.tv2-demo-stat:last-child { border-right: none; }
.tv2-demo-stat strong {
  font-weight: 700;
  color: var(--tacit-fg);
}
.tv2-demo-card-logo {
  margin-bottom: var(--sp-3);
}
.tv2-demo-card-logo img { height: 22px; width: auto; opacity: .7; }

/* -- Case study request ("What you'll receive" details inside tv2-demo-left) -- */
.tacit-cs-request-details {
  text-align: left;
  align-self: center;
  margin-bottom: 0;
}
.tacit-cs-request-details-title {
  font-family: var(--tacit-font-display);
  font-size: var(--fs-small);
  font-weight: 650;
  color: var(--tacit-fg, #111827);
  margin: 0 0 var(--sp-4);
  text-align: center;
}
.tacit-cs-request-details-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
}
.tacit-cs-request-details-list li {
  font-size: var(--fs-xs, 12px);
  color: var(--tacit-fg, #111827);
  padding-left: var(--sp-5);
  position: relative;
  line-height: 1.5;
}
.tacit-cs-request-details-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 6px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--tacit-accent);
  opacity: .55;
}

/* Forminator captcha override */
.tacit-captcha .forminator-response-message,
.tacit-captcha .grecaptcha-badge,
.tacit-captcha iframe { border-radius: var(--radius-lg); }
[data-theme="dark"] .tacit-captcha .recaptcha-container,
[data-theme="dark"] .tacit-captcha .forminator-hcaptcha,
[data-theme="dark"] .tacit-captcha iframe { filter: invert(0.88) hue-rotate(180deg); }

/* Forminator: kill fade-in on select dropdowns */
.forminator-custom-form .forminator-select-list,
.forminator-custom-form .forminator-field select,
.forminator-custom-form .select2-container,
.forminator-custom-form .select2-container *,
.forminator-custom-form .select2-selection__rendered { animation: none !important; transition: none !important; opacity: 1 !important; }

/* Forminator: disabled/faded submit button → neutral, not accent */
.forminator-custom-form .forminator-button[disabled],
.forminator-custom-form .forminator-button.forminator-button-submit[disabled],
.forminator-custom-form .forminator-button-submit:disabled {
  background: rgba(11,11,13,.15) !important;
  color: rgba(11,11,13,.35) !important;
  border-color: transparent !important;
  cursor: not-allowed;
}
[data-theme="dark"] .forminator-custom-form .forminator-button[disabled],
[data-theme="dark"] .forminator-custom-form .forminator-button.forminator-button-submit[disabled],
[data-theme="dark"] .forminator-custom-form .forminator-button-submit:disabled {
  background: rgba(255,255,255,.08) !important;
  color: rgba(255,255,255,.25) !important;
}

/* -- Dark mode -- */
[data-theme="dark"] .tacit-cs-request-details-title { color: rgba(255,255,255,.92); }
[data-theme="dark"] .tacit-cs-request-details-list li { color: rgba(255,255,255,.85); }
[data-theme="dark"] .tv2-demo-card { background: none; border: none; }
[data-theme="dark"] .tv2-demo-card-text { color: rgba(255,255,255,.85); }
[data-theme="dark"] .tv2-demo-card-name { color: rgba(255,255,255,.8); }
[data-theme="dark"] .tv2-demo-card-org { color: rgba(255,255,255,.45); }
[data-theme="dark"] .tv2-demo-card-logo img { filter: brightness(0) invert(1); opacity: 1; }
[data-theme="dark"] .tv2-demo-dot { background: rgba(255,255,255,.15); }
[data-theme="dark"] .tv2-demo-dot.active { background: var(--tacit-accent); }


/* ═══════════════════════════════════════════════════════════
   Interactive Walkthrough — tabbed hero with product cards
   ═══════════════════════════════════════════════════════════ */

.tacit-wt { background: #fff; color: #0f172a; padding: 0 0 40px; position: relative; overflow: hidden; }

/* — Tab bar — */
.tacit-wt-tabbar {
  display: flex; justify-content: center; max-width: 860px; margin: 0 auto; padding: 0 24px;
  gap: 4px; border-bottom: 1px solid rgba(0,0,0,.06);
}
.tacit-wt-tab {
  background: none; border: none; color: rgba(0,0,0,.35);
  padding: 12px 24px; font: 500 13px/1.4 'Inter', sans-serif;
  cursor: pointer; transition: all .2s; white-space: nowrap; position: relative;
  letter-spacing: 0.01em;
}
.tacit-wt-tab:hover { color: rgba(0,0,0,.6); }
.tacit-wt-tab.active { background: transparent; color: #0f172a; }
.tacit-wt-tab.active::after {
  content: ''; position: absolute; bottom: -1px; left: 8px; right: 8px;
  height: 1.5px; background: #0f172a; border-radius: 1px;
}

/* — Panels — */
.tacit-wt-panel { display: none; }
.tacit-wt-panel.active { display: flex; flex-direction: column; animation: wtFadeIn .3s ease; }
.tacit-wt-stage { order: 1; margin-top: 0; }
.tacit-wt-desc { order: 2; }
@keyframes wtFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* — Description text — */
.tacit-wt-desc {
  max-width: 860px; margin: 0 auto; padding: 12px 24px 0; text-align: center;
}
.tacit-wt-desc-icon { display: none; }
.tacit-wt-desc p { margin: 0 auto; font-size: 13px; line-height: 1.5; color: rgba(0,0,0,.4); max-width: 540px; }

/* — Stage / viewport — */
.tacit-wt-stage {
  max-width: 860px; margin: 0 auto; padding: 16px 0 0; position: relative;
}
.tacit-wt-viewport {
  position: relative; border-radius: var(--radius-xl, 12px); overflow: hidden;
  background: #f8f9fa; border: 1px solid rgba(0,0,0,.06);
}

/* — Image placeholder — */
.tacit-wt-img-placeholder {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  width: 100%; aspect-ratio: 16/9; gap: 8px;
}
.tacit-wt-img-placeholder svg { width: 24px; height: 24px; stroke: rgba(0,0,0,.12); fill: none; stroke-width: 1.2; }
.tacit-wt-img-placeholder span { font-size: 11px; font-weight: 500; color: rgba(0,0,0,.15); }
.tacit-wt-img-placeholder img {
  width: 100%; height: 100%; object-fit: cover;
  border: none;
}

/* — Tab indicator dots — */
.tacit-wt-dots {
  display: flex; justify-content: center; gap: 6px;
  max-width: 860px; margin: 0 auto; padding: 16px 24px 0;
}
.tacit-wt-dot {
  width: 6px; height: 6px; border-radius: 50%; background: rgba(0,0,0,.08);
  cursor: pointer; transition: all .25s;
}
.tacit-wt-dot.active { background: #0f172a; width: 20px; border-radius: 3px; }

/* — Dark mode overrides — */
[data-theme="dark"] .tacit-wt { background: #0a0f19; color: #e8ecf1; }
[data-theme="dark"] .tacit-wt-tabbar { border-bottom-color: rgba(255,255,255,.06); }
[data-theme="dark"] .tacit-wt-tab { color: rgba(255,255,255,.4); }
[data-theme="dark"] .tacit-wt-tab:hover { color: rgba(255,255,255,.7); }
[data-theme="dark"] .tacit-wt-tab.active { background: transparent; color: #fff; }
[data-theme="dark"] .tacit-wt-tab.active::after { background: #fff; }
[data-theme="dark"] .tacit-wt-desc p { color: rgba(255,255,255,.6); }
[data-theme="dark"] .tacit-wt-img-placeholder { border-color: rgba(255,255,255,.08); }
[data-theme="dark"] .tacit-wt-img-placeholder svg { stroke: rgba(255,255,255,.12); }
[data-theme="dark"] .tacit-wt-img-placeholder span { color: rgba(255,255,255,.15); }
[data-theme="dark"] .tacit-wt-img-placeholder img { border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .tacit-wt-dot { background: rgba(255,255,255,.15); }
[data-theme="dark"] .tacit-wt-dot.active { background: #fff; }

/* — Responsive — */
@media (max-width: 768px) {
  .tacit-wt-tab { padding: 10px 16px; font-size: 12px; }
}
@media (max-width: 480px) {
  .tacit-wt-tabbar { overflow-x: auto; scrollbar-width: none; }
  .tacit-wt-tabbar::-webkit-scrollbar { display: none; }
  .tacit-wt-tab { padding: 10px 12px; font-size: 11px; }
  .tacit-wt-desc p { font-size: 12px; }
}

/* ============================================
   LEGAL PAGES (terms, privacy)
   ============================================ */
.tacit-legal-wrap { display: flex; gap: 48px; max-width: 960px; margin: 0 auto; padding: 100px 24px 80px; font-family: var(--tacit-font, 'Inter', sans-serif); }
.tacit-legal-toc { position: sticky; top: 100px; flex: 0 0 200px; align-self: flex-start; display: flex; flex-direction: column; gap: 6px; border-right: 1px solid var(--tacit-border, rgba(11,11,13,.08)); padding-right: 24px; }
.tacit-legal-toc-title { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--tacit-fg-light); margin: 0 0 8px; }
.tacit-legal-toc a { font-size: 13px; color: var(--tacit-fg-muted); text-decoration: none; line-height: 1.5; transition: color .15s; }
.tacit-legal-toc a:hover { color: var(--tacit-fg); }
.tacit-legal { flex: 1; min-width: 0; color: var(--tacit-fg); }
.tacit-legal h1 { font-size: clamp(24px, 3vw, 32px); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 24px; color: var(--tacit-fg); }
.tacit-legal h4 { font-size: 17px; font-weight: 700; margin: 40px 0 12px; color: var(--tacit-fg); }
.tacit-legal h6 { font-size: 14px; font-weight: 600; margin: 24px 0 8px; color: var(--tacit-fg); }
.tacit-legal p { font-size: 14px; line-height: 1.7; color: var(--tacit-fg-muted); margin: 0 0 16px; }
.tacit-legal ul, .tacit-legal ol { font-size: 14px; line-height: 1.7; color: var(--tacit-fg-muted); padding-left: 24px; margin: 0 0 16px; }
.tacit-legal li { margin-bottom: 6px; }
.tacit-legal strong { color: var(--tacit-fg); }
.tacit-legal a { color: var(--tacit-accent); text-decoration: none; border-bottom: 1px solid transparent; transition: border-color .15s; }
.tacit-legal a:hover { border-bottom-color: var(--tacit-accent); }
.tacit-legal-updated { font-size: 12px; color: var(--tacit-fg-light); margin: 0 0 8px; }
.tacit-legal-intro { font-size: 15px; line-height: 1.7; color: var(--tacit-fg-muted); margin: 0 0 32px; }
.tacit-legal-section { margin-bottom: 8px; }
@media (max-width: 768px) {
  .tacit-legal-wrap { flex-direction: column; gap: 24px; padding: 80px 20px 60px; }
  .tacit-legal-toc { position: static; flex: none; border-right: none; border-bottom: 1px solid var(--tacit-border, rgba(11,11,13,.08)); padding-right: 0; padding-bottom: 16px; }
}
[data-theme="dark"] .tacit-legal-toc { border-color: var(--tacit-border); }
[data-theme="dark"] .tacit-legal-toc a { color: var(--tacit-fg-muted); }
[data-theme="dark"] .tacit-legal-toc a:hover { color: var(--tacit-fg); }

/* ============================================
   BLOG INDEX
   ============================================ */
.blog-index { max-width: 960px; margin: 0 auto; padding: 80px 24px 60px; font-family: var(--tacit-font, 'Inter', sans-serif); }
.blog-index-eyebrow { font-size: var(--fs-micro, 11px); font-weight: 650; letter-spacing: .12em; text-transform: uppercase; color: var(--tacit-accent, #14b8a6); margin-bottom: 12px; text-align: center; }
.blog-index-title { font-size: clamp(28px, 4vw, 42px); font-weight: 800; letter-spacing: -0.025em; color: var(--tacit-fg); margin: 0 0 12px; line-height: 1.15; text-align: center; }
.blog-index-sub { font-size: 16px; line-height: 1.65; color: var(--tacit-fg-muted); max-width: 640px; margin: 0 auto 32px; text-align: center; }
.blog-index-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 36px; justify-content: center; }
.blog-filter-btn { font-family: inherit; font-size: 13px; font-weight: 500; color: var(--tacit-fg-muted); background: transparent; border: 1px solid var(--tacit-border, rgba(11,11,13,.08)); border-radius: 20px; padding: 6px 16px; cursor: pointer; transition: all .15s; }
.blog-filter-btn:hover { color: var(--tacit-fg); border-color: var(--tacit-fg-light); }
.blog-filter-btn.active { color: var(--tacit-fg); background: var(--tacit-bg-subtle, rgba(11,11,13,.03)); border-color: var(--tacit-fg-light); font-weight: 600; }
.blog-index-grid { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 20px !important; }
@media (max-width: 680px) {
  .blog-index-grid { grid-template-columns: 1fr !important; }
  .blog-card--featured { grid-column: span 1; }
}
.blog-card,
a.blog-card,
a.blog-card:link,
a.blog-card:visited,
a.blog-card:hover,
a.blog-card:active { display: flex; flex-direction: column; text-decoration: none !important; border: 1px solid var(--tacit-border, rgba(11,11,13,.06)); border-radius: 0; padding: 24px; transition: border-color .2s; color: var(--tacit-fg, #0b0b0d) !important; position: relative; }
.blog-card::after { content: 'Read →'; position: absolute; bottom: 20px; right: 24px; font-size: 13px; font-weight: 600; color: var(--tacit-fg-light); opacity: 0; transition: opacity .2s, color .2s; }
.blog-card:hover { border-color: var(--tacit-border, rgba(11,11,13,.12)); }
.blog-card:hover::after { opacity: 1; color: var(--tacit-fg); }
.blog-card--featured { grid-column: span 2; }
.blog-card-badge { display: none !important; }
.blog-card-cat { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; color: var(--tacit-fg-light); margin-bottom: 8px; }
.blog-card-title { font-size: 17px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.35; color: var(--tacit-fg); margin: 0 0 8px; }
.blog-card-desc { font-size: 13px; line-height: 1.6; color: var(--tacit-fg-muted); margin: 0 0 12px; flex: 1; }
.blog-card-meta { font-size: 12px; color: var(--tacit-fg-light); display: flex; align-items: center; gap: 6px; }
.blog-card-meta svg { width: 14px; height: 14px; vertical-align: middle; }
[data-theme="dark"] .blog-card { border-color: rgba(255,255,255,.08) !important; background: rgba(255,255,255,.02) !important; }
[data-theme="dark"] .blog-card:hover { border-color: rgba(255,255,255,.15) !important; }
[data-theme="dark"] .blog-card::after { color: rgba(255,255,255,.4); }
[data-theme="dark"] .blog-card:hover::after { color: rgba(255,255,255,.85); }
[data-theme="dark"] .blog-card,
[data-theme="dark"] a.blog-card { color: rgba(255,255,255,.92) !important; text-decoration: none !important; }
[data-theme="dark"] .blog-card-title,
[data-theme="dark"] a.blog-card .blog-card-title,
[data-theme="dark"] .blog-card-title * { color: rgba(255,255,255,.95) !important; }
[data-theme="dark"] .blog-card-desc,
[data-theme="dark"] a.blog-card .blog-card-desc { color: rgba(255,255,255,.6) !important; }
[data-theme="dark"] .blog-card-cat,
[data-theme="dark"] a.blog-card .blog-card-cat { color: rgba(255,255,255,.45) !important; }
[data-theme="dark"] .blog-card-meta,
[data-theme="dark"] a.blog-card .blog-card-meta { color: rgba(255,255,255,.4) !important; }
[data-theme="dark"] .blog-card-badge { color: var(--tacit-accent) !important; background: rgba(20,184,166,.12) !important; }
[data-theme="dark"] .blog-index-title,
[data-theme="dark"] .blog-index-sub { color: rgba(255,255,255,.92) !important; }
[data-theme="dark"] .blog-index-eyebrow { color: var(--tacit-accent) !important; }
[data-theme="dark"] .blog-filter-btn { border-color: rgba(255,255,255,.08) !important; color: rgba(255,255,255,.5) !important; }
[data-theme="dark"] .blog-filter-btn:hover { color: rgba(255,255,255,.9) !important; border-color: rgba(255,255,255,.2) !important; }
[data-theme="dark"] .blog-filter-btn.active { background: rgba(255,255,255,.06) !important; border-color: rgba(255,255,255,.2) !important; color: rgba(255,255,255,.95) !important; }
@media (max-width: 640px) {
  .blog-index-grid { grid-template-columns: 1fr; }
  .blog-card--featured { grid-column: span 1; }
  .blog-index { padding: 60px 20px 40px; }
}

/* ── Trust Banner ── */
.tacit-trust-banner {
  --trust-border: rgba(0,0,0,.10);
  --trust-text: rgba(0,0,0,.58);
  --trust-bg: rgba(255,255,255,.45);
  --trust-icon: rgba(0,0,0,.44);
  --trust-max-width: 1440px;
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  border-top: 1px solid var(--trust-border) !important;
  border-bottom: 1px solid var(--trust-border) !important;
}
.tacit-trust-bar {
  width: min(100%, var(--trust-max-width)) !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  background: var(--trust-bg) !important;
  backdrop-filter: blur(14px) saturate(1.15);
  -webkit-backdrop-filter: blur(14px) saturate(1.15);
  border-radius: 0 !important;
  padding: 4px 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
.tacit-trust-item {
  position: relative;
  min-width: 0;
  min-height: 0 !important;
  padding: 8px 28px !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  color: var(--trust-text) !important;
}
.tacit-trust-item::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 1px !important;
  height: 18px !important;
  background: var(--trust-border) !important;
}
.tacit-trust-item:last-child::after {
  display: none !important;
}
.tacit-trust-bar > br,
.tacit-trust-bar > p,
.tacit-trust-item > br,
.tacit-trust-item > p {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
}
.tacit-trust-label {
  min-width: 0;
  font-size: clamp(12px, 0.86vw, 14px) !important;
  line-height: 1.3 !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
  white-space: normal !important;
  text-align: center !important;
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  color: var(--trust-text) !important;
}
.tacit-trust-icon {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  color: var(--trust-icon) !important;
  opacity: 0.92;
}

/* Trust Banner — dark mode */
[data-theme="dark"] .tacit-trust-banner {
  --trust-border: rgba(255,255,255,.18);
  --trust-text: rgba(255,255,255,.82);
  --trust-bg: rgba(0,0,0,.3);
  --trust-icon: rgba(255,255,255,.68);
}
@media (prefers-color-scheme: dark) {
  .tacit-trust-banner {
    --trust-border: rgba(255,255,255,.18);
    --trust-text: rgba(255,255,255,.82);
    --trust-bg: rgba(0,0,0,.3);
    --trust-icon: rgba(255,255,255,.68);
  }
}

@media (max-width: 500px) {
  .tacit-trust-banner { display: none !important; }
}

/* ── Trust Center (Security Page) ── */
.tacit-trust-hero {
  position: relative;
  width: 100%;
  min-height: 87vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: visible;
  padding: 80px 0 0 !important;
}
.tacit-trust-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 85%;
  z-index: 0;
}
.tacit-trust-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.tacit-trust-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.38) 0%, rgba(0,0,0,.55) 100%);
  z-index: 1;
}
.tacit-trust-hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 720px;
  padding: 0 24px;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.tacit-trust-hero-eyebrow {
  font-size: var(--fs-xs);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: rgba(255,255,255,.6);
  font-weight: 500;
  margin-bottom: 16px;
}
.tacit-trust-hero-title {
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  margin: 0 0 16px;
  letter-spacing: -0.02em;
}
.tacit-trust-hero-sub {
  font-size: clamp(15px, 2vw, 17px);
  color: rgba(255,255,255,.7);
  line-height: 1.6;
  margin: 0 0 32px;
}
.tacit-trust-hero-scroll {
  display: none !important;
}
.tacit-trust-hero-scroll-label {
  display: none;
}
.tacit-trust-hero-scroll-chevron {
  width: 20px;
  height: 20px;
  animation: trustScrollBounce 2s ease-in-out infinite;
}
@keyframes trustScrollBounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(5px); }
}
.tacit-trust-hero .tacit-trust-banner {
  position: relative;
  margin-top: auto !important;
  width: 100% !important;
  z-index: 4;
  --trust-border: rgba(255,255,255,.22);
  --trust-text: rgba(255,255,255,.88);
  --trust-bg: transparent;
  --trust-icon: rgba(255,255,255,.7);
  padding: 0 !important;
  border-top: 1px solid var(--trust-border) !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  left: auto !important;
  transform: none !important;
  background: rgba(0,0,0,.35) !important;
  backdrop-filter: blur(20px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.2) !important;
}
.tacit-trust-hero .tacit-trust-banner::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 22px;
  height: 22px;
  margin-top: 16px;
  opacity: 0.35;
  animation: trustScrollBounce 2s ease-in-out infinite;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat center / contain;
}
.tacit-trust-hero .tacit-trust-bar {
  background: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-radius: 0 !important;
  border: none !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Commitments section */
.tacit-commitments {
  max-width: 1080px;
  margin: 0 auto;
  padding: 64px 24px 40px;
}
.tacit-commitments-header {
  text-align: center;
  margin-bottom: 48px;
}
.tacit-commitments-title {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: var(--tacit-fg);
  margin: 0;
}
.tacit-commitment {
  padding: 32px 0;
  border-bottom: 1px solid var(--tacit-border);
}
.tacit-commitment:first-of-type {
  border-top: 1px solid var(--tacit-border);
}
.tacit-commitment-title {
  font-size: 18px;
  font-weight: 650;
  color: var(--tacit-fg);
  margin: 0 0 20px;
}
.tacit-commitment-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}
.tacit-commitment-label {
  font-size: var(--fs-xs);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--tacit-fg-light);
  font-weight: 600;
  margin: 0 0 8px;
}
.tacit-commitment-text {
  font-size: 14px;
  line-height: 1.65;
  color: var(--tacit-fg-muted);
  margin: 0;
}
[data-theme="dark"] .tacit-commitment {
  border-bottom-color: rgba(255,255,255,.08);
}
[data-theme="dark"] .tacit-commitment:first-of-type {
  border-top-color: rgba(255,255,255,.08);
}
@media (prefers-color-scheme: dark) {
  .tacit-commitment { border-bottom-color: rgba(255,255,255,.08); }
  .tacit-commitment:first-of-type { border-top-color: rgba(255,255,255,.08); }
}
@media (max-width: 640px) {
  .tacit-commitment-pair {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .tacit-trust-hero { min-height: 60vh; }
  .tacit-trust-hero-content { padding: 0 20px 60px; text-align: center; align-items: center; }
}

/* Trust Banner — responsive (auto-fit handles column count) */
@media (max-width: 580px) {
  .tacit-trust-hero { min-height: 65vh; }
  .tacit-trust-hero-content { padding: 0 20px 60px; text-align: center; align-items: center; }
  .tacit-trust-hero-scroll { display: none; }
  .tacit-trust-hero-title { font-size: 26px; }
  .tacit-trust-hero-sub { font-size: 14px; }
}
@media (max-width: 420px) {
  .tacit-trust-hero { }
  .tacit-trust-hero-content { padding: 0 16px 60px; }
  .tacit-trust-hero-title { font-size: 22px; }
  .tacit-trust-hero-sub { font-size: 13px; max-width: 100%; }
}


/* ═══════════════════════════════════════════════════════════════════
   HERO VISUALIZATION (shared by design, process, maintenance iframes)
   ═══════════════════════════════════════════════════════════════════ */

/* ── Viz variables ── */
.hero-viz { --tacit-grid-line: rgba(148,163,184,.06); --tacit-fog: var(--tacit-bg-deep); }
[data-theme="dark"] .hero-viz { --tacit-grid-line: rgba(148,163,184,.04); --tacit-fog: var(--tacit-bg); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-viz { --tacit-grid-line: rgba(148,163,184,.04); --tacit-fog: var(--tacit-bg); }
}

/* ── WP embed wrapper ── */
.hero-viz-wrap { position: relative !important; width: 100% !important; height: 100vh !important; overflow: hidden !important; background: var(--tacit-bg) !important; display: block !important; }
.tatsu-code .hero-viz-wrap,
.tatsu-module .hero-viz-wrap { height: 100vh !important; min-height: 100vh !important; }
.tatsu-code:has(.hero-viz-wrap),
.tatsu-module:has(.hero-viz-wrap) { height: 100vh !important; min-height: 100vh !important; overflow: visible !important; }
.tatsu-header-col:has(.hero-viz-wrap),
.tatsu-header-row:has(.hero-viz-wrap) { height: auto !important; min-height: 0 !important; }
.hero-viz-wrap .hero-viz { position: absolute !important; inset: 0 !important; }

/* ── App shell & grid ── */
.hero-viz { position: fixed; inset: 0; overflow: hidden; background: var(--tacit-bg); font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--tacit-fg); }
.hero-viz::before { content: ""; position: absolute; inset: 0; z-index: 1; background-image: linear-gradient(var(--tacit-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--tacit-grid-line) 1px, transparent 1px); background-size: 42px 42px; pointer-events: none; }

/* ── Hero text overlay ── */
.hero-viz .hero-overlay { position: absolute; top: 0; left: 0; right: 0; z-index: 30; padding: 96px 32px 32px; display: flex; flex-direction: column; align-items: center; text-align: center; pointer-events: none; }
.hero-viz .hero-eyebrow { display: inline-block; color: var(--tacit-accent); font-size: 14px; font-weight: 600; letter-spacing: 0.04em; text-transform: none; margin-bottom: 14px; }
.hero-viz .hero-title { font-size: clamp(28px, 4vw, 48px); font-weight: 700; line-height: 1.12; letter-spacing: -0.03em; color: var(--tacit-fg); max-width: 680px; }
.hero-viz .hero-sub { margin-top: 24px; font-size: 18px; line-height: 1.6; color: var(--tacit-fg-muted); font-weight: 450; max-width: 600px; }
.hero-viz .hero-actions { margin-top: 32px; display: flex; flex-direction: column; align-items: center; gap: 14px; pointer-events: auto; }
.hero-viz .hero-buttons { display: flex; align-items: center; justify-content: center; gap: 8px; }
.hero-viz .hero-reassurance { font-size: 12px; color: var(--tacit-fg-light); font-weight: 450; letter-spacing: 0.01em; }
.hero-viz.hero-design .hero-title,
.hero-viz.hero-process .hero-title { max-width: 780px; }

/* ── SVG / graph layers ── */
.hero-viz .svg-layer { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 4; pointer-events: none; overflow: visible; }
.hero-viz .fmea-svg-layer { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 8; pointer-events: none; overflow: visible; }
.hero-viz .graph-layer { position: absolute; inset: 0; z-index: 15; pointer-events: none; }
.hero-viz.hero-maintenance .svg-layer { z-index: 8; }

/* ── FMEA nodes ── */
.hero-viz .node { position: absolute; width: 105px; height: 38px; transform: translate(-50%, -50%) scale(.92); opacity: 0; transition: opacity .4s ease, transform .4s ease; will-change: opacity, transform; }
.hero-viz .node.wide { width: 130px; }
.hero-viz .node.xwide { width: 150px; }
.hero-viz .node.visible { opacity: 1; transform: translate(-50%, -50%) scale(1); }
.hero-viz .node.gone { opacity: 0 !important; transform: translate(-50%, -50%) scale(.85) !important; pointer-events: none; }
.hero-viz .node .bubble { position: relative; width: 100%; height: 100%; padding: 6px 10px; border-radius: 10px; background: var(--tacit-bg, #fff); border: none; box-shadow: 0 0 0 1px rgba(11,11,13,.06), 0 1px 3px rgba(0,0,0,.04); display: flex; flex-direction: column; justify-content: center; gap: 2px; overflow: hidden; }
.hero-viz .node .bubble::before { display: none; }
.hero-viz .node small { display: block; color: var(--tacit-fg-light); font-size: 7px; line-height: 1; letter-spacing: .08em; text-transform: uppercase; font-weight: 650; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hero-viz .node strong { display: block; color: var(--tacit-fg); font-size: 10.5px; line-height: 1.15; letter-spacing: -0.01em; font-weight: 650; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ── Score nodes ── */
.hero-viz .node.score { width: 42px; height: 42px; }
.hero-viz .node.score .bubble { border-radius: 999px; align-items: center; justify-content: center; text-align: center; padding: 0; gap: 0; }
.hero-viz .node.score .bubble::before { display: none; }
.hero-viz .node.score small { display: none; }
.hero-viz .score-value { color: var(--tacit-fg); font-size: 13px; line-height: 1; font-weight: 750; letter-spacing: -0.02em; }

/* ── Event (work order / DVP) node ── */
.hero-viz .node.event { width: 155px; height: auto; }
.hero-viz .node.event .bubble { background: var(--tacit-bg, #fff); border: none; box-shadow: 0 0 0 1px rgba(11,11,13,.06), 0 2px 8px rgba(0,0,0,.06); padding: 7px 10px; gap: 3px; border-radius: 10px; }
.hero-viz .node.event .bubble::before { display: none; }
.hero-viz .wo-header { display: flex; justify-content: space-between; align-items: center; }
.hero-viz .wo-id { font-size: 10px; font-weight: 750; color: var(--tacit-fg); letter-spacing: -0.02em; }
.hero-viz .wo-badge { font-size: 7.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; padding: 2px 6px; border-radius: 999px; background: var(--tacit-error-soft); color: var(--tacit-error); border: 1px solid var(--tacit-error-border); }
.hero-viz .wo-title { font-size: 9px; font-weight: 600; color: var(--tacit-fg-muted); line-height: 1.2; }
.hero-viz .wo-fields { display: flex; flex-wrap: wrap; gap: 2px 8px; margin-top: 1px; }
.hero-viz .wo-field { font-size: 8px; color: var(--tacit-fg-light); font-weight: 500; }
.hero-viz .wo-field b { font-weight: 650; color: var(--tacit-fg-muted); }

/* ── PFMEA / DFMEA link cards (match origin/Placement style, opaque bg) ── */
.hero-viz .node.pfmea-link .bubble.pfmea-link-bubble,
.hero-viz .node.dfmea-link .bubble.dfmea-link-bubble { background: #fff !important; border: 1.5px solid rgba(26,154,122,.25) !important; box-shadow: none !important; border-radius: 6px; padding: 6px 10px; display: flex; flex-direction: column; justify-content: center; gap: 1px; }
[data-theme="dark"] .hero-viz .node.pfmea-link .bubble.pfmea-link-bubble,
[data-theme="dark"] .hero-viz .node.dfmea-link .bubble.dfmea-link-bubble { background: #030712 !important; border-color: rgba(56,211,168,.30) !important; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-viz .node.pfmea-link .bubble.pfmea-link-bubble,
  :root:not([data-theme="light"]) .hero-viz .node.dfmea-link .bubble.dfmea-link-bubble { background: #030712 !important; border-color: rgba(56,211,168,.30) !important; }
}

/* ── Node states ── */
.hero-viz .node.focus .bubble { box-shadow: 0 0 0 1px rgba(11,11,13,.08), 0 2px 8px rgba(0,0,0,.06); }
.hero-viz .node.alert .bubble { background: #fef7f7; box-shadow: 0 0 0 1px rgba(239,68,68,.18), 0 1px 3px rgba(0,0,0,.04); }
.hero-viz .node.updated .bubble { box-shadow: 0 0 0 1px rgba(11,11,13,.06), 0 1px 3px rgba(0,0,0,.04); }

/* ── Context nodes ── */
.hero-viz .node.context { opacity: 0; width: auto; height: auto; }
.hero-viz .node.context.visible { opacity: 0.6; }
.hero-viz .node.context .bubble { border: 1px dashed rgba(11,11,13,.18); box-shadow: none; background: rgba(255,255,255,.6); padding: 1px 9px; border-radius: 999px; line-height: 1; overflow: visible; flex-direction: row; gap: 5px; align-items: center; white-space: nowrap; height: auto; }
.hero-viz .node.context small { font-size: 7px; font-weight: 700; letter-spacing: .04em; }
.hero-viz .node.context strong { font-size: 9px; }
.hero-viz .edge.context { stroke-dasharray: 4 3; opacity: 0; }
.hero-viz .edge.context.visible { opacity: 0.4; }

/* ── Delta badges ── */
.hero-viz .delta { position: absolute; bottom: -8px; left: 50%; transform: translateX(-50%); padding: 2px 7px; border-radius: 999px; font-size: 8px; font-weight: 700; line-height: 1; background: #fff; color: var(--tacit-accent); border: none; box-shadow: 0 0 0 1px rgba(11,11,13,.06), 0 1px 3px rgba(0,0,0,.04); opacity: 0; transition: opacity .25s ease; white-space: nowrap; }
.hero-viz .delta.show { opacity: 1; }
.hero-viz .delta.alert-delta { background: #fef7f7; color: var(--tacit-error); box-shadow: 0 0 0 1px rgba(239,68,68,.15), 0 1px 3px rgba(0,0,0,.04); }

/* ── Edges ── */
.hero-viz .edge { fill: none; stroke: var(--tacit-border); stroke-width: 1; stroke-linecap: round; opacity: 0; transition: opacity .3s ease, stroke .25s ease; }
.hero-viz .edge.visible { opacity: 1; }
.hero-viz .edge.focus { stroke: var(--tacit-accent-soft); }
.hero-viz .edge.active { stroke: var(--tacit-accent); stroke-width: 1.2; stroke-dasharray: 5 5; animation: hviz-dash-fwd .9s linear infinite; }
.hero-viz .edge.backprop { stroke: var(--tacit-accent-deep); stroke-width: 1.2; stroke-dasharray: 4 6; animation: hviz-dash-back .8s linear infinite; }
@keyframes hviz-dash-fwd { to { stroke-dashoffset: -20; } }
@keyframes hviz-dash-back { to { stroke-dashoffset: 20; } }

/* ── Phase nav ── */
.hero-viz .phase-nav { position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); z-index: 50; display: flex; align-items: center; gap: 9px; padding: 7px 12px; border-radius: 999px; background: color-mix(in srgb, var(--tacit-bg) 82%, transparent); border: 1px solid var(--tacit-border); box-shadow: 0 6px 20px rgba(2,6,23,.4); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.hero-viz .phase-nav-btn { position: relative; height: 6px; border: none; background: transparent; cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; }
.hero-viz .phase-nav-pip { width: 6px; height: 6px; border-radius: 999px; background: color-mix(in srgb, var(--tacit-fg) 30%, transparent); transition: width .3s cubic-bezier(.22,.68,.31,1), background .25s ease, box-shadow .25s ease, opacity .25s ease; }
.hero-viz .phase-nav-btn:hover .phase-nav-pip { background: color-mix(in srgb, var(--tacit-fg) 55%, transparent); }
.hero-viz .phase-nav-btn.active .phase-nav-pip { width: 22px; background: var(--tacit-accent); box-shadow: 0 0 8px 1px color-mix(in srgb, var(--tacit-accent) 45%, transparent); }
.hero-viz .phase-nav-btn.past .phase-nav-pip { background: color-mix(in srgb, var(--tacit-fg) 30%, transparent); opacity: 1; }
.hero-viz .phase-nav-label { display: none; }
.hero-viz .phase-nav br { display: none; }
.txnav-dots br { display: none; }

/* ── Product showcase ── */
.hero-viz .product-showcase { position: absolute; left: 0; right: 0; bottom: 0; z-index: 20; top: 48%; display: flex; align-items: flex-start; justify-content: center; padding: 0 24px; opacity: 0; pointer-events: none; overflow: hidden; }
.hero-viz .product-showcase.visible { opacity: 1; pointer-events: auto; }
.hero-viz .product-device { width: 72%; max-width: 920px; border-radius: 10px; overflow: hidden; transform: translateY(60px); opacity: 0; transition: transform .8s cubic-bezier(.22,.68,.31,1), opacity .6s ease; box-shadow: 0 8px 40px rgba(0,0,0,.18); }
.hero-viz .product-showcase.visible .product-device { transform: translateY(0); opacity: 1; }
.hero-viz .product-screen { display: block; width: 100%; height: auto; }

/* ── Replay ── */
.hero-viz .replay { position: absolute; right: 20px; bottom: 20px; z-index: 50; border: 1px solid var(--tacit-border); background: color-mix(in srgb, var(--tacit-bg) 80%, transparent); border-radius: 999px; width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; padding: 0; cursor: pointer; box-shadow: var(--tacit-shadow-md); backdrop-filter: blur(10px); }
.hero-viz .replay:hover { background: var(--tacit-bg); }
.hero-viz .replay svg { width: 14px; height: 14px; stroke: var(--tacit-fg-muted); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* ── DARK MODE — data-theme ── */
[data-theme="dark"] .hero-viz .phase-nav { background: rgba(3,7,18,.80); border-color: var(--tacit-border); }
[data-theme="dark"] .hero-viz .phase-nav-pip { background: rgba(255,255,255,.24); }
[data-theme="dark"] .hero-viz .phase-nav-btn:hover .phase-nav-pip { background: rgba(255,255,255,.45); }
[data-theme="dark"] .hero-viz .phase-nav-btn.active .phase-nav-pip { background: var(--tacit-accent); }
[data-theme="dark"] .hero-viz .phase-nav-btn.past .phase-nav-pip { background: rgba(255,255,255,.24); }
[data-theme="dark"] .hero-viz .phase-nav-label { color: #0b0b0d; background: rgba(255,255,255,.96); box-shadow: 0 4px 14px rgba(0,0,0,.45); }
[data-theme="dark"] .hero-viz .node .bubble { background: rgba(0,0,0,.4); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); box-shadow: none; }
[data-theme="dark"] .hero-viz .node.focus .bubble { background: rgba(0,0,0,.5); border-color: rgba(255,255,255,.14); }
[data-theme="dark"] .hero-viz .node.alert .bubble { background: #1c1117; border: 1px solid rgba(248,113,113,.35); backdrop-filter: none; }
[data-theme="dark"] .hero-viz .node.updated .bubble { background: rgba(0,0,0,.45); border-color: rgba(255,255,255,.10); }
[data-theme="dark"] .hero-viz .node.event .bubble { background: rgba(0,0,0,.5); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
[data-theme="dark"] .hero-viz .delta { background: rgba(0,0,0,.4); border: 1px solid rgba(255,255,255,.08); box-shadow: none; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); color: #5ee8c0; }
[data-theme="dark"] .hero-viz .delta.alert-delta { background: #2a1215; color: #f87171; border-color: rgba(248,113,113,.20); backdrop-filter: none; }
[data-theme="dark"] .hero-viz .edge.visible { stroke: var(--tacit-border); }
[data-theme="dark"] .hero-viz .node.context.visible { opacity: 0.8; }
[data-theme="dark"] .hero-viz .node.context .bubble { border-color: rgba(255,255,255,.15); background: rgba(255,255,255,.05); }
[data-theme="dark"] .hero-viz .edge.context.visible { opacity: 0.3; }

/* ── DARK MODE — prefers-color-scheme auto ── */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-viz .phase-nav { background: rgba(3,7,18,.80); border-color: var(--tacit-border); }
  :root:not([data-theme="light"]) .hero-viz .phase-nav-pip { background: rgba(255,255,255,.24); }
  :root:not([data-theme="light"]) .hero-viz .phase-nav-btn:hover .phase-nav-pip { background: rgba(255,255,255,.45); }
  :root:not([data-theme="light"]) .hero-viz .phase-nav-btn.active .phase-nav-pip { background: var(--tacit-accent); }
  :root:not([data-theme="light"]) .hero-viz .phase-nav-label { color: #0b0b0d; background: rgba(255,255,255,.96); box-shadow: 0 4px 14px rgba(0,0,0,.45); }
  :root:not([data-theme="light"]) .hero-viz .node .bubble { background: rgba(0,0,0,.4); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); box-shadow: none; }
  :root:not([data-theme="light"]) .hero-viz .node.focus .bubble { background: rgba(0,0,0,.5); border-color: rgba(255,255,255,.14); }
  :root:not([data-theme="light"]) .hero-viz .node.alert .bubble { background: #1c1117; border: 1px solid rgba(248,113,113,.35); backdrop-filter: none; }
  :root:not([data-theme="light"]) .hero-viz .node.updated .bubble { background: rgba(0,0,0,.45); border-color: rgba(255,255,255,.10); }
  :root:not([data-theme="light"]) .hero-viz .node.event .bubble { background: rgba(0,0,0,.5); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
  :root:not([data-theme="light"]) .hero-viz .delta { background: rgba(0,0,0,.4); border: 1px solid rgba(255,255,255,.08); box-shadow: none; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); color: #5ee8c0; }
  :root:not([data-theme="light"]) .hero-viz .delta.alert-delta { background: #2a1215; color: #f87171; border-color: rgba(248,113,113,.20); backdrop-filter: none; }
  :root:not([data-theme="light"]) .hero-viz .edge.visible { stroke: rgba(255,255,255,.08); }
  :root:not([data-theme="light"]) .hero-viz .node.context.visible { opacity: 0.8; }
  :root:not([data-theme="light"]) .hero-viz .node.context .bubble { border-color: rgba(255,255,255,.15); background: rgba(255,255,255,.05); }
  :root:not([data-theme="light"]) .hero-viz .edge.context.visible { opacity: 0.3; }
}

/* ═══ DESIGN — schematic layer ═══ */
.hero-viz .sch-layer { position: absolute; inset: 0; z-index: 5; pointer-events: none; }
.hero-viz .sch-block { position: absolute; background: var(--tacit-card-bg, #fff); border: 1.5px solid var(--tacit-card-border, rgba(11,11,13,.08)); border-radius: 6px; padding: 7px 11px; opacity: 0; transform: translateY(4px); transition: opacity .45s ease, transform .45s ease, border-color .3s, box-shadow .3s; display: flex; flex-direction: column; gap: 2px; }
.hero-viz .sch-block.visible { opacity: 1; transform: translateY(0); }
.hero-viz .sch-block.dim { opacity: 0.15 !important; }
.hero-viz .sch-block.gone { opacity: 0 !important; transform: scale(0.9); pointer-events: none; }
.hero-viz .sch-block.highlight { border-color: var(--tacit-accent); box-shadow: 0 0 0 2px var(--tacit-accent-soft); }
.hero-viz .sch-block.accent { background: rgba(26,154,122,.06); border-color: rgba(26,154,122,.25); }
.hero-viz .sch-block.terminal { background: var(--tacit-bg-deep, #f1f5f9); border-style: dashed; border-color: var(--tacit-card-border); }
.hero-viz .sch-block-type { font-size: 7px; font-weight: 700; color: var(--tacit-fg-light); text-transform: uppercase; letter-spacing: .08em; line-height: 1; }
.hero-viz .sch-block-name { font-size: 11px; font-weight: 700; color: var(--tacit-fg); line-height: 1.15; white-space: nowrap; }
.hero-viz .sch-block.accent .sch-block-name { color: var(--tacit-accent); }
.hero-viz .sch-block-part { font-size: 8.5px; font-weight: 500; color: var(--tacit-fg-light); font-family: 'SF Mono', ui-monospace, Consolas, monospace; line-height: 1; white-space: nowrap; }
.hero-viz .sch-boundary { position: absolute; border: 1.5px dashed rgba(11,11,13,.06); border-radius: 10px; pointer-events: none; opacity: 0; transition: opacity .5s ease; }
.hero-viz .sch-boundary.visible { opacity: 1; }
.hero-viz .sch-boundary-label { position: absolute; top: -9px; left: 14px; font-size: 8px; font-weight: 700; color: var(--tacit-fg-light); letter-spacing: .06em; text-transform: uppercase; background: var(--tacit-bg); padding: 0 6px; }
.hero-viz .sch-signal { position: absolute; pointer-events: none; font-size: 7.5px; font-weight: 650; color: var(--tacit-fg-light); font-family: 'SF Mono', ui-monospace, Consolas, monospace; letter-spacing: .02em; opacity: 0; transition: opacity .3s ease; white-space: nowrap; }
.hero-viz .sch-signal.visible { opacity: 0.55; }
.hero-viz .sch-edge { fill: none; stroke: var(--tacit-card-border, rgba(11,11,13,.12)); stroke-width: 1.2; stroke-linecap: round; opacity: 0; transition: opacity .4s ease; }
.hero-viz .sch-edge.visible { opacity: 0.55; }
.hero-viz .sch-edge.power { stroke-width: 2; }
.hero-viz .sch-edge.signal { stroke-dasharray: 4 3; stroke-width: 1; }
.hero-viz .sch-source { position: absolute; pointer-events: none; z-index: 6; display: flex; align-items: center; gap: 6px; padding: 5px 12px 5px 10px; border-radius: 999px; background: rgba(26,154,122,.06); border: 1px dashed rgba(26,154,122,.22); font-size: 9.5px; font-weight: 650; color: var(--tacit-accent); white-space: nowrap; opacity: 0; }
.hero-viz .sch-source-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--tacit-accent); flex-shrink: 0; animation: hviz-src-pulse 2s ease-in-out infinite; }
@keyframes hviz-src-pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }

[data-theme="dark"] .hero-viz .sch-block { background: rgba(0,0,0,.35); border-color: rgba(255,255,255,.10); }
[data-theme="dark"] .hero-viz .sch-block.accent { background: rgba(26,154,122,.12); border-color: rgba(56,211,168,.30); }
[data-theme="dark"] .hero-viz .sch-block.terminal { background: rgba(0,0,0,.2); border-color: rgba(255,255,255,.08); }
[data-theme="dark"] .hero-viz .sch-block.highlight { border-color: var(--tacit-accent); box-shadow: 0 0 0 2px rgba(56,211,168,.15); }
[data-theme="dark"] .hero-viz .sch-edge.visible { stroke: rgba(255,255,255,.12); }
[data-theme="dark"] .hero-viz .sch-signal { color: rgba(255,255,255,.35); }
[data-theme="dark"] .hero-viz .sch-source { background: rgba(56,211,168,.06); border-color: rgba(56,211,168,.18); }
[data-theme="dark"] .hero-viz .sch-boundary { border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .hero-viz .sch-boundary-label { color: rgba(255,255,255,.25); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-viz .sch-block { background: rgba(0,0,0,.35); border-color: rgba(255,255,255,.10); }
  :root:not([data-theme="light"]) .hero-viz .sch-block.accent { background: rgba(26,154,122,.12); border-color: rgba(56,211,168,.30); }
  :root:not([data-theme="light"]) .hero-viz .sch-block.terminal { background: rgba(0,0,0,.2); border-color: rgba(255,255,255,.08); }
  :root:not([data-theme="light"]) .hero-viz .sch-edge.visible { stroke: rgba(255,255,255,.12); }
  :root:not([data-theme="light"]) .hero-viz .sch-signal { color: rgba(255,255,255,.35); }
  :root:not([data-theme="light"]) .hero-viz .sch-source { background: rgba(56,211,168,.06); border-color: rgba(56,211,168,.18); }
  :root:not([data-theme="light"]) .hero-viz .sch-boundary { border-color: rgba(255,255,255,.06); }
  :root:not([data-theme="light"]) .hero-viz .sch-boundary-label { color: rgba(255,255,255,.25); }
}

/* ═══ PROCESS — flow diagram layer ═══ */
.hero-viz .pf-layer { position: absolute; inset: 0; z-index: 5; pointer-events: none; }
.hero-viz .pf-step { position: absolute; background: var(--tacit-card-bg, #fff); border: 1.5px solid var(--tacit-card-border, rgba(11,11,13,.08)); border-radius: 6px; padding: 6px 10px; opacity: 0; transform: translateY(4px); transition: opacity .45s ease, transform .45s ease, border-color .3s, box-shadow .3s; display: flex; flex-direction: column; gap: 1px; }
.hero-viz .pf-step.visible { opacity: 1; transform: translateY(0); }
.hero-viz .pf-step.dim { opacity: 0.15 !important; }
.hero-viz .pf-step.gone { opacity: 0 !important; transform: scale(0.9); pointer-events: none; }
.hero-viz .pf-step.highlight { border-color: var(--tacit-accent); box-shadow: 0 0 0 2px var(--tacit-accent-soft); }
.hero-viz .pf-step.accent { background: rgba(26,154,122,.06); border-color: rgba(26,154,122,.25); }
.hero-viz .pf-step.decision { border-radius: 0; transform: translateY(0) rotate(45deg); }
.hero-viz .pf-step.decision.visible { transform: rotate(45deg); }
.hero-viz .pf-step.decision .pf-step-inner { transform: rotate(-45deg); }
.hero-viz .pf-step-inner { display: flex; flex-direction: column; gap: 1px; }
.hero-viz .pf-step-num { font-size: 7px; font-weight: 800; color: var(--tacit-fg-light); letter-spacing: .06em; line-height: 1; }
.hero-viz .pf-step-name { font-size: 10.5px; font-weight: 700; color: var(--tacit-fg); line-height: 1.15; white-space: nowrap; }
.hero-viz .pf-step.accent .pf-step-name { color: var(--tacit-accent); }
.hero-viz .pf-step-detail { font-size: 8px; font-weight: 500; color: var(--tacit-fg-light); line-height: 1; white-space: nowrap; }
.hero-viz .pf-badge { position: absolute; pointer-events: none; font-size: 7.5px; font-weight: 700; line-height: 1; padding: 1px 7px; border-radius: 999px; background: var(--tacit-card-bg); color: var(--tacit-fg-light); border: 1px solid var(--tacit-card-border); opacity: 0; transition: opacity .3s; white-space: nowrap; }
.hero-viz .pf-badge.visible { opacity: 0.7; }
.hero-viz .pf-badge.alert { color: var(--tacit-error); border-color: rgba(239,68,68,.2); background: #fef7f7; }
.hero-viz .pf-edge { fill: none; stroke: var(--tacit-card-border, rgba(11,11,13,.12)); stroke-width: 1.5; stroke-linecap: round; opacity: 0; transition: opacity .4s; }
.hero-viz .pf-edge.visible { opacity: 0.55; }
.hero-viz .pf-arrow { fill: var(--tacit-card-border, rgba(11,11,13,.12)); opacity: 0; transition: opacity .4s; }
.hero-viz .pf-arrow.visible { opacity: 0.45; }

[data-theme="dark"] .hero-viz .pf-step { background: rgba(0,0,0,.35); border-color: rgba(255,255,255,.10); }
[data-theme="dark"] .hero-viz .pf-step.accent { background: rgba(26,154,122,.12); border-color: rgba(56,211,168,.30); }
[data-theme="dark"] .hero-viz .pf-step.decision { background: rgba(0,0,0,.30); border-color: rgba(255,255,255,.10); }
[data-theme="dark"] .hero-viz .pf-step.highlight { border-color: var(--tacit-accent); box-shadow: 0 0 0 2px rgba(56,211,168,.15); }
[data-theme="dark"] .hero-viz .pf-edge.visible { stroke: rgba(255,255,255,.12); }
[data-theme="dark"] .hero-viz .pf-badge { background: rgba(0,0,0,.5); color: rgba(255,255,255,.92); border-color: rgba(255,255,255,.16); }
[data-theme="dark"] .hero-viz .pf-badge.visible { opacity: 0.95; }
[data-theme="dark"] .hero-viz .pf-badge.alert { background: #2a1215; color: #f87171; border-color: rgba(248,113,113,.28); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-viz .pf-step { background: rgba(0,0,0,.35); border-color: rgba(255,255,255,.10); }
  :root:not([data-theme="light"]) .hero-viz .pf-step.accent { background: rgba(26,154,122,.12); border-color: rgba(56,211,168,.30); }
  :root:not([data-theme="light"]) .hero-viz .pf-step.decision { background: rgba(0,0,0,.30); border-color: rgba(255,255,255,.10); }
  :root:not([data-theme="light"]) .hero-viz .pf-edge.visible { stroke: rgba(255,255,255,.12); }
  :root:not([data-theme="light"]) .hero-viz .pf-badge { background: rgba(0,0,0,.5); color: rgba(255,255,255,.92); border-color: rgba(255,255,255,.16); }
  :root:not([data-theme="light"]) .hero-viz .pf-badge.visible { opacity: 0.95; }
}

/* ═══ MAINTENANCE — 3D scene + labels ═══ */
.hero-viz #scene { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 2; pointer-events: none; }
.hero-viz .label-3d { position: absolute; z-index: 25; transform: translate(-50%, 0); pointer-events: none; opacity: 0; transition: opacity .4s ease; white-space: nowrap; }
.hero-viz .label-3d.visible { opacity: 1; }
.hero-viz #lbl-equip { transform: translate(-100%, -50%); margin-left: -8px; }
.hero-viz .label-3d-tag { display: inline-block; padding: 4px 10px; border-radius: 8px; font-size: 10px; font-weight: 650; letter-spacing: .01em; color: var(--tacit-fg); background: var(--tacit-card-bg); border: 1px solid var(--tacit-card-border); box-shadow: var(--tacit-shadow-sm); }
.hero-viz .label-3d-tag.accent { color: var(--tacit-accent); }
.hero-viz .label-3d-sub { display: block; margin-top: 3px; font-size: 8px; font-weight: 600; color: var(--tacit-fg); text-align: center; letter-spacing: .02em; }

[data-theme="dark"] .hero-viz .label-3d-tag { background: rgba(0,0,0,.4); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); color: var(--tacit-fg); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-viz .label-3d-tag { background: rgba(0,0,0,.4); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); color: var(--tacit-fg); }
}

/* ═══ RESPONSIVE ═══ */
@media (max-width: 600px) {
  .hero-viz .hero-title { font-size: clamp(34px, 8vw, 42px); }
  .hero-viz .hero-sub { font-size: 13px; }
}
@media (max-width: 480px) {
  .hero-viz .hero-title { font-size: clamp(32px, 8vw, 38px); }
  .hero-viz .hero-sub { font-size: 12px; }
  .hero-viz .hero-reassurance { font-size: 11px; }
}

/* ═══ CASE STUDY CARD OVERRIDES ═══ */
.tacit-cs-card--request .tacit-cs-cta { display: block; text-align: right; width: 100%; }
.tacit-industry-cs .tacit-cs-card { flex: none; width: 100%; max-width: 420px; aspect-ratio: 3/4; margin: var(--sp-12) auto 0; }
.tacit-cs-request-card {
  max-width: 480px;
  margin: var(--sp-12) auto 0;
  padding: var(--sp-12) var(--sp-10);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: var(--radius-2xl, 16px);
  background: rgba(255,255,255,.02);
  text-align: center;
}
.tacit-cs-request-text {
  font-size: var(--fs-body-sm, 14px);
  color: var(--tacit-fg-muted, rgba(255,255,255,.6));
  line-height: 1.6;
  margin: 0 0 var(--sp-10) 0;
}
.tacit-cs-request-card .tacitx-btn-a1 { margin: 0 auto; }

/* ═══ RESPONSIVE SCALING — smaller desktops / laptops ═══ */
@media (max-width: 1280px) {
  .hero-viz .sch-layer, .hero-viz .svg-layer { transform: scale(.88); transform-origin: center 55%; }
  .hero-viz .graph-layer, .hero-viz .fmea-svg-layer { transform: scale(.85); transform-origin: 10% 50%; }
  .hero-viz .product-device { width: 68%; }
}
@media (max-width: 1024px) {
  .hero-viz .sch-layer, .hero-viz .svg-layer { transform: scale(.75); transform-origin: center 55%; }
  .hero-viz .graph-layer, .hero-viz .fmea-svg-layer { transform: scale(.72); transform-origin: 8% 45%; }
  .hero-viz .product-device { width: 78%; }
  .hero-viz .node { height: 34px !important; }
  .hero-viz .node.event { height: 100px !important; }
}

/* ═══ MOBILE FALLBACK ═══ */
.hero-viz .mobile-fallback { display: none; }
@media (max-width: 768px) {
  .hero-viz .sch-layer, .hero-viz .pf-layer, .hero-viz #scene,
  .hero-viz .svg-layer, .hero-viz .fmea-svg-layer,
  .hero-viz .graph-layer, .hero-viz .phase-nav, .hero-viz .replay,
  .hero-viz .label-3d { display: none !important; }
  .hero-viz .product-showcase { display: none !important; }
  .hero-viz .mobile-fallback { display: flex; position: absolute; inset: 0; z-index: 5; align-items: flex-end; justify-content: center; overflow: hidden; }
  .hero-viz .mobile-product { width: 100%; max-width: none; border-radius: 0; overflow: hidden; box-shadow: none; }
  .hero-viz .mobile-product-img { display: block; width: 100%; height: auto; }
  .hero-viz .hero-overlay { position: relative; max-width: 100%; padding: 80px 24px 32px; }
  .hero-viz .hero-overlay::before { display: none; }
  .hero-viz .hero-buttons { flex-direction: column; width: 100%; gap: 10px; }
  .hero-viz .hero-buttons .tacitx-btn-a1 { width: 100%; text-align: center; justify-content: center; }
  .hero-viz .hero-actions { gap: 10px; }
}

/* ═══ HOMEPAGE HERO — hide cramped product carousel on mobile (headline + CTA lead) ═══ */
@media (max-width: 768px) { .txnav { display: none; } }

/* -- Careers hero ----------------------------- */
.tacit-careers-hero {
  max-width: 680px;
  margin: 0 auto;
  padding: 100px 24px 60px;
  text-align: center;
}
.tacit-careers-hero .tacit-section-title {
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.15;
  margin: 0 0 20px 0;
}
.tacit-careers-hero .tacit-section-desc {
  font-size: 16px;
  line-height: 1.65;
  max-width: 520px;
  margin: 0 auto;
}

/* Careers listing wrapper spacing */
.awsm-job-wrap {
  max-width: 820px !important;
  margin: 0 auto !important;
  padding: 0 24px 80px !important;
}