html {
	padding: 0;
	margin: 0;
}

body {
	padding: 0;
	margin: 0;
	font-family: 'Nunito', sans-serif;
}

header {
	display: flex;
	background-color: #2A7DE1;
	height: 5.125rem;
	line-height: 5.5rem;
	padding: 0 5.75rem;
	justify-content: space-between;
}

.logo-cnt a {
	display: block;
	height: 100%;
	line-height: 4.8rem;
}

header img {
	height: 3.75rem;
}

header div.actions img {
	height: 2.188rem;
}	

header div.actions a:first-child {
	margin-right: 2.188rem;
}

main {
	padding: 0;
}

footer {
	background-color: #424241;
	padding: 0 5.75rem;
}

footer img {
	height: 8.75rem;  
}

#copy-success {
	display: none;
}

#copy-link {
	background-color: #2A7DE1;
	color: #fff;
	font-size: 1.125rem;
	font-family: 'Roboto';
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	padding: 15px 25px;
	border-radius: 10px;
	margin-top: 16px;
	font-style: italic;
	position: inherit;
	display: block;
	text-align: center;
}

#copy-link:hover {
	cursor: pointer;
}

#loading-box {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #fff;
	z-index: 1000000000;
	opacity: 0.7;
	display: none;
}

iframe {
	z-index: 100000000000;
}

#loading-box .loadingio-spinner-dual-ring-yq2d5grl8wk {
	position: fixed;
	left: 50%;
	top: 50%;
	margin: -25px -25px 0 0;
}

.blue {
	color: #2A7DE1;
}

.tooltip-inner {
	background-color: #2A7DE1;
	color: #fff;
	padding: 10px 15px;
}

.menu-mobile {
	background-color: #2A7DE1;
	color: #fff;
	display: flex;
	position: fixed;
	flex-direction: column;
	padding: 25px 20px;
	border-radius: 0 0 25px;
	top: 75px;
	left: 0;
	display: none;
}

.menu-mobile a {
	display: block;
	padding: 6px 0;
}

.menu {
}

.menu ul {
	padding: 0;
	list-style: none;
}

.menu ul li {
	font-size: 1.125rem;
	display: inline-block;
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	padding: 0 40px;
}

.main {
	padding: 5rem 9.375rem;
}

.box-contents {
	padding: 0 9.375rem;
}

h1,
.h1 {
	font-size: 2rem;
	font-weight: 800;
	color: #fff;
	text-transform: uppercase;
	line-height: 1;
	margin: 0 0 10px 0;
}

h3.title {
	font-size: 1.688rem;
	font-weight: 800;
	text-transform: uppercase;
	padding-top: 3rem;
	padding-bottom: 2rem;
	margin: 0;	
}

.btn {
	padding: 10px 15px;
	text-transform: uppercase;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
	background-clip: padding-box;
	-moz-background-clip: padding;
	background-clip: padding-box;
	font-size: 1.125rem;
	font-weight: 700;
	font-style: italic;
}

.btn.neg {
	border: 2px solid #fff;
	color: #fff;
}

.btn.neg:hover,
a.btn.neg:hover {
	background-color: #fff;
	color: #2A7DE1;
}

.btn.pos {
	border: 2px solid #2A7DE1;
	color: #fff;
	background-color: #2A7DE1;
}

.btn.pos:hover,
a.btn.pos:hover {
	background-color: #fff;
	color: #2A7DE1;
}

.btn-atcion:hover,
a.btn-atcion:hover {
	width: 380px;
}

.btn.btn-atcion {
	display: flex;
	justify-content: space-between;
	width: 340px;
	font-weight: 600;
	font-style: italic;
	transition: width 0.4s, background-color 0.4s;
	transition-timing-function: ease;
}

.btn.btn-atcion > span {
	display: block;
}

.btn > span:first-child {
	padding-right: 20px;
}

.btn.btn-atcion > span:first-child {
	padding-right: 50px;
}

.btn > span:last-child {
	font-size: 1.6rem;
	line-height: 0.7;
}

.start-configuration {
	margin-bottom: 40px;
	display: none;
}

.start-configuration .btn.btn-atcion {
	margin: 50px auto 30px;
}

.details-btn {
	font-size: 0.875rem;
	font-style: italic;
	text-decoration: none;
	text-transform: uppercase;
	color: #2A7DE1;
}

.details-btn:hover {
	color: #2A7DE1;
}

.details-arrow {

}

.arrow {
	border: solid #2A7DE1;
	border-width: 0 1px 1px 0;
	display: inline-block;
	padding: 5px;
	-webkit-transition: all 1s ease-in-out;
	-moz-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}

.down {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}

.payment-desc,
.payment-desc img {
	max-width: 100%;
}

#sepa-payment .payment-desc img {
	height: 30px;
}

/*div.plans {
	position: absolute;
	padding: 0 1.563rem;
	font-size: 1.25rem;
	font-weight: 800;
	color: #fff;
	text-transform: uppercase;
	text-decoration: none;
	background-color: #2A7DE1;
	border-radius: 0 0 20px 20px;
	width: auto;
	margin: 0;
	right: 5rem;
	top: 5.125rem;
	line-height: 3rem;
	-webkit-transition: all 1s ease-in-out;
	-moz-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}

.arrow {
	border: solid #fff;
	border-width: 0 5px 4px 0;
	display: inline-block;
	padding: 5px;	
	-webkit-transition: all 1s ease-in-out;
	-moz-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}

.down {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}

div.plans .arrow {
	position: relative;
	top: -6px;
	margin-left: 10px;
}

div.plans:hover {
	color: #fff;
	background-color: #2A7DE1;
}

.plans-title:hover .arrow {
	border-color: #fff;
}

div.plans .plans-hidden  {
	display: none;
	
	-webkit-transition: all 1s ease-in-out;
	-moz-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}

.plans-title {
	text-align: right;
}

.plans-title:hover {
	cursor: pointer;
}

div.plans.show {
	color: #2A7DE1;
	background-color: #F3F3F3;
}

div.plans.show .arrow {
	border-color: #2A7DE1;
}

div.plans.show .plans-hidden  {
	display: block;
}

.plans-radio-cnt {
	display: inline-block;
	margin-left: 2rem;
	padding: 0.313rem 0.938rem;
}

.plans-radio-cnt a {
	color: #2A7DE1;
	text-decoration: none;
}

.plans-radio {
	position: relative;
	top: -3px;
}*/
p {
	font-size: 1.125rem;
	font-weight: 300;
	max-width: 75%;
}

