/*
   TheConnector Prime Theme
   Canonical cross-host token and visual layer.
   Synced to PublicSite, Dashboard.Admin and Dashboard.Client by each web project build.
*/

:root {
  color-scheme: light;

  --tc-bg-page: #f3f6fa;
  --tc-bg-section: #e8eef5;
  --tc-surface: #ffffff;
  --tc-surface-soft: #f8fafc;
  --tc-surface-raised: #fdfefe;

  --tc-navy-950: #071421;
  --tc-navy-900: #0b1e33;
  --tc-navy-800: #12304d;
  --tc-navy-700: #18446b;

  --tc-primary: #28c6ba;
  --tc-primary-strong: #0f766e;
  --tc-secondary: #2f9ed8;
  --tc-accent: #21a67a;
  --tc-focus: #7acdf1;

  --tc-text: #101828;
  --tc-text-soft: #334155;
  --tc-text-muted: #536173;
  --tc-text-subtle: #7a8797;
  --tc-text-inverse: #f8fbff;
  --tc-text-inverse-muted: #c7d2e1;

  --tc-border: #d7e1eb;
  --tc-border-strong: #b9c7d6;
  --tc-border-inverse: rgba(255, 255, 255, .14);

  --tc-success: #15803d;
  --tc-success-bg: #dcfce7;
  --tc-warning: #b45309;
  --tc-warning-bg: #fef3c7;
  --tc-error: #b42318;
  --tc-error-bg: #fee2e2;
  --tc-info: #0369a1;
  --tc-info-bg: #e0f2fe;

  --tc-font-sans: "Geist", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --tc-font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;

  --tc-radius-sm: 5px;
  --tc-radius-md: 8px;
  --tc-radius-lg: 10px;
  --tc-radius-xl: 12px;
  --tc-radius-pill: 999px;

  --tc-shadow-sm: 0 8px 24px rgba(7, 20, 33, .08);
  --tc-shadow-md: 0 18px 48px rgba(7, 20, 33, .12);
  --tc-shadow-lg: 0 28px 72px rgba(7, 20, 33, .18);

  --tc-frame: 1180px;
  --tc-frame-wide: 1320px;
  --tc-page-gutter: clamp(18px, 4vw, 32px);

  /* Compatibility aliases used by the existing Razor/CSS surface. */
  --bg: var(--tc-bg-page);
  --paper: var(--tc-surface);
  --paper-strong: var(--tc-surface-raised);
  --paper-alt: var(--tc-bg-section);
  --ink: var(--tc-text);
  --ink-2: var(--tc-text-soft);
  --ink-soft: var(--tc-text-soft);
  --ink-muted: var(--tc-text-muted);
  --muted: var(--tc-text-muted);
  --rule: var(--tc-border);
  --rule-soft: #e2eaf2;
  --line: var(--tc-border);
  --line-strong: var(--tc-border-strong);
  --brand: var(--tc-secondary);
  --brand-ink: var(--tc-navy-950);
  --accent: var(--tc-primary);
  --accent-strong: var(--tc-primary-strong);
  --accent-ink: var(--tc-navy-950);
  --accent-soft: color-mix(in srgb, var(--tc-primary) 16%, transparent);
  --surface: var(--tc-surface);
  --surface-strong: var(--tc-surface-raised);
  --surface-muted: var(--tc-surface-soft);
  --ok: var(--tc-success);
  --success: var(--tc-success);
  --warn: var(--tc-warning);
  --warning: var(--tc-warning);
  --bad: var(--tc-error);
  --danger: var(--tc-error);
  --warm: var(--tc-primary-strong);
  --warm-soft: color-mix(in srgb, var(--tc-primary) 14%, transparent);
  --gold: var(--tc-secondary);
  --font-sans: var(--tc-font-sans);
  --font-mono: var(--tc-font-mono);
  --font-display: var(--tc-font-sans);
  --font-display-accent: var(--tc-font-sans);
  --radius-sm: var(--tc-radius-sm);
  --radius-md: var(--tc-radius-md);
  --radius-lg: var(--tc-radius-lg);
  --radius-xl: var(--tc-radius-xl);
  --shadow-sm: var(--tc-shadow-sm);
  --shadow-lg: var(--tc-shadow-lg);
  --public-frame: var(--tc-frame);
}

html {
  background: var(--tc-bg-page);
  scroll-padding-top: 96px;
}

body {
  min-width: 0;
  background:
    linear-gradient(180deg, rgba(7, 20, 33, .04), transparent 310px),
    linear-gradient(90deg, rgba(45, 212, 191, .05) 0 1px, transparent 1px 100%),
    var(--tc-bg-page);
  color: var(--tc-text);
  font-family: var(--tc-font-sans);
  font-feature-settings: "tnum" 1, "cv11" 1;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.tc-public-page,
.tc-home-page,
.body--dashboard {
  background: transparent;
}

.shell {
  isolation: isolate;
}

.container {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  max-width: none;
  padding: 0;
}

.page-backdrop {
  position: fixed;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(to right, rgba(11, 30, 51, .045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(11, 30, 51, .035) 1px, transparent 1px);
  background-size: 56px 56px;
  opacity: .86;
  pointer-events: none;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.9), rgba(0,0,0,.28) 72%, transparent);
}

::selection {
  background: color-mix(in srgb, var(--tc-primary) 42%, transparent);
  color: var(--tc-navy-950);
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--tc-focus);
  outline-offset: 2px;
}

:where(h1, h2, h3, h4) {
  color: var(--tc-text);
  font-family: var(--tc-font-sans);
  letter-spacing: 0;
  text-wrap: balance;
}

:where(p, li, dd, small) {
  color: var(--tc-text-muted);
}

:where(code, pre, kbd, .order-card__ticket) {
  font-family: var(--tc-font-mono);
}

.eyebrow {
  color: var(--tc-primary-strong);
  font-family: var(--tc-font-mono);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.skip-link {
  background: var(--tc-primary);
  color: var(--tc-navy-950);
  border-radius: var(--tc-radius-md);
}

/* Header and navigation */
.tc-home-nav,
.site-header {
  top: 12px;
  z-index: 40;
  border: 1px solid var(--tc-border-inverse);
  border-radius: var(--tc-radius-xl);
  background:
    linear-gradient(to right, rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(135deg, rgba(7, 20, 33, .98), rgba(11, 30, 51, .96) 58%, rgba(18, 48, 77, .94));
  background-size: 56px 56px, 56px 56px, auto;
  box-shadow: 0 18px 46px rgba(7, 20, 33, .26);
  backdrop-filter: saturate(145%) blur(14px);
}

.tc-home-nav {
  width: min(100% - 24px, var(--tc-frame));
}

.site-header {
  border-radius: 0 0 var(--tc-radius-xl) var(--tc-radius-xl);
}

.tc-home-brand,
.brandmark,
.tc-home-brand__text,
.brandmark__text {
  color: var(--tc-text-inverse);
  font-weight: 760;
  text-decoration: none;
}

.tc-home-brand__domain,
.brandmark__domain {
  color: var(--tc-primary);
}

.tc-home-brand__image,
.brandmark__icon {
  filter: drop-shadow(0 8px 18px rgba(45, 212, 191, .18));
}

.tc-home-nav__links a,
.tc-home-nav__login,
.main-nav a,
.header-link,
.site-header .language-select,
.tc-home-nav .language-select,
.nav-toggle,
.tc-home-nav__toggle {
  color: rgba(248, 251, 255, .78);
}

.tc-home-nav__links a,
.tc-home-nav__login,
.main-nav a,
.header-link,
.workspace-link {
  border-radius: var(--tc-radius-md);
  min-width: max-content;
  overflow-wrap: normal;
  word-break: normal;
  white-space: nowrap;
  transition: background-color .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}

.tc-home-nav__links {
  gap: clamp(10px, 1.25vw, 18px);
  margin-left: clamp(14px, 2vw, 28px);
}

.tc-home-nav__panel {
  gap: clamp(14px, 1.8vw, 24px);
}

.tc-home-button,
.btn,
button.btn,
.header-register-cta,
.language-select,
.nav-toggle,
.tc-home-nav__toggle {
  overflow-wrap: normal;
  word-break: normal;
}

.tc-home-nav__links a:hover,
.tc-home-nav__login:hover,
.main-nav a:hover,
.header-link:hover,
.workspace-link:hover {
  background: rgba(255, 255, 255, .1);
  color: #ffffff;
}

.tc-home-nav__links a.is-active,
.tc-home-nav__login.is-active,
.main-nav a.is-active,
.workspace-link--active {
  border-color: rgba(45, 212, 191, .34);
  background: rgba(45, 212, 191, .13);
  color: #ffffff;
}

.tc-home-nav .language-select,
.site-header .language-select,
.nav-toggle,
.tc-home-nav__toggle,
.site-header .identity-chip {
  border-color: rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .08);
  box-shadow: none;
}

.tc-home-nav select.language-select option,
.site-header select.language-select option {
  color: var(--tc-text);
  background: var(--tc-surface);
}

.site-header .identity-chip {
  color: var(--tc-text-inverse-muted);
}

.site-header .identity-chip__label {
  color: #ffffff;
}

/* Buttons */
.btn,
button.btn,
.tc-home-button,
.header-register-cta {
  border-radius: var(--tc-radius-md);
  font-weight: 750;
  letter-spacing: 0;
}

.btn,
button.btn,
.tc-home-button--primary,
.header-register-cta {
  border: 1px solid color-mix(in srgb, var(--tc-primary) 48%, #ffffff);
  background: linear-gradient(135deg, var(--tc-primary), var(--tc-secondary));
  color: var(--tc-navy-950);
  box-shadow: 0 16px 34px rgba(45, 212, 191, .22);
}

.btn:hover,
button.btn:hover,
.tc-home-button--primary:hover,
.header-register-cta:hover {
  border-color: var(--tc-primary);
  background: linear-gradient(135deg, var(--tc-primary-strong), var(--tc-secondary));
  color: var(--tc-navy-950);
  box-shadow: 0 20px 44px rgba(45, 212, 191, .28);
  transform: translateY(-1px);
}

.btn-quiet,
button.btn-quiet,
.tc-home-button--ghost {
  border: 1px solid var(--tc-border);
  background: rgba(255, 255, 255, .82);
  color: var(--tc-text);
  box-shadow: none;
}

.btn-quiet:hover,
button.btn-quiet:hover,
.tc-home-button--ghost:hover {
  border-color: var(--tc-border-strong);
  background: var(--tc-surface-soft);
  color: var(--tc-navy-900);
  box-shadow: none;
}

.tc-home-button--disabled,
.btn[disabled],
button[disabled],
.is-disabled {
  cursor: not-allowed;
  opacity: .55;
  transform: none;
}

/* Hero surfaces */
.tc-public-page .page-hero:not(.page-hero--blog),
.hero-shell,
.tc-price-hero,
.tc-status-hero,
.tc-mission-hero,
.tc-onboarding-hero,
.pine-alt-hero,
.auth-panel,
.cta-strip {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--tc-border-inverse);
  border-radius: var(--tc-radius-xl);
  background:
    linear-gradient(to right, rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900) 58%, var(--tc-navy-800));
  background-size: 58px 58px, 58px 58px, auto;
  color: var(--tc-text-inverse);
  box-shadow: var(--tc-shadow-lg);
}

.tc-public-page .page-hero--blog {
  border: 1px solid var(--tc-border-inverse);
  border-radius: var(--tc-radius-xl);
  background:
    linear-gradient(to right, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.038) 1px, transparent 1px),
    linear-gradient(90deg, rgba(7,20,33,.98) 0%, rgba(7,20,33,.95) 48%, rgba(7,20,33,.78) 100%),
    url("/images/marketing/dashboard-preview.png") right 6% center / min(54vw, 720px) auto no-repeat,
    linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900));
  background-size: 58px 58px, 58px 58px, auto, auto, auto;
  color: var(--tc-text-inverse);
  box-shadow: var(--tc-shadow-lg);
}

.tc-public-page .pine-alt-hero {
  border-color: var(--tc-border-inverse);
  background:
    linear-gradient(to right, rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900) 58%, var(--tc-navy-800));
  background-size: 58px 58px, 58px 58px, auto;
  color: var(--tc-text-inverse);
  box-shadow: var(--tc-shadow-lg);
}

.tc-public-page .pine-alt-hero :where(h1, h2, h3),
.tc-public-page .pine-alt-hero h1 span {
  color: #ffffff;
}

.tc-public-page .pine-alt-hero__disclaimer {
  border-left-color: rgba(45, 212, 191, .55);
  color: var(--tc-text-inverse-muted);
}

.tc-mission-hero {
  background:
    linear-gradient(90deg, rgba(7,20,33,.98) 0%, rgba(7,20,33,.94) 48%, rgba(7,20,33,.70) 100%),
    url("/images/marketing/dashboard-preview.png") right 6% center / min(55vw, 760px) auto no-repeat,
    linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900));
}

.tc-public-page .page-hero:not(.page-hero--blog)::before,
.hero-shell::before,
.tc-price-hero::before,
.tc-status-hero::before,
.tc-mission-hero::before,
.tc-onboarding-hero::before,
.pine-alt-hero::before,
.cta-strip::before {
  opacity: .22;
}

.tc-public-page .page-hero:not(.page-hero--blog) :where(h1, h2, h3),
.hero-shell :where(h1, h2, h3),
.tc-price-hero :where(h1, h2, h3),
.tc-status-hero :where(h1, h2, h3),
.tc-mission-hero :where(h1, h2, h3),
.tc-onboarding-hero :where(h1, h2, h3),
.pine-alt-hero :where(h1, h2, h3),
.auth-panel :where(h1, h2, h3),
.cta-strip :where(h1, h2, h3) {
  color: #ffffff;
}

.tc-public-page .page-hero:not(.page-hero--blog) :where(p, li),
.hero-shell :where(p, li),
.tc-price-hero :where(p, li),
.tc-status-hero :where(p, li),
.tc-mission-hero :where(p, li),
.tc-onboarding-hero :where(p, li),
.pine-alt-hero :where(p, li),
.auth-panel :where(p, li),
.cta-strip :where(p, li) {
  color: var(--tc-text-inverse-muted);
}

.tc-price-hero__copy p,
.tc-status-hero__copy p,
.tc-mission-hero__subtitle,
.tc-mission-hero__body,
.tc-onboarding-hero p,
.tc-public-page .pine-alt-hero p,
.tc-public-page .page-hero:not(.page-hero--blog) .page-hero__content p {
  color: var(--tc-text-inverse-muted);
  opacity: 1;
}

.tc-public-page .page-hero--blog h1 {
  color: #ffffff;
}

.tc-public-page .page-hero--blog p,
.tc-public-page .page-hero--blog .blog-post-meta,
.tc-public-page .page-hero--blog .status-meta {
  color: var(--tc-text-inverse-muted);
}

.tc-public-page .page-hero--blog .eyebrow {
  color: var(--tc-primary);
}

