.pretty * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.pretty input:not([type='checkbox']):not([type='radio']) {
  display: none;
}

.pretty {
  position: relative;
  display: inline-block;
  margin-right: 1em;
  white-space: nowrap;
  line-height: 1;
}

.pretty input {
  position: absolute;
  left: 0;
  top: 0;
  min-width: 1em;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
}

.pretty .state label {
  position: initial;
  display: inline-block;
  font-weight: normal;
  margin: 0;
  text-indent: 1.5em;
  min-width: calc(1em + 2px);
}

.pretty .state label:before,
.pretty .state label:after {
  content: '';
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0;
  border: 1px solid transparent;
  z-index: 0;
  position: absolute;
  left: 0;
  top: calc((0% - (100% - 1em)) - 8%);
  background-color: transparent;
}

.pretty .state label:before {
  border-color: #bdc3c7;
}

.pretty .state.p-is-hover,
.pretty .state.p-is-indeterminate {
  display: none;
}

@-webkit-keyframes zoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
  }
}

@keyframes zoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
  }
}

@-webkit-keyframes tada {
  0% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 0;
    -webkit-transform: scale(7);
            transform: scale(7);
  }

  38% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  55% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }

  72% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  81% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    -webkit-transform: scale(1.24);
            transform: scale(1.24);
  }

  89% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  95% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    -webkit-transform: scale(1.04);
            transform: scale(1.04);
  }

  100% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes tada {
  0% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 0;
    -webkit-transform: scale(7);
            transform: scale(7);
  }

  38% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  55% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }

  72% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  81% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    -webkit-transform: scale(1.24);
            transform: scale(1.24);
  }

  89% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  95% {
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    -webkit-transform: scale(1.04);
            transform: scale(1.04);
  }

  100% {
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@-webkit-keyframes jelly {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }

  40% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }

  50% {
    -webkit-transform: scale3d(0.85, 1.15, 1);
            transform: scale3d(0.85, 1.15, 1);
  }

  65% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }

  75% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

@keyframes jelly {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }

  40% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }

  50% {
    -webkit-transform: scale3d(0.85, 1.15, 1);
            transform: scale3d(0.85, 1.15, 1);
  }

  65% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }

  75% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

@-webkit-keyframes rotate {
  0% {
    opacity: 0;
    -webkit-transform: translateZ(-200px) rotate(-45deg);
            transform: translateZ(-200px) rotate(-45deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) rotate(0);
            transform: translateZ(0) rotate(0);
  }
}

@keyframes rotate {
  0% {
    opacity: 0;
    -webkit-transform: translateZ(-200px) rotate(-45deg);
            transform: translateZ(-200px) rotate(-45deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) rotate(0);
            transform: translateZ(0) rotate(0);
  }
}

@-webkit-keyframes pulse {
  0% {
    -webkit-box-shadow: 0px 0px 0px 0px #bdc3c7;
            box-shadow: 0px 0px 0px 0px #bdc3c7;
  }

  100% {
    -webkit-box-shadow: 0px 0px 0px 1.5em rgba(189, 195, 199, 0);
            box-shadow: 0px 0px 0px 1.5em rgba(189, 195, 199, 0);
  }
}

@keyframes pulse {
  0% {
    -webkit-box-shadow: 0px 0px 0px 0px #bdc3c7;
            box-shadow: 0px 0px 0px 0px #bdc3c7;
  }

  100% {
    -webkit-box-shadow: 0px 0px 0px 1.5em rgba(189, 195, 199, 0);
            box-shadow: 0px 0px 0px 1.5em rgba(189, 195, 199, 0);
  }
}

