/* -------------------- */
/* COMMON DATA */

/* ROM RED ea0029 */
/* -------------------- */




/* TARGET ANCHOR */
:target {
	display: block;
	position: relative;
	top: -60px;
	visibility: hidden;
}



/* -------------------- */
/* BASIC SETUP */
/* -------------------- */

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	background-color: #fff;
	color: #555;
	font-family: "Montserrat", "sans-serif";
	font-size: 20px;
	font-weight: 300;
	text-rendering: optimizeLegibility;
	scroll-behavior: smooth;
}

body {
  overflow-x: hidden; /* Hide horizontal scrollbar */
}


/* -------------------- */
/* REUSABLE COMPONENTS */
/* -------------------- */

.row {
	max-width: 1080px;
	margin: 0 auto;
}

section {
	padding: 48px 0 32px;
}

h1,
h2 {
	margin: 0px;
}

h2:after {
	display: block;
	height: 2px;
	background-color: #c5c5c5;
	content: " ";
	width: 40%;
	margin: 16px auto 18px auto;
}

h1 {
	font-size: 170%;
	font-weight: 500;
	line-height: 90%;
	text-transform: uppercase;
	letter-spacing: 1px;
	word-spacing: 8px;
}

h2 {
	font-size: 180%;
	font-weight: 300;
	word-spacing: 2px;
	text-align: center;

	/* Q
	padding-top: 48px;
	Q */
}

h3 {
	font-size: 110%;
	font-weight: 400;
	padding-top: 16px;
	padding-bottom: 8px;
}

h4 {
	font-size: 120%;
	font-weight: 300;
	word-spacing: 2px;
	text-align: center;
	padding: 16px 16%;
}

.clearfix::after {
	content: "";
	clear: both;
	display: table;
}

.padding-box {
	padding: 32px 16px 16px 16px;
}

.font-size-80 {
	font-size: 80%;
}


/* -------------------- */
/* LINKS */
/* -------------------- */

section a:link,
section a:visited {
	text-decoration: none;
}


/* -------------------- */
/* BUTTONS */
/* -------------------- */

.btn {
	margin-right: 20px;
}

.btn:link,
.btn:visited {
	display: inline-block;
	padding: 10px 30px;
	font-weight: 300;
	text-decoration: none;
	border-radius: 6px;
	transition: background-color 0.4s ease-in-out;
}

.btn-full:link,
.btn-full:visited {
	background-color: #c70000cf;
	border: 1px solid #fff;
	color: #fff;
}

.btn-ghost:link,
.btn-ghost:visited {
	border: 1px solid #fff;
	color: #fff;
	background-color: rgba(180, 180, 180, .26);
}

.btn-full-plan:link,
.btn-full-plan:visited {
	background-color: #e67e22;
	border: 1px solid #e67e22;
	color: #fff;
}

.btn-ghost-plan:link,
.btn-ghost-plan:visited {
	border: 1px solid rgb(168 168 168);
	color: #fff;
	background-color: rgb(136 136 136 / 50%);
}

.btn:hover,
.btn:active {
	background-color: rgba(0, 0, 0, .2);
	border: 1px solid #ea0029;
}

.btn-ghost-plan:hover,
.btn-ghost-plan:active {
	background-color: rgb(17 17 17);
	border: 1px solid rgb(88 88 88);
}


.btn-full-plan:hover,
.btn-full-plan:active {
	background-color: rgba(230, 90, 30, 1);
	border: 2px solid rgba(255, 255, 255, 1);
}

.btn-form {
	display: inline-block;
	position: relative;
	cursor: pointer;
	padding: 10px 36px;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
	border-radius: 6px;
	border: 1px solid rgb(168 168 168);
	background-color: rgb(136 136 136 / 50%);
	transition: background-color 0.4s ease-in-out;
}

.btn-form:hover,
.btn-form:active {
	background-color: rgb(234, 0, 41);
	border: 1px solid transparent;
}


/* -------------------- */
/* PARAGRAPHS */
/* -------------------- */

.long-copy {
	line-height: 145%;
	width: 70%;
	margin: 0 15%;
}

/* -------------------- */
/* icons */
/* -------------------- */

.iconFont-big {
	color: #ea0029;
	font-size: 360%;
	display: block;
}

