.page_loader {
	display: none;
	background: #56002F;
	background: linear-gradient(180deg, #278CCC 12.65%, #9ADCFD 143.73%);
	position: fixed;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 9;
	opacity: 0.92;
}

.page_loader span.loading {
	position: relative;
	top: -20px;
	font-size: 16px;
	color: #FFF;
	text-align: center;
	display: block;
}

.page_loader.custom_text span.loading {
	position: relative;
	top: -60px;
	margin: 0 -30px;
	font-size: 16px;
	color: #FFF;
	text-align: center;
	display: block;
	line-height: 1.5;
}

.page_loader .lds-roller {
	position: absolute;
	top: 50%;
	left: 50%;
	-moz-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

img.draggable {
	position: relative;
}


.answer-box-circle {
	width: 112px;
	height: 112px;
}

.answer-box-circle svg {
	display: block;
}

.answer-box-circle.wrong_ans svg {
	/*display: none;*/
}

.answer-box-circle svg {
	position: absolute;
	bottom: 50%;
	right: 50%;
	width: 105%;
	height: 105%;
	transform: translate(50%, 50%) rotateY(-180deg) rotateZ(-90deg);
}

.answer-box-circle svg circle {
	stroke-dasharray: 344px;
	stroke-dashoffset: 0px;
	stroke-linecap: round;
	stroke-width: 0px;
	stroke: #0d4690;
	box-shadow: 0 0 9px 0 #0d4690;
	fill: none;
}

.answer-box-circle.animate svg circle {
	animation: countdown 10s linear 1 forwards;
}

.answer-box-circle:before {
	display: none;
}

@media all and (min-width: 576px) {
	.answer-box-circle {
		width: 132px;
		height: 132px;
	}
	.answer-box-circle.animate svg circle {
		animation: countdownDesktop 10s linear 1 forwards;
	}
	.answer-box-circle svg circle {
		stroke-dasharray: 412px;
		r: 66px;
		cx: 70px;
		cy: 70px;
	}
}

@keyframes countdown {
	0% {
		stroke-dashoffset: 344px;
		stroke-width: 0px;
	}
	1% {
		stroke-dashoffset: 0px;
		stroke-width: 3px;
	}
	99% {
		stroke-dashoffset: 344px;
		stroke-width: 3px;
	}
	100% {
		stroke-dashoffset: 344px;
		stroke-width: 0px;
	}
}

@keyframes countdownDesktop {
	0% {
		stroke-dashoffset: 412px;
		stroke-width: 0px;
	}
	1% {
		stroke-dashoffset: 0px;
		stroke-width: 3px;
	}
	99% {
		stroke-dashoffset: 412px;
		stroke-width: 3px;
	}
	100% {
		stroke-dashoffset: 412px;
		stroke-width: 0px;
	}
}

.lds-roller {
	display: inline-block;
	position: relative;
	width: 80px;
	height: 80px;
}
.lds-roller div {
	animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	transform-origin: 40px 40px;
}
.lds-roller div:after {
	content: " ";
	display: block;
	position: absolute;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #FFF;
	margin: -4px 0 0 -4px;
}
.lds-roller div:nth-child(1) {
	animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
	top: 63px;
	left: 63px;
}
.lds-roller div:nth-child(2) {
	animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
	top: 68px;
	left: 56px;
}
.lds-roller div:nth-child(3) {
	animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
	top: 71px;
	left: 48px;
}
.lds-roller div:nth-child(4) {
	animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
	top: 72px;
	left: 40px;
}
.lds-roller div:nth-child(5) {
	animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
	top: 71px;
	left: 32px;
}
.lds-roller div:nth-child(6) {
	animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
	top: 68px;
	left: 24px;
}
.lds-roller div:nth-child(7) {
	animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
	top: 63px;
	left: 17px;
}
.lds-roller div:nth-child(8) {
	animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
	top: 56px;
	left: 12px;
}
@keyframes lds-roller {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}



.form-group {
	position: relative;
}


.checkbox-row label.error {
	bottom: 0;
	top: 100%;
}

@media all and (min-width: 576px) {
	.checkbox-row label.error {
		bottom: -0.6rem;
		top: auto;
	}
}
.footer1{
	position: absolute;
	width: 375px;
	height: 99px;
	left: 0px;
	top: 1628px;
}


/*Cleaning page*/
body.page-template-template-clean-intro {
    background: #FFFDF5;
    font-family: 'Open Sans', sans-serif;
    font-size: 19px;
    color: #022548;
    text-align: center;
}

.page-template-template-clean-intro #wrapper {
    max-width: 700px;
}

body.page-template-template-clean-intro .cleaning_intro_head {
    position: relative;
    background: #02CBCB;
    padding-top: 70px;
    padding-bottom: 35px;
}

body.page-template-template-clean-intro .cleaning_intro_head .cleaning-top-decor {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 152px;
}

body.page-template-template-clean-intro .cleaning_intro_head .cleaning-top-decor img {
    width: 100%;
}

body.page-template-template-clean-intro .cleaning_intro_head .cleaning-intro-title {
    font-size: 48px;
    font-weight: 700;
    color: #fff;
    max-width: 314px;
    margin: 0 auto;
    line-height: 1.3;
}

body.page-template-template-clean-intro .cleaning_intro_head .cleaning-mid-decor {
    position: absolute;
    bottom: -35px;
    right: 0;
    max-width: 200px;
}

.cleaning_intro_body {
    padding-top: 30px;
    padding-bottom: 60px;
    position: relative;
}

.cleaning_intro_body_inner {
    max-width: 305px;
    margin: 0 auto;
}

.cleaning_intro_body .cleaning-intro-body-title {
    font-size: 28px;
    font-weight: 400;
    line-height: 1.3;
    margin-bottom: 20px;
}

.cleaning_intro_body .cleaning-intro-body-subtitle {
    margin-bottom: 15px;
    font-size: 24px;
    line-height: 1.3;
    color: #00D0D2;
    font-weight: 400;
}

.cleaning_intro_body .cleaning-intro-body-text {
    margin-bottom: 10px;
}

.cleaning_intro_body .btn-start-gif {
    display: inline-flex;
    width: auto;
    align-items: center;
    justify-content: center;
    background: #02CBCB;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: #ffff;
    min-width: 200px;
    min-height: 50px;
    padding: 10px 20px;
    line-height: 1.3;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    box-shadow: none;
}

.cleaning_intro_body .btn-start-gif img {
    width: 10px;
    margin-right: 5px;
}

.cleaning_intro_body .cleaning_intro_btm_decor {
    position: absolute;
    bottom: 0;
    right: 0;
}

/*Cleaning final*/
.page-template-template-clean-final #wrapper {
    max-width: 380px;
}