.pretty.p-default.p-fill .state label:after {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.pretty.p-default .state label:after {
  -webkit-transform: scale(0.6);
          transform: scale(0.6);
}

.pretty.p-default input:checked ~ .state label:after {
  background-color: #bdc3c7 !important;
}

.pretty.p-default.p-thick .state label:before,
.pretty.p-default.p-thick .state label:after {
  border-width: calc(1em / 7);
}

.pretty.p-default.p-thick .state label:after {
  -webkit-transform: scale(0.4) !important;
          transform: scale(0.4) !important;
}

.pretty.p-icon .state .icon {
  position: absolute;
  font-size: 1em;
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  left: 0;
  z-index: 1;
  text-align: center;
  line-height: normal;
  top: calc((0% - (100% - 1em)) - 8%);
  border: 1px solid transparent;
  opacity: 0;
}

.pretty.p-icon .state .icon:before {
  margin: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}

.pretty.p-icon input:checked ~ .state .icon {
  opacity: 1;
}

.pretty.p-icon input:checked ~ .state label:before {
  border-color: #5a656b;
}

.pretty.p-svg .state .svg {
  position: absolute;
  font-size: 1em;
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  left: 0;
  z-index: 1;
  text-align: center;
  line-height: normal;
  top: calc((0% - (100% - 1em)) - 8%);
  border: 1px solid transparent;
  opacity: 0;
}

.pretty.p-svg .state svg {
  margin: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}

.pretty.p-svg input:checked ~ .state .svg {
  opacity: 1;
}

.pretty.p-image .state img {
  opacity: 0;
  position: absolute;
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  top: 0;
  top: calc((0% - (100% - 1em)) - 8%);
  left: 0;
  z-index: 0;
  text-align: center;
  line-height: normal;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.pretty.p-image input:checked ~ .state img {
  opacity: 1;
}

.pretty.p-switch input {
  min-width: 2em;
}

.pretty.p-switch .state {
  position: relative;
}

.pretty.p-switch .state:before {
  content: '';
  border: 1px solid #bdc3c7;
  border-radius: 60px;
  width: 2em;
  -webkit-box-sizing: unset;
          box-sizing: unset;
  height: calc(1em + 2px);
  position: absolute;
  top: 0;
  top: calc((0% - (100% - 1em)) - 16%);
  z-index: 0;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pretty.p-switch .state label {
  text-indent: 2.5em;
}

.pretty.p-switch .state label:before,
.pretty.p-switch .state label:after {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  border-radius: 100%;
  left: 0;
  border-color: transparent;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.pretty.p-switch .state label:after {
  background-color: #bdc3c7 !important;
}

.pretty.p-switch input:checked ~ .state:before {
  border-color: #5a656b;
}

.pretty.p-switch input:checked ~ .state label:before {
  opacity: 0;
}

.pretty.p-switch input:checked ~ .state label:after {
  background-color: #5a656b !important;
  left: 1em;
}

.pretty.p-switch.p-fill input:checked ~ .state:before {
  border-color: #5a656b;
  background-color: #5a656b !important;
}

.pretty.p-switch.p-fill input:checked ~ .state label:before {
  opacity: 0;
}

.pretty.p-switch.p-fill input:checked ~ .state label:after {
  background-color: #fff !important;
  left: 1em;
}

.pretty.p-switch.p-slim .state:before {
  height: 0.1em;
  background: #bdc3c7 !important;
  top: calc(50% - 0.1em);
}

.pretty.p-switch.p-slim input:checked ~ .state:before {
  border-color: #5a656b;
  background-color: #5a656b !important;
}

.pretty.p-has-hover input:hover ~ .state:not(.p-is-hover) {
  display: none;
}

.pretty.p-has-hover input:hover ~ .state.p-is-hover {
  display: block;
}

.pretty.p-has-hover input:hover ~ .state.p-is-hover .icon {
  display: block;
}

.pretty.p-has-focus input:focus ~ .state label:before {
  -webkit-box-shadow: 0px 0px 3px 0px #bdc3c7;
          box-shadow: 0px 0px 3px 0px #bdc3c7;
}

.pretty.p-has-indeterminate input[type='checkbox']:indeterminate ~ .state:not(.p-is-indeterminate) {
  display: none;
}

.pretty.p-has-indeterminate input[type='checkbox']:indeterminate ~ .state.p-is-indeterminate {
  display: block;
}

.pretty.p-has-indeterminate input[type='checkbox']:indeterminate ~ .state.p-is-indeterminate .icon {
  display: block;
  opacity: 1;
}

.pretty.p-toggle .state.p-on {
  opacity: 0;
  display: none;
}

.pretty.p-toggle .state.p-off,
.pretty.p-toggle .state .icon,
.pretty.p-toggle .state .svg,
.pretty.p-toggle .state img {
  opacity: 1;
  display: inherit;
}

.pretty.p-toggle .state.p-off .icon {
  color: #bdc3c7;
}

.pretty.p-toggle input:checked ~ .state.p-on {
  opacity: 1;
  display: inherit;
}

.pretty.p-toggle input:checked ~ .state.p-off {
  opacity: 0;
  display: none;
}

.pretty.p-plain input:checked ~ .state label:before,
.pretty.p-plain.p-toggle .state label:before {
  content: none;
}

.pretty.p-plain.p-plain .icon {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.pretty.p-round .state label:before,
.pretty.p-round .state label:after {
  border-radius: 100%;
}

.pretty.p-round.p-icon .state .icon {
  border-radius: 100%;
  overflow: hidden;
}

.pretty.p-round.p-icon .state .icon:before {
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.pretty.p-curve .state label:before,
.pretty.p-curve .state label:after {
  border-radius: 20%;
}

.pretty.p-smooth label:before,
.pretty.p-smooth label:after,
.pretty.p-smooth .icon,
.pretty.p-smooth .svg {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pretty.p-smooth input:checked + .state label:after {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.pretty.p-smooth input:checked + .state .icon,
.pretty.p-smooth input:checked + .state .svg,
.pretty.p-smooth input:checked + .state img {
  -webkit-animation: zoom 0.2s ease;
          animation: zoom 0.2s ease;
}

.pretty.p-smooth.p-default input:checked + .state label:after {
  -webkit-animation: zoom 0.2s ease;
          animation: zoom 0.2s ease;
}

.pretty.p-smooth.p-plain input:checked + .state label:before {
  content: '';
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pretty.p-tada:not(.p-default) input:checked + .state .icon,
.pretty.p-tada:not(.p-default) input:checked + .state .svg,
.pretty.p-tada:not(.p-default) input:checked + .state img,
.pretty.p-tada:not(.p-default) input:checked + .state label:before,
.pretty.p-tada:not(.p-default) input:checked + .state label:after {
  -webkit-animation: tada 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1 alternate;
          animation: tada 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1 alternate;
  opacity: 1;
}

.pretty.p-jelly:not(.p-default) input:checked + .state .icon,
.pretty.p-jelly:not(.p-default) input:checked + .state .svg,
.pretty.p-jelly:not(.p-default) input:checked + .state img,
.pretty.p-jelly:not(.p-default) input:checked + .state label:before,
.pretty.p-jelly:not(.p-default) input:checked + .state label:after {
  -webkit-animation: jelly 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
          animation: jelly 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 1;
}

.pretty.p-jelly:not(.p-default) input:checked + .state label:before {
  border-color: transparent;
}

.pretty.p-rotate:not(.p-default) input:checked ~ .state .icon,
.pretty.p-rotate:not(.p-default) input:checked ~ .state .svg,
.pretty.p-rotate:not(.p-default) input:checked ~ .state img,
.pretty.p-rotate:not(.p-default) input:checked ~ .state label:before,
.pretty.p-rotate:not(.p-default) input:checked ~ .state label:after {
  -webkit-animation: rotate 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
          animation: rotate 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 1;
}

.pretty.p-rotate:not(.p-default) input:checked ~ .state label:before {
  border-color: transparent;
}

.pretty.p-pulse:not(.p-switch) input:checked ~ .state label:before {
  -webkit-animation: pulse 1s;
          animation: pulse 1s;
}

.pretty input[disabled] {
  cursor: not-allowed;
  display: none;
}

.pretty input[disabled] ~ * {
  opacity: .5;
}

.pretty.p-locked input {
  display: none;
  cursor: not-allowed;
}

.pretty input:checked ~ .state.p-primary label:after,
.pretty.p-toggle .state.p-primary label:after {
  background-color: #428bca !important;
}

.pretty input:checked ~ .state.p-primary .icon,
.pretty input:checked ~ .state.p-primary .svg,
.pretty.p-toggle .state.p-primary .icon,
.pretty.p-toggle .state.p-primary .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-primary-o label:before,
.pretty.p-toggle .state.p-primary-o label:before {
  border-color: #428bca;
}

.pretty input:checked ~ .state.p-primary-o label:after,
.pretty.p-toggle .state.p-primary-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-primary-o .icon,
.pretty input:checked ~ .state.p-primary-o .svg,
.pretty input:checked ~ .state.p-primary-o svg,
.pretty.p-toggle .state.p-primary-o .icon,
.pretty.p-toggle .state.p-primary-o .svg,
.pretty.p-toggle .state.p-primary-o svg {
  color: #428bca;
  stroke: #428bca;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-primary-o label:after {
  background-color: #428bca !important;
}

.pretty.p-switch input:checked ~ .state.p-primary:before {
  border-color: #428bca;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-primary:before {
  background-color: #428bca !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-primary:before {
  border-color: #245682;
  background-color: #245682 !important;
}

.pretty input:checked ~ .state.p-info label:after,
.pretty.p-toggle .state.p-info label:after {
  background-color: #5bc0de !important;
}

.pretty input:checked ~ .state.p-info .icon,
.pretty input:checked ~ .state.p-info .svg,
.pretty.p-toggle .state.p-info .icon,
.pretty.p-toggle .state.p-info .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-info-o label:before,
.pretty.p-toggle .state.p-info-o label:before {
  border-color: #5bc0de;
}

.pretty input:checked ~ .state.p-info-o label:after,
.pretty.p-toggle .state.p-info-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-info-o .icon,
.pretty input:checked ~ .state.p-info-o .svg,
.pretty input:checked ~ .state.p-info-o svg,
.pretty.p-toggle .state.p-info-o .icon,
.pretty.p-toggle .state.p-info-o .svg,
.pretty.p-toggle .state.p-info-o svg {
  color: #5bc0de;
  stroke: #5bc0de;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-info-o label:after {
  background-color: #5bc0de !important;
}

.pretty.p-switch input:checked ~ .state.p-info:before {
  border-color: #5bc0de;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-info:before {
  background-color: #5bc0de !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-info:before {
  border-color: #2390b0;
  background-color: #2390b0 !important;
}

.pretty input:checked ~ .state.p-success label:after,
.pretty.p-toggle .state.p-success label:after {
  background-color: #5cb85c !important;
}

.pretty input:checked ~ .state.p-success .icon,
.pretty input:checked ~ .state.p-success .svg,
.pretty.p-toggle .state.p-success .icon,
.pretty.p-toggle .state.p-success .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-success-o label:before,
.pretty.p-toggle .state.p-success-o label:before {
  border-color: #5cb85c;
}

.pretty input:checked ~ .state.p-success-o label:after,
.pretty.p-toggle .state.p-success-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-success-o .icon,
.pretty input:checked ~ .state.p-success-o .svg,
.pretty input:checked ~ .state.p-success-o svg,
.pretty.p-toggle .state.p-success-o .icon,
.pretty.p-toggle .state.p-success-o .svg,
.pretty.p-toggle .state.p-success-o svg {
  color: #5cb85c;
  stroke: #5cb85c;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-success-o label:after {
  background-color: #5cb85c !important;
}

.pretty.p-switch input:checked ~ .state.p-success:before {
  border-color: #5cb85c;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-success:before {
  background-color: #5cb85c !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-success:before {
  border-color: #357935;
  background-color: #357935 !important;
}

.pretty input:checked ~ .state.p-warning label:after,
.pretty.p-toggle .state.p-warning label:after {
  background-color: #f0ad4e !important;
}

.pretty input:checked ~ .state.p-warning .icon,
.pretty input:checked ~ .state.p-warning .svg,
.pretty.p-toggle .state.p-warning .icon,
.pretty.p-toggle .state.p-warning .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-warning-o label:before,
.pretty.p-toggle .state.p-warning-o label:before {
  border-color: #f0ad4e;
}

.pretty input:checked ~ .state.p-warning-o label:after,
.pretty.p-toggle .state.p-warning-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-warning-o .icon,
.pretty input:checked ~ .state.p-warning-o .svg,
.pretty input:checked ~ .state.p-warning-o svg,
.pretty.p-toggle .state.p-warning-o .icon,
.pretty.p-toggle .state.p-warning-o .svg,
.pretty.p-toggle .state.p-warning-o svg {
  color: #f0ad4e;
  stroke: #f0ad4e;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-warning-o label:after {
  background-color: #f0ad4e !important;
}

.pretty.p-switch input:checked ~ .state.p-warning:before {
  border-color: #f0ad4e;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-warning:before {
  background-color: #f0ad4e !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-warning:before {
  border-color: #c77c11;
  background-color: #c77c11 !important;
}

.pretty input:checked ~ .state.p-danger label:after,
.pretty.p-toggle .state.p-danger label:after {
  background-color: #d9534f !important;
}

.pretty input:checked ~ .state.p-danger .icon,
.pretty input:checked ~ .state.p-danger .svg,
.pretty.p-toggle .state.p-danger .icon,
.pretty.p-toggle .state.p-danger .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-danger-o label:before,
.pretty.p-toggle .state.p-danger-o label:before {
  border-color: #d9534f;
}

.pretty input:checked ~ .state.p-danger-o label:after,
.pretty.p-toggle .state.p-danger-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-danger-o .icon,
.pretty input:checked ~ .state.p-danger-o .svg,
.pretty input:checked ~ .state.p-danger-o svg,
.pretty.p-toggle .state.p-danger-o .icon,
.pretty.p-toggle .state.p-danger-o .svg,
.pretty.p-toggle .state.p-danger-o svg {
  color: #d9534f;
  stroke: #d9534f;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-danger-o label:after {
  background-color: #d9534f !important;
}

.pretty.p-switch input:checked ~ .state.p-danger:before {
  border-color: #d9534f;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-danger:before {
  background-color: #d9534f !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-danger:before {
  border-color: #a02622;
  background-color: #a02622 !important;
}

.pretty.p-bigger label:before,
.pretty.p-bigger label:after,
.pretty.p-bigger .icon,
.pretty.p-bigger .svg,
.pretty.p-bigger .img {
  font-size: 1.2em !important;
  top: calc((0% - (100% - 1em)) - 35%) !important;
}

.pretty.p-bigger label {
  text-indent: 1.7em;
}

@media print {
  .pretty .state:before,
  .pretty .state label:before,
  .pretty .state label:after,
  .pretty .state .icon {
    color-adjust: exact;
    /* stylelint-disable */
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}

.margenes {
  max-width: 1100px;
  margin: 0 auto;
  display: block;
  padding: 0px 10px;
}

.list_footer > div {
  margin-bottom: 56px;
}

#website_odiru .list_menu_footer a {
  display: block;
  margin-bottom: 20px;
}

.margenes_header {
  display: block;
  padding: 0px 23px;
}

#website_odiru .btnLogin {
  border-radius: 18px;
  border: solid 2px #81c6ffff;
  padding: 5px 28px;
  text-decoration: none !important;
}

#website_odiru .submenu_header a {
  display: block;
  color: white;
  font-family: ubunturegular;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 0.5px;
  padding: 7px 20px;
  background: #3f339f !important;
  cursor: pointer;
}

#website_odiru .menu_level1 > li.blue_dropdown > a {
  padding-top: 6px;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

#website_odiru .menu_level1 > li.blue_dropdown.open::before,
.submenu_header::before {
  content: '';
  -webkit-box-shadow: 0px 2px 11px 0px rgba(0, 0, 0, 0.5);
          box-shadow: 0px 2px 11px 0px rgba(0, 0, 0, 0.5);
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 0;
  border-radius: 8px;
}

.submenu_header::before {
  height: 90% !important;
  top: 10px;
}

.btnBlue {
  background: #261d6f;
}

.btnBlue {
  background: #261d6f;
}

.btnAcua {
  background: #4ababa;
}

#website_odiru .submenu_login .btnBlue {
  margin-bottom: 12px;
  margin-top: 6px;
}

#website_odiru .submenu_login .btnAcua {
  margin-top: 6px;
}

.submenu_login::before {
  -webkit-box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.7);
          box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.7);
  content: '';
  position: absolute;
  top: 4px;
  width: 100%;
  height: 98%;
  left: 0px;
  border-bottom-left-radius: 18px;
  border-bottom-right-radius: 18px;
}

.btn-purple {
  background: #a75af3ff !important;
  font-family: volte_roundedmedium;
  font-style: normal !important;
  line-height: normal !important;
  color: white !important;
}

.btnPedirCupo {
  padding: 20px !important;
}

.btn-purple:hover {
  opacity: 0.7;
}

header .margenes_header {
  /*background: linear-gradient(62deg, #24146e, #7ce1ce);*/
  background: white;
  display: block;
  z-index: 99;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.5);
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.5);
}

header .menu_header {
  display: block;
}

header .menu_header .logo_header {
  padding: 22px 0px;
}

header .menu_header .logo_header img {
  max-height: 42px;
}

header .menu_header .menu_level1 {
  padding: 0px;
  margin: 0px;
  display: inline-block;
}

header .menu_header .menu_level1 > li.blue_dropdown.open > a {
  background: #3f339f;
  text-decoration: none !important;
}

header .menu_header .menu_level1 > li {
  display: inline-block;
}

header .menu_header .menu_level1 > li > a {
  color: #3c3c3c;
  font-size: 16px;
  font-family: ubunturegular;
  display: inline-block;
  padding: 34px 18px 34px;
  letter-spacing: 0.4px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  position: relative;
  z-index: 1;
  outline: none !important;
}

header .menu_header .menu_level1 > li .submenu_header {
  background: #3f339f;
  border-radius: 8px;
  top: 30px;
  padding: 0px 0px 6px;
  margin: 0px;
  min-width: 100%;
  border: 0px;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

header .menu_header .menu_level1 > li .submenu_header li {
  position: relative;
  z-index: 2;
  display: block;
}

header .menu_header .menu_level1 > li .submenu_header li i {
  opacity: 0.62;
  margin-right: 2px;
}

header .menu_header .menu_level1 .white_dropdown {
  margin-left: 10px;
}

header .menu_header .menu_level1 .white_dropdown.open > a {
  background: white;
  color: #261d6f !important;
  text-shadow: none !important;
  border-bottom-left-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
  -webkit-box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.7) !important;
          box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.7) !important;
}