.iconFont-small {
	display: inline-block;
	text-align: center;
	color: #fb954a;
	font-size: 120%;
	padding-right: 4px;

	/*to align text and icons*/
	line-height: 120%;
	vertical-align: middle;
	margin-top: -4px;
}




/* -------------------- */
/* HEADER */
/* -------------------- */


header {
	background-image:
		linear-gradient(rgba(0, 0, 0, 0.1),
			rgba(0, 0, 0, 0.2),
			rgba(0, 0, 0, 1)),
		url(img/hero.jpg);

	background-size: cover;
	background-position: center;
	height: 84vh;
	background-attachment: fixed;
}

.hero-text-box {
	position: absolute;
	width: 1080px;
	top: 70%;
	left: 50%;
	-webkit-transform: translate(-50%, -60%);
	transform: translate(-50%, -60%);
}


.hero-text-box h1 {
	color: #fff;
	margin-bottom: 20px;
}

.hero-social-links-container {
	z-index: 9998;
	position: fixed;
	top: 0;
	right: 0;
	height: 100%;
	text-align: center;
}

.hero-social-links {
	background-color: #00000026;
	width: 34px;
	padding: 84x 0;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	transition: all 0.6s ease-in-out;
	position: absolute;
	top: 50%;
	right: 0;
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 80%;
}

.hero-social-links:hover {
	background-color: #000000b8;
	width: 38px;
	font-size: 90%;
	transition: all 0.2s ease-in-out !important;
}

.hero-social-link {
	margin: 20px 6px 20px 8px;
}

.hero-social-link a:hover {
	transition: color 0.2s ease-in-out !important;
}

.hero-social-link a {
	color: #fff;
	transition: color 0.8s ease-in-out !important;
}

.hero-social-link-facebook a:hover {
	color: #5375c0;
}

.hero-social-link-twitter-x a:hover {
	color: #737373;
}

.hero-social-link-instagram a:hover {
	color: #fcb045;
}


.hero-social-link-youtube a:hover {
	color: #ff0000;
}

.hero-social-link-linkedin a:hover {
	color: #0077B5;
}

.hero-social-link-mail a:hover {
	color: #ffdd00;
}

.logo {
	height: 50px;
	width: auto;
	float: left;
	margin: 10px;
}

.logo-color {
	display: none;
	height: 50px;
	width: auto;
	float: left;
	margin: 10px;
}


/*  Main navigation  */


.nav-bar {
	background-color: #ea0029;
	box-shadow: 0 3px 4px rgb(0 0 0 / 30%);
}

.main-nav {
	float: right;
	list-style: none;
	margin-top: 32px;
}

.main-nav li {
	display: inline-block;
	/* Q margin: 10px 10px; */
	padding: 0px 10px;
}

.main-nav li a {
	padding: 6px 20px;
	text-align: center;
}

.main-nav li a:link,
.main-nav li a:visited {
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 70%;
	font-weight: 400;
	border-bottom: 1px solid #000;
	transition: font-weight 0.4s ease-in-out, border-bottom 0.6s ease-in-out, padding 0.4s ease-in-out;
}

.main-nav li a:hover,
.main-nav li a:active {
	color: #fff;
	font-weight: 600;
	padding: 6px 26px;
	width: 130%;
	border-bottom: 2px solid #fff;
	transition: all 0.2s ease-in-out;
}

/*  Mobile navigation  */

.mobile-nav-icon {
	float: right;
	margin-top: 12px;
	cursor: pointer;
	display: none;
}


.mobile-nav-icon i {
	font-size: 200%;
	color: #fff;
}




/*  Sticky navigation  */

.sticky {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.7);
	backdrop-filter: blur(7px);
	-webkit-backdrop-filter: blur(7px);
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
	z-index: 9999;
	transition: top 2s ease-in-out;
}

.sticky .main-nav {
	/* margin: 18px 0; */
}



.sticky .main-nav li a:link,
.sticky .main-nav li a:visited {
	color: #000;
}

.sticky .main-nav li a:hover,
.sticky .main-nav li a:active {
	color: #ea0029;
	border-color: #000;
}


.sticky .logo-color {
	display: block;
}

.sticky .logo {
	display: none;
}


/* -------------------- */
/* BACK TO SOLUTIONS LINK */
/* -------------------- */

.back-to-solutions {
	color: #4a4a4a;
	font-size: 90%;
	transition: color 0.4s ease-in-out;
}

