/*
Client: Rare Earth Interactive
Version: v9.5
Author: Justin Von Strasburg and Mike Silvestri for Rare Earth Interactive
*/

/*
Colors:
yellow - #FFD42A
blue: #285CAB


*/

/* Breakpoints/Tweakpoints 


*/

/*
CSS Contents:
HTML5 display definitions
Base
Links
Typography
Lists
Embedded content
Figures
Forms
Tables
Misc/non-semantic helper classes
The Build
Print Styles

*/


/* =============================================================================
   1. HTML5 display definitions
   ========================================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
    display: block;
}

audio, canvas, video {
    display: inline-block;
	display: inline;
	zoom: 1;
}

audio:not([controls]) {
	display:none;
}

[hidden] {
	display: none;
}


/* =============================================================================
   2. Base
   ========================================================================== */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;  
}   

html {
	font-size: 90%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

@media screen and (min-width: 35em) {

	html {
		font-size: 100%;
	}

}

@media screen and (min-width: 100em) {

    html {
		font-size: 120%;
	}

}

@media screen and (min-width: 120em) {

    html {
    	font-size: 140%;
	}

}

@media screen and (min-width: 140em) {

    html {
        font-size: 160%;
	}

}

@media screen and (min-width: 180em) {

    html {
        font-size: 200%;
    }

}

html, button, input, select, textarea {
	font-family: sans-serif;
	color: #222;
}

body {
    background: #000000;
	font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	/* font-family: "Trebuchet MS", Verdana, "Verdana Ref", sans-serif; */
    font-size: 1em;
	line-height: 1.6;
    color: #222222;
}

	
/* =============================================================================
   3. Links
   ========================================================================== */
a {
	color: #000000;
	text-decoration: none;
	border-bottom: .1em solid #FFD42A;
}

a:hover {
	color: #000000;
	text-decoration: none;
	border-bottom: .1em solid #000000;
}

a:focus {
	outline: thin dotted;
}

a:hover, a:active {
	outline: 0;
}


/* =============================================================================
   4. Typography
   ========================================================================== */

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

h1 {
	font-size: 2em;
	margin: 0 0 1em 0;
    line-height: 1.2;
}

h2 {
	font-size: 1.5em;	
	margin: 0 0 1em 0;
    line-height: 1.2;
}

h3, h4 {
	font-size: 1.25em;
	margin: 0 0 .5em 0;  
	text-transform: uppercase;
}

h5, h6 {
	font-size: 1.15em;
	margin: 0 0 .75em 0;
	text-transform: uppercase;
}

p {
	margin: 0 0 1.5em 0;      
}


abbr[title] {
	border-bottom: 1px dotted;
}

b, strong {
	font-weight: bold;
}

em {
    font-style: italic;
}

blockquote {
	margin: 0 0 1.5em 0;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

blockquote p {
	margin: 0 0 .25em 0;
	font-style: italic;
}

blockquote p:before {
	content: "\201C";
	font-size: 2em;
	line-height: 0.1em;
	margin-right: 0.09em;
	vertical-align: -0.3em;
}

blockquote p:after {
	content: "\201D";
	font-size: 2em;
	line-height: 0.1em;
	margin-left: 0.09em;
	vertical-align: -0.3em;
}

blockquote cite {
	display: block;
	margin-top: 1em;
	font-style: normal;
}

dfn {
	font-style: italic;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

ins {
	background: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background: #ff0;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

q {
	quotes: none;
}

q:before, q:after {
	content: "";
	content: none;
}

small {
	font-size: 8px;
}

sub, sup {
	font-size: 8px;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -.5em;
}

sub {
	bottom: -.25em;
}

::-moz-selection {
	background: #fec558;
	color: #002334;
	text-shadow: none;
}

::selection {
	background: #fec558;
	color: #002334;
	text-shadow: none;
}

	
/* =============================================================================
   5. Lists
   ========================================================================== */
ul, ol {
	margin: 1em 0 1.5em 1em;
	padding: 0 0 0 0;
}

ul li, ol li {
	margin: 0 0 .5em 0;
}

ul ul, ol ol {
	margin: .5em 0 1em 0;
	padding: 0 0 0 2em;
}

dd {
	margin: 0 0 0 2em;
}

nav ul, nav ol {
	list-style: none;
	list-style-image: none;
	margin: 0;
	padding: 0;
}


/* =============================================================================
   6. Embedded content
   ========================================================================== */
img {
	max-width: 100%;
	border: 0;
	-ms-interpolation-mode: bicubic;
}

img { 
	vetical-align: middle;
}

img a {
	display: block;
	border: 0;
}

.contentarea img {
    max-width: 100%;
	border: .1em solid #eee;
	-ms-interpolation-mode: bicubic;
}

svg:not(:root) {
	overflow: hidden;
}

object, video, iframe {
	max-width: 100%;
}

.google-maps {
    position: relative;
    padding-bottom: 75%;
    height: 0;
    overflow: hidden;
    margin-bottom: 2em;
}

.google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.map {
    padding: 0 0 1em 0;
}


/* =============================================================================
   7. Figures
   ========================================================================== */
figure {
	margin: 0;
}

	
/* =============================================================================
   8. Forms Basics
   ========================================================================== */
form {
    margin: 0;
}

fieldset {
    margin: 0 0 2em 0;
}

label {
    cursor: pointer;
    display: block;
}

@media screen and (min-width: 40em) { 

    .form-element--align label {
        width: 40%;
        float: left;
    }

    .form-element--split label {
          
    }
    
    .form-element--none label {
        display: inline-block;
        padding: 0 2em 0 0;
    }

}

.lt-ie9 .form-element--align label {
    width: 40%;
	float: left;
}

.lt-ie9 .form-element--split label {
  
}

.lt-ie9 .form-element--none label {
	display: inline-block;
	padding: 0 2em 0 0;
}

legend {
	border: 0;
	margin-left: -8px;
	padding: 0;
	white-space: normal;
}

button, input, select, textarea {
	font-size: 100%;
	margin: 0;
	vertical-align: baseline;
	vertical-align: middle;
}

input[type=text], textarea {
    border: .1em solid #000000;
    padding: .5em;
    margin: 0 0 0 0;
}

input[type=text]:focus, textarea:focus {
    border: .1em solid #FFD42A;
    outline: 0;
}

button, input {
	line-height: normal;
}

input[type=text] {
    width: 90%;   
}

@media screen and (min-width: 40em) { 

    .form-element--align input[type=text] {
        width: 50%;
        float: right;
    }

    .form-element--split input[type=text] {
        width: 70%;   
    }
    
    .form-element--none input[type=text] {
        width: 40%;
    }

}

.lt-ie9 .form-element--align input[type=text] {
	width: 50%;
	float: right;
}

.lt-ie9 .form-element--split input[type=text] {
	width: 70%;   
}

.lt-ie9 .form-element--none input[type=text] {
	width: 40%;
}

button, input[type=button], input[type=reset], input[type=submit] {
	cursor: pointer;
	-webkit-appearance: button;
	overflow: visible;
	border: none;
}

button[disabled], input[disabled] {
	cursor: default;
}

input[type=checkbox], input[type=radio] {
	box-sizing: border-box;
	padding: 0;
	width: 16px;
	height: 16px;
    margin: 0 .5em 0 0;
}

input[type=search] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

input[type=search]::-webkit-search-decoration, input[type=search]::-webkit-search-cancel-button {
	-webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
	resize: vertical;
	width: 90%;
}

@media screen and (min-width: 40em) { 

    .form-element--align textarea {
        width: 50%;
        float: right;
    }

    .form-element--split textarea {
        width: 70%;   
    }
    
    .form-element--none textarea {
        width: 40%;
    }

}

.lt-ie9 .form-element--align textarea {
	width: 50%;
	float: right;
}

.lt-ie9 .form-element--split textarea {
	width: 70%;   
}

.lt-ie9 .form-element--none textarea {
	width: 40%;
}

input:valid, textarea:valid {

}

input:invalid, textarea:invalid {
	background-color: #f0dddd;
}

.form-element--static {
    margin: 0 0 2em 0;   
}

#recaptcha_table {
    background: #ffffff;   
}




.recaptcha_widget {
    max-width: 20em;
    background: #ffffff;
	border: 1px solid #eeeeee;
	padding: 1em .75em;
}

.lt-ie9 .recaptcha_widget {
    width: 20em;
}

#recaptcha_image {
    margin-bottom: .5em;
    padding-bottom: .25em;
    width: 90% !important;
    height: auto !important;
}

#recaptcha_image img {
    margin-bottom: 0 !important;
}

.recaptcha_input {
    padding: .5em 0;
}

#recaptcha_reload, #recaptcha_audio, #recaptcha_help {
    font-size: .85em;
}



