/* Valcamonica color scheme */
/*
 * TYPOGRAPHY
 *
 * Definition of typographic styles
 */
/* ------------------------------------ *\
   #FONTS
\* ------------------------------------ */
/* cyrillic-ext */
/* Main font - ALEGREYA SANS */
/* FONT FACE */
/* ------------------------------------ *\
   #HEADINGS
\* ------------------------------------ */
/* ------------------------------------ *\
   #LINKS
\* ------------------------------------ */
/*
!* For fluid typography: setting a minimum font size for smaller screens *!

@media screen and (min-width: 50em) { !* 800px *!
  html {
    font-size: 2vw;
  }
}

!* For fluid typography: avoid jump between fluid and fixed font-size breakpoint *!

@media screen and (min-width: 75em) { !* 1200px *!
  html {
    font-size: 1.5em;
  }
}*/
/*
 *    Available fonts
 */
@font-face {
  font-family: 'Josefin Sans';
  src: url("../fonts/Josefin Sans/JosefinSans-Light.ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Abel';
  src: url("../fonts/Abel/Abel-Regular.ttf");
  font-weight: normal;
  font-style: normal; }

/**
 * BASE
 *
 * Basic style for tag and general classes
 */
body.fontsloaded {
  font-family: "Abel", sans-serif !important; }

body {
  min-height: 100%;
  margin: 0;
  padding: 0;
  color: #605846;
  font-size: 16px;
  /* To change with fluid typography*/
  -webkit-font-smoothing: antialiased;
  /* Fix for webkit rendering */
  -webkit-text-size-adjust: 100%;
  text-rendering: optimizeLegibility;
  font-variant-ligatures: common-ligatures; }

/* Settng basic font size for fluid typography*/
/*
html {
  font-size: calc(1em + 1vw) !important;
}
*/
html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  html html {
    font-size: calc(1em + 1vh); }

*, *:before, *:after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit; }

html, body, .ionic-body {
  height: 100%;
  font-family: "Abel", sans-serif !important; }

img {
  max-width: 100%;
  height: auto; }

label {
  line-height: 1.2; }

a {
  text-decoration: none; }

p, a {
  font-family: "Abel", sans-serif; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Abel", sans-serif; }

h1, h2, h3, h4 {
  font-size: 16px !important; }

.title-center {
  text-align: center !important; }

button {
  font-family: "Abel", sans-serif; }

.button:hover {
  color: inherit; }

@media screen and (min-width: 320px) {
  html {
    font-size: 2vh; } }

@media screen and (min-width: 1025px) {
  html {
    font-size: 1.5em; } }

#map.grayscale-100 .leaflet-pane.leaflet-rotate-pane img {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%); }

#map.grayscale-75 .leaflet-pane.leaflet-rotate-pane img {
  -webkit-filter: grayscale(75%);
  filter: grayscale(75%); }

#map.grayscale-50 .leaflet-pane.leaflet-rotate-pane img {
  -webkit-filter: grayscale(50%);
  filter: grayscale(50%); }

#map.grayscale-25 .leaflet-pane.leaflet-rotate-pane img {
  -webkit-filter: grayscale(25%);
  filter: grayscale(25%); }

#map.opacity-80 .leaflet-pane.leaflet-rotate-pane img {
  opacity: 0.8 !important; }

#map.opacity-60 .leaflet-pane.leaflet-rotate-pane img {
  opacity: 0.6 !important; }

#map.opacity-40 .leaflet-pane.leaflet-rotate-pane img {
  opacity: 0.4 !important; }

/**
 * BUTTONS
 *
 * Style for all types of buttons
 */
/* ------------------------------------ *\
   #BUTTONS
\* ------------------------------------ */
.modal.static-modal button {
  max-width: 80%;
  margin: 0 auto; }

button.button-orange {
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 0.8em;
  line-height: 1.2; }

button.button-reset {
  color: #4C676A;
  font-size: 1.1em; }

