/* Apply cg-button to links, buttons or submit inputs. */
.cg-button, .cg-content .wp-block-button__link {
  box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center;
  min-height: 48px; max-width: 100%; gap: 8px; padding: 12px 24px;
  border: 2px solid transparent; border-radius: var(--cg-radius);
  background: var(--cg-red); color: #fff; font-family: var(--cg-font);
  font-size: 1rem; font-weight: 700; line-height: 1.35; text-align: center;
  text-decoration: none; white-space: normal; cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease;
}
.cg-button:hover, .cg-content .wp-block-button__link:hover { background: #c9151d; color: #fff; }
.cg-button:focus-visible, .cg-content .wp-block-button__link:focus-visible { outline: 3px solid var(--cg-ink); outline-offset: 3px; }
.cg-button--outline { background: transparent; border-color: var(--cg-red); color: var(--cg-red); }
.cg-button--outline:hover { background: var(--cg-red); color: #fff; }
.cg-button--full { width: 100%; }
.cg-button:disabled, .cg-button[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }
.cg-text-link { color: var(--cg-red); font-weight: 700; text-underline-offset: 3px; }
.cg-text-link:hover { color: #c9151d; }
.cg-text-link:focus-visible { outline: 3px solid var(--cg-ink); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .cg-button, .cg-content .wp-block-button__link { transition: none; } }
