section{padding: 100px 0;}

header{background-color: #fff;}
header .grid:not(.main-header){margin-top: 0;padding:5px 0;}
header .main-header{padding:8px 15px;}
header .top-bar ul{float: left}
header .top-bar{background-color: var(--light_red);padding: 10px 0;float: left;width: 100%;position: relative;border-bottom: 1px solid var(--medium_light_grey);font-size: 0.83rem;}
header .top-bar .contact{float: left;}
header .top-bar .contacts li{float: left;margin-right: 30px}
header .top-bar .contacts li a{color:#fff}
header .top-bar .contacts li a i{display: inline-block;margin-right: 3px;color:#fff}
header .top-bar .social{float: right;text-align: right}
header .top-bar .social li{display: inline-block;margin-left: 10px;color:#fff;}
header .top-bar .social li:last-of-type{margin-left: 0}
header .top-bar .social li a{width: 25px;height: 25px;display: inline-block;border-radius: 50%;text-align: center;line-height: 25px;color:#fff;}
header .top-bar .social li a:hover{}
header .top-bar .social li a i{color:#fff}
header .logo{float: left;width: 166px;top:0;position: relative;margin: 6px 0 10px;}
header .logo h1{margin: 0;}
header .logo h1 a{display: block;
          height: 69px;
          color:rgba(0,0,0,0);
          background-image: url(../images/logo.png);
          background-size: contain;
          background-position:left center;
          background-repeat: no-repeat;
}
header .top-bar ul.switch-language{position: relative;margin-right: 50px;}
.main-menu{
    float: right;
    width: calc(100% - 200px);
    padding-left: 0px;
    box-sizing: border-box;
    margin: 25px 0 0;
}
.main-menu>ul{
    position: relative;
    text-align: right
}
.main-menu>ul>li:not(.book){
    position: relative;
    margin-right: 30px;
}
/*header ul li.servizi ul,
header ul li.our-services ul,
header ul li.offerte ul,
header ul li.offers ul{
    display: none
}*/
.main-menu>ul a:hover{
    color:var(--red)
}
.main-menu>ul>li.book a{
    padding: 5px 10px;
    text-transform: uppercase;
    background-color:var(--light_red);
    color:#fff;
}
.main-menu>ul>li.book a:hover{
    background-color:var(--red);
    color:#fff;
}
header .main-menu ul li ul{
    position: absolute;
    top:25px;
    left: 0;
    background-color: #fff;
    padding: 0 10px 5px;
    box-sizing: border-box;
    box-shadow: 0 5px 10px rgba(0,0,0,0.2);
    opacity: 0;
    visibility: hidden;
    z-index: 5;
    transition: all 400ms;
}
header .main-menu ul li>ul{
    padding: 10px;
    width: 165px;
}

header .main-menu ul li:hover ul{
    opacity: 1;
    visibility: visible;
}
header .main-menu ul li ul li{
    width: 100%;
    margin-right: 0;
    padding: 5px 0;
    text-align: left
}
header .main-menu ul li>ul>li>a{
    display: block;
    text-transform: none!important;
    font-weight: 400!important;
}
header.fixed{
    position: fixed;
    z-index:20;
    border-bottom: 1px solid var(--border_color);
}
header.fixed .top-bar{
    height: 0;
    padding: 0;
    margin: 0;
    border: none;
    overflow: hidden
}
header.fixed .main-header{
    padding: 5px 15px;
}
header ul.switch-language img{
    width: 20px;
    padding-right: 5px
}
header ul.switch-language span{
    color:#f16222
}
header ul.switch-language ul{
    position: absolute;
    left: -10px;
    top:100%;
    background-color: #fafafa;
    opacity: 0;
    visibility: hidden;
    z-index: 2;
    padding: 5px 10px;
    box-sizing: border-box;
    width: 120px;
}
header ul.switch-language:hover ul{
    opacity: 1;
    visibility: visible;
}
header ul.switch-language a{
    color:#fff;
}
header ul.switch-language li:hover>a{
    color:var(--red)
}
header ul.switch-language li ul li a{
    color:var(--grey);
}

.slider-home{
    margin-top: -5px;
    overflow: hidden;
    padding-bottom: 0;
    position:relative;
}
.slider-home #slider-main{
    max-height: 750px
}
.slider-home #slider-main #slider{
    max-height: 650px
}
.slider-home #slider-main .circle{
    width: 12px;
    height: 12px
}
.slider-home #slider-main #circles{
    margin-top: -30px
}
.slider-home #slider-main button{
    display: none;
}
.slider-home .slider-main .slider{
    height: calc(100vh - 165px);
    background-position: center;
    background-size: cover;
    position: relative
}
.slider-home .slider-main .slider a{
    position: absolute;
    left: 0;
    top:0;
    width: 100%;
    height: 100%;
}

.rooms-home .section-title{
    margin-bottom: 15px;
}
.rooms-home .description-section{
    margin-bottom: 50px
}
.rooms-home article{
    float: left;
    margin-bottom: 80px;
    top: 0;
    position: relative;
}
.rooms-home article .left{
    float: left
}
.rooms-home article .right{
    float: right
}
.rooms-home article .image,
.rooms-home article .content{
    width: 80%;
    margin-left: 10%;
    position: relative
}
.rooms-home article .content ul.list-services{
    border-top: 1px solid var(--medium_light_grey);
    border-bottom: 1px solid var(--medium_light_grey);
    padding: 5px 0;
}
.rooms-home article .content ul.list-services li{
    display: inline-block;
    margin-right: 10px;
}
.rooms-home article .image:before{
    content: '';
    position: relative;
    display: block;
    padding-top: 60%;
}
.rooms-home .read-more{
    margin-top: 30px;
}
.rooms-home article .right .minor-title,
.rooms-home article .right .description{
    padding: 0
}
.rooms-home article .left .minor-title,
.rooms-home article .left .description{
    padding:0
}
.rooms-home article .right .minor-title,
.rooms-home article .left .minor-title{
    margin: 25px 0 15px 0
}
.rooms-home article .right .button-redirect{
    margin-top: 25px;
    margin-left: 35px
}
.rooms-home article .left .button-redirect{
    margin-top: 25px;
    margin-right: 35px
}
.single-package-info h1{
    margin-bottom: 0;
    text-align: left
}
.single-package-info h3,
.single-package-info h5{
    margin: 0;
    text-align: left;
    padding: 0;
    font-size: 1rem;
    color:var(--default_color);
    font-weight: 600;
    
}

.single-package-info h3 p,
.single-package-info h5 p{
    width: 100%;
    margin: 0
}
.single-package-info h5 a{
    color:var(--default_color);
}
.single-package-info h3 i,
.single-package-info h5 i,
.single-package-info h5 i{
    display: inline-block;
    color:var(--default_color);
    padding: 10px 5px;
    font-size: 18px
}
.single-package-info h5:after,
.single-package-info h3:after{
    display: none
}
.single-package-info h5{
    text-transform: none;
}
.single-package-info h3 span,
.single-package-info h5 span{
    display: inline-block;
    margin: 0 10px 0 15px
}
.single-package-info .title-package{
    position: relative
}
.single-package-info .title-package h1{
    max-width: 75%;
    line-height: 32px
}
.single-package-info .description p,
.blog-item .description p{
    font-size: 1rem;
}
.single-package-info .description p strong,
.blog-item .description p strong{
    color:var(--default_color);
}
.single-package-info .description h3,
.blog-item .description h3{
    font-size: 1.38rem;
    font-weight: 600;
    color:var(--red)
}



.single-package-info .share-social{
    display: inline-block;
    position: absolute;
    top:7px;
    right: 0;
    padding-right: 0
}
.single-package-info .share-social li{
    margin: 0 2px
}
.single-package-info .share-social li.title{
    margin-right: 10px
}
.single-package-info .share-social li a{
    font-size: 1.25rem;
    display: inline-block;
    width: 25px;
    height: 25px;
    text-align: center;
    background-color: var(--default_color);
    color: #fff;
    border-radius: 50%;
    line-height: 19px;
    transition:background 400ms;
}
.single-package-info .share-social li a:hover{
    color:#fff;
}
.single-package-info .share-social li a.facebook{
    
}
.single-package-info .share-social li a.facebook:hover{
    background-color: #375ba6;
}
.single-package-info .share-social li a.twitter{
    
}
.single-package-info .share-social li a.twitter:hover{
    background-color: #1894df
}
.single-package-info .share-social li a.google-plus{
    
}
.single-package-info .share-social li a.google-plus:hover{
    background-color: #cd4236
}
.single-package-info .share-social li a.linkedin{
}
.single-package-info .share-social li a.linkedin:hover{
    background-color: #06679a
}
.single-package-info .share-social li a i{
    font-size: 10px;
}
.single-package-info .description{
    padding: 0
}
.single-package-info .departure,
.single-package-info .poster{
    margin:0;
}
.single-package-info .departure{
    margin-top: 15px
}
.single-package-info .departure i,
.single-package-info .poster i{
    color:var(--red);
    display: inline-block;
    margin-right: 5px
}
.single-package-info .poster a{
    color:#9a9999;
    transition: color 400ms;
}
.single-package-info .poster a:hover{
    color:var(--red)
}
.title-package h2{
    font-size: 1.38rem;
    display: none;
}
.title-package h2 small{
    font-size: 12px;
}
.package-details{
    margin-top: 30px;
    background-color: var(--extra_light_grey);
    padding: 15px;
    box-sizing: border-box;
}
.package-details li{
    padding: 10px 0;
    text-transform: uppercase;
    font-weight: 400;
}
.package-details li.title{
    font-size: 20px;
    margin-left: 0;
    border-bottom: none
}
.package-details li .button-plus{
    display: inline-block;
    width: 25px;
    height: 25px;
    background-color: var(--grey);
    color:#f1f1f1;
    text-align: center;
    line-height: 25px;
    margin-right: 10px;
    position: relative;
    top:-1px
}
.package-details li ul{
    padding:0px 40px;
    box-sizing: border-box;
    margin-top: 0;
    display: none
}
.package-details li ul li{
    text-transform: none;
    font-size: 15px;
}
.container-form ul{
    background-color:var(--light_grey);    
}
.container-form ul>li{
    width: 100%;
    font-size: 1.5rem;
    text-transform: uppercase;
    padding: 0 15px;
    box-sizing: border-box;
}
.container-form form{
    background-color:var(--extra_light_grey);
    padding: 0 15px;
    box-sizing: border-box;
}
.container-form form .form-group{
    margin:10px 0;
    float: left;
    width: 100%
}
.container-form form .form-group:first-of-type{
    margin-top: 20px
}
.container-form form .g-recaptcha{
    margin-left: 20px
}
.container-form form input[type=text],
.container-form form input[type=tel],
.container-form form input[type=email],
.container-form form textarea{
    background-color: #fff;
    width: 100%;
    border-radius: 0;
    box-sizing: border-box;
    font-size: 13px;
    height: 40px;
    border:1px solid var(--medium_light_grey);
    color:var(--default_color);
}
.container-form form input[type=text].error,
.container-form form input[type=tel].error,
.container-form form input[type=email].error,
.container-form form textarea.error{
    background-color: var(--red);
    color:#fff
}
.container-form form textarea{
    padding: 10px;
    height: 200px
}
.container-form form input[type=text].half{
    width: calc(50% - 30px)
}
.container-form form input[type=text].half.right{
    float: right;
    margin-left: 0;
    margin-right: 20px
}
.form-group .checkbox-container{
    width: calc(100% - 40px);
    margin-left: 0px;
    float: left;
}
#contactsForm .checkbox-container{
    margin-left: 0px
}
.container-form form label:not(.for-input){
    float: left;
    display: inline-block;
    width: calc(100% - 40px);
    font-size: 0.75rem;
    line-height: 1rem
}
.container-form form label p{
    margin: 0
}
.container-form form span{
    display: inline-block;
    float: left;
    width:15px;
    height: 15px;
    border:1px solid var(--medium_light_grey);
    background-color: #fff;
    position: relative;
    border-radius: 3px;
    margin-right: 10px;
    cursor: pointer
}
.container-form form span.selected{
    background-color: #0dac8b;
    border-color: #0dac8b
}
.container-form form span.error{
    background-color: #f76570;
    border-color: #f76570
}
.container-form form span input{
    opacity: 0;
    position: absolute;
    top:0;cursor: pointer
}
.container-form form input[type=submit]{
    padding: 15px 0;
    width:100%;
    text-transform: uppercase;
    border: none;
    color: #fff;
    margin-bottom: 15px;
    cursor: pointer;
    background-color:var(--light_green);
    transition: background-color 400ms;
    border:2px solid var(--green);
    box-sizing: border-box;
}
.container-form form input[type=submit]:hover{
    background-color:var(--green);
}
.container-form form .form-group{
    width: 100%;
    margin-left: 0;
}
.box-contacts{
    background-color: var(--light_green);
    border:4px solid var(--green);
    padding: 20px;
    box-sizing:border-box;
    margin: 0 0 30px;
}
.box-contacts h5{
    float: left;
    width: 100%;
    color:var(--dark_green);
    font-weight: 400;
    margin: 5px 0;
    font-size: 1rem;
}
.box-contacts p{
    color:var(--dark_green);
    font-weight: 400;
    margin:0 0 5px;
    float: left;
    width: 100% ;
    font-size: 1rem;
}
.box-contacts p a{
    color:var(--dark_green);    
}
.box-contacts p i{
    display: inline-block;
    padding-right: 5px
}
.box-contacts p i.fa-mobile-alt{
    padding-right: 10px
}

