@font-face {
	font-family: 'ArchivoBlack';
	src: url('fonts/ArchivoBlack.ttf') format('ttf'),
	url('fonts/ArchivoBlack.woff2') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'ArchivoRegular';
	src: url('fonts/ArchivoRegular.ttf') format('ttf'),
	url('fonts/ArchivoRegular.woff2') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'ArchivoMedium';
	src: url('fonts/ArchivoMedium.ttf') format('ttf'),
	url('fonts/ArchivoMedium.woff2') format('woff');
	font-weight: normal;
	font-style: normal;
}
::-webkit-scrollbar {
	width: 5px;
}

/* Track */
::-webkit-scrollbar-track {
	background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
	background: #888;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
	background: #555;
}

.img-responsive {
	display: block;
	max-width: 100%;
	height: auto;
}

.logo {
	font-style: italic;
	font-weight: 900;
}
.logo-blue {
	color: #000;
	font-style: italic;
	font-weight: 900;
}
.dark {
	color: #072337;
}

/* Resets */
html {
	height: 100%;
	padding: 0;
	margin: 0;
}
body, div, span, iframe, img, form, table, tr, th, td, button {
	margin: 0;
	padding: 0;
	border: 0;
	font-family: 'ArchivoRegular', Arial, Helvetica, sans-serif;
	color: #000;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav {
	display: block;
}
body {
	background: #fff;
	line-height: normal;
}
ol, ul { list-style: none; }
table {
	border-collapse: separate;
	border-spacing: 2px;
	margin: auto;
}
sup {
	vertical-align: top;
	font-size: 10px;
}

a { color: #000; }

body {
	background: #f1f5f9;
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
}

.clear {
	clear: both;
}

.mobile {
	height: 100%;
}

.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}

.container {
	min-width: 305px;
	min-height: 560px;
	margin: auto;
	position: relative;
	height: 100%;
}

.header {
	background-color: #fff;
	border-bottom: 2px solid #000;
	height: 70px;
	margin: auto;
	max-width: 100%;
}

.header .logo {
	width: 244px;
	height: 100%;
	margin-left: 125px;
	background: url(../images/logo.png) no-repeat left center;
	text-indent: -999999px;
	background-size: 244px 65px;
}

.footer {
	background-color: #ffffff;
	color: #555555;
	text-align: center;
	font-size: 14px;
	width: 100%;
	position: relative;
	margin: 0 auto;
}

.footer div {
	color: rgba(0,0,0, 0.5);
}

.footer-bottom {
	font-family: Lato-Regular, sans-serif;
	font-size: 12px;
	text-align: center;
	background: #e1e7ef;
	color: rgba(0,0,0, 0.5);
	margin: 0 auto;
}

.footer .copyright {
	padding: 10px 0 5px;
}

.footer .no-background-check {
	text-align: center;
	margin: 5px auto;
}

.footer-bottom .links {
	padding: 5px 0 10px;
	line-height: 18px;
}

.footer-bottom .links a {
	color: #000;
	text-decoration: underline;
}

.content {
	min-height: calc(100vh - 84px);
}

.form {
	width: 412px;
	max-width: 96%;
	background-color: #fff;
	color: #000;
	float: none;
	margin: 25px auto;
	padding: 20px 0;
	border: 2px solid #000;
	border-radius: 8px;
	box-shadow: 4px 6px 0 rgba(0, 0, 0, 1);
}
.form.offer {
	padding-bottom: 0;
}
.form-top {
	width: 360px;
	max-width: 95%;
	font-size: 1.9em;
	font-weight: 300;
	text-align: center;
}

.form-body {
	width: 372px;
	max-width: 95%;
	margin: auto;
	text-align: center;
}
.optout.form .form-body {
	height: 350px;
}
.optout.form .question {
	height: 100px;
}

.form-bottom {
	display: none;
}

