@font-face{font-family:'PT Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/pt-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'PT Sans';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/pt-sans-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'PT Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/pt-sans-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'PT Sans';font-style:italic;font-weight:700;font-display:swap;src:url(/assets/fonts/pt-sans-latin-700-italic.woff2) format('woff2')}
/* ---- immagina/css/1140.css ---- */
/* CSS Resets */

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,address,cite,code,del,dfn,em,img,ins,q,small,strong,sub,sup,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;margin:0;padding:0}article,aside,figure,figure img,figcaption,hgroup,footer,header,nav,section,video,object{display:block}a img{border:0}figure{position:relative}figure img{width:100%}


/* ==================================================================================================================== */
/* ! The 1140px Grid V2 by Andy Taylor \ http://cssgrid.net \ http://www.twitter.com/andytlr \ http://www.andytlr.com   */
/* ==================================================================================================================== */

.container {
padding-left: 20px;
padding-right: 20px;
}

.row {
width: 100%;
max-width: 1140px;
min-width: 755px;
margin: 0 auto;
overflow: hidden;
}

.onecol, .twocol, .threecol, .fourcol, .fivecol, .sixcol, .sevencol, .eightcol, .ninecol, .tencol, .elevencol {
margin-right: 3.8%;
float: left;
min-height: 1px;
}

.row .onecol {
width: 4.85%;
}

.row .twocol {
width: 13.45%;
}

.row .threecol {
width: 22.05%;
}

.row .fourcol {
width: 30.75%;
}

.row .fivecol {
width: 39.45%;
}

.row .sixcol {
width: 48%;
}

.row .sevencol {
width: 56.75%;
}

.row .eightcol {
width: 65.4%;
}

.row .ninecol {
width: 74.05%;
margin-left: 20px;
}

.row .tencol {
width: 82.7%;
}

.row .elevencol {
width: 91.35%;
}

.row .twelvecol {
width: 100%;
float: left;
}

.last {
margin-right: 0px;
}

img, object, embed {
max-width: 100%;
}

img {
	height: auto;
}


/* Smaller screens */

@media only screen and (max-width: 1023px) {

	body {
	font-size: 0.8em;
	line-height: 1.5em;
	}
	
	}


/* Mobile */

@media handheld, only screen and (max-width: 767px) {

	body {
	font-size: 16px;
	-webkit-text-size-adjust: none;
	}
	
	.row, body, .container {
	width: 100%;
	min-width: 0;
	margin-left: 0px;
	margin-right: 0px;
	padding-left: 0px;
	padding-right: 0px;
	}
	
	.row .onecol, .row .twocol, .row .threecol, .row .fourcol, .row .fivecol, .row .sixcol, .row .sevencol, .row .eightcol, .row .ninecol, .row .tencol, .row .elevencol, .row .twelvecol {
	width: auto;
	float: none;
	margin-left: 0px;
	margin-right: 0px;
	padding-left: 20px;
	padding-right: 20px;
	}

}

