/* Scoped copy of buttons.css, built by ZW Icons from https://zachwheat.com/wp-content/plugins/zw-icons/assets/kit/buttons.css */
body.zw-kit .btn { box-sizing: border-box; margin: 0; width: auto; height: auto; max-width: none; letter-spacing: normal; text-transform: none; text-shadow: none; text-align: center; white-space: normal; font-style: normal; transform: none; opacity: 1; filter: none; outline: 0; }
body.zw-kit .btn__text, body.zw-kit .btn__label, body.zw-kit .btn__sub, body.zw-kit .btn__tag, body.zw-kit .btn__icon, body.zw-kit .btn__dot { margin: 0; padding: 0; border: 0; font-family: inherit; letter-spacing: inherit; text-transform: inherit; }

body.zw-kit .btn {
  
  --_c: var(--btn-color, #1f9d63);
  --_dark: color-mix(in oklch, var(--_c), black 24%);
  --_darker: color-mix(in oklch, var(--_c), black 40%);
  --_light: color-mix(in oklch, var(--_c), white 24%);
  --btn-font: "Roboto", Arial, "Helvetica Neue", sans-serif;
  --btn-radius: 5px;
  --btn-h: 46px;          
  --btn-px: 22px;         
  --btn-fs: 15px;         
  --btn-icon: 18px;       

  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6em;
  min-height: var(--btn-h);
  padding: 0 var(--btn-px);
  border: 0;
  border-radius: var(--btn-radius);
  background: var(--_c);
  color: #ffffff;
  font: 700 var(--btn-fs)/1.1 var(--btn-font);
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  transition: transform .08s, box-shadow .12s, background-color .15s, filter .15s;
}
body.zw-kit .btn:not(:has(> span)) {
  padding-block: .5em;   
}
body.zw-kit .btn > * {
  position: relative;
  z-index: 1;            
}
body.zw-kit .btn:focus-visible {
  outline: 3px solid color-mix(in oklch, var(--_c), white 35%);
  outline-offset: 3px;
}
body.zw-kit .btn:disabled, body.zw-kit .btn[aria-disabled="true"] {
  opacity: .55;
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
body.zw-kit .btn { transition: none; }
}
body.zw-kit .btn__icon {
  display: grid;
  place-items: center;
  flex: none;
}
body.zw-kit .btn__icon svg {
  width: var(--btn-icon);
  height: var(--btn-icon);
  display: block;
}
body.zw-kit .btn__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-block: .6em;
  text-align: center;
}
body.zw-kit .btn__sub {
  margin-top: .3em;
  font-size: .66em;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  opacity: .9;
}
body.zw-kit .btn__tag {                      
  display: grid;
  place-items: center;
  align-self: stretch;
  margin-left: .5em;
  margin-right: calc(var(--btn-px) * -1);
  padding-inline: .7em;
  border-radius: 0 var(--btn-radius) var(--btn-radius) 0;
  background: rgba(0, 0, 0, .18);
  box-shadow: inset 1px 0 0 rgba(0, 0, 0, .15), inset 2px 0 0 rgba(255, 255, 255, .12);
  font-size: 1.45em;
  letter-spacing: -.02em;
}
body.zw-kit .btn--icon-end .btn__icon { order: 2; }
body.zw-kit .btn--icon-end .btn__tag { order: 3; }
body.zw-kit .btn--split .btn__text { flex: 1; }
body.zw-kit .btn--split .btn__icon {
  align-self: stretch;
  margin-left: calc(var(--btn-px) * -1);
  margin-right: .35em;
  padding-inline: .8em;
  border-radius: var(--btn-radius) 0 0 var(--btn-radius);
  background: rgba(0, 0, 0, .16);
  box-shadow: inset -1px 0 0 rgba(0, 0, 0, .15), inset -2px 0 0 rgba(255, 255, 255, .12);
}
body.zw-kit .btn--split.btn--icon-end .btn__icon {
  margin-left: .35em;
  margin-right: calc(var(--btn-px) * -1);
  border-radius: 0 var(--btn-radius) var(--btn-radius) 0;
  box-shadow: inset 1px 0 0 rgba(0, 0, 0, .15), inset 2px 0 0 rgba(255, 255, 255, .12);
}
body.zw-kit .btn--split.btn--icon-end:has(.btn__tag) .btn__icon {
  margin-right: 0;
  border-radius: 0;
}
body.zw-kit .btn--sm { --btn-h: 34px; --btn-px: 14px; --btn-fs: 13px; --btn-icon: 15px; }
body.zw-kit .btn--lg { --btn-h: 60px; --btn-px: 30px; --btn-fs: 19px; --btn-icon: 24px; }
body.zw-kit .btn--square { --btn-radius: 2px; }
body.zw-kit .btn--pill { --btn-radius: 999px; }
body.zw-kit .btn--pill.btn--split .btn__icon { padding-inline: .95em .8em; }
body.zw-kit .btn--caps .btn__label, body.zw-kit .btn--caps:not(:has(.btn__label)) { text-transform: uppercase; letter-spacing: .02em; }
body.zw-kit .btn--block { display: flex; width: 100%; }
body.zw-kit .btn--flat {
  box-shadow: inset 0 -3px 0 var(--_dark);
}
body.zw-kit .btn--flat:hover { background: color-mix(in oklch, var(--_c), white 9%); }
body.zw-kit .btn--flat:active {
  transform: translateY(2px);
  box-shadow: inset 0 -1px 0 var(--_dark);
}
body.zw-kit .btn--gloss {
  background: linear-gradient(180deg, var(--_light) 0%, var(--_c) 55%, color-mix(in oklch, var(--_c), black 8%) 100%);
  box-shadow:
    inset 0 0 0 1px var(--_dark),
    inset 0 2px 0 rgba(255, 255, 255, .35),
    0 3px 0 var(--_darker),
    0 5px 8px rgba(0, 0, 0, .18);
  text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}