.page-template-template-clean-final {
    background: #FFFDF5;
    font-family: 'Open Sans', sans-serif;
    font-size: 19px;
    color: #04023C;
    text-align: center;
}

.iqos-cleaning-exp {
    position: relative;
    padding-left: 50px;
    padding-right: 75px;
}

.iqos-cleaning-exp .cleaning-final-left-arrow {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 43px;
}

.iqos-cleaning-exp .cleaning-final-right-img {
    position: absolute;
    top: 0;
    right: 10px;
    width: 75px;
}

.iqos-cleaning-exp .cleaning-final-body-title {
    font-size: 19px;
    font-weight: 600;
    margin-bottom: 5px;
}

.page-template-template-clean-final #wrapper .btn.btn-start-gif,
.page-template-template-clean-intro #wrapper .btn.btn-start-gif{
    background: url("assets/images/cleaning-img/btn-background.gif") no-repeat center center;
    background-size: cover;
}
img{
    max-width: 100%;
    height: auto;
}
.page-template-template-clean-final #wrapper .btn {
    display: inline-flex;
    width: auto;
    align-items: center;
    justify-content: center;
    background: #02CBCB;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: #ffff;
    min-width: 200px;
    min-height: 50px;
    padding: 8px 20px;
    line-height: 1.3;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    box-shadow: none;
    height: auto;
    font-size: 20px;
}

.page-template-template-clean-final #wrapper .iqos-cleaning-exp .btn {
    min-width: 200px;
    min-height: 40px;
    font-size: 18px;
}

.page-template-template-clean-final #wrapper .btn img {
    width: 10px;
    margin-right: 5px;
}

.cleaning_final_body_inner {
    padding: 0 15px 0 25px;
}

.cleaning_final_disc_block {
    padding: 30px 7px 22px;
}

.cleaning_final_disc_inner {
    border: 2px solid #02CBCB;
    border-radius: 18px;
    padding: 15px 12px 5px;
}

.cleaning_final_disc_inner .cleaning_final_disc_title {
    font-size: 25px;
    font-weight: 700;
    margin-bottom: 10px;
    line-height: 1.3;
    color: #02CBCB;
}

.cleaning_final_disc_inner .cleaning_final_disc_subtitle {
    font-size: 19px;
    line-height: 1.3;
    color: #022548;
    margin: 0 -10px 7px;
}

.cleaning_final_disc_inner .cleaning_final_disc_price ins {
    text-decoration: none;
    display: inline-flex;
    align-items: flex-end;
    line-height: 1;
}

.cleaning_final_disc_inner .cleaning_final_disc_price ins span {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

.cleaning_final_disc_inner .cleaning_final_disc_price ins b {
    font-size: 32px;
}

.cleaning_final_disc_inner .cleaning_final_disc_price ins b span {
    font-size: 14px;
}

.cleaning_final_disc_inner .cleaning_final_disc_price del {
    font-size: 13px;
    text-decoration: none;
    display: inline-block;
    position: relative;
}

.cleaning_final_disc_inner .cleaning_final_disc_price del::before {
    content: "";
    background: #333;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    right: 0;
    -webkit-transform: rotate(-10deg);
    -moz-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

.cleaning_final_disc_holder {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    align-items: center;
}

.cleaning_final_disc_holder .cleaning_final_disc_img {
    width: 140px;
}

.cleaning_final_disc_holder .cleaning_final_disc_code {
    flex: 1;
    font-size: 21px;
    font-weight: 400;
    line-height: 1.3;
}

.cleaning_final_disc_holder .cleaning_final_disc_code .disc_code_num {
    text-transform: uppercase;
    display: block;
    color: #02CBCB;
}

.cleaning_final_desc_notice {
    margin-top: 8px;
    font-size: 11px;
}

.page-template-template-clean-intro .bottom-image,
.page-template-template-clean-final .bottom-image {
    max-width: 375px;
}

.page-template-template-clean-intro .bottom-image img,
.page-template-template-clean-final .bottom-image img {
    max-width: 375px;
}