.services-room{
    margin: 50px 0 0;
    background-color: var(--extra_light_grey);
    padding: 25px 10px;
}
.services-room h3,
.room-prices h3{
    font-size: 1.25rem;    
    margin: 0 0 15px;
}
.services-room ul{
    column-count: 3;
}
.services-room ul li{
    display: inline-block;
    width: 100%;
    margin-bottom: 10px;
}
.services-room ul li i{
    display: inline-block;
    margin-right: 5px;
}
.services-room ul li i.ti-check{
    color:#0dac8b;
}
.services-room ul li i.ti-close{
    color:#cd4236;
}
.room-prices{
    margin-top: 50px;
}
.room-prices li{
    float: left;
    width: 33.33%;
    box-sizing: border-box;
    padding: 30px 20px;
    color:#fff;
    border-right: 2px solid #fff;
}
.room-prices li:last-of-type{
    border-right: none;
}
.room-prices li p{
    margin: 0;
    text-align: center;
    min-height: 52px;
}
.room-prices li p.season-name{
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.25rem;
}
.room-prices li p.price-description{
    text-transform: uppercase;
    font-weight: 900;
    font-size: 1.5rem;
    margin-top: 15px;
}
.popup-info{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    text-align: center;
    background-color: rgba(255,255,255,0.3);
    opacity: 0;
    visibility: hidden;
    transition: all 400ms;
}
.popup-info.open{
    opacity: 1;
    visibility: visible
}
.popup-info .content{
    position: relative;
    background-color: #fff;
    top:calc(50% - 200px);
    width: 600px;
    height: 400px;
    overflow: hidden;
    display: inline-block;
    padding: 15px;
    box-sizing: border-box;
    box-shadow: 0 5px 10px rgba(0,0,0,0.5);
    text-align: left
}
.popup-info .content p{
    font-size: 0.8rem;
    margin: 0;
}
.popup-info .content p strong,.popup-info .content p b{
    font-weight: 600;
    color:#6e6c6c
}
.popup-info ul li:before{
    content: '- ';
}