/* =============================================================================
   9. Tables
   ========================================================================== */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

tr {
    border-bottom: .1em solid #eeeeee;
}

table.table-noborders tr {
    border-bottom: none !important;
}

td {
	vertical-align: middle;
	text-align: center;
	padding: .5em .25em;
}

.table--marketing-services {
    width: 600px;
}

.table--marketing-services td {
    border-right: 1px solid #eeeeee;
}

@media screen and (min-width: 44em) { 
 
    .table--marketing-services {
        width: 100%;
    }

}

.lt-ie9 .table--marketing-services {
    width: 100%;
}

.tr--division {
    border-bottom: 3px solid #eeeeee;
}

.table-container {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; // smoother scrolling
}

@media screen and (min-width: 44em) { 
    
    .table-container {
        overflow: visible;
    }

}

.lt-ie9 .table-container {
    overflow: visible;
}


/* =============================================================================
   10. Misc/non-semantic helper classes
   ========================================================================== */

.align-right {
    text-align: right;
}

.align-center {
    text-align: center;
}
	
/* For image replacement */
.ir {
	display: block;
	border: 0;
	text-indent: -999em;
	overflow: hidden;
	background-color: transparent;
	background-repeat: no-repeat;
	text-align: left;
	direction: ltr;
	line-height: 0;
}

