/*
	Copyright 2022 Speedsmart.net
*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Hind:wght@300;400;500;600;700&display=swap');


body {
	position: relative;
	margin: 0px;
	padding: 0;
	/*font-family: 'Open Sans', sans-serif;*/
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	background: #ffffff;
	width: 100%;
	min-height: 100%;
	/*padding-bottom: 5rem;*/
}

/*font-family: 'Quicksand', sans-serif;
font-family: 'Lexend Deca', sans-serif;
font-family: 'Open Sans', sans-serif;*/

html {
	height: 100%;
	-webkit-text-size-adjust: 100%;
}

* {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
}

*:focus {
	outline: none;
}

.clearfix {
    overflow: auto;
}

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

:active, :focus, :visited {
	outline: 0!important;
}

a {
	color: inherit;
	text-decoration: none;
}

/*a:link, a:visited, a:active {
	text-decoration: none;
	color: #1792df;
}*/

a:hover {
	text-decoration: underline;
}

h1 {
	display: block;
	/*font-family: "Avenir Next", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Helvetica", "Helvetica", "Gill Sans", sans-serif;*/
	font-family: 'Roboto', sans-serif;
	font-size: 54px; /*50px*/
	font-weight: 700;
	line-height: 54px; /*50px*/
	color: #000;
	/*letter-spacing: -0.02em;*/
	transition: all 160ms ease-out;
}

h1.subTitle {
	font-family: 'Poppins', sans-serif;
	letter-spacing: -0.04em;
	margin: 10px 0;
}

h2 {
	font-family: 'Roboto', sans-serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 1.8;
    letter-spacing: 0.05em;
}

h2.uppercase {
	text-transform: uppercase;
}

p {
	/*font-family: "Avenir Next", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Helvetica", "Helvetica", "Gill Sans", sans-serif;*/
	color: rgb(21, 23, 24);
	font-size: 18px;
	font-weight: 300;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

p a {
	color: #1792df;
}

p strong.uppercase {
	text-transform: uppercase;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 20px;
}

p.subTitle {
	font-family: 'Poppins', sans-serif;
	font-size: 20px;
}

label {
	display: block;
	margin: 3px 0 3px 2px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	padding: 18px 14px 16px 14px !important;
	margin-bottom: 15px;
	border: 1px solid #ccc;
	border-radius: 8px;
	background-color: #fff;
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 22px !important;
	letter-spacing: 0.03em;
	resize: vertical;
	transition: all 200ms ease-out;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    transition: background-color 50000s ease-in-out 0s, color 5000s ease-in-out 0s;
}

textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	padding: 14px 14px;
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 500;
	margin: 0 0 10px 0;
	border-radius: 8px !important;
	border: 1px solid #ccc;
	transition: all 200ms ease-out;
}

