body {
	font: 14px Calibri, Helvetica, Arial, Verdana, sans-serif;
	margin: 0;
	padding: 0;
}

img {
	border: 0 none;
}

.page_container {
	text-align: center;
}

@media (min-width: 600px) {
.page_container {
	margin-top: 20px;
}
}

.main_container {
	position: relative;
	text-align: left;
}

.small_device_inline {
	display: inline;
}

@media (min-width: 600px) {
.small_device_inline {
	display: none;
}
}

@media (min-width: 600px) {
.main_container {
	margin-top: 8px;
	width: 585px;
	margin-left: auto;
	margin-right: auto;
}
}

.header {
	position: relative;
	background-image: url('images/head_bg.png');
	background-repeat: repeat-x;
	margin-bottom: 10px;
	min-height: 64px;
	text-align: center;
}

@media (min-width: 600px) {
.header {
	background-image: url("images/header_narrow.png");
	background-repeat: no-repeat;
	width: 585px;
	height: 95px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
}
}

.header a.logo_text {
	display: block;
	text-align: left;
	font-size: 24px;
	font-weight: bold;
	margin: 10px 10px;
	text-decoration: none;
	color: #111;
}

@media (min-width: 600px) {
.header a {
	position: absolute;
	top: 0;
	left: 0;
	width: 345px;
	height: 75px;
}
}

.menu {
	position: absolute;
	top: 14px;
	left: 220px;
	width: 100px;
	overflow: hidden;
}

@media (min-width: 600px) {
.menu {
	top: 41px;
	left: 358px;
	width: 120px;
}
}

.submenu {
	position: absolute;
	top: 37px;
	left: 50px;
	width: 270px;
	overflow: hidden;
}

@media (min-width: 600px) {
.submenu {
	top: 67px;
	left: 353px;
	width: 230px;
}
}

.menu ul, .submenu ul {
	margin: 0;
	padding: 0;
	display: block;
}

.menu li, .submenu li {
	float: left;
	margin: 0;
	padding: 0;
	margin-right: 1px;
	line-height: 0;
	font-size: 0;
}

.menu li a, .submenu li a {
	font-size: 12px;
	line-height: 26px;
	display: block;
	overflow: hidden;
	padding: 1px 5px 0px 5px;
	text-align: center;
	text-decoration: none;
	outline: none;
}

.menu li a {
	width: 65px;
}

.submenu li a {
	min-width: 90px;
}
.menu li a.normal {
	background: url("images/tab.gif");
	color: white;
}

.menu li a.active,.menu li a.normal:hover {
	background: url("images/tabactive.gif");
	color: black;
}

.submenu li a {
	color: black;
}

.submenu li a:hover {
	color: darkblue;
	text-decoration: underline;
}

.submenu li a.active {
	color: darkblue;
	font-weight: bold;
}

.submenu li.not_shown {
	display: none;
}

#login_form, #registration_form, #forgot_password_form, #password_reset_form, #buy_form, #activate_form,
#form_container, .message_box, #security_questions_form, #forgot_password2_form, #opt_out_form,
#login_2fa_step1_form, #login_2fa_step2_form, #login_2fa_challenge_form {
	position: relative !important;
	width: 250px;
	margin: auto;
	padding: 15px 25px 20px 25px;
}

@media (min-width: 600px) {
#login_form, #registration_form, #forgot_password_form, #password_reset_form, #buy_form, #activate_form,
#form_container, #opt_out_form, #login_2fa_step1_form, #login_2fa_step2_form {
	width: 280px;
}
.message_box, #security_questions_form, #forgot_password2_form, #login_2fa_challenge_form {
	width: 480px;
}
}

.form_heading {
	font-size: 19px;
	font-weight: bold;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	margin-bottom: 6px;
}

.form_heading.l {
	text-align: left;
}

#connect_external {
	margin-bottom: 20px;
}

#message {
	margin-top: 8px;
}

.form_label, .security_questions_form_label {
	display: block;
	padding: 8px 2px 4px 2px;
	width: 250px;
}

.radio_label, .checkbox_label {
	width: 250px;
}

.radio_wrapper, .checkbox_wrapper {
	padding: 4px 2px 4px 2px;
}

@media (min-width: 600px) {
.form_label {
	width: 230px;
}

.radio_label, .checkbox_label {
	width: 230px;
}
.security_questions_form_label {
	width: 480px;
}
}

.radio_group {
	padding: 0 0 3px 6px;
}


.form_field, #quote_select {
	width: 230px;
	display: block;
}

@media (min-width: 600px) {
.form_field, #quote_select {
	width: 250px;
	display: block;
}
}

.security_questions_form_text_field {
	width: 224px;
	display: block;
}

.security_questions_form_select_field {
	width: 230px;
	display: block;
}

@media (min-width: 600px) {
.security_questions_form_text_field {
	width: 474px;
}
.security_questions_form_select_field {
	width: 480px;
}
}

.form_input_help {
	font-size: 0.8em;
	padding: 0 2px;
}

.submit_block {
	width: 100%;
	padding-top: 18px;
}

/**
 * no margin between the checkbox and its label so there's no gap that's no clickable
 */
#remember_me {
	margin: 0 0 0 10px !important;
}

#remember_me_label {
	padding-left: 4px;
}

.password_help, .login_2fa_help {
	width: 260px;
	margin: auto;
	padding: 10px 0 0 5px;
	font-size: 1.1em;
}

.quote_help {
	padding: 10px 0;
}

.opt_out_help {
	padding: 10px 0 10px 5px;
}

#continue.lmargin {
	margin-left: 20px;
}

#payment_amount {
	font-size: 20px;
	font-weight: bold;
	color: #435986;
}

#item_description {
	font-size: 17px;
	color: #435986;
}

#sign_in_with_google {
	text-align: center;
}

#sign_in_with_google img.badge {
	width: 220px;
	height: 41px;
}

#sign_in_with_google img.divider {
	margin: 20px 0 12px 0;
	width: 220px;
	height: 30px;
}

.buttons_row {
    display: flex;
    justify-content: space-evenly;
    padding: 16px 0 0 0;
}