/*-------------------------
Reset
-------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: top;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	/* list-style: none; */
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Reset */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

input[type="text"],
input[type="button"],
input[type="submit"],
input[type="password"] {
     -webkit-appearance: none;
     border-radius:5px;
}

/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

/*-------------------------
CSS Specifico
-------------------------*/

html,body {
    width:100%;
    height:auto;
    font: 400 18px/1.6em "Poppins", sans-serif;
    font-optical-sizing: auto;
    color: #2e455b;
    }


h1 {
	color: #002141;
	font: 700 30px/normal "Montserrat", sans-serif;
	margin-bottom:15px;
}

h2{
	color: #000000;
	font: 700 28px/normal "Montserrat", sans-serif;
	margin-bottom:5px;
}

h3 {
	color: #333;
	font: 400 22px/normal "Montserrat", sans-serif;
}

h4 {
	color: #333;
	font: 700 18px/1.6em "Montserrat", sans-serif;
}

h5 {
	color: #333;
	font-style: normal;
	font: 400 18px/1.6em "Montserrat", sans-serif;
}

/* Nel footer */
h6{
  color: #ffffff;
  font: 700 30px/normal "Montserrat", sans-serif;
}

h6:before {
  content: '';
  width: auto;
  height: 1px;
  background: rgb(255 255 255 / 16%);
  display:block;
  margin-bottom:15px;
}



.ultracheck {
  list-style-image: url('../images/check.png');
  padding-left:30px;
}

.ultracheck li {
	padding-bottom:10px;
	font-size:120%;
}

.ultracheck li a {
	text-decoration: underline;
}

b {
 	font-weight:bold;
}

i.fas, i.far {line-height: .75em;vertical-align: -.0667em;}

.header-top-bar i {
	/* border-left:1px solid rgb(158 158 158 / 40%); */
	padding-right:5px;
	margin-left:15px;
	color: #000000;
}

.header-top-bar a {
	/* color:#62727b; */
}

.header-top-bar a:hover {
	text-decoration: none;
	color:#62727b;
}

a {
	text-decoration: none;
	color:#575454;;
}

a:hover {
	color:#000000;
}

.pulsanteattivo {
background:rgba(0,0,0,.25);
}

input.reservation {
box-shadow: inset 0px 2px 4px rgba(0,0,0,1);
background:#16262e;
color:#fff;
border:1px solid rgba(255,255,255,.65);
display:inline-block;
padding:10px;
font: 400 15px/normal "Open sans", sans-serif;
margin:10px 5px 0px;
}

select.reservation {
box-shadow: inset 0px 2px 4px rgba(0,0,0,1);
background:#16262e;
color:#fff;
border:1px solid rgba(255,255,255,.65);
display:inline-block;
padding:10px;
font: 400 15px/normal "Open sans", sans-serif;
margin:10px 5px 0px;
}

input.button-prenota {
background:#e7b315;
color:#000;
border:none;
display:inline-block;
padding:10px;
font: 400 16px/normal "Open Sans", sans-serif;
margin:10px 5px 0px;
cursor:pointer;
}

input.invianewsletter {
	background: #a69568;
	font: 400 14px/normal 'Open Sans', sans-serif;
	color:#fff;
	border-radius: 0px;
	border:0px;
	display:inline-block;
	padding:5px 10px;
	margin:0px;
	width: 25%;
	height: 40px;
	cursor:pointer;
	vertical-align:middle;
	border: 1px solid #a69568;
}

input.newsletter {
vertical-align:middle;
border-radius: 0px;
margin:0px;
border:0px;
width: 75%;
height: 40px;
color: #000;
background:#fff;
text-indent: 0.01px; /* Removes default arrow from firefox*/
text-overflow: ""; /*Removes default arrow from firefox*/ /*My custom style for fonts*/
padding: 10px 20px 10px 20px;
margin-right: 0px;
font-family: 'Open Sans', sans-serif;
font-size: 14px;
}

input.newsletter::placeholder, input.namenewsletter::placeholder {
  color:#000;
	opacity:0.5;
}

#icon a {
	text-decoration: none;
		color:rgba(255,255,255,1);
}

#icon a:hover {
	text-decoration: none;
		color:rgba(255,255,255,1);
}

#footer a {
	text-decoration: none;
	color: #ffffff;
}

#footer a:hover {
	text-decoration: underline;
	color:#ffffff;
}

#footer2 a {
	text-decoration: none;
	color: rgb(0 0 0);
}

#footer2 a:hover {
	text-decoration: none;
	color:rgb(0 0 0);
}