body select {
	padding: 18px 70px 16px 14px !important;
	margin-bottom: 15px;
	width: 100%;
	height: auto !important;
	border: 1px solid #ccc;
	border-radius: 8px;
	background: url('/images/2.0/select_down_arrow.png') right center no-repeat; 
	background-color: #fff;
	background-size: 16px 16px;
	background-position: calc(100% - 14px) 21px;
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 22px !important;
	letter-spacing: 0.03em;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.input_checkmark {
	display: inline-block;
	width: auto;
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
	margin: 0px;

}

.input_checkmark_label {
	display: inline-block;
	text-transform: none !important;
	font-weight: 400;
	letter-spacing: 0.05em;
}

fieldset {
	border: none;
	margin: none
}

.input_submit {
	display: block;
	background: #1792df;
	border: 0;
	font-family: 'Poppins', sans-serif;
	color: #fff;
	font-size: 18px;
	font-weight: 600;
	padding: 12px 0 10px 0;
	/*text-transform: uppercase;*/
	transition: all 200ms ease-out;
}

.input_submit:hover {
	cursor: pointer;
	background: #000;
}

.input_submit.light {
	color: #3c3c47;
	/*background: #eff2f3;*/
	background: #e8eced;
}

.input_submit.light:hover {
	cursor: pointer;
	background: #000;
	color: #fff;
}

.input_submit.red {
	background: #fc4035 !important;
}

.input_submit.red:hover {
	cursor: pointer;
	background: #000 !important;
}

.form_spacer {
	display: block;
	width: 100%;
	height: 15px;
}

/* Views */
.container {
	/*font-family: 'Quicksand', sans-serif;*/
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	margin: 0 auto 0 auto;
	/*padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);*/
}

.container.empty {
	padding: 0;
}

.container.app {
	margin-top: 60px;
}

.container_float_center {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
	width: 100%;
}

.content {
	position: relative;
	width: 100%;
	max-width: 1400px;
	/*background: #ccc;*/
	margin: 10px auto 0 auto;
	/*margin: 0px auto 0 auto;*/
	padding: 0 40px 0 40px;
}

.content.full {
	max-width: 100%;
}

.content.big {
	max-width: 1400px;
}

.content.small {
	max-width: 1000px;
}

.content.extra_small {
	max-width: 600px;
	text-align: left;
}

.half_content {
	max-width: 50%;
	margin-left: 0;
	min-width: 660px;
}


/* Header */
header {
	display: flex;
	position: fixed;
	top: 0;
	width: 100%;
	height: calc(90px + env(safe-area-inset-top));
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	align-items: center;
	justify-content: center;
	/*font-family: 'Quicksand', sans-serif;*/
	/*font-family: 'Roboto', sans-serif;*/
	font-family: 'Poppins', sans-serif;
	padding: 0 40px;
	z-index: 2000;
	transition: all 160ms ease-out;
}

.header_left {
	position: relative;
	flex: 0 300px;
}

.header_center {
	flex: 1;
	align-items: center;
	text-align: center;
}

.header_right {
	flex: 0 300px;
	text-align: right;
}

.header_spacer {
	display: flex;
	width: 100%;
	height: calc(90px + env(safe-area-inset-top));
}

.header_links {
	display: flex;
	width: auto;
	height: 90px;
	align-items: center;
  	justify-content: center;
}

.header_links > a.link {
	display: inline-block;
	/*padding: 8px 18px 8px 18px;*/
	padding: 7px 16px 7px 18px;
	/*margin: -1px 5px 0 5px;*/
	margin: -1px 2px 0 2px;
	border-radius: 20px;
	/*font-weight: 700;*/
	font-weight: 600; /*Used with Poppins*/
	font-size: 15px;
	color: #000;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	text-decoration: none;
  	transition: all 100ms ease-out;
}

.header_links > a.link:hover {
	cursor: pointer;
	background: #f0f0f0;
}

.header_links > a.link.active {
	color: #fff;
	/*background: #dc4433;*/
	background: #1792df;
	font-weight: 700;
}

.account_links {
	display: block;
	width: auto;
	height: auto;
}

a.account_link {
	display: inline-block;
	padding: 7px 18px 7px 18px;
	margin: -1px 0 0 0;
	border-radius: 20px;
	/*font-weight: 700;*/
	font-weight: 600; /*Used with Poppins*/
	font-size: 15px;
	letter-spacing: 0.05em;
	color: #000;
	text-decoration: none;
  	transition: all 100ms ease-out;
}

a.account_link:hover {
	cursor: pointer;
	background: #f0f0f0;
}

a.account_link.black {
	background: #f0f0f0;;
}

a.account_link.black:hover {
	cursor: pointer;
	color: #000;
	background: #f0f0f0;
}

.user_link {
	display: inline-block;
	width: auto;
	background: #ccc;
	line-height: 36px;
}

.user_link img {
	float: right;
	width: 36px;
	height: 36px;
	margin: -1px 0 0 10px;
}

.header_user_menu {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	width: auto;
	height: 36px;
	margin-top: 1px;
}

.header_user_menu:hover {
	cursor: pointer;
}

.header_user {
    flex: 1 auto;
    /*font-family: 'Quicksand', sans-serif;*/
    /*font-family: 'Roboto', sans-serif;*/
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #000;
    line-height: 36px;
}

.header_user_icon_black {
	display: inline-block;
	float: right;
	width: 36px;
	height: 36px;
	border-radius: 20px;
	background-size: 100% 100%;
	background-image: url(../../images/new_site/header_user_icon.png);
	margin-top: -1px;
	transition: all 150ms ease-out;
}

.header_user_icon_black:hover {
	cursor: pointer;
	opacity: 0.50;
}

/* Responsive Menu Button */
.header_menu {
	display: none;
	flex: 0 0 80px;
}

.header_menu_button {
	position: relative;
	width: 30px;
	height: 40px;
	float: left;
}

.header_menu_button:hover {
	cursor: pointer;
}

.header_menu_button_top {
	position: absolute;
	width: 30px;
	height: 3px;
	background: #000;
	top: 14px;
	border-radius: 6px;
  	transition: all 70ms ease-out;
}

.header_menu_button_top.red {
	background: #fff;
}

.header_menu_button_middle {
	position: absolute;
	width: 30px;
	height: 3px;
	background: #000;
	top: 18.5px;
	border-radius: 6px;
	opacity: 0;
  	transition: all 150ms ease-out;
}

.header_menu_button_middle.red {
	background: #fff;
}

.header_menu_button_bottom {
	position: absolute;
	width: 20px;
	height: 3px;
	background: #000;
	bottom: 14px;
	border-radius: 6px;
  	transition: all 70ms ease-out;
}

.header_menu_button_bottom.red {
	background: #fff;
}

.header_menu_button:hover > .header_menu_button_top {
	top: 11px;
}

.header_menu_button:hover > .header_menu_button_middle {
	opacity: 1;
}

.header_menu_button:hover > .header_menu_button_bottom {
	bottom: 10px;
}


/* Logo */
a.logo {
	display: block;
	text-indent: -9999px;
	background-position: 50%;
	background-size: 100% 100%;
	z-index: 3;
	background-repeat: no-repeat;
	width: 215px;
	height: 42px;
	margin: 0 0 0 -3px;
	-webkit-transition: -webkit-transform .6s cubic-bezier(0,.71,.41,1);
	transition: -webkit-transform .6s cubic-bezier(0,.71,.41,1);
	transition: transform .6s cubic-bezier(0,.71,.41,1);
	transition: transform .6s cubic-bezier(0,.71,.41,1),-webkit-transform .6s cubic-bezier(0,.71,.41,1);
	/*background-image: url('/images/2.0/logo_new.png');*/
	background-image: url('/images/2.0/Logo_new.svg');
	opacity: 1;
	transform: matrix(1, 0, 0, 1, 0, 0);
	transition: all 150ms ease-out;
}

a.logo_svg {
	display: block;
	text-indent: -9999px;
	background-position: 50%;
	background-size: 100% 100%;
	z-index: 3;
	background-repeat: no-repeat;
	width: 215px;
	height: 42px;
	margin: 0 0 0 -3px;
	-webkit-transition: -webkit-transform .6s cubic-bezier(0,.71,.41,1);
	transition: -webkit-transform .6s cubic-bezier(0,.71,.41,1);
	transition: transform .6s cubic-bezier(0,.71,.41,1);
	transition: transform .6s cubic-bezier(0,.71,.41,1),-webkit-transform .6s cubic-bezier(0,.71,.41,1);
	background-image: url('/images/2.0/Logo_new.svg');
	opacity: 1;
	transform: matrix(1, 0, 0, 1, 0, 0);
	transition: all 150ms ease-out;
}


a.logo:hover {
	cursor: pointer;
}

a.logo.small {
	width: 200px;
	height: 38px;
	top: 22px;
}

a.logo.login {
	/*position: fixed;*/
	/*margin: 27px 0 30px 36px !important;*/
	margin: 0 0 0 5px !important;
}

a.logo.login:hover {
	opacity: 0.50;
}


/* Footer */
footer {
	display: block;
	width: 100%;
	max-width: 1400px;
	height: auto;
	padding: 3em 40px 2em 40px;
	margin: auto auto;
}

.footer_logo {
	display: block;
	text-indent: -9999px;
	background-position: 50%;
	background-size: 100% 100%;
	z-index: 3;
	background-repeat: no-repeat;
	width: 38px;
	height: 31px;
	margin: 0 0 14px -3px;
	/*background-image: url('/images/new/logo_footer.png');*/
	/*background-image: url('/images/2.0/logo_footer.png');*/
	background-image: -webkit-image-set(
		url('/images/2.0/logo_footer.png') 1x,
		url('/images/2.0/logo_footer@2x.png') 2x); /* Temporary fallback for Chrome and Safari browsers until they support 'image-set()' better */
	background-image: image-set(
		url('/images/2.0/logo_footer.png') 1x,
		url('/images/2.0/logo_footer@2x.png') 2x);
}

.footer_inner {
	display: flex;
	flex-direction: row;
	width: 100%;
	border-top: 1px solid #e0e0e0;
	padding-top: 3em;
}

.footer_column {
	flex: 1;
}

.footer_column.copyright {
	flex: 0 0 310px;
	font-size: 14px;
	font-weight: 400;
	color: #383938;
	line-height: 1.8em;
}

.footer_column.spacer {
	flex: 0 0 200px;
}

#speedtest_count {
	font-size: 14px;
	font-weight: 300;
}

