.dark-mode-switch {
	display: flex;
	align-items: center;

	font-style: normal;
}

	.dark-mode-switch .fa-sun,
	.dark-mode-switch .fa-moon {
		color: #999;
	}

	.dark-mode-switch .fa-sun {
		font-size: 1.2em;
	}

.switch input {
  position: absolute;
  opacity: 0;
}

.switch {
  display: inline-block;
  font-size: 14px; /* 1 */
  height: 1em;
  width: 2em;
  margin: 0 0.5em;
  background: #444;
  border-radius: 1em;
}

.switch div {
  height: 1em;
  width: 1em;
  border-radius: 1em;
  background: #999;
  box-shadow: 0 0.1em 0.3em rgba(0,0,0,0.3);
  -webkit-transition: all 300ms;
     -moz-transition: all 300ms;
          transition: all 300ms;
}

.switch input:checked + div {
  -webkit-transform: translate3d(100%, 0, 0);
     -moz-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0);
}

@media only screen and (max-width: 700px) {
	.dark-mode-switch {
		justify-content: center;
		
		padding: 1em 0 0;
	}
	
	body.dark-mode .site-header .nav-toggle,
	body.dark-mode .site-header .nav-toggle:hover {
		background: transparent !important;
		
		color: inherit !important;
	}
	
	body.dark-mode .site-header .main-nav .nav-1 a,
	body.dark-mode .site-header .main-nav .nav-1 a:hover {
		background: transparent !important;
		
		color: inherit !important;
	}
	
	body.dark-mode .home-title-block + .region-row.blue {
		margin-top: -12vw;
		padding: 1em 0;
	}
	
}

/* VISUALLIZARD.com, dark mode */

body.dark-mode {
	background-color: #333;
	
	color: #ddd;
}

body.dark-mode img,
body.dark-mode :hover img,
body.dark-mode img:hover,
body.dark-mode iframe {
	background-color: #333;
	
	opacity: 0.9;
	filter: saturate(0.8);
}

	body.dark-mode .banner a:hover {
		background: transparent;
	}
	

body.dark-mode .home-title-block,
body.dark-mode #footer-map {
	background-color: #000;
	
	opacity: 0.9;
	filter: saturate(0.8);
}
	
	body.dark-mode .home-title-block img,
	body.dark-mode .home-title-block :hover img,
	body.dark-mode .home-title-block img:hover {
		background: none;
		
		opacity: 1;
		filter: none;
	}
	
body.dark-mode .site-header .nav-1 a,
body.dark-mode .site-header a,
body.dark-mode .site-header button {
	color: #ccc;
	background: rgba(255,255,255,0.1);
}

	body.dark-mode .site-header a.site-title {
		background: none;
	}

	body.dark-mode .site-header .nav-1 a:hover,
	body.dark-mode .site-header a:hover,
	body.dark-mode .site-header button:hover {
		color: #000;
		background: rgba(255,255,255,0.9);
	}

body.dark-mode .white {
	background-color: #333;
}

	body.dark-mode .white-text {
		color: #eee;
	}
	
	body.dark-mode .white a {
		color: #1383fb;
	}
	
		body.dark-mode .white a:hover {
			background-color: #005a9a;
	
			color: #ddd;
		}

body.dark-mode .blue {
	background-color: #15a;
	
	color: #eee;
}

	body.dark-mode .blue-text {
		color: #27f;
	}
	
body.dark-mode .green {
	background-color: #590;
}

	body.dark-mode .green a {
		color: #eee;
	}
		
	body.dark-mode .green-text {
		color: #6b2;
	}
	
		body.dark-mode .green-text a:hover {
			background-color: #580;
		}
	
body.dark-mode .red {}

	body.dark-mode .red-text {
		color: #c32560;
	}
	
body.dark-mode .yellow {
	background-color: rgb(255, 180, 1);
}

	body.dark-mode .yellow-text {
		color: rgb(255, 180, 1);
	}
	
/* forms */

body.dark-mode label {
	color: #ddd;
}

body.dark-mode input[type="text"], 
body.dark-mode input[type="email"], 
body.dark-mode input[type="tel"],
body.dark-mode select,
body.dark-mode textarea {
	background: black;
	
	color: lightskyblue;
}

body.dark-mode button,
body.dark-mode .button,
body.dark-mode input[type="submit"] {
	background-color: #004aaa;
}

body.dark-mode .input-check-option label:before {
	background: #000;
}

	.input-check-option input:checked ~ label:before {
		border-color: #666;
		color: lightskyblue;
	}

/* staff */

body.dark-mode .staff figure img {
	border: 2px solid #666;
}

/* services */

body.dark-mode.services h2 {
	color: #27f;
}

/* projects */

body.dark-mode .project-index .container > a:hover {
	color: inherit;
	background: none;
}

body.dark-mode button.slick-prev,
body.dark-mode button.slick-next {
	background-color: transparent;
}
	
	body.dark-mode button.slick-prev:hover,
	body.dark-mode button.slick-next:hover {
		background-color: rgba(0,0,0,.2);
	}

/* blog */

body.dark-mode .grey,
body.dark-mode .blog-index.grey {
	background-color: #1c1c1c;
	border-color: #1c1c1c;
	
	color: #ddd;
}

body.dark-mode .blog-headline i {
	color: #333;
}

/* catalyst */

body.catalyst.dark-mode .white #navigation a {
	color: #eee;
}

body.catalyst.dark-mode #navigation a:hover {
	background-color: rgba(255,255,255,0.2);
}

body.dark-mode .region-content h1:before,
body.dark-mode .region-content h1:after,
body.dark-mode .region-content i[class*=" fa-"] {
	color: rgb(255, 180, 1);
}

body.catalyst.home.dark-mode h2 i[class*=" fa-"], 
body.catalyst.home.dark-mode .h2 i[class*=" fa-"], 
body.catalyst.dark-mode .region-content h2 i[class*=" fa-"], 
body.catalyst.dark-mode .region-content .h2 i[class*=" fa-"], 
body.catalyst.dark-mode .region-content h3 i[class*=" fa-"], 
body.catalyst.dark-mode .region-content .h3 i[class*=" fa-"], 
body.catalyst.dark-mode .region-content h4 i[class*=" fa-"], 
body.catalyst.dark-mode .region-content .h4 i[class*=" fa-"] {
	color: rgb(255, 180, 1);
}

body.catalyst.dark-mode .white a:hover {
	background-color: rgba(0,0,0,0.2);
}

body.catalyst.dark-mode .iconography {}

	body.catalyst.dark-mode .iconography > img {
		border-color: #777;
	}
	
	body.catalyst.dark-mode .iconography > span[class*=" fa-"], 
	body.catalyst.dark-mode .iconography > i[class*=" fa-"] {
		color: #666;
	}

body.catalyst.dark-mode #footer-content h3 a:hover {
	background-color: #590;
	
	color: white;
}