div.hr {
  height: 1px;
  background: #dbdbdb;
  clear:both;
  margin:5px 0px;
}

div.hr hr {
  display: none;
}

div.hr2 {
  height: 1px;
  background: #e7e7e7;
  clear:both;
  margin:10px 0px;
}

/* ==========================================*/
/*	Preloader
/* ==========================================*/

#preloader  {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background-color:#fff;
 }

#status  {
     width: 64px;
     height: 64px;
     position: absolute;
     left: 50%;
     top: 50%;
     background-image:url('../images/loading.gif');
     background-repeat: no-repeat;
     background-position: center;
     margin: -32px 0 0 -32px;
 }

/* ==========================================*/
/*	Fine Preloader
/* ==========================================*/

/* ==========================================*/
/*	Header
/* ==========================================*/

.header-top-bar-container {
	position:relative;
	z-index:91;
	width:100%;
}

.header-top-bar {
	width:100%;
	max-width:1600px;
	padding: 10px 20px 0px 0px;
	margin:0 auto;
	position:relative;
	z-index:96;
	font-size:13px;
	text-align:right;
	line-height: normal;
}

/* ==========================================*/
/*	Fine Header
/* ==========================================*/

#cont_top {
	width:100%;
	z-index:91;
	background: rgb(255 255 255);
	position: sticky;
	transition-duration: 0.8s;
	-moz-box-shadow: 0 10px 5px -5px rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0 5px 14px -5px rgba(0, 0, 0, 0.1);
	box-shadow: 0 5px 14px -5px rgba(0, 0, 0, 0.1);
}

#cont_top_menu {
	width:100%;
	background:#f8f7ee;
}

#top_menu {
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0px 20px;
}

.social-top {
  position:relative;
  margin-right:20px;
  padding-left:20px;
  display:inline-block;
  line-height: 1.5em;
  vertical-align: middle;
  border-bottom: 1px solid #efefef;
  padding-bottom: 1em;
}

.social-top img {
height:18px;
	width:auto;
margin-right:10px;
}

.tel-top {
  position:relative;
  padding-right:10px;
  display:inline-block;
  line-height:1.5em;
  vertical-align:middle;
  border-bottom: 1px solid #efefef;
  padding-bottom: 1em;
}

.via-top {
  position:relative;
  padding-right:20px;
  display:inline-block;
  /* color: #62727b; */
  line-height:1.5em;
  vertical-align:middle;
  border-bottom: 1px solid #efefef;
  padding-bottom: 1em;
}

.blocca {
height:auto  !important;
transition-duration: 0.8s;
transition-timing-function: ease-in-out;
}

#cont_top.blocca {
	background:rgba(255,255,255,1);
	position:fixed;
}

.logo {
	position:absolute;
	top:5px;
	float:left;
	z-index:100;
	width:auto;
	height:90px;
	transition-duration: 1s;
}

.blocca .logo {
	width:auto;
	height:60px;
	transition-timing-function: ease-in-out;
	transition-duration: 1s;
}

.logo img {
	max-width: 100%;
	width:auto;
	height:100%;
}

#top {
	width:100%;
	max-width:1600px;
	margin:0 auto;
	padding:50px 20px 20px;
	transition-duration: 1s;
}

.blocca #top {
	padding:10px 20px 10px;
	transition-timing-function: ease-in-out;
	transition-duration: 1s;
}

#cont_slogan {
	position:absolute;
	z-index:90;
	bottom:22%;
	width:100%;
}
	
#slogan {
	margin:auto;
	width:80%;
	padding:0 20px;
	text-align: left;
}

#slogan h1 {
	color: #ffffff;
	font-weight:700;
	animation-delay: 0.8s;
	line-height:0.65em;
	font-size:3.2vw;
}

#slogan h2 {
	color: rgb(255 255 255 / 60%);
	font-weight: 700;
	font-size:2.3vw;
	line-height:1.1em;
	animation-delay: 1.3s;
	font-family: "montserrat", sans-serif;
	margin-bottom:30px;
}

#slogan p {
	color: #ffc700;
	font-size:1.8vw;
	font-style: italic;
	font-weight:400;
	font-family: "Montserrat", sans-serif;
	margin-bottom:10px;
	line-height:normal;
	animation-delay: 1.6s;
}

#slogan a {
	animation-delay: 1.8s;
}


#cont_fascia {
	width:100%;
	position:relative;
	background: #187ee0;
}

#fascia {
	width:100%;
	max-width:1600px;
	padding:45px 25px 30px;
	margin:0 auto;
	color:#fff;
	text-align:center;
	font-size: 120%;
}

