.main-menu > ul > li span > a {
 
    padding: 0 8px 2px 8px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    border: solid 1px #fff;
}

.main-menu ul, .main-menu ul li {
    margin: 0 2px;
}
#descr_breve{
font-size: 1rem;
line-height: 1.4;
}
#breadcrumb{
    
    text-align:left;
    padding-left:20px;
    padding-top:12px;
    background-color:#ffffff;
}

.list_articles ul li {
  float: left;
  width: 100%!important;
  margin-right: 15px!important;
}

/*************FORM BOOKING *******************/
#price_single_main span
{text-shadow: rgb(255, 255, 255) 1px 0px 0px, rgb(255, 255, 255) 0.540302px 0.841471px 0px, rgb(255, 255, 255) -0.416147px 0.909297px 0px, rgb(255, 255, 255) -0.989992px 0.14112px 0px, rgb(255, 255, 255) -0.653644px -0.756802px 0px, rgb(255, 255, 255) 0.283662px -0.958924px 0px, rgb(255, 255, 255) 0.96017px -0.279415px 0px;}
#single_tour_feat ul {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: 0px;
    display: block;
    border-bottom: 2px solid #555;
    margin-bottom: 30px;
    overflow: hidden;
}
#single_tour_feat ul li {
    width: 16.66666666%;
    vertical-align: middle;
    text-align: center;
    padding: 0 10px 20px 10px;
    white-space: nowrap;
    display: block;
    float: left;
    font-size: 10px;
	color: #555
}
.short_info .price
{text-shadow: 3px 1px 0px rgba(0,0,0,0.70);}
.card-header p
{margin: 0}
.card-header a .indicator
{margin-top: -20px}
.mfp-title, .mfp-counter
{color: #fff;
background: rgba(0,102,153,0.7);
padding: 3px}

#contact_custom label {
	display: inline;
}
#contact_custom .btn_full {font-size: 16px;}
.regular-checkbox {
	display: none;
}

#contact_form label {
	display: inline;
}
#contact_form .btn_full {font-size: 16px;}
.regular-checkbox {
	display: none;
}

.regular-checkbox + label {
	background-color: #fafafa;
	border: 2px solid #cacece;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
	padding: 9px;
	border-radius: 3px;
	display: inline-block;
	position: relative;
}

.regular-checkbox + label:active, .regular-checkbox:checked + label:active {
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);
}

.regular-checkbox:checked + label {
	background-color: #e9ecee;
	border: 2px solid #adb8c0;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05), inset 15px 10px -12px rgba(255,255,255,0.1);
	color: #99a1a7;
}

.regular-checkbox:checked + label:after {
	content: '\2714';
	font-size: 14px;
	position: absolute;
	top: -4px;
	left: 3px;
	color: #99a1a7;
}


.big-checkbox + label {
	padding: 4px 12px; margin-right: 10px; 
}

.big-checkbox:checked + label:after {
	font-size: 22px;
	left: 4px;
    color: #02900D;
}

.remove-after:after {
   content: none!important;
}

.add-after:after {
   content: "";
}

input:required:invalid + label{
  border-color: #ff0000;
}
input:required + label{
  border-color: #e9ecee;
}



#overlay {
	background: rgba(0, 0, 0, 0.4);
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 3;
	bottom: 0;
}