nav {
	margin-bottom: 75px;
}

nav a {
	text-decoration: none;
	color: #2A7DE1;
	display: inline-block;
	color: #2A7DE1;
	font-size: 1.25rem;
	font-weight: 800;
	margin-right: 35px;
	text-transform: uppercase;
}

nav a img {
	margin-right: 5px;
}

label {
	font-size: 1.313rem;
	font-weight: 800;
	text-transform: uppercase;
	font-style: italic;
}

.cart-sidebar-btn {
	position: relative;
	display: inline-block;
}

.cart-nr {
	background-color: #fff;
	padding: 5px 6px 5px 5px;
	border-radius: 50%;
	font-size: 0.7rem;
	font-weight: 700;
	width: 25px;
	height: 20px;
	top: 50px;
	position: absolute;
	left: 25px;
	color: #2A7DE1;
	display: inline;
	line-height: 1;
	text-align: center;
}

/*nav.navigation-products {
	display: flex;
	justify-content: space-between;
	padding: 2rem 9.375rem;
	background-color: #F3F3F3;
	line-height: 2rem;
	margin: 50px 0 70px;
}*/

.offset-canvas {
	width: 0;
	position: fixed;
	z-index: 1;
	height: 100%;
	max-width: 400px;
	top: 0;
	left: 0;
	background-color: #F3F3F3;
	overflow-x: hidden;
	transition: 1s;
	padding: 80px 0;
}

.offset-canvas .action-cart-btn {
	margin-top: 40px;
}

#cart-close-offset-btn {
	color: #2A7DE1;
	text-decoration: none;
	position: absolute;
	top: 20px;
	right: 30px;
	font-size: 2rem;
}

#pay-mod-conf-modal .modal-body {
	text-align: center;
}	

#client-box {
	display: block;
}

.short-text {
	font-size: 1.1rem;
	width: 100%;
}

.subscription-header.payment-mod .title {
	width: 100%;
}


.offset-canvas.open {
	width: 100%;
	padding: 80px 25px;
}

.categories {
	display: flex;
	align-items: center;
	
	position: relative;
	color: #2A7DE1;
	font-size: 1.875rem;
	font-weight: 800;
	margin-bottom: 30px;
	text-transform: uppercase;
	z-index: 10;
}

.categories a {
	z-index: 100;
	display: inline-block;
	position: relative;
	background-color: #fff;
	padding-right: 60px;
}

.categories::after {
	width: 100%;
	content: ' ';
	display: block;
	border-bottom: 3px solid #2a7de1;
	top: 50%;
	left: 0;
	z-index: 1;
}

.categories img {
	height: 3rem;
	margin-right: 40px;
}

.category-text {
	color: #2a7de1;
	padding-left: 5.6rem;
	margin: 20px 0 60px 0;
}

.shop-contents.box-contents {
	display: flex;
	justify-content: space-between;
}

.intro-home,
.prefooter {
	display: flex;
	align-content: space-between;
	align-items: center;
	background-color: #2A7DE1;
	color: #fff;
	padding-top: 75px;
	padding-bottom: 75px;
}

.prefooter {
	text-align: center;
	display: block;
}

.prefooter .btn.btn-atcion {
	margin: 50px auto 0;
}

.prefooter .h1 {
	text-align: center;
	margin: 0 auto;
}

.intro-home > div {
	width: 50%;
	position: relative;
	top: 50px;
}

#shop-box {
	width: 100%;
	padding: 60px 0 0 0;
}
#countdown,
.countdown-box strong {
	font-weight: 700;
}

#main-box,
#limited-box,
#productivity-box,
#integration-box,
#oneshot-box {
	text-align: center;
}

#navigation-wizard,
#order-resume {
	background-color: #f3f3f3;
	padding: 2rem 14.375rem;
	display: flex;
	justify-content: space-between;
}

#navigation-wizard a {
	background-color: #fff;
	border-radius: 50%;
	padding: 0.625rem;
}

#navigation-wizard a img {
	height: 1.688rem;
}

#navigation-wizard a span {
	display: block;
	height: 1.688rem;
	width: 1.688rem;
	border: 1px solid #2A7DE1;
	border-radius: 50%;
}

#navigation-wizard a.active {
	background-color: #2A7DE1;
}

#navigation-wizard a.active span {
	background-color: #fff;
}

#navigation-wizard div.connection {
	position: relative;
	width: 100%;
}

#navigation-wizard div.connection::after {
	display: block;
	border: 4px solid #fff;
	position: absolute;
	width: 100%;
	content: ' ';
	top: 50%;
	transform: translateY(-50%);
}

#navigation-wizard div.connection.active::after {
	border-color: #2A7DE1;
}

#navigation-wizard h4 {
	margin: 0;
	text-transform: uppercase;
	font-weight: 700;
}

#order-resume {
	background-color: #2A7DE1;
	color: #fff;
	font-size: 0.875rem;
	justify-content: space-around;
	font-style: italic;
}

.order-resume-data {
	font-size: 1.125rem;
	font-weight: 700;
	display: inline-block;
	margin-left: 15px;
	font-style: normal;
	text-transform: uppercase;
}