header .menu_header .menu_level1 .white_dropdown .submenu_login {
  background: white;
  margin: 0px;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-left-radius: 18px;
  border-bottom-right-radius: 18px;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border: 0px;
  padding-bottom: 15px;
}

header .menu_header .menu_level1 .white_dropdown .submenu_login span {
  letter-spacing: 0.3px;
  text-align: left;
  color: #4a4a4a;
  font-family: ubunturegular;
  display: block;
  font-size: 13px;
  padding-bottom: 2px;
}

header .menu_header .menu_level1 .white_dropdown .submenu_login a,
header .menu_header .menu_level1 .white_dropdown .submenu_login input[type='submit'] {
  display: inline-block;
  margin: 0px;
  font-family: ubunturegular;
  font-size: 13px;
  color: white;
  letter-spacing: 0.4px;
  border-radius: 4px;
  padding: 7px 5px;
  border: 0px;
  text-decoration: none !important;
}

header .menu_header .menu_level1 .white_dropdown .submenu_login a:hover,
header .menu_header .menu_level1 .white_dropdown .submenu_login input[type='submit']:hover {
  opacity: 0.8 !important;
}

header .menu_header .menu_level1 .white_dropdown .submenu_login .form-control {
  background-color: #d8d8d8;
  height: 32px;
  text-align: center !important;
}

