﻿@charset "utf-8";
/* CSS Document */

* {
	box-sizing: border-box;
}

html {
	min-width: 320px;
}

body {
	font-family: "Source Sans Pro", Helvetica, Arial, sans-serif;
	margin: 0;
	background-color: #1c1f20; /*363b3c*/
}

.site-wrapper {
	position: relative;
	width: 100%;
	margin: 0px;
	background-color: #666;
}

.content-container {
	position: relative;
	width: 100%;
	margin: 0px auto;
	max-width: 1000px;
	padding: 0px;
}

.options-bar {
	position: relative;
	height: 42px;
	width: 100%;
	margin: 0px auto;
	background-color: #282d2e; /* 2e3536  282d2e */
	border-bottom: solid 1px #404040;
}

	.options-bar ul {
		list-style: none;
		padding: 0;
		margin: 0;
	}

		.options-bar ul li {
			color: #fff;
		}

ul {
	list-style: none;
}

.email-phone {
	font-size: 14px;
	font-weight: 300;
	float: left;
	color: #fff;
	height: 28px;
	padding: 12px 0px 0px 36px;
}

	.email-phone span {
		color: #fff;
		margin-right: 24px;
	}

		.email-phone span a {
			color: #fff;
			text-decoration: none;
		}

			.email-phone span a:hover {
				color: #ffcc3b;
				text-decoration: underline;
				cursor: pointer;
			}

	.email-phone i {
		padding-right: 8px;
		color: #fff;
	}

.social-links {
	font-size: 14px;
	font-weight: 400;
	float: right;
	color: #fff;
	height: 28px;
	padding: 12px 36px 0px 0px;
}

	.social-links span {
		color: #fff;
		margin-right: 24px;
	}

		.social-links span a {
			color: #fff;
			text-decoration: none;
		}

			.social-links span a:hover {
				color: #ffcc3b;
				text-decoration: underline;
				cursor: pointer;
			}

		.social-links span:last-of-type {
			margin-right: 0px;
			padding-right: 0px;
		}

.navbar {
	background-color: #2e3536;
	z-index: 1000;
	height: 120px;
	overflow: hidden;
}

.subnavbar {
	background-color: #2e3536;
	z-index: 1000;
	height: 120px;
	overflow: hidden;
}

.main-nav {
	float: right;
	width: auto;
	margin-top: 10px;
	margin-right: 16px;
	height: 70px;
}

.main-subnav {
	float: right;
	width: auto;
	margin-top: 10px;
	margin-right: 16px;
	height: 70px;
}

.main-nav-mobile {
	display: none;
	width: 48px;
	height: 48px;
	text-align: center;
	color: #fff;
	float: right;
	margin: 24px 12px 0px 0px;
	border: solid 2px rgba(255,255,255,0.125);
	padding: 3px 6px 6px 6px;
	border-radius: 6px;
	font-size: 32px;
}

	.main-nav-mobile:hover {
		color: #ffcc3b;
		background-color: rgba(0,0,0,0.25);
		border: solid 2px rgba(255,204,59,1.0);
		cursor: pointer;
	}

nav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

	nav ul.horizontal {
		list-style-type: none;
		margin: 0;
		padding: 0;
		overflow: hidden;
		background-color: #2e3536;
	}

		nav ul.horizontal li {
			float: left;
		}

	nav ul.vertical {
		list-style-type: none;
		margin: 0;
		padding: 0;
		overflow: hidden;
		background-color: #2e3536;
		border-color: white;
		border-width: 1px;
		border-style: solid;
	}

		nav ul.vertical li {
			float: left;
		}

nav li {
	display: list-item;
	text-align: -webkit-match-parent;
	font-family: "Source Sans Pro", sans-serif;
	color: #fff;
	font-weight: 400;
	font-size: 16px;
	text-transform: uppercase;
	cursor: pointer;
}


.mobileMenu {
	font-weight: 300;
	font-size: 14px;
	text-transform: uppercase;
}

subnav li {
	font-size: 13px;
}