.order-resume-contents {
	max-width: 1280px;
	margin: 0 auto;
}

.order-resume-header {
	display: flex;
	justify-content: space-evenly;
	background-color: #838382;
	color: #fff;
	text-transform: uppercase;
	margin: 2.5rem 0;
	border-radius: 20px;
	padding: 20px 15px;
}

.order-resume-table-header,
.order-resume-table-body > div {
	display: flex;
	justify-content: space-between;
}

.order-resume-table-header > div,
.order-resume-table-body > div > div {
	width: 40%;
	text-align: left;
	padding: 10px 25px;
	text-transform: uppercase;
}

.order-resume-table-body > div:hover {
	background-color: #2A7DE1;
	color: #fff;
}

.order-resume-table-header > div.short-row,
.order-resume-table-body > div > div.short-row {
	width: 20%;
	text-align: left;
}

.order-resume-table-header > div.medium-row,
.order-resume-table-body > div > div.medium-row {
	width: 20%;
	text-align: left;
}

.order-resume-table-body {
	background-color: #F3F3F3;
	border-radius: 20px;
	padding: 15px 0;
}

.order-resume-table-body > div.first-row {
	margin-top: 40px;
}

.order-resume-table-body > div:first-child {
	margin-top: 0;
}

.order-resume-table-body > div:last-child {
	margin-bottom: 30px;
}

.order-resume-table-header > div {
	font-weight: 700;
}

.order-action {
	text-align: center;
	margin: 4rem 0;
}

.order-action > p {
	width: 100%;
	max-width: 100%;
	font-size: 1.25rem;
	font-style: italic;
}

.lowercase {
	text-transform: lowercase;
}

.italic {
	font-style: italic;
}

.title {
	padding: 3.125rem 0 2.5rem;
}

p.subtitle {
	font-size: 1.125rem;
	width: 100%;
	max-width: 100%;
}

.subscription-total div {
	font-size: 1.3rem;
	font-weight: 800;
	text-transform: uppercase;
}

.box-contents.subscription-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.wizard-content {
	padding-left: 5rem;
	padding-right: 5rem;
}

.wizard-action {
	padding: 2rem 0 4rem;
	text-align: right;
}

.plans-box {
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 2rem;
	margin-right: -20px;
	flex-wrap: wrap;
}

.plan {
	width: calc(25% - 20px);
	margin-right: 20px;
	border: 3px solid #f3f3f3;
	border-radius: 15px;
	padding: 15px 20px 0px;
}

.plan h4 {
	font-size: 1.25rem;
	font-weight: 800;
	text-transform: uppercase;
	padding-bottom: 0.5rem;
}

.plan-desc {
	font-size: 0.875rem;
	font-weight: 300;
	max-width: 75%;
	line-height: 1.2rem;
	font-style: italic;
}

.plan.active {
	background-color: #2A7DE1;
	color: #fff;
	border-color: #2A7DE1;
}

.plan:hover {
	cursor: pointer;
}

.payment {
	width: calc(50% - 20px);
	margin-right: 20px;
	border: 3px solid #f3f3f3;
	border-radius: 15px;
	padding: 15px 20px 0px;
}

.payments-contents {
	width: 80%;
	margin: 3rem auto;
	max-width: 950px;
}

.payment h4 {
	font-size: 1.25rem;
	font-weight: 800;
	text-transform: uppercase;
	padding-bottom: 0.5rem;
}

.payment-desc {
	font-size: 0.875rem;
	font-weight: 300;
	max-width: 75%;
	line-height: 1.2rem;
	font-style: italic;
}

.payment.active {
	background-color: #2A7DE1;
	color: #fff;
	border-color: #2A7DE1;
}

.payment:hover {
	cursor: pointer;
}

#navigation-wizard.payment-wizard {
	padding-left: 9.375rem;
	padding-right: 9.375rem;
}

.payments-box {
	display: flex;
}

.wizard-header {
	display: flex;
	justify-content: space-between;
}

.wizard-tab-title-box {
	width: 75%;
}

div.counter-outside {

}

.sub-header {
	background-image: url('/imgs/onda-header.svg');
	background-repeat: no-repeat;
	background-size: cover;
	height: 285px;
	background-position-y: -226px;
}

.onda-footer {
	background-image: url('/imgs/onda-footer.svg');
	background-repeat: no-repeat;
	background-size: cover;
	height: 230px;
	background-position-y: 43px;
}

.wizard-side-counter-box {
	display: flex;
	padding: 3rem 0 2rem;
	flex-direction: row;
	align-items: center;
	justify-content: start;
}

.side-counter-label h5,
.mobile-counter-label h5{
	font-weight: 700;
	width: 60%;
	font-size: 0.938rem;
}

.side-counter-label div {

}

.wizard-counter-box {
	text-align: center;
	display: none;
}

.wizard-counter-box .side-counter-label h5 {
	width: 100%;
}

.wizard-counter-box .side-counter-label {
	margin-bottom: 2rem;
}

a.disabled {
	opacity: 0.6;
	cursor: no-drop;
}

/*#cart-box {
	width: 39%;
}*/
.product-box-info-cnt {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #F3F3F3;
	width: calc(100% - 15px);
	padding: 25px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
}

/*.products-list div.counter-outside {
	margin: 0 0 35px;
}*/

.product-data {
	width: 90%;
}

.product-info {
	width: 10%;
}

.product-title,
.product-select,
.product-price,
.product-info {
	font-family: 'Roboto';
	display: inline-block;
	color: #2A7DE1;
	font-weight: 700;
	font-style: italic;
	text-transform: uppercase;
	vertical-align: top;
}

.product-box.active .product-title,
.product-box.active .product-select,
.product-box.active .product-price,
.product-box.active .product-info {
	color: #FFF;
	border-color: #FFF;
}