.blog.page{
    padding-bottom: 80px
}
.blog article{
    height: 230px;
    margin-top: 25px;
    position: relative;
    top:0;
}
.blog article h2{
    margin: 0
}
.blog article:first-of-type{
    margin-top: 0px;
}
.blog article .image{
    float: left;
    width: 300px;
    height: 100%;
    position: relative
}
.blog article .image a{
    display: block;
    height: 100%;
    top:0;
    left: 0;
    position: absolute;
    width:100%;
}
.blog .details{
    float: left;
    width: 210px;
    height: 100%;
    background-color:var(--light_red);
}
.blog a.more-info{
    display: inline-block;
    padding: 10px 20px;
    border: 2px solid #fff;
    color:#fff;
    font-size: 1.38rem;
    font-weight: 600;
    margin-top: calc(50% - 10px);
    box-sizing: border-box
}
.blog a.more-info:hover{
    background-color: #fff;
    color:var(--light_red)
}
.blog .content{
    float: left;
    width: calc(100% - 510px);
    height: 100%;
    border-bottom: 1px solid var(--extra_light_grey);
    border-top: 1px solid var(--extra_light_grey);
    background-color: var(--extra_light_grey);
    box-sizing: border-box
}
.blog .content h2{
    background-color: var(--extra_light_grey);
    padding: 15px;
}
.blog .description-short{
    padding:15px 15px 25px;
    box-sizing: border-box
}
.blog .description-short p{
    margin: 0
}
.blog .description-short p.date{
    display: inline-block;
    font-style: italic;
    padding: 0px 10px;
    margin-bottom: 15px;
    padding-left: 0;
    font-size: 0.75rem}
.blog .description-short a{
    display: inline-block;
    color:var(--light_red);
    padding-left: 0;
    font-weight: 400;
    margin-top: 15px
}
.blog .description-short a:hover{
    padding-left: 15px
}
.blog .description-short a i{
    font-size: 1.45rem;
    font-weight: 300;
    position: relative;
    top:5px;
    margin-left: 2px
}
.blog.other-blog{
    background-color:#fff;
    padding-bottom: 80px;
}
.blog.other-blog .content{
    border-bottom: 1px solid #fff;
    border-top: 1px solid #fff;
    background-color: #fff
}
.blog.other-blog .content h2{
    background-color: #fff;
    color:var(--light_red);
}