.form-body ul {
	padding-inline-start: 0;
	margin-top: 50px;
}
.form-body ul li {
	margin-bottom: 14px;
}
.offer .form-body ul li {
	margin-bottom: 0;
}
.ul-wrapper ul:not(:first-child){
	margin-top: 0!important;
}
.question, .label {
	width: 364px;
	max-width: 100%;
	font-size: 18px;
	font-weight: bold;
	margin: 0 auto 5px;
	font-family: "ArchivoBlack", sans-serif;
}
.label {
	text-align: left;
	margin-bottom: 1rem!important;
}
.label .password-requirements {
	font-size: 14px;
	line-height: 19px;
}
.question {
	line-height: 40px;
	font-size: 32px;
	color: #000;
	height: 244px;
	margin-bottom: 113px;
	border-radius: 8px;
}
#form-singlesEvents .question {
	margin-bottom: 10px;
	height: auto;
}
#form-singlesEvents .question:before {
	border:0;
	height: auto;
}
.question .highlighted {
	background: #eed2f2;
	font-family: ArchivoBlack, sans-serif;
	padding: 0.25rem;
}
.step.form .question::after {
	display: block;
	padding-top: 260px;
	font-size: 25px;
	text-align: center;
}
.step .question:before {
	content: '';
	width: 100%;
	max-width: 364px;
	height: 244px;
	display: block;
	text-align: center;
	margin: 0 auto 0.8rem;
	border: 2px solid #000;
	border-radius: 8px;
}

form#form-gender .question:before {
	background: url("../images/step-gender.avif") no-repeat center center;
	background-size: cover;
}

form#form-seekingGender .question:before {
	background: url("../images/step-seekingGender.avif") no-repeat center center;
	background-size: cover;
}

form#form-relationshipIntent .question:before {
	background: url("../images/step-relationshipIntent.avif") no-repeat center center;
	background-size: cover;
}

#form-age .question:before {
	background: url("../images/step-dob.avif") no-repeat center center;
	background-size: cover;
}

#form-zip .question:before {
	background: url("../images/step-zip.avif") no-repeat center center;
	background-size: cover;
}
#form-email .question:before {
	background: url("../images/step-email.avif") no-repeat center center;
	background-size: cover;
}
#form-email .question .sub {
	display: none;
}
#form-education .question:before {
	background: url("../images/step-education.avif") no-repeat center center;
	background-size: cover;
	font-size: 0;
}
#form-ethnicity .question:before {
	background: url("../images/step-ethnicity.avif") no-repeat center center;
	background-size: cover;
}

#form-christianValues .question:before {
	background: url("../images/step-christianValues.avif") no-repeat center center;
	background-size: cover;
}
form#form-christianValues .question {
	margin-bottom: 149px;
}
#form-churchInvolvement .question:before {
	background: url("../images/step-churchInvolvement.avif") no-repeat center center;
	background-size: cover;
}

#form-haveChildren .question:before {
	background: url("../images/step-haveChildren.avif") no-repeat center center;
	background-size: cover;
}

#form-income .question:before {
	background: url("../images/step-income.avif") no-repeat center center;
	background-size: cover;
}


#form-religion .question:before {
	background: url("../images/step-religion.avif") no-repeat center center;
	background-size: cover;
}

#stepverify .question:before {
	background: url("../images/step-verify.avif") no-repeat center center;
	background-size: cover;
	font-size: 0px;
}

#stepverify .button {
	margin-top: 20px;
}

.field {
	display: inline-block;
	position: relative;
	max-width: 98%;
	margin: auto;
}

/* May not need these next two, but keep for now */
input.invalid, select.invalid, textarea.invalid {
	border-bottom: 2px solid #e00048 !important;
}

.private-safe {
	display: none;
}

.offer.form .form-top {
	display: none;
	font-family: ArchivoBlack, sans-serif;
	font-size: 32px;
	width: 360px;
	max-width: 95%;
	margin: auto;
	padding-bottom: 25px;
	font-weight: 900;
	font-style: normal;
}

.offer .form-body .info {
	display: none;
}

.offer .form-body .message {
	display: none;
}

.offer .form-body .logo {
	background: #F1F5F9;
	margin: 1.5rem auto 1rem auto;
	padding-top: 20px;
	width: 360px;
	max-width: 97%;
	border-radius: 8px;
	border: 2px solid #000;
	min-height: 190px;
}
.offer .form-body .logo:before {
	content: "OUR RECOMMENDATION 🏆";
	width: 203px;
	height: 31px;
	padding: 0.25rem 0.5rem;
	background-color: #eed2f2;
	font-style: normal;
	font-size: 12px;
	font-family: ArchivoBlack, sans-serif;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
}

