/* 9/26 */
html {
	text-size-adjust : 100%;
	-webkit-text-size-adjust : 100%;
	-ms-text-size-adjust : 100%;
}
body {
	color:#424242;
	background:#fff;
	position:relative;
}
body.dark-style {
	color:#f6f7fb;
	background:#000;
}
body, button, input, textarea {
	font-family: 'Roboto', sans-serif;
	font-size:18px;
	line-height: 1.2em;
}
* {
  box-sizing: border-box;
}
p {
	padding:0;
	margin:18px;
}
p.small, span.small, div.small {
	font-size:13px;
}
html, body, form {margin:0;padding:0}
div, input, textarea, li, td {
	box-sizing: border-box;
}
h1,h2,h3,h4,h5,h6,h7,h7 {	margin:0;padding:0;}
.clear:before,
.clear:after,
.row:before,
.row:after,
#top-nav:before,
#top-nav:after,
.content-width:before,
.content-width:after,
.accordian .li:before,
.accordian .li:after {
  content: "";
  display: table;
}
.clear:after,
.row:after,
#top-nav:after,
.content-width:after,
.accordian .li:after {
  clear: both;
}
.clear, .row {
	clear:both;
}
.center {
	text-align:center;
}
.relative {
	position:relative;
}
.double-vert-margin {
	padding:40px 0;
}
.hide {
	display:none;
}
#banner {
	padding:60px 20px;
	background-image: linear-gradient(90deg,#d2e3ff 15%,#fff); /* e5e9f5 15%, fff */
}
.dark-style #banner {
	background-image: linear-gradient(90deg,#1c4f97 15%,#5b81bd);
}
h1 {
	font-weight:700;
	color:black;
	font-size:36px;
	line-height:1.2em;
	text-align:center;
	display:block;
}
.dark-style h1 {
	color:white;
}

#content {
	background:#fff;
	position:relative;
}
.dark-style #content {
	background:#041227;
}
body.no-padding #content, body.no-padding #content .content-width {
	padding:0;
}
button:not(.js-Dropdown-title) {
	border-radius:2px;
	background:#0077f4;
	color:white;
	border:none;
	font-size:20px;
	line-height:20px;
	padding:10px 20px;
	transition: all 0.2s ease;
}
button:not(.js-Dropdown-title):hover {
	cursor:pointer;
	background:#288ffa;
}
button:not(.js-Dropdown-title).selected {
	background:#288ffa;
}
button:not(.js-Dropdown-title):focus {outline:0;}

a {
	color:#0000ee;
}
.dark-style a {
	color:#b4bdff;
}
a.button {
	display:inline-block;
	border-radius:4px;
	background:#1c4f97;
	color:white;
	border:none;
	font-size:20px;
	line-height:20px;
	padding:10px 20px;
	margin:10px 10px 10px 0;
	transition: background .2s ease;
	text-decoration: none;
}
a.button:hover {
	cursor:pointer;
	background:#2a68c1;
}
a.button.selected {
	background:#288ffa;
}
a.button:focus {outline:0;}
/*a.button.margin-right {
	margin-right:20px;
}*/
.center {
	text-align:center;
}
.col-33 {
	width:32%;
	float:left;
}
#page-home .col-33 {
	padding-left:20px;
	padding-right:20px;
}
@media only screen and (max-width: 680px) {
	.col-33 {
		width:100%;
	}
	#page-home .col-33 {
		text-align:center;
	}
	#page-home .col-33 ul {
		margin:0 auto;
		width:250px;
	}
	#page-home .col-33 ul li {
		text-align:left;
	}
}.col-50 {
	width:49%;
	float:left;
}
@media only screen and (max-width: 680px) {
	.col-50 {
    display:block;
    float:none;
		width:300px;
    max-width:100%;
    margin:0 auto;
	}
  .col-50:first-child {
    padding-bottom:40px;
  }
}

