/*
	Theme Name: Digitalia
	Theme URI: https://www.unicoperlimpresa.com/
	Description: Portali per informazioni e formazioni
	Version: 1.4.3
	Author: Jacopo Zane
	Author URI: https://www.digitalia.srl
	Tags: HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
	margin: 0;
	padding: 0;
}

/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
}
body {
	overflow-y: scroll;
	font-family: "Hanken Grotesk", sans-serif;
	background-color: #fffff9;
}
body.navmenu_open {
	overflow-y: hidden;
}
section {
	overflow: hidden;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

aside {
	max-width: 100%;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
.grecaptcha-badge {
	display: none;
}
img {
	max-width:100%;
	width: 100%;
	height: auto;
}
picture {
	display: grid;
}
.ios .parallax {
	background-attachment: scroll !important;
}
a {
	color:#3e3e3e;
	text-decoration:none;
	cursor: pointer;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
}
ul {
	list-style-type: none;
}
h1,h2,h3,h4,h5,h6,p {
	padding: 0;
	margin: 0;
	font-weight: normal;
}
h1 {
	line-height: 1.2;
	font-weight: 700;
}
h2 {
	line-height: 1.2;
	font-weight: 600;
}
h3 {
	line-height: 1.2;
}
h4 {
}
h5 {
}
h6 {
}
strong, b {
}
.divider {
	
}
.pulsante {
	border-radius: 30px;
	width: 150px;
	display: inline-block;
	text-align: center;
	border: 1px solid;
	padding: 5px 0;
	transition-duration: 0.5s;
}
.pulsante:hover {
	background-color: #fff;
	color: #00558B;
	transition-duration: 0.5s;
}
.blocco {
	position: relative;
	overflow: hidden;
	display: flex;
}
.text {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	padding: 0 5%;
}


/* go up button */
.up-button {
	position: fixed;
	bottom: 5%;
	right: 2%;
	display: none;
	z-index: 2;
	background-color: #333;
	color: #fff;
	font-size: 20px;
	padding: 5px 10px;
	border: none;
}
.scroll .up-button {
	display: block;
}

/* bottone filtro */
.btn-filtro {
	display: inline-block;
	margin-right: 5px;
	font-size: 18px;
	padding: 10px 5px;
	background-color: #fff;
	border: 1px solid #999;
	cursor: pointer;
	user-select: none;
}
.btn-filtro.active {
	background-color: #999;
}

/* spinner */
spinner {
	display: inline-block;
	width: 80px;
	height: 80px;
}
spinner:after {
	content: " ";
	display: block;
	width: 64px;
	height: 64px;
	margin: 8px;
	border-radius: 50%;
	border: 6px solid #00558B;
	border-color: #00558B transparent #00558B transparent;
	animation: dg_loader_animation 1.2s linear infinite;
}


/*------------------------------------*\
    ELEMENTI
\*------------------------------------*/

/* SLIDE */
.slick-dots {
	position: absolute;
    right: 0;
    bottom: 5%;
    z-index: 1;
    width: 100%;
    text-align: center;
}
.slick-dots .slick-active {
    background-color: #00558b;
}
.slick-dots li {
    display: inline-block;
    width: 8px;
    height: 8px;
    overflow: hidden;
    background-color: transparent;
    border-radius: 50%;
    margin: 20px 5px 0;
    border: 1px solid #00558b;
}
.slick-dots button {
	color: transparent;
	background-color: transparent;
	display: contents;
}
.slick-prev {
	background-image: url(img/header/left.svg);
	background-repeat: no-repeat;
	background-color: transparent;
	border: none;
	color: transparent;
	position: absolute;
	top: 45%;
	left: 0;
	z-index: 1;
	outline: none;
	width: 20px;
	height: 30px;
}
.slick-next {
	background-image: url(img/header/right.svg);
	background-repeat: no-repeat;
	background-color: transparent;
	border: none;
	color: transparent;
	position: absolute;
	top: 45%;
	right: 0;
	z-index: 1;
	outline: none;
	width: 20px;
	height: 30px;
}

/* FORM */
label {
	
}
.wpcf7-form input,
.wpcf7-form textarea {
	outline: none;
	padding: 5px;
	color: #fff;
	height: 45px;
	margin-top: 20px;
	background-color: rgba(255, 255, 255, 0.50);
	border: none;
	width: 100%;
	border-radius: 30px;
}
.wpcf7-form ::placeholder {
	color: #fff;
}
.wpcf7-form .wpcf7-acceptance input {
	height: auto;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border: 1px solid #fff;
	background-color: transparent;
	padding: 6px;
	margin-bottom: 0;
	max-width: 6px;
}
.wpcf7-form .wpcf7-acceptance input:checked {
	background-color: #fff;
}
.wpcf7-form a {
	color: #fff;
	text-decoration: underline;
}
span.wpcf7-list-item {
	margin: 0;
}
.wpcf7-form .wpcf7-submit {
	margin-top: 30px;
	border: 1px solid #fff;
	background-color: #fff;
	color: #B2926B;
    height: 45px;
    line-height: 20px;
    margin-bottom: 0;
    border-radius: 30px;
    z-index: 10;
}
.wpcf7-submit:hover {

}
div.wpcf7-response-output {
	padding: 0;
}
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output {
	border: none;
	color: #000;
}
.wpcf7-spinner {
	margin: 0;
}
.wpcf7-not-valid-tip {
	height: 0;
}
/* Style the tab */
.tab {
  	overflow: hidden;
}

/* Style the buttons that are used to open the tab content */
.tab button {
  	background-color: inherit;
  	float: left;
  	border: none;
  	outline: none;
  	cursor: pointer;
  	transition: 0.3s;
  	width: 31%;
  	border-bottom: 2px solid #999;
  	margin: 0 1%;
  	text-transform: uppercase;
  	color: #666;
  	font-size: 16px;
}

/* Create an active/current tablink class */
.tab button.active {
  	color: #ff5028;
  	border-bottom: 2px solid #ff5028;
}

/* Style the tab content */
.tabcontent {
 	display: none;
 	padding: 20px 0 0;
  	border-top: none;
}
.tabcontent h4 {
	margin-top: 20px;
}

/* Style the buttons that are used to open and close the accordion panel */
.accordion {
	background-color: #fff;
	cursor: pointer;
	padding:10px 20px;
	width: 100%;
	text-align: left;
	border: none;
	outline: none;
	transition: 0.4s;
	border: 1px solid #ccc;
	border-radius: 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.accordion::after {
	content: '';
	background-image: url(img/servizi/right.svg);
	background-position: right;
	background-repeat: no-repeat;
	transform: rotateZ(0deg);
	-o-transform: rotateZ(0deg);
	-webkit-transform: rotateZ(0deg);
	-moz-transform: rotateZ(0deg);
	-ms-transform: rotateZ(0deg);
	transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	-webkit-transition-duration: 0.5s;
	-moz-transition-duration: 0.5s;
	-ms-transition-duration: 0.5s;
	width: 10px;
	height: 20px;
}
.accordion h3 {
	display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.accordion.active, 
.accordion:hover {
	
}
.accordions {
	margin-top: 30px;
}
.active::after {
	transform: rotateZ(90deg);
	-o-transform: rotateZ(90deg);
	-webkit-transform: rotateZ(90deg);
	-moz-transform: rotateZ(90deg);
	-ms-transform: rotateZ(90deg);
	transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	-webkit-transition-duration: 0.5s;
	-moz-transition-duration: 0.5s;
	-ms-transition-duration: 0.5s;
}

/* Style the accordion panel. Note: hidden by default */
.panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-out;
	margin: 10px auto;
	text-align: left;
}
.panel p {
	margin: 10px auto;
	border: 1px solid #ccc;
	border-radius: 20px;
	padding: 20px;
	background-color: #fff;
}
/*------------------------------------*\
	LIGHTBOX
\*------------------------------------*/

.lightbox-wrapper {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 100000;
    opacity: 0;
}
.lightbox-wrapper[aria-visible="true"] {
    display: flex;
}
.lightbox-wrapper img {
    max-width: 100%;
}
.lightbox-wrapper .lightbox-background {
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.72);
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: -1;
}
.lightbox-wrapper.striped .lightbox-background {
    background: repeating-linear-gradient(
        45deg,
        rgba(0,0,0,0.66),
        rgba(0,0,0,0.66) 10px,
        rgba(0,0,0,0.64) 10px,
        rgba(0,0,0,0.64) 20px
    );
}
.lightbox-wrapper .lightbox-container {
    width: calc(100% - 40px);
    height: auto;
    z-index: 10;
    position: relative;
    color: white;
    user-select: none;
    pointer-events: none;
}
.lightbox-wrapper .lightbox-content {
    width: 100%;
    max-width: 550px;
    height: auto;
    z-index: 10;
    margin: 0 auto;
}
.lightbox-wrapper .lightbox-content * {
    margin: 0;
    padding: 0;
}
.lightbox-arrows {
    position: absolute;
    top: 0px;
    height: 100%;
    display: flex;
    align-items: center;
    font-size: 40px;
    padding: 0px 10px;
}
.lightbox-arrows.left {
    left: 0px;
}
.lightbox-arrows.right {
    right: 0px;
}
.lightbox-wrapper .lightbox-header {
    text-align: right;
}
.lightbox-wrapper .lightbox-body {
    background-color: white;
    border-radius: 2px;
    box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.67);
    margin: 10px 0px;
    overflow: hidden;
    color: #3f3f3f;
}
.lightbox-wrapper i.fa {
    cursor: pointer;
    position: relative;
}
.lightbox-wrapper .lightbox-popup {
    padding: 15px;
}
.lightbox-wrapper .lightbox-footer {
    display: flex;
}
.lightbox-wrapper .lightbox-footer-sx {
    width: calc(100% - 90px);
    font-size: 1.2em;
}
.lightbox-wrapper .lightbox-footer-dx {
    width: 90px;
    text-align: right;
}
.lightbox-wrapper .lightbox-footer h6{
    font-weight: 400;
}
.lightbox-wrapper .lightbox-footer-dx h5{
    font-weight: 200;
}
.lightbox-wrapper .lightbox-container h5,
.lightbox-wrapper .lightbox-container h6,
.lightbox-wrapper .lightbox-container img,
.lightbox-wrapper .lightbox-container i.fa {
    pointer-events: initial;
}	
.lightbox-wrapper .lightbox-container img {
	display: block;
}
.lightbox-wrapper.singolo .lightbox-arrows,
.lightbox-wrapper.singolo .lightbox-footer-dx h5 {
    display: none;
}
.lightbox-wrapper .lightbox-container a {
    color: inherit;
    text-decoration: none;
}