.offer .form-body .logo img{
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 60px;
	margin-top: 1.5rem;
}
.offer#elitesingles .form-body .logo img {
	margin-top: 1.4rem;
}
.offer#eharmony .form-body .logo img {
	margin-top: 1rem;
}
.offer .form-body .logo p {
	margin: 20px 20px 1.5rem;
}
.offer#eharmony .form-body .logo p {
	margin: 0.5rem 20px 20px;
}
.offer#elitesingles .form-body .logo p {
	margin: 0.9rem 20px 1.5rem;
}
.offer.form .offer-description {
	display: block !important;
	font-style: normal;
	font-weight: normal;
	font-family: Archivo, sans-serif;
	font-size: 18px;
	line-height: 30px;
	text-align: left;
}

.offer .form-body .field-row {
	width: 100%;
	margin: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.offer .form-body .field-left , .offer .form-body .field-right{
	width: 48%;
}
.offer .form-body .msg {  /* same as .step.form .msg */
	margin: 1.5rem auto 0 ;
	display: flex;
	align-items: center;
	justify-content: start;
	width: 346px;
	height: 0;
}
.offer .form-body .msg.invalid {
	margin-bottom: 1.5rem;
}
.offer.form .form-body {
	margin-top: -16px;
}

.offer.form .field {
	padding-bottom: 10px;
	display: block;
}

.hint-box {
	max-width: 94% !important;
	display: block !important;
	background: rgb(239, 245, 249);
	color: #000;
	z-index: 99;
	font-size: 13px;
	white-space: nowrap;
}
.hint-box ul {
	margin: 0 0 0 4px;
}
.hint-box ul, .hint-box li {
	line-height: 20px;
	padding: 0;
	list-style: none;
}
.hint-box li {
	margin: 0;
}

.hint-box ul::before {
	content: "Password requirements";
	color: #000;
	font-weight: bold;
	font-size: 14px;
	font-family: ArchivoBlack, sans-serif;
	margin-bottom: 5px;
}
.offer .hint-box ul li:first-child {
	margin-top: 7px;
}

.offer .form-body .terms, .offer .form-body .disclaimer, .offer .form-body .consent, .hint-box {
	color: #000;
	padding: 10px;
	vertical-align: text-top;
	width: 346px;
	max-width: 92%;
	background-color: rgb(239, 245, 249);
	border-radius: 8px;
	text-align: left;
	line-height: 18px;
}
.offer .form-body .terms{
	margin: 0.4rem auto auto!important;
}
.hint-box, .offer .form-body .disclaimer, .offer .form-body .consent  {
	margin: 1rem auto auto!important;
}
.offer .form-body .disclaimer {
	position: relative;
	font-size: 14px;
}

.offer.form .terms {
	position: relative;
	font-size: 14px;
}
.terms input[type="checkbox"], .consent input[type="checkbox"]{
	appearance: none;
	width: 16px;
	height: 16px;
	border-radius: 2px;
	background: #fff ;
	vertical-align: sub;
	border: 1px solid #000;
}
.terms input[type="checkbox"]:checked, .consent input[type="checkbox"]:checked {
	background: #fff url("/images/step-icons/selected.svg") no-repeat center center;
	background-size: 18px;
}
.consent {
	font-family: ArchivoRegular, sans-serif;
	font-size: 14px;
}
.login.form .form-top {
	font-size: 1.2em;
}

.login.form .form-top .sub {
	font-size: 14px;
	margin-top: 10px;
}

.login.form .form-body .info {
	margin-bottom: 10px;
}

.terms a { color: rgb(58, 94, 118); text-decoration: none; }
.terms a:hover { color: rgb(58, 94, 118); text-decoration: underline; }
.terms a:visited { color: rgb(58, 94, 118); text-decoration: none; }
.terms a:visited:hover { color: rgb(58, 94, 118); text-decoration: underline; }
.terms a:active { color: rgb(58, 94, 118); text-decoration: none; }

.offer.form button {
	margin-top: 1.5px;
	background: #F6E8F8;
}

select {
	border-bottom: 2px solid #008ad7;
	border-top-width: 0;
	border-right-width: 0;
	border-left-width: 0;
	color: #008ad7;
	font: 1.1em "Lato", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	height: 47px;
	margin: 0;
	max-width: 100%;
	outline: none;
	padding: 8px 2px;
	width: 274px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	text-indent: 4px;
	border-radius: 0;
	background: url("../images/arrow.png") no-repeat 97% #ffffff;
	background-size: 10px auto;
}
@media only screen and (-o-min-device-pixel-ratio: 5/4),
only screen and (-webkit-min-device-pixel-ratio: 1.25),
only screen and (min-device-pixel-ratio: 1.25),
only screen and (min-resolution: 1.25dppx) {
	.homepage {
		background-image: url('../images/index_bkgnd@2x.jpg');
		background-size: contain;

	}
	select {
		background: url("../images/arrow@2x.png") no-repeat 97% #ffffff;
		background-size: 10px auto;
	}

}
@media only screen and (-o-min-device-pixel-ratio: 9/4),
only screen and (-webkit-min-device-pixel-ratio: 2.25),
only screen and (min-device-pixel-ratio: 2.25),
only screen and (min-resolution: 2.25dppx) {
	.homepage {
		background-image: url('../images/index_bkgnd@3x.jpg');
		background-size: contain;
	}
	select {
		background: url("../images/arrow@3x.png") no-repeat 97% #ffffff;
		background-size: 10px auto;
	}
}
.button {
	text-align: center;
}

/* error section */
.msg {
	color: #e00048;
	font-family: "ArchivoRegular", Helvetica, Arial, sans-serif;
	font-size: 1em;
	font-weight: bold;
	height: 16px;
	margin: -4px 0 15px;
	text-align: left;
}

.msg-error {  /* not being used at this time */
	-webkit-animation: animatetop 0.4s;
	animation: animatetop 0.4s;
	background-color: #ffecec;
	border-bottom: 1px solid #ffb5b5;
	-webkit-box-shadow: 1px 1px 0 1px rgba(255, 255, 255, 0.25) inset, 1px 1px 0 rgba(0, 0, 0, 0.2) inset, 1px 1px 3px rgba(0, 0, 0, 0.33);
	-moz-box-shadow: 1px 1px 0 1px rgba(255, 255, 255, 0.25) inset, 1px 1px 0 rgba(0, 0, 0, 0.2) inset, 1px 1px 3px rgba(0, 0, 0, 0.33);
	box-shadow: 1px 1px 0 1px rgba(255, 255, 255, 0.25) inset, 1px 1px 0 rgba(0, 0, 0, 0.2) inset, 1px 1px 3px rgba(0, 0, 0, 0.33);
	color: #cc0000;
	font-size: 1em;
	font-weight: normal;
	height: auto;
	left: 0;
	padding: 10px 0;
	position: fixed;
	text-align: center;
	top: -1px;
	width: 100%;
	z-index: 1;
}

.form-bottom {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: #FFF;
	padding: 15px 0px;
}

.form-body .field {
	padding-bottom: 15px;
}

.private-safe {
	height: 22px;
	padding-top: 10px;
	padding-left: 20px;
	position: absolute;
	bottom: 5px;
	right: 18px;
	color: #666;
	font-size: 12px;
	background-image: url('/images/private-safe.png');
	background-position: left;
	background-repeat: no-repeat;
}

.offer .info {
	margin-top: 8px;
	font-weight: bold;
	font-size: 12px;
}

.optout.form .form-top {
	display: none;
}

.optout.form .question {
	margin: auto;
	width: 300px;
	max-width: 95%;
	font-size: 16px;
}

.optout.form .question .sub {
	font-size: 14px;
	margin-top: 10px;
}

.optout.form .disclaimer {
	font-size: 12px;
	margin-bottom: 5px;
}

button, a.buttonized {
	font-family: 'ArchivoBlack', sans-serif;
	width: 98%;
	max-width: 364px;
	font-size: 16px;
	font-weight: 700;
	padding: 15px 20px;
	border: 2px solid #000;
	border-radius: 4px;
	height: 54px;
	color: #000;
	transition: all 300ms ease-out;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	--tw-shadow-colored: 2px 3px 0px #000;
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), 2px 3px 0px #000;
	background-color: #F6E8F8;
	cursor: pointer;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	transform: translate(0, 0);

}
button:active, #next:active {
	transform: translate(2px, 3px);
	box-shadow: none;
}
.offer.form button {
	background-color: rgb(255 238 238);
}