.max-width-800 {
	max-width:800px;
	margin:0 auto;
}
/* slide content */
.toggle_content {
	transition: height .5s ease;
	overflow: hidden;
}
.toggle_content:not(.active) {
	display: none;
}
#style-mode {
	position:absolute;
	right:14px;
	top:14px;
}
#style-mode:hover {
	cursor: pointer;
}
#style-mode img:nth-child(2) {
	position:absolute;
	top:4px;
	left:-20px;
}
#style-mode span {
	display:none;
}
/*

/*
#style-mode img. {
}
#page-home header2 {
	z-index:2;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	white-space:nowrap;
}*/
header {
	z-index:2;
	width:100%;
	white-space:nowrap;
	/*background: linear-gradient(rgba(9,29,57,0.999), rgba(15,49,97,0.999)); /* top bottom */
	background: linear-gradient(#091d39, #0f3161); /* top bottom */
	background-position:bottom center;
	border-bottom:1px solid #35598c;
	text-align:center;
}
footer {
	border-top:1px solid #35598c;
	background: linear-gradient(#0f3161, #091d39); /* top bottom */
	font-size:16px;
	padding:0 20px 0 20px;
	margin:0;
	text-align:center;
}
.dark-style footer {
/*	border-top:1px solid #020f26;

	background: linear-gradient(#02132f, #000); /* top bottom */
	border-top:0;
	background:#000;
}
footer .content-width {
	padding:10px 0 18px 0;
}
footer .logo {
/*	position:static;
	float:none;
	padding-top:5px; */
	display:inline-block;
	font-size:12px;
	color:#486ea4;
	font-size:13px;
	margin-right:15px;
}
footer ul {
	display:inline-block;
	list-style: none;
	margin:0;
	padding:0;
}
footer ul li {
	display:inline-block;
	margin:10px 20px 0 0;
	padding:0;
}
footer ul li:last-child {
	margin-right:0;
}
footer ul a {
	text-decoration: none;
	color:#a9bbd5;
	transition: all .2s ease;
}
footer ul li.donate a {
	color:white;
}
#top-nav {
	display:block;
}
#top-nav ul {
	list-style:none;
	padding:0;
	margin:10px;
}
#top-nav ul li {
	display:inline-block;
}
#top-nav ul li a {
	display:inline-block;
	color:white;
	padding:8px 10px 5px 10px;
	margin-right:20px;
	text-decoration:none;
	font-size:18px;
	line-height:18px;
	letter-spacing:.5px;
	transition: color .2s ease;
}
#top-nav ul li a:hover,
footer ul li.donate a:hover,
footer ul a:hover {
	color:#bcd8f5;
}
#top-nav ul li:last-child a {
	margin-right:0;
}
#top-nav ul li a.selected {
		border-bottom:2px solid #bcd8f5;
}
#nav-logo {
	font-family: 'Genos', sans-serif;
	font-size:32px;
	line-height:1em;
	font-weight:500;
	position:absolute;
	left:20px;
	top:10px;
}
#nav-logo svg {
	width:auto;
	height:20px
}
#nav-logo span:nth-child(2) {
	padding-left:2px;
}
/*
#nav-logo span {
	display:inline-block;
	width:3px;
}*/
#nav-logo a {
	color:white;
	text-decoration:none;
}
#top-nav .buttons {
	position:absolute;
	right:30px;
	top:21px;
}
#top-nav #log-in {
	background:none;
	border:1px solid #0077f4;
	padding:9px 19px;
}
#top-nav #log-in:hover {
	border:1px solid #95c7fb;
	background:rgba(255,255,255,0.05);
}
#top-nav #sign-up {
	margin-left:5px;
}
.content-width {
	max-width:1000px; /* 1220 */
	position:relative;
	margin:0 auto;
	padding:0 58px;
}
#content .content-width {
	padding:50px 0;
}
body.full-width #content .content-width {
	max-width:100%;
}

/* select replacements */
.js-Dropdown {
  display: inline-block;
  font: 400 15px sans-serif;
  position: relative;
  width: 100%;
}
.js-Dropdown-title {
  background: #e7f0fd;
	color:#000;
  border: 1px groove #a5a5a5;
  box-sizing: border-box;
  cursor: pointer;
  font: 400 15px sans-serif;
  height: 2em;
  padding: 0.4em;
  position: relative;
  text-align: left;
  width: 100%;
}
.js-Dropdown-title:after {
  border-color: #a5a5a5 transparent transparent transparent;
  border-style: solid;
  border-width: 4px 6px;
  content: '';
  display: block;
  height: 0;
  position: absolute;
  right: 1em;
  top: 45%;
  width: 0;
}
.js-Dropdown-title span,
.js-Dropdown-list li span {
	font-size:11px;
	position:relative;
	left:3px;
	top:-1px;
}
.js-Dropdown-list {
  background: #e7f0fd;
	color:black;
  border-left: 1px solid #a5a5a5;
  border-right: 1px solid #a5a5a5;
  box-sizing: border-box;
  display: none;
  height: 0;
  list-style: none;
  margin: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  transition: 0.2s linear;
  width: 100%;
  z-index: 999;
}
.js-Dropdown-list.is-open {
  display: block;
  height: auto;
  opacity: 1;
}
.js-Dropdown-list li {
  border-bottom: 1px solid #a5a5a5;
  cursor: pointer;
	padding: .5em 0.5em;
}
.js-Dropdown-list.small li {
  border-bottom: 1px solid #a5a5a5;
  cursor: pointer;
	padding: .25em 0.15em;
	font-size:13px;
}
.js-Dropdown-list li.group {
	padding-left:1.5em;
}
.js-Dropdown-list li:hover {
  background-color: #fff5e9;
}
.js-Dropdown-list li.is-selected {
  background-color: #ffdfb6;
}
.js-Dropdown-optgroup {
  border-bottom: 1px solid #a5a5a5;
	background: #a5a5a5;
  color: #fff;
  cursor: default;
	padding: .5em 0.5em;
  text-align: left;
}
/* mobile version of menu */
@media only screen and (max-width: 820px) {
	.js-Dropdown-title {
		height: 3em;
		padding: 0.5em;
	}
	.js-Dropdown-title:after {
	  border-width: 10px 12px;
	}
	.js-Dropdown-list li {
		padding: 1em 0.5em;
	}
}

