/* Fortified Networks — shared button treatment (identical between both options) */

.cta-solid {
  cursor: pointer;
  border: none;
  background: var(--cream-soft);
  color: var(--ink);
  padding: 18px 30px;
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  transition: transform 160ms var(--ease-out), box-shadow 160ms var(--ease-out);
}
.cta-solid:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(1, 3, 20, .25); }
.cta-solid:active { transform: translateY(-2px) scale(0.97); }
.cta-solid .arrow { font-family: var(--font-mono); color: var(--accent-deep); transition: transform 160ms var(--ease-out); }
.cta-solid:hover .arrow { transform: translateX(3px); }

/* Was .12em -- see hero.css main-nav a for why this is now .18em: one
   shared tracking value for every 11px all-caps mono label site-wide. */
.cta-ghost {
  cursor: pointer;
  border: 1px solid rgba(255, 255, 255, .35);
  background: transparent;
  color: inherit;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  padding: 10px 16px;
  transition: background 160ms var(--ease-out), color 160ms var(--ease-out), border-color 160ms var(--ease-out), transform 160ms var(--ease-out);
}
.cta-ghost:hover { background: var(--cream-soft); color: var(--ink); border-color: transparent; }
.cta-ghost:active { transform: scale(0.97); }

@media (hover: none) and (pointer: coarse) {
  .cta-solid:hover { transform: none; box-shadow: none; }
}
