@font-face {
	font-family: "BarlowCondensed-Black";
	src: url("../fonts/BarlowCondensed-Black.eot");
	src: url("../fonts/BarlowCondensed-Black.eot?#iefix") format("embedded-opentype"), url("../fonts/BarlowCondensed-Black.woff2") format("woff2"),
		url("../fonts/BarlowCondensed-Black.woff") format("woff"), url("../fonts/BarlowCondensed-Black.ttf") format("truetype"),
		url("../fonts/BarlowCondensed-Black.svg#BarlowCondensed-Black") format("svg");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "BarlowCondensed-Regular";
	src: url("../fonts/BarlowCondensed-Regular.eot");
	src: url("../fonts/BarlowCondensed-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/BarlowCondensed-Regular.woff2") format("woff2"),
		url("../fonts/BarlowCondensed-Regular.woff") format("woff"), url("../fonts/BarlowCondensed-Regular.ttf") format("truetype"),
		url("../fonts/BarlowCondensed-Regular.svg#BarlowCondensed-Regular") format("svg");
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "BarlowCondensed-ExtraBold";
	src: url("../fonts/BarlowCondensed-ExtraBold.eot");
	src: url("../fonts/BarlowCondensed-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/BarlowCondensed-ExtraBold.woff2") format("woff2"),
		url("../fonts/BarlowCondensed-ExtraBold.woff") format("woff"), url("../fonts/BarlowCondensed-ExtraBold.ttf") format("truetype"),
		url("../fonts/BarlowCondensed-ExtraBold.svg#BarlowCondensed-ExtraBold") format("svg");
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

/*Fonts CSS End*/

/* Normal CSS */
body {
	margin: 0px;
	padding: 0px;
	font-size: 20px;
	font-family: "BarlowCondensed-Regular";
	color: #202225;
	background-color: #fafaf5;
}
a {
	text-decoration: none;
	box-shadow: none !important;
	transition: all 0.5s ease;
}
a:hover {
	color: var(--brand-clr);
}
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0px;
	padding: 0 0 15px;
	font-weight: 500;
	color: #de1f26;
	font-family: "BarlowCondensed-ExtraBold";
}
p {
	margin: 0px;
	font-weight: 400;
	color: #202225;
}
img {
	height: auto;
	border: none;
	max-width: 100%;
}
ul {
	margin: 0px;
	padding: 0px;
}
ul li {
	list-style-type: none;
}

.wrapper {
	padding: 115px;
	background-image: url(../images/bg_01.png);
	background-repeat: no-repeat;
	/* background-position: top right; */
    background-position-x: 160px;
	background-position-y: top;
	background-size: cover;
	min-height: 100vh;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 100%;
}
.marlboro-img {
	position: absolute;
	top: 14%;
	right: 9%;
	pointer-events: none;
}
.middle-content {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	min-width: 100%;
}
.welcome-banner.middle-content {
	justify-content: flex-start;
}
.content {
	width: 100%;
	position: relative;
}
.welcome-banner .h1 {
	padding-bottom: 80px;
	max-width: 1050px;
	color: #de1f26;
	font-size: 130px;
	line-height: 140px;
}
.welcome-banner p {
	margin-bottom: 100px;
	max-width: 1350px;
	font-size: 104px;
	line-height: 114px;
}
.button {
	display: inline-flex;
	text-align: center;
	padding: 5px 30px 15px;
	color: #de1f26;
	font-size: 102px;
	line-height: 102px;
	font-family: "BarlowCondensed-Black";
	border: 11px solid #de1f26;
	text-transform: uppercase;
}
.button:hover {
	color: #fff;
	background-color: #de1f26;
}

.hand-marlboro {
	display: flex;
	align-items: flex-end;
	height: 100%;
	overflow: hidden;
}
.hand-marlboro .content {
	width: 100%;
}
.hand-marlboro img {
	width: 95%;
}

.step-title {
	display: block;
	padding-bottom: 140px;
	color: #de1f26;
	font-size: 150px;
	line-height: 150px;
	text-align: center;
	text-shadow: 2px 2px 10px #fff;
	width: 100%;
}
.form-step {
	display: block;
	overflow: hidden;
}
.form-step-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 80px;
}
.form-step .form-check {
	margin: 0;
	padding: 0;
	text-align: center;
	max-width: calc(25% - 60px);
	width: 100%;
}
.form-step .form-check-input {
	display: none;
}
.form-check-label {
	width: 100%;
	cursor: pointer;
}
.step-item-image {
	display: block;
	border: 15px solid #1d1c1c;
	border-radius: 15px;
	overflow: hidden;
	background-color: #fafaf5;
	height: 100%;
    /* min-height: 284px; */
}
.step-item-image img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
.form-step .form-check-input:checked ~ .form-check-label .step-item-image {
	border-color: #de1f26;
}
.step-item-title {
	display: block;
	padding-top: 65px;
	font-size: 73px;
	color: #212121;
	line-height: 73px;
}
.form-step:first-child .step-item-title {
	min-height: 211px;
}