nav ul.horizontal li a.active, nav ul.horizontal li a:hover {
	background-color: #2e3536;
	color: #ffcc3b;
}

nav ul.vertical li a.active, nav ul.vertical li a:hover {
	background-color: #2e3536;
	color: #ffcc3b;
}

.active {
	background-color: #2e3536;
	color: #ffcc3b;
}

nav ul.horizontal li a {
	display: inline-block;
	color: #fff;
	text-align: center;
	padding: 16px 24px;
	text-decoration: none;
}

.submenuAnchor {
	display: inline-block;
	color: #fff;
	text-align: center;
	padding: 16px 24px;
	text-decoration: none;
}

	.submenuAnchor:hover {
		color: #ffcc3b;
		background-color: rgba(0,0,0,0.25);
		cursor: pointer;
	}

.mobileDiv {
	visibility: hidden;
}

.horizontalList {
	display: inline;
	list-style-type: none;
}

nav ul.vertical li a {
	display: inline-block;
	color: #fff;
	text-align: center;
	padding: 10px 10px;
	text-decoration: none;
}

.main-content {
	position: relative;
	padding: 24px 36px;
	min-height: 480px;
}

	.main-content a {
		color: #ffcc3b;
		text-decoration: underline;
	}

		.main-content a:hover {
			color: #fff;
			text-decoration: underline;
		}

.main-content-bg-01 {
	background-color: #1e1e1c;
	/* ReSharper disable once CssBrowserCompatibility */
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	max-width: 1800px;
	margin: 0px auto;
}