.blog-item{
    padding-bottom: 30px;
}
.blog-item .main-image{
    position: relative
}
.blog-item span.distance{
    display: block;
    margin-top: 10px;
    text-align: right
}
.blog-item span.distance i{
    display: inline-block;
    margin-right: 5px;
}
.blog-item .main-image:before{
    display: block;
    content: '';
    position: relative;
    padding-top: 60%;
}
.blog-item .description{
    margin: 20px 0 0;
    padding: 0;
}
.blog-item .description h3{
    font-size: 1.38rem;
    font-weight: 600;
    color:#12b3ce
}
.blog-item{
    background-color:var(--extra_light_grey);
}
/*-----OFFERTE HOME*/
.promotions{
    background-color: var(--light_red);
}
#pagePromotions .promotions{
    background-color: #fff;    
}
.promotions.others .section-title{
    margin-bottom: 70px;
}
.promotions .section-title,
.promotions .description-section p{
    color:rgba(255,255,255,0.7);
    font-weight: 300;
    position: relative;
}
.promotions .section-title{
    font-weight: 600;
}
.promotions .section-title:after{
    content:'';
    display: block;
    position: absolute;
    bottom:-22px;
    left: calc(50% - 125px);
    width:250px;
    height: 1px;
    background-color: rgba(255,255,255,0.7);
} 
.promotions .grid{
    padding:  0 15px;
    box-sizing: border-box;
    margin-top: 20px;
}
.promotions .col:not(.redirect){
    margin-bottom:30px;
    width: 20%;
    position: relative;
    top: 0;
}
.promotions .col.redirect a{
    color: #fff;
}
.promotions .col.redirect a:hover{
    color: var(--light_green)
}
#pagePromotions .promotions .col .item{
    border: 1px solid var(--medium_light_grey)
}
.promotions .col .image{
    height: 250px;
    position: relative
}
#pagePromotions .promotions .col .image{
    width: calc(100% + 2px);
    margin-left: -1px;
    margin-top: -1px;
}
.promotions .col .image a{
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: transparent;
    transition: background 400ms;
}
.promotions .col .image a:hover{
    background-color: rgba(0,0,0,0.1)
}
.promotions .price{
    display: inline-block;
    padding: 7px 30px;
    background-color: var(--light_green);
    color:#fff;
    right: 0px;
    top:0px;
    position: absolute;
    font-weight: 400;
    border-bottom-left-radius: 5px; 
    font-size: 1.3rem;
    
}
.promotions .price del{
    font-size: 0.7rem;
    display: inline-block;
    margin-right: 7px;
    position: relative;
    top:-3px
}
.promotions .price ins{
    text-decoration: none;
}

.promotions .title{
    background-color:#fff;
    padding: 10px 0 0;
}
.promotions .title h2{
    color:var(--light_red);
    padding:0 5px;
    transition:color 400ms;
    overflow: hidden;
    text-align: center;
    white-space: nowrap;
    text-overflow:ellipsis;
    font-weight: 300;
    font-size: 1.4rem;
    margin: 5px 0
}
.promotions .title h2:hover{
    color:var(--red);
}
.promotions .content{
    padding:0px 20px;
    box-sizing: border-box;
    background-color: #fff;
    text-align: center;
}
.promotions .short-description p{
    color:#aaa9a9;
    margin: 0;
    text-transform: lowercase;
}

.promotions .short-description a{
    display: block;
    background-color: var(--light_red);
    color:rgba(255,255,255,0.7);
    padding: 5px 20px;
    margin: 15px 0 20px;
    box-sizing: border-box;
} 

.promotions .short-description a:hover{
    background-color: var(--red);
    color:rgba(255,255,255,1)
} 


.services-home .services-image-slider{
    position: relative;
    height: 460px;
}
.services-home .services-image-slider .image{
    position: absolute;
    display: block;
    left: 0;
    top:0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: visible
}
.services-home .services-image-slider .image.active{
    opacity: 1;
    visibility: visible;
}
.services-home .services-image-slider .image:before{
    content: '';
    display: block;
    position: relative;
    height: 450px;
}
.services-home .grid{
    margin-top: 60px;
}
.services-home .grid .service-item{
    background-color: #fff;
    padding: 10px;
    margin-bottom: 16px;
    transition: background-color 400ms;
    position: relative;
}
.services-home .grid .service-item:hover,
.services-home .grid .service-item.active{
    background-color: var(--light_red);
}
.services-home .grid .service-item:before{
    content: '';
    position: absolute;
    display: block;
    width: 0; 
    height: 0; 
    left: -10px;
    top:calc(50% - 10px);
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent; 
    border-right:10px solid var(--light_red); 
    opacity: 0;
    visibility: hidden;
    transition: all 400ms;
}
.services-home .grid .service-item:hover:before,
.services-home .grid .service-item.active:before{
    opacity: 1;
    visibility: visible;
}
.services-home .grid .service-item>a{
    display: block;
}
.services-home .grid .service-item:last-child{
    margin-bottom: 0;
}
.services-home .grid .service-item .left{
    float: left;
    width: 50px;
    text-align: center;
    margin-left: 10px;
    display: none;
}
.services-home article{
    position: relative
}
.services-home .grid .service-item .left i{
    font-size: 1.8rem;
    color:var(--light_red);
    line-height: 4.5rem;
}
.services-home .grid .service-item .right{
    float: left;
    width: calc(100% - 40px);
}
.services-home .grid .service-item .right h3{
    font-size: 1.2rem;
    margin: 0;
    text-transform: none;
    font-family: 'Raleway', sans-serif;
    letter-spacing: 1px;
    color:var(--grey);
    transition: color 400ms;
}
.services-home .grid .service-item:hover .right h3,
.services-home .grid .service-item.active .right h3{
    color:#fff;
}
.services-home .grid .service-item .right h3 a{
    color:var(--light_red);
    transition:color 400ms;
}
.services-home .grid .service-item .right h3 a:hover{
    color:var(--red);
}
.services-home .grid .service-item .right .description{
    margin: 5px 0;
    padding: 0;
}
.services-home .grid .service-item .right .description p{
    margin: 0;
    line-height: 1rem;
    font-size: 0.85rem;
    color:var(--grey);
    transition: color 400ms;
        
}
.services-home .grid .service-item:hover .right .description p,
.services-home .grid .service-item.active .right .description p{
    color:#fff;
}

