/* Company copy, readable long-form content, and the full legal name. */
.tb-brand {
  min-width: 0;
  overflow-wrap: anywhere;
  line-height: 1.45;
}
.tb-nav-toggle { flex: 0 0 42px; }
.tb-company-hero {
  min-height: 360px;
  display: flex;
  align-items: center;
  color: var(--tb-ink);
  background: linear-gradient(120deg, #fff0f5, #fff9eb 60%, #edf8ff);
  border-bottom: 1px solid rgba(45, 42, 50, 0.08);
}
.tb-company-hero-inner { padding-block: 3.5rem; }
.tb-company-eyebrow { margin: 0 0 1rem; font-weight: 700; color: #6b4557; }
.tb-company-hero .tb-hero-title {
  font-size: clamp(1.65rem, 3.4vw, 2.7rem);
  line-height: 1.5;
  text-shadow: none;
  overflow-wrap: anywhere;
}
.tb-company-hero .tb-hero-sub { color: #514a53; max-width: 46rem; }
.tb-company-actions { display: flex; gap: 0.75rem; flex-wrap: wrap; margin-top: 1.5rem; }
.tb-company-actions .tb-btn-primary,
.tb-home .tb-cta .tb-btn-primary {
  background: #a82d5d;
  box-shadow: none;
}
.tb-company-actions .tb-btn-primary:hover,
.tb-home .tb-cta .tb-btn-primary:hover { background: #8c234d; }
.tb-company-summary { max-width: 60rem; margin-inline: auto; }
.tb-business-card .tb-card-body { padding: 1.4rem; }
.tb-business-card .tb-card-title a { color: #8c234d; }
.tb-business-more { display: inline-block; margin-top: 0.4rem; color: #922653; font-size: 0.9rem; font-weight: 700; }
.tb-prose { overflow-wrap: anywhere; }
.tb-prose h2 { margin: 2.2rem 0 1rem; font-size: 1.45rem; line-height: 1.55; }
.tb-prose h2:first-child { margin-top: 0; }
.tb-prose h3 { margin: 1.75rem 0 0.8rem; font-size: 1.15rem; line-height: 1.65; }
.tb-prose [id] { scroll-margin-top: 95px; }
.tb-company-toc { border-bottom: 1px solid #e8e1e5; margin-bottom: 2rem; padding-bottom: 1.5rem; }
.tb-company-toc ul { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; padding: 0; margin: 0; list-style: none; }
.tb-company-toc a { display: inline-block; padding: 0.4rem 0; color: #922653; text-decoration: underline; text-underline-offset: 3px; }
.tb-company-contact a { color: #922653; text-decoration: underline; }
.tb-company-contact + .tb-message-form { margin-top: 2rem; }
.tb-home .tb-cta .tb-btn { margin-top: 1.3rem; max-width: 100%; }
.tb-footer-name, .tb-footer-copy { overflow-wrap: anywhere; }
.tb-header-inner { position: relative; }
@media (max-width: 800px) {
  .tb-header-inner { min-height: 72px; padding-block: 0.55rem; }
  .tb-brand { font-size: 1.05rem; max-width: calc(100% - 58px); }
  .tb-nav { top: 100%; }
  .tb-company-hero { min-height: 320px; }
  .tb-company-hero-inner { padding-block: 2.4rem; }
  .tb-company-hero .tb-hero-title { font-size: clamp(1.3rem, 6vw, 1.6rem); text-wrap: balance; }
  .tb-company-hero .tb-hero-sub { font-size: 1rem; line-height: 1.85; }
  .tb-about-body { padding: 1.2rem; }
  .tb-prose { font-size: 1rem; line-height: 1.9; }
  .tb-prose h2 { font-size: 1.3rem; }
  .tb-prose h3 { font-size: 1.1rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
