main {
	/* margin-top: 103px; */
	padding-bottom: 120px;
	font-weight: 400;
	font-size: 16px;
	line-height: normal;
	width: 100%;
}

small {
	font-size: 14px;
	line-height: 1.5;
}

strong, b {
	font-weight: 700;
}

h1, h2, h3 {
	margin: 0;
	padding: 0;
}

h1 {
	padding: 40px 0 16px;
	line-height: 1.5;
	font-weight: 600;
}

h2 {
	font-size: 25px;
	line-height: 1.7;
}

.stopScroll {
	height: 100%;
	overflow: hidden;
}

.arrow_back {
	cursor: pointer;
	width: 24px;
	height: 24px;
	margin-right: 20px;
}

/* landing page  */

#banner {
	border-radius: 8px 0 0 8px;
	background-color: var(--instant);
	color: #ffffff;
	position: fixed;
	top: 30vh;
	right: 0;
	z-index: 100;
	cursor: pointer;
	-webkit-box-shadow: 0px 0px 16px -5px rgba(0, 0, 0, 0.6);
	box-shadow: 0px 0px 16px -5px rgba(0, 0, 0, 0.6);
}

#banner .mobile {
	padding: 10px 14px;
}

#banner .mobile div {
	font-size: 12px;
	padding-top: 2px;
}

#banner .desktop {
	padding: 16px 26px;
}

#banner .xl_desktop div:first-child {
	font-size: 20px;
	font-weight: 600;
}

#banner .xl_desktop div:last-child {
	font-size: 16px;
	font-weight: 300;
}

#banner_info .modal {
	padding: 0;
	max-height: 90vh;
}

.modal_top_grey {
	padding: 40px 48px 20px;
	position: relative;
	height: 80px;
	background-color: var(--safer);
	border-radius: 8px 8px 0 0;
}

.login_cta {
	font-size: 14px;
	line-height: 1.93;
	color: var(--overtime);
}

.login_cta b {
	text-decoration: underline;
}

.modal_top_grey .modal_close {
	top: 27px;
	right: 36px;
}

.modal_top_grey .modal_top_title {
	color: var(--event);
	line-height: 1.69;
	font-size: 16px;
	font-weight: 600;
}

.image_wrapper img {
	width: 100%;
}

.modal_req_info .modal_content {
	padding: 0 48px 24px;
	overflow-y: auto;
}

.modal_req_info .modal_content p {
	font-weight: 300;
}

.modal_req_info .modal_content h1 {
	color: inherit;
	font-weight: 600;
	padding-block: 30px 10px;
}

.modal_req_info .modal_content h1 span {
	font-weight: 100;
}

.modal_req_info .field {
	margin-bottom: 24px;
}

.modal_req_info .field-flex input,
.modal_req_info select {
	padding-left: 24px;
}

.modal_req_info select {
	background-position: 97% center;
}

.modal_req_info .declare_cnt {
	margin-block: 30px 0;
}

.modal_req_info .declare_p {
	font-size: 10px;
	line-height: 1.7;
}

.modal_req_info button.btnsmall {
	margin-top: 0px;
}

#requestSent {
	text-align: center;
}

#requestSent .modal_title {
	font-size: 28px;
	line-height: 1.43;
	margin: 10px 0;
	font-weight: 600;
	text-align: center;
	width: auto;
}

#when_call_div h2 {
	font-size: 18px;
	line-height: 1.97;
	color: var(--overtime);
	margin-bottom: 14px;
}

#logo-altroconsumo {
	padding-right: 40px;
}

button.when_call {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 0 !important;
	border-radius: 6px;
	background-color: #ffffff;
	border: 1px solid var(--run);
	color: var(--still);
	font-weight: 600;
	height: 66px;
	width: 183px;
	margin-right: 15px;
}

button.when_call.selected {
	background-color: var(--overtime);
	border-color: var(--overtime);
	color: #ffffff;
}

button.when_call img {
	width: 18px;
	height: 18px;
	margin-right: 10px;
}

.home-container {
	position: relative;
	max-width: 1000px;
	width: 90%;
	margin: 0 auto;
	margin-top: -16.5vw;
	border: solid 1px var(--run);
	padding: 31px 0 80px;
	background-color: rgba(255, 255, 255, 0.7);
	font-size: 16px;
}

.home-container a {
	color: var(--overtime);
}

#landing h1 {
	padding: 0;
	color: var(--still);
	font-size: clamp(26px, 4.4vw, 36px);
	line-height: 1.04;
	font-weight: 400;
}

#landing h2 {
	color: var(--overtime);
	font-size: clamp(30px, 4.4vw, 44px);
	line-height: normal;
	margin-bottom: 15px;
}

#landing .section1 {
	margin-bottom: 32px;
}

.section1 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
	padding: 0 clamp(0px, 5.4vw, 74px);
}

.section1>div:first-child {
	text-align: left;
	padding: 0 14px;
}

.section1 h3 {
	color: var(--overtime);
	font-size: 32px;
}

.section1 h3+p {
	max-width: 340px;
}

.section1 h3+p+p {
	max-width: 385px;
}

.section1 .loghi_container_wrapper {
	padding: 20px 14px 0;
}

#landing .loghi_container {
	text-align: left;
	padding-left: clamp(20px, 2vw, 110px);
}

#landing .partner_title {
	font-size: 14px;
	color: var(--power);
	margin-bottom: 10px;
	white-space: nowrap;
}

#landing .partner_name_m {
	font-size: 12px;
	line-height: 1.5;
	font-weight: 700;
	color: var(--still);
	white-space: nowrap;
}

#landing .partner_name_d {
	font-size: 10px;
	line-height: 1.5;
	color: var(--still);
	font-weight: 700;
	white-space: nowrap;
}

#landing .partner_role_m {
	font-size: 12px;
	color: var(--power);
	white-space: nowrap;
}

#landing .partner_role_d {
	font-size: 8px;
	line-height: 1.5;
	color: var(--power);
	white-space: nowrap;
}

#logo-axa {
	margin-left: 70px;
}

.loghi_mobile {
	display: none;
}

#landing .section2 {
	padding: 45px 30px 50px;
	border-radius: 6px;
	border: solid 3px var(--position);
	text-align: left;
	margin: 60px;
	margin-block: 32px 30px;
}

#landing .section2 p, #landing .section2 .a {
	font-size: 14px;
}

#landing .section2 h3 {
	color: var(--overtime);
	font-size: 30px;
	line-height: 1.25;
	margin-bottom: 40px;
}

#landing .boxes {
	display: flex;
	justify-content: space-between;
	margin-bottom: clamp(60px, 4.4vw, 70px);
}

#landing .box {
	width: calc(92% / 3);
	display: grid;
	grid-template-rows: 45px 80px 60px 6fr 1fr;
}

.line {
	width: 1px;
	background-color: var(--position);
}

#landing .box .paragraph {
	margin-bottom: 30px;
	font-size: 14px;
}

#landing .box ul {
	margin-top: 20px;
	font-size: 14px;
	line-height: 1.5;
}

#landing .box ul li {
	padding-bottom: 4px;
}

#landing .box img {
	width: 100%;
}

#landing .box h4 {
	font-size: 20px;
	line-height: 1.18;
	margin-bottom: 20px;
	color: var(--overtime);
	padding-top: 10px;
}

#landing .a {
	color: var(--overtime);
}

.a {
	color: var(--instant);
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
}

#landing .family {
	min-width: 80%;
	max-width: 94%;
}

#faq_section {
	background-color: #f1f7fb;
	padding-block: 30px 25px;
}

