/* ------------------------------------------------------------------- */
/* E - da 1400px a 1599px */
/* ------------------------------------------------------------------- */
@media (min-width: 1400px) and (max-width: 1599px) {}


/* ------------------------------------------------------------------- */
/* D - da 1200px a 1399px */
/* ------------------------------------------------------------------- */
@media (min-width: 1200px) and (max-width: 1399px) {}


/* ------------------------------------------------------------------- */
/* C + B + A - da 0px a 1199px */
/* ------------------------------------------------------------------- */
@media (max-width: 1199px) {

:root {
	--h_header:100px;
	--h_header_top:80px;
}
body {
	font-size:20px;
}
.header_bar {
	display:none;
}
header .header_btn {
	z-index:110;
}
header .header_btn_top {
	background-color:var(--color_4);
	border-bottom:solid 1px rgba(0,0,0,0.4);
}
header .logo_nav {
	top:0px;
}
header .logo_nav .logo_1 {
	height:var(--h_header);
	padding:12px;
}
header .logo_nav .logo_2 {
}
header .nav_button {
	position:absolute;
	display:flex;
	justify-content:center;
	align-items:center;
	align-self:anchor-center;
	top:0px;
	right:40px;
	width:60px;
	line-height:var(--h_header);
	font-size:30px;
	color:var(--color_w);
	cursor:pointer;
	-webkit-transition:var(--trans_02);
	transition:var(--trans_02);
}
header .nav_button_top {
	line-height:var(--h_header_top);
	color:var(--color_b);
}
header nav, header .nav_top {
	display:none;
	position:fixed;
	top:0px;
	bottom:0px;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
	text-align:center;
	background-color:var(--color_w);
	-webkit-transition:none;
	-moz-transition:none;
	transition:none;
}
header nav::-webkit-scrollbar { 
	display:none;
}
header nav ul {
	float:none;
	margin:40px 0px 200px 0px;
}
header nav ul {
	top:var(--h_header);
}
header .nav_top ul {
	top:var(--h_header_top);
}
header nav ul li {
	float:none;
	margin:10px 0px;
}

header nav ul li a {
	display:inline-block;
	vertical-align:top;
	font-size:20px;
	line-height:44px;
	color:var(--color_b);
}
header nav ul li.active a:before {
	background-color:var(--color_b);
}
header nav ul li.active a {
	font-size:24px !important;
}

header nav ul li ul {
	position:relative;
	top:auto !important;
	right:auto;
	margin:0px auto;
	width:max-content;
	text-align:-webkit-center;
}
header nav ul li ul li {
	float:none;
	width:min-content;
	text-align:center;
}
header nav ul li ul li a {
	line-height:26px;
	margin:10px 0px;
}
header nav ul li ul li a:after {
	display:none;
}
header nav .sub_nav.lang {
	display:none;
}
header .box_lang {
	display:flex;
}

}


/* ------------------------------------------------------------------- */
/* C - da 1025px a 1199px */
/* ------------------------------------------------------------------- */
@media (min-width: 1025px) and (max-width: 1199px) {}