.speedtest_theme {
	display: block;
	font-size: 14px;
	font-weight: 300;
	/*margin: 13px 0 0 0;*/
}

.footer_column ul {
	width: 100%;
	list-style: none;
	font-size: 14px;
	font-weight: 300;
	color: #383938;
	margin: 0;
	padding: 0;
}

.footer_column ul li {
	padding: 0 0 1.5em 0;
}

.footer_column ul li:first-child {
    font-weight: 600;
}

/* Responsive Nav Menu */
.nav {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,.50);
	z-index: 2000;
	display: none;
	opacity: 0;
	/*user-select: none;*/
}

.nav_sidebar {
	float: left;
	background: rgba(17,16,28,.90);
	width: 380px;
	height: 100%;
	margin: 0 0 0 -380px;
	/*margin: 0 0 0 0px;*/
	z-index: 3000;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.nav_touch_close {
    width: 100%;
    height: 100%;
    z-index: 2100;
}

.nav_inner {
	display: block;
	position: relative;
	width: 85%;
	height: 100%;
	margin: auto auto;
	padding: 30px 0;
	overflow-y: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.nav_inner::-webkit-scrollbar {
	width: 0;
	height: 0;
}

.nav_logo {
	display: block;
	width: 50px;
	height: 50px;
	background: url(../../images/new_site/logo_white.png) no-repeat;
	background-size: 100% 100%;
	margin: 0 0 25px 5px;
	transition: all 200ms ease-in;
}

.nav_logo:hover {
	cursor: pointer;
	transform: rotate(360deg);
}

.nav_menu_header {
	width: 200px;
	font-family: 'Roboto', sans-serif;
	font-size: 15px;
	color: #ccc;
	font-weight: 300;
	letter-spacing: .2em;
	text-transform: uppercase;
	/*padding: 0 20px;*/
	margin: 40px 0 10px 10px;
	opacity: 0.70;
}

.nav_menu_header.first {
	margin: 15px 0 10px 10px;
}

a.nav_menu_item {
	display: table;
	width: 100%;
	height: auto;
	/*font-family: 'Quicksand', sans-serif;*/
	/*font-family: 'Roboto', sans-serif;*/
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: #ddd;
	margin: 0 0 4px 0;
	padding: 12px 10px;
	text-indent: 32px;
	border-radius: 4px;
	background-size: 22px 22px;
	/*background-position: 10px 12px;*/
	background-position: 10px 14px;
	background-repeat: no-repeat;
	transition: all 200ms ease-in;
}

a.nav_menu_item:hover {
	cursor: pointer;
	background-color: #fff;
	color: #000;
	text-decoration: none;
}

a.nav_menu_item img {
	vertical-align: middle;
	width: 22px;
	height: 22px;
	margin: -3px 0 0 0;
}

a.nav_menu_item.noicon {
	text-indent: 0 !important;
}

.nav_menu_home {
	background-image: url('../../images/new_site/menu_home_white.png');
}

.nav_menu_home:hover {
	background-image: url('../../images/new_site/menu_home.png');
}

.nav_menu_home.active {
	background-image: url('../../images/new_site/menu_home_white.png') !important;
	background-color: rgba(255,255,255,0.20);
	color: #fff;
}

.nav_menu_apps {
	background-image: url('../../images/new_site/menu_apps_white.png');
}

.nav_menu_apps:hover {
	background-image: url('../../images/new_site/menu_apps.png');
}

.nav_menu_apps.active {
	background-image: url('../../images/new_site/menu_apps_white.png') !important;
	background-color: rgba(255,255,255,0.20);
	color: #fff;
}

.nav_menu_history {
	background-image: url('../../images/new_site/menu_history_white.png');
}

.nav_menu_history:hover {
	background-image: url('../../images/new_site/menu_history.png');
}

.nav_menu_history.active {
	background-image: url('../../images/new_site/menu_history_white.png') !important;
	background-color: rgba(255,255,255,0.20);
	color: #fff;
}

.nav_menu_metrics {
	background-image: url('../../images/new_site/menu_metrics_white.png');
}

.nav_menu_metrics:hover {
	background-image: url('../../images/new_site/menu_metrics.png');
}

.nav_menu_metrics.active {
	background-image: url('../../images/new_site/menu_metrics_white.png') !important;
	background-color: rgba(255,255,255,0.20);
	color: #fff;
}

.nav_menu_metrics.active:hover {
	background-image: url('../../images/new_site/menu_metrics.png') !important;
}


.nav_menu_blog {
	background-image: url('../../images/new_site/menu_blog_white.png');
}

.nav_menu_blog:hover {
	background-image: url('../../images/new_site/menu_blog.png');
}

.nav_menu_blog.active {
	background-image: url('../../images/new_site/menu_blog_white.png') !important;
	background-color: rgba(255,255,255,0.20);
	color: #fff;
}

.nav_menu_account {
	background-image: url('../../images/new_site/menu_account_white.png');
}

.nav_menu_account:hover {
	background-image: url('../../images/new_site/menu_account.png');
}

.nav_menu_account.active {
	background-image: url('../../images/new_site/menu_account_white.png') !important;
	background-color: rgba(255,255,255,0.20);
	color: #000;
}

a.nav_follow {
	display: inline-block;
	width: 32px;
	height: 32px;
	margin: 0 0px 14px 10px;
	transition: all 200ms ease-in;
}

a.nav_follow img {
	background: #fff;
	width: 32px;
	height: 32px;
	opacity: 1;
	text-decoration: none;
	transition: all .2s ease-in;
}

a.nav_follow:hover  {
	cursor: pointer;
	opacity: 0.75;
}

/* IP Info */
.info_box {
	position: relative;
	color: rgb(21, 23, 24);
	font-size: 18px;
	font-weight: 300;
	line-height: 1.8;
	letter-spacing: 0.05em;
	margin: 0 0 14px 0;
}

.info_ball {
	position: absolute;
	top: 11px;
	left: 8px;
	width: 16px;
    height: 16px;
    border-radius: 8px;
    background: #1792df;
    margin: auto auto;
}

.info_ball.blue {
	background: #1792df;
}

.info_ball.green {
	background: #65a15a;
}

.info_title {
	display: block;
	margin: 0 0 0px 40px;
	padding: 5px 0 0 0;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.info_content {
	overflow: hidden;
	margin: 0 0 0 40px;
	word-break: break-all;
}

/* Contact Form */
.contact_row {
	display: block;
	position: relative;
	color: rgb(21, 23, 24);
	font-size: 18px;
	font-weight: 300;
	line-height: 1.8;
	letter-spacing: 0.05em;
	margin: 0 0 14px 0;
}

.contact_submitted {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: rgba(255, 255, 255, 0.80);
	z-index: 500;
}

.contact_submitted span {
	display: block;
	font-size: 24px;
	font-weight: 600;
}

/* Account Messages */
.account_error {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid #b92821;
	background: rgba(185,40,33,0.30);
	padding: 10px;
	border-radius: 8px;
	font-size: 16px;
	text-align: center;
}

.account_success {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid #428735;
	background: rgba(66,135,53,0.30);
	padding: 10px;
	border-radius: 8px;
	font-size: 16px;
	text-align: center;
}

/* Account Register/Login */
.account_body {
	height: 100%;
}

.account_title {
	display: block;
	font-family: 'Roboto', sans-serif;
	font-size: 36px;
	font-weight: 700;
	line-height: 36px;
	color: #000;
	letter-spacing: -0.02em;
	margin: 0 0 10px 0;
}

.account_subtitle {
	font-family: 'Roboto', sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.05em;
    color: rgba(0, 0, 0, .6);
	padding: 10px 0;
	margin: 0 0 20px 0;
}

.account_subtitle.error {
	font-size: 16px;
	color: #fc4035;
}

.account_submit {
	margin: 0 0 20px 0;
	text-transform: none;
}

.account_bottom {
	margin: 20px 0 0 0;
	font-family: 'Roboto', sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.05em;
    color: rgba(0, 0, 0, .6);
}

.account_bottom a {
	color: #1792df;
	font-weight: 700;
}

.account_form_row {
	display: block;
	width: 100%;
	/*background: #ccc;*/
	padding: 0 0 8px 0;
	font-family: 'Roboto', sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0.03em;
    color: rgba(0, 0, 0, .6);
}

.account_form_row label {
	display: inline-block;
	padding-right: 10px;
	white-space: nowrap;
}

.account_form_row input {
	vertical-align: middle;
}
.account_form_row label span {
	vertical-align: middle;
}


.form_row {
	display: flex;
	flex-direction: row;
	width: 100%;
	height: auto;
	padding: 0 0 8px 0;
	font-family: 'Roboto', sans-serif;
    font-size: 15px !important;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0.03em;
    color: rgba(0, 0, 0, .6);
    align-items: center;
	justify-content: center;
}

.form_row_left {
	flex: 1 1 50%;
}

.form_row_right {
	flex: 1 1 50%;
	text-align: right;
}


/* Drop Down Menu */
.dd_menu {
	display: none;
	/*display: block;*/
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0);
	top: 0;
	left: 0;
	z-index: 2000;
}

.dd_menu_touch_close {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
}

.dd_menu_box {
	display: none;
	/*display: block;*/
	position: absolute;
	width: 200px;
	height: auto;
	padding: 8px 0;
	background: rgba(23, 23, 23, 0.80);
	border-radius: 6px;
	overflow: hidden;
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	-webkit-box-shadow: 0px 25px 40px -20px rgba(51,51,51,0.70);
	-moz-box-shadow: 0px 25px 40px -20px rgba(51,51,51,0.70);
	box-shadow: 0px 25px 40px -20px rgba(51,51,51,0.70);
	opacity: 0;
	user-select: none;
	z-index: 100;
}

.dd_menu_box_arrow {
	display: block;
	position: absolute;
	top: 73px;
	right: 45px;
	width: 0;
	height: 0;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-bottom: 12px solid rgba(23, 23, 23, 0.80);
	opacity: 0;
	z-index: 100;
}

.dd_menu_item {
	display: block;
	width: 100%;
	height: auto;
	padding: 8px 10px 10px 10px;
	text-align: left;
	color: #fff;
	text-decoration: none;
}

.dd_menu_item:hover {
	text-decoration: none;
	cursor: pointer;
	background: #1792df;
	color: #fff;
}

a.dd_menu_item {
	display: block;
	width: 100%;
	height: auto;
	/*padding: 8px 10px 10px 10px;*/
	padding: 8px 10px 8px 10px;
	text-align: left;
	color: #fff;
	text-decoration: none;
}

a.dd_menu_item:hover {
	text-decoration: none;
	cursor: pointer;
	background: #1792df;
	color: #fff;
}

.dd_menu_label {
	display: inline-flex;
	vertical-align: middle;
	/*font-family: 'Quicksand', sans-serif;*/
	/*font-family: 'Roboto', sans-serif;*/
	font-family: 'Poppins', sans-serif;
	letter-spacing: -0.03em;
	font-size: 16px;
	/*font-weight: 500;*/
	font-weight: 400;
}

.material-icons.dd_menu_icon {
	padding-right: 6px;
}

.material-icons.slide_menu_icon {
	padding-right: 6px;
	margin-top: -3px;
}

.material-icons {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	vertical-align: middle !important;
}

.material-icons-round {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	vertical-align: middle !important;
}

.user_functions_menu {
	top: 78px;
	right: 18px;
}

.user_functions_menu_arrow {
	top: 66px;
	right: 43px;
}


/* Success & Error Messages */
.status_message {
	display: block;
	width: 100%;
	height: auto;
	padding: 16px 20px 14px 20px;
	margin-bottom: 20px;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.03em;
	user-select: none;
}

.status_message.success {
	background: rgba(81, 163, 81, 0.15);
}

.status_message.error {
	background: rgba(252, 64, 53, 0.15);
}

.material-icons.message_icon {
	font-size: 28px !important;
	color: inherit;
	margin: -2px 4px 0 0;
}

.material-icons.message_icon.green {
	color: rgba(81, 163, 81, 1);
}

.material-icons.message_icon.red {
	color: rgba(252, 64, 53, 1);
}


/* Alert Message Modal Box */
.alert_modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.50);
	text-align: center;
	opacity: 0;
	z-index: 3000;
}