.category .step-title {
	padding-bottom: 140px;
	font-size: 120px;
	line-height: 120px;
}
.category .form-step {
	gap: 40px;
}
.category .step-item-image {
	border-radius: 0;
}
.category .step-item-image img {
	height: 483px;
}
.category .step-item-title {
	padding-top: 5px;
	font-size: 42px;
}

.preview-images .form-check-label {
	width: 100%;
	max-width: 742px;
	height: 800px;
}

.form-step .step-title {
	transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);

	opacity: 1;
}
.form-step.hidden .step-title {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	opacity: 0;
	z-index: -1;
}
.form-step .last-step,
.form-step .form-step-inner {
	position: relative;
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	left: 0;
	top: 0%;

	opacity: 1;
	z-index: 0;
}
.form-step.hidden .last-step,
.form-step.hidden .form-step-inner {
	position: relative;
	opacity: 0;
	left: 50%;
	top: 50%;

	z-index: -1;
}
.form-step.hidden {
	height: 0;
}
.form-step.hidden .form-step-inner {
	width: 100%;
}

.preview-images {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}
.image-container {
	flex: 0 0 200px;
}
.image-container h3 {
	margin-bottom: 10px;
}
[data-gender] {
	opacity: 0;
	position: absolute;
}
body.female [data-gender="female"],
body.male [data-gender="male"] {
	display: block;
	opacity: 1;
	position: relative;
}

.female .last-step .step-item-image #transport-image,
.female .last-step .step-item-image #body-type-image,
.female .last-step .step-item-image #select-product-image,
.female .last-step .step-item-image #pantalon-image,
.female .last-step .step-item-image #accessoire-image,
.female .last-step .step-item-image #cigarette-image,
.last-step .step-item-image #transport-image,
.last-step .step-item-image #body-type-image,
.last-step .step-item-image #select-product-image,
.last-step .step-item-image #pantalon-image,
.last-step .step-item-image #accessoire-image,
.last-step .step-item-image #cigarette-image {
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	height: 100%;
	transform: none;
	z-index: 1;
	object-fit: contain;
}
.preview-images label.form-check-label {
	width: 55vw;
	height: 55vw;
	max-width: 55vh;
	max-height: 55vh;
}

.step-title {
	text-shadow: 2px 2px 10px #fafaf5;
}
.form-step:not(.hidden) {
	height: 40vw;
}
.form-step:last-child:not(.hidden) {
	height: auto;
}
.female .last-step .step-item-image #cigarette-image,
.female .last-step .step-item-image #pantalon-image {
	z-index: 2;
}
@media screen and (max-width: 3000px) {
	.preview-images .form-check-label {
		max-width: 600px;
		height: 700px;
	}
}

@media screen and (max-width: 2700px) {
	.welcome-banner .h1 {
		max-width: 820px;
		padding-bottom: 60px;
		font-size: 100px;
		line-height: 120px;
	}
	.welcome-banner p {
		margin-bottom: 80px;
		max-width: 1080px;
		font-size: 84px;
		line-height: 94px;
	}
	.button {
		padding: 5px 20px 10px;
		font-size: 82px;
		line-height: 82px;
	}
	.marlboro-img {
		top: 10%;
		right: 5%;
		max-width: 700px;
	}

	.step-title {
		padding-bottom: 110px;
		font-size: 130px;
		line-height: 130px;
	}
	.step-item-title {
		padding-top: 35px;
		font-size: 55px;
		line-height: 55px;
	}
	.form-step-inner {
		gap: 50px;
	}
	.form-step .form-check {
		width: calc(25% - 38px);
	}
	.step-item-image {
		border-width: 10px;
	}
}

@media screen and (max-width: 1999px) {
	.welcome-banner .h1 {
		max-width: 720px;
		padding-bottom: 40px;
		font-size: 80px;
		line-height: 95px;
	}
	.welcome-banner p {
		margin-bottom: 60px;
		max-width: 830px;
		font-size: 64px;
		line-height: 74px;
	}
	.button {
		font-size: 62px;
		line-height: 62px;
		border-width: 7px;
	}
	.marlboro-img {
		top: 10%;
		right: 90px;
		max-width: 550px;
	}

	.step-title {
		padding-bottom: 80px;
		font-size: 100px;
		line-height: 100px;
	}
	.step-item-title {
		padding-top: 25px;
		font-size: 40px;
		line-height: 40px;
	}
	.form-step-inner {
		gap: 40px;
	}
	.form-step .form-check {
		max-width: unset;
		width: calc(25% - 30px);
	}
	.step-item-image {
		border-width: 8px;
	}
	.step-item-image img {
		height: auto;
	}

	.preview-images .form-check-label {
		max-width: 450px;
		height: 550px;
	}
}

@media screen and (max-width: 1599px) {
	.wrapper {
		padding: 100px 50px;
	}
	.welcome-banner .h1 {
		max-width: 600px;
		padding-bottom: 30px;
		font-size: 70px;
		line-height: 80px;
	}
	.welcome-banner p {
		margin-bottom: 40px;
		max-width: 700px;
		font-size: 54px;
		line-height: 60px;
	}
	.button {
		padding: 7px 20px 8px;
		font-size: 50px;
		line-height: 50px;
		border-width: 5px;
	}
	.marlboro-img {
		top: 8%;
		right: 70px;
		max-width: 450px;
	}

	.step-title {
		padding-bottom: 50px;
		font-size: 75px;
		line-height: 75px;
	}
	.step-item-title {
		padding-top: 20px;
		font-size: 35px;
		line-height: 35px;
	}
	.form-step-inner {
		gap: 35px;
	}
}

