*, input, select, textarea, option, button {
    outline: none!important;
}

#offCanvasRight {
    width: 400px;
    background-color:#f3f3f3;
}

#offCanvasRight.position-right:not(.is-open) {
    transform: translateX(100%)!important;
}

#offCanvasRight.is-closed {
    transform: translateX(50%)!important;
}

.title-bar {
    /*background: #3f3f3f;*/
    background: #ffffff;
}

.loader {
    border: 16px solid #f3f3f3; /* Light grey */
    border-top: 16px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
  }
  
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }

  .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    border-color: #333333 transparent transparent;
}

.loading {
    -webkit-animation:fadein 2s;
       -moz-animation:fadein 2s;
         -o-animation:fadein 2s;
            animation:fadein 2s;
  }
  @-moz-keyframes fadein {
    from {opacity:0}
    to {opacity:1}
  }
  @-webkit-keyframes fadein {
    from {opacity:0}
    to {opacity:1}
  }
  @-o-keyframes fadein {
    from {opacity:0}
    to {opacity:1}
  }
  @keyframes fadein {
    from {opacity:0}
    to {opacity:1}
  }
  
  .spinner-wrapper {
    min-width:100%;
    min-height:100%;
    height:100%;
    top:0;
    left:0;
    background:rgba(255,255,255,0.65);
    position:absolute;
    z-index:300;
  }
  
  .spinner-text {
      position:absolute;
      top:40.2%;
      left:47%;
      margin:16px 0 0 35px;
      color:#333333;
      font-size:12px;
      letter-spacing:1px;
      font-weight:700
    }
    
  .spinner {
    margin:0;
    display:block;
    position:absolute;
    left:45%;
    top:40%;
    border:25px solid rgba(100,100,100,0.2);
    width:1px;
    height:1px;
    border-left-color:transparent;
    border-right-color:transparent;
    -webkit-border-radius:50px;
       -moz-border-radius:50px;
            border-radius:50px;
    -webkit-animation:spin 1.5s infinite;
       -moz-animation:spin 1.5s infinite;
            animation:spin 1.5s infinite;
  }
  
  @-webkit-keyframes spin {
    0%,100% {-webkit-transform:rotate(0deg) scale(1)}
    50%     {-webkit-transform:rotate(720deg) scale(0.6)}
  }
  
  @-moz-keyframes spin  {
    0%,100% {-moz-transform:rotate(0deg) scale(1)}
    50%     {-moz-transform:rotate(720deg) scale(0.6)}
  }
  @-o-keyframes spin  {
    0%,100% {-o-transform:rotate(0deg) scale(1)}
    50%     {-o-transform:rotate(720deg) scale(0.6)}
  }
  @keyframes spin  {
    0%,100% {transform:rotate(0deg) scale(1)}
    50%     {transform:rotate(720deg) scale(0.6)}
  }

  .spinner2-wrapper {
    min-width:100%;
    min-height:100%;
    height:100%;
    top:0;
    left:0;
    background:rgba(211, 211, 211, 0.25);
    position:absolute;
    z-index:300;
  }
  
  .spinner2-text {
      position:absolute;
      top:39.2%;
      left:40%;
      margin:16px 0 0 35px;
      color:#333333;
      font-size:20px;
      letter-spacing:1px;
      font-weight:700;
      padding:15px;
      background-color:#ffffff;
      border-radius: 8px;
      -webkit-box-shadow: 2px 2px 5px 2px rgba(204,204,204,0.5);
      box-shadow: 2px 2px 5px 2px rgba(204,204,204,0.5);
    }
    
  .spinner2 {
    margin:0;
    display:block;
    position:absolute;
    left:38%;
    top:40%;
    border:25px solid rgba(100,100,100,0.2);
    width:1px;
    height:1px;
    border-left-color:transparent;
    border-right-color:transparent;

  }
  
  @-webkit-keyframes spin {
    0%,100% {-webkit-transform:rotate(0deg) scale(1)}
    50%     {-webkit-transform:rotate(720deg) scale(0.6)}
  }
  
  @-moz-keyframes spin  {
    0%,100% {-moz-transform:rotate(0deg) scale(1)}
    50%     {-moz-transform:rotate(720deg) scale(0.6)}
  }
  @-o-keyframes spin  {
    0%,100% {-o-transform:rotate(0deg) scale(1)}
    50%     {-o-transform:rotate(720deg) scale(0.6)}
  }
  @keyframes spin  {
    0%,100% {transform:rotate(0deg) scale(1)}
    50%     {transform:rotate(720deg) scale(0.6)}
  }

  .menu a, .menu .button {
    padding: 0.4rem 1rem;
}

.position-right.is-transition-push {
  -webkit-box-shadow: none;
  box-shadow: none;
}


.switch .switch-paddle {
  width: 3.25rem;
}

.switch input:checked ~ .switch-paddle::after {
  left: 1.3rem;
}

.block-list {
  width: 100%;
  line-height: 1;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background: #fefefe;
}

