/*!
Theme Name: Braintrust 4.0
Theme URI: https://braintrustagency.com
Author: Braintrust
Author URI: https://braintrustagency.com
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: btfourdotoh
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Braintrust 4.0 is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

html,
body {
	overflow-x: clip;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #181818;
	font-family: aktiv-grotesk, sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	font-weight: 300;
	line-height: 1.2;
}

h1 {
	font-size: 3.75rem;
}

h2 {
	font-size: 3.125rem;
}

h2 + .short-subhead {
	margin-top: -1.5em;
	margin-bottom: 2.5em;
}

h3 {
	font-size: 2.5rem;
	font-weight: 700;
}

h4,
h3.short-subhead,
.pr-hit-title {
	font-family: aktiv-grotesk-extended, sans-serif;
	font-size: 1.25rem;
	font-weight: 800;
	text-transform: uppercase;
}

.pr-hit-title {
	margin-top: 0;
}

h5 {
	font-family: aktiv-grotesk-condensed, sans-serif;
	font-size: 1.5rem;
	font-weight: 800;
}

h6 {
	font-size: 1.25rem;
	font-weight: 400;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	border-left: 10px solid #E52B50;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.2;
	margin: 1em 1.5em;
	padding-left: 30px;
}

blockquote p {
	margin-top: 1rem;
	margin-bottom: 0;
}

blockquote strong {
	font-size: 1.5rem;
	font-weight: 400;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	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;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

@media screen and (max-width: 1024px) {
	blockquote {
		font-size: 2rem;
	}
}

@media screen and (max-width: 800px) {
	blockquote {
		font-size: 1.5rem;
	}
	
	h1 {
		font-size: 3rem;
	}
	
	h2 {
		font-size: 2.5rem;
	}
		
	h3 {
		font-size: 2rem;
	}	
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 0em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

video {
	height: auto;
	max-width: 100%;
}

/* Links
--------------------------------------------- */
a,
a:visited {
	border-bottom: 1px solid #181818;
	color: #181818;
	text-decoration: none;
}

a:hover,
a:focus,
a:active {
	border-bottom: 1px solid #c32148;
	color: #181818;
	text-decoration: none;
}

a:focus {
	outline: thin dotted #c32148;
}

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

.cta {
	border-bottom: 0 !important;
	color: #181818;
	padding-right: 60px;
	position: relative;
	text-decoration: none;
}

.cta:before {
	border-top: 2px solid #181818;
	border-right: 2px solid #181818;
	content: "";
	display: inline-block;
	height: 10px;
	width: 10px;
	position: absolute;
		right: 0;
		bottom: -1px;
	transform: rotate(45deg);
}

.cta:hover:before {
	animation-name: ctabeforeanim;
	animation-duration: 0.5s;
	border-top: 2px solid #C32148;
	border-right: 2px solid #C32148;
	bottom: -11px;
}

.cta:after {
	background: #181818;
	content: "";
	height: 2px;
	position: absolute;
		right: -1px;
		bottom: 3px;
	width: 30px;
}

.cta:hover:after {
	animation-name: ctaafteranim;
	animation-duration: 0.5s;
	background-color: #C32148;
	bottom: -7px;
	right: auto;
	left: 5px;
	width: calc(100% - 5px);
}

.cta-white,
.cta-white:active,
.cta-white:focus,
.cta-white:hover,
.cta-white:visited {
	color: #ffffff;
}

.cta-white:before,
.cta-white:hover:before {
	border-top-color: #ffffff;
	border-right-color: #ffffff;
}

.cta-white:after,
.cta-white:hover:after {
	background: #ffffff;
}


/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 2px solid #A1A1A1;
	border-radius: 0;
	background: #ffffff;
	color: #808080;
	font-family: aktiv-grotesk-extended, sans-serif;
	font-size: 0.875rem;
	font-weight: 800;
	line-height: 1;
	padding: 0.6em 1em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #E52B50;
	color: #181818;
	outline: 2px solid #E52B50;
}

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: #E52B50;
	outline: 2px solid #E52B50;
}

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: #181818;
	border: 2px solid #a1a1a1;
	border-radius: 0;
	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 {
	border: 1px solid #E52B50;
	color: #181818;
	outline: 2px solid #E52B50;
}

select {
	background: #ffffff;
	border: 1px solid #a1a1a1;
	border-radius: 0;
	padding: 3px;
}

textarea {
	width: 100%;
}

.gform_legacy_markup_wrapper .top_label .gfield_label, 
.gform_legacy_markup_wrapper legend.gfield_label {
	color: #808080;
	font-family: aktiv-grotesk-extended, sans-serif;
	font-size: 0.875rem;
	font-weight: 800;
}

.gform_legacy_markup_wrapper .field_sublabel_below .ginput_complex.ginput_container label, .gform_legacy_markup_wrapper .field_sublabel_below div[class*="gfield_time_"].ginput_container label {
	color: #808080;	
}

input[type="checkbox"],
input[type="radio"] {
	visibility: hidden;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
	cursor: pointer;
	display: inline-block;
	line-height: 1;
	vertical-align: top;
}

input[type="checkbox"] + label:before {
	border: 2px solid #a1a1a1;
	border-radius: 0;
	content: "\00a0";
	display: inline-block;
	font: 16px/1em sans-serif;
	height: 16px;
	margin: 2px .25em 0 -1em;
	padding: 0;
	vertical-align: top;
	width: 16px;
}

input[type="radio"] + label:before {
	border: 1px solid #a1a1a1;
	border-radius: 50%;
	content: "\00a0";
	display: inline-block;
	font: 16px/1em sans-serif;
	height: 16px;
	margin: 2px .25em 0 -1em;
	padding: 0;
	vertical-align: top;
	width: 16px;
}

input[type="checkbox"]:checked + label:before,
input[type="radio"]:checked + label:before {
	background: #fff;
	color: #E52B50;
	content: "\2713";
	text-align: center;
}

input[type="checkbox"]:checked + label:after,
input[type="radio"]:checked + label:after {
	font-weight: bold;
}

input[type="checkbox"]:focus + label::before,
input[type="radio"]:focus + label::before {
	outline: 2px solid #E52B50;
}


/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.site-header {
	padding: 30px 0;
	position: fixed;
		top: 0;
		right: 0;
		left: 0;
		z-index: 100;	
	transition: 0.5s;
}

.site-main {
	margin-top: 100px;
}

.site-header a,
.site-header a:active,
.site-header a:focus,
.site-header a:hover,
.site-header a:visited {
	border-bottom: 0;
}

.site-header.scrolled {
	background: #181818;
	padding: 10px 0;
	transition: 0.5s;
}

.site-header.scrolled a,
.site-header.scrolled a:visited {
	color: #ffffff;
}

.site-header.scrolled a:active,
.site-header.scrolled a:focus,
.site-header.scrolled a:hover {
	color: #ffffff;
	text-decoration: underline;
}

