:root {
  --ts-navy: #0f1b2d;
  --ts-cyan: #00b4d8;
  --ts-cyan-dark: #0e7490;
  --ts-slate: #475569;
  --ts-white: #ffffff;
  --ts-snow: #f8fafc;
  --ts-light-slate: #f1f5f9;
  --ts-border: #cbd5e1;
  --ts-success: #10b981;
  --ts-warning: #f59e0b;
  --ts-error: #ef4444;
  --ts-content: 760px;
  --ts-wide: 1280px;
}

html {
  scroll-behavior: smooth;
}

body {
  color: var(--ts-navy);
  background: var(--ts-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--ts-navy);
  line-height: 1.2;
}

p {
  color: var(--ts-slate);
}

a {
  color: var(--ts-cyan);
}

a:hover,
a:focus-visible {
  color: var(--ts-cyan-dark);
}

.ts-shell {
  max-width: var(--ts-wide);
  margin: 0 auto;
  padding: 0 24px;
}

.ts-section {
  padding: 64px 0;
}

.ts-section--alt {
  background: var(--ts-snow);
}

.ts-kicker {
  margin: 0 0 8px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  font-weight: 600;
  font-size: 12px;
  color: var(--ts-cyan-dark);
}

.ts-proof {
  border-left: 4px solid var(--ts-cyan);
  padding: 8px 0 8px 16px;
  margin-top: 16px;
  color: var(--ts-navy);
  font-weight: 600;
}

.ts-chip {
  display: inline-block;
  border-radius: 999px;
  border: 1px solid var(--ts-border);
  padding: 4px 10px;
  font-size: 12px;
  color: var(--ts-slate);
  background: var(--ts-white);
}

.ts-cta-primary .wp-block-button__link {
  background: var(--ts-cyan);
  color: var(--ts-white);
}

.ts-cta-primary .wp-block-button__link:hover,
.ts-cta-primary .wp-block-button__link:focus-visible {
  background: var(--ts-cyan-dark);
  color: var(--ts-white);
}

.ts-cta-secondary .wp-block-button__link {
  background: transparent;
  color: var(--ts-navy);
  border: 1px solid var(--ts-navy);
}

.ts-cta-secondary .wp-block-button__link:hover,
.ts-cta-secondary .wp-block-button__link:focus-visible {
  background: var(--ts-navy);
  color: var(--ts-white);
}

@media (max-width: 781px) {
  .ts-shell {
    padding: 0 16px;
  }

  .ts-section {
    padding: 48px 0;
  }
}