#faq_section>div>div {
	padding: 0 clamp(45px, 6.4vw, 75px);
}

#faq_section .a {
	font-size: 14px;
	font-weight: 300;
}

#faq_top {
	min-height: 370px;
	background-color: var(--light-blue);
}

#faq .container {
	border: 0;
	text-align: left;
	padding-inline: 0;
	padding-top: 0;
}

#faq_top .line {
	width: 64px;
	height: 4px;
	border-radius: 1px;
	background-color: var(--overtime);
	margin-bottom: 20px;
}

#faq_bottom .container {
	margin-top: -160px;
}

#faq_bottom .box {
	padding: 24px;
	padding-right: clamp(60px, 6vw, 90px);
	border-radius: 6px;
	box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.2), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.14);
	background-color: var(--event);
	min-width: 30%;
}

#faq_bottom .boxtitle h4 {
	padding-right: 48px;
	font-weight: 600;
}

#faq_bottom .boxtitle.collaps {
	color: var(--overtime);
	font-size: clamp(16px, 3.4vw, 18px);
	line-height: 1.5;
	padding: 16px 24px;
}

#faq_bottom .box {
	margin-bottom: 10px;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 2px 1px -1px rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.14);
	border: 0;
}

.bgNumber {
	position: relative;
	font-size: 20px;
	line-height: 1.5;
}

.blueLineAfter:after {
	position: absolute;
	bottom: 3px;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background-color: var(--instant);
}

#faq_bottom .content p, #faq_bottom .content h5 {
	font-size: 16px;
	line-height: 1.69;
}

#faq_bottom .content {
	padding: 0px 24px;
}

#faq_bottom .content p {
	padding: 8px 0;
}

#faq_bottom .content ul {
	padding-left: 17px;
	padding-block: 8px;
}

#faq_bottom .content ul li {
	font-size: 16px;
	line-height: 27px;
}

#faq_list li {
	opacity: 0.8;
	margin-bottom: 10px;
	cursor: pointer;
	white-space: nowrap;
}

#faq_list li.selected {
	opacity: 1;
}

#faq_list li.selected b {
	position: relative;
}

.faqTitle {
	line-height: normal;
	padding: 30px 0 20px;
	text-align: left;
}

.faqTitle h2 {
	font-size: clamp(20px, 3.4vw, 25px);
}

/* sticky title */

/* .mobile .faqTitle {
	position: -webkit-sticky;
  position: sticky;
  top: 0;
	z-index: 3;
}
.mobile .faqTitle + span{
	display: none;
}
.mobile .faqTitle.blue-bg {
	background-color: var(--light-blue);
}
.mobile .faqTitle.blue-bg + span {
	display: inline-block;
} */

#fixedTitle {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 3;
	width: 100%;
	background-color: var(--light-blue);
	height: 73px;
}


#fixedTitle.faqTitle.fixed h2 {
	transition: all .5s linear;
	opacity: 1;
}

#fixedTitle.faqTitle.disappearing h2 {
	-webkit-animation: fadein .5s ease-in-out;
	-moz-animation: fadein .5s ease-in-out;
	animation: fadein .5s ease-in-out;
}

@keyframes fadein {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

.moreInfoFaq {
	position: relative;
	text-align: center;
	border: solid 1px var(--run);
	background-color: var(--safer);
	border-radius: 6px;
}

.semiCircle {
	position: absolute;
	top: -42px;
	left: 50%;
	padding: 16px;
	transform: translateX(-50%);
	border-radius: 50%;
	border: 1px solid var(--run);
	background-color: var(--safer);
	z-index: 0;
	width: 80px;
	height: 80px;
}

.moreInfoFaq img {
	position: absolute;
	top: -25px;
	left: 50%;
	transform: translateX(-50%);
	width: 51px;
	height: 54px;
	z-index: 3;
}

.moreInfoContent {
	position: relative;
	width: 100%;
	padding-block: 40px 48px;
	padding-inline: clamp(16px, 4.4vw, 20px);
	background-color: var(--safer);
	z-index: 2;
	border-radius: 6px;
}

#landing .section3 {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: left;
	margin-top: 80px;
	margin-bottom: 58px;
	padding: 0 20px
}

#landing .section3.soleterre {
	display: block;
	width: 50%;
	margin-bottom: 0;
	margin-top: 0;
}

#landing .section3b.soleterre {
	text-align: left;
	padding-inline: 20px;
	width: 55%;
}

#landing .boxSoleterre {
	display: inline-block;
	border: solid 3px var(--position);
	border-radius: 6px;
	padding: 30px 24px;
	text-align: left;
	height: fit-content;
}

.font-orange {
	color: #f18b00;
}

#landing .section3.soleterre .blueTitle {
	font-size: clamp(18px, 1.8vw, 20px);
	line-height: 1.53;
	color: var(--overtime);
	white-space: nowrap;
	text-align: left;
}

#landing .section3 p.text {
	width: 368px;
	text-align: left;
}

#landing .section3>div:last-child {
	padding-inline: 60px 0px
}

#landing .section3.soleterre>div:last-child {
	padding-right: 10px;
}


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

	#landing .section3.soleterre,
	#landing .section3b.soleterre {
		width: 100%;
	}

	#landing .section3b.soleterre {
		background-color: #f9f9f9;
	}

	#landing .boxSoleterre {
		border: 0;
		text-align: center;
	}

	#landing .section3.soleterre .paragraph_cnt,
	#landing .section3.soleterre .blueTitle {
		padding: 0px;
	}
}

#landing #esclusioni {
	padding: 5px 34px;
	border-radius: 6px;
	border: solid 1px var(--run);
	background-color: var(--event);
	color: var(--still);
	font-weight: 300;
	width: 288px;
	height: auto;
	margin-bottom: 36px;
}

#landing .landingButton {
	margin-top: 60px;
	letter-spacing: 0.5px;
	height: 60px;
	line-height: 16px;
	padding: 20px 50px;
	transition: .2s linear;
}

.landingButton span {
	position: static;
	font-weight: 200;
	opacity: 0.8;
	margin-left: 10px;
}

.landingButton.noCoupon {
	background-color: #ffffff;
	color: var(--overtime);
	box-shadow: 0 0 6px 0 rgba(96, 96, 96, 0.5);
}

#landing_popup .modal, #banner_info .modal {
	max-width: 1000px;
}

#infoBannerForm {
	max-width: 660px !important;
}

#landing_popup .modal .modal_content {
	overflow-y: auto;
}

#landing_popup #modal_title {
	font-size: 32px;
	line-height: normal;
	font-weight: 600;
	color: var(--still) !important;
	text-align: left !important;
	margin-bottom: 20px;
}

#landing_popup #modal_title span {
	font-size: 22px;
	font-weight: 300;
}

#landing_popup #modal_content {
	font-weight: 300;
}

#landing_popup .grey_wrapper {
	display: flex;
	justify-content: space-around;
	gap: 30px;
	padding: 20px;
	border-radius: 6px;
	background-color: var(--safer);
	margin: 30px 0;
}

#landing_popup .grey_wrapper .pop_box {
	padding: 15px 0px 20px;
	border-radius: 6px;
	border: solid 1px #cccccc;
	background-color: var(--event);
	width: 33%;
}

.pop_box img, .mx_box img {
	height: 24px;
	width: 24px;
}

#landing_popup .grey_wrapper .pop_box>div {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 1fr;
}

#landing_popup .grey_wrapper .pop_box>div>div {
	display: grid;
	grid-template-rows: 1fr 1fr 1fr;
	justify-items: center;
	align-items: center;
}