/*------------------------------------*\
	ANIMAZIONI
\*------------------------------------*/

.zoom {
	transition-duration: 1s;
	-webkit-transition-duration: 1s;
	-o-transition-duration: 1s;
	-moz-transition-duration: 1s;
	-ms-transition-duration: 1s;
	transform: scale(1,1);
	-webkit-transform: scale(1,1);
	-o-transform: scale(1,1);
	-ms-transform: scale(1,1);
	-moz-transform: scale(1,1);
}
.zoom:hover {
	transition-duration: 2s;
	-webkit-transition-duration: 2s;
	-o-transition-duration: 2s;
	-moz-transition-duration: 2s;
	-ms-transition-duration: 2s;
	transform: scale(1.1,1.1);
	-webkit-transform: scale(1.1,1.1);
	-o-transform: scale(1.1,1.1);
	-ms-transform: scale(1.1,1.1);
	-moz-transform: scale(1.1,1.1);
}
.szoom {
	transition-duration: 1s;
	-webkit-transition-duration: 1s;
	-o-transition-duration: 1s;
	-moz-transition-duration: 1s;
	-ms-transition-duration: 1s;
	transform: scale(1,1);
	-webkit-transform: scale(1,1);
	-o-transform: scale(1,1);
	-ms-transform: scale(1,1);
	-moz-transform: scale(1,1);
}
.szoom:hover {
	transition-duration: 1s;
	-webkit-transition-duration: 1s;
	-o-transition-duration: 1s;
	-moz-transition-duration: 1s;
	-ms-transition-duration: 1s;
	transform: scale(0.9,0.9);
	-webkit-transform: scale(0.9,0.9);
	-o-transform: scale(0.9,0.9);
	-ms-transform: scale(0.9,0.9);
	-moz-transform: scale(0.9,0.9);
}

.rotation {
	transform: rotateZ(0deg);
	-moz-transform: rotateZ(0deg);
	-webkit-transform: rotateZ(0deg);
	-ms-transform: rotateZ(0deg);
	-o-transform: rotateZ(0deg);
	transition-duration: 0.8s;
	-webkit-transition-duration: 0.8s;
	-moz-transition-duration: 0.8s;
	-ms-transition-duration: 0.8;
	-o-transition-duration: 0.8s;
}
.rotation:hover {
	transform: rotateZ(360deg);
	-moz-transform: rotateZ(360deg);
	-webkit-transform: rotateZ(360deg);
	-ms-transform: rotateZ(360deg);
	-o-transform: rotateZ(360deg);
	transition-duration: 0.8s;
	-webkit-transition-duration: 0.8s;
	-moz-transition-duration: 0.8s;
	-ms-transition-duration: 0.8;
	-o-transition-duration: 0.8s;
}
.rotation-inverse {
	animation-name: rotation-inverse;
	-webkit-animation: rotation-inverse;
	-ms-animation-name: rotation-inverse;
	-moz-animation-name: rotation-inverse;
	animation-timing-function: linear;
	-webkit-animation-timing-function: linear;
	-ms-animation-timing-function: linear;
	-moz-animation-timing-function: linear;
	animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	-ms-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	animation-duration: 6s;
	-webkit-animation-duration: 6s;
	-ms-animation-duration: 6s;
	-moz-animation-duration: 6s;
}
.lampeggio {
	position: fixed;
	max-width: 50px;
	bottom: 2%;
	right: 2%;
	opacity: 0;
	animation-name: lampeggio;
	-webkit-animation: lampeggio;
	-ms-animation-name: lampeggio;
	-moz-animation-name: lampeggio;
	animation-timing-function: linear;
	-webkit-animation-timing-function: linear;
	-ms-animation-timing-function: linear;
	-moz-animation-timing-function: linear;
	animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	-ms-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	animation-duration: 3s;
	-webkit-animation-duration: 3s;
	-ms-animation-duration: 3s;
	-moz-animation-duration: 3s;
}
.pulsazione {
	animation-name: pulsazione;
	-webkit-animation: pulsazione;
	-ms-animation-name: pulsazione;
	-moz-animation-name: pulsazione;
	animation-timing-function: linear;
	-webkit-animation-timing-function: linear;
	-ms-animation-timing-function: linear;
	-moz-animation-timing-function: linear;
	animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	-ms-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	animation-duration: 5s;
	-webkit-animation-duration: 5s;
	-ms-animation-duration: 5s;
	-moz-animation-duration: 5s;
}

@keyframes rotation-inverse {
	0% {transform: rotateZ(0);}
	25% {transform: rotateZ(-90deg);}
	50% {transform: rotateZ(-180deg);}
	75% {transform: rotateZ(-270deg);}
	100% {transform: rotateZ(-360deg);}
}

@keyframes lampeggio {
	0% {opacity:0;}
	25% {opacity:0.5;}
	50% {opacity:1;}
	75% {opacity:0.5;}
	100% {opacity:0;}
}

@keyframes pulsazione {
	0% {transform: scale(0.5,0.5);}
	25% {transform: scale(0.65,0.65);}
	50% {transform: scale(0.75,0.75);}
	75% {transform: scale(0.65,0.65);}
	100% {transform: scale(0.5,0.5);}
}