#fascia:after {
	content: " ";
	display: block;
	clear:both;
}

#foto {
	position:relative;
	width:100%;
	height:290px;
	overflow:hidden;
}

#foto img {
position: absolute;
z-index:1;
height: auto;
width:100%;
max-width: 100%;
min-height:auto;
min-width: 100%;
top:50%;
left: 50%;
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}

.overlay-foto {
	/* background: rgb(13 73 131 / 70%); */
	width:100%;
	height:100%;
	position:absolute;
	z-index: 9;
}

.overlay-foto h1 {
position:absolute;
bottom:60px;
width:100%;
text-align:center;
font-size:4vw;
color: #fff;
text-shadow: 1px 1px #000;
}

.overlay-foto h1:after {
  content: '';
  width: 260px;
  height: 1px;
  background-color: rgba(255,255,255,0.4);
  position: absolute;
  bottom: -15px;
  left: 50%;
  margin-left: -130px;
}

/* ==========================================*/
/*	CSS MOUSE SCROLL
/* ==========================================*/

#scrollmouse {
  position:absolute;
	bottom:50px;
	z-index:89;
	width:60px;
	left:50%;
	margin-left:-30px;
	text-align:center;
	color:#fff;
}

@-webkit-keyframes scroll {
  0% {
    -webkit-transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes scroll {
  0% {
    -moz-transform: translateY(0);
  }
  50% {
    -moz-transform: translateY(10px);
  }
  100% {
    -moz-transform: translateY(0);
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(10px);
    -moz-transform: translateY(10px);
    -ms-transform: translateY(10px);
    -o-transform: translateY(10px);
    transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}

.mouse {
  display: inline-block;
  height: 44px;
  width: 28px;
  border-radius: 12px;
  border: 2px solid #fff;
  text-align: center;
}
.mouse:after {
  display: inline-block;
  height: 8px;
  width: 8px;
  background-color: #fff;
  border-radius: 50%;
  content: "";
  -webkit-animation: scroll 1.3s ease-out infinite forwards;
  -moz-animation: scroll 1.3s ease-out infinite forwards;
  animation: scroll 1.3s ease-out infinite forwards;
}

/* ==========================================*/
/*	FINE CSS MOUSE SCROLL
/* ==========================================*/

#cont-menu {
	background:#fff;
	width:100%;
	padding-top:10px;
}

#menu {
	width:100%;
	max-width:1200px;
	margin:0 auto;
}

.link {
	font: 700 18px/60px 'Montserrat', sans-serif;
	background: #187ee0;
	border:0;
	border: 2px solid #187ee0;
	color: #ffffff;
	border-radius:40px;
	display:inline-block;
	padding:0px 30px;
	margin:0px;
	height: 60px;
	width:auto;
	min-width:150px;
	cursor:pointer;
	text-align:center;
	vertical-align:middle;
}

.link:hover {
	color:#ffffff;
}

.link i.fas {color: #113e69;}

input.invia {
	background: #333;
	font: 400 16px/50px 'Open sans', sans-serif;
	color:#fff;
	border-radius:30px;
	border:0px;
	display:inline-block;
	padding:0px 30px;
	margin:0px;
	height: 50px;
	width:auto;
	min-width:150px;
	cursor:pointer;
	vertical-align:middle;
	border: 1px solid #333;
}

.pulsante-chiama{
	background:#187ee0;
	color:#fff !important;
	border-radius:20px;
	margin-left:15px;
}

.continua {
	font: 700 18px/50px 'Montserrat', sans-serif;
	background: #187ee0;
	border:0;
	border: 0px;
	color: #ffffff;
	border-radius:30px;
	display:inline-block;
	padding:0px 30px;
	margin:0px;
	height: 50px;
	width:auto;
	min-width:150px;
	cursor:pointer;
	text-align:center;
	vertical-align:middle;
}

.continua:hover {
	color:#ffffff;
}

.button-submenu {
	font-size:13px;
	display:inline-block;
	border:1px solid rgba(255,255,255,0.4);
	padding:5px;
	margin:5px 2px;
	border-radius:5px;
	text-transform: lowercase;
	transition-duration: 1s;
}

.button-submenu:hover {
  background:#bc0000;
}


/* ==========================================*/
/*	LOGIN
/* ==========================================*/

#carrello {
	float:left;
	width:100%;
	padding:15px 15px 25px;
	border-radius:10px;
	border: 1px solid #e6e6e6 !important;
	color:#505050;
	margin-bottom:20px;
}

#login {
	float:left;
	width:100%;
	padding:15px 15px 25px;
	border-radius:10px;
	background:#f9f9f9;
	border: 1px solid #e6e6e6 !important;
	color:#939393;
	margin-bottom: 15px;
}