.flex-header {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.site-logo img {
	vertical-align: middle;
	width: 114px;
}

.site-icon {
	display: inline-block;
	opacity: 0;
	text-align: center;
	width: 114px;
}

.site-icon img {
	filter: brightness(0) invert(1);
	height: 32px;
	vertical-align: middle;
}

.site-branding.scrolled .site-icon {
	opacity: 1;
	transition: 0.5s;
	-webkit-transition: 0.5s;
}

.site-branding.scrolled .site-icon img {
	height: 50px;
}

.site-branding.scrolled .site-logo {
	display: none;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation li {
	margin-right: 50px;
	position: relative;
}

.main-navigation li:last-child {
	margin-right: 0;
}

.main-navigation a,
.main-navigation a:visited {
	color: #181818;
	display: block;
	font-weight: 700;
	text-decoration: none;
	transition: 0.5s;
}

.main-navigation a:active,
.main-navigation a:focus,
.main-navigation a:hover {
	color: #c32148;
	transition: 0.5s;
}

.site-header.scrolled .main-navigation a,
.site-header.scrolled .main-navigation a:visited {
	color: #ffffff;
}

.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

.main-navigation .current_page_item a,
.main-navigation .current-page-ancestor a,
.single-open_position .menu-item-4574 a,
.single-team_member .menu-item-4431 a,
.single-project .menu-item-2282 a {
	text-decoration: underline;
}

@media screen and (min-width: 801px) {
	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

@media screen and (max-width: 900px) {
	.main-navigation a,
	.main-navigation a:active,
	.main-navigation a:focus,
	.main-navigation a:hover,
	.main-navigation a:visited {
		transition: none;
	}
}

@media screen and (max-width: 800px) {
	.site-header {
		padding: 25px 10px;
	}
	
	.toggled .menu-main-menu-container {
		background: #181818;
		padding: 25px;
		position: absolute;
			top: 80px;
			right: 0;
			left: 0;
		text-align: center;
	}
	
	.main-navigation li {
		margin-right: 0;
	}
	
	.main-navigation a,
	.main-navigation a:active,
	.main-navigation a:focus,
	.main-navigation a:hover,
	.main-navigation a:visited {
		color: #ffffff;
		font-size: 1.5rem;
		font-weight: 300;
		padding: 5px;
	}
	
	.site-header.scrolled .menu-main-menu-container {
		top: 70px;
	}
	
	.site-icon {
		text-align: left;
	}
	
	.site-icon img {
		padding-left: 15px;
	}
}

/* Hamburger icon */
.hamburger {
	padding: 5px 0 0 0;
	cursor: pointer;
	transition-property: opacity, filter;
	transition-duration: 0.15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible;
}

.hamburger:hover {
	opacity: 0.7;
}

.hamburger.is-active:hover {
	opacity: 0.7;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
	background-color: #000;
}

.site-header.scrolled .hamburger-inner, 
.site-header.scrolled .hamburger-inner::before, 
.site-header.scrolled .hamburger-inner::after,
.site-header.scrolled .hamburger.is-active .hamburger-inner,
.site-header.scrolled .hamburger.is-active .hamburger-inner::before,
.site-header.scrolled .hamburger.is-active .hamburger-inner::after {
	background-color: #fff;
}

.hamburger-box {
	width: 40px;
	height: 24px;
	display: inline-block;
	position: relative;
}

.hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -2px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 40px;
	height: 4px;
	background-color: #000;
	border-radius: 4px;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.15s;
	transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
	content: "";
	display: block;
}

.hamburger-inner::before {
	top: -10px;
}

.hamburger-inner::after {
	bottom: -10px;
}

.hamburger--squeeze .hamburger-inner {
	transition-duration: 0.075s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze .hamburger-inner::before {
	transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}

.hamburger--squeeze .hamburger-inner::after {
	transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
	transform: rotate(45deg);
	transition-delay: 0.12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--squeeze.is-active .hamburger-inner::before {
	top: 0;
	opacity: 0;
	transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}

.hamburger--squeeze.is-active .hamburger-inner::after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* Posts and pages
--------------------------------------------- */
.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

.sticky {
	display: block;
}

.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;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.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;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.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: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/*--------------------------------------------------------------
# Helpers
--------------------------------------------------------------*/
.inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	padding-left: 15px;
	padding-right: 15px;
	width: 1200px;
}

.inner-skinny {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	padding-left: 15px;
	padding-right: 15px;
	width: 900px;
}

.inner-wide {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	padding-left: 15px;
	padding-right: 15px;
	width: 1500px;
}

.read-friendly-container {
	padding-left: 100px;
	width: 900px;
}

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

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

.text-white {
	color: #ffffff;
}

.text-white a,
.text-white a:visited {
	color: #ffffff;
}

.text-white a:active,
.text-white a:focus,
.text-white a:hover {
	color: #efefef;
}

.text-pink,
.pink-text {
	color: #c32148;
}

.clickable-div {
	cursor: pointer;
}

.interior-container {
	padding-top: 80px;
	padding-bottom: 80px;
}

.service-container {
	padding-top: 80px;	
}

.flex-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.flex-25 {
	flex-basis: calc(25% - 20px);
}

.flex-33 {
	flex-basis: calc(33.3% - 20px);
}

.flex-40 {
	flex-basis: calc(40% - 20px);
}

.flex-50 {
	flex-basis: calc(50% - 20px);
}

.flex-60 {
	flex-basis: calc(60% - 20px);
}

.flex-67 {
	flex-basis: calc(66.7% - 20px);
}

.flex-75 {
	flex-basis: calc(75% - 20px);
}

@media screen and (max-width: 1024px) {
	.flex-25 {
		flex-basis: calc(33.3% - 20px);
	}
	
	.flex-75 {
		flex-basis: calc(66.7% - 20px)
	}
}

@media screen and (max-width: 800px) {
	.flex-25,
	.flex-33,
	.flex-40,
	.flex-50,
	.flex-60,
	.flex-67,
	.flex-75 {
		flex-basis: 100%;
	}
}

/*--------------------------------------------------------------
# Back to Top Link
--------------------------------------------------------------*/
.back-top-container {
	background: rgba(23, 23, 23, 0.75);
	border: 1px solid #ffffff;
	display: block;
	height: 50px;
	opacity: 0;
	position: fixed;
		bottom: 50px;
		right: 50px;
		z-index: 50;
	transition: opacity 0.5s;
	width: 50px;
}

.back-top-icon {
	border-top: 5px solid #fff;
	border-right: 5px solid #fff;
	display: block;
	height: 20px;
	margin: 20px auto;
	transform: rotate(-45deg);
	width: 20px;
}

.scrolled.back-top-container {
	opacity: 1;
	transition: opacity 0.5s;
}

.back-top-container:hover {
	background: rgba(23, 23, 23, 1);
	border: 1px solid #ffffff;
}

@media screen and (max-width: 640px) {
	.back-top-container {
		bottom: 25px;
		right: 25px;
	}
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-footer {
	background: #181818;
	color: #A1A1A1;
	padding: 50px 0 150px 0;
	position: relative;
}

.site-footer a,
.site-footer a:visited {
	color: #EBEDF1;
}

.site-footer h2 {
	color: #EBEDF1;
}

.site-footer a:active,
.site-footer a:focus,
.site-footer a:hover {
	color: #ffffff;
}

.footer-flex {
	align-items: center;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}

.footer-col-1 {
	flex-basis: 50%;
	padding-right: 25px;
}

.footer-col-2 {
	flex-basis: 50%;
	padding-left: 25px;
	text-align: right;
}

.footer-col-1 img {
	filter: brightness(0) invert(1);
}

.footer-col-1 a,
.footer-col-1 a:visited {
	color: #a1a1a1;	
}

.footer-col-1 a:active,
.footer-col-1 a:focus,
.footer-col-1 a:hover {
	color: #ffffff;	
}

.copyright {
	display: inline-block;
	vertical-align: middle;
}

.copyright p {
	font-size: 0.875rem;
	margin-top: 0.5em;
	width: auto;
}

.social-icons {
	display: inline-block;
	list-style: none;
	margin: -10px 0 0 20px;
	padding: 0;
	vertical-align: middle;
}

.social-icons li {
	display: inline-block;
	margin-right: 20px;
}

.social-icons li:last-child {
	margin-right: 0;
}

.social-icons i {
	font-size: 1.5rem;
}

.social-icons a:active,
.social-icons a:focus,
.social-icons a:hover {
	color: #ffffff;	
	border-bottom: 0;
}

.footer-col-2 .footer-col-2-content {
	display: inline-block;
	margin-right: -4.5px;
	padding-left: 20px;
	text-align: left;
	vertical-align: middle;	
	width: calc(100% - 75px);
}

.footer-col-2 img {
	display: inline-block;
	margin-right: -4.5px;
	vertical-align: middle;
	width: 75px;
}

.footer-parallax {
	background: transparent url('assets/bolt-pattern-web.png') repeat center center;
	height: 150px;
	opacity: 0.25;
	overflow-x: hidden;
	position: absolute;
		bottom: 0;
		z-index: 1;
	width: 100%;
}

@media screen and (max-width: 900px) {
	.site-footer {
		padding-top: 25px;
	}
	
	.footer-flex {
		flex-wrap: wrap;
	}
	
	.footer-col-1 {
		flex-basis: 100%;
		padding-right: 0;
	}
	
	.footer-col-2 {
		flex-basis: 100%;
		margin-top: 25px;
		padding-left: 0;
		text-align: left;
	}
	
	.copyright {
		display: block;		
	}
	
	.social-icons {
		display: block;
		margin: 20px 0 0 0;
	}
}

/* CTA arrow animations
--------------------------------------------- */
@keyframes ctabeforeanim {
	0%   {
		opacity: 0;
		bottom: -1px;
	}
	100% {
		opacity: 1;
		bottom: -11px;
	}
}

@keyframes ctaafteranim {
	0%   {
		opacity: 0;
		left: -50px;
		width: 0;
	}
	100% {
		opacity: 1;
		left: 0;
		width: 100%;
	}
}

/* Bolts on hover
--------------------------------------------- */
.bolt-left,
.bolt-right {
	cursor: pointer;
	position: relative;
	z-index: 0;
}

.bolt-left:after,
.bolt-right:after {
	background: transparent url('assets/bolt-on-hover.png') no-repeat center center;
	background-size: contain;
	content: "";
	height: 120px;
	opacity: 0;
	position: absolute;
		top: -20px;
		z-index: -1;
	transition: 0.5s;
	width: 60px;
}

.bolt-left:after {
	left: -500px;	
}

.bolt-right:after {
	right: -500px;
}

.bolt-left:hover:after,
.bolt-right:hover:after {
	opacity: 1;
	transition:  0.5s;
}

.bolt-left:hover:after {
	left: 0;
}

.bolt-right:hover:after {
	right: 0;
}

.section-title {
	font-size: 3.75rem;
	max-width: 100%;
	width: 600px;
}

.category ~ .section-title {
	margin-top: 0;
}

.category a,
.category a:active,
.category a:focus,
.category a:hover,
.category a:visited,
.section-title a,
.section-title a:active,
.section-title a:focus,
.section-title a:hover,
.section-title a:visited {
	border-bottom: 0;
	text-decoration: none;
}

@media screen and (max-width: 1024px) {
	.section-title,
	.entry-title {
		font-size: 2.5rem;
	}
}

/*--------------------------------------------------------------
## Video Embed Shortcode Stuff
--------------------------------------------------------------*/
.ytembed, 
.vimeo-embed {
	position: relative;
}

.ytembed a, 
.vimeo-embed a, 
.ytembed a:visited, 
.vimeo-embed a:visited {
	border-bottom: 0;
	box-shadow: none;
	display: block;
}

.ytembed a:before, 
.vimeo-embed a:before, 
.ytembed a:visited:before,
.vimeo-embed a:visited:before {
	color: #fff;
	content: "\f144";
	font-family: "Font Awesome 5 Free";
	font-size: 65px;
	opacity: 0.75;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	z-index: 1;
	text-align: center;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

.ytembed a:hover:before, 
.vimeo-embed a:hover:before, 
.ytembed a:active:before, 
.vimeo-embed a:active:before, 
.ytembed a:focus:before,
.vimeo-embed a:focus:before {
	opacity: 1;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

/*--------------------------------------------------------------
# CTA Careers
--------------------------------------------------------------*/
.superfooter-careers {
	background: #181818 url('/wp-content/themes/btfourdotoh/assets/join-team.jpg') no-repeat center center;
	background-size: cover;
	color: #ffffff;
	padding-top: 75px;
	padding-bottom: 75px;
}

.superfooter-careers h2 {
	font-size: 3.75rem;
	margin-bottom: 0;
}

.superfooter-careers p {
	font-size: 1.25rem;
}

@media screen and (max-width: 1024px) {
	.superfooter-careers h2 {
		font-size: 2.5rem;
	}
}

/*--------------------------------------------------------------
# Home page
--------------------------------------------------------------*/

/* Home page hero
--------------------------------------------- */
.home-hero-container {
	margin-left: calc(50vw - 600px);
	padding: 50px 0 200px 15px;
	position: relative;
}

.new-hero-container {
	margin-left: calc(50vw - 600px);
	height: 650px;
	overflow: hidden;
	padding-left: 15px;
	position: relative;
}

.new-hero {
	background-size: cover;
	margin-top: 50px;
	position: relative;
/* 		z-index: 6; */
	height: 450px;
}

.home-hero-container:before,
.new-hero-container:before {
	background: #C32148;
	content: "";
	height: 0;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
	transition: 1.5s;
}

.home-hero-container:before {
	width: 330px;	
}

.new-hero-container:before {
	width: 150px;
}

.home-hero-container.visible:before,
.new-hero-container.visible:before {
	height: 100%;
	transition: 1.5s;
}

.home-hero-video {
	height: 600px;
	position: relative;
}

.home-hero-video video {
	filter: grayscale(1);
	height: 100%;
	object-fit: cover;
	position: relative;
		z-index: 1;
	vertical-align: middle;
	width: 100%;
}

.home-hero-video:after {
	background: rgba(23, 23, 23, 0.8);
	content: "";
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 3;	
}

.home-hero-content,
.new-hero-content {
	color: #ffffff;
	max-width: 100%;
	padding: 0 0 100px 100px;
	position: absolute;
		bottom: 0;
		left: 0;
		z-index: 11;
	width: 675px;
}

.home-hero-content h1,
.new-hero-content h1,
p.new-hero-title {
	font-size: 3.75rem;
	font-weight: 300;
	line-height: 1.2;
	margin: 0 0 1.5rem 0;
}

p.new-hero-title.hero-title-small {
	font-size: 2.5rem;
}

.single-project .new-hero-content {
	width: 700px;
}

.single-project .new-hero-content h1 {
	font-size: 2.75rem;
}

.home-hero-content p {
	font-size: 1.25rem;
	margin-bottom: 0;
}

.home-video-link {
	border-bottom: 0 !important;
	cursor: url(assets/cursor.png) 18 18, pointer;
    cursor: url(assets/cursor.svg) 18 18, pointer;
/*     cursor: -webkit-image-set(url(assets/cursor.png) 1x, url(assets/cursor.png) 2x) 36 36, pointer; */
	display: block;
	outline: 0 !important;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 20;
}

.fancybox__content :focus:not(.carousel__button.is-close) {
	outline: 0;
}

@media screen and (max-width: 1200px) {
	.home-hero-container,
	.new-hero-container {
		margin-left: 0;
	}
}

@media screen and (max-width: 1024px) {
	.home-hero-content,
	.new-hero-content {
		padding: 0 15px 50px 50px;
		z-index: 11;
	}
	
	.home-hero-content h1,
	.new-hero-content h1,
	p.new-hero-title {
		font-size: 2.5rem;
	}
}

@media screen and (max-width: 800px) {
	.home-hero-container:before {
		width: 200px;	
	}
	
	.home-hero-content,
	.new-hero-content {
		padding: 0 35px 35px 15px;
	}
	
	.home-hero-video {
		height: 500px;
	}
	
	.home-hero-content p {
		font-size: 1rem;
	}
	
	.new-hero-container {
		height: 500px;
	}
	
	.new-hero {
		height: 300px;
	}
}

/* Home page hero bolts
--------------------------------------------- */
.bolts {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: 30px repeat(14, 1fr);
	grid-column-gap: 0px;
	grid-row-gap: 0px;
	margin-top: -120px;
	position: absolute;
		right: 0;
		z-index: 10;
	width: 70vw;
}

.new-hero-container .bolts {
	margin-top: -105px;
}

.bolt {
	background-image: url('assets/bolt-single.png');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 40% auto;
	height: 50px;
	width: 75px;
}

.bolt1 { grid-area: 1 / 1 / 4 / 2; }
.bolt2 { grid-area: 1 / 3 / 4 / 4; }
.bolt3 { grid-area: 1 / 5 / 4 / 6; }
.bolt4 { grid-area: 1 / 7 / 4 / 8; }
.bolt5 { grid-area: 1 / 9 / 4 / 10; }
.bolt6 { grid-area: 1 / 11 / 4 / 12; }

.bolt7 { grid-area: 3 / 2 / 6 / 3; }
.bolt8 { grid-area: 3 / 4 / 6 / 5; }
.bolt9 { grid-area: 3 / 6 / 6 / 7; }
.bolt10 { grid-area: 3 / 8 / 6 / 9; }
.bolt11 { grid-area: 3 / 10 / 6 / 11; }
.bolt12 { grid-area: 3 / 12 / 6 / 13; }

.bolt13 { grid-area: 5 / 1 / 8 / 2; }
.bolt14 { grid-area: 5 / 3 / 8 / 4; }
.bolt15 { grid-area: 5 / 5 / 8 / 6; }
.bolt16 { grid-area: 5 / 7 / 8 / 8; }
.bolt17 { grid-area: 5 / 9 / 8 / 10; }
.bolt18 { grid-area: 5 / 11 / 8 / 12; }

.bolt19 { grid-area: 7 / 2 / 9 / 3; }
.bolt20 { grid-area: 7 / 4 / 9 / 5; }
.bolt21 { grid-area: 7 / 6 / 9 / 7; }
.bolt22 { grid-area: 7 / 8 / 9 / 9; }
.bolt23 { grid-area: 7 / 10 / 9 / 11; }
.bolt24 { grid-area: 7 / 12 / 9 / 13; }

.bolt25 { grid-area: 9 / 1 / 11 / 2; }
.bolt26 { grid-area: 9 / 3 / 11 / 4; }
.bolt27 { grid-area: 9 / 5 / 11 / 6; }
.bolt28 { grid-area: 9 / 7 / 11 / 8; }
.bolt29 { grid-area: 9 / 9 / 11 / 10; }
.bolt30 { grid-area: 9 / 11 / 11 / 12; }

.bolt31 { grid-area: 11 / 2 / 13 / 3; }
.bolt32 { grid-area: 11 / 4 / 13 / 5; }
.bolt33 { grid-area: 11 / 6 / 13 / 7; }
.bolt34 { grid-area: 11 / 8 / 13 / 9; }
.bolt35 { grid-area: 11 / 10 / 13 / 11; }
.bolt36 { grid-area: 11 / 12 / 13 / 13; }

/* Home page work section
--------------------------------------------- */
.home-work-container {
	position: relative;
	z-index: 5;
}

.home-work-flex {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
	padding-right: 15px;
}

.home-work-titles {
	padding-left: 100px;
}

.home-work-titles .section-title {
	margin-bottom: 0;
}

.home-work-tiles {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.home-work-tile {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 10px solid transparent;
	box-sizing: border-box;
	flex-basis: 50%;
	height: 300px;
	margin-bottom: 20px;
	position: relative;
}

.home-work-tile a {
	border-bottom: 0 !important;
	display: block;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 10;
}

.item-title {
	color: #ffffff;
	font-weight: 700;
	opacity: 0;
	margin-bottom: 17px;
	position: absolute;
		bottom: 0;
		left: -50px;
		z-index: -10;
	transition: 0.5s;
	width: calc(100% - 100px);
}

.item-cta {
	position: absolute;
		bottom: 0;
		right: 0;
		z-index: 2;
	width: 50px;
}

.arrow {
	border-bottom: 0 !important;
	display: block;
	position: relative;
		z-index: 2;
	margin-right: 60px;
	transition: 0.5s;
}

.arrow:before {
	border-top: 4px solid #c32148;
	border-right: 4px solid #c32148;
	content: "";
	display: inline-block;
	height: 16px;
	width: 16px;
	position: absolute;
		right: 0;
		bottom: -3px;
	transform: rotate(45deg);
}

.arrow:after {
	background: #c32148;
	content: "";
	height: 4px;
	position: absolute;
		right: -1px;
		bottom: 3px;
	width: 50px;
}

.arrow.arrow-black:before {
	border-top: 4px solid #181818;
	border-right: 4px solid #181818;
}

.arrow.arrow-black:after {
	background: #181818;
}

.arrow.arrow-white:before {
	border-top: 4px solid #ffffff;
	border-right: 4px solid #ffffff;
}

.arrow.arrow-white:after {
	background: #ffffff;
}

.arrow.arrow-gray:before {
	border-top: 4px solid #808080;
	border-right: 4px solid #808080;
}

.arrow.arrow-gray:after {
	background: #808080;
}

.home-work-tile video {
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity 1s;
		-webkit-transition: opacity 1s;
	width: 100%;
	z-index: -1;
}

.home-work-tile:hover {
	border: 10px solid #e0e2e4;
}

.home-work-tile:hover:before {
	background: rgb(24,24,24);
	background: linear-gradient(0deg, rgba(24,24,24,0.75) 0%, rgba(24,24,24,0) 100%); 
	content: "";
	height: 60px;
	position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
}

.home-work-tile:hover .item-title {
	left: 25px;
	opacity: 1;
	z-index: 2;
	transition: 0.5s;
}

.home-work-tile:hover .arrow {
	margin-right: 20px;
	transition: 0.5s;
}

.home-work-tile:hover .arrow:before {
	border-top: 4px solid #ffffff;
	border-right: 4px solid #ffffff;
}

.home-work-tile:hover .arrow:after {
	background: #ffffff;
}

.home-work-tile:hover video {
	opacity: 1;
	transition: opacity 1s;
		-webkit-transition: opacity 1s;
	z-index: 1;
}

@media screen and (max-width: 1024px) {
	.home-work-titles,
	.home-work-cta {
		padding-left: 50px;
	}
	
	.home-work-flex {
		flex-wrap: wrap;
		margin-top: 50px;
		margin-bottom: 0;
	}
	
	.home-work-titles,
	.home-work-cta {
		flex-basis: 100%;
		max-width: 100%;
	}
	
	.home-work-tile {
		flex-basis: 100%;
	}
}

@media screen and (max-width: 800px) {
	.home-work-titles,
	.home-work-cta  {
		padding-left: 15px;
	}
}

/* Home page services section
--------------------------------------------- */
.home-services-intro {
	background: #181818 url('assets/home-services-bg-min.png') no-repeat top center;
	background-size: contain;
	color: #ffffff;
	margin-top: -100px;
	padding: 175px 0 100px calc(50vw - 585px);
	position: relative;
		z-index: 3;
}

.home-services-intro a,
.home-services-intro a:active,
.home-services-intro a:focus,
.home-services-intro a:hover,
.home-services-intro a:visited {
	color: #ffffff;
}

.hsi-flex {
	display: flex;
	justify-content: space-between;
}

.hsi-content {
	flex-basis: calc(55% - 25px);
	font-size: 1.25rem;
	max-width: 100%;
	padding-right: 25px;
	padding-left: 100px;
}

.hsi-content .section-title,
.hsi-content p {
	max-width: 550px;
	width: auto;
}

.hsi-image {
	flex-basis: calc(45% - 25px);
	padding-left: 25px;
}

.hsi-image img {
	width: 100%;
}

.hsi-cta {
	margin-top: 60px;
}

@media screen and (max-width: 1024px) {
	.home-services-intro {
		padding-bottom: 50px;
	}
	
	.hsi-content {
		font-size: 1rem;
		padding-left: 50px;
		padding-right: 10px;
	}
	
	.hsi-content h2 {
		margin-bottom: 0;
	}
	
	.hsi-cta {
		margin-top: 30px;
	}
	
	.hsi-image {
		padding-left: 10px;
	}
}

@media screen and (max-width: 800px) {
	.home-services-intro {
		padding-bottom: 0;
	}
	
	.hsi-flex {
		flex-wrap: wrap;
	}
	
	.hsi-image {
		flex-basis: 100%;
		padding-left: 0;
		order: 1;
	}
	
	.hsi-image img {
		max-width: 90%;
		width: 600px;
	}
	
	.hsi-content {
		flex-basis: 100%;
		order: 2;
		padding-left: 30px;
		padding-right: 30px;
	}
}

/* Home page services detail
--------------------------------------------- */
.home-services-detail {
	background: #181818;
	color: #EBEDF1;
	padding-bottom: 550px;
	position: relative;
	z-index: 2;
}

.home-services-detail a,
.home-services-detail a:active,
.home-services-detail a:focus,
.home-services-detail a:hover,
.home-services-detail a:visited {
	color: #EBEDF1;
}

.hsd-flex {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.hsd-accent {
	flex-basis: calc(55% - 50px);
	padding-right: 50px;
}

.hsd-accent img {
	width: 100%;
}

.hsd-content {
	flex-basis: 45%;
	text-align: center;
}

.home-services-list {
	display: inline-block;
	list-style: none;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}

.home-services-list li {
	font-size: 1.25rem;
	margin: 10px 0;
	padding: 10px 0 0 0;
}

.home-services-list li:after {
	background: #626262;
	content: "";
	display: block;
	height: 2px;
	margin-top: 20px;
	width: 100px;
}

.home-services-list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.home-services-list li:last-child:after {
	display: none;
}

.home-services-parallax {
	background: transparent url('assets/bolt-pattern-web.png') repeat center center;
	height: 800px;
	opacity: 0.25;
	overflow-x: hidden;
	position: absolute;
		bottom: 0;
		left: 24%;
		z-index: -1;
	width: 100%;
}

@media screen and (max-width: 1024px) {
	.home-services-detail {
		padding-bottom: 450px;
	}
	
	.hsd-accent {
		flex-basis: calc(60% - 15px);
		padding-right: 15px;
	}
	
	.hsd-content {
		flex-basis: 40%;
	}
	
	.home-services-list li {
		font-size: 1rem;
	}
}

@media screen and (max-width: 800px) {
	.home-services-detail {
		padding-bottom: 50px;
	}
	
	.hsd-flex {
		flex-wrap: wrap;
	}
	
	.hsd-accent {
		flex-basis: 100%;
		order: 2;
		margin-top: 50px;
		padding-right: 0;
		text-align: right;
	}
	
	.hsd-accent img {
		max-width: 90%;
		width: 600px;
	}
	
	.hsd-content {
		flex-basis: 100%;
		order: 1;
		padding-left: 30px;
		padding-right: 30px;
		text-align: left;
	}
	
	.home-services-list {
		column-count: 2;
		column-gap: 40px;
	}
	
	.home-services-list li {
		margin: 0 0 10px 0;
	}
	
	.home-services-list li:after {
		display: none;
	}
}

/* Home page culture 
--------------------------------------------- */
.home-culture {
	background: #E1E3E9;
	padding: 0 0 100px 0;
}

/*
.home-culture-video {
	height: 750px;
	margin-top: -300px;
	margin-right: calc(50% - 585px);
	position: relative;
	z-index: 3;
}

.home-culture-video video {
	height: 100%;
	object-fit: cover;
	position: relative;
		z-index: 1;
	vertical-align: middle;
	width: 100%;
}
*/

.home-culture-slider {
	margin-top: -300px;
	position: relative;
		z-index: 3;
	width: calc(50vw + 600px);
}

.home-culture-slide-video video {
	width: 100%;
}

.home-culture-content {
	margin: 0 auto;
	max-width: 100%;
	padding: 100px 30px 0 100px;
	width: 700px;
}

.home-culture-description {
	font-size: 1.25rem;
	max-width: 100%;
	width: 570px;
}

.home-culture-cta {
	font-size: 1.25rem;
	margin-top: 60px;
}

@media screen and (max-width: 1200px) {
/*
	.home-culture-video {
		height: 600px;
		margin-right: 15px;
	}
*/

	.home-culture-slider {
		width: calc(100% - 15px);
	}
}

@media screen and (max-width: 1024px) {
	.home-culture {
		padding-bottom: 50px;
	}
	
/*
	.home-culture-video {
		height: 500px;
		margin-right: 0;
	}
*/

	.home-culture-slider {
		width: 100%;
	}
	
	.home-culture-content {
		margin: 0;
		padding: 50px 30px 0 50px;
	}
	
	.home-culture-description,
	.home-culture-cta {
		font-size: 1rem;
	}
	
	.home-culture-cta {
		margin-top: 30px;
	}
}

@media screen and (max-width: 800px) {
/*
	.home-culture-video {
		height: 350px;
		margin-top: 0;
	}
*/

	.home-culture-slider  {
		margin-top: 0;
	}
	
	.home-culture-content {
		padding: 30px 30px 0 30px;
	}
}

/*
@media screen and (max-width: 640px) {
	.home-culture-video {
		height: 275px;
	}
}
*/

/*--------------------------------------------------------------
# Default page
--------------------------------------------------------------*/
.default-hero-container {
	background: #181818;
	color: #ffffff;
	height: 90vh;
	padding-top: 225px;
	position: relative;
}

.default-hero-container:after {
	background: #E1E3E9;
	content: "";
	height: 100vh;
	position: absolute;
		bottom: -100vh;
		right: 0;
		left: 0;
		z-index: -1;
}

.default-hero-flex {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.hero-title,
.hero-content {
	flex-basis: 48%;
}

.hero-content p {
	font-size: 1.25rem;
}

.hero-image {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 1200px auto;
	height: 600px;
	margin: 0 auto;
	position: relative;
		top: -250px;
		left: 0;
		right: 0;
	width: 100%;
}

.default-content-container {
	background: #E1E3E9;
	margin-top: -350px;
	min-height: 2000px; 
}

/*--------------------------------------------------------------
# Single Project i.e. Case Study
--------------------------------------------------------------*/
/* Project Intro */
.interior-title {
	padding-top: 80px;
}

.project-intro-container {
	padding-top: 0;
	padding-bottom: 40px;
}

/* Project Builder */
.os-image img {
	width: 100%;
}

.os-block {
	margin-top: -1px;
	padding-top: 80px;
	padding-bottom: 80px;
}

.os-block.spacing-none {
	padding-top: 1px;
	padding-bottom: 1px;
}

.os-image.os-block.spacing-none {
	padding-top: 0;
	padding-bottom: 0;
}

.os-block.spacing-small {
	padding-top: 40px;
	padding-bottom: 40px;
}

.os-block.spacing-large {
	padding-top: 120px;
	padding-bottom: 120px;
}

.os-block.spacing-top-small {
	padding-top: 40px;
}

.os-block.spacing-bottom-small {
	padding-bottom: 40px;
}

.os-block.spacing-top-large {
	padding-top: 120px;
}

.os-block.spacing-bottom-large {
	padding-bottom: 120px;
}

.os-block.spacing-top-none {
	padding-top: 1px;
}

.os-block.spacing-bottom-none {
	padding-bottom: 1px;
}

.indented-content .inner {
	padding-left: 250px;
}

.left-image-move-up .flex-50:first-child img {
	margin-top: -180px;
}

.left-image-move-up.spacing-none .flex-50:first-child img {
	margin-top: -100px;
}

.left-image-move-up.spacing-small .flex-50:first-child img {
	margin-top: -120px;
}

.left-image-move-up.spacing-large .flex-50:first-child img {
	margin-top: -200px;
}

.right-image-move-up .flex-50:last-child img {
	margin-top: -180px;
}

.right-image-move-up.spacing-none .flex-50:last-child img {
	margin-top: -100px;
}

.right-image-move-up.spacing-small .flex-50:last-child img {
	margin-top: -120px;
}

.right-image-move-up.spacing-large .flex-50:last-child img {
	margin-top: -200px;
}

.background-white {
	background: #ffffff;
}

.background-gray {
	background: #E1E3E9;
}

.background-black {
	background: #181818;
	color: #ffffff;	
}

.background-black a,
.background-black a:visited {
	border-bottom-color: #ffffff;
	color: #ffffff;
}

.background-black a:active,
.background-black a:focus,
.background-black a:hover {
	border-bottom-color: #c32148;
	color: #ffffff;
}

.os-block img {
	vertical-align: middle;
}

.os-accent-right .flex-container .flex-50:last-child {
	order: 1;
}

.os-accent-right .flex-container .flex-50:first-child {
	order: 2;
}

.os-video a,
.os-video a:visited,
.os-image-series a,
.os-image-series a:visited {
	border-bottom: 0;
	box-shadow: none;
}

.os-video a:active,
.os-video a:focus,
.os-video a:hover,
.os-image-series a:active,
.os-image-series a:focus,
.os-image-series a:hover {
	background: transparent;
}

.os-sliding-gallery .owl-prev,
.os-sliding-gallery .owl-next {
	background: transparent;
	border: 0;
	border-radius: 0;
	color: #C32148;
	font-family: serif;
	font-size: 4em !important;
	line-height: 1;
	padding: 0;
}

.os-sliding-gallery .owl-prev {
	margin-right: 20px;	
}

.background-black.os-sliding-gallery .owl-prev:hover,
.background-black.os-sliding-gallery .owl-next:hover {
	color: #ffffff;
}

.os-sliding-gallery .owl-prev:hover,
.os-sliding-gallery .owl-next:hover {
	color: #808080;
}

.owl-prev:active,
.owl-next:active,
.owl-prev:focus,
.owl-next:focus,
.owl-prev:hover,
.owl-next:hover,
.owl-dot:active,
.owl-dot:focus,
.owl-dot:hover {
	outline: 0;	
}

.owl-dots {
	text-align: center;
}

.owl-dot {
	background: #808080;
	border: 0;
	border-radius: 50%;
	height: 20px;
	margin: 0 5px;
	padding: 0;
	width: 20px;
}

.owl-dot.active {
	background: #C32148;
}

.number-blocks-container {
	margin-top: 56px;
}

.number-block {
	display: inline-block;
	margin: 0 -4.5px 56px 0;
	vertical-align: top;
	width: 33.3%;
}

.number-block h2 {
	margin: 0;
}

.number-block p {
	font-family: aktiv-grotesk-extended, sans-serif;
	font-weight: 900;
	margin: 0.5em auto 0 auto;
	max-width: 100%;
	text-transform: uppercase;
	width: 250px;
}

.county-before,
.county-after,
.number-block h2 {
	display: inline-block;
	font-size: 2.5em;
	font-weight: 300;
	margin: 0;
	line-height: 1;
}

.os-two-column-images,
.os-three-column-images {
	text-align: center;
}

.image-series-item {
	display: inline-block;
	margin-right: -4.5px;
	padding: 25px;
	vertical-align: top;
}

.os-two-column-images .image-series-item:nth-child(odd) {
	padding-left: 0;
}

.os-two-column-images .image-series-item:nth-child(even) {
	padding-right: 0;
}

.image-series-item video {
	width: 100%;
}

.os-two-column-images .image-series-item {
	width: 50%;
}

.os-three-column-images .image-series-item {
	width: 33.3%;
}

.os-fixed-content .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.fixed-content-image,
.fixed-content-content {
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
}

.fixed-content-image-item {
	margin-bottom: 48px;
}

.fixed-content-image-item video {
	width: 100%;
}

.fixed-content-image-item:last-child {
	margin-bottom: 0;
}

.fixed-content-follow {
	padding-bottom: 30px;
	position: -webkit-sticky;
	position: sticky;
		top: 100px;
}

.os-fixed-image-right .fixed-content-content {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
}

.os-fixed-image-right .fixed-content-image {
	padding-left: 50px;
	padding-right: 25px;
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
}

.os-fixed-image-left .fixed-content-image {
	padding-left: 25px;
	padding-right: 50px;
}

.subsections-builder-container .os-pink-content-block {
	overflow-x: hidden;
}

.subsections-builder-container .os-pink-content-block .services-inner {
    padding-left: 220px;
}

.subsections-builder-container .os-pink-content-block .home-services-content {
	padding-left: 70px;
}

.subsections-builder-container .os-pink-content-block .home-services-cta-container {
	padding-left: 102px;
}

.subsections-builder-container .os-pink-content-block p.category {
	padding-left: 0;
}

.subsections-builder-container .os-pink-content-block p.category:after {
	right: -3000px;
	width: auto;
}

.subsections-builder-container .os-pink-content-block p.category span {
	background: #b32073;
	padding-right: 15px;
}

.os-pink-content-block .pink-quote-image {
	right: auto;
	left: 5%;
	max-width: 95%;
	width: 500px;
}

.os-pink-content-block p.category span {
	background: transparent;
}

.os-pink-content-block .cta {
	color: #ffffff;
}

.os-pink-content-block .cta span:before,
.os-pink-content-block .cta span:after {
	background: #ffffff;	
}

.pink-content-inner {
	position: relative;
	z-index: 10;
}

.pr-hit-item {
	margin: 40px 0;
}

.pr-hit-image,
.pr-hit-content {
	display: inline-block;
	margin-right: -4.5px;
	vertical-align: top;
}

.pr-hit-image {
	padding-right: 20px;
	width: 40%;
}

.pr-hit-image ~ .pr-hit-content {
	padding-left: 20px;
	width: 60%;
}

.pr-hit-title {
	margin-top: 0;
}

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

.links-list li {
	display: inline-block;
	margin-right: 20px;
}

.list-list li:last-child {
	margin-right: 0;
}

.os-mobile {
	position: relative;
}

.os-mobile:after {
	background: rgb(75,75,75);
	background: linear-gradient(180deg, rgba(75,75,75,1) 0%, rgba(75,75,75,0) 100%); 	
	content: "";
	display: block;
	position: absolute;
		top: 300px;
		right: 0;
		left: 0;
		bottom: 0;
		z-index: 1;
}

.os-mobile .inner {
	position: relative;
	z-index: 2;
}

.mobile-slide {
	padding-top: 100px;
	position: relative;
	transition: 0.5s;
}

.mobile-slide img {
	opacity: 1;
}

.mobile-slide video {
	opacity: 0;
	position: absolute;
		top: 0;
	width: 100%;
}

.mobile-slide:hover {
	padding-top: 0;
	transition: padding-top 0.5s;
}

.mobile-slide-video:hover img {
	opacity: 0;
	transition-delay: 0.5s;
}

.mobile-slide-video:hover video {
	opacity: 1;
	transition-delay: 0.5s;
}

.os-website .frame {
	height: 640px;
	margin: 0 auto 80px auto;
	max-width: 100%;
	position: relative;
	width: 800px;
}

.os-website .frame iframe {
	border: 0;
	height: 1200px;
	max-width: none;
	overflow: scroll;
	transform: scale(0.5);
	transform-origin: left top 0px;
	width: 1600px;
}

.os-website .frame:before {
	background-image: url('/wp-content/themes/btfourdotoh/assets/browser-frame-top.png');
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: 40px;
	width: 100%;
}

.mobile-website-view {
	display: none;
}

.os-two-column {
	flex-basis: calc(50% - 40px);
}

@media screen and (max-width: 1024px) {	
	.number-block {
		width: 50%;
	}

	.os-two-column-images .image-series-item {
		display: block;
		margin-right: 0;
		padding: 15px 0;
		width: 100%;
	}
	
	.os-three-column-images .image-series-item {
		padding: 15px;
		width: 50%;
	}
	
	.os-fixed-image-right .fixed-content-image {
		padding-right: 0;
	}
	
	.os-fixed-image-left .fixed-content-image {
		padding-left: 0;
	}
	
	.indented-content .inner {
		padding-left: 50px;
	}
	
	.os-two-column {
		flex-basis: calc(50% - 20px);
	}
}

@media screen and (max-width: 800px) {
	.os-website .frame {
		display: none;
	}
	
	.mobile-website-view {
		display: block;
	}
	
	.os-block {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	
	.os-block.os-vertical-slider {
		margin-top: 120px;
	}
	
	.os-three-column-images .image-series-item {
		display: block;
		margin-right: 0;
		padding: 15px 0;
		width: 100%;
	}
	
	.os-fixed-content .inner {
		display: block;
	}
	
	.fixed-content-image,
	.fixed-content-content {
		display: block;
		padding-left: 0 !important;
		padding-right: 0 !important;
		width: 100%;
	}
	
	.fixed-content-content {
		margin-top: 20px;
	}
	
	.pr-hit-image,
	.pr-hit-content {
		display: block;
		margin-right: 0;
	}
	
	.pr-hit-image {
		margin-bottom: 20px;
		padding-right: 0;
		width: 100%;
	}
	
	.pr-hit-content {
		padding-left: 0;
		width: 100%;
	}
	
	.pr-hit-image ~ .pr-hit-content {
		padding-left: 0;
		width: 100%;
	}
	
	.os-pink-content-block p.category {
		text-align: left;
	}
	
	.os-pink-content-block p.category span {
		padding-left: 0;
	}
	
	.os-pink-content-block p.category:after {
		display: none;
	}
	
	.os-pink-content-block .pink-quote-image {
		left: 0;
		max-width: 100%;
	}
	
	.subsections-builder-container .os-pink-content-block .services-inner,
	.subsections-builder-container .os-pink-content-block .home-services-content,
	.subsections-builder-container .os-pink-content-block .home-services-cta-container {
	    padding-left: 0;
	}

	.subsections-builder-container .os-pink-content-block p.category span {
		background: transparent;
	}
	
	.mobile-slide {
		padding-top: 0 !important;
		transition: none;
	}
	
	.indented-content .inner {
		padding-left: 15px;
	}
	
	.os-accent-right .flex-container .flex-50:last-child {
		order: 2;
	}
	
	.os-accent-right .flex-container .flex-50:first-child {
		order: 1;
	}
	
	.os-two-column {
		flex-basis: 100%;
	}
}

@media screen and (max-width: 640px) {
	.number-block {
		display: block;
		margin: 0 0 56px 0;
		text-align: center;
		width: 100%;
	}
}

/* Project Related Content */
.project-related-container {
	margin-top: 120px;
	margin-bottom: 120px;
}

.project-related-flex {
	display: flex;
	justify-content: space-between;
}

a.related-item,
a.related-item:active,
a.related-item:focus,
a.related-item:hover,
a.related-item:visited {
	border-bottom: 0;
	flex-basis: calc(33.3% - 20px);
}

/*--------------------------------------------------------------
# Work List Page Template
--------------------------------------------------------------*/
.work-list-container {
	margin-bottom: 80px;
}

/* Filters */
.work-list-filter-container {
	padding-top: 120px;
	padding-bottom: 80px;
	text-align: center;
}

.work-list-filters {
	display: flex;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.work-list-filters li {
	padding: 0 30px;
}

.work-list-filters li:before {
	display: none;
}

.work-list-filters a,
.work-list-filters a:visited {
	border-bottom: 0;
	color: #808080;
	font-family: aktiv-grotesk-condensed, sans-serif;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}

.work-list-filters a:active,
.work-list-filters a:focus,
.work-list-filters a:hover {
	border-bottom: 0;
	color: #181818;
	text-decoration: none;
}

@media screen and (max-width: 640px) {
	.work-list-filter-container {
		padding-top: 60px;
		padding-bottom: 20px;
	}
	
	.work-list-filters li {
		padding: 0 20px;
	}

	.work-list-filters a,
	.work-list-filters a:visited {
		font-size: 1rem;
	}
}

/* List */
.work-list-group {
	padding-bottom: 20px;
}

.list-work-tiles {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.list-work-tiles.list-team-tiles {
	justify-content: center;
}

.list-work-tile {
	flex-basis: calc(50% - 10px);
	margin-bottom: 30px;
}

.list-team-tile {
	flex-basis: calc(33.3% - 20px);
	margin-bottom: 50px;
	margin-right: 10px;
	margin-left: 10px;
}

.list-work-image {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: 290px;
	transition: background-size 1s;
}

.list-team-image {
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: 350px;
	transition: background-size 1s;
}

.list-work-tile:hover .list-work-image {
	background-size: 105% auto;
	transition: background-size 1s;
}

.list-team-tile:hover .list-team-image {
	background-size: 105% auto;
	transition: background-size 1s;
}

.list-work-content h3,
.list-team-content h3 {
	font-family: aktiv-grotesk-condensed, sans-serif;
	font-size: 1.25rem;
	font-weight: 600;
	margin-bottom: 6px;
}

.list-work-excerpt {
	color: #808080;
	margin: 0;
	opacity: 0;
	transition: 0.25s;
}

.list-team-tile .list-work-excerpt {
	opacity: 1;
}

.list-work-tile:hover .list-work-excerpt {
	opacity: 1;
	transition: 0.25s;
}

.list-work-content {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
}

.list-work-column:first-child {
	flex-basis: calc(82% - 5px);
}

.list-work-column:last-child {
	flex-basis: calc(18% - 5px);
	padding-top: 20px;
	text-align: right;
}

.list-work-tile .arrow {
	opacity: 0;
	margin-right: 30px;
	transition: 0.25s;
}

.list-work-tile:hover .arrow {
	margin-right: 10px;
	opacity: 1;
	transition: 0.25s;
}

.list-work-tile .arrow:after {
	width: 60px;
}

.list-work-tile a {
	border: 0 !important;
	display: block;
	position: absolute;
		top: 0;
		right: 0;
		left: 0;
		bottom: 0;
	text-decoration: none !important;
}

@media screen and (max-width: 1100px) {
	.list-team-image {
		height: 300px;
	}
}

@media screen and (max-width: 1024px) {
	.list-work-image {
		height: 250px;
	}
	
	.list-team-tile {
		flex-basis: calc(50% - 10px);
		margin-bottom: 30px;
	}
	
	.list-team-image {
		height: 350px;
	}
	
	.list-work-excerpt {
		opacity: 1;
	}
}

@media screen and (max-width: 800px) {
	.list-work-tile {
		flex-basis: 100%;
	}
	
	.list-work-tile.list-team-tile {
		flex-basis: calc(50% - 10px);
	}
}

@media screen and (max-width: 700px) {
	.list-work-tile.list-team-tile {
		flex-basis: 100%;
		margin-left: auto;
		margin-right: auto;
		max-width: 350px;
	}
}

/*--------------------------------------------------------------
# Single Team Member
--------------------------------------------------------------*/
.team-member-title {
	margin-bottom: 40px;
}

/* This is super hacky but may break
 * people's names in two lines every time
 * which is apparently what we want */
.team-member-title h2 {
	font-size: 3.75rem;
	margin-bottom: 20px;
	overflow: visible;
	width: 0;
}

.team-member-bio .inner {
	display: flex;
	justify-content: space-between;
}

.team-member-content {
	flex-basis: calc(50% - 50px);
	padding-bottom: 100px;
}

.team-member-headshot {
	flex-basis: calc(50% - 50px);
	position: relative;
	padding-bottom: 100px;
}

.team-member-headshot img {
	position: sticky;
	top: 100px;
	vertical-align: middle;
}

.team-member-content h3 {
	font-family: aktiv-grotesk-extended, sans-serif;
	font-weight: 800;
	font-size: 1.25rem;
	font-style: normal;
	margin-top: 0;
	margin-bottom: 40px;
	text-transform: uppercase;
}

.team-favorite-container {
	margin-top: 60px;
}

.favorite-work-item {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	border: 0 !important;
	display: block;
	margin-bottom: 15px;
	position: relative;
	transition: background-size 0.5s !important;
	width: 80%;
}

.favorite-work-item:last-child {
	margin-bottom: 0;
}

.favorite-work-item:before {
	background: rgba(255, 255, 255, 0.6);
	content: "";
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
}

.favorite-work-item h3 {
	line-height: 1;
	margin: 0;
	padding: 20px 100px 20px 20px;
	position: relative;
		z-index: 2;
}

.favorite-work-item .arrow {
	margin-right: 20px;
	position: absolute;
		top: 56%;
		right: 20px;
		z-index: 2;
	transition: 0.5s;
}

.favorite-work-item:hover {
	background-size: 105% auto;
	transition: 0.5s;
}

.favorite-work-item:hover .arrow {
	margin-right: 0;
	transition: 0.5s;
}

.team-member-gallery {
	margin-bottom: 100px;
}

.team-member-gallery .inner {
	display: flex;
	justify-content: center;
}

.team-gallery-item {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	flex-basis: 380px;
	height: 380px;
	margin: 0 20px;
}

@media screen and (max-width: 1024px) {
	.team-member-title h2 {
		font-size: 2.5rem;
	}
	
	.team-member-content,
	.team-member-headshot {
		flex-basis: calc(50% - 25px);
	}
	
	.team-member-content {
		padding-bottom: 50px;
	}
	
	.team-gallery-item {
		flex-basis: 280px;
		height: 280px;
		margin: 0 10px;
	}
}

@media screen and (max-width: 700px) {
	.team-member-bio .inner {
		flex-wrap: wrap;
	}
	
	.team-member-content,
	.team-member-headshot {
		flex-basis: 100%;
	}
	
	.team-member-headshot img {
		position: relative;
		top: auto;
	}
	
	.team-member-gallery .inner {
		flex-wrap: wrap;
	}
	
	.team-gallery-item {
		margin: 0 10px 20px 10px;
	}
}

@media screen and (max-width: 500px) {
	.favorite-work-item {
		width: 100%;
	}
}

/*--------------------------------------------------------------
# Agency Page
--------------------------------------------------------------*/
/* Intro/About */
.agency-intro-section {
	margin-top: 80px;
	margin-bottom: 80px;
}

.agency-intro-section img {
	vertical-align: middle;
}

.agency-intro {
	align-items: flex-start;
}

.agency-about img {
	margin-top: 40px;
}

@media screen and (max-width: 1024px) {
	.agency-intro .flex-33 {
		flex-basis: calc(40% - 20px);
	}
	
	.agency-intro .flex-67 {
		flex-basis: calc(60% - 20px);
	}
	
	.intro-image {
		flex-basis: calc(50% - 7px);
	}
	
	.agency-about img {
		margin-top: 14px;
	}
}

@media screen and (max-width: 800px) {
	.agency-intro .flex-33,
	.agency-intro .flex-67 {
		flex-basis: 100%;
	}
}

/* Values */
.agency-values {
	background: #060606 url('assets/home-services-bg-min.png') no-repeat top center;
	background-size: 100% auto;
	padding-top: 100px;
	padding-bottom: 120px;
}

.values {
	align-items: center;
	margin-top: 80px;
}

.values-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.values-menu li {
	margin: 12px 0;
}

.values-menu li a {
	border-bottom: 0;
	color: #C32148 !important;
	font-family: aktiv-grotesk-extended;
	font-size: 2rem;
	font-weight: 800;
	text-decoration: none;
	text-transform: uppercase;
}

.values-menu li.active a {
	color: #ffffff !important;
}

.value-container {
	height: 550px;
	position: relative;
}

.value-container:after {
	background: transparent url('/wp-content/themes/btfourdotoh/assets/bolt-large-accent.png') no-repeat center center;
	background-size: contain;
	content: "";
	display: block;
	height: 450px;
	position: absolute;
		bottom: -50px;
		right: -50px;
		z-index: 4;
	width: 250px;
}

.value-description {
	opacity: 0;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	transition: opacity 0.75s;
}

.value-description.show {
	opacity: 1;
	transition: opacity 0.75s;
}

.value-bg,
.mobile-value {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
}

.value-bg:before,
.mobile-value:before {
	background: rgba(23, 23, 23, 0.75);
	content: "";
	display: block;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
}

.value-inner {
	position: absolute;
		top: 50%;
		left: 10px;
		right: 10px;
		z-index: 3;
	text-align: center;
	transform: translateY(-50%);
}

.value-inner h3 {
	margin-top: 0;
}

.value-inner h3,
.value-inner p {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	transition: opacity 0.5s;
	width: 350px;
}

.mobile-value {
	display: none;
	height: 400px;
	margin-top: 20px;
	position: relative !important;
	width: 100%;
}

@media screen and (max-width: 1024px) {
	.values-info {
		display: none;
	}
	
	.values-menu {
		flex-basis: 100%;
	}
	
	.values-menu li.active .mobile-value {
		display: block;
	}
}

@media screen and (max-width: 900px) {
	.agency-values {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	
	.values {
		margin-top: 40px;
	}
}

/* Team */
.agency-team {
	background: #E1E3E9;
	padding-top: 160px;
	padding-bottom: 160px;
}

.agency-team-col-1,
.agency-team-col-2 {
	display: inline-block;
	margin-right: -4.5px;
	vertical-align: middle;
	width: 50%;
}

.agency-team-col-1 {
	padding-right: 60px;
}

.agency-team-col-2 {
	padding-left: 20px;
}

@media screen and (max-width: 900px) {
	.agency-team {
		padding-top: 80px;
		padding-bottom: 80px;
	}

	.agency-team-col-1,
	.agency-team-col-2 {
		display: block;
		margin-right: 0;
		width: 100%;
	}
	
	.agency-team-col-1 {
		margin-bottom: 40px;
		padding-right: 0;
	}
	
	.agency-team-col-2 {
		padding-left: 0;
	}
}

/*--------------------------------------------------------------
# Careers Pages
--------------------------------------------------------------*/
.careers-list {
	background: #080808;
}

.careers-list h2 {
	margin-bottom: 50px;
}

.text-list-item {
	margin-bottom: 30px;
	padding-bottom: 4px;
}

.text-list-item h3 a,
.text-list-item h3 a:visited {
	border-bottom: 0 !important;
	color: #C32148;
}

.text-list-item h3 a:active,
.text-list-item h3 a:focus,
.text-list-item h3 a:hover {
	color: #E52B50;
}

/*--------------------------------------------------------------
# Services Pages
--------------------------------------------------------------*/
.services-intro {
	margin-bottom: 125px;
}

.list-service-tiles {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: -200px;
}

.list-service-tiles.do-not-jack-up {
	margin-top: 100px;
}

.list-service-tile {
	flex-basis: 48%;
	margin-bottom: 4%;
}

.list-service-image {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: 300px;
	transition: background-size 1s;
}

.list-service-tile:hover .list-service-image {
	background-size: 105% auto;
	transition: background-size 1s;
}

.list-service-content {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
}

.list-service-column:first-child {
	flex-basis: calc(82% - 5px);
}

.list-service-column:last-child {
	flex-basis: calc(18% - 5px);
	padding-top: 20px;
	text-align: right;
}

.list-service-tile .arrow {
	opacity: 0;
	margin-right: 30px;
	transition: 0.25s;
}

.list-service-tile:hover .arrow {
	margin-right: 10px;
	opacity: 1;
	transition: 0.25s;
}

.list-service-tile .arrow:after {
	width: 60px;
}

.list-service-tile:hover .arrow.arrow-white:before {
	border-color: #e52b50;
}

.list-service-tile:hover .arrow.arrow-white:after {
	background: #e52b50;
}

.list-service-tile a {
	border: 0 !important;
	display: block;
	position: absolute;
		top: 0;
		right: 0;
		left: 0;
		bottom: 0;
	text-decoration: none !important;
}

.list-service-tile:hover h3 {
	color: #e52b50;
}

@media screen and (max-width: 1024px) {
	.list-service-image {
		height: 250px;
	}
}

@media screen and (max-width: 800px) {
	.list-service-tiles {
		margin-top: -100px;
	}
	
	.services-intro {
		margin-bottom: 50px;
	}
	
	.list-service-column:first-child {
		flex-basis: 100%;
	}
	
	.list-service-column:last-child {
		display: none;
	}

	.list-service-tile {
		flex-basis: 100%;
		margin-bottom: 30px;
	}
	
	.list-service-column h3 {
		margin-top: 1rem;
	}
	
	.list-service-image {
		height: 200px;
	}
}

/*--------------------------------------------------------------
# Landing Page: Logo Wall
--------------------------------------------------------------*/
.logo-wall {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	justify-content: center;
	margin: 0;
	padding: 0;
}

.logo-wall li {
	flex-basis: 25%;
	padding: 20px 20px;
	text-align: center;
}

.logo-wall li img {
	max-width: 200px;
	max-height: 100px;
	vertical-align: middle;
	width: auto;
}

@media screen and (max-width: 1024px) {
	.logo-wall li img {
		max-width: 90%;
		max-height: 80px;
	}
}

@media screen and (max-width: 800px) {
	.logo-wall li {
		flex-basis: 33.3%;
	}
}

@media screen and (max-width: 500px) {
	.logo-wall li {
		flex-basis: 50%;
	}

	.logo-wall li img {
		max-height: 50px;
	}
}

/*--------------------------------------------------------------
# Landing Page: Tile Gallery
--------------------------------------------------------------*/
.tile-gallery {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	justify-content: space-between;
	margin: 0 -10px;
	padding: 0;
}

.tile-gallery li {
	flex-basis: 33.3%;
	padding: 10px;
}

.tile-gallery li img {
	vertical-align: middle;
}

.background-quarter-black {
	position: relative;
}

.background-quarter-black:after {
	background: #181818;
	content: "";
	height: calc(25% + 30px);
	position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
}

.background-quarter-black .inner {
	position: relative;
		z-index: 2;
}

@media screen and (max-width: 1024px) {
	.tile-gallery li {
		flex-basis: 50%;
	}
}

@media screen and (max-width: 500px) {
	.tile-gallery li {
		flex-basis: 100%;
	}
}

/*--------------------------------------------------------------
# work page
--------------------------------------------------------------*/
.work-list-group {
	padding-top: 25px;		
}
	
.work-list-group .home-work-titles {
	flex-basis: calc(100% - 200px);
	padding-left: 0;
}

.work-list-group .section-title {
	width: 100%;
}

.work-list-group .home-work-ctas {
	flex-basis: 200px;
	text-align: right;
}

@media screen and (max-width: 1024px) {
	.work-list-group {
		padding-top: 0;		
	}
	
	.work-list-group .home-work-flex {
		margin-top: 0;
	}
	
	.work-list-group .home-work-titles,
	.work-list-group .home-work-ctas {
		flex-basis: 100%;
	}
}

@media screen and (max-width: 800px) {
	.work-list-group .home-work-cta {
		padding-left: 0;
	}
	
	.work-list-group .section-title {
		max-width: 100%;
	}
}

/*--------------------------------------------------------------
# pink stat shortcode
--------------------------------------------------------------*/
.pink-stat-box {
	position: relative;
	margin: 0 3px 2.5rem 3px;
}

.pink-stat-border {
	background: #c32149;
	position: absolute;
}

.pink-stat-inline {
	display: inline-block;	
	position: relative;
}

.pink-stat-inner {
	background: #ffffff;
	padding: 12px 15px 0 15px;
	position: relative;
	z-index: 2;
}

.pink-stat-title {
	background: #ffffff;
	font-weight: 500;
	padding: 3px 5px;
	position: absolute;
		top: -15px;
		left: 7px;
		z-index: 3;
}

.pink-stat-box h2 {
	color: #c32149;
	display: inline-block;
	font-size: 3.125rem;
	font-weight: 500;
	margin: 0;
	overflow-y: hidden;
}

.pink-stat-box h2 span {
	display: inline-block;	
}

[data-aos="pink-border"] {
	top: -3px;
	right: calc(100% - 30px);
	bottom: 100%;
	left: 15px;
	transition-property: top, right, bottom, left;
}

[data-aos="pink-border"].aos-animate {
	top: -3px;
	right: -3px;
	bottom: -3px;
	left: -3px;
}

@media screen and (max-width: 1100px) {
	.pink-stat-box h2 {
		font-size: 2.5rem;
	}
	
	.pink-stat-title {
		font-size: 0.875rem;
	}
}

@media screen and (max-width: 800px) {
	.pink-stat-box h2 {
		font-size: 3rem;
	}
}

@media screen and (max-width: 600px) {
	.pink-stat-box h2 {
		font-size: 2.75rem;
	}
}

/*--------------------------------------------------------------
# Alt Home Page Template (2025)
--------------------------------------------------------------*/
/* Reversing the Nav for page load */
.page-template-template-home-alt .site-header {
	background: #231f20;
}

.page-template-template-home-alt .site-logo img {
	filter: brightness(0) invert(1);
}

.page-template-template-home-alt .main-navigation a,
.page-template-template-home-alt .main-navigation a:visited {
	color: #ffffff;
}

.page-template-template-home-alt .hamburger-inner, 
.page-template-template-home-alt .hamburger-inner::before, 
.page-template-template-home-alt .hamburger-inner::after,
.page-template-template-home-alt .hamburger.is-active .hamburger-inner, 
.page-template-template-home-alt .hamburger.is-active .hamburger-inner::before, 
.page-template-template-home-alt .hamburger.is-active .hamburger-inner::after {
	background: #ffffff;
}

.page-template-template-home-alt .site-main {
	margin-top: 92px;
}

/* Style the container on page load */
.home-hero-alt-container {
	background: #231f20;
	padding-top: 50px;
	padding-bottom: 100px;
	position: relative;
	transition: background 0.5s;
}

.home-hero-alt-container:before {
	background: #231f20;
	content: "";
	height: 92px;
	position: absolute;
		top: -92px;
		right: 0;
		left: 0;
		z-index: 1;
		transition: background 0.5s;
}

.home-hero-alt-container:after {
	background-image: url('/wp-content/themes/btfourdotoh/assets/bolt-pattern-web-gray-v3-min.png');
	background-position: left top;
	background-repeat: repeat;
	content: "";
	height: 450px;
	opacity: 1;
	position: absolute;
		bottom: 0;
		right: 0;
		left: 0;
		z-index: 1;
	transition: opacity 0.5s;
}

@media screen and (max-width: 900px) {
	.home-hero-alt-container:after {
		height: 225px;
	}
}

@media screen and (max-width: 640px) {
	.home-hero-alt-container:after {
		opacity: 0.5;
	}

	.home-hero-alt-container {
		padding-bottom: 50px;
	}
}

/* Style the container on page scroll */
.body-scroll .home-hero-alt-container {
	background: #ffffff;
	transition: background 0.5s;
}

.body-scroll .home-hero-alt-container:before {
	background: #ffffff;
	transition: background 0.5s;
}

.body-scroll .home-hero-alt-container:after {
	opacity: 0;
	transition: opacity 0.5s;
}

/* Styling the content on page load */
.home-hero-alt-content {
	max-width: 100%;
	position: relative;
	z-index: 2;
	width: 700px;
}

.home-hero-alt-content h1 {
	color: #E52B50; /* #C32148 */
	margin: 0;
	transition: color 0.5s;
}

.home-hero-alt-content p {
	color: #ffffff;
	opacity: 1;
	position: absolute;
	transition: opacity 0.5s;
}

@media screen and (max-width: 900px) {
	.home-hero-alt-content p {
		position: relative;
	}
}

/* Styling the content on page scroll */
.body-scroll .home-hero-alt-content h1 {
	color: #C32148;
	transition: color 0.5s;
}

.body-scroll .home-hero-alt-content p {
	opacity: 0;
	transition: opacity 0.25s;
}

@media screen and (max-width: 900px) {
	.body-scroll .home-hero-alt-content p {
		color: #231f20;
		opacity: 1;
	}
}

/* Styling the video on page load */
.home-hero-alt-video {
	margin-left: auto;
	margin-top: 125px;
	max-width: 100%;
	position: relative;
		z-index: 2;
	transition: 1s;
	width: 950px;
}

.home-video-link-alt {
	cursor: url(assets/custom-cursor.png) 36 36, pointer;
    cursor: url(assets/custom-cursor.svg) 36 36, pointer;
}

.video-popup-mobile-text {
	display: none;
}

@media screen and (max-width: 900px) {
	.home-hero-alt-video {
		margin-top: 10px;
	}
}

@media screen and (max-width: 640px) {
	.home-hero-alt-video video {
		display: none;
	}

	.home-video-link-alt,
	.home-video-link-alt:visited {
		color: #ffffff;
		font-family: aktiv-grotesk-extended, sans-serif;
		font-size: 1.25rem;
		font-weight: 800;
		text-transform: uppercase;
		cursor: pointer;
		position: relative;
			top: auto;
			right: auto;
			left: auto;
			bottom: auto;
	}

	.body-scroll .home-video-link-alt,
	.body-scroll .home-video-link-alt:visited {
		color: #231f20;
	}

	.home-video-link-alt:active,
	.home-video-link-alt:focus,
	.home-video-link-alt:hover {
		color: #C32148;
	}

	.video-popup-mobile-text {
		display: block;
	}
}

/* Styling the video on page scroll */
.body-scroll .home-hero-alt-video {
	margin-top: 10px;
	transition: 1s;
	width: 100%;
}

/* Fullscreen Overlay */
.video-popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.9);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out;
}

/* Show Popup */
.video-popup-overlay.visible {
    opacity: 1;
    visibility: visible;
}

/* Video Container */
.video-popup-container {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Fullscreen Video */
.video-popup-container video {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Close & Sound Buttons */
#close-video-popup, 
#toggle-sound {
    position: absolute;
    top: 20px;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    border: none;
    font-size: 24px;
    cursor: pointer;
    padding: 10px 15px;
    border-radius: 5px;
    transition: 0.3s;
}

#close-video-popup {
    right: 20px;
}

#toggle-sound {
    left: 20px;
}

/* Button Hover Effect */
#close-video-popup:hover, #toggle-sound:hover {
    background: rgba(255, 255, 255, 0.3);
}

/* Lock Scrolling When Popup is Open */
html.video-popup-open, body.video-popup-open {
    overflow: hidden;
}
