/*
Theme Name: Samarcanda
Theme URI: https://gigasdev.it/samarcanda
Author: Gigasweb
Author URI: https://gigasweb.it/
Text Domain: dev
Description: Custom theme for Samarcanda Taxi corporate site
Version: 1.6.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: light, gray, white, one-column, two-columns, right-sidebar, fluid-layout, responsive-layout, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

@import 'https://fonts.googleapis.com/css?family=Open+Sans:400,700';

.bg-white{
    background-color: #ffffff
}
.bg-dark-blue{
    background-color: #34448d
}
.bg-light-gray{
    background-color: #f5f5f5 !important
}
.bg-solid-yellow{
    background-color: #ffcc00
}
.bg-solid-red{
    background-color: #df594e
}
.bg-solid-green{
    background-color: #3aa33a
}
.text-white{
    color: #ffffff
}
.text-blue{
    color: #34448d
}
.text-gray{
    color: #f5f5f5
}
.text-yellow{
    color: #ffcc00
}
.text-red{
    background-color: #df594e
}
.btn-red, .btn-blue{
    padding:10px 20px;
    border-radius: 50px !important;
    color: #ffffff;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center;
    min-width: 110px;
    background-color: #df594e;
    display: inline-block;

}
.btn-blue{background-color: #34448d;}
.btn-white-red, .btn-white-blue{
    padding:10px 20px;
    font-size: 14px !important;
    font-weight: 600 !important;
    background-color: #ffffff;
}

a.btn-red:hover, a.btn-blue:hover{color:#ffffff}
.btn-white-blue{color:#34448d}
.btn-white-red{color:#df594e}
#apply_discount{
    color: #df594e;
    background:none;
    text-decoration: underline;
    text-transform: uppercase;
    position: absolute; 
    right:0px;
    bottom:0px;
    padding: 8px 15px;
    font-size: 1rem;
    cursor: pointer;
}
.field-error{border: 1px solid #cd2c29}
.red-text{
    color: #df594e !important;
}
.block{
    display: block !important;
    width: 100%;
    max-width: 100%;
    clear: both;
}
.hidden{
    display:none !important;
}
body.dev,html {
    background-color: white;
    color: #333;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

::selection {
    background-color: #777;
    color: white;
}

::-moz-selection {
    background-color: #777;
    color: white;
}

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background-color: #efefef;
    box-shadow: inset 0 0 4px rgba(0, 0, 0, .1);
}

::-webkit-scrollbar-thumb {
    background: #777;
    border-radius: 5px;
    box-shadow: inset 0 0 4px rgba(0, 0, 0, .5);
}

a,
a:focus,
a:active,
a:visited,
a:hover {
    cursor: pointer;
    text-decoration: none !important;

}
a.show-all{
    color: #df594e !important;
    text-transform: uppercase;
    text-decoration: underline !important;
    font-size: 13px;
}
label {
    cursor: pointer;
    font-weight: normal;
}

.appeareance-none {
    -moz-appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

.appeareance-none::-ms-expand {
    display: none;
}

.relative{position: relative;}
.v-center-block{
    position: absolute;
    top: 50%;
    transform: translate(0,-50%);
    z-index:2;
}
/* common typography */
.form-error-message{
    color: red;
}
.form-error-message{
    color: green;
}
div.form-message{
    padding: 10px;
    left:0;
    top:0;
    font-weight: 700;
    position: fixed;
    z-index:150000;
    width: 100%;
}
div.form-message .container{position: relative;}
div.form-message .dismiss-form-message{
    position: absolute;
    right:15px;
    width: 20px;
    height:20px;
    background: none;
    color:#ffffff;
    border:none;
    z-index:20;
    line-height: 20px;
    font-size: 40px;
    outline: none !important;
    cursor: pointer;
}