.alert_modal_content {
	position: absolute;
	width: 90%;
	max-width: 400px;
	height: auto;
	top: 60%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	background: #fff;
	padding: 24px;
	border-radius: 12px;
	opacity: 0;
	box-shadow: 0px 15px 15px -10px rgba(51,51,51,0.50);
	-webkit-box-shadow: 0px 15px 15px -10px rgba(51,51,51,0.50);
	-moz-box-shadow: 0px 15px 15px -10px rgba(51,51,51,0.50);
	box-shadow: 0px 15px 15px -10px rgba(51,51,51,0.50);
}

.alert_modal_icon {
	display: block;
	width: 96px;
	height: 96px;
	margin: 0 auto 10px auto;
}

.alert_modal_title {
	font-size: 24px;
	font-weight: 700;
	font-family: 'Hind', sans-serif;
	letter-spacing: 0.03em;
	margin: 0;
}

.alert_modal_message {
	margin: 10px 0 30px 0;
	/*text-align: justify;*/
    text-align-last: center;
	font-size: 18px;
	font-weight: 400;
	font-family: 'Hind', sans-serif;
	line-height: 1.3em;
	color: #222;
	opacity: 0.80;
}

.alert_modal_message a {
	color: #1a73e8;
	text-decoration: none;
}

.alert_modal_message a:hover {
	cursor: pointer;
	text-decoration: underline;
}