#landing_popup .grey_wrapper .pop_box h4 {
	text-align: center;
	font-weight: 600;
	margin-bottom: 20px;
}

#landing_popup .grey_wrapper .pop_box .small-text {
	color: var(--overtime);
	white-space: nowrap;
	font-weight: 600;
}

/* esclusioni e garanzia post diagnosi */

#exclusions .container, #garanziaPost .container {
	width: 100%;
	max-width: 1000px;
	border: 0 !important;
}

#exclusions .grey-container, #garanziaPost .grey-container {
	background-color: rgba(216, 216, 216, 0.2);
	padding: 40px 0 100px;
}

#exclusions .container .paper, #garanziaPost .grey-container .paper {
	padding: 40px 68px 80px;
	border-radius: 6px;
	border: solid 1px var(--run);
	background-color: var(--event);
	max-width: 1000px;
	width: 80%;
	margin: 0 auto;
	text-align: left;
}

#exclusions .container .paper {
	padding: 40px 68px 40px;
}

#exclusions h1 {
	padding: 40px 0 20px;
}

#garanziaPost .container .paper {
	padding-bottom: 40px;
}

#garanziaPost .paper ul {
	list-style: '- ';
	font-size: 12px;
	padding-left: 10px;
}

#garanziaPost .container .paper h3 {
	font-size: 18px;
	line-height: 2.08;
	margin-top: 4px;
}

#exclusions h2, #garanziaPost h2 {
	color: var(--overtime);
	font-size: 18px;
	line-height: 2.08;
	margin-bottom: 40px;
}

#exclusions .excl_details {
	margin: 40px 0;
	color: var(--power);
	font-size: 14px;
}

#garanziaPost .descr {
	max-width: 64%;
	margin: 0 auto;
	padding-bottom: 40px;
}

.prest_box {
	border-radius: 6px;
	border: solid 1px var(--run);
}

.prest_box .top {
	background-color: var(--event);
	padding: 10px 20px;
	border-bottom: 1px solid var(--run);
	border-radius: 6px 6px 0 0;
}

.prest_box .content {
	display: flex;
	background-color: var(--safer);
	padding: 20px 20px 30px;
	border-radius: 0 0 6px 6px;
}

.prest_box .content .box:first-child {
	padding-right: 36px;
	border-right: 1px dashed var(--run);
}

.prest_box .content .box:last-child {
	padding-left: 36px;
}

.prest_box .prest_name {
	font-size: 14px;
	line-height: 1.43;
	margin-bottom: 10px;
}

.prest_box .prest_name+small {
	font-size: 12px;
	line-height: 1.67;
}

#garanziaPost h5 {
	font-size: 12px;
}

#garanziaPost .h3_title_container {
	margin-bottom: 10px;
	align-items: center;
}

#garanziaPost .h3_title_container h3 {
	font-size: 18px;
	line-height: 37px;
}

#garanziaPost section h2 {
	margin: 34px 0 30px;
}

#garanziaPost section .row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 85px;
	padding-bottom: 25px;
}

#garanziaPost section .row:not(:first-of-type) {
	border-top: solid 1px var(--position);
	padding-top: 20px;
}

#garanziaPost section .row h5 span {
	color: var(--overtime);
	font-weight: 700;
}

#garanziaPost .paper p {
	font-size: 12px;
}

#garanziaPost .grey-container>div:last-of-type {
	width: 80%;
	max-width: 1000px;
	margin: 40px auto 0;
	font-size: 14px;
}

#garanziaPost a {
	color: var(--overtime);
}

#coupon_area {
	max-width: 400px;
	margin: 66px auto 4px;
	position: relative;
}

#coupon_area>img {
	width: 240px;
	height: 79px;
}

#coupon_area .title {
	font-size: clamp(16px, 4.2vw, 20px);
	font-weight: 700;
	line-height: 1.5;
	color: var(--overtime);
	margin: 20px 0;
}

#coupon_area .title img {
	vertical-align: middle;
	padding-left: 5px;
}

#cpn_input_cnt {
	display: flex;
}

#check_cpn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 77px;
	height: 62px;
	padding: 23px 26px;
	border-radius: 0px 4px 4px 0px;
	background-color: var(--overtime);
	color: var(--event);
	font-weight: 700;
	cursor: pointer;
}

#check_cpn img {
	display: none;
	height: 14px;
	width: 16px;
}

#coupon {
	width: calc(100% - 77px);
	height: 62px;
	padding: 17px;
	border-radius: 6px 0 0 6px;
}

#cpn_input_cnt+#coupon_label {
	display: none;
	position: absolute;
	bottom: -25px;
	left: 15px;
	font-size: 12px;
	line-height: 1.5;
}

#cpn_input_cnt.ok #coupon {
	background-color: var(--light-blue);
	border: 0;
}

#cpn_input_cnt.ok #check_cpn {
	background-color: var(--light-blue);
	border: 0;
	border-radius: 0px 6px 6px 0px;
	cursor: text;
}

#cpn_input_cnt.ok #check_cpn img {
	display: inline-block !important;
	height: 22px;
}

#cpn_input_cnt.ok #check_cpn span {
	display: none !important;
}

#cpn_input_cnt.ok+#coupon_label {
	display: block;
	color: var(--overtime);
}

#cpn_input_cnt.ko+#coupon_label {
	display: block;
	color: var(--error);
}

/* funnel d'acquisto */

.container {
	display: inline-block;
	width: clamp(900px, 95%, 1000px);
	max-width: 90%;
	padding: 60px 6% 80px;
	margin-bottom: 0;
	border-radius: 6px;
	border: solid 2px var(--run);
}

.funnel .container {
	border-radius: 0 0 6px 6px;
	border-top: 0;
}

.container>p {
	padding-bottom: 70px;
}

.container .centered {
	display: inline-flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	max-width: 552px;
}

.container .centered>div, .container .centered>section, .container .centered>form {
	width: 100%;
}

#funnel_home {
	font-size: 14px;
}

#funnel_home .centered .descr_text {
	text-align: left;
	padding-bottom: clamp(20px, 4.4vw, 40px);
	font-size: 12px;
}

.q_row {
	text-align: left;
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 40px;
}

.q_row .q_box:first-child {
	border-right: 1px dashed #ccc;
	padding-right: clamp(75px, 5vw, 100px);
}

.q_row .q_box:last-of-type {
	padding-left: clamp(75px, 5vw, 100px);
}

.q_row .q_box img {
	align-self: end;
}

.q_row>div p {
	font-size: 12px;
	line-height: 1.5;
}

.q_box {
	display: grid;
	grid-template-rows: 80px 80px 45px;
	align-items: center;
}

.q_box .field {
	margin-top: 13px;
	height: 60px;
	width: 200px;
}

.q {
	font-weight: 600;
	font-size: 16px;
	line-height: 27px;
	padding: 10px 0;
	text-align: left;
}

#q_3 {
	padding: 10px 0 0;
}

.q span {
	color: var(--overtime);
}

.bg-select {
	position: relative;
	height: 60px;
	padding: 0 16px;
}

#max_container .box_wrapper {
	justify-content: space-between;
	max-width: 600px;
}

.mx_box {
	padding: 34px 16px 12px;
	background-color: var(--safer);
	border-radius: 6px;
	border: solid 1px var(--run);
	cursor: pointer;
	margin-right: 2px;
	margin-bottom: 2px;
}

.mx_box b {
	white-space: nowrap;
}

.mx_box.active {
	position: relative;
	border: solid 3px var(--overtime);
	margin: -2px 0 0 -2px;
}