#registrazione {
	float:left;
	width:100%;
	padding:15px 15px 25px;
	border-radius:10px;
	background:#f9f9f9;
	border: 1px solid #e6e6e6 !important;
}

input.demo  {
		border: 1px solid #e6e6e6 !important; /*Removes border*/
		background:#fff;
		width: 100%; /*Width of select dropdown to give space for arrow image*/
		text-indent: 0.01px; /* Removes default arrow from firefox*/
		text-overflow: ""; /*Removes default arrow from firefox*/ /*My custom style for fonts*/
		color:#4b4b4b;
		border-radius: 5px;
		padding: 5px;
		margin-bottom: 8px;
}

select.demo  {
		border: 1px solid #e6e6e6 !important; /*Removes border*/
		-webkit-appearance: none; /*Removes default chrome and safari style*/
		-moz-appearance: none; /* Removes Default Firefox style*/
		background: url("../images/select-arrow.png") no-repeat scroll 97% center #fff;
		width:100%;
	  min-width:70px;
	  max-width:270px;
		text-indent: 0.01px; /* Removes default arrow from firefox*/
		text-overflow: ""; /*Removes default arrow from firefox*/ /*My custom style for fonts*/
		color:#4b4b4b;
		border-radius: 5px;
		padding: 5px 20px 5px 5px;
		margin-bottom: 8px;
}

input.conferma {
		color:#FFF;
		width:100%;
		margin-top:10px;
		padding:10px;
		font-size:20px;
		background:#186DA9;
		text-decoration: none;
		border-radius: 5px;
		border:0px;
		cursor: pointer;
}

/* ==========================================*/
/*	FINE LOGIN
/* ==========================================*/

#contenuti {
	z-index: 15;
	margin: 0 auto;
	width:100%;
	max-width:1500px;
	padding:60px 20px 65px;
}

#contenuti:after {
	content: " ";
	display: block;
	clear:both;
}


#contenuti-prodotti {
	margin: 0 auto;
	width:100%;
	max-width:1400px;
	padding:190px 20px 40px;
}

#contenuti-prodotti:after {
	content: " ";
	display: block;
	clear:both;
}

.colonne {
	column-count: 3;
	column-gap: 35px;
	
	-moz-column-count: 3;
	-moz-column-gap: 35px;
	
	-webkit-column-count: 3;
	-webkit-column-gap: 35px;
	
		margin-bottom:30px;
}

.contact {
  	float:left;
	width:50%;
	padding-right:20px;
}

#sx {
	position:relative;
	display:table-cell;
	width:50%;
	height:auto;
	padding:20px;
}

#dx {
	position:relative;
	display:table-cell;
	width:50%;
	height:auto;
	padding:20px;
}


#dx2 {
	float:left;
	position:relative;
	width:50%;
	padding:0px 20px 0px 0px;
}

#sx2 {
	float:left;
	position:relative;
	width:50%;
	padding:0px 0px 0px 20px;
}

#dx2:after {
	content: " ";
	display: block;
	clear:both;
}

#dx2 p {border-bottom: 1px solid rgb(220 220 220);padding:10px 0px;}

#sx2:after {
	content: " ";
	display: block;
	clear:both;
}

.grigio {
	width:100%;
	clear:both;
	position:relative;
	background:#f5f5f5;
}

.grigio:after {
	content: " ";
	display: block;
	clear:both;
}

.grigio-home {
	background:#f7f6f5;
	width:100%;
	clear:both;
	position:relative;
	padding:60px;
}

.grigio-home:after {
	content: " ";
	display: block;
	clear:both;
}

.bianco {
	width:100%;
	clear:both;
	position:relative;
	background:#ffffff;
}

.bianco:after {
	content: " ";
	display: block;
	clear:both;
}

.giallo {
	width:100%;
	clear:both;
	position:relative;
	background: #187ee0;
}

.giallo:after {
	content: " ";
	display: block;
	clear:both;
}

.sfondo-b {
	background:url('../images/bg.png') bottom right no-repeat #ffffff;
	background-size:contain;
}

.mission {
	text-align: center;
	padding:40px 20px;
}

.mission h3 {
	font-size:23px;
	line-height:normal;
	color: #ffffff;
	margin-bottom:10px;
	font-weight:700;
}

.mission h4 {
	font-size:120%;
	color: #d7ebff;
	/* font-family:"Montserrat", sans-serif; */
	font-weight:400;
}