.product-info > span {
	display: block;
	text-transform: initial;
}

.product-title,
.product-price{
	width: 100%;
}

.product-select,
.product-info{
	width: 19%;
}

.product-title,
.product-select {
	line-height: 1.6rem;
}

.product-price {
	margin-top: 3px;
}

.product-info {
	line-height: 1.4rem;
	border: 2px solid #2A7DE1;
	text-align: center;
	width: 25px;
	height: 25px;
	border-radius: 50%;
}

.product-title,
.product-info {
	font-size: 1.125rem;
}

.product-price {
	font-size: 0.875rem;
}

.product-price > span {
	font-size: 0.875rem;
	font-weight: 300;
	text-transform: none;
}

.counter-outside div.product-label {
	font-family: 'Roboto';
	font-size: 0.9rem;
	background-color: #F3F3F3;
	color: #2A7DE1;
	font-weight: 700;
	font-style: italic;
	text-transform: uppercase;
	width: auto;
	padding: 0 0 0 25px;
	line-height: 40px;
	height: 40px;
	border-radius: 5px 0 0 5px;
	display: inline-block;
	width: 202px;
}

div.product-label.counter-inside {
	font-family: 'Roboto';
	font-size: 0.875rem;
	color: #2A7DE1;
	font-weight: 700;
	font-style: italic;
	text-transform: uppercase;
	padding: 0 0 0 10px;
	line-height: 30px;
	width: 170px;
	height: 32px;
	border-radius: 5px 0 0 5px;
	margin-top: 15px;
	margin-bottom: 15px;
	background-color: #fff;
	border: 1px solid #9d9393;
}

div.product-label.productivity {
	width: 95%;
}

div.product-label.oneshot {
	width: 95%;
}

input[type="text"].counter-single-product {
	text-align: center;
	height: 100%;
	border-color: #F3F3F3;
	border-style: solid;
	font-size: 0.875rem;
	background-color: #F3F3F3;
	color: #2A7DE1;
	font-weight: 700;
}

.counter-box {
	display: flex;
	float: right;
	height: 100%;
	background-color: #fff;
	margin-left: 25px;
	border-right: 3px solid #F3F3F3;
	border-top: 3px solid #F3F3F3;
	border-bottom: 3px solid #F3F3F3;
}

.limited-total {
	display: flex;
	background-color: #fff;
	margin-left: 5px;
}

.counter-box > a,
.limited-total > a {
	background-color: #fff;
	height: 100%;
	line-height: 2.1rem;
	color: #2A7DE1;
	text-decoration: none;
	padding: 0 10px;
	text-align: center;
	font-size: 2rem;
	font-weight: 400;
}

.limited-total > a {
	line-height: 2rem;
}

.price-box {
	display: flex;
	justify-content: end;
	align-items: center;
}

.counter-inside .counter-box {
	height: 30px;
	border-color: #FFF;
	border-style: solid;
	font-size: 0.875rem;
	background-color: #F3F3F3;
	color: #2A7DE1;
}

.counter-inside .counter-box > a {
	font-size: 1.4rem;
	line-height: 1.4rem;
	background-color: #f3f3f3;
}

a.add {
	padding: 0 10px 0 0;
}

a.leave {
	padding: 0 0 0 10px;
}

.counter-box input[type="text"] {
	height: 100%;
	width: 50px;
	text-align: center;
	margin: 0;
	border: none;
	font-size: 1.125rem;
	color: #2A7DE1;
	font-weight: 700;
}

.limited-total input[type="text"] {
	height: 100%;
	width: 50px;
	text-align: center;
	margin: 0;
	border: none;
	font-size: 1.125rem;
	color: #2A7DE1;
	font-weight: 700;
}

.counter-box input[type="text"]:focus-visible,
.limited-total input[type="text"]:focus-visible {
	outline: none;
}

#placeholder .row-tot {
	width: 75px;
	display: inline-block;
	text-align: right;
}

.products-list {
	width: 100%;
	text-align: left;
}

.products-list .product-box.active  div.product-box-info-cnt {
	background-color: #2A7DE1;
	color: #fff;
}

.products-box {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: start;
	margin: 0 -15px 0 0;
}

.product-box {
	width: 25%;
	margin-bottom: 15px;
	cursor: pointer;
}

.required-prod {
	display: none;
}

.products-cat-separator {
	margin-top: 70px;
}

.big-row-products-list {
	height: auto;
	width: 100%;
}

.resume {
	background-color: #F3F3F3;
	padding: 40px 20px;
	border-radius: 20px;
}

.order-title {
	font-size: 1.875rem;
	color: #2A7DE1;
	font-weight: 800;
	text-transform: uppercase;
	padding: 0 20px;
	margin-bottom: 20px;
}

p.empty-cart-msg {
	margin: 20px 20px 10px;
}

p.empty-big-cart-msg {
	text-align: center;
}

.cart-small {
	background-color: #fff;
	padding: 20px 15px;
	border-radius: 20px;
}

.separator {
	margin-top: 10px;
}

.header-cart,
.row-cart,
.price-row,
.product-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 10px 0;
}

.row-cart > div.product-row {
	margin: 0;
}

.row-cart > div.price-row {
	width: 40%;
	margin: 0 0 0 20px;
	justify-content: space-between;
}

.row-cart > .product-row {
	width: 60%;
}

.header-cart {
	padding-bottom: 9px;
	border-bottom: 2px solid #F3F3F3;
	margin-bottom: 8px;
}

.row-cart > div:first-child {
	text-transform: uppercase;
}

.header-cart > div,
.row-cart > div {
	width: 32%;
	font-size: 1.125rem;
	color: #2A7DE1;
	font-family: 'Roboto';
	line-height: 1.875rem;
}

.header-cart > div {
	width: 33%;
}