.alert_modal_close {
	display: block;
	width: 100%;
	height: auto;
	padding: 10px 0 6px 0;
	background: #000000;
	font-size: 20px;
	font-weight: 700;
	font-family: 'Hind', sans-serif;
	letter-spacing: 0.03em;
	color: #fff;
	border-radius: 12px;
	transition: all 200ms ease-out;
}

.alert_modal_close:hover {
	cursor: pointer;
	/*background: #1792df;*/
	background: #3c3c47;
}


/* 404 Page */

.container_404 {
	position: relative;
	display: flex;
	width: 100%;
	height: calc(100vh - 200px);
	min-height: 560px;
	max-height: 1000px;
	align-items: center;
	justify-content: center;
}

.sad_404 {
	display: block;
	width: 100%;
	max-width: 600px;
	height: auto;
	margin: auto auto;
	text-align: center;
}

.sad_404 img {
	width: 100%;
	max-width: 600px;
	height: auto;
	margin-bottom: -20px;
}

.p_404 {
	max-width: 80%;
	margin: auto auto;
	font-family: 'Poppins', sans-serif;
}


/* Retina Images */
@media only screen and (min--moz-device-pixel-ratio: 2),
only screen and (-o-min-device-pixel-ratio: 2/1),
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {

/*	a.logo {
		background-size: 100% 100%;
		background-image: url('/images/2.0/logo_new@2x.png');
	}
*/
}