@keyframes dg_loader_animation {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
/* --------------------- POPUP INFORMATIVO ------------------------------ */
.popup-info {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    padding: 10px;
    justify-content: center;
    align-items: center;
}
.popup-info .overlay {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: -1;
    background-color: rgba(0, 0, 0, 0.5);
}
.popup-info .popup {
    width: 100%;
    max-width: 400px;
    display: block;
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    z-index: 1001;
    height: fit-content;
}
.popup-info .popup h2 {
    margin-top: 0;
}
.popup-info .popup button {
    display: block;
    margin: 10px auto;
    padding: 10px 20px;
    background-color: red;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}
/* --------------------- ASIDE ------------------------- */
.sidebar {
	padding: 60px 5%;
	text-align: center;
	background-color: #fffff9;
	border-bottom: 1px solid #00558B;
}
.sidebar .pulsante {
	margin-bottom: 30px;
}
.sidebar .pulsante:hover {
	color: #fff;
	background-color: #3e3e3e;
}
.sidebar .newsletter {
	margin-top: 60px;
}
.sidebar #mailpoet_form_1 .mailpoet_text {
	color: #3e3e3e;
	border: 1px solid #3e3e3e;
	padding: 10px;
}
.sidebar #mailpoet_form_1 .mailpoet_submit {
	border: 1px solid #00558B;
    background-color: #00558B;
    color: #fff;
}
.sidebar ::placeholder {
	color: #3e3e3e;
}
.sidebar #mailpoet_form_1 form.mailpoet_form {
	flex-direction: column;
	display: flex;
	align-items: center;
}
.sidebar h3 {
	color: #3e3e3e;
	padding-bottom: 20px;
}
.sidebar .mailpoet_paragraph {
	width: 80% !important;
}
.news-filtri_laterali p {
	padding-top: 10px;
	font-size: 20px;
}
.sidebar input[type=checkbox] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border: 1px solid #404040;
	background-color: transparent;
	padding: 6px;
	margin-bottom: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
}
.sidebar input[type=checkbox]:checked {
	background-color: #404040;
}
.sidebar select,
.sidebar input[type=date],
.sidebar input[type=search] {
	background-color: transparent;
	border: 1px solid;
	height: 40px;
}
.sidebar input[type=date] {
	width: 49%;
	padding-left: 10px;
	border-radius: 10px;
}
.sidebar input[type=search] {
	width: 100%;
	border-radius: 10px;
}
.sidebar select {
	width: 100%;
	border-radius: 10px;
}
.sidebar ::placeholder {
	padding-left: 10px;
}
/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------

@font-face {
	font-family:'Heebo-Light';
	src:url('fonts/Heebo-Light/Heebo-Light.eot');
	src:url('fonts/Heebo-Light/Heebo-Light.eot?#iefix') format('embedded-opentype'),
		url('fonts/Heebo-Light/Heebo-Light.woff') format('woff'),
		url('fonts/Heebo-Light/Heebo-Light.ttf') format('truetype'),
		url('fonts/Heebo-Light/Heebo-Light.svg#Heebo-Light') format('svg');
    font-weight:normal;
    font-style:normal;
}*/