.form-heading a.togglePanel{
    float: right;
}
h1.form-heading,
h2.form-heading,
h3.form-heading,
h4.form-heading,
h5.form-heading,
h6.form-heading
{
    margin-left:-15px;
    margin-right: -15px;
    color: #ffffff;
    padding: 15px 45px;
    text-align: left;
    font-size: 24px;
}
h1.page-heading
{
    color: #ffffff;
    padding: 0;
    margin:0;
    text-align: left;
    font-size: 30px;
}
.heading-title{
    color: #34448d !important;
    padding:0;
    font-size:36px;
}
.heading-title+p{font-size:14px;}
.personal-data h6{font-size:11px;}
.form-group {position: relative;}
.form-group label
{
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 400;
    width: 100%;
    padding: 0;
    margin:0;
    text-align: left;
    justify-content:flex-start !important;
    box-sizing: border-box;
}
select{background: #f6f6f6 !important;}
.overflow-hidden{
    overflow: hidden;
}
.page-title{
    font-size: 54px;
    color: #282f39;
    font-weight: 800;
}
.page-small-title{
    font-size: 34px;
    color: #282f39;
    font-weight: 800;
}
.post-content{
    padding: 15px;
}
.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6{
    font-weight: 800;
}
.post-content p{padding-bottom: 15px;}
.order{

    padding-bottom:20px;

}
.order:last-child{border-bottom:none;}
.order-row,.privacy-row{
    font-size: 13px;
    color: #2c4058;
    padding-bottom:10px;
}
.privacy-row{position: relative;}
.privacy-row::before{
    content: ' ';
    position: absolute;
    top:0;
    left:15px;
    right:15px;
    width: auto;
    border-bottom: solid 1px #777;
}
.detail {
    width: 100%;
    display: inline-block;
    box-sizing: border-box;
}
.detail span{
    display: inline-block;
    max-width: 80%;
    float: left;
    padding-right: 10px;
    font-size:13px;
}
.personal-data .detail{
    font-size:14px;
}

.personal-data .detail p {
    margin: 0;
    float: left;
    width: max-content;
}

.big-red-text{
    color: #df594e !important;
    font-size: 120%;
    font-weight: 600;
    padding: 0 5px;
}
/* fine common typography */

/* form Styles */
input[type="text"],
input[type="email"],
input[type="number"],
input[type="password"],
select,
textarea{
    border-color: transparent !important;
    border:1px solid transparent;
    background: #f6f6f6;
    padding:8px;
    border-radius:0px;
    max-width: 100%;
    width: 100% !important;
    box-sizing: border-box;
}
input[type="text"].field-error,
input[type="email"].field-error,
input[type="number"].field-error,
input[type="password"].field-error,
select.field-error,
textarea.field-error{
    border-color: #cd2c29 !important
}
[type="radio"] {
    display: none;
}
[type="radio"]:checked + label,
[type="radio"]:not(:checked) + label
{
    position: relative;
    margin-bottom: 3px !important;
    padding-left: 28px;
    padding-right: 0;
    cursor: pointer;
    line-height: 20px;
    width: auto;
    color: #666;
}
[type="radio"]:checked + label:before,
[type="radio"]:not(:checked) + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #4b5562;
    border-radius: 100%;
    background: #fff;
}
[type="radio"]:checked + label:after,
[type="radio"]:not(:checked) + label:after {
    content: '';
    width: 12px;
    height: 12px;
    background: #df594e;
    position: absolute;
    top: 4px;
    left: 4px;
    border-radius: 100%;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
[type="radio"]:not(:checked) + label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}
[type="radio"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}

[type="checkbox"] {
    display: none;
}
[type="checkbox"]:checked + label,
[type="checkbox"]:not(:checked) + label
{
    position: relative;
    margin-top: 20px;
    padding-left: 28px;
    padding-right: 28px;
    cursor: pointer;
    line-height: 20px;
    display: inline-block;
    color: #666;
}
[type="checkbox"]:checked + label:before,
[type="checkbox"]:not(:checked) + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #4b5562;
    background: #fff;
}
[type="checkbox"]:checked + label:after,
[type="checkbox"]:not(:checked) + label:after {
    content: '';
    width: 12px;
    height: 12px;
    background: #df594e;
    position: absolute;
    top: 4px;
    left: 4px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
[type="checkbox"]:not(:checked) + label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}
[type="checkbox"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}
/* fine form Styles */

body.dev .container {
    max-width: 1140px;
}

.navbar {
    padding: 0;
}

.header-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0;
    width: 100%;
}

.header-menu > li {
    display: inline-block;
}

.header-menu > li:first-child {
    margin-left: 0;
}

.header-menu > li:last-child {
    margin-right: 0;
}

.header-menu > li > a {
    display: block;
    font-size: 16px;
}

select {
    cursor: pointer;
}

select option {
    background-color: white;
    color: black;
}

.padding-top-100 {
    padding-top: 100px;
}

.padding-top-60 {
    padding-top: 60px;
}

.padding-top-40 {
    padding-top: 40px;
}

.padding-top-20 {
    padding-top: 20px;
}
.padding-top-25 {
    padding-top: 25px;
}

.padding-top-10 {
    padding-top: 10px;
}

.padding-bottom-100 {
    padding-bottom: 100px;
}

.padding-bottom-60 {
    padding-bottom: 60px;
}

