/* ------------------------------------------------------------------- */
/* 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) {

header .logo_1 {
	top:30px;
	left:50px;
	height:100px;
}

}


/* ------------------------------------------------------------------- */
/* 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 {
	height:inherit;
	-webkit-transition:var(--trans_02);
	transition:var(--trans_02);
	z-index:110;
}
header .navigation_top .header_btn, header .header_btn_top {
	height:var(--h_header_top);
	background-color:var(--color_1);
	-webkit-box-shadow:var(--shadow_10);
	box-shadow:var(--shadow_10);
}
header .logo_1 {
	top:20px;
	left:50px;
	height:80px;
}
header .header_btn_top .logo_1 {
	left:-500px !important;
}
header .header_btn_top .logo_2, header .logo_nav_top .logo_2 {
	left:30px;
	opacity: 1;
}
header .nav_button, header .nav_search {
	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_search {
	right:100px;
	font-size:26px;
}
header .header_btn_top .nav_button, header .nav_button_top {
	line-height:var(--h_header_top);
}
header .header_btn_top .nav_search, header .header_btn:has(.nav_button_top) .nav_search {
	line-height:var(--h_header_top);
}
header nav, header .nav_top {
	display:none;
	position:fixed;
	top:0px;
	right:0px;
	bottom:0px;
	left: 0px;
	width: 100%;
	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;
	top:var(--h_header_top);
	margin:50px 0px 200px 0px;
}
header nav ul li {
	float:none;
	margin:10px 0px;
}
header nav ul li a {
	display:inline-block;
	vertical-align:top;
	font-size:22px;
	line-height:50px;
	color:var(--color_1);
}
header nav ul li.active a {
	color:var(--color_2);
}
header nav ul li.active a:before {
	background-color:var(--color_2);
}
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;
}
.logo_main {
	max-width:220px;
}
footer .logo_footer {
	max-width:220px;
}

}


/* ------------------------------------------------------------------- */
/* 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) {

.testata_main, .testata_detail {
	min-height:240px;	
}
.testata_detail {
	display: none;
}
.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:100px;
	--h_header_top:70px;
}
body {
}
header .logo_1 {
	top:20px;
	left:20px;
	height:60px;
}
header .header_btn_top .logo_2, header .logo_nav_top .logo_2 {
	left:10px;
}
header .nav_button {
	right:15px;
}
header .nav_search {
	right:70px;
}
.testata_main, .testata_detail {
	min-height:200px;
}
.testata_main, .testata_detail {
	display: none;
}
.caption h1, .caption h2, .caption h3 {
	font-size:34px !important;
	line-height:36px !important;
}
.caption h4, .caption h5, .caption h6 {
	font-size:26px !important;
	line-height:28px !important;
}
h1, h2, h3 {
	font-size:26px !important;
	line-height:28px !important;
}
h4, h5, h6, .alt_title, .sub_title {
	font-size:22px !important;
	line-height:24px !important;
}
.text {
	hyphens:auto;
}
.text, .t_base {
	font-size:18px;
	line-height:26px;
}
.t_small {
	font-size:16px;
	line-height:24px;
}
.t_big {
	font-size:20px;
	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:10px 16px !important;
}
.button > .txt, .btn_small > .txt, .btn_big > .txt {
	font-size:16px !important;
}
.button > .icon, .btn_small > .icon, .btn_big > .icon {
	font-size:20px !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;
}
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;
}
.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) {}