.back-to-solutions:hover {
	color: #ea0029;
	transition: color 0.2s ease-in-out;
}

.back-to-solutions.back-to-solutions-right {
	text-align: right;
	margin: 64px 32px 0 0;
}

.back-to-solutions.back-to-solutions-left {

	margin: 64px 0 0 16px;
	text-align: left;
}

/* -------------------- */
/* BACK TO TOP LINK */
/* -------------------- */

.back-to-top {
	color: #4a4a4a;
	font-size: 90%;
	transition: color 0.4s ease-in-out;

}

.back-to-top-white {
	color: #fff;
	transition: color 0.4s ease-in-out;
}

.back-to-top:hover {
	color: #ea0029;
	transition: color 0.2s ease-in-out;
}

.back-to-top.back-to-top-right {
	text-align: right;
	margin: 16px 32px 16px 0;
}

.back-to-top.back-to-top-left {

	margin: 16px 0 16px 16px;
	text-align: left;
}

/* -------------------- */
/* SECTION SOLUTIONS */
/* -------------------- */


.section-solutions {
	background-color: #fafafa;
}

.section-solutions h3 {
	color: #000;
	font-size: 90%;
}

.section-solutions p {
	font-size: 70%;
	line-height: 145%;
}

.solution-element {
	transition: transform 0.4s ease-in-out;
}

.solution-element:hover {
	-webkit-transform: scale(1.08);
	transform: scale(1.08);
	transition: transform 0.3s cubic-bezier(.55, .08, .35, 1.7);
}


.iconSolutions {
	color: #ea0029;
	font-size: 360%;
	display: block;
}




.section-solutions ion-icon {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

.section-solutions div {
	text-align: center;
}





/* -------------------- */
/* SECTION BRANDS */
/* -------------------- */

.section-brands {
	padding-bottom: 0;
	background-color: #fff;
}

.section-brands li {
	padding: 16px 64px;
}

.brands-showcase {
	list-style: none;
	width: 100%;
}

.brands-showcase li {
	display: block;
	float: left;
	width: 33.30%;
}

.brand-photo {
	width: 100%;
	margin: 0;
	overflow: hidden;
	/* background: #2c333e5e; */
}

.brand-photo img {
	opacity: 0.8;
	width: 100%;
	height: auto;
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
	transition: opacity 0.2s ease-in-out, -webkit-transform 0.5s cubic-bezier(.66, .05, .33, 1.46);
	transition: transform 0.5s cubic-bezier(.66, .05, .33, 1.46), opacity 0.2s ease-in-out, -webkit-transform 0.5s cubic-bezier(.66, .05, .33, 1.46);

}

.brand-photo img:hover {
	-webkit-transform: scale(1.16);
	transform: scale(1.16);
	opacity: 1;
}


/* -------------------- */
/* SECTION SOLUTION 1, 3, 5 */
/* -------------------- */


.solution-1,
.solution-3,
.solution-5 {
	background-color: #eee;
}

.solution-1-image,
.solution-3-image,
.solution-5-image {
	width: 100%;
}

.solution-step {
	font-size: 32px;
}

.solution-1-step,
.solution-3-step,
.solution-5-step {
	margin-bottom: 32px;
	height: 64px;
}

.solution-1-step div,
.solution-3-step div,
.solution-5-step div {
	color: #ea0029;
	border: 2px solid #b6b6b6;
	display: flex;
	justify-content: center;
	border-radius: 50%;
	height: 50px;
	width: 50px;
	text-align: center;
	padding: 5px;
	margin-right: 10px;
	float: left;
}

.solution-1-step span,
.solution-3-step span,
.solution-5-step span {
	color: #4a4a4a;
	display: flex;
	justify-content: flex-start;
	font-size: 90%;
}

/* -------------------- */
/* SECTION SOLUTION 2, 4, 6 */
/* -------------------- */


.solution-2,
.solution-4,
.solution-6 {
	background-color: #fff;
}

.solution-2-image,
.solution-4-image,
.solution-6-image {
	width: 100%;
}

.solution-2-step,
.solution-4-step,
.solution-6-step {
	margin-bottom: 32px;
	height: 64px;
}

.solution-2-step div,
.solution-4-step div,
.solution-6-step div {
	color: #ea0029;
	border: 2px solid #b6b6b6;
	display: flex;
	justify-content: center;
	border-radius: 50%;
	height: 50px;
	width: 50px;
	text-align: center;
	padding: 5px;
	margin-right: 10px;
	float: left;
}

.solution-2-step span,
.solution-4-step span,
.solution-6-step span {
	color: #4a4a4a;
	display: flex;
	justify-content: flex-start;
	font-size: 90%;
}


/* -------------------- */
/* SECTION wholesaler */
/* -------------------- */

.section-wholesaler {

	background-image:
		linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.8)),
		url(img/back-wholesaler.jpg);

	background-size: cover;

	/* Q
    padding: 0 48px 0px;
	Q */

	color: #ffffff;
	background-attachment: fixed;
}


