/*************************************
ALL SITE GENERIC STYLES
*************************************/
* { outline: 0 !important; }
.site-description, .site-title, .entry-footer, .entry-meta, .post-navigation, #comments, #respond { display: none; }
.push { clear:both;}
.tl {text-align: left;}
.tc {text-align: center;}
.tr {text-align: right;}
.uc {text-transform: uppercase;}
.underline { text-decoration: underline; }
.third { width: 31.33%; margin: 1%; box-sizing: border-box; }
.twoThirds { width: 64.67%; margin: 1%; box-sizing: border-box; }
.fourth { width:24%; box-sizing:border-box; margin: 1%;}
.half{ width:48%; box-sizing:border-box; margin: 1%; }
.center {margin:0 auto; display:block;float: none;}
.outerContainer { overflow: auto; width: 100%; display: block; }
.innerContainer { max-width: 1280px; overflow: auto; display: block; margin: 0 auto; padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
.contentContainer { max-width: 1000px; overflow: auto; display: block; margin: 0 auto; padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
.inner-content { max-width: 1000px; margin: 0 auto !important; padding-left: 20px; padding-right: 20px; box-sizing: border-box;}
@media screen and (min-width: 768px) and (max-width: 900px) {
	.third, .twoThirds, .fourth { width: 48%; }
}
@media screen and (min-width: 768px) {
	p, ul { font-size: 14pt; }
}
@media screen and (max-width: 767px) {
	.half {width:90%; margin: 2%; }
	.third, .twoThirds { width:70%; margin: 3%;}
	.fourth {width:70%;margin: 3% !important; }
	p, ul { font-size: 12pt; }
	.entry-title { font-size: 20pt; }
}
@media screen and (max-width: 475px) {
	.third, .twoThirds, .fourth {width:90%;margin: 3%;}
}
p { margin-top: 0; margin-bottom: 15px; }
#content { padding: 0; box-sizing: border-box; }
.flexLeft { display: flex; flex-wrap: wrap; }
.flexCenter { display: flex; justify-content: center; flex-wrap: wrap; }
.entry-content, .hentry { margin: 0 !important; }
.entry-content { background: #fff; padding: 50px 0; }

/*************************************
DOWNSTREAM SPECIFICS
*************************************/
h1,h2,h3,h4,h5,h6,p,ol,ul,a,td,th,button { font-family: 'Roboto Condensed', sans-serif; }
h1,h2,h3,h4,h5,h6 { text-transform: uppercase; }
h2 { color: #5eadbf; }
a:link, a :visited { color: #5eadbf; text-decoration: none; transition: all 0.25s ease-in-out; }
a:hover { color: #222; }
.white { color: #fff; }
.teal { color: #5eadbf; }
.button, #gform_submit_button_1 { padding: 10px 30px; text-transform: uppercase; color: #111 !important; font-weight: bold; background: linear-gradient(90deg, #fff 30%, #5eadbf 70%) !important; background-size: 300% !important; border: 2px solid #5eadbf; letter-spacing: 1px; margin: 5px; cursor: pointer; font-family: 'Roboto Condensed', sans-serif; border-radius: 0; transition: all 0.25s ease-in-out; }
.button:hover, #gform_submit_button_1:hover { background-position: 99% -1px !important; }
#headerParallax { background-image: url(//downstreamresearch.com/wp/wp-content/uploads/2019/02/overlay.png); background-size: 60% 100%; background-repeat: no-repeat; background-position: left center; }
#bannerHeading { width: 50%; float: left; min-width: 200px; }
#bannerHeading h1 { color: #5eadbf; padding: 90px 0; }
@media screen and (max-width: 600px) {
	#headerParallax { background-size: 80% 100%; }
	.alignleft, .alignright { margin: 15px auto !important; display: block !important; float: none !important; max-width: 400px; width: 100%; }
}
.entry-content ul, .entry-content ol { margin-left: 25px; padding-left: 0; }
.entry-content ul ul { list-style-type: circle; }

/*************************************
HEADER AND NAVIGATION
*************************************/
.custom-logo-link, .custom-logo { display: block !important; }
#masthead { background: rgba(17,17,17,0.8); border-bottom: 5px solid #5eadbf; }
#innerHeader { margin: 0 auto; display: flex; align-items: center; justify-content: center; }
.site-branding { max-width: 300px; width: 100%; float: left; padding: 5px; box-sizing: border-box; }
#site-navigation { float: right; width: calc(100% - 250px); padding: 10px; }
#primary-menu { display: flex; align-items: center; justify-content: flex-end; float: right; }
#primary-menu li { box-sizing: border-box; text-transform: uppercase; margin: 0 auto; }
#primary-menu li a { transition: all 0.25s ease-in-out; font-size: 11pt; padding: 0 15px; color: #fff; border-left: 1px solid #5eadbf; text-align: center; }
#primary-menu li:first-of-type a { border-left: none; }
#primary-menu li a:hover, #primary-menu li.current-menu-item a { color: #5eadbf; }
@media screen and (max-width: 767px) {
	.site-branding { padding: 5px 25px; }
	#innerHeader { flex-direction: column; }
	#site-navigation { padding: 0; }
	#primary-menu { background: rgba(17, 17, 17, 0.95); padding: 10px 15px; display: block; float: none; }
	.menu-toggle { -webkit-transform: translate3d(0,0,0); width: 100%; text-align: left; color: #fff; position: fixed; top: 0; left: 0; border: none; border-radius: 0; font-size: 12pt; padding: 8px; font-size: 24pt; text-shadow: 0 0 3px #000; font-family: 'Raleway', sans-serif; cursor: pointer; z-index: 999999; width: 40px; background: transparent; }
	.menu-toggle:before { content: "\2630"; margin-right: 11px; }
	.toggled .menu-toggle:before { content: "\2573" !important; margin-right: 10px; }
	.menu-navigation-container { left: 0; top: -400px; position: fixed; width: 100%; background: transparent; padding: 0; z-index: 999998; transition: all 0.25s ease-in-out; }
	#primary-menu li { float: none; padding: 0; border-bottom: 1px solid #bbb; width: 100%; text-align: left; }
	#primary-menu li:last-child { border-bottom: none; }
	.toggled .menu-navigation-container { left: 0; top: 0; bottom: 0; }
	#primary-menu li a { padding: 10px; text-align: center; border: none; }
	#primary-menu li a:hover, #primary-menu li.current-menu-item a { font-weight: bold; }
}

/*************************************
FOOTER
*************************************/
#copyright p { font-size: 11pt !important; text-transform: uppercase; color: #fff; }
#innerFooter { margin: 0 auto; display: block; }
#credit, #copyright { padding: 0; box-sizing: border-box; }
#credit p, #copyright p { margin: 0; }
#copyright { float: left; margin-top: 6px;}
#credit { float: right; }
#credit img { width: 50px; }
@media screen and (max-width: 700px) {
	#credit, #copyright {
		float: none !important; margin: 0 auto;
		display: block; width: 100%; text-align: center;
	}
	#copyright p { padding-bottom: 10px; }
}
#footer { background: #282422; padding: 10px 10px 5px; box-sizing: border-box; }
#upperFooter { background: #fff; padding: 60px 0; border-top: 10px solid #e6e7e8; }

/*************************************
HOME PAGE
*************************************/
.home #content { background-image: url(//downstreamresearch.com/wp/wp-content/uploads/2019/02/overlay.png); background-size: 70% 100%; background-repeat: no-repeat; background-position: left center; position: relative; }
#homeVideo { position: absolute; z-index: -9999; background-size: cover; object-fit: cover; height: 100%; top: 0; }
#innerHomeHero { max-width: 1280px; margin: 0 auto; display: block; overflow: visible; }
#innerHomeHero .flexCenter { max-width: 625px; width: 70%; float: left; flex-direction: column; align-items: center; justify-content: center; padding: 80px 20px; }
.home h1 { color: #5eadbf; margin-top: 0; line-height: 1.0; font-size: 16pt; }
#videoContainer { position: relative; top: 0; }
.home .post-thumbnail { float: left; width: 50%; padding-right: 25px; }
.home .inner-content h2 { display: inline; }
.home .entry-content { padding: 70px 0; background: #fff; }
@media screen and (max-width: 500px) {
	.home .post-thumbnail { width: 100%; float: none; }
	.home .inner-content h2 { text-align: center; display: block; padding: 0; }
}
@media screen and (max-width: 1000px) {
	.home #content { background-size: 80% 100%; }
}
#homeServices { background: #e6e7e8; padding: 70px 0; position: relative; overflow: visible; }
#homeServices .flexCenter { position: absolute; bottom: -28px; left: 0; width: 100%; }
#homeServices .innerContainer { display: flex; justify-content: center; align-items: flex-start; flex-wrap: wrap; }
#homeServices .service { width: 33.33%; display: flex; align-items: center; justify-content: center; padding: 10px; flex-direction: column; position: relative; }
#homeServices h2 { color: #111; transition: all 0.25s ease-in-out; margin-bottom: 5px; }
#homeServices .service:hover h2 { color: #5eadbf; }
.service a { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
#homeCaseStudies { background: rgba(17,17,17,0.7); padding: 90px 0; }
#homeCaseStudies .innerContainer { display: flex; justify-content: center; }
.caseStudy { padding: 20px; background: #e6e7e8; width: 29.33%; margin: 1%; }
.caseStudy h2 { color: #111; margin-top: 0; font-size: 16pt; }
.caseStudy a { color: #111; text-transform: uppercase; display: block; text-align: center; font-weight: bold; font-size: 14pt; }
.caseStudy a svg { color: #5eadbf; transition: all 0.25s ease-in-out; }
.caseStudy a:hover svg { color: #111; }
#homeCaseStudies h3 { font-size: 20pt; margin: 0; line-height: 1.0; padding: 0 20px; }
#homeCaseStudies img { padding-bottom: 40px; }
@media screen and (max-width: 767px) {
	#homeCaseStudies .innerContainer { flex-wrap: wrap; }
	.caseStudy { width: 100%; margin: 10px 0; }
	#homeServices .service { width: 50%; }
}
@media screen and (max-width: 550px) {
	#homeServices { padding-bottom: 130px; }
}
@media screen and (max-width: 450px) {
	#homeServices .service { width: 100%; }
}

/*************************************
SERVICES PAGE
*************************************/
.post-type-archive-cds_services .entry-content { padding: 0; }
.archive article.cds_services .innerArticle { max-width: 1000px; display: flex; align-items: center; justify-content: center; margin: 0 auto; padding: 30px 20px; }
.archive article.cds_services .innerArticle .post-thumbnail { width: 200px; }
.archive article.cds_services .innerArticle .articleContent { width: calc(100% - 200px); }
.archive article.cds_services .innerArticle .inner-content { padding: 0; }
.archive article.cds_services:nth-of-type(2) { background-image: url(//downstreamresearch.com/wp/wp-content/uploads/2019/02/services-background.jpg); background-size: cover; }
.archive article.cds_services:nth-of-type(2) .entry-content { background: transparent; }
.archive article.cds_services h2 a { pointer-events: none; color: #5eadbf; } 
@media screen and (max-width: 600px) {
	.archive article.cds_services .innerArticle { flex-direction: column; }
	.archive article.cds_services .innerArticle .articleContent { width: 100%; }
	.archive article.cds_services .innerArticle h2 { text-align: center; }
}

/*************************************
CASE STUDIES
*************************************/
#caseStudyContainer { max-width: 1280px; margin: 0 auto; display: flex; padding: 20px; flex-wrap: wrap; }
.theStudy { width: 48%; margin: 1%; border: 5px solid #e6e7e8; box-sizing: border-box; background-size: contain; background-repeat: no-repeat; background-position: top center; position: relative; background-color: #fff; }
.theStudy a { position: absolute; top: 0; right: 0; left: 0; bottom: 0; z-index: 3; }
.realTitle, .fakeTitle { padding: 20px; color: #222; background: #e6e7e8; margin: 0; line-height: 1.0; position: absolute; bottom: 0; left: 0; width: 100%; transition: all 0.25s ease-in-out; opacity: 1.0; z-index: 2; font-family: 'Roboto Condensed', sans-serif; font-size: 18pt; text-transform: capitalize; font-weight: bold; }
.fakeTitle { color: #5eadbf; background: #222; z-index: 1; }
.theStudy:hover .realTitle { opacity: 0; }
.studyContent { padding: 20px 20px 60px; background: rgba(17,17,17,0.8); transition: all 0.25s ease-in-out; opacity: 0; height: 250px; }
.theStudy:hover .studyContent { opacity: 1.0; }
.innerFakeTitle { margin: 0; padding-bottom: 15px; color: #fff; font-family: 'Roboto Condensed', sans-serif; text-transform: capitalize; line-height: 1.0; font-size: 18pt; font-weight: bold; }
@media screen and (max-width: 600px) {
	.theStudy { width: 100%; margin: 10px 0; }
}

/*************************************
SINGLE POSTS
*************************************/
.single-post .entry-content { padding: 50px 0; }
.postThumb { padding-bottom: 40px; max-height: 400px; width: auto; }

/*************************************
CONTACT PAGE
*************************************/
.gform_wrapper textarea, .gform_wrapper input:not(.button) { background: #e6e7e8; border: 1px solid #ddd; border-radius: 0; }
@media screen and (min-width: 641px) {
	#gform_wrapper_1 .gfield { padding: 0 !important; margin: 0 1% 20px !important; width: 98%; }
	#field_1_1, #field_1_2, #field_1_3 { width: 31.33% !important; margin: 0 1% 20px !important; clear: none; float: left; padding: 0 !important; }
	#input_1_1, #input_1_2, #input_1_3 { width: 100%; margin: 0; }
	#gform_submit_button_1 { width: 200px; display: block; margin: 0 auto; }
}
#gform_submit_button_1 { margin: 0 auto !important; }
html {
line-height: 1.15; -webkit-text-size-adjust: 100%; }  body {
margin: 0;
} h1 {
font-size: 2em;
margin: 0.67em 0;
}  hr {
box-sizing: content-box; height: 0; overflow: visible; } pre {
font-family: monospace, monospace; font-size: 1em; }  a {
background-color: transparent;
} abbr[title] {
border-bottom: none; text-decoration: underline; text-decoration: underline dotted; } b,
strong {
font-weight: bolder;
} code,
kbd,
samp {
font-family: monospace, monospace; font-size: 1em; } small {
font-size: 80%;
} sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}  img {
border-style: none;
}  button,
input,
optgroup,
select,
textarea {
font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; } button,
input { overflow: visible;
} button,
select { text-transform: none;
} button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
} button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
} button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
} fieldset {
padding: 0.35em 0.75em 0.625em;
} legend {
box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; } progress {
vertical-align: baseline;
} textarea {
overflow: auto;
} [type="checkbox"],
[type="radio"] {
box-sizing: border-box; padding: 0; } [type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
} [type="search"] {
-webkit-appearance: textfield; outline-offset: -2px; } [type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
} ::-webkit-file-upload-button {
-webkit-appearance: button; font: inherit; }  details {
display: block;
} summary {
display: list-item;
}  template {
display: none;
} [hidden] {
display: none;
} body,
button,
input,
select,
optgroup,
textarea {
color: #404040;
font-family: sans-serif;
font-size: 16px;
font-size: 1rem;
line-height: 1.5;
}
h1, h2, h3, h4, h5, h6 {
clear: both;
}
p {
margin-bottom: 1.5em;
}
dfn, cite, em, i {
font-style: italic;
}
blockquote {
margin: 0 1.5em;
}
address {
margin: 0 0 1.5em;
}
pre {
background: #eee;
font-family: "Courier 10 Pitch", Courier, monospace;
font-size: 15px;
font-size: 0.9375rem;
line-height: 1.6;
margin-bottom: 1.6em;
max-width: 100%;
overflow: auto;
padding: 1.6em;
}
code, kbd, tt, var {
font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
font-size: 15px;
font-size: 0.9375rem;
}
abbr, acronym {
border-bottom: 1px dotted #666;
cursor: help;
}
mark, ins {
background: #fff9c0;
text-decoration: none;
}
big {
font-size: 125%;
} html {
box-sizing: border-box;
}
*,
*:before,
*:after { box-sizing: inherit;
}
body {
background: #fff; }
hr {
background-color: #ccc;
border: 0;
height: 1px;
margin-bottom: 1.5em;
}
ul, ol {
margin: 0 0 1.5em 3em;
}
ul {
list-style: disc;
}
ol {
list-style: decimal;
}
li > ul,
li > ol {
margin-bottom: 0;
margin-left: 1.5em;
}
dt {
font-weight: bold;
}
dd {
margin: 0 1.5em 1.5em;
}
img {
height: auto; max-width: 100%; }
figure {
margin: 1em 0; }
table {
margin: 0 0 1.5em;
width: 100%;
} button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
border: 1px solid;
border-color: #ccc #ccc #bbb;
border-radius: 3px;
background: #e6e6e6;
color: rgba(0, 0, 0, 0.8);
font-size: 12px;
font-size: 0.75rem;
line-height: 1;
padding: .6em 1em .4em;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
border-color: #ccc #bbb #aaa;
}
button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
border-color: #aaa #bbb #bbb;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
color: #666;
border: 1px solid #ccc;
border-radius: 3px;
padding: 3px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
color: #111;
}
select {
border: 1px solid #ccc;
}
textarea {
width: 100%;
}   a:hover, a:active {
outline: 0;
} .main-navigation {
display: block;
float: left;
width: 100%;
}
.main-navigation ul {
display: none;
list-style: none;
margin: 0;
padding-left: 0;
}
.main-navigation ul ul {
box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
float: left;
position: absolute;
top: 100%;
left: -999em;
z-index: 99999;
}
.main-navigation ul ul ul {
left: -999em;
top: 0;
}
.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
left: 100%;
}
.main-navigation ul ul a {
width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
left: auto;
}
.main-navigation li {
float: left;
position: relative;
}
.main-navigation a {
display: block;
text-decoration: none;
} .menu-toggle,
.main-navigation.toggled ul {
display: block;
}
@media screen and (min-width: 768px) {
.menu-toggle {
display: none;
}
.main-navigation ul {
display: block;
}
}
.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
margin: 0 0 1.5em;
overflow: hidden;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
float: left;
width: 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
float: right;
text-align: right;
width: 50%;
}  .screen-reader-text {
border: 0;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute !important;
width: 1px;
word-wrap: normal !important; }
.screen-reader-text:focus {
background-color: #f1f1f1;
border-radius: 3px;
box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
clip: auto !important;
clip-path: none;
color: #21759b;
display: block;
font-size: 14px;
font-size: 0.875rem;
font-weight: bold;
height: auto;
left: 5px;
line-height: normal;
padding: 15px 23px 14px;
text-decoration: none;
top: 5px;
width: auto;
z-index: 100000; } #content[tabindex="-1"]:focus {
outline: 0;
} .alignleft {
display: inline;
float: left;
margin-right: 1.5em;
}
.alignright {
display: inline;
float: right;
margin-left: 1.5em;
}
.aligncenter {
clear: both;
display: block;
margin-left: auto;
margin-right: auto;
} .clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
content: "";
display: table;
table-layout: fixed;
}
.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
clear: both;
} .widget {
margin: 0 0 1.5em; }
.widget select {
max-width: 100%;
}  .sticky {
display: block;
}
.hentry {
margin: 0 0 1.5em;
}
.updated:not(.published) {
display: none;
}
.page-content,
.entry-content,
.entry-summary {
margin: 1.5em 0 0;
}
.page-links {
clear: both;
margin: 0 0 1.5em;
} .comment-content a {
word-wrap: break-word;
}
.bypostauthor {
display: block;
}  .infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer { display: none;
} .infinity-end.neverending .site-footer {
display: block;
} .page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
border: none;
margin-bottom: 0;
margin-top: 0;
padding: 0;
} embed,
iframe,
object {
max-width: 100%;
} .custom-logo-link {
display: inline-block;
} .wp-caption {
margin-bottom: 1.5em;
max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
display: block;
margin-left: auto;
margin-right: auto;
}
.wp-caption .wp-caption-text {
margin: 0.8075em 0;
}
.wp-caption-text {
text-align: center;
} .gallery {
margin-bottom: 1.5em;
}
.gallery-item {
display: inline-block;
text-align: center;
vertical-align: top;
width: 100%;
}
.gallery-columns-2 .gallery-item {
max-width: 50%;
}
.gallery-columns-3 .gallery-item {
max-width: 33.33%;
}
.gallery-columns-4 .gallery-item {
max-width: 25%;
}
.gallery-columns-5 .gallery-item {
max-width: 20%;
}
.gallery-columns-6 .gallery-item {
max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
max-width: 11.11%;
}
.gallery-caption {
display: block;
}