/* ---- immagina/style.css ---- */
/*
Theme Name: Immagina
Theme URI: http://immagina.org/
Description: Tema personalizzato by Immagina.org
Author: Immagina
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/


/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

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 {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
body {
	line-height: 1;
}
h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
blockquote {
	quotes: none;
}
blockquote:before, blockquote:after {
	content: '';
	content: none;
}
del {
	text-decoration: line-through;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
a img {
	border: none;
}

/* = Base
-------------------------------------------------------------- */
a:link 		{ /*color: #444;*/ color: #016bb5; text-decoration: none;}
a:visited 	{ /*color: #444; */ color: #016bb5;}
a:active,
a:hover 	{ color: #1d377b; }

h1,h2,h3,h4,h5,h6 { margin:10px 0 5px; color:#444;}
h1 {line-height:1.6em; font-size:1.6em;}
h2 {line-height:1.4em; font-size:1.4em;}
h3 {line-height:1.2em; font-size:1.2em;}
h4 {line-height:1em; font-size:1em;}
h5 {line-height:1em; font-size:1em;}
h6 {line-height:1em; font-size:1em;}

.clear { clear:both; }

/* Main global 'theme' and typographic styles */
body, input, textarea { color: #666; font-size: 14px; line-height: 18px;}
input[type='text'], input[type='textarea'], select, input[type='password'], input[type='file'], input[type='submit'], textarea{ 

	border:1px solid #bbb; 
	padding:6px 6px 7px 6px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;

}

input[type='submit'] { 

	cursor:pointer;
	color:#fff;
	border:1px solid #fff;
	padding:6px 10px 6px 10px; 
	background: #00b7ea; /* Old browsers */
	background: -moz-linear-gradient(top,  #00b7ea 0%, #009ec3 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00b7ea), color-stop(100%,#009ec3)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #00b7ea 0%,#009ec3 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #00b7ea 0%,#009ec3 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #00b7ea 0%,#009ec3 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #00b7ea 0%,#009ec3 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00b7ea', endColorstr='#009ec3',GradientType=0 ); /* IE6-9 */
	
}

input[type='text']:hover, input[type='textarea']:hover, select:hover, input[type='password']:hover, input[type='file']:hover, textarea:hover,
input[type='text']:focus, input[type='textarea']:focus, select:focus, input[type='password']:focus, input[type='file']:focus, textarea:focus { 

	border:1px solid #888;
	outline:none;
	
}

input[type='submit']:hover { 

	color:#fff;
	border:1px solid #fff;
	padding:6px 10px 6px 10px; 
	background: #88bfe8; /* Old browsers */
	background: -moz-linear-gradient(top,  #88bfe8 0%, #70b0e0 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#88bfe8), color-stop(100%,#70b0e0)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #88bfe8 0%,#70b0e0 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #88bfe8 0%,#70b0e0 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #88bfe8 0%,#70b0e0 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #88bfe8 0%,#70b0e0 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#88bfe8', endColorstr='#70b0e0',GradientType=0 ); /* IE6-9 */

	
}


textarea { width:100%;height:80px; display:block;  font-size:12px; line-height:18px;}
textarea:hover, .noteordine textarea:focus {}

/* = Layout
-------------------------------------------------------------- */
	
	body { /*font-family: 'Arimo', sans-serif;*/ font-family: 'PT Sans', sans-serif; line-height: 18px; color:#666; font-size: 14px; font-weight: 400;}
	hr, .hr {display:block; width:auto; border:none; height:4px; background: #80b4d9 url('/assets/img/immagina-images-linea-home.jpg') top right no-repeat;  clear: both; margin-bottom: 8px;  }
	hr { height:2px; }
	
	b,strong { font-weight: 700; }
	
	/* Header */
	
	#topbar,
	#fascia-1 { background: #ffffff; height:120px;}
	#fascia-2 { /*background: #e4f8fb;*/ height:55px; }
	#fascia-3 { /*background: #c9edff;*/ background:transparent url('/assets/img/immagina-images-fascia-2.jpg') repeat-x; min-height:250px;}
	/*#topbar   { background: #fff url('/assets/img/immagina-images-onda-top.jpg') top center no-repeat; }*/
	
	/* Footer */
	#footer { padding:30px 0; background: #f0f0f0;}
	#footer-menu { padding-bottom: 30px; }
	#footer-menu h4 { font-size: 18px; margin-bottom:8px; color:#888;}
	#credits { font-size: 0.8em; }
	#footer-menu li { border-bottom:1px dotted #aaa; padding:5px 0;}
	
	/* Logo */
	#site-title,
	#site-title a { width:429px; height:88px; display: block; margin-top: 20px; }
	#site-title a { background: transparent url('/assets/img/immagina-images-logo.png') top left no-repeat; }
	#site-title a span { visibility: hidden;}
	
	/* Social */
	#lang { text-align: right; }
	#lang ul { display:block; }
	#lang ul, #lang li { margin:0; padding:0; list-style: none;}
	#lang li { margin-left:10px; font-size: 16px; float:right; /*color:#3463b9;*/ color:#888; /*margin-top:40px;*/ margin-top:20px; cursor: pointer; }
	#lang li:hover { color:#3463b9;}
	#lang li.lang { font-size: 1em; padding:1px 5px 1px 16px;  }
	#lang li.selected { background: #3463b9; color:#ffffff; }
	#lang li.selected a { color:#ffffff !important; }
	
	/* Search menu */
	#searchform { padding-top:10px;}
	#searchform input#s { width:200px; padding-right:30px; margin-right: 0;}
	#searchform input#searchsubmit { width:30px; height:30px; border:none; background:none; background: transparent url('/assets/img/immagina-images-cerca.jpg') 0px 4px  no-repeat; display: inline; margin-left: -30px; cursor:pointer; }
	
	/* Menu */
	#access { overflow: visible; }
	#access-menu ul,
	#access-menu li { padding:0; margin:0; list-style: none; line-height: 55px; font-size: 20px; position:relative; }
	#access-menu li { display: block; float:left; /*margin-right:10px;*/ /*text-transform: uppercase;*/ font-size: 0.9em; padding:0 5px;}
	#access-menu li:hover { /*background: #c6ebfe;*/ }
	/*#access-menu li a:before { content: "• ";  }*/
	#access-menu li a {border-right:1px dotted #6fc0de; padding-right:8px; margin-left: -1px;}
	#access-menu li a:hover {color:#6fc0de;}
	#access-menu li:hover ul { display:block;}
	
	#access-menu>ul>li.current_page_item>a,
	#access-menu>ul>li.current_page_parent>a,
	#access-menu>ul>li.current_page_ancestor>a { background:#6fc0de; color:#fff; /*background: #c6ebfe;*/ padding:8px; border:none;
		
		-webkit-border-top-left-radius: 		4px;
		-moz-border-radius-topleft: 			4px;
		border-top-left-radius: 				4px;
		-webkit-border-top-right-radius: 		0px;
		-moz-border-radius-topright: 			0px;
		border-top-right-radius: 				0px;
		-webkit-border-bottom-right-radius: 	4px;
		-moz-border-radius-bottomright: 		4px;
		border-bottom-right-radius: 			4px;
		-webkit-border-bottom-left-radius: 		0px;
		-moz-border-radius-bottomleft: 			0px;
		border-bottom-left-radius: 				0px;
	}
	
	#access-menu ul ul { display:none; position:absolute; top:55px; left:-5px; background: #fff; min-width:200px; z-index:15000;background: #fff; line-height: auto; 
		-moz-box-shadow: 	0 1px 1px rgba(0,0,0,0.3);
		-webkit-box-shadow: 0 1px 1px rgba(0,0,0,0.3);
		box-shadow:			0 1px 1px rgba(0,0,0,0.3);
		-webkit-border-top-left-radius: 		4px;
		-moz-border-radius-topleft: 			4px;
		border-top-left-radius: 				4px;
		-webkit-border-top-right-radius: 		0px;
		-moz-border-radius-topright: 			0px;
		border-top-right-radius: 				0px;
		-webkit-border-bottom-right-radius: 	4px;
		-moz-border-radius-bottomright: 		4px;
		border-bottom-right-radius: 			4px;
		-webkit-border-bottom-left-radius: 		0px;
		-moz-border-radius-bottomleft: 			0px;
		border-bottom-left-radius: 				0px;
	}
	
	#access-menu ul ul li { float:none !important; display: block; line-height:1em; height:auto; padding:5px 10px; }
	#access-menu ul ul li a { border: none; line-height: auto; margin:0; padding:0; font-size: 0.8em; display:block;}
	
	/* Evidenza */
	#bigspot { position:relative;}
	#evidenza { display:block;}
	#evidenza>img { vertical-align: middle; margin:0; padding:0; border:none; display: block; width:100%; height:auto; vertical-align: middle;
		
		/* http://border-radius.com/ */
		
		-webkit-border-top-left-radius: 		4px;
		-moz-border-radius-topleft: 			4px;
		border-top-left-radius: 				4px;
		-webkit-border-top-right-radius: 		4px;
		-moz-border-radius-topright: 			4px;
		border-top-right-radius: 				4px;
		-webkit-border-bottom-right-radius: 	0px;
		-moz-border-radius-bottomright: 		0px;
		border-bottom-right-radius: 			0px;
		-webkit-border-bottom-left-radius: 		0px;
		-moz-border-radius-bottomleft: 			0px;
		border-bottom-left-radius: 				0px;
				
	}
	
	/* Links */
	
	#link { position:absolute; top:0; right:10px; z-index: 1000; }
	#link li { position:relative; width: 278px; min-height:50px;  background: #f0f0f0 url('/assets/img/immagina-images-logo-piccolo.png') -30px top no-repeat; margin-bottom: 6px; border:1px solid #fff;  padding:10px 8px 10px 110px; 
			
	
			-moz-box-shadow: 	0px 0px 10px rgba(0,0,0,0.1);
			-webkit-box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
			box-shadow:			0px 0px 10px rgba(0,0,0,0.1);
		
		
	}
	#link li:hover { 
		-moz-box-shadow: 	0px 0px 8px rgba(0,0,0,0.4);
		-webkit-box-shadow: 0px 0px 8px rgba(0,0,0,0.4);
		box-shadow:			0px 0px 8px rgba(0,0,0,0.4);
		/*background: #fff;*/
	}
	#link li a { font-size: 18px; /*color: #142553;*/ color: #016bb5; font-weight: 500;}
	
	.relatedlinkimg { position:absolute; top:5px; left:5px; border:2px solid #fff; vertical-align: middle; }
	.relatedlinkimg img { vertical-align: middle;  }	
	
	/* = Content
	-------------------------------------------------------------- */
	#main { padding: 0 0 30px 0; min-height: 250px;}
	
	/* Homepage */
	body.home #main { background: #fff; }
	body.home .content.row.first { background: none !important; margin-top: 20px !important; overflow: visible;}
	/* Spot */
	
	.spot-homepage { 
		
		/*background: #f5f5f5;*/
		/* http://www.css3.info/preview/box-shadow/ */
		-moz-box-shadow: 	0px 0px 5px rgba(0,0,0,0.4);
		-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
		box-shadow:			0px 0px 5px rgba(0,0,0,0.4);
		background-color: #ffffff;
		background-image: url('/assets/img/immagina-images-logo_background.png');
		background-position: bottom right;
		
	}
	.spot-homepage:hover {
		-moz-box-shadow: 	0px 0px 8px rgba(0,0,0,0.4);
		-webkit-box-shadow: 0px 0px 8px rgba(0,0,0,0.4);
		box-shadow:			0px 0px 8px rgba(0,0,0,0.4);
		/*background: #fff;*/
	}
	.spot-homepage.first { margin-left: 0px; }
	.spot-homepage p { margin:8px 0; }
	.spot-homepage h3 { text-transform: uppercase; padding:15px 10px 5px; margin:0 -10px; }
	.spot-homepage img { width:100% !important; height:auto !important; margin:0; border:none; }
	.spot-homepage .inside { padding:10px; padding-top:0; }
	
		
	/* Pagina */
	.content p { padding-bottom: 10px; line-height: 18px; }
	.content.row { padding-top: 20px; }
	.content.row.first { margin-top:0; background: #f0f0f0; }
	.content.row .ninecol .inside-content { /*margin-right: 20px;*/ margin-bottom: 20px;}
	.content ul li, .content ol li,
	.content ul ul, .content ol ol,
	.content ul ol, .content ol ul,
	.content ul, .content ol { margin-left: 10px;  }
	.content ul, .content ol { margin-bottom:10px; margin-top: 10px;}
	.content ul li { list-style: disc;}
	.content ol li { list-style: decimal;}
	.content blockquote { padding:20px 20px 20px 20px; font-style: italic; background: #f5f5f5; border:1px solid #ddd;}
	.content blockquote p,
	.content blockquote i { display:inline; }
	
	.content .title h1 { margin:0; padding:15px; padding-top:0px;}
	
	/* Images */
	.content img { margin: 0; height: auto;  width: auto; vertical-align: middle; }
	
	.content .alignleft,
	.content img.alignleft { display: inline; float: left; margin-right: 24px; margin-top: 4px;}
	
	.content .alignright,
	.content img.alignright { display: inline; float: right; margin-left: 24px; margin-top: 4px;}
	
	.content .aligncenter,
	.content img.aligncenter { clear: both; display: block; margin-left: auto;margin-right: auto;}
	
	.content img.alignleft,
	.content img.alignright,
	.content img.aligncenter {margin-bottom: 12px;}
	
	.content .wp-caption {margin-bottom: 20px; text-align: center;}
	.content .wp-caption p.wp-caption-text { color: #666; font-size:10px;}
	.content .wp-smiley { margin: 0;}
	
	.content .gallery { margin: 0 auto 18px;}
	.content .gallery .gallery-item { float: left; text-align: center; margin:5px;}

	.content .gallery .gallery-caption { color: #888; margin: 0 auto 5px; font-size:10px; width:130px; line-height:14px;}
	.content .gallery dl { margin: 0;}

	.content .gallery br+br {display: none;}
	.content .attachment img { display: block;margin: 0 auto; }
	
	/* Links content */
	
	#link-content, #link-content li { padding:0; margin:0; list-style: none;}
	#link-content { margin-right: 15px;}
	#link-content li{ float:right; margin-right: 5px; margin-top: 20px;}
	
	/* Sidebar */
	
	.widget-title { margin:0 0 10px 5px;}
	
	.sidebar-menu li,
	.sidebar-menu { margin: 0 !important; list-style: none !important; padding:0 !important; }
	.sidebar-menu { margin-bottom:30px !important; margin-left: 10px !important;}
	.sidebar-menu li a { display:block; border-bottom: 1px dotted #ddd; padding:5px; }
	.sidebar-menu li a:hover { background: #c6ebfe;
	
	 }
	
	.sidebar-menu li.current_page_item a,
	.sidebar-menu li.current_page_parent a,
	.sidebar-menu li.current_page_ancestor a { background: #6fc0de; color:#fff;
		border:none;
		
		-webkit-border-top-left-radius: 		4px;
		-moz-border-radius-topleft: 			4px;
		border-top-left-radius: 				4px;
		-webkit-border-top-right-radius: 		0px;
		-moz-border-radius-topright: 			0px;
		border-top-right-radius: 				0px;
		-webkit-border-bottom-right-radius: 	4px;
		-moz-border-radius-bottomright: 		4px;
		border-bottom-right-radius: 			4px;
		-webkit-border-bottom-left-radius: 		0px;
		-moz-border-radius-bottomleft: 			0px;
		border-bottom-left-radius: 				0px;
	}
	
	.content.row { background: #fff; }
	
	/* Blog */
	
	.tag-links,
	.cat-links { font-size: 12px; margin:10px 0 30px; display:block; font-style: italic;}
	.main-blog { margin:0 0 50px;}
	
	/* Breadcrumb */
	.breadcrumbs { margin-left:15px; padding-top: 15px; font-size: 12px; }
	
/* = Prodotti
-------------------------------------------------------------- */
.item-products { padding-left: 10px;}
.item-product { width:270px; border:1px solid #ddd; margin: 0px 0 15px 0px }
.item-product .inside { margin:15px;}
.item-product .img-evidenza { margin:-15px -15px 15px; display:block;}
.item-product .img-evidenza img { min-width: 100%; height:auto;}

.single-prodotti  .gallery-icon img {
	width: 139px;
	height: 139px;
}

.cf7 { background: #f5f5f5; 
		
	-webkit-border-top-left-radius: 		2px;
	-moz-border-radius-topleft: 			2px;
	border-top-left-radius: 				2px;
	-webkit-border-top-right-radius: 		3px;
	-moz-border-radius-topright: 			3px;
	border-top-right-radius: 				3px;
	-webkit-border-bottom-right-radius: 	4px;
	-moz-border-radius-bottomright: 		4px;
	border-bottom-right-radius: 			4px;
	-webkit-border-bottom-left-radius: 		5px;
	-moz-border-radius-bottomleft: 			5px;
	border-bottom-left-radius: 				5px;
}
.wpcf7-submit { margin-bottom:20px !important; font-size:18px; margin-right:67px !important; float:right !important; padding:20px !important; background: #03b818 !important}
.cf7 small { font-style: italic; }

.safe,
.offerta,
.price { font-size: 18px; font-weight: bold; border-right: 1px solid #bbb; padding:7px 10px 7px 7px; }
.offerta { text-decoration: line-through;  }
.safe,
.price { color:#ff0000}
.safe { border:none; color:#068023 }
.acquista { display:none; margin-top:20px; }
.acquisto_step { float:left; width:330px; margin-left: 20px;}

.cf7 .inside { padding:15px; border:2px dashed #ddd; }
.cf7 h2 { margin-top:0px; padding-top:0px;}
.cf7 input[type="text"], .cf7 textarea { width:305px;}

.wpcf7-not-valid-tip { border:none !important; position: static !important; background: #bbb !important; margin-top: -3px !important; margin-left:6px !important; display:inline-block;
	/* http://border-radius.com/ */
	
	-webkit-border-top-left-radius: 		0px;
	-moz-border-radius-topleft: 			0px;
	border-top-left-radius: 				0px;
	-webkit-border-top-right-radius: 		0px;
	-moz-border-radius-topright: 			0px;
	border-top-right-radius: 				0px;
	-webkit-border-bottom-right-radius: 	3px;
	-moz-border-radius-bottomright: 		3px;
	border-bottom-right-radius: 			3px;
	-webkit-border-bottom-left-radius: 		3px;
	-moz-border-radius-bottomleft: 			3px;
	border-bottom-left-radius: 				3px;
	padding:5px !important;
	color: #fff !important;
}

.wpcf7-response-output { border:none !important; margin:0px -15px -15px -15px !important; padding:15px !important}
.wpcf7-mail-sent-ng,
.wpcf7-validation-errors { background: #ffe7e7 !important; }
.wpcf7-mail-sent-ok { background:#dffbe4 !important; }

/* ---- benzi/style.css ---- */
/*
 Theme Name:   B&B CaSilvia
 Theme URI:    http://immagina.org/
 Description:  Tema personalizzato by Immagina
 Author:       Immagina.org
 Author URI:   http://immagina.org/
 Template:     immagina
 Version:      1.0.0
 Text Domain:  benzi
*/



/* =Theme customization starts here
-------------------------------------------------------------- */

a:link, a:active, a:hover { color: #0070BA; font-size: 1em;}
h1 { font-size: 2em; line-height: 2em; }
html { min-height: 100%; }
body { position:relative; background: #fff; }

body, input, textarea { vertical-align: middle; margin-bottom: 0px; margin-top: 0px; margin: left: 0.2em; }
#site-title a {
	background-image: url('/assets/img/benzi-images-logo.png');
	background-position: left bottom;
}
.clearing { clear:both; }

#wrapper {}

#footer { bottom: 0px; width: 100%; }


/* HEADER */

#header > div { padding: 0px; }
#header #topbar { padding: 0px; box-sizing:border-box; -moz-box-sizing:border-box; width: 100%; max-width: none; padding: 0% 2%;}

#topbar, #fascia-1 { height: auto; }
#site-title, #site-title a { height: 60px; }
#site-title { margin: 0px; padding: 20px 0px 0px; }
#site-title a { margin: 0px; height: 100%; }

#header #fascia-2 {
	background: #e0dee1;
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjcwJSIgc3RvcC1jb2xvcj0iI2UwZGVlMSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(top,  #ffffff 0%, #e0dee1 70%, #ffffff 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(70%,#e0dee1), color-stop(100%,#ffffff));
	background: -webkit-linear-gradient(top,  #ffffff 0%,#e0dee1 70%,#ffffff 100%);
	background: -o-linear-gradient(top,  #ffffff 0%,#e0dee1 70%,#ffffff 100%);
	background: -ms-linear-gradient(top,  #ffffff 0%,#e0dee1 70%,#ffffff 100%);
	background: linear-gradient(to bottom,  #ffffff 0%,#e0dee1 70%,#ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff',GradientType=0 );
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	height: auto;
	margin: 0px;
}
#header #fascia-2 #access {
	background: transparent;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	width: 100%;
	max-width: none;
	padding: 0% 2%;
}
#header #fascia-2 #access a {
	padding-top: 0px;
	padding-bottom: 0px;
}
#header #fascia-2 #access-menu { float: none; clear:both; border-right: 1px solid rgba(0, 0, 0, 0.2); border-left: 1px solid rgba(0, 0, 0, 0.2);}
#header #fascia-2 #access-menu li { float: none;}
#header #fascia-2 #access-menu ul ul li a { padding: 3px; font-size: 1em; white-space: nowrap;}
#header #fascia-2 .current_page_item,
#header #fascia-2 .current_page_ancestor,
#header #fascia-2 .current_page_parent { background-color: #fff; }
#header #fascia-2 #access-menu .current_page_item > a,
#header #fascia-2 #access-menu .current_page_ancestor > a,
#header #fascia-2 #access-menu .current_page_parent > a { color: #076C9F;}

#header #fascia-3 {
	background: rgb(112,191,224);
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzcwYmZlMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(top, rgba(112,191,224,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(112,191,224,1)), color-stop(100%,rgba(255,255,255,0)));
	background: -webkit-linear-gradient(top, rgba(112,191,224,1) 0%,rgba(255,255,255,0) 100%);
	background: -o-linear-gradient(top, rgba(112,191,224,1) 0%,rgba(255,255,255,0) 100%);
	background: -ms-linear-gradient(top, rgba(112,191,224,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom, rgba(112,191,224,1) 0%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#70bfe0', endColorstr='#ffffff',GradientType=0 );
	max-height: 250px;
	overflow: hidden;
}
#header #fascia-3 #evidenza > img {
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	-ms-border-radius: 0px;
	-o-border-radius: 0px;
	-khtml-border-radius: 0px;
}

#lang { line-height: 80px; }
#lang a { font-size: 1.25em; }

#searchform {
	float: right;
	padding: 0px;
	line-height: 55px;
	padding-right: 10px;
}


/* MAIN */
body.home #main { background: transparent; }

.spot-homepage {
	background: #ffffff;
	/*background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNkZGRkZGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(bottom,  #ffffff 0%, #dddddd 100%);
	background: -webkit-gradient(linear, left bottom, left top, color-stop(0%,#ffffff), color-stop(100%,#dddddd));
	background: -webkit-linear-gradient(bottom,  #ffffff 0%,#dddddd 100%);
	background: -o-linear-gradient(bottom,  #ffffff 0%,#dddddd 100%);
	background: -ms-linear-gradient(bottom,  #ffffff 0%,#dddddd 100%);
	background: linear-gradient(to top,  #ffffff 0%,#dddddd 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#dddddd',GradientType=0 );*/
	margin-top: 3%;

}

.breadcrumbs { font-weight: bold; font-size: 1.2em;}
.breadcrumbs a { font-weight: normal; }
.content.row.first { width: 100%; }
.container { padding: 0px !important; }
.row .title {
	float: none;
	margin: auto;
	max-width: 1140px;
	width: auto;
}


/*---------------- NEWS HOMEPAGE CSS -----------------------*/
#news-wrapper {
	overflow: hidden;
	margin: 0% 0% 0.5%;
	width: 100%;
	height: 140px;
	font-size: 15px;
	padding: 1%;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	/*box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3) inset;*/
	border: 1px solid #aaa;
	background-color: #fbfbfb;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	-khtml-border-radius: 3px;
	position:relative;
}
#news-wrapper-all a { text-align: right; display: block;}
#content #news-wrapper h2 { margin-top: 0px; }
#content #news-homepage {
	width: 100%;
	margin: 0px;
	position:relative;
}

#content #news-homepage a { width: 100%; }
#content #news-homepage li {
	margin: 0px;
	list-style: none;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    display: block;
    margin-bottom: 10px;
}

#header #fascia-2 { box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);}
#header #fascia-2 #access a { color: #393939; background: none; }

#header #fascia-2 #access-menu ul { /*border-left: 1px solid rgba(0, 0, 0, 0.2); border-right: 1px solid rgba(0, 0, 0, 0.2);*/ float:left;}
#header #fascia-2 #access-menu li a { margin: 0px; padding: 0px; border: none; }
#header #fascia-2 #access-menu li {
	border: none;
	border-left: 1px solid #fff;
	border-right: 1px solid rgba(0, 0, 0, 0.2);
	float:left;
	padding: 0 1em;
}
#header #fascia-2 #access-menu li:hover { background-color: #fff; }
#header #fascia-2 #access-menu li li { padding: 0.3em 0.5em;  border: none;}
#header #fascia-2 #access-menu li li a {  border-bottom: 4px solid #fff; }
#header #fascia-2 #access-menu li li:hover a { border-bottom: 4px solid #076C9F; }
#header #fascia-2 #access-menu li ul {
	padding-top: 10px;
	padding-bottom: 10px;
	left: -1px;
	border-radius: 0 0 4px 4px;
	border-top: 1px solid rgba(0, 0, 0, 0.2);
}


.sidebar-menu li.current_page_item a, .sidebar-menu li.current_page_parent a, .sidebar-menu li.current_page_ancestor a {
	background-color: #0070BA;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-ms-border-radius: 0px;
	-webkit-border-radius: 0px;
	-o-border-radius: 0px;
	-khtml-border-radius: 0px;
}
.sidebar-menu li a:hover { background-color: #E6E6E6; color: #0070BA; }

#bigspot {
	width: 100%;
	background-color: #fff;/*#006FB9;*/
	max-height: 250px;
	position: relative;
	max-width: none;

}
#evidenza {
	width: auto;
	margin: auto;
	float: none;
}
#title-evidenza {
	position:absolute;
	bottom:0px;
	left: 0px;
	width: 100%;
	text-align: right;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	padding: 20px 0px 20px;
	font-size: 1.9em;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}

.content.row { padding: 30px 15px; }
#main { /*padding-top: 4px;*/ }

.spot-homepage a { color: #444; }
.category #main .onecol, .category #main .twocol, .category #main .threecol, .category #main .fourcol, .category #main .fivecol, .category #main .sixcol, .category #main .sevencol,.category #main .eightcol, .category #main .ninecol, .category #main .tencol, .category #main .elevencol { margin-right: 2% !important; }
.category #primary .onecol,
.category #primary .twocol,
.category #primary .threecol,
.category #primary .fourcol,
.category #primary .fivecol,
.category #primary .sixcol,
.category #primary .sevencol,
.category #primary .eightcol,
.category #primary .ninecol,
.category #primary .tencol,
.category #primary .elevencol,
.archive #primary .onecol,
.archive #primary .twocol,
.archive #primary .threecol,
.archive #primary .fourcol,
.archive #primary .fivecol,
.archive #primary .sixcol,
.archive #primary .sevencol,
.archive #primary .eightcol,
.archive #primary .ninecol,
.archive #primary .tencol,
.archive #primary .elevencol,
#primary .onecol,
#primary .twocol,
#primary .threecol,
#primary .fourcol,
#primary .fivecol,
#primary .sixcol,
#primary .sevencol,
#primary .eightcol,
#primary .ninecol,
#primary .tencol,
#primary .elevencol {
	margin-right: 0px !important;
}

#primary #sidebar-menu { margin-left: 0px !important; }


.spot-homepage .spot-brands { width: auto !important; margin: auto; max-width: 100%; display: block; }

#main h2:first-child ~ h2 { margin-top: 30px; }


.sidebar-menu li a { font-size: 1.1em; }
.content img { /*max-height: 160px;*/ }

.company-item {
	min-width: 100px;
	width: 100%;
	margin: 0%;
	/*float:right;*/
	box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	/*border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-khtml-border-radius: 5px;*/
	margin-bottom: 15px;
	padding: 8px;
}

.company-item > p > a { display:block; clear: both; margin: auto; }
.company-item > p > a img { float: none; margin: auto; margin-bottom: 10px; display: block;}


.company-item.twocol { width: 49%; 	margin-left: 1%; /*margin-right: 1%;*/}
.threecol { width: 32%; margin-left: 0%; margin-right: 1%; }
.row .ninecol { width: 75.75%; }


div.wpcf7 {
	box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);
	/*border: 1px solid #0070BA;*/
	margin-top: 20px !important;
	margin-bottom: 50px !important;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	-khtml-border-radius: 5px;
}
div.wpcf7 form {  padding: 20px; position:relative; }
div.wpcf7 p { display: inline-block; width: 49%; min-width: 250px;}
div.wpcf7 p:nth-last-child(4), div.wpcf7 p:nth-last-child(5) { width: 100%; }
input[type="submit"].wpcf7-submit { background: #0070BA !important; padding: 8px !important; padding-left: 30px !important; padding-right: 30px !important; }

.wpcf7-form p.title {
	position: absolute;
	top: -28px;
	left: 10px;
	padding: 5px 10px;
	background-color: #0070BA;
	color: #fff;
	font-weight: bold;
	border-radius: 3px 3px 0px 0px;
	-amo-border-radius: 3px 3px 0px 0px;
	-webkit-border-radius: 3px 3px 0px 0px;
	-o-border-radius: 3px 3px 0px 0px;
	-ms-border-radius: 3px 3px 0px 0px;
	-khtml-border-radius: 3px 3px 0px 0px;
	cursor: pointer;
	display: visible;
}



/* ------- CSS PREVENTIVI ------- */
#preventivi { margin-top: 30px; float:left; width: 100%;}

#preventivi .wpcf7 form p:not(.title) { display: none; }

#preventivi .wpcf7 p { display: inline-block; width: 32%; margin: 0 0.5%; min-width: 150px; float:left;}
#preventivi .wpcf7 p.subtitle { width: 100%; display:block; text-align: center; font-weight: bold; margin: 15px 0; font-size: 120%;}
#preventivi .wpcf7 p:last-child { clear:both; }
span.wpcf7-list-item { display: block; }
#preventivi .wpcf7 [id^="option"]{
	width: 100% !important;
	display: none;
	padding-bottom: 10px;
	border-bottom: 1px solid #ccc;
	margin-bottom: 20px;
}
#preventivi #orsogril,
#preventivi #hormann,
#preventivi #ceteco,
#preventivi #antincendio_ninz,
#preventivi #porte_rei_ninz { width: 100%; }

#preventivi #antincendio_ninz span.wpcf7-list-item span{ white-space: nowrap; }

#preventivi .wpcf7-list-item { margin-top: 0.2em; margin-left: 0; margin: right: 0.2em; }
#preventivi .wpcf7-checkbox span.wpcf7-list-item { display: inline-block; }
#preventivi .wpcf7-checkbox span.wpcf7-list-item.first { margin-left: 0px; }
#preventivi .section .wpcf7-checkbox .wpcf7-list-item { width: 33%; margin-left: 0px; min-width: 25%; }
#preventivi .item { width: 29%; margin: 0.5% 2%; display: inline-block; }
#preventivi textarea { width: 97%; }
#preventivi strong { margin: 10px 0; display: inline-block; width: 100%;}
/*div.wpcf7 p:nth-last-child(4), div.wpcf7 p:nth-last-child(5) { width: 100%; }*/
input[type="text"],
input[type="textarea"],
select,
input[type="password"],
input[type="file"],
input[type="submit"],
textarea { max-width: 100%; }

#preventivi .wpcf7 .col-1 { width: 98%; }
#preventivi .wpcf7 .col-2 {
	width: 48%;
}
#preventivi .wpcf7 .col-2.item, #preventivi .wpcf7 .col-1.item { margin: 0.5% 0.5%; }
#preventivi .wpcf7 .col-2 .item { width: 100%; margin-left: 0px; margin-right: 0px;}
#preventivi .wpcf7 .col- .item .wpcf7-list-item { display: block; }








/* CSS Gallery */
.gallery-preview, .gallery-preview * { margin: 0px; padding: 0px; cursor: pointer; }
.gallery-item { display: inline-block; margin: 10px; list-style: none; /*width: calc(31% - 10px); min-width: 150px; max-width: 300px; height: 300px;*/ position: relative;}
.gallery-item a { display: inline-block; height:300px; position:relative; width: 100%; overflow:hidden;}
.gallery-item img { /*max-height: 100%;*/ width: 100%; margin: 0px; padding: 0px; opacity: 0.8; }
.gallery-item:hover img { opacity: 1; }
/*.gallery-item .preview-title { position: absolute; z-index: 2; bottom: 0px; left: 0px; width: 100%; background: rgba(0, 0, 0, 0.6); color: #fff; padding: 12px 4px; text-align: center; box-sizing: border-box; -moz-box-sizing: border-box; }*/
/*.gallery-item:hover .preview-title { background: rgba(0, 0, 0, 0.8); }*/





/* CONTACT FORM */
.wpcf7-response-output { position: absolute ; bottom: 1.2em; }


.content .title h1, .breadcrumbs { padding-left: 0; margin-left: 0;}

#searchform input#s, #searchform, #news-wrapper, .spot-homepage, .content  {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

@media screen and (max-width: 1200px) {
	#header #fascia-2 #access-menu li, #header #fascia-2 #access-menu { border: none; }
	#searchform input#s { width: 150px; }
	#header #fascia-2 .current_page_item,
	#header #fascia-2 .current_page_ancestor,
	#header #fascia-2 .current_page_parent { background:transparent;}
}
@media screen and (max-width: 914px) {
	#searchform input#s { display: block; float: none; width: 100%; }
	#searchform { position:relative; min-width: 150px; width: 100%; padding: 0;}
	#header #fascia-2 #access-menu { padding: 10px 0; }
	#searchform input#searchsubmit { position:absolute; right: 0; top: 0;}
	#header #fascia-2 #access-menu > ul { float:none; padding-top: 10px; }
	#access-menu ul ul { top: 35px; }
	#header #fascia-2 #access-menu > ul > li {
		width: 24%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		text-align: center;
		line-height: 1;
		padding: 1% 0.5%;
		min-width: 90px;
		vertical-align: top;
		display: inlin-block;
		float:none;
		display: inline-block;
	}

	#lang li { line-height: 1; }
	#lang, #lang ul { display: inline-block; line-height: 1; }
	#news-wrapper { display:block; margin:auto; }
	#content #news-homepage a, .news-item-inside p { display:block; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
}

@media screen and (max-width: 650px) {
	#content .spot-homepage {
		width: auto;
		display:block;
		margin:auto;
		margin-bottom: 10px;
	}
	.content.row.first { box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box;}
	#fascia-3 { min-height: 0; }
}

/* ---- casilvia.com statico: componenti e correzioni responsive ---- */
img { max-width: 100%; height: auto; }
body { line-height: 1.5; }

/* Testata: logo e icone */
#header #topbar { display: flex; align-items: center; justify-content: space-between; min-height: 90px; }
#logo, #lang { float: none !important; }
#site-title { padding: 0 !important; }
#site-title, #site-title a { height: 60px; width: 251px; max-width: 100%; }
#lang { line-height: 1 !important; }
#lang ul { display: flex; gap: 14px; justify-content: flex-end; align-items: center; }
#lang li { float: none; margin: 0; }
#lang a { color: #0070BA; display: inline-flex; }
#lang a:hover, #lang a:focus { color: #6fc0de; }

/* Menu: sottomenu con piccola animazione al posto di jQuery */
#access-menu ul ul { display: block; visibility: hidden; opacity: 0; transform: translateY(6px); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
#access-menu li:hover > ul, #access-menu li:focus-within > ul { visibility: visible; opacity: 1; transform: none; }
.menu-toggle { display: none; }

/* Hero a rotazione (testata home) */
.hero { position: relative; overflow: hidden; aspect-ratio: 1900 / 450; max-height: 450px; background: #70bfe0; }
.hero-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.2s ease; }
.hero-slide.is-active { opacity: 1; }
.hero-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
#header #fascia-3, #bigspot { max-height: none !important; }

/* Notizie home */
.news-rotator .news-item { display: none; }
.news-rotator .news-item.is-active { display: block; animation: fadein .5s ease; }
@keyframes fadein { from { opacity: 0; } to { opacity: 1; } }

/* Galleria */
.photo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px; margin: 0 0 25px; }
.photo-item { display: block; border-radius: 3px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.25); transition: box-shadow .2s, transform .2s; }
.photo-item:hover, .photo-item:focus { box-shadow: 0 4px 12px rgba(0,0,0,.35); transform: translateY(-2px); }
.photo-item img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; display: block; }
a.lightbox { cursor: zoom-in; }

/* Lightbox */
.lb { position: fixed; inset: 0; z-index: 99999; background: rgba(0,0,0,.92); display: none; align-items: center; justify-content: center; }
.lb.is-open { display: flex; }
.lb img { max-width: 92vw; max-height: 86vh; box-shadow: 0 0 30px rgba(0,0,0,.6); }
.lb button { position: absolute; background: rgba(255,255,255,.14); color: #fff; border: 0; font-size: 34px; line-height: 1; width: 52px; height: 52px; border-radius: 50%; cursor: pointer; padding: 0; }
.lb button:hover, .lb button:focus { background: rgba(255,255,255,.3); }
.lb .lb-close { top: 16px; right: 16px; }
.lb .lb-prev { left: 16px; top: 50%; transform: translateY(-50%); }
.lb .lb-next { right: 16px; top: 50%; transform: translateY(-50%); }
.lb .lb-count { position: absolute; bottom: 14px; left: 0; right: 0; text-align: center; color: #ddd; font-size: 14px; }
body.lb-lock { overflow: hidden; }

/* Mappa a richiesta */
.mappa { max-width: 100%; }
.map-consent { background: #f1f6fa; border: 1px solid #cfe3ef; padding: 16px; margin: 0 0 16px; max-width: 380px; }
.map-consent button { background: #0070BA; color: #fff; border: 0; padding: 9px 16px; cursor: pointer; margin: 6px 8px 6px 0; border-radius: 3px; }
.map-frame { width: 100%; max-width: 560px; height: 350px; border: 0; margin-bottom: 16px; }

/* Footer */
#credits a { color: #0070BA; }

/* ---- Mobile ---- */
@media screen and (max-width: 914px) {
  #header #topbar { min-height: 70px; }
  #logo, #lang { width: auto !important; float: none !important; }
  #site-title a { background-size: contain; }
  #lang { line-height: 1 !important; }

  .menu-toggle { display: inline-flex; align-items: center; gap: 4px; flex-direction: column; justify-content: center;
    background: none; border: 0; padding: 10px 14px; cursor: pointer; color: #393939; position: relative; }
  .menu-toggle span { display: block; width: 24px; height: 2px; background: currentColor; transition: transform .2s, opacity .2s; }
  .menu-toggle b { font-weight: normal; font-size: 12px; text-transform: uppercase; letter-spacing: 1px; }
  #access-menu.is-open .menu-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  #access-menu.is-open .menu-toggle span:nth-child(2) { opacity: 0; }
  #access-menu.is-open .menu-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

  #header #fascia-2 #access-menu { padding: 0 !important; }
  #header #fascia-2 #access-menu > ul { display: none !important; float: none !important; padding: 0 !important; }
  #header #fascia-2 #access-menu.is-open > ul { display: block !important; animation: fadein .25s ease; }
  #header #fascia-2 #access-menu > ul > li { display: block !important; width: auto !important; text-align: left !important;
    padding: 0 !important; border-top: 1px solid rgba(0,0,0,.1); line-height: 1 !important; }
  #header #fascia-2 #access-menu > ul > li > a { display: block; padding: 14px 16px !important; font-size: 16px; }
  #access-menu ul ul { display: none !important; }

  .hero { aspect-ratio: 16 / 9; }
  .row, .container { max-width: 100% !important; box-sizing: border-box; }
  .row .ninecol, .row .threecol, .inside-content, .widget-area { box-sizing: border-box; max-width: 100%; }
  .row .ninecol, .row .threecol { padding-left: 0 !important; padding-right: 0 !important; }
  #news-wrapper, #content #news-homepage, #content #news-homepage li { height: auto !important; min-height: 0 !important; }
  #content .spot-homepage { width: auto; }
  .row .ninecol, .row .threecol, .row .eightcol, .row .fourcol { width: 100% !important; float: none !important; margin-left: 0 !important; }
  .widget-area .sidebar-menu { margin-bottom: 20px; }
  .content { padding-left: 4% !important; padding-right: 4% !important; }
  #content #news-homepage a, .news-item-inside p { white-space: normal !important; }
}
@media screen and (max-width: 650px) {
  .photo-grid { grid-template-columns: repeat(3, 1fr); gap: 6px; }
  .contatti, .mappa { width: 100% !important; float: none !important; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-slide, .photo-item, #access-menu ul ul { transition: none; }
  .news-rotator .news-item.is-active, #header #fascia-2 #access-menu.is-open > ul { animation: none; }
}

/* Leggibilità testi delle pagine */
.inside-content { font-size: 15px; line-height: 1.65; }
.widget-area .sidebar-menu a { font-size: 14px; }