.section-wholesaler blockquote {
	color: #fff;
	font-size: 100%;
	padding: 2%;
	font-style: italic;
	line-height: 145%;
	position: relative;
	margin-top: 24px;
}

.section-wholesaler blockquote:before {
	content: "\201C";
	font-size: 600%;
	display: block;
	position: absolute;
	top: 0px;
	left: -4px;
}

.section-wholesaler ul {
	margin-left: 32px;
	padding-bottom: 16px;
}

.section-wholesaler p {
	padding-bottom: 16px;
}

.section-wholesaler cite {
	font-size: 90%;
	display: block;
}

.section-wholesaler img {
	height: 70px;
	width: auto;
	margin-top: 16px;
	border-radius: 24px 0;
	border-bottom: 3px solid #e67e22;
}


/* -------------------- */
/* SECTION FORM */
/* -------------------- */


.contact-form {
	width: 100%;
	margin: 0 auto 16px;
	font-size: 70%;
}

.contact-form input {
	accent-color: #ea0029;
}

.label-form {}

input[type=text],
input[type=email],
input[type=tel],
select,
textarea {
	width: 100%;
	padding: 8px 18px;
	border-radius: 4px;
	border: 0px;
	border-left: 1px solid #ddd;
	border-bottom: 1px solid #9a9a9a;
	border-top: 1px solid #f0f0f0;
	border-right: 1px solid #f0f0f0;
	background-color: #f7f7f7 !important;
}

select {
	height: 36px;
	cursor: pointer;
}

textarea {
	height: 100px;
}

input[type=checkbox] {
	margin: 10px 5px 10px 0;
	cursor: pointer;
}

*:focus {
	outline: none;
}

input[type=submit] {
	display: inline-block;
	cursor: pointer;
	padding: 10px 30px;
	color: #fff;
	font-weight: 300;
	text-decoration: none;
	border-radius: 6px;
	border: 1px solid rgb(168 168 168);
	background-color: rgb(136 136 136 / 50%);
	transition: background-color 0.4s ease-in-out;
}

input[type=submit]:hover,
input[type=submit]:active {
	background-color: rgb(234, 0, 41);
	border: 1px solid transparent;
}

.loader-spinner {
  position: absolute;
  right: 0;
  margin: auto 8px;
  width:17px;
  height:17px;
  border:2px solid #ffffffa1;
  border-bottom-color: transparent;
  border-top-color: transparent;
  border-radius:50%;
  display:inline-block;
  box-sizing:border-box;
  animation:spinner-loading 1s ease-in-out infinite;
}

@keyframes spinner-loading {
  0% {
  transform:rotate(0deg);
  }
  100% {
  transform:rotate(360deg);
  }
}

.form-message {
  margin-top:0.4rem;
  font-weight:300;
}

.form-message-sent{}

.form-message-error{
  color: #ff0000;
}


/* -------------------- */
/* FOOTER */
/* -------------------- */


footer {
	background-color: #000;
	padding: 16px 2%;
	font-size: 70%;
	font-weight: 500;
}

footer a,
footer a:link,
footer a:visited {
	text-decoration: none;
	padding: 0px 6px 1px 0px;
	color: #999;
	transition: all 0.2s ease-in-out;

}

.footer-nav a:hover,
.footer-nav a:active {
	color: #ea0029;
}

.logo-facebook a:hover,
.logo-facebook a:active {
	color: #3b5998;
}

.logo-twitter a:hover,
.logo-twitter a:active {
	color: #55acee;
}

.logo-google a:hover,
.logo-google a:active {
	color: #dc4e41;
}