.tc-public-page .page-hero:not(.page-hero--blog) .eyebrow,
.hero-shell .eyebrow,
.tc-price-hero .eyebrow,
.tc-status-hero .eyebrow,
.tc-mission-hero .eyebrow,
.tc-onboarding-hero .eyebrow,
.pine-alt-hero .eyebrow,
.auth-panel .eyebrow,
.cta-strip .eyebrow {
  color: var(--tc-primary);
}

.tc-public-page .page-hero:not(.page-hero--blog) .btn-quiet,
.hero-shell .btn-quiet,
.tc-price-hero .btn-quiet,
.tc-status-hero .btn-quiet,
.tc-mission-hero .tc-home-button--ghost,
.tc-onboarding-hero .tc-home-button--ghost,
.pine-alt-hero .btn-quiet,
.auth-panel .btn-quiet,
.cta-strip .btn-quiet {
  border-color: rgba(255, 255, 255, .24);
  background: rgba(255, 255, 255, .08);
  color: var(--tc-text-inverse);
}

.tc-public-page .page-hero:not(.page-hero--blog) .btn-quiet:hover,
.hero-shell .btn-quiet:hover,
.tc-price-hero .btn-quiet:hover,
.tc-status-hero .btn-quiet:hover,
.tc-mission-hero .tc-home-button--ghost:hover,
.tc-onboarding-hero .tc-home-button--ghost:hover,
.pine-alt-hero .btn-quiet:hover,
.auth-panel .btn-quiet:hover,
.cta-strip .btn-quiet:hover {
  background: rgba(255, 255, 255, .15);
  color: #ffffff;
}

.auth-layout .auth-panel > p,
.auth-layout .auth-panel .auth-panel__lead {
  color: var(--tc-text-inverse-muted);
  opacity: 1;
}

.tc-public-auth-body .auth-layout .auth-panel > p,
.tc-public-auth-body .auth-layout .auth-panel .auth-panel__lead {
  color: var(--tc-text-muted);
}

.auth-panel :where(.auth-card, form, .form-grid, .field-grid) .btn-quiet,
.auth-panel :where(.auth-card, form, .form-grid, .field-grid) button.btn-quiet {
  border-color: var(--tc-border);
  background: var(--tc-surface);
  color: var(--tc-text);
}

.auth-panel :where(.auth-card, form, .form-grid, .field-grid) .btn-quiet:hover,
.auth-panel :where(.auth-card, form, .form-grid, .field-grid) button.btn-quiet:hover {
  border-color: var(--tc-border-strong);
  background: var(--tc-surface-soft);
  color: var(--tc-navy-950);
}

.tc-mission-panel,
.hero-panel,
.hero-panel--compact,
.page-hero__aside,
.tc-price-hero__panel,
.tc-status-global,
.pine-alt-product-shot,
.pine-alt-flow__node,
.analytics-hero__panel {
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: var(--tc-radius-lg);
  background: rgba(255, 255, 255, .96);
  color: var(--tc-text);
  box-shadow: 0 22px 52px rgba(0, 0, 0, .22);
}

.tc-mission-panel :where(h2, h3, strong),
.hero-panel :where(h2, h3, strong),
.hero-panel--compact :where(h2, h3, strong),
.page-hero__aside :where(h2, h3, strong),
.tc-price-hero__panel :where(h2, h3, strong),
.tc-status-global :where(h2, h3, strong),
.pine-alt-product-shot :where(h2, h3, strong),
.pine-alt-flow__node :where(h2, h3, strong),
.analytics-hero__panel :where(h2, h3, strong) {
  color: var(--tc-text);
}

.tc-mission-panel :where(p, span, small, li),
.hero-panel :where(p, span, small, li),
.hero-panel--compact :where(p, span, small, li),
.page-hero__aside :where(p, span, small, li),
.tc-price-hero__panel :where(p, span, small, li),
.tc-status-global :where(p, span, small, li),
.pine-alt-product-shot :where(p, span, small, li),
.pine-alt-flow__node :where(p, span, small, li),
.analytics-hero__panel :where(p, span, small, li) {
  color: var(--tc-text-muted);
}

/* Public sections */
.tc-mission-section,
.tc-mission-product,
.tc-mission-quickflow,
.tc-price-section,
.tc-price-compare,
.tc-price-faq,
.tc-status-section,
.docs-shell,
.dashboard-grid,
.contact-layout,
.blog-index-section,
.pine-alt-proof-grid,
.pine-alt-matrix {
  color: var(--tc-text);
}

.tc-mission-section--paper,
.tc-price-compare,
.tc-status-section--services {
  background: rgba(255, 255, 255, .34);
}

.tc-mission-section--ink,
.section-block--contrast,
.surface-card--contrast,
.tc-mission-final,
.tc-price-enterprise,
.cta-strip {
  border-color: var(--tc-border-inverse);
  background:
    linear-gradient(to right, rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900) 62%, var(--tc-navy-800));
  background-size: 56px 56px, 56px 56px, auto;
  color: var(--tc-text-inverse);
}

.tc-mission-section--ink :where(h1, h2, h3, p, li, span, strong, .eyebrow),
.section-block--contrast :where(h1, h2, h3, p, li, span, strong, .eyebrow),
.surface-card--contrast :where(h1, h2, h3, p, li, span, strong, .eyebrow),
.tc-mission-final :where(h1, h2, h3, p, li, span, strong, .eyebrow),
.tc-price-enterprise :where(h1, h2, h3, p, li, span, strong, .eyebrow),
.cta-strip :where(h1, h2, h3, p, li, span, strong, .eyebrow) {
  color: inherit;
}

/* Cards and common panels */
:where(.surface-card, .feature-card, .pricing-card, .auth-card, .doc-row, .stack-item, .status-row, .thread-entry, .metric-chip, .mini-metric, .analytics-panel, .analytics-surface, .analytics-kpi-card, .orders-panel, .copy-pair-card, .mapping-workbench, .managed-client-card, .tickets-sidebar, .tickets-thread, .tickets-compose, .admin-docs-editor, .admin-docs-preview, .dashboard-overview, .tc-onboarding-tool__panel, .tc-onboarding-output, .tc-onboarding-reality, .tc-onboarding-runbook, .pine-alt-proof-card, .pine-alt-matrix, .tc-mission-card, .tc-mission-story-card, .tc-mission-quickflow__card, .tc-mission-trust-card, .tc-home-faq-item, .blog-featured-card, .blog-list-card, .tc-price-plan, .tc-price-enterprise__metric, .tc-status-kpi, .tc-status-latency-card, .tc-status-group, .tc-status-service, .tc-contact-form-card, .tc-aside-card, .tc-contact-hero-card, .docs-sidebar, .docs-article, .docs-toc, .docs-link-card, .surface-inline) {
  border-color: var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background: var(--tc-surface);
  color: var(--tc-text);
  box-shadow: var(--tc-shadow-sm);
}

:where(.surface-card, .feature-card, .pricing-card, .auth-card, .doc-row, .stack-item, .status-row, .analytics-panel, .analytics-surface, .orders-panel, .copy-pair-card, .mapping-workbench, .managed-client-card, .tc-mission-card, .tc-mission-story-card, .blog-featured-card, .blog-list-card, .tc-price-plan, .tc-home-faq-item, .docs-link-card):hover {
  border-color: color-mix(in srgb, var(--tc-primary) 38%, var(--tc-border));
  box-shadow: var(--tc-shadow-md);
}

:where(.surface-card, .feature-card, .pricing-card, .auth-card, .doc-row, .stack-item, .status-row, .thread-entry, .metric-chip, .mini-metric, .analytics-panel, .analytics-surface, .analytics-kpi-card, .orders-panel, .copy-pair-card, .mapping-workbench, .managed-client-card, .tickets-sidebar, .tickets-thread, .tickets-compose, .tc-onboarding-tool__panel, .tc-onboarding-output, .tc-onboarding-reality, .tc-onboarding-runbook, .pine-alt-proof-card, .pine-alt-matrix, .tc-mission-card, .tc-mission-story-card, .tc-mission-quickflow__card, .tc-mission-trust-card, .tc-home-faq-item, .blog-featured-card, .blog-list-card, .tc-price-plan, .tc-price-enterprise__metric, .tc-status-kpi, .tc-status-latency-card, .tc-status-group, .tc-status-service, .docs-sidebar, .docs-article, .docs-toc, .docs-link-card, .surface-inline) :where(p, li, dd, small) {
  color: var(--tc-text-muted);
}

.tc-mission-trust-card,
.tc-mission-section--ink :where(.tc-mission-card, .tc-mission-trust-card),
.section-block--contrast :where(.feature-card, .pricing-card, .surface-card) {
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .08);
  color: var(--tc-text-inverse);
}

.tc-mission-trust-card :where(h3, p),
.tc-mission-section--ink :where(.tc-mission-card, .tc-mission-trust-card) :where(h3, p, li),
.section-block--contrast :where(.feature-card, .pricing-card, .surface-card) :where(h3, p, li) {
  color: inherit;
}

/* Pricing */
.tc-price-plan--featured {
  border-color: color-mix(in srgb, var(--tc-primary) 62%, var(--tc-border));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--tc-primary) 8%, white), var(--tc-surface));
  color: var(--tc-text);
  box-shadow: 0 22px 58px rgba(45, 212, 191, .16);
}

.tc-price-plan--featured :where(h1, h2, h3, p, li, span, strong, div) {
  color: inherit;
  opacity: 1;
}

.tc-price-plan--featured :where(.tc-price-plan__tag, .tc-price-plan__term, .tc-price-plan__note, li) {
  color: var(--tc-text-soft);
}

.tc-price-plan--featured .tc-price-plan__name,
.tc-price-plan--featured .tc-price-plan__price {
  color: var(--tc-text);
}

.tc-price-plan--featured .tc-home-button--disabled {
  border-color: var(--tc-border);
  background: var(--tc-bg-section);
  color: var(--tc-text-soft);
  opacity: 1;
  box-shadow: none;
}

.tc-price-plan__badge,
.pricing-page__featured-badge {
  background: var(--tc-primary);
  color: var(--tc-navy-950);
}

.tc-price-plan__tag,
.tc-mission-plan__tag,
.tc-mission-plan__status {
  color: var(--tc-info);
}

.tc-price-plan__price,
.tc-mission-plan__price strong {
  color: var(--tc-text);
  font-variant-numeric: tabular-nums;
}

.tc-price-table-wrap,
.pricing-page__compare-scroll {
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background: var(--tc-surface);
  box-shadow: var(--tc-shadow-sm);
}

.tc-price-table,
.pricing-page__compare-table,
table {
  color: var(--tc-text);
}

.tc-price-table th,
.tc-price-table td,
.pricing-page__compare-table th,
.pricing-page__compare-table td,
th,
td {
  border-color: var(--tc-border);
}

.tc-price-table thead th,
.pricing-page__compare-table thead th,
th {
  color: var(--tc-text-muted);
  background: var(--tc-surface-soft);
}

td {
  color: var(--tc-text-soft);
}

/* Forms */
input:not([type="radio"]):not([type="checkbox"]),
select,
textarea,
.language-select {
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-md);
  background: var(--tc-surface);
  color: var(--tc-text);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .86);
}

input::placeholder,
textarea::placeholder {
  color: var(--tc-text-subtle);
}

input:not([type="radio"]):not([type="checkbox"]):focus,
select:focus,
textarea:focus,
.language-select:focus {
  border-color: color-mix(in srgb, var(--tc-primary) 56%, var(--tc-border));
  outline: 2px solid var(--tc-focus);
  outline-offset: 2px;
}

.field-validation-error,
.validation-summary-errors,
.text-danger {
  color: var(--tc-error);
}

/* Status and badges */
.status-pill,
.tc-home-chip,
.hero-badge,
.workspace-link__plan-badge,
.tc-status-chip,
.tc-mission-panel__tag,
.tc-mission-proof-row span,
.blog-topic-strip span,
.blog-card__tags span,
.blog-list-card__meta span,
.tc-mission-flow-platforms span,
.pine-alt-flow__node span,
.pine-alt-proof-card span {
  border: 1px solid color-mix(in srgb, var(--tc-primary) 22%, var(--tc-border));
  border-radius: var(--tc-radius-pill);
  background: color-mix(in srgb, var(--tc-primary) 12%, white);
  color: var(--tc-navy-900);
  font-family: var(--tc-font-mono);
}

.status-pill--healthy,
.status-pill--connected,
.status-pill--live,
.status-pill--success,
.tc-home-chip--ok,
.tc-status-chip--healthy {
  border-color: color-mix(in srgb, var(--tc-success) 28%, var(--tc-border));
  background: var(--tc-success-bg);
  color: var(--tc-success);
}

.status-pill--warning,
.status-pill--standby,
.status-pill--protected,
.tc-status-chip--degraded,
.tc-status-chip--warning {
  border-color: color-mix(in srgb, var(--tc-warning) 32%, var(--tc-border));
  background: var(--tc-warning-bg);
  color: var(--tc-warning);
}

.status-pill--danger,
.status-pill--error,
.status-pill--rejected,
.tc-status-chip--outage,
.tc-status-chip--error {
  border-color: color-mix(in srgb, var(--tc-error) 30%, var(--tc-border));
  background: var(--tc-error-bg);
  color: var(--tc-error);
}

.status-pill--info,
.status-pill--new,
.tc-status-chip--info {
  border-color: color-mix(in srgb, var(--tc-info) 30%, var(--tc-border));
  background: var(--tc-info-bg);
  color: var(--tc-info);
}

.notice-banner {
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background: var(--tc-info-bg);
  color: var(--tc-info);
}

.notice-banner--success {
  background: var(--tc-success-bg);
  color: var(--tc-success);
}

.notice-banner--warning {
  background: var(--tc-warning-bg);
  color: var(--tc-warning);
}

.notice-banner--error,
.notice-banner--danger {
  background: var(--tc-error-bg);
  color: var(--tc-error);
}