/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
/* page loader*/
loader {
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 0px;
	left: 0px;
	z-index: -1;
	user-select: none;
	pointer-events: none;
}
.pagina_caricata loader {
	display: none;
}
/* main */
main {
	min-height: 640px;
}
/* wrapper */
.wrapper {
	width:100%;
	margin: 0 auto;
	max-width: 100vw;
	opacity: 0.0;
	transition: opacity 0.46s ease;
}
.pagina_caricata .wrapper {
	opacity: 1;
}
.content {
	max-width:100%;
	width:90%;
	margin:0 auto;
	position:relative;
}
/* header */
.header {
	position: absolute;
	width: 100%;
	height: 100px;
    line-height: 150px;
	top: 0px;
	transition: all 1s linear;
	display: flex;
	align-items: center;
	justify-content: space-between;
	line-height: 0;
}
.wpml-ls-legacy-list-horizontal {
	padding: 0;
}
.wpml-ls-legacy-list-horizontal a {
	padding: 10px 0 0;
}
.wpml-ls-current-language {
	padding-right: 5px !important;
}
/* logo */
.logo {
	position: absolute;
	top: 10%;
	left: 5%;
	z-index: 20;
}
.logo img {
	max-width: 180px;
}
.logo .black {
	display: none;
}
/* nav */
.nav {
	user-select: none;
	pointer-events: none;
	background-color: #00558B;
	display: flex;
	color: #fff;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	justify-content: center;
	align-items: center;
	background-image: url(img/header/favicon.svg);
	background-size: 20% auto;
	background-repeat: no-repeat;
	background-position: right bottom;
	background-position-x: 95%;
	background-position-y: 95%;
	transition: opacity 0.7s linear;
	opacity: 0;
}
.navmenu_open .nav {
	user-select: none;
	pointer-events: unset;
	opacity: 1.0;
}
.mobile .navmenu_close .nav { 
	opacity: 0.0;  
} 
.nav a {
	color: #fff;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.nav a:hover {
	border-bottom: 1px solid #fff;
}
.nav .current_page_item a {
	border-bottom: 1px solid #fff;
	font-weight: bold;
}
.nav ul {
	list-style-type: none;
	width: 100%;
	height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.nav ul li {
	padding: 15px 0;
	line-height: 1;
}
.button a {
	border-radius: 30px;
	border: 1px solid;
	padding: 10px;
	display: block;
	transition-duration: 0.5s;
}
.button a:hover {
	text-decoration: none;
	background-color: #fff;
	color: #00558B;
	transition-duration: 0.5s;
}
/* closebutton */
.openclose {
	position: absolute;
	top: 35%;
	right: 5%;
	z-index: 90;
	cursor: pointer;
	display: block;
}
.navmenu_open .openclose {
	display: flex;
}
.openclose .iconbar {
	height: 2px;
	width: 20px;
	background-color: #fff;
	display: block;
	margin: 5px 0;
	transition-duration: 1s;
	-webkit-transition-duration: 1s;
	-o-transition-duration: 1s;
	-moz-transition-duration: 1s;
	-ms-transition-duration: 1s;
}
.openclose img {
	max-width: 20px;
}
.openclose .uno {
	width: 20px;
}
.openclose .tre {
	width: 20px;
}
.openclose:hover .uno {
	width: 20px;
}
.openclose:hover .tre {
	width: 20px;
}
/* footer */
.footer {
	text-align: left;
	position: relative;
	z-index: 2;
}
.footer a {
	color: #fff;
}
.footer img {
	max-width: 250px;
}
.footer > div {
	width: 100%;
}
.footer .copyright {
	padding: 20px 0 30px;
	border-top: 1px solid #fff;
	margin-top: 20px;
	font-size: 12px;
}
.footer h3 {
	font-size: 18px;
	padding: 30px 0 20px;
}
.footer .menu a {
	font-size: 16px;
}
.footer img {
	margin-top: 30px;
}


/*------------------------------------*\
    PAGES
\*------------------------------------*/

/*--------------BLOG------------------*/
.pagina-del-blog {
	display: flex;
}
.pagina-del-blog > main {
	width: 70%;
}
.pagina-del-blog > aside.sidebar {
	width: 30%;
}


/*--------------HOME------------------*/
#home .row-1 {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: left center;
	height: 100vh;
	width: 100%;
	position: relative;
}
#home .row-1 .text {
	background-image: linear-gradient(to bottom, #000 -50%, transparent 30%);
}
#home .row-1 p {
	color: #fff;
	padding: 30px 0 10px;
}
#home .row-1 input[type=text] {
	background-color: #fff;
	padding: 20px;
	color: #404040;
	max-width: 500px;
	margin: 0 auto;
	border-radius: 30px;
	border: none;
}
#home .row-1 ::placeholder {
	color: #404040;
}
.row-2 {
	padding: 60px 5% 30px;
	text-align: center;
}
.row-2 ul {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.row-2 ul li {
	margin-bottom: 10px;
}
.row-2 .button a {
	width: 300px;
	padding: 10px 0 !important;
	font-size: 20px;
	font-weight: bold;
}
.blu.button a {
	color: #00558B;	
	border: 2px solid #00558B;
	transition-duration: 0.5s;
}
.blu.button a:hover {
	background-color: #00558B;
	color: #fff;
	transition-duration: 0.5s;
}
.light-blu.button a {
	color: #0288DD;	
	border: 2px solid #0288DD;
	transition-duration: 0.5s;
}
.light-blu.button a:hover {
	background-color: #0288DD;
	color: #fff;
	transition-duration: 0.5s;
}
.gold.button a {
	color: #B2926B;	
	border: 2px solid #B2926B;
	transition-duration: 0.5s;
}
.gold.button a:hover {
	background-color: #B2926B;
	color: #fff;
	transition-duration: 0.5s;
}
#home .row-3 {
	padding: 30px 5%;
	text-align: center;
}
#home .row-3 h2 {
	padding-bottom: 20px;
}
#home .row-4 {
	background-color: #00558B;
	color: #fff;
	padding: 60px 60px 60px 30px;
	border-radius: 0px 200px 200px 0px;
	text-align: left;
	margin-right: 5%;
	margin-top: 30px;
	position: relative;
	z-index: 2;
}
#home .row-4 h3 {
	padding-bottom: 20px;
}
#home .row-4 .pulsante {
	color: #00558B;
	background-color: #fff;
	border: 1px solid #fff;
	margin: 20px 0;
	text-decoration: none;
	padding: 10px 0;
}
#home .row-4 .pulsante:hover {
	background-color: transparent;
	color: #fff;
}
#home .row-4 a {
	color: #fff;
	text-decoration: underline;
}
#home .row-5 {
	background-color: #B2926B;
	color: #fff;
	padding: 60px 30px 60px 30px;
	border-radius: 200px 0px 0px 200px;
	text-align: right;
	margin-left: 5%;
	margin-top: -30px;
	margin-bottom: 30px;
}
#home .row-5 h3 {
	padding-bottom: 20px;
}
#home .row-5 .right {
	padding-top: 20px;
}
#mailpoet_form-2 h3 {
	display: none;
}
#mailpoet_form_1 form.mailpoet_form {
	display: flex;
	flex-wrap: wrap;
	padding: 0 !important;
	justify-content: space-between;
}
#mailpoet_form_1 form.mailpoet_form .mail {
	width: 70%;
}
#mailpoet_form_1 form.mailpoet_form .invio {
	width: 28%;
}
.mailpoet_text {
	margin-right: -30px;
	padding: 5px 30px 5px 20px !important;
	outline: none;
	padding: 5px;
	color: #fff;
	height: 45px;
	margin-top: 20px;
	background-color: rgba(255, 255, 255, 0.50);
	border: none;
	width: 100%;
	border-radius: 30px;
}
.row-5 ::placeholder {
	color: #fff;
}
.mailpoet_checkbox_label {
	width: 80%;
	display: block;
	margin-left: 10%;
	text-align: left;
	margin-top: 10px;
}
.mailpoet_checkbox_label input {
	height: auto;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border: 1px solid #fff;
	background-color: transparent;
	padding: 6px;
	margin-bottom: 0;
	max-width: 6px;
	border-radius: 30px;
}
.mailpoet_checkbox_label input:checked {
	background-color: #fff;
}
 .mailpoet_submit {
	margin-top: 30px;
	border: 1px solid #fff;
	background-color: #fff;
	color: #B2926B;
	height: 45px;
	line-height: 20px;
	margin-bottom: 0;
	border-radius: 30px;
	z-index: 10;
}
.parsley-required, .parsley-custom-error-message {
	font-size: 16px;
	margin-left: 30px
}
#home .row-6 {
	padding: 30px 5%;
}
.row-news {
	padding: 30px 5%;
}
.row-news h3 {
	color: #404040;
	padding-bottom: 20px;
}
.row-news .flex div {
	border-radius: 30px;
	padding: 30px;
	box-shadow: 0 0.2rem 2.8rem rgb(36 36 36 / 10%);
	margin-bottom: 30px;
	background-color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.row-news .flex p {
	padding-bottom: 15px;
}
.row-news .flex a {
	text-decoration: underline;
	text-transform: uppercase;
	font-size: 14px;
}

/*--------------ACCEDI------------------*/
.accedi .header {
	border-bottom: 1px solid;
	position: relative;
}
.accedi .logo .black {
	display: block;
}
.accedi .logo .white {
	display: none;
}
.accedi.navmenu_open .logo .white {
	display: block;
}
.accedi.navmenu_open .logo .black {
	display: none;
}
.accedi .openclose .iconbar {
	background-color: #404040;
}
#accedi .row-1 {
	padding: 60px 5%;
	display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
#accedi .row-1 h1 {
	color: #404040;
	margin-bottom: 60px;
	text-align: center;
}
#accedi .row-3 {
	text-align: center;
	padding: 0 5% 60px;
}
#accedi h2 {
	padding-bottom: 20px;
}
#accedi form {
	max-width: 400px;
	margin: 0 auto;
	width: 100%;
}
#accedi form label {
	margin-bottom: 10px;
}
#accedi .login-username,
#accedi .login-password {
	display: flex;
	flex-direction: column;
	justify-content: start;
}
#accedi form input {
	background-color: #fff;
	height: 50px;
	margin-bottom: 30px;
	border: none;
	border: 1px solid #404040;
	border-radius: 30px;
	padding: 20px;
}
#accedi .button {
	background-color: #00558b;
	color: #fff;
	height: 50px;
	display: block;
	width: 100%;
	border: none;
	border-radius: 30px;
	padding: 0;
}
#accedi .button:hover {
	opacity: 0.8;
}
#accedi a {
	text-decoration: underline;
	margin-top: 20px;
	display: block;
}
/*--------------REGISTRAZIONE------------------*/
.registrazione .header {
	border-bottom: 1px solid;
	position: relative;
}
.registrazione .logo .black {
	display: block;
}
.registrazione .logo .white {
	display: none;
}
.registrazione.navmenu_open .logo .white {
	display: block;
}
.registrazione.navmenu_open .logo .black {
	display: none;
}
.registrazione .openclose .iconbar {
	background-color: #404040;
}
#registrazione .row-1 {
	padding: 60px 0;
}
#registrazione .row-1 h1 {
	color: #404040;
	margin-bottom: 20px;
}
#registrazione form {
	margin-top: 60px;
	background-color: #fff;
	padding: 30px 5%;
	box-shadow: 0 0.2rem 2.8rem rgb(36 36 36 / 10%);
	border-radius: 20px;
}
#registrazione form h3 {
	font-size: 20px;
	padding: 30px 0 10px;
}
#registrazione form p {
	display: flex;
	flex-direction: row;
	align-items: baseline;
	justify-content: start;
}
#registrazione input,
#registrazione textarea {
	outline: none;
	padding: 5px 5px 5px 10px;
	color: #000;
	height: 40px;
	margin-top: 10px;
	background-color: rgba(255, 255, 255, 0.50);
	border: none;
	width: 100%;
	border-radius: 30px;
	border: 1px solid #ccc;
}
#registrazione ::placeholder {
	color: #000;
}
#registrazione input[type=checkbox],
#registrazione input[type=radio] {
	height: auto;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border: 1px solid #000;
	background-color: transparent;
	padding: 6px;
	margin-bottom: 0;
	max-width: 6px;
}
#registrazione input[type=radio] {
	margin-left: 10px;
}
#registrazione input[type=checkbox]:checked,
#registrazione input[type=radio]:checked {
	background-color: #000;
}
#registrazione form a {
	color: #fff;
	text-decoration: underline;
}
#registrazione input[type=submit] {
	background-color: #00558b;
	color: #fff;
	height: 50px;
	display: block;
	width: 100%;
	border: none;
	border-radius: 30px;
	padding: 0;
	text-transform: uppercase;
	font-weight: bold;
	margin-top: 30px;
}
#registrazione input[type=file] {
	border: none;
}
#registrazione .form-lista-account,
#registrazione .form-griglia-iscrizione {
	grid-template-columns: 1fr;
}
#registrazione .uisc-dropzone {
	margin: 10px 0;
}
#registrazione .testo {
	text-align: center;
}
#registrazione .uisc-dropzone p {
	flex-direction: column;
	align-items: center;
}
/*--------------CATEGORIE------------------*/
.pagine-categorie .intro {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 50vh;
	width: 100%;
}
.pagine-categorie h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: 700;
	text-align: center;
	padding: 0 5%;
	max-width: 1240px;
	margin: 0 auto;
}
.pagine-categorie h2 {
	text-align: center;
	padding: 60px 0 40px;
}
.pagine-categorie .row-2 {
	padding: 0;
	font-weight: 700;
}
.pagine-categorie section {
	padding: 60px 5%;
	background-color: #fffff9;
}
.pagine-categorie .lista {
	display: flex;
	justify-content: start;
	flex-direction: row;
	flex-wrap: wrap;
}
.pagine-categorie .lista a {
	width: 46%;
	text-align: center;
	border-radius: 20px;
	box-shadow: 0 0.2rem 2.8rem rgb(36 36 36 / 10%);
	padding: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	margin-bottom: 4%;
	background-color: #fff;
	margin: 2%;
}
.pagine-categorie .lista a img {
	max-width: 40px;
	max-height: 40px;
	transition-duration: 0.5s;
	overflow: hidden;
}
.pagine-categorie .lista a:hover img {
	max-width: 60px;
	max-height: 60px;
	transition-duration: 0.5s;
	overflow: hidden;
}
.pagine-categorie .lista h3 {
	color: #00558B;
	font-size: 16px !important;
	font-weight: 700;
	text-transform: uppercase;
	padding: 20px 0;
}
.pagine-categorie .lista p {
	text-transform: uppercase;
	text-decoration: underline;
	color: #00558B;
	font-weight: 300;
}
/*--------------MODELLI E NEWS------------------*/
.news .lista,
.modelli .lista {
	display: flex;
	justify-content: start;
	flex-direction: row;
	flex-wrap: wrap;
	padding: 0 5% 30px;
}
.news .lista a,
.modelli .lista a {
	width: 100%;
	text-align: left;
	border-radius: 20px;
	box-shadow: 0 0.2rem 2.8rem rgb(36 36 36 / 10%);
	padding: 30px;
	display: flex;
	align-items: start;
	justify-content: space-between;
	flex-direction: column;
	margin-bottom: 8%;
	background-color: #fff;
}
.news .lista a:hover p,
.modelli .lista a:hover p {
	border-bottom: 1px solid;
}
.news .lista h2,
.modelli .lista h2 {
	color: #404040;
	font-size: 16px !important;
	padding: 0 0 20px;
	text-align: left;
}
.news .lista p,
.modelli .lista p {
	text-transform: uppercase;
	color: #404040;
	text-decoration: none;
}
.paginazione-news {
    display: flex;
    justify-content: center;
    gap: 10px;
}
.paginazione-news .page {
    background-color: #b4b8c2;
    display: flex;
    padding: 4px 8px;
    border-radius: 5px;
    min-width: 30px;
    text-align: center;
}
.paginazione-news .page.current {
    background-color: #00558b;
    color:#fff;
}