.logo-instagram a:hover,
.logo-instagram a:active {
	color: #517fa4;
}


.footer-nav {
	list-style: none;
	float: left;
}

.social-links {
	list-style: none;
	float: right;
	font-size: 140%;
}

.footer-nav li,
.social-links li {
	display: inline-block;
	margin-right: 10px;
}

.footer-nav li:last-child,
.social-links li:last-child {
	display: inline-block;
	margin-right: 0px;
}

footer p {
	color: #999;
	text-align: right;
	/* text-align: center; */
	/* margin-top: 30px; */
}

/* -------------------- */
/* ELEMENT HIDDEN */
/* -------------------- */

.element-hidden {
  display:none;
}

/* -------------------- */
/* ANIMATIONS */
/* -------------------- */


.js--animation-on-scroll-1,
.js--animation-on-scroll-2,
.js--animation-on-scroll-3,
.js--animation-on-scroll-4,
.js--animation-on-scroll-9,
.js--animation-on-scroll-10,
.js--animation-on-scroll-11,
.js--animation-on-scroll-12,
.js--animation-on-scroll-13,
.js--animation-on-scroll-14,
.js--animation-on-scroll-15,
.js--animation-on-scroll-16,
.js--animation-on-scroll-17,
.js--animation-on-scroll-18,
.js--animation-on-scroll-19,
.js--animation-on-scroll-20,
.js--animation-on-scroll-21,
.js--animation-on-scroll-22,
.js--animation-on-scroll-23,
.js--animation-on-scroll-24,
.js--animation-on-scroll-25,
.js--animation-on-scroll-26,
.js--animation-on-scroll-27,
.js--animation-on-scroll-28,
.js--animation-on-scroll-29,
.js--animation-on-scroll-30,
.js--animation-on-scroll-31,
.js--animation-on-scroll-32,
.js--animation-on-scroll-33,
.js--animation-on-scroll-34,
.js--animation-on-scroll-35,
.js--animation-on-scroll-36,
.js--animation-on-scroll-37,
.js--animation-on-scroll-38,
.js--animation-on-scroll-39,
.js--animation-on-scroll-40,
.js--animation-on-scroll-41,
.js--animation-on-scroll-42 {
	opacity: 0;
}

.js--animation-on-scroll-1.animate__animated,
.js--animation-on-scroll-2.animate__animated,
.js--animation-on-scroll-3.animate__animated,
.js--animation-on-scroll-4.animate__animated,
.js--animation-on-scroll-9.animate__animated,
.js--animation-on-scroll-10.animate__animated,
.js--animation-on-scroll-11.animate__animated,
.js--animation-on-scroll-12.animate__animated,
.js--animation-on-scroll-13.animate__animated,
.js--animation-on-scroll-14.animate__animated,
.js--animation-on-scroll-15.animate__animated,
.js--animation-on-scroll-16.animate__animated,
.js--animation-on-scroll-17.animate__animated,
.js--animation-on-scroll-18.animate__animated,
.js--animation-on-scroll-19.animate__animated,
.js--animation-on-scroll-20.animate__animated,
.js--animation-on-scroll-21.animate__animated,
.js--animation-on-scroll-22.animate__animated,
.js--animation-on-scroll-23.animate__animated,
.js--animation-on-scroll-24.animate__animated,
.js--animation-on-scroll-25.animate__animated,
.js--animation-on-scroll-26.animate__animated,
.js--animation-on-scroll-27.animate__animated,
.js--animation-on-scroll-28.animate__animated,
.js--animation-on-scroll-29.animate__animated,
.js--animation-on-scroll-30.animate__animated,
.js--animation-on-scroll-31.animate__animated,
.js--animation-on-scroll-32.animate__animated,
.js--animation-on-scroll-33.animate__animated,
.js--animation-on-scroll-34.animate__animated,
.js--animation-on-scroll-35.animate__animated,
.js--animation-on-scroll-36.animate__animated,
.js--animation-on-scroll-37.animate__animated,
.js--animation-on-scroll-38.animate__animated,
.js--animation-on-scroll-39.animate__animated,
.js--animation-on-scroll-40.animate__animated,
.js--animation-on-scroll-41.animate__animated,
.js--animation-on-scroll-42.animate__animated {
	opacity: 1;
}