/* Docs, code and workflow visuals */
.docs-code,
.simulation-code,
.simulation-preview,
pre {
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: var(--tc-radius-lg);
  background:
    linear-gradient(to right, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(180deg, var(--tc-navy-950), var(--tc-navy-900));
  background-size: 42px 42px, 42px 42px, auto;
  color: #e6fffb;
}

.docs-code code,
.simulation-code code,
pre code {
  color: inherit;
}

.docs-quote {
  border-left-color: var(--tc-primary);
  background: color-mix(in srgb, var(--tc-primary) 9%, white);
  color: var(--tc-text-soft);
}

.tc-mission-flow-link::before,
.tc-mission-flow-link::after,
.pine-alt-flow__node:not(:last-child)::after {
  border-color: var(--tc-primary);
  background: var(--tc-primary);
}

.tc-mission-flow-hub {
  border-color: color-mix(in srgb, var(--tc-primary) 44%, var(--tc-border));
}

/* Dashboard shell parity */
.body--dashboard {
  background:
    linear-gradient(180deg, var(--tc-navy-950) 0, var(--tc-navy-900) 182px, transparent 182px),
    var(--tc-bg-page);
}

.body--dashboard .site-header {
  top: 0;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}

.body--dashboard .workspace-nav,
.page-content--dashboard .tc-dashboard-sidebar {
  border-color: var(--tc-border);
  background: rgba(255, 255, 255, .96);
  box-shadow: var(--tc-shadow-sm);
}

.page-content--dashboard .tc-dashboard-sidebar__link,
.body--dashboard .workspace-link {
  color: var(--tc-text-soft);
}

.page-content--dashboard .tc-dashboard-sidebar__link.is-active,
.body--dashboard .workspace-link--active {
  border-color: color-mix(in srgb, var(--tc-primary) 42%, var(--tc-border));
  background: color-mix(in srgb, var(--tc-primary) 12%, white);
  color: var(--tc-navy-950);
  box-shadow: inset 3px 0 0 var(--tc-primary);
}

.analytics-toggle .btn {
  background: var(--tc-surface);
  color: var(--tc-text);
}

.analytics-toggle .btn.is-active {
  border-color: var(--tc-primary);
  background: color-mix(in srgb, var(--tc-primary) 16%, white);
  color: var(--tc-navy-950);
}

.order-card__side--buy,
.order-card__metric-value--success,
.analytics-calendar-day--gain strong {
  color: var(--tc-success);
}

.order-card__side--sell,
.order-card__metric-value--danger,
.analytics-calendar-day--loss strong {
  color: var(--tc-error);
}

/* Footer */
.tc-home-footer.tc-common-footer,
.site-footer {
  border-top: 1px solid var(--tc-border-inverse);
  background:
    linear-gradient(to right, rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900) 60%, var(--tc-navy-800));
  background-size: 56px 56px, 56px 56px, auto;
  color: var(--tc-text-inverse);
}

.tc-home-footer.tc-common-footer :where(.tc-home-brand__text, .tc-home-footer__heading, strong),
.site-footer :where(strong, h2, h3) {
  color: #ffffff;
}

.tc-home-footer.tc-common-footer :where(a, p, span, li, .tc-home-brand__domain),
.site-footer :where(a, p, span, li) {
  color: var(--tc-text-inverse-muted);
}

.tc-home-footer.tc-common-footer a:hover,
.site-footer a:hover {
  color: #ffffff;
}

.tc-home-footer.tc-common-footer .tc-home-chip {
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .07);
  color: var(--tc-text-inverse);
}

.tc-home-footer.tc-common-footer .tc-home-footer__meta {
  border-top-color: rgba(255, 255, 255, .12);
}

/* Responsive and overflow safety */
:where(.surface-card, .feature-card, .pricing-card, .auth-card, .doc-row, .stack-item, .status-row, .thread-entry, .metric-chip, .mini-metric, .tc-price-plan, .tc-mission-card, .tc-mission-story-card, .tc-mission-feature, .tc-mission-trust-card, .tc-home-faq-item, .docs-sidebar, .docs-article, .docs-toc) {
  min-width: 0;
}

:where(h1, h2, h3, h4, p, span, strong, small, td, th, label) {
  overflow-wrap: break-word;
}

:where(.docs-article, .legal-layout, .legal-card, .content-card, .support-card, .tc-public-page main) a {
  overflow-wrap: anywhere;
}

:where(.tc-home-nav__links a, .tc-home-nav__login, .main-nav a, .workspace-link, .btn, .tc-home-button, button) {
  overflow-wrap: normal;
}

@media (min-width: 861px) {
  .tc-home-nav__inner,
  .site-header {
    min-height: 66px;
  }
}

@media (max-width: 1100px) {
  .tc-mission-hero {
    background:
      linear-gradient(135deg, rgba(7,20,33,.98), rgba(11,30,51,.96)),
      var(--tc-navy-950);
  }
}

@media (max-width: 860px) {
  html,
  body,
  .shell,
  .tc-public-page,
  .tc-home-page,
  .body--dashboard {
    max-width: 100%;
    overflow-x: clip;
  }

  .container {
    width: min(100% - 32px, var(--tc-frame));
  }

  .tc-home-nav,
  .site-header {
    top: 0;
    width: 100%;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .tc-public-page .page-hero,
  .hero-shell,
  .tc-price-hero,
  .tc-status-hero,
  .tc-mission-hero,
  .tc-onboarding-hero,
  .pine-alt-hero,
  .auth-panel,
  .cta-strip {
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .tc-public-page .page-hero--blog {
    background:
      linear-gradient(to right, rgba(255,255,255,.045) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,.038) 1px, transparent 1px),
      linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900) 62%, var(--tc-navy-800));
    background-size: 58px 58px, 58px 58px, auto;
  }

  .tc-public-page .page-hero h1,
  .tc-public-page .page-hero h2,
  .tc-price-hero h1,
  .tc-status-hero h1,
  .tc-mission-hero h1,
  .tc-onboarding-hero h1,
  .pine-alt-hero h1,
  .auth-panel h1 {
    font-size: clamp(2rem, 9vw, 3rem);
    line-height: 1.04;
    letter-spacing: 0;
  }

  .hero-actions,
  .tc-mission-actions,
  .tc-price-plan__button,
  .tc-form-footer {
    align-items: stretch;
  }

  .hero-actions :where(.btn, .tc-home-button),
  .tc-mission-actions .tc-home-button,
  .tc-form-footer .btn {
    width: 100%;
    justify-content: center;
  }

  .tc-home-nav__panel,
  .site-header__panel {
    background: transparent;
  }

  .tc-home-nav__links a,
  .tc-home-nav__login,
  .main-nav a,
  .header-link,
  .tc-home-nav .language-select,
  .site-header .language-select,
  .tc-home-nav__panel > .tc-home-button,
  .header-actions .btn {
    min-height: 44px;
    min-width: 0;
    white-space: normal;
  }

  .body--dashboard {
    background:
      linear-gradient(180deg, var(--tc-navy-950) 0, var(--tc-navy-900) 132px, transparent 132px),
      var(--tc-bg-page);
  }
}

/* PublicSite visual audit corrections */
.tc-public-page :where(.doc-row__category, .docs-link-card__label, .tc-field-label, .tc-price-plan__tag, .tc-price-enterprise__eyebrow, .blog-list-card__meta span, .privacy-updated-meta) {
  color: #0b7f78;
}

.tc-public-page :where(.feature-card__accent, .workspace-link__plan-badge) {
  border-color: color-mix(in srgb, var(--tc-primary) 28%, var(--tc-border));
  background: color-mix(in srgb, var(--tc-primary) 12%, white);
  color: #0b7f78;
}

.tc-public-page .tc-price-plan--featured {
  border-color: color-mix(in srgb, var(--tc-primary) 48%, var(--tc-border));
  border-top: 4px solid var(--tc-primary);
  background: linear-gradient(180deg, #ffffff 0%, #f7fbfd 100%);
  box-shadow: 0 20px 54px rgba(7, 20, 33, .12);
}

.tc-public-page .tc-price-plan__badge,
.tc-public-page .pricing-page__featured-badge {
  background: var(--tc-navy-900);
  color: var(--tc-text-inverse);
}

.tc-public-page .tc-price-plan__features li::before,
.tc-public-page .home-v2-checklist li::before {
  background: var(--tc-primary-strong);
}

.tc-public-page .tc-price-plan--featured :where(.tc-price-plan__tag, .tc-price-plan__term, .tc-price-plan__note) {
  color: var(--tc-text-muted);
}

.tc-public-page :where(.surface-card, .tc-price-plan, .tc-contact-form-card, .tc-aside-card, .docs-sidebar, .docs-article, .docs-toc, .blog-featured-card, .blog-list-card, .tc-onboarding-reality, .tc-onboarding-tool__panel, .tc-onboarding-output, .tc-onboarding-validator, .tc-status-kpi, .tc-status-latency-card, .tc-status-group, .tc-status-service) .eyebrow {
  color: var(--tc-primary-strong);
}

.tc-public-page :where(.tc-status-global, .tc-price-hero__panel, .page-hero__aside) .eyebrow,
.tc-public-page .tc-contact-hero-card :where(.eyebrow, strong) {
  color: var(--tc-primary-strong);
}

.tc-public-page .tc-price-enterprise .tc-price-enterprise__metric {
  padding: 18px 20px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: var(--tc-radius-md);
  background: rgba(255, 255, 255, .08);
  color: var(--tc-text-inverse);
  box-shadow: none;
}

.tc-public-page .tc-price-enterprise .tc-price-enterprise__metric strong {
  color: #ffffff;
}

.tc-public-page .tc-price-enterprise .tc-price-enterprise__metric span {
  color: var(--tc-text-inverse-muted);
}

.tc-public-page .tc-price-enterprise .tc-home-button--primary {
  box-shadow: 0 16px 34px rgba(40, 198, 186, .22);
}

.tc-public-page .tc-onboarding-hero .tc-onboarding-runbook {
  border-color: rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .96);
  color: var(--tc-text);
  box-shadow: 0 22px 52px rgba(0, 0, 0, .22);
}

.tc-public-page .tc-onboarding-hero .tc-onboarding-runbook strong {
  color: var(--tc-text);
}

.tc-public-page .tc-onboarding-hero .tc-onboarding-runbook :where(ol, li, p, span) {
  color: var(--tc-text-muted);
}

.tc-public-page .tc-onboarding-hero .tc-onboarding-runbook li::marker {
  color: var(--tc-primary-strong);
}

.tc-public-page .tc-onboarding-reality,
.tc-public-page .tc-onboarding-tool__panel,
.tc-public-page .tc-onboarding-output,
.tc-public-page .tc-onboarding-validator,
.tc-public-page .tc-onboarding-code-grid article,
.tc-public-page .tc-onboarding-visual-grid article {
  border-color: var(--tc-border);
  background: var(--tc-surface);
  color: var(--tc-text);
  box-shadow: var(--tc-shadow-sm);
}

.tc-public-page .tc-onboarding-validator {
  background: color-mix(in srgb, var(--tc-accent) 8%, var(--tc-surface));
}

.tc-public-page :where(.tc-onboarding-output, .tc-onboarding-code-grid) pre,
.tc-public-page :where(.docs-code, .simulation-code, .simulation-preview),
.tc-public-page .prose-block pre {
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: var(--tc-radius-md);
  background:
    linear-gradient(to right, rgba(255, 255, 255, .045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .035) 1px, transparent 1px),
    linear-gradient(180deg, var(--tc-navy-950), var(--tc-navy-900));
  background-size: 42px 42px, 42px 42px, auto;
  color: #e7fffb;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}

.tc-public-page :where(.tc-onboarding-output, .tc-onboarding-code-grid) pre code,
.tc-public-page :where(.docs-code, .simulation-code, .simulation-preview) code,
.tc-public-page .prose-block pre code {
  color: #e7fffb;
}

.tc-public-page :where(.prose-block code, .surface-inline code, .token-grid code, .tc-onboarding-contract__row code) {
  border: 1px solid color-mix(in srgb, var(--tc-primary) 18%, var(--tc-border));
  border-radius: var(--tc-radius-sm);
  background: color-mix(in srgb, var(--tc-primary) 8%, white);
  color: #0b6f69;
}

.tc-public-page .tc-price-faq__question,
.tc-public-page .tc-home-faq-item summary {
  color: var(--tc-text);
}

@media (max-width: 640px) {
  .tc-public-page .tc-price-enterprise .tc-price-enterprise__metric {
    padding: 16px;
  }

  .tc-public-page :where(.tc-onboarding-output, .tc-onboarding-code-grid) pre,
  .tc-public-page :where(.docs-code, .simulation-code, .simulation-preview) {
    font-size: 12px;
  }
}

@media (max-width: 640px) {
  .container {
    width: min(100% - 28px, var(--tc-frame));
  }

  :where(.surface-card, .feature-card, .pricing-card, .auth-card, .doc-row, .stack-item, .status-row, .thread-entry, .metric-chip, .mini-metric, .tc-price-plan, .tc-mission-card, .tc-mission-story-card, .tc-mission-feature, .tc-mission-trust-card, .tc-home-faq-item, .docs-sidebar, .docs-article, .docs-toc) {
    border-radius: var(--tc-radius-md);
    box-shadow: 0 10px 26px rgba(7, 20, 33, .08);
  }

  .tc-price-table,
  .pricing-page__compare-table {
    min-width: 680px;
  }
}

/* Cross-host coherence overrides.
   This final layer intentionally neutralizes legacy per-host visual drift. */
.shell > .site-header,
.shell > .tc-home-nav {
  position: sticky;
  top: 12px;
  width: min(100% - 24px, var(--tc-frame));
  margin: 12px auto 0;
  border: 1px solid var(--tc-border-inverse);
  border-radius: var(--tc-radius-xl);
}

.body--dashboard .site-header,
.body--admin-dashboard .site-header {
  top: 12px;
  width: min(100% - 24px, var(--tc-frame));
  margin: 12px auto 0;
  border: 1px solid var(--tc-border-inverse);
  border-radius: var(--tc-radius-xl);
}

.site-header__bar,
.tc-home-nav__bar,
.site-header__panel,
.tc-home-nav__panel {
  min-height: 64px;
}

.brandmark__text,
.tc-home-brand__text {
  color: var(--tc-text-inverse);
  font-weight: 760;
  letter-spacing: 0;
  text-transform: none;
}

.site-header .brandmark__text::after {
  content: ".fr";
  color: var(--tc-primary);
}

.main-nav,
.tc-home-nav__links {
  align-items: center;
}

.main-nav a,
.tc-home-nav__links a,
.header-link,
.tc-home-nav__login {
  color: var(--tc-text-inverse-muted);
  font-size: .94rem;
  font-weight: 690;
}

.main-nav a:hover,
.tc-home-nav__links a:hover,
.header-link:hover,
.tc-home-nav__login:hover {
  color: #ffffff;
}

.auth-layout {
  width: min(760px, calc(100% - (var(--tc-page-gutter) * 2)));
  margin: clamp(54px, 7vw, 92px) auto clamp(70px, 9vw, 120px);
  padding: 0;
}

.auth-layout .auth-panel {
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-xl);
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.96)),
    var(--tc-surface);
  color: var(--tc-text);
  box-shadow: var(--tc-shadow-md);
}

.auth-layout .auth-panel :where(h1, h2, h3) {
  color: var(--tc-text);
  text-shadow: none;
}

.auth-layout .auth-panel h1 {
  font-size: clamp(2rem, 3.2vw, 2.75rem);
  line-height: 1.08;
}

.auth-layout .auth-panel > p,
.auth-layout .auth-panel :where(p, li) {
  color: var(--tc-text-muted);
}

.auth-layout .auth-panel .eyebrow {
  color: var(--tc-primary-strong);
}

.auth-layout .auth-panel .doc-row,
.auth-layout .auth-panel .field-grid,
.auth-layout .auth-panel .form-grid {
  border-color: var(--tc-border);
}

.auth-layout .auth-panel .btn-quiet,
.auth-layout .auth-panel button.btn-quiet {
  border-color: var(--tc-border);
  background: var(--tc-surface);
  color: var(--tc-text);
}