.mx_box.active:after {
	background-size: 12px 10px;
	content: '';
	background-color: var(--overtime);
	position: absolute;
	border-radius: 0 0 6px 6px;
	top: -1px;
	left: 50%;
	background-image: url(res/check.svg);
	background-position: center;
	background-repeat: no-repeat;
	box-shadow: 0 2px 4px 0 rgb(240 240 240 / 80%);
	transform: translateX(-50%);
	width: 100px;
	height: 20px;
}

.mx_box>div:first-child {
	border-bottom: 1px dashed #ccc;
	padding: 0 30px 10px;
}

.mx_box>div:nth-child(2) {
	padding-top: 14px;
	padding-bottom: 10px;
}

.mx_box .small-text {
	font-size: clamp(12px, 2.4vw, 14px);
	white-space: nowrap;
	padding-top: 5px;
}

input[type='radio'].small:checked {
	background-size: 8px 8px;
}

.recap-garanzie {
	color: var(--overtime);
	font-size: 20px;
	font-weight: 600;
	line-height: 1.5;
}

.panel {
	text-align: center;
	margin-top: 60px;
}

/* configurazione protezione  */
#setup_protection {
	text-align: center;
	padding-top: 0;
	width: 100%;
	margin-inline: auto;
}

.setup_top {
	display: inline-block;
	height: 82px;
	background-color: var(--overtime);
	background-image: url(img/umbrella_background.svg);
	background-position: right;
	background-repeat: no-repeat;
	width: 504px;
	max-width: 504px;
	padding: 22px 57px;
	padding-right: 0;
	text-align: left;
	border-radius: 6px 6px 0 0;
}

.setup_top h1 {
	color: var(--event);
	font-size: 16px;
	line-height: 1.69;
	padding: 0;
}

.setup_top h1 span {
	display: block;
	color: #9dd3de;
	font-size: 14px;
	line-height: 1.5;
	font-weight: 300;
}

#setup_protection .container {
	padding: 40px 0 0;
	border: 1px solid var(--run);
	border-top: 0;
	margin-bottom: 24px;
	width: 90%;
	max-width: 1000px;
}

#setup_protection .centered {
	width: 266px;
	padding: 0 0 40px;
	text-align: left;
}

#setup_protection #h5-insured {
	margin-bottom: 10px;
	font-size: 18px;
	line-height: 1.5;
}

#setup_protection .h5-prm {
	font-size: 18px;
	line-height: 1.5;
}

#setup_protection .centered .detail-row {
	color: var(--power);
	line-height: 1.5;
	font-size: 16px;
}

#setup_protection .centered .row:first-of-type {
	border-bottom: solid 0.5px var(--run);
	padding-bottom: 20px;
}

#setup_protection .centered .row.last {
	display: grid;
	grid-template-columns: 1fr 0.8fr;
	align-items: end;
	padding-top: 20px;
}

.setup_bottom {
	background-color: var(--safer);
	padding: 27px 0 21px;
	text-align: center;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.5;
	border-radius: 0 0 6px 6px;
}

/* questionario medico */

.img_backdrop {
	display: none;
}

.gender_box:first-child .img_backdrop.active {
	right: 45%;
	left: auto;
}

.img_backdrop.active {
	display: inline-block;
	background-color: #e8f2f9;
	position: absolute;
	top: -15px;
	left: 50%;
	width: 40px;
	height: 72px;
	z-index: -1;
	transform: translateX(-40%);
}

.gender_box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	cursor: pointer;
}

.gender_box:first-child {
	padding-right: 30px;
	border-right: 1px solid #ccc;
}

.gender_box:last-of-type {
	padding-left: 30px;
}

.gender_box .input_box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 14px;
	line-height: 27px;
	margin-top: 20px;
	margin-bottom: 2px;
}

#avvertenza {
	font-size: 14px;
	padding: 0 10px;
	display: inline-block;
}

#med_quest {
	max-width: 552px;
	display: inline-block;
}

.med_q {
	background-color: #f6f6f6;
	padding: 30px 24px;
	margin: 30px 0 0;
	border-radius: 6px;
	border: solid 1px #cccccc;
	text-align: left;
}

.med_q>p {
	padding-bottom: 14px;
}

.med_q input {
	margin-right: 6px;
}

.med_q b {
	padding-top: 2px;
}

#questionario .declare_cnt {
	margin: 60px 22px;
}

.declare_cnt {
	margin: 60px 0;
	display: flex;
	text-align: left;
}

/* sorrypage */

#sorryPage h1 {
	padding-bottom: 0;
}

#sorryPage>p {
	padding-bottom: 20px;
}

#sorry_form {
	padding: 30px 23px 30px 24px;
	border-radius: 6px;
	border: solid 1px var(--run);
	background-color: var(--safer);
	text-align: left;
}

#sorry_form img {
	padding-right: 14px;
}

#sorry_form .textEsmall {
	margin: 10px 0 34px;
}

#sorry_form .textEsmall small {
	color: var(--error);
}

#sorry_form textarea {
	width: 100%;
	height: 150px;
	padding: 16.5px 6px 6px 24px;
	border-radius: 6px;
	border: solid 1px var(--power);
}

#sorry_form small {
	display: block;
	padding-left: 28px;
}

#sorry_form .textEsmall:last-child textarea {
	height: 60px;
}

#funnel_modal, #landing_popup, #banner_info {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	padding: 17px;
	padding-top: 34px;
	padding-bottom: 34px;
	z-index: 2000;
	background-color: rgba(0, 0, 0, 0.7);
}

.modal {
	max-width: 740px;
	margin: 0 auto;
	border-radius: 6px;
	box-shadow: 0 2px 12px 0 rgb(0 0 0 / 50%);
	background-color: #ffffff;
	display: flex;
	flex-direction: column;
	position: relative;
	top: 50%;
	transform: translate(0, -50%);
	text-align: left;
	padding: 0px 24px 20px 66px;
}

#l_popup.modal {
	padding-bottom: 0;
}

.modal_content {
	padding-right: 44px;
}

.modal h1 {
	padding-top: 0;
	color: var(--overtime);
	font-weight: 400;
	font-size: 32px;
	line-height: 1.13;
}

.modal p {
	font-weight: 700;
}

.modal_top {
	padding: 27px 0 25px;
	padding-left: clamp(20px, 4.4vw, 40px);
	position: relative;
	background-color: #ffffff;
	text-align: right;
}

.modal_top img {
	cursor: pointer;
}

.modal button {
	margin-top: 52px;
}

#small_back {
	text-decoration: underline;
	color: var(--instant);
	text-align: left;
	margin: 20px 0 70px;
	cursor: pointer;
}

/* sezione dati anagrafici */

#i_tuoi_dati>.centered>div:first-child {
	display: flex;
	padding-left: 19px;
	margin-bottom: 17px;
	text-align: left;
}

#i_tuoi_dati .img_backdrop {
	text-align: left;
	transform: translateX(-35%);
	height: 89px;
	top: 0;
	left: 0;
}

.ico_gender {
	margin-right: 24px;
	margin-top: 16px;
	height: 74px;
	width: 53px;
}

.field-flex {
	display: flex;
	justify-content: space-between;
}

.field-flex>div {
	position: relative;
}

.field-flex input+label, .field-flex select+label {
	display: none;
}

.field-flex input.error+label, .field-flex select.error+label {
	display: block;
	color: var(--error);
}

#i_tuoi_dati input, #i_tuoi_dati select {
	padding-left: 24px;
}

#i_tuoi_dati form {
	margin-bottom: 40px;
}

#estendi_copertura_text {
	text-align: center;
	margin-bottom: 21px;
}