header .menu_header .menu_level1 .white_dropdown .submenu_login form {
  background: white;
  z-index: 2;
  position: relative;
  margin-top: -9px;
  padding: 7px 10px 0px;
}

footer {
  background: #445b88;
  display: block;
  padding-top: 43.3px;
}

footer .sic_enlace_footer img {
  max-width: 100%;
}

footer .logo_footer {
  margin-bottom: 81.3px;
  display: block;
}

footer .list_footer ul {
  padding: 0px;
  margin: 0px;
}

footer .list_footer h5 {
  font-family: ubuntubold;
  font-size: 24px;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 0.5px;
  color: #ffffff;
  margin-bottom: 31px;
  margin-top: 0px;
}

footer .list_footer .list_menu_footer li {
  display: block;
}

footer .list_footer address,
footer .list_footer address a,
footer .list_footer .list_menu_footer a {
  font-family: ubunturegular;
  display: block;
  font-size: 14.7px;
  font-weight: normal;
  font-style: normal;
  letter-spacing: 0.4px;
  color: #ffffff;
  margin: 0px !important;
  padding: 0px;
  text-align: left;
}

footer .list_footer .redes_footer li {
  display: inline-block;
}

footer .list_footer .redes_footer li .fa-facebook {
  padding-right: 2px;
}