.product-price-box {
	min-width: 92px;
}

.product-total {
	min-width: 70px;
}

.title-cart {
	font-weight: 700;
	text-transform: uppercase;
}

#cart .action-cart-btn {
	padding: 40px 0;
}

#cart.fixed {
	position: fixed;
	top: 25px;
	width: calc(39% - 9.375rem);
	max-width: inherit;
}

#subtotal,
#vat,
#totalSconto,
.old-total,
.total-diff {
	text-align: right;
	font-size: 0.875rem;
	color: #2A7DE1;
	margin-bottom: 15px;
	padding: 0 20px;
	font-family: 'Roboto';
	font-weight: 700;
	text-transform: uppercase;
	padding: 0 15px;
	font-style: italic;
	line-height: 1;
}

#total small {
	text-transform: none;
	font-weight: 400;
}

.resume-box #total small {
	font-weight: 600;
	display: block;
}

#total{
	text-align: center;
	font-size: 1rem;
	color: #2A7DE1;
	font-family: 'Roboto';
	font-weight: 700;
	text-transform: uppercase;
	border-radius: 10px;
	font-style: italic;
	margin-top: 10px;
	padding: 10px 35px;
	background-color: #f3f3f3;
	font-weight: 700;
	display: inline-block;
	min-width: 85%;
}

#subtotal span,
#vat span,
#total span,
#totalSconto span{
	display: inline-block;
	margin-left: 20px;
	min-width: 70px
}

#total-cnt {
	display: flex;
	justify-content: space-between;
	align-items: start;
	margin-top: 50px;
}

.text-right.cart-total-box {
	width: 100%;
}

.text-left.save-order-box {
}

#checkout #total-cnt > div {
	width: 100%;
}

.add-cart,
#register {
	background-color: #2A7DE1;
	color: #fff;
	font-size: 1.125rem;
	font-family: 'Roboto';
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	padding: 15px 25px;
	border-radius: 10px;
	margin-top: 16px;
	font-style: italic;
	position: inherit;
	display: block;
}

.partial-resume-box {
	padding: 0 30px;
}

.add-cart:hover {
	text-decoration: none;
	color: #fff;
}

.save-order {
	font-size: 1.125rem;
	color: #2A7DE1;
	font-family: 'Roboto';
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 0;
	padding: 0;
	line-height: 1;
	margin-top: 20px;
	text-decoration: none;
	display: block;
}

.save-order img {
	position: relative;
	top: -2px;
}

.products-list.cart {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: start;
	width: 100%;
	margin: 0 -15px 0 0;
}

.products-list.cart .product-box  {
	width: 100%;	
}

.products-list.cart .products-box {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: start;
	margin: 0;
	width: calc(50% - 15px);
}

.products-list.cart div.product-label.counter-inside {
	width: 85%;
}

.cart-list-actions {
	display: flex;
	justify-content: start;
	align-items: center;
	width: calc(100% - 15px);
}

.cart-list-actions .product-label {
	margin-right: 25px;
}

.cart-box-resume > div > div {
	width: 100%;
	display: flex;
	margin-bottom: 2.2rem;
}

.cart-box-resume {
	margin-top: 3rem;
	display: flex;
}

.cart-box-resume > div > div.resume-box {
	display: block;
	border: 2px solid #2A7DE1;
	padding: 1.8rem;
	text-align: center;
}

.category-label {
	width: 5rem;
	font-style: italic;
	font-size: 1rem;
	padding-right: 6rem;
}

.products-list.cart.blue {
	font-weight: 700;
	text-transform: uppercase;
}

.cart-box-resume > div:first-child {
	width: 65%;
}

.cart-box-resume > div:last-child {
	width: 35%;
}

.big-cart-counter {
	background-color: #f3f3f3;
}

.alert-area {
	text-align: center;
}

.alert-area p {
	max-width: 100%;
	font-style: italic;
	font-size: 1.25rem;
}

.alert-area h2 {
	font-size: 1.688rem;
	font-weight: 700;
	margin: 3rem 0 1rem;
}

.info-confirmation {
	display: flex;
	margin: 4rem auto 2rem;
	text-align: center;
	max-width: 1000px;
}

.info-confirmation h3 {
	font-size: 1.688rem;
	font-weight: 700;
}

.info-confirmation > div {
	width: 50%;
}

.info-confirmation p {
	margin: 0 auto;
	font-size: 1rem;
}

.info-confirmation > div > div {
	font-size: 1rem;
}

.payemt-method {
	font-weight: 700;
	margin: 1rem;
}

.confirmation-body {
	padding: 3rem 0;
}

.confirmation-title {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

.confirmation-title h1 {
	margin: 0;
}

.blue-line {
	width: 100%;
	height: 4rem;
	background-color: #2A7DE1;
	padding: 0;
}

.home-btn-box {
	margin: 4rem 0 3rem;
}

.login-btn.logged {
	width: 70px;
}

.actions {
	display: flex;
}

.logged {
	margin-right: 30px;
}

.logged:hover {
	cursor: pointer;
}

.submenu {
	background-color: #f3f3f3;
	position: absolute;
	right: 210px;
	top: 63px;
	border-radius: 10px;
	display: none;
}

.submenu > div {
	line-height: 1rem;
	padding: 15px 19px;
}

.submenu > div:hover {
	background-color: #fff;
	color: #2A7DE1;
}

.submenu > div a {
	text-decoration: none;
	color: #2A7DE1;
	text-transform: uppercase;
	display: block;
	width: 100%;
}

#navigation-wizard .order-resume {
	color: #2A7DE1;
	font-size: 0.875rem;
}

#card-element-errors {
	color: #e11717;
	margin: 0 auto 2rem;
	display: none;
}