.main-content-hero-01.grad {
	background: -webkit-linear-gradient(left, #040406, #1b191d); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(right, #040406, #1b191d); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(right, #040406, #1b191d); /* For Firefox 3.6 to 15 */
	background: linear-gradient(to right, #040406, #1b191d); /* Standard syntax */
}

.main-content-bg-02 {
	background-color: #1e1e1c;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	max-width: 1800px;
	margin: 0px auto;
}

.main-content-hero-02.grad {
	background: -webkit-linear-gradient(left, #1b1d1b, #111110); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(right, #1b1d1b, #111110); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(right, #1b1d1b, #111110); /* For Firefox 3.6 to 15 */
	background: linear-gradient(to right, #1b1d1b, #111110); /* Standard syntax */
}

.hero-text-wrapper {
	margin-top: 80px;
}

.hero-text {
	position: relative;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
}

	.hero-text.big {
		font-weight: 700;
		font-size: 80px;
		line-height: 68px;
		padding-top: 4px;
	}

	.hero-text.medium {
		font-weight: 700;
		font-size: 40px;
		line-height: 40px;
	}

	.hero-text.small {
		font-weight: 700;
		font-size: 24px;
		line-height: 24px;
		padding-top: 03px;
	}

.text-primary {
	color: #ffcc3b !important;
}

.hr {
	clear: both;
	border-bottom: solid 1px #ffcc3b;
	padding-top: 12px;
	width: 30%;
	margin: 0px auto 6px auto;
}

.text-boxed {
	border: solid 1px #ffcc3b;
	padding: 12px 18px;
	margin: 12px auto;
	background: rgba(0,0,0,0.20);
	max-width: 480px;
}

/*Contact Form*/
.dialogBox {
	background-image: linear-gradient(#f5f5f5, #a2a2a2);
	border: #5a5a5a;
	border-style: solid;
	border-radius: 5%;
	border-width: 2px;
	padding: 15px;
	margin: 20px auto;
}

.row {
	margin: 8px;
}

	.row label {
		color: #353535;
		padding: 2px;
		font-size: smaller;
	}

	.row input {
		width: 100%;
	}

	.row select {
		width: 100%;
	}

	.row textarea {
		width: 100%;
	}
/*End Contact Form*/

.securityIcons svg {
	height: 40px;
	width: 40px;
	margin: 6px 6px 0 6px;
	background: #e8e8e8;
	padding: 5px;
	border: #505050;
	border-style: solid;
	border-radius: 17%;
	border-width: 1px;
	background-image: linear-gradient(#b1b1b1, #d6d6d6);
}

.field-validation-error {
	color: #b30000;
	padding: 2px;
	font-size: smaller;
	font-weight: bold;
	text-align: left;
}

footer {
	position: relative;
	background-color: #282d2e; /*2e3536*/
	color: #666;
	font-size: 14px;
	height: 180px;
	border-bottom: solid 1px #333;
}

	footer a {
		color: #666;
		text-decoration: none;
	}

		footer a:hover {
			color: #ffcc3b;
			opacity: 0.7;
			filter: alpha(opacity=70);
			text-decoration: underline;
			cursor: pointer;
		}

.footer-wrapper {
	position: relative;
	padding: 12px 36px;
}

.footer-left {
	float: left;
	text-align: left;
}

.footer-right {
	float: right;
	text-align: right;
}

	.footer-right .logo-wrapper {
		margin-top: -18px;
		float: right;
	}

.privacy-policy {
	float: right;
}

section {
	position: relative;
}


.section-header {
	width: 100%;
	text-align: center;
	padding: 30px 48px;
	font-weight: 700;
	font-size: 34px;
	line-height: 30px;
	text-transform: uppercase;
}

	.section-header.primary {
		background-color: #e9b82e; /*ffcc3b*/
		color: #fff; /* 282d2e */
		/*border-top: solid 8px #282d2e;*/
	}

	.section-header.drk-grey {
		background-color: #282d2e;
		color: #fff;
		border-top: solid 6px #e9b82e;
	}

.section-text {
	position: relative;
	padding: 48px;
	text-align: center;
	max-width: 1000px;
	margin: 0px auto;
	font-size: large;
}

.bg-white {
	background: #e6e6e6;
	color: #333;
}

.bg-lght-beige {
	background: #dfbf9f;
	color: #333;
}

.bg-grey {
	background: #777;
	color: #333;
}

.bg-drk-grey {
	background: #232323;
	color: #fff;
}


/* ***************************************** */
/* SVG GRAHICS */
.svg {
	width: 100%;
}

	.svg:hover {
		/*cursor: pointer;*/
	}

/* LOGO */
.logo-wrapper {
	float: left;
}

.logo-full {
	width: 95%;
}

.logo {
	display: inline-block;
	vertical-align: bottom;
	margin-left: 24px;
	cursor: pointer;
}

	.logo.tiny {
		width: 90px;
		height: 33px;
		margin-top: 12px;
	}

	.logo.small {
		width: 180px;
		height: 65px;
		margin-top: 12px;
	}

	.logo.medium {
		width: 220px;
		height: 79px;
		margin-top: 0px;
	}

	.logo.large {
		width: 360px;
		height: 130px;
		margin-top: 12px;
	}

.no-link {
	cursor: default !important;
	color: inherit !important;
	text-decoration: inherit !important;
}

	.no-link:hover {
		cursor: default !important;
		color: inherit !important;
		text-decoration: inherit !important;
	}

/* litbulb logo */
.svg.litbulb-logo #mark {
	fill: #ffcc3b !important;
	opacity: 0.9;
	stroke: transparent;
	stroke-width: 0;
}
/* mark */
.svg.litbulb-logo #lit {
	fill: #ffcc3b !important;
	opacity: 0.9;
	stroke: transparent;
	stroke-width: 0;
}
/* lit */
.svg.litbulb-logo #bulb {
	fill: #fff !important;
	opacity: 0.9;
	stroke: transparent;
	stroke-width: 0;
}
/* bulb */
.svg.litbulb-logo #consulting_TM {
	fill: #fff !important;
	opacity: 0.6;
	stroke: transparent;
	stroke-width: 0;
}
/* consulting + TM */
/* HOVER-STYLE litbulb logo */
.svg.hover-litbulb-logo:hover #mark {
	fill: #ffcc3b !important;
	opacity: 1.0;
	stroke: transparent;
	stroke-width: 0;
}
/* mark */
.svg.hover-litbulb-logo:hover #lit {
	fill: #ffcc3b !important;
	opacity: 1.0;
	stroke: transparent;
	stroke-width: 0;
}
/* lit */
.svg.hover-litbulb-logo:hover #bulb {
	fill: #ffcc3b !important;
	opacity: 1.0;
	stroke: transparent;
	stroke-width: 0;
}
/* bulb */
.svg.hover-litbulb-logo:hover #consulting_TM {
	fill: #ffcc3b !important;
	opacity: 0.7;
	stroke: transparent;
	stroke-width: 0;
}
/* consulting + TM */
/* litbulb logo mobile invert */
.mobile .svg.litbulb-logo:hover #mark {
	fill: #fff !important;
	opacity: 1.0;
	stroke: transparent;
	stroke-width: 0;
}
/* mark */
.mobile .svg.litbulb-logo:hover #lit {
	fill: #fff !important;
	opacity: 1.0;
	stroke: transparent;
	stroke-width: 0;
}
/* lit */
.mobile .svg.litbulb-logo:hover #bulb {
	fill: #fff !important;
	opacity: 1.0;
	stroke: transparent;
	stroke-width: 0;
}
/* bulb */
.mobile .svg.litbulb-logo:hover #consulting_TM {
	fill: #fff !important;
	opacity: 1.0;
	stroke: transparent;
	stroke-width: 0;
}
/* consulting + TM */