button:hover,
a.buttonized:hover,
.buttonized-step-one:hover {
	background-color: #AA1CBD;
	text-decoration: none;
}

button:active:not([disabled]),
a.buttonized:active:not([disabled]) {
	background-color: #CC77D7;
/*	-webkit-box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.3) inset, 1px 1px 0 rgba(0, 0, 0, 0.2) inset;
	-moz-box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.3) inset, 1px 1px 0 rgba(0, 0, 0, 0.2) inset;
	box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.3) inset, 1px 1px 0 rgba(0, 0, 0, 0.2) inset;*/
}

button:visited,
button:active,
button:hover,
a.buttonized:visited,
a.buttonized:active,
a.buttonized:hover {
	color: #000;
}

button::before,
a.buttonized::before {
	background-position: 0 0;
	content: '';
	display: none;
	margin-right: 5px;
	opacity: .5;
	vertical-align: -4px;
	width: 16px;
	height: 16px;
}

button[disabled],
a.buttonized[disabled] {
	background-color: #2f6c96;
	cursor: default;
}

button[disabled]::before,
a.buttonized[disabled]::before {
	display: inline-block;
	content: '';
	display: none;
	content: '';
	opacity: .5;
	vertical-align: -4px;
	width: 16px;
	height: 16px;
}

