﻿@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');

body{ font-size:16px; font-family: 'DM Sans', sans-serif !important; color:#000;}

.overlay-menu{ width:100%; height:100%; position:fixed; left:0px; top:0px; z-index:10; background:rgba(0,0,0,0.15); opacity:0; visibility:hidden; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; backdrop-filter: blur(5px);}
body.hovermenu .overlay-menu{ opacity:1; visibility:visible;}

form{ margin:0px;}
::selection{ background:#000; color:#fff; -webkit-background-clip: unset; -webkit-text-fill-color:#fff;}
::-moz-selection{ background:#000; color:#fff; -webkit-background-clip: unset; -webkit-text-fill-color:#fff;}
h1, h2, h3, h4, h5, h6, span.h2{ font-family: 'DM Sans', sans-serif; font-weight:200; margin-top:0px;}
a{ color:#c91c1e; font-weight:300; transition: all .3s ease-in-out;}
a:hover, a:focus{ color:#000;}
p, li{ color:#000; font-size:17px; line-height:1.5; font-weight:300;}
p{ margin-bottom:10px;}
p strong{ font-weight:700;}
strong{ font-weight:700;}
.container-max{}
.container-fluid{ padding:0 60px;}
.container-fluid.container0{ padding:0px;}
.row{ margin:0 -20px;}
.row [class*="col-"]{ padding:0 20px;}
.row.row0{ margin:0px;}
.row.row0 > [class*="col-"]{ padding:0;}
.row.row01{ margin-left:-1px; margin-right:-1px;}
.row.row01 > [class*="col-"]{ padding:0 1px;}
.row.row05{ margin-left:-5px; margin-right:-5px;}
.row.row05 > [class*="col-"]{ padding:0 5px;}
.row.row10{ margin-left:-10px; margin-right:-10px;}
.row.row10 > [class*="col-"]{ padding:0 10px;}
.row.row15{ margin-left:-15px; margin-right:-15px;}
.row.row15 > [class*="col-"]{ padding:0 15px;}
.row.row40{ margin-left:-40px; margin-right:-40px;}
.row.row40 > [class*="col-"]{ padding:0 40px;}
.row.row30{ margin-left:-30px; margin-right:-30px;}
.row.row30 > [class*="col-"]{ padding:0 30px;}
.row.row60{ margin-left:-60px; margin-right:-60px;}
.row.row60 > [class*="col-"]{ padding:0 60px;}
.row.flex{ display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap;}
.row.flex > [class*="col-"]{ display:-webkit-box; display:-ms-flexbox; display:flex; }
.row.flex:before, .row.flex:after{ content:none;}
.row.center{ align-items: center;}
.row.bottom{ align-items: end;}
.row.flex [class*="col-"].pull-right{ order:2;}
.mt0{ margin-top:0px !important;}
.countup{ display:inline; font-size:inherit; font-weight:inherit; margin:0px; white-space:normal; color:inherit;}
.countup > *{ float:left; font-size:inherit; font-weight:inherit;}
.text-right{ text-align:right;}
hr{ max-width:100%; margin:20px auto;}
hr.site{ width:100%; max-width:100%; height:1px; margin:0px; border:0px; background:#e1e1e1;}
input[type=text], input[type=email], input[type=password], input[type=search], input[type=file], input[type=time], input[type=date], input[type=tel], textarea{ font-family:'DM Sans', sans-serif; height:45px; float:left; font-size:17px; font-weight:300; background:#fff; border-radius:5px; -webkit-appearance: none; -moz-appearance: none; appearance: none; border:1px solid #e1e1e1;}
input[type=date], input[type=time]{ width:100%; padding:0 15px;}
input[type=file]{ width:100%; height:auto; padding:12px 20px; font-size:14px;}
select{ width:100%; padding:10px; background:#fff; border:1px solid #e1e1e1; color:#000; -webkit-appearance:none;}
textarea{ -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.form-group > label{ font-size:15px; text-align:left; font-weight:300; color:#000; position:relative; z-index:10;}
.form-group > label span{ color:#c91c1e; font-size:16px; line-height:24px; float:right; margin-left:5px;}
.chosen-container{ border-radius:0px; font-size:15px; background:#fff;}
.chosen-container-single .chosen-single{ height:43px; line-height:43px;}
.chosen-container-single .chosen-single span{ font-size:17px; font-weight:300; margin-right:35px;}
.chosen-container .chosen-drop{ border-radius:0px;}
.chosen-container .chosen-results{ border-radius:0px; padding:10px;}
.chosen-container .chosen-results li{ font-size:17px; line-height:30px; font-weight:300; border-radius:0px; color:#000;}
.chosen-container .chosen-results li:hover{ background:#000; color:#fff; border-radius:0px;}
.chosen-container-single .chosen-single div:after{ line-height:43px; font-size:15px;}
.widget .chosen-single{ font-weight:300; background:#f7f7f7;}
.widget .chosen-drop{ background:#f7f7f7;}
textarea{ height:110px;}
input[type="submit"].btn{ height:50px;}
.form-group{ margin-bottom:15px;}

.btn{ font-family: 'DM Sans', sans-serif; font-size:15px; height:auto; padding:15px 25px; line-height:20px; font-weight:300; text-transform:uppercase; overflow:visible; border-radius:30px;}
.btn.btn-input{ height:50px;}
.btn.btn-default{ background:#333; border:1px solid #333; color:#fff; vertical-align:top;}
.btn.btn-default:hover, .btn.btn-default:focus{ background:#000; border-color:#000; color:#fff;}
.btn.btn-primary{ background:#c91c1e; border:1px solid #c91c1e; vertical-align:top;}
.btn.btn-primary:hover, .btn.btn-primary:focus{ background:#000; border-color:#000; color:#fff;}

.btn.btn-primary:before, .btn.btn-default:before{ content:""; position:absolute; top:0; left:0; width:100%; height:100%; outline:1px solid rgba(0,0,0,0.3); outline-offset:4px; border-radius:30px; box-sizing: border-box; z-index:-1; opacity:0; visibility:hidden;transition: all .5s ease-in-out;}
.btn.btn-primary:hover:before, .btn.btn-default:hover:before{ opacity:1; visibility:visible;}

.btn.btn-book{ background:none; border:0px; color:#333; vertical-align:top; position:relative; padding-left:30px; padding-right:0px; border-radius:0px;}
.btn.btn-book:before{ content:"\f133"; font-family: 'FontAwesome'; position:absolute; top:13px; left:0px; color:#c91c1e; font-size:20px; }
.btn.btn-book:hover, .btn.btn-book:focus{ background:none; color:#c91c1e;}
.btn.btn-book span{ position:relative;}
.btn.btn-book span:before{ content:""; width:0px; height:1px; position:absolute; right:0px; bottom:-10px; background:#c91c1e; -webkit-transition: all .5s ease-in-out; -moz-transition: all .5s ease-in-out; -o-transition: all .5s ease-in-out; transition: all .5s ease-in-out; border-radius:5px;}
.btn.btn-book:hover span:before{ width:100%;}
.btn.btn-book.call:before{ content:"\f095";}

a.readmore{ display:inline-block; font-size:18px; line-height:20px; position:relative; font-weight:300; padding-left:15px; color:#c91c1e; text-transform:none;}
a.readmore span{ position:relative;}
a.readmore span:before{ content:""; width:0px; height:1px; position:absolute; right:0px; bottom:-10px; background:#c91c1e; -webkit-transition: all .5s ease-in-out; -moz-transition: all .5s ease-in-out; -o-transition: all .5s ease-in-out; transition: all .5s ease-in-out; border-radius:5px;}
a.readmore:after{ content:"\f111"; font-family: 'FontAwesome'; position:absolute; top:1px; left:0px; text-align:right; color:#c91c1e; font-size:6px; }
a.readmore:hover span:before{ width:100%;}
a.readmore.white{ color:#fff;}
a.readmore.white span:before{ background:#fff;}
a.readmore.white:after{ color:#fff;}

a.backpage{ display:inline-block; font-size:16px; line-height:20px; position:relative; font-weight:300; padding-left:15px; color:#000; text-transform:none;}
a.backpage span{ position:relative;}
a.backpage span:before{ content:""; width:0px; height:1px; position:absolute; right:0px; bottom:-5px; background:#000; -webkit-transition: all .5s ease-in-out; -moz-transition: all .5s ease-in-out; -o-transition: all .5s ease-in-out; transition: all .5s ease-in-out;}
a.backpage:after{ content:"\f111"; font-family: 'FontAwesome'; position:absolute; top:1px; left:0px; text-align:left; font-size:11px; }
a.backpage:hover span:before{ width:100%;}

.content .form .row{ margin:0 -15px;}
.content .form .row + .row{ margin-top:0px;}
.content .form .row [class*="col-"]{ padding:0 15px;}

.check{ width:100%; float:left;}
.check input[type=checkbox] {display: none;}
.check label{float:left; width:100%; position:relative; font-weight:300; color:#5c5c5c; vertical-align:top;}
.check label:before{ width:24px; height:24px; left:0px; background:#fff; border:1px solid #e1e1e1; content:""; position:absolute; margin-right:10px; cursor:pointer; border-radius:3px;}
.check input[type=checkbox]:checked + label:before { font-family: 'FontAwesome'; content:"\f00c"; text-align:center; line-height:24px; font-size:14px; color:#000;}
.check label span{ display:inline-block; padding-left:34px; font-size:14px; text-align:left; color:#000; line-height:24px; float:left;}
.check label span a{ font-weight:300;}
.check + .check{ margin-top:5px;}

.navbar-toggle{ width:50px; height:50px; background:none; line-height:50px; position:absolute; right:25px; top:25px; background-color:#c91c1e; border-radius:50%; z-index:100;}
.navbar-toggle i{ font-size:16px; color:#fff; line-height:50px;}
.navbar-toggle:hover{ background:#000;}
.navbar-toggle:hover i{ color:#fff;}

.check + input[type="submit"]{ margin-top:20px;}

ul.pagination{text-align:center;}
ul.pagination li{ margin:0 5px; }
ul.pagination li a{ width:40px; height:40px; font-size:18px; line-height:40px; border:0px; border-radius:5px; font-weight:300; background:#f7f7f7;}
ul.pagination li a:hover, ul.pagination li a:focus{ background:#c91c1e; color:#fff;}
ul.pagination li.active a, ul.pagination li.active a:hover,  ul.pagination li.active a:focus{ background:#c91c1e; color:#fff;}
ul.pagination li a.prev{ width:40px; height:40px; border-radius:0px; background:none; background-image:url(../images/icon-prev.png); background-size:32px auto; background-position:center center; background-repeat:no-repeat}
ul.pagination li a.prev:hover{ background-color:#f7f7f7;}
ul.pagination li.disabled a.prev:hover{ background-color:#f7f7f7;}
ul.pagination li.disabled a.next:hover{ background-color:#f7f7f7;}
ul.pagination li a.next{ width:40px; height:40px; border-radius:0px; background:none; background-image:url(../images/icon-next.png); background-size:32px auto; background-position:center center; background-repeat:no-repeat;}
ul.pagination li a.next:hover{ background-color:#e1e1e1;}

/* header */

.header{ width:100% !important; float:left; position:absolute; background:none; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; }
.header .container-fluid{}
.header a.navbar-brand{ min-width:283px; float:left; font-size:0px; letter-spacing:0px; line-height:100px;}
.header a.navbar-brand img{ max-height:38px; margin:0px; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
.header .navbar{ width:100%; display:flex; flex-wrap:nowrap;}
.header .menu-wrap{ width:100%;}
.header .navbar-collapse{ width:100%; float:left; padding-left:30px; margin-right:0px !important; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
.header .navbar-nav.first-menu{ }
.header .navbar-nav.first-menu > li > a{ font-size:17px; color:#000; font-weight:300; padding:40px 0px; margin:0 10px; border:0px; line-height:20px;}
.header .navbar-nav.first-menu > li > a:hover{ color:#c91c1e;}
.header .navbar-nav.first-menu > li.active > a{ border:0px; color:#000;}
.header .navbar-nav.first-menu > li > a span { padding:0px;}
.header .navbar-nav.first-menu > li > a span:before, .header .navbar-nav > li.active > a span:before { content: ""; width: 0px; height:1px; position:absolute; right:0px; bottom:25px; background:#c91c1e; border-radius:3px; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; }
.header .navbar-nav.first-menu > li > a:hover span:before, .header .navbar-nav.first-menu .sfHover > a:hover span:before, .header .navbar-nav.first-menu .sfHover a.sf-with-ul span:before, .header .navbar-nav > li.active > a span:before{ width: 100%; }
.header .navbar-nav.second-menu{ float:right; margin-top:30px;}
.header .navbar-nav.second-menu > li{ margin-left:10px;}
.header .navbar-nav.second-menu > li > a.btn{ font-size:15px; height:auto; padding:15px 25px; line-height:20px; font-weight:300; text-transform:none; text-transform:uppercase;}
.header .navbar-nav.second-menu > li > a.btn.btn-primary{ padding:15px 25px;}
.header .navbar-nav.second-menu > li > a.btn.btn-book{ padding:15px 25px; padding-left:30px;}

.header .social{ width:auto; float:left; display:flex; flex-wrap:nowrap; align-items:center; margin-top:34px; margin-left:20px;}
.header .social ul{margin:0;width:auto; float:left; margin:0px; padding:0px;}
.header .social li{ width:auto;float:left; padding-left:0px; margin:0 3px 0 0;}
.header .social li:last-child{ margin:0px;}
.header .social li:before{ display:none;}
.header .social li a{float:left;position:relative;border-radius:50%; background:#222;}
.header .social li a span.circle{width:32px;height:32px;float:left;color:#fff;text-align:center;}
.header .social li a span.circle i{font-size:16px;line-height:32px;vertical-align:top;}
.header .social li.facebook a{background:#3b5999}
.header .social li.instagram a{background:#E4405F}
.header .topbar .social li a:hover{ background:#2b3583;}

.header .navbar-nav.first-menu > li.sfHover.dropdown > a{ color:#c91c1e !important;}

/* dropdown menu*/

.header .dropdown-menu { min-width: 300px; background: #fff; border-radius: 0px !important; padding: 20px; left: 10px; }
.header .dropdown-menu:before { display: none; content: ""; border-style: solid; border-width: 0 7.5px 7px 7.5px; border-color: transparent transparent #fc0 transparent; position: absolute; left: 10px; top: -7px; }
.header .navbar-nav > li > a:after { display: none; }
.header .dropdown-menu > li { padding: 2px 0; border-bottom: 2px solid #f7f7f7; }
.header .dropdown-menu li:focus > a, .header .dropdown-menu li:hover > a { background: none; }
.header .dropdown-menu > li:first-child { padding-top: 0px; }
.header .dropdown-menu > li:last-child { padding-bottom: 0px; border: 0px; }
.header .dropdown-menu > li > a { font-size: 15px; color: #000; line-height: 24px; padding-left: 0px; border-radius: 0px; text-transform: none; }
.header .dropdown-menu > li:last-child > a { border: 0px; }
.header .dropdown-menu > li > a:hover, .header .dropdown-menu > li > a:focus { background: none; color:#ff6500; font-weight: 300; }

.header .sf-mega.dropdown-menu { width: 100%; min-width: 100%; position: absolute; left:0px; border:0px; background:none; border-radius:0px; padding:0px 60px; margin:0px !important;}
.header .sf-mega.dropdown-menu:before { display: none; }
.header .sf-mega h5, .header .sf-mega h6 { font-size: 18px; color: #000; font-weight: normal; padding: 0px; }
.header .sf-mega, .header .sf-mega.reverse-list { left: 0px !important; right: auto !important; }
.header .sf-mega .container{ width:100%; padding:40px 30px; padding-bottom:20px; background:#fff; box-shadow:0px 0px 40px rgba(0,0,0,0.15); border-radius:20px;}
.header .sf-mega .divtable { margin: 0 -20px; display:contents; }
.header .sf-mega .divcell{ width:20%; padding: 0 20px; float:left; display:block; border:0px; margin-bottom:20px;}
.header .sf-mega .divcell .item-category{ display:flex; flex-wrap:flex; align-items:center; }
.header .sf-mega .divcell .item-category .image{ width:100px; height:100px; position:relative; overflow:hidden; background-color:#f7f7f7; background-size:cover; background-repeat:no-repeat; border-radius:10px; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
.header .sf-mega .divcell .item-category .image a{ width:100%; height:100%; position:absolute;}
.header .sf-mega .divcell .item-category .image a img{ display:none;}
.header .sf-mega .divcell .item-category .image a:before{ content:""; width:100%; height:100%; position:absolute; left:0px; top:0px;}
.header .sf-mega .divcell .item-category .text{ width:calc(100% - 100px); padding-left:20px;}
.header .sf-mega .divcell .item-category .text h3{ font-size:20px; line-height:1.2;}
.header .sf-mega .divcell .item-category .text h3 a{ font-weight:300; color:#333;}
.header .sf-mega .divcell .item-category:hover .image{ border-color:#c91c1e;}
.header .sf-mega .divcell .item-category:hover .text a{ color:#c91c1e;}


.wrapper{ width:100%; float:left; overflow:unset;}
.content{ overflow:hidden; }
.content .row + .row{ margin-top:60px;}

/* visual home page */

.visual{ position:relative;}
.visual .swiper-progress-bar { width:0px; height:7px; position:absolute; left:0px; bottom:0px; background:#c91c1e; z-index:20;}
.visual .swiper-progress-bar.animate{ animation:progressBarAnim 5s linear forwards;}
.visual .background-video{ position:absolute; min-width:100%; min-height:100%; width:auto; height:auto; z-index:0; overflow:hidden; opacity:1;}
.visual .background-video:before{ content:""; width:75%; height:100%; position:absolute; left:0px; top:0px; z-index:2;}
.visual .background-video video{ width:100%; height:100%; object-fit:cover; position:absolute; left:0px; top:0px;}

.visual-content{ width:100%; height:100vh; display:flex; flex-wrap:nowrap; align-items:end; justify-content:center; position:relative; background-size:cover; background-position: center center; z-index:10;}
.visual-content:before{ content:""; width:100%; height:40%; position:absolute; left:0px; top:0px; background:#ffffff; background: linear-gradient(-180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%); z-index:10;}
.visual-content:after{ content:""; width:100%; height:300px; position:absolute; left:0px; bottom:0px; background:#ffffff; background: linear-gradient(0deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); z-index:10;}
.visual-content .container-fluid{ width:100%;}
.visual-content .kenburns-slide{ width:100%; height:100%; position:absolute; left:0px; top:0px; overflow:hidden;}
.visual-content .kenburns-slide img { width: 100%; height: 100%; object-fit: cover; transition: transform 15s ease-in-out; transform-origin: center;}
.visual-content .kenburns-slide.active img { animation: kenburns 15s ease-in-out forwards;}
.visual-content .box{ width:100%; max-width:600px; float:left; text-align:left; position:relative; z-index:100; margin-bottom:100px;}
.visual-content .box > *{ opacity:0;}
.swiper-slide.swiper-slide-active .visual-content .box > *{animation-name: fadeInUp; animation-duration: 1s; animation-timing-function: ease-in-out; animation-fill-mode: forwards;}
.visual-content .box h1{ font-family: "DM Sans", serif; color:#000; font-size:70px; position:relative; z-index:2; margin-bottom:0px;}
.visual-content .box h1 strong{ color:#c91c1e;}
.visual-content .box h2{ font-size:22px; line-height:1.6; color:#000; font-weight:300; position:relative; z-index:2; margin-bottom:20px;}
.visual-content .box h3{ font-size:20px; text-transform:uppercase; font-weight:300; color:#c91c1e; margin:0px; margin-bottom:5px;}
.visual-content .box .actions{ display:flex; align-items:center; justify-content:left; margin:0px; padding:0px; animation-delay:.5s;}
.visual-content .box .actions li{ margin-right:30px;}
.visual-content .box .actions li:last-child{ margin-right:0px;}

.visual .down{ width:48px; height:48px; position:absolute; z-index:2; left:50%; margin-left:-24px; bottom:40px; border-radius:50%; background:#c91c1e; z-index:10;}
.visual .down:before{ content:"\f078"; font-family:FontAwesome; font-size:15px; width:100%; height:100%; position:absolute; left:0px; top:0px; text-align:center; line-height:48px; color:#fff; z-index:999;}
.visual .down:hover{ background-color:#000;}
.visual .down:hover:before{ color:#c91c1e;}

/* titolo pagina */

.title{ padding:120px 0 0 0; position:relative; text-align:center;}
.title .text h1, .title .text h2{ font-family: "DM Sans", serif; color:#000; font-size:70px; line-height:1; font-weight:200; position:relative; z-index:2; margin-bottom:0px;}
.title .breadcrumb{ width:auto; display:inline-block; min-height:18px; position:relative; z-index:2; text-transform:none; margin-top:20px;}
.title .breadcrumb .box{ width:auto; display:inline-block;}
.title .breadcrumb ul{ float:left; margin:0px; padding:0px;}
.title .breadcrumb li{ width:auto; float:left; display:inline-block; position:relative; font-size:14px; line-height:18px; padding:0px;}
.title .breadcrumb a{ color:#000; float:left; line-height:18px; position:relative;}
.title .breadcrumb a:hover{ color:#c91c1e;}
.title .breadcrumb li:after{ float:right; margin:0 10px; content:"|"; margin-top:0; font-size:14px; font-weight:200; color:#e1e1e1;}
.title .breadcrumb li:last-child:after{ display:none;}
.title hr.site{ margin-top:20px;}

/* blocchi generale */

.block{ padding:80px 0;}
.block.small{ padding:60px 0;}
.block.gray{ background:#bfbfbf;}
.block.lightgray{ background: rgb(255,255,255); background: linear-gradient(45deg, rgba(255,255,255,1) 0%, rgba(227,227,227,1) 100%);}
.block.lightblue{ background: rgb(255,255,255); background: linear-gradient(45deg, rgba(255,255,255,1) 0%, rgba(43,53,121,0.15) 100%);}
.block.pt0{ padding-top:0px !important;}
.block.pb0{ padding-bottom:0px;}
.block h1, .block h2{ font-family: "DM Sans", serif; font-size:50px; line-height:1; color:#000; margin-bottom:0px; font-weight:200;}
.block h1 strong, .block h2 strong{ color:#c91c1e; font-weight:inherit;}
.block h1:last-child, .block h2:last-child, .block span.h2:last-child{ margin-bottom:0px;}
.block h3{ font-size:22px; line-height:1.4; color:#000; margin-bottom:15px; text-transform:none; font-weight:200;}
.block h3:last-child{ margin-bottom:0px;}
.block ul, .block ol{ margin:0px; padding:0px; margin-bottom:25px;}
.block ul:last-child, .block ol:last-child{ margin-bottom:0px;}
.block ul li{ position:relative; margin-bottom:0px; padding-left:20px;}
.block ul li:last-child{ margin-bottom:0px;}
.block ul li:before{ content:"\f111"; font-family:FontAwesome;; position:absolute; left:0px; top:8px; font-size:6px; color:#c91c1e;}
.block h3 + a.readmore{ margin-top:30px;}

.block.presentation h2{ margin-bottom:0px;}
.block.presentation h3{ margin-bottom:0px;}
.block.presentation h2 + h3{ margin-top:20px;}
.block.presentation h2 + p, .block.presentation span.h2 + p{ margin-top:15px;}
.block.presentation h3 + p{ margin-top:15px;}
.block.presentation h3 + ul{ margin-top:15px;}
.block.presentation h3 + .btn{ margin-top:30px;}
.block.presentation h3 + h2{ margin-top:30px;}
.block.presentation h3 + h3{ margin-top:10px;}
.block.presentation p{ }
.block.presentation h2 + ul{ margin-top:20px;}
.block.presentation p + h2, .block.presentation p + span.h2{ margin-top:20px;}
.block.presentation p + h3{ margin-top:15px;}
.block.presentation p + .readmore{ margin-top:20px;}
.block.presentation p + .btn{ margin-top:20px;}

.block.presentation .top-title{ text-align:center;}
.block.presentation .top-title h2{ font-size:55px; line-height:1; margin:0px; color:#000; font-weight:200;}
.block.presentation .top-title h2 strong{ color:#c91c1e; font-weight:inherit;}
.block.presentation .top-title h2 + .readmore{ margin-top:5px;}
.block.presentation .top-title h2 + h3{ margin-top:20px;}
.block.presentation .top-title h3{ padding:0 10%;}
/* intro */

.block.intro .text{ text-align:center;}
.block.intro .text h3 + .readmore{ margin-top:40px;}

/* categories */

.block.categories{ }
.block.categories.home{ padding-bottom:20px;}
.block.categories .link a{ width:100%; height:100%; position:absolute; left:0px; top:0px; z-index:3;}
.block.categories .item{ width:100%; height:0px; padding-bottom:66.67%; position:relative; background:#f7f7f7; border-radius:10px; overflow:hidden; margin-bottom:60px; background-size:cover; background-position:center center;}
.block.categories .item:before{ content:""; width:100%; height:75%; position:absolute; left:0px; bottom:0px; background:#FFFFFF; background: linear-gradient(0deg, rgba(245,245,245,1) 0%, rgba(255,255,255,0) 100%); z-index:1;}
.block.categories .item:after{ content:""; width:100%; height:100%; position:absolute; left:0px; top:0px; background: rgb(255,255,255); background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); z-index:1; opacity:0; transition: all .5s linear;}
.block.categories .item .background{ width:100%; height:100%; position:absolute; left:0px; top:0px; background-size:cover; background-position:center center;}
.block.categories .item:hover .background{ animation: kenburns 7s linear forwards;}
.block.categories .item .text{ width:100%; z-index:2;}
.block.categories .item .text h2{ font-size:44px; line-height:40px; margin:0px; color:#000; font-weight:200; margin-bottom:10px;}
.block.categories .item .text p{ max-width:500px; font-size:18px; line-height:1.4; margin:0px; margin-bottom:10px;}
.block.categories .item .text a.readmore{ margin-top:10px;}
.block.categories .item .normal{  width:100%; padding:30px 40px; position:absolute; z-index:2; left:0px; bottom:0px; opacity:1; visibility:visible; transition: all .3s ease-in-out;}
.block.categories .item .hover{ width:100%; max-width:60%; padding:40px; overflow:visible; position:absolute; z-index:2; left:0px; bottom:0px; opacity:0; visibility:hidden; transition: all .3s ease-in-out;}
.block.categories .item .hover h2{ color:#000; font-weight:200;}

.block.categories .item:hover:after{ opacity:0.75;}
.block.categories .item:hover .normal{ opacity:0; visibility:hidden;}
.block.categories .item:hover .hover{ opacity:1; visibility:visible;}

/* numeri dell'azienda */

.block.numbers{ position:relative;}
.block.numbers .item{ width:100%; display:table; position:relative; z-index:100; text-align:center; overflow:hidden;}
.block.numbers .item .wrap{ display:table-cell; vertical-align:top; position:relative; z-index:10;}
.block.numbers .item h2{ margin-top:0px; display:flex; justify-content:center; align-items:center; font-weight:900;}
.block.numbers .item h2 span{ font-weight:200; display:inline-block; color:#c91c1e; line-height:24px;}
.block.numbers .item h2 span.countup-sign{ font-weight:200; font-size:0.75em; margin-left:5px;}
.block.numbers .item h2 span.text{ font-weight:200; line-height:1; font-size:24px; margin-left:0px;}
.block.numbers .item p{ margin-bottom:0px;}
.block.numbers .item.normal h2{ font-size:60px; min-height:60px; line-height:1; margin:0px;}
.block.numbers .item.normal h3{ font-size:28px; line-height:1.1; color:#000; margin:0px; margin-top:15px; font-weight:300;}
.block.numbers .item.normal p{ font-size:20px; line-height:1.3; color:#000; font-weight:300; margin-top:5px;}

/* brands */

.block.brands .top{ margin-bottom:40px;}
.block.brands .swiper-button-prev{ background-image:url(../images/icon-prev.png); left:40px; display:none;}
.block.brands .swiper-button-next{ background-image:url(../images/icon-next.png); right:40px; display:none;}
.block.brands .swiper-button-prev, .block.brands .swiper-button-next{ width:60px; height:60px; position:absolute; top:50%; margin-top:-30px; background-color:#333; background-size:32px auto; background-repeat:no-repeat; z-index:10; cursor:pointer; border-radius:10px; transition: all .3s ease-in-out;}
.block.brands .swiper-button-prev:hover, .block.brands .swiper-button-next:hover{ background-color:#666;}
.block.brands .carousel .item{ filter: grayscale(100%); }

/* carosello in home page */

.block.carousel-brands-home{ padding:0px; position:relative; z-index:10; border-top:1px solid #e1e1e1;}
.block.carousel-brands-home .container-fluid{ padding:0px;}
.block.carousel-brands-home .box-wrap{ padding:20px 0; position:relative; overflow:hidden;}
.block.carousel-brands-home .box-wrap:before{ content:""; width:25%; height:100%; position:absolute; left:0px; top:0px; z-index:10; background:#fff;
background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);}
.block.carousel-brands-home .box-wrap:after{ content:""; width:25%; height:100%; position:absolute; right:0px; top:0px; z-index:10; background:#fff;
background: linear-gradient(-90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);}
.block.carousel-brands-home .box-wrap .box{ width:calc(400%); overflow: hidden; padding:0px; display:flex; flex-wrap:nowrap; white-space: nowrap; position: relative;}
.block.carousel-brands-home .box-wrap .box .item-wrap{ width:100%; display:flex; flex-wrap:nowrap; animation: scroll_left_to_right 35s linear infinite;}
.block.carousel-brands-home .box-wrap .box .item-wrap .item{ width:14.28%; padding:0 20px; filter: grayscale(1);}

/* fullwidth */

.block.fullwidth{ position:relative; padding:0px; border-radius:10px; margin:0 60px;}
.block.fullwidth.gray{ background:#f7f7f7}
.block.fullwidth.lightblue{ background:#dfe1eb;}
.block.fullwidth .slideshow .swiper-container{ width:100%; height:100%;}
.block.fullwidth .slideshow .item{ width:100%; height:100%; position:absolute; left:0px; top:0px; background-size:cover; background-position:center center;}
.block.fullwidth .image{ width:65%; height:100%; position:absolute; top:0px; background-size:cover; background-position:center center; background-repeat:no-repeat;}
.block.fullwidth .image img{ display:none;}
.block.fullwidth.left .image{ top:0px; left:0px;}
.block.fullwidth.right .image{ top:0px; right:0px;}
.block.fullwidth.gradient .image:before{ content:""; width:50%; height:100%; position:absolute;}
.block.fullwidth.gradient.right .image:before{ left:0px; top:0px; background: rgb(255,255,255); background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);}
.block.fullwidth.gradient.left .image:before{ right:0px; top:0px;  background: rgb(255,255,255); background: linear-gradient(-90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);}
.block.fullwidth.gradient.right.gray .image:before{ background: rgb(247,247,247); background: linear-gradient(90deg, rgba(247,247,247,1) 0%, rgba(247,247,247,0) 100%);}
.block.fullwidth.gradient.left.gray .image:before{ background: rgb(247,247,247); background: linear-gradient(-90deg, rgba(247,247,247,1) 0%, rgba(247,247,247,0) 100%);}
.block.fullwidth.gradient.right.lightblue .image:before{ background: rgb(255,255,255); background: linear-gradient(-90deg, rgba(255,255,255,0) 0%, rgba(223,225,235,1) 100%);}
.block.fullwidth.gradient.left.lightblue .image:before{ background: rgb(255,255,255); background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(223,225,235,1) 100%);}
.block.fullwidth .text{ padding:120px 0;}

/* prodotti */

.block.products-section .filters ul{ display:flex; flex-wrap:nowrap; justify-content:center;}
.block.products-section .filters ul li{ font-size:20px; line-height:1; padding:0px; margin:0 10px;}
.block.products-section .filters ul li:before{ display:none;}
.block.products-section .filters ul li a{ color:#000;}
.block.products-section .filters ul li a span { position:relative; padding:0px;}
.block.products-section .filters ul li a span:before{ content: ""; width: 0px; height:1px; position:absolute; right:0px; bottom:-5px; background:#c91c1e; border-radius:3px; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; }
.block.products-section .filters ul li a:hover, .block.products-section .filters ul li.active a{ color:#c91c1e;}
.block.products-section .filters ul li a:hover span:before, .block.products-section .filters ul li.active a span:before{ width: 100%; }


.block.products-section{}
.block.products-section .item{ width:100%; border-radius:10px; overflow:hidden; background:#f7f7f7; margin-bottom:40px;}
.block.products-section .item:hover{ outline:1px solid #e1e1e1; outline-offset:10px;}
.block.products-section .item .image-wrap{ width:100%; float:left; position:relative; overflow:hidden;}
.block.products-section .item .image-wrap .link a{ width:100%; height:100%; position:absolute; left:0px; top:0px; z-index:100;}
.block.products-section .item .image-wrap .image{ width:100%; height:0px; padding-bottom:66.67%; float:left; font-size:0px; z-index:3; background:#fff; margin-bottom:0px; background-size:cover;}
.block.products-section .item .image-wrap .image img{ display:none;}
.block.products-section .item .image-wrap .image-hover{ width:100%; height:100%; position:absolute; left:0px; top:0px; padding:0px; opacity:0; visibility:hidden; transition: all .3s ease-in-out; background-size:cover;}
.block.products-section .item .image-wrap .image-hover img{ display:none;}
.block.products-section .item:hover .image-wrap .image-hover{ opacity:1; visibility:visible; animation:kenburns 5s ease-in-out forwards;}
.block.products-section .item .info{ width:100%; float:left; position:relative;}
.block.products-section .item .info .promo{ position:absolute; left:50%; transform: translateX(-50%); top:-12px; background:#c91c1e; color:#fff; padding:4px 20px; text-transform:uppercase; font-size:14px; line-height:1.1; border-radius:10px; z-index:200;}
.block.products-section .item .info .normal{ width:100%; float:left;}
.block.products-section .item .info .normal .element{ width:100%; float:left; text-align:center; padding:30px 0;}
.block.products-section .item .info .normal .element .brand{ font-size:20px; line-height:1; color:#c91c1e; font-weight:300; text-transform:uppercase; margin-bottom:5px;}
.block.products-section .item .info .normal .element .name{ font-size:30px; line-height:1.2; color:#000; font-weight:600; padding:0 10%;}
.block.products-section .item .info .normal .element .bottom{ display:flex; flex-wrap:nowrap; justify-content:center; margin-top:10px;}
.block.products-section .item .info .normal .element .bottom .price del{ font-size:18px; color:#999; font-weight:300; margin-right:10px; position:relative; padding:0 5px; text-decoration:none;}
.block.products-section .item .info .normal .element .bottom .price del:before{ content:""; width:100%; height:1px; position:absolute; left:0px; top:50%; margin-top:-0.5px; background:#999;}
.block.products-section .item .info .normal .element .bottom .price ins{ font-size:22px; color:#000; font-weight:300;}
.block.products-section .item .info .normal .element .bottom .variations{ margin-left:auto; font-size:14px;}

.block.products-section .item:hover{ z-index:10;}
.block.products-section .item:hover .info .hover{ display:block;}
.block.products-section .item:hover{ z-index:100;}

.block.products-section.grid.home{ padding-bottom:40px;}

/* subpage */

.block.subpages-list{ position:relative;}
.block.subpages-list .item{ display:flex; flex-wrap:wrap; background:#fff; margin-bottom:60px;}
.block.subpages-list .item .image{ width:60%; display: flex; align-items:start; justify-content: center;}
.block.subpages-list .item .image img{ border-radius:10px;}
.block.subpages-list .item .text{ width:40%; display: flex; flex-direction: column; justify-content: center; text-align:left; padding-left:80px; }
.block.subpages-list .item .text .info{ font-size:20px; line-height:1; color:#c91c1e; font-weight:300; text-transform:uppercase; margin-bottom:20px;}
.block.subpages-list .item .text h2{ font-size:44px; line-height:1; margin:0px;}
.block.subpages-list .item .text .readmore{ margin-top:20px;}

.block.subpages-list.page{ padding-bottom:20px;}

.block.subpages-list .item:nth-child(even) .image{ order:2;}
.block.subpages-list .item:nth-child(even) .text{ padding:0px; padding-right:80px;}

/* prodotto */

.block.product-page .main-image{ border-radius:10px; overflow:hidden;}
.block.product-page .gallery-images{ width:100%; float:left; margin-top:20px;}
.block.product-page .gallery-images ul{ margin:0 -10px;}
.block.product-page .gallery-images li{ width:25%; float:left; padding:0 10px; margin-bottom:20px;}
.block.product-page .gallery-images li:before{ display:none;}
.block.product-page .gallery-images li a{ width:100%; float:left; border-radius:10px; overflow:hidden;}
.block.product-page .text{ width:100%; float:left;}
.block.product-page .text .brand{ font-size:20px; line-height:1; color:#c91c1e; font-weight:300; text-transform:uppercase; margin-bottom:5px;}
.block.product-page .text .bottom{ display:flex; flex-wrap:nowrap; justify-content:left; margin-top:20px;}
.block.product-page .text .bottom .price del{ font-size:18px; color:#999; font-weight:300; margin-right:10px; position:relative; padding:0 5px; text-decoration:none;}
.block.product-page .text .bottom .price del:before{ content:""; width:100%; height:1px; position:absolute; left:0px; top:50%; margin-top:-0.5px; background:#999;}
.block.product-page .text .bottom .price ins{ font-size:22px; color:#000; font-weight:300;}
.block.product-page .gallery{ position:relative;}
.block.product-page .gallery .item-wrap{ display:flex; flex-wrap:wrap; margin:0 -10px; margin-top:40px;}
.block.product-page .gallery .item{ width:33.33%; float:left; padding:0 10px; margin-bottom:20px;}
.block.product-page .gallery .item .image a{ float:left;}
.block.product-page .gallery .item .image a img{ border-radius:10px; border:1px solid #e1e1e1; overflow:hidden;}
.block.product-page .features-wrap{ margin-top:40px;}
.block.product-page .features-wrap .feature-item{ margin-bottom:30px; padding-bottom:30px; border-bottom:1px solid #e1e1e1;}
.block.product-page .features-wrap .feature-item:last-child{ padding-bottom:0px; margin-bottom:0px; border:0px;}
.block.product-page .features-wrap .feature-item .text.text01{ display:flex; flex-wrap:nowrap; align-items:start;}
.block.product-page .features-wrap .feature-item .text.text01 .image{ max-width:150px; float:left; border-radius:10px; overflow:hidden;}
.block.product-page .features-wrap .feature-item .text.text01 .image + .name{ padding-left:30px;}
.block.product-page .features-wrap .feature-item .text.text01 .name h2{ font-size:26px; line-height:1.2;}
.block.product-page .features-wrap .feature-item .text.text01 .name h3{ font-size:18px; margin:0px; line-height:1.2;}
.block.product-page .features-wrap .feature-item .text.text01 .name h2 + h3{ margin-top:5px;}
.block.product-page .fullwidth{ position:relative;}
.block.product-page .fullwidth .item-wrap{ display:flex; flex-wrap:wrap; margin:0 -10px;}
.block.product-page .fullwidth .item-wrap .item{ width:100%; float:left; padding:0 10px; margin-bottom:20px;}
.block.product-page .fullwidth .item-wrap .item:last-child{ margin-bottom:0px;}

/* team */

.block.team{ padding-bottom:40px;}
.block.team + .block.team{ padding-top:0px;}
.block.team .columns-wrap{ width:100%; display:flex; flex-wrap:wrap; justify-content:center; margin:0 -20px;}
.block.team .columns-wrap .column{ width:auto; max-width:400px; padding:0 20px;}
.block.team .columns-wrap .column .item{ text-align:center; margin-bottom:40px;}
.block.team .columns-wrap .column .item .image{ border-radius:10px; overflow:hidden; margin-bottom:20px;}
.block.team .columns-wrap .column .item .text h2{ font-size:30px; font-weight:300; margin:0px;}
.block.team .columns-wrap .column .item .text h3{ font-size:17px; line-height:1; color:#c91c1e; font-weight:300; text-transform:none; margin:0px; margin-top:5px;}

.block.team .columns-wrap.column-small{}
.block.team .columns-wrap.column-small .column{ max-width:300px;}
.block.team .columns-wrap.column-small .column .item .text h2{ font-size:24px;}
.block.team .columns-wrap.column-small .column .item .text h3{ font-size:16px;}

/* cta book */

.block.cta-book .top-title .actions{ display:flex; align-items:center; justify-content:center; margin:0px; padding:0px; margin-top:20px;}
.block.cta-book .top-title .actions li{ list-style:none; padding:0px; margin:0 20px;}
.block.cta-book .top-title .actions li:before{ display:none;}
.block.cta-book .top-title .actions li:first-child{ margin-left:0px;}
.block.cta-book .top-title .actions li:last-child{ margin-right:0px;}
.block.cta-book .top-title .actions li.or{ color:#666;}

/* intro book */

.block.intro-book .text .btn{ font-size:32px; height:auto; padding:15px 25px; line-height:20px; font-weight:200; text-transform:none; text-transform:uppercase;}
.block.intro-book .text .btn.btn-book{ padding:15px 25px; padding-left:40px;}
.block.intro-book .text .btn.btn-book:before{ font-size:28px; top:16px;}

/* contatti */

.block.contacts-info{ position:relative; padding-bottom:40px;}
.block.contacts-info .item{ width:100%; text-align:center; margin-bottom:40px;}
.block.contacts-info .item h2{ font-size:26px; line-height:1.2; font-weight:300; margin:0px;}
.block.contacts-info .item h2 + p{ margin-top:5px;}
.block.contacts-info .item strong{ font-weight:600;}
.block.contacts-info .item a:not(.btn){ color:#cf2626; font-weight:300;}
.block.contacts-info .item a:not(.btn):hover{ color:#000;}
.block.contacts-info .item .social{width:auto; margin:0px; display:inline-block; position:relative; margin-top:5px; margin-bottom:10px; z-index:2;}
.block.contacts-info .item .social ul{margin:0;width:auto; float:left;} 
.block.contacts-info .item .social li{ width:auto;float:left; padding-left:0px; margin:0 5px 0 0;}
.block.contacts-info .item .social li:last-child{ margin-right:0px;}
.block.contacts-info .item .social li:before{ display:none;}
.block.contacts-info .item .social li a{width:40px;height:40px; background:#333; float:left; color:#fff; text-align:center; border-radius:50%;}
.block.contacts-info .item .social li a i{font-size:16px;line-height:40px;vertical-align:top;}
.block.contacts-info .item .social li.facebook a{background:#3b5999}
.block.contacts-info .item .social li.youtube a{background:#cd201f}
.block.contacts-info .item .social li.linkedin a{background:#0077B5}
.block.contacts-info .item .social li.instagram a{background:#e4405f}
.block.contacts-info .item .social li a:hover{ background:#000 !important;}
.block.contacts-info .item .btn{ font-size:14px; padding:5px 20px; font-size:13px; margin:0px;}

/* about */

.block.about01 .image-wrap{ border-radius:10px; position:relative; overflow:hidden;}
.block.about01 .image-wrap .image{ width:100%; float:left; position:relative;}
.block.about01 .image-wrap .image:before{ content:""; width:100%; height:75%; position:absolute; left:0px; bottom:0px; background:#FFFFFF; background: linear-gradient(0deg, rgba(245,245,245,1) 0%, rgba(255,255,255,0) 100%); z-index:1;}
.block.about01 .image-wrap .text{ width:100%; padding:30px 0; position:absolute; font-size:22px; line-height:1; font-weight:300; text-align:center; left:0px; bottom:0px; z-index:20;}
.block.about01 .image{ border-radius:10px; position:relative; overflow:hidden;}
.block.about02 .image{ border-radius:10px; position:relative; overflow:hidden;}
.block.about03 .about-carousel{ margin:0px;}
.block.about03 .about-carousel + .about-carousel{ margin-top:30px;}
.block.about03 .about-carousel .image{ width:100%; float:left; border-radius:10px; overflow:hidden;}

/* form contatti */

.block.contacts{ }
.block.contacts .box{ background:#f7f7f7; padding:60px 0; border-radius:10px;}
.block.contacts .text{ max-width:800px; margin:0 auto; text-align:center;}
.block.contacts .module .form{ margin-top:40px;}
.block.contacts .module .form .form-group{ position:relative;}
.block.contacts .module .form .form-group > label{ width:auto; float:left; z-index:2;}
.block.contacts .module .form .form-group input[type=text],
.block.contacts .module .form .form-group input[type=email],
.block.contacts .module .form .form-group input[type=password],
.block.contacts .module .form .form-group input[type=search],
.block.contacts .module .form .form-group input[type=file],
.block.contacts .module .form .form-group input[type=tel],
.block.contacts .module .form .form-group textarea{ background:#fff;}
.block.contacts .module .form .check{ text-align:center;}
.block.contacts .module .form .check > span{ display:inline-block;}
.block.contacts .module .form .check input[type=checkbox] + label:before{ background:#fff;}
.block.contacts .module .form input.btn{ display:inline-block;}

/* mappa */

.block.map .top-title{ margin-bottom:60px;}
.block.map .iframe-wrap{ padding:0 60px;}
.block.map .iframe{ width:100%; height:500px; border-radius:10px;}
.block.map .iframe .map-content{ padding:15px; text-align:center;}
.block.map .iframe .map-content h2{ font-family: 'DM Sans', serif; font-size:18px; line-height:18px; color:#c91c1e; font-weight:400; text-transform:none; margin-bottom:5px;}
.block.map .iframe .map-content p{ font-family: 'DM Sans', serif; font-size:16px; line-height:24px; color:#000; margin:0px; margin-bottom:0px;}

/* footer */

.footer{ width:100%; background:#e1e1e1; position:relative; display:inline-block; width:100%; float:left; overflow:hidden; background:#fff; background: #F7F7F7;
background: linear-gradient(90deg, rgba(247, 247, 247, 1) 0%, rgba(255, 255, 255, 1) 100%); border-top:1px solid #e1e1e1;}
.footer .footer-row{ text-align:center; position:relative; z-index:20; padding-top:80px; padding-bottom:20px; overflow:hidden;}
.footer .footer-row .row{ display:flex; flex-wrap:nowrap; justify-content:center; margin:0 -30px;}
.footer .footer-row .row .colfooter{ width:33.33%; padding:0 30px;}
.footer .footer-row .row .colfooter:last-child{ border:0px;}
.footer .footer-row .row.rowfooter01{ max-width:1200px; margin:0 auto;}
.footer .footer-row .widget{ width:100%; min-width:100px; float:left; text-align:center; padding:0 20px; margin-bottom:0px;}
.footer .footer-row .widget h4{ font-size:22px; line-height:1.1; color:#333; font-weight:300; text-transform:none; margin-bottom:5px;}
.footer .footer-row .widget p + h4{ margin-top:20px;}
.footer .footer-row .widget p, .footer .footer-row .widget li{ font-weight:300; font-size:16px; line-height:1.4; margin-bottom:15px; color:#000;}
.footer .footer-row .widget p:last-child{ margin-bottom:0px;}
.footer .footer-row .widget p a{ color:#c91c1e; font-weight:300;}
.footer .footer-row .widget p a:hover{ color:#333;}
.footer .footer-row .widget.widget-company{background:none; text-align:center;}
.footer .footer-row .widget.widget-company img{ width:auto; height:40px; display:inline-block; margin-bottom:10px;}
.footer .footer-row .widget.widget-company h4{ color:#c91c1e;}
.footer .footer-row .widget.widget-services ul{ margin:0px; margin-top:10px; margin-bottom:0px;}
.footer .footer-row .widget.widget-services li{ padding-left:0px; font-size:18px; line-height:1.6; margin:0px;}
.footer .footer-row .widget.widget-services li:before{ display:none; content:"\f105"; font-family:FontAwesome; position:absolute; left:0px; font-size:14px; color:#000000;}
.footer .footer-row .widget.widget-services li a{ color:#000; font-weight:300;}
.footer .footer-row .widget.widget-services li a:hover{ color:#c91c1e;}
.footer .footer-row .book{ margin-top:20px;}
.footer .footer-row .book .btn{ font-size:14px; padding:5px 20px; font-size:13px;}
.footer .footer-row .social{ width:100%; float:left; margin-top:20px;}
.footer .footer-row .social ul{margin:0;width:auto; display:flex; flex-wrap:nowrap; justify-content:center;}
.footer .footer-row .social li{ width:auto;float:left; padding-left:0px; margin:0 2.5px;}
.footer .footer-row .social li:before{ display:none;}
.footer .footer-row .social li a{float:left;position:relative;border-radius:50%; background:#000;}
.footer .footer-row .social li a span.circle{width:40px;height:40px;float:left;color:#fff;text-align:center;}
.footer .footer-row .social li a span.circle i{font-size:18px;line-height:40px;vertical-align:top;}
.footer .footer-row .social li.facebook a{background:#3b5999}
.footer .footer-row .social li.instagram a{background:#E4405F}
.footer .footer-row .social li.tiktok a{background:#000}
.footer .footer-row .social li a:hover{ background:#c91c1e;}

.footer .footer-extra{ padding:0px; padding-top:20px; padding-bottom:40px; text-align:center; background:none; position:relative; z-index:20;}
.footer .footer-extra .row{ padding:0px;}
.footer .footer-extra .row p{ font-size:13px; line-height:20px; color:#000; font-weight:300;}
.footer .footer-extra .row p span{ margin:0 3px;}
.footer .footer-extra .row a{ color:#000; font-weight:300;}
.footer .footer-extra .row a:hover{ color:#f1582a;}


/* modal */

body.modal-open .header{ filter: blur(4px);}
body.modal-open .wrapper{ filter: blur(4px);}
body.modal-open .footer{ filter: blur(4px);}

.modal{ z-index:999999; border-radius:0px; display:none !important;}
.modal.in { display:flex !important; align-items:center; flex-direction: column; justify-content:center;}
.modal-open .modal{ overflow:auto;}
.modal-backdrop{ z-index:99999; background:#f7f7f7;}
.modal-backdrop.in{ opacity:0.75;}
.modal .modal-dialog{ width:100%; max-width:1000px; margin:0px; overflow:auto !important; box-shadow:0px 0px 100px rgba(0,0,0,0.2);}
.modal.in .modal-dialog{ top:auto; transform:none;}
.modal-body{ padding:30px;}
.modal .modal-content{ border-radius:0px; border:0px;}
.modal .close{ width:40px; height:40px; position:absolute; background-color:#fff; background-image:url(../images/icon-close.png); background-size:30px 30px; background-repeat:no-repeat; background-position:center center; top:0px; right:0px; opacity:1; z-index:9999;}
.modal .modal-body{ border-radius:0px; padding:0px;}
.modal .modal-body .image{ width:100%; background-size:cover; background-position:center center;}
.modal .modal-body .image img{ display:none;}
.modal .modal-body .text{ padding:60px 40px;}
.modal .modal-body .text h3{ font-size:22px; line-height:28px; color:#000; font-weight:300; margin-bottom:10px;}
.modal .modal-body .text h2{ font-size:34px; line-height:34px; color:#000; margin-bottom:10px;}
.modal .modal-body .text h3 + h2{ margin-top:0px;}
.modal .modal-body .text p + .btn{ margin-top:20px;}
.modal .modal-body .text .btn{ width:100%; padding:15px 20px; font-size:20px;}

#scrolltop{ width:48px; height:48px; position:fixed; z-index:999; right:20px; bottom:20px; opacity:0; visibility:hidden; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
#scrolltop.show{ opacity:1; visibility:visible;}
#scrolltop a{ width:48px; height:48px; float:left; background:#c91c1e; border-radius:50%; text-align:center;}
#scrolltop a:before{ content:"\f106"; width:50px; height:50px; font-family:FontAwesome; font-size:16px; color:#fff; line-height:50px;}
#scrolltop a:hover{ background:#000;}

.carousel-prev a, .carousel-next a{ width:60px; height:60px; position:absolute; top:50%; margin-top:-30px; background-size:100% auto; z-index:10; cursor:pointer;}
.carousel-prev a{ background-image:url(../images/icon-prev.png); left:-60px;}
.carousel-next a{ background-image:url(../images/icon-next.png); right:-60px;}

.whatsappfixed{ width:48px; height:48px; position:fixed; right:15px; bottom:15px; background:#25D366; border-radius:50%; font-size:24px; line-height:48px; text-align:center; color:#fff; box-shadow:2px 2px 5px rgba(0,0,0,0.2); z-index:200;}
.whatsappfixed:hover{ background:#000; color:#fff;}
.whatsappfixed i{ color:#fff;}

.captchaField{ text-align:center;}
.captchaField > div { display:inline-block; margin-bottom:15px;}


@media (min-width: 1500px) {
	
	.container{ width:1300px;}
	
}


@media (max-width: 1499px) {
	
	.btn{ padding:12px 25px;}
	
	.header .navbar-nav.first-menu > li > a{ margin:0 7px;}
	.header .navbar-nav.second-menu > li > a.btn.btn-primary{ padding:12px 25px;}
	.header .social{ margin-left:15px;}
	.header .navbar-nav.second-menu > li > a.btn.btn-book{ padding-right:20px;}
	.header .navbar-nav.second-menu > li{ margin-left:0px;}
	.header .navbar-nav.second-menu{ margin-top:28px;}
	
	.container-fluid{ padding:0 40px;}
	
	.block.map .iframe-wrap{ padding:0 40px;}
	.block.fullwidth{ margin:0 40px;}
	
	.row.row40{ margin-left:-20px; margin-right:-20px;}
	.row.row40 > [class*="col-"]{ padding:0 20px;}
	.row.row30{ margin-left:-20px; margin-right:-20px;}
	.row.row30 > [class*="col-"]{ padding:0 20px;}
	
	.container{ width:1170px;}
	
	.header a.navbar-brand{ min-width:253px;}
	.header a.navbar-brand img{ max-height:34px;}
	
	.block.categories.home{ padding-bottom:40px;}
	.block.categories .item{ margin-bottom:40px;}
	
	.block.carousel-brands-home .box-wrap .box{ width:calc(450%);}
	.block.carousel-brands-home .box-wrap .box .item-wrap .item{ padding:0 10px;}
	
	.block.team .columns-wrap .column{ max-width:350px;}
	
	.block.presentation h2 + h3{ margin-top:15px;}
	.block.presentation .top-title h2 + h3{ margin-top:15px;}
	.block.presentation .top-title h3{ padding:0 5%;}
	
	.visual-content .box{ margin-bottom:80px;}
	
	.title .breadcrumb{ margin-top:15px;}
	
	.block.subpages-list.page{ padding-bottom:40px;}
	.block.subpages-list .item{ margin-bottom:40px;}
	
	.footer .footer-row .widget.widget-company img{ height:34px;}
	
	.block.carousel-brands-home .box-wrap .box .item-wrap{ animation-duration:30s;}
	
	.block.subpages-list .item .text{ padding-left:60px;}
	.block.subpages-list .item:nth-child(even) .text{ padding-right:60px;}
	
	.visual-content .box h1{ font-size:60px;}
	.title .text h1, .title .text h2{ font-size:60px;}
	.block.presentation .top-title h2{ font-size:50px;}
	.block.numbers .item.normal h2{ font-size:50px; line-height:50px;}
	.block h1, .block h2{ font-size:48px;}
	.block.categories .item .text h2{ font-size:40px;}
	.block.categories .item .hover h2{ font-size:40px;}
	.block.intro-book .text .btn{ font-size:30px;}
	.block.team .columns-wrap .column .item .text h2{ font-size:28px;}
	.block.products-section .item .info .normal .element .name{ font-size:28px;}
	.block.contacts-info .item h2{ font-size:24px;}
	.block.product-page .features-wrap .feature-item .text.text01 .name h2{ font-size:24px;}
	.block h3{ font-size:20px;}
	.footer .footer-row .widget h4{ font-size:20px;}
	.visual-content .box h2{ font-size:20px;}
	.block.products-section .item .info .normal .element .brand{ font-size:18px;}
	.block.subpages-list .item .text .info{ font-size:18px;}
	.visual-content .box h3{ font-size:18px;}
	.block.product-page .text .brand{ font-size:18px;}
	.footer .footer-row .widget.widget-services li{ font-size:16px; line-height:1.5;}
	.block.product-page .features-wrap .feature-item .text.text01 .name h3{ font-size:16px;}
	.block.team .columns-wrap .column .item .text h3{ font-size:15px;}
	
}

@media (max-width: 1199px){
	
	p, li{ font-size:16px;}
	
	.container-fluid{ padding:0 30px;}
	.container{ width:970px;}
	
	.block.map .iframe-wrap{ padding:0 30px;}
	.block.fullwidth{ margin:0 30px;}
	
	.content .form .row{ margin:0 -10px;}
	.content .form .row [class*="col-"]{ padding:0 10px;}
	
	.header a.navbar-brand{ min-width:224px;}
	.header a.navbar-brand img{ max-height:30px;}
	.header .navbar-nav.first-menu > li > a{ font-size:16px; margin:0 5px;}
	.header .navbar-nav.second-menu > li > a.btn{ font-size:14px;}
	.header .navbar-nav.first-menu > li > a span:before, .header .navbar-nav > li.active > a span:before{ bottom:35px;}
	
	.header .sf-mega .container{ padding:30px;}
	.header .sf-mega .divcell{ width:33.33%;}
	.header .sf-mega .divcell .item-category .text h3{ font-size:18px;}
	
	.title .breadcrumb{ margin-top:10px;}
	.block.intro .text h3 + .readmore{ margin-top:20px;}
	
	.btn{ font-size:14px;}
	a.readmore{ font-size:16px;}
	
	.block{ padding:60px 0;}
	.block.fullwidth{ overflow:hidden;}
	.block.fullwidth .text{ padding:100px 0;}
	
	.block.categories.home{ padding-bottom:20px;}
	.block.products-section.grid.home{ padding-bottom:20px;}
	.block.subpages-list.page{ padding-bottom:20px;}
	.block.contacts-info{ padding-bottom:20px;}
	
	.block.subpages-list .item .text{ padding-left:40px;}
	.block.subpages-list .item:nth-child(even) .text{ padding-right:40px;}
	
	.block.categories .item .normal{ padding:30px;}
	.block.categories .item .text h2{ margin:0px;}
	.block.categories .item .hover{ padding:30px;}
	
	.block.map .top-title{ margin-bottom:40px;}
	
	.header .social{ margin-top:38px;}
	.header .social li a span.circle{ width:24px; height:24px;}
	.header .social li a span.circle i{ font-size:12px; line-height:24px;}
	
	.visual-content .box{ margin-bottom:60px;}
	
	.block.presentation .top-title h3{ padding:0px;}
	
	.block.subpages-list .item .text .info{ margin-bottom:15px;}
	
	.footer .footer-row{ padding-top:60px;}
	.footer .footer-row .widget{ padding:0px;}
	.footer .footer-row .social{ margin-top:10px;}
	.footer .footer-row .widget p, .footer .footer-row .widget li{ font-size:15px;}
	.footer .footer-row .widget.widget-services li{ font-size:15px;}
	.footer .footer-extra .row p{ font-size:11px;}
	.footer .footer-row .social li a span.circle{ width:32px; height:32px;}
	.footer .footer-row .social li a span.circle i{ font-size:16px; line-height:32px;}
	
	.whatsappfixed{ right:10px; bottom:10px;}
	
	.block.carousel-brands-home .box-wrap .box{ width:calc(500%);}
	
	.visual-content .box h1{ font-size:56px;}
	.title .text h1, .title .text h2{ font-size:56px;}
	.block.presentation .top-title h2{ font-size:46px;}
	.block.numbers .item.normal h2{ font-size:46px; line-height:46px;}
	.block h1, .block h2{ font-size:44px;}
	.block.categories .item .text h2{ font-size:38px;}
	.block.categories .item .hover h2{ font-size:38px;}
	.block.intro-book .text .btn{ font-size:28px;}
	.block.team .columns-wrap .column .item .text h2{ font-size:26px;}
	.block.products-section .item .info .normal .element .name{ font-size:26px;}
	.block.numbers .item.normal h3{ font-size:26px;}
	.block.contacts-info .item h2{ font-size:22px;}
	.block.product-page .features-wrap .feature-item .text.text01 .name h2{ font-size:22px;}
	.block h3{ font-size:19px;}
	.footer .footer-row .widget h4{ font-size:19px;}
	.visual-content .box h2{ font-size:19px;}
	.block.numbers .item.normal p{ font-size:18px;}
	.title .breadcrumb li{ font-size:13px;}
	
	.overlay-menu{ display:none !important;}
	
}

@media (max-width: 1099px){
	
	.header .social{ display:none;}
	
}


@media (max-width: 1008px) {
	
	.header .navbar-nav.second-menu > li.prenota{ display:none;}
	
	.visual-content .box h1{ font-size:50px;}
	.title .text h1, .title .text h2{ font-size:50px;}
	.block.presentation .top-title h2{ font-size:40px;}
	.block.numbers .item.normal h2{ font-size:40px; line-height:40px;}
	.block h1, .block h2{ font-size:38px;}
		
}

@media (min-width: 992px) {
	
	.header .navbar-collapse{ display:block;}

}

@media (max-width: 992px) {
	
	.navbar-nav{ padding-bottom:0px;}	
	.footer-row [class*=col-]{ margin:0px;}
	
}

@media (max-width: 991px) {
	
	.navbar-toggle{ display:block;}

	.container{ width:750px;}
	
	.navbar-toggle:first-child{ margin-right:0px;}
	
	
	.header{}
	.header .navbar{ position:relative;}
	.header .navbar a.navbar-brand{ min-width:unset; position:relative; z-index:10; line-height:100px;}
	.header .navbar a.navbar-brand img{ max-height:35px;}
	.header .navbar .menu-wrap{ width:auto; }
	.header .navbar-collapse{ width:100%; position:absolute; left:0px; top:0px; background:#fff; padding:0px; padding:30px; padding-top:100px; float:none !important; box-shadow:0px 0px 20px rgba(0,0,0,0.05); clear:both; width:100%; margin:0px;}
	.header .navbar-collapse.in{ }
	.header .navbar .navbar-nav{ width:100%; float:left; padding-bottom:0px; display:inherit; vertical-align:inherit; margin-bottom:0px; padding-bottom:20px; overflow:hidden;}
	.header .navbar .navbar-nav + .navbar-nav{ padding-top:0px;}
	.header .navbar .navbar-nav > li{ clear:both; width:100%; padding:0px; border-bottom:1px solid #e1e1e1;}
	.header .navbar .navbar-nav.right > li:last-child{ border:0px;}
	.header .navbar .navbar-nav > li:after{ display:none;}
	.header .navbar .navbar-nav > li > a:after{ display:none;}
	.header .navbar .navbar-nav > li > a{ line-height:1 !important; font-size:17px; color:#000; padding:7px 0; border-left:0px !important; margin:0px; border:0px;}
	.header .navbar .navbar-nav > li > a span:before, .header .navbar-nav > li.active > a span:before{ display:none;}
	.header .navbar .navbar-nav > li.active > a{ color:#c91c1e; border:0px;}
	.header .navbar .navbar-nav > li > a:hover{ color:#c91c1e; border:0px;}
	.header .navbar .navbar-nav > li > span.aprisottomenu{ display:inline-block;}
	.header .navbar .navbar-nav > li > a:before{ opacity:0.5;}
	.header .navbar .navbar-nav > li > span.aprisottomenu{ display:inline-block;}
	.header .social{ width:100%; display:flex; flex-wrap:nowrap; justify-content:center; margin:0px; margin-top:20px;}
	
	.header .navbar .navbar-nav > li{ text-align:center;}
	.header .navbar .navbar-nav{ padding-bottom:0px; margin-top:0px;}
	.header .navbar-nav.second-menu > li.prenota{ display:block; border:0px; margin-bottom:10px;}
	.header .navbar .navbar-nav > li.contatti{ border:0px;}
	.header .navbar .navbar-nav > li.contatti a{ color:#fff;}
	.header .navbar-nav.second-menu{ margin-top:10px; text-align:center;}
	.header .navbar-nav.second-menu > li.prenota{ margin-bottom:0px;}
	.header .navbar-nav.second-menu > li > a.btn.btn-primary{ padding:15px 25px;}
	.header .navbar-nav.second-menu > li.prenota{ width:auto; float:none; display:inline-block;}
	.header .navbar-nav.second-menu > li > a.btn.btn-book{ padding-right:0px;}
	
	
	.header .dropdown-menu{ display:none !important; width:100%; min-width:100%; max-width:100%; transform:none; background:none; padding:15px 0; position: relative; top:0; left:0; margin:0px;}
	.header .dropdown-menu.open{ display:block;}
	.header .dropdown-menu:before{ display:none;}
	.header .dropdown-menu > li{ text-align:left; border:0px;}
	.header .dropdown-menu > li > a{ color:#000; font-size:15px; line-height:22px; padding:0px; text-align:left; font-weight:inherit;}
	.header .dropdown-menu > li > a:hover{ color:#c91c1e;}
	.header .dropdown-menu > li.active > a, .header .dropdown-menu > li.active > a:hover{ color:#c91c1e; font-weight:300; background:none;}
	
	
	.footer .footer-row{ padding-top:40px;}
	.footer .footer-row .row.rowfooter01{ max-width:100%; flex-wrap:wrap;}	
	.footer .footer-row .row .colfooter{ width:100%;}
	.footer .footer-row .widget{ margin-bottom:20px;}
	.footer .footer-extra{ padding-top:0px;}
	
	.block.products-section .filters ul li{ font-size:18px;}
	
	.block.product-page .main-image{ margin-bottom:20px;}
	.block.product-page .gallery-images{ margin-top:0px; margin-bottom:20px;}
	.block.product-page .gallery-images ul{ margin:0 -5px;}
	.block.product-page .gallery-images li{ width:33.33%; padding:0 5px; margin-bottom:10px;}
	
	.block.product-page .features-wrap .feature-item{ margin-bottom:15px; padding-bottom:15px;}
	.block.product-page .text .bottom{ margin-top:10px;}
	.block.product-page .features-wrap .feature-item .text.text01{ margin-bottom:10px;}
	
	.block.product-page .gallery .item{ width:50%;}
	
	.block.team .columns-wrap .column{ width:50%;}
	
	.block.about01 .image{ margin-bottom:20px;}
	.block.about02 .image{ margin-bottom:20px;}
	
	.block.numbers .item.normal h3{ margin-top:0px;}
	
	.block.contacts .box{ padding:40px 0;}
	
	.block.products-section.grid.home{ padding-bottom:60px;}
	
	.row.row-products{ margin:0 -10px;}
	.row.row-products [class*="col-"]{ padding:0 10px;}
	
	.row.row-categories{ margin:0 -10px;}
	.row.row-categories [class*="col-"]{ padding:0 10px;}
	
	.block.products-section .item{ margin-bottom:20px;}
	
	.block.categories{ padding-bottom:40px;}
	.block.categories .item{ padding-bottom:100%;}
	.block.categories .item{ margin-bottom:20px;}
	
	.block.numbers{ padding:40px 0; padding-bottom:20px;}
	.block.numbers .item{ margin-bottom:20px;}
	
	.block.subpages-list .item .image{ width:100%; margin-bottom:20px;}
	.block.subpages-list .item .text{ width:100%; padding:0px !important;}
	.block.subpages-list .item:nth-child(even) .image{ order:0;}
	
	.block.fullwidth{ padding-top:0px;}
	.block.fullwidth.gradient .image:before{ display:none;}
	.block.fullwidth .image{ width:100%; height:0px; padding-bottom:66.7%; position:relative;}
	.block.fullwidth .text{ padding:40px 0; text-align:center;}
	
	.block.about03 .about-carousel + .about-carousel{ margin-top:10px;}
	
	
	.visual-content .box h1{ font-size:46px;}
	.title .text h1, .title .text h2{ font-size:46px;}
	.block.presentation .top-title h2{ font-size:38px;}
	.block.numbers .item.normal h2{ font-size:38px; line-height:38px;}
	.block h1, .block h2{ font-size:38px;}
	.block.categories .item .text h2{ font-size:36px;}
	.block.categories .item .hover h2{ font-size:36px;}
	.block.intro-book .text .btn{ font-size:24px;}
	.block.team .columns-wrap .column .item .text h2{ font-size:24px;}
	.block.products-section .item .info .normal .element .name{ font-size:24px;}
	.block.numbers .item.normal h3{ font-size:24px;}
	.block.contacts-info .item h2{ font-size:19px;}
	.block.product-page .features-wrap .feature-item .text.text01 .name h2{ font-size:19px;}
	.block h3{ font-size:18px;}
	.footer .footer-row .widget h4{ font-size:18px;}
	.visual-content .box h2{ font-size:18px;}
	.block.numbers .item.normal p{ font-size:17px;}
	
	
}


@media (max-width: 768px){
	
	.block.map .iframe-wrap{ padding:0 20px;}
	.block.fullwidth{ margin:0 20px;}
	
	.content .row + .row{ margin-top:20px;}
	
	.title + .block.presentation{ padding-top:40px !important;}
		
	.container{ width:100%; padding:0 20px;}
	.container-fluid{ padding:0 20px;}
	
	.header .navbar a.navbar-brand img{ height:30px;}
	.header .navbar-collapse{ padding-left:20px; padding-right:20px;}
	
	.block.team .columns-wrap{ margin:0px;}
	.block.team .columns-wrap .column{ width:100%; max-width:100%;}
	
	.block.carousel-brands-home .box-wrap .box{ width:calc(1000%);}
	.block.carousel-brands-home .box-wrap .box .item-wrap .item{ padding:0 5px;}
	
	.block.intro-book .text .btn.btn-book{ margin-top:20px;}
	  
	.check label span{ font-size:12px; line-height:18px; padding-top:3px;}
	
	.title .breadcrumb li:after{ margin:0 5px;}
	
	.row.row-categories [class*="col-"]{ width:50%; float:left;}
	
	.block.categories .item .normal{ padding:20px;}
	.block.categories .item .hover{ padding:20px;}
	
	.block.products-section .filters ul li{ font-size:16px; margin:0 5px;}
	
	
	.visual-content .box h1{ font-size:42px;}
	.title .text h1, .title .text h2{ font-size:42px;}
	.block.presentation .top-title h2{ font-size:36px;}
	.block.numbers .item.normal h2{ font-size:36px; line-height:36px;}
	.block h1, .block h2{ font-size:36px;}
	.block.categories .item .text h2{ font-size:32px;}
	.block.categories .item .hover h2{ font-size:32px;}
	.block.intro-book .text .btn{ font-size:22px;}
	.block.team .columns-wrap .column .item .text h2{ font-size:22px;}
	.block.products-section .item .info .normal .element .name{ font-size:22px;}
	.block.numbers .item.normal h3{ font-size:22px;}
	
}

@media (max-width: 640px){
	
	.block.cta-book .top-title .actions{ flex-wrap:wrap;}
	.block.cta-book .top-title .actions li{ width:100%; margin:0px;}
	
	.block.categories .item .text h2{ font-size:26px; line-height:1.1;}
	.block.categories .item .hover h2{ font-size:26px; line-height:1.1;}
	
}

@media (max-width: 479px) {
	
	[class*=col-xs-]{ text-align:inherit;}	
	.footer [class*=col-]{ text-align:inherit;}	

}