#age_div_cnt {
	display: grid;
	align-items: center;
	padding: 0 19px 0 12px;
	border-radius: 6px;
	background-color: var(--position);
	width: 27%;
	grid-template-columns: 1fr 2.7fr;
	height: 60px;
	justify-items: flex-start;
	font-size: 16px;
}

#age_div_cnt.error {
	border: 2px solid var(--error);
}

#age_div_cnt.error+#age_small {
	color: var(--error);
}

#age_div_cnt img {
	height: 14px;
}

#age_small {
	position: absolute;
	bottom: -25px;
	font-size: 12px;
	left: 74%;
}

#add_children {
	display: flex;
	justify-content: center;
	align-items: center;
	border: dashed 2px var(--run);
	border-radius: 6px;
	color: var(--overtime);
	padding: 24px 20px 18px;
	margin-top: 18px;
	cursor: pointer;
}

#add_children .circle, .addMobileDiv .circle {
	width: 42px;
	height: 42px;
	background-color: var(--overtime);
	background-image: url(img/plus.svg);
	background-size: 20px;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: 50%;
	flex-shrink: 0;
}

#add_children.vertical {
	width: calc(50% - 12px);
	margin: 0;
	margin-bottom: 40px;
	/* desktop only */
	flex-direction: column;
}

#add_children.vertical .circle {
	margin-bottom: 20px;
}

#add_children.horizontal {
	width: 100%;
	margin: 0;
	margin-bottom: 18px;
}

#add_children.horizontal .circle {
	margin-right: 25px;
}

#add_children b {
	line-height: 1.5;
}

.child {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.child .child_box {
	margin: 0 0 40px 0;
}

.child_box {
	position: relative;
	margin: 0 24px 18px 0;
	padding: 23px 22px 0px;
	border-radius: 6px;
	border: solid 1px var(--run);
	background-color: var(--safer);
	width: calc(50% - 12px);
}

.child_box>div:first-of-type {
	display: flex;
	justify-content: center;
	align-items: center;
}

.child_box>img:first-child {
	position: absolute;
	top: 16px;
	right: 16px;
}

.child_box .field {
	margin-bottom: 34px;
}

.child_box h4 {
	text-align: center;
	padding: 10px 0 20px;
}

#i_tuoi_dati .panel {
	margin-top: 40px;
}

/* informativa privacy */

.h2-wrapper {
	margin-bottom: 20px;
	text-align: left;
	align-items: flex-start;
}

#informativa .declare_cnt {
	margin-top: 30px;
	margin-bottom: 0;
	padding: 30px 24px 40px;
	border-radius: 6px;
	border: solid 1px var(--run);
}

#informativa .declare_cnt input {
	margin-right: 13px;
}

#informativa img {
	margin-right: 10px;
}

/* riepilogo */
#riepilogo .h2-wrapper {
	align-items: center;
}

#riepilogo.container {
	padding-bottom: 30px;
}

#riepilogo .small-wrapper {
	margin-block: 40px 30px;
	text-align: left;
	border-bottom: 1px dashed var(--run);
	padding-bottom: 25px;
}

#riepilogo .recap_img {
	height: 24px;
	margin-right: 10px;
}

#riepilogo .garanzia {
	text-align: left;
}

#riepilogo #people {
	margin-bottom: 40px;
}

#people table {
	width: 100%;
	border-spacing: 0;
	border-collapse: separate;
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
}

#people table thead tr, #people table th {
	background-color: var(--overtime);
	color: #ffffff;
	font-size: 12px;
	line-height: 2.25;
}

#people table thead th:last-child {
	border-radius: 1px solid var(--event);
}

#people table:last-of-type tbody tr:last-of-type td {
	padding: 0 0 30px;
}

#people table tbody tr td {
	padding-top: 20px !important;
}

#people table tbody tr:last-of-type td {
	padding: 20px 0 30px;
}

#people th, #people td {
	text-align: left;
	font-weight: 300;
}

#people td {
	line-height: 1.69;
}

.validity_wrapper {
	border-radius: 6px;
	border: solid 1px var(--run);
	margin-bottom: 70px;
}

.validity_box {
	padding: 30px 32.5px 21px;
}

.validity_box b {
	color: var(--overtime);
	font-size: 20px;
}

#riepilogo .d_price_wrapper, #riepilogo .m_price_wrapper {
	border: 0;
}

#riepilogo .d_price_ext_wrap {
	margin-top: 20px;
}

.d_price_ext_wrap {
	border: 1px solid var(--run);
	border-radius: 6px;
	margin-top: 40px;
	margin-inline: auto;
}

.d_price_wrapper {
	display: inline-grid;
	column-gap: 30px;
	align-items: center;
	grid-template-columns: 0.8fr 1fr 1fr;
	padding: 29px 60px 25px;

}

.d_price_wrapper.smaller {
	grid-template-columns: 1fr 1fr;
	/* width: 50vw; */
}

.soleterre_strip {
	border-radius: 0 0 6px 6px;
}

.m_price_ext_wrap {
	margin-top: 40px;
	border: solid 1px var(--run);
	border-radius: 6px;
}

.m_price_wrapper {
	padding: 26px 14px;
}

.m_price_wrapper span {
	font-size: 12px;
}

#pay {
	border: solid 1px var(--run);
	background-color: var(--safer);
	padding: 33px 24px 20px 22px;
	border-radius: 6px;
}

#stripe {
	margin-bottom: 40px;
}

.stripe-privacy {
	color: var(--power);
	font-size: 12px;
}

/* pagamento */
/* pagamento */
/* pagamento */
/* pagamento */
/* pagamento */
/* pagamento */
/* pagamento */

.period_wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 60px;
}

.period_wrapper>div:first-child {
	text-align: left;
	padding-left: 35px;
}

.period_wrapper>div>div:not(:last-child) {
	margin-bottom: 24px;
}

.period_wrapper>div:nth-child(2) {
	/* padding-left: 12px; */
	text-align: left;
	/* justify-self: self-end; */
	max-width: 240px;
}

.period_wrapper .small_title {
	color: var(--power);
	font-size: 12px;
}

.rinnovo_polizza_details {
	font-size: 12px;
}

/* thank you page */
/* thank you page */
/* thank you page */
/* thank you page */
/* thank you page */
/* thank you page */

#congrats {
	width: 100%;
}

#congrats .congrats_top {
	margin: 0 auto 40px;
	max-width: 500px;
}

#congrats .container {
	border: 1px solid var(--run);
	border-radius: 6px;
	max-width: 552px;
	padding: 30px 24px 10px;
	background-color: #f9f9f9;
}

#congrats .container.soleterre {
	background-color: #ffffff;
	text-align: left;
	padding: 40px;
	margin-bottom: 40px;
	border: solid 2px #e5e5e5;
}

@media screen and (max-width: 719px) {
	#congrats .container.soleterre {
		padding-inline: 30px;
	}
}

#congrats .container .centered {
	text-align: left;
}

#congrats .container .centered>div {
	background-color: #fff;
	border-radius: 6px;
	padding: 20px;
	margin-bottom: 20px;
}

#congrats .title_container {
	display: flex;
	text-align: left;
}

#congrats .title_container img {
	margin-right: 22px;
	margin-bottom: 30px;
}

#congrats .title_container a {
	color: var(--instant);
}

#congrats .info_polizza_cnt h4 {
	color: var(--overtime);
	font-size: clamp(16px, 4.2vw, 18px);
	line-height: 1.5;
}

#congrats .info_polizza_cnt>div {
	line-height: 1.5;
	padding: 10px 0;
}