.mission h4 a {color: #ffffff;font-weight:700;text-decoration:underline}

#opzioni {
	list-style: none;
	text-align:center;
	margin:0;
}

#opzioni:after {
content:'';
display:block;
clear:both;
}

#opzioni li {
  display: inline-block;
	list-style: none;
	padding:10px 20px;
	margin-bottom:20px;
	border-right:1px solid #e6e6e6;
	font-size:14px;
	color:#838383;
}

#opzioni li h5{
font-size:20px;
}

#opzioni li p {
font-size:130%;
	font: 400 18px/1.7em "Open Sans", sans-serif;
}

.overlay {
	background:rgba(255, 255, 255, 0.2);
  width:100%;
	height:100%;
	position:absolute;
	z-index: 9;
}

.overlay h2 {
	position:absolute;
	bottom:55px;
	width:100%;
	text-align:center;
	color: #fff;
	text-shadow: 1px 1px #000;
}

.overlay h2:after {
  content: '';
  width: 260px;
  height: 1px;
  background-color: #90d6e7;
  position: absolute;
  bottom: -15px;
  left: 50%;
  margin-left: -130px;
}

.overlay-home {
   background: rgb(5 21 66 / 70%);
   width: 100%;
   height: 100%;
   position: absolute;
   z-index: 9;
}

.loghi {
	z-index: 15;
	width:100%;
	background:#fff;
	clear:both;
	text-align:center;
	vertical-align:middle;
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
    -moz-box-shadow:    inset  0  8px 8px -8px #dedede, 
                        inset  0 -8px 8px -8px #dedede;
    -webkit-box-shadow: inset  0  8px 8px -8px #dedede, 
                        inset  0 -8px 8px -8px #dedede;
     box-shadow:        inset  0  8px 8px -8px #dedede, 
                        inset  0 -8px 8px -8px #dedede;
}


.loghi img {
	z-index: 15;
	display:inline-block;
	width:150px;
	height:auto;
	margin:15px;
	vertical-align:middle;
}

/* ==========================================*/
/*	grid vini
/* ==========================================*/

.grid-container {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(2, 1fr);
}

.grid-container .cont-pulsante {
  border-radius:10px;
  border:1px solid rgb(222 205 158);
}

.table-vini {
  display:table;
  width:100%;
  padding:20px;
}

.table-vini-row {
  display:table-row;
  width:100%;
  height:100%;
}

.table-vini-td1 {
  display:table-cell;
  width:70px;
}

.table-vini-td1 img {
  height:100px;
}

.table-vini-td2 {
  display:table-cell;
  width:auto;
  vertical-align:middle;
}

.table-vini-td2 h3 {
  font-size:17px;
  font-weight:700;
  color:#000;
  font-family:'Open Sans', sans-serif;
}

/* ==========================================*/
/*	fine grid
/* ==========================================*/

/* ==========================================*/
/*	Chi siamo
/* ==========================================*/

.table-home {
	display:table;
	width:100%;
	height:100%;
	margin-top:20px;
	margin-bottom:20px;
}


.image-presentazione {
	display:table-cell;
	width:48%;
    position: relative;
	padding-right:25px;
}

.presentazione {
	display:table-cell;
	width:52%;
	padding:5vw;
	/* font: 400 16px/1.6em "Montserrat", sans-serif; */
	letter-spacing:normal;
}

.image-presentazione img {
    width:100%;
    height:100%;
    object-fit:contain;
	object-position:center center;
}

.foto-presentazione {
  display: grid;
  height: 100%;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  grid-template-areas:
    "contant1 contant2"
    "contant1 contant3";
  grid-gap: 1rem;
}

.foto-presentazione div {
  display: flex;
  justify-content: center;
  align-items: center;
}

.prima {
  background: rgb(26, 99, 141);
  grid-area: contant1;
}

.seconda {
  background: rgb(24, 134, 129);
  grid-area: contant2;
}
.terza{
  background: rgb(6, 221, 210);
  grid-area: contant3;
}

.presentazione h1 {
  font-size:3em;
  line-height:normal;
  margin-bottom:10px;
font-weight:800;
}

.presentazione h2 {
  color: #8bc34a;
  font-size:1.6em;
  font: 700 25px / normal "Montserrat", sans-serif;
  margin-bottom:20px;
}

.presentazione h2:after {
  content: '';
  height:1px;
  background-color: rgb(221 221 221);
  width:80%;
  display:block;
  margin-top:15px;
  margin-bottom:20px;
}

.azienda {
	width:25%;
	max-width:300px;
	float:left;
	height:auto;
	overflow:hidden;
	margin-right:30px;
	margin-bottom:10px;
}