footer .list_footer .redes_footer li a {
  color: #261d6f !important;
  background: white;
  width: 31px;
  height: 31px;
  display: inline-block;
  font-size: 20px;
  margin-right: 20px;
  text-decoration: none !important;
  text-align: center;
  border-radius: 100%;
  padding: 5px 0px !important;
}

footer .list_footer .redes_footer li :last-of-type > a {
  margin-right: 0px !important;
}

.width_full {
  width: 100%;
}

/* genericos componentes */

.invalid-feedback {
  font-family: ubunturegular;
  color: #ce3636 !important;
  /* border-bottom: 1px #ce3636 solid; */
  margin-bottom: 5px;
  font-size: 12px;
}

.is-invalid {
  border: 1px #ce3636 solid !important;
}

.swal2-popup {
  font-size: 1.6rem !important;
  font-family: ubunturegular !important;
}

.swal2-actions button {
  font-family: volte_roundedmedium !important;
}

.minimalist {
  z-index: 99999999999999999 !important;
}

.minimalist.alert-info {
  background-color: #009bdb !important;
  color: white;
}

.minimalist.alert-info .close {
  color: #fff !important;
  opacity: inherit !important;
}

.minimalist .progress {
  height: 2px;
  margin-bottom: 0px;
  position: absolute;
  bottom: 0px;
  left: 0px;
  z-index: 2;
  width: 100%;
}