#congrats .info_polizza_cnt .grid_cnt {
	display: grid;
	align-items: center;
	grid-template-columns: 0.1fr 0.4fr 1.2fr;
	gap: 5px;
}

#congrats .info_polizza_cnt .span_small {
	font-size: 10px;
	font-weight: 300;
	line-height: 1.4;
	color: var(--still);
}

#congrats .a {
	font-weight: 400;
}

/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */
/* MEDIA QUERIES */

@media screen and (max-width: 1000px) {
	#landing_popup .grey_wrapper {
		flex-direction: column;
		margin-bottom: 40px;
	}

	#landing_popup .modal, #banner_info .modal {
		max-height: 90vh;
	}

	#landing_popup .grey_wrapper .pop_box {
		width: 100%;
	}
}

@media screen and (max-width: 900px) {
	.max900 {
		display: none;
	}

	.section1>div:first-child {
		text-align: left;
		padding: 0;
	}

	.section1 .loghi_container_wrapper {
		padding: 0px 33px;
		min-width: 40%;
	}

	#logo-axa {
		margin-left: 0;
		margin-bottom: 40px;
	}

	.loghi_mobile {
		display: block;
	}

	.loghi_container {
		display: none;
	}

	#landing .section2 {
		margin: 60px 20px;
	}

	#landing .section2 .a {
		font-size: 16px;
	}

	#landing .section3 p.text {
		width: auto;
	}

	#faq_section>div>div {
		padding: 0 clamp(20px, 3.4vw, 40px);
	}

}