/* mobile nav */
#menu-toggle-wrap {
	display:none;
}
/* mobile menu */
header nav > ul > li > ul {
  display:none
}
#top-nav ul li.mobile-only {
	display:none;
}

/* referral bonus */
ol.referral-bonus  {
	list-style: none;
	counter-reset: ps-counter;
	margin:0;
	padding:0 0 0 55px;
}
ol.referral-bonus li {
	position: relative;
	counter-increment: ps-counter;
	padding:20px 0 20px 15px;
	font-size:20px;
	max-width:800px;
	margin:20px auto;
}
ol.referral-bonus li:before {
	content: counter(ps-counter);
  font-weight: bold;
	font-size:30px;
	position:absolute;
	left:-50px;
	top:7px;
	color:white;
	background:rgba(9, 29, 58, .85);
	padding:12px 15px;
  border-radius: 50%;
}
.dark-style ol.referral-bonus li:before {
	color:rgba(9, 29, 58, .85);
	background:white;
}
.referral-small {
	display:block;
	font-size:16px;
}

/* mobile nav + */
@media only screen and (max-width: 820px) {
	/* mobile changes */
	#banner {
		padding:40px 20px;
	}
	h1 {
		font-weight:500;
		font-size:26px;
	}
	#content {
		padding-bottom:30px;
	}
	#content .content-width {
		padding: 20px 1px;
	}
	header .content-width {
		padding:0;
	}

	/* referral bonus */
	ol.referral-bonus  {
		padding:0 0 0 53px;
	}
	ol.referral-bonus li {
		padding:20px 0 20px 15px;
		font-size:18px;
		margin:10px auto;
	}
	ol.referral-bonus li:before {
		font-size:20px;
		line-height:20px;
		left:-37px;
		top:11px;
		padding:9px 14px; /* 12, 15 */
	  border-radius: 50%;
	}

	/* move style mode */
	header ul#top-nav-links.open li#style-mode {
		position: static;
		padding:18px 24px;
	}
	header ul#top-nav-links.open li#style-mode span {
		display:inline;
		padding-left:22px;
		color:#fff;
 	}
	header ul#top-nav-links.open li#style-mode img:nth-child(1) {
		position:absolute;
		top:-2px;
		left:-7px;
	}
	header ul#top-nav-links.open li#style-mode img:nth-child(2) {
		position:absolute;
		top:3px;
		left:-3px;
	}


	#top-nav ul li.mobile-only {
		display:block;
	}


	/* mobile nav */
	header {
		text-align:left;
		position:relative;
		z-index:20;
		height:auto;
	}
	#nav-logo {
		position: static;
		float:left;
		padding-left:20px;
		padding-top:9px;
	}
	header ul {
		display:none;
		position:relative;
	}
	header ul#top-nav-links.open {
		display:block;
		width:100%;
		clear:both;
		float:none;
		margin:0;
		padding:0;
		animation: fade-in .5s;
	}
	header ul#top-nav-links.open li {
		display:block;
		clear:both;
		float:none;
		width:100%;
		padding:0;
		margin:0;
	}
	header ul#top-nav-links.open li a {
		display:block;
		width:100%;
		background:#1c4f97;
		margin-top:2px;
		padding:15px 20px;
	}
	header ul#top-nav-links.open li a.selected {
		border:0;
	}
	/* menu toggle */
	#menu-toggle-wrap {
		display:block;
		float:right;
		z-index:1100;
		box-sizing: border-box;
		padding:10px 20px 5px 8px;
		cursor: pointer;
	}
	#menu-toggle {
		width: 28px;  /* 60 */
		height: 21px; /* 45 */
		position: relative;
		margin: 10px auto;
		transform: rotate(0deg);
		transition: .5s ease-in-out;
	}

	#menu-toggle span {
		display: block;
		position: absolute;
		height: 2px;
		width: 100%;
		background: #e2ecfa;
		border-radius: 6px; /* 6 */
		opacity: 1;
		left: 0;
		transform: rotate(0deg);
		transition: .25s ease-in-out;
	}
	#menu-toggle span:nth-child(1) {
		top: 0px;
		transform-origin: left center;
	}

	#menu-toggle span:nth-child(2) {
		top: 7px; /* 18 */
		transform-origin: left center;
	}

	#menu-toggle span:nth-child(3) {
		top: 14px; /* 36 */
		transform-origin: left center;
	}

	#menu-toggle.open span:nth-child(1) {
		transform: rotate(45deg);
		top: -3px; /* 5 */
		left: 5px; /* 4 */
	}

	#menu-toggle.open span:nth-child(2) {
		width: 0%;
		opacity: 0;
	}

	#menu-toggle.open span:nth-child(3) {
		transform: rotate(-45deg);
		top: 17px; /* 25 */
		left: 5px;
	}
}
/* map display - lofty */
.gm-style, .gm-style-iw-t {
	background:#0a2243;

}
.gm-style-iw.gm-style-iw-c {
	background:#0a2243;
	padding:0 !important;
}
/* box triangle */
.gm-style-iw-t::after {
	background: linear-gradient(45deg,rgba(10,34,67,1) 50%,rgba(10,34,67,0) 51%,rgba(10,34,67,0) 100%) #0a2243 !important;
	z-index:1 !important;
}
/* our expand/contract
.gm-style-iw-a::after {
	z-index:1 !important;
	content: ' ';
	background:url(/assets/images/circle-minus.svg?1) no-repeat; (preload it)
	background:url(/assets/images/circle-plus.svg?5) no-repeat;
	display:block;
	width: 20px;
	height: 20px;
	position: absolute;
	left: -5px;
	top: -66px !important;
}*/
/* @media only screen and (max-width: 500px) {
	.gm-style-iw-a::after {
		top: -60px !important;
	}
} */
.gm-style-iw-a.open::after {
	background:url(/assets/images/circle-minus.svg?5) no-repeat;
}
.gm-style-iw-a:hover::after {
	cursor: pointer;
}