/* ------ Widgets ------- */

.p_seccion_contacto {
  padding-top: 91px;
  padding-bottom: 100px;
}

.p_seccion_contacto h3 {
  letter-spacing: 2.7px;
  text-align: center;
  color: #261d6f;
  font-family: ubunturegular;
  font-size: 24px;
  margin: 0px 0px 45px;
}

.p_seccion_contacto img {
  width: 185px;
  display: block;
  margin: 0 auto 70px;
}

.p_seccion_contacto p {
  letter-spacing: 0.3px;
  color: #4a4a4a;
  font-size: 16px;
  font-family: ubunturegular;
  margin: 0px;
}

/* ------ Estilos de botoneras ------ */

.btnBlueNew {
  background-color: #261d6f;
  border-radius: 27.3px;
  -webkit-box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.5);
  display: inline-block;
  color: white !important;
  font-size: 18px;
  min-width: 342px;
  letter-spacing: 0.3px;
  padding: 16px 40px;
  text-decoration: none !important;
  font-family: ubunturegular;
  text-align: center;
}

.btnBlueNew.marg_bottom_widget {
  margin-bottom: 47px;
}

.btnRedNew,
.btnWhiteBorderNew {
  font-family: "volte_roundedmedium";
  text-align: center;
}

.btnAquaRegistro {
  border-radius: 7.4px;
  border: solid 4px #4ababa;
  display: block;
  max-width: 612px;
  margin: 0 auto;
  font-family: volte_roundedmedium;
  font-size: 32.2px;
  font-weight: 500;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 2.7px;
  text-align: center;
  color: #4ababa;
  padding: 22.5px 10px;
  text-decoration: none !important;
}

/* ------ Estilos Cargandoo ------ */