input[type=submit] {
	width: 140px;
	height: 50px;
	font-family: 'Lato-Regular', 'Open-sans', Arial, sans-serif;
	font-size: 20px;
	font-weight: bold;
	background: #e03e48;
	color: #fff;
	text-shadow: 0 0 0.05em #444;
	border: 0 none;
	cursor: pointer;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	box-shadow: 1px 1px 2px 2px #072337;
	-webkit-appearance: none;
}

a {color:rgb(58, 94, 118); text-decoration:none;}
a:hover {color:rgb(58, 94, 118); text-decoration:underline;}
a:visited {color:rgb(58, 94, 118); text-decoration:none;}
a:visited:hover {color:rgb(58, 94, 118); text-decoration:underline;}
a:active {color:rgb(58, 94, 118); text-decoration:underline;}

form input[type="text"], .form input[type="date"], .form input[type="password"], input[type="email"] {
	width: 360px;
	max-width: 99%;
	height: 60px;
	border-radius: 4px;
	border: solid 2px #000;
	background-color: #f8fafc;
	color: #000;
	text-indent: 18px;
	cursor: pointer;
	font-family: ArchivoRegular, sans-serif;
	font-size: 16px;
	text-align: left;
	padding: 0;
	margin: 0;
}

select {
	width: 364px;
	max-width: 100%;
	height: 60px;
	appearance: none;
	border: 2px solid #000;
	border-radius: 4px;
	text-indent: 12px;
	background: url(../images/select-arrow.svg) no-repeat 98% 58%;
	background-size: 22px 22px;
	color: #000;
	padding: 0;
}


select#bmonth {
	width: 165px;
}

select#bday, select#byear {
	width: 95px;
}

#bmonth-input {
	max-width: 45%;
}

#bday-input, #byear-input {
	max-width: 26%;
}

option {
	font-size: 16px;
}

#next {
	display: none;
}
#form-age #next, #form-email #next, #form-zip #next, #form-haveChildren #next, #form- #next, .offer.form #next {
	display: block;
	background: #F6E8F8;
	margin-bottom: 30px;
}
#form-age #next:hover, #form-email #next:hover, #form-zip #next:hover, .offer.form #next:hover {
	background-color: #AA1CBD;
}