.home .blog.page .section-title{
    margin-bottom: 15px;
}
.home .blog.page .description-section{
    margin-bottom: 30px;
}

.cities-list{
    padding-bottom: 70px;
}
.cities-list .grid .col{
    margin-bottom: 30px;
}
.cities-list .grid .col>div{
    box-sizing: border-box;
    position: relative
}
.cities-list .grid .col>div .image{
    height: 250px;
    position: relative;
    overflow: hidden;
}
.cities-list .grid .col>div .image:hover{
    background-position: left center
}
.cities-list .grid .col>div .image .overlay-box{
    position: absolute;
    top:0;left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background-color: rgba(0,0,0,0);
}
.cities-list .grid .col>div .image:hover .overlay-box{
    background-color: rgba(0,0,0,0.5);
}
.cities-list .grid .col>div .image .overlay-box:before{
    background: linear-gradient(135deg ,rgba(211, 211, 193, .8) 0, rgba(182, 141, 141, .9) 100%);
    opacity: 0.5;
    content: '';
    position: absolute;
    display: block;
    left: 0;
    top:0;
    width: 100%;
    height: 100%;
    transition: opacity 600ms;
    z-index: 2
}
.cities-list .grid .col>div .image:hover .overlay-box:before{
    opacity: 0.7;
}
.cities-list .grid .col>div .image .overlay-box a{
    position: relative;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    display: inline-block;
    z-index: 3;
    background-color: transparent;
}
.cities-list .grid .col>div .image .overlay-box a h2{
    position: absolute;
    margin: 0;
    color: #fff;
    left: 0;
    top:0px;
    font-size: 1.2rem;
    letter-spacing: 2px;
    font-weight: 400;
    width: 100%;
    text-align: center;
    line-height: 450px;
    transition:all 400ms;
        
}
.cities-list .grid .col>div .image:hover .overlay-box a h2{
    line-height: 250px;
}
.cities-list .grid .col>div .image .overlay-box a p{
    position: absolute;
    margin: 0;
    color: #fff
}
.cities-list .grid .col>div .image .overlay-box a p.distance{
    right:15px;
    top:-25px;
    opacity: 0.3;
}
.cities-list .grid .col>div .image .overlay-box a:hover p.distance{
    top:15px;
    opacity: 1;
}
.cities-list .grid .col>div .image .overlay-box a p i{
    display: inline-block;
    margin-right: 5px
}