.svg.litbulb-logo-grey path {
	fill: #fff !important;
	opacity: 0.25;
	stroke: transparent;
	stroke-width: 0;
}

.svg.litbulb-logo-grey:hover path {
	fill: #fff !important;
	opacity: 0.75;
	stroke: transparent;
	stroke-width: 0;
}

.svg.hover-litbulb-logo-grey:hover #mark {
	fill: #ffcc3b !important;
	opacity: 0.75;
	stroke: transparent;
	stroke-width: 0;
}
/* mark */
.svg.hover-litbulb-logo-grey:hover #bulb {
	fill: #fff !important;
	opacity: 0.75;
	stroke: transparent;
	stroke-width: 0;
}
/* bulb */

.svg.litbulb-logo-grey-bg path {
	fill: #000 !important;
	opacity: 0.075;
	stroke: transparent;
	stroke-width: 0;
	cursor: default;
}

.svg.litbulb-logo-grey-bg:hover path {
	fill: #000 !important;
	opacity: 0.075;
	stroke: transparent;
	stroke-width: 0;
	cursor: default;
}


/* d-portraits logo */
.svg.d-portraits-logo #logo {
	fill: #ffffff !important;
	opacity: 0.9;
	stroke: transparent;
	stroke-width: 0;
}
/* logo */
.svg.d-portraits-logo-hover:hover #logo {
	fill: #ffcc3b !important;
	opacity: 0.9;
	stroke: transparent;
	stroke-width: 0;
}
/* logo */

/* The animation code (for scroll mouse icon) */
@keyframes arrowScroll {
	0% {
		left: 13.5px;
		top: 30%;
	}

	50% {
		left: 13.5px;
		top: 70%;
	}

	100% {
		left: 13.5px;
		top: 30%;
	}
}


/* The animation code */
@keyframes bounce {
	0% {
		left: 0px;
		top: 10%;
	}

	25% {
		left: 0px;
		top: -10%;
	}

	100% {
		left: 0px;
		top: 0px;
	}
}
/* The element to apply the animation to */
.anim-bounce:hover {
	position: relative;
	animation-name: bounce;
	animation-duration: 0.75s;
	animation-timing-function: ease;
}

/* The animation code */
@keyframes flip {
	0% {
		transform: rotateY(0deg);
	}

	100% {
		transform: rotateY(360deg);
	}
}
/* The element to apply the animation to */
.anim-flip {
	text-align: center;
}

	.anim-flip:hover {
		position: relative;
		animation-name: flip;
		animation-duration: 0.75s;
	}

/* The animation code */
@keyframes zoom {
	0% {
		transform: scale(.75);
	}

	100% {
		transform: scale(1);
	}
}
/* The element to apply the animation to */
.anim-zoom {
	text-align: center;
}

	.anim-zoom:hover {
		position: relative;
		animation-name: zoom;
		animation-duration: 0.75s;
	}