.ir br {
	display: none;
}
	
/* Hide from both screenreaders and browsers:  h5bp.com/u */
.hidden {
	display: none!important;
	visibility: hidden;
}
	
/* Hide only visually, but have it available for screenreaders:  h5bp.com/v */
.visuallyhidden {
	border: 0;
	clip: rect(0000);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
	
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard:  h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}
	
/* Hide visually and from screenreaders, but maintain layout */
.invisible {
	visibility: hidden;
}
	
/* Contain floats: h5bp.com/q */
.group:before, .group:after {
	content: "";
	display: table;
}

.group:after {
	clear: both;
}

.group {
	zoom: 1;
}


/* Used to pull content to the left/right of other content */ 
.pull-left, .pull-left-med {
	margin: 2em 0 2em 0;
}

.pull-left-all {
	float: left;
	width: 50%;
	margin: 0 2em 2em 0;
}

@media screen and (min-width: 40em) {

	.pull-left {
		float: left;
		width: 50%;
		margin: 0 2em 2em 0;
	}
	
	.pull-left-med {
		float: left;
		width: 33%;
		margin: 0 2em 2em 0;
	}
	
	.pull-left-all {
	    width: 33%;
    }

}

/* IE8 and IE7 layout fixes */
.lt-ie9 .pull-left {
    float: left;
	width: 50%;
	margin: 0 2em 2em 0;
}

.lt-ie9 .pull-left-med, .lt-ie9 .pull-left-all {
    float: left;
	width: 33%;
	margin: 0 2em 2em 0;
}

.pull-right, .pull-right-med {
	margin: 2em 0 2em 0;
}

.pull-right-all {
	float: right;
	width: 50%;
	margin: 0 0 2em 2em;
}

.pull-right-icon {
    float: right;
	width: 33%;
	margin: 0 0 2em 2em;
}

@media screen and (min-width: 40em) {

	.pull-right {
		float: right;
		width: 50%;
		margin: 0 0 2em 2em;
	}
	
	.pull-right-med {
		float: right;
		width: 33%;
		margin: 0 0 2em 2em;
	}
	
	.pull-right-all {
	    width: 33%;
    }
	
	.pull-right-icon {
	    width: 12%;
    }

}

/* IE8 and IE7 layout fixes */
.lt-ie9 .pull-right {
    float: right;
	width: 50%;
	margin: 0 0 2em 2em;
}

.lt-ie9 .pull-right-med, .lt-ie9 .pull-right-all {
    float: right;
	width: 33%;
	margin: 0 0 2em 2em;
}


/* Warning message when javascript is not on */
.js-disabled {
	border: 3px solid red;
	padding: 2em;
	display: none;
}

.no-js .js-disabled {
	display: block;
}


/* =============================================================================
   The Build
   ========================================================================== */

.button, input[type=submit] {
    background: #FFD42A;
	display: inline-block;
	padding: .5em 1em;
	margin: 0 0 1em 0;
    border-radius: 6px;
    border-bottom: none;
	line-height: 1.4;
	font-size: 1em;
	text-align: center;
	color: #000000;
} 