/*--------------LISTA ARTICOLI------------------*/
.archive .intro {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 50vh;
	width: 100%;
}
.archive h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: 700;
	text-align: center;
	padding: 0 5% 30px;
	background-color: rgba(0, 0, 0, 0.3);
	margin: 0 auto;
}
.archive section {
	text-align: center;
}
.archive .indietro {
	color: #00558B;
	text-decoration: underline;
	display: inline-block;
	text-align: center;
	font-weight: 700;
	padding: 30px 0;
	margin: 0 auto;
}
.archive .indietro img {
	max-width: 10px;
	margin-right: 10px;
	transition-duration: 0.5s;
}
.archive .indietro:hover img {
	transform: translateX(-10px);
	transition-duration: 0.5s;
}
.archive .lista.unico-articoli {
	justify-content: center;
}
.archive .lista {
	display: flex;
	justify-content: start;
	flex-direction: row;
	flex-wrap: wrap;
	padding: 0 5% 30px;
}
.archive .lista a {
	width: 100%;
	height: auto;
	text-align: left;
	border-radius: 20px;
	box-shadow: 0 0.2rem 2.8rem rgb(36 36 36 / 10%);
	padding: 30px;
	display: flex;
	align-items: start;
	justify-content: space-between;
	flex-direction: column;
	margin-bottom: 8%;
	background-color: #fff;
}
.archive .lista a:hover p {
	border-bottom: 1px solid;
}
.archive .lista a:hover .excerpt-articolo {
	border-bottom: none;
}
.archive .lista h2 {
	color: #404040;
	font-size: 18px !important;
	padding: 0 0 20px;
}
.archive .lista p {
	text-transform: uppercase;
	color: #404040;
}
.archive .gruppo-input {
	text-align: left;
}
.archive .gruppo-input label {
	padding-top: 10px;
	padding-bottom: 5px;
	display: block;
	font-weight: bold;
	text-transform: uppercase;
}
.archive .tag-selection input {
	margin-right: 10px;
}
.archive .date-selection .data {
	margin-bottom: 10px;
	display: flex;
	justify-content: space-between;
}
.archive h3 {
	font-size: 40px;
	font-weight: bold;
}
.archive .excerpt-articolo {
	padding-bottom: 20px;
}
/*--------------ARTICOLO SINGOLO------------------*/
.single .intro {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 50vh;
	width: 100%;
}
.single h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: 700;
	text-align: center;
	padding: 0 5%;
	margin: 0 auto;
	background-color: rgba(0, 0, 0, 0.3);
}
.single .content {
	padding: 30px 0;
}
.single .content h2 {
	padding-bottom: 20px;
}
.single .content .date {
	font-style: italic;
	font-weight: 700;
	padding-bottom: 10px;
	display: block;
}
.single .content h4 {
	font-weight: 700;
	padding-top: 30px;
	border-top: 1px solid #00558b;
	margin-top: 30px;
}
.single .testo img {
	max-width: 70px;
	margin:40px 20px 40px 0;
}
.single .testo p {
	padding: 0 !important;
}
.single .testo a {
	text-decoration: underline;
}
.single .share {
	display: flex;
	align-items: center;
	justify-content: start;
	flex-direction: row;
}
.single .share img {
	max-width: 30px;
	margin: 10px;
}
.single .correlati {
	padding: 30px 0;
}
.single .correlati h3 {
	color: #00558B;
	text-align: center;
	padding-bottom: 30px;
}
.single .correlati a {
	width: 100%;
	height: auto;
	text-align: left;
	border-radius: 20px;
	box-shadow: 0 0.2rem 2.8rem rgb(36 36 36 / 10%);
	padding: 30px;
	display: flex;
	align-items: start;
	justify-content: space-between;
	flex-direction: column;
	margin-bottom: 8%;
	background-color: #fff;
}
.single .correlati h2 {
	color: #404040;
	font-size: 18px !important;
	padding: 0 0 20px;
}
.single .correlati p {
	text-transform: uppercase;
	color: #404040;
}
.single .correlati .lista a:hover p {
	border-bottom: 1px solid;
}
.single ul {
	list-style-type: disc;
	list-style-position: inside;
}
/*--------------CONTATTI------------------*/
#contatti .row-1 {
	background-color: #00558b;
	color: #fff;
	padding: 120px 5% 60px;
	text-align: center;
}
#contatti .row-1 h1 {
	padding-bottom: 10px;
}
#contatti b {
	color: #00558b;
}
#contatti .row-3 {
	text-align: left;
	padding: 60px 5%;
}
#contatti .row-3 .right {
	padding-top: 60px;
	text-align: center;
}
#contatti .wpcf7-form input, 
#contatti .wpcf7-form textarea {
	color: #404040;
	border: 1px solid #404040;
	border-radius: 5px;
	background-color: transparent;
	margin-top: 40px;
}
#contatti .wpcf7-form textarea {
	height: 150px;
}
#contatti ::placeholder {
	color: #404040;
}
#contatti .wpcf7-form a {
	color: #404040;
}
#contatti .wpcf7-form .wpcf7-submit {
	color: #fff;
	background-color: #00558b;
	border-radius: 20px;
}
#contatti .wpcf7-form .wpcf7-acceptance input:checked {
	background-color: #404040;
}
#contatti .row-4 {
	display: grid;
}
/*--------------SERVIZI------------------*/
#servizi .row-1 {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: left center;
	height: 50vh;
	width: 100%;
	position: relative;
}
#servizi .row-1 .text {
	background-color: rgba(0, 0, 0, 0.30);
}
#servizi h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: 700;
	text-align: center;
	padding: 0 5%;
	max-width: 1240px;
	margin: 0 auto;
}
#servizi .row-3 {
	padding: 30px 5%;
}
#servizi .row-4 {
	background-color: #00558B;
	color: #fff;
	padding: 60px 60px 60px 30px;
	border-radius: 0px 200px 200px 0px;
	text-align: left;
	margin-right: 5%;
	margin-top: 30px;
	position: relative;
	z-index: 2;
}
#servizi .row-4 h3 {
	padding-bottom: 20px;
}
#servizi .row-4 .pulsante {
	color: #00558B;
	background-color: #fff;
	border: 1px solid #fff;
	margin: 20px 0;
	text-decoration: none;
	padding: 10px 0;
}
#servizi .row-4 .pulsante:hover {
	background-color: transparent;
	color: #fff;
}
#servizi .row-4 a {
	color: #fff;
	text-decoration: underline;
}
#servizi .row-5 {
	background-color: #B2926B;
	color: #fff;
	padding: 60px 30px 60px 30px;
	border-radius: 200px 0px 0px 200px;
	text-align: right;
	margin-left: 5%;
	margin-top: -30px;
	margin-bottom: 30px;
}
#servizi .row-5 h3 {
	padding-bottom: 20px;
}
#servizi .row-5 .right .flex {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-direction: row;
}
#servizi .row-5 .send p {
	display: flex;
	flex-direction: row;
}
#servizi .row-5 .wpcf7-email {
	margin-right: -30px;
	padding: 5px 30px 5px 20px;
}
#servizi .row-5 .wpcf7-acceptance label {
	width: 80%;
	display: block;
	margin-left: 10%;
	text-align: left;
	margin-top: 10px;
}
/*--------------ABOUT------------------*/
#about .row-1 {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: left center;
	height: 50vh;
	width: 100%;
	position: relative;
}
#about .row-1 .text {
	background-color: rgba(0, 0, 0, 0.30);
}
#about h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: 700;
	text-align: center;
	padding: 0 5%;
	max-width: 1240px;
	margin: 0 auto;
}
#about .row-2 h2 {
	padding: 60px 0 20px;
}
#about .row-4 {
	background-color: #00558B;
	color: #fff;
	padding: 60px 60px 60px 30px;
	border-radius: 0px 200px 200px 0px;
	text-align: left;
	margin-right: 5%;
	margin-top: 30px;
	position: relative;
	z-index: 2;
}
#about .row-4 h3 {
	padding-bottom: 20px;
}
#about .row-4 .pulsante {
	color: #00558B;
	background-color: #fff;
	border: 1px solid #fff;
	margin: 20px 0;
	text-decoration: none;
	padding: 10px 0;
}
#about .row-4 .pulsante:hover {
	background-color: transparent;
	color: #fff;
}
#about .row-4 a {
	color: #fff;
	text-decoration: underline;
}
#about .row-5 {
	background-color: #B2926B;
	color: #fff;
	padding: 60px 30px 60px 30px;
	border-radius: 200px 0px 0px 200px;
	text-align: right;
	margin-left: 5%;
	margin-top: -30px;
	margin-bottom: 30px;
}
#about .row-5 h3 {
	padding-bottom: 20px;
}
#about .row-5 .right .flex {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-direction: row;
}
#about .row-5 .send p {
	display: flex;
	flex-direction: row;
}
#servizi .row-5 .wpcf7-email {
	margin-right: -30px;
	padding: 5px 30px 5px 20px;
}
#about .row-5 .wpcf7-acceptance label {
	width: 80%;
	display: block;
	margin-left: 10%;
	text-align: left;
	margin-top: 10px;
}
/*--------------ACCOUNT------------------*/
.account .header {
	border-bottom: 1px solid;
	position: relative;
}
.account .logo .black {
	display: block;
}
.account .logo .white {
	display: none;
}
.account.navmenu_open .logo .white {
	display: block;
}
.account.navmenu_open .logo .black {
	display: none;
}
.account .openclose .iconbar {
	background-color: #404040;
}
/***
------ [RICERCA RAPIDA] ------
***/ 
.ricerca-wrapper {
    display: flex;
    width: 100%;
    justify-content: center;
}
.ricerca-card-filters {
    margin: 8px 0px;
}
.unico-ricerca-rapida {
    width: 100%;
    max-width: 700px;
    position: relative;
    transition: all 1.02s ease;
}
.unico-ricerca-rapida[aria-open="false"] {
    max-width: 320px;
}
.ricerca-rapida-form {
    position: absolute;
    width: 100%;
    border: 1px solid #eceef3;
    background-color: #f6f9fb;
    top: 0px;
    z-index: 1;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0px 0px 4px 0px;
    height: 360px;
    transition: all 1.02s ease;
}
.unico-ricerca-rapida[aria-open="false"] .ricerca-rapida-form {
    height: 60px;
    border-radius: 25px;
}
.ricerca-card {
    border: 1px solid #eceef3;
    border-bottom: 2px solid #eceef3;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 20px;
}
.ricerca-card .no-results {
	color: #00558B;
}
.ricerca-rapida-filtri {
    height: 100%;
    padding: 20px;
    overflow: hidden;
    overflow-y: scroll;
    opacity: 1;
    transition: opacity 1.6s ease;
}
.unico-ricerca-rapida[aria-open="false"] .ricerca-rapida-filtri {
    opacity: 0.0;
}
.ricerca-rapida-filtri button {
    border: 2px solid black;
    background-color: transparent;
    padding: 5px;
    border-radius: 5px;
    margin: 3px;
}
.ricerca-rapida-filtri button.active {
    background-color: black;
    color: white;
}
.ricerca-rapida-head {
    display: flex;
    gap: 10px;
    padding: 10px;
    background: #fff;
    box-shadow: 0px 0px 4px 0px;
}
.ricerca-rapida-head select {
    width: 120px;
    transition: all 1s ease;
}
.ricerca-rapida-head input {
    width: calc(100% - 60px);
    height: 40px;
    border: none;
    background: unset;
    transition: all 0.8s ease;
}
.ricerca-rapida-head button {
    width: 40px;
	height: 40px;
	line-height: 40px;
    opacity: 1.0;
	padding: 5px;
    transition: all 0.8s ease;
	background-color: #fff;
	border: 1px solid;
}
.ricerca-rapida-head button img {
	max-width: 15px;
}
.unico-ricerca-rapida[aria-open="false"] .ricerca-rapida-head input {
    width: 100%;
}
.unico-ricerca-rapida[aria-open="false"] .ricerca-rapida-head button,
.unico-ricerca-rapida[aria-open="false"] .ricerca-rapida-head select {
    width: 0px;
    border: none;
    background: none;
    overflow: hidden;
}
.unico-ricerca-rapida[aria-open="false"] .ricerca-rapida-head button {
    opacity: 0.0;
}
.elemento-ricerca {
    display: flex;
	background-color: #fff;
	padding: 10px;
	margin: 10px 0;
}
.elemento-ricerca .item-icon.image {
    width: 100px;
    border: 3px solid #d30605;
    border-radius: 5px;
    background-color: #fff;
    display: flex;
}
.elemento-ricerca .item-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.item-content .item-bar {
    display: flex;
    width: 100%;
    font-size: 14px;
}
.elemento-ricerca .item-content label {
    display: block;
    width: 100%;
    font-size: 0.96em;
}
/*--------------NEWSLETTER------------------*/
.gestione-iscrizione .header,
.conferma-iscrizione .header,
.cancellazione-newsletter .header,
.archivio-newsletter .header {
	background-color: #00558b;
	position: relative;
}
#newsletter {
	padding: 30px 5%;
	max-width: 800px;
	margin: 0 auto;
}
#newsletter h1  {
	color: #00558b;
	padding-bottom: 30px;
}
#newsletter label {
	margin-top: 20px;
	display: block;
}
#newsletter input {
	border: 1px solid #00558b;
	color: #00558b;
	margin-top: 10px;
}
#newsletter select {
	margin-top: 10px;
	border: 1px solid #00558b;
	padding: 5px 30px 5px 20px !important;
	outline: none;
	padding: 5px;
	color: #00558b;
	height: 45px;
	width: 100%;
	border-radius: 30px;
	margin-bottom: 30px;
}
#newsletter fieldset {
	margin-bottom: 30px;
}
#newsletter .mailpoet_submit {
	background-color: #00558b;
	color: #fff;
	width: 200px;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width:768px) {
	.touch .parallax {
		background-attachment: scroll !important;
	}
	.wpcf7-form label {
		
	}
	.wpcf7-form .flex {
		display: flex;
	    flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: space-between;
	    align-items: flex-start;
	    align-content: center;
	}
	.wpcf7-form .flex div {
		width: 48%;
	}
	.nav ul li {
		padding: 15px 0;
	}
	.nav a {
		font-size: 25px;
	}
	.footer img {
		display: block;
		margin-top: 0;
	}
	.copyright {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		flex-direction: row;
	}
	.copyright p {
		width: 48%;
	}
	.copyright p:last-child {
		text-align: right;
	}
	.footer-widget-area {
		display: flex;
		justify-content: space-between;
		align-items: start;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.footer-widget-area .widget_text,
	.footer-widget-area .widget_nav_menu {
		width: 48%;
	}
	.footer-widget-area #text-4 {
		margin-top: 30px;
	}
/*--------------HOME------------------*/
	.row-2 ul {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;	
	}
	.row-2 ul li {
		width: 33.333333%;
		margin: 0 10px;
	}
	.row-2 .button a {
		width: auto;
	}
	#home .row-4 .left,
	#home .row-5 .left {
		max-width: 500px;
	}
	.row-5 {
		display: flex;
	    flex-direction: column;
	    align-items: flex-end;
	}
	.mailpoet_checkbox_label {
		width: 100%;
		margin-left: 0;
	}
	.row-news .flex {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
	.row-news .flex div {
		width: 30%;
		min-height: 30vw;
	}
	.elemento-ricerca {
		width: 48%;
	}
	.ricerca-card-content {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.ricerca-card-content h4 {
		width: 100%;
		padding-top: 30px;
	}
/*--------------CATEGORIE------------------*/
	.pagine-categorie .lista a {
		padding: 30px;
		height: 30vw;
	}
	.pagine-categorie .lista a img {
	    max-width: 50px;
		max-height: 50px;
	}
	.pagine-categorie .lista a:hover img {
		max-width: 70px;
		max-height: 70px;
	}
/*--------------MODELLI E NEWS------------------*/
	.news .lista a,
	.modelli .lista a {
		padding: 30px;
		height: 30vw;
		width: 46%;
		margin: 2%;
	}
	.news .lista a img,
	.modelli .lista a img {
	    max-width: 50px;
		max-height: 50px;
	}
	.news .lista a:hover img,
	.modelli .lista a:hover img {
		max-width: 70px;
		max-height: 70px;
	}
/*--------------LISTA ARTICOLI------------------*/
	.archive .lista a {
		padding: 30px;
		min-height: 30vw;
		width: 46%;
		margin: 2%;
	}
	.archive .lista a img {
	    max-width: 50px;
		max-height: 50px;
	}
	.archive .lista a:hover img {
		max-width: 70px;
		max-height: 70px;
	}
/*--------------SERVIZI------------------*/
	#servizi .row-4 .left,
	#servizi .row-5 .left {
		max-width: 500px;
	}
	#servizi .row-5 {
		display: flex;
	    flex-direction: column;
	    align-items: flex-end;
	}
	#servizi .wpcf7-form .flex div {
		width: 70%;
	}
	#servizi .wpcf7-form .flex .send {
		width: 30%;
	}
	#servizi .row-5 .wpcf7-acceptance label {
		width: 100%;
		margin-left: 0;
		margin-right: 100px;
	}