.error h1 {font-size: 40px;    color: #0C8E02;  font-weight: bold;}
.error h2 {font-size: 32px;    color: #0C8E02;  font-weight: normal;}
.error .backhome{font-size: 16px; }
.datepicker {padding: 0px;}
/*************FORM RICERCA *******************/
#preventivo .input-group-text {border: solid 1px #7a7a7a;border-radius: 0; background: #7a7a7a; color: #ffffff;}
#preventivo select {border: solid 1px #7a7a7a;border-radius: 0; background: #ffffff; color: #000;padding: 2px; height: 32px; font-size: 20px;}
.mb30{margin-bottom: 30px}
.select-box {
  text-align: left;
  background: #7a7a7a;
  color: #ffffff;
  width: 100%;
  display: flex;
}

.select-box__current {
  position: relative;
  /*box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.1);*/
  cursor: pointer;
  outline: none;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}
.select-box__current:focus + .select-box__list {
  opacity: 1;
  -webkit-animation-name: none;
          animation-name: none;
}
.select-box__current:focus + .select-box__list .select-box__option {
  cursor: pointer;
}
.select-box__input-text {
  color: #ffffff!important;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}
.select-box__current:focus .select-box__icon {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}
.select-box__icon {
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 20px;
  opacity: 0.9;
  -webkit-transition: 0.2s ease;
  transition: 0.2s ease;
}
.select-box__value {
  display: -webkit-box;
  display: flex;
}
.select-box__input {
  display: none;
}
.select-box__input:checked + .select-box__input-text {
  display: block;
}
.select-box__input-text {
  display: none;
  width: 100%;
  margin: 0;
  padding: 5px;
  background-color: #7a7a7a;
  color: #ffffff;
}
.select-box__list {
  position: absolute;
  top:35px;
  width: 100%;
  padding: 0;
  list-style: none;
  opacity: 0;
  -webkit-animation-name: HideList;
          animation-name: HideList;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: step-start;
          animation-timing-function: step-start;
  box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.1);
  z-index: 99999;
  background: #ffffff;
  
}
.select-box__option {
  display: block;
  padding: 5px;
  background-color: #fff;
  color: #000;
}
.select-box__option:hover, .select-box__option:focus {
  color: #000;
  background-color: #d3d3d3;
}
.box-counter {
  display: inline-block;
  width: 100%;
  border-bottom: 2px solid #efefef;
}
.box-counter--label {
  margin-bottom: 0;
  font-size: .90rem;
  color: #999;
  font-weight: 200;
  text-align: left;
}
.box-counter--data {
  display: block;
  width: 100%;
  position: relative;
  color: #000;
}
.box-counter--price {
  width: 50%;
  height: 2.625rem;
  vertical-align: bottom;
  font-size: 1.1rem;
  float: left;
  color: #000;
  text-align: left;
}
.box-counter--price small {
  font-size: 0.7rem;
  color: #666;
  text-align: left;
  display: block
}
.box-counter--counter {
  width: 50%;
  float: left;
  text-align: right;
  color: #000;
  padding: 3px;
}

.box-counter--total {
  width: 35%;
  line-height: 2.25rem;
  height: 2.625rem;
  font-size: 1.6rem;
  float: left;
  text-align: right;
  vertical-align: bottom;
  color: #000;
}

.minus, .plus{color: #666; border: 2px solid #666666; border-radius: 20px;}

input[type="number"] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
  width: 70px;
  border: 0;
  text-align: center;
  font-size: 1.6rem; 
  font-weight: 600;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

.number-input {
  border: 0px;
  display: inline-flex;
}

.number-input,
.number-input * {
  box-sizing: border-box;
}

.number-input button {
  outline:none;
  -webkit-appearance: none;
  background-color: transparent;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  cursor: pointer;
  margin: 0;
  position: relative;
  margin-top: 7px;
}

#preventivo h4{width: 100%; text-align: left;}
#preventivo .card-header a .indicator {
  margin-top: 0px;
}
.nodispo{padding: 10px; color: #f00;}
.result_booking .card-header {padding: .50rem .50rem;background: #0071eb;font-size: 1.125rem;font-weight: 300;line-height: 1.4;color: #fff;}
.result_booking .card-header a{color: #fff;}
.result_booking .card-body{width: 100%; text-align: left;padding: .50rem;vertical-align: top;}
.result_booking .card-price{width: 100%; padding: .9rem 10px .9rem 0;vertical-align: top; text-align: left}
.result_booking .card-acconto{width: 100%; padding: .9rem 10px .9rem 0;vertical-align: top; text-align: left}
.result_booking .card-book{width: 100%; padding: .9rem 0;vertical-align: top;}
.result_booking .big-checkbox + label {
  padding: 12px 12px;
  margin: 0 10px 10px 0;
}
.result_booking p{margin-bottom: 0;}
.card-price .price-text {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1rem;
    text-align: center;
    color: #666;
    display: block;
}
.card-price .price-value {
    font-size: 2rem;
    text-align: center;
    color: #000;
    display: block;
    font-weight: bold;
}

.card-price .price-tax {
    font-size: 1rem;
    text-align: center;
    color: #023E0D;
    display: block;
    line-height: 15px;
}
.card-acconto .price-text {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1rem;
    text-align: center;
    color: #666;
    display: block;
}
.card-acconto .price-value {
    font-size: 2rem;
    text-align: center;
    color: #FF0000;
    display: block;
    font-weight: bold;
}

.card-acconto .price-tax {
    font-size: 1rem;
    text-align: center;
    color: #023E0D;
    display: block;
    line-height: 15px;
}
.box-counter--price span{line-height: 20px;}
.main_title_3 #preventivo span {background: none}
.orari {display: block; clear: both;}
.riga_orario {padding: .5rem; overflow: hidden; margin-bottom: 15px;}
.ora-partenza {float:left; width: 50%; text-align: left;border-bottom: solid 1px #ccc;height: 50px; }
.ora-partenza small{font-size: 12px; color: #000; margin-left: 25px; }
.ora-partenza p{height: 30px;}
.flag-partenza {float:left; width: 20%; text-align: left;border-bottom: solid 1px #ccc;height: 50px; }
.prezzo_orario {float:right;width: 30%; text-align: right;border-bottom: solid 1px #ccc;height: 50px;}

.btn-book{
  background: #0071eb;
  border: 2px solid #0071eb;
  border-radius: 5rem;
  color: #ffffff;
  transition: background-color .2s ease-out;
  font-weight: bold;
  font-size: 22px;
  padding: .5rem;
  width: 100%;
}
.bglightgrey{background: #dddddd; margin-bottom: 5px;}
.box_checkout{background: #fff;}
/*#checkout {margin-top: 100px!important; padding: 30px 15px;}*/
.box_checkout h3{
display: block!important;
overflow: hidden!important;
text-align: center;
width: 100%!important;
margin: 0 !important;
}
.box_checkout .big-checkbox + label {
  padding: 12px 12px;
  margin: 0 10px 0 0;
  text-align: left;
  vertical-align: middle
}
.btn-pay {
  background: #0071eb;
  border: 2px solid #0071eb;
  border-radius: 5rem;
  color: #ffffff;
  transition: background-color .2s ease-out;
  font-weight: bold;
  font-size: 16px;
  padding: .5rem;
  width: 100%;
}
#contactmsg {margin-top: 20px;}


.modal-title{font-size: 22px!important; font-weight: 700!important;color: #f9212a}
.modal-body h3{font-size: 16px!important; background-color: #e5e5e5; padding: 5px 2px; color: #000;}
.modal-body label{font-weight: bold;}
.modal-body .error{color: #ff0000; font-size: 11px;}
@-webkit-keyframes HideList {
  from {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  to {
    -webkit-transform: scaleY(0);
            transform: scaleY(0);
  }
}

@keyframes HideList {
  from {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  to {
    -webkit-transform: scaleY(0);
            transform: scaleY(0);
  }
}