@media screen and (max-width: 1440px) {
	.form-step-inner {
		gap: 30px;
	}
	.form-step .form-check {
		max-width: 250px;
	}
	.step-item-image {
		border-width: 2px;
	}
	.step-item-image img {
		height: 250px;
	}
	.step-item-title {
		padding-top: 20px;
		font-size: 30px;
		line-height: 30px;
	}

	.preview-images .form-check-label {
		max-width: 350px;
		height: 450px;
	}
}

@media screen and (max-width: 1199px) {
	.wrapper {
		padding: 100px 40px;
		background-size: cover;
	}
	.welcome-banner .h1 {
		max-width: 500px;
		padding-bottom: 20px;
		font-size: 60px;
		line-height: 70px;
	}
	.welcome-banner p {
		margin-bottom: 30px;
		max-width: 600px;
		font-size: 44px;
		line-height: 50px;
	}
	.button {
		padding: 5px 15px 7px;
		font-size: 40px;
		line-height: 40px;
		border-width: 4px;
	}
	.marlboro-img {
		top: 8%;
		right: 70px;
		max-width: 380px;
	}

	.step-title {
		padding-bottom: 40px;
		font-size: 60px;
		line-height: 60px;
	}
	.step-item-title {
		padding-top: 10px;
		font-size: 25px;
		line-height: 25px;
	}
	.form-step-inner {
		gap: 25px;
	}
	.form-step .form-check {
        max-width: 200px;
	}
    .form-step .form-check.mlb {
        width: 300px;
        max-width: 300px;
    }
	.step-item-image img {
		height: auto;
	}
}

@media screen and (max-width: 991px) {
	.wrapper {
		padding: 100px 30px;
		background-size: cover;
	}
	.welcome-banner .h1 {
		max-width: 450px;
		padding-bottom: 15px;
		font-size: 50px;
		line-height: 60px;
	}
	.welcome-banner p {
		margin-bottom: 25px;
		max-width: 500px;
		font-size: 34px;
		line-height: 40px;
	}
	.button {
		padding: 5px 10px 7px;
		font-size: 30px;
		line-height: 30px;
		border-width: 4px;
	}
	.marlboro-img {
		top: 6%;
		right: 5%;
		max-width: 280px;
	}

	.form-step-inner {
		gap: 20px;
	}
	.form-step .form-check {
		max-width: 160px;
	}
	.step-item-image {
		border-width: 4px;
	}
	.step-item-image img {
		height: auto;
	}
	.step-item-title {
		font-size: 20px;
		line-height: 20px;
	}
}

@media screen and (max-width: 767px) {
	.form-step:not(.hidden) {
		height: auto;
	}
	.form-step .form-check {
		max-width: unset;
		width: calc(50% - 10px);
	}
	.preview-images label.form-check-label {
		width: 80vw;
		height: 80vw;
	}
	.form-step.hidden .last-step,
	.form-step.hidden .form-step-inner {
		top: 85px;
		bottom: auto;
	}
	.form-step:first-child .step-item-title {
		min-height: unset;
	}
	.form-step.hidden .step-title {
		width: 100%;
	}
	.form-step .step-title,
	.form-step-inner {
		background: none;
	}
	.wrapper {
		background-position: 63% -60px;
	}
	.welcome-banner .h1 {
		max-width: 350px;
		font-size: 40px;
		line-height: 45px;
	}
	.welcome-banner p {
		margin-bottom: 25px;
		max-width: 400px;
		font-size: 28px;
		line-height: 36px;
	}
	.button {
		font-size: 24px;
		border-width: 3px;
	}
	.marlboro-img {
		top: 8%;
		right: 8%;
	}

	.step-title {
		padding-bottom: 25px;
		font-size: 45px;
		line-height: normal;
	}

	.preview-images .form-check-label {
		max-width: 280px;
		height: 380px;
	}
}

@media screen and (max-width: 575px) {
	.wrapper {
		padding: 50px 15px;
		background-position: 70% 0;
	}
	.welcome-banner.middle-content {
		flex-direction: column;
	}
	.marlboro-img {
		position: static;
		max-width: 280px;
	}
}

@media screen and (max-width: 479px) {
	.wrapper {
		background-position: 75% -20px;
	}
	.welcome-banner .h1 {
		max-width: 300px;
		padding-bottom: 15px;
		font-size: 35px;
		line-height: 40px;
	}
	.welcome-banner p {
		margin-bottom: 25px;
		font-size: 24px;
		line-height: 30px;
	}
	.button {
		padding: 8px 15px 8px;
		font-size: 22px;
		line-height: 22px;
		border-width: 2px;
	}
	.step-item-title {
		padding-top: 5px;
	}
}