button.button-positive {
  background-color: #444 !important; }

button.button-block {
  display: inline-block;
  color: #ffffff;
  background-color: #444;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 18px;
  padding: 5px 30px;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border: 1px solid rgba(0, 0, 0, 0.3);
  border-bottom-width: 3px;
  margin: 0px auto 10px !important;
  background-color: #625a47;
  /* Fallback Color */
  background-image: -webkit-gradient(linear, left top, left bottom, from(#777161), to(#625a47));
  /* Saf4+, Chrome */
  background-image: -webkit-linear-gradient(top, #777161, #625a47);
  /* Chrome 10+, Saf5.1+, iOS 5+ */
  background-image: -moz-linear-gradient(top, #777161, #625a47);
  /* FF3.6 */
  background-image: -ms-linear-gradient(top, #777161, #625a47);
  /* IE10 */
  background-image: -o-linear-gradient(top, #777161, #625a47);
  /* Opera 11.10+ */
  background-image: linear-gradient(top, #777161, #625a47);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='$fromColor', EndColorStr='$toColor');
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.5);
  /*&:hover {
      background-color: #e3e3e3!important;
      border-color: rgba(0,0,0,0.5);
      color: #444!important;
    }*/ }
  button.button-block .icon {
    vertical-align: baseline;
    margin: 0 5px; }
    button.button-block .icon:before {
      vertical-align: middle; }

button.sign-in, button.button-enable-disable {
  background-color: #918f75;
  /* Fallback Color */
  background-image: -webkit-gradient(linear, left top, left bottom, from(#b4b2a1), to(#918f75));
  /* Saf4+, Chrome */
  background-image: -webkit-linear-gradient(top, #b4b2a1, #918f75);
  /* Chrome 10+, Saf5.1+, iOS 5+ */
  background-image: -moz-linear-gradient(top, #b4b2a1, #918f75);
  /* FF3.6 */
  background-image: -ms-linear-gradient(top, #b4b2a1, #918f75);
  /* IE10 */
  background-image: -o-linear-gradient(top, #b4b2a1, #918f75);
  /* Opera 11.10+ */
  background-image: linear-gradient(top, #b4b2a1, #918f75);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='$fromColor', EndColorStr='$toColor');
  text-shadow: none; }

button.button-reset {
  background: rgba(76, 103, 106, 0.4);
  text-shadow: 0 0 1px rgba(34, 28, 18, 0.4); }

button.login-button {
  white-space: initial;
  max-width: 215px;
  display: block; }
  button.login-button .icon {
    margin-left: 3px;
    font-size: 19px; }

.button {
  text-transform: uppercase !important;
  font-weight: bold !important; }
  .button.button-full {
    margin-top: 0;
    margin-bottom: 0; }
  .button.button-half.button-block {
    width: 49%;
    display: inline; }

/* Map/images expand button */
.btn-expand {
  display: block;
  width: 54px;
  height: 54px;
  background: #605846;
  border-radius: 50%;
  position: absolute;
  text-align: center;
  line-height: 54px;
  color: #f7f9f1; }
  .btn-expand .icon {
    font-size: 34px;
    vertical-align: middle; }
  .btn-expand:hover, .btn-expand:focus {
    background: #433d30; }

/* Map expand */
.map-expand {
  width: 45px;
  height: 45px;
  margin-top: -22px;
  margin-left: -22px;
  background: rgba(96, 88, 70, 0.7);
  top: 50%;
  left: 50%;
  z-index: 1000;
  line-height: 43px; }
  .map-expand .icon {
    font-size: 27px;
    position: absolute;
    top: 50%;
    margin-top: -20.5px;
    left: 50%;
    margin-left: -8px; }
  .map-expand:hover, .map-expand:focus {
    background: #605846; }
  .map-search .map-expand,
  .map-page .map-expand,
  .hide-map .map-expand {
    display: none; }
  .map-expand.map-expand-right {
    margin-top: 10px;
    margin-right: 10px;
    margin-left: 0;
    top: 0;
    right: 0;
    left: initial; }
  .map-expand.map-shrink {
    display: none; }
    .map-expand.map-shrink .icon {
      margin-top: -13px;
      margin-left: -10px; }
    .map-page .map-expand.map-shrink {
      display: block; }

/* Search buttons */
.button-select {
  display: inline-block;
  width: 100%;
  height: 44px;
  min-height: 44px;
  margin-right: 5px;
  padding-left: 35px;
  background: transparent;
  border: 1px solid #918f75;
  border-radius: 40px;
  font-size: 11px;
  color: #918f75;
  line-height: 1;
  text-align: left;
  position: relative; }
  .button-select .icon {
    display: inline-block;
    margin-right: 0;
    position: absolute;
    left: 15px;
    color: inherit; }
    .button-select .icon:before {
      font-size: 13px;
      line-height: 32px; }

.button-search-map {
  width: 100%;
  height: 40px;
  min-height: 40px;
  text-align: center;
  color: #ffffff;
  border-radius: 0;
  position: relative;
  z-index: 300;
  line-height: 40px; }
  .button-search-map:hover {
    color: #ffffff; }

@media only screen and (min-width: 1025px) {
  .map-expand {
    display: block; }
    .desktop-full-map .map-expand,
    .map-search .map-expand,
    .map-page .map-expand {
      display: none; }
    .map-expand.map-shrink {
      display: none; }
      .map-search .map-expand.map-shrink {
        display: block; }
      .hide-map .map-expand.map-shrink,
      .map-page .map-expand.map-shrink,
      .map-search .map-expand.map-shrink {
        display: block; } }

@media only screen and (max-width: 380px) {
  .button.button-half.button-block {
    width: 100%;
    display: block; } }

/**
 * FORMS
 *
 * Style for forms elements
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
.checkbox-container {
  display: inline-block;
  width: 25%; }
  .checkbox-container .item-checkbox {
    height: 36px;
    padding: 36px 0 0 0; }
    .checkbox-container .item-checkbox .checkbox {
      margin-top: -17px;
      right: 0;
      left: 0; }

.input-ph::-webkit-input-placeholder {
  color: rgba(96, 88, 70, 0.6); }

.input-ph:-moz-placeholder {
  color: rgba(96, 88, 70, 0.6); }

.input-ph::-moz-placeholder {
  color: rgba(96, 88, 70, 0.6); }

.input-ph:-ms-input-placeholder {
  color: rgba(96, 88, 70, 0.6); }

/* Filters checkboxes */
.modal-filters .checkbox {
  margin-top: -18px;
  padding: 7px 0;
  right: 0;
  left: 0; }
  .modal-filters .checkbox input:checked:before,
  .modal-filters .checkbox input:checked + .checkbox-icon:before {
    background: #BF410E;
    border-color: #BF410E;
    border-radius: 50%; }
  .modal-filters .checkbox input,
  .modal-filters .checkbox .checkbox-icon {
    width: 16px;
    height: 16px; }
    .modal-filters .checkbox input:after,
    .modal-filters .checkbox .checkbox-icon:after {
      width: 8px;
      height: 4px;
      border-width: 2px; }

.modal-filters .checkbox-icon {
  display: none; }

.modal-filters .is-selected .checkbox-icon {
  display: inline-block; }

.modal-filters .item-checkbox {
  padding-left: 0; }

.modal-filters .item-checkbox.is-selected,
.modal-filters .item-checkbox.is-not-selected {
  padding-left: 25px; }

div.popup .popup-head h3 {
  font-size: 1.7em !important; }

div.popup .popup-head h5.popup-sub-title {
  font-size: 1.2em; }

div.popup .popup-body input {
  padding: 3px 15px;
  font-size: 1.2em; }

div.popup .popup-body span {
  font-size: 1.2em; }

/* Gallery slider */
ion-slide.slider-slide {
  height: 100vh; }
  ion-slide.slider-slide div {
    height: 100%; }
    ion-slide.slider-slide div ion-scroll.scroll-view.scroll-xy {
      height: 100%; }
      ion-slide.slider-slide div ion-scroll.scroll-view.scroll-xy div.scroll img {
        position: absolute;
        top: -9999px;
        right: -9999px;
        bottom: -9999px;
        left: -9999px;
        margin: auto; }

/**
 * TABLE
 *
 * Basic style for tables
 */
/* ------------------------------------ *\
   #TABLE
\* ------------------------------------ */
.loading-spinner {
  text-align: center;
  width: 100%; }
  .loading-spinner.small-margin {
    margin-top: 10%; }

.search-spinner {
  position: relative;
  top: 55px;
  padding-bottom: 10px; }

.title-logo {
  padding: 12px 0 8px; }
  .title-logo img {
    max-height: 24px;
    max-width: 100%;
    height: auto;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }

/*
 * ATTRIBUTION PAGE
 *
 * Styles for attribution page
 */
/* ------------------------------------ *\
   #ATTRIBUTION
\* ------------------------------------ */
ion-content div.static-content.card-content {
  color: #605846; }
  ion-content div.static-content.card-content div.attribution-title {
    font-size: 1.5em;
    padding: 20px 0 10px 0; }
  ion-content div.static-content.card-content div.attribution-text {
    font-size: 1.2em;
    padding: 0 10px; }

/*
 * CARD PAGE
 *
 * Styles for Valle dei segni card
 */
/* ------------------------------------ *\
   #CARD
\* ------------------------------------ */
.card-page {
  background: #f8faf3; }

.card-page-title .nav-title-slide-ios7 .bar.bar-header .title {
  right: 0 !important;
  left: 0 !important;
  text-overflow: clip;
  text-align: center; }

/* Header */
.card-page-header {
  background-size: 48px 41px;
  color: #605846;
  font-weight: 700;
  padding: 12px;
  font-size: 1.1em;
  text-align: center; }
  .card-page-header .icon {
    padding-right: 5px;
    color: #b52125; }

/* Card content */
.card-content {
  width: 90%;
  margin: 0 auto;
  text-align: center; }

/* Card image */
.card-image {
  width: 187px;
  height: 140px;
  margin: 10px auto; }

.card-text {
  margin: 15px 0;
  text-align: center; }
  .card-text p {
    color: #605846;
    font-size: 14px;
    line-height: 1; }

.card-text-title {
  margin-bottom: 5px;
  color: #80181e;
  font-size: 18px; }

.card-title {
  margin: 10px auto;
  position: relative;
  text-align: center; }

.card-title-inner {
  display: inline-block;
  padding: 10px;
  position: relative;
  font-size: 16px;
  z-index: 10; }

/* ------------------------------------ *\
   #MEDIA QUERIES
\* ------------------------------------ */
@media screen and (max-height: 480px) {
  .card-image {
    width: 146px;
    height: 109px; } }

@media screen and (min-width: 768px) {
  .card-content {
    width: 428px; }
    .card-content button.button-block {
      width: 336px;
      margin: 0 auto 10px; }
  .card-image {
    margin-top: 40px;
    margin-bottom: 40px; }
  .card-text {
    margin: 30px 0; }
    .card-text p {
      font-size: 16px; }
  .card-text-title {
    margin-bottom: 5px; } }

/**
 * CUSTOM PAGE
 *
 * Style for details page
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
ion-content.fullView {
  padding: 0;
  margin: 0; }
  ion-content.fullView .custom-page-limited-width {
    margin: 0 auto; }
  ion-content.fullView .custom-page-padding {
    padding: 0 10px; }

@media screen and (min-width: 768px) {
  .custom-page-limited-width {
    width: 500px; } }

/**
 * CUSTOM PAGE
 *
 * Style for details page
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
div.detailRoute-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 78px;
  border-top: 1px solid #605846;
  padding: 12px; }
  div.detailRoute-footer button.login-button.button {
    min-height: 54px;
    width: auto;
    max-width: initial;
    font-size: 20px; }
    div.detailRoute-footer button.login-button.button.left {
      float: left; }
    div.detailRoute-footer button.login-button.button.right {
      float: right; }
    div.detailRoute-footer button.login-button.button.full {
      left: 50%;
      transform: translateX(-50%);
      float: initial; }
  div.detailRoute-footer i.icon {
    position: absolute;
    bottom: 22px;
    left: 14px;
    font-size: 38px; }

@media only screen and (max-width: 350px) {
  div.detailRoute-footer button.login-button.button {
    font-size: 14px; } }

@media only screen and (min-width: 350px) and (max-width: 400px) {
  div.detailRoute-footer button.login-button.button {
    font-size: 17px; } }

/*
 * TAXONOMY PAGE
 *
 */
/* ------------------------------------ *\
   #Detail Taxonomy
\* ------------------------------------ */
.detailTaxonomy-page ion-content {
  padding: 0; }
  .detailTaxonomy-page ion-content .detailTaxonomy-color {
    width: 100%;
    height: 10px; }
  .detailTaxonomy-page ion-content .detailTaxonomy-image {
    width: 100%;
    height: 30vh;
    overflow: hidden;
    position: relative; }
    .detailTaxonomy-page ion-content .detailTaxonomy-image img {
      width: 100%;
      height: auto;
      position: absolute;
      top: -9999px;
      bottom: -9999px;
      left: -9999px;
      right: -9999px;
      margin: auto; }
  .detailTaxonomy-page ion-content .detailTaxonomy-description {
    width: 100%;
    padding: 25px 20px 20px;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.5em;
    max-height: calc(6em + 5px + 35px);
    overflow: hidden;
    position: relative; }
    .detailTaxonomy-page ion-content .detailTaxonomy-description .detailTaxonomy-read-more {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      text-align: center;
      margin: 0;
      padding: 25px 20px 0;
      text-transform: uppercase;
      color: #D90101;
      text-align: right;
      font-size: 15px; }
      .detailTaxonomy-page ion-content .detailTaxonomy-description .detailTaxonomy-read-more span {
        padding: 0 0 0 5px; }
    .detailTaxonomy-page ion-content .detailTaxonomy-description.show-full {
      height: auto;
      max-height: none; }
  .detailTaxonomy-page ion-content .detailTaxonomy-routes {
    width: 100%;
    padding: 15px; }
    .detailTaxonomy-page ion-content .detailTaxonomy-routes .detailTaxonomy-route {
      border-top: 1px solid #605846;
      font-size: 20px;
      padding: 13px 2px;
      text-transform: uppercase;
      line-height: 34px;
      vertical-align: middle;
      position: relative; }
      .detailTaxonomy-page ion-content .detailTaxonomy-routes .detailTaxonomy-route i.activity-icon {
        font-size: 25px;
        margin: 0 13px 0 0;
        float: left;
        border: 1px solid;
        border-radius: 50%;
        padding: 4px; }
      .detailTaxonomy-page ion-content .detailTaxonomy-routes .detailTaxonomy-route i.download-icon,
      .detailTaxonomy-page ion-content .detailTaxonomy-routes .detailTaxonomy-route i.open-icon {
        position: absolute;
        top: 4px;
        left: 0;
        font-size: 21px; }
      .detailTaxonomy-page ion-content .detailTaxonomy-routes .detailTaxonomy-route i.open-icon {
        color: #13BC00;
        padding: 0; }
      .detailTaxonomy-page ion-content .detailTaxonomy-routes .detailTaxonomy-route i.download-icon {
        padding: 0 2px 0 0; }
  .detailTaxonomy-page ion-content .detailTaxonomy-map {
    width: 100%; }
    .detailTaxonomy-page ion-content .detailTaxonomy-map img {
      width: 100%; }

/**
 * DETAILS PAGE
 *
 * Style for details page
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
.details-subnav__list {
  margin-top: -1px;
  font-size: 14px; }

.details-contacts__list {
  min-height: 40px; }

.subnav-list__element,
.contacts-list__element {
  display: inline-block;
  margin: 0;
  padding: 0;
  text-align: left;
  text-transform: uppercase; }
  .subnav-list__element.center,
  .contacts-list__element.center {
    text-align: center; }
  .single-contact .subnav-list__element, .single-contact
  .contacts-list__element {
    width: 100%; }
  .double-contact .subnav-list__element, .double-contact
  .contacts-list__element {
    width: 49%; }
  .triple-contact .subnav-list__element, .triple-contact
  .contacts-list__element {
    width: 32%; }
  .single-contact.contact-include-edit .subnav-list__element, .single-contact.contact-include-edit
  .contacts-list__element {
    width: 85%; }
  .double-contact.contact-include-edit .subnav-list__element, .double-contact.contact-include-edit
  .contacts-list__element {
    width: 42%; }
  .triple-contact.contact-include-edit .subnav-list__element, .triple-contact.contact-include-edit
  .contacts-list__element {
    width: 28%; }
  .contact-include-edit .subnav-list__element.wp-edit-link, .contact-include-edit
  .contacts-list__element.wp-edit-link {
    float: right;
    width: 13%; }
    .contact-include-edit .subnav-list__element.wp-edit-link a, .contact-include-edit
    .contacts-list__element.wp-edit-link a {
      text-overflow: unset; }
  .subnav-list__element a,
  .contacts-list__element a {
    border: 0;
    border-image-width: 0;
    display: inline-block;
    width: 100%;
    height: 40px;
    padding: 0 0 0 15px;
    text-decoration: none;
    line-height: 40px;
    vertical-align: top; }
    .subnav-list__element a .icon,
    .contacts-list__element a .icon {
      margin-right: 5px;
      font-size: 25px;
      vertical-align: middle; }
    .subnav-list__element a:last-child,
    .contacts-list__element a:last-child {
      padding: 0 15px; }

.related-url-div {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000; }
  .related-url-div .related-url-content {
    width: 90vw;
    left: 5vw;
    top: 45px;
    position: absolute;
    color: #ffffff;
    background: #878474;
    padding: 10px 15px;
    border-radius: 5px;
    text-transform: uppercase; }
    .related-url-div .related-url-content a.related-url-links {
      color: #ffffff;
      display: block;
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }
      .related-url-div .related-url-content a.related-url-links i {
        margin-right: 5px; }
    .related-url-div .related-url-content .related-url-arrow {
      position: absolute;
      border-bottom: 10px solid #878474;
      border-right: 10px solid transparent;
      border-left: 10px solid transparent;
      top: -10px; }

.subnav-list__element a {
  color: inherit;
  font-weight: 700;
  text-decoration: underline; }
  .subnav-list__element a:hover, .subnav-list__element a:focus {
    color: #ffffff; }

.details-subnav-single .subnav-list__element {
  width: 100%; }

.details-subnav-rows .subnav-list__element a {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.contacts-list__element a {
  color: #605846; }

.details-contact-single .contacts-list__element {
  width: 100%; }

.details-contact-rows .contacts-list__element a {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.contacts-list__element a {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.details-content {
  height: 100%;
  padding: 2%;
  background: inherit;
  position: relative;
  color: inherit; }
  .details-content::after {
    content: '';
    display: table;
    clear: both; }

.elevation-control-container {
  width: 100%;
  padding: 5px 7px 0 7px;
  display: block;
  margin: 0 auto;
  overflow: hidden; }

.details-howtoreach {
  display: none;
  height: 45px;
  position: fixed;
  right: 0;
  bottom: calc((100% - 43px) - 60%);
  left: 0;
  z-index: 100;
  line-height: 45px;
  font-size: 20px;
  text-decoration: none;
  text-align: center;
  text-transform: lowercase;
  color: #ffffff;
  -webkit-box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5);
  -moz-box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5);
  box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5); }
  .details-howtoreach .icon {
    margin-right: 5px;
    font-size: 25px;
    vertical-align: middle; }
  .has-howtoreach .details-howtoreach {
    display: block; }

.details-shadow {
  display: none;
  height: 45px;
  position: fixed;
  right: 0;
  bottom: calc((100% - 88px) - 60%);
  left: 0;
  z-index: 100;
  line-height: 45px;
  font-size: 20px;
  text-decoration: none;
  text-align: center;
  text-transform: lowercase;
  pointer-events: none;
  color: #ffffff;
  -webkit-box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5);
  -moz-box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5);
  box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5); }
  .details-shadow.extend-shadow {
    bottom: -45px; }
  .has-shadow .details-shadow {
    display: block; }

/* For two-columns layout */
.details-left,
.details-right {
  padding: 2%; }

.details-columns .details-left {
  width: 53%;
  float: left; }

.details-columns .details-right {
  width: 45%;
  float: left; }

.details-image {
  padding: 5px;
  position: relative;
  min-height: 50px; }
  .details-image img {
    border: 2px solid #f2f5e8;
    display: block;
    margin: 0 auto; }

.details-related-element {
  border-bottom: 1px solid #918f75;
  text-align: right; }
  .details-related-element:last-child {
    border-bottom: none; }
  .details-related-element a {
    display: block;
    padding: 0.75em 0;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700; }
    .details-related-element a .icon {
      margin-left: 3px;
      font-size: 18px;
      vertical-align: middle; }
  .details-related-element.related-itinerari a {
    color: #80181e; }
  .details-related-element.related-place a {
    color: #4a6e23; }
  .details-related-element.related-events a {
    color: #df7916; }
  .details-related-element.related-offer a {
    color: #bb3437; }

/* For no columns layout*/
.details-rows .details-title {
  margin: 10px 5%;
  line-height: 1em;
  font-size: 2em;
  font-weight: 700;
  text-align: center; }

.details-rows .details-left {
  border-bottom: 1px solid #918f75; }

.details-rows .details-related-element {
  display: inline-block;
  width: 49%;
  border-bottom: none;
  text-align: center; }

.details-rows .details-right .details-image {
  display: none; }

.details-description-expandable {
  max-height: calc(5em + 5px + 35px);
  overflow: hidden;
  position: relative; }
  .details-description-expandable .details-no-modal-read-more {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    margin: 0;
    padding: 25px 20px 0;
    text-transform: uppercase;
    color: #D90101;
    text-align: right;
    font-size: 12px; }
    .details-description-expandable .details-no-modal-read-more span {
      padding: 0 0 0 5px; }
  .details-description-expandable.show-full {
    height: auto;
    max-height: none; }

.details-description {
  padding: 10px; }
  .detail-route .details-description {
    margin-bottom: 78px; }
  .details-description .opening-hours {
    padding: 0 0 10px; }
    .details-description .opening-hours .icon {
      margin-right: 5px;
      font-size: 20px;
      vertical-align: text-top; }
    .details-description .opening-hours .label {
      text-transform: uppercase; }
  .details-description p {
    margin: 0 0 6px 0;
    padding: 0;
    text-align: justify;
    line-height: 1.3;
    font-size: 16px; }
  .details-description p.link-more {
    display: none; }

.details-expander {
  width: 100%;
  background: inherit;
  color: inherit; }

.details-read-more {
  display: block;
  height: 30px;
  margin-top: 10px;
  color: inherit;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  font-weight: 700;
  font-size: 16px;
  line-height: 30px; }
  .details-read-more .icon {
    font-size: 18px;
    margin-left: 3px; }
    .details-read-more .icon::before {
      font-size: 30px;
      vertical-align: middle; }

.image-expand {
  width: 44px;
  height: 22px;
  margin-left: -22px;
  position: absolute;
  bottom: 16px;
  left: 50%;
  background: rgba(96, 88, 70, 0.7); }
  .image-expand .icon {
    font-size: 34px;
    color: #f7f9f1;
    position: absolute;
    top: -5px;
    left: calc(50% - 10px); }

.accessibility-buttons-container {
  width: calc(100% - 10px);
  margin: 5px;
  position: relative;
  height: 70px;
  text-align: center; }
  .accessibility-buttons-container a {
    display: block;
    float: left;
    width: calc(100% / 5);
    position: relative;
    top: 10px; }
    .accessibility-buttons-container a i {
      color: #f7f9f1;
      font-size: 40px;
      padding: 10px; }

/* Details table */
.table-details {
  width: 100%;
  font-size: 14px;
  line-height: 1.2; }
  .table-details th,
  .table-details td {
    padding: 10px;
    border-bottom: 1px solid #e5e6dd;
    text-align: left; }
  .table-details.horrible-table td {
    display: block;
    padding: 3px;
    border-bottom: none; }
    .table-details.horrible-table td.it {
      font-weight: 700;
      font-size: 20px; }
    .table-details.horrible-table td.en {
      font-style: italic; }
  .table-details.horrible-table tr:nth-child(2n+2) td {
    padding-bottom: 15px; }

.table-row-header {
  font-weight: 700; }

/* Itinerari details */
.itinerario-details-tappe {
  clear: both; }
  .itinerario-details-tappe .itinerario-tappe-title {
    display: inline-block;
    width: 100%;
    font-family: "Abel", sans-serif;
    margin: 0;
    padding: 8px;
    color: #605846;
    background: #e5e6dd;
    font-size: 18px;
    text-align: center; }
  .itinerario-details-tappe .itinerario-tappe-list .itinerario-tappa-item {
    position: relative;
    display: block;
    padding-right: 34px;
    cursor: pointer;
    color: #605846; }
    .itinerario-details-tappe .itinerario-tappe-list .itinerario-tappa-item .icon {
      color: #4a6e23; }
    .itinerario-details-tappe .itinerario-tappe-list .itinerario-tappa-item .icon-arrow {
      position: absolute;
      right: 5px;
      left: auto; }
    .itinerario-details-tappe .itinerario-tappe-list .itinerario-tappa-item:first-child {
      border-top: none; }

.tappa-name,
.tappa-poi {
  display: block; }

.tappa-name {
  text-transform: uppercase;
  font-size: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.tappa-poi {
  font-size: 16px; }
  .tappa-poi em {
    font-weight: 700;
    color: #4a6e23; }

.route-related-details {
  clear: both; }
  .route-related-details .route-related-title {
    display: inline-block;
    width: 100%;
    font-family: "Abel", sans-serif;
    margin: 0;
    padding: 8px;
    color: #605846;
    background: #e5e6dd;
    font-size: 18px;
    text-align: center; }
  .route-related-details .route-related-list .route-related-item {
    position: relative;
    display: block;
    padding: 4px 34px 4px 20px;
    cursor: pointer;
    color: #605846; }
    .route-related-details .route-related-list .route-related-item:first-child {
      border-top: none; }
    .route-related-details .route-related-list .route-related-item .route-related-image {
      width: 30%;
      height: 62px;
      position: relative;
      overflow: hidden;
      float: left; }
      .route-related-details .route-related-list .route-related-item .route-related-image img {
        width: 100%;
        position: absolute;
        top: -9999px;
        bottom: -9999px;
        left: -9999px;
        right: -9999px;
        margin: auto; }
      .route-related-details .route-related-list .route-related-item .route-related-image i {
        left: calc(50% - 25px);
        font-size: 50px; }
    .route-related-details .route-related-list .route-related-item .route-related-name {
      width: 70%;
      padding: 20px 15px;
      overflow: hidden;
      text-overflow: ellipsis;
      float: left; }

/* DETAILS ROUTE */
.details-image-route {
  padding: 10px;
  position: relative; }
  .details-image-route img {
    display: block;
    margin: 0 auto; }

.details-route-rows {
  max-width: 768px;
  margin: 0 auto; }

.details-route {
  padding: 0 10px; }

.details-route span {
  text-transform: uppercase; }

.details-route span.difficulty {
  float: right; }

/*user track buttons */
.edit-user-track .list a {
  text-transform: capitalize; }

.details_stats-container {
  padding: 0 10%; }
  .details_stats-container::after {
    clear: both; }
  .details_stats-container .details_stat {
    font-size: 130%;
    display: inline-block;
    text-align: center;
    width: calc(100% / 3); }
    .details_stats-container .details_stat i {
      display: block; }

/* ------------------------------------ *\
   #MEDIA QUERIES
\* ------------------------------------ */
/* TODO: use mixin? */
@media only screen and (max-width: 350px) {
  .accessibility-buttons-container {
    height: 50px; }
    .accessibility-buttons-container a i {
      font-size: 30px;
      padding: 5px; } }

@media only screen and (max-height: 567px) and (max-width: 768px) {
  .details-description p {
    font-size: 2rem; } }

@media only screen and (min-width: 768px) {
  .has-howtoreach .scroll-content {
    margin-bottom: 45px; }
  .details-rows .details-related-element {
    width: 32%;
    text-align: center; } }

@media only screen and (min-width: 1025px) {
  .has-howtoreach .scroll-content {
    margin-bottom: 45px; }
  .desktop-half-map .details-howtoreach,
  .desktop-full-map .details-howtoreach {
    position: absolute;
    right: 50%;
    bottom: -1px;
    left: 0; }
  .desktop-full-map .details-howtoreach {
    z-index: 1; }
  .desktop-half-map .details-shadow,
  .desktop-full-map .details-shadow {
    position: absolute;
    right: 50%;
    bottom: -45px;
    left: 0; }
  .details-shadow.extend-shadow {
    right: 0; }
  .desktop-full-map .details-shadow {
    z-index: 1; } }

/**
 * HELP PAGE
 *
 * Style for help page
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
.help-page.pane {
  background-color: #91c068;
  font-size: 10px;
  /* Make circles that indicate the steps of the form: */ }
  .help-page.pane .step-counter {
    text-align: center;
    padding: 15px 0;
    width: 100%;
    position: absolute;
    bottom: 0; }
  .help-page.pane .step {
    height: 10px;
    width: 10px;
    margin: 0 2px;
    background-color: #ffffff;
    border: none;
    border-radius: 50%;
    display: inline-block;
    transition-duration: 0.6s;
    transition-timing-function: ease-in-out;
    transition-property: opacity; }
    .help-page.pane .step.active {
      opacity: 1; }
    .help-page.pane .step.inactive {
      opacity: 0.4; }
  .help-page.pane .help__previous,
  .help-page.pane .help__next {
    position: fixed;
    bottom: 0;
    font-size: 2em;
    padding: 15px;
    z-index: 100; }
  .help-page.pane .help__previous {
    left: 0; }
  .help-page.pane .help__next {
    right: 0; }
  .help-page.pane div.tab {
    display: block;
    position: absolute;
    width: 100%;
    transition-duration: 0.4s;
    transition-timing-function: ease-in-out; }
    .help-page.pane div.tab p {
      width: 100%;
      padding: 5% 5%;
      text-align: center;
      font-size: 2.2em;
      line-height: 1.2em; }
      .help-page.pane div.tab p.large {
        width: 100%;
        padding: 5% 4%; }
    .help-page.pane div.tab div.help-img {
      width: 100%;
      position: fixed;
      height: 60vh;
      bottom: 50px;
      padding: 0 5%; }
      .help-page.pane div.tab div.help-img > img {
        display: block;
        /*height: 62vh;*/
        height: -webkit-fill-available;
        max-width: 100%;
        margin: 0 auto; }
    .help-page.pane div.tab.final-tab {
      height: 100%;
      text-transform: uppercase;
      letter-spacing: 2px;
      font-weight: 700; }
      .help-page.pane div.tab.final-tab div.home-button {
        width: 300px;
        height: 300px;
        border-radius: 50%;
        font-size: 50px;
        line-height: 300px;
        text-align: center;
        position: relative;
        margin: 0 auto;
        top: calc(50% - 150px - 22px);
        animation-name: blink;
        animation-duration: 1s;
        animation-timing-function: ease-in-out;
        animation-iteration-count: infinite;
        animation-direction: alternate; }

@keyframes blink {
  from {
    background-color: #a5db76; }
  to {
    background-color: #7AB400; } }
  .help-page.pane .bold {
    font-weight: 700; }
  .help-page.pane .right {
    float: right; }
  .help-page.pane .left {
    float: left; }
  .help-page.pane .right-out {
    opacity: 0;
    left: 100vw; }
  .help-page.pane .left-out {
    opacity: 0;
    left: -100vw; }
  .help-page.pane .middle-in {
    opacity: 1;
    left: 0vw; }
  @media screen and (max-height: 600px) {
    .help-page.pane div.tab p {
      font-size: 2.1em; } }
  @media screen and (min-height: 700px) {
    .help-page.pane div.tab p {
      font-size: 2.5em; }
    .help-page.pane div.tab p,
    .help-page.pane div.tab p.large {
      padding: 9% 5%; } }

/**
 * HOME PAGE
 *
 * Style for Home page
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
ion-content div.home-title {
  padding: 4vh;
  font-size: 25px;
  text-align: center; }

ion-content div.home-content {
  width: 100%;
  height: calc(100vh - 44px - 25px - 8vh);
  position: relative; }
  ion-content div.home-content div.width-1 {
    width: 100%; }
  ion-content div.home-content div.width-2 {
    width: 50%;
    float: left; }
  ion-content div.home-content div.width-3 {
    width: calc(100% / 3);
    float: left; }
  ion-content div.home-content div.height-1 {
    height: 100%; }
  ion-content div.home-content div.height-2 {
    height: 50%; }
  ion-content div.home-content div.height-3 {
    height: calc(100% / 3); }
  ion-content div.home-content div.height-4 {
    height: 25%; }
  ion-content div.home-content div.home-button {
    position: relative;
    font-size: 20px;
    text-align: center;
    margin: 0 auto;
    color: #63625d; }
    ion-content div.home-content div.home-button div.home-icon {
      padding: 3% 0 3% 0; }
      ion-content div.home-content div.home-button div.home-icon .icon:before {
        font-size: 40px; }
  ion-content div.home-content div.home-button.height-1 div.home-icon .icon:before {
    font-size: 80px; }
  ion-content div.home-content div.home-button.height-2 div.home-icon .icon:before {
    font-size: 70px; }
  ion-content div.home-content div.home-button.height-3 div.home-icon .icon:before {
    font-size: 60px; }
  ion-content div.home-content div.home-button-content {
    position: relative;
    top: calc(50% - 75px); }
  ion-content div.home-content div.home-button:active {
    color: #444040;
    background: #dddddd; }

div.section {
  border-bottom: 1px solid #cecec1;
  padding: 5px;
  margin-bottom: 15px;
  font-size: 22px;
  color: #918f75; }
  div.section label.item.item-radio {
    border: 0px;
    padding: 3px; }
  div.section .restore-purchase-text {
    float: left;
    width: 65%;
    margin-bottom: 4px; }
  div.section .restore-purchase-button {
    float: right;
    position: relative;
    top: -3px;
    text-transform: uppercase;
    width: 35%;
    margin-bottom: 4px;
    text-align: center;
    padding-top: 3px;
    padding-bottom: 3px; }

div.logout {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%; }

/**
 * LISTS
 *
 * Style for lists
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
/* Element */
.coupons-list {
  padding: 10px !important;
  cursor: pointer; }

.round-list div.list {
  padding-left: 8px; }

.list .item {
  color: inherit; }
  .list .item.item-content-preview {
    height: 54px; }
    .list .item.item-content-preview .icon {
      opacity: 0.5;
      font-size: 25px; }
    .list .item.item-content-preview .item-content-placeholder {
      display: inline-block;
      width: 90%;
      height: 15px;
      opacity: 0.5;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#4a6e23+0,7db9e8+100&1+0,0+100 */
      background: -moz-linear-gradient(left, #4a6e23 0%, rgba(125, 185, 232, 0) 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(left, #4a6e23 0%, rgba(125, 185, 232, 0) 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #4a6e23 0%, rgba(125, 185, 232, 0) 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4a6e23', endColorstr='#007db9e8',GradientType=1 );
      /* IE6-9 */ }
    .list .item.item-content-preview.activated {
      background: #f3f6ea; }
  .list .item.has-subtitle {
    padding-top: 10px;
    padding-bottom: 10px; }

.advanced-menu-content .list .item.activated,
.modal-filters .list .item.activated {
  border-color: transparent;
  background: transparent; }

.list.welcome-list .item.activated {
  background: transparent; }

.modal-filter .list .item.activated {
  background: transparent; }

/* Divider element */
.is-divider {
  padding-left: 16px;
  /* Just remove item-icon-left class from element if not necessary */
  text-transform: uppercase;
  font-weight: 700; }
  .is-divider[ng-click]:hover {
    cursor: text; }

/* Events list */
.events-view .item {
  color: #80181e; }

.list-event-date,
.list-event-infos,
.list-infos {
  display: inline-block; }
  .list-event-date [class^="list-event"],
  .list-event-date [class^="list-info"],
  .list-event-infos [class^="list-event"],
  .list-event-infos [class^="list-info"],
  .list-infos [class^="list-event"],
  .list-infos [class^="list-info"] {
    display: block; }

.list-info-title,
.list-info-subtitle {
  display: block; }

.list-event-date {
  padding-right: 18px;
  vertical-align: top;
  font-size: 20px; }

.list-infos {
  width: 100%; }
  .list-infos.list-event-infos {
    width: 80%; }

.list-event-start-date {
  padding-bottom: 5px; }

.list-info-title {
  padding-bottom: 3px;
  font-size: 22px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-top: 5px; }

.list-info-subtitle {
  font-size: 14px; }

/* List filter*/
.filter-input-wrapper {
  position: relative; }
  .filter-input-wrapper .icon {
    display: inline-block;
    width: 45px;
    height: 40px;
    position: absolute;
    line-height: 45px;
    top: 0;
    right: 0; }
    .filter-input-wrapper .icon::before {
      font-size: 25px;
      color: #918f75; }

.filter-input[type="search"] {
  width: 100%;
  height: 45px;
  padding: 0 10px; }

.filter-input::-webkit-input-placeholder {
  font-style: italic;
  font-size: 18px; }

.filter-input:-moz-placeholder {
  font-style: italic;
  font-size: 18px; }

.filter-input::-moz-placeholder {
  font-style: italic;
  font-size: 18px; }

.filter-input:-ms-input-placeholder {
  font-style: italic;
  font-size: 18px; }

/* Show more list elements */
.arrow-show-more {
  height: 35px;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 20;
  text-align: center;
  color: #605846;
  -webkit-box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5);
  -moz-box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5);
  box-shadow: 0 -4px 14px -4px rgba(18, 16, 11, 0.5); }
  .arrow-show-more .icon::before {
    font-size: 35px; }

/* ------------------------------------ *\
   #MEDIA QUERIES
\* ------------------------------------ */
@media only screen and (min-width: 1025px) {
  .arrow-show-more {
    display: none; } }

/*
 * LOGIN
 *
 * Styles for login page
 */
/* ------------------------------------ *\
   #LOGIN & CARD
\* ------------------------------------ */
button.login-button {
  border: 2px solid;
  font-size: 20px;
  border-radius: 0;
  line-height: 42px;
  vertical-align: middle; }
  button.login-button.skip-login {
    color: #918f75;
    margin: 0 auto;
    height: auto;
    padding: 5px 30px;
    text-transform: uppercase; }
  button.login-button i {
    line-height: 42px;
    font-size: 21px;
    position: absolute;
    right: 20px; }

.login-page {
  background: #f8faf3; }
  .login-page input {
    padding-right: 0 !important; }

.login-header {
  background: #fff;
  background-size: 48px 41px;
  color: #605846;
  font-weight: 700;
  padding: 12px;
  font-size: 1.1em;
  text-align: center;
  -webkit-box-shadow: 0 0 1px rgba(18, 16, 11, 0.5);
  -moz-box-shadow: 0 0 1px rgba(18, 16, 11, 0.5);
  box-shadow: 0 0 1px rgba(18, 16, 11, 0.5); }
  .login-header .icon {
    color: #b52125; }

/* Login form - here or in form? */
.info-confirm-button {
  width: 50% !important;
  left: 25%; }
  .info-confirm-button.disabled {
    color: #918f75 !important; }

.login-form,
.registration-form {
  max-width: 80%;
  margin: 0 auto; }
  .login-form.card-form,
  .registration-form.card-form {
    color: rgba(145, 143, 117, 0.7); }
    .login-form.card-form .choice-container,
    .registration-form.card-form .choice-container {
      border-bottom: 1.5px solid rgba(145, 143, 117, 0.7) !important; }
    .login-form.card-form .item input,
    .registration-form.card-form .item input {
      text-align: left; }
    .login-form.card-form .item .choice-label,
    .registration-form.card-form .item .choice-label {
      font-size: 20px; }
    .login-form.card-form .item .radio-container .item,
    .registration-form.card-form .item .radio-container .item {
      display: block;
      padding: 0; }
    .login-form.card-form .item .radio-container .item-content,
    .registration-form.card-form .item .radio-container .item-content {
      font-size: 20px;
      background-color: #F8FAF3 !important; }
  .login-form .item,
  .registration-form .item {
    padding: 7px 0;
    border: 0 !important;
    background: transparent !important; }
    .login-form .item .input-date,
    .registration-form .item .input-date {
      color: #918f75; }
    .login-form .item input,
    .registration-form .item input {
      height: 65px;
      padding: 0;
      border-bottom: 1px solid rgba(145, 143, 117, 0.7);
      font-size: 20px;
      background: none !important;
      line-height: 2.2em;
      text-align: center; }
      .login-form .item input::-webkit-input-placeholder,
      .registration-form .item input::-webkit-input-placeholder {
        color: rgba(96, 88, 70, 0.6); }
      .login-form .item input:-moz-placeholder,
      .registration-form .item input:-moz-placeholder {
        color: rgba(96, 88, 70, 0.6); }
      .login-form .item input::-moz-placeholder,
      .registration-form .item input::-moz-placeholder {
        color: rgba(96, 88, 70, 0.6); }
      .login-form .item input:-ms-input-placeholder,
      .registration-form .item input:-ms-input-placeholder {
        color: rgba(96, 88, 70, 0.6); }
  .login-form .privacy,
  .registration-form .privacy {
    width: 100%;
    margin: 15px auto;
    font-size: 20px;
    margin-left: 20px; }
    .login-form .privacy i,
    .registration-form .privacy i {
      margin-left: -20px; }

.login-form .item .input-label {
  display: none; }

.registration-form .list {
  margin-bottom: 15px; }
  .registration-form .list .item {
    padding: 5px 0;
    position: relative; }
    .registration-form .list .item input {
      height: 60px; }
    .registration-form .list .item select {
      border: 0;
      border-bottom: 1px solid rgba(145, 143, 117, 0.7);
      background-color: transparent;
      margin: 0;
      padding: 13px 20% 14px 20%;
      width: 100%;
      font-size: 20px; }

.registration-terms label {
  display: inline-block;
  width: 72%;
  font-size: 11px; }

.item-floating-label .input-label, .item-floating-label .input-label.has-input {
  display: none; }

.skip-link {
  text-align: right;
  padding: 8px 0 !important;
  font-size: 14px;
  text-transform: lowercase;
  font-style: italic; }
  .skip-link a {
    color: #605846; }
  .skip-link .icon {
    margin-left: 5px;
    font-size: 20px;
    vertical-align: middle; }

.sign-in-button {
  max-width: 80%;
  margin: 20px auto;
  font-weight: 700; }
  .sign-in-button .item {
    color: #ffffff; }

.card-block {
  margin-bottom: 10px;
  padding: 15px 0;
  background: rgba(255, 255, 255, 0.3); }

.go-to-login {
  margin-top: 15px;
  margin-bottom: 4px; }
  .go-to-login a {
    padding: 20px; }

/* SOCIAL - TO MODIFY */
.social-login-title-container {
  width: 80%;
  margin: 10px auto;
  position: relative;
  text-align: center; }
  .social-login-title-container:before {
    content: '';
    display: block;
    height: 1px;
    background: #918f75;
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    z-index: 2; }

.social-login-title {
  display: inline-block;
  padding: 10px;
  background: #f8faf3;
  position: relative;
  font-size: 18px;
  z-index: 10; }

/*
    Note: It is best to use a less version of this file ( see http://css2less.cc
    For the media queries use @screen-sm-min instead of 768px.
    For .omb_spanOr use @body-bg instead of white.
*/
.omb_login {
  width: 80%;
  margin: 10px auto; }
  .omb_login .omb_loginOr {
    position: relative;
    font-size: 1.5em;
    color: #aaa;
    margin-top: 1em;
    margin-bottom: 1em;
    padding-top: 0.5em;
    padding-bottom: 0.5em; }
    .omb_login .omb_loginOr .omb_hrOr {
      background-color: #cdcdcd;
      height: 1px;
      margin-top: 0px !important;
      margin-bottom: 0px !important; }
    .omb_login .omb_loginOr .omb_spanOr {
      display: block;
      position: absolute;
      left: 50%;
      top: -0.6em;
      margin-left: -1.5em;
      background-color: white;
      width: 3em;
      text-align: center; }
    .omb_login .omb_loginOr .omb_loginForm .input-group.i {
      width: 2em; }
    .omb_login .omb_loginOr .omb_loginForm .help-block {
      color: red; }
  .omb_login button {
    width: 100%;
    background: transparent;
    border: none;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #918f75;
    font-family: "Abel", sans-serif !important;
    font-size: 0.7em; }
    .omb_login button .icon {
      display: block; }

.omb_authTitle {
  text-align: center;
  line-height: 300%; }

.omb_socialButtons {
  width: 100%;
  margin: 0; }
  .omb_socialButtons button {
    border-radius: 3px; }
  .omb_socialButtons .social-block {
    display: inline-block;
    width: 31%;
    margin-left: 1%; }
    .omb_socialButtons .social-block span {
      font-size: 15px;
      text-transform: lowercase; }
    .omb_socialButtons .social-block .icon {
      font-size: 40px; }
  .omb_socialButtons a {
    opacity: 0.9; }
    .omb_socialButtons a:hover {
      color: #ffffff;
      opacity: 1; }
  .omb_socialButtons .omb_btn-facebook .icon {
    color: #3b5998; }
  .omb_socialButtons .omb_btn-twitter .icon {
    color: #00aced; }
  .omb_socialButtons .omb_btn-google .icon {
    color: #c32f10; }

/* Sign-in button */
.sign-in-button {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none; }

/* Login footer */
.app-logo-container,
.skip-login {
  display: inline-block;
  width: 100%;
  text-align: center;
  position: relative; }

.app-logo {
  display: inline-block;
  width: 117px;
  height: 64px;
  margin-left: -58.5px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 50%; }
  .app-logo img {
    max-width: 100%;
    height: auto; }

.skip-login .icon {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-size: 40px; }

/* ------------------------------------ *\
   #MEDIA QUERIES
\* ------------------------------------ */
@media screen and (max-width: 320px) {
  .social-login-title {
    font-size: 16px; } }

@media only screen and (min-width: 481px) {
  .login-form .item,
  .registration-form .item {
    padding: 1em 0; }
    .login-form .item input,
    .registration-form .item input {
      height: 2.2em; } }

/*
 * MAIN
 *
 * Main elements and layout style
*/
/* Transition managing helpers  - TODO: to put where?*/
.no-animate {
  -webkit-transition: none !important;
  transition: none none !important; }

/*
    CSS styles to eliminate the annoying flickering header when changing tabs in an Ionic app on Android:
    http://forum.ionicframework.com/t/flickering-when-navigating-via-tabs-on-android/27281/2
*/
.header-item.title, .header-item.buttons {
  transition-duration: 0ms !important; }

.buttons-left {
  transition-duration: 0ms !important; }

.buttons-right {
  transition-duration: 0ms !important; }

/* Hide/show elements on mobile or desktop */
.desktop-visible {
  display: none; }

.xs-visible {
  display: none; }

/* ------------------------------------ *\
   #BARS - TOPBAR AND FOOTER
\* ------------------------------------ */
/* Top menu container - set in pane? */
.menu-content {
  background: inherit;
  color: inherit; }

.nav-bar-block,
.bar {
  background-color: inherit !important;
  border-color: inherit !important; }

/* Top bar */
.bar .title {
  font-weight: 700;
  font-size: 1.1em; }

.bar .title-center {
  font-size: 22px !important; }

.bar.bar-assertive.bar-footer {
  /* There's 2px pixel bottom overflowing - why?*/
  height: -webkit-calc((100% - 43px) - 60%);
  height: -moz-calc((100% - 43px) - 60%);
  height: calc((100% - 43px) - 60%);
  padding: 0;
  background-image: none;
  border: none; }
  .welcome-page .bar.bar-assertive.bar-footer {
    height: 45%; }
  .hide-map .bar.bar-assertive.bar-footer {
    z-index: 0;
    height: 20%; }
  .map-search .bar.bar-assertive.bar-footer {
    height: -webkit-calc(100% - 186px);
    height: -moz-calc(100% - 186px);
    height: calc(100% - 186px);
    z-index: 200; }
  .map-page .bar.bar-assertive.bar-footer {
    height: -webkit-calc(100% - 44px);
    height: -moz-calc(100% - 44px);
    height: calc(100% - 44px);
    z-index: 200; }

.nav-title-slide-ios7 {
  background: inherit !important;
  color: inherit !important;
  border-color: transparent !important; }
  .nav-title-slide-ios7 .bar.bar-header {
    padding-right: 2%;
    padding-left: 2%;
    -webkit-box-shadow: 0 0 1px rgba(18, 16, 11, 0.5);
    -moz-box-shadow: 0 0 1px rgba(18, 16, 11, 0.5);
    box-shadow: 0 0 1px rgba(18, 16, 11, 0.5);
    text-transform: uppercase; }
    .nav-title-slide-ios7 .bar.bar-header .title {
      right: 50px !important;
      left: 50px !important; }
    .nav-title-slide-ios7 .bar.bar-header .button {
      color: inherit; }
  .nav-title-slide-ios7.welcome-nav .bar.bar-positive .title {
    padding-right: 2%;
    padding-left: 2%; }

/* Long title and date */
.details-page .bar.bar-header .title {
  font-family: "Abel", sans-serif;
  font-size: 20px;
  height: 100%;
  margin: 0;
  right: 15px !important;
  /* TODO: Temporary - fix in js for this case */
  left: 50px !important;
  /* TODO: Temporary - fix in js for this case */
  line-height: 2.5; }

.details-page .nav-bar-title {
  display: block;
  height: 100%;
  padding: 4px 0; }

.details-page .title-inner {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.title-inner {
  display: flex;
  width: 100%;
  align-items: center;
  height: 100%;
  /*justify-content: center;*/ }
  .title-inner .title-right {
    width: 95%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 20px; }
  .title-inner.has-date {
    line-height: 1; }
    .title-inner.has-date .title-left,
    .title-inner.has-date .title-right {
      display: inline-block; }
    .title-inner.has-date .title-left {
      width: 25%;
      padding-right: 10px;
      text-align: right;
      vertical-align: top;
      font-size: 15px; }
      .title-inner.has-date .title-left [class^="event-title"] {
        display: block; }
    .title-inner.has-date .title-right {
      width: 75%;
      height: 32px;
      line-height: 32px;
      text-align: left;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }

/*
.title-right {
  display: inline-block;
  width: 100%;
  line-height: 2.6;
  text-align: center;
  font-size: 18px;
  @include text-ellipsis;

  .details-page .title-inner & {
    line-height: 39px;
  }

}
*/
/* ------------------------------------ *\
   #VIEW
\* ------------------------------------ */
.welcome-page .view-container {
  background-color: transparent; }

/* ------------------------------------ *\
   #CONTENT & SCROLLING ELEMENT
\* ------------------------------------ */
.scroll-content {
  background: inherit; }

.content-pane {
  height: 60%;
  z-index: 20; }
  .keyboard-open .content-pane {
    height: 60% !important;
    overflow: hidden !important; }
  .keyboard-open .hide-map .content-pane {
    height: calc(100% - 42px) !important; }
  .hide-map .content-pane,
  .login-page .content-pane,
  .menu-left .content-pane {
    height: -webkit-calc(100% - 42px);
    height: -moz-calc(100% - 42px);
    height: calc(100% - 42px);
    /* 2 pixel? */ }
  .map-page .content-pane {
    z-index: 0; }
  .has-howtoreach .content-pane {
    margin-bottom: 30px;
    height: calc(60% - 45px); }

.view-container .scroll {
  height: 100%; }

.has-filter > .scroll {
  margin-top: 55px; }

.scroll-content.has-back-btn {
  top: 52px;
  /* Back button height */ }

.scroll-content.has-search-filters {
  top: 140px; }

.scroll-content.has-show-more {
  margin-bottom: 35px;
  /* .arrow-show-more height */ }

/* Scrolling pane for details */
.layer-details {
  overflow: visible; }

.map-menu {
  position: relative;
  top: 42px;
  z-index: 999;
  width: 75%;
  float: right; }
  .map-menu a {
    text-transform: capitalize; }
    .map-menu a.item-icon-right span {
      position: absolute;
      top: 0;
      right: 11px;
      min-width: 30px;
      height: 30px;
      border-radius: 50%;
      color: #fff;
      background: #f00;
      font-weight: bold;
      padding: 5px;
      margin: 12px 0;
      text-align: center; }

/* ------------------------------------ *\
   #TOAST
\* ------------------------------------ */
.ionic_toast_sticky .ionic_toast_close {
  left: 4px;
  overflow: hidden;
  width: 0;
  height: 0; }

.ionic_toast > .toast_section {
  padding: 10px;
  background: rgba(96, 88, 70, 0.9); }

.toast-container .toast-alert-icon {
  display: none; }
  .toast-container .toast-alert-icon i {
    color: #ff1500;
    font-size: 40px;
    float: left;
    padding: 15px 15px; }

.toast-container .toast-content {
  float: left;
  text-align: center;
  width: 100%; }
  .toast-container .toast-content .toast-message {
    font-weight: 700;
    font-size: 20px;
    height: 45px; }
  .toast-container .toast-content .toast-buttons {
    padding: 3px 20px; }
    .toast-container .toast-content .toast-buttons div {
      float: left;
      margin: 0 20px;
      width: calc((100% / 2) - 40px);
      text-transform: uppercase;
      padding: 4px 0;
      background: #aaa; }
      .toast-container .toast-content .toast-buttons div.pause-button {
        background: #ECBE41; }
      .toast-container .toast-content .toast-buttons div.stop-button {
        background: #FF4108; }

/* ------------------------------------ *\
   #MAP
\* ------------------------------------ */
/* TODO: for Raffa, testare su mobile */
.platform-ios.platform-cordova:not(.fullscreen) .bar-header:not(.bar-subheader) > * {
  margin-top: 0; }

.platform-ios.platform-cordova:not(.fullscreen) .bar-header:not(.bar-subheader) {
  height: 43px; }

.platform-ios.platform-cordova:not(.fullscreen) .has-header,
.platform-ios.platform-cordova:not(.fullscreen) .bar-subheader {
  top: 43px; }

/* testare su mobile END */
/* ------------------------------------ *\
   #MEDIA QUERIES
\* ------------------------------------ */
/* TODO: use mixin? */
@media only screen and (max-height: 666px) and (max-width: 768px) {
  .welcome-page .content-pane {
    height: 65%; }
  .welcome-page .bar.bar-assertive.bar-footer {
    height: 35%; } }

@media only screen and (min-width: 768px) {
  .details-page .bar.bar-header .title {
    left: 60px !important; }
  .title-inner {
    line-height: 32px;
    text-align: center; }
    .title-inner.has-date {
      line-height: 32px; }
      .title-inner.has-date .title-left {
        font-size: 16px; }
        .title-inner.has-date .title-left [class^="event-title"] {
          display: inline-block;
          margin-right: 10px; }
      .title-inner.has-date .title-right {
        font-size: 16px; }
  .nav-title-slide-ios7 .bar.bar-header {
    padding-right: 10px;
    padding-left: 10px; }
  .nav-title-slide-ios7.welcome-nav .bar.bar-positive .title {
    padding-right: 10px;
    padding-left: 10px; }
  .desktop-visible {
    display: block; } }

@media only screen and (min-width: 992px) {
  .welcome-page .content-pane.has-footer, .welcome-page.desktop-half-map .content-pane.has-footer {
    height: 50%;
    top: 45px;
    right: 0;
    left: 0;
    bottom: 0; }
  .welcome-page .bar-assertive.bar.bar-footer, .welcome-page.desktop-half-map .bar-assertive.bar.bar-footer {
    width: 100%;
    height: 50%;
    top: initial;
    left: 0;
    right: 0;
    bottom: 0; } }

@media only screen and (min-width: 1025px) {
  .content-pane.has-footer {
    height: -webkit-calc(100% - 43px);
    height: -moz-calc(100% - 43px);
    height: calc(100% - 43px); }
  .bar-assertive.bar.bar-footer {
    height: -webkit-calc(100% - 44px);
    height: -moz-calc(100% - 44px);
    height: calc(100% - 44px); }
  .desktop-half-map .content-pane.has-footer {
    top: 45px;
    right: 50%;
    left: 0;
    bottom: 0; }
  .desktop-half-map .view-container {
    height: 100% !important; }
  .desktop-half-map .bar-assertive.bar.bar-footer {
    width: 50%;
    top: 45px;
    /* for header */
    left: 50%;
    right: 0;
    bottom: 0; }
  .map-search .bar-assertive.bar.bar-footer {
    height: -webkit-calc(100% - 187px);
    height: -moz-calc(100% - 187px);
    height: calc(100% - 187px);
    z-index: 200;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0; }
  .desktop-full-map .content-pane.has-footer {
    height: -webkit-calc(100% - 45px);
    height: -moz-calc(100% - 45px);
    height: calc(100% - 45px);
    z-index: 0;
    top: 45px;
    right: 50%;
    left: 0;
    bottom: 0; }
  .desktop-full-map .view-container {
    height: 100% !important; }
  .desktop-full-map .bar-assertive.bar.bar-footer {
    width: 100%;
    height: -webkit-calc(100% - 45px);
    height: -moz-calc(100% - 45px);
    height: calc(100% - 45px);
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 20; }
  .hide-map .content-pane.has-footer {
    top: 45px;
    right: 0; }
  .scroll-content.has-show-more {
    margin-bottom: 0; } }

/*
 * MENU
 *
 * Styles for menus
 */
/* ------------------------------------ *\
   #MENU
\* ------------------------------------ */
/* Container */
.bar.bar-positive .title {
  color: inherit !important; }

.hide-left-button .bar-header .buttons-left {
  display: none; }

/* TODO: try not to style .item */
a.item {
  background: inherit;
  font-size: 22px; }

.item {
  background: inherit;
  border-color: #cecec1;
  border-right: none;
  border-left: none;
  font-size: 22px; }
  .item.back-item {
    text-transform: uppercase;
    font-weight: 700;
    z-index: 300; }
  .item.item-icon-heart {
    color: #80181e; }
  .menu .item {
    background: transparent;
    color: #4a6e23;
    font-weight: 700; }

/* ------------------------------------ *\
   #ADVANCED MENU
\* ------------------------------------ */
.advanced-menu-content {
  background: inherit;
  top: 0 !important; }
  .advanced-menu-content .item {
    padding: 20px;
    border: none;
    font-size: 30px;
    color: #605846;
    margin: 0;
    /* Temporary */
    /* &:nth-of-type(1) {
      color: $color-green;
    }

    &:nth-of-type(2) {
      color: $color-red-01;
    }

    &:nth-of-type(3) {
      color: $color-orange;
    }*/ }
    .advanced-menu-content .item::before {
      content: '';
      height: 1px;
      background: #cecec1;
      position: absolute;
      left: 20px;
      right: 0;
      bottom: 0; }
    .advanced-menu-content .item:first-child {
      border-top: none; }
    .advanced-menu-content .item:last-child {
      border-bottom: none; }

/*
 * MAP
 *
 * Styles for map element and components
 */
/* ------------------------------------ *\
   #MAP
\* ------------------------------------ */
#map {
  height: 100%;
  width: 100%;
  background-color: white; }
  #map img.leaflet-tile.leaflet-tile-loaded[src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs="] {
    visibility: hidden; }

.map-center {
  pointer-events: none; }

.locate-custom-control {
  position: absolute;
  bottom: 100px;
  right: 15px; }
  .locate-custom-control .leaflet-control-locate a span.blu-icon, .locate-custom-control .leaflet-control-locate a:hover span.blu-icon {
    color: #87f1ff; }
  .locate-custom-control a {
    cursor: pointer; }

.report-control {
  position: absolute;
  top: 20px;
  right: 15px;
  z-index: 800;
  width: 45px;
  height: 45px;
  background-color: rgba(96, 88, 70, 0.7);
  border: none;
  border-radius: 50%; }
  .report-control i::before {
    font-size: 27px;
    position: absolute;
    top: 7px;
    left: 11px;
    color: #fff; }

.report-control:active {
  background-color: #605846; }
  .report-control:active a i::before {
    color: #cccccc; }

/* ------------------------------------ *\
   #MAP ICONS
\* ------------------------------------ */
/* MarkersCluster style */
.marker-cluster {
  border: 3px solid rgba(18, 16, 11, 0.6);
  border-radius: 50%;
  background: transparent;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  .marker-cluster div {
    margin-left: 0;
    margin-top: 0;
    border-radius: 50%;
    font-size: 20px;
    color: #ffffff !important; }

.marker-cluster-small div,
.marker-cluster-medium div,
.marker-cluster-large div {
  background-color: rgba(96, 88, 70, 0.8) !important; }

.marker-cluster-small {
  width: 40px !important;
  height: 40px !important; }
  .marker-cluster-small div {
    width: 34px !important;
    height: 34px !important;
    line-height: 32px !important; }

.marker-cluster-medium {
  width: 55px !important;
  height: 55px !important; }
  .marker-cluster-medium div {
    width: 49px !important;
    height: 49px !important;
    line-height: 47px !important; }

.marker-cluster-large {
  width: 65px !important;
  height: 65px !important; }
  .marker-cluster-large div {
    width: 59px !important;
    height: 59px !important;
    line-height: 57px !important; }

.leaflet-clickable {
  cursor: pointer; }

.force-hide {
  display: none !important; }

.advanced-layout a.leaflet-control-layers-toggle {
  display: none; }

/* Vector markers */
.leaflet-map-pane .vector-marker {
  margin-left: -18px !important;
  margin-top: -43px !important; }
  .leaflet-map-pane .vector-marker.vector-marker-shadow::before {
    right: 40px;
    bottom: -14px; }
  .leaflet-map-pane .vector-marker path {
    stroke: #ffffff;
    stroke-width: 2px; }

/* Marker icons */
.wm.icon {
  z-index: 10000000000;
  text-align: center; }

/* Map center element */
.icon.map-center {
  margin-top: -24px;
  margin-left: -12px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 401;
  font-size: 48px;
  color: rgba(96, 88, 70, 0.7); }

/* ------------------------------------ *\
   #MAP BUTTONS
\* ------------------------------------ */
.leaflet-bar {
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  border: none !important; }
  .leaflet-bar a, .leaflet-bar a:hover {
    display: block;
    width: 45px !important;
    height: 45px !important;
    margin-bottom: 9px;
    background-color: rgba(96, 88, 70, 0.7);
    border: none !important;
    border-bottom: none !important;
    border-radius: 50%;
    line-height: 43px !important;
    text-align: center !important;
    text-decoration: none;
    color: rgba(96, 88, 70, 0.7);
    outline: none !important;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    box-shadow: none !important; }
    .leaflet-bar a:first-child, .leaflet-bar a:last-child, .leaflet-bar a:hover:first-child, .leaflet-bar a:hover:last-child {
      border-top-left-radius: 50%;
      border-top-right-radius: 50%;
      border-bottom-left-radius: 50%;
      border-bottom-right-radius: 50%; }
    .leaflet-bar a:last-child, .leaflet-bar a:hover:last-child {
      margin-bottom: 0; }
  .leaflet-bar a.leaflet-disabled {
    background: #4C676A;
    color: transparent;
    opacity: 0.5; }
  .leaflet-bar a:hover, .leaflet-bar a:focus {
    background-color: #605846; }
    .leaflet-bar a:hover::before, .leaflet-bar a:focus::before {
      color: #ffffff; }
  .leaflet-bar .leaflet-control-zoom-in,
  .leaflet-bar .leaflet-control-zoom-out {
    font-family: 'webmapp' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow: hidden;
    position: relative;
    color: transparent; }
    .leaflet-bar .leaflet-control-zoom-in::after,
    .leaflet-bar .leaflet-control-zoom-out::after {
      display: inline-block;
      content: '';
      height: 100%;
      vertical-align: middle; }
    .leaflet-bar .leaflet-control-zoom-in::before,
    .leaflet-bar .leaflet-control-zoom-out::before {
      display: inline-block;
      width: 100%;
      height: 100%;
      margin-top: -22px;
      margin-left: -23px;
      font-size: 27px;
      border-radius: 50%;
      color: #ffffff;
      vertical-align: middle;
      text-align: center;
      position: absolute;
      top: 50%;
      left: 50%; }
  .leaflet-bar .leaflet-control-zoom-out::before {
    content: "\f208"; }
  .leaflet-bar .leaflet-control-zoom-in::before {
    content: "\f217"; }

.leaflet-bottom .leaflet-control {
  margin-bottom: 20px; }

div.leaflet-top.leaflet-right {
  right: 15px;
  top: 50%; }
  div.leaflet-top.leaflet-right div.leaflet-control-zoom.leaflet-bar.leaflet-control {
    right: 0;
    top: 0;
    margin-top: -55px;
    margin-right: 0; }
    div.leaflet-top.leaflet-right div.leaflet-control-zoom.leaflet-bar.leaflet-control a.leaflet-control-zoom-in {
      margin-bottom: 20px; }

.leaflet-top .leaflet-control-locate {
  display: none !important; }

.leaflet-shadow-pane {
  z-index: 0 !important; }

.leaflet-control-locate a,
.leaflet-control-locate a:hover {
  margin: 0;
  padding: 0 !important; }
  .leaflet-control-locate a span,
  .leaflet-control-locate a:hover span {
    display: inline-block;
    width: 45px;
    height: 45px;
    font-family: 'webmapp' !important;
    border-radius: 50%;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 45px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #ffffff; }
    .leaflet-control-locate a span::before,
    .leaflet-control-locate a:hover span::before {
      display: none; }
    .leaflet-control-locate a span.wm-icon-mappalo::after,
    .leaflet-control-locate a:hover span.wm-icon-mappalo::after {
      content: "\e911";
      display: inline-block;
      width: 45px;
      height: 45px;
      font-size: 27px; }
    .leaflet-control-locate a span.wm-icon-android-locate-full::after,
    .leaflet-control-locate a:hover span.wm-icon-android-locate-full::after {
      content: "\e920";
      display: inline-block;
      width: 45px;
      height: 45px;
      font-size: 27px; }
    .leaflet-control-locate a span.wm-icon-android-locate::after,
    .leaflet-control-locate a:hover span.wm-icon-android-locate::after {
      content: "\e921";
      display: inline-block;
      width: 45px;
      height: 45px;
      font-size: 27px; }
    .leaflet-control-locate a span.fa-spinner,
    .leaflet-control-locate a:hover span.fa-spinner {
      font-family: 'webmapp' !important; }

/* Scale control */
.leaflet-control-scale-line {
  background: transparent;
  border: 0;
  border-bottom: 2px solid #605846;
  color: #605846;
  font-size: 15px; }

.show-start-navigation .leaflet-top.leaflet-left {
  bottom: 20px;
  right: 10px;
  left: auto;
  top: auto; }

/* Coordinates block */
@keyframes animaterightin {
  from {
    right: -300px;
    opacity: 0; }
  to {
    right: 37px;
    opacity: 1; } }

@keyframes animaterightout {
  from {
    right: 37px;
    opacity: 1; }
  to {
    right: -300px;
    opacity: 0; } }

.animate-rightin {
  position: absolute;
  animation: animaterightin 0.4s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards; }

.animate-rightout {
  position: absolute;
  animation: animaterightout 0.4s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards; }

.coords-expander {
  width: 36px;
  height: 36px;
  position: absolute;
  bottom: 24px;
  right: 0;
  background: rgba(96, 88, 70, 0.8);
  z-index: 800;
  font-size: 26px;
  padding: 4px 0;
  text-align: center; }
  .coords-expander a {
    color: #fff; }

.coords-block {
  margin: 0 auto;
  position: absolute;
  right: 37px;
  bottom: 24px;
  z-index: 799;
  font-size: 20px;
  text-align: center; }
  .coords-block > span {
    display: inline-block;
    height: 36px;
    padding: 0 14px;
    padding-bottom: 7px;
    background: rgba(96, 88, 70, 0.8);
    line-height: 36px; }
  .coords-block .coords-share-button {
    width: 32px;
    min-height: 20px;
    margin-right: 6px;
    margin-left: -6px;
    padding: 0;
    background: transparent;
    border: none;
    color: inherit; }
  .coords-block .icon {
    vertical-align: middle; }

#map-logo {
  position: absolute;
  bottom: 20px;
  width: 60vw;
  z-index: 600;
  left: 20vw; }
  #map-logo div {
    width: fit-content;
    margin: 0 auto; }
    #map-logo div img {
      max-width: 60vw;
      max-height: 10vh; }

.start-navigation {
  height: 45px;
  position: absolute;
  top: 10px;
  left: 10px;
  background: rgba(96, 88, 70, 0.8);
  z-index: 800;
  font-size: 26px;
  padding: 8px 18px 8px 9px;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: none; }
  .start-navigation a {
    color: #fff; }
  .show-start-navigation .start-navigation {
    display: block; }

.leaflet-bar,
.coords-block,
.coords-expander,
.report-control,
#map-logo {
  display: none; }
  .map-page .leaflet-bar,
  .map-search .leaflet-bar, .map-page
  .coords-block,
  .map-search
  .coords-block, .map-page
  .coords-expander,
  .map-search
  .coords-expander, .map-page
  .report-control,
  .map-search
  .report-control, .map-page
  #map-logo,
  .map-search
  #map-logo {
    display: block; }

.leaflet-control-attribution {
  display: none; }

/* Navigation interface */
.navigation-interface .coords-block, .navigation-interface
.coords-expander {
  bottom: 99px; }

.navigation-interface .locate-custom-control {
  bottom: 150px; }

.navigator-div-controller {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 800;
  background-color: #fff;
  font-size: 25px;
  text-align: center;
  height: 75px; }
  .navigator-div-controller div.content-div {
    height: inherit; }
    .navigator-div-controller div.content-div div.pause-button {
      width: calc(100% - 27% * 3);
      float: left;
      font-size: 50px;
      height: inherit;
      padding: 11.5px; }
      .navigator-div-controller div.content-div div.pause-button a {
        color: #fff; }
    .navigator-div-controller div.content-div div.time-section,
    .navigator-div-controller div.content-div div.distance-section,
    .navigator-div-controller div.content-div div.speed-section {
      color: #605846;
      width: 27%;
      float: left;
      height: inherit; }
      .navigator-div-controller div.content-div div.time-section div,
      .navigator-div-controller div.content-div div.distance-section div,
      .navigator-div-controller div.content-div div.speed-section div {
        margin: 2px 0; }
      .navigator-div-controller div.content-div div.time-section span.navigation-value,
      .navigator-div-controller div.content-div div.distance-section span.navigation-value,
      .navigator-div-controller div.content-div div.speed-section span.navigation-value {
        font-size: 22px; }
      .navigator-div-controller div.content-div div.time-section span.navigation-text,
      .navigator-div-controller div.content-div div.distance-section span.navigation-text,
      .navigator-div-controller div.content-div div.speed-section span.navigation-text {
        font-size: 16px; }
      .navigator-div-controller div.content-div div.time-section span,
      .navigator-div-controller div.content-div div.distance-section span,
      .navigator-div-controller div.content-div div.speed-section span {
        display: block;
        line-height: 22px; }
    .navigator-div-controller div.content-div a {
      color: #fff; }
    .navigator-div-controller div.content-div div.resume-navigation,
    .navigator-div-controller div.content-div div.stop-navigation {
      width: 40%;
      float: left;
      padding: 15px; }
    .navigator-div-controller div.content-div div.resume-navigation {
      background-color: #7BB221;
      margin: 12px 2% 13px 8%; }
    .navigator-div-controller div.content-div div.stop-navigation {
      background-color: #FF4108;
      margin: 12px 8% 13px 2%; }

ion-side-menus.navigation-interface ion-nav-bar {
  display: none; }

ion-side-menus.navigation-interface .map-page ion-footer-bar.bar.bar-assertive.bar-footer {
  height: 100%; }

ion-side-menus.navigation-interface .bar.bar-assertive.bar-footer {
  height: -webkit-calc(100% - 60%);
  height: -moz-calc(100% - 60%);
  height: calc(100% - 60%); }

ion-side-menus.navigation-interface ion-view ion-content.has-header,
.platform-ios.platform-cordova:not(.fullscreen) ion-side-menus.navigation-interface ion-view ion-content.has-header {
  top: 0; }

ion-side-menus.navigation-interface .show-start-navigation .start-navigation {
  display: none; }

/* ------------------------------------ *\
   #MAP POPOVER
\* ------------------------------------ */
.leaflet-container a.leaflet-popup-close-button {
  display: none; }

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: rgba(96, 88, 70, 0.8);
  color: white;
  -webkit-box-shadow: 0 0 3px rgba(18, 16, 11, 0.75);
  -moz-box-shadow: 0 0 3px rgba(18, 16, 11, 0.75);
  box-shadow: 0 0 3px rgba(18, 16, 11, 0.75); }

.leaflet-popup-content-wrapper {
  border-radius: 4px;
  margin: 0;
  padding: 0;
  padding-right: 13px;
  width: 310px; }
  .leaflet-popup-content-wrapper .leaflet-popup-content {
    font-family: "Abel", sans-serif;
    font-weight: 700;
    margin: 0;
    padding: 0;
    padding-right: 20px;
    height: 104px; }
    .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div-margin {
      padding: 10px; }
    .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div {
      overflow: hidden; }
      .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-img {
        width: 103px;
        height: 103px;
        display: inline-block;
        overflow: hidden; }
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-img img {
          object-fit: cover;
          width: 103px;
          height: 103px;
          border-radius: 4px 0 0 4px; }
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-img div {
          margin: 5px;
          padding: 20px; }
          .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-img div i {
            font-size: 53px; }
      .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full,
      .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img {
        display: inline-block;
        width: 100%;
        padding: 10px; }
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-title,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-content-title,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-category,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-description,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-title,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-content-title,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-category,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-description {
          margin: 0;
          padding: 0;
          color: inherit; }
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-content-title,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-content-title {
          height: 84px; }
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-title,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-title {
          font-size: 23px;
          line-height: 27px;
          max-height: 81px;
          overflow: hidden;
          display: block;
          display: -webkit-box;
          max-width: 164px;
          -webkit-line-clamp: 3;
          -webkit-box-orient: vertical;
          text-overflow: ellipsis; }
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-category,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-category {
          height: 14px;
          line-height: 14px;
          width: 164px;
          font-size: 14px;
          margin: 3px 0;
          color: #E2E2E2;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis; }
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-full .popup-description,
        .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img .popup-description {
          font-size: 15px; }
      .leaflet-popup-content-wrapper .leaflet-popup-content div.popup-div div.popup-content-img {
        float: right;
        width: 174px;
        padding: 0;
        padding-left: 10px; }

.leaflet-popup-content {
  width: auto !important;
  min-width: 271px;
  padding-right: 30px;
  position: relative;
  cursor: pointer; }
  .leaflet-popup-content p {
    margin: 18px 26px; }

button.popup-button {
  display: inline-block;
  padding: 25px;
  background: transparent;
  border: none;
  position: absolute;
  right: -25px;
  top: 50%;
  color: #A2A2A2;
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }
  button.popup-button .icon::before {
    font-size: 30px;
    vertical-align: middle; }

button.popup-close {
  display: inline-block;
  padding: 25px;
  background: transparent;
  border: none;
  position: absolute;
  left: -36px;
  color: #a2a2a2;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  top: 0; }
  button.popup-close .icon::before {
    font-size: 20px;
    vertical-align: middle; }

/* ------------------------------------ *\
   #IMAGE SLIDER
\* ------------------------------------ */
/* Prevent scrolling in image slider */
.modal-details-gallery .scroll-view.scroll-xy {
  max-width: 100%;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: hidden; }

/* Image in slider */
.image-in-gallery {
  margin: 0 auto; }

/* Slider loader */
@-ms-keyframes spin {
  from {
    -ms-transform: rotate(0deg); }
  to {
    -ms-transform: rotate(360deg); } }

@-moz-keyframes spin {
  from {
    -moz-transform: rotate(0deg); }
  to {
    -moz-transform: rotate(360deg); } }

@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg); } }

@keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

.modal-image-loader {
  width: 46px;
  height: 46px;
  margin-top: -12px;
  margin-left: -23px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -10;
  color: #ffffff;
  font-size: 45px;
  line-height: 46px;
  -webkit-animation: spin 0.95s infinite linear;
  -o-animation: spin 0.95s infinite linear;
  animation: spin 0.95s infinite linear; }

/* Remove slider pager */
.slider-pager {
  display: none; }

.when-welcome .leaflet-overlay-pane {
  display: none; }

.when-welcome .leaflet-marker-icon, .when-welcome .vector-marker {
  display: none; }

.is-a-poi .vector-marker {
  cursor: default !important; }

.leaflet-tile-container canvas {
  opacity: 0 !important; }

/* ------------------------------------ *\
   #MEDIA QUERIES
\* ------------------------------------ */
@media only screen and (min-width: 1025px) {
  .leaflet-bar,
  .coords-block {
    display: block; }
    .welcome-page .leaflet-bar, .welcome-page
    .coords-block {
      display: none; }
  .desktop-half-map .icon.map-center {
    display: block; }
  .welcome-page .icon.map-center,
  .welcome-page.desktop-half-map .icon.map-center {
    display: none; } }

/*
 * MODALS
 *
 * Styles for modals
 */
/* ------------------------------------ *\
   #MAPPALO MODAL
\* ------------------------------------ */
.modal {
  background: inherit !important; }
  .modal .bar.bar-stable {
    background-image: inherit; }

.modal-backdrop-bg {
  background: black; }
  .active .modal-backdrop-bg {
    opacity: 0.9; }

/* Modal for details, filters etc...*/
.modal-mappalo {
  width: auto;
  padding: 10px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  color: #6e655f; }
  .modal-mappalo.modal-details-gallery {
    background: transparent; }

.title-inner-header {
  color: #ffffff; }

.modal-close-header {
  color: #ffffff;
  padding: 7px;
  font-size: 20px;
  cursor: pointer; }

.modal-close {
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 7px;
  background: #605846;
  background: rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  right: 0;
  z-index: 20;
  font-size: 25px;
  text-align: center;
  color: #ffffff; }

.modal-content {
  padding: 15px; }
  .modal-content .modal-description {
    margin: 15px 0; }

.modal-title {
  display: block;
  width: 80%;
  font-size: 16px;
  font-weight: 700;
  color: #918f75; }
  .modal-title i {
    font-size: 50px;
    color: #f7f9f1;
    padding: 5px; }

.modal-content div .modal-subtitle {
  font-size: 30px;
  position: relative;
  top: 20px; }

.modal-content div .modal-p {
  position: relative;
  top: 35px; }

.modal-footer {
  height: 35px;
  background: #ffffff;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  line-height: 35px; }

.modal-footer-title {
  font-weight: 700;
  color: #80181e; }
  .modal-footer-title .icon {
    margin-left: 5px;
    vertical-align: middle; }

/* Filters modal */
.modal-content .accordion-filters .left-icon {
  float: left;
  padding-right: 10px;
  padding-left: 10px; }

.modal-content .accordion-filters .right-icon {
  float: right;
  margin-left: 10px; }

.modal-content .accordion-filters .filters-tab-title-container {
  width: 100%;
  border-bottom: 1px solid #848484;
  color: #848484;
  height: 40px;
  line-height: 30px; }
  .modal-content .accordion-filters .filters-tab-title-container .filters-tab-title {
    float: left;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-transform: uppercase;
    font-size: 25px;
    padding: 3px 0; }
    .modal-content .accordion-filters .filters-tab-title-container .filters-tab-title.cols-3 {
      width: calc(100% / 3); }
    .modal-content .accordion-filters .filters-tab-title-container .filters-tab-title.cols-2 {
      width: 50%; }
    .modal-content .accordion-filters .filters-tab-title-container .filters-tab-title.cols-1 {
      width: 100%; }
    .modal-content .accordion-filters .filters-tab-title-container .filters-tab-title.selected {
      color: #349912;
      border-bottom: 3px solid #349912; }

.modal-content .accordion-filters .filters-tab-content-container .filters-tab-content {
  display: none; }
  .modal-content .accordion-filters .filters-tab-content-container .filters-tab-content.selected {
    display: block;
    width: 100%; }
  .modal-content .accordion-filters .filters-tab-content-container .filters-tab-content .filters-sublayer {
    border-bottom: 1px solid #605846;
    padding: 5px 10px 5px 0;
    font-size: 20px;
    line-height: 25px;
    text-transform: uppercase;
    text-align: center;
    font-weight: bold;
    text-align: left;
    position: relative;
    overflow: hidden;
    height: auto;
    transition: height 0.4s ease-out; }
    .modal-content .accordion-filters .filters-tab-content-container .filters-tab-content .filters-sublayer .filters-layer {
      text-transform: capitalize;
      font-weight: initial;
      margin: 5px 20px; }
      .modal-content .accordion-filters .filters-tab-content-container .filters-tab-content .filters-sublayer .filters-layer div.filters-layer-name {
        margin-left: 40px; }
    .modal-content .accordion-filters .filters-tab-content-container .filters-tab-content .filters-sublayer .filters-layer.disable-checkbox {
      color: #BBBBBB; }

.modal-filters .list {
  padding: 10px; }

.modal-filters .item {
  padding: 1.5vh 0;
  border-right: none;
  border-left: none;
  color: #605846; }
  .modal-filters .item:first-child {
    border-top: none; }
  .modal-filters .item:last-child {
    border-bottom: none; }

/* Details modal */
.modal-details .modal-title {
  font-size: 22px;
  color: #80181e;
  font-family: "Abel", sans-serif; }

.modal-details.modal-details-gallery .modal-title {
  display: none; }

.modal-inner-content {
  padding: 20px 0;
  border-bottom: 1px solid #918f75; }
  .modal-details-gallery .modal-inner-content,
  .modal-details-table .modal-inner-content {
    border-bottom: none; }

.modal-content .coupons-list {
  cursor: default; }

.modal-column-right p h3, .modal-column-right p h4 {
  font-size: 14px;
  color: #605846; }

.modal-column-right a {
  color: #605846; }

.modal-content-title {
  margin: 10px 0;
  font-size: 18px;
  font-family: "Abel", sans-serif;
  line-height: 1.2; }
  .modal-details-gallery .modal-content-title {
    display: none; }

.modal-column-left,
.modal-column-right {
  font-size: 14px; }

.modal-two-columns .modal-column-left,
.modal-two-columns .modal-column-right {
  display: inline-block;
  width: 49%; }

.modal-column-left {
  padding-top: 7px;
  padding-right: 7px; }

.modal-column-right {
  padding-left: 7px; }

.modal-full-content {
  margin: 10px 0; }

.modal-image-container {
  vertical-align: top; }
  .modal-image-container img {
    display: inline-block; }

.modal-image-gallery {
  height: 100%; }

.scroll-canvas {
  width: 100%;
  height: 100%;
  overflow-x: hidden; }

.modal-image-gallery .slider {
  height: 100%; }

.image-in-gallery {
  width: 90%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center, center; }

.modal-details-gallery .modal-image-element {
  right: 0;
  left: 0;
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }
  .modal-details-gallery .modal-image-element img {
    position: absolute;
    top: -9999px;
    right: -9999px;
    bottom: -9999px;
    left: -9999px;
    margin: auto; }
  .modal-details-gallery .modal-image-element .image-caption {
    color: #f7f9f1;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: auto;
    padding: 5px 5%;
    background: rgba(0, 0, 0, 0.5); }

.modal-details-gallery .modal-image-container .button-arrow {
  display: inline-block;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  border: none;
  background: transparent;
  position: absolute;
  top: 50%;
  text-align: center;
  color: #ffffff;
  z-index: 10; }
  .modal-details-gallery .modal-image-container .button-arrow .icon {
    display: inline-block;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    line-height: 40px;
    font-size: 20px;
    color: #000000;
    text-align: center; }
    .modal-details-gallery .modal-image-container .button-arrow .icon::before {
      display: inline-block;
      width: 40px;
      height: 40px;
      line-height: 40px; }

.modal-details-gallery .modal-image-container .arrow-right {
  right: 0; }

.modal-details-gallery .modal-image-container .arrow-left {
  left: 0; }

.slider-slides::after {
  content: '';
  display: table;
  clear: both; }

.modal-image-content .scroll {
  height: 100%; }

.modal-image-content .modal-content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%; }
  .modal-image-content .modal-content img {
    width: 100%; }

/* Tappa POIs */
.modal-tappa-poi .tappa-poi-list {
  margin-top: 10px; }
  .modal-tappa-poi .tappa-poi-list .poi-list-item, .modal-tappa-poi .tappa-poi-list .event-list-item {
    cursor: pointer;
    font-size: 18px; }
    .modal-tappa-poi .tappa-poi-list .poi-list-item.item-icon-left, .modal-tappa-poi .tappa-poi-list .event-list-item.item-icon-left {
      padding-left: 30px; }
      .modal-tappa-poi .tappa-poi-list .poi-list-item.item-icon-left .icon, .modal-tappa-poi .tappa-poi-list .event-list-item.item-icon-left .icon {
        left: -5px; }
    .modal-tappa-poi .tappa-poi-list .poi-list-item:first-child, .modal-tappa-poi .tappa-poi-list .event-list-item:first-child {
      border-top: none; }
    .modal-tappa-poi .tappa-poi-list .poi-list-item .icon::before, .modal-tappa-poi .tappa-poi-list .event-list-item .icon::before {
      font-size: 15px; }
  .modal-tappa-poi .tappa-poi-list .event-list-item {
    color: #80181e; }

/* Waarning modal */
.warning-modal-close {
  width: fit-content;
  text-transform: uppercase;
  margin: 0 auto;
  padding: 10px 20px; }

/* MODAL DOWNLOAD */
ion-modal-view.modal-download {
  position: relative;
  height: 100vh; }
  ion-modal-view.modal-download .download-page.has-header {
    position: absolute;
    background: transparent;
    top: 50% !important;
    height: 20em;
    margin-top: -8em; }

.offline-progress-bar {
  width: 100%;
  height: 5px; }

/* LOADER in MODAL DONWLOAD*/
.loader {
  border: 16px solid #f8faf3;
  border-radius: 50%;
  width: 120px;
  height: 120px;
  animation: spin 2s linear infinite;
  margin: 30px auto; }

@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@media (min-width: 1025px) {
  .modal.modal-details-gallery {
    width: 800px !important; } }

@media (min-width: 680px) {
  .modal {
    width: 400px;
    left: 50%;
    margin-left: -200px;
    min-height: 500px;
    top: 10%; }
    .modal.modal-details-gallery {
      width: 600px;
      margin-left: -300px; } }

@media (min-width: 480px) and (orientation: landscape) {
  .modal {
    min-height: initial;
    top: 0; }
    .modal.modal-details-gallery {
      width: 400px;
      margin: 0 auto;
      left: 0; } }

/*
 * OFFLINE PAGE
 *
 * Styles for offline map page
 */
/* ------------------------------------ *\
   #OFFLINE
\* ------------------------------------ */
/* Card content */
.offline-page {
  position: absolute;
  background: transparent;
  color: #ffffff; }
  .offline-page .offline-content {
    width: 90%;
    margin: 0 auto; }

.offline-description {
  margin: 30px 0; }
  .offline-description .offline-desc-title {
    margin-bottom: 15px;
    color: #ffffff;
    font-size: 32px;
    text-transform: uppercase; }
  .offline-description .offline-desc-text {
    font-size: 17px;
    line-height: 1; }

.offline-text {
  margin: 40px 0;
  font-size: 18px;
  color: #ffffff;
  text-align: center; }

.percentage {
  font-weight: 700;
  color: #80181e; }

.offline-image {
  width: 234px;
  height: 130px;
  margin: 40px auto; }

@media screen and (min-width: 768px) {
  .offline-page .offline-content button.button-block {
    width: 336px;
    margin: 0 auto 10px; } }

button.no-animate.button.button-icon.icon.wm-icon-funnel-wm {
  font-weight: 500; }

#search-fixed {
  width: 90%;
  margin: 10px 5%;
  height: 30px;
  position: fixed;
  z-index: 2; }
  #search-fixed input,
  #search-fixed .packages__sort {
    position: fixed;
    height: inherit;
    box-shadow: 0 2px 5px #aaaaaa;
    background-color: #FCFDF7; }
  #search-fixed input {
    width: calc(90% - 70px);
    padding: 0 15px; }
  #search-fixed .packages__sort {
    z-index: 100;
    width: 30px;
    margin-left: 10px;
    right: 5%;
    height: inherit;
    font-size: 24px;
    padding: 3px;
    color: #000;
    text-align: center; }
    #search-fixed .packages__sort .semitransparent {
      opacity: 0.3; }
    #search-fixed .packages__sort ion-spinner {
      position: absolute;
      left: 0;
      top: 0;
      padding: 1px; }

.bottom-whitespace {
  height: 35px;
  width: 100%; }

.packages-title {
  margin: 10px 0;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 600; }

.packages-title-reduced {
  margin: 6px 0;
  padding: 0 12px;
  font-weight: 600;
  font-size: 1.2em;
  line-height: 1.2em;
  height: 2.4em;
  overflow: hidden;
  text-align: left; }

.under-search-bar {
  top: -5px; }

.modal-inner-content.modal-two-columns.coupons-list.reduced-list {
  padding: 0 !important;
  position: relative;
  box-shadow: 0px 2px 5px #d7d7d7;
  margin-bottom: 15px;
  background-color: #FCFDF7;
  border-bottom: 0;
  height: calc(90vw * 35 / 100);
  max-height: 150px; }
  .modal-inner-content.modal-two-columns.coupons-list.reduced-list:first-child {
    margin-top: 55px; }
  .search-bar-margin-fix .modal-inner-content.modal-two-columns.coupons-list.reduced-list:last-child {
    margin-bottom: 75px; }

.details-image-reduced {
  position: relative;
  width: 35%;
  float: left; }
  .details-image-reduced img {
    display: block;
    margin: 0 auto;
    min-height: 90px; }
  .details-image-reduced i.icon {
    position: absolute;
    top: 5px;
    right: 5px;
    font-size: 14px;
    padding: 5px;
    border-radius: 50%;
    background-color: #00cc00;
    color: #fff; }

.details-reduced {
  float: right;
  width: 65%;
  height: 100%;
  position: absolute;
  right: 0;
  padding: 0; }

.content-reduced {
  min-height: 20px;
  height: 15%;
  padding: 0 12px;
  font-size: 0.8em;
  line-height: 1.6em;
  vertical-align: middle; }
  .content-reduced .icons-reduced {
    float: left;
    padding-right: 10px;
    text-align: left;
    font-size: 1.8em; }
  .content-reduced .stars-reduced {
    float: left;
    text-align: left; }
    .content-reduced .stars-reduced i {
      vertical-align: middle; }
  .content-reduced .code-reduced {
    float: right;
    text-align: right;
    font-size: 140%;
    font-style: italic;
    font-weight: 700; }

.button-reduced {
  width: 50%;
  padding: 6px 0 0 0;
  position: absolute;
  bottom: 0; }
  .button-reduced button.login-button.button.button-block {
    font-size: 16px;
    width: auto;
    padding: 0 11px 0 10px;
    line-height: 24px;
    min-height: 28px;
    height: 28px;
    margin-left: 12px !important;
    margin-bottom: 5px !important;
    letter-spacing: 0; }

.route-languages-reduced {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 5px;
  font-size: 1.25em; }

@media screen and (max-width: 360px) {
  .packages-title-reduced {
    font-size: 1em;
    line-height: 1em;
    height: 2em; }
  .buttons-reduced {
    height: 1.6em; }
    .buttons-reduced i {
      font-size: 1.6em; } }

.report-page ion-content {
  padding: 10px; }
  .report-page ion-content .report__items-container .report__item {
    margin-bottom: 10px;
    position: relative;
    -webkit-box-shadow: 0px 2px 5px #aaaaaa;
    -moz-box-shadow: 0px 2px 5px #aaaaaa;
    box-shadow: 0px 2px 5px #aaaaaa; }
    .report-page ion-content .report__items-container .report__item .report__item-content {
      width: calc(100% - 30px); }
      .report-page ion-content .report__items-container .report__item .report__item-content .report__item-title,
      .report-page ion-content .report__items-container .report__item .report__item-content .report__item-subtitle {
        width: 100%; }
      .report-page ion-content .report__items-container .report__item .report__item-content .report__item-title {
        font-size: 25px;
        font-weight: bold;
        padding: 10px 10px 0px 15px; }
      .report-page ion-content .report__items-container .report__item .report__item-content .report__item-subtitle {
        font-size: 15px;
        padding: 5px 10px 5px 20px; }
    .report-page ion-content .report__items-container .report__item .report__item-arrow {
      position: absolute;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 10px; }
    .report-page ion-content .report__items-container .report__item:last-child {
      margin-bottom: 0; }
    .report-page ion-content .report__items-container .report__item::after {
      clear: both; }
  .report-page ion-content .report__form .report__form-field {
    margin-bottom: 15px; }
    .report-page ion-content .report__form .report__form-field .report__label {
      font-size: 20px;
      padding-left: 5px;
      font-weight: bold;
      margin-top: 10px; }
    .report-page ion-content .report__form .report__form-field input[type^=text],
    .report-page ion-content .report__form .report__form-field textarea {
      font-size: 16px;
      width: 90%;
      margin: 5px 5%;
      -webkit-box-shadow: 0px 2px 5px #aaaaaa;
      -moz-box-shadow: 0px 2px 5px #aaaaaa;
      box-shadow: 0px 2px 5px #aaaaaa; }
    .report-page ion-content .report__form .report__form-field input[type^=text] {
      padding: 3px 8px; }
    .report-page ion-content .report__form .report__form-field textarea {
      padding: 10px;
      height: 200px;
      max-height: 25vh;
      max-width: 90%;
      min-width: 90%; }
    .report-page ion-content .report__form .report__form-field .report__checkbox,
    .report-page ion-content .report__form .report__form-field .report__radio {
      margin: 3px 5%;
      width: 90%; }
    .report-page ion-content .report__form .report__form-field .image-picker {
      width: 90%;
      margin: 5px 5%;
      line-height: 50px;
      vertical-align: middle;
      font-size: 120%; }
      .report-page ion-content .report__form .report__form-field .image-picker .picture-pickers {
        width: 40%;
        display: inline-block; }
        .report-page ion-content .report__form .report__form-field .image-picker .picture-pickers .picture-picker {
          display: inline;
          font-size: 120%; }
      .report-page ion-content .report__form .report__form-field .image-picker a {
        margin: 0 5px;
        font-size: 120%; }
      .report-page ion-content .report__form .report__form-field .image-picker .image-picker-value {
        display: inline-block; }
    .report-page ion-content .report__form .report__form-field:last-child::after {
      content: "";
      display: block;
      height: 60px; }

.report-page .report__send {
  position: absolute;
  bottom: 0;
  width: 50%;
  margin: 0 25%;
  -webkit-box-shadow: 0px -2px 5px #aaaaaa;
  -moz-box-shadow: 0px -2px 5px #aaaaaa;
  box-shadow: 0px -2px 5px #aaaaaa;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  text-align: center;
  text-transform: uppercase;
  font-size: 25px;
  padding: 15px; }
  .report-page .report__send ion-spinner {
    color: #fff; }

@media screen and (max-width: 350px) {
  .image-picker {
    font-size: 100%; }
    .image-picker .picture-pickers {
      width: 50%; } }

@media screen and (min-width: 350px) and (max-width: 380px) {
  .image-picker {
    font-size: 105%; }
    .image-picker .picture-pickers {
      width: 45%; } }

/**
 * SEARCH PAGE
 *
 * Style for search page
 */
/* ------------------------------------ *\
   #GENERAL
\* ------------------------------------ */
.item-search-filter {
  padding: 4px;
  position: relative;
  z-index: 300;
  border: none; }

.item-search-form {
  padding: 3px;
  padding-top: 2px;
  padding-bottom: 5px;
  position: relative;
  z-index: 300;
  border: none; }

.search-select-box,
.search-input-box {
  width: 100%; }
  .search-select-box input,
  .search-input-box input {
    width: 100%; }
  .search-select-box button:hover,
  .search-input-box button:hover {
    border: 1px solid #918F75;
    color: #918F75; }

/*.select-category-left,
.select-category-right {
  display: inline-block;
  width: 50%;
  vertical-align: middle;
}*/
.select-category-right {
  text-align: right; }

.label-select-search,
.label-select-name {
  display: block; }

.label-select-search, .label-select-others {
  font-size: 15px;
  color: inherit; }

.label-select-others {
  text-transform: lowercase; }

.label-select-name {
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase; }

.search-input-box {
  padding: 5px;
  background: #ffffff;
  border: 1px solid #918f75;
  position: relative; }
  .search-input-box .search-input {
    padding: 5px; }
  .search-input-box .button {
    width: 35px;
    height: 35px;
    background: transparent;
    overflow: hidden;
    position: absolute;
    right: 5px; }
    .search-input-box .button::before {
      margin-top: 0;
      padding: 5px;
      font-size: 30px; }

.search-input::-webkit-input-placeholder {
  font-style: italic;
  font-size: 18px; }

.search-input:-moz-placeholder {
  font-style: italic;
  font-size: 18px; }

.search-input::-moz-placeholder {
  font-style: italic;
  font-size: 18px; }

.search-input:-ms-input-placeholder {
  font-style: italic;
  font-size: 18px; }

.label-input-wrapper {
  display: inline-block;
  width: 100%; }

/*
 * SETTINGS PAGE
 *
 */
/* ------------------------------------ *\
   #Settings
\* ------------------------------------ */
.settings-page {
  background: white; }

/*
 * TAXONOMY PAGE
 *
 */
/* ------------------------------------ *\
   #Taxonomy
\* ------------------------------------ */
.taxonomy-page ion-content {
  padding: 2%; }
  .taxonomy-page ion-content .taxonomy-button {
    box-shadow: 0px 2px 5px #d7d7d7;
    margin: 0 0 10px;
    width: 100%;
    height: calc(100% / 3.5); }
    .taxonomy-page ion-content .taxonomy-button .taxonomy-content {
      margin-left: 10px;
      width: calc(100% - 10px);
      height: 100%; }
      .taxonomy-page ion-content .taxonomy-button .taxonomy-content div {
        width: 100%; }
      .taxonomy-page ion-content .taxonomy-button .taxonomy-content .taxonomy-image {
        height: calc(100% - 60px);
        overflow: hidden;
        position: relative; }
        .taxonomy-page ion-content .taxonomy-button .taxonomy-content .taxonomy-image img {
          width: 100%;
          height: auto;
          overflow: hidden;
          position: absolute;
          top: -9999px;
          bottom: -9999px;
          left: -9999px;
          right: -9999px;
          margin: auto; }
      .taxonomy-page ion-content .taxonomy-button .taxonomy-content .taxonomy-titlebar {
        color: #000;
        background: #fff;
        padding: 10px 5px;
        line-height: 20px;
        font-size: 17px;
        height: 60px;
        text-transform: uppercase;
        font-weight: 700;
        width: 100%;
        position: relative; }
        .taxonomy-page ion-content .taxonomy-button .taxonomy-content .taxonomy-titlebar span {
          display: inline-block;
          max-width: calc(100% - 125px);
          max-height: 38px;
          overflow: hidden; }
        .taxonomy-page ion-content .taxonomy-button .taxonomy-content .taxonomy-titlebar div.activity-icons {
          position: absolute;
          right: 5px;
          top: 17.5px;
          width: auto; }
          .taxonomy-page ion-content .taxonomy-button .taxonomy-content .taxonomy-titlebar div.activity-icons i {
            font-size: 25px;
            margin: 12.5px 0;
            padding: 5px;
            color: #D80000;
            border: 1px solid #D80000;
            border-radius: 50%; }

/*
 * WEBMAPP PAGE
 *
 * Styles for webmapp page
 */
/* ------------------------------------ *\
   #WEBMAPP
\* ------------------------------------ */
ion-content div.static-content.card-content {
  color: #605846; }
  ion-content div.static-content.card-content div.webmapp-paragraph {
    font-size: 1.2em;
    padding: 10px 0; }
  ion-content div.static-content.card-content div.webmapp-img {
    margin: 15px auto 0; }
    ion-content div.static-content.card-content div.webmapp-img img {
      height: auto; }

/*
 * WELCOME
 *
 * Styles for welcome page
 */
/* ------------------------------------ *\
   #WELCOME ELEMENTS
\* ------------------------------------ */
.welcome-page.pane,
.welcome-page .pane {
  background: transparent; }

.welcome-list {
  margin: 0 !important; }

/* Login/register bar */
.nav-bar-title.welcome-nav::after {
  content: '';
  display: table;
  clear: both; }

.nav-bar-title.welcome-nav a.nav-link {
  text-transform: uppercase;
  text-decoration: none; }

.nav-bar-title.welcome-nav a.login-link {
  float: left;
  color: #b92d30; }

.nav-bar-title.welcome-nav a.register-link {
  float: right;
  color: #918f75; }

.card.welcome-list {
  height: 100%;
  /* Temporary?*/
  padding: 0 2% 15px;
  background: #f7f9f1;
  border-bottom-right-radius: 50% 10%;
  border-bottom-left-radius: 50% 10%; }
  .card.welcome-list .item,
  .card.welcome-list button.item {
    background: transparent;
    margin: 0 10px;
    padding: 14px 0;
    border-top: none;
    border-bottom: 1px solid rgba(145, 143, 117, 0.7);
    text-align: center;
    overflow: visible;
    white-space: normal;
    /* Temporary */ }
    .card.welcome-list .item:nth-of-type(1) .card-item-title,
    .card.welcome-list button.item:nth-of-type(1) .card-item-title {
      color: #4a6e23; }
    .card.welcome-list .item:nth-of-type(1) .card-item-submenu,
    .card.welcome-list button.item:nth-of-type(1) .card-item-submenu {
      text-align: center; }
    .card.welcome-list .item:nth-of-type(1) .card-item-subtitle,
    .card.welcome-list button.item:nth-of-type(1) .card-item-subtitle {
      display: none; }
    .card.welcome-list .item:nth-of-type(2) .card-item-submenu,
    .card.welcome-list button.item:nth-of-type(2) .card-item-submenu {
      display: none; }
    .card.welcome-list .item:nth-of-type(2) .card-item-subtitle,
    .card.welcome-list button.item:nth-of-type(2) .card-item-subtitle {
      display: block; }
    .card.welcome-list .item:nth-of-type(3) .card-item-submenu,
    .card.welcome-list button.item:nth-of-type(3) .card-item-submenu {
      display: none; }
    .card.welcome-list .item:nth-of-type(3) .card-item-subtitle,
    .card.welcome-list button.item:nth-of-type(3) .card-item-subtitle {
      display: block; }
    .card.welcome-list .item.discover-more,
    .card.welcome-list button.item.discover-more {
      width: 94%;
      text-align: center;
      border-top: none; }
      .card.welcome-list .item.discover-more .icon,
      .card.welcome-list button.item.discover-more .icon {
        margin-left: 3px;
        font-size: 30px;
        vertical-align: middle; }
    .card.welcome-list .item:last-child,
    .card.welcome-list button.item:last-child {
      border: none; }

.card-item-title {
  display: inline-block;
  padding: 0 0 10px 0;
  font-size: 30px;
  /*1.8em;*/
  font-weight: 700; }

.card-item-subtitle {
  font-size: 15px;
  color: #605846;
  line-height: 1; }

/* Card item submenu */
.card-item-submenu {
  margin: 0; }

.submenu-item {
  display: inline-block;
  width: 32%;
  margin: 5px 0;
  padding: 0;
  border: none;
  background: transparent;
  line-height: 1;
  white-space: normal;
  font-size: 12px;
  color: #4a6e23;
  font-weight: 700;
  text-transform: lowercase;
  text-transform: lowercase; }
  .submenu-item .icon {
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: 30px; }
  .submenu-item.item-show-more {
    margin: 0 0 6px 0;
    text-transform: uppercase;
    font-size: 15px; }
    .submenu-item.item-show-more .icon {
      font-size: 32px;
      margin: 5px 0; }

/* Hidden element on larger mobile and desktop */
.xs-visible {
  display: none; }

/* TODO: to remove */
.item-offerte-card .icon {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-size: 30px; }

.welcome-footer {
  background: #6e655f;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  color: #ffffff;
  -webkit-box-shadow: 0 -6px 17px rgba(18, 16, 11, 0.3);
  -moz-box-shadow: 0 -6px 17px rgba(18, 16, 11, 0.3);
  box-shadow: 0 -6px 17px rgba(18, 16, 11, 0.3); }
  .welcome-footer a {
    display: inline-block;
    margin: 0 12px;
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    text-decoration: underline;
    text-transform: uppercase;
    font-weight: 700;
    color: #ffffff; }

.footer-card {
  padding-left: 46px;
  background: transparent url("../images/card-button.png") left center no-repeat;
  float: left; }

.footer-settings {
  padding-left: 28px;
  float: right;
  text-decoration: none !important; }
  .footer-settings i {
    color: #B52125;
    padding: 10px; }
  .footer-settings span {
    text-decoration: underline; }

/* ------------------------------------ *\
   #MEDIA QUERIES
\* ------------------------------------ */
@media only screen and (max-height: 567px) and (max-width: 768px) {
  .card.welcome-list button.item .icon {
    font-size: 2.2rem; }
  .card-item-title {
    padding: 0 0 5px 0;
    font-size: 2.2rem; }
  .card-item-subtitle {
    font-size: 1.45rem; }
  .card-item-submenu {
    margin-top: 0; }
  .submenu-item {
    margin: 6px 0; }
    .submenu-item .icon {
      font-size: 26px; }
  /* Hidden/visibile elements for mobile */
  .xs-hidden {
    display: none; }
  .xs-visible {
    display: inline-block; } }

@media only screen and (max-height: 568px) and (max-width: 768px) {
  .card.welcome-list .item,
  .card.welcome-list button.item {
    padding: 10px 0; } }

@media only screen and (min-height: 568px) and (max-height: 736px) and (max-width: 768px) {
  .card.welcome-list button.item .icon {
    font-size: 2rem; }
  .card-item-title {
    font-size: 2rem; }
  .card-item-subtitle {
    font-size: 1.3rem; } }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .card.welcome-list .item,
  .card.welcome-list button.item {
    width: 600px;
    margin: 0 auto;
    padding: 20px 0; }
  .card-item-title {
    padding: 0 0 10px 0;
    font-size: 28px; }
  .card-item-subtitle {
    font-size: 18px; }
  .card-item-submenu {
    margin-top: 0; }
  .submenu-item {
    margin: 10px 0;
    padding: 15px;
    font-size: 16px; }
    .submenu-item .icon {
      font-size: 40px; }
  .mobile-visible {
    display: none; } }

@media only screen and (min-width: 992px) {
  .card.welcome-list {
    display: table;
    border-bottom-right-radius: 0 0;
    border-bottom-left-radius: 0 0; }
    .card.welcome-list .item,
    .card.welcome-list button.item {
      display: table-cell;
      width: 30%;
      margin: 0 auto;
      border-bottom: none;
      vertical-align: middle; }
  .card-item-submenu {
    margin: 20px 0; }
  .submenu-item {
    padding: 10px;
    font-size: 16px; }
    .submenu-item .icon {
      font-size: 45px; } }

/* SAVE TRACK MODAL */
.save-page {
  background: #f8faf3; }
  .save-page input {
    padding-right: 0 !important; }

.save-header {
  text-transform: uppercase;
  background: #fff;
  background-size: 48px 41px;
  color: #605846;
  font-weight: 700;
  padding: 12px;
  font-size: 1.1em;
  text-align: center;
  -webkit-box-shadow: 0 0 1px rgba(18, 16, 11, 0.5);
  -moz-box-shadow: 0 0 1px rgba(18, 16, 11, 0.5);
  box-shadow: 0 0 1px rgba(18, 16, 11, 0.5); }
  .save-header .icon {
    color: #b52125; }

.save-form {
  max-width: 80%;
  margin: 0 auto; }
  .save-form .item {
    padding: 7px 0;
    border: 0 !important;
    background: transparent !important; }
    .save-form .item input {
      height: 65px;
      padding: 0;
      border-bottom: 1px solid rgba(229, 230, 221, 0.7);
      font-size: 20px;
      background: none !important;
      line-height: 2.2em;
      text-align: center; }
      .save-form .item input::-webkit-input-placeholder {
        color: rgba(96, 88, 70, 0.6);
        text-transform: capitalize; }
      .save-form .item input:-moz-placeholder {
        color: rgba(96, 88, 70, 0.6);
        text-transform: capitalize; }
      .save-form .item input::-moz-placeholder {
        color: rgba(96, 88, 70, 0.6);
        text-transform: capitalize; }
      .save-form .item input:-ms-input-placeholder {
        color: rgba(96, 88, 70, 0.6);
        text-transform: capitalize; }
      .save-form .item input.red-border {
        border-bottom: 1px solid rgba(166, 62, 10, 0.7); }
  .save-form .login-button {
    text-transform: uppercase; }
  .save-form .error-message {
    color: #bb3437;
    padding: 3px 0; }
    .save-form .error-message ::first-letter {
      text-transform: uppercase; }

@media only screen and (min-width: 481px) {
  .login-form .item {
    padding: 1em 0; }
    .login-form .item input {
      height: 2.2em; } }

/* custom style goes here */