/* END SVG GRAPHICS */

/* SCROLL MOUSE ICON */
.scroll-mouse-wrapper {
	margin: 24px auto 12px auto;
	text-align: center;
	position: fixed;
	z-index: 3000;
	top: 300px;
	right: 24px;
}

.col25 {
	width: 25%;
}

.col33 {
	width: 33%;
}

.col50 {
	width: 50%;
}

.col75 {
	width: 75%;
}

.col66 {
	width: 66%;
}

@media (max-width:820px) {
	.hero-text-wrapper {
		margin: 30px auto 12px auto;
	}

	.scroll-mouse-wrapper {
		margin: -24px auto 24px auto;
	}

	.col75 {
		width: 100%;
		float: none;
	}

	.col25,.col33,.col50,.col66 {
		width: 50%;
	}

}

@media (max-width:700px) {
	.main-nav {
		display: none;
	}

	.main-nav-mobile {
		display: block;
	}

	.social-links {
		padding-right: 30px;
	}

	.col75, .col66 {
		width: 100%;
		float: none;
	}

	.col25, .col33, .col50 {
		width: 50%;
	}

}

@media (max-width: 640px) {
	.footer-wrapper {
		float: none;
		text-align: center;
		width: 90%;
		margin: 0px auto 12px auto;
	}

	.footer-left, .footer-right {
		float: none;
		text-align: center;
	}

	.footer-right {
		border-top: solid 1px #444;
		margin-top: 12px;
		padding-top: 12px;
	}

		.footer-right .logo-wrapper, .footer-right .privacy-policy {
			float: none;
			padding: 6px 0px 6px 0px;
		}

		.footer-right .logo-wrapper {
			margin-left: -24px;
		}

	.col50, .col75, .col66 {
		width: 100%;
		float: none;
	}

	.col25 .col33  {
		width: 50%;
	}

}


@media (max-width:480px) {
	.hero-text-wrapper {
		margin: 24px auto 0px auto;
	}

	.scroll-mouse-wrapper {
		margin: -48px auto 48px auto;
	}

	.phone .options-bar-text {
		display: none;
	}

	.logo-wrapper {
		margin: 0px 0px 12px 20px;
	}

	.logo {
		margin: 0px 0px 0px -12px;
	}

	.email-phone span {
		margin-right: 0px;
	}

	.email-phone .fa-phone {
		display: none;
	}

	.email {
		margin-left: -4px;
	}
	/* ******* */
	.footer-wrapper {
		float: none;
		text-align: center;
		width: 90%;
		margin: 0px auto 12px auto;
	}

	.footer-left, .footer-right {
		float: none;
		text-align: center;
	}

	.footer-right {
		border-top: solid 1px #444;
		margin-top: 12px;
		padding-top: 12px;
	}

		.footer-right .logo-wrapper {
			float: none;
			padding: 6px 0px 6px 0px;
		}

		.footer-right .logo-wrapper {
			margin-left: 6px;
		}

		.footer-right .privacy-policy {
			padding: 0px 0px 6px 0px;
		}

	.col25, .col33, .col50, .col75, .col66 {
		width: 100%;
		float: none;
	}
}


.scroll-mouse {
	background-color: rgba(255,255,255,0.025);
	-webkit-transform: translate(0,100%);
	-ms-transform: translate(0,100%);
	-o-transform: translate(0,100%);
	transform: translate(0,100%);
	display: inline-block;
	color: #fff;
	width: 31px;
	height: 60px;
	border: 2px solid rgba(255,255,255,.17);
	-webkit-border-radius: 100px;
	border-radius: 100px;
	position: relative;
}

	.scroll-mouse i {
		position: absolute;
		bottom: 7px;
		left: 50%;
		-webkit-transform: translate(-50%,0);
		-ms-transform: translate(-50%,0);
		-o-transform: translate(-50%,0);
		transform: translate(-50%,0);
		font-size: 14px;
		-webkit-animation: arrowScroll 1.8s linear 0s infinite alternate; /* .7s */
		-o-animation: arrowScroll 1.8s linear 0s infinite alternate;
		animation: arrowScroll 1.8s linear 0s infinite alternate;
		opacity: 0.40;
	}

	.scroll-mouse hr {
		color: #fff;
		opacity: 0.20;
		margin-top: 14px;
	}