/* Responsive Stuff */
/*@media only screen and (min-device-width: 480px) and (max-device-width: 950px) and (orientation: landscape) {*/
@media only screen and (max-height: 700px) and (orientation: landscape) {

	header {
		height: calc(60px + env(safe-area-inset-top));
	}

	.header_spacer {
		height: calc(60px + env(safe-area-inset-top));
	}

}

@media (max-height: 760px) {

	.account_body {
		height: auto;
		padding: 100px 0 60px 0;
	}

}


@media (max-width: 1200px) {

	.content {
		padding: 0 30px 0 30px;
	}

	header {
		padding: 0 30px;
	}

	footer {
		padding: 3em 30px 0;
	}

	.user_functions_menu {
		top: 78px;
		right: 8px;
	}

	.user_functions_menu_arrow {
		top: 66px;
		right: 33px;
	}

}

@media (max-width: 1024px) {

	.content {
		padding: 0 20px 0 20px;
	}

	header {
		padding: 0 20px;
	}

	footer {
		padding: 2em 20px 0;
	}

	.footer_column.copyright {
		flex: 0 0 240px;
	}

	.footer_column.spacer {
		flex: 0 0 60px;
	}

	.user_functions_menu {
		top: 78px;
		right: 8px;
	}

	.user_functions_menu_arrow {
		top: 66px;
		right: 23px;
	}

	/* Change the Header */
	.header_left {
		position: relative;
		flex: 1 1 100%;
		text-align: center;
	}

	.header_center {
		display: none;
	}

	.header_right {
		flex: 0 55px;
		text-align: right;
	}

	.header_menu {
		display: block;
		flex: 0 55px;
	}

	.header_links {
		display: none;
	}

	a.account_link {
		display: none;
	}

	a.logo {
	    margin: auto auto;
	}

}