@media only screen and (max-width: 719px) {
	#faq .container {
		max-width: 90%;
	}

	#faq_top {
		min-height: auto;
	}

	.faqTitle {
		padding: 24px;
	}

	.container {
		width: 100%;
		max-width: 100%;
		border: 0;
		padding: 40px 24px 0;
	}

	.container>p {
		padding-bottom: 20px;
	}

	/* modali - mobile */
	.modal {
		padding: 0px 20px 20px 27px;
		text-align: center;
		max-width: 95%;
	}

	.modal h1 {
		padding-bottom: 20px;
	}

	.modal_content {
		padding-right: 14px;
	}

	.modal_top_grey {
		height: 70px;
		border-radius: 0;
	}

	.modal_req_info .modal_content h1 {
		padding-block: 20px 10px;
		font-size: 28px;
		line-height: 40px;
	}

	.modal_req_info .field-flex {
		flex-direction: column;
		margin-bottom: 0;
	}

	.modal_req_info .field-flex input:first-child {
		margin-bottom: 34px;
	}

	.modal_req_info .field-flex>div {
		width: 100% !important;
	}

	button.when_call {
		width: 49.3% !important;
		margin-right: 0;
		padding-inline: 13px;
		font-size: 14px;
	}

	.modal_req_info .btnsmall {
		width: 100% !important;
	}

	#small_back {
		text-align: center;
	}

	.modal button {
		width: 100%;
		max-width: 100%;
		margin-top: 72px
	}

	#funnel_modal, #landing_popup, #banner_info {
		padding: 0 !important;
	}

	#landing_popup .modal, #banner_info .modal {
		width: 100%;
		max-width: 100%;
		max-height: 100% !important;
		height: 100%;
		transform: none;
		border-radius: 0;
		top: 0;
		padding: 70px 0 0 !important;
	}

	#landing_popup .grey_wrapper .pop_box {
		width: 100%;
	}

	#landing_popup .grey_wrapper .pop_box .small-text {
		font-size: 14px;
	}

	#landing_popup .modal_content .detail {
		font-size: 14px;
		line-height: 1.5;
		padding: 0 20px;
		margin-bottom: 70px;
	}

	#landing_popup .modal_top, #banner_info .modal_top_grey {
		top: 0;
		position: absolute;
		left: 0;
		display: flex;
		align-items: center;
		width: 100%;
		margin: 0;
		background-color: var(--overtime);
		text-align: left;
		padding: 21px;
	}

	#landing_popup .modal_content {
		padding: 20px;
		overflow-y: auto;
	}

	#banner_info .modal_content {
		padding: 24px;
		overflow-y: auto;
	}

	#landing_popup .modal_top #close_icon, #banner_info .modal_close {
		display: none;
	}

	/* landing - mobile  */
	.home-container {
		width: 90%;
		padding-bottom: 76px;
		margin-bottom: 40px;
	}

	#logo-altroconsumo {
		height: 42px;
		margin-bottom: 20px;
		padding-right: 0;
	}

	#landing h1 {
		line-height: 1.17;
		color: var(--overtime);
		font-weight: 300;
	}

	#landing h2 {
		color: var(--still);
		line-height: 2.92;
	}

	.section1 {
		flex-direction: column;
		padding: 0;
	}

	.section1>div:first-child {
		padding: 0px;
	}

	.section1 h3+p {
		max-width: 100%;
	}

	.section1 h3+p+p {
		max-width: 100%;
	}

	.section1 .loghi_container_wrapper {
		padding: 0px;
	}

	#landing .loghi_container {
		padding-left: 0;
		text-align: center;
	}

	#landing .loghi_container>div {
		display: none;
	}

	#logo-axa {
		height: 90px;
		margin: 40px 0;
	}

	#landing {
		padding-bottom: 0;
	}

	#landing h3 {
		text-align: center;
	}

	#landing .section2 {
		padding: 0;
		margin: 60px 0 !important;
		border: 0;
	}

	#landing .boxes {
		flex-direction: column;
	}

	#landing .box {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	#landing .line {
		display: none;
	}

	#landing .box:not(:last-child) {
		margin-bottom: 60px;
	}

	#landing .box img {
		margin: 20px 0;
	}

	#landing .box .paragraph {
		min-height: auto;
		margin-bottom: 20px;
		font-size: 14px;
	}

	#landing .box:last-child .paragraph {
		margin-bottom: 0px;
	}

	#landing .family {
		text-align: center;
		flex-direction: column;
		align-items: center;
	}

	#landing .family img {
		height: 60px;
		margin-bottom: 10px;
		margin-right: 0 !important;
	}

	#landing .section3 {
		display: block;
		background-color: #f9f9f9;
		text-align: center;
		padding: 30px 20px;
		border-top: 1px dashed #ccc;
		border-bottom: 1px dashed #ccc;
	}

	#landing .section3.soleterre .blueTitle {
		padding: 0px;
	}

	#landing .section3>div:last-child {
		padding: 0px;
	}

	#landing .section3 p.text {
		font-size: clamp(14px, 3.4vw, 16px);
		margin-top: 20px;
		width: 100%;
	}

	#landing #esclusioni {
		width: 90%;
		margin-bottom: 40px;
	}

	#landing .landingButton {
		position: fixed;
		bottom: 0;
		left: 0;
		border-radius: 0;
		width: 100%;
		max-width: 100%;
		white-space: nowrap;
		z-index: 100;
		padding: 20px 0;
	}

	#landing_popup .modal_content>div:first-of-type {
		line-height: 1.69;
		margin-bottom: 20px;
	}

	#landing_popup #modal_content, #landing_popup .modal_content h1,
	#landing_popup .modal_content>div:first-of-type,
	#banner_info .modal_content {
		text-align: left;
	}

	#requestSent .modal_content {
		padding-top: 60px;
		text-align: center;
	}

	#exclusions .container, #garanziaPost .container {
		width: 100%;
		max-width: 100%;
		background-color: var(--event);
		padding: 0px 24px 0;
		border: 0;
		margin-bottom: 0;
	}

	#exclusions h1 {
		padding-bottom: 40px;
	}

	#exclusions .container .paper {
		max-width: 100%;
		width: 100%;
		padding: 20px 20px 0;
	}

	#exclusions h2, #garanziaPost h2 {
		line-height: 1.5;
		margin-bottom: 20px;
	}

	#exclusions .excl_details {
		font-size: 16px;
	}

	#exclusions .excl_details:last-of-type {
		margin-bottom: 40px;
	}

	#garanziaPost h1 {
		padding-bottom: 20px;
	}

	#garanziaPost .descr {
		padding: 0 10px 20px;
		max-width: inherit;
	}

	#garanziaPost .container .paper {
		width: 100%;
		padding: 20px;
	}

	#garanziaPost .container .paper.second {
		border-bottom: 0;
		border-radius: 0 !important;
		padding-top: 40px;
	}

	#garanziaPost .paper ul {
		font-size: 16px;
	}

	#garanziaPost .container .paper:first-of-type {
		border-radius: 6px 6px 0 0;
		padding-bottom: 0;
		border-bottom: 0;
	}

	#garanziaPost .container .paper.last {
		margin-top: 0 !important;
		border-top: 0;
		border-radius: 0 0 6px 6px;
	}

	#garanziaPost .container .paper.last p {
		font-size: 16px !important;
	}

	.prest_box {
		margin: 20px -10px 40px;
	}

	.prest_box .top img {
		height: 30px;
	}

	.prest_box .content {
		flex-direction: column;
	}

	.prest_box .content .box:first-child {
		padding-right: 0;
		border-right: 0;
		border-bottom: 1px dashed var(--run);
		padding-bottom: 20px;
	}

	.prest_box .content .box:last-child {
		padding-left: 0;
		padding-top: 20px;
	}

	.prest_box .prest_name {
		display: block;
		font-size: 16px;
		line-height: 1.25;
		margin-bottom: 10px;
	}

	.prest_box .prest_name+small {
		font-size: 14px;
		line-height: 1.43;
	}

	#garanziaPost section h2 {
		margin: 40px 0 20px;
	}

	#garanziaPost section h2:last-of-type {
		margin: 20px 0 20px;
	}

	#garanziaPost .bordered {
		padding-bottom: 40px;
		border-bottom: 1px solid var(--run);
	}

	#garanziaPost section .row {
		grid-template-columns: 1fr;
		padding-bottom: 0;
	}

	#garanziaPost section .row>div {
		padding-bottom: 20px;
	}

	#garanziaPost section .row p, #garanziaPost h5 {
		font-size: 16px;
		line-height: 1.69;
	}

	#garanziaPost section .row:not(:first-of-type) {
		border-top: 0;
		padding-top: 0;
	}

	.landingButton.scrolling {
		bottom: -60px !important;
		behavior: smooth;
	}

	.landingButton.couponInputActive {
		opacity: 0;
		/* behavior: smooth; */
	}


	/* configurazione polizza - mobile */

	#setup_protection {
		padding: 60px 25px 120px;
	}

	#setup_protection .container {
		padding-top: 0;
		border: 1px solid var(--run);
		border-radius: 0 0 6px 6px;
		margin-bottom: 40px;
	}

	#setup_protection .centered {
		display: none;
	}

	.setup_top {
		width: 100%;
	}

	.setup_bottom {
		border-radius: 0 0 6px 6px;
		background-color: var(--event);
		padding: 80px 0 100px;
	}

	/* questionario - mobile */
	.q_row>div p {
		font-size: 14px;
	}

	#funnel_home .centered {
		padding: 0 20px;
	}

	#funnel_home .centered .descr_text {
		font-size: 14px;
		line-height: 1.5;
	}

	#funnel_home .container {
		padding-top: 0;
	}

	.q_row {
		grid-template-columns: 1fr;
		margin-bottom: 12px;
		padding-bottom: 4px;
		border-bottom: 1px solid var(--run);
	}

	.q_box {
		grid-template-rows: 83px 50px 44px;
	}

	.q_row .q_box:first-child {
		border-right: 0px;
		border-bottom: solid 1px var(--run);
		padding-bottom: 4px;
		grid-template-rows: 82px 44px 54px;
		padding-right: 0;
	}

	.q_row .q_box:last-of-type {
		padding-top: 12px;
		padding-left: 0;
		grid-template-rows: 81px 70px 42px;
	}

	.q_row .q_box:last-of-type .field {
		margin-top: 7px;
	}

	.q_box .field {
		margin-top: 0;
		width: 100%;
	}

	#q_3 {
		padding: 10px 0;
	}

	.mx_box>div:first-child {
		border-right: 1px dashed #ccc;
		border-bottom: 0;
		/* padding: 0 30px 10px; */
	}

	.flex.no_flex_mob {
		display: block;
	}

	.mx_box.mob {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		padding: 25px 0 0;
	}

	.mx_box.mob>div:not(:last-of-type) {
		width: 50%;
		padding: 0 4vw 0;
		margin-bottom: 20px;
	}

	.mx_box.mob.active::after {
		display: none;
	}

	.select_btn {
		color: var(--overtime);
		font-weight: 700;
		background-color: #ffffff;
		width: 100%;
		border-top: 1px solid #ccc;
		border-radius: 0 0 6px 6px;
		font-size: 14px;
		height: 36px;
		line-height: 36px;
	}

	.mx_box.mob.active .select_btn {
		align-items: center;
		background-color: var(--overtime);
		color: var(--event);
		border: 0;
		border-radius: 0;
		line-height: 44px;
	}

	.mx_box.mob.active .select_btn img {
		height: 12px;
		width: 16px;
	}

	.mx_box.mob.active .select_btn span {
		margin-right: 10px;
	}

	.recap-garanzie:first-child {
		margin-bottom: 20px;
	}

	#funnel_home .panel {
		margin-top: 30px;
	}

	/* mobile -  step1 - questionario  */

	.gender_box img {
		height: 65px;
		width: auto;
	}

	.gender_box input {
		margin-right: 0 !important;
	}

	.gender_box .input_box {
		flex-direction: column-reverse;
	}

	#avvertenza {
		font-size: 16px;
		padding: 0 20px;
	}

	#questionario .declare_cnt {
		margin: 30px 22px;
	}

	/* mobile -  step2 - dati anagrafici  */
	#i_tuoi_dati form {
		margin-bottom: 40px;
	}

	#i_tuoi_dati .centered>div:first-child {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
		padding: 0;
	}

	#i_tuoi_dati h2 {
		font-size: 20px;
		margin: 10px 0;
	}

	.ico_gender {
		margin-right: 0;
	}

	#i_tuoi_dati {
		padding: 28px 25px;
	}

	#i_tuoi_dati form {
		padding: 30px 20px 40px;
		background-color: var(--safer);
		border-radius: 6px;
		border: solid 1px var(--run);
	}

	#i_tuoi_dati .field {
		display: block;
		margin-bottom: 0;
	}

	#i_tuoi_dati .field>div {
		width: 100% !important;
	}

	#i_tuoi_dati .field>div.smaller {
		width: 56% !important;
	}

	#i_tuoi_dati .field input, #i_tuoi_dati .field select {
		margin-bottom: 34px;
	}

	input.no_margin {
		margin-bottom: 0 !important;
	}

	#age_div_cnt {
		width: 46%;
		margin-bottom: 34px;
	}

	#age_small {
		bottom: -24px;
		left: 4px;
	}

	#estendi_copertura_text {
		margin-bottom: 36px;
	}

	.child_box {
		margin: 0 0 40px;
		width: 100%;
	}

	#add_children.vertical {
		width: 100%;
		flex-direction: row;
	}

	#add_children.vertical img {
		margin-bottom: 0;
		margin-right: 16px;
		height: 42px;
		width: 42px;
	}

	#add_children.vertical .circle {
		margin-bottom: 0;
		margin-right: 25px;
	}

	#add_children b {
		text-align: left;
	}

	/* mobile -  step3 - informativa  */
	#informativa.container {
		padding: 60px 6% 0;
	}

	#informativa img {
		margin-left: 5px;
	}

	#informativa .paragraph {
		margin-top: 4px;
		padding-left: 30px;
	}

	/* mobile -  step4 - riepilogo  */

	.h2-wrapper {
		padding-top: 20px;
		line-height: 1.4;
	}

	.validity_wrapper {
		flex-direction: column;
		padding: 20px 5px 10px;
		margin-bottom: 40px !important;
	}

	.validity_wrapper>div:first-child {
		flex-direction: column;
	}

	.validity_box:first-of-type {
		margin-right: 0;
	}

	.validity_box {
		padding: 0 0 20px;
	}

	#riepilogo .panel {
		margin-top: 30px;
	}

	/* mobile -  step5 - pagamento  */
	#payment .container {
		padding-top: 60px;
	}

	#payment .paragraph {
		padding: 0 20px;
	}

	#payment .paragraph:last-of-type {
		line-height: 1.69;
	}

	#payment .panel {
		margin-top: 50px;
	}

	.period_wrapper {
		grid-template-columns: 1fr;
		padding: 0 20px;
	}

	.period_wrapper>div:first-child {
		padding-left: 0;
	}

	.period_wrapper>div>div:not(:last-child) {
		margin-bottom: 21px;
	}

	.period_wrapper>div:nth-child(2) {
		padding-left: 0;
		border-left: 0;
		margin-top: 40px;
		justify-self: self-start;
		max-width: 100%;
	}

	.period_wrapper .small_title {
		font-size: 14px;
		line-height: 1.43;
	}

	.rinnovo_polizza_details {
		font-size: 16px;
		line-height: 1.69;
	}

	.m_price {
		grid-template-columns: 1fr !important;
		align-items: center;
		justify-items: center;
		width: 85%;
		padding: 29px 30px 25px;
		row-gap: 10px;
	}

	#salvo_disdetta {
		font-size: 16px !important;
	}

	/* thank you page */
	#congrats .container {
		max-width: 90%;
		line-height: 1.69;
		padding: 30px 24px 10px;
	}

	#congrats .congrats_top {
		padding: 40px 44px 0;
		width: 100%;
	}

	#congrats .title_container {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	#congrats .title_container h1 {
		line-height: 1.25;
		padding: 24px 0 30px;
	}

	#congrats .title_container img {
		margin: 0 !important;
	}

	#congrats .container .centered>div {
		padding: 20px 10px;
	}

	#congrats .container .centered>div:nth-child(2) {
		padding-bottom: 10px;
	}

	#congrats .info_polizza_cnt .grid_cnt {
		grid-template-columns: 0.2fr 0.8fr 1.1fr;
		gap: 10px;
	}
}