.button:hover, input[type=submit]:hover {
	border-bottom: none;
	background: #000000;
	color: #ffffff;
} 

.button a {
	color: #000000;
} 

.button:hover a {
	color: #ffffff;
}

.button--big {
	padding: .5em 1em;
	margin: 1em 0 1em 0;
	line-height: 1.4;
	font-size: 1.25em;
}

.button--fill {
    background: #FFD42A;    
}

.button--fill:hover {
    background: #000000;    
}

aside .button, .sidebar .button {
    margin-top: 1em;
}

.page {
		
}

.contentarea, .what-we-do, .blog-list--home {
	background: #ffffff;
}

.header-inner, .what-we-do__section, .blog-list--home, .contentarea {
	padding: 0 2em;
}

.header--home {
    background: #FFD42A;
}

.header--internal {
    background: #ffffff;
}

.header-inner {
    border-top: .5em solid #FFD42A;
	position: relative;
	padding-top: .5em;
	padding-bottom: .5em;
    z-index: 10;
}

@media screen and (min-width: 60em) {

	.header-inner {
		padding-top: 1em;
        padding-bottom: 1em;
	}

}

.header-inner a { 
	color: #000000;
	
}

.rei {
    width: 2em;
	margin: 0;
	padding: 0;
}

.rei a, .rei:hover a {
	margin: 0;
	padding: 0;
    border: none;
}

.rei__abbr {
    
}

.rei__full {
	display: none;
}

@media screen and (min-width: 45em) {
    
    .rei {
        float: left;
        width: 6em;
        margin: 0;
        padding: 0;
    }
	
	.rei__abbr {
		display: none;
	}

	.rei__full {
		display: block;
	}

}

.logo-mark, .logo-mark:hover {
    display: block;
    margin: 1em auto 2em auto;
	text-align: center;
	width: 6em;
	border-bottom: none;
    z-index: 100;
    position: relative;
}

@media screen and (min-width: 60em) {

    .logo-mark, .logo-mark:hover {
	    margin-top: 1em;
    }

}

@media screen and (min-width: 70em) {

    .logo-mark, .logo-mark:hover {
        margin-top: -3em;
        z-index: 100;
    }

}

.splash {
    background: #FFD42A;
    border-bottom: 10px solid #000000;
}

.splash .button {
	background: #000000;
	color: #ffffff;
}

.splash .button:hover {
    background: #ffffff;
	color: #000000;
} 

.splash__copy {
    position: relative;
	text-align: center;
    padding: 1em 2em 0 2em;
    margin: 0 0 0 0;
    z-index: 100;
}

.splash__copy h2 {
    font-size: 2.2em;	
	margin: 0;
}

.splash__copy h3 {
	font-size: 1.15em;
	margin: 0 0 .5em 0; 
    line-height: 1.1;
}

.splash__copy p {
    margin: 0;
}

.splash img {
    display: block;
}

@media screen and (min-width: 35em) {
    
    .splash__copy {
        padding: 1em 2em 0 2em;
        margin: 0 0 0 0;
    }
    
    .splash__copy h2 {
        font-size: 4em;
    }

    .splash__copy h3 {
        font-size: 1.50em;
    }
    
    .splash img {
        margin-top: -3em;
    }
    
}

@media screen and (min-width: 50em) {

    .splash__copy p {
        width: 70%;
        margin: 0 auto;
    }
    
}

@media screen and (min-width: 60em) {

    .splash__copy p {
        width: 50%;
    }

}

.contentarea {
    padding-top: 2em;
    padding-bottom: 4em;
}

aside, .aside {
    border-top: .1em solid #eee;
    padding: 2em 0 0 0;
    margin: 2em 0 0 0;
}

@media screen and (min-width: 35em) {
    
    .content {
        float: left;
        width: 66.666666666%;
    }

    aside, .aside {
        float: right;
        width: 14.666666667%;
        border-top: none;
        border-left: .1em solid #eeeeee;
        padding: 0 0 0 2%;
        margin: 0 0 0 0;
    }

}

.what-we-do h3 {
    font-size: 1.5em;
}

.what-we-do__section {
    padding-top: 3em;
    padding-bottom: 3em;
    color: #ffffff;
}