.padding-bottom-40 {
    padding-bottom: 40px;
}

.padding-bottom-20 {
    padding-bottom: 20px;
}

.padding-bottom-10 {
    padding-bottom: 10px;
}

.margin-bottom-20{
    margin-bottom: 20px;
}

.margin-bottom-40{
    margin-bottom: 40px;
}
.m-auto{
    margin: auto;
}
body.dev img {
    height: auto;
    max-width: 100%;
}

img.image-100 {
    height: auto;
    width: 100%;
}

body.dev figure {
    margin: 0;
}

figure.img-contain img {
    height: 100%;
    object-fit: contain;
    width: 100%;
}
img.img-responsive{
    width: 100%;
    height:auto;
    max-width: 100%;
    min-width: 100%;
}
figure.img-cover img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

body.dev .table {
    display: table;
    margin: 0;
    table-layout: fixed;
}

body.dev .table .center {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
}
.bold{font-weight: 600;}
.extra-bold{font-weight: 800;}

textarea {
    resize: vertical;
}
p15{
    padding:15px;
}
.ptb20{
    padding-top:20px;
    padding-bottom:20px;
}
.plr20{
    padding-left:20px;
    padding-right:20px;
}
.plr-none{
    padding-left:0px !important;
    padding-right:0px !important;
}
.sep{
    display: block;
    clear: both;
    width: 100%;
    padding-bottom: 20px;
    padding-top: 5px;
}
.sep span{
    height: 4px;
    width: 80px;
    display: block;

}
.max-width {
    margin: 0 auto;
}

.lowercase {
    text-transform: lowercase;
}

.uppercase {
    text-transform: uppercase;
}

input.datepicker.hasDatepicker {
    cursor: pointer;
}

.alignleft {
    float: left;
    margin: 0 15px 15px 0;
}

.alignright {
    float: right;
    margin: 0 0 15px 15px;
}

.aligncenter {
    text-align: center;
}

.opacity-0 {
    opacity: 0;
}

.opacity-1 {
    opacity: 1;
}

.btn-100 {
    width: 100%;
}

.hidden-xs-up {
    display: none !important;
}
table{width:100%;}
body.dev .text-center {
    text-align: center;
}
body.dev .max-width-300 {
    max-width: 300px;
}
body.dev .max-width-600 {
    max-width: 600px;
}
body.dev .max-width-800 {
    max-width: 800px;
}
body.dev .max-width-940 {
    max-width: 940px;
}

.date {
    cursor: pointer;
}




/* TOP NAV MENU */
#topNav{
    padding:0px 15px;
    color:#ffffff;
    width:100%;
    max-width: 100%;
    min-height: 36px;
    font-weight: 600;
}
#topLeftMenu{
    width: 100%;
    /*max-width: 450px;*/
    padding-left:0; padding-right:0;
}
#topLeftMenu ul, #topRightMenu ul{
    padding:0;
    margin:0;
    font-size:14px;
    list-style-type: none;
    display: inline-block;
    clear: both;
    width: 100%;
    min-height: 36px;
}
#top-menu-left{text-transform: uppercase}
#topLeftMenu ul li, #topRightMenu ul li{
    margin: 0 8px 0 0;
    float: left;
    padding:0;
}
#topRightMenu ul.social-links li{margin-right:10px}
#topLeftMenu ul li a, #topRightMenu ul li a
{
    color: #ffffff;
    min-height: 36px;
    width: 100%;
    display: block;
    text-align: left;
    line-height: 36px;
    font-size: 12px;
}
#topLeftMenu ul li button, #topRightMenu ul li button{
    background: none;
    padding:0;
    margin:0;
    color:#ffffff;
    border:none;
    text-transform: uppercase;
    padding-top:9px;
    font-size: 12px;
    font-weight: 600;
}
#topLeftMenu ul li a:hover, #topRightMenu ul li a:hover{opacity:.8}

#topRightMenu ul.lang-list{float:right; width: 60px;}

#topRightMenu ul#user-access{    
    width: auto;
    margin: auto;
    display: inline-block !important;
    text-align: center;
    float: none;
}
#topRightMenu ul#user-access,
#topRightMenu ul.social-links{
    position: relative; 
    top:3px;
}

#topRightMenu ul.lang-list li{float:right; margin-right:10px;}
#topRightMenu ul.lang-list li:first-child{margin-right:0px;}

#topRightMenu ul.social-links li a{font-size:20px;padding:0 6px; margin:0;}