.gm-style .gm-style-iw-d::-webkit-scrollbar-track, .gm-style .gm-style-iw-d::-webkit-scrollbar-track-piece {
	background: #0a2243 !important;
	z-index:1 !important;
}
body .gm-style-iw-d {
	overflow:visible !important;
	/*overflow-y:scroll !important;*/
	z-index:201 !important;
}
.infobox {
	position:relative;
	color:white;
	width:240px;
	z-index:201;
	padding-bottom:15px;
	font-size:13px;
	line-height:1.3em;
}
.infobox .expand-content {
}
.gm-style-iw-a.open .expand-content {
	display:block;
}
.dark-style pre {
	background:black;
}
.infobox h3 {
	display:block;
	background:#689eea;
	color:#0a2243;
	padding:7px 8px 5px 8px;
	font-weight:400;
}
.infobox h3 svg {
	float:right;
	position:relative;
	top:3px;
	right:2px;
}
.infobox h3 svg:hover {
	cursor:pointer;
}
.infobox h3 a {
	text-decoration: none;
}
.infobox .cols {
	padding:5px 8px;
}
.infobox p {
	padding:7px 0 0 0;
	margin:0;
}
.infobox a {
	color:white;
}
@media only screen and (max-width: 680px) {
	.infobox {
		font-size:16px;
	}
}

label:hover {
	cursor:pointer;
}

/* checkbox */
input.checkbox {
	display:none;
}
input.checkbox + label {
	background:url('/assets/images/checkbox-off.svg?3') no-repeat 0 0;
	background-size: 30px;
	display:inline-block;
	padding-top:8px;
	padding-left:36px;
	min-height:24px;
}
input.checkbox:checked + label{
	background-image:url('/assets/images/checkbox-on.svg?3');
}
/* terms checkbox */
input#confirm-terms.checkbox + label {
	background-position: 0 3px;
}

/* toggle */
input.toggle {
	display:none;
}
input.toggle + label {
	background:url('/assets/images/toggle-on.svg?9') no-repeat 0 0;
	background-size: 30px;
	display:inline-block;
	padding-top:8px;
	padding-left:36px;
	min-height:24px;
}

input.toggle:checked + label{
	background-image:url('/assets/images/toggle-off.svg?9');
}