@media (max-width: 900px) {

/*	.header_left {
		position: relative;
		flex: 1 1 100%;
		text-align: center;
	}

	.header_center {
		display: none;
	}

	.header_right {
		flex: 0 55px;
		text-align: right;
	}

	.header_menu {
		display: block;
		flex: 0 55px;
	}

	.header_links {
		display: none;
	}

	a.account_link {
		display: none;
	}

	a.logo {
	    margin: auto auto;
	}*/

}

@media (max-width: 750px) {

	body {
		/*padding-bottom: 9.5rem;*/
		/*padding-bottom: 2rem;*/
	}

	header {
		height: calc(60px + env(safe-area-inset-top));
	}

	.header_spacer {
		height: calc(60px + env(safe-area-inset-top));
	}

	a.logo {
		/*width: 158px;*/
		/*height: 30px;*/
		width: 184px;
		height: 36px;
	}

	.header_user_icon_black {
	    width: 30px;
	    height: 30px;
	    margin-top: -1px;
	}

	footer {
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 2rem;
	}

	.footer_inner {
		display: flex;
		flex-direction: column;
		width: 100%;
		border-top: 1px solid #e0e0e0;
		padding-top: 3em;
	}

	.footer_column {
		margin-bottom: 10px;
	}

	.footer_column.copyright {
		flex: none;
		margin-top: 30px;
	}

	.footer_column.spacer {
		flex: none;
	}

	h1 {
		font-size: 40px;
		line-height: 40px;
	}

	p {
		font-size: 16px;
		line-height: 1.6;
	}

	.half_content {
		max-width: 100%;
		margin-left: 0;
		min-width: 0;
	}

	.user_functions_menu {
		top: 61px;
		right: 8px;
	}

	.user_functions_menu_arrow {
		top: 49px;
		right: 20px;
	}

	input {
		font-size: 16px;
		line-height: 20px !important;
	}

	textarea {
		font-size: 16px;
	}

	body select {
		padding: 18px 70px 16px 14px !important;
		background-position: calc(100% - 14px) 19px;
		font-size: 16px;
		line-height: 20px !important;
	}

	.input_submit {
		font-size: 16px;
		padding: 12px 0 10px 0;
	}

	.status_message {
		padding: 16px 16px 14px 16px;
		font-size: 14px;
	}

	.material-icons.message_icon {
		font-size: 24px !important;
		margin: -2px 2px 0 0;
	}


}

@media (max-width: 640px) {

	h1 {
		font-size: 36px;
		line-height: 36px;
	}

	.nav_sidebar {
		width: 80%;
		margin: 0 0 0 -380px;
	}

	.alert_modal_content {
		padding: 18px;
	}

	.alert_modal_title {
		font-size: 22px;
	}

	.alert_modal_message {
		margin: 10px 0 20px 0;
		font-size: 16px;
		line-height: 1.3em;
	}

	.alert_modal_close {
		font-size: 16px;
	}

	.sad_404 img {
		width: 90%;
		margin-bottom: -20px;
	}

	.p_404 {
		max-width: 90%;
	}

}

@media (max-width: 400px) {


	a.logo {
		width: 164px;
		height: 32px;
	}

	.form_row {
		font-size: 14px !important;
	}

	.nav_inner {
		width: 90%;
		padding: 30px 0;
	}

}