.what-we-do__section--wd {
    background: #285CA8;
    background-image: url(graphics/v9_5/website-design--half.jpg);
    background-position: top right;
    background-repeat: no-repeat;
}

.what-we-do__section--im {
    background: #4674B7;
    background-image: url(graphics/v9_5/inbound-marketing--half.jpg);
    background-position: top left;
    background-repeat: no-repeat;
}

@media screen and (min-width: 35em) {
    
    .what-we-do__section--wd {
        background-image: url(graphics/v9_5/website-design.jpg);
    }

    .what-we-do__section--im {
        background-image: url(graphics/v9_5/inbound-marketing.jpg);
    }
    
}

@media screen and (min-width: 120em) {
    
    .what-we-do__section--wd {
        background-size: cover;
    }

    .what-we-do__section--im {
        background-size: cover;
    }
    
}

@media screen and (min-width: 140em) {
    
    .what-we-do__section--wd {
        background-image: url(graphics/v9_5/website-design--l.jpg);
    }

    .what-we-do__section--im {
        background-image: url(graphics/v9_5/inbound-marketing--l.jpg);
    }
    
}

.site-scan {
    background: #6C93CC;
    color: #ffffff;
    padding: 2em 2em 3em 2em;
    text-align: center;
}

.site-scan h3 {
    font-size: 1.5em;
    line-height: 1.2;
}

#seogroup .seo-scorform .greenabar {
    background: none !important;
}

#seogroup .form a.btn-competitor-url {
    color: #FFD42A !important;
    font-size: 1.25em !important;
}

@media screen and (min-width: 50em) {

    .site-scan {
        padding padding-bottom: 3em;
    }

    #seogroup .seo-scorform .greenabar {
        background: #f0f0f0 !important;
    }
}

@media screen and (min-width: 50em) {
    
    .what-we-do__section {
        padding-top: 8em;
        padding-bottom: 8em;
    }
    
    .what-we-do {
        display: table;
        text-align: center;
    }
    
    .what-we-do__section {
        display: table-cell;
        width: 50%;
    }
    
    .what-we-do__content {
        padding-left: 1em;
        padding-right: 1em;
    }

}

@media screen and (min-width: 70em) {

    .what-we-do__content {
        padding-left: 3em;
        padding-right: 3em;
    }

}

.blog-list--home {
    padding-top: 3em;
    padding-bottom: 2em;
}

.blog-list--home .blog-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.blog-list--home img {
    display: block;
    margin: 1em 0 1em 0;
}

.blog-list--home .blog__title {
    font-size: 1.5em; 
    line-height: 1.4;
}

@media screen and (min-width: 35em) {

    .blog-list--home {
        padding-top: 4em;
        padding-bottom: 4em;
        text-align: center;
        background-image: url(graphics/v9_5/logomark-bg--m.png);
        background-position: bottom right;
        background-repeat: no-repeat;
    }
    
    .blog-list--home img {
        margin: 1em auto 1em auto;
    }
    
    .blog-list--home .blog__body {
        margin: 0 auto;
        width: 62.5%;
    }

}

@media screen and (min-width: 120em) {

    .blog-list--home {
        background-image: url(graphics/v9_5/logomark-bg--l.png);
    }

}

.footer-upper, .footer-lower {
    font-size: .85em;   
}

.footer-upper {
    background: #FFD42A;
	padding: 4em 2.5em 0 2.5em;	
}

.footer-upper a {
	border-bottom: .1em solid #000000;
}

.footer-upper a:hover {
	color: #ffffff;
	border-bottom: .1em solid #ffffff;
}

.footer-upper .map a, .footer-upper .map a:hover {
	border-bottom: none;
}

.footer-upper__section {
    padding-bottom: 4em;
}

.footer-upper__section--alt {
    padding-bottom: 2em;
}

.footer-lower {
    color: #ffffff;
    padding: 2.5em;
}

.footer-lower a {
    color: #ffffff;
	border-bottom: .1em solid #ffffff;
}

.footer-lower a:hover {
	color: #ffd42a;
	border-bottom: .1em solid #ffd42a;
}

.footer-lower__tagline {
    color: #ffd42a;
    text-transform: uppercase;
}

@media screen and (min-width: 35em) {

    .footer-lower {
        text-align: center;
    }
    
}

@media screen and (min-width: 52em) {

    .footer-upper__section {
        width: 50%;
        float: left;
    }

    .footer-upper__section--alt {
        width: 37.5%;
        float: right;
    }

}