.auth-layout .auth-panel .btn-quiet:hover,
.auth-layout .auth-panel button.btn-quiet:hover {
  border-color: var(--tc-border-strong);
  background: var(--tc-surface-soft);
  color: var(--tc-navy-950);
}

:where(h1, h2, h3) em {
  color: var(--tc-primary);
  font-family: inherit;
  font-style: normal;
  font-weight: 740;
}

.tc-home-hero h1,
.tc-price-hero h1,
.tc-status-hero h1,
.tc-contact-hero h1,
.tc-mission-hero h1,
.tc-onboarding-hero h1,
.pine-alt-hero h1,
.page-hero h1,
.auth-panel h1 {
  letter-spacing: 0;
  line-height: 1.04;
}

.tc-home-hero h1,
.tc-price-hero h1 {
  font-size: clamp(2.55rem, 4.9vw, 4.55rem);
}

.tc-price-hero__copy h1 {
  max-width: 14.5ch;
  font-size: clamp(2.25rem, 3.6vw, 3.9rem);
}

.tc-price-hero__copy h1 em,
.tc-status-hero__copy h1 em,
.tc-public-page .page-hero h1 em,
.tc-public-page .page-hero h2 em {
  color: var(--tc-primary);
  font-family: inherit;
  font-style: normal;
  font-weight: 740;
}

.tc-home-hero p,
.tc-price-hero p,
.tc-status-hero p,
.tc-contact-hero p,
.tc-mission-hero p,
.tc-onboarding-hero p,
.pine-alt-hero p,
.page-hero p {
  font-size: clamp(1rem, 1.25vw, 1.15rem);
  line-height: 1.68;
}

.tc-price-plan,
.pricing-card,
.surface-card,
.doc-row,
.docs-article,
.docs-sidebar,
.tc-home-faq-item,
.tc-contact-form-card,
.tc-aside-card,
.auth-panel {
  box-shadow: var(--tc-shadow-sm);
}

.tc-price-plan:hover,
.pricing-card:hover,
.surface-card:hover,
.doc-row:hover,
.docs-article:hover,
.docs-sidebar:hover,
.tc-home-faq-item:hover,
.tc-contact-form-card:hover,
.tc-aside-card:hover {
  box-shadow: var(--tc-shadow-md);
}

@media (max-width: 860px) {
  .shell > .site-header,
  .shell > .tc-home-nav,
  .body--dashboard .site-header,
  .body--admin-dashboard .site-header {
    top: 0;
    width: 100%;
    margin: 0;
    border-top: 0;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .auth-layout {
    width: min(100% - 32px, 680px);
    margin: clamp(50px, 12vw, 86px) auto clamp(56px, 12vw, 92px);
  }

  .auth-layout .auth-panel {
    border: 1px solid var(--tc-border);
    border-radius: var(--tc-radius-xl);
  }

  .tc-home-hero h1,
  .tc-price-hero h1,
  .tc-status-hero h1,
  .tc-contact-hero h1,
  .tc-mission-hero h1,
  .tc-onboarding-hero h1,
  .pine-alt-hero h1,
  .page-hero h1,
  .auth-panel h1 {
    font-size: clamp(2.05rem, 8vw, 3rem);
    line-height: 1.07;
  }
}

/* Final PublicSite cascade guard: keep legacy page CSS from reintroducing low-contrast accents. */
.tc-public-page :where(.blog-list-card, .blog-featured-card, .tc-contact-form-card, .tc-aside-card, .tc-contact-hero-card, .surface-card, .docs-article) a:not(.btn):not(.tc-home-button) {
  color: var(--tc-primary-strong);
}

.tc-public-page :where(.blog-list-card, .blog-featured-card, .tc-contact-form-card, .tc-aside-card, .tc-contact-hero-card, .surface-card, .docs-article) a:not(.btn):not(.tc-home-button):hover {
  color: #0b5f59;
}

.tc-public-page .tc-mission-flow-node > .tc-mission-flow-index,
.tc-public-page .tc-mission-flow-index {
  color: var(--tc-primary-strong);
}

.tc-public-page .pine-alt-hero h1,
.tc-public-page .pine-alt-hero h1 span {
  color: #ffffff;
}

.tc-public-page .pine-alt-hero :where(p, li),
.tc-public-page .pine-alt-hero__disclaimer {
  color: var(--tc-text-inverse-muted);
}

/* First alert page guard: the hero must never collapse to min-content width. */
.tc-public-page .tc-onboarding-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
  align-items: center;
  gap: clamp(32px, 3vw, 42px);
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  max-width: none;
  margin-inline: auto;
  padding: clamp(56px, 6vw, 76px) clamp(28px, 4vw, 52px);
}

.tc-public-page .tc-onboarding-hero__inner > * {
  min-width: 0;
}

.tc-public-page .tc-onboarding-hero__inner > :first-child {
  width: 100%;
  max-width: 680px;
}

.tc-public-page .tc-onboarding-hero .eyebrow,
.tc-public-page .tc-onboarding-hero h1,
.tc-public-page .tc-onboarding-hero p {
  overflow-wrap: normal;
  word-break: normal;
}

.tc-public-page .tc-onboarding-hero .eyebrow {
  max-width: 100%;
  white-space: normal;
}

.tc-public-page .tc-onboarding-hero h1 {
  max-width: 15ch;
  min-width: 0;
  hyphens: none;
}

.tc-public-page .tc-onboarding-hero p {
  max-width: 62ch;
}

/* Status page guard: keep the public status hero readable across CSS layers. */
.tc-public-page .tc-status-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
  align-items: center;
  gap: clamp(32px, 3.5vw, 48px);
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  max-width: none;
  margin-inline: auto;
  padding: clamp(56px, 6vw, 76px) clamp(28px, 4vw, 52px);
}

.tc-public-page .tc-status-hero__inner > *,
.tc-public-page .tc-status-hero__copy,
.tc-public-page .tc-status-global {
  min-width: 0;
}

.tc-public-page .tc-status-hero__copy {
  width: 100%;
  max-width: 700px;
  padding: 0;
  overflow: visible;
}

.tc-public-page .tc-status-hero .eyebrow,
.tc-public-page .tc-status-hero__copy h1,
.tc-public-page .tc-status-hero__copy p {
  overflow-wrap: normal;
  word-break: normal;
}

.tc-public-page .tc-status-hero .eyebrow {
  max-width: 100%;
  white-space: normal;
}

.tc-public-page .tc-status-hero__copy h1 {
  max-width: 15ch;
  min-width: 0;
  hyphens: none;
  white-space: normal;
}

.tc-public-page .tc-status-hero__copy p {
  max-width: 62ch;
}

@media (max-width: 1100px) {
  .tc-public-page .tc-status-hero__inner,
  .tc-public-page .tc-onboarding-hero__inner {
    grid-template-columns: 1fr;
  }

  .tc-public-page .tc-status-hero__copy,
  .tc-public-page .tc-status-global,
  .tc-public-page .tc-onboarding-hero__inner > :first-child,
  .tc-public-page .tc-onboarding-runbook {
    max-width: 720px;
  }
}

@media (max-width: 760px) {
  .tc-public-page .tc-status-hero__inner,
  .tc-public-page .tc-onboarding-hero__inner {
    width: min(100% - 32px, var(--tc-frame));
    padding: 48px 0 36px;
  }

  .tc-public-page .tc-status-hero__copy h1,
  .tc-public-page .tc-onboarding-hero h1 {
    max-width: 12ch;
  }
}

/* PublicSite pro redesign layer.
   This layer is scoped to the public shell and is intentionally loaded last. */
.shell.tc-public-page {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  background:
    linear-gradient(180deg, #f6f9fc 0%, #eef4f8 48%, #f7fafc 100%);
  --tc-bg-page: #f6f9fc;
  --tc-bg-section: #eaf1f6;
  --tc-surface: #ffffff;
  --tc-surface-soft: #f8fbfd;
  --tc-surface-raised: #ffffff;
  --tc-navy-950: #06121f;
  --tc-navy-900: #0a1b2f;
  --tc-navy-800: #102c49;
  --tc-navy-700: #174266;
  --tc-primary: #35d3c8;
  --tc-primary-strong: #087f78;
  --tc-secondary: #2e96d1;
  --tc-accent: #168f68;
  --tc-focus: #79d7ff;
  --tc-text: #0d1826;
  --tc-text-soft: #29384b;
  --tc-text-muted: #516175;
  --tc-text-subtle: #7c8a99;
  --tc-text-inverse: #fbfdff;
  --tc-text-inverse-muted: #cad7e6;
  --tc-border: #d8e3ec;
  --tc-border-strong: #b9c8d8;
  --tc-border-inverse: rgba(255, 255, 255, .16);
  --tc-radius-sm: 4px;
  --tc-radius-md: 6px;
  --tc-radius-lg: 8px;
  --tc-radius-xl: 10px;
  --tc-shadow-sm: 0 10px 26px rgba(6, 18, 31, .07);
  --tc-shadow-md: 0 20px 48px rgba(6, 18, 31, .11);
  --tc-shadow-lg: 0 30px 76px rgba(6, 18, 31, .18);
  --tc-frame: 1180px;
  --tc-frame-wide: 1340px;
  --tc-page-gutter: clamp(20px, 4vw, 36px);
}

.tc-public-page main {
  width: 100%;
}

.tc-public-page main.page-content {
  display: grid;
  gap: clamp(26px, 4vw, 48px);
  padding: 0 0 clamp(64px, 7vw, 96px);
}

.tc-public-page main.page-content:has(> .tc-mission-final:last-child) {
  padding-bottom: 0;
}

.tc-public-page .container,
.tc-public-page .tc-inner {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  max-width: none;
  margin-inline: auto;
  padding: 0;
}

.tc-public-page .tc-home-nav {
  top: 14px;
  width: min(var(--tc-frame-wide), calc(100% - 28px));
  margin: 14px auto 0;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: var(--tc-radius-xl);
  background:
    linear-gradient(to right, rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .045) 1px, transparent 1px),
    linear-gradient(135deg, rgba(6, 18, 31, .98), rgba(10, 27, 47, .97) 60%, rgba(16, 44, 73, .96));
  background-size: 48px 48px, 48px 48px, auto;
  box-shadow: 0 22px 58px rgba(6, 18, 31, .24);
}

.tc-public-page .tc-home-nav__inner {
  width: min(var(--tc-frame), calc(100% - 32px));
}

.tc-public-page .tc-home-nav__links a,
.tc-public-page .tc-home-nav__login {
  border: 1px solid transparent;
  border-radius: var(--tc-radius-md);
  color: rgba(251, 253, 255, .78);
  font-weight: 700;
}

.tc-public-page .tc-home-nav__links a:hover,
.tc-public-page .tc-home-nav__login:hover {
  background: rgba(255, 255, 255, .09);
  color: #ffffff;
}

.tc-public-page .tc-home-nav__links a.is-active,
.tc-public-page .tc-home-nav__login.is-active {
  border-color: rgba(53, 211, 200, .32);
  background: rgba(53, 211, 200, .13);
  color: #ffffff;
}

.tc-public-page .tc-home-button,
.tc-public-page .btn,
.tc-public-page button.btn,
.tc-public-page .header-register-cta {
  min-height: 44px;
  border-radius: var(--tc-radius-md);
  font-weight: 760;
  letter-spacing: 0;
}

.tc-public-page .tc-home-button--primary,
.tc-public-page .btn:not(.btn-quiet),
.tc-public-page button.btn:not(.btn-quiet),
.tc-public-page .header-register-cta {
  border-color: color-mix(in srgb, var(--tc-primary) 48%, #ffffff);
  background: linear-gradient(135deg, var(--tc-primary), #5cc7f2);
  color: var(--tc-navy-950);
  box-shadow: 0 14px 32px rgba(53, 211, 200, .23);
}

.tc-public-page .tc-home-button--primary:hover,
.tc-public-page .btn:not(.btn-quiet):hover,
.tc-public-page button.btn:not(.btn-quiet):hover,
.tc-public-page .header-register-cta:hover {
  border-color: var(--tc-primary);
  background: linear-gradient(135deg, #55e2d8, #79cdf1);
  color: var(--tc-navy-950);
  box-shadow: 0 18px 42px rgba(53, 211, 200, .28);
  transform: translateY(-1px);
}

.tc-public-page .tc-home-button--ghost,
.tc-public-page .btn-quiet,
.tc-public-page button.btn-quiet {
  border-color: var(--tc-border);
  background: rgba(255, 255, 255, .88);
  color: var(--tc-text);
  box-shadow: none;
}

.tc-public-page .tc-home-button--ghost:hover,
.tc-public-page .btn-quiet:hover,
.tc-public-page button.btn-quiet:hover {
  border-color: var(--tc-border-strong);
  background: #ffffff;
  color: var(--tc-navy-950);
  box-shadow: 0 12px 28px rgba(6, 18, 31, .08);
}

.tc-public-page .tc-home-button--disabled,
.tc-public-page .btn[disabled],
.tc-public-page button[disabled],
.tc-public-page .is-disabled {
  border-color: #d7e0e8;
  background: #e7edf3;
  color: #637386;
  box-shadow: none;
  opacity: 1;
  transform: none;
}

.tc-public-page .tc-mission-hero,
.tc-public-page .tc-price-hero,
.tc-public-page .page-hero {
  width: min(var(--tc-frame-wide), calc(100% - 48px));
  margin: clamp(18px, 3vw, 30px) auto 0;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: var(--tc-radius-xl);
  color: var(--tc-text-inverse);
  background:
    linear-gradient(to right, rgba(255, 255, 255, .06) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .045) 1px, transparent 1px),
    linear-gradient(135deg, #06121f 0%, #0a1b2f 54%, #123554 100%);
  background-size: 52px 52px, 52px 52px, auto;
  box-shadow: var(--tc-shadow-lg);
}

.tc-public-page .tc-mission-hero,
.tc-public-page .tc-price-hero {
  padding: clamp(56px, 7vw, 86px) 0;
}

.tc-public-page .page-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
  gap: clamp(26px, 5vw, 70px);
  align-items: center;
  min-height: auto;
  padding: clamp(48px, 6vw, 76px) clamp(24px, 4vw, 48px);
}

.tc-public-page .page-hero--tight {
  grid-template-columns: minmax(0, 1fr);
}

.tc-public-page .page-hero::before,
.tc-public-page .page-hero::after,
.tc-public-page .tc-mission-hero::before,
.tc-public-page .tc-mission-hero::after,
.tc-public-page .tc-price-hero::before,
.tc-public-page .tc-price-hero::after {
  opacity: 0;
}

.tc-public-page .tc-mission-hero :where(h1, h2, h3),
.tc-public-page .tc-price-hero :where(h1, h2, h3),
.tc-public-page .page-hero :where(h1, h2, h3) {
  color: #ffffff;
  letter-spacing: 0;
  text-shadow: none;
}

.tc-public-page .tc-mission-hero :where(p, li),
.tc-public-page .tc-price-hero :where(p, li),
.tc-public-page .page-hero :where(p, li) {
  color: var(--tc-text-inverse-muted);
}

.tc-public-page .tc-mission-hero .eyebrow,
.tc-public-page .tc-price-hero .eyebrow,
.tc-public-page .page-hero .eyebrow {
  color: var(--tc-primary);
}

.tc-public-page .tc-mission-hero__inner,
.tc-public-page .tc-price-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, .96fr) minmax(430px, .86fr);
  gap: clamp(34px, 6vw, 82px);
  align-items: center;
}