.block-list a {
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
  color: #1779ba;
}

.block-list img {
  margin-right: 1rem;
}

.block-list img.small-icon {
  margin-right: 0.3rem;
}

.block-list, .block-list ul {
  list-style-type: none;
}

.block-list ul {
  margin-left: 0;
  margin-bottom: 0;
}

.block-list ul li {
  height: 4.0625rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.block-list li > input[type="checkbox"], .block-list li > input[type="radio"] {
  position: absolute;
  left: -9999px;
}

.block-list li > input[type="checkbox"] + label, .block-list li > input[type="radio"] + label {
  margin: 0;
  margin-left: 0.5rem;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.block-list li > input[type="checkbox"] + label.list-header, .block-list li > input[type="radio"] + label.list-header {
  margin: 0;
}

.block-list li > input[type="checkbox"]:checked + label::before, .block-list li > input[type="radio"]:checked + label::before {
  font: normal normal normal 14px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f00c";
  background-size: 100% 100%;
  width: 1.5em;
  height: 1.5em;
  color: #1779ba;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1rem;
  pointer-events: none;
}

.block-list .switch {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  margin: 0;
}

.block-list li {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.block-list li p {
  margin: 0;
}

.block-list .section-header-bg {
  width: 100%;
  height: 1.25rem;
  border-bottom: none;
  border-top: none;
  color: #fefefe;
}

.block-list .section-header-bg p {
  z-index: 10;
}

.block-list .section-header-bg.gray {
  background: #cacaca;
}

.block-list .section-header-bg.gray:before {
  content: '';
  height: 1.25rem;
  position: absolute;
  width: 1.25rem;
  background: #cacaca;
  left: -rem-calc(20);
}

.block-list .section-header-bg.gray:after {
  content: '';
  height: 1.25rem;
  position: absolute;
  width: 1.25rem;
  background: #cacaca;
  right: -rem-calc(20);
}

.block-list.block-list-short {
  margin-top: 2rem;
  border-top: 1px solid #e6e6e6;
}

.block-list.block-list-short li {
  height: 2.5rem;
}

.block-list.block-list-padded {
  padding: 0 1.25rem;
}

.block-list.block-list-padded p {
  margin-left: 0;
}

.block-list.with-icons li > a, .block-list.with-icons li > span, .block-list.with-icons li > label {
  padding-left: 8.925rem;
}

.block-list.with-icons li img, .block-list.with-icons li .iconic {
  position: absolute;
  top: 0.08;
  left: 0.08;
  width: 0.64;
  height: 0.64;
  border-radius: 8px;
  pointer-events: none;
}

.block-list header {
  padding-left: 0.75rem;
  padding-bottom: 0.5rem;
  height: 45px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  cursor: default;
  background-color: #e6e6e6;
  font-weight: bold;
  text-align: left;
  /*text-transform: uppercase;*/
}

.block-list li {
  position: relative;
  border-bottom: 1px solid #e6e6e6;
}

.block-list li label {
  color: #0a0a0a;
  font-size: 0.875rem;
  letter-spacing: 0;
  margin: 0;
}

.block-list li input, .block-list li select {
  margin: 0;
}

.block-list li button {
  padding: 1rem;
}

.block-list li button img {
  margin: 0;
}

.block-list li:first-child {
  border-top: none;
}

.block-list li > a,
.block-list li > span,
.block-list li > label {
  margin-bottom: 0;
}

.block-list li p {
  margin-bottom: 0;
}

.block-list li > span {
  cursor: default;
}

.block-list li > a, .block-list li > label {
  cursor: pointer;
}

.block-list li.block-list-time-item {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.block-list li.block-list-time-item div:first-of-type {
  border-right: 1px solid #1779ba;
  padding-right: 1.25rem;
  margin-right: 0.625rem;
}

.block-list li .list-form {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.block-list li .list-form label {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  text-align: right;
  color: #4D4D4E;
  font-weight: 400;
}

.block-list li .list-form [type="text"], .block-list li .list-form [type="tel"] {
  border: none;
  box-shadow: none;
  text-align: center;
}

.block-list li p {
  margin-left: 0.5rem;
}

.block-list li.list-header-selected {
  padding: 1.25rem 2rem 1.25rem;
  border: none;
}

.block-list li.with-chevron::after {
  font: normal normal normal 14px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f054";
  display: block;
  right: 1rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-weight: bold;
  font-size: 1em;
  color: #8a8a8a;
}

.block-list li.with-chevron a {
  color: #8a8a8a;
}

.block-list li.with-chevron img {
  vertical-align: bottom;
}

.block-list li .block-list-label {
  display: inline-block;
  float: right;
  padding: 0;
  pointer-events: none;
}

.block-list-item-highlight span,
.block-list-item-highlight p {
  color: #1779ba;
}

#offCanvasRight {
  background-color: #ffffff;
}

.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0,0,0,0.2);
  background-clip: padding-box;
  display: none;
}

[type='checkbox'], [type='radio'] {
  margin: 0 0 0 0 !important;
}