@media only screen and (max-width: 768px) {
	h2 {
		font-size: 18px !important;
		line-height: 1.35;
	}

	#riepilogo .h2-wrapper {
		align-items: flex-start;
	}
}

@media only screen and (min-width: 500px) {
	#congrats .info_polizza_cnt .grid_cnt {
		grid-template-columns: 0.1fr 0.4fr 1.1fr;
		gap: 10px;
	}
}

@media only screen and (max-width: 400px) {
	.image_wrapper img:first-child {
		display: none;
	}

	.image_wrapper img:last-child {
		display: block !important;
	}

	.home-container {
		margin-top: -22vw;
	}
}

@media only screen and (max-width: 320px) {
	.modal_req_info .modal_content h1 {
		font-size: 26px;
	}

	button.when_call img {
		margin-right: 4px;
	}

	button.when_call {
		font-size: 12px;
	}

	#landing h2, .section1 h3 {
		font-size: 26px;
	}
}

@media only screen and (max-width: 720px) {
	.max700 {
		display: block;
	}
}

@media only screen and (min-width: 720px) {
	#banner {
		padding: 16px 30px;
	}

	.premio_compr {
		text-align: left;
	}

	#requestSent .modal_content {
		padding: 200px 0 320px;
	}

}

@media only screen and (min-width: 900px) {}

@media screen and (min-width: 2000px) {
	main {
		max-width: 2000px;
		margin-right: auto;
		margin-left: auto;
	}
}

@media screen and (min-width: 1400px) {
	#banner .xl_desktop {
		width: 220px;
	}

	#banner {
		padding: 28px 20px 27px;
	}

	#setup_protection {
		max-width: 1500px;
	}
}

@media screen and (min-width: 1000px) {
	.desktop_large {
		display: block;
	}
}

#verifyEmail .grey-container {
	position: relative;
	margin-inline: auto;
	max-width: 410px;
	padding: 30px 20px;
	margin-top: 28px;
	border-radius: 6px;
	border: solid 1px var(--run);
	background-color: var(--safer);
	transition: all .5s ease-in-out;
}

#verifyEmail .grey-container.border-radius {
	border-radius: 6px 6px 0 0;
	padding-bottom: 100px;
}

#verifyEmail h1 {
	color: var(--still);
	padding: 20px 0 10px;
	font-weight: 600;
}

#verifyEmail #edit_done {
	height: auto;
	flex-direction: column;
	align-items: center;
	display: flex;
	text-align: left;
	max-width: 410px;
	margin-inline: auto;
	transition: all .5s ease-in-out;
	border: 0;
	opacity: 0;
	position: absolute !important;
	padding: 16px 6px;
	z-index: -1;
	left: 0;
	bottom: 0;

}

#verifyEmail #edit_done.show {
	opacity: 1;
	z-index: 2;
	left: 0;
	bottom: 0;
}

#memoCodeField {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}

#memoCodeField input {
	text-align: center;
	display: inline-block;
	width: 50px;
	height: 51px;
	margin: 20px 0;
	border-radius: 6px;
	padding: 12px;
}

#memoCodeField.error input {
	border: 1px solid var(--error);
	margin-bottom: 10px;
}

#memoCodeField label {
	display: none;
}

#memoCodeField.error {
	position: relative;
}

#memoCodeField.error label {
	display: block;
	color: var(--error);
	font-size: 12px;
	margin-bottom: 20px;
	bottom: -38px;
	z-index: 2;
	position: absolute;
}

#resendMemoCodeBtn {
	margin-top: 20px;
	height: auto;
	width: auto;
	background-color: inherit;
}


#newEmail {
	margin-top: 33px;
	padding: 16px 24px;
	max-width: 380px;
}

#newEmail.error {
	border: 1px solid var(--error);
}

#newEmail+label {
	display: block;
	opacity: 0;
	font-size: 12px;
	margin-top: 10px;
	color: var(--error);
}

#newEmail.error+label {
	opacity: 1;
}

#editEmailModal .back {
	text-align: center;
	display: flex;
	align-items: center;
	margin-top: 24px;
	color: var(--walk);
}

#editEmailModal .back img {
	margin-left: 24px;
	margin-right: 10px;
}

#verifyCodeBtn {
	min-width: 0;
	margin-top: 30px;
}


@media screen and (max-width: 768px) {
	#verifyEmail {
		padding-right: 0;
	}

	#verifyEmail .grey-container {
		padding: 30px 6px;
	}

	#memoCodeField input {
		margin: 20px 7px 20px 0;
	}
}

@media screen and (max-width: 380px) {
	#memoCodeField input {
		width: 40px;
		height: 40px;
	}
}