.tc-public-page .tc-mission-hero__copy {
  display: grid;
  gap: 18px;
  max-width: 690px;
}

.tc-public-page .tc-mission-hero__copy h1 {
  max-width: 12ch;
  font-size: 4.75rem;
  line-height: 1;
  font-weight: 760;
}

.tc-public-page .tc-mission-hero__subtitle {
  max-width: 58ch;
  font-size: 1.18rem;
  line-height: 1.58;
  color: #f2fbff;
}

.tc-public-page .tc-mission-hero__body {
  max-width: 62ch;
  font-size: 1rem;
  line-height: 1.68;
}

.tc-public-page .tc-mission-actions {
  gap: 12px;
  margin-top: 4px;
}

.tc-public-page .tc-pro-hero__trustbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}

.tc-public-page .tc-pro-hero__trustbar span,
.tc-public-page .tc-mission-proof-row span,
.tc-public-page .blog-topic-strip span,
.tc-public-page .blog-card__tags span,
.tc-public-page .blog-list-card__meta span,
.tc-public-page .tc-mission-flow-platforms span,
.tc-public-page .pine-alt-flow__node span,
.tc-public-page .pine-alt-proof-card span,
.tc-public-page .tc-chip {
  border: 1px solid color-mix(in srgb, var(--tc-primary) 20%, var(--tc-border));
  border-radius: var(--tc-radius-pill);
  background: color-mix(in srgb, var(--tc-primary) 10%, #ffffff);
  color: var(--tc-navy-900);
  font-family: var(--tc-font-mono);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: 0;
}

.tc-public-page .tc-pro-hero__trustbar span {
  border-color: rgba(53, 211, 200, .34);
  background: rgba(4, 25, 42, .66);
  color: #f4fdff;
  padding: 8px 10px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}

.tc-public-page .tc-mission-panel {
  display: grid;
  gap: 18px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: var(--tc-radius-lg);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(245, 249, 252, .97));
  color: var(--tc-text);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .22);
}

.tc-public-page .tc-mission-panel::before {
  opacity: 0;
}

.tc-public-page .tc-mission-panel :where(h2, h3, strong) {
  color: var(--tc-text);
}

.tc-public-page .tc-mission-panel :where(p, li, small, span) {
  color: var(--tc-text-muted);
}

.tc-public-page .tc-mission-panel__proof {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(53, 211, 200, .22);
  border-radius: var(--tc-radius-lg);
  background: linear-gradient(135deg, #06121f 0%, #0a2136 62%, #0f3a57 100%);
}

.tc-public-page .tc-mission-panel__proof span {
  justify-content: center;
  min-height: 36px;
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .08);
  color: #f4fdff;
  text-align: center;
}

.tc-public-page .tc-mission-panel__top {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.tc-public-page .tc-pro-route-card {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background:
    linear-gradient(to right, rgba(6, 18, 31, .08) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(6, 18, 31, .06) 1px, transparent 1px),
    #f7fbfd;
  background-size: 32px 32px, 32px 32px, auto;
}

.tc-public-page .tc-pro-route-card__top,
.tc-public-page .tc-pro-flow,
.tc-public-page .tc-pro-console div {
  display: flex;
  align-items: center;
}

.tc-public-page .tc-pro-route-card__top {
  justify-content: space-between;
  gap: 12px;
}

.tc-public-page .tc-pro-route-card__top span {
  color: var(--tc-text-soft);
  font-family: var(--tc-font-mono);
  font-size: .78rem;
  font-weight: 750;
  text-transform: uppercase;
}

.tc-public-page .tc-pro-route-card__top strong {
  color: var(--tc-primary-strong);
  font-family: var(--tc-font-mono);
  font-size: .95rem;
}

.tc-public-page .tc-pro-flow {
  gap: 8px;
}

.tc-public-page .tc-pro-flow span {
  flex: 1;
  min-width: 0;
  padding: 10px 8px;
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-md);
  background: #ffffff;
  color: var(--tc-text);
  font-size: .8rem;
  font-weight: 780;
  text-align: center;
  white-space: normal;
}

.tc-public-page .tc-pro-flow i {
  width: 22px;
  height: 1px;
  background: var(--tc-primary-strong);
}

.tc-public-page .tc-pro-console {
  display: grid;
  gap: 8px;
}

.tc-public-page .tc-pro-console div {
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(6, 18, 31, .1);
  border-radius: var(--tc-radius-md);
  background: rgba(255, 255, 255, .86);
}

.tc-public-page .tc-pro-console div span {
  width: 28px;
  color: var(--tc-primary-strong);
  font-family: var(--tc-font-mono);
  font-size: .76rem;
  font-weight: 760;
}

.tc-public-page .tc-pro-console div strong {
  flex: 1;
  color: var(--tc-text);
  font-family: var(--tc-font-mono);
  font-size: .88rem;
}

.tc-public-page .tc-pro-console div small {
  color: var(--tc-text-muted);
  font-family: var(--tc-font-mono);
  font-size: .76rem;
}

.tc-public-page .tc-mission-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.tc-public-page .tc-mission-metrics div {
  padding: 14px;
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background: #ffffff;
}

.tc-public-page .tc-mission-metrics strong {
  color: var(--tc-text);
  font-size: 1.2rem;
  font-variant-numeric: tabular-nums;
}

.tc-public-page .tc-mission-metrics span {
  color: var(--tc-text-muted);
  font-size: .78rem;
  line-height: 1.35;
}

.tc-public-page .tc-mission-section,
.tc-public-page .tc-mission-product,
.tc-public-page .tc-mission-quickflow,
.tc-public-page .tc-price-section,
.tc-public-page .tc-price-compare,
.tc-public-page .tc-price-faq,
.tc-public-page .tc-contact-section,
.tc-public-page .blog-index-section,
.tc-public-page .docs-shell {
  padding: clamp(58px, 7vw, 92px) 0;
}

.tc-public-page .tc-mission-section--paper,
.tc-public-page .tc-price-compare,
.tc-public-page .tc-price-faq,
.tc-public-page .blog-index-section {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .5), rgba(234, 241, 246, .42));
}

.tc-public-page .tc-mission-section-head,
.tc-public-page .blog-index-head {
  display: grid;
  grid-template-columns: minmax(170px, .32fr) minmax(0, 1fr);
  gap: clamp(22px, 4vw, 54px);
  align-items: start;
  margin-bottom: clamp(24px, 4vw, 42px);
}

.tc-public-page .tc-mission-section-head h2,
.tc-public-page .tc-mission-product__copy h2,
.tc-public-page .tc-mission-quickflow__head h2,
.tc-public-page .tc-price-compare h2,
.tc-public-page .tc-price-faq h2,
.tc-public-page .blog-index-head h2 {
  max-width: 760px;
  color: var(--tc-text);
  font-size: 2.35rem;
  line-height: 1.12;
  font-weight: 740;
  letter-spacing: 0;
}

.tc-public-page .tc-mission-section-head p,
.tc-public-page .tc-mission-product__copy p,
.tc-public-page .tc-mission-quickflow__head p,
.tc-public-page .blog-index-head p {
  max-width: 760px;
  color: var(--tc-text-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.tc-public-page :where(.tc-mission-card, .tc-mission-story-card, .tc-mission-quickflow__card, .tc-mission-feature, .tc-mission-plan, .tc-home-faq-item, .blog-featured-card, .blog-list-card, .tc-price-plan, .tc-contact-form-card, .tc-aside-card, .tc-contact-hero-card, .docs-sidebar, .docs-article, .docs-toc, .docs-link-card, .surface-card, .doc-row, .mini-metric, .surface-inline) {
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background: var(--tc-surface);
  color: var(--tc-text);
  box-shadow: var(--tc-shadow-sm);
}

.tc-public-page :where(.tc-mission-card, .tc-mission-story-card, .tc-mission-quickflow__card, .tc-mission-feature, .tc-mission-plan, .tc-home-faq-item, .blog-featured-card, .blog-list-card, .tc-price-plan, .tc-contact-form-card, .tc-aside-card, .tc-contact-hero-card, .docs-sidebar, .docs-article, .docs-toc, .docs-link-card, .surface-card, .doc-row, .mini-metric, .surface-inline) :where(p, li, dd, small) {
  color: var(--tc-text-muted);
}

.tc-public-page :where(.tc-mission-card, .tc-mission-story-card, .tc-mission-quickflow__card, .tc-mission-feature, .tc-mission-plan, .tc-home-faq-item, .blog-featured-card, .blog-list-card, .tc-price-plan, .tc-contact-form-card, .tc-aside-card, .docs-sidebar, .docs-link-card, .doc-row):hover {
  border-color: color-mix(in srgb, var(--tc-primary) 34%, var(--tc-border));
  box-shadow: var(--tc-shadow-md);
  transform: translateY(-1px);
}

.tc-public-page .tc-mission-grid,
.tc-public-page .tc-mission-plans,
.tc-public-page .tc-price-plans,
.tc-public-page .blog-list-grid {
  gap: 18px;
}

.tc-public-page .tc-mission-grid--four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tc-public-page .tc-mission-grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tc-public-page .tc-mission-product__inner {
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1fr);
  gap: clamp(34px, 6vw, 76px);
  align-items: center;
}

.tc-public-page .tc-product-frame {
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-xl);
  background: #ffffff;
  box-shadow: 0 26px 68px rgba(6, 18, 31, .16);
}

.tc-public-page .tc-product-frame__chrome {
  border-bottom: 1px solid var(--tc-border);
  background: #f7fafc;
}

.tc-public-page .tc-product-frame img {
  display: block;
  width: 100%;
  border-radius: 0 0 var(--tc-radius-lg) var(--tc-radius-lg);
}

.tc-public-page .tc-product-frame figcaption {
  color: var(--tc-text-muted);
  font-size: .86rem;
}

.tc-public-page .tc-mission-quickflow {
  margin-top: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.tc-public-page .tc-mission-quickflow__head {
  max-width: 860px;
  margin: 0 auto clamp(24px, 4vw, 42px);
  text-align: center;
}

.tc-public-page .tc-mission-quickflow__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.tc-public-page .tc-mission-quickflow__card {
  position: relative;
  padding: 24px;
  overflow: hidden;
}

.tc-public-page .tc-mission-plan--free {
  position: relative;
  overflow: hidden;
}

.tc-public-page .tc-mission-quickflow__card::before,
.tc-public-page .tc-mission-plan--free::before,
.tc-public-page .tc-price-plan:first-child::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--tc-primary), var(--tc-secondary));
}

.tc-public-page .tc-mission-quickflow__card > span {
  color: var(--tc-primary-strong);
  font-family: var(--tc-font-mono);
  font-size: .84rem;
}

.tc-public-page .tc-mission-quickflow__links {
  justify-content: center;
  gap: 10px;
}

.tc-public-page .tc-mission-quickflow__links a {
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-pill);
  background: #ffffff;
  color: var(--tc-primary-strong);
  font-weight: 720;
}

.tc-public-page .tc-mission-story-grid,
.tc-public-page .tc-mission-free-layout {
  gap: 20px;
}

.tc-public-page .tc-mission-story-card {
  display: grid;
  align-content: start;
  gap: 18px;
  padding: clamp(24px, 3vw, 34px);
}

.tc-public-page .tc-mission-story-card h2 {
  max-width: 18ch;
  margin: 0;
  color: var(--tc-text);
  font-size: clamp(2rem, 3.2vw, 3rem);
  line-height: 1.08;
  font-weight: 760;
}

.tc-public-page .tc-mission-story-card p {
  margin: 0;
  color: var(--tc-text-soft);
  font-size: 1rem;
  line-height: 1.65;
}

.tc-public-page .tc-mission-story-card--accent {
  border-color: rgba(53, 211, 200, .28);
  background:
    radial-gradient(circle at 18% 8%, rgba(53, 211, 200, .18), transparent 28%),
    linear-gradient(135deg, #06121f 0%, #0a2136 58%, #0f3a57 100%);
  color: #f4fdff;
  box-shadow: 0 24px 62px rgba(6, 18, 31, .18);
}

.tc-public-page .tc-mission-story-card--accent .eyebrow {
  color: #63e3dc;
}

.tc-public-page .tc-mission-story-card--accent h2 {
  color: #ffffff;
}

.tc-public-page .tc-mission-story-card--accent p {
  color: #d8edf2;
}

.tc-public-page .tc-mission-story-card--accent .tc-mission-list li {
  border-color: rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .08);
  color: #f4fdff;
}

.tc-public-page .tc-mission-story-card--accent .tc-mission-list li span {
  background: var(--tc-primary);
  box-shadow: 0 0 0 5px rgba(53, 211, 200, .13);
}

.tc-public-page .tc-mission-story-card--accent .tc-mission-list {
  margin-top: 4px;
}