#user-access{display: inherit !important;}
#user-access li{padding-right: 7px;}
#user-access li a{
    text-transform: uppercase;
    font-size:12px;
    display: inline !important;
    padding-right:7px;
    border-right: 2px solid #ffffff;
}
#user-access li:last-child a{
    border-right: none;
}
/* FINE TOP NAV MENU */

/* HEADER MENU */
#header-menu-container{
    position: relative;

}
#main-header{padding: 15px 0;}
#header-menu,#main-header .phone{
    margin-top: 20px;

}
#header-menu li{margin: 0 20px 0 0;}
#header-menu li a{
    color: #34448d;
    font-size: 14px;
    font-weight: 600;
}
#header-menu li ul.sub-menu{
    position:absolute;
    background: #ffffff;
    border-bottom: 2px solid #df594e;
    display: none;
    z-index:200;
    padding: 0;
    padding-top: 20px;
    margin:0;
    min-width: 200px;
}

#header-menu li ul.sub-menu::before{
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    background: #ffffff;
    border: 8px solid transparent;
    box-sizing: border-box;
    border-left-color: #df594e;
    border-top-color: #CD2C28;
    transform: rotate(-135deg);
    position: absolute;
    top: -2px;
    left: 15px
}

#header-menu li ul.sub-menu li{
    margin: 1px 0;
    width: 100%;
}
#header-menu li ul.sub-menu li:hover{
    background: #f3f3f3
}
#header-menu li ul.sub-menu li a{
    padding: 6px 10px;
    display: block;
    font-size:12px;   
}
#header-menu li:hover ul.sub-menu{
    display: block;
}
#main-header .phone{
    background-color: #df594e;
    color: #ffffff;
    padding: 6px 15px 6px 55px;
    background-image: url('images/phone.png');
    background-position: 25px 50%;
    background-repeat: no-repeat;
    border-radius:30px;
    font-weight: 800;
}
a.phonelink{
    display: block;
    height:100%;
    padding-top:15px
}
/* FINE HEADER MENU */

/* HOME SLIDER */
#home-hero .item img.safe-size{
    opacity: 0;
    visibility: hidden;
}
#home-hero .item,.visual-hero { position: relative; min-height: 100vh}
#home-hero .item div.bg{
    position: absolute;
    top:0;
    left: 0;
    right:0;
    bottom:0;
    margin:auto;
    width: 100%;
    height:100%;
    display: block;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    z-index:3;
}

#home-hero .item .container,
.visual-hero .container,
#home-hero .item .row{
    height:100%;
}
#home-hero .item .caption{
    height:60%;
    position: absolute;
    bottom:0;
    left: 0;
    margin: auto;
}
#home-hero .item .caption-title{
    font-size: 85px;
    font-weight: 800;
    color:#ffffff;
    text-transform: uppercase;
    text-shadow: 0px 0px 4px rgba(0,0,0,0.3)
}
#home-hero .item .caption-content{
    color:#ffffff;
    font-size: 20px;
    text-shadow: 0px 0px 4px rgba(0,0,0,0.3)
}
#home-hero .item .caption-content img{
    max-width: 100%;
    width: auto;
}
#home-hero .item .caption-more,div.more,div.blu-more{padding-top:20px;}
#home-hero .item .caption-more a,
div.more a,
div.blu-more a
{
    padding:10px 20px;
    border-radius: 50px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    min-width: 110px;
    background-color: #df594e;
    display: inline-block;
}
div.blu-more a{
    background-color: #34448d;
}
.abs-more {
    position: absolute;
    bottom: 0;
}
#home-hero .item, .visual-hero{max-width: 100%;height:100vh;overflow: hidden}
.dotsContainer{text-align: left}
.owl-dots{
    position: absolute;
    z-index: 50;
    top:40%;
    left:50%;
    height:21px;
    width:50%;
    max-width: 570px;
    margin-top: -21px;
    display: inline-block;
    -webkit-transform: translate(-100%,0%);
    -moz-transform: translate(-100%,0%);
    -ms-transform: translate(-100%,0%);
    -o-transform: translate(-100%,0%);
    transform: translate(-100%,0%);
}
.owl-dots .owl-dot{
    width: 21px;
    height:21px;
    display: inline-block;
    text-align: center;
    background: transparent;
    border: none;
}
.owl-dots .owl-dot span{
    background: #ffffff;
    width: 5px; height:5px;
    display: block;
    margin: 8px auto;
    border-radius: 50%;
}
.owl-dots .owl-dot.active span{
    background: #df594e;
    margin: 0;
    width: 21px; height:21px;
}
/* FINE HOME SLIDER */