.list-social {
    list-style: none;
    margin: 3em 0 1.5em 0;
}

.list-social li {
    margin: 0 0 1em 0;
}

.list-social li img {
    width: 1.5em;
    height: 1.5em;
    margin: 0 .5em 0 0;
    border: none;
}


/* Navigation */

a#pull {
	display: block;
	cursor: pointer;
    font-size: 140%;
	border-bottom: .75em double #222222; /*  12px  */
	border-top: .25em solid #222222; /* 4px */
	height: .25em; /* 4px */
	width: 1.5em; /* 24px */
    position: absolute;
    top: 1em;
    right: 2em;
}

.main-nav a#pull:hover {
	
}

.no-js .main-nav a#pull {
    display: none;   
}

.main-nav ul {
	display: none;
	margin: 1em 0 0 0;
    border-bottom: 1px solid #222222;
}

.no-js .main-nav ul {
    display: block;	
}

.main-nav li {
	margin: 0 0 0 0;
	padding: 1em 0;
	border-top: 1px solid #222222;
}

.main-nav ul li a {
	display: block;
	border-bottom: none;
}

.main-nav ul li a:hover {
	border-bottom: none;
}

.main-nav ul li ul {
	display: none;
}

.header--home .main-nav ul li a:hover {
	color: #ffffff;
}

@media screen and (min-width: 46em) {

	a#pull {
		display: none;
	}

	.main-nav ul {
		display: block;
		margin: 1.3em 0 0 0;
		float: right;
        border-bottom: none;
	}

	.main-nav ul li {
		display: inline;
		text-align: left;
		float: left;
		margin: 0 0 0 2em;
		padding: 0 0 0 0;
		border-top: none;
	}
	
	.main-nav ul li a:hover {
		color: #FFD42A;
	}
	
}


/* Solutions */

.solutions {
    margin: 0 0 4em 0;
}

img.solutions__icon {
    float: left;
    width: 16.666666666%;
    margin: 0 0 0 0;
    border: none;
}

.solutions__content {
    float: right;
    width: 74.999999997%;
}

@media (min-width: 50em) {

    img.solutions__icon {
        float: left;
        width: 8.333333333%;
        margin: 0 0 0 8.333333333%;
    }

    .solutions__content {
        float: right;
        width: 74.999999997%;
        /* width: 66.666666664%; */
        /* margin: 0 8.333333333% 0 0; */
    }

}



/* Portfolio */

.portfolio-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.portfolio-list__item {
    margin: 0 0 3em 0;
    padding: 0 0 0 0;
}

@media screen and (min-width: 25em) {
    
    .portfolio-list__item {
        float: left;
        width: 45.5%;
        margin: 0 4.5% 0 0;
        padding: 0 0 0 0;
        min-height: 20em;
    } 
    
    .portfolio-list__item:nth-child(2n+2) {
        margin: 0 0 0 4.5%;
    } 
    
}

@media screen and (min-width: 35em) {
    
    .portfolio-list__item,
    .portfolio-list__item:nth-child(2n+2) {
        float: left;
        width: 30.333333333%;
        margin: 0 4.5% 0 0;
        padding: 0 0 0 0;
        min-height: 18em;
    } 
    
    .portfolio-list__item:nth-child(3n+3) {
        margin: 0 0 0 0;
    } 
    
}

@media screen and (min-width: 45em) {
    
    .portfolio-list__item {
        min-height: 20em;
    } 
    
}

@media screen and (min-width: 55em) {
    
    .portfolio-list__item {
        min-height: 22em;
    } 
    
}

@media screen and (min-width: 70em) {
    
    .portfolio-list__item {
        min-height: 26em;
    } 
    
}

.portfolio-list__item a {
    display: block;
    margin: 0 0 .5em 0;
    padding: 0;
    border-bottom: none;
}

.portfolio-list__item span, .portfolio-list__item em {
    display: block;
}

.portfolio-list__item span {
    font-size: 1.15em;
}

.portfolio-list__item em {
    font-size: .85em;
}

.portfolio-detail {

}

.portfolio-detail__intro img {
    width: 100%;
    margin: 0 0 1em 0;
}

.portfolio-detail__intro__img {
    margin: 0 0 1em 0;
}

.portfolio-detail__meta span {
    display: block;
}

@media screen and (min-width: 35em) {
    
    .portfolio-detail__intro {
        text-align: center;
        margin: 0 0 2em 0;
    }

}