.services{padding-bottom: 80px;}
.services .section-title{}
.services .description-section{text-align: center}
.services .col:not(.redirect){margin-top: 0px;position: relative;top:0;}
.services.page .col{margin-bottom: 30px}
.services .col .item{background-color: #fff;}
.services .col .image:after{padding-top: 65%;}
.services .col .image:before{content: '';position: absolute;left: 0;top: 0;width: 100%;height: 100%;display: block;background-color: rgba(0,0,0,0);transition:background-color 400ms;}
.services .col .image:hover:before{background-color: rgba(0,0,0,0.2)}
.services .col .content{padding: 0 15px 15px;box-sizing: border-box;border: 1px solid #e9e9e9}
.services .col .content h3{margin: 1rem 0 0.5rem;min-height: 48px;}
.services .col .content h3 a{color:#333;transition: all 400ms;}
.services .col .content h3 a:hover{color:var(--red)}
.services .col .content .description{padding: 0;width: 100%;margin-top:0;min-height: 145px;}

.contacts-home{padding-bottom: 80px}
.contacts-home .section-title{margin-bottom: 15px;}
.contacts-home input[type=email],
.contacts-home input[type=text],
.contacts-home input[type=tel]{border-color: #ececec;height: 35px}
#contactsForm{margin-top: 0px;opacity: 1}
.contacts-home #contactsForm{margin-top: 30px}
#contactsForm .form-group{margin: 15px 0}
#contactsForm input[type=text],
#contactsForm input[type=date],
#contactsForm input[type=tel],
#contactsForm input[type=email],
#contactsForm textarea{width: 100%;background: none;box-sizing: border-box;border-radius: 3px;transition: border-color 400ms;height: 50px;font-size:0.9rem;}
#contactsForm input[type=text]:focus,
#contactsForm input[type=tel]:focus,
#contactsForm input[type=email]:focus,
#contactsForm textarea:focus{box-shadow: 0 0 8px rgba(0, 0, 0, 0.1)}
#contactsForm textarea{height: 290px;padding: 15px;}
#contactsForm input[type=submit]{padding: 15px 50px;color: #fff;text-transform: uppercase;border: none;background-color: var(--light_red);cursor: pointer;line-height: 1;}
#contactsForm input[type=submit]:hover{background-color: var(--red)}

#contactsForm .form-group .checkbox-container,
#infoForm .form-group .checkbox-container{width: calc(100% - 40px);margin-left: 0px;float: left;margin-left: 20px}
#contactsForm .form-group .checkbox-container,
#infoForm .form-group .checkbox-container{margin-left: 0px;position: relative}
#contactsForm .checkbox-container label.for-input,
#infoForm .checkbox-container label.for-input{float: left;display: block;position: relative;cursor: pointer;font-size: 22px;}
#contactsForm .checkbox-container label.for-input .checkmark,
#infoForm .checkbox-container label.for-input .checkmark{position: relative;display: inline-block;top: 0;left: 0;height: 20px;width: 20px;background-color: #eee;}
#contactsForm .checkbox-container label.for-input input,
#infoForm .checkbox-container label.for-input input{position: absolute;opacity: 0}
#contactsForm .checkbox-container label.for-input input:checked ~ span,
#infoForm .checkbox-container label.for-input input:checked ~ span{background-color: #2196F3}
#contactsForm .checkbox-container label.for-input input:invalid ~ span,
#infoForm .checkbox-container label.for-input input:invalid ~ span{background-color: #e00}
#contactsForm .checkbox-container label.for-input .checkmark:after,
#infoForm .checkbox-container label.for-input .checkmark:after {left: 7px;top: 4px;width: 3px;height: 7px;border: solid white;border-width: 0 3px 3px 0; -webkit-transform: rotate(45deg);-ms-transform: rotate(45deg);transform: rotate(45deg);opacity: 0;content: '';position: absolute}
#contactsForm .checkbox-container label.for-input input:checked ~ span:after,
#infoForm .checkbox-container label.for-input input:checked ~ span:after{opacity: 1}
#contactsForm label:not(.for-input),
#infoForm label:not(.for-input){float: left;display: inline-block;width: calc(100% - 40px);font-size: 0.8rem;line-height: 0.6rem}
#infoForm label:not(.for-input){line-height: 0.7rem;}
.home #contactsForm label:not(.for-input),
.contact-us #contactsForm label:not(.for-input){line-height: 1.5rem;padding-left: 15px;box-sizing: border-box}
form label:not(.for-input) p{margin:0}
form label:not(.for-input) a{color:var(--grey)}
form label:not(.for-input) a:hover{color:var(--red)}
#contactsForm span.selected{background-color: #777;}
form span.error{background-color: #f76570;border-color: #f76570}
form span input{opacity: 0;position: absolute;top:0;cursor: pointer}

.map{padding: 0;margin-bottom: -10px;filter:contrast(200%)}
.map iframe{width: 100%;height: 350px}

footer{background: var(--extra_light_grey);padding: 40px 0;margin-bottom: 0;}
footer .col.first{padding-right: 30px}
footer .col.second{padding-left: 50px}
footer li p{margin: 0;font-size: 14px;line-height: 24px}
footer li span.align-right{display: inline-block;width:calc(100% - 25px)}
footer .first .read-more{border: none;font-weight: 600;background: none!important;padding-left: 0;}
footer .first .read-more span{display: inline-block;padding-right: 5px;position: relative;top:1px}
footer .first .read-more:hover{color:var(--red)}
footer .first .read-more:hover span{padding-right: 15px;color:var(--red)}
footer .logo{float: left;margin-top:20px}
footer .logo a{display: inline-block}
footer .logo img{width: 230px;margin-left: -5px}
footer ul:not(.social){float: left;width: 100%;}
footer ul li{
    float: left;
    width: 100%;
    color:var(--dark_grey);
    padding: 5px 0;
    font-size: 0.85rem;
}
footer ul li.title{font-weight: 500;font-size: 20px;text-transform: uppercase;border-bottom: 2px solid #fff;margin-bottom: 10px;padding-bottom: 5px;color:var(--red);width: calc(100% - 150px)}
footer ul li.small-title{font-weight: 600;font-size: 16px;text-transform: uppercase;color:var(--light_red);margin-bottom: 10px;width: calc(100% - 150px)}
footer ul li i{display: inline-block;margin-right: 5px;float: left;position: relative;top:5px}
footer ul li i.fa-envelope{top:7px}
footer .services-footer ul li i{float: none;top:0;left: 3px;transition: left 400ms;}
footer .services-footer ul li a:hover i{left: 7px}
footer ul li a{color:var(--dark_grey);transition: color 400ms;}
footer ul li a:hover{color:var(--red)}
footer ul.social{margin-top: 15px;display: inline-block}
footer ul.social li{width: auto}
footer ul.social li.small-title{width: 100%;border-bottom: none;padding-bottom: 0;margin: 0;color:var(--light_red);}
footer ul.social li a{color:var(--dark_grey);font-size: 1.3rem}
footer ul.social li a:hover{color:var(--light_green);}
footer ul.welcome-travel-space{margin-top: 15px;}
footer ul.welcome-travel-space li img{width: 200px;margin-left: -5px}
footer ul li form{float: left;width: 100%;}
footer ul li form p{float: left;width: 100%;margin:5px 0 15px;font-size: 12px;line-height: 15px}
footer ul li form input[type=email]{float: left;width: 70%;background-color: #525964;height: 45px;color: #fff;border: none;border-radius: 0;box-sizing: border-box}
footer ul li form input[type=submit]{float: left;width: 30%;height: 45px;color: #fff;border: none;box-sizing: border-box;text-transform: uppercase;font-weight: 500;cursor:pointer;}
footer ul li form input[type=submit]:hover{background: #0dac8b;}
footer .checkbox-container{margin-left: 0!important}
footer .checkbox-container span{margin-top: 7px}

section.copyright{
    padding: 0;
    background-color: var(--extra_light_grey);
    border-top:1px solid var(--medium_light_grey);
}
section.copyright p{
    margin: 5px 0;
    padding:10px 15px 5px;
    text-align: center;
    width: calc(100% - 30px);
    margin-left: 15px;
    font-size: 0.8rem;
    letter-spacing: 1px;
    color:var(--dark_grey);
}

.viewer{background-size: cover;background-position: center;background-repeat: no-repeat;padding:20px 0;position: relative;overflow: hidden;;margin-bottom: 0;box-sizing: border-box;overflow: hidden}
.viewer:before{
    content:'';
    background-color: rgba(15, 15, 15, 0.3);
    left: 0;
    top:0;
    position: absolute;
    width: 100%;
    height: 100%;
    opacity:0.65;
}
.viewer .content{display: inline-block;padding: 150px 0px;z-index: 2;position: relative;box-sizing: border-box}
.viewer h3,.viewer h2{color:#fff;font-size: 36px;font-weight: 400;width: 70%;margin-left: 15%;line-height: 40px}
.viewer h3:after{background-color: #fff;}
.viewer .button-redirect{background-color: var(--light_red);border-color: var(--light_red);color:#fff;font-weight: 400;text-transform: uppercase;letter-spacing: 3px;}
.viewer .button-redirect:hover{background-color: var(--red);border-color: var(--red);}

.banner-about{
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
    background-size: cover;
    background-position: center;
    position: relative;
    text-align: left;
}
.banner-about .content{
    padding: 40px 15px;
    width: calc(100% - 150px);
    box-sizing: border-box;
}
.banner-about .section-title{
    color:#fff;
    position: relative;
    z-index: 3;
    position: relative;
    text-transform: none;
    font-weight: 400;
    margin-bottom: 15px;
    margin-top: 0;
    text-align: left;
}

.banner-about:before{
    background: linear-gradient(135deg ,rgba(211, 211, 193, .9) 0, rgba(182, 141, 141, .8) 100%);
    z-index: 1
}
.banner-about .price{
    position: relative;
    float: right;
    width: 100px;
    height: 100px;
    top: 25px;
    margin-top: 0px;
    margin-right: 15px;
    background-color: rgba(249,103,72,0.9);
    border-radius: 5px;
}
.banner-about .price .inner{
    margin: -5px;
    background-color: var(--orange);
    width: 100%;
    height: 100%;
    font-size: 1.2rem;
    padding: 10px 8px;
    box-sizing: border-box;
    color:#fff;
    position: relative;
    z-index: 9;
    text-align: center;
    border-radius: 5px;
}
.banner-about .price .inner ins{
    text-decoration: none;
    position: relative;
    display: block;
}
.banner-about .price .inner small{
    display: block;
}
.banner-about .price .inner del{
    font-size: 0.75rem;
    position: relative;
}
.banner-about .price .inner del:before,
.banner-about .price .inner ins:before{
    content: '€ ';
}

.redirect{text-align: right;margin-top: 30px}
.redirect a{font-weight: 600;font-weight: 600;color:var(--red)}
.redirect a:hover{color: var(--green)}
.redirect a span{position: relative;top:1px}

.company-numbers-work{padding-bottom: 80px;margin-bottom: -8px;background: #fafafa;position: relative;background-attachment: fixed}
.company-numbers-work:before{position: absolute;width: 100%;height: 100%;top:0;left: 0;background-color: rgba(15, 15, 15, 0.8);content:'';}
.company-numbers-work .col{text-align: center}
.company-numbers-work .col p{font-size: 15px;text-transform: uppercase;color:#fff;}
.company-numbers-work .col p.number{font-size: 45px;font-weight: 600;color:#fff}
.company-numbers-work .col p.number:before{font-size: 45px;font-family: "Font Awesome 5 Free";display: inline-block;margin-right: 25px}
.company-numbers-work .col p.number.fas-dolly:before{content:"\f472";}
.company-numbers-work .col p.number.fas-tools:before{content:"\f7d9";}
.company-numbers-work .col p.number.fas-ship:before{content:"\f21a";}
.company-numbers-work .col p i{display: inline-block;font-size: 30px}

section.contact-us h3{color:var(--red);text-transform: uppercase;font-size: 22px}
.company-base-information i{float: left;color:var(--red);font-size: 20px;position: relative;top:3px}
.company-base-information p{float: left;margin: 0 0 0 15px;}
.company-base-information>div{margin-bottom: 15px;padding-left: 0}
.company-base-information>div a{color:#777}
#contactsForm input[type=email],
#contactsForm input[type=date],
#contactsForm input[type=tel],
#contactsForm textarea,
#contactsForm input[type=text]{background-color: var(--extra_light_grey);border: none;border-radius: 0;}
#contactsForm .form-group.half{width: calc(50% - 10px);}
#contactsForm .form-group.half:nth-of-type(2n+2){float: right}
.container-contacts-form>p{margin-top: 30px}
.container-contacts-form .form-group{margin: 10px 0!important}
.container-contacts-form #contactsForm textarea{height: 150px}

.service-image{height: 400px;}
.service-item{padding-bottom: 80px;}
.service-item .title{margin-bottom: 10px;color:#333;font-size: 30px}
.service-item h3{color:var(--red);font-size: 24px;margin: 0 0 25px;font-weight: 700;text-transform: uppercase}
.service-item .service-description h3{color:#333;font-size: 20px;margin: 0 0 25px;font-weight: 400;font-weight: 600;margin:0}
.service-item .service-description h4{color:#333;font-size: 18px;margin: 0 0 25px;font-weight: 400;font-weight: 600;margin:0}
.service-item .service-description p{margin:0;font-size: 1.1rem;line-height: 1.5rem;}
.service-item .service-description p b,
.service-item .service-description p strong{color:#333;}
.blog-item .share-social{margin-top: 30px;float: right}
.service-form{background: #fafafa;padding: 25px;margin-top: 40px!important}
.service-form h4{color:var(--red);margin: 0 0 1rem}
.service-form .form-group{margin: 7px 0!important;}
.service-form input{font-size: 14px!important;}
.service-form textarea{font-size: 14px!important;height: 150px!important}
.service-form input[type=submit]{padding: 7px 20px 6px!important;border-radius: 7px;float: right}
#contactsForm.service-form label:not(.for-input){line-height: 1rem;position: relative;top:-5px}
.service-description ul{padding: 15px 0 15px 15px;list-style: circle}
.other-services-list li{padding: 30px 0;border-bottom:1px solid #e9e9e9}
.other-services-list li:first-child{padding-top: 0px}
.other-services-list li:last-child{padding-bottom: 0;border-bottom: none;}
.other-services-list li a{display: block;}
.other-services-list li .image{float: left;width: 100px;height: 80px;border-radius: 5px;position: relative}
.other-services-list li .image:after{display: block;position: absolute;content:'';background: rgba(255,255,255,0);width: 100%;height: 100%;left: 0;top:0;transition:background 400ms;}
.other-services-list li .image:hover:after{background: rgba(255,255,255,0.3);}
.other-services-list li p{float: right;width: calc(100% - 110px);font-size: 14px;line-height: 22px;margin: 0;color:#777}
.other-services-list li p:hover{color:var(--red)}
.other-products h3{margin: 0 0 30px;line-height: 1;font-weight: 400;color:#333;position: relative}
.other-products h3:before{content:'';width: 100%;height: 1px;background-color: #e9e9e9;top:50%;position: absolute}
.other-products h3 span{background-color: #fff;display: inline-block;padding-right: 5px;box-sizing: border-box;z-index: 2;position: relative}
.other-products h4{margin:0 0 15px;color:#333;float: right;width: calc(100% - 110px);box-sizing: border-box;line-height: 1;font-weight: 300}
.other-products .price{width: calc(100% - 110px);float: right;margin: 0}
.other-products .price del{font-size: 12px;color:#9a9999}
.other-products .price ins{font-size: 14px;font-weight: 600;color:#333;padding-left: 5px;text-decoration: none;}
.other-products li{padding: 25px 0;}
.service-item-gallery{
    padding-bottom: 80px;
    padding-top: 0;
    background-color: var(--extra_light_grey);
}
#offerItem .service-item-gallery{
    padding-top: 80px;
}

.gallery .service-item-gallery{background-color: transparent;margin-top: 0}
.gallery-service{margin-top: 15px;padding-bottom: 0px;}
.gallery-service li{float: left;position: relative;margin-bottom: 30px}
.gallery-service li .item{position: relative;height: 100%;border-radius: 5px;}
.gallery-service li .item:after{content: '';display: block;padding-top: 66.66%;}
.gallery-service li a{display: block;width: 100%;height: 100%;top: 0;left: 0;position: absolute;transition:background 400ms;background-color:rgba(0,0,0,0);}
.gallery-service li a:hover{background-color:rgba(0,0,0,0.5)}

.beer-slider{position: relative;height: 560px;margin-bottom: 80px;}
.beer-slider:last-of-type{margin-bottom: 0;}

.breadcrumbs li{display: inline-block;text-transform: capitalize;color:#fff;}
.breadcrumbs li.separator{margin: 0 5px;position: relative;top:2px;color:#fff;}
.breadcrumbs li a{color:#fff;}
.breadcrumbs li a.selected{}
.breadcrumbs li.current{font-weight: 600;color:#fff;}

.other-services .col{margin-bottom: 50px;}
.other-services .col .left{float: left;width: 40px;text-align: center}
.other-services .col .left img{width: 90%;}
.other-services .col .right{float: left;width: calc(100% - 40px);padding:0 15px;box-sizing: border-box}
.other-services .col .right h2{margin: 0 0 10px;padding: 0;font-size: 22px;color:#3c434c; text-transform: uppercase}
.other-services .col .right p{margin: 0;opacity: 0}
.other-services .col.n-3,.other-services .col.n-4,.other-services .col.n-5{margin-bottom: 0}

.pagination ul{float: left;width: 100%;text-align: right;box-sizing: border-box;padding: 0 15px}
.pagination ul li{display: inline-block;margin: 0 5px}
.pagination ul li:last-of-type{margin-right: 0}
.pagination ul li a{display: inline-block;color:#fff;width: 30px;height: 30px;text-align: center;line-height: 30px;background-color: #3c434c;transition: background 400ms;}
.pagination ul li a:hover{background-color: #f3a46b}
.pagination ul li a.sel{background-color: var(--red)}

.gallery-item{
    position: relative;
    margin-bottom: 30px;
}
.gallery-item .pic-item{
    height: 500px
}
.gallery-item .owl-controls{
    position: absolute;
    width: 100%;
    top:calc(50% - 30px)
}
.gallery-item .owl-nav{
    width: 100%;
    position: relative;
}
.gallery-item .owl-nav .owl-next
,.gallery-item .owl-nav .owl-prev{
    position: absolute;
    background: none;
    color: #fff;
    display: inline-block;
    padding:5px 15px;
    border-radius: 50%;
    transition: all 400ms;
    font-size: 50px
}
.gallery-item .owl-nav .owl-prev{
    left: 15px;
}
.gallery-item .owl-nav .owl-next{
    right: 15px
}

.general-page .description-section{
    padding: 0 15px;
    box-sizing: border-box
}
.general-page .description-section p{
    width: 100%;
    text-align: left
}

.share-social{text-align: right;padding: 0 15px;box-sizing: border-box}
.share-social li{display: inline-block;margin: 0 8px;}
.share-social li:last-of-type{margin-right: 0}
.share-social li a{color:#9a9999;}
.share-social li a:hover{color:#f3a46b}

.owl-controls{text-align: center;bottom:20px;position: absolute;height:15px;display: block;width:100%;}
.owl-controls .owl-dots{display: inline-block;}
.owl-controls .owl-dots .owl-dot{display: block;float:left;width:10px;height:10px;border-radius: 50%;background:#000;transition:background-color 400ms;margin:0 0 0 5px;}
.owl-controls .owl-dots .owl-dot:first-of-type{margin-left: 0}
.owl-controls .owl-dots .owl-dot.active{background-color: #9a9a40}

.ui-autocomplete{border: none!important;overflow: hidden;}
.ui-autocomplete li{padding: 5px 0;border-bottom: 1px solid #a9a9a9;transition: all 400ms;border-left: none;border-right: none;box-sizing: border-box;text-indent: 10px}
.ui-autocomplete li:hover{background-color: var(--red);color:#fff;border-left: none;border-right: none;}
.ui-autocomplete li a{transition: color 400ms;box-sizing: border-box}
.ui-autocomplete li:hover a{color:#fff;font-weight: 300!important}