/* HOME BOOKING FORM */
#home-booking{
    position: absolute;
    width: 50%;
    top: 50%;
    z-index:50;
    right: 0;
    -webkit-transform: translate(0%,-50%);
    -moz-transform:  translate(0%,-50%);
    -ms-transform:  translate(0%,-50%);
    -o-transform: translate(0%,-50%);
    transform: translate(0%,-50%);
}
#home-booking .loading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    background-image: url('images/loading.gif');
    background-size: 150px auto;
    background-repeat: no-repeat;
    background-position: 50%;
    display: none;
    max-width: 320px;
    margin: auto;
    opacity: .6;
    z-index: 1000;
}

#home-booking h2{
    color: #ffffff;
    padding: 15px ;
    text-align: center;
    font-size: 24px;
}
#home-booking form, #home-booking .form-tab{
    max-width: 320px;
    margin: auto;
    background: #ffffff;
}
#home-booking .form-tab{
    clear: both;
    width: 100%;
    height:40px;
}
#home-booking .form-tab button{opacity: .7; outline: none;}
#home-booking .form-tab button.active{opacity: 1}

#suggested_address{
    list-style-type: none;
    font-size:12px;
    position: absolute;
    z-index:1000;
    width: 100%;
    padding:15px;
    margin-left:-15px;
    box-sizing: border-box;
    background: #ffffff;
}
#suggested_address li{
    margin: 2px 0;
    border-bottom: 1px solid #f6f6f6;
    cursor: pointer;
    padding: 5px ;
}
#suggested_address li:hover{
    background: #f6f6f6;
}
#addressHelper{
    display:none;
    position: absolute;
    background: #ffffff;
    padding-top:15px;
    top:40px;
    min-height: calc(100% - 40px);
    left:0;
    right:0;
    width: 100%;
    z-index:20;
    max-width: 320px;
    margin: auto;
}
#addressHelper .row{
    overflow: hidden;
}
#dateTimeHelper{
    display:none;
    position: absolute;
    background: #ffffff;
    padding-top:15px;
    top:40px;
    min-height: calc(100% - 40px);
    left:0;
    right:0;
    width: 100%;
    z-index:20;
    max-width: 320px;
    margin: auto;
}
#dateTimeHelper .row{
    overflow: hidden;
}
.helper-foot{
    position: absolute;
    bottom: 0;
}
#dateTimeHelper div.bootstrap-datetimepicker-widget{
    min-width: 290px;
}
#addressHelper input {
    padding: 8px 0;
    text-align: center;
    font-size: 14px;
}
#helper-address-section{
    display: inline-block; width: 175px; text-align: center;
}
#helper-civico-section{
    display: inline-block; width: 40px; text-align: center;
}
#helper-city-section{
    display: inline-block; width: 65px; text-align: center;
}
#helper-city-search{
    text-align: right;
    padding: 2px 10px 2px 0;
    margin: 5px 0;
}
#search_results{
    padding: 0 2px 2px 2px;
    border: 1px solid #aaa;
}
#search_results a{
    font-size: 12px;
    text-transform: capitalize;
    position: relative;
    background-color: #efefef;
    display: block;
    width: 100%;
    margin: 3px 0 0 0;
    padding: 0 0 0 17px;
    line-height: 22px;
}
#search_results a::before{
    content: '+';
    color: #fff;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 13px;
    background-color: #ddd;
    text-align: center;
    font-weight: bold;
}

.field_indirizzo {margin-top: 5px;}

#home-booking form .product_type {padding-bottom:8px;}
#home-booking form .product_type label{ margin-top: 0;}

#home-booking form .booking_date {
    display: block;
    float: right;
    padding: 2px 5px;
    font-size: 14px;
    font-weight: bold;
    background-color: #f6f6f6;
    width: 170px !important;
    text-align: center;
    height: 23px;
    line-height: 23px;
}

.product_type_select labbel{
    line-height: 23px;
}

/* FINE HOME BOOKING FORM */


/* RIEPILOGO PRENOTAZIONE */
#dettagli_costi {position: relative;}


