:root {
  --btn-med-font-size: 10px;
  --btn-med-width: 150px;
  --btn-med-height: 30px;
  --btn-lrg-font-size: 15px;
  --btn-lrg-width: 200px;
  --btn-lrg-height: 40px;
  --btn-icon-font-size: 12px;
  --btn-icon-horizontal-width: 150px;
  --btn-icon-horizontal-height: 30px;
  --icon-horizontal-width: 15px;
  --icon-horizontal-height: 15px;
  --btn-icon-vertical-width: 85px;
  --btn-icon-vertical-height: 60px;
  --icon-vertical-width: 35px;
  --icon-vertical-height: 22px;
  --btn-icon-margin: 5px;
  --btn-primary-color: var(--brand-primary);
  --btn-primary-bg: var(--white);
  --btn-primary-border: 1px solid var(--brand-primary);
  --btn-primary-color-active: var(--white);
  --btn-primary-bg-active: var(--brand-primary);
  --btn-primary-border-active: 1px solid var(--brand-primary);
  --btn-secondary-color: var(--brand-secondary);
  --btn-secondary-bg: var(--white);
  --btn-secondary-border: 1px solid var(--brand-secondary);
  --btn-secondary-color-active: var(--white);
  --btn-secondary-bg-active: var(--brand-secondary);
  --btn-secondary-border-active: 1px solid var(--brand-secondary);
  --btn-radius: 0px;
  --btn-disabled-color: var(--gray);
}

.cope-core-button {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-family: var(--frutiger);
  font-weight: bold;
  text-decoration: none;
  border-radius: var(--btn-radius);
  max-width: 100%;
  cursor: pointer;
}
.cope-core-button.cope-core-button-style-primary {
  color: var(--btn-primary-color);
  background: var(--btn-primary-bg);
  border: var(--btn-primary-border);
}
.cope-core-button.cope-core-button-style-primary:hover, .cope-core-button.cope-core-button-style-primary:active, .cope-core-button.cope-core-button-style-primary.cope-core-button-active {
  color: var(--btn-primary-color-active);
  background: var(--btn-primary-bg-active);
  border: var(--btn-primary-border-active);
}
.cope-core-button.cope-core-button-style-secondary {
  color: var(--btn-secondary-color);
  background: var(--btn-secondary-bg);
  border: var(--btn-secondary-border);
}
.cope-core-button.cope-core-button-style-secondary:hover, .cope-core-button.cope-core-button-style-secondary:active, .cope-core-button.cope-core-button-style-secondary.cope-core-button-active {
  color: var(--btn-secondary-color-active);
  background: var(--btn-secondary-bg-active);
  border: var(--btn-secondary-border-active);
}
.cope-core-button.cope-core-button-type-med {
  font-size: var(--btn-med-font-size);
  width: var(--btn-med-width);
  height: var(--btn-med-height);
}
.cope-core-button.cope-core-button-type-lrg {
  font-size: var(--btn-lrg-font-size);
  width: var(--btn-lrg-width);
  height: var(--btn-lrg-height);
}
.cope-core-button.cope-core-button-hide {
  display: none;
}
.cope-core-button.cope-core-button-show {
  display: flex;
}
.cope-core-button.cope-core-button-type-icon {
  font-size: var(--btn-icon-font-size);
}
.cope-core-button.cope-core-button-type-icon .cope-core-button-icon {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-right, .cope-core-button.cope-core-button-type-icon.cope-core-button-icon-left {
  width: var(--btn-icon-horizontal-width);
  height: var(--btn-icon-horizontal-height);
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-right .cope-core-button-icon, .cope-core-button.cope-core-button-type-icon.cope-core-button-icon-left .cope-core-button-icon {
  width: var(--icon-horizontal-width);
  height: var(--icon-horizontal-height);
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-left .cope-core-button-icon {
  margin-right: var(--btn-icon-margin);
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-right {
  flex-direction: row-reverse;
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-right .cope-core-button-icon {
  margin-left: var(--btn-icon-margin);
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-top {
  width: var(--btn-icon-vertical-width);
  height: var(--btn-icon-vertical-height);
  flex-direction: column;
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-top .cope-core-button-icon {
  margin-bottom: var(--btn-icon-margin);
  width: var(--icon-vertical-width);
  height: var(--icon-vertical-height);
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background {
  width: var(--btn-icon-horizontal-width);
  height: var(--btn-icon-vertical-height);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  border: none;
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background.cope-core-button-style-primary:hover, .cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background.cope-core-button-style-primary:active, .cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background.cope-core-button-style-primary.cope-core-button-active, .cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background.cope-core-button-style-secondary:hover, .cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background.cope-core-button-style-secondary:active, .cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background.cope-core-button-style-secondary.cope-core-button-active {
  background-color: #fff;
}
.cope-core-button.cope-core-button-type-icon.cope-core-button-icon-background span {
  margin-left: 30px;
}
.cope-core-button.cope-core-button-disabled {
  color: var(--btn-disabled-color);
  opacity: 0.5;
  pointer-events: none;
}