button {
  appearance: none;
}
button,
.btn,
.btn:visited {
  display: inline-block;
  position: relative;
  border-radius: 0.13em;
  padding: 0;
  text-align: center;
  transition: background-color 0.2s;
  line-height: normal;
  margin: 1.2rem 1.2rem 0 0;
}
button .btn-label,
.btn .btn-label,
.btn:visited .btn-label {
  position: relative;
  display: inline-block;
  pointer-events: none;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}
button .btn-label sup,
.btn .btn-label sup,
.btn:visited .btn-label sup {
  color: #5E778B;
  top: -6px;
}
.btn-message {
  font-size: 0.73rem;
  margin-top: 0.27em;
}
.btn-large .btn-label {
  font-size: 1.2rem;
  padding: 1.14em 2.67em 1.14em;
}
.btn-large.btn-utility .btn-label,
.btn-large.btn-add .btn-label {
  padding-top: 1.08em;
  padding-bottom: 1.08em;
}
.btn-large.btn-text-action .btn-label,
.btn-large.btn-text-sub-action .btn-label {
  padding-left: 2.67em;
  padding-right: 2.67em;
}
@media only screen and (min-width: 0px) and (max-width: 540px) {
  .btn-large .btn-label {
    font-size: 0.87rem;
    line-height: 1.2;
    padding: 1.27em 2.46em 1.27em;
  }
  .btn-large.btn-utility .btn-label,
  .btn-large.btn-add .btn-label {
    padding-top: 1.19em;
    padding-bottom: 1.19em;
  }
  .btn-large.btn-text-action .btn-label,
  .btn-large.btn-text-sub-action .btn-label {
    padding-left: 2.46em;
    padding-right: 2.46em;
  }
}
.btn-med .btn-label {
  font-size: 0.87rem;
  line-height: 1.2;
  padding: 1.27em 2.46em 1.27em;
}
.btn-med.btn-utility .btn-label,
.btn-med.btn-add .btn-label {
  padding-top: 1.19em;
  padding-bottom: 1.19em;
}
.btn-med.btn-text-action .btn-label,
.btn-med.btn-text-sub-action .btn-label {
  padding-left: 2.46em;
  padding-right: 2.46em;
}
.btn-small .btn-label {
  font-size: 0.73rem;
  line-height: 1.2;
  padding: 0.5em 1.09em 0.5em;
}
.btn-small.btn-utility .btn-label,
.btn-small.btn-add .btn-label {
  padding-top: 0.41em;
  padding-bottom: 0.41em;
}
.btn-small.btn-text-action .btn-label,
.btn-small.btn-text-sub-action .btn-label {
  padding-left: 1.09em;
  padding-right: 1.09em;
}
.btn:hover {
  text-decoration: none;
  cursor: pointer;
}
.btn:focus,
.btn.vtest-focus {
  outline: none;
}
.btn-action {
  border: none;
  background-color: #3799cf;
}
.btn-action .btn-label {
  color: white;
}
.btn-action:hover {
  background-color: #2e8bbf;
}
.btn-action.selected,
.btn-action:active {
  background-color: #2178a8;
}
.btn-sub-action {
  border: none;
  background-color: #485F71;
}
.btn-sub-action .btn-label {
  color: white;
}
.btn-sub-action:hover {
  background-color: #344552;
}
.btn-sub-action.selected,
.btn-sub-action:active {
  background-color: #152835;
}
.btn-utility {
  border: 1px solid #bec6cd;
  background-color: white;
}
.btn-utility .btn-label {
  color: #3799cf;
}
.btn-utility:active,
.btn-utility.selected {
  border: 1px solid #3799cf;
}
.btn-add {
  border: 1px dashed #3799cf;
  background-color: transparent;
}
.btn-add .btn-label {
  color: #3799cf;
}
.btn-add:hover {
  border-color: #62b4e1;
}
.btn-add:hover .btn-label {
  color: #62b4e1;
}
.btn-text-action,
.btn-text-sub-action {
  background: none;
  border: none;
}
.btn-text-action .btn-label {
  color: #3799cf;
}
.btn-text-action:hover .btn-label {
  color: #62b4e1;
}
.btn-text-sub-action .btn-label {
  color: #485F71;
}
.btn-text-sub-action:hover .btn-label {
  color: #344552;
}
.btn-round {
  border-radius: 3.33em;
}
.btn-wrapper {
  display: inline-block;
}
.btn-price {
  margin: 1.6em 1.6em 0 0;
  font-weight: 500;
  background: white;
  min-width: 138px;
  border: 1px solid #dbdfe3;
  border-radius: 0.13em;
}
.btn-price:hover {
  border-color: #bec6cd;
}
.btn-price:hover .btn-label {
  color: #152835;
}
.btn-price:active {
  background: #f0f1f3;
  border: 1px solid #bec6cd;
}
.btn-price .btn-label {
  color: #5E778B;
  padding: 0.73em 0.8em;
}
.btn-price.out-of-policy .icon {
  color: #e75c5c;
}
.btn-close {
  margin: 0;
  border: none;
  background-color: transparent;
  font-size: 1rem;
  line-height: 1.45;
  color: inherit;
}
.btn-close:active {
  margin-top: 0;
}
.btn-close:after {
  padding: 0 0.2em;
}
.btn-close:before {
  display: block;
  position: absolute;
  box-sizing: content-box;
  top: -0.2em;
  left: -0.2em;
  width: 2em;
  height: 2em;
  content: '';
}
.btn-close .btn-label {
  padding: 0;
}
.btn-close.module-close {
  background-color: #000000;
  color: #2f5a77;
}
.btn-close.module-close:focus,
.btn-close.module-close:hover,
.btn-close.module-close:active {
  background-color: #152835;
  color: white;
}
.btn[disabled],
.btn[disabled]:hover,
.btn[disabled]:focus,
.btn[disabled].vtest-focus,
.btn.disabled,
.btn.disabled:hover,
.btn.disabled:focus,
.btn.disabled.vtest-focus {
  cursor: default;
  opacity: .8;
  pointer-events: none;
  background-color: #bec6cd;
  background-image: none;
}
.btn.error {
  background-color: #e75c5c;
}
.btn.error:hover {
  background-color: #e03030;
}
.btn.error.selected,
.btn.error:active {
  background-color: #b74a4a;
}
.btn.error[disabled],
.btn.error.disabled {
  background-color: #bec6cd;
}
.btn.success {
  background-color: #7dcd75;
}
.btn.success:hover {
  background-color: #5abf50;
}
.btn.success.selected,
.btn.success:active {
  background-color: #5caf54;
}
.btn.success[disabled],
.btn.success.disabled {
  background-color: #bec6cd;
}
.btn.warn {
  background-color: #ffc72c;
}
.btn.warn:hover {
  background-color: #f8b600;
}
.btn.warn.selected,
.btn.warn:active {
  background-color: #e4b636;
}
.btn.warn[disabled],
.btn.warn.disabled {
  background-color: #bec6cd;
}
.btn.btn-no-margin {
  margin: 0;
}
.col > .input-group > .btn,
.col-flush > .input-group > .btn {
  width: 100%;
}
.btn-group {
  display: inline-block;
  position: relative;
}
.btn-group > .btn {
  margin: 0 0 0 -0.4em;
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
  border-radius: 0.2em 0 0 0.2em;
}
.btn-group > .btn:last-of-type {
  border-radius: 0 0.2em 0.2em 0;
}
.btn-group > .btn:only-of-type {
  border-radius: 0.2em;
}
.btn-group .btn-med.btn-utility:active {
  margin-top: 0;
}
.btn-group .icon {
  padding: 0;
}
.btn-group.open .btn-sub-action.dropdown-toggle,
.btn-group .btn-sub-action.selected {
  background-color: #3799cf;
}
.btn-group + .btn-group {
  margin-left: 1.6em;
}