@media screen and (min-width: 50em) {
    
    .portfolio-detail__intro img {
        margin: 0 0 2em 0;
    }
    
    .portfolio-detail__intro__img {
        margin: 0 0 2em 0;
    }

    .portfolio-detail__content {
        width: 60%;
        float: left;
    }

    .portfolio-detail__meta {
        width: 30%;
        float: right;
    }

}

@media screen and (min-width: 70em) {
    
    .portfolio-detail__contentarea {
        width: 80%; 
        margin: 0 auto;
    }

}

.portfolio-featured {
    /* background: #FFFCF7; */  
    background: #696969;
    color: #ffffff;
}

.portfolio-featured-inner {
    padding-top: 2em;
    padding-bottom: 2em;
}

.portfolio-featured__item {
    margin: 0 0 0 0;   
}

.portfolio-featured__img, .portfolio-featured__img:hover {
    border: none;
}

@media screen and (min-width: 60em) {
    
    .portfolio-featured-inner {
        padding-top: 4em;
        padding-bottom: 5em;
    }

    .portfolio-featured__img {
        float: left;
        width: 40%;
    }
    
    .portfolio-featured__content {
        float: right;
        width: 57%;
    }
    
}

.portfolio-featured-alt {
    background-color: #696969;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.portfolio-featured-alt__item {
    background-color: rgba(0, 0, 0, .6);
    margin: 0 0 0 0; 
    color: #ffffff;
    text-align: center;
    padding: 4em 2em 4em 2em;
}

.portfolio-featured-alt__item h4 {
    font-size: 1.5em;   
}

.portfolio-featured-alt__item .button:hover {
    border-color: #ffffff
}

@media screen and (min-width: 35em) {
    
    .portfolio-featured-alt__item {
        padding: 4em 10% 6em 10%;
    }
    
}

@media screen and (min-width: 50em) {
    
    .portfolio-featured-alt__item {
        font-size: 120%;
        padding: 4em 20% 6em 20%;
    }
    
}


@media screen and (min-width: 60em) {
    
    .portfolio-featured-alt__item {
        padding: 4em 30% 6em 30%;
    }
    
}



.portfolio-clientlist {
    -webkit-column-count: 2;
    -webkit-column-gap: 40px; 
    -webkit-column-rule: 0px dotted black;
    -moz-column-count: 2;
    -moz-column-gap: 40px;  
    -moz-column-rule: 0px dotted black;
    column-count: 2;
    column-gap: 40px; 
    column-rule: 0px dotted black;
    margin: 0 0 0 0;
}

.portfolio-clientlist li {
    margin: 0 0 1em 0;
}

/*
.portfolio-clientlist li {
    float: left;
    width: 45%;
    margin: 0 5% 1em 0;
    padding: 0;
}
*/

.portfolio-clientlist_link {
    text-align: center;
    padding: 2em 0 0 0;
    border-top: 1px solid #eeeeee;
}



/* Team */

.team-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.team-list__member {
    margin: 0 0 3em 0;
    padding: 0;  
}

.team-list__member a {
    margin: 0;
    padding: 0;
    border: none;
}

.team-list__member-img {
    display: block;
    margin: 0 0 .5em 0;
}

.team-list__member-img img {
    border-radius: 50%; 
    width: 80%;
}

.team-list__member-name {
    display: block;
}

.team-list__member-role {
    display: block;
    font-size: .85em;
}

@media screen and (min-width: 20em) {
    
    .team-list__member  {
        float: left;
        width: 42%;
        margin: 0 8% 0 0;
        padding: 0 0 0 0;
        min-height: 18em;
    } 
    
    .team-list__member:nth-child(2n+2) {
        margin: 0 0 0 0;
    } 
    
    .team-list__member-img img {
        width: 100%;
    }
    
}

@media screen and (min-width: 45em) {
    
    .team-list__member  {
        float: left;
        width: 20.666666667%;
        margin: 0 4% 0 0;
        padding: 0 0 0 0;
        min-height: 18em;
    } 
    
    .team-list__member:nth-child(2n+2) {
        margin: 0 4% 0 0;
    } 
    
}

.team-member__img img {
    margin: 0 0 1em 0;   
    border-radius: 50%;   
}

.team-member__blurb {
    margin: 1em 0 0 0;    
}