.div_loading {
  position: fixed;
  background: white;
  top: 0px;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  padding: 30px 20px;
  z-index: 999999;
}

.div_loading img {
  width: 380px;
  max-width: 100%;
}

.div_loading p {
  font-size: 24px;
  font-family: mulisemibold;
}

.ocultar {
  display: none !important;
}

/* ---- animaciones checkbox y radio inputs ------- */

.checkbox .cr,
.radio .cr {
  position: relative;
  display: inline-block;
  border: 1px solid grey;
  border-radius: 0.25em;
  width: 1.3em;
  height: 1.3em;
  float: left;
  margin-right: 0.5em;
  background: white;
}

.radio .cr {
  border-radius: 50%;
}

.checkbox .cr .cr-icon,
.radio .cr .cr-icon {
  position: absolute;
  font-size: 1em;
  line-height: 0;
  top: 50%;
  left: 5%;
}

.radio .cr .cr-icon {
  margin-left: 0.04em;
}

.checkbox label input[type='checkbox'],
.radio label input[type='radio'] {
  display: none;
}

.checkbox label input[type='checkbox'] + .cr > .cr-icon,
.radio label input[type='radio'] + .cr > .cr-icon {
  -webkit-transform: scale(3) rotateZ(-20deg);
          transform: scale(3) rotateZ(-20deg);
  opacity: 0;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}

.checkbox label input[type='checkbox']:checked + .cr > .cr-icon,
.radio label input[type='radio']:checked + .cr > .cr-icon {
  -webkit-transform: scale(1) rotateZ(0deg);
          transform: scale(1) rotateZ(0deg);
  opacity: 1;
}

.checkbox label input[type='checkbox']:disabled + .cr,
.radio label input[type='radio']:disabled + .cr {
  opacity: 0.5;
}

.btn-pink,
.btn-white,
.btn-blue {
  width: 315.6px;
  height: 54.9px;
  border-radius: 27.5px;
  -webkit-box-shadow: 0 1px 14px 0 rgba(27, 10, 10, 0.4);
          box-shadow: 0 1px 14px 0 rgba(27, 10, 10, 0.4);
  font-family: volte_roundedmedium !important;
  font-size: 17.4px !important;
  font-weight: 500 !important;
  font-stretch: normal !important;
  font-style: normal !important;
  line-height: normal !important;
  letter-spacing: 0.29px;
  text-align: center;
  color: white !important;
  text-transform: uppercase;
}

.btn-blue {
  background-color: #261d6f !important;
}

.btn-pink {
  background-color: #a75af3 !important;
}

.btn-outline-white {
  width: 70% !important;
  height: 80px !important;
  font-family: volte_roundedmedium !important;
  font-size: 32.2px !important;
  font-weight: 500 !important;
  font-stretch: normal !important;
  font-style: normal !important;
  line-height: normal !important;
  letter-spacing: 2.67px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  color: white !important;
  border-radius: 7.4px !important;
  border: solid 2px white !important;
}

.btn-white {
  border: solid 2px #fff !important;
}

.row {
  margin-left: auto !important;
  margin-right: auto !important;
}

.btn-small {
  height: 35px;
  letter-spacing: 0.58px !important;
}

.custom-control-label span {
  vertical-align: middle;
}

.custom-control-label::before {
  width: 0.8rem !important;
  height: 0.8rem !important;
  left: -1.2rem !important;
  -webkit-box-shadow: 0 0 0 2px #261d6f;
          box-shadow: 0 0 0 2px #261d6f;
}

.custom-control-input:checked ~ .custom-control-label::before {
  border-color: #fff !important;
  background-color: #a75bf3 !important;
  border: solid 1px #fff;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: none !important;
}

.custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px #261d6f !important;
          box-shadow: 0 0 0 2px #261d6f !important;
}

.pretty .state label:before,
.pretty .state label:after {
  top: 0;
}

.pretty .state label::before {
  width: 1rem;
  height: 1rem;
  border: 2px solid #261d6f;
}

.pretty .state label:after {
  width: 1rem;
  height: 1rem;
  border: 1.2px solid #fff;
}

.pretty input:checked ~ .state.p-success-o label::before {
  border-color: #261d6f;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-success-o label::after {
  background-color: #4ababa !important;
}

.pretty .state label {
  margin-left: 0.3rem;
  font-family: ubunturegular;
  font-size: 11.4px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: 0.94px;
  color: #979797;
}

#website_odiru .solicitarbtn,
#website_odiru .btn-yellow-new,
#website_odiru .btn-Logins,
#website_odiru .btn-envios,
.introjs-tooltipbuttons > a,
.btnCerrarModal {
  background: #a75af3 !important;
  border-color: #a75af3 !important;
}

#ModalVerificacionNumero h4 {
  background: #261d6f !important;
}