.tc-public-page .tc-mission-section--ink,
.tc-public-page .tc-mission-final,
.tc-public-page .tc-price-enterprise,
.tc-public-page .cta-strip {
  border: 1px solid rgba(255, 255, 255, .14);
  background:
    linear-gradient(135deg, #06121f, #0a1b2f 62%, #102c49);
  background-size: auto;
  color: var(--tc-text-inverse);
}

.tc-public-page .tc-mission-section--ink :where(h2, h3, p, li, span, strong),
.tc-public-page .tc-mission-final :where(h2, h3, p, li, span, strong),
.tc-public-page .tc-price-enterprise :where(h2, h3, p, li, span, strong) {
  color: inherit;
}

.tc-public-page .tc-mission-section--ink .tc-mission-section-head .eyebrow {
  color: #63e3dc;
}

.tc-public-page .tc-mission-section--ink .tc-mission-section-head h2 {
  color: #ffffff;
}

.tc-public-page .tc-mission-section--ink .tc-mission-section-head p {
  color: #d8edf2;
}

.tc-public-page .tc-mission-trust-card {
  padding: 22px;
  border-color: rgba(53, 211, 200, .22);
  background: rgba(5, 25, 42, .74);
  box-shadow: none;
}

.tc-public-page .tc-mission-trust-card h3 {
  color: #ffffff;
}

.tc-public-page .tc-mission-trust-card :where(p, li, small) {
  color: #d8edf2;
}

.tc-public-page .tc-mission-final {
  width: min(var(--tc-frame-wide), calc(100% - 28px));
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  box-shadow: var(--tc-shadow-lg);
}

.tc-public-page .tc-mission-final__inner {
  padding-top: clamp(74px, 7vw, 96px);
  padding-bottom: clamp(90px, 8vw, 114px);
}

.tc-public-page .tc-mission-flow-map {
  border: 0;
  border-radius: 0;
  background: transparent;
  background-size: auto;
  box-shadow: none;
}

.tc-public-page .tc-mission-flow-hub,
.tc-public-page .tc-mission-flow-node {
  border-radius: var(--tc-radius-lg);
}

.tc-public-page .tc-price-hero__copy h1 {
  max-width: 760px;
  font-size: clamp(2.85rem, 4.25vw, 3.55rem);
  line-height: 1.05;
  font-weight: 760;
  letter-spacing: 0;
}

.tc-public-page .tc-price-hero__grid {
  grid-template-columns: minmax(0, .78fr) minmax(360px, .42fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: clamp(32px, 5vw, 68px);
}

.tc-public-page .tc-price-hero__eyebrow {
  grid-column: 1;
  grid-row: 1;
  margin-bottom: 14px;
}

.tc-public-page .tc-price-hero__copy {
  grid-column: 1;
  grid-row: 2;
}

.tc-public-page .tc-price-hero__panel {
  grid-column: 2;
  grid-row: 2;
  align-self: center;
}

.tc-public-page .tc-price-hero__copy h1 em,
.tc-public-page .page-hero h1 em,
.tc-public-page .page-hero h2 em {
  color: var(--tc-primary);
  font-family: inherit;
  font-style: normal;
  font-weight: 760;
}

.tc-public-page .tc-price-hero__copy h1 em {
  display: block;
  margin-top: .1em;
}

.tc-public-page .tc-price-hero__copy p {
  max-width: 66ch;
  font-size: 1rem;
  line-height: 1.62;
}

.tc-public-page .tc-price-hero__panel {
  border-radius: var(--tc-radius-lg);
  background: rgba(255, 255, 255, .97);
}

.tc-public-page .tc-price-hero__panel :where(li, p, span, strong) {
  color: var(--tc-text-soft);
}

.tc-public-page .tc-price-hero__panel .eyebrow {
  color: var(--tc-primary-strong);
}

.tc-public-page .tc-price-plans {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}

.tc-public-page .tc-price-plan {
  position: relative;
  overflow: hidden;
  padding: 26px;
}

.tc-public-page .tc-price-plan--featured {
  border-color: color-mix(in srgb, var(--tc-primary) 46%, var(--tc-border));
  border-top: 3px solid var(--tc-primary);
  background: linear-gradient(180deg, #ffffff 0%, #f6fbfd 100%);
  box-shadow: 0 22px 54px rgba(6, 18, 31, .12);
}

.tc-public-page .tc-price-plan__badge,
.tc-public-page .pricing-page__featured-badge {
  border-radius: var(--tc-radius-pill);
  background: var(--tc-navy-900);
  color: #ffffff;
  font-family: var(--tc-font-mono);
  letter-spacing: 0;
}

.tc-public-page .tc-price-plan__name,
.tc-public-page .tc-price-plan__price,
.tc-public-page .tc-mission-plan__price strong {
  color: var(--tc-text);
}

.tc-public-page .tc-price-plan__price,
.tc-public-page .tc-mission-plan__price strong {
  font-variant-numeric: tabular-nums;
}

.tc-public-page .tc-price-plan__features li::before,
.tc-public-page .tc-mission-list li span,
.tc-public-page .tc-mission-checklist li span {
  background: var(--tc-primary-strong);
}

.tc-public-page .tc-price-table-wrap {
  overflow-x: auto;
  border-radius: var(--tc-radius-lg);
}

.tc-public-page .tc-price-table {
  min-width: 760px;
}

.tc-public-page .tc-price-table thead th {
  background: #f7fafc;
  color: var(--tc-text-soft);
  font-family: var(--tc-font-mono);
  letter-spacing: 0;
}

.tc-public-page .tc-price-table th,
.tc-public-page .tc-price-table td {
  color: var(--tc-text-soft);
}

.tc-public-page .tc-price-table tbody th {
  color: var(--tc-text);
}

.tc-public-page .docs-shell {
  width: min(var(--tc-frame-wide), calc(100% - (var(--tc-page-gutter) * 2)));
  margin-inline: auto;
  grid-template-columns: minmax(250px, 300px) minmax(0, 1fr) minmax(220px, 260px);
  gap: 18px;
  align-items: start;
}

.tc-public-page .docs-sidebar,
.tc-public-page .docs-toc {
  position: sticky;
  top: 104px;
}

.tc-public-page .docs-sidebar,
.tc-public-page .docs-article,
.tc-public-page .docs-toc {
  padding: 24px;
}

.tc-public-page .docs-article h2 {
  color: var(--tc-text);
  font-size: 2.1rem;
  line-height: 1.16;
  letter-spacing: 0;
}

.tc-public-page .docs-article__lead {
  color: var(--tc-text-soft);
}

.tc-public-page .doc-row--active {
  border-color: color-mix(in srgb, var(--tc-primary) 44%, var(--tc-border));
  background: color-mix(in srgb, var(--tc-primary) 8%, #ffffff);
  box-shadow: inset 3px 0 0 var(--tc-primary);
}

.tc-public-page .docs-code,
.tc-public-page .simulation-code,
.tc-public-page .simulation-preview,
.tc-public-page pre {
  border-radius: var(--tc-radius-lg);
  background:
    linear-gradient(to right, rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .04) 1px, transparent 1px),
    linear-gradient(180deg, #06121f, #0a1b2f);
  background-size: 40px 40px, 40px 40px, auto;
  color: #e9fffc;
}

.tc-public-page.tc-contact-page .page-hero,
.tc-public-page .page-hero--blog {
  grid-template-columns: minmax(0, .92fr) minmax(280px, .42fr);
}

.tc-public-page .page-hero--blog {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(320px, .48fr);
  align-items: center;
  gap: clamp(30px, 4vw, 58px);
  background:
    linear-gradient(to right, rgba(255, 255, 255, .06) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6, 18, 31, .98) 0%, rgba(10, 27, 47, .96) 58%, rgba(16, 44, 73, .92) 100%);
  background-size: 52px 52px, 52px 52px, auto;
}

.tc-public-page .blog-hero__copy {
  min-width: 0;
  max-width: 760px;
}

.tc-public-page .page-hero--blog h1 {
  max-width: 12.5ch;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.tc-public-page .page-hero--blog p {
  max-width: 64ch;
  overflow-wrap: normal;
  word-break: normal;
}

.tc-public-page .blog-hero__panel {
  display: grid;
  gap: 16px;
  min-width: 0;
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: var(--tc-radius-lg);
  background: rgba(255, 255, 255, .075);
  color: var(--tc-text-inverse);
  box-shadow: 0 22px 52px rgba(0, 0, 0, .2);
  backdrop-filter: blur(12px);
}

.tc-public-page .blog-hero__panel-head {
  display: grid;
  gap: 8px;
}

.tc-public-page .blog-hero__panel-head span,
.tc-public-page .blog-hero__featured span,
.tc-public-page .blog-hero__featured small {
  color: var(--tc-primary);
  font-family: var(--tc-font-mono);
  font-size: .72rem;
  font-weight: 760;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tc-public-page .blog-hero__panel-head strong {
  color: #ffffff;
  font-size: clamp(1.2rem, 1.6vw, 1.45rem);
  line-height: 1.22;
}

.tc-public-page .blog-hero__flow {
  display: grid;
  gap: 8px;
}

.tc-public-page .blog-hero__flow span {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 12px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: var(--tc-radius-md);
  background: rgba(7, 20, 33, .42);
  color: rgba(255, 255, 255, .84);
  font-weight: 700;
}

.tc-public-page .blog-hero__flow span + span {
  position: relative;
}

.tc-public-page .blog-hero__flow span + span::before {
  content: "";
  position: absolute;
  top: -9px;
  left: 22px;
  width: 2px;
  height: 8px;
  background: var(--tc-primary);
  opacity: .75;
}

.tc-public-page .blog-hero__featured {
  display: grid;
  gap: 8px;
  padding: 16px;
  border: 1px solid rgba(45, 212, 191, .32);
  border-radius: var(--tc-radius-md);
  background: rgba(45, 212, 191, .1);
  text-decoration: none;
}

.tc-public-page .blog-hero__featured strong {
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.35;
}

.tc-public-page .blog-hero__featured small {
  color: rgba(255, 255, 255, .64);
}

.tc-public-page .blog-index-section {
  width: 100%;
}

.tc-public-page .blog-index-section > * {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  margin-inline: auto;
}

.tc-public-page .blog-featured-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 20px;
  padding: 28px;
}

.tc-public-page .blog-featured-card__signal {
  border-radius: var(--tc-radius-lg);
  background:
    linear-gradient(to right, rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .04) 1px, transparent 1px),
    linear-gradient(135deg, var(--tc-navy-950), var(--tc-navy-900));
  background-size: 34px 34px, 34px 34px, auto;
  color: #ffffff;
}

.tc-public-page .blog-featured-card__signal :where(span, strong) {
  color: inherit;
}

.tc-public-page .blog-featured-card__signal span {
  color: var(--tc-text-inverse-muted);
}

.tc-public-page .blog-featured-card__signal strong {
  color: #ffffff;
}

.tc-public-page .blog-list-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tc-public-page .tc-contact-section .tc-inner {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
}

.tc-public-page .tc-contact-layout {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: 20px;
  align-items: start;
}

.tc-public-page .tc-contact-form-card,
.tc-public-page .tc-aside-card,
.tc-public-page .tc-contact-hero-card {
  padding: 24px;
}

.tc-public-page .tc-topic-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.tc-public-page .tc-topic-option {
  border-color: var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background: #ffffff;
}

.tc-public-page .tc-topic-option:hover,
.tc-public-page .tc-topic-option:has(input:checked) {
  border-color: color-mix(in srgb, var(--tc-primary) 48%, var(--tc-border));
  background: color-mix(in srgb, var(--tc-primary) 8%, #ffffff);
}

.tc-public-page input:not([type="radio"]):not([type="checkbox"]),
.tc-public-page select,
.tc-public-page textarea {
  min-height: 44px;
  border-color: var(--tc-border);
  border-radius: var(--tc-radius-md);
  background: #ffffff;
  color: var(--tc-text);
}

.tc-public-page input::placeholder,
.tc-public-page textarea::placeholder {
  color: #748294;
  opacity: 1;
}

.tc-public-page .tc-home-footer.tc-common-footer {
  width: min(var(--tc-frame-wide), calc(100% - 28px));
  margin: 0 auto;
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, .1);
  border-radius: 0 0 var(--tc-radius-xl) var(--tc-radius-xl);
  background:
    linear-gradient(to right, rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .04) 1px, transparent 1px),
    linear-gradient(135deg, #06121f, #0a1b2f 62%, #102c49);
  background-size: 52px 52px, 52px 52px, auto;
}

.tc-public-page .tc-home-footer__grid,
.tc-public-page .tc-home-footer__meta {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
}

.tc-public-page main.page-content > .dashboard-grid,
.tc-public-page main.page-content > .panel-grid,
.tc-public-page main.page-content > .surface-card,
.tc-public-page main.page-content > .legal-layout,
.tc-public-page main.page-content > .content-card,
.tc-public-page main.page-content > .support-card {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  margin-right: auto;
  margin-left: auto;
}

.tc-public-page main.page-content > .dashboard-grid,
.tc-public-page main.page-content > .panel-grid {
  gap: 20px;
  padding: 0;
  border-bottom: 0;
}

.tc-public-page main.page-content > .dashboard-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tc-public-page main.page-content > .dashboard-grid > .surface-card--wide {
  grid-column: 1 / -1;
}

@media (max-width: 1180px) {
  .tc-public-page .tc-mission-hero__inner,
  .tc-public-page .tc-price-hero__grid,
  .tc-public-page .tc-mission-product__inner,
  .tc-public-page .tc-contact-layout,
  .tc-public-page .docs-shell {
    grid-template-columns: 1fr;
  }

  .tc-public-page .docs-sidebar,
  .tc-public-page .docs-toc {
    position: static;
  }

  .tc-public-page .tc-price-hero__eyebrow,
  .tc-public-page .tc-price-hero__copy,
  .tc-public-page .tc-price-hero__panel {
    grid-column: auto;
    grid-row: auto;
  }

  .tc-public-page .tc-mission-grid--four,
  .tc-public-page .blog-list-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .shell.tc-public-page {
    padding-bottom: 64px;
  }

  .tc-public-page .tc-home-nav {
    top: 0;
    width: 100%;
    margin: 0;
    border-top: 0;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .tc-public-page .tc-home-nav__inner {
    width: min(100% - 28px, var(--tc-frame));
  }

  .tc-public-page .tc-mission-hero,
  .tc-public-page .tc-price-hero,
  .tc-public-page .page-hero {
    width: 100%;
    margin-top: 0;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .tc-public-page .tc-mission-hero,
  .tc-public-page .tc-price-hero {
    padding: 54px 0;
  }

  .tc-public-page .page-hero,
  .tc-public-page.tc-contact-page .page-hero,
  .tc-public-page .page-hero--blog {
    grid-template-columns: 1fr;
    padding: 48px var(--tc-page-gutter);
  }

  .tc-public-page .page-hero--blog {
    background:
      linear-gradient(to right, rgba(255, 255, 255, .06) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255, 255, 255, .045) 1px, transparent 1px),
      linear-gradient(135deg, #06121f 0%, #0a1b2f 64%, #102c49 100%);
    background-size: 52px 52px, 52px 52px, auto;
  }

  .tc-public-page .blog-hero__panel {
    max-width: 680px;
  }

  .tc-public-page .tc-mission-hero__copy h1,
  .tc-public-page .tc-price-hero__copy h1,
  .tc-public-page .page-hero h1 {
    max-width: 100%;
    font-size: 2.55rem;
    line-height: 1.07;
  }

  .tc-public-page .page-hero--blog h1 {
    max-width: 13ch;
  }

  .tc-public-page .tc-mission-section-head,
  .tc-public-page .blog-index-head,
  .tc-public-page main.page-content > .dashboard-grid,
  .tc-public-page main.page-content > .panel-grid,
  .tc-public-page .tc-mission-grid--two,
  .tc-public-page .tc-mission-grid--four,
  .tc-public-page .tc-mission-quickflow__grid,
  .tc-public-page .tc-price-plans,
  .tc-public-page .blog-list-grid,
  .tc-public-page .blog-featured-card,
  .tc-public-page .tc-topic-grid {
    grid-template-columns: 1fr;
  }

  .tc-public-page .tc-mission-section-head h2,
  .tc-public-page .tc-mission-product__copy h2,
  .tc-public-page .tc-mission-quickflow__head h2,
  .tc-public-page .tc-price-compare h2,
  .tc-public-page .tc-price-faq h2,
  .tc-public-page .blog-index-head h2 {
    font-size: 2rem;
  }

  .tc-public-page .tc-mission-metrics {
    grid-template-columns: 1fr;
  }

  .tc-public-page .tc-pro-flow {
    display: grid;
    grid-template-columns: 1fr;
  }

  .tc-public-page .tc-pro-flow i {
    width: 1px;
    height: 16px;
    margin-inline: auto;
  }

  .tc-public-page .tc-mission-panel__proof {
    grid-template-columns: 1fr;
  }

  .tc-public-page .tc-mission-section,
  .tc-public-page .tc-mission-product,
  .tc-public-page .tc-mission-quickflow,
  .tc-public-page .tc-price-section,
  .tc-public-page .tc-price-compare,
  .tc-public-page .tc-price-faq,
  .tc-public-page .tc-contact-section,
  .tc-public-page .blog-index-section,
  .tc-public-page .docs-shell {
    padding: 52px 0;
  }

  .tc-public-page .tc-home-button,
  .tc-public-page .btn,
  .tc-public-page button.btn {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 520px) {
  .shell.tc-public-page {
    --tc-page-gutter: 18px;
  }

  .tc-public-page .tc-mission-panel,
  .tc-public-page .tc-price-plan,
  .tc-public-page .tc-contact-form-card,
  .tc-public-page .tc-aside-card,
  .tc-public-page .docs-sidebar,
  .tc-public-page .docs-article,
  .tc-public-page .docs-toc,
  .tc-public-page .blog-featured-card,
  .tc-public-page .blog-list-card {
    padding: 18px;
  }

  .tc-public-page .tc-mission-hero__copy h1,
  .tc-public-page .tc-price-hero__copy h1,
  .tc-public-page .page-hero h1 {
    font-size: 2.25rem;
  }

  .tc-public-page .tc-pro-console div {
    grid-template-columns: auto minmax(0, 1fr);
    flex-wrap: wrap;
  }

  .tc-public-page .tc-pro-console div small {
    width: 100%;
    padding-left: 38px;
  }
}

/* PublicSite senior polish: sharper positioning, stronger proof blocks and cleaner SEO hubs. */
.tc-public-page .tc-mission-hero {
  padding: clamp(34px, 4.2vw, 52px) 0 clamp(30px, 3.8vw, 46px);
}

.tc-public-page .tc-mission-hero__inner {
  grid-template-columns: minmax(0, .94fr) minmax(390px, .68fr);
  gap: clamp(28px, 4.4vw, 58px);
}

.tc-public-page .tc-mission-hero__copy {
  gap: 16px;
  max-width: 720px;
}

.tc-public-page .tc-mission-hero__copy h1 {
  max-width: 17ch;
  font-size: clamp(3rem, 5.1vw, 3.85rem);
  line-height: 1.01;
  letter-spacing: 0;
}

.tc-public-page .tc-mission-hero__subtitle {
  max-width: 54ch;
  font-size: clamp(1.06rem, 1.28vw, 1.2rem);
  line-height: 1.56;
}

.tc-public-page .tc-mission-hero__body {
  max-width: 54ch;
  color: #d9e8f2;
  font-weight: 520;
}

.tc-public-page .tc-mission-panel {
  align-self: center;
  justify-self: end;
  gap: 12px;
  max-width: 476px;
  padding: clamp(18px, 2vw, 22px);
}

.tc-public-page .tc-mission-panel h2 {
  margin: 6px 0 0;
  font-size: clamp(1.45rem, 1.9vw, 1.72rem);
  line-height: 1.13;
}

.tc-public-page .tc-mission-panel p {
  font-size: .95rem;
  line-height: 1.48;
}

.tc-public-page .tc-pro-route-card {
  gap: 10px;
  padding: 12px;
  background:
    linear-gradient(to right, rgba(6, 18, 31, .075) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(6, 18, 31, .06) 1px, transparent 1px),
    linear-gradient(180deg, #f8fbfd, #edf5f8);
  background-size: 28px 28px, 28px 28px, auto;
}

.tc-public-page .tc-pro-flow span {
  min-height: 38px;
  padding: 8px 6px;
  font-size: .74rem;
}

.tc-public-page .tc-pro-console div {
  min-height: 32px;
  padding: 7px 9px;
}

.tc-public-page .tc-pro-console div strong {
  font-size: .82rem;
}

.tc-public-page .tc-pro-console div small {
  font-size: .72rem;
}

.tc-public-page .tc-mission-panel__proof {
  gap: 6px;
  padding: 8px;
}

.tc-public-page .tc-mission-panel__proof span {
  min-height: 30px;
  padding: 6px 8px;
  font-size: .7rem;
  line-height: 1.16;
}

.tc-public-page .tc-mission-metrics {
  margin-top: 0;
  gap: 8px;
}

.tc-public-page .tc-mission-metrics div {
  padding: 10px;
}

.tc-public-page .tc-mission-metrics strong {
  font-size: 1.08rem;
}

.tc-public-page .tc-mission-metrics span {
  font-size: .72rem;
}

.tc-conversion-strip {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  margin: clamp(-24px, -2vw, -12px) auto 0;
  position: relative;
  z-index: 2;
}

.tc-conversion-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.tc-conversion-strip article,
.tc-price-proofbar article {
  display: grid;
  align-content: start;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-lg);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 16px 38px rgba(6, 18, 31, .08);
}

.tc-conversion-strip strong,
.tc-price-proofbar strong {
  color: var(--tc-text);
  font-size: clamp(1.55rem, 2.3vw, 2.15rem);
  line-height: 1;
  font-weight: 790;
  letter-spacing: 0;
}

.tc-conversion-strip span,
.tc-price-proofbar span {
  color: var(--tc-primary-strong);
  font-family: var(--tc-font-mono);
  font-size: .74rem;
  font-weight: 760;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.tc-conversion-strip p,
.tc-price-proofbar p {
  margin: 0;
  color: var(--tc-text-muted);
  font-size: .94rem;
  line-height: 1.5;
}

.tc-public-page .tc-mission-section-head {
  align-items: start;
}

.tc-public-page .tc-mission-section-head h2,
.tc-public-page .tc-mission-story-card h2,
.tc-public-page .tc-mission-product__copy h2 {
  letter-spacing: 0;
}

.tc-seo-hub {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 20px;
}

.tc-seo-hub a {
  display: grid;
  gap: 6px;
  padding: 18px 20px;
  border: 1px solid color-mix(in srgb, var(--tc-primary) 20%, var(--tc-border));
  border-radius: var(--tc-radius-lg);
  background: linear-gradient(180deg, #ffffff, #f5fafb);
  color: var(--tc-text);
  text-decoration: none;
  box-shadow: var(--tc-shadow-sm);
}

.tc-seo-hub a:hover {
  border-color: color-mix(in srgb, var(--tc-primary) 48%, var(--tc-border));
  transform: translateY(-1px);
}

.tc-seo-hub span {
  color: var(--tc-primary-strong);
  font-family: var(--tc-font-mono);
  font-size: .75rem;
  font-weight: 760;
  letter-spacing: .02em;
}

.tc-seo-hub strong {
  color: var(--tc-text);
  font-size: 1rem;
}

.tc-price-proofbar {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2)));
  margin: clamp(-24px, -2vw, -12px) auto 0;
  position: relative;
  z-index: 2;
}

.tc-price-proofbar__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.tc-price-proofbar article {
  min-height: 150px;
}

.tc-price-plan__button.tc-home-button--disabled,
.tc-price-plan__button.is-disabled {
  border-color: #c2cfdd;
  background: #e7edf3;
  color: #334155;
  opacity: 1;
}

.tc-status-hero,
.tc-onboarding-hero {
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2))) !important;
  margin: clamp(14px, 2vw, 24px) auto 0 !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  border-radius: var(--tc-radius-xl) !important;
  background-color: #071421 !important;
  background-image:
    linear-gradient(to right, rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .045) 1px, transparent 1px),
    linear-gradient(135deg, #071421 0%, #0b1e33 58%, #12304d 100%) !important;
  background-size: 52px 52px, 52px 52px, auto !important;
  color: var(--tc-text-inverse);
}

.tc-status-hero :where(h1, h2, h3),
.tc-onboarding-hero :where(h1, h2, h3) {
  color: #ffffff;
}

.tc-status-hero :where(p, li),
.tc-onboarding-hero :where(p, li) {
  color: var(--tc-text-inverse-muted);
}

.tc-status-hero .eyebrow,
.tc-onboarding-hero .eyebrow {
  color: var(--tc-primary);
}

.tc-onboarding-hero .tc-onboarding-runbook {
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .96);
  color: var(--tc-text);
  box-shadow: 0 22px 52px rgba(0, 0, 0, .22);
}

.tc-onboarding-hero .tc-onboarding-runbook strong {
  color: var(--tc-text);
}

.tc-onboarding-hero .tc-onboarding-runbook :where(ol, li, p, span) {
  color: var(--tc-text-muted);
}

.tc-onboarding-hero .tc-onboarding-runbook li::marker {
  color: var(--tc-primary-strong);
}

@media (max-width: 1180px) {
  .tc-public-page .tc-mission-hero__inner {
    grid-template-columns: 1fr;
  }

  .tc-public-page .tc-mission-hero__copy h1 {
    max-width: 16ch;
  }

  .tc-conversion-strip__grid,
  .tc-price-proofbar__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .tc-public-page .tc-mission-hero {
    padding: 48px 0 44px;
  }

  .tc-public-page .tc-mission-hero__copy h1 {
    max-width: 100%;
    font-size: clamp(2.55rem, 12vw, 3.25rem);
    line-height: 1.04;
  }

  .tc-public-page .tc-mission-hero__subtitle {
    font-size: 1rem;
  }

  .tc-conversion-strip,
  .tc-price-proofbar {
    width: min(100% - 32px, var(--tc-frame));
    margin-top: -10px;
  }

  .tc-conversion-strip__grid,
  .tc-price-proofbar__grid,
  .tc-seo-hub {
    grid-template-columns: 1fr;
  }

  .tc-conversion-strip article,
  .tc-price-proofbar article {
    padding: 16px;
  }

  .tc-status-hero,
  .tc-onboarding-hero {
    width: 100% !important;
    margin: 0 !important;
    border-right: 0;
    border-left: 0;
    border-radius: 0 !important;
  }

  .tc-public-page .tc-pro-flow {
    gap: 8px;
  }
}

@media (min-width: 941px) and (max-width: 1180px) {
  .tc-public-page .tc-home-nav__inner {
    width: min(var(--tc-frame), calc(100% - 22px));
  }

  .tc-public-page .tc-home-brand__text {
    font-size: .98rem;
  }

  .tc-public-page .tc-home-nav__links {
    gap: 8px;
    margin-left: 16px;
  }

  .tc-public-page .tc-home-nav__links a,
  .tc-public-page .tc-home-nav__login {
    padding-inline: 5px;
    font-size: .86rem;
  }

  .tc-public-page .tc-home-nav .language-select {
    min-width: 106px;
    padding-inline: 10px;
    font-size: .82rem;
  }

  .tc-public-page .tc-home-nav__panel {
    gap: 10px;
  }

  .tc-public-page .tc-home-nav__panel > .tc-home-button {
    min-width: 0;
    padding-inline: 12px;
    font-size: .84rem;
  }

  .tc-public-page .tc-mission-hero__inner {
    grid-template-columns: minmax(0, .96fr) minmax(380px, .72fr);
    gap: clamp(26px, 3.8vw, 42px);
  }

  .tc-public-page .tc-mission-hero__copy h1 {
    max-width: 15ch;
    font-size: clamp(3rem, 5.2vw, 3.55rem);
  }

  .tc-public-page .tc-mission-panel {
    max-width: none;
  }

  .tc-public-page .tc-pro-flow {
    gap: 4px;
  }

  .tc-public-page .tc-pro-flow span {
    padding-inline: 3px;
    font-size: .64rem;
    white-space: nowrap;
  }

  .tc-public-page .tc-pro-flow span:last-child {
    flex-grow: 1.36;
  }

  .tc-public-page .tc-pro-flow i {
    width: 8px;
    flex: none;
  }
}

@media (min-width: 861px) and (max-width: 1100px) {
  .tc-public-page .tc-home-nav__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    min-height: 0;
    padding: 10px 16px;
  }

  .tc-public-page .tc-home-nav__bar {
    justify-content: space-between;
    width: 100%;
    min-height: 42px;
  }

  .tc-public-page .tc-home-nav__toggle {
    display: inline-flex;
    flex: 0 0 auto;
  }

  .tc-public-page .tc-home-nav__panel {
    display: none;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 10px;
    width: 100%;
  }

  .tc-public-page .tc-home-nav.site-header--open .tc-home-nav__panel {
    display: grid;
  }

  .tc-public-page .tc-home-nav__links {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    width: 100%;
    margin-left: 0;
  }

  .tc-public-page .tc-home-nav__spacer {
    display: none;
  }

  .tc-public-page .tc-home-nav__links a,
  .tc-public-page .tc-home-nav__login,
  .tc-public-page .tc-home-nav .language-select,
  .tc-public-page .tc-home-nav .language-switch__form,
  .tc-public-page .tc-home-nav__panel > form,
  .tc-public-page .tc-home-nav__panel > .tc-home-button {
    width: 100%;
    justify-content: flex-start;
  }
}