.azienda img {
	width:100%;
}

.azienda2 {
	width:auto;
	max-width:300px;
	float:right;
	height:auto;
	overflow:hidden;
	margin-left:30px;
	margin-bottom:10px;
}

.azienda2 img {
	width:100%;
}

.cont-categorie-home {
 width:33.3%;
 float:left;
 padding:15px;
 overflow:hidden;
}

.categorie-home {
	width:100%;
	height:0;
	padding-bottom:80%;
	overflow:hidden;
	position:relative;
	transition-duration: 1s;
	background:#fff;
}

.categorie-home img {
position:absolute;
height:auto;
width:auto;
max-width:120%;
min-height:100%;
min-width:100%;
top:50%;
left:50%;
-webkit-transform: translate(-50%,-50%); 
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%, -50%);
transform: translate(-50%,-50%);
}

.titolo-categoria-home {
  position:absolute;
	width:100%;
  bottom: 10%;
	text-align:center;
	border-width: 0px 1px 1px 1px;
	padding:10px;
	min-height:60px;
	background:rgba(255, 255, 255, 0.9);
	z-index:10;
}

.titolo-categoria-home h2  {
	line-height:normal;
	font-size:25px;
	margin-bottom:0;
	/*! color:#b8963d; */
	font-weight:700;
}

.titolo-categoria-home p  {
	color:rgb(184, 150, 61);
}

.cards {
  display: flex;
  flex-wrap: wrap; /* Permette ai box di andare a capo */
  justify-content: center; /* Allineamento orizzontale */
}

.card-container {
    justify-content: center; /* Centra il testo orizzontalmente */
    background-color: #f3f3f3;
    border: 1px solid #d3e0ee;
    margin: 10px;
    padding: 20px;
    flex: 0 0 calc(33.3% - 20px); /* Disabilita espansione e riduzione, larghezza base */
    text-align: center;
    text-decoration: none; /* Rimuove la sottolineatura dal link */
    border-radius: 8px; /* Angoli arrotondati per il box */
    box-shadow: 0 0px 10px rgb(0 0 0 / 10%); /* Ombra per il box */
}

.card-container h1 {
  color: #187ee0;
  font: 700 20px/1.2em 'Poppins', sans-serif;
  text-transform:uppercase;
  margin-bottom:8px;
}

.card-container p {
	line-height:normal;
	font-size:15px;
}

/* ==========================================*/
/*	Fine Chi siamo
/* ==========================================*/


/* ==========================================*/
/*	CATEGORIE
/* ==========================================*/

.foto-categoria {
	width:250px;
	height:auto;
	border-radius:3px;
	overflow:hidden;
	margin-right:40px;
	margin-bottom:20px;
	float:left;
}

.foto-categoria img {
	width:100%;
}


.cont-categorie {
 width:33.3%;
 float:left;
 padding:10px;
}

.categorie {
	width:100%;
	height:0;
	padding-bottom:85%;
	border-radius: 8px;
	overflow:hidden;
	background:#fff;
	position:relative;
}

.categorie img {
transition-duration: 2s;
position:absolute;
z-index:1;
height:auto;
width:auto;
min-height:100%;
min-width:100%;
max-width:120%;
max-height:150%;
top:50%;
left:50%;
-webkit-transform: translate(-50%,-50%); 
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%, -50%);
transform: translate(-50%,-50%);
}

.titolo-categoria {
	position:absolute;
	bottom:10%;
	padding:5px 15px;
	width:100%;
  background: rgba(255, 255, 255, 0.89);
	text-align:center;
	z-index:2;
}

.titolo-categoria p  {
  font: 700 28px/normal "Open Sans", sans-serif;
	font-size:18px;
	line-height:normal;
	text-transform: uppercase;
	padding:10px 5px;
  color: #050f36;
}

.cont-categorie2 {
 width:25%;
 float:left;
 padding:10px;
}

/* ==========================================*/
/*	Fine CATEGORIE
/* ==========================================*/


/*-------------------------
PREVENTIVI
-------------------------*/

.immagine-preventivi {
 float:left;
 width:40%;
 padding-right:20px;
 text-align:center;
}

.immagine-preventivi img {
height: 200px;
width: auto;
}

.tab-preventivi {
float:left;
width:60%;
}


.pulsante-preventivo {
	width:100%;
	text-align:center;
	padding:10px;
	margin:10px 0px;
	color:#fff;
	text-decoration: none;
	border-radius: 4px;
	border:1px solid #cb010a;
	background: url(../images/submenu.png) no-repeat 95% 55% #dc000a;
	cursor: pointer;
}