body.zw-kit .btn--gloss::before {             
  content: "";
  position: absolute;
  inset: 1px 1px 50% 1px;
  border-radius: calc(var(--btn-radius) - 1px) calc(var(--btn-radius) - 1px) 40% 40% / calc(var(--btn-radius) - 1px) calc(var(--btn-radius) - 1px) 10px 10px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .32), rgba(255, 255, 255, .06));
  pointer-events: none;
}
body.zw-kit .btn--gloss:hover { filter: brightness(1.06); }
body.zw-kit .btn--gloss:active {
  transform: translateY(3px);
  box-shadow:
    inset 0 0 0 1px var(--_dark),
    inset 0 2px 3px rgba(0, 0, 0, .2),
    0 0 0 var(--_darker),
    0 1px 2px rgba(0, 0, 0, .2);
}
body.zw-kit .btn--light {
  background: linear-gradient(180deg, #ffffff 0%, #f1f1f1 55%, #e4e4e4 100%);
  box-shadow: inset 0 0 0 1px #cfcfcf, 0 1px 2px rgba(0, 0, 0, .1);
  color: #444444;
  text-shadow: 0 1px 0 #ffffff;
}
body.zw-kit .btn--light .btn__icon { color: var(--_c); }
body.zw-kit .btn--light.btn--split .btn__icon, body.zw-kit .btn--light .btn__tag {
  background: linear-gradient(180deg, var(--_light), var(--_c) 60%, var(--_dark));
  color: #ffffff;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .25);
  box-shadow: none;
}
body.zw-kit .btn--light:hover { background: linear-gradient(180deg, #ffffff, #f7f7f7 55%, #ececec); }
body.zw-kit .btn--light:active {
  transform: translateY(1px);
  background: linear-gradient(180deg, #e6e6e6, #f0f0f0);
  box-shadow: inset 0 0 0 1px #c4c4c4, inset 0 2px 3px rgba(0, 0, 0, .08);
}
body.zw-kit .btn--retro {
  --btn-font: "Bree Serif", Georgia, "Times New Roman", serif;
  font-weight: 400;
  background:
    repeating-linear-gradient(45deg, rgba(255, 255, 255, .05) 0 2px, transparent 2px 4px),
    linear-gradient(180deg, var(--_light), var(--_c) 70%);
  box-shadow:
    inset 0 0 0 1px var(--_dark),
    0 2px 0 var(--_darker),
    0 4px 8px rgba(0, 0, 0, .25);
  text-shadow: 0 1px 0 rgba(0, 0, 0, .35);
  letter-spacing: .01em;
}
body.zw-kit .btn--retro::after {             
  content: "";
  position: absolute;
  inset: 4px;
  border: 1px dashed rgba(255, 255, 255, .45);
  border-radius: calc(var(--btn-radius) - 3px);
  pointer-events: none;
}
body.zw-kit .btn--retro.btn--split .btn__icon { background: rgba(0, 0, 0, .14); }
body.zw-kit .btn--retro:hover { filter: brightness(1.07) saturate(1.05); }
body.zw-kit .btn--retro:active {
  transform: translateY(2px);
  box-shadow: inset 0 0 0 1px var(--_dark), 0 0 0 var(--_darker), 0 1px 3px rgba(0, 0, 0, .25);
}
body.zw-kit .btn--cta {
  --_c: var(--btn-color, #ffd000);
  --btn-font: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  --btn-fs: 19px;
  --btn-h: 54px;
  background: linear-gradient(180deg,
    color-mix(in oklch, var(--_c), white 45%) 0%,
    var(--_c) 45%,
    color-mix(in oklch, var(--_c), #ff7a00 22%) 100%);
  box-shadow:
    inset 0 0 0 1px color-mix(in oklch, var(--_c), black 18%),
    inset 0 2px 0 rgba(255, 255, 255, .6),
    0 5px 12px rgba(0, 0, 0, .28);
  color: var(--btn-cta-text, #0e1c4d);
  font-style: italic;
  font-weight: 900;
  letter-spacing: -.01em;
  text-transform: uppercase;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .55);
}
body.zw-kit .btn--cta.btn--sm { --btn-fs: 14px; --btn-h: 38px; }
body.zw-kit .btn--cta.btn--lg { --btn-fs: 26px; --btn-h: 70px; }
body.zw-kit .btn--cta .btn__sub { font-style: normal; font-weight: 700; }
body.zw-kit .btn--cta .btn__tag {
  background: linear-gradient(180deg, #ff3b3b, #d10f0f);
  color: #ffffff;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
  box-shadow: none;
}
body.zw-kit .btn--cta.btn--split .btn__icon { background: rgba(14, 28, 77, .1); }
body.zw-kit .btn--cta:hover { filter: brightness(1.04) saturate(1.1); transform: translateY(-1px); }
body.zw-kit .btn--cta:active {
  transform: translateY(2px);
  box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--_c), black 22%), inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .25);
}
body.zw-kit .btn--signal {
  --_c: var(--btn-color, #f59e0b);
  --_bg: var(--btn-signal-bg, #0d1b2e);
  --btn-font: "DM Mono", ui-monospace, Menlo, Consolas, monospace;
  --btn-radius: 4px;
  --btn-fs: 13px;
  --btn-h: 42px;
  --btn-px: 20px;
  --btn-icon: 16px;
  background: var(--_bg);
  border: 1px solid var(--_c);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
  color: var(--btn-signal-text, var(--_c));
  font-weight: 500;
  letter-spacing: .14em;
  text-transform: uppercase;
}
body.zw-kit .btn--signal.btn--sm { --btn-fs: 11px; --btn-h: 32px; --btn-px: 13px; --btn-icon: 13px; }
body.zw-kit .btn--signal.btn--lg { --btn-fs: 16px; --btn-h: 54px; --btn-px: 28px; --btn-icon: 20px; }
body.zw-kit .btn--signal .btn__sub { letter-spacing: .04em; text-transform: none; }
body.zw-kit .btn--signal .btn__tag, body.zw-kit .btn--signal.btn--split .btn__icon { background: color-mix(in oklch, var(--_c), transparent 86%); box-shadow: none; }
body.zw-kit .btn--signal .btn__tag { border-left: 1px solid var(--_c); }
body.zw-kit .btn--signal.btn--split .btn__icon { border-right: 1px solid var(--_c); }
body.zw-kit .btn--signal.btn--split.btn--icon-end .btn__icon { border-right: 0; border-left: 1px solid var(--_c); }
body.zw-kit .btn--signal:hover {
  background: color-mix(in oklch, var(--_bg), var(--_c) 9%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 0 12px color-mix(in oklch, var(--_c), transparent 72%);
}
body.zw-kit .btn--signal:active { transform: translateY(1px); }
body.zw-kit .btn__dot {
  --_dot: var(--btn-dot, var(--btn-color, #f59e0b));
  flex: none;
  width: .5em;
  height: .5em;
  min-width: 6px;
  min-height: 6px;
  border-radius: 50%;
  background: var(--_dot);
  box-shadow: 0 0 3px 1px color-mix(in oklch, var(--_dot), transparent 15%),
              0 0 10px 2px color-mix(in oklch, var(--_dot), transparent 45%);
  animation: zw-dot-glow 2.4s ease-in-out infinite;
}
body.zw-kit .btn--dot-end .btn__dot { order: 4; }
@keyframes zw-dot-glow {
  50% {
    box-shadow: 0 0 2px 0 color-mix(in oklch, var(--_dot), transparent 35%),
                0 0 5px 1px color-mix(in oklch, var(--_dot), transparent 70%);
  }
}
@media (prefers-reduced-motion: reduce) {
body.zw-kit .btn__dot { animation: none; }
}
body.zw-kit .btn-or {
  display: inline-flex;
  align-items: center;
}
body.zw-kit .btn-or > .btn:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-right: calc(var(--btn-px) + 10px);
}
body.zw-kit .btn-or > .btn:last-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  padding-left: calc(var(--btn-px) + 10px);
}
body.zw-kit .btn-or__sep {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  margin-inline: -15px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .2);
  color: #555555;
  font: 700 12px/1 var(--btn-font, Arial, sans-serif);
  text-transform: lowercase;
}

body.zw-kit .btn.btn, body.zw-kit .btn.btn:is(:link, :visited, :hover, :focus, :active) { color: #ffffff; text-decoration: none; border: 0; }
body.zw-kit .btn.btn--light, body.zw-kit .btn.btn--light:is(:link, :visited, :hover, :focus, :active) { color: #444444; }
body.zw-kit .btn.btn--cta, body.zw-kit .btn.btn--cta:is(:link, :visited, :hover, :focus, :active) { color: var(--btn-cta-text, #0e1c4d); }
body.zw-kit .btn.btn--signal, body.zw-kit .btn.btn--signal:is(:link, :visited, :hover, :focus, :active) { color: var(--btn-signal-text, var(--_c)); border: 1px solid var(--_c); }
body.zw-kit .btn .btn__icon .zw-icon { width: var(--btn-icon); height: var(--btn-icon); }
body.zw-kit .zw-btn-row { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 16px; margin-block: 1em; }
body.zw-kit .zw-btn-row--center { justify-content: center; }
body.zw-kit .zw-btn-row--right { justify-content: flex-end; }
body.zw-kit .zw-btn-row--stack { flex-direction: column; align-items: flex-start; }
body.zw-kit .zw-btn-row--stack.zw-btn-row--center { align-items: center; }
body.zw-kit .zw-btn-row--stack.zw-btn-row--right { align-items: flex-end; }
body.zw-kit .zw-btn-row--widget { margin-block: 0; }