/*--------------ABOUT------------------*/
	#about .row-4 .left,
	#about .row-5 .left {
		max-width: 500px;
	}
	#about .row-5 {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}
	#about .wpcf7-form .flex div {
		width: 70%;
	}
	#about .wpcf7-form .flex .send {
		width: 30%;
	}
	#about .row-5 .wpcf7-acceptance label {
		width: 100%;
		margin-left: 0;
		margin-right: 100px;
	}
/*--------------ARTICOLO SINGOLO------------------*/
	.single .correlati .lista {
		display: flex;
		justify-content: start;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.single .correlati .lista a {
		width: 29%;
		margin: 2%;
		min-height: 20vw;
	}
}
@media only screen and (min-width:1024px) {
	.touch .parallax {
		background-attachment: scroll !important;
	}
	/*------------------------------------*\
	    RESPONSIVE - layout desktop
	\*------------------------------------*/
	
	/* header */
	.pagina-desktop .header {
		height: 100px;
	}
	
	/* nav */
	.pagina-desktop .nav {
		display: block;
		background-color: transparent;
		height: auto;
		width: 100%;
		position: relative;
		background-image: none;
		opacity: 1.0;
		pointer-events: unset;
		user-select: unset;
	}
	.pagina-desktop .nav ul {
		margin-top: 0;
		text-align: right;
		display: inline-block;
	}
	.pagina-desktop .nav ul li {
		margin: 0 0 0 15px;
		padding: 0;
		display: inline-block;
		text-transform: none;
	}
	.pagina-desktop .nav ul li:nth-child(2):before,
	.pagina-desktop .nav ul li:nth-child(3):before {
		content: '|';
		display: inline-block;
		color: #fff;
		padding-right: 15px;
		vertical-align: text-top;
	}
	.accedi.pagina-desktop .nav ul li:nth-child(2):before,
	.accedi.pagina-desktop .nav ul li:nth-child(3):before,
	.registrazione.pagina-desktop .nav ul li:nth-child(2):before,
	.registrazione.pagina-desktop .nav ul li:nth-child(3):before,
	.account.pagina-desktop .nav ul li:nth-child(2):before,
	.account.pagina-desktop .nav ul li:nth-child(3):before {
		content: '|';
		display: inline-block;
		color: #404040;
		padding-right: 15px;
		vertical-align: text-top;
	}
	.pagina-desktop .nav ul .button:before {
		content: '' !important;
	}
	.pagina-desktop .nav ul li a {
		font-size: 16px;
		letter-spacing: 1px;
		text-transform: none;
	}
	.pagina-desktop .openclose {
		display: none;
	}
	.pagina-desktop.logo {
		max-width: 150px;
		width: 100%;
		position: relative;
		left: 5%;
	}
	.button a {
		padding: 10px 20px;
	}
	.pulsante {
		width: 250px;
	}
/*--------------HOME------------------*/
	#home .row-1 {
		aspect-ratio: 16/9;
		height: auto;
	}
	.row-2 .pulsante a {
		width: 300px;
	}
	#home .row-4,
	#home .row-5 {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
	}
	#home .row-5 {
		flex-direction: row-reverse;
	}
	#home .row-4 .left,
	#home .row-4 .right,
	#home .row-5 .left,
	#home .row-5 .right {
		width: 50%;
	}
	#home .row-4 .right,
	#home .row-5 .right {
		text-align: center;
	}
	#home .row-4 {
		padding: 80px;
	}
	#home .row-5 {
		margin-top: -50px;
		padding: 130px 80px 80px;
	}
	#home .row-6 {
		max-width: 1280px;
		margin: 0 auto;
	}
	.row-news .flex div {
		min-height: 20vw;
	}