@media (max-width: 940px) {
  .tc-public-page .tc-mission-panel {
    justify-self: stretch;
    max-width: 720px;
  }
}

@media (max-width: 520px) {
  .tc-public-page .tc-mission-hero {
    padding: 40px 0 38px;
  }

  .tc-public-page .tc-mission-panel__proof,
  .tc-public-page .tc-mission-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .tc-public-page .tc-mission-panel__proof span {
    padding: 6px;
    font-size: .68rem;
  }

  .tc-public-page .tc-mission-metrics div {
    padding: 9px 7px;
  }

  .tc-public-page .tc-mission-metrics strong {
    font-size: 1rem;
  }

  .tc-public-page .tc-mission-metrics span {
    font-size: .68rem;
  }
}

/* PublicSite subtle motion layer: professional feedback, no decorative excess. */
.tc-public-page :where(.tc-home-button, .btn, button.btn, .header-register-cta):not([disabled]):not(.tc-home-button--disabled):not(.is-disabled) {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  transition:
    transform .18s ease,
    border-color .18s ease,
    background-color .18s ease,
    box-shadow .22s ease;
}

.tc-public-page :where(.tc-home-button, .btn, button.btn, .header-register-cta):not([disabled]):not(.tc-home-button--disabled):not(.is-disabled)::after {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: 0;
  border-radius: inherit;
  background:
    linear-gradient(110deg, transparent 0 35%, rgba(255,255,255,.24) 48%, transparent 62%),
    transparent;
  opacity: 0;
  transform: translateX(-120%);
  pointer-events: none;
}

@media (hover: hover) {
  .tc-public-page :where(.tc-home-button, .btn, button.btn, .header-register-cta):not([disabled]):not(.tc-home-button--disabled):not(.is-disabled):hover {
    transform: translateY(-1px);
  }

  .tc-public-page :where(.tc-home-button, .btn, button.btn, .header-register-cta):not([disabled]):not(.tc-home-button--disabled):not(.is-disabled):hover::after {
    animation: tc-button-sheen .82s cubic-bezier(.22, .61, .36, 1);
  }
}