/* map filter - lofty */
#page-map #content {
    padding:0;
		position:relative;
		height:calc(100vh - 57px); /* 57 header + 41 filter toogle, 89vh with footer */
		background: #0a2243;
}
#page-map footer {
	display:none;
}
#list-filter {
	background:black;
	position:absolute;
	top:0;
	left:0;
	z-index:10;
}
.filter {
	width:200px;
	padding:10px 3px 3px 6px;
}
.filter h3 {
	font-weight:normal;
	color:white;
	font-size:16px;
	margin-top:10px;
}
.filter form h3:first-child {
	margin-top:0;
}
.filter h4, .filter label {
	font-weight:normal;
	color:white;
	font-size:14px;
	margin-top:5px;
	display:block;
}
.filter label:first-child {
	margin-top:0;
}
.filter label.small {
	font-size:13px;
	line-height:1.1em;
}
.filter label:hover {
	cursor:pointer;
}
.filter .filter-selected-group {
	background:#1c4f97;
	padding:10px;
}
.filter .range-col-1,
.filter .range-col-2,
.filter .range-col-3 {
	float:left;
	width:40%;
}
.filter .range-col-2 {
	width:20%;
	color:white;
	padding:7px 0 0 10px;
}
#filter-clear-selected {
	font-size:16px;
	padding:7px 14px;
	border-radius:10px;
}
#map {
  position: absolute;
  top: 0px;
  left: 200px;
  right: 0;
  bottom: 0;
}
#mobile-filter-toggle {
	display:none;
}
@media only screen and (max-width: 800px) {
	#page-map #content {
			height:calc(100vh - 104px); /* 57 header + 49 filter toogle, 89vh with footer */
	}
	#mobile-filter-toggle {
		display:block;
		color:white;
		padding:15px 20px;
		font-size:18px;
		background:#10386e;
		fill: #fff;
	}
	#mobile-filter-toggle {

	}
	#mobile-filter-toggle:hover {
		cursor:pointer;
	}
	#mobile-filter-toggle svg {
		float:right;
		position:relative;
		top:5px;
		transition: all 0.2s ease;
	}
		#mobile-filter-toggle.open {
			position:static;
		}
	#mobile-filter-toggle.open svg {
		transform: rotate(90deg);
	}
	.filter {
		width:100%;
		display:none;
		padding:10px 20px 20px 20px;
	}
	.filter.open {
		display:block;
		animation: fade-in .5s;
	}
	#list-filter.open {
		position:static;
	}
	#map-wrapper {
		position:relative;
		width:100%;
		height:100%;
	}
	#map {
		left:0;
		top:0px;
	}
}

/* address page */
#page-address {
	text-align:center;
}
#page-address button {
		margin-top:20px;
}
#page-address button:first-child {
	margin-right:20px;
}
#algo_address {
	font-size:18px;
	width:710px;
	max-width:100%;
	padding:.2em .4em;
}

/* for fading display block items */
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* visitor alerts (like accepting terms) */
.visitor-alert {
	background:#a13434;
	color:white;
	text-align:center;
	padding:20px;
	max-height:100px;
	transition: all .75s ease;
}
.visitor-alert.slide-up {
	max-height:0;
	height:auto;
	padding:0 !important;
	overflow:hidden;
}
.visitor-alert a {
	color:white;
}
.visitor-alert button {
	padding:8px 12px;
	margin:-7px 0 0 20px;
	background:#0c274e;
}
.visitor-alert.terms-alert {
	padding:16px 20px 25px 20px;
}
.visitor-alert.features-alert {
	padding:24px 20px 20px 20px;
}
.read-more-link {
  color: #0089b8;
/*  text-decoration: none;
  font-size: 17px;
  line-height: 20px;
  margin-top: 37px;
  display: inline-block;  */
}
.read-more-link:hover {
  cursor:pointer;
}
.read-more {
  display: none;
  height: 0;
  overflow: hidden;
}
.read-more.is-visible {
  display:block;
  height:auto;
}
.error_msg {
  background:#a13434;
  border-radius: 4px;
	color:white;
	text-align:center;
	padding:20px;
  max-width:600px;
  margin:0 auto;
}
#page-home h3 {
	margin-bottom:30px;
	padding-left:10px;
}
#page-home .button {
	font-size:14px;
	line-height:1em;
}
#home-img-link {
  max-width:100%;
  width:200px;
  height:auto;
  margin:0 auto;
  border-radius: 10px;
/*  object-fit: cover;*/
  border:2px solid #1c4f97;
}
ul.list li {
  margin:10px 0;
}
