:root {
  --fst-blue: #007fae;
  --fst-blue-dark: #005a84;
  --fst-green: #4faf00;
  --fst-green-dark: #3d8500;
  --fst-ink: #202633;
  --fst-text: #343b47;
  --fst-muted: #68717d;
  --fst-border: #dce3e7;
  --fst-surface: #ffffff;
  --fst-surface-alt: #f5f8f9;
  --fst-blue-soft: #eef7fa;
  --fst-green-soft: #f3f9ec;
  --fst-whatsapp: #25d366;
  --fst-radius-sm: 4px;
  --fst-radius-md: 8px;
  --fst-radius-lg: 12px;
  --fst-container: 1240px;
  --fst-focus: 0 0 0 3px rgba(0, 127, 174, 0.22);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.fst-shell {
  width: min(calc(100% - 40px), var(--fst-container));
  margin-inline: auto;
}

.fst-button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: var(--fst-radius-md);
  text-decoration: none;
  font: inherit;
  font-weight: 650;
  line-height: 1.2;
  cursor: pointer;
}

.fst-button svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.fst-button--primary {
  background: var(--fst-blue-dark);
  color: #fff;
}

.fst-button--primary:hover,
.fst-button--primary:focus-visible {
  background: #004b70;
  color: #fff;
}

.fst-button--secondary {
  border-color: var(--fst-border);
  background: #fff;
  color: var(--fst-blue-dark);
}

.fst-button--secondary:hover,
.fst-button--secondary:focus-visible {
  border-color: var(--fst-blue);
  background: var(--fst-blue-soft);
  color: var(--fst-blue-dark);
}

.fst-button--whatsapp {
  background: var(--fst-whatsapp);
  color: #102017;
}

.fst-button:focus-visible,
.fst-site-header button:focus-visible,
.fst-site-header a:focus-visible,
.fst-site-footer a:focus-visible {
  outline: none;
  box-shadow: var(--fst-focus);
}

.fst-overlay-open {
  overflow: hidden;
}

@media (max-width: 600px) {
  .fst-shell {
    width: min(calc(100% - 28px), var(--fst-container));
  }
}

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