.team-member__social a {
    display: inline-block;
    font-size: .85em;
    margin: 0 1em 0 0;
}

@media screen and (min-width: 50em) {
    
    .team-member__img {
        float: left;
        width: 33.333333333%;
        margin: 0 0 1em 0;   
    }

    .team-member__content {
        float: right;
        width: 60%;
    }
    
}

/* FAQs */

.faq-categories {
    margin: 0 0 2em 0;
}

.faq-categories ul {
    margin: .5em 0 0 0;
}

.faq-categories ul li {
    float: left;
    margin: 0 .5em .5em 0;
    padding: 0 .5em 0 0;
    border-right: 1px solid #eeeeee;
}

.faq-categories ul li:nth-last-child {
    border-right: none;
}

.faq-questions {
    margin-bottom: 4em;
}

.faq-answers {
    list-style: none;
    margin: 2em 0 0 0;
    padding: 0;
}

.faq-answers__item {
    margin: 0 0 2em 0;   
}

.faq-questions__item {
    margin: 0 0 1em 0;
}

.faq-questions__item a {
    display: inline-block;
}

.faq-questions__item a p {
    margin: 0 0 0 0;
}

.faq-answers__title {
    font-size: 1.25em;
    line-height: 1.2;
    margin: 0 0 1em 0;
}

.faq-answers__title p {
    margin: 0 0 0 0;
}



/* Contact Us */

.contactus-map {
    display: none; 
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.contactus-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
    
.contactus-content__info {
    margin: 0 0 2em 0;   
}

@media screen and (min-width: 50em) {

    .contactus-map {
        display: block;
        float: right;
        width: 33.333333333%;
    }

    .contactus-content {
        float: left;
        width: 60%;
        margin: 0 0 2em 0;   
    }

}

/* Request A Quote */

.raq-formcol__cell-checkboxlist {
    list-style: none;
    margin: 1em 0 0 0;
    padding: 0 0 0 0;
}

.raq-formcol__cell-checkboxlist li {
    margin: 2em 0 0 0;
    padding: 0;
}

@media screen and (min-width: 50em) {
    
    .raq-formcol {
        float: left;
        width: 48%;
        margin: 0 2% 0 0;
    }
    
}


/* Blog */

.blog__info {
    font-size: .85em;
    margin: 0 0 1em 0;
}

.blog__image {
    float: right;
    width: 300px;
    margin: 10px;
    border: 0px;
}
.blog__body {
    
}

.blog-list .blog__tags {
    
}

.blog .blog__tags {
    margin: 0 0 1em 0;
}

.blog__comments {
    
}

.blog-add-comment {
    margin: 0 0 .5em 0;   
}

.blog-list li {
    margin-bottom: 2em;
}

.blog-list h2 {
    margin: 0 0 .25em 0;
}

.blog-archive__year {
    margin: 1em 0 0 0;
    padding: 0;
}

.blog-archive__month {
    padding: 0 0 0 1em;   
}

.blog__share {
    border-top: 1px solid #ECEDED;
    border-bottom: 1px solid #ECEDED;
    padding: .5em 0 0 0;
	margin: 1em 0 2em 0;
}


/* Sharing */

.sharing {
    list-style: none;
	margin: 0;
	padding: 0;
}

.sharing li {
	float: left;
	border: none;
	border-left: 1px solid #cccccc;
	padding: 0 .5em;
	margin: 0 0 1em 0;
    font-size: .85em;
}

.sharing li.sharingfirst {
	border-left: none;
	padding: 0 .5em 0 0;
}


/* Jobs */

.job__info {
    display: block;
    font-size: .85em;
}

.job__details {
    margin: 2em 0 2em 0;
}


/* Pagination */

.pagination {
    clear: both;
    display: block;
    margin: 0 0 2em 0;
}

.pagination a, .pagination a:link, .pagination a:visited {
	text-decoration: none;
}

.pagination .prevnextCurrent, .pagination .prevnextWindow, .pagination .prevnextWindowArrow {
	margin: 0;
	padding: 5px;
	margin-right: 2px;
	display: inline;
	display: inline-block;
}

.pagination .prevnextCurrent {
	background: #ccc;
	color: #000;
	font-weight: bold;
	padding: 4px 6px;
}

.pagination a.prevnextLink {
	padding: 4px 5px;
	margin-right: 2px;
	display: block;
}


/* Helper Classes */
.text-fineprint {
    font-size: .75em;
}




/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}