/*--------------ACCEDI------------------*/
	.accedi .nav a {
		color: #404040;
	}
	.accedi .nav a:hover {
		border-bottom: 1px solid;
	} 
	.accedi .nav .current_page_item a {
		border-bottom: 1px solid;
	}
	.accedi .nav .button a:hover {
		background-color: #404040;
		color: #fff;
	}
/*--------------CATEGORIE------------------*/
	.pagine-categorie .lista h3 {
		padding: 30px 0;
	}
	.pagine-categorie .lista a {
		width: 29%;
		height: 25vw;
	}
	.pagine-categorie .lista a img {
		max-width: 70px;
        max-height: 70px;
	}
	.pagine-categorie .lista a:hover img {
		max-width: 90px;
		max-height: 90px;
	}
/*--------------MODELLI E NEWS------------------*/
	.news .lista h2,
	.modelli .lista h2 {
		padding: 0;
	}
	.news .lista a,
	.modelli .lista a {
		width: 29%;
		height: 20vw;
	}
    
    .news-filtri_laterali h1 {
        color: initial;
    }
    .news-filtri_laterali select {
        height: 40px;
    }
    .news-filtri_laterali .gruppo-input {
        margin-top: 20px;
        display: flex;
        flex-direction: column;
        text-align: left;
        gap: 10px;
    }
    .news-filtri_laterali input[type="checkbox"] {
        height: auto;
    }
    .news-filtri_laterali ul li {
        display: flex;
        align-items: center;
        gap: 5px;
    }
    
/*--------------LISTA ARTICOLI------------------*/
	.archive .lista a {
		width: 29%;
		height: auto;
	}
/*--------------CONTATTI------------------*/
	#contatti .row-3 {
		display: flex;
		align-items: start;
		justify-content: space-between;
		flex-direction: row;
	}
	#contatti .row-3 .left,
	#contatti .row-3 .right {
		width: 45%;
	}
	#contatti .row-3 .right {
		text-align: left;
		padding-top: 0;
	}
	#contatti .wpcf7-form .wpcf7-submit {
		width: auto;
		padding:0 20px;
	}
/*--------------SERVIZI------------------*/
	#servizi .row-1 {
		height: 40vh;
	}
	#servizi .row-4,
	#servizi .row-5 {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
	}
	#servizi .row-5 {
		flex-direction: row-reverse;
	}
	#servizi .row-4 .left,
	#servizi .row-4 .right,
	#servizi .row-5 .left,
	#servizi .row-5 .right {
		width: 50%;
	}
	#servizi .row-4 .right,
	#servizi .row-5 .right {
		text-align: center;
	}
	#servizi .row-4 {
		padding: 80px;
	}
	#servizi .row-5 {
		margin-top: -50px;
		padding: 130px 80px 80px;
	}
	#servizi .row-5 .wpcf7-email {
		margin-right: -100px;
	}
	#servizi .row-5 .wpcf7-acceptance label {
		margin-right: 0;
		margin-top: 30px;
	}
	#servizi .row-5 input {
		margin-top: 0;
	}
/*--------------ABOUT------------------*/
	#about .row-1 {
		height: 40vh;
	}
	#about .row-4,
	#about .row-5 {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
	}
	#about .row-5 {
		flex-direction: row-reverse;
	}
	#about .row-4 .left,
	#about .row-4 .right,
	#about .row-5 .left,
	#about .row-5 .right {
		width: 50%;
	}
	#about .row-4 .right,
	#about .row-5 .right {
		text-align: center;
	}
	#about .row-4 {
		padding: 80px;
	}
	#about .row-5 {
		margin-top: -50px;
		padding: 130px 80px 80px;
	}
	#about .row-5 .wpcf7-email {
		margin-right: -100px;
	}
	#about .row-5 .wpcf7-acceptance label {
		margin-right: 0;
		margin-top: 30px;
	}
	#about .row-5 input {
		margin-top: 0;
	}