@media (max-width: 380px) {

	.account_title {
		font-size: 30px;
		line-height: 30px;
		margin: 0 0 0px 0;
	}

	.account_subtitle {
		font-size: 14px;
		padding: 10px 0;
		margin: 0 0 10px 0;
	}

	.account_bottom {
		margin: 20px 0 0 0;
		font-size: 14px;
		line-height: 1.6;
		letter-spacing: 0.03em;
	}

	.form_row {
		display: block;
	}

	.form_row_left {
		flex: 0 100%;
	}

	.form_row_right {
		flex: 0 100%;
		text-align: left;
	}

}


/* Dark Mode */
@media (prefers-color-scheme: dark) {

	body {
		background: #17161b;
		color: #ebecf1;
	}

	header {
		background: rgba(23, 22, 27, 0.85);
		backdrop-filter: blur(16px);
		-webkit-backdrop-filter: blur(16px);
	}

	.header_menu_button_top {
		background: #fff;
	}

	.header_menu_button_middle {
		background: #fff;
	}

	.header_menu_button_bottom {
		background: #fff;
	}


	.header_links > a.link {
		color: #fff;
	}

	.header_links > a.link:hover {
		background: #2d363d;
	}

	a.account_link {
		color:  #fff;
	}

	a.account_link:hover {
		background: #2d363d;
	}

	.header_user_icon_black {
		background-image: url(../../images/2.0/header_user_icon-dark.png);
	}

	a.logo {
		/*background-image: url('/images/2.0/logo_new-dark.png');*/
		background-image: url('/images/2.0/Logo_new-dark.svg');
	}

	h1 {
		color: #fff;
	}

	h2 {
		/*color: #636469;*/
		color: #e9ecf1;
	}

	p {
		/*color: #e9ecf1;*/
		color: #a0a2a4;
	}

	.footer_inner {
		border-top: 1px solid #5a595e;
	}

	.footer_column ul {
		color: #e9ecf1;
	}

	.footer_column.copyright {
		color:  #e9ecf1;
	}

	.footer_logo {
		background-image: -webkit-image-set(
			url('/images/2.0/logo_footer-dark.png') 1x,
			url('/images/2.0/logo_footer-dark@2x.png') 2x);
		background-image: image-set(
			url('/images/2.0/logo_footer-dark.png') 1x,
			url('/images/2.0/logo_footer-dark@2x.png') 2x);
	}

	.dd_menu_box {
		background: rgba(45, 54, 61, 0.80);
		-webkit-box-shadow: 0px 25px 40px -20px rgba(15,15,17,0.40);
		-moz-box-shadow: 0px 25px 40px -20px rgba(15,15,17,0.40);
		box-shadow: 0px 25px 40px -20px rgba(15,15,17,0.40);
	}

	.dd_menu_box_arrow {
		border-bottom: 12px solid rgba(45, 54, 61, 0.80);
	}

	.input_submit.light {
		color: #fff;
		background: #2f3137 !important;
	}

	.input_submit.light:hover {
		background: #1792df !important;
	}

	.input_submit.red:hover {
		background: #dc4c53 !important;
	}

	label {
		color: #e9ecf1;
	}

	input {
		background-color: #232228 !important;
		border: 1px solid #2d363d;
		color: #e9ecf1;
	}

	textarea {
		background-color: #232228 !important;
		border: 1px solid #2d363d;
		color: #e9ecf1;
	}

	body select {
		background: url('/images/2.0/select_down_arrow-dark.png') right center no-repeat; 
		background-color: #232228 !important;
		background-size: 16px 16px;
		background-position: calc(100% - 14px) 21px;
		border: 1px solid #2d363d;
		color: #e9ecf1;
	}

	.nav {
		background: rgba(0,0,0,.20);
	}

	.alert_modal {
		background: rgba(0, 0, 0, 0.20);
	}

	.alert_modal_content {
		background: rgba(45, 54, 61, 1);
		box-shadow: 0px 15px 15px -10px rgba(0,0,0,0.25);
	}

	.alert_modal_title {
		color: #fff;
	}

	.alert_modal_message {
		color: #e9ecf1;
		opacity: 1;
	}

	.alert_modal_close {
		background: #13292f;
	}

	.alert_modal_close:hover {
		background: #000;
	}

	/* IP Info */
	.info_title {
		color: #e9ecf1;
	}

	.info_content {
		color: #a0a2a4;
	}

	/*Host a Server*/
	.contact_submitted {
		background-color: rgba(0, 0, 0, 0.25);
	}


}

/* Retina Images - dark mode */
@media only screen and (prefers-color-scheme: dark) and (-webkit-min-device-pixel-ratio: 2) {

	/*a.logo {
		background-size: 100% 100%;
		background-image: url('/images/2.0/logo_new-dark@2x.png');
	}*/

}

@media only screen and (prefers-color-scheme: dark) and (min-resolution: 144dpi) {

	/*a.logo {
		background-size: 100% 100%;
		background-image: url('/images/2.0/logo_new-dark@2x.png');
	}*/

}