.tc-public-page :where(.tc-home-button, .btn, button.btn, .header-register-cta):not([disabled]):not(.tc-home-button--disabled):not(.is-disabled):active {
  transform: translateY(0);
}

.tc-public-page :where(.tc-mission-actions, .hero-actions, .tc-form-footer) :where(.tc-home-button--primary, .btn:not(.btn-quiet)):not([disabled]):not(.tc-home-button--disabled):not(.is-disabled) {
  animation: tc-primary-cta-breathe 5.8s ease-in-out infinite;
}

.tc-public-page :where(.tc-mission-flow-index, .tc-mission-flow-hub__mark, .tc-mission-flow-hub__mark span, .tc-mission-flow-hub__steps span, .tc-status-dot, .tc-mission-story-card--accent .tc-mission-list li span) {
  transform-origin: center;
  animation: tc-circle-breathe 4.8s ease-in-out infinite;
}

.tc-public-page .tc-mission-flow-hub__steps li:nth-child(2) span,
.tc-public-page .tc-mission-story-card--accent .tc-mission-list li:nth-child(2) span {
  animation-delay: .6s;
}

.tc-public-page .tc-mission-flow-hub__steps li:nth-child(3) span,
.tc-public-page .tc-mission-story-card--accent .tc-mission-list li:nth-child(3) span {
  animation-delay: 1.2s;
}

@keyframes tc-button-sheen {
  0% {
    opacity: 0;
    transform: translateX(-120%);
  }
  18% {
    opacity: .55;
  }
  100% {
    opacity: 0;
    transform: translateX(120%);
  }
}

@keyframes tc-primary-cta-breathe {
  0%, 100% {
    box-shadow: 0 14px 32px rgba(53, 211, 200, .22);
  }
  50% {
    box-shadow: 0 18px 42px rgba(53, 211, 200, .3);
  }
}

@keyframes tc-circle-breathe {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(53, 211, 200, 0);
  }
  50% {
    transform: scale(1.025);
    box-shadow: 0 0 0 6px rgba(53, 211, 200, .08);
  }
}

@media (prefers-reduced-motion: reduce) {
  .tc-public-page :where(.tc-home-button, .btn, button.btn, .header-register-cta, .tc-mission-flow-index, .tc-mission-flow-hub__mark, .tc-mission-flow-hub__mark span, .tc-mission-flow-hub__steps span, .tc-status-dot, .tc-mission-story-card--accent .tc-mission-list li span) {
    animation: none !important;
    transition-duration: 0s !important;
  }

  .tc-public-page :where(.tc-home-button, .btn, button.btn, .header-register-cta)::after {
    display: none;
  }
}

/* Dashboard header final guard: dashboards need the same premium navy identity
   as the PublicSite, but as a compact full-width application bar. */
.body--dashboard .shell,
.body--admin-dashboard .shell {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.body--dashboard,
.body--admin-dashboard {
  background: var(--tc-bg-page);
}

.body--dashboard .site-header,
.body--admin-dashboard .site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(14px, 2vw, 28px);
  width: 100%;
  max-width: none;
  min-height: 58px;
  margin: 0;
  padding: 8px clamp(18px, 3vw, 44px);
  border: 0;
  border-bottom: 1px solid rgba(148, 163, 184, .18);
  border-radius: 0;
  background:
    linear-gradient(to right, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(135deg, rgba(7, 20, 33, .99), rgba(11, 30, 51, .97) 58%, rgba(18, 48, 77, .94));
  background-size: 56px 56px, 56px 56px, auto;
  box-shadow: 0 14px 32px rgba(7, 20, 33, .2);
}

.body--dashboard .site-header__bar,
.body--admin-dashboard .site-header__bar {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  min-width: 0;
  min-height: 0;
  margin: 0;
}

.body--dashboard .site-header__panel,
.body--admin-dashboard .site-header__panel {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  gap: clamp(12px, 1.5vw, 20px);
}

.body--dashboard .brandmark,
.body--admin-dashboard .brandmark {
  gap: 10px;
  font-size: 1rem;
  letter-spacing: 0;
  text-transform: none;
}

.body--dashboard .brandmark__icon,
.body--admin-dashboard .brandmark__icon {
  width: 34px;
  height: 24px;
  object-fit: contain;
}

.body--dashboard .main-nav,
.body--admin-dashboard .main-nav,
.body--dashboard .header-actions,
.body--admin-dashboard .header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.body--dashboard .main-nav,
.body--admin-dashboard .main-nav {
  flex: 1 1 auto;
  justify-content: flex-end;
  min-width: 0;
}

.body--dashboard .header-actions,
.body--admin-dashboard .header-actions {
  flex: 0 0 auto;
  justify-content: flex-end;
  flex-wrap: nowrap;
}

.body--dashboard .main-nav a,
.body--admin-dashboard .main-nav a,
.body--dashboard .header-link,
.body--admin-dashboard .header-link {
  min-height: 36px;
  padding: 8px 10px;
  border-radius: var(--tc-radius-md);
  color: rgba(248, 251, 255, .8);
  font-size: .92rem;
  font-weight: 700;
  line-height: 1;
}

.body--dashboard .main-nav a:hover,
.body--admin-dashboard .main-nav a:hover,
.body--dashboard .header-link:hover,
.body--admin-dashboard .header-link:hover {
  background: rgba(255, 255, 255, .1);
  color: #ffffff;
}

.body--dashboard .language-select,
.body--admin-dashboard .language-select {
  min-height: 36px;
  border-radius: var(--tc-radius-md);
}

.body--dashboard .identity-chip,
.body--admin-dashboard .identity-chip {
  gap: 1px;
  padding: 6px 10px;
  border-radius: var(--tc-radius-md);
}

.body--dashboard .site-header .identity-chip__label,
.body--admin-dashboard .site-header .identity-chip__label {
  font-size: .9rem;
  line-height: 1.05;
}

.body--dashboard .site-header .identity-chip__role,
.body--admin-dashboard .site-header .identity-chip__role {
  font-size: .66rem;
  line-height: 1.05;
}

.body--dashboard .site-header .btn,
.body--admin-dashboard .site-header .btn {
  min-height: 38px;
  padding: 0 14px;
  border-radius: var(--tc-radius-md);
}

.body--dashboard .page-content,
.body--admin-dashboard .page-content {
  padding-top: 0;
}

@media (max-width: 1180px) {
  .body--dashboard .site-header,
  .body--admin-dashboard .site-header {
    align-items: stretch;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .body--dashboard .site-header__bar,
  .body--admin-dashboard .site-header__bar {
    justify-content: space-between;
  }

  .body--dashboard .nav-toggle,
  .body--admin-dashboard .nav-toggle {
    display: inline-flex;
    min-height: 38px;
  }

  .body--dashboard .site-header__panel,
  .body--admin-dashboard .site-header__panel {
    display: none;
    align-items: stretch;
    gap: 10px;
  }

  .body--dashboard .site-header--open .site-header__panel,
  .body--admin-dashboard .site-header--open .site-header__panel {
    display: grid;
  }

  .body--dashboard .main-nav,
  .body--admin-dashboard .main-nav,
  .body--dashboard .header-actions,
  .body--admin-dashboard .header-actions {
    align-items: stretch;
    flex-direction: column;
    width: 100%;
  }

  .body--dashboard .main-nav a,
  .body--admin-dashboard .main-nav a,
  .body--dashboard .header-link,
  .body--admin-dashboard .header-link,
  .body--dashboard .language-select,
  .body--admin-dashboard .language-select,
  .body--dashboard .header-actions form,
  .body--admin-dashboard .header-actions form,
  .body--dashboard .header-actions .btn,
  .body--admin-dashboard .header-actions .btn {
    width: 100%;
    justify-content: flex-start;
  }
}

@media (max-width: 860px) {
  .body--dashboard .site-header,
  .body--admin-dashboard .site-header {
    padding: 10px 14px;
  }
}

/* Shared public/auth header layout for PublicSite, Dashboard.Client and Dashboard.Admin. */
.tc-home-nav__inner {
  display: flex;
  align-items: center;
  gap: clamp(14px, 1.6vw, 24px);
  min-height: 66px;
}

.tc-home-nav__bar {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 0 0 auto;
  min-width: 0;
}

.tc-home-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 42px;
  text-decoration: none;
}

.tc-home-brand__image {
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  object-fit: contain;
}

.tc-home-brand__text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tc-home-nav__toggle {
  display: none;
}

.tc-home-nav__panel {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
}

.tc-home-nav__links {
  display: flex;
  align-items: center;
  flex: 0 1 auto;
  min-width: 0;
}

.tc-home-nav__spacer {
  flex: 1 1 auto;
  min-width: 12px;
}

.tc-home-nav .language-switch__form {
  flex: 0 0 auto;
  margin: 0;
}

.tc-home-nav .language-select {
  min-width: 128px;
}

.tc-home-nav .tc-home-button--sm {
  min-height: 44px;
  padding-inline: 16px;
}

@media (max-width: 1180px) and (min-width: 861px) {
  .tc-home-nav__links {
    gap: 10px;
    margin-left: 12px;
  }

  .tc-home-nav__links a,
  .tc-home-nav__login {
    font-size: .88rem;
  }

  .tc-home-nav .language-select {
    min-width: 112px;
  }
}

@media (max-width: 860px) {
  .shell > .tc-home-nav,
  .tc-public-page .tc-home-nav {
    top: 0;
    width: 100%;
    margin: 0;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .tc-home-nav__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    min-height: 0;
    padding: 10px 16px;
  }

  .tc-home-nav__bar {
    justify-content: space-between;
    width: 100%;
  }

  .tc-home-nav__toggle {
    display: inline-flex;
    flex: 0 0 auto;
  }

  .tc-home-nav__panel {
    display: none;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 10px;
    width: 100%;
  }

  .tc-home-nav.site-header--open .tc-home-nav__panel {
    display: grid;
  }

  .tc-home-nav__links {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    width: 100%;
    margin-left: 0;
  }

  .tc-home-nav__spacer {
    display: none;
  }

  .tc-home-nav__links a,
  .tc-home-nav__login,
  .tc-home-nav .language-select,
  .tc-home-nav .language-switch__form,
  .tc-home-nav__panel > form,
  .tc-home-nav__panel > .tc-home-button {
    width: 100%;
    justify-content: flex-start;
  }
}

/* The dashboard login reuses the public header, but its form must keep a stable width. */
.tc-public-auth-body {
  overflow-x: hidden;
}

.tc-public-auth-shell main.page-content,
.body--admin-auth main.page-content {
  display: block;
  width: 100%;
  min-width: 0;
  padding: clamp(70px, 8vw, 104px) 0 clamp(80px, 9vw, 118px);
}

.tc-public-auth-shell .auth-layout,
.body--admin-auth .auth-layout {
  box-sizing: border-box;
  width: min(760px, calc(100vw - 48px));
  max-width: calc(100vw - 48px);
  margin: 0 auto;
  padding: 0;
}

.tc-public-auth-shell .auth-layout .auth-panel,
.body--admin-auth .auth-layout .auth-panel {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  overflow: visible;
}

.tc-public-auth-shell .auth-layout .auth-panel > *,
.tc-public-auth-shell .auth-layout .auth-panel form,
.tc-public-auth-shell .auth-layout .auth-panel .field-grid,
.tc-public-auth-shell .auth-layout .auth-panel .auth-link-grid,
.tc-public-auth-shell .auth-layout .auth-panel .hero-actions,
.body--admin-auth .auth-layout .auth-panel > *,
.body--admin-auth .auth-layout .auth-panel form,
.body--admin-auth .auth-layout .auth-panel .field-grid,
.body--admin-auth .auth-layout .auth-panel .auth-link-grid,
.body--admin-auth .auth-layout .auth-panel .hero-actions {
  min-width: 0;
}

.tc-public-auth-shell .auth-layout .auth-panel .field-grid--double,
.body--admin-auth .auth-layout .auth-panel .field-grid--double {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 720px) {
  .tc-public-auth-shell main.page-content,
  .body--admin-auth main.page-content {
    padding: clamp(48px, 12vw, 72px) 0 clamp(56px, 12vw, 88px);
  }

  .tc-public-auth-shell .auth-layout,
  .body--admin-auth .auth-layout {
    width: min(100% - 32px, 680px);
    max-width: calc(100vw - 32px);
  }

  .tc-public-auth-shell .auth-layout .auth-panel .field-grid--double,
  .body--admin-auth .auth-layout .auth-panel .field-grid--double {
    grid-template-columns: 1fr;
  }
}

/* Final status-page guard: prevents the hero title and global card from collapsing across CSS layers. */
.tc-public-page .tc-status-hero {
  box-sizing: border-box;
  width: min(var(--tc-frame), calc(100% - (var(--tc-page-gutter) * 2))) !important;
  margin: clamp(14px, 2vw, 24px) auto 0 !important;
  overflow: hidden;
}

.tc-public-page .tc-status-hero__inner.container {
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 360px) !important;
  align-items: center !important;
  gap: clamp(36px, 5vw, 72px) !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: clamp(72px, 8vw, 108px) clamp(34px, 5vw, 72px) !important;
}

.tc-public-page .tc-status-hero__copy {
  width: 100% !important;
  max-width: 760px !important;
  min-width: 0 !important;
}

.tc-public-page .tc-status-hero__copy h1 {
  width: 100%;
  max-width: 760px !important;
  margin: 12px 0 20px !important;
  font-size: clamp(3.1rem, 6vw, 5rem) !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  text-wrap: balance;
}

.tc-public-page .tc-status-hero__copy p {
  max-width: 680px !important;
  font-size: clamp(1rem, 1.5vw, 1.2rem) !important;
  line-height: 1.55 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.tc-public-page .tc-status-global {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 380px !important;
  min-width: 0 !important;
  justify-self: end;
}

@media (max-width: 1040px) {
  .tc-public-page .tc-status-hero__inner.container {
    grid-template-columns: 1fr !important;
    padding: clamp(56px, 8vw, 76px) clamp(24px, 5vw, 44px) !important;
  }

  .tc-public-page .tc-status-hero__copy,
  .tc-public-page .tc-status-hero__copy h1,
  .tc-public-page .tc-status-hero__copy p,
  .tc-public-page .tc-status-global {
    max-width: 720px !important;
  }

  .tc-public-page .tc-status-global {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  .tc-public-page .tc-status-hero {
    width: 100% !important;
    margin: 0 !important;
    border-right: 0 !important;
    border-left: 0 !important;
    border-radius: 0 !important;
  }

  .tc-public-page .tc-status-hero__inner.container {
    padding: 46px 18px 42px !important;
  }

  .tc-public-page .tc-status-hero__copy h1 {
    max-width: 100% !important;
    font-size: clamp(2.5rem, 12vw, 3.35rem) !important;
  }
}