.pulsante-aggiungi {
	width:100%;
	text-align:center;
	padding:10px;
	margin:10px 0px;
	color:#fff;
	text-decoration: none;
	border-radius: 4px;
	border:1px solid #cb010a;
	background: #dc000a;
	cursor: pointer;
}

.pulsante-richiedi {
	font: 700 16px/50px 'Open Sans', sans-serif;
	background:#ef4b54;
	color:#fff;
	border-radius:30px;
	border:0px;
	display:inline-block;
	padding:0px 30px;
	margin:0px;
  height: 50px;
	width:auto;
	min-width:150px;
	cursor:pointer;
	vertical-align:middle;
}

/*-------------------------
FINE PREVENTIVI
-------------------------*/


/*-------------------------
MINIATURE dettaglio
-------------------------*/

.cont-box-image {
 width:16.66%;
 float:left;
 padding:2px;
}

.cont-box-image2 {
 width:25%;
 float:left;
 padding:10px;
}

.box-image2 {
width:100%;
height:0;
padding-bottom:80%;
overflow:hidden;
position:relative;
z-index:2;
}

.box-image2 img {
transition-duration: 2s;
position:absolute;
z-index:1;
height:auto;
width:auto;
min-height:100%;
min-width:100%;
max-width:150%;
max-height:150%;
top:50%;
left:50%;
-webkit-transform: translate(-50%,-50%); 
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%, -50%);
transform: translate(-50%,-50%);
}

.didascalia {
width:100%;
height:32px;
font-size:80%;
overflow:hidden;
border-bottom:1px solid #eaeaea;
}

/*-------------------------
fine MINIATURE dettaglio
-------------------------*/

/*-------------------------
BOX news
-------------------------*/

#box_news_home {
  background:#f5f5f5;
  padding:10px;
	border-radius:5px;
	margin-bottom:30px;
	height:250; //auto
}

#box_news {
	float:left;
	width:100%;
	padding:20px;
	margin-bottom:25px;
	background:#fff;
	border-radius:5px;
  box-shadow: 0px 2px 2px rgba(0,0,0,.10);
	border-top:1px solid #f5f5f5;
}

#box_news h1 {
	color: #db0000;
	font: 400 22px/normal "Open Sans", sans-serif;
	margin-bottom:0px;
	text-shadow: none;
}
	
#miniatura_news {
	float:left;
	width:230px;
	height:170px;
	overflow:hidden;
	border-radius:5px 0px 0px 5px;
	overflow:hidden;
	margin:-20px 25px -20px -20px;
	background:#fff;
}

#miniatura_news img {
	width:100%;
}

#image_dettaglio {
	float:left;
	width:25%;
	height:auto;
	margin:0px 35px 20px 0px;
	border-radius:3px;
	overflow:hidden;
}

#image_dettaglio-rubrica {
	position:relative;
	margin:-30px auto 30px ;
	width:30%;
}

#image_dettaglio-shop {
	float:left;
	width:50%;
	margin:0px 25px 20px 0px;
}

#image_dettaglio img, #image_dettaglio-rubrica img {
	width: 100%;
	height: auto;
}

#image_dettaglio-shop img {
	max-width: 100%;
	width:auto;
	height: auto;
}

/*-------------------------
FINE BOX news
-------------------------*/

/* ==========================================*/
/*	Tabella news
/* ==========================================*/

.table-prodotti-e {
	display:table;
	float:left;
	width:100%;
	padding:0px 0px 20px;
	margin-bottom:25px;
	background:#fff;
	border-bottom: 3px dotted rgb(35 104 51 / 30%);
}

.tab-foto-prodotti-e {
	display:table-cell;
	width:150px;
	height:100%;
	padding:10px 20px 0px 0px;
}

.tab-foto-prodotti-econt {
	width:100%;
	height:90px;
	overflow:hidden;
	position:relative;
}

.tab-foto-prodotti-econt img {
transition-duration: 2s;
position:absolute;
z-index:1;
height:auto;
width:auto;
min-height:100%;
min-width:100%;
max-width:150%;
max-height:120%;
top:50%;
left:50%;
-webkit-transform: translate(-50%,-50%); 
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%, -50%);
transform: translate(-50%,-50%);
}

.tab-contenuti-prodotti-e {
	display:table-cell;
	width:auto;
	padding:10px 0px 10px 0px;
	position:relative;
}

.tab-prezzi-prodotti-e {
	display:table-cell;
	width:80px;
	padding:10px  0px 0px 0px;
	position:relative;
	text-align:right;
}