@keyframes ldio-wajiesm5n8e {
	0% {
		transform: rotate(0)
	}

	100% {
		transform: rotate(360deg)
	}
}

.ldio-wajiesm5n8e div {
	box-sizing: border-box !important
}

.ldio-wajiesm5n8e > div {
	position: absolute;
	width: 72px;
	height: 72px;
	top: 14px;
	left: 14px;
	border-radius: 50%;
	border: 8px solid #000;
	border-color: #2a7de1 transparent #2a7de1 transparent;
	animation: ldio-wajiesm5n8e 1s linear infinite;
}

.ldio-wajiesm5n8e > div:nth-child(2) {
	border-color: transparent
}

.ldio-wajiesm5n8e > div:nth-child(2) div {
	position: absolute;
	width: 100%;
	height: 100%;
	transform: rotate(45deg);
}

.ldio-wajiesm5n8e > div:nth-child(2) div:before, .ldio-wajiesm5n8e > div:nth-child(2) div:after {
	content: "";
	display: block;
	position: absolute;
	width: 8px;
	height: 8px;
	top: -8px;
	left: 24px;
	background: #2a7de1;
	border-radius: 50%;
	box-shadow: 0 64px 0 0 #2a7de1;
}

.ldio-wajiesm5n8e > div:nth-child(2) div:after {
	left: -8px;
	top: 24px;
	box-shadow: 64px 0 0 0 #2a7de1;
}

.loadingio-spinner-dual-ring-yq2d5grl8wk {
	width: 50px;
	height: 50px;
	display: inline-block;
	overflow: hidden;
	background: none;
}

.ldio-wajiesm5n8e {
	width: 100%;
	height: 100%;
	position: relative;
	transform: translateZ(0) scale(0.5);
	backface-visibility: hidden;
	transform-origin: 0 0; /* see note above */
}

	.ldio-wajiesm5n8e div {
		box-sizing: content-box;
	}

/* non considerare */
#placeholder .order-title {
	display: none;
}

#placeholder .cart-small {
	background-color: #f3f3f3;
}

#placeholder #total {
	display: inline-block;
	max-width: 300px;
	padding: 0 20px;
	margin-bottom: 15px;
	background-color: #f3f3f3;
}

#checkout #total,
#cart #total {
	padding: 0 20px;
	margin-bottom: 15px;
	display: inline-block;
}

#placeholder #subtotal,
#placeholder #vat,
#placeholder #totalSconto,
#checkout #subtotal,
#checkout #vat,
#checkout #totalSconto {
	padding: 0 20px;
	margin-bottom: 15px;
}

#placeholder #cart-main {
	margin-top: 10px;
}

#placeholder .header-cart {
	border-bottom: 2px solid #fff;
	margin: 0;
	padding: 0;
}

#placeholder #go-cart {
	display: inline-block;
}

.text-right {
	text-align: right;
}

#result #total-cnt {
	display: flex;
	justify-content: space-between;
	align-items: start;
	margin-top: 50px;
}

#checkout #total-cnt {
	display: block;
	margin: 50px 0;
	justify-content: initial;
	align-items: initial;
}

#checkout .save-order,
#result .save-order {
	display: none;
}

.payments {
	font-size: 1.875rem;
	color: #2A7DE1;
	font-weight: 800;
	text-transform: uppercase;
	padding: 0 20px;
	margin-bottom: 20px;
}

#checkout label {
	font-family: 'Roboto';
	font-size: 1.125rem;
	color: #2A7DE1;
	font-weight: 700;
	font-style: italic;
	text-transform: uppercase;
	padding-left: 20px;
}

#checkout label input {
	margin-right: 10px;
}

#checkout p {
	max-width: 70%;
	margin: 10px 0 30px 20px;
}

#checkout .privacy label {
	color: #838382;
}

#checkout .privacy a {
	color: #2A7DE1;
	text-decoration: none;
}

#checkout .privacy a:hover {
	color: #2A7DE1;
	text-decoration: none;
}

#checkout #go-cart,
#checkout #update-cart {
	position: absolute;
	bottom: 35px;
	left: 40px;
}

#checkout {
	position: relative; 
	padding-bottom: 115px;
}

.form-floating > div.row {
	margin: 15px 0; 
}

.btn.btn-primary {
	background-color: #2A7DE1;
}

#error-modal h2 {
	font-size: 1.688rem;
	font-weight: 700;
}

#form .form-control,
.modal-body .form-control,
#payment-form input {
	font-family: 'Roboto';
	font-size: 1.125rem;
	color: #2A7DE1;
	font-style: italic;
	margin: 10px 3px;
	background-color: #F3F3f3;
	border: none;
	border-radius: 10px;
	padding: 10px 20px;
	font-weight: 500;
	height: 3rem;
	width: calc(100% - 6px);
}

#root .InputElement.is-empty.Input.Input--empty,
#root .ElementsApp input {
	font-family: 'Roboto' !important;
	font-size: 1.125rem !important;
	color: #2A7DE1 !important;
	background-color: #fff !important;
	border-radius: 10px !important;
	padding: 10px 20px !important;
	font-weight: 500 !important;
	border: none !important;
	font-style: italic !important;
	height: 3rem !important;
}

#root #iban-element iframe {
	height: 3rem !important;
}

#root .__PrivateStripeElement {
	height: 3rem !important;
}

#root .IbanField-input-container {
	height: 3rem !important;
}

#root .InputContainer {
	height: 3rem !important;
}

#root .InputElement.is-empty.Input.Input--empty {
	height: 3rem !important;
}

#form {
	width: 80%;
}

.privacy label {
	font-size: 0.7rem;
	font-weight: 800;
	text-transform: uppercase;
	color: #736e6e;
}

button, input, optgroup, select, textarea {
	margin-right: 5px;
}

.modal-body .form-control {
	background-color: #FFF;
}