/***** Progress bar *****/
#form-verify .nav.progress-bar-width {
	margin-top: 20px;
}
.step.form {
	position: relative;
}
.progress-bar-width {
	width: 364px;
	padding-right: 0;
	padding-bottom: 1.5rem;
	margin: 0 auto;
	position: absolute;
	bottom: 18px;
}
.progress-bar-width .goto-step {
	margin-right: 5px;
}
@keyframes onProgress {
	from { width: 0; }
	to   { width : 100%; }
}
.nav.slide-left {
	width: 364px;
}
.progress-bar {
	background-color: #aa1cbd;
	width: 100%;
	cursor: pointer;
	display: block;
	height: 8px;
	border: 1px solid #000;
}
.progress-bar-width .goto-step.current-step .progress-bar {
	background-color: #330839;
}
.progress-bar-width .goto-step:last-child {
	margin-right: 0;
}
.goto-step.future .progress-bar {
	background-color: #e0e7ee;
}
.progress {
	margin: 12px auto 0;
	width: 100%;
	border-radius: 0;
	background-color: transparent;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#progressNote {
	display: none;
}
.slide-left {
	width: 100%;
}
/***** Slide Left *****/
.content {
	overflow: hidden;
}
form.slide-left, form.slide-right {
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: column;
}
.slide-left {
	animation: 0.4s slide-left;
}
@keyframes slide-left {
	from {
		left: 100%;
	}
	to {
		left: 0;
	}
}
.slide-right {
	width: 100%;
}
/***** Slide Left *****/
.slide-right {
	animation: 0.4s slide-right;
}
@keyframes slide-right {
	from {
		right: 100%;
	}
	to {
		right: 0;
	}
}

@media only screen
and (max-height: 800px)
and (orientation: portrait) {

	.content {
		min-height: 700px;
	}
}
@media (max-width: 1200px) {
	form .question {
		font-size: 28px;
	}
}
@media (max-width: 480px) {
	.header {
		height: 54px;
	}
	.header .logo {
		margin-left: 25px;
		background-size: auto 42px;
	}
	.form {
		width: 100%;
	}
	.content {
		max-width: 87%;
		margin: auto;
	}
	.question, .label {
		width: 89%;
	}
	.offer .label {
		width: 100%;
	}
	.question {
		margin-bottom: 56px;
	}
	.step .question:before {
		height: 186px;
	}
	.step .form-body ul {
		width: 88%;
		margin: 50px auto 0;
	}
	.step .no-answer {
		width: 88%;
		margin: auto;
	}
	#form-age .question {
		margin-bottom: 14px;
	}
	.step.form .question::after, .step .question {
		font-size: 24px;
		line-height: 35px;
	}
	#form-education .question::after,#form-christianValues .question {
		font-size: 22px;
	}
	#stepverify .question::after {
		font-size: 21px;
	}
	.offer .form-body .logo, .offer .profile, #form-age #next, #form-email #next, #form-zip #next, .offer.form #next {
		width: 87%;
	}
	.offer .profile {
		margin: auto;
	}
	form input[type="text"], .form input[type="date"], .form input[type="password"], input[type="email"],
	.offer .form-body .terms, .offer .form-body .disclaimer, .offer .form-body .consent, .hint-box {
		width: 100%;
	}

	.offer.form .terms, .offer .form-body .disclaimer {
		font-size: 12px;
	}
	.offer .form-body .msg.invalid {
		height: 36px;
	}
	.offer .form-body .msg {
		width: 88%;
	}
	.footer-bottom .links {
		width: 92%;
		margin: auto;
	}
	/*.offer .form-body .logo img {
		max-height: 38px;
	}*/
	.progress-bar-width {
		width: 80%;
		margin: 0 auto;
	}
	.offer .form-body .field-row input[type="text"], .offer .form-body .field-row input[type="password"] {
		font-size: 13px;
	}
	.step .field:not(#form-age .field) {
		display: block;
		max-width: 88%;
	}
	form#form-christianValues .question {
		margin-bottom: 100px;
	}
	#bmonth-input {
		width: 40%;
	}
	#bday-input, #byear-input {
		width: 24%;
	}
	#form-age #next, #form-email #next, #form-zip #next, #form-haveChildren #next, #form- #next {
		width: 88%;
	}
	.form .msg {
		width: 88%;
		margin: -4px auto 15px;
	}
	.offer .field {
		max-width: 100%!important;
	}
}
@media (max-width: 320px) {
	.step.form .question::after, .step .question {
		font-size: 20px;
	}
	form input[type="text"], form input[type="date"], form input[type="password"], input[type="email"], form select{
		font-size: 14px;
	}
}