.edit-reservation{
    position: absolute;
    top: 5px;
    right: 20px;
    color: #777 !Important;
    text-transform: uppercase;
    text-decoration: underline !important;
    font-size: 12px;
}
#update_reservation{
    display: none;
}
.totale-corsa{
    font-size: 18px;
    font-weight: 800;
    color: #df594e;
    text-align: right;
}
a.icon-link i{color:#ffffff}
a.icon-link{
    width:24px;
    height:24px;
    display: inline-block;
    border-radius:50%;
    color: #ffffff;
    text-align: center;
    font-size:16px;
    line-height: 24px;
}
#dettaglio-buono,
#dettaglio-maggiorazione{
    display:none;
    font-size:12px;
    width: 100%;
    box-sizing: border-box;
}
#dettaglio-buono .valuta,
#dettaglio-buono .prezzo_base,
#dettaglio-buono .totale-buono,
#dettaglio-maggiorazione .valuta,
#dettaglio-maggiorazione .prezzo_base,
#dettaglio-maggiorazione .totale-buono
{
    font-weight: 700;
    text-align: right;
}
#dettaglio-buono .prezzo_base,
#dettaglio-maggiorazione .prezzo_base,
#dettaglio-buono .valutaheading-title uppercase{
    color: #df594e
}

.page-template-template-prenotazione .loading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    background-image: url('images/loading.gif');
    background-size: 150px auto;
    background-repeat: no-repeat;
    background-position: 50%;
    display: none;
    margin: auto;
    opacity: .6;
}
/* FINE RIEPILOGO PRENOTAZIONE */

/* PAGE LIST */
.page-list-item{
    padding:60px 0;
    overflow: hidden;
}
.partner-item{
    padding:30px 0;
}
.partner-item .partner-text{font-size: 20px; padding: 0 30px;}
.partner-item div.more{
    padding-top:0;
}
.page-list-item.blog .card{
    background: #ffffff;
    padding-bottom: 20px;
    color:#4b5562
}
.post-list-item {
    padding: 30px 15px;;
    box-sizing: border-box;
}
.post-list-item .post-small-title{
    font-size: 20px;
    font-weight: 800;
}
.post-list-item .post-small-title span{
    font-weight: 400 !important;
}
.post-list-item .post-excerpt,
.post-list-item .post-details,
.post-list-item .post-availability
{
    font-size: 14px;
}
.post-list-item .post-availability{
    padding: 10px 0;
}

.page-single .form-heading{margin-bottom:0;}