.form-control::placeholder {
	color: #b1b1b1;
	opacity: 1;
}

#result #go-cart {
	display: none;
}

.resume-title {
	font-size: 1.688rem;
	color: #2A7DE1;
	font-weight: 800;
	text-transform: uppercase;
	padding: 0;
	margin-bottom: 80px;
}

.resume-data {
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.8rem;
	display: block;
}

elemento {

}

.back-home {
	background-color: #F3F3F3;
	color: #2A7DE1;
	font-size: 1.125rem;
	font-family: 'Roboto';
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	padding: 10px 45px;
	border-radius: 10px;
	font-style: italic;
}

.logout-box {
	color: #fff;
}

.logout-box a {
	color: #fff;
	text-decoration: none;
	font-weight: 700;
	margin-left: 10px;
}

.logout-box a:hover {
	text-decoration: underline;
}

.login-link-cnt {
	display: inline-block;
	background-color: #f3f3f3;
	color: #171717;
	font-size: 1.125rem;
	text-transform: uppercase;
	font-family: 'Roboto';
	font-weight: 600;
	padding: 10px 20px;
	margin-left: 10px;
	margin-bottom: 40px;
	border-radius: 10px;
}

.login-btn {
	color: #2A7DE1;
	padding-left: 10px;
	text-decoration: none;
}

header .login-btn {
	color: #fff;
	text-decoration: none;
}

.modal-content {
	background-color: #F3F3F3;
	border-radius: 10px;
	border: none;
	padding: 25px 30px;
}

.modal-dialog {
	background-color: #F3F3F3;
	border-radius: 10px;
}

.modal-header {
	border: none;
	padding: 25px 30px 0;
}

.modal-footer {
	border: none;
	padding: 25px 30px;
}

.modal-title {
	color: #2A7DE1;
	font-family: 'Nunito', sans-serif;
	font-weight: 700;
	font-size: 1.688rem;
	text-transform: uppercase;
	margin: 20px 0;
}

#pay-mod-conf-modal p {
	max-width: 100%;
	margin-bottom: 30px;
}

.modal-content .form-floating > div.row {
	margin: 0;
}

button.pay {
	font-family: 'Roboto';
	font-weight: 600;
	text-transform: uppercase;
	padding: 10px 30px;
}

.btn-close.close {
	position: relative;
	top: -30px;
	left: 30px;
}

#login-msg,
#checkout-msg,
#privacy-msg,
#register-msg,
#register-msg-danger,
#subscription-exsist-msg,
.error {
	display: none;
}

.vc-toggle-container {
	float: right;
	position: relative;
	top: 2px;
}

.vc-toggle-container label {
	width: 55px;
}

.__PrivateStripeElement {
	min-width: 200px;
}

.ElementsApp {
	font-size: 1.125rem !important;
	line-height: 1.125rem !important;
	height: 1.125rem !important;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

#card-element {
	padding: 25px 0;
}

.payment-cnt {
	background-color: #F3F3f3;
	width: 100%;
	padding: 0;
	border-radius: 10px;
	overflow: hidden;
	margin-top: 0;
}

#mandate-acceptance {
	margin-top: 30px;
}

input#name {
	background-color: #FFF;
}

input#name::placeholder {
	color: #838382;
	width: 100%;
}

#submit-payment-btn,
#submit-button  {
	font-family: 'Roboto';
	font-weight: 600;
	text-transform: uppercase;
	padding: 10px 30px;
	border-radius: 10px;
	float: right;
}

#payment-form {
	overflow: hidden;
	margin-bottom: 0px;
	padding: 0;
}

.payment-cnt.sepa {
	max-width: 800px;
}

.payment-cnt.sepa input {
	background-color: #FFF;
}

.payment-cnt.sepa #payment-form input {
	background-color: #FFF;
	width: 100%;
	color: #838382;
}

#iban-element {
	margin: 23px 0;
}

.error {
	color: red;
	font-weight: 600;
	margin: 0 0 10px;
	display: inline-block;
	display: none;
}

.footer-cnt {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 40px 0;
}

.footer-cnt > div {
	text-align: left;
	width: 30%;
	padding: 30px 3%;
}

.footer-title a,
.footer-cnt a,
.footer-title {
	color: #2A7DE1;
	text-decoration: none;
	font-weight: 700;
	margin-bottom: 20px;
}

.footer-cnt .logo-footer {
	width: 70%;
	height: auto;
	max-width: 200px;
}

.social-cnt img {
	width: 30px;
	height: auto;
	margin-right: 7px;
}

.footer-cnt p {
	width: 70%;
	line-height: 1.6rem;
	color: #fff;
	font-size: 1rem;
}

.footer-cnt ul {
	list-style: none;
	padding: 0;
	margin: 0;
	line-height: 1;
}

.social-cnt {
	line-height: 4.3rem;
}

.footer-cnt-center {
	border-left: 2px solid #fff;
	border-right: 2px solid #fff;
}

.footer-cnt a.policy {
	font-weight: 400;
	color: #fff;
}

.delete_prd img,
.delete_cart_prd img {
	width: 30px;
	position: relative;
	top: -1px;
}

#error-message {
	color: #2A7DE1;
	font-weight: 400;
}

#country .option-placeholder,
#county .option-placeholder,
#form #country.form-control.select-placeholder,
#form #county.form-control.select-placeholder {
	color: #b1b1b1;
	opacity: 1;
}

#form select#country option.select-options,
#form select#county option.select-options {
	color: #2A7DE1 ;
}

/*@media screen and (max-width:1300px) {
	.product-box {
		width: 50%;
	}

	.plan {
		width: calc(50% - 20px);
		margin-right: 20px;
		border: 3px solid #f3f3f3;
		border-radius: 15px;
		padding: 15px 20px 0px;
		margin-bottom: 20px;
	}

	.products-list.cart .products-box {
		width: calc(100% - 15px);
	}
}*/