/* ------------------------------------------------------------------- */
/* B - TABLET da 768px a 1024px */
/* ------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1024px) {

header .logo_nav {
}
header .logo_nav .logo_1 {
}
header .logo_nav .logo_2 {
}
.testata_detail {
	min-height:220px;	
}
.t_col-2, .t_col-3, .t_col-3 {
	-webkit-column-count:1;
	column-count:1;
	-webkit-column-gap:0px;
	column-gap:0px;
}
.scroll-icon {
	display:none;
}
footer {
	padding-top:40px;
	padding-bottom:40px;
}
footer div {
	text-align:center !important;
}
footer .cell {
	-webkit-justify-content:center !important;
	justify-content:center !important;
	-webkit-justify-items:center !important;
	justify-items:center !important;
}
footer .h_line:before {
	left:50% !important;
	width:30% !important;
	margin-left:-15% !important;
}
.icon_wa {
	bottom:20px;
	right:20px;
}
.icon_info {
	font-size:30px !important;
}
.icon_social {
	font-size:34px !important;
}
.flag_img {
	margin:10px !important;
}
.min_h-big { min-height:100vh; }

.M_forced-l, .M_forced-l div {
	text-align: left !important;
	-webkit-justify-content:flex-start !important;
	justify-content:flex-start !important;
	-webkit-justify-items:flex-start !important;
	justify-items:flex-start !important;
}

}


/* ------------------------------------------------------------------- */
/* B - TABLET ORIZZONTALE */ 
/* ------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1024px) and (orientation:landscape) {}


/* ------------------------------------------------------------------- */
/* B - TABLET VERTICALE */
/* ------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1024px) and (orientation:portrait) {}


/* ------------------------------------------------------------------- */
/* A - SMARTPHONE da 0px a 767px */
/* ------------------------------------------------------------------- */
@media (max-width: 767px) {

:root {
	--h_header:120px;
	--h_header_top:70px;
}
header .logo_nav {
	left:20px;
}
header .logo_nav .logo_1 {
	padding:20px;
	padding-left:0px;
}
header .logo_nav .logo_2 {
}
header .nav_button {
	right:20px;
}
.testata_detail {
	min-height:180px;	
}
h4, h5, h6 {
	font-size:1.2em !important;
}
.caption h1, .caption h2, .caption h3 {
	font-size:2.2em !important;	
}
.caption h4, .caption h5, .caption h6 {
	font-size:1.4em !important;	
}
.h_line:before {
}
.alt_title {
	font-size:26px;
	line-height:26px;
}
.sub_title {
	font-size:24px;
	line-height:24px;
}
.text {
	font-size:18px;
	line-height:28px;
	hyphens:auto;
}
.t_big {
	font-size:20px;
	line-height:30px;
}
.t_small {
	font-size:18px;
	line-height:28px;
}
.t_col-2, .t_col-3, .t_col-3 {
	-webkit-column-count:1;
	column-count:1;
	-webkit-column-gap:0px;
	column-gap:0px;
}
.button, .btn_small, .btn_big {
	padding:12px !important;
}
.button > .txt, .btn_small > .txt, .btn_big > .txt {
	font-size:18px !important;
}
.button > .icon, .btn_small > .icon, .btn_big > .icon {
	font-size:18px !important;
}
.scroll-icon {
	display:none;
}
.griglia {
	margin-top: 20px !important;
}
.griglia.col_2, .griglia.col_3, .griglia.col_4, .griglia.col_5, .griglia.col_6, .griglia.col_7 {
	grid-template-columns:auto;
}
.griglia .cella {
	display:inline-block;
}
.griglia .row_first {
	padding-top:40px;
}
form > .cell {
	padding:10px 0px;
}
.logo_main {
	max-width:250px;
}
footer {
	padding-top:20px;
	padding-bottom:80px;
}
footer div {
	text-align:center !important;
}
footer .cell {
	-webkit-justify-content:center !important;
	justify-content:center !important;
	-webkit-justify-items:center !important;
	justify-items:center !important;
}
footer .h_line:before {
	left:50% !important;
	width:30% !important;
	margin-left:-15% !important;
}
footer .logo_footer {
	max-width:220px;
}
.icon_wa {
	bottom:20px;
	right:20px;
}
.icon_info {
	font-size:30px !important;
}
.icon_social {
	font-size:34px !important;
}
.flag_img {
	margin:10px !important;
}
.min_h-big { min-height:100vh; }

.M_forced-l, .M_forced-l div {
	text-align: left !important;
	-webkit-justify-content:flex-start !important;
	justify-content:flex-start !important;
	-webkit-justify-items:flex-start !important;
	justify-items:flex-start !important;
}

}


/* ------------------------------------------------------------------- */
/* A - SMARTPHONE ORIZZONTALE */ 
/* ------------------------------------------------------------------- */
@media (max-width: 767px) and (orientation:landscape) {}


/* ------------------------------------------------------------------- */
/* A - SMARTPHONE VERTICALE */ 
/* ------------------------------------------------------------------- */
@media (max-width: 767px) and (orientation:portrait) {}