/*--------------REGISTRAZIONE------------------*/
	.registrazione .nav a {
		color: #404040;
	}
	.registrazione .nav a:hover {
		border-bottom: 1px solid;
	} 
	.registrazione .nav .current_page_item a {
		border-bottom: 1px solid;
	}
	.registrazione .nav .button a:hover {
		background-color: #404040;
		color: #fff;
	}
	#registrazione .form-lista-account, 
	#registrazione .form-griglia-iscrizione {
		grid-template-columns: 1fr 1fr;
		gap: 20px;
	}
/*--------------ACCOUNT------------------*/
	.account .nav a {
		color: #404040;
	}
	.account .nav a:hover {
		border-bottom: 1px solid;
	} 
	.account .nav .current_page_item a {
		border-bottom: 1px solid;
	}
	.account .nav .button a:hover {
		background-color: #404040;
		color: #fff;
	}
/*--------------NEWSLETTER------------------*/
	#newsletter {
		padding: 100px 5%;
	}
}
@media only screen and (min-width:1280px) {
	.parallax {
		background-attachment: fixed !important;
	}
	main {
		font-size: 18px !important;
	}
	.footer-widget-area .widget_text, 
	.footer-widget-area .widget_nav_menu {
		width: 20%;
	}
	.footer-widget-area #text-4 p {
		text-align: right;
	    display: flex;
	    flex-direction: column;
	    align-items: flex-end;
	}
	h1, h2 {
		font-size: 3.5vh !important;
	}
	h3 {
		font-size: 2.5vh !important;
	}
	.pagina-desktop .nav ul li a {
		font-size: 18px;
	}
	.footer h3 {
		padding: 80px 0 20px;
		font-size: 25px !important;
	}
	.footer .copyright {
		padding: 20px 0 80px;
	}
	.footer-widget-area #text-4 {
		margin-top: 80px;
		width: 15%;
	}
	input, textarea, .wpcf7-submit {
		height: 40px;
	}
	
/*--------------- ASIDE ----------------*/
	.sidebar {
		width: 25%;
		border-bottom: none;
		border-left: 1px solid #00558B;
		padding: 80px 30px;
		position: relative;
	}
	.sidebar .sticky {
		position: sticky;
		top: 2%;
		align-self: flex-start;
		max-height: calc(100vh - 10%);
	}
	.sidebar input[type=date] {
		width: 49%;
	}
/*--------------HOME------------------*/
	#home h1 {
		max-width: 970px;
		margin: 0 auto;
	}
	#home .row-1 p {
		padding: 60px 0 20px;
	}
	.row-2 {
		max-width: 850px;
		margin: 0 auto;
		padding: 80px 5% 50px;
	}
	.row-2 .button a {
		padding: 15px 0 !important;
	}
	#home .row-3 {
		max-width: 850px;
		margin: 0 auto;
	}
	#home .row-4 {
		margin-right: 20%;
		margin-top: 50px;
	}
	#home .row-5 {
		margin-left: 20%;
		margin-bottom: 50px;
	}
	#home .row-4 .left, 
	#home .row-4 .right, 
	#home .row-5 .left, 
	#home .row-5 .right {
		width: 45%;
	}
	.row-news {
		padding: 50px 5% 80px;
		max-width: 1280px;
		margin: 0 auto;
	}
	.row-news .flex div {
		margin-bottom: 0;
	}
/*--------------CATEGORIE------------------*/
	.pagine-categorie .flex {
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.pagine-categorie section {
		 width: 75%;
	}
	.pagine-categorie .lista h3 {
		font-size: 20px !important;
	}
	.pagine-categorie .lista a {
		height: 20vw;
	}
	.pagine-categorie .row-2 {
		padding: 20px 0;
	}
/*--------------MODELLI E NEWS------------------*/
	.news .lista h2,
	.modelli .lista h2 {
		font-size: 18px !important;
	}
	.news .lista a,
	.modelli .lista a {
		height: 20vw;
		font-size: 16px !important;
	}
/*--------------LISTA ARTICOLI------------------*/
	.archive .flex {
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.archive section {
		 width: 75%;
	}
	.archive .lista h2 {
		font-size: 18px !important;
	}
	.archive .lista a {
		font-size: 16px !important;
		min-height: 20vw;
	}
	.archive .indietro {
		padding: 80px 0 30px;
	}
/*--------------ARTICOLO SINGOLO------------------*/
	.single .content {
		max-width: 1280px;
		margin: 0 auto;
	}
	.single .share img {
		max-width: 40px;
	}
	.single .correlati p {
		font-size: 16px !important;
	}
/*--------------CONTATTI------------------*/
	#contatti .row-1 {
		padding: 120px 5% 80px;
	}
	#contatti .row-3 {
		padding: 80px 5%;
	}
/*--------------SERVIZI------------------*/
	#servizi .row-3 {
		max-width: 800px;
		margin: 0 auto;
		padding: 60px 0;
	}
	#servizi .row-4 {
		margin-right: 20%;
		margin-top: 50px;
	}
	#servizi .row-5 {
		margin-left: 20%;
		margin-bottom: 50px;
	}
	#servizi .row-4 .left, 
	#servizi .row-4 .right, 
	#servizi .row-5 .left, 
	#servizi .row-5 .right {
		width: 45%;
	}
	.accordions {
		margin-top: 60px;
	}
/*--------------ABOUT------------------*/
	#about .row-2 {
		text-align: left;
	}
	#about .row-4 {
		margin-right: 20%;
		margin-top: 50px;
	}
	#about .row-5 {
		margin-left: 20%;
		margin-bottom: 50px;
	}
	#about .row-4 .left, 
	#about .row-4 .right, 
	#about .row-5 .left, 
	#about .row-5 .right {
		width: 45%;
	}
/*--------------REGISTRAZIONE------------------*/
	#registrazione .row-1 {
		max-width: 1200px;
		margin: 0 auto;
	}
	#registrazione .servizio-dirigente {
		grid-template-columns: 1fr 1fr 1fr;
	}	
	#registrazione h3 {
		font-size: 30px !important;
	}
}
@media only screen and (min-width:1600px) {
	h1, h2 {
		font-size: 40px !important;
	}
	h3 {
		font-size: 35px !important;
	}
	main {
		font-size: 20px !important;
	}
	.pagina-desktop .nav ul li a {
		font-size: 22px;
	}
	.accettazione {
		text-align: right;
		margin-right: 5%;
	}
/*--------------HOME------------------*/
	#home h1 {
		max-width: 1000px;
	}
	.row-2 .button a {
		font-size: 24px;
	}
	#home .row-3 {
		max-width: 1000px;
	}
	#home .row-4,
	#home .row-5 {
		height: 400px;
	}
	#home .row-5 {
		margin-bottom: 80px;
	}
	.row-news {
		padding: 80px 5% 110px;
	}
	.row-news .flex div {
		min-height: 15vw;
	}
/*--------------CATEGORIE------------------*/
	.pagine-categorie .lista a {
        height: 15vw;
    }
	.archive .lista a {
		min-height: 15vw;
	}
/*--------------MODELLI E NEWS------------------*/
	.news .lista a,
	.modelli .lista a {
        height: 15vw;
    }
/*--------------SERVIZI------------------*/
	#servizi .row-4,
	#servizi .row-5 {
		height: 400px;
	}
	#servizi .row-5 {
		margin-bottom: 80px;
	}
/*--------------ABOUT------------------*/
	#about .row-4,
	#about .row-5 {
		height: 400px;
	}
	#about .row-5 {
		margin-bottom: 80px;
	}
/*--------------SINGLE------------------*/
	.single .correlati .lista a {
		min-height: 15vw;
	}
}
@media only screen and (min-width:2000px) {
/*--------------MODELLI E NEWS------------------*/
	.news .lista h2,
	.modelli .lista h2 {
        font-size: 22px !important;
    }
/*--------------LISTA ARTICOLI------------------*/
	.archive .lista h2 {
        font-size: 22px !important;
    }
/*--------------CONTATTI------------------*/
	#contatti .row-3 .left, 
	#contatti .row-3 .right {
		width: 40%;
	}

}