@media screen and (max-width: 990px) {
	header, .box-contents {
		padding: 0 1rem;
	}

	header div.actions a {
		margin-right: 1.5rem;
	}

	.main {
		padding: 5rem 1rem;
	}

	.logo-cnt img {
		height: 2.6rem;
	}

	header div.actions img {
		height: 1.8rem;
	}

	.shop-contents {
		margin-left: 55px;
	}

	.menu-mobile {
		display: flex;
	}

	.menu-mobile.sticky {
		top: 0;
	}

	.menu-mobile.sticky.bottomSticky {
		top: -232px;
	}

	.start-configuration {
		display: block;
	}

	p.box-contents {
		width: 100%;
		max-width: 100%;
	}

	h1 {
		font-size: 1.8rem;
		margin: 1rem 0 2rem;
		line-height: 2.3rem;
	}

	.intro-home > div {
		width: calc(100% - 60px);
		margin-left: 60px;
		padding: 0 20px 0 0;
	}

	.intro-home {
		display: block;
		padding: 2rem 1rem;
	}

	.intro-home a.btn.btn-atcion {
		display: none;
	}

	/*div.plans {
		width: 320px;
		right: 0;
	}

	nav.navigation-products {
		overflow-x: scroll;
	}

	nav a {
		width: max-content;
	}

	nav.navigation-products {
		padding: 2rem 1rem;
		margin: 50px 0;
	}*/

	.categories::after,
	.categories img {
		display: none;
	}

	.category-text {
		padding-left: 0;
	}

	cart-box {
		display: none;
	}

	#shop-box {
		width: 95%;
	}

	.product-box {
		width: 100%;
	}

	.product-box-info-cnt {
		width: 100%;
	}

	#cart-box {
		display: none;
	}

	.row-cart {
		flex-direction: column;
		justify-content: start;
		align-items: start;
	}

	.row-cart > div.col-product-name {
		width: 100%;
		font-weight: 700;
	}

	.row-cart > div.price-row {
		width: 100%;
		margin: 0;
	}

	.row-cart {
		margin: 10px 0;
	}

	.row-cart > .product-row {
		width: 100%;
	}

	.offset-cart-canvas .row-cart {
		flex-direction: column;
		justify-content: space-between;
		align-items: end;
		border-bottom: 1px solid #f3f3f3;
		padding-bottom: 10px;
	}

	.row-cart > div.product-row {
		margin: 5px 0px;
	}

	.row-cart > div.product-row > div:last-child {
		width: 100px;
	}

	.col-product-name {
		width: 70%;
	}
	
	.logo-cnt {
	}

	footer {
		background-color: #424241;
		padding: 0 15px;
	}

	.footer-cnt {
		max-width: 1200px;
		margin: 0;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		padding: 40px 0;
	}

	.footer-cnt > div {
		text-align: left;
		width: 100%;
		padding: 0;
		margin: 35px 0;
	}

	.footer-cnt-center {
		border: none;
	}

	.plan {
		width: 100%;
		margin-bottom: 20px;
	}

	#subscription-cart-total {
		display: none;
	}

	.wizard-counter-box {
		display: block;
	}

	.wizard-side-counter-box {
		display: none;
	}

	.wizard-tab-title-box {
		width: 100%;
	}

	.wizard-counter-box {
		text-align: center;
	}

	.wizard-counter-box .mobile-counter-label h5 {
		width: 100%;
	}

	.wizard-counter-box .mobile-counter-label {
		margin-bottom: 2rem;
	}

	.wizard-content {
		padding-left: 2rem;
		padding-right: 2rem;
	}

	#navigation-wizard {
		padding: 2rem 2rem;
	}

	.cart-box-resume > div > div {
		width: 100%;
		display: block;
		margin-bottom: 2.2rem;
	}

	.cart-box-resume > div:first-child {
		width: 100%;
	}

	.cart-box-resume {
		margin-top: 3rem;
		display: block;
	}

	.products-list.cart .products-box {
		width: 100%;
	}

	.cart-box-resume > div:last-child {
		width: 100%;
	}

	.confirmation-title h1 {
		margin: 0;
		padding: 2rem 0;
	}

	.alert-area {
		text-align: center;
		padding: 4rem;
	}

	.info-confirmation {
		display: flex;
		margin: 0 auto 3rem;
		text-align: center;
		max-width: 1000px;
	}

	.info-confirmation {
		flex-direction: column;
	}

	.info-confirmation > div {
		width: 100%;
		margin-top: 2rem;
	}

	.alert-area {
		text-align: center;
		padding: 4rem 4rem 2rem;
	}

	.sub-header {
		background-position-y: 0;
	}

	#order-resume {
		padding: 2rem 2rem;
		display: block;
	}

	#order-resume > div {
		width: 100%;
		margin: 1rem 0;
	}

	#order-resume > div:first-child {
		margin: 0;
	}

	#order-resume > div {
		display: flex;
	}

	.order-resume-data {
		width: 50%;
		text-align: left;
	}

	.order-resume-label {
		display: inline-block;
		width: 50%;
		text-align: right;
	}

	.order-resume-table-header {
		display: none;
	}

	.order-resume-header {
		margin: 2.5rem 0 1.5rem;
	}

	.order-resume-table-body > div > div:first-child {
		width: 100%;
		margin-bottom: 0.4rem;
	}

	.order-resume-table-body > div {
		display: block;
		padding: 0.4rem 0;
	}

	.order-resume-table-body > div > div {
		padding: 0 25px;
	}

	.order-resume-table-body > div > div,
	.order-resume-table-body > div > div.medium-row,
	.order-resume-table-body > div > div.short-row {
		width: 100%;
	}

	.title {
		padding: 2.5rem 0 2rem;
	}
}