.infoasesores > p > b {
  color: #261d6f !important;
}

#website_odiru .solicitarbtn,
#website_odiru .btn-yellow-new,
#website_odiru .btn-Logins,
#website_odiru .btn-envios,
.introjs-tooltipbuttons > a,
#website_odiru .btn-gris-new,
.btnCerrarModal {
  border-radius: 50px !important;
}

.checkboxStep2 .introjs-tooltipbuttons > a {
  font-family: ubunturegular;
  text-shadow: none !important;
  color: white !important;
  border-radius: 4px;
  border: 1px #be6301 solid !important;
  font-size: 13px;
  padding: .6em 2em;
}

#website_odiru .quienesFoot {
  display: none !important;
}

#website_odiru .btn-envios,
.franja_include a {
  border-radius: 30px !important;
}

.franja_include {
  background: #261d6f !important;
  border-radius: 6px;
}

.franja_include a {
  min-width: 170px;
}

.quienesP,
.quienesh2,
.barra1 h2,
.panel.panel-condicion h5,
.panel-condicion p,
.contactoKre h3,
.pConta,
.contactoKre,
.inputs {
  font-family: 'ubunturegular' !important;
}

.panel.panel-condicion h5 {
  margin-top: 0px;
  padding-top: 8px;
  padding-bottom: 0px;
  font-size: 16px;
}

.panel-condicion > a > i {
  background: #4ababa;
  border: 1px #4ababa solid;
}

.redes_footer > li:last-of-type a {
  margin-right: 0px !important;
}

.tooltip_with_scroll .tooltip u {
  text-decoration: line-through !important;
}

.tooltip_with_scroll .tooltip-inner,
.modal_detail_content__content_info_credit .tooltip-inner {
  background: white !important;
  color: #525252 !important;
  border: 1px #777 solid;
  -webkit-box-shadow: 0px 0px 2px #777;
          box-shadow: 0px 0px 2px #777;
}

@media (min-width: 960px) {
  .menu_header > .col-md-3 {
    max-width: 20% !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 20% !important;
            flex: 0 0 20% !important;
  }

  .menu_header > .col-md-9 {
    max-width: 80% !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 80% !important;
            flex: 0 0 80% !important;
  }
}

@media (max-width: 959px) and (min-width: 768px) {
  .logo_header > button {
    display: inline-block !important;
  }

  #menu_movil:not(.in) {
    display: none !important;
  }

  .bodlogo {
    margin-top: 5px;
  }

  #menu_movil .menu_level1 {
    width: 100% !important;
  }
}

@media (max-width: 959px) {
  #btnmenuss {
    border-color: #3c3c3c !important;
    margin: 14px 15px 8px !important;
    padding: 7px !important;
  }

  #btnmenuss > span {
    background: #3c3c3c !important;
  }

  .menu_header > .col-md-9 {
    padding: 0px !important;
  }

  #menu_movil .menu_level1 {
    display: block !important;
  }

  .text-center.menu_level1 > li {
    display: inline-block;
    text-align: left;
    width: 100%;
  }

  #website_odiru .menu_header .menu_level1 > li:first-of-type > a {
    border: 0px !important;
  }

  #website_odiru .menu_header .menu_level1 > li > a {
    display: inline-block;
    width: 100%;
    padding: 15px 0px !important;
    border-top: 1px #83a5ca solid;
    border-radius: 0px;
  }

  #website_odiru .menu_header .menu_level1 a#a_login {
    border-top: 1px #83a5ca solid !important;
  }

  #website_odiru .white_dropdown {
    margin: 0px 0px 8px !important;
  }

  #website_odiru .btnLogin {
    padding: 6px 28px !important;
    border-color: white !important;
  }

  header .menu_header .logo_header {
    padding: 0px !important;
    text-align: center;
  }

  .menu_header > .col-md-3 {
    padding: 12px;
  }

  #menu-fix {
    position: fixed !important;
    left: 0px;
    width: 100%;
    top: 0px;
  }
}

@media (max-width: 592px) {
  #website_odiru .logo_header img {
    margin-top: 0px !important;
  }

  header .menu_header .logo_header img {
    max-height: 100% !important;
  }

  .margenes_header {
    padding: 0px !important;
  }

  footer {
    padding-bottom: 30px;
  }

  #website_odiru .logo_header {
    padding: 0px 20px 4px 20px !important;
  }

  #website_odiru #btnmenuss {
    margin: 25px 15px 8px !important;
  }

  .row.list_footer,
  footer .list_footer address,
  footer .list_footer address a,
  footer .list_footer .list_menu_footer a {
    text-align: center;
  }

  .list_menu_footer.min_wlist {
    max-width: 100% !important;
  }

  .list_footer > div {
    margin-bottom: 15px !important;
  }
}