.scroll-mouse-pipe {
	position: absolute;
	color: #fff;
	opacity: 0.20;
	filter: alpha(opacity=20);
	left: 12px;
	top: 0px;
	font-size: 12px;
}

.scroll-mouse:hover i {
	opacity: 0;
	filter: alpha(opacity=0);
}

.scroll-mouse:hover hr {
	opacity: 0.4;
	filter: alpha(opacity=40);
}

.scroll-mouse:hover .scroll-mouse-pipe {
	opacity: 0.4;
	filter: alpha(opacity=40);
}

.scroll-mouse:hover {
	border: 2px solid rgba(255,255,255,0.4);
}

/* scroll top */
a.go-to-top.on, a.go-to-top:hover a.go-to-top:focus.on {
	opacity: 0.8;
	filter: alpha(opacity=80);
	visibility: visible;
	right: 24px;
	border: solid #ddd 1px; /* ffcc3b */
}

a.go-to-top, a.go-to-top:hover a.go-to-top:focus {
	background-color: rgba(0,0,0,.25);
	-webkit-border-radius: 3px;
	border-radius: 3px;
	bottom: 72px;
	opacity: 0;
	filter: alpha(opacity=0);
	right: -60px;
	-webkit-transition: all .2s ease-in-out 0s;
	-o-transition: all .2s ease-in-out 0s;
	transition: all .2s ease-in-out 0s;
	color: #fff;
	font-size: 40px;
	height: 50px;
	line-height: 1;
	position: fixed;
	text-align: center;
	width: 50px;
	z-index: 100;
	visibility: hidden;
}

	a.go-to-top.on:hover {
		opacity: 0.80;
		filter: alpha(opacity=80);
		background-color: #ffcc3b;
		color: #222;
		border: solid 1px #222;
	}


#about, #contact, #services {
	height: auto;
	min-height: 800px; /* temp height until content added */
}

.arrow-up {
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid black;
}

.arrow-down {
	width: 0;
	height: 0;
	border-left: 30px solid transparent;
	border-right: 30px solid transparent;
	border-top: 30px solid #e9b82e; /* #ffcc3b */
}

.arrow-primary {
	border-top: 30px solid #e9b82e;
}

.arrow-drk-grey {
	border-top: 30px solid #282d2e;
}

.arrow-right {
	width: 0;
	height: 0;
	border-top: 60px solid transparent;
	border-bottom: 60px solid transparent;
	border-left: 60px solid green;
}

.arrow-left {
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-right: 10px solid blue;
}

.bottom-center {
	width: 20px;
	margin: 0px auto;
	text-align: center;
}

.breakpoint {
	display: inline;
}

@media (max-width:480px) {
	.breakpoint {
		display: block;
		clear: both;
		text-align: center;
		width: auto;
		margin: 0px auto;
	}
}

.slides {
	width: 700px;
	margin: 0 auto;
}

	.slides ul {
		list-style: inside none disc;
		margin: 0;
		padding: 0;
	}

/*Form Styles*/
div.row {
	clear: left;
	margin: 6px;
	text-align: left;
}

label {
	float: left;
}

textarea {
	width: 300px;
	height: 100px;
}

div.buttons {
	margin-left: 150px;
	margin-top: 16px;
}

.copydata {
}

#slideshowdiv {
	margin: 70px 0 0 0;
}


@media (max-width:900px) {
	#slideshowdiv {
		margin: 120px 0 0 0;
	}
}

@media (max-width:480px) {
	#slideshowdiv {
		margin: 200px 0 0 0;
	}
}

@media (max-width:348px) {
	#slideshowdiv {
		margin: 300px 0 0 0;
	}
}