.post-list-item .post-publish-date,
.post-single .post-publish-date
{
    position: absolute;
    z-index: 10;
    background: #df594e;
    color: #ffffff;
    padding:15px;
    top:10px;
    left:25px;
    font-size: 14px;
    border-radius: 6px;
}
.page-list-item .page-name{
    text-transform: uppercase;
    color: #df594e;
    font-size: 14px;
}
.page-list-item .page-title{
    font-size: 54px;
    color: #282f39;
    font-weight: 800;
}
.page-list-item.blog .card .page-title{
    font-size: 18px;
    font-weight: 600;
    padding: 0 15px;
    color: #2c4058;
}
.page-list-item.blog .card .publish-date{
    padding: 8px 15px;
    font-size: 12px;
}
.page-list-item.blog .card .page-excerpt{
    font-size: 16px;
    padding: 0 15px;
}
.side-title{
    font-weight: 800;
    padding:15px;
}
.side-post-list{
    list-style-type: none;
    padding:0;
    margin: 0;

}
.side-post-list li{
    display: inline-block;
    width: 100%;
    padding: 10px 15px;
}
.side-post-list li figure{
    width:50px;
    display: inline-block;
    vertical-align: top;
}
.side-post-list li div.small-post{
    display: inline-block;
    width: calc(100% - 60px);
    padding-left: 10px;
}
div.small-post a{color: #282f39;}
div.small-post a:hover{color: #4b5562;}
.side-post-list li div.small-post h4{font-size:13px; font-weight: 800;}
.side-post-list li div.small-post div{font-size:12px;}
img.design{
    position: absolute;

}

.service-list-cover{
    position: absolute;
    top: 50%;
    left: 50%;
    height: 150%;
    max-width: 100%;
    width: 100%;
    text-align: center;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    background-position: 50%;
    background-size: 90% auto;
    background-repeat: no-repeat;
}
.service-list-cover img{display: none;}
/* FINE PAGE LIST */

/* SORTED LIST */
.add-bags{ color:#ffffff!important;margin-top:10px;}
ul.bags-list{
    list-style-type: none;
    margin:0;
    padding:0;
    width: 100%;
    display: table;
}
ul.bags-list li{display: table-row}
ul.bags-list li div{
    display: table-cell;
    vertical-align: middle;
}
ul.bags-list li div.ct{
    width: 40px;
    text-align: center;
    font-size: 18px;
    font-weight: 800;
}
ul.bags-list li div.type{
    width: calc(100% - 90px);
    text-align: left;
    font-size: 16px;
    margin: 0 4px;
}
ul.bags-list li div.action{
    width: 40px;
    text-align: center;
}
ul.bags-list li div.action a{
    color: #df594e;
    font-size: 38px;
    display: block;
}
ul.bags-list li select{
    font-size: 12px;
    text-transform: uppercase
}
/* SORTED LIST */

/* BREADCRUMBS */

ul.the-breadcrumb{
    width: auto;
    float: right;
    padding:0;
    height: 24px;
    list-style-type: none;
    display: inline-block;
    margin: 0;
}
ul.the-breadcrumb li{
    margin-right: 25px;
    position: relative;
    display: inline-block;
    height: 24px;
    line-height: 16px;
    color: #ffffff;
    font-size: 12px;
    line-height: 24px;
}
ul.the-breadcrumb li:before{
    content: ">";
    display: block;
    position: absolute;
    right: -18px;
    height: 24px;
    color: #ffffff;
    line-height: 24px;
}
ul.the-breadcrumb li:last-child:before{display: none }
ul.the-breadcrumb li a{
    color:#ffffff;
    font-size: 12px;
    display: block;
    line-height: 24px;
}
ul.the-breadcrumb li a:hover{
    opacity:.7
}
/* FINE BREADCRUMBS */


/* AREA RISERVATA */
#edit-data{display: none;}

#edit-data label{font-size:70%}

.avatar {
    position: relative;
}
.avatar figure{
    width: 150px;
    min-height: 150px;
    overflow: hidden;
    border-radius: 50%;
    margin: auto !important;
    text-align: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%;
}

#editAvatar{
    background: none;
    border: none;
    display:none;
    position: absolute;
    left:15px;
    bottom:15px;
    margin: auto;
    cursor:pointer;
    font-size:24px;
    color: #2c4058;
}

.avatar:hover #editAvatar{
    display: block;
}
#privacyBox{display:none}
/* FINE AREA RISERVATA */

/* DICONO DI NOI */
.reviewCard .avatar{
    position: absolute;
    top: -60px;
    height: 80px;
    width: 80px;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    border-radius: 50%;
    overflow: hidden;
}

.reviewCard .userName{min-height: 70px;}
.reviewDate{font-size:10px;padding-top:8px;}
/* FOOTER */
footer h6{
    color: #efefef;
    text-transform: uppercase;
    font-size: 12px;
}
.footer-menu{
    padding:40px 0;
    list-style-type: none;
    text-align: left;
}
.footer-menu li a{
    font-size: 11px;
    text-transform: uppercase;
    padding:6px 0;
    display: block;
    color: #ffffff;
    opacity: .7;
}
.footer-menu li a:hover{
    opacity:1;
}

footer .footer-logo img{max-width: 210px;}
footer .footer-copy{
    font-size: 12px;
    text-align: right;
    color: #ffffff;
    padding-top:20px;
}

.subscription-nl form{
    position: relative;
}

.nl_submit{
    position: absolute;
    bottom:0;
    right:0;
    top:0;
    border-radius:0 !important;
    height: 100%;
    min-width: 50px;
    width: 50px;

}
footer .social-links{
    list-style-type: none;
    padding:0;
    padding-top: 20px;
    text-align: left;
    list-style-type: none;
    display: inline-block;
}
footer .social-links li{
    display: inline-block;
    margin-right:15px;
}
footer .social-links li a{
    color: #ffffff;
}
footer .social-links li a:hover{
    opacity: .8
}
/* FOOTER */

.cn-button:hover{
    color: #ffffff !important;
    opacity:.9;
}

/* OVERLAY */

div#popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100vw;
    height:100vh;
    z-index:1000;
    box-sizing: border-box;
    margin: auto;
    text-align: center;
    background: rgba(255,255,255,.7);
}
div#popup-overlay .popup-content{
    border-radius:6px;
    font-size:80%;
    background: #ffffff;
    box-shadow: 0px 0px 30px rgba(0,0,0,0.2);
    padding:20px;
    width: 94%;
    max-width: 600px;
    position: absolute;
    z-index: 1002;
    top:50%;
    left:50%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
/* Small devices (landscape phones, 576px and up) */
@media screen and (max-width: 576px) {
    .text-center-xs {
        text-align: center;
    }

    .service-list-cover{
        position: relative;
        top: 0;
        left:0;
        transform: none;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        background: #ffffff !important;
        height: auto;
        padding-bottom: 20px;
        text-align: center;
    }
    .service-list-cover img{display: block; margin: auto;}
    #home-booking{padding:0;}
}