.text-anteprima-news {
	display:table-cell;
	width:auto;
	padding:10px 0px 10px 0px;
	position:relative;
}

.tab-contenuti-prodotti-e h1 {
	color: #333;
	font: 700 22px/normal "Open Sans", sans-serif;
	margin-bottom:0px;
	text-shadow: none;
}

.tab-contenuti-prodotti-e p {
line-height:normal;
}

/* ==========================================*/
/*	Fine Tabella news
/* ==========================================*/

/*-------------------------
BOX novita
-------------------------*/

.box-cont {
width:33.3%;
padding:20px;
float:left;
margin-bottom:10px;
}

.box-image {
width:100%;
height:0;
padding-bottom:55%;
overflow:hidden;
position:relative;
}

.box-image img {
position:absolute;
height:auto;
width:auto;
max-width:120%;
min-height:100%;
min-width:100%;
top:50%;
left:50%;
-webkit-transform: translate(-50%,-50%); 
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%, -50%);
transform: translate(-50%,-50%);
opacity: 1;
transition-duration: 1s;
transition-timing-function: ease-in-out;
}

.box-white {
  background: #ffffff;
}

.destinazione {
height:200px;
padding:30px 0px 0px;
overflow:hidden;
}

/* Titolo offerta */
.destinazione h1 {
	color: #000;
	font: 700 20px/1.6em "Open Sans", sans-serif;
	border-bottom:1px solid rgba(155, 155, 155, 0.2);
	margin-bottom: 10px;
}

/*-------------------------
FINE BOX novita
-------------------------*/

/*-------------------------
VIDEO RESPONSIVE
-------------------------*/

.cont-table-video {
 float:left;
 width:50%;
 padding:5px;
}

.cont-table-video h3 {
font-size:14px;
}

.cont-rwd-video {
 float:left;
 width:100%;
 padding:10px;
}

.rwd-video {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	padding-top: 30px;
	position: relative;
	z-index: 20;
}
.rwd-video iframe,
.rwd-video object,
.rwd-video embed {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

/*-------------------------
FINE VIDEO RESPONSIVE
-------------------------*/

/* ==========================================*/
/*	FORM MAIL
/* ==========================================*/

.form-dati {
	float:left;
	width:50%;
	padding-right:5px;
	margin-bottom:10px;
}

.extra {
	width:100%;
}

.form-testo {
	float:left;
	width:100%;
	margin-bottom:10px;
}

.form-dati .dati {
	font-family: 'Open Sans', sans-serif;
	font-size:16px;
	margin-bottom:3px;
	width:100%;
	height:50px;
	border: 1px solid #dcdcdc;
	background:#fff;
	border-radius:5px;
	padding:0px 10px;
}

.form-testo .testo {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	width:100%;
	height:200px;
	border: 1px solid #dcdcdc;
	background:#ffffff;
	border-radius:5px;
	padding: 10px;
}

input:disabled {
    cursor: no-drop;
}

/* ==========================================*/
/*	FINE FORM MAIL
/* ==========================================*/

#cont-map {
	width: 100%;
	height: 400px;
	position: relative;
}

#map {
	width: 100%;
	height: 100%;
	overflow:hidden;
}

#map img {
  width: 100%;
  height: 100%;
  object-fit:cover;
}

#cont_footer {
	clear:left;
	width:100%;
	background: #187ee0;;
}

#footer {
	margin: 0 auto;
	width:100%;
	max-width:1600px;
	padding:120px 40px;
	color: #ffffff;
}

#footer:after {
	content: " ";
	display: block;
	clear:both;
}

.uno {
	float:left;
	width: 35%;
	padding:0px 50px 0px 0px;
}
.due {
	float:left;
	width: 30%;
}

.due p.privacy {
  font: 400 13px/normal "Open sans", sans-serif;
	margin-bottom:10px;
}

#cont_footer2 {
	width:100%;
	background: #106fca;;
}

#footer2 {
	margin: 0 auto;
	width:100%;
	max-width:1600px;
	padding:35px 20px 85px;
	color: rgb(0 0 0);
	font: 400 13px/1.8em "Open Sans", sans-serif;
}


#pageup {
  position: fixed;
  right: 10px;
  bottom: 10px;
  width: 40px;
  height: 40px;
  background-image: url('../images/scroll-top.png');
  background-repeat: no-repeat;
  background-size: 40px 40px;
  display: none;
  cursor: pointer;
	z-index:90;
}


.nascosto { display: none; }


.container_news {
    width: auto;
    height:190px;
    overflow: Hidden;
    margin-bottom: 30px;
}