/* Medium devices (tablets, 768px and up) */
@media screen and (max-width: 767px) {
    .text-center-md {
        text-align: center;
    }

    a.phonelink{
        position: absolute;
        width: 50%;
        max-width: 180px;
        right: 30px;
        top:0;
        z-index:20;
        margin:auto;
    }
    div.more.v-center-block{
        position: relative !important;
        top:0 !important;
        transform: none !important;
        padding-top:20px;
        padding-left:15px;
    }
    
    #home-hero .item {
        height: 80vh;
    }
    
    #home-hero .item .caption{
        top:50%;
        transform: translate(0,-50%);
        height:auto;
    }
    .owl-dots{transform: translate(-50%,0);}
    
    #PersonalData{margin-top: 40px; clear: both;}
}

/* Large devices (desktops, 992px and up) */
@media screen and (max-width: 991px) {
    #home-hero .item, .visual-hero{max-width: 100%;min-height:100vh;height:auto;overflow: hidden}
}

/* Extra large devices (large desktops, 1200px and up) */
@media screen and (max-width: 1200px) {

}

@media (min-width: 1200px) {
    .hidden-xl-up {
        display: none !important;
    }
}
@media (max-width: 1199px) {
    .hidden-lg-down {
        display: none !important;
    }
}


@media (min-width: 992px) {
    .hidden-lg-up {
        display: none !important;
    }

    .service-list-cover{
        background-size: auto 100%;
    }
}
@media (max-width: 991px) {
    .hidden-md-down {
        display: none !important;
    }
}


@media (min-width: 768px) {
    .hidden-md-up {
        display: none !important;
    }
}


@media (max-width: 767px) {
    .hidden-sm-down {
        display: none !important;
    }

    #mobileMenuContainer{
        padding: 0;
    }
    #header-mobile-menu, #secondary-menu{
        padding:0;
        list-style-type: none;
        margin:20px 0;
    }
    #header-mobile-menu li,
    #secondary-menu li
    {min-height:40px; line-height: 40px}

    #header-mobile-menu li a,
    #secondary-menu li a
    {color: #ffffff;display: block}

    #secondary-menu li .sub-menu,
    #header-mobile-menu li .sub-menu{
        display: none;
        list-style-type: none;
        padding: 0 10px ;
    }
    #secondary-menu li .sub-menu li,
    #header-mobile-menu li .sub-menu li{
        min-height:30px;
        line-height: 16px;
        font-size:85%
    }

    #secondary-menu li .sub-menu li a,
    #header-mobile-menu li .sub-menu li a{
        padding:6px 0;
    }

    #user-access, .lang-list, #mobileMenuContainer .social-links{
        padding:0;
        list-style-type: none;
        display: inline-block !important;
    }
    #user-access li{margin-right:5px; display: inline-block;}
    #user-access li a{padding-right:15px;color: #ffffff}
    #user-access li a:hover,
    #mobileMenuContainer  .social-links li a:hover
    {opacity:.9}

    .lang-list{float: right;}
    .lang-list li{display: inline-block; margin-left:10px;}
    a.phonelink{top: -80px;}
    figure.logo{text-align: center;}
    .more{padding-top:10px;}
    #mobileMenuContainer .social-links li{width:40px; text-align: left; display: inline-block}
    #mobileMenuContainer .social-links li a{display: block; text-align: left; color: #ffffff}


    #home-booking{
        position: relative;
        transform: none !important;
        width: 100%;
    }
    #home-hero .item .caption{
        text-align: center;
        box-sizing: border-box;
        padding:0 15px;
    }
    #home-hero .item .caption .caption-content div {text-align: center;}
    #home-hero .item .caption .caption-content div img{float: none !important; display: inline-block !important}
    #home-hero .item, .visual-hero{    min-height: 80vh;}
    #home-hero .item .caption-title{font-size:50px;text-shadow: 0px 0px 4px rgba(0,0,0,0.3)}
    .owl-dots{top:5%; width:auto;}
    #home-booking form, #home-booking .form-tab, #addressHelper, #timeHelper {max-width: 100%;}

    .page-list-item .page-title{font-size:36px;}
    .page-list-item .page-name{padding-top:15px;}
}


@media (min-width: 576px) {
    .hidden-sm-up {
        display: none !important;
    }
}

@media (max-width: 575px) {
    .hidden-xs-down {
        display: none !important;
    }

    .blog div:first-child{padding-bottom:20px;}

    #home-hero .item .caption-title{
        font-size:36px !important
    }
}

.hidden-xl-down {
    display: none !important;
}

.grecaptcha